diff --git a/.browserslistrc b/.browserslistrc new file mode 100644 index 0000000..496d1ef --- /dev/null +++ b/.browserslistrc @@ -0,0 +1 @@ +defaults \ No newline at end of file diff --git a/.eslintrc.js b/.eslintrc.js deleted file mode 100644 index a129b12..0000000 --- a/.eslintrc.js +++ /dev/null @@ -1,28 +0,0 @@ -// http://eslint.org/docs/user-guide/configuring - -module.exports = { - root: true, - parserOptions: { - sourceType: 'module' - }, - env: { - browser: true, - }, - extends: 'airbnb-base', - // check if imports actually resolve - 'settings': { - // 'import/resolver': { - // 'webpack': { - // 'config': 'webpack.config.js' - // } - // } - }, - // add your custom rules here - 'rules': { - 'no-param-reassign': ["error", { "props": false }], - 'no-console': ["error", { allow: ["warn", "error"] }], - // allow debugger during development - 'no-debugger': process.env.NODE_ENV === 'production' ? 2 : 0, - 'import/no-extraneous-dependencies': ["error", {"devDependencies": true}] - } -}; diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md index 35528ed..3cc89c8 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -27,4 +27,4 @@ A clear and concise description of what you expected to happen. If applicable, add screenshots (Don't be lazy, PrnScr, Ctrl+V) **Browser** - - e.g. Google Chrome 11 on WIndows + - e.g. Google Chrome 11 on Windows diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md new file mode 100644 index 0000000..0231f80 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.md @@ -0,0 +1,14 @@ +--- +name: Feature request +about: Create a feature which makes Painterro better +title: '' +labels: '' +assignees: '' + +--- + +**Describe the feature** +A clear and concise description of what you want to see and how it should work. Step by step, then we will adjust if needed + +**Possible analogs?** +Gimp, MSPaint, Inkscape, etc... diff --git a/.gitignore b/.gitignore index 71314f3..b5c1230 100644 --- a/.gitignore +++ b/.gitignore @@ -61,7 +61,6 @@ typings/ # custom build/painterro* +build/report* -wp/.svn/ -wp/trunk/painterro-*.min.js -wp/trunk/painterro-*.min.js.map +wp/ \ No newline at end of file diff --git a/.npmignore b/.npmignore index 9465e44..2eafc60 100644 --- a/.npmignore +++ b/.npmignore @@ -62,6 +62,6 @@ typings/ # custom build/painterro-* -wp/.svn/ -wp/trunk/painterro-*.min.js -wp/trunk/painterro-*.min.js.map +wp/* +docs/* + diff --git a/README.md b/README.md index 5c35a05..a4945fe 100644 --- a/README.md +++ b/README.md @@ -1,52 +1,38 @@ -**[Live Demo](https://hinty.io/login/?next=/add/%3Fpainterro)** | [npm](https://www.npmjs.com/package/painterro) | [GitHub](https://github.com/devforth/painterro) +**[live demo](https://tracklify.com/painterro_demo/)** | [npm](https://www.npmjs.com/package/painterro) | [GitHub](https://github.com/devforth/painterro)           ![npmvers](https://img.shields.io/npm/v/painterro) ![npmDown](https://img.shields.io/npm/dw/painterro?label=npm%20💾) ![totalNpm](https://img.shields.io/npm/dt/painterro?label=npm%20💾) ![ghdownloads](https://img.shields.io/github/downloads/devforth/painterro/total?label=github%20script%20💾) +[![Ask AI](http://tluma.ai/badge)](http://tluma.ai/ask-ai/devforth/painterro) JavaScript painting plugin which allows editing images in a browser. -Can be easily integrated into any website or webapp by including only one JS file and calling simple initialization code. +Can be easily integrated into any website or webapp by calling simple initialization code. -Save to: +🆕 Check out our simple and game-changing opensource [Vue admin framework](https://adminforth.dev/) with a great look and extensibility! -[![alt text][1.1]][1] [![alt text][2.1]][2] [![alt text][3.1]][3]  [![alt text][4.1]][4]   [![alt text][5.1]][5] - +> 🙏🙏🙏 Scream for help to Ukraine +> +> 24 February 2022, Russia started bombing cities with peacefully civilized population in whole Ukraine. And has been doing it up to this day. Breaking all laws of war. Their bombs has been killing children and adults. This deserves Hague court. +> - 🏠 If you are from Russia, please stop your government by any means including protests, don't trust local media, they are bribed by the government. They always was. I am sure you already feel lie by unexplainable crazy things in your country caused by world sanctions. +> - 💣 Please spread the information about bombing of Ukraine in all social way you could. Russia treacherously broke into the territory of a sovereign state. Do not trust to anything from Russian media, most likely it will be bullshit +> - 💼 If you have any kind of business cooperation with Russia, please block it now and keep most of money on your side, this is the only possible ethical decision +> - ☢️ Ask your government to stop Russia from spreading invasion in any way. Russia is nuclear threat to the whole world. You think it is not possible? We thought that bombing of independent country with population of 44.13 million is also not possible. - - - - - - - - -[1.1]: res/twitter.png (Save to Twitter) -[2.1]: res/facebook.png (Save to Facebook) -[3.1]: res/thumblr.png (Save to Thumblr) -[4.1]: res/linkedin.png (Save to Linkedin) -[5.1]: res/pinterest.png (Save to Pinterest) - - - - -[1]: https://twitter.com/home?status=https://github.com/devforth/painterro -[2]: https://www.facebook.com/sharer/sharer.php?u=https://github.com/devforth/painterro -[3]: http://www.tumblr.com/share?v=3&u=https%3A%2F%2Fgithub.com%2Fdevforth%2Fpainterro&t= -[4]: http://www.linkedin.com/shareArticle?mini=true&url=https%3A%2F%2Fgithub.com%2Fdevforth%2Fpainterro&title= -[5]: http://pinterest.com/pin/create/button/?url=https%3A%2F%2Fgithub.com%2Fdevforth%2Fpainterro&media=&description= - - Features -================= +======== - Paste image from clipboard with `Ctrl+V` (e.g. `PtnScr` screenshot), drag and drop it into widget, or load with file select dialog - Crop image by defined area - Paint primitives: line, rectangle, ellipse (alpha color can be used) +- Brush – free drawing tool e.g. to implement finger-based signatures on tablet screens - Add text (you can use `Ctrl+B` - bold, `Ctrl+I` - italic, `Ctrl+U` - underlined, or just pase formatted HTML) - Rotate / resize, scale image - Pixelize some area to hide sensitive data - Draw arrows +- Trash can tool to clear the canvas +- Paint bucket tool for color fills +- Add filters to images Painterro gif preview @@ -54,30 +40,47 @@ Features Used by ================= - - - - - - - - - -
-
- NASA Open MCT -
-
- Appdynamics ContainerLabs -
-
- Tracklify -
- - - -Advantages -================= + + + + + + + +
+
+ +
+ NASA Open MCT +
+
+
+
+ +
+ Cisco DevNet +
+
+
+
+ +
+ Tracklify +
+
+
+
+ +
+ FastDivs +
+
+
+
+ + +Advantages 💪 +============= - It is lightweight and minimalistic - written with vanilla JS, you don't need dependencies to use it - Designed to process images with minimal clicks, most actions support hot-keys @@ -90,15 +93,15 @@ Originally Painterro was designed for quick screenshots processing: You make scr then open Painterro on your website, paste an image with `Ctrl+V`, crop it to interested area, highlight something with line/rectangle tool and/or add some text to the image and save on server with custom save handler (e.g. simple `XHR` request to your backend). -In addition, you can use Painterro as image editor for any kind of raster images. Please try a [demo](https://hinty.io/login/?next=/add/%3Fpainterro). +In addition, you can use Painterro as image editor for any kind of raster images. Please try a [demo](https://tracklify.com/painterro_demo/). Also painterro has [Wordpress Plugin](https://wordpress.org/plugins/painterro/). If you want to see some feature in Painterro, please leave (or vote for) an issue [here](https://github.com/devforth/painterro/issues). There is no promise that it will be implemented soon or ever, but it is interesting to know what features users want to have. -Also some usefull hints on HINTY for you: +Usefull hints and tweaks 😋: -- [Painterro JS paint features review on HINTY](https://hinty.io/devforth/simplest-js-paint/) +- [Painterro JS paint features review on HINTY](https://hinty.io/devforth/js-paint-plugin-for-your-website/) - [Dark theme for Painterro JS paint](https://hinty.io/devforth/painterro-dark-theme/) - [Round buttons for Painterro JS paint](https://hinty.io/devforth/how-to-round-the-painterro-buttons/) @@ -111,19 +114,19 @@ Table of contents * [With npm](#with-npm) * [By including script](#by-including-script) * [Read after installation](#read-after-installation) - * [Supported hotkeys](#supported-hotkeys) - * [Configuration](#configuration) + * [Supported hotkeys](#supported-hotkeys-) + * [Configuration](#configuration-) * [Events](#events) * [UI color scheme](#ui-color-scheme) * [API](#api) - * [Translation](#translation) - * [Saving image](#saving-image) + * [Translation](#translation-) + * [Saving image](#saving-image-) * [Base64 saving](#base64-saving) * [Binary saving](#binary-saving) * [Saving to WYSIWYG](#saving-to-wysiwyg) * [Format and quality](#format-and-quality) * [Example: Open Painterro by Ctrl+V](#example-open-painterro-by-ctrlv) - * [Development](#development) + * [Development](#development-) * [Building painterro](#building-painterro) * [Dev-server](#dev-server) * [Regenerating icons font](#regenerating-icons-font) @@ -172,14 +175,14 @@ Read after installation To be able to save edited images on server or client see [Saving image](#saving-image). For configurations see [Configuration](#configuration) -Supported hotkeys +Supported hotkeys ⌨ ================= -||| +| | | |-|-| | `Ctrl + Z` | Cancel last operation | | `Ctrl + V` | Paste image from clipboard | -| `Ctrl + C` | Copy selected aria to clipboard (*internal keyboard) | +| `Ctrl + C` | Copy selected aria to clipboard | | `Shift` when drawing **rect**/**ellipse** | Draw **square**/**circle** | | `Shift` when drawing **line** | draw at angles of `0`, `45`, `90`, `135` etc degrees | | `Alt` when using pipette | Hide zoom helper (colored grid) | @@ -188,7 +191,7 @@ Supported hotkeys Also some tools have own one-button hotkeys e.g. `C` - crop, you could see this shortcuts if you will hold mouse on toolbutton. -Configuration +Configuration ⚙ ============= You can pass parameters map to Painterro constructor: @@ -201,7 +204,7 @@ Painterro({ | Param | Description | Default | |-|-|-| -| `id` | If provided, then Painterro will be placed to some holder on page with this `id`, in other case holder-element will be created (fullscreen with margins) | `undefined` | +| `id` | If provided, then Painterro will be placed to some holder on page with this `id`, in other case holder-element will be created (fullscreen with margins). Important note: If you are using your block and id option, please add `position`:`relative` or `absolute` or `fixed` on your container, default (`static`) will lead to positioning issues | `undefined` | |`activeColor`| Line/Text color that selected by default | `'#ff0000'` | |`activeColorAlpha` | Transparancy of `activeColor` from `0.0` to `1.0`, `0.0` = transparent | `1` | |`activeFillColor` | Fill color that selected by default | `'#000000'` | @@ -219,11 +222,12 @@ Painterro({ |`defaultTextStrokeAndShadow` | Enables Stroke and Shadow for text tool by default (easier recognize text on screenshots) | `true` | |`defaultSize` | default image size, should be string in format `x` in pixel, e.g. `'200x100'`. If value is `'fill'`(default) than all container size will be used | `'fill'` | |`defaultTool` | Tool selected by default | `'select'` | -|`hiddenTools` | List of tools that you wish to exclude from toolbar e.g. something from this list `['crop', 'line', 'arrow', 'rect', 'ellipse', 'brush', 'text', 'rotate', 'resize', 'save', 'open', 'close']`, You can't hide default tool | `['redo']` | +|`hiddenTools` | List of tools that you wish to exclude from toolbar. Subset from this list `['crop', 'line', 'arrow', 'rect', 'ellipse', 'brush', 'text', 'rotate', 'resize', 'save', 'open', 'close', 'undo', 'redo', 'zoomin', 'zoomout', 'bucket']`, You can't hide default tool | `['redo']` | |`initText` | Display some centered text before painting (supports HTML). If null, no text will be shown | `null` | |`initTextColor` | Color of init text | `'#808080'` | |`initTextStyle` | Style of init text | `"26px 'Open Sans', sans-serif"` | |`pixelizePixelSize` | Default pixel size of pixelize tool. Can accept values - `x` - x pixels, `x%` - means percents of minimal area rectangle side | `20%` | +|`pixelizeHideUserInput` | Don't allow users to enter pixel size In settings tools (and save in localstorage), this would allow developer to freeze pixel size by using params `pixelizePixelSize` to make sure users will not set low pixel sizes | `false` | |`availableLineWidths` | A list of the line width values that are available for selection in a drop down list e.g. `[1,2,4,8,16,64]`. Otherwise an input field is used. | `undefined` | |`availableArrowLengths` | A list of the arrow sizes values that are available for selection in a drop down list e.g. `[10,20,30,40,50,60]`. Otherwise an input field is used. | `undefined` | | `defaultArrowLength` | default arrow length | `15` | @@ -232,12 +236,16 @@ Painterro({ |`toolbarPosition` | Whether to position the toolbar at the top or bottom. | `'bottom'` | |`fixMobilePageReloader` | By default painterro adds overflow-y: hidden to page body on mobile devices to prevent "super smart" feature lice Chrom's reload page. Unfortunately we can't prevent it by preventDefault. If your want to scroll page when painterro is open, set this to false | `true` | |`language` | Language of the widget. | `'en'` | -|`how_to_paste_actions`| List of paste options that will be suggested on paste using some paste dialog e.g. `['extend_right', 'extend_down'] `. If there is only one option in list, then it will choosing automatically without dialog | `['replace_all', 'paste_over', 'extend_right', 'extend_down']` | +|`how_to_paste_actions`| List of paste options that will be suggested on paste using some paste dialog e.g. `['extend_right', 'extend_down'] `. If there is only one option in list, then it will chosen automatically without dialog | `['replace_all', 'paste_over', 'extend_right', 'extend_down']` | +|`replaceAllOnEmptyBackground`| Whether to select `replace_all` without dialog on first paste after painterro was just opened. So it will replaces background with image (will change dimensions to pasted image when background is empty) | `true` | |`hideByEsc`| If `true` then `ESC` press will hide widget | `false` | |`saveByEnter`| If `true` then `ENTER` press will do same as `Ctrl+S` | `false` | |`extraFonts`| By default Text tool supports only several [predefined](https://github.com/devforth/painterro/blob/master/js/text.js#L38) fonts due to compatibility considirations , but yousing this option you can add any fonts you want if you are sure they are available on your page/app | `['Roboto']` | |`toolbarHeightPx`| Height of toolbar in pixels | `40` | |`buttonSizePx`| Button for toolbar in pixels | `32` | +|`bucketSensivity`| Bucket tool sensivity | `100` | +|`customTools`| List of the custom tools which will appear at the left menu after default options. Custom tool includes three options : | `{name:string, callBack:function, iconUrl:dataURL string or URL}` | +|`disableWheelZoom`| Disables the mousewheel zoom with ctrl | `false` | ## Events @@ -249,6 +257,7 @@ Painterro({ | `onChange` | Function that will be called if something will be changed (painted, erased, resized, etc) | `` | `undefined` | | `onUndo` | Function that will be called if user will undo (`Ctrl+Z`) | `{}` | | `onRedo` | Function that will be called if user will redo (`Ctrl+Z`) | `{}` | +|`onImageFailedOpen`| Function that will be called if image can`t open | `undefined` | | `onImageLoaded` | Function that will be called if you passed image to `show` and when it was loaded | `undefined` | | `saveHandler` | Function that will be called when user presses Save (or `Ctrl+S`), Call `doneCallback` to reflect in painterro that image was saved | `{}`, `doneCallback : function` | @@ -260,14 +269,15 @@ Events accepted arguments: ``` { image: { - asBlob: ƒ asBlob(type, quality) - asDataURL: ƒ asDataURL(type, quality) - suggestedFileName: ƒ suggestedFileName(type) - getOriginalMimeType: ƒ getOriginalMimeType() - getWidth: ƒ getWidth() - getHeight: ƒ getHeight() + asBlob: ƒ asBlob(type, quality) // returns blob + asDataURL: ƒ asDataURL(type, quality) // returns e.g. "data:image/jpeg;base64,/9j/4AAQS...." + suggestedFileName: ƒ suggestedFileName(type) // returns string + hasAlphaChannel(): ƒ suggestedFileName() // returns true or false + getOriginalMimeType: ƒ getOriginalMimeType() // e.g. image/jpeg; + getWidth: ƒ getWidth() // integer + getHeight: ƒ getHeight() // integer } - operationsDone: int + operationsDone: int // integer } ``` @@ -283,6 +293,9 @@ Events accepted arguments: } ``` + + + UI color scheme --------------- @@ -330,8 +343,53 @@ API **.hide()** - hide instance +**.setColor(options)** - sets the color of the chosen tool , or changes initial value of color. `options` should be array with two values, `[target,colorWidgetState]` + +available values for `target`: + +|`line`|, |`bg`| + +`colorWidgetState` - object with requred properties : + +* `palleteColor` - color string . Just indicates which color will be shown on the collor pallete. +* `alpha` - number in range from 0 to 1. The same but for alpha channel. +* `alphaColor` - color string. Color with alpha, which will be using for drawing element. + +>NOTE: `paleteColor` and `alpha` is using only for displaing right values in color picker widget, this two options don't effect on color which will be used for drawing elements. + +**.setLineWidth()** - set line width for chosen tool. + +**.setArrowLength()** - set width for chosen arrow. + +**.setEraserWidth()** - set width of eraser + +**.setShadowOn()** - set shadowfor line elements or arrow element. It takes boolean value. + **.save()** - call save (same save as on buttons bar). Can be used if save button is hidden (`hiddenTools: ['save']`) +**.doScale({ width, height, scale })** - scale the image and resize area. + +Scale to match the width and scale height proportinally (e.g. 50x32 will become 100->64): + +``` +.doScale({width: 100}) +``` + +Scale to fill width and height (e.g. 50x32 will become 11->15): + +``` +.doScale({width: 11, height: 15}) +``` + +Scale x2 (e.g. 11x12 will become 22->24): + +``` +.doScale({ scale: 2 }) +``` + +**setZoom(zoomPercentage)** - sets the current zoom percentage + + Example: ```js @@ -339,11 +397,12 @@ var p = Painterro() p.show() ``` -Translation ------------ +Translation 📙 +-------------- Want to translate Painterro into your language? - If you need one of languages in table below, just pass pass `language` parameter, for example: + +If you need one of languages in table below, just pass pass `language` parameter, for example: ```js Painterro({ @@ -356,17 +415,29 @@ Translated languages: |-|-| | `ca` | Catalan | | `de` | German | +| `en` | English | +| `es` | Spanish | | `fa` | Iran-Farsi (Persian (Ir-Fa) | | `fr` | French | | `ja` | Japanese | -| `en` | English | -| `es` | Spanish | | `pl` | Polish | | `pt-PT` | European Portuguese | | `pt-BR` | Brazilian Portuguese | +| `ru` | Russian | +| `nl` | Dutch | + + - If you want to add another language, then fork. Create file in folder langs for your translation and copy [langs/en.lang.js] in it. Then translate all `'Strings'` and add reference in [js/translation.js]. After that create pull-request, or just open [issue](https://github.com/devforth/painterro/issues) - if you don't know how to create a PR. +If you want to add another language, then: + +1. fork to your GitHub with button on top. +2. Create empty file in folder langs [.lang.js] for your translation. `LANG_ISO_CODE` should follow [ISO 639-1](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes) +3. Copy content from [langs/en.lang.js] to a new file +4. Then translate all `'Strings'` +5. Add reference in [js/translation.js] inside of your repo. +5. After that create pull-request, or just open [issue](https://github.com/devforth/painterro/issues) if you don't know how to create a PR. + +🤔 Found a bug in some word for your language? Feel free to edit on GitHub directly and suggest a fix. If you want to translate or change strings without contributing you can do this by passing `translation` parameter, for example: @@ -382,15 +453,14 @@ Painterro({ } }).show() ``` -For all strings that can be translated, see [langs/en.lang.js] +For all strings that should be translated, see [langs/en.lang.js] -Saving image -============ - -You should provide your save handler, which will post/update image on server or will pass image to another -frontend components. +Saving image 💾 +=============== +You should provide your own save handler, that will post/update image on server or will pass image to other +frontend components. In this section we will provide several backend examples on python Flask (easiest web server for python). Anyway if you will face any python exception you can use super-helpfull [fixexception.com](https://fixexception.com/) service to fix any issue you will face 💪. Binary saving ------------- @@ -408,7 +478,8 @@ var ptro = Painterro({ var xhr = new XMLHttpRequest(); xhr.open('POST', 'http://127.0.0.1:5000/save-as-binary/', true); xhr.onload = xhr.onerror = function () { - done(true); + // after saving is done, call done callback + done(true); //done(true) will hide painterro, done(false) will leave opened }; xhr.send(formData); } @@ -477,7 +548,8 @@ You can just insert image as data url to any WYSIWYG editor, e.g. TinyMCE: var ptro = Painterro({ saveHandler: function (image, done) { tinymce.activeEditor.execCommand('mceInsertContent', false, ''); - done(true) + // after saving is done, call done callback + done(true); //done(true) will hide painterro, done(false) will leave opened } }) ``` @@ -493,6 +565,25 @@ Default type is mimetype used by image which was loaded into Painterro, or "imag If type is `image/jpeg` or `image/webp`, you can also define image quality from `0.0` to `1.0`, default is `0.92`, example: `image.asDataURL('image/jpeg', 0.5)` + +Save to jpeg or png depending on whether there is an alpha channel +------------------ + +An efficient way to save an image might be implmented by checking whether image has some alpha pixels: +* If yes - we need to serve image in less efficient png format +* Otherwise lets just use JPEG +This is very simple with next: + +``` +var ptro = Painterro({ + saveHandler: function (image, done) { + + image.asBlob(image.hasAlphaChannel() ? 'image/png' : 'image/jpeg'); + // upload blob + } +}) +``` + Example: Open Painterro by Ctrl+V ----------------- @@ -523,10 +614,17 @@ document.onpaste = (event) => { }; ``` +If you face any painterro errors (exceptions), please reffer to [Painterro page on FixJSError](https://fixjserror.com/package/painterro/) +Development 🔨 +============== -Development -=========== +Latest supported NodeJS version is 16, use nvm to switch to it: + +``` +nvm install 16 +nvm use 16 +``` Code written on ES6 which transplited by Babel and packed (minified) to a single file using webpack. All configs are inside so all you have to do after pulling repo is installing node modules: @@ -558,21 +656,65 @@ To start hot-reload dev server (for reloading code "on the fly"): ```bash npm run dev ``` -Then open http://localhost:8080 with demo page +Then open http://localhost:3000 with demo page + + +Editing source on the fly for painterro imported from side webpack app (e.g. your project SPA) +------------------------------------------ + +1. If your side app uses 'eslint' it, most likely side app will need eslint-plugin-import: + +``` +npm i eslint-plugin-import +``` + +2. Since compiled painterro commonjs2 file already linted and minimized you need to exclude it from linting: + +Add to package.json of your side app: +``` + "eslintIgnore": [ + "/home/ivan/devforth/painterro/build/painterro2.commonjs.js" + ], +``` +where `/home/ivan/devforth/painterro` is a folder with Painterro sources + +3. Replace + +``` +import Painterro from 'painterro'; +``` +with + +``` +import Painterro from '/home/ivan/devforth/painterro/build/painterro.commonjs2.js'; +``` + +4. Go to painterro source folder and run: + +``` +watch npm run build +``` Regenerating icons font ----------------------- -If you need add/edit icons in `res` folder, please after editing run +If you need add/edit icons in `res` folder, please after editing run: ```bash npm run buildfont ``` -Contributing +For font generation we use method described here: [How to generate a webfont (automated setup)](https://hinty.io/brucehardywald/how-to-generate-a-webfont-automated-setup/) + + + +Contributing ------------ + Pull-requests are welcome. +If you want to say thank us [Patreon is here](https://www.patreon.com/devforth) + [npm]: https://img.shields.io/npm/v/painterro.svg [npm-url]: https://npmjs.com/package/painterro diff --git a/Release.md b/Release.md new file mode 100644 index 0000000..5c106a6 --- /dev/null +++ b/Release.md @@ -0,0 +1,10 @@ + + +npm login + +Tocken from github: + +GH_PASS=`cat ~/.ghtoken` + +Password from WP: +WP_PASSWORD=`cat ~/.wppassword` \ No newline at end of file diff --git a/build/index.html b/build/index.html index d5301f0..e301192 100644 --- a/build/index.html +++ b/build/index.html @@ -18,78 +18,72 @@ right: 20px; } +#holder { + display: flex; +} + - -
- -
- +
- - + +
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
+
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
asf
- + diff --git a/css/checkers.svg b/css/checkers.svg index b1cdc7f..6a6823e 100644 --- a/css/checkers.svg +++ b/css/checkers.svg @@ -1,85 +1 @@ - - - - - - - - - - - - image/svg+xml - - - - - - - - - - + \ No newline at end of file diff --git a/css/icons/ptroiconfont.css b/css/icons/ptroiconfont.css index c99a220..17d29c6 100644 --- a/css/icons/ptroiconfont.css +++ b/css/icons/ptroiconfont.css @@ -1,9 +1,7 @@ @font-face { font-family: "ptroiconfont"; - src: url("ptroiconfont.eot?bf58900bc0f41f759214435220e5b3df?#iefix") format("embedded-opentype"), -url("ptroiconfont.woff?bf58900bc0f41f759214435220e5b3df") format("woff"), -url("ptroiconfont.ttf?bf58900bc0f41f759214435220e5b3df") format("truetype"), -url("ptroiconfont.svg?bf58900bc0f41f759214435220e5b3df#ptroiconfont") format("svg"); + src: url("ptroiconfont.woff?9d16276326db52747d3405a7ca0e1306") format("woff"), +url("ptroiconfont.ttf?9d16276326db52747d3405a7ca0e1306") format("truetype"); font-weight: normal; font-style: normal; } @@ -12,11 +10,11 @@ url("ptroiconfont.svg?bf58900bc0f41f759214435220e5b3df#ptroiconfont") format("sv } .ptro-icon:before { - font-family: ptroiconfont; - font-style: normal; - font-weight: normal; - font-variant: normal; - text-transform: none; + font-family: ptroiconfont !important; + font-style: normal !important; + font-weight: normal !important; + font-variant: normal !important; + text-transform: none !important; speak: none; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; @@ -31,89 +29,102 @@ url("ptroiconfont.svg?bf58900bc0f41f759214435220e5b3df#ptroiconfont") format("sv .ptro-icon-brush:before { content: "\f103"; } -.ptro-icon-close:before { +.ptro-icon-bucket:before { content: "\f104"; } -.ptro-icon-crop:before { +.ptro-icon-clear:before { content: "\f105"; } -.ptro-icon-ellipse:before { +.ptro-icon-close:before { content: "\f106"; } -.ptro-icon-eraser:before { +.ptro-icon-crop:before { content: "\f107"; } -.ptro-icon-line:before { +.ptro-icon-ellipse:before { content: "\f108"; } -.ptro-icon-linked:before { +.ptro-icon-eraser:before { content: "\f109"; } -.ptro-icon-loading:before { +.ptro-icon-filters:before { content: "\f10a"; } -.ptro-icon-mirror:before { +.ptro-icon-line:before { content: "\f10b"; } -.ptro-icon-open:before { +.ptro-icon-linked:before { content: "\f10c"; } -.ptro-icon-painterro0:before { +.ptro-icon-loading:before { content: "\f10d"; } -.ptro-icon-paste_extend_down:before { +.ptro-icon-mirror:before { content: "\f10e"; } -.ptro-icon-paste_extend_right:before { +.ptro-icon-open:before { content: "\f10f"; } +.ptro-icon-painterro0:before { + content: "\f110"; +} +.ptro-icon-paste_extend_down:before { + content: "\f111"; +} .ptro-icon-paste_extend_left:before { - content: "\f10f"; - transform: rotate(-180deg); + content: "\f112"; +} +.ptro-icon-paste_extend_right:before { + content: "\f113"; } .ptro-icon-paste_extend_top:before { - content: "\f10f"; - transform: rotate(-90deg); + content: "\f114"; } .ptro-icon-paste_fit:before { - content: "\f110"; + content: "\f115"; } .ptro-icon-paste_over:before { - content: "\f111"; + content: "\f116"; } .ptro-icon-pipette:before { - content: "\f112"; + content: "\f117"; } .ptro-icon-pixelize:before { - content: "\f113"; + content: "\f118"; } .ptro-icon-rect:before { - content: "\f114"; + content: "\f119"; } .ptro-icon-redo:before { - content: "\f115"; + content: "\f11a"; } .ptro-icon-resize:before { - content: "\f116"; + content: "\f11b"; } .ptro-icon-rotate:before { - content: "\f117"; + content: "\f11c"; } .ptro-icon-save:before { - content: "\f118"; + content: "\f11d"; } .ptro-icon-select:before { - content: "\f119"; + content: "\f11e"; } .ptro-icon-settings:before { - content: "\f11a"; + content: "\f11f"; } .ptro-icon-text:before { - content: "\f11b"; + content: "\f120"; } .ptro-icon-undo:before { - content: "\f11c"; + content: "\f121"; } .ptro-icon-unlinked:before { - content: "\f11d"; + content: "\f122"; +} +.ptro-icon-zoomin:before { + content: "\f123"; +} +.ptro-icon-zoomout:before { + content: "\f124"; } diff --git a/css/icons/ptroiconfont.eot b/css/icons/ptroiconfont.eot deleted file mode 100644 index e538e10..0000000 Binary files a/css/icons/ptroiconfont.eot and /dev/null differ diff --git a/css/icons/ptroiconfont.html b/css/icons/ptroiconfont.html new file mode 100644 index 0000000..035c861 --- /dev/null +++ b/css/icons/ptroiconfont.html @@ -0,0 +1,380 @@ + + + + + ptroiconfont + + + +

ptroiconfont

+
+ + + + apply +
+
+ + + + arrow +
+
+ + + + brush +
+
+ + + + bucket +
+
+ + + + clear +
+
+ + + + close +
+
+ + + + crop +
+
+ + + + ellipse +
+
+ + + + eraser +
+
+ + + + filters +
+
+ + + + line +
+
+ + + + linked +
+
+ + + + loading +
+
+ + + + mirror +
+
+ + + + open +
+
+ + + + painterro0 +
+
+ + + + paste_extend_down +
+
+ + + + paste_extend_left +
+
+ + + + paste_extend_right +
+
+ + + + paste_extend_top +
+
+ + + + paste_fit +
+
+ + + + paste_over +
+
+ + + + pipette +
+
+ + + + pixelize +
+
+ + + + rect +
+
+ + + + redo +
+
+ + + + resize +
+
+ + + + rotate +
+
+ + + + save +
+
+ + + + select +
+
+ + + + settings +
+
+ + + + text +
+
+ + + + undo +
+
+ + + + unlinked +
+
+ + + + zoomin +
+
+ + + + zoomout +
+ + diff --git a/css/icons/ptroiconfont.svg b/css/icons/ptroiconfont.svg index 89b33aa..9780322 100644 --- a/css/icons/ptroiconfont.svg +++ b/css/icons/ptroiconfont.svg @@ -1,186 +1,228 @@ - + - + + horiz-adv-x="612" d="M573.954 443.492A39.037 39.037 0 0 1 543.804 430.328L240.258 96.789L67.865 269.181A39.037 39.037 0 1 1 12.661 213.977L213.977 12.661A39.037 39.037 0 0 1 270.439 13.998L601.541 377.782A39.037 39.037 0 0 1 573.954 443.492z" /> + horiz-adv-x="612" d="M573.954 443.492A39.037 39.037 0 0 1 543.804 430.328L240.258 96.789L67.865 269.181A39.037 39.037 0 1 1 12.661 213.977L213.977 12.661A39.037 39.037 0 0 1 270.439 13.998L601.541 377.782A39.037 39.037 0 0 1 573.954 443.492z" /> + horiz-adv-x="612" d="M247.647 532.519L370.314 431.71L12.201 73.597C-3.316 58.079 -3.316 32.92 12.202 17.402V17.402C27.719 1.884 52.879 1.884 68.397 17.402L428.351 377.356L525.829 254.338L605.309 612L247.647 532.519z" /> + horiz-adv-x="612" d="M247.647 532.519L370.314 431.71L12.201 73.597C-3.316 58.079 -3.316 32.92 12.202 17.402V17.402C27.719 1.884 52.879 1.884 68.397 17.402L428.351 377.356L525.829 254.338L605.309 612L247.647 532.519z" /> + horiz-adv-x="612" d="M526.543 589.333L366.253 429.058L312.832 482.478L259.412 429.044L312.832 375.624L392.977 295.477L446.397 242.057L499.832 295.477L446.412 348.899L606.688 509.189L526.543 589.333zM232.702 398.88C232.702 398.88 122.386 308.512 16.543 303.964C14.641 303.881 0 305.026 0 305.026C26.713 171.46 197.498 0.445 313.526 2.066C314.869 2.066 318.214 6.523 319.193 7.482C419.692 106.262 416.736 214.507 416.736 214.507L232.702 398.88z" /> - + + horiz-adv-x="578.7391304347826" d="M7.404 221.491C-2.441 205.833 2.379 185.151 18.132 175.458L290.705 7.757C306.223 -1.79 326.534 2.924 336.26 18.331L539.553 340.366C549.439 356.026 544.63 376.745 528.857 386.45L228.332 571.348L164.02 610.356L135.804 566.984L199.934 527.696L7.404 221.491zM68.732 205.018L249.496 494.092L478.309 356.858L404.557 232.278L68.732 205.018zM575.743 105.867C575.743 76.476 551.916 52.65 522.526 52.65C493.134 52.65 469.308 76.476 469.308 105.867C469.308 135.259 499.243 159.085 522.526 225.606C545.808 162.411 575.743 135.259 575.743 105.867z" /> + + + + + horiz-adv-x="612" d="M66.764 612L0 545.236L239.236 306L0 66.764L66.764 0L306 239.236L545.236 0L612 66.764L372.764 306L612 545.236L545.236 612L306 372.764L66.764 612z" /> + unicode="" + horiz-adv-x="612" d="M468 612C448.118 612 432 595.882 432 576V504H180H108V432V180H36C16.118 180 0 163.882 0 144V144C0 124.118 16.118 108 36 108H108V36C108 16.118 124.118 0 144 0V0C163.882 0 180 16.118 180 36V108H504V180V432H576C595.882 432 612 448.118 612 468V468C612 487.882 595.882 504 576 504H504V576C504 595.882 487.882 612 468 612V612zM180 432H432V180H180V432z" /> + horiz-adv-x="612" d="M468 612C448.118 612 432 595.882 432 576V504H180H108V432V180H36C16.118 180 0 163.882 0 144V144C0 124.118 16.118 108 36 108H108V36C108 16.118 124.118 0 144 0V0C163.882 0 180 16.118 180 36V108H504V180V432H576C595.882 432 612 448.118 612 468V468C612 487.882 595.882 504 576 504H504V576C504 595.882 487.882 612 468 612V612zM180 432H432V180H180V432z" /> + unicode="" + horiz-adv-x="612" d="M306 612C265.815 612 226.025 604.085 188.899 588.707C151.773 573.329 118.04 550.789 89.625 522.375C61.21 493.96 38.671 460.227 23.293 423.101C7.915 385.975 0 346.185 0 306C0 265.815 7.915 226.025 23.293 188.899C38.671 151.773 61.211 118.04 89.625 89.625C118.04 61.211 151.774 38.67 188.899 23.293C226.025 7.914 265.815 0 306 0C346.185 0 385.975 7.914 423.101 23.293C460.226 38.67 493.96 61.211 522.375 89.625C550.789 118.04 573.329 151.773 588.707 188.899C604.085 226.025 612 265.815 612 306C612 346.185 604.085 385.975 588.707 423.101C573.33 460.227 550.789 493.96 522.375 522.375C493.96 550.789 460.227 573.329 423.101 588.707C385.975 604.085 346.185 612 306 612zM306 539.994C368.058 539.993 427.575 515.339 471.458 471.457C515.34 427.575 539.993 368.058 539.995 306C539.993 243.942 515.34 184.424 471.457 140.542C427.575 96.66 368.058 72.007 306 72.005C243.942 72.007 184.425 96.66 140.542 140.542C96.66 184.424 72.007 243.942 72.006 306C72.007 368.058 96.66 427.575 140.542 471.457C184.425 515.339 243.942 539.993 306 539.994z" /> + horiz-adv-x="612" d="M306 612C265.815 612 226.025 604.085 188.899 588.707C151.773 573.329 118.04 550.789 89.625 522.375C61.21 493.96 38.671 460.227 23.293 423.101C7.915 385.975 0 346.185 0 306C0 265.815 7.915 226.025 23.293 188.899C38.671 151.773 61.211 118.04 89.625 89.625C118.04 61.211 151.774 38.67 188.899 23.293C226.025 7.914 265.815 0 306 0C346.185 0 385.975 7.914 423.101 23.293C460.226 38.67 493.96 61.211 522.375 89.625C550.789 118.04 573.329 151.773 588.707 188.899C604.085 226.025 612 265.815 612 306C612 346.185 604.085 385.975 588.707 423.101C573.33 460.227 550.789 493.96 522.375 522.375C493.96 550.789 460.227 573.329 423.101 588.707C385.975 604.085 346.185 612 306 612zM306 539.994C368.058 539.993 427.575 515.339 471.458 471.457C515.34 427.575 539.993 368.058 539.995 306C539.993 243.942 515.34 184.424 471.457 140.542C427.575 96.66 368.058 72.007 306 72.005C243.942 72.007 184.425 96.66 140.542 140.542C96.66 184.424 72.007 243.942 72.006 306C72.007 368.058 96.66 427.575 140.542 471.457C184.425 515.339 243.942 539.993 306 539.994z" /> + unicode="" + horiz-adv-x="498.13953488372096" d="M270.047 3.558C275.223 3.557 280.287 5.346 284.621 8.705C288.954 12.064 292.369 16.849 294.45 22.475L495.899 567.676C497.676 572.49 498.415 577.753 498.048 582.991C497.682 588.228 496.222 593.275 493.799 597.674C491.377 602.074 488.069 605.687 484.175 608.188C480.281 610.689 475.924 612 471.496 612H228.092C222.919 611.998 217.857 610.209 213.526 606.85C209.194 603.49 205.781 598.707 203.701 593.084L2.241 47.882C0.464 43.068 -0.275 37.805 0.091 32.568C0.458 27.33 1.918 22.284 4.34 17.885C6.763 13.485 10.07 9.871 13.964 7.37C17.858 4.869 22.216 3.558 26.643 3.558H270.047V3.558zM344.566 315.563H159.346L245.505 548.746H430.724L344.566 315.563V315.563zM104.032 299.995H392.953" /> + horiz-adv-x="498.13953488372096" d="M270.047 3.558C275.223 3.557 280.287 5.346 284.621 8.705C288.954 12.064 292.369 16.849 294.45 22.475L495.899 567.676C497.676 572.49 498.415 577.753 498.048 582.991C497.682 588.228 496.222 593.275 493.799 597.674C491.377 602.074 488.069 605.687 484.175 608.188C480.281 610.689 475.924 612 471.496 612H228.092C222.919 611.998 217.857 610.209 213.526 606.85C209.194 603.49 205.781 598.707 203.701 593.084L2.241 47.882C0.464 43.068 -0.275 37.805 0.091 32.568C0.458 27.33 1.918 22.284 4.34 17.885C6.763 13.485 10.07 9.871 13.964 7.37C17.858 4.869 22.216 3.558 26.643 3.558H270.047V3.558zM344.566 315.563H159.346L245.505 548.746H430.724L344.566 315.563V315.563zM104.032 299.995H392.953" /> + + + unicode="" + horiz-adv-x="612" d="M580.514 585.616C565.942 600.187 542.317 600.187 527.745 585.616L26.384 84.254C11.813 69.682 11.813 46.057 26.385 31.485V31.485C40.956 16.914 64.581 16.914 79.152 31.485L580.513 532.847C595.086 547.419 595.086 571.044 580.514 585.616V585.616z" /> + horiz-adv-x="612" d="M580.514 585.616C565.942 600.187 542.317 600.187 527.745 585.616L26.384 84.254C11.813 69.682 11.813 46.057 26.385 31.485V31.485C40.956 16.914 64.581 16.914 79.152 31.485L580.513 532.847C595.086 547.419 595.086 571.044 580.514 585.616V585.616z" /> + unicode="" + horiz-adv-x="262.2857142857143" d="M93.591 612C85.396 612 77.484 609.008 71.34 603.585L11.375 550.662C4.143 544.279 0 535.097 0 525.45V446.864C0 438.315 3.256 430.087 9.106 423.853L72.916 355.859C73.803 354.914 75.042 354.378 76.339 354.378V354.378C78.931 354.378 81.031 356.479 81.031 359.07V388.004V388.311C81.031 396.762 77.85 404.903 72.119 411.114L49.343 435.798C43.612 442.009 40.43 450.15 40.43 458.601V513.55C40.43 523.197 44.573 532.379 51.806 538.762L84.816 567.896C90.961 573.319 98.873 576.311 107.068 576.311H149.016C157.212 576.311 165.126 573.318 171.27 567.894L204.27 538.762C211.5 532.378 215.643 523.197 215.643 513.553V458.566C215.643 450.136 212.476 442.013 206.77 435.807L184.058 411.105C178.352 404.899 175.185 396.776 175.185 388.346V359.069C175.185 356.478 177.286 354.378 179.877 354.378V354.378C181.175 354.378 182.414 354.914 183.301 355.861L247 423.858C252.837 430.089 256.086 438.308 256.086 446.847V525.45C256.086 535.097 251.943 544.279 244.711 550.662L184.746 603.585C178.602 609.008 170.689 612 162.495 612H93.591zM128.108 442.042C115.283 442.042 104.885 431.645 104.885 418.819V200.234C104.885 187.409 115.283 177.011 128.108 177.011V177.011C140.934 177.011 151.332 187.409 151.332 200.234V418.819C151.332 431.645 140.934 442.042 128.108 442.042V442.042zM76.339 260.224C75.042 260.224 73.803 259.687 72.916 258.741L9.106 190.748C3.256 184.513 0 176.286 0 167.736V89.15C0 79.504 4.143 70.321 11.375 63.939L71.34 11.015C77.484 5.593 85.396 2.601 93.591 2.601H162.495C170.689 2.601 178.602 5.593 184.746 11.015L244.711 63.939C251.943 70.321 256.086 79.504 256.086 89.15V167.754C256.086 176.292 252.837 184.511 247 190.743L183.301 258.739C182.414 259.686 181.175 260.224 179.877 260.224V260.224C177.286 260.224 175.185 258.123 175.185 255.532V226.256C175.185 217.825 178.352 209.702 184.058 203.497L206.77 178.793C212.476 172.587 215.643 164.465 215.643 156.034V101.048C215.643 91.403 211.5 82.223 204.27 75.84L171.27 46.707C165.126 41.283 157.212 38.29 149.016 38.29H107.068C98.873 38.29 90.961 41.282 84.816 46.704L51.806 75.839C44.573 82.223 40.43 91.404 40.43 101.051V156C40.43 164.451 43.612 172.592 49.343 178.803L72.119 203.487C77.85 209.698 81.031 217.839 81.031 226.29V226.597V255.53C81.031 258.122 78.931 260.224 76.339 260.224V260.224z" /> + horiz-adv-x="262.2857142857143" d="M93.591 612C85.396 612 77.484 609.008 71.34 603.585L11.375 550.662C4.143 544.279 0 535.097 0 525.45V446.864C0 438.315 3.256 430.087 9.106 423.853L72.916 355.859C73.803 354.914 75.042 354.378 76.339 354.378V354.378C78.931 354.378 81.031 356.479 81.031 359.07V388.004V388.311C81.031 396.762 77.85 404.903 72.119 411.114L49.343 435.798C43.612 442.009 40.43 450.15 40.43 458.601V513.55C40.43 523.197 44.573 532.379 51.806 538.762L84.816 567.896C90.961 573.319 98.873 576.311 107.068 576.311H149.016C157.212 576.311 165.126 573.318 171.27 567.894L204.27 538.762C211.5 532.378 215.643 523.197 215.643 513.553V458.566C215.643 450.136 212.476 442.013 206.77 435.807L184.058 411.105C178.352 404.899 175.185 396.776 175.185 388.346V359.069C175.185 356.478 177.286 354.378 179.877 354.378V354.378C181.175 354.378 182.414 354.914 183.301 355.861L247 423.858C252.837 430.089 256.086 438.308 256.086 446.847V525.45C256.086 535.097 251.943 544.279 244.711 550.662L184.746 603.585C178.602 609.008 170.689 612 162.495 612H93.591zM128.108 442.042C115.283 442.042 104.885 431.645 104.885 418.819V200.234C104.885 187.409 115.283 177.011 128.108 177.011V177.011C140.934 177.011 151.332 187.409 151.332 200.234V418.819C151.332 431.645 140.934 442.042 128.108 442.042V442.042zM76.339 260.224C75.042 260.224 73.803 259.687 72.916 258.741L9.106 190.748C3.256 184.513 0 176.286 0 167.736V89.15C0 79.504 4.143 70.321 11.375 63.939L71.34 11.015C77.484 5.593 85.396 2.601 93.591 2.601H162.495C170.689 2.601 178.602 5.593 184.746 11.015L244.711 63.939C251.943 70.321 256.086 79.504 256.086 89.15V167.754C256.086 176.292 252.837 184.511 247 190.743L183.301 258.739C182.414 259.686 181.175 260.224 179.877 260.224V260.224C177.286 260.224 175.185 258.123 175.185 255.532V226.256C175.185 217.825 178.352 209.702 184.058 203.497L206.77 178.793C212.476 172.587 215.643 164.465 215.643 156.034V101.048C215.643 91.403 211.5 82.223 204.27 75.84L171.27 46.707C165.126 41.283 157.212 38.29 149.016 38.29H107.068C98.873 38.29 90.961 41.282 84.816 46.704L51.806 75.839C44.573 82.223 40.43 91.404 40.43 101.051V156C40.43 164.451 43.612 172.592 49.343 178.803L72.119 203.487C77.85 209.698 81.031 217.839 81.031 226.29V226.597V255.53C81.031 258.122 78.931 260.224 76.339 260.224V260.224z" /> + unicode="" + horiz-adv-x="612" d="M548.25 226.313C583.458 226.313 612 254.855 612 290.063C612 325.27 583.458 353.813 548.25 353.813C513.042 353.813 484.5 325.27 484.5 290.063C484.5 254.855 513.042 226.313 548.25 226.313zM473.562 413C505.249 413 530.937 438.687 530.937 470.375C530.937 502.062 505.249 527.75 473.562 527.75C441.875 527.75 416.187 502.062 416.187 470.375C416.187 438.687 441.875 413 473.562 413zM293.25 497.25C321.417 497.25 344.25 520.083 344.25 548.25C344.25 576.417 321.417 599.25 293.25 599.25C265.083 599.25 242.25 576.417 242.25 548.25C242.25 520.083 265.083 497.25 293.25 497.25zM112.938 425.75C137.583 425.75 157.563 445.729 157.563 470.375C157.563 495.021 137.583 515 112.938 515C88.292 515 68.313 495.021 68.313 470.375C68.313 445.729 88.292 425.75 112.938 425.75zM38.25 251.813C59.375 251.813 76.5 268.938 76.5 290.063C76.5 311.187 59.375 328.313 38.25 328.313C17.125 328.313 0 311.187 0 290.063C0 268.938 17.125 251.813 38.25 251.813zM112.938 77.875C130.542 77.875 144.813 92.146 144.813 109.75C144.813 127.354 130.542 141.625 112.938 141.625C95.334 141.625 81.063 127.354 81.063 109.75C81.063 92.146 95.334 77.875 112.938 77.875zM293.25 3.188C310.854 3.188 325.125 17.459 325.125 35.063C325.125 52.666 310.854 66.938 293.25 66.938C275.646 66.938 261.375 52.666 261.375 35.063C261.375 17.459 275.646 3.188 293.25 3.188zM473.562 77.875C491.166 77.875 505.437 92.146 505.437 109.75C505.437 127.354 491.166 141.625 473.562 141.625C455.958 141.625 441.687 127.354 441.687 109.75C441.687 92.146 455.958 77.875 473.562 77.875z" /> + horiz-adv-x="612" d="M548.25 226.313C583.458 226.313 612 254.855 612 290.063C612 325.27 583.458 353.813 548.25 353.813C513.042 353.813 484.5 325.27 484.5 290.063C484.5 254.855 513.042 226.313 548.25 226.313zM473.562 413C505.249 413 530.937 438.687 530.937 470.375C530.937 502.062 505.249 527.75 473.562 527.75C441.875 527.75 416.187 502.062 416.187 470.375C416.187 438.687 441.875 413 473.562 413zM293.25 497.25C321.417 497.25 344.25 520.083 344.25 548.25C344.25 576.417 321.417 599.25 293.25 599.25C265.083 599.25 242.25 576.417 242.25 548.25C242.25 520.083 265.083 497.25 293.25 497.25zM112.938 425.75C137.583 425.75 157.563 445.729 157.563 470.375C157.563 495.021 137.583 515 112.938 515C88.292 515 68.313 495.021 68.313 470.375C68.313 445.729 88.292 425.75 112.938 425.75zM38.25 251.813C59.375 251.813 76.5 268.938 76.5 290.063C76.5 311.187 59.375 328.313 38.25 328.313C17.125 328.313 0 311.187 0 290.063C0 268.938 17.125 251.813 38.25 251.813zM112.938 77.875C130.542 77.875 144.813 92.146 144.813 109.75C144.813 127.354 130.542 141.625 112.938 141.625C95.334 141.625 81.063 127.354 81.063 109.75C81.063 92.146 95.334 77.875 112.938 77.875zM293.25 3.188C310.854 3.188 325.125 17.459 325.125 35.063C325.125 52.666 310.854 66.938 293.25 66.938C275.646 66.938 261.375 52.666 261.375 35.063C261.375 17.459 275.646 3.188 293.25 3.188zM473.562 77.875C491.166 77.875 505.437 92.146 505.437 109.75C505.437 127.354 491.166 141.625 473.562 141.625C455.958 141.625 441.687 127.354 441.687 109.75C441.687 92.146 455.958 77.875 473.562 77.875z" /> + unicode="" + horiz-adv-x="511.2" d="M216 612L0 0H216V612zM295.2 612V0H511.2L295.2 612zM327.6 421.2L457.2 32.4H327.6V421.2zM349.2 291.6V54H428.4L349.2 291.6z" /> + horiz-adv-x="511.2" d="M216 612L0 0H216V612zM295.2 612V0H511.2L295.2 612zM327.6 421.2L457.2 32.4H327.6V421.2zM349.2 291.6V54H428.4L349.2 291.6z" /> + unicode="" + horiz-adv-x="612" d="M35.489 546.429L0 479.789V113.28L106.482 413.15H482.75V479.789H248.468L212.979 546.429H35.489zM592.46 297.468C601.234 321.255 583.629 346.506 558.277 346.502L186.538 346.439C171.461 346.436 157.942 337.145 152.537 323.069L47.503 49.555C38.342 25.699 55.951 0.071 81.505 0.067L457.353 0.007C472.613 0.004 486.257 9.513 491.537 23.83L592.46 297.468z" /> + horiz-adv-x="612" d="M35.489 546.429L0 479.789V113.28L106.482 413.15H482.75V479.789H248.468L212.979 546.429H35.489zM592.46 297.468C601.234 321.255 583.629 346.506 558.277 346.502L186.538 346.439C171.461 346.436 157.942 337.145 152.537 323.069L47.503 49.555C38.342 25.699 55.951 0.071 81.505 0.067L457.353 0.007C472.613 0.004 486.257 9.513 491.537 23.83L592.46 297.468z" /> + unicode="" + horiz-adv-x="612" d="M274.977 592.875L262.227 280.5H351.477L338.727 592.875H274.977zM249.477 261.375L243.152 172.822C243.152 172.822 262.277 172.822 281.402 160.072C300.527 147.322 306.814 133.514 306.852 133.875C306.852 133.875 313.277 147.322 332.402 160.072C351.527 172.822 370.652 172.822 370.652 172.822L364.227 261.375H249.477zM240.151 155.69C182.396 157.097 136.954 92.967 96.477 76.5C60.329 63.153 32.725 82.875 36.438 102C39.1 108.375 38.869 116.559 64.602 121.125C45.477 130.936 23.446 127.499 13.602 112.098C-21.201 64.545 76.203 2.892 166.602 6.375C268.331 13.948 357.308 108.972 258.479 153.025C252.233 154.698 246.126 155.544 240.151 155.69zM372.955 154.569C366.981 154.423 360.873 153.578 354.627 151.904C255.799 107.852 344.775 12.827 446.504 5.254C536.904 1.771 634.307 63.424 599.504 110.977C589.66 126.379 567.629 129.815 548.504 120.004C574.238 115.438 574.006 107.254 576.669 100.879C580.381 81.754 552.778 62.032 516.629 75.379C476.153 91.847 430.71 155.976 372.955 154.569z" /> + horiz-adv-x="612" d="M274.977 592.875L262.227 280.5H351.477L338.727 592.875H274.977zM249.477 261.375L243.152 172.822C243.152 172.822 262.277 172.822 281.402 160.072C300.527 147.322 306.814 133.514 306.852 133.875C306.852 133.875 313.277 147.322 332.402 160.072C351.527 172.822 370.652 172.822 370.652 172.822L364.227 261.375H249.477zM240.151 155.69C182.396 157.097 136.954 92.967 96.477 76.5C60.329 63.153 32.725 82.875 36.438 102C39.1 108.375 38.869 116.559 64.602 121.125C45.477 130.936 23.446 127.499 13.602 112.098C-21.201 64.545 76.203 2.892 166.602 6.375C268.331 13.948 357.308 108.972 258.479 153.025C252.233 154.698 246.126 155.544 240.151 155.69zM372.955 154.569C366.981 154.423 360.873 153.578 354.627 151.904C255.799 107.852 344.775 12.827 446.504 5.254C536.904 1.771 634.307 63.424 599.504 110.977C589.66 126.379 567.629 129.815 548.504 120.004C574.238 115.438 574.006 107.254 576.669 100.879C580.381 81.754 552.778 62.032 516.629 75.379C476.153 91.847 430.71 155.976 372.955 154.569z" /> + unicode="" + horiz-adv-x="598.6956521739131" d="M598.696 585.391C598.696 600.087 586.783 612 572.087 612L25.487 612C11.411 612 0 600.589 0 586.513V366.764C0 352.068 11.913 340.155 26.609 340.155L572.087 340.155C586.783 340.155 598.696 352.068 598.696 366.764V585.391zM522.169 561.013C536.865 561.013 548.778 549.1 548.778 534.405V417.75C548.778 403.055 536.865 391.141 522.169 391.141L76.526 391.141C61.83 391.141 49.917 403.055 49.917 417.75V534.405C49.917 549.1 61.83 561.013 76.526 561.013L522.169 561.013zM533.629 200.642L390.594 200.642L390.594 306.053L208.101 306.053V280.553L208.101 200.642H64.911L299.634 0L533.629 200.642zM396.505 149.655L299.582 66.544L202.359 149.655H258.019L258.019 255.067H340.676L340.676 149.655L396.505 149.655z" /> + horiz-adv-x="598.6956521739131" d="M598.696 585.391C598.696 600.087 586.783 612 572.087 612L25.487 612C11.411 612 0 600.589 0 586.513V366.764C0 352.068 11.913 340.155 26.609 340.155L572.087 340.155C586.783 340.155 598.696 352.068 598.696 366.764V585.391zM522.169 561.013C536.865 561.013 548.778 549.1 548.778 534.405V417.75C548.778 403.055 536.865 391.141 522.169 391.141L76.526 391.141C61.83 391.141 49.917 403.055 49.917 417.75V534.405C49.917 549.1 61.83 561.013 76.526 561.013L522.169 561.013zM533.629 200.642L390.594 200.642L390.594 306.053L208.101 306.053V280.553L208.101 200.642H64.911L299.634 0L533.629 200.642zM396.505 149.655L299.582 66.544L202.359 149.655H258.019L258.019 255.067H340.676L340.676 149.655L396.505 149.655z" /> + + + unicode="" + horiz-adv-x="612" d="M27.2 612C12.178 612 0 599.822 0 584.8V25.486C0 11.41 11.411 0 25.487 0H244.645C259.668 0 271.845 12.177 271.845 27.2V584.8C271.845 599.822 259.668 612 244.645 612H27.2zM50.987 533.773C50.987 548.796 63.165 560.973 78.187 560.973H193.659C208.681 560.973 220.859 548.796 220.859 533.773V78.227C220.859 63.205 208.681 51.027 193.659 51.027H78.187C63.165 51.027 50.987 63.205 50.987 78.227V533.773zM411.358 545.488V399.274H305.947V212.726H331.447H411.358V66.353L612 306.292L411.358 545.488zM462.346 405.317L545.455 306.239L462.346 206.856V263.753H356.933V348.247H462.346V405.317z" /> + horiz-adv-x="612" d="M27.2 612C12.178 612 0 599.822 0 584.8V25.486C0 11.41 11.411 0 25.487 0H244.645C259.668 0 271.845 12.177 271.845 27.2V584.8C271.845 599.822 259.668 612 244.645 612H27.2zM50.987 533.773C50.987 548.796 63.165 560.973 78.187 560.973H193.659C208.681 560.973 220.859 548.796 220.859 533.773V78.227C220.859 63.205 208.681 51.027 193.659 51.027H78.187C63.165 51.027 50.987 63.205 50.987 78.227V533.773zM411.358 545.488V399.274H305.947V212.726H331.447H411.358V66.353L612 306.292L411.358 545.488zM462.346 405.317L545.455 306.239L462.346 206.856V263.753H356.933V348.247H462.346V405.317z" /> + + + unicode="" + horiz-adv-x="612" d="M13.6 612C6.089 612 0 605.911 0 598.4V586.739V13.6C0 6.089 6.089 0 13.6 0H598.4C605.911 0 612 6.089 612 13.6V598.4C612 605.911 605.911 612 598.4 612H13.6zM50.522 547.878C50.522 555.389 56.611 561.478 64.122 561.478H547.878C555.389 561.478 561.478 555.389 561.478 547.878V64.122C561.478 56.611 555.389 50.522 547.878 50.522H64.122C56.611 50.522 50.522 56.611 50.522 64.122V547.878zM510 510L328.883 466.185L420.405 443.302L306 374.651L374.638 306L443.289 420.418L466.172 328.883L510 510zM238.638 306L171.261 193.733L148.803 283.542L102 102L283.542 148.817L193.72 171.275L306 238.638L238.638 306z" /> + horiz-adv-x="612" d="M13.6 612C6.089 612 0 605.911 0 598.4V586.739V13.6C0 6.089 6.089 0 13.6 0H598.4C605.911 0 612 6.089 612 13.6V598.4C612 605.911 605.911 612 598.4 612H13.6zM50.522 547.878C50.522 555.389 56.611 561.478 64.122 561.478H547.878C555.389 561.478 561.478 555.389 561.478 547.878V64.122C561.478 56.611 555.389 50.522 547.878 50.522H64.122C56.611 50.522 50.522 56.611 50.522 64.122V547.878zM510 510L328.883 466.185L420.405 443.302L306 374.651L374.638 306L443.289 420.418L466.172 328.883L510 510zM238.638 306L171.261 193.733L148.803 283.542L102 102L283.542 148.817L193.72 171.275L306 238.638L238.638 306z" /> + unicode="" + horiz-adv-x="612" d="M306 612L204 521.329H255V476H357V521.329H408L306 612zM170 442V170H190.201H413.923H442V442H170zM90.671 408L0 306L90.671 204V255H136V357H90.671V408zM521.329 408V357H476V255H521.329V204L612 306L521.329 408zM210.389 401.598H401.611V210.389H210.389V401.598zM255 136V90.671H204L306 0L408 90.671H357V136H255z" /> + horiz-adv-x="612" d="M306 612L204 521.329H255V476H357V521.329H408L306 612zM170 442V170H190.201H413.923H442V442H170zM90.671 408L0 306L90.671 204V255H136V357H90.671V408zM521.329 408V357H476V255H521.329V204L612 306L521.329 408zM210.389 401.598H401.611V210.389H210.389V401.598zM255 136V90.671H204L306 0L408 90.671H357V136H255z" /> + unicode="" + horiz-adv-x="612" d="M520.19 612C496.744 612 473.296 603.027 455.33 585.061L330.031 459.747L323.711 466.067C303.993 485.784 272.247 485.784 252.53 466.067C232.813 446.35 232.813 414.604 252.53 394.886L277.333 370.069L19.265 112.001C-6.422 86.313 -6.422 44.946 19.265 19.26C44.951 -6.427 86.32 -6.427 112.006 19.26L370.074 277.328L394.877 252.525C414.594 232.808 446.355 232.808 466.072 252.525C485.79 272.242 485.79 303.988 466.072 323.706L459.753 330.026L585.051 455.324C620.983 491.257 620.983 549.128 585.051 585.061C567.085 603.027 543.637 612 520.19 612zM308.979 340.724L340.729 308.974L306.932 275.176C306.81 275.048 306.728 274.898 306.603 274.773L85.978 54.163C77.164 45.348 62.982 45.348 54.168 54.163C45.354 62.976 45.354 77.159 54.168 85.973L274.778 306.597C274.904 306.723 275.053 306.804 275.181 306.926L308.979 340.724z" /> + horiz-adv-x="612" d="M520.19 612C496.744 612 473.296 603.027 455.33 585.061L330.031 459.747L323.711 466.067C303.993 485.784 272.247 485.784 252.53 466.067C232.813 446.35 232.813 414.604 252.53 394.886L277.333 370.069L19.265 112.001C-6.422 86.313 -6.422 44.946 19.265 19.26C44.951 -6.427 86.32 -6.427 112.006 19.26L370.074 277.328L394.877 252.525C414.594 232.808 446.355 232.808 466.072 252.525C485.79 272.242 485.79 303.988 466.072 323.706L459.753 330.026L585.051 455.324C620.983 491.257 620.983 549.128 585.051 585.061C567.085 603.027 543.637 612 520.19 612zM308.979 340.724L340.729 308.974L306.932 275.176C306.81 275.048 306.728 274.898 306.603 274.773L85.978 54.163C77.164 45.348 62.982 45.348 54.168 54.163C45.354 62.976 45.354 77.159 54.168 85.973L274.778 306.597C274.904 306.723 275.053 306.804 275.181 306.926L308.979 340.724z" /> + unicode="" + horiz-adv-x="486.24657534246575" d="M25.151 612C11.26 612 0 600.74 0 586.849V528.164C0 514.274 11.26 503.014 25.151 503.014H83.836C97.726 503.014 108.986 514.274 108.986 528.164V586.849C108.986 600.74 97.726 612 83.836 612H25.151zM150.904 612C137.013 612 125.753 600.74 125.753 586.849V528.164C125.753 514.274 137.013 503.014 150.904 503.014H209.589C223.48 503.014 234.74 514.274 234.74 528.164V586.849C234.74 600.74 223.48 612 209.589 612H150.904zM276.658 612C262.767 612 251.507 600.74 251.507 586.849V528.164C251.507 514.274 262.767 503.014 276.658 503.014H335.342C349.233 503.014 360.493 514.274 360.493 528.164V528.164V544.932V586.849C360.493 600.74 349.233 612 335.342 612H276.658zM402.411 528.164C388.52 528.164 377.26 516.904 377.26 503.014V444.329C377.26 430.438 388.52 419.178 402.411 419.178H461.096C474.987 419.178 486.247 430.438 486.247 444.329V503.014C486.247 516.904 474.987 528.164 461.096 528.164H402.411zM25.151 486.247C11.26 486.247 0 474.987 0 461.096V402.411C0 388.52 11.26 377.26 25.151 377.26H83.836C97.726 377.26 108.986 388.52 108.986 402.411V461.096C108.986 474.987 97.726 486.247 83.836 486.247H25.151zM402.411 402.411C388.52 402.411 377.26 391.151 377.26 377.26V318.575C377.26 304.685 388.52 293.425 402.411 293.425H461.096C474.987 293.425 486.247 304.685 486.247 318.575V377.26C486.247 391.151 474.987 402.411 461.096 402.411H402.411zM25.151 360.493C11.26 360.493 0 349.233 0 335.342V276.658C0 262.767 11.26 251.507 25.151 251.507H83.836C97.726 251.507 108.986 262.767 108.986 276.658V318.575V335.342V335.342C108.986 349.233 97.726 360.493 83.836 360.493H25.151zM150.904 318.575C137.013 318.575 125.753 307.315 125.753 293.425V234.74C125.753 220.849 137.013 209.589 150.904 209.589H209.589C223.48 209.589 234.74 220.849 234.74 234.74V293.425C234.74 307.315 223.48 318.575 209.589 318.575H150.904zM276.658 318.575C262.767 318.575 251.507 307.315 251.507 293.425V234.74C251.507 220.849 262.767 209.589 276.658 209.589H335.342C349.233 209.589 360.493 220.849 360.493 234.74V276.658V293.425V293.425C360.493 307.315 349.233 318.575 335.342 318.575H276.658zM25.151 234.74C11.26 234.74 0 223.48 0 209.589V150.904C0 137.013 11.26 125.753 25.151 125.753H83.836C97.726 125.753 108.986 137.013 108.986 150.904V209.589C108.986 223.48 97.726 234.74 83.836 234.74H25.151zM25.151 108.986C11.26 108.986 0 97.726 0 83.836V25.151C0 11.26 11.26 0 25.151 0H83.836C97.726 0 108.986 11.26 108.986 25.151V83.836C108.986 97.726 97.726 108.986 83.836 108.986H25.151z" /> + horiz-adv-x="486.24657534246575" d="M25.151 612C11.26 612 0 600.74 0 586.849V528.164C0 514.274 11.26 503.014 25.151 503.014H83.836C97.726 503.014 108.986 514.274 108.986 528.164V586.849C108.986 600.74 97.726 612 83.836 612H25.151zM150.904 612C137.013 612 125.753 600.74 125.753 586.849V528.164C125.753 514.274 137.013 503.014 150.904 503.014H209.589C223.48 503.014 234.74 514.274 234.74 528.164V586.849C234.74 600.74 223.48 612 209.589 612H150.904zM276.658 612C262.767 612 251.507 600.74 251.507 586.849V528.164C251.507 514.274 262.767 503.014 276.658 503.014H335.342C349.233 503.014 360.493 514.274 360.493 528.164V528.164V544.932V586.849C360.493 600.74 349.233 612 335.342 612H276.658zM402.411 528.164C388.52 528.164 377.26 516.904 377.26 503.014V444.329C377.26 430.438 388.52 419.178 402.411 419.178H461.096C474.987 419.178 486.247 430.438 486.247 444.329V503.014C486.247 516.904 474.987 528.164 461.096 528.164H402.411zM25.151 486.247C11.26 486.247 0 474.987 0 461.096V402.411C0 388.52 11.26 377.26 25.151 377.26H83.836C97.726 377.26 108.986 388.52 108.986 402.411V461.096C108.986 474.987 97.726 486.247 83.836 486.247H25.151zM402.411 402.411C388.52 402.411 377.26 391.151 377.26 377.26V318.575C377.26 304.685 388.52 293.425 402.411 293.425H461.096C474.987 293.425 486.247 304.685 486.247 318.575V377.26C486.247 391.151 474.987 402.411 461.096 402.411H402.411zM25.151 360.493C11.26 360.493 0 349.233 0 335.342V276.658C0 262.767 11.26 251.507 25.151 251.507H83.836C97.726 251.507 108.986 262.767 108.986 276.658V318.575V335.342V335.342C108.986 349.233 97.726 360.493 83.836 360.493H25.151zM150.904 318.575C137.013 318.575 125.753 307.315 125.753 293.425V234.74C125.753 220.849 137.013 209.589 150.904 209.589H209.589C223.48 209.589 234.74 220.849 234.74 234.74V293.425C234.74 307.315 223.48 318.575 209.589 318.575H150.904zM276.658 318.575C262.767 318.575 251.507 307.315 251.507 293.425V234.74C251.507 220.849 262.767 209.589 276.658 209.589H335.342C349.233 209.589 360.493 220.849 360.493 234.74V276.658V293.425V293.425C360.493 307.315 349.233 318.575 335.342 318.575H276.658zM25.151 234.74C11.26 234.74 0 223.48 0 209.589V150.904C0 137.013 11.26 125.753 25.151 125.753H83.836C97.726 125.753 108.986 137.013 108.986 150.904V209.589C108.986 223.48 97.726 234.74 83.836 234.74H25.151zM25.151 108.986C11.26 108.986 0 97.726 0 83.836V25.151C0 11.26 11.26 0 25.151 0H83.836C97.726 0 108.986 11.26 108.986 25.151V83.836C108.986 97.726 97.726 108.986 83.836 108.986H25.151z" /> + unicode="" + horiz-adv-x="612" d="M40.8 530.4C18.267 530.4 0 512.133 0 489.6V40.8C0 18.267 18.267 0 40.8 0H571.2C593.733 0 612 18.267 612 40.8V489.6C612 512.133 593.733 530.4 571.2 530.4H40.8zM65.28 456.96H546.72V73.44H65.28V456.96z" /> + horiz-adv-x="612" d="M40.8 530.4C18.267 530.4 0 512.133 0 489.6V40.8C0 18.267 18.267 0 40.8 0H571.2C593.733 0 612 18.267 612 40.8V489.6C612 512.133 593.733 530.4 571.2 530.4H40.8zM65.28 456.96H546.72V73.44H65.28V456.96z" /> + unicode="" + horiz-adv-x="596.8888888888889" d="M346.764 612L595.432 402.422L346.764 196.444L382.288 347.556C297.85 353.798 233.906 338.687 169.964 293.354C84.706 232.909 42.077 112.02 27.868 6.242C13.658 89.354 -43.18 270.687 63.392 384.02C129.999 454.854 210.483 469.61 278.825 468.872C319.83 468.43 355.645 463.722 382.288 460.889L346.764 612z" /> + horiz-adv-x="596.8888888888889" d="M346.764 612L595.432 402.422L346.764 196.444L382.288 347.556C297.85 353.798 233.906 338.687 169.964 293.354C84.706 232.909 42.077 112.02 27.868 6.242C13.658 89.354 -43.18 270.687 63.392 384.02C129.999 454.854 210.483 469.61 278.825 468.872C319.83 468.43 355.645 463.722 382.288 460.889L346.764 612z" /> + unicode="" + horiz-adv-x="612" d="M612 612L342.869 546.895L478.869 512.895L308.869 410.895L410.869 308.895L512.869 478.895L546.869 342.895L612 612zM0 0L274.869 70.895L138.869 104.895L308.869 206.895L206.869 308.895L104.869 138.895L70.869 274.895L0 0z" /> + horiz-adv-x="612" d="M612 612L342.869 546.895L478.869 512.895L308.869 410.895L410.869 308.895L512.869 478.895L546.869 342.895L612 612zM0 0L274.869 70.895L138.869 104.895L308.869 206.895L206.869 308.895L104.869 138.895L70.869 274.895L0 0z" /> + unicode="" + horiz-adv-x="518.4" d="M262.012 612L276.314 503.649L244.8 504.014C105.624 504.014 0 391.177 0 252C0 112.824 112.824 0 252 0C303.179 0 350.791 15.258 390.544 41.471C396.292 45.261 401.858 49.3 407.264 53.536L355.81 105.005C355.091 104.494 354.398 103.942 353.672 103.444C324.743 83.608 289.726 72 252 72C152.589 72 72 152.589 72 252C72 351.412 145.389 432.014 244.8 432.014V432.296L276.314 432.379L261.984 324.001L515.601 468.014L262.012 612V612z" /> + horiz-adv-x="518.4" d="M262.012 612L276.314 503.649L244.8 504.014C105.624 504.014 0 391.177 0 252C0 112.824 112.824 0 252 0C303.179 0 350.791 15.258 390.544 41.471C396.292 45.261 401.858 49.3 407.264 53.536L355.81 105.005C355.091 104.494 354.398 103.942 353.672 103.444C324.743 83.608 289.726 72 252 72C152.589 72 72 152.589 72 252C72 351.412 145.389 432.014 244.8 432.014V432.296L276.314 432.379L261.984 324.001L515.601 468.014L262.012 612V612z" /> + unicode="" + horiz-adv-x="612" d="M7.65 581.4C3.425 581.4 0 577.975 0 573.75V7.65C0 3.425 3.425 0 7.65 0H604.35C608.575 0 612 3.425 612 7.65V455.831C612 457.86 611.194 459.806 609.759 461.241L491.841 579.159C490.406 580.594 488.46 581.4 486.431 581.4H405.45C401.225 581.4 397.8 577.975 397.8 573.75V359.55C397.8 355.325 394.375 351.9 390.15 351.9H114.75C110.525 351.9 107.1 355.325 107.1 359.55V573.75C107.1 577.975 103.675 581.4 99.45 581.4H7.65zM306.161 558.45C285.035 558.45 267.75 541.325 267.75 520.2V431.807C267.75 410.682 284.923 393.557 306.048 393.557V393.557C327.135 393.557 344.294 410.623 344.347 431.709L344.571 520.103C344.625 541.266 327.323 558.45 306.161 558.45V558.45z" /> + horiz-adv-x="612" d="M7.65 581.4C3.425 581.4 0 577.975 0 573.75V7.65C0 3.425 3.425 0 7.65 0H604.35C608.575 0 612 3.425 612 7.65V455.831C612 457.86 611.194 459.806 609.759 461.241L491.841 579.159C490.406 580.594 488.46 581.4 486.431 581.4H405.45C401.225 581.4 397.8 577.975 397.8 573.75V359.55C397.8 355.325 394.375 351.9 390.15 351.9H114.75C110.525 351.9 107.1 355.325 107.1 359.55V573.75C107.1 577.975 103.675 581.4 99.45 581.4H7.65zM306.161 558.45C285.035 558.45 267.75 541.325 267.75 520.2V431.807C267.75 410.682 284.923 393.557 306.048 393.557V393.557C327.135 393.557 344.294 410.623 344.347 431.709L344.571 520.103C344.625 541.266 327.323 558.45 306.161 558.45V558.45z" /> + unicode="" + horiz-adv-x="612" d="M36.429 422.571H14.571C6.524 422.571 0 416.048 0 408V364.286C0 356.238 6.524 349.714 14.571 349.714H36.429C44.476 349.714 51 356.238 51 364.286V408C51 416.048 44.476 422.571 36.429 422.571zM597.429 422.571H575.571C567.524 422.571 561 416.048 561 408V364.286C561 356.238 567.524 349.714 575.571 349.714H597.429C605.476 349.714 612 356.238 612 364.286V408C612 416.048 605.476 422.571 597.429 422.571zM36.429 306H14.571C6.524 306 0 299.476 0 291.429V247.714C0 239.666 6.524 233.143 14.571 233.143H36.429C44.476 233.143 51 239.666 51 247.714V291.429C51 299.476 44.476 306 36.429 306zM36.429 189.429H14.571C6.524 189.429 0 182.905 0 174.857V131.143C0 123.095 6.524 116.571 14.571 116.571H36.429C44.476 116.571 51 123.095 51 131.143V174.857C51 182.905 44.476 189.429 36.429 189.429zM153 422.571H109.286C101.238 422.571 94.714 416.048 94.714 408V386.143C94.714 378.095 101.238 371.571 109.286 371.571H153C161.048 371.571 167.571 378.095 167.571 386.143V408C167.571 416.048 161.048 422.571 153 422.571zM269.571 422.571H225.857C217.809 422.571 211.286 416.048 211.286 408V386.143C211.286 378.095 217.809 371.571 225.857 371.571H269.571C277.619 371.571 284.143 378.095 284.143 386.143V408C284.143 416.048 277.619 422.571 269.571 422.571zM386.143 422.571H342.429C334.381 422.571 327.857 416.048 327.857 408V386.143C327.857 378.095 334.381 371.571 342.429 371.571H386.143C394.191 371.571 400.714 378.095 400.714 386.143V408C400.714 416.048 394.191 422.571 386.143 422.571zM502.714 422.571H459C450.952 422.571 444.429 416.048 444.429 408V386.143C444.429 378.095 450.952 371.571 459 371.571H502.714C510.762 371.571 517.286 378.095 517.286 386.143V408C517.286 416.048 510.762 422.571 502.714 422.571zM502.714 51H459C450.952 51 444.429 44.476 444.429 36.429V14.571C444.429 6.524 450.952 0 459 0H502.714C510.762 0 517.286 6.524 517.286 14.571V36.429C517.286 44.476 510.762 51 502.714 51zM36.429 72.857H14.571C6.524 72.857 0 66.334 0 58.286V14.571C0 6.524 6.524 0 14.571 0H36.429C44.476 0 51 6.524 51 14.571V58.286C51 66.334 44.476 72.857 36.429 72.857zM597.429 306H575.571C567.524 306 561 299.476 561 291.429V247.714C561 239.666 567.524 233.143 575.571 233.143H597.429C605.476 233.143 612 239.666 612 247.714V291.429C612 299.476 605.476 306 597.429 306zM597.429 189.429H575.571C567.524 189.429 561 182.905 561 174.857V131.143C561 123.095 567.524 116.571 575.571 116.571H597.429C605.476 116.571 612 123.095 612 131.143V174.857C612 182.905 605.476 189.429 597.429 189.429zM597.429 72.857H575.571C567.524 72.857 561 66.334 561 58.286V14.571C561 6.524 567.524 0 575.571 0H597.429C605.476 0 612 6.524 612 14.571V58.286C612 66.334 605.476 72.857 597.429 72.857zM153 51H109.286C101.238 51 94.714 44.476 94.714 36.429V14.571C94.714 6.524 101.238 0 109.286 0H153C161.048 0 167.571 6.524 167.571 14.571V36.429C167.571 44.476 161.048 51 153 51zM269.571 51H225.857C217.809 51 211.286 44.476 211.286 36.429V14.571C211.286 6.524 217.809 0 225.857 0H269.571C277.619 0 284.143 6.524 284.143 14.571V36.429C284.143 44.476 277.619 51 269.571 51zM386.143 51H342.429C334.381 51 327.857 44.476 327.857 36.429V14.571C327.857 6.524 334.381 0 342.429 0H386.143C394.191 0 400.714 6.524 400.714 14.571V36.429C400.714 44.476 394.191 51 386.143 51z" /> + horiz-adv-x="612" d="M36.429 422.571H14.571C6.524 422.571 0 416.048 0 408V364.286C0 356.238 6.524 349.714 14.571 349.714H36.429C44.476 349.714 51 356.238 51 364.286V408C51 416.048 44.476 422.571 36.429 422.571zM597.429 422.571H575.571C567.524 422.571 561 416.048 561 408V364.286C561 356.238 567.524 349.714 575.571 349.714H597.429C605.476 349.714 612 356.238 612 364.286V408C612 416.048 605.476 422.571 597.429 422.571zM36.429 306H14.571C6.524 306 0 299.476 0 291.429V247.714C0 239.666 6.524 233.143 14.571 233.143H36.429C44.476 233.143 51 239.666 51 247.714V291.429C51 299.476 44.476 306 36.429 306zM36.429 189.429H14.571C6.524 189.429 0 182.905 0 174.857V131.143C0 123.095 6.524 116.571 14.571 116.571H36.429C44.476 116.571 51 123.095 51 131.143V174.857C51 182.905 44.476 189.429 36.429 189.429zM153 422.571H109.286C101.238 422.571 94.714 416.048 94.714 408V386.143C94.714 378.095 101.238 371.571 109.286 371.571H153C161.048 371.571 167.571 378.095 167.571 386.143V408C167.571 416.048 161.048 422.571 153 422.571zM269.571 422.571H225.857C217.809 422.571 211.286 416.048 211.286 408V386.143C211.286 378.095 217.809 371.571 225.857 371.571H269.571C277.619 371.571 284.143 378.095 284.143 386.143V408C284.143 416.048 277.619 422.571 269.571 422.571zM386.143 422.571H342.429C334.381 422.571 327.857 416.048 327.857 408V386.143C327.857 378.095 334.381 371.571 342.429 371.571H386.143C394.191 371.571 400.714 378.095 400.714 386.143V408C400.714 416.048 394.191 422.571 386.143 422.571zM502.714 422.571H459C450.952 422.571 444.429 416.048 444.429 408V386.143C444.429 378.095 450.952 371.571 459 371.571H502.714C510.762 371.571 517.286 378.095 517.286 386.143V408C517.286 416.048 510.762 422.571 502.714 422.571zM502.714 51H459C450.952 51 444.429 44.476 444.429 36.429V14.571C444.429 6.524 450.952 0 459 0H502.714C510.762 0 517.286 6.524 517.286 14.571V36.429C517.286 44.476 510.762 51 502.714 51zM36.429 72.857H14.571C6.524 72.857 0 66.334 0 58.286V14.571C0 6.524 6.524 0 14.571 0H36.429C44.476 0 51 6.524 51 14.571V58.286C51 66.334 44.476 72.857 36.429 72.857zM597.429 306H575.571C567.524 306 561 299.476 561 291.429V247.714C561 239.666 567.524 233.143 575.571 233.143H597.429C605.476 233.143 612 239.666 612 247.714V291.429C612 299.476 605.476 306 597.429 306zM597.429 189.429H575.571C567.524 189.429 561 182.905 561 174.857V131.143C561 123.095 567.524 116.571 575.571 116.571H597.429C605.476 116.571 612 123.095 612 131.143V174.857C612 182.905 605.476 189.429 597.429 189.429zM597.429 72.857H575.571C567.524 72.857 561 66.334 561 58.286V14.571C561 6.524 567.524 0 575.571 0H597.429C605.476 0 612 6.524 612 14.571V58.286C612 66.334 605.476 72.857 597.429 72.857zM153 51H109.286C101.238 51 94.714 44.476 94.714 36.429V14.571C94.714 6.524 101.238 0 109.286 0H153C161.048 0 167.571 6.524 167.571 14.571V36.429C167.571 44.476 161.048 51 153 51zM269.571 51H225.857C217.809 51 211.286 44.476 211.286 36.429V14.571C211.286 6.524 217.809 0 225.857 0H269.571C277.619 0 284.143 6.524 284.143 14.571V36.429C284.143 44.476 277.619 51 269.571 51zM386.143 51H342.429C334.381 51 327.857 44.476 327.857 36.429V14.571C327.857 6.524 334.381 0 342.429 0H386.143C394.191 0 400.714 6.524 400.714 14.571V36.429C400.714 44.476 394.191 51 386.143 51z" /> + unicode="" + horiz-adv-x="612" d="M266.4 612C258.447 612 252 605.553 252 597.6V544.795C252 538.126 247.406 532.375 241.001 530.518C224.295 525.675 208.182 518.984 192.959 510.57C187.114 507.339 179.785 508.152 175.063 512.875L137.869 550.069C132.246 555.692 123.129 555.692 117.505 550.07L61.751 494.326C56.127 488.703 56.127 479.584 61.75 473.96L98.935 436.776C103.648 432.063 104.468 424.753 101.258 418.912C92.858 403.629 86.193 387.455 81.387 370.692C79.545 364.265 73.784 359.649 67.098 359.649H14.4C6.447 359.649 0 353.201 0 345.249V266.4C0 258.447 6.447 252 14.4 252H67.205C73.874 252 79.625 247.406 81.482 241.001C86.325 224.295 93.016 208.182 101.43 192.959C104.661 187.114 103.848 179.785 99.125 175.063L61.75 137.687C56.126 132.063 56.126 122.946 61.75 117.323L117.504 61.568C123.128 55.944 132.247 55.945 137.87 61.569L175.224 98.933C179.937 103.648 187.248 104.468 193.089 101.258C208.271 92.914 224.333 86.282 240.978 81.484C247.395 79.634 252 73.878 252 67.2V14.751C252 6.799 258.447 0.351 266.4 0.351H345.6C353.553 0.351 360 6.799 360 14.751V67.207C360 73.875 364.593 79.626 370.997 81.483C387.622 86.306 403.662 92.958 418.82 101.318C424.664 104.541 431.986 103.725 436.704 99.004L474.13 61.569C479.753 55.945 488.872 55.944 494.496 61.568L550.251 117.323C555.874 122.946 555.874 132.063 550.251 137.687L512.946 174.992C508.229 179.708 507.412 187.024 510.63 192.867C519.028 208.114 525.698 224.25 530.518 240.976C532.367 247.393 538.123 252 544.801 252H597.6C605.553 252 612 258.447 612 266.4V345.249C612 353.201 605.553 359.649 597.6 359.649H544.786C538.101 359.649 532.342 364.262 530.498 370.688C525.696 387.423 519.04 403.569 510.656 418.828C507.446 424.669 508.267 431.978 512.98 436.691L550.249 473.96C555.873 479.584 555.873 488.703 550.248 494.326L494.495 550.07C488.871 555.692 479.754 555.692 474.131 550.069L437.008 512.946C432.292 508.229 424.976 507.412 419.133 510.63C403.886 519.028 387.75 525.698 371.024 530.518C364.607 532.367 360 538.123 360 544.801V597.6C360 605.553 353.553 612 345.6 612H266.4zM306 429.877C338.854 429.875 370.362 416.823 393.592 393.592C416.823 370.362 429.875 338.854 429.877 306C429.875 273.146 416.823 241.638 393.592 218.408C370.362 195.177 338.854 182.125 306 182.123C273.146 182.125 241.638 195.177 218.408 218.408C195.177 241.638 182.125 273.146 182.123 306C182.125 338.854 195.177 370.362 218.408 393.592C241.638 416.823 273.146 429.875 306 429.877z" /> + horiz-adv-x="612" d="M266.4 612C258.447 612 252 605.553 252 597.6V544.795C252 538.126 247.406 532.375 241.001 530.518C224.295 525.675 208.182 518.984 192.959 510.57C187.114 507.339 179.785 508.152 175.063 512.875L137.869 550.069C132.246 555.692 123.129 555.692 117.505 550.07L61.751 494.326C56.127 488.703 56.127 479.584 61.75 473.96L98.935 436.776C103.648 432.063 104.468 424.753 101.258 418.912C92.858 403.629 86.193 387.455 81.387 370.692C79.545 364.265 73.784 359.649 67.098 359.649H14.4C6.447 359.649 0 353.201 0 345.249V266.4C0 258.447 6.447 252 14.4 252H67.205C73.874 252 79.625 247.406 81.482 241.001C86.325 224.295 93.016 208.182 101.43 192.959C104.661 187.114 103.848 179.785 99.125 175.063L61.75 137.687C56.126 132.063 56.126 122.946 61.75 117.323L117.504 61.568C123.128 55.944 132.247 55.945 137.87 61.569L175.224 98.933C179.937 103.648 187.248 104.468 193.089 101.258C208.271 92.914 224.333 86.282 240.978 81.484C247.395 79.634 252 73.878 252 67.2V14.751C252 6.799 258.447 0.351 266.4 0.351H345.6C353.553 0.351 360 6.799 360 14.751V67.207C360 73.875 364.593 79.626 370.997 81.483C387.622 86.306 403.662 92.958 418.82 101.318C424.664 104.541 431.986 103.725 436.704 99.004L474.13 61.569C479.753 55.945 488.872 55.944 494.496 61.568L550.251 117.323C555.874 122.946 555.874 132.063 550.251 137.687L512.946 174.992C508.229 179.708 507.412 187.024 510.63 192.867C519.028 208.114 525.698 224.25 530.518 240.976C532.367 247.393 538.123 252 544.801 252H597.6C605.553 252 612 258.447 612 266.4V345.249C612 353.201 605.553 359.649 597.6 359.649H544.786C538.101 359.649 532.342 364.262 530.498 370.688C525.696 387.423 519.04 403.569 510.656 418.828C507.446 424.669 508.267 431.978 512.98 436.691L550.249 473.96C555.873 479.584 555.873 488.703 550.248 494.326L494.495 550.07C488.871 555.692 479.754 555.692 474.131 550.069L437.008 512.946C432.292 508.229 424.976 507.412 419.133 510.63C403.886 519.028 387.75 525.698 371.024 530.518C364.607 532.367 360 538.123 360 544.801V597.6C360 605.553 353.553 612 345.6 612H266.4zM306 429.877C338.854 429.875 370.362 416.823 393.592 393.592C416.823 370.362 429.875 338.854 429.877 306C429.875 273.146 416.823 241.638 393.592 218.408C370.362 195.177 338.854 182.125 306 182.123C273.146 182.125 241.638 195.177 218.408 218.408C195.177 241.638 182.125 273.146 182.123 306C182.125 338.854 195.177 370.362 218.408 393.592C241.638 416.823 273.146 429.875 306 429.877z" /> + unicode="" + horiz-adv-x="571.2" d="M0 612V530.4H244.8V0H326.4V530.4H571.2V612H0z" /> + horiz-adv-x="571.2" d="M0 612V530.4H244.8V0H326.4V530.4H571.2V612H0z" /> + unicode="" + horiz-adv-x="596.8888888888889" d="M248.668 612L0 402.422L248.668 196.444L213.144 347.556C297.582 353.798 361.525 338.687 425.468 293.354C510.726 232.909 553.355 112.02 567.564 6.242C581.774 89.354 638.612 270.687 532.04 384.02C465.433 454.854 384.949 469.61 316.607 468.872C275.602 468.43 239.787 463.722 213.144 460.889L248.668 612z" /> + horiz-adv-x="596.8888888888889" d="M248.668 612L0 402.422L248.668 196.444L213.144 347.556C297.582 353.798 361.525 338.687 425.468 293.354C510.726 232.909 553.355 112.02 567.564 6.242C581.774 89.354 638.612 270.687 532.04 384.02C465.433 454.854 384.949 469.61 316.607 468.872C275.602 468.43 239.787 463.722 213.144 460.889L248.668 612z" /> + unicode="" + horiz-adv-x="538.021978021978" d="M227.768 612C219.573 612 211.661 609.008 205.517 603.585L145.552 550.662C138.32 544.279 134.177 535.097 134.177 525.45V446.864C134.177 438.315 137.433 430.087 143.283 423.853L208.484 354.378H215.209V388.004V401.455L183.521 435.798C177.789 442.009 174.608 450.15 174.608 458.601V513.55C174.608 523.197 178.75 532.379 185.983 538.762L218.994 567.896C225.137 573.319 233.05 576.311 241.245 576.311H283.193C291.389 576.311 299.303 573.318 305.447 567.894L338.447 538.762C345.678 532.378 349.819 523.197 349.819 513.553V458.566C349.819 450.136 346.653 442.013 340.947 435.807L309.363 401.455V354.378H316.088L381.177 423.858C387.015 430.089 390.263 438.308 390.263 446.847V525.45C390.263 535.097 386.12 544.279 378.888 550.662L318.923 603.585C312.779 609.008 304.867 612 296.672 612H227.768zM38.768 422.026C32.214 425.522 24.067 423.043 20.571 416.489V416.489C17.074 409.934 19.553 401.785 26.109 398.29L109.188 353.981C115.742 350.486 123.889 352.965 127.385 359.518V359.518C130.883 366.074 128.403 374.222 121.847 377.718L38.768 422.026zM517.451 416.489C513.955 423.043 505.808 425.522 499.254 422.026L416.175 377.718C409.619 374.222 407.139 366.074 410.637 359.518V359.518C414.133 352.965 422.28 350.486 428.834 353.981L511.913 398.29C518.469 401.785 520.949 409.934 517.451 416.489V416.489zM13.451 320.751C6.022 320.751 0 314.729 0 307.301V307.301C0 299.872 6.022 293.85 13.451 293.85H107.604C115.033 293.85 121.055 299.872 121.055 307.301V307.301C121.055 314.729 115.033 320.751 107.604 320.751H13.451zM430.418 320.751C422.989 320.751 416.967 314.729 416.967 307.301V307.301C416.967 299.872 422.989 293.85 430.418 293.85H524.571C532 293.85 538.022 299.872 538.022 307.301V307.301C538.022 314.729 532 320.751 524.571 320.751H430.418zM127.385 255.082C123.889 261.636 115.742 264.115 109.188 260.62L26.109 216.312C19.553 212.815 17.074 204.667 20.571 198.112V198.112C24.067 191.558 32.214 189.079 38.768 192.574L121.847 236.883C128.403 240.379 130.883 248.528 127.385 255.082V255.082zM428.834 260.62C422.28 264.115 414.133 261.636 410.637 255.082V255.082C407.139 248.528 409.619 240.379 416.175 236.883L499.254 192.574C505.808 189.079 513.955 191.558 517.451 198.112V198.112C520.949 204.667 518.469 212.815 511.913 216.312L428.834 260.62zM208.484 260.224L143.283 190.748C137.433 184.513 134.177 176.286 134.177 167.736V89.15C134.177 79.504 138.32 70.321 145.552 63.939L205.517 11.015C211.661 5.593 219.573 2.601 227.768 2.601H296.672C304.867 2.601 312.779 5.593 318.923 11.015L378.888 63.939C386.12 70.321 390.263 79.504 390.263 89.15V167.754C390.263 176.292 387.015 184.511 381.177 190.743L316.088 260.224H309.363V213.147L340.947 178.793C346.653 172.587 349.819 164.465 349.819 156.034V101.048C349.819 91.403 345.678 82.223 338.447 75.84L305.447 46.707C299.303 41.283 291.389 38.29 283.193 38.29H241.245C233.05 38.29 225.137 41.282 218.994 46.704L185.983 75.839C178.75 82.223 174.608 91.404 174.608 101.051V156C174.608 164.451 177.789 172.592 183.521 178.803L215.209 213.147V226.597V260.224H208.484z" /> + horiz-adv-x="538.021978021978" d="M227.768 612C219.573 612 211.661 609.008 205.517 603.585L145.552 550.662C138.32 544.279 134.177 535.097 134.177 525.45V446.864C134.177 438.315 137.433 430.087 143.283 423.853L208.484 354.378H215.209V388.004V401.455L183.521 435.798C177.789 442.009 174.608 450.15 174.608 458.601V513.55C174.608 523.197 178.75 532.379 185.983 538.762L218.994 567.896C225.137 573.319 233.05 576.311 241.245 576.311H283.193C291.389 576.311 299.303 573.318 305.447 567.894L338.447 538.762C345.678 532.378 349.819 523.197 349.819 513.553V458.566C349.819 450.136 346.653 442.013 340.947 435.807L309.363 401.455V354.378H316.088L381.177 423.858C387.015 430.089 390.263 438.308 390.263 446.847V525.45C390.263 535.097 386.12 544.279 378.888 550.662L318.923 603.585C312.779 609.008 304.867 612 296.672 612H227.768zM38.768 422.026C32.214 425.522 24.067 423.043 20.571 416.489V416.489C17.074 409.934 19.553 401.785 26.109 398.29L109.188 353.981C115.742 350.486 123.889 352.965 127.385 359.518V359.518C130.883 366.074 128.403 374.222 121.847 377.718L38.768 422.026zM517.451 416.489C513.955 423.043 505.808 425.522 499.254 422.026L416.175 377.718C409.619 374.222 407.139 366.074 410.637 359.518V359.518C414.133 352.965 422.28 350.486 428.834 353.981L511.913 398.29C518.469 401.785 520.949 409.934 517.451 416.489V416.489zM13.451 320.751C6.022 320.751 0 314.729 0 307.301V307.301C0 299.872 6.022 293.85 13.451 293.85H107.604C115.033 293.85 121.055 299.872 121.055 307.301V307.301C121.055 314.729 115.033 320.751 107.604 320.751H13.451zM430.418 320.751C422.989 320.751 416.967 314.729 416.967 307.301V307.301C416.967 299.872 422.989 293.85 430.418 293.85H524.571C532 293.85 538.022 299.872 538.022 307.301V307.301C538.022 314.729 532 320.751 524.571 320.751H430.418zM127.385 255.082C123.889 261.636 115.742 264.115 109.188 260.62L26.109 216.312C19.553 212.815 17.074 204.667 20.571 198.112V198.112C24.067 191.558 32.214 189.079 38.768 192.574L121.847 236.883C128.403 240.379 130.883 248.528 127.385 255.082V255.082zM428.834 260.62C422.28 264.115 414.133 261.636 410.637 255.082V255.082C407.139 248.528 409.619 240.379 416.175 236.883L499.254 192.574C505.808 189.079 513.955 191.558 517.451 198.112V198.112C520.949 204.667 518.469 212.815 511.913 216.312L428.834 260.62zM208.484 260.224L143.283 190.748C137.433 184.513 134.177 176.286 134.177 167.736V89.15C134.177 79.504 138.32 70.321 145.552 63.939L205.517 11.015C211.661 5.593 219.573 2.601 227.768 2.601H296.672C304.867 2.601 312.779 5.593 318.923 11.015L378.888 63.939C386.12 70.321 390.263 79.504 390.263 89.15V167.754C390.263 176.292 387.015 184.511 381.177 190.743L316.088 260.224H309.363V213.147L340.947 178.793C346.653 172.587 349.819 164.465 349.819 156.034V101.048C349.819 91.403 345.678 82.223 338.447 75.84L305.447 46.707C299.303 41.283 291.389 38.29 283.193 38.29H241.245C233.05 38.29 225.137 41.282 218.994 46.704L185.983 75.839C178.75 82.223 174.608 91.404 174.608 101.051V156C174.608 164.451 177.789 172.592 183.521 178.803L215.209 213.147V226.597V260.224H208.484z" /> + + + + diff --git a/css/icons/ptroiconfont.ttf b/css/icons/ptroiconfont.ttf index e2a27e3..adfae89 100644 Binary files a/css/icons/ptroiconfont.ttf and b/css/icons/ptroiconfont.ttf differ diff --git a/css/icons/ptroiconfont.woff b/css/icons/ptroiconfont.woff index 0d5dd6b..8e6910f 100644 Binary files a/css/icons/ptroiconfont.woff and b/css/icons/ptroiconfont.woff differ diff --git a/css/styles.css b/css/styles.css index 9d20a65..427e4d4 100644 --- a/css/styles.css +++ b/css/styles.css @@ -439,13 +439,13 @@ select.ptro-input { .ptro-text-tool-input { background-color: rgba(0,0,0,0); - outline: 1px dotted; width: auto; + outline: 1px dotted; display: block; min-width: 5px; padding: 0 1px; overflow-x: hidden; - word-wrap: normal; + word-wrap: break-word; overflow-y: hidden; box-sizing: content-box; line-height: normal; @@ -473,9 +473,8 @@ select.ptro-input { } .ptro-text-tool-buttons { display: flex; - position: fixed; + position: absolute; } - .ptro-text-tool-input-wrapper { position: absolute; } @@ -523,6 +522,7 @@ input.ptro-pixel-size-input { line-height: 22px; padding: 0 0 0 4px; height: 22px; + width: 80px; } .ptro-selector-btn i { diff --git a/example/templates/common.html b/example/templates/common.html index 5ad57d2..4e6e1aa 100644 --- a/example/templates/common.html +++ b/example/templates/common.html @@ -4,5 +4,5 @@
- +
diff --git a/generate_font.js b/generate_font.js index 57bc4c7..063ca56 100644 --- a/generate_font.js +++ b/generate_font.js @@ -1,4 +1,4 @@ -const webfontsGenerator = require('vusion-webfonts-generator'); +const webfontsGenerator = require('@vusion/webfonts-generator'); const fs = require('fs'); fs.readdir('res/font', function(err, items) { @@ -13,15 +13,17 @@ fs.readdir('res/font', function(err, items) { dest: 'css/icons', fontName: 'ptroiconfont', + html: true, // https://github.com/nfroidure/svgicons2svgfont normalize: true, + round: 10e2, cssTemplate: 'res/font/font-css.hbs', templateOptions: { classPrefix: 'ptro-icon-', baseSelector: '.ptro-icon' }, - types: ['svg', 'ttf', 'woff', 'eot'] + types: ['ttf', 'woff'] }, function (error) { if (error) { console.log('Fail!', error); diff --git a/js/colorPicker.js b/js/colorPicker.js index 2ecb899..6aea284 100644 --- a/js/colorPicker.js +++ b/js/colorPicker.js @@ -293,11 +293,11 @@ export default class ColorPicker { '' + '
' + '
' + - '' + '' + - '` + '
' + '' + diff --git a/js/controlbuilder.js b/js/controlbuilder.js index f386a88..c64c851 100644 --- a/js/controlbuilder.js +++ b/js/controlbuilder.js @@ -8,7 +8,7 @@ export default class ControlBuilder { buildFontSizeControl(controlIndex) { const action = () => { const fontSize = - document.getElementById(this.main.activeTool.controls[controlIndex].id).value; + this.main.getElemByIdSafe(this.main.activeTool.controls[controlIndex].id).value; this.main.textTool.setFontSize(fontSize); setParam('defaultFontSize', fontSize); }; @@ -22,7 +22,7 @@ export default class ControlBuilder { buildEraserWidthControl(controlIndex) { const action = () => { - const width = document.getElementById(this.main.activeTool.controls[controlIndex].id).value; + const width = this.main.getElemByIdSafe(this.main.activeTool.controls[controlIndex].id).value; this.main.primitiveTool.setEraserWidth(width); setParam('defaultEraserWidth', width); }; @@ -36,7 +36,7 @@ export default class ControlBuilder { buildLineWidthControl(controlIndex) { const action = () => { - const width = document.getElementById(this.main.activeTool.controls[controlIndex].id).value; + const width = this.main.getElemByIdSafe(this.main.activeTool.controls[controlIndex].id).value; this.main.primitiveTool.setLineWidth(width); setParam('defaultLineWidth', width); }; @@ -45,7 +45,7 @@ export default class ControlBuilder { if (this.main.params.availableLineWidths) { return ControlBuilder.buildDropDownControl('lineWidth', action, getValue, this.main.params.availableLineWidths); } - return ControlBuilder.buildInputControl('lineWidth', action, getValue, 1, 99); + return ControlBuilder.buildInputControl('lineWidth', action, getValue, 0, 99); } buildShadowOnControl(controlIndex) { @@ -55,7 +55,7 @@ export default class ControlBuilder { titleFull: 'shadowOnFull', target: 'shadowOn', action: () => { - const btn = document.getElementById(this.main.activeTool.controls[controlIndex].id); + const btn = this.main.getElemByIdSafe(this.main.activeTool.controls[controlIndex].id); const state = !(btn.getAttribute('data-value') === 'true'); this.main.primitiveTool.setShadowOn(state); btn.setAttribute('data-value', state ? 'true' : 'false'); @@ -65,9 +65,21 @@ export default class ControlBuilder { }; } - buildArrowLengthControl(controlIndex) { + buildPaintBucketControl(controlIndex) { const action = () => { const width = document.getElementById(this.main.activeTool.controls[controlIndex].id).value; + console.log('buildPaintBucketControl width: ' + width); + // this.main.primitiveTool.setLineWidth(width); + setParam('activeFillColor', width); + }; + const getValue = () => this.main.primitiveTool.lineWidth; + + return ControlBuilder.buildInputControl('lineWidth', action, getValue, 1, 99); + } + + buildArrowLengthControl(controlIndex) { + const action = () => { + const width = this.main.getElemByIdSafe(this.main.activeTool.controls[controlIndex].id).value; this.main.primitiveTool.setArrowLength(width); setParam('defaultArrowLength', width); }; diff --git a/js/customEvents.js b/js/customEvents.js new file mode 100644 index 0000000..ffe9031 --- /dev/null +++ b/js/customEvents.js @@ -0,0 +1,28 @@ + +export default class CustomEvents { + constructor(element) { + this.element = element; + } + createEvent(name, detail) { + return new CustomEvent(name, { detail }); + } + dispatchEvent(name, detail) { + this.element.dispatchEvent(this.createEvent(name, detail)); + } + addEventListener(name, callback) { + this.element.addEventListener(name, callback); + } + + removeEventListener(name, callback) { + this.element.removeEventListener(name, callback); + } + + useCustomEvent(name, details) { + this.dispatchEvent(name, details); + } + + + + +} + diff --git a/js/filters.js b/js/filters.js new file mode 100644 index 0000000..f6f48ef --- /dev/null +++ b/js/filters.js @@ -0,0 +1,129 @@ +import { filter } from 'lodash'; +import { tr } from './translation.js'; +import { KEYS } from './utils.js'; + +export default class Filters { + constructor(main) { + this.main = main; + + this.wrapper = main.wrapper.querySelector('.ptro-filters-widget-wrapper'); + this.input = main.wrapper.querySelector('.ptro-filters-widget-wrapper .ptro-filters-input'); + this.applyButton = main.wrapper.querySelector('.ptro-filters-widget-wrapper button.ptro-apply'); + this.closeButton = main.wrapper.querySelector('.ptro-filters-widget-wrapper button.ptro-close'); + this.errorHolder = main.wrapper.querySelector('.ptro-filters-widget-wrapper .ptro-error'); + this.filters = ['grayscale', 'sepia', 'invert', 'brightness', 'contrast', 'saturate', ]; + this.chosenFilter = this.filters[0]; + this.initCtxImageData = null; + this.filterValue = 0; + this.filtersForApply = this.createFiltersForApply() + + } + + createFiltersForApply() { + const filtersForApply = {}; + this.filters.forEach((f) => { + filtersForApply[f] = 0; + }); + return filtersForApply; + } + + createFilterString() { + let filterString = ''; + for (const key in this.filtersForApply) { + if (this.filtersForApply[key] !== 0) { + filterString += `${key}(${this.filtersForApply[key]}%) `; + } + } + return filterString; + } + + getFilters() { + return this.filters.map((f)=>{ + return { + value: f, + name: f, + title: f, + }; + }); + } + setFilter(filter) { + this.chosenFilter = filter; + if (this.filtersForApply.hasOwnProperty(filter)) { + this.filtersForApply[filter] = this.filterValue; + // console.log('filtersForApply', this.filtersForApply) + } + } + + + + setPercents(value) { + this.filterValue = value; + if (this.filtersForApply.hasOwnProperty(this.chosenFilter)) { + this.filtersForApply[this.chosenFilter] = value; + // console.log('filtersForApply', this.filtersForApply) + + } + } + + getFilter() { + const filterName = this.filters[0]; + return filterName + } + + applyFilter() { + const w = this.main.size.w; + const h = this.main.size.h; + const tmpData = this.initCtxImageData; + const tmpCan = this.main.doc.createElement('canvas'); + tmpCan.width = w; + tmpCan.height = h; + tmpCan.getContext('2d').putImageData(tmpData, 0, 0); + this.main.ctx.save(); + this.main.ctx.filter = this.createFilterString(); + this.main.ctx.drawImage(tmpCan, 0, 0); + // this.adjustSizeFull(); + // this.ctx.restore(); + this.main.worklog.captureState(); + // this.main.closeActiveTool(); + } + + saveInitImg() { + this.initCtxImageData = this.main.ctx.getImageData(0, 0, this.main.size.w, this.main.size.h); + this.createFiltersForApply(); + } + + open() { + this.wrapper.removeAttribute('hidden'); + this.opened = true; + } + + close() { + this.wrapper.setAttribute('hidden', ''); + this.opened = false; + } + + startClose() { + this.errorHolder.setAttribute('hidden', ''); + this.main.closeActiveTool(); + } + getValue(){ + return + } + + static html (main){ + return '' + + ''; + } + + } \ No newline at end of file diff --git a/js/inserter.js b/js/inserter.js index 813ac9b..53e3106 100644 --- a/js/inserter.js +++ b/js/inserter.js @@ -1,7 +1,6 @@ import { tr } from './translation'; import { genId, KEYS, imgToDataURL } from './utils'; -let instance = null; export default class Inserter { constructor(main) { this.main = main; @@ -152,9 +151,9 @@ export default class Inserter { this.cancelChoosing(); this.img = null; this.mimetype = null; // mime of pending image - Object.keys(this.pasteOptions).forEach((k) => { + this.getAvailableOptions().forEach((k) => { const o = this.pasteOptions[k]; - this.main.doc.getElementById(o.id).onclick = () => { + this.main.getElemByIdSafe(o.id).onclick = () => { if (this.loading) { this.doLater = o.handle; } else { @@ -187,26 +186,44 @@ export default class Inserter { } } + getAvailableOptions() { + if (this.main.params.how_to_paste_actions) { + // filter out only to selected + return Object.keys(this.activeOption).filter( + actionName => this.main.params.how_to_paste_actions.includes(actionName), + ); + } + return Object.keys(this.activeOption); + } + handleOpen(src, mimetype) { this.startLoading(); const handleIt = (source) => { const img = new Image(); const empty = this.main.worklog.clean; + const replaceAllImmediately = empty && this.main.params.replaceAllOnEmptyBackground; img.onload = () => { - if (empty) { + if (replaceAllImmediately) { this.main.fitImage(img, mimetype); } else { this.loaded(img, mimetype); } this.finishLoading(); }; + img.onerror = () => { + if (typeof this.main.params.onImageFailedOpen === 'function') { + this.main.params.onImageFailedOpen(); + } + }; + // img.crossOrigin = '*'; TODO: try to identify CORS issues earlier? img.src = source; - if (!empty) { - if (Object.keys(this.activeOption).length !== 1) { + if (!replaceAllImmediately) { + const availableOptions = this.getAvailableOptions(); + if (availableOptions.length !== 1) { this.selector.removeAttribute('hidden'); this.waitChoice = true; } else { - this.doLater = this.activeOption[Object.keys(this.activeOption)[0]].handle; + this.doLater = this.activeOption[availableOptions[0]].handle; } } }; @@ -215,6 +232,10 @@ export default class Inserter { imgToDataURL(src, (dataUrl) => { // if CORS will not allow, // better see error in console than have different canvas mode handleIt(dataUrl); + }, () => { + if (typeof this.main.params.onImageFailedOpen === 'function') { + this.main.params.onImageFailedOpen(); + } }); } else { handleIt(src); @@ -234,24 +255,28 @@ export default class Inserter { startLoading() { this.loading = true; - const btn = this.main.doc.getElementById(this.main.toolByName.open.buttonId); - const icon = this.main.doc.querySelector(`#${this.main.toolByName.open.buttonId} > i`); - if (btn) { - btn.setAttribute('disabled', 'true'); - } - if (icon) { - icon.className = 'ptro-icon ptro-icon-loading ptro-spinning'; + if (this.main.toolByName.open.buttonId) { + const btn = this.main.getElemByIdSafe(this.main.toolByName.open.buttonId); + if (btn) { + btn.setAttribute('disabled', 'true'); + } + const icon = this.main.doc.querySelector(`#${this.main.toolByName.open.buttonId} > i`); + if (icon) { + icon.className = 'ptro-icon ptro-icon-loading ptro-spinning'; + } } } finishLoading() { - const btn = this.main.doc.getElementById(this.main.toolByName.open.buttonId); - const icon = this.main.doc.querySelector(`#${this.main.toolByName.open.buttonId} > i`); - if (btn) { - btn.removeAttribute('disabled'); - } - if (icon) { - icon.className = 'ptro-icon ptro-icon-open'; + if (this.main.toolByName.open.buttonId) { + const btn = this.main.getElemByIdSafe(this.main.toolByName.open.buttonId); + if (btn) { + btn.removeAttribute('disabled'); + } + const icon = this.main.doc.querySelector(`#${this.main.toolByName.open.buttonId} > i`); + if (icon) { + icon.className = 'ptro-icon ptro-icon-open'; + } } if (this.main.params.onImageLoaded) { this.main.params.onImageLoaded(); @@ -259,28 +284,13 @@ export default class Inserter { } static get(main) { - if (instance) { - return instance; + if (main.inserter) { + return main.inserter; } - instance = new Inserter(main); - return instance; + main.inserter = new Inserter(main); + return main.inserter; } - activeOptions(actOpt) { - const po = Object.keys(this.pasteOptions); - po.forEach((i) => { - let b = false; - actOpt.forEach((k) => { - if (i === k) { - b = true; - } - }); - if (b === false) { - delete this.pasteOptions[i]; - } - }); - this.activeOption = this.pasteOptions; - } static controlObjToString(o, btnClassName = '') { const tempObj = o; tempObj.id = genId(); @@ -294,7 +304,7 @@ export default class Inserter { const bcklOptions = this.main.params.backplateImgUrl; let fitControls = ''; let extendControls = ''; - Object.keys(this.pasteOptions).forEach((k) => { + this.getAvailableOptions().forEach((k) => { if (k === 'replace_all' || k === 'paste_over') { fitControls += `
${Inserter.controlObjToString(this.pasteOptions[k], 'ptro-selector-fit')} @@ -309,18 +319,15 @@ export default class Inserter { '
' + `
${fitControls} - ${bcklOptions ? '' : `
-
- ${extendControls} -
-
extend
-
`} + ${bcklOptions || !extendControls ? '' : ` +
+
+ ${extendControls} +
+
${tr('pasteOptions.extend')}
+
`}
`; } } -export function setActivePasteOptions(a) { - return Inserter.get().activeOptions(a); -} - diff --git a/js/main.js b/js/main.js index 7b0da27..e227dde 100644 --- a/js/main.js +++ b/js/main.js @@ -1,4 +1,5 @@ import isMobile from 'ismobilejs'; + import '../css/styles.css'; import '../css/bar-styles.css'; import '../css/icons/ptroiconfont.css'; @@ -6,10 +7,10 @@ import '../css/icons/ptroiconfont.css'; import PainterroSelecter from './selecter'; import WorkLog from './worklog'; import { genId, addDocumentObjectHelpers, KEYS, trim, - getScrollbarWidth, distance } from './utils'; + getScrollbarWidth, distance, logError,setPrimitiveToolValue } from './utils'; import PrimitiveTool from './primitive'; import ColorPicker, { HexToRGB, rgbToHex } from './colorPicker'; -import { setDefaults, setParam, logError } from './params'; +import { setDefaults, setParam } from './params'; import { tr } from './translation'; import ZoomHelper from './zoomHelper'; import TextTool from './text'; @@ -17,43 +18,23 @@ import Resizer from './resizer'; import Inserter from './inserter'; import Settings from './settings'; import ControlBuilder from './controlbuilder'; - -require('es6-promise').polyfill(); -require('string.prototype.repeat'); +import PaintBucket from './paintBucket'; +import Filters from './filters'; +import CustomEvents from './customEvents'; +import { set } from 'lodash'; class PainterroProc { constructor(params) { + const element =document.querySelector(`#${params.id}`) || document.getElementById('app'); + this.customEvents = new CustomEvents(element); addDocumentObjectHelpers(); - this.params = setDefaults(params); - this.controlBuilder = new ControlBuilder(this); - this.colorWidgetState = { - line: { - target: 'line', - palleteColor: this.params.activeColor, - alpha: this.params.activeColorAlpha, - alphaColor: this.params.activeAlphaColor, - }, - fill: { - target: 'fill', - palleteColor: this.params.activeFillColor, - alpha: this.params.activeFillColorAlpha, - alphaColor: this.params.activeFillAlphaColor, - }, - bg: { - target: 'bg', - palleteColor: this.params.backgroundFillColor, - alpha: this.params.backgroundFillColorAlpha, - alphaColor: this.params.backgroundFillAlphaColor, - }, - // stroke: { - // target: 'stroke', - // palleteColor: this.params.textStrokeColor, - // alpha: this.params.textStrokeColorAlpha, - // alphaColor: this.params.textStrokeAlphaColor, - // }, + + this.getElemByIdSafe = (id) => { + if (!id) { + throw new Error(`Can't get element with id=${id}, please create an issue here, we will easily fx it: https://github.com/devforth/painterro/issues/`); + } + return document.getElementById(id); }; - this.currentBackground = this.colorWidgetState.bg.alphaColor; - this.currentBackgroundAlpha = this.colorWidgetState.bg.alpha; this.tools = [{ name: 'select', @@ -89,7 +70,7 @@ class PainterroProc { name: 'line', hotkey: 'l', controls: [ - { + () => ({ type: 'color', title: 'lineColor', target: 'line', @@ -97,9 +78,9 @@ class PainterroProc { action: () => { this.colorPicker.open(this.colorWidgetState.line); }, - }, - this.controlBuilder.buildLineWidthControl(1), - this.controlBuilder.buildShadowOnControl(2), + }), + () => this.controlBuilder.buildLineWidthControl(1), + () => this.controlBuilder.buildShadowOnControl(2), ], activate: () => { if (this.initText) this.wrapper.click(); @@ -111,7 +92,7 @@ class PainterroProc { name: 'arrow', hotkey: 'a', controls: [ - { + () => ({ type: 'color', title: 'lineColor', target: 'line', @@ -119,9 +100,9 @@ class PainterroProc { action: () => { this.colorPicker.open(this.colorWidgetState.line); }, - }, - this.controlBuilder.buildArrowLengthControl(1), - this.controlBuilder.buildShadowOnControl(2), + }), + () => this.controlBuilder.buildArrowLengthControl(1), + () => this.controlBuilder.buildShadowOnControl(2), ], activate: () => { if (this.initText) this.wrapper.click(); @@ -132,7 +113,7 @@ class PainterroProc { }, { name: 'rect', controls: [ - { + () => ({ type: 'color', title: 'lineColor', titleFull: 'lineColorFull', @@ -140,7 +121,8 @@ class PainterroProc { action: () => { this.colorPicker.open(this.colorWidgetState.line); }, - }, { + }), + () => ({ type: 'color', title: 'fillColor', titleFull: 'fillColorFull', @@ -148,9 +130,9 @@ class PainterroProc { action: () => { this.colorPicker.open(this.colorWidgetState.fill); }, - }, - this.controlBuilder.buildLineWidthControl(2), - this.controlBuilder.buildShadowOnControl(3), + }), + () => this.controlBuilder.buildLineWidthControl(2), + () => this.controlBuilder.buildShadowOnControl(3), ], activate: () => { if (this.initText) this.wrapper.click(); @@ -159,9 +141,48 @@ class PainterroProc { }, eventListner: () => this.primitiveTool, }, { + name:'filters', + controls: [ + () => ({ + type: 'dropdown', + title: 'filters', + titleFull: 'imageFilters', + action: () => { + const dropdown = this.activeTool.controls[0].id + const value = this.getElemByIdSafe(dropdown).value; + this.filters.setFilter(value); + }, + getValue: () => this.filters.getFilter(), + getAvailableValues: () => this.filters.getFilters(), + }), + ()=>( + { + type: 'int', + title: 'percents', + titleFull: 'percentsFull', + min: 0, + max: 100, + options: {eventOnChange: true}, + action: () => { + const input = this.getElemByIdSafe(this.activeTool.controls[1].id); + const value = input.value; + this.filters.setPercents(value); + this.filters.applyFilter(); + }, + getValue: () => 1, + } + ) + ], + activate: () => { + if (this.initText) this.wrapper.click(); + this.filters.saveInitImg() + this.toolContainer.style.cursor = 'crosshair'; + } + }, + { name: 'ellipse', controls: [ - { + () => ({ type: 'color', title: 'lineColor', titleFull: 'lineColorFull', @@ -169,7 +190,8 @@ class PainterroProc { action: () => { this.colorPicker.open(this.colorWidgetState.line); }, - }, { + }), + () => ({ type: 'color', title: 'fillColor', titleFull: 'fillColorFull', @@ -177,9 +199,9 @@ class PainterroProc { action: () => { this.colorPicker.open(this.colorWidgetState.fill); }, - }, - this.controlBuilder.buildLineWidthControl(2), - this.controlBuilder.buildShadowOnControl(3), + }), + () => this.controlBuilder.buildLineWidthControl(2), + () => this.controlBuilder.buildShadowOnControl(3), ], activate: () => { if (this.initText) this.wrapper.click(); @@ -190,15 +212,17 @@ class PainterroProc { }, { name: 'brush', hotkey: 'b', - controls: [{ - type: 'color', - title: 'lineColor', - target: 'line', - titleFull: 'lineColorFull', - action: () => { - this.colorPicker.open(this.colorWidgetState.line); - }, - }, this.controlBuilder.buildLineWidthControl(1), + controls: [ + () => ({ + type: 'color', + title: 'lineColor', + target: 'line', + titleFull: 'lineColorFull', + action: () => { + this.colorPicker.open(this.colorWidgetState.line); + }, + }), + () => this.controlBuilder.buildLineWidthControl(1), ], activate: () => { if (this.initText) this.wrapper.click(); @@ -208,7 +232,8 @@ class PainterroProc { eventListner: () => this.primitiveTool, }, { name: 'eraser', - controls: [this.controlBuilder.buildEraserWidthControl(0), + controls: [ + () => this.controlBuilder.buildEraserWidthControl(0), ], activate: () => { if (this.initText) this.wrapper.click(); @@ -220,7 +245,7 @@ class PainterroProc { name: 'text', hotkey: 't', controls: [ - { + () => ({ type: 'color', title: 'textColor', titleFull: 'textColorFull', @@ -230,62 +255,63 @@ class PainterroProc { this.textTool.setFontColor(c.alphaColor); }); }, - }, this.controlBuilder.buildFontSizeControl(1), - { + }), + () =>this.controlBuilder.buildFontSizeControl(1), + () => ({ type: 'dropdown', title: 'fontName', titleFull: 'fontNameFull', target: 'fontName', action: () => { - const dropdown = document.getElementById(this.activeTool.controls[2].id); + const dropdown = this.getElemByIdSafe(this.activeTool.controls[2].id); const font = dropdown.value; this.textTool.setFont(font); }, getValue: () => this.textTool.getFont(), getAvailableValues: () => this.textTool.getFonts(), - }, - { + }), + () => ({ type: 'bool', title: 'fontIsBold', titleFull: 'fontIsBoldFull', target: 'fontIsBold', action: () => { - const btn = document.getElementById(this.activeTool.controls[3].id); + const btn = this.getElemByIdSafe(this.activeTool.controls[3].id); const state = !(btn.getAttribute('data-value') === 'true'); this.textTool.setFontIsBold(state); setParam('defaultFontBold', state); btn.setAttribute('data-value', state ? 'true' : 'false'); // invert }, getValue: () => this.textTool.isBold, - }, - { + }), + () => ({ type: 'bool', title: 'fontIsItalic', titleFull: 'fontIsItalicFull', target: 'fontIsItalic', action: () => { - const btn = document.getElementById(this.activeTool.controls[4].id); + const btn = this.getElemByIdSafe(this.activeTool.controls[4].id); const state = !(btn.getAttribute('data-value') === 'true'); // invert this.textTool.setFontIsItalic(state); setParam('defaultFontItalic', state); btn.setAttribute('data-value', state ? 'true' : 'false'); }, getValue: () => this.textTool.isItalic, - }, - { + }), + () => ({ type: 'bool', title: 'fontStrokeAndShadow', titleFull: 'fontStrokeAndShadowFull', target: 'fontStrokeAndShadow', action: () => { - const btn = document.getElementById(this.activeTool.controls[5].id); + const btn = this.getElemByIdSafe(this.activeTool.controls[5].id); const nextState = !(btn.getAttribute('data-value') === 'true'); this.textTool.setStrokeOn(nextState); setParam('defaultTextStrokeAndShadow', nextState); btn.setAttribute('data-value', nextState ? 'true' : 'false'); }, getValue: () => this.textTool.strokeOn, - }, + }), ], activate: () => { if (this.initText) this.wrapper.click(); @@ -301,7 +327,9 @@ class PainterroProc { name: 'rotate', hotkey: 'r', activate: () => { - if (this.initText) this.wrapper.click(); + if (this.initText) { + this.wrapper.click(); + } const w = this.size.w; const h = this.size.h; const tmpData = this.ctx.getImageData(0, 0, this.size.w, this.size.h); @@ -335,7 +363,6 @@ class PainterroProc { activate: () => { if (this.initText) this.wrapper.click(); this.worklog.undoState(); - this.closeActiveTool(); }, eventListner: () => this.resizer, }, @@ -344,7 +371,6 @@ class PainterroProc { activate: () => { if (this.initText) this.wrapper.click(); this.worklog.redoState(); - this.closeActiveTool(); }, eventListner: () => this.resizer, }, @@ -358,16 +384,95 @@ class PainterroProc { this.settings.close(); }, eventListner: () => this.settings, - }, { + }, + { + name: 'zoomout', + activate: () => { + if (this.initText) this.wrapper.click(); + this.zoomButtonActive = true; + const canvas = this.canvas; + const gbr = canvas.getBoundingClientRect(); + const e = { + wheelDelta: -120, + clientX: gbr.right / 2, + clientY: gbr.bottom / 2, + }; + + this.curCord = [ + (e.clientX - this.elLeft()) + this.scroller.scrollLeft, + (e.clientY - this.elTop()) + this.scroller.scrollTop, + ]; + + const scale = this.getScale(); + this.curCord = [this.curCord[0] * scale, this.curCord[1] * scale]; + + this.zoomImage(e); + }, + }, + { + name: 'zoomin', + activate: () => { + if (this.initText) this.wrapper.click(); + this.zoomButtonActive = true; + const canvas = this.canvas; + const gbr = canvas.getBoundingClientRect(); + const e = { + wheelDelta: 120, + clientX: gbr.right / 2, + clientY: gbr.bottom / 2, + }; + + this.curCord = [ + (e.clientX - this.elLeft()) + this.scroller.scrollLeft, + (e.clientY - this.elTop()) + this.scroller.scrollTop, + ]; + + const scale = this.getScale(); + this.curCord = [this.curCord[0] * scale, this.curCord[1] * scale]; + + this.zoomImage(e); + }, + }, + + { + name: 'bucket', + hotkey: 'f', + controls: [ + () => ({ + type: 'color', + title: 'fillColor', + target: 'fill', + titleFull: 'fillColorFull', + action: () => { + this.colorPicker.open(this.colorWidgetState.fill); + }, + }), + ], + activate: () => { + // this.clear(); + // this.closeActiveTool(); + this.toolContainer.style.cursor = 'crosshair'; + this.primitiveTool.activate('bucket'); + }, + eventListner: () => this.paintBucket, + }, + + { + name: 'clear', + activate: () => { + this.clear(); + this.closeActiveTool(); + }, + }, + + { name: 'save', right: true, - hotkey: this.params.saveByEnter ? 'enter' : false, + hotkey: () => this.params.saveByEnter ? 'enter' : false, activate: () => { if (this.initText) this.wrapper.click(); this.save(); this.closeActiveTool(); - this.close(); - this.hide(); }, }, { name: 'open', @@ -375,8 +480,7 @@ class PainterroProc { activate: () => { if (this.initText) this.wrapper.click(); this.closeActiveTool(); - const input = document.getElementById('ptro-file-input'); - input.click(); + const input = this.getElemByIdSafe(this.fileInputId); input.onchange = (event) => { const files = event.target.files || event.dataTransfer.files; if (!files.length) { @@ -385,10 +489,11 @@ class PainterroProc { this.openFile(files[0]); input.value = ''; // to allow reopen }; + input.click(); }, }, { name: 'close', - hotkey: this.params.hideByEsc ? 'esc' : false, + hotkey: () => this.params.hideByEsc ? 'esc' : false, right: true, activate: () => { if (this.initText) this.wrapper.click(); @@ -404,13 +509,55 @@ class PainterroProc { doClose(); } }, - }]; + },...params.customTools?.map((ct)=>{return {name:ct.name,activate:ct.callBack,iconUrl:ct.iconUrl}}) || []]; + + this.params = setDefaults(params, this.tools.map(t => t.name)); + + this.colorWidgetState = { + line: { + target: 'line', + palleteColor: this.params.activeColor, + alpha: this.params.activeColorAlpha, + alphaColor: this.params.activeAlphaColor, + }, + fill: { + target: 'fill', + palleteColor: this.params.activeFillColor, + alpha: this.params.activeFillColorAlpha, + alphaColor: this.params.activeFillAlphaColor, + }, + bg: { + target: 'bg', + palleteColor: this.params.backgroundFillColor, + alpha: this.params.backgroundFillColorAlpha, + alphaColor: this.params.backgroundFillAlphaColor, + }, + // stroke: { + // target: 'stroke', + // palleteColor: this.params.textStrokeColor, + // alpha: this.params.textStrokeColorAlpha, + // alphaColor: this.params.textStrokeAlphaColor, + // }, + }; + this.currentBackground = this.colorWidgetState.bg.alphaColor; + this.currentBackgroundAlpha = this.colorWidgetState.bg.alpha; + + + this.controlBuilder = new ControlBuilder(this); + this.isMobile = isMobile.any; this.toolByName = {}; this.toolByKeyCode = {}; this.tools.forEach((t) => { + if (t.controls) { + t.controls = t.controls.map(t => t()); + } this.toolByName[t.name] = t; - if (t.hotkey) { + if (t.hotkey instanceof Function) { + t.hotkey = t.hotkey(); + } + + if (t.hotkey && !this.params.hiddenTools.includes(t.name)) { if (!KEYS[t.hotkey]) { throw new Error(`Key code for ${t.hotkey} not defined in KEYS`); } @@ -431,18 +578,22 @@ class PainterroProc { this.holderEl.className = 'ptro-holder-wrapper'; document.body.appendChild(this.holderEl); this.holderEl.innerHTML = `
`; - this.baseEl = document.getElementById(this.id); + this.baseEl = this.getElemByIdSafe(this.id); } else { - this.baseEl = document.getElementById(this.id); + this.baseEl = this.getElemByIdSafe(this.id); this.holderEl = null; } let bar = ''; let rightBar = ''; - this.tools.filter(t => this.params.hiddenTools.indexOf(t.name) === -1).forEach((b) => { + this.tools.filter(t => !this.params.hiddenTools.includes(t.name)).forEach((b) => { const id = genId(); b.buttonId = id; const hotkey = b.hotkey ? ` [${b.hotkey.toUpperCase()}]` : ''; - const btn = `` + : ``; if (b.right) { @@ -475,18 +626,20 @@ class PainterroProc { ZoomHelper.html() + Resizer.html() + Settings.html(this) + + Filters.html(this) + this.inserter.html()}`; this.baseEl.appendChild(this.wrapper); this.scroller = this.doc.querySelector(`#${this.id}-wrapper .ptro-scroller`); this.bar = this.doc.createElement('div'); this.bar.id = `${this.id}-bar`; this.bar.className = 'ptro-bar ptro-color-main'; + this.fileInputId = genId(); this.bar.innerHTML = `
${bar}` + '' + '' + `${rightBar}` + - '
'; + ``; if (this.isMobile) { this.bar.style['overflow-x'] = 'auto'; } @@ -501,9 +654,8 @@ class PainterroProc { // this.iframe = this.baseEl.getElementsByTagName('iframe')[0]; // this.doc = this.iframe.contentDocument || this.iframe.contentWindow.document; // this.doc.body.innerHTML = html; - - this.saveBtn = this.doc.getElementById(this.toolByName.save.buttonId); - if (this.saveBtn) { + this.saveBtn = this.baseEl.querySelector(`#${this.toolByName.save.buttonId}`); + if (this.toolByName.save.buttonId && this.saveBtn) { this.saveBtn.setAttribute('disabled', 'true'); } this.body = this.doc.body; @@ -514,6 +666,7 @@ class PainterroProc { this.toolContainer = this.doc.querySelector(`#${this.id}-wrapper .ptro-crp-el`); this.substrate = this.doc.querySelector(`#${this.id}-wrapper .ptro-substrate`); this.zoomHelper = new ZoomHelper(this); + this.zoomButtonActive = false; this.select = new PainterroSelecter(this, (notEmpty) => { [this.toolByName.crop, this.toolByName.pixelize].forEach((c) => { this.setToolEnabled(c, notEmpty); @@ -558,7 +711,9 @@ class PainterroProc { } }); this.inserter.init(this); + this.paintBucket = new PaintBucket(this); this.textTool = new TextTool(this); + this.filters = new Filters(this); this.colorPicker = new ColorPicker(this, (widgetState) => { this.colorWidgetState[widgetState.target] = widgetState; this.doc.querySelector( @@ -583,7 +738,7 @@ class PainterroProc { } }); - this.defaultTool = this.toolByName[this.params.defaultTool] || this.toolByName.select; + this.defaultTool = this.toolByName[this.params.defaultTool]; this.tools.filter(t => this.params.hiddenTools.indexOf(t.name) === -1).forEach((b) => { this.getBtnEl(b).onclick = () => { @@ -594,6 +749,8 @@ class PainterroProc { this.closeActiveTool(true); if (currentActive !== b) { this.setActiveTool(b); + this.customEvents.dispatchEvent('changeActiveTool', b); + } else { this.setActiveTool(this.defaultTool); } @@ -641,6 +798,15 @@ class PainterroProc { }); }, getOriginalMimeType: () => this.loadedImageType, + hasAlphaChannel: () => { + const data = this.ctx.getImageData(0, 0, this.canvas.width, this.canvas.height).data; + for (let i = 3, n = data.length; i < n; i += 4) { + if (data[i] < 255) { + return true; + } + } + return false; + }, suggestedFileName: (type) => { let realType = type; if (realType === undefined) { @@ -658,8 +824,8 @@ class PainterroProc { } setToolEnabled(tool, state) { - const btn = this.doc.getElementById(tool.buttonId); - if (btn) { + if (tool.buttonId) { + const btn = this.getElemByIdSafe(tool.buttonId); if (state) { btn.removeAttribute('disabled'); } else { @@ -676,7 +842,7 @@ class PainterroProc { } getBtnEl(tool) { - return this.doc.getElementById(tool.buttonId); + return this.getElemByIdSafe(tool.buttonId); } save() { @@ -684,12 +850,13 @@ class PainterroProc { return this; } this.saving = true; - const btn = this.doc.getElementById(this.toolByName.save.buttonId); - const icon = this.doc.querySelector(`#${this.toolByName.save.buttonId} > i`); - if (btn) { + const btn = this.baseEl.querySelector(`#${this.toolByName.save.buttonId}`); + const icon = this.baseEl.querySelector(`#${this.toolByName.save.buttonId} > i`); + if (this.toolByName.save.buttonId && btn) { btn.setAttribute('disabled', 'true'); - this.hasUnsaved = false; } + this.hasUnsaved = false; + if (icon) { icon.className = 'ptro-icon ptro-icon-loading ptro-spinning'; } @@ -739,12 +906,16 @@ class PainterroProc { } handleToolEvent(eventHandler, event) { + if (this.select.imagePlaced || this.select.area.activated) { + return this.select[eventHandler](event); + } if (this.activeTool && this.activeTool.eventListner) { const listner = this.activeTool.eventListner(); if (listner[eventHandler]) { return listner[eventHandler](event); } } + return false; } @@ -776,7 +947,42 @@ class PainterroProc { } return handled; } + zoomImage({ wheelDelta, clientX, clientY }, forceWheenDelta, forceZoomForce) { + let whD = wheelDelta; + if (forceWheenDelta !== undefined) { + whD = forceWheenDelta; + } + let minFactor = 1; + if (this.size.w > this.wrapper.documentClientWidth) { + minFactor = Math.min(minFactor, this.wrapper.documentClientWidth / this.size.w); + } + if (this.size.h > this.wrapper.documentClientHeight) { + minFactor = Math.min(minFactor, this.wrapper.documentClientHeight / this.size.h); + } + if (!this.zoom && this.zoomFactor > minFactor) { + this.zoomFactor = minFactor; + } + let zoomForce = 0.2; + if (forceZoomForce !== undefined) { + zoomForce = forceZoomForce; + } + this.zoomFactor += Math.sign(whD) * zoomForce; + if (this.zoomFactor < minFactor) { + this.zoom = false; + this.zoomFactor = minFactor; + } else { + this.zoom = true; + } + this.adjustSizeFull(); + this.select.adjustPosition(); + if (this.zoom) { + this.scroller.scrollLeft = (this.curCord[0] / this.getScale()) - + (clientX - this.wrapper.documentOffsetLeft); + this.scroller.scrollTop = (this.curCord[1] / this.getScale()) - + (clientY - this.wrapper.documentOffsetTop); + } + } initEventHandlers() { this.documentHandlers = { mousedown: (e) => { @@ -799,11 +1005,11 @@ class PainterroProc { this.documentHandlers.mousedown(e); } else if (e.touches.length === 2) { const fingersDist = distance({ - x: e.changedTouches[0].clientX, - y: e.changedTouches[0].clientY, + x: e.touches[0].clientX, + y: e.touches[0].clientY, }, { - x: e.changedTouches[1].clientX, - y: e.changedTouches[1].clientY, + x: e.touches[1].clientX, + y: e.touches[1].clientY, }); this.lastFingerDist = fingersDist; } @@ -815,33 +1021,38 @@ class PainterroProc { }, touchmove: (e) => { if (e.touches.length === 1) { - e.clientX = e.changedTouches[0].clientX; - e.clientY = e.changedTouches[0].clientY; + e.clientX = e.touches[0].clientX; + e.clientY = e.touches[0].clientY; this.documentHandlers.mousemove(e); } else if (e.touches.length === 2) { const fingersDist = distance({ - x: e.changedTouches[0].clientX, - y: e.changedTouches[0].clientY, + x: e.touches[0].clientX, + y: e.touches[0].clientY, }, { - x: e.changedTouches[1].clientX, - y: e.changedTouches[1].clientY, + x: e.touches[1].clientX, + y: e.touches[1].clientY, }); - if (fingersDist > this.lastFingerDist) { - e.wheelDelta = 1; - e.ctrlKey = true; - this.documentHandlers.mousewheel(e); - } else if (fingersDist > this.lastFingerDist) { - e.wheelDelta = -1; - e.ctrlKey = true; - this.documentHandlers.mousewheel(e); - } + const center = { + x: (e.touches[0].clientX + e.touches[1].clientX) / 2, + y: (e.touches[0].clientY + e.touches[1].clientY) / 2, + }; + + e.clientX = center.x; + e.clientY = center.y; + + const fingerDistDiff = Math.abs(fingersDist - this.lastFingerDist); + const zoomForce = (fingersDist > this.lastFingerDist ? 1 : -1); + + this.documentHandlers.wheel(e, zoomForce, true, fingerDistDiff * 0.001); + this.lastFingerDist = fingersDist; e.stopPropagation(); - e.preventDefault(); + if (!this.zoomButtonActive) e.preventDefault(); } }, mousemove: (e) => { + const isEvenFromPtro = e.target.classList[0] === 'ptro-crp-el' || e.target.classList[0] === 'ptro-bar'; if (this.shown) { this.handleToolEvent('handleMouseMove', e); this.colorPicker.handleMouseMove(e); @@ -852,9 +1063,11 @@ class PainterroProc { ]; const scale = this.getScale(); this.curCord = [this.curCord[0] * scale, this.curCord[1] * scale]; - if (e.target.tagName.toLowerCase() !== 'input' && e.target.tagName.toLowerCase() !== 'button' - && e.target.tagName.toLowerCase() !== 'i' && e.target.tagName.toLowerCase() !== 'select') { - e.preventDefault(); + if (typeof e.target.tagName !== "undefined" && e.target.tagName.toLowerCase() !== 'input' + && e.target.tagName.toLowerCase() !== 'button' && e.target.tagName.toLowerCase() !== 'i' + && e.target.tagName.toLowerCase() !== 'select') { + // prevent default only if we are in paintero area + if (!this.zoomButtonActive && isEvenFromPtro) e.preventDefault(); } } }, @@ -864,42 +1077,20 @@ class PainterroProc { this.colorPicker.handleMouseUp(e); } }, - mousewheel: (e) => { - if (this.shown) { - if (e.ctrlKey) { - // console.log(e.wheelDelta); - let minFactor = 1; - if (this.size.w > this.wrapper.documentClientWidth) { - minFactor = Math.min(minFactor, this.wrapper.documentClientWidth / this.size.w); - } - if (this.size.h > this.wrapper.documentClientHeight) { - minFactor = Math.min(minFactor, this.wrapper.documentClientHeight / this.size.h); - } - if (!this.zoom && this.zoomFactor > minFactor) { - this.zoomFactor = minFactor; - } - this.zoomFactor += Math.sign(e.wheelDelta) * 0.2; - if (this.zoomFactor < minFactor) { - this.zoom = false; - this.zoomFactor = minFactor; - } else { - this.zoom = true; - } - this.adjustSizeFull(); - this.select.adjustPosition(); - if (this.zoom) { - this.scroller.scrollLeft = (this.curCord[0] / this.getScale()) - - (e.clientX - this.wrapper.documentOffsetLeft); - this.scroller.scrollTop = (this.curCord[1] / this.getScale()) - - (e.clientY - this.wrapper.documentOffsetTop); - } + wheel: (e, forceWheenDelta, forceCtrlKey, zoomForce) => { + if (this.shown && !this.params.disableWheelZoom) { + if (forceCtrlKey !== undefined ? forceCtrlKey : e.ctrlKey) { + this.zoomImage(e, forceWheenDelta, zoomForce); e.preventDefault(); } } }, keydown: (e) => { - if (event.target !== document.body) { - return; // ignore all focused inputs on page + const argetEl = event.target; + const ignoreForSelectors = ['input', 'textarea', 'div[contenteditable]']; + + if (ignoreForSelectors.some(selector => argetEl.matches(selector))) { + return; // ignore all elemetents which could be focused } if (this.shown) { if (this.colorPicker.handleKeyDown(e)) { @@ -1039,7 +1230,8 @@ class PainterroProc { this.loadedImageType = mimetype; this.resize(img.naturalWidth, img.naturalHeight); this.ctx.drawImage(img, 0, 0); - this.zoomFactor = (this.wrapper.documentClientHeight / this.size.h) - 0.2; + const minValue = Math.min(this.wrapper.documentClientHeight / this.size.h, this.wrapper.documentClientWidth / this.size.w); + this.zoomFactor = minValue; this.adjustSizeFull(); this.worklog.captureState(); } @@ -1089,12 +1281,78 @@ class PainterroProc { return this; } + setZoom(zoomPercentage) { + if (!this.size) { + return; + } + + this.zoomFactor = zoomPercentage / 100; + + let minFactor = 1; + if (this.size.w > this.wrapper.documentClientWidth) { + minFactor = Math.min(minFactor, this.wrapper.documentClientWidth / this.size.w); + } + if (this.size.h > this.wrapper.documentClientHeight) { + minFactor = Math.min(minFactor, this.wrapper.documentClientHeight / this.size.h); + } + + if (!this.zoom && this.zoomFactor > minFactor) { + this.zoomFactor = minFactor; + } + + if (this.zoomFactor < minFactor) { + this.zoom = false; + this.zoomFactor = minFactor; + } else { + this.zoom = true; + } + + this.adjustSizeFull(); + this.select.adjustPosition(); + + const canvas = this.canvas; + const gbr = canvas.getBoundingClientRect(); + + this.curCord = [ + (gbr.right / 2 - this.elLeft()) + this.scroller.scrollLeft, + (gbr.bottom / 2 - this.elTop()) + this.scroller.scrollTop, + ]; + + const scale = this.getScale(); + this.curCord = [this.curCord[0] * scale, this.curCord[1] * scale]; + + if (this.zoom) { + this.scroller.scrollLeft = (this.curCord[0] / this.getScale()) - + (gbr.right / 2 - this.wrapper.documentOffsetLeft); + this.scroller.scrollTop = (this.curCord[1] / this.getScale()) - + (gbr.bottom / 2 - this.wrapper.documentOffsetTop); + } + } + + doScale({width, height, scale}) { + if (scale) { + if (width || height) { + throw new Error(`You can't pass width or height and scale at the same time`) + } + this.resizer.newW = Math.round(this.size.w * scale); + this.resizer.newH = Math.round(this.size.h * scale); + + } else { + if (scale) { + throw new Error(`You can't pass width or height and scale at the same time`) + } + this.resizer.newW = width || Math.round(this.size.w * (height / this.size.h)); + this.resizer.newH = height || Math.round(this.size.h * (width / this.size.w)); + } + this.resizer.scaleButton.onclick(); + } + openFile(f) { if (!f) { return; } this.loadedName = trim((f.name || '').replace(/\..+$/, '')); - const dataUrl = URL.createObjectURL(f); + const dataUrl = (window.URL ? window.URL : window.webkitURL).createObjectURL(f); this.loadImage(dataUrl, f.type); } @@ -1104,34 +1362,39 @@ class PainterroProc { adjustSizeFull() { const ratio = this.wrapper.documentClientWidth / this.wrapper.documentClientHeight; - if (this.zoom === false) { - if (this.size.w > this.wrapper.documentClientWidth || - this.size.h > this.wrapper.documentClientHeight) { - const newRelation = ratio < this.size.ratio; - this.ratioRelation = newRelation; - if (newRelation) { - this.canvas.style.width = `${this.wrapper.clientWidth}px`; - this.canvas.style.height = 'auto'; + + if (this.zoom === false && this.textTool.active === false) { + if (this.size.w > this.wrapper.documentClientWidth || + this.size.h > this.wrapper.documentClientHeight) { + const newRelation = ratio < this.size.ratio; + this.ratioRelation = newRelation; + if (newRelation) { + this.canvas.style.width = `${this.wrapper.clientWidth}px`; + this.canvas.style.height = 'auto'; + } else { + this.canvas.style.width = 'auto'; + this.canvas.style.height = `${this.wrapper.clientHeight}px`; + } + } else { - this.canvas.style.width = 'auto'; - this.canvas.style.height = `${this.wrapper.clientHeight}px`; + this.canvas.style.width = 'auto'; + this.canvas.style.height = 'auto'; + this.ratioRelation = 0; } this.scroller.style.overflow = 'hidden'; - } else { - this.scroller.style.overflow = 'hidden'; - this.canvas.style.width = 'auto'; - this.canvas.style.height = 'auto'; - this.ratioRelation = 0; - } } else { - this.scroller.style.overflow = 'scroll'; - this.canvas.style.width = `${this.size.w * this.zoomFactor}px`; - this.canvas.style.height = `${this.size.h * this.zoomFactor}px`; - this.ratioRelation = 0; + if (this.zoom === false) { + this.scroller.style.overflow = 'hidden'; + } else { + this.scroller.style.overflow = 'scroll'; + } + this.canvas.style.width = `${this.size.w * this.zoomFactor}px`; + this.canvas.style.height = `${this.size.h * this.zoomFactor}px`; + this.ratioRelation = 0; } this.syncToolElement(); this.select.draw(); - } +} resize(x, y) { this.info.innerHTML = `${x}x${y}
${(this.originalMime || 'png').replace('image/', '')}`; @@ -1209,8 +1472,46 @@ class PainterroProc { this.ctx.fill(); } + setColor(options){ + this.doc.querySelector( + `#${this.id} .ptro-color-btn[data-id='${options[0]}']`).style['background-color'] = + options[1].alphaColor; + this.colorWidgetState = {...this.colorWidgetState, line: { + target: options[0], + palleteColor: options[1].palleteColor, + alpha:options[1].alpha, + alphaColor: options[1].alphaColor, + }, } + + } + + + + setLineWidth(width) { + setPrimitiveToolValue(width,this.primitiveTool,'setLineWidth','lineWidth'); + } + + setArrowLength(length) { + setPrimitiveToolValue(length,this.primitiveTool,'setArrowLength','arrowLength'); + } + + setEraserWidth(width) { + setPrimitiveToolValue(width,this.primitiveTool,'setEraserWidth','eraserWidth'); + } + + setPixelSize(size) { + setPrimitiveToolValue(size,this.primitiveTool,'setPixelSize','pixelSize'); + } + + setShadowOn(state) { + setPrimitiveToolValue(state,this.primitiveTool,'setShadowOn','shadowOn'); + } + + setActiveTool(b) { this.activeTool = b; + + this.zoomButtonActive = false; const btnEl = this.getBtnEl(this.activeTool); if (btnEl) { btnEl.className += ' ptro-color-active-control'; @@ -1249,20 +1550,24 @@ class PainterroProc { this.toolControls.innerHTML = ctrls; (b.controls || []).forEach((ctl) => { if (ctl.type === 'int') { - this.doc.getElementById(ctl.id).value = ctl.getValue(); - this.doc.getElementById(ctl.id).oninput = ctl.action; + this.getElemByIdSafe(ctl.id).value = ctl.getValue(); + if (ctl.options && ctl.options.eventOnChange){ + this.getElemByIdSafe(ctl.id).onchange = ctl.action; + } else { + this.getElemByIdSafe(ctl.id).oninput = ctl.action; + } } else if (ctl.type === 'bool') { - this.doc.getElementById(ctl.id).setAttribute('data-value', ctl.getValue() ? 'true' : 'false'); - this.doc.getElementById(ctl.id).onclick = ctl.action; + this.getElemByIdSafe(ctl.id).setAttribute('data-value', ctl.getValue() ? 'true' : 'false'); + this.getElemByIdSafe(ctl.id).onclick = ctl.action; } else if (ctl.type === 'dropdown') { - this.doc.getElementById(ctl.id).onchange = ctl.action; - this.doc.getElementById(ctl.id).value = ctl.getValue(); + this.getElemByIdSafe(ctl.id).onchange = ctl.action; + this.getElemByIdSafe(ctl.id).value = ctl.getValue(); } else { - this.doc.getElementById(ctl.id).onclick = ctl.action; + this.getElemByIdSafe(ctl.id).onclick = ctl.action; } }); b.activate(); } } -module.exports = params => new PainterroProc(params); +export default params => new PainterroProc(params); diff --git a/js/paintBucket.js b/js/paintBucket.js new file mode 100644 index 0000000..e671a37 --- /dev/null +++ b/js/paintBucket.js @@ -0,0 +1,187 @@ +import ColorPicker, { HexToRGB, rgbToHex } from './colorPicker'; + +export default class PaintBucket { + constructor(main) { + this.main = main; + this.canvasWidth = 600; + this.canvasHeight = 420; + this.el = this.main.toolContainer; + this.input = this.el.querySelector('.ptro-text-tool-input'); + } + + init() { + this.ctx = this.main.ctx; + this.canvas = this.main.canvas; + this.colorLayerData = this.ctx.getImageData(0, 0, this.canvasWidth, this.canvasHeight); + this.drawingAreaX = 0; + this.drawingAreaY = 0; + this.canvasWidth = this.canvas.width + this.canvasHeight = this.canvas.height + this.drawingAreaWidth = this.canvasWidth; + this.drawingAreaHeight = this.canvasHeight; + } + + handleMouseDown(event) { + const mainClass = event.target.classList[0]; + const scale = this.main.getScale(); + if (mainClass === 'ptro-crp-el') { + this.init(); + this.colorLayerData = this.ctx.getImageData(0, 0, this.canvasWidth, this.canvasHeight); + + if (!this.active) { + this.input.innerHTML = '
'; + this.pendingClear = true; + } + + this.active = true; + const cord = [ + (event.clientX - this.main.elLeft()) + this.main.scroller.scrollLeft, + (event.clientY - this.main.elTop()) + this.main.scroller.scrollTop, + ]; + const cur = { + x: cord[0] * scale, + y: cord[1] * scale, + }; + this.paintAt(cur.x, cur.y); + } + } + + paintAt(startX, startY) { + startX = Math.round(startX); + startY = Math.round(startY - 1); + startX = (startX > 0) ? startX : 0; + startY = (startY > 0) ? startY : 0; + + // get clicked on color + this.getClickedOnColor(startX, startY); + + var pixelPos = (startY * this.canvasWidth + startX) * 4; + var pixelColor = this.getPixelColor(this.colorLayerData, pixelPos); + var r = pixelColor.r; + var g = pixelColor.g; + var b = pixelColor.b; + var a = pixelColor.a; + + const curColor = HexToRGB( this.main.colorWidgetState.fill.palleteColor ); + this.color = this.main.colorWidgetState.fill.palleteColor; + + if (r === curColor.r && g === curColor.g && b === curColor.b) { + // Return because trying to fill with the same color + return; + } + + this.floodFill(startX, startY, r, g, b); + this.ctx.putImageData(this.colorLayerData, 0, 0); + this.main.worklog.captureState(); + } + + // returns true if the current pixel's color matches the clicked on color. + matchStartColor(pixelPos) { + var pixelColor = this.getPixelColor(this.colorLayerData, pixelPos); + var v = this.matchClickedColor(pixelColor.r, pixelColor.g, pixelColor.b, pixelColor.a); + return v; + } + + matchClickedColor(r, g, b, a) { + const limit = this.main.params.bucketSensivity; + var matchedR = (Math.abs(r - this.clickedOnColor.r) < limit); + var matchedG = (Math.abs(g - this.clickedOnColor.g) < limit); + var matchedB = (Math.abs(b - this.clickedOnColor.b) < limit); + var matchedA = (Math.abs(a - this.clickedOnColor.a) < limit); + var v = (matchedR && matchedG && matchedB && matchedA); + return v; + } + + getClickedOnColor(x, y) { + var pixelPos = (y * this.canvasWidth + x) * 4; + var pixelColor = this.getPixelColor(this.colorLayerData, pixelPos); + this.clickedOnColor = {r: pixelColor.r, g: pixelColor.g, b: pixelColor.b, a: pixelColor.a}; + } + + floodFill(startX, startY, startR, startG, startB) { + // console.log('flood: ' + startX + ' ' + startY + ' ' + startR + ' ' + startG + ' ' + startB); + + var newPos, + x, + y, + pixelPos, + reachLeft, + reachRight, + drawingBoundLeft = this.drawingAreaX, + drawingBoundTop = this.drawingAreaY, + drawingBoundRight = this.drawingAreaX + this.drawingAreaWidth - 1, + drawingBoundBottom = this.drawingAreaY + this.drawingAreaHeight - 1, + pixelStack = [[startX, startY]]; + + while (pixelStack.length) { + + newPos = pixelStack.pop(); + x = newPos[0]; + y = newPos[1]; + + // Get current pixel position + pixelPos = (y * this.canvasWidth + x) * 4; + const curColor = HexToRGB(this.color); + + + // Go up as long as the color matches and are inside the canvas + while (y >= drawingBoundTop && this.matchStartColor(pixelPos)) { + y -= 1; + pixelPos -= this.canvasWidth * 4; + } + + pixelPos += this.canvasWidth * 4; + y += 1; + reachLeft = false; + reachRight = false; + + // Go down as long as the color matches and in inside the canvas + while (y <= drawingBoundBottom && this.matchStartColor(pixelPos)) { + y += 1; + + this.colorPixel(pixelPos, curColor.r, curColor.g, curColor.b); + + if (x > drawingBoundLeft) { + if (this.matchStartColor(pixelPos - 4)) { + if (!reachLeft) { + // Add pixel to stack + pixelStack.push([x - 1, y]); + reachLeft = true; + } + } else if (reachLeft) { + reachLeft = false; + } + } + + if (x < drawingBoundRight) { + if (this.matchStartColor(pixelPos + 4)) { + if (!reachRight) { + // Add pixel to stack + pixelStack.push([x + 1, y]); + reachRight = true; + } + } else if (reachRight) { + reachRight = false; + } + } + + pixelPos += this.canvasWidth * 4; + } + } + } + + colorPixel(pixelPos, r, g, b, a) { + this.colorLayerData.data[pixelPos] = r; + this.colorLayerData.data[pixelPos + 1] = g; + this.colorLayerData.data[pixelPos + 2] = b; + this.colorLayerData.data[pixelPos + 3] = a !== undefined ? a : 255; + } + + getPixelColor(ctx, pixelPos) { + var r = ctx.data[pixelPos]; + var g = ctx.data[pixelPos + 1]; + var b = ctx.data[pixelPos + 2]; + var a = ctx.data[pixelPos + 3]; + return {r: r, g: g, b: b, a: a}; + } +} diff --git a/js/params.js b/js/params.js index 40066d1..3186fb5 100644 --- a/js/params.js +++ b/js/params.js @@ -1,7 +1,7 @@ +/* eslint-disable */ import { HexToRGBA } from './colorPicker'; import { trim, logError } from './utils'; import Translation, { activate } from './translation'; -import { setActivePasteOptions } from './inserter'; const STORAGE_KEY = 'painterro-data'; @@ -11,7 +11,7 @@ function loadSettings() { try { settings = JSON.parse(localStorage.getItem(STORAGE_KEY)); } catch (e) { - console.warn(`Unable get from localstorage: ${e}`); + console.warn(`Unable get from localStorage: ${e}`); } if (!settings) { settings = {}; @@ -36,15 +36,16 @@ function firstDefined(...vals) { return undefined; } -export function setDefaults(parameters) { + + +export function setDefaults(parameters, allToolsNames) { loadSettings(); const params = parameters || {}; if (params.language) { activate(params.language); } - if (params.how_to_paste_actions) { - setActivePasteOptions(params.how_to_paste_actions); - } + params.NON_SELECTABLE_TOOLS = ['pixelize', 'crop', 'rotate']; + params.activeColor = settings.activeColor || params.activeColor || '#ff0000'; params.activeColorAlpha = firstDefined(settings.activeColorAlpha, params.activeColorAlpha, 1.0); params.activeAlphaColor = HexToRGBA(params.activeColor, params.activeColorAlpha); @@ -53,6 +54,7 @@ export function setDefaults(parameters) { params.activeFillColorAlpha = firstDefined(settings.activeFillColorAlpha, params.activeFillColorAlpha, 0.0); params.activeFillAlphaColor = HexToRGBA(params.activeFillColor, params.activeFillColorAlpha); + params.replace_all_on_empty_background = params.initText = params.initText || null; params.initTextColor = params.initTextColor || '#808080'; @@ -68,7 +70,8 @@ export function setDefaults(parameters) { params.defaultFontBold = firstDefined(settings.defaultFontBold, params.defaultFontBold, false); params.defaultFontItalic = firstDefined(settings.defaultFontItalic, params.defaultFontItalic, false); - + + params.replaceAllOnEmptyBackground = firstDefined(params.replaceAllOnEmptyBackground, true); params.backgroundFillColor = settings.backgroundFillColor || params.backgroundFillColor || '#ffffff'; params.backgroundFillColorAlpha = params.backplateImgUrl ? 0 : firstDefined(settings.backgroundFillColorAlpha, params.backgroundFillColorAlpha, 1.0); @@ -87,16 +90,23 @@ export function setDefaults(parameters) { params.worklogLimit = firstDefined(params.worklogLimit, 100); - params.defaultTool = params.defaultTool || 'select'; - params.hiddenTools = params.hiddenTools || ['redo']; - const defaultInHiddenIndex = params.hiddenTools.indexOf(params.defaultTool); - if (defaultInHiddenIndex > -1) { - logError(`Can't hide default tool '${params.defaultTool}', please change default tool to another to hide it`); - params.hiddenTools.splice(defaultInHiddenIndex, 1); + params.hiddenTools = params.hiddenTools || ['redo', 'zoomin', 'zoomout']; + params.hiddenTools.forEach(t => { + if (!allToolsNames.includes(t)) { + logError(`Hidden tool with name ${t}`) + } + }) + + if (params.defaultTool) { + if (params.hiddenTools.includes(params.defaultTool)) { + logError(`Can't hide default tool '${params.defaultTool}', please change default tool to another to hide it`); + params.hiddenTools.splice(defaultInHiddenIndex, 1); + } + } else { + params.defaultTool = allToolsNames.filter(t => !params.hiddenTools.includes(t) && !params.NON_SELECTABLE_TOOLS.includes(t))[0]; // select first tool which supports selecting } params.pixelizePixelSize = settings.pixelizePixelSize || params.pixelizePixelSize || '20%'; - params.colorScheme = params.colorScheme || {}; params.colorScheme.main = params.colorScheme.main || '#fff'; params.colorScheme.control = params.colorScheme.control || '#fff'; @@ -121,11 +131,14 @@ export function setDefaults(parameters) { params.defaultSize = params.defaultSize || 'fill'; params.defaultPixelSize = params.defaultPixelSize || 4; + params.disableWheelZoom = params.disableWheelZoom || false; params.extraFonts = params.extraFonts || []; params.toolbarHeightPx = params.toolbarHeightPx || 40; params.buttonSizePx = params.buttonSizePx || 32; + params.bucketSensivity = params.bucketSensivity || 100; + if (typeof params.defaultSize !== 'object') { // otherwise its an object from localstorage diff --git a/js/primitive.js b/js/primitive.js index 3aedd8e..2bae4d8 100644 --- a/js/primitive.js +++ b/js/primitive.js @@ -18,7 +18,11 @@ export default class PrimitiveTool { } setLineWidth(width) { - this.lineWidth = width; + if (`${width}`.match(/^\d+$/)) { + this.lineWidth = +width; + } else { + throw Error(`WARN: STR "${width}" is not an int`); + } } setShadowOn(state) { @@ -36,6 +40,7 @@ export default class PrimitiveTool { handleMouseDown(event) { this.activate(this.type); const mainClass = event.target.classList[0]; + this.ctx.lineWidth = this.lineWidth; this.ctx.strokeStyle = this.main.colorWidgetState.line.alphaColor; this.ctx.fillStyle = this.main.colorWidgetState.fill.alphaColor; @@ -250,17 +255,26 @@ export default class PrimitiveTool { let w = this.curCord[0] - this.centerCord[0]; let h = this.curCord[1] - this.centerCord[1]; - if (event.ctrlKey || event.shiftKey) { const min = Math.min(Math.abs(w), Math.abs(h)); w = min * Math.sign(w); h = min * Math.sign(h); } - const halfLW = Math.floor(this.lineWidth / 2); - const oddCorrecter = this.lineWidth % 2; + const halfLW = this.lineWidth / 2.0; + // normalize fix half compensation + if (w < 0) { + tl[0] += w; + w = -w; + } + if (h < 0) { + tl[1] += h; + h = -h; + } this.ctx.rect( - tl[0] + halfLW, tl[1] + halfLW, - (w - this.lineWidth) + oddCorrecter, (h - this.lineWidth) + oddCorrecter); + tl[0] + halfLW, + tl[1] + halfLW, + (w - this.lineWidth), + (h - this.lineWidth)); this.ctx.fill(); const origShadowColor = ctx.shadowColor; @@ -270,7 +284,10 @@ export default class PrimitiveTool { ctx.shadowOffsetX = this.lineWidth / 2.0; ctx.shadowOffsetY = this.lineWidth / 2.0; } - this.ctx.strokeRect(tl[0], tl[1], w, h); + if (this.lineWidth) { + // TODO: no shadow on unstroked, do we need it? + this.ctx.strokeRect(tl[0], tl[1], w, h); + } ctx.shadowColor = origShadowColor; this.ctx.closePath(); diff --git a/js/resizer.js b/js/resizer.js index 40ce626..1982a78 100644 --- a/js/resizer.js +++ b/js/resizer.js @@ -195,17 +195,17 @@ export default class Resizer { '' + '' + '' + '
' + '
' + - '` + - '` + - '` + '
' + '' + diff --git a/js/selecter.js b/js/selecter.js index 5b54c41..52e65c6 100644 --- a/js/selecter.js +++ b/js/selecter.js @@ -13,7 +13,6 @@ export default class PainterroSelecter { rect: document.querySelector(`#${main.id} .ptro-crp-rect`), }; this.imagePlaced = false; - this.pixelizePixelSize = main.params.pixelizePixelSize; this.areaionCallback(false); } @@ -44,22 +43,36 @@ export default class PainterroSelecter { doPixelize() { const c = this.area.topl; const size = [ - this.area.bottoml[0] - this.area.topl[0], - this.area.bottoml[1] - this.area.topl[1], + this.area.bottoml[0] - c[0], // width + this.area.bottoml[1] - c[1], ]; + this.pixelizePixelSize = this.main.params.pixelizePixelSize; + if (this.pixelizePixelSize.slice(-1) === '%') { - this.pixelSize = (Math.min(size[0], size[1]) / (100 / this.pixelizePixelSize.slice(0, -1))); + this.pixelSize = (Math.min(size[0], size[1]) / (100.0 / this.pixelizePixelSize.slice(0, -1))); } else if (this.pixelizePixelSize.slice(-2).toLowerCase() === 'px') { this.pixelSize = this.pixelizePixelSize.slice(0, -2); } else { this.pixelSize = this.pixelizePixelSize; } + + if (this.pixelSize < 2) { this.pixelSize = 2; // prevent errors } + + if (size[1] < size[0]) { + this.pixelSizeY = this.pixelSize; + const desiredHorPxs = Math.round(size[0] / this.pixelSizeY); + this.pixelSizeX = (size[0] * 1.0) / desiredHorPxs; + } else { + this.pixelSizeX = this.pixelSize; + const desiredVerPxs = Math.round(size[1] / this.pixelSizeX); + this.pixelSizeY = (size[1] * 1.0) / desiredVerPxs; + } const pxData = []; - const pxSize = [size[0] / this.pixelSize, size[1] / this.pixelSize]; + const pxSize = [size[0] / this.pixelSizeX, size[1] / this.pixelSizeY]; for (let i = 0; i < pxSize[0]; i += 1) { const row = []; for (let j = 0; j < pxSize[1]; j += 1) { @@ -70,8 +83,8 @@ export default class PainterroSelecter { const data = this.ctx.getImageData(c[0], c[1], size[0], size[1]); for (let i = 0; i < size[0]; i += 1) { for (let j = 0; j < size[1]; j += 1) { - const ii = Math.floor(i / this.pixelSize); - const jj = Math.floor(j / this.pixelSize); + const ii = Math.floor(i / this.pixelSizeX); + const jj = Math.floor(j / this.pixelSizeY); const base = ((j * size[0]) + i) * 4; pxData[ii][jj][0] += data.data[base]; pxData[ii][jj][1] += data.data[base + 1]; @@ -88,9 +101,9 @@ ${Math.round(pxData[i][j][0] / s)}, ${Math.round(pxData[i][j][1] / s)}, ${Math.round(pxData[i][j][2] / s)}, ${Math.round(pxData[i][j][3] / s)})`; - const baseX = c[0] + (i * this.pixelSize); - const baseY = c[1] + (j * this.pixelSize); - this.ctx.fillRect(baseX, baseY, this.pixelSize, this.pixelSize); + const baseX = c[0] + (i * this.pixelSizeX); + const baseY = c[1] + (j * this.pixelSizeY); + this.ctx.fillRect(baseX, baseY, this.pixelSizeX, this.pixelSizeY); } } this.main.worklog.captureState(); @@ -116,7 +129,9 @@ ${Math.round(pxData[i][j][3] / s)})`; this.show(); this.reCalcCropperCords(); if (this.area.activated) { - this.areaionCallback(this.area.rect.clientWidth > 0 && this.area.rect.clientHeight > 0); + this.areaionCallback(!this.imagePlaced && + this.area.rect.clientWidth > 0 && + this.area.rect.clientHeight > 0); } } @@ -133,7 +148,6 @@ ${Math.round(pxData[i][j][3] / s)})`; this.area.bottoml = [ Math.round(this.area.topl[0] + ((this.area.rect.clientWidth + 2) / ratio)), Math.round(this.area.topl[1] + ((this.area.rect.clientHeight + 2) / ratio))]; - // console.log('recalced cords', ratio, this.area.topl, this.area.bottoml); } adjustPosition() { @@ -149,8 +163,14 @@ ${Math.round(pxData[i][j][3] / s)})`; } placeAt(l, t, r, b, img) { + + if (this.imagePlaced) { + // for case when user inserts multiple images one after another without finishing placing them + this.finishPlacing(); + } + this.main.closeActiveTool(true); - this.main.setActiveTool(this.main.toolByName.select); + this.main.setActiveTool(this.main.defaultTool); const scale = this.getScale(); this.setLeft(l * scale); this.setTop(t * scale); @@ -176,6 +196,7 @@ ${Math.round(pxData[i][j][3] / s)})`; this.show(); this.reCalcCropperCords(); this.imagePlaced = true; + this.main.select.activate(); this.placedRatio = img.naturalWidth / img.naturalHeight; } @@ -187,6 +208,7 @@ ${Math.round(pxData[i][j][3] / s)})`; this.area.topl[1], this.area.bottoml[0] - this.area.topl[0], this.area.bottoml[1] - this.area.topl[1]); + this.area.activated = false; } cancelPlacing() { @@ -223,6 +245,7 @@ ${Math.round(pxData[i][j][3] / s)})`; } handleMouseDown(event) { + const mainClass = event.target.classList[0]; const mousDownCallbacks = { 'ptro-crp-el': () => { @@ -448,7 +471,8 @@ ${Math.round(pxData[i][j][3] / s)})`; handleMouseUp() { if (this.area.activated) { - this.areaionCallback(this.area.rect.clientWidth > 0 && this.area.rect.clientHeight > 0); + this.areaionCallback(!this.imagePlaced && this.area.rect.clientWidth > 0 + && this.area.rect.clientHeight > 0); } this.area.moving = false; this.area.resizingT = false; diff --git a/js/settings.js b/js/settings.js index c41ab8d..43d4b82 100644 --- a/js/settings.js +++ b/js/settings.js @@ -30,28 +30,30 @@ export default class Settings { this.startClose(); }; - this.applyButton.onclick = () => { - let pixelVal = trim(this.inputPixelSize.value); - let valid; - if (pixelVal.slice(-1) === '%') { - const checkInt = trim(pixelVal.slice(0, -1)); - valid = /^\d+$/.test(checkInt) && parseInt(checkInt, 10) !== 0; + if (this.applyButton) { + this.applyButton.onclick = () => { + let pixelVal = trim(this.inputPixelSize.value); + let valid; + if (pixelVal.slice(-1) === '%') { + const checkInt = trim(pixelVal.slice(0, -1)); + valid = /^\d+$/.test(checkInt) && parseInt(checkInt, 10) !== 0; + if (valid) { + pixelVal = `${checkInt}%`; + } + } else { + valid = /^\d+$/.test(pixelVal) && parseInt(pixelVal, 10) !== 0; + } if (valid) { - pixelVal = `${checkInt}%`; + this.main.select.pixelizePixelSize = pixelVal; + setParam('pixelizePixelSize', pixelVal); + this.startClose(); + this.errorHolder.setAttribute('hidden', ''); + } else { + this.errorHolder.innerText = tr('wrongPixelSizeValue'); + this.errorHolder.removeAttribute('hidden'); } - } else { - valid = /^\d+$/.test(pixelVal) && parseInt(pixelVal, 10) !== 0; - } - if (valid) { - this.main.select.pixelizePixelSize = pixelVal; - setParam('pixelizePixelSize', pixelVal); - this.startClose(); - this.errorHolder.setAttribute('hidden', ''); - } else { - this.errorHolder.innerText = tr('wrongPixelSizeValue'); - this.errorHolder.removeAttribute('hidden'); - } - }; + }; + } } handleKeyDown(event) { @@ -68,7 +70,9 @@ export default class Settings { open() { this.wrapper.removeAttribute('hidden'); this.opened = true; - this.inputPixelSize.value = this.main.select.pixelizePixelSize; + if (this.inputPixelSize) { + this.inputPixelSize.value = this.main.select.pixelizePixelSize; + } this.bgSelBtn.style['background-color'] = this.main.colorWidgetState.bg.alphaColor; } @@ -82,7 +86,8 @@ export default class Settings { this.main.closeActiveTool(); } - static html() { + /* eslint-disable */ + static html(main) { return '' + ''; } + /* eslint-enable */ } diff --git a/js/text.js b/js/text.js index 8a8215c..7af4162 100644 --- a/js/text.js +++ b/js/text.js @@ -1,6 +1,6 @@ -import html2canvas from 'html2canvas'; import { KEYS } from './utils'; import { tr } from './translation'; +import domtoimage from 'dom-to-image'; export default class TextTool { constructor(main) { @@ -202,19 +202,40 @@ export default class TextTool { apply() { const origBorder = this.input.style.border; + const origOutline = this.input.style.outline; const scale = this.main.getScale(); + this.input.style.border = 'none'; - html2canvas(this.input, { - backgroundColor: null, - logging: false, - scale, - }).then((can) => { - this.ctx.drawImage(can, this.scaledCord[0], this.scaledCord[1]); - this.input.style.border = origBorder; - this.close(); - this.main.worklog.captureState(); - this.main.closeActiveTool(); - }); + const domToImageConfig = { + style: { + 'transform-origin': 'top left', + transform: `scale(${scale})`, + 'overflow-wrap': 'break-word', + 'word-wrap': 'break-word', + 'white-space': 'pre-wrap', + overflow: 'hidden', + width: this.input.clientWidth + 'px', + height: this.input.clientHeight + 'px', + }, + width: this.input.clientWidth * (scale < 1 ? (1 / scale) : scale), + height: this.input.clientHeight * (scale < 1 ? (1 / scale) : scale), + }; + domtoimage.toPng(this.input, domToImageConfig) + .then((dataUrl) => { + const img = new Image(); + img.src = dataUrl; + img.onload = () => { + this.ctx.drawImage(img, this.scaledCord[0], this.scaledCord[1]); + this.input.style.border = origBorder; + this.input.style.outline = origOutline; + this.close(); + this.main.worklog.captureState(); + this.main.closeActiveTool(); + }; + }) + .catch(function (error) { + console.error('oops, something went wrong!', error); + }); } close() { @@ -226,11 +247,11 @@ export default class TextTool { return '' + '
' + '' + - `' + - `' + diff --git a/js/translation.js b/js/translation.js index 5f0d737..a6950ca 100644 --- a/js/translation.js +++ b/js/translation.js @@ -1,12 +1,15 @@ -import de from '../langs/de.lang'; -import en from '../langs/en.lang'; -import es from '../langs/es.lang'; -import ca from '../langs/ca.lang'; -import fr from '../langs/fr.lang'; -import pl from '../langs/pl.lang'; -import ptPTl from '../langs/pt-PT.lang'; -import ptBRl from '../langs/pt-BR.lang'; -import ja from '../langs/ja.lang'; +import de from "../langs/de.lang"; +import en from "../langs/en.lang"; +import es from "../langs/es.lang"; +import ca from "../langs/ca.lang"; +import fr from "../langs/fr.lang"; +import pl from "../langs/pl.lang"; +import ptPTl from "../langs/pt-PT.lang"; +import ptBRl from "../langs/pt-BR.lang"; +import ru from "../langs/ru.lang"; +import ja from "../langs/ja.lang"; +import nl from "../langs/nl.lang"; +import uk from "../langs/uk.lang"; let instance = null; @@ -19,9 +22,12 @@ export default class Translation { ca, fr, pl, - 'pt-PT': ptPTl, - 'pt-BR': ptBRl, + "pt-PT": ptPTl, + "pt-BR": ptBRl, + ru, ja, + nl, + uk, }; this.defaultTranslator = this.translations.en; } @@ -48,7 +54,7 @@ export default class Translation { } tr(sentense) { - const levels = sentense.split('.'); + const levels = sentense.split("."); let res = this.translator; let fallbackRes = this.defaultTranslator; levels.forEach((l) => { diff --git a/js/utils.js b/js/utils.js index e8f2902..03d7007 100644 --- a/js/utils.js +++ b/js/utils.js @@ -1,30 +1,31 @@ export function genId() { - let text = 'ptro'; - const possible = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789'; - for (let i = 0; i < 8; i += 1) { + let text = "ptro"; + const possible = + "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789"; + for (let i = 0; i < 20; i += 1) { text += possible.charAt(Math.floor(Math.random() * possible.length)); } return text; } export function addDocumentObjectHelpers() { - if (!('documentOffsetTop' in Element.prototype)) { - Object.defineProperty(Element.prototype, 'documentOffsetTop', { + if (!("documentOffsetTop" in Element.prototype)) { + Object.defineProperty(Element.prototype, "documentOffsetTop", { get() { return this.getBoundingClientRect().top; }, }); } - if (!('documentOffsetLeft' in Element.prototype)) { - Object.defineProperty(Element.prototype, 'documentOffsetLeft', { + if (!("documentOffsetLeft" in Element.prototype)) { + Object.defineProperty(Element.prototype, "documentOffsetLeft", { get() { return this.getBoundingClientRect().left; }, }); } - if (!('documentClientWidth' in Element.prototype)) { - Object.defineProperty(Element.prototype, 'documentClientWidth', { + if (!("documentClientWidth" in Element.prototype)) { + Object.defineProperty(Element.prototype, "documentClientWidth", { get() { const rect = this.getBoundingClientRect(); if (rect.width) { @@ -37,8 +38,8 @@ export function addDocumentObjectHelpers() { }); } - if (!('documentClientHeight' in Element.prototype)) { - Object.defineProperty(Element.prototype, 'documentClientHeight', { + if (!("documentClientHeight" in Element.prototype)) { + Object.defineProperty(Element.prototype, "documentClientHeight", { get() { const rect = this.getBoundingClientRect(); if (rect.height) { @@ -70,11 +71,11 @@ export function clearSelection() { export function distance(p1, p2) { const a = p1.x - p2.x; const b = p1.y - p2.y; - return Math.sqrt((a * a) + (b * b)); + return Math.sqrt(a * a + b * b); } export function trim(s) { - return String(s).replace(/^\s+|\s+$/g, ''); + return String(s).replace(/^\s+|\s+$/g, ""); } export const KEYS = { @@ -91,6 +92,7 @@ export const KEYS = { b: 66, e: 69, t: 84, + f: 70, enter: 13, esc: 27, del: 46, @@ -106,41 +108,43 @@ export const KEYS = { export function copyToClipboard(text) { if (window.clipboardData && window.clipboardData.setData) { // IE specific code path to prevent textarea being shown while dialog is visible. - window.clipboardData.setData('Text', text); - } else if (document.queryCommandSupported && document.queryCommandSupported('copy')) { - const textarea = document.createElement('textarea'); + window.clipboardData.setData("Text", text); + } else if ( + document.queryCommandSupported && + document.queryCommandSupported("copy") + ) { + const textarea = document.createElement("textarea"); textarea.textContent = text; - textarea.style.position = 'fixed'; // Prevent scrolling to bottom of page in MS Edge. + textarea.style.position = "fixed"; // Prevent scrolling to bottom of page in MS Edge. document.body.appendChild(textarea); textarea.select(); try { - document.execCommand('copy'); // Security exception may be thrown by some browsers. + document.execCommand("copy"); // Security exception may be thrown by some browsers. } catch (ex) { - console.warn('Copy to clipboard failed.', ex); + console.warn("Copy to clipboard failed.", ex); } finally { document.body.removeChild(textarea); } } } - export function getScrollbarWidth() { - const outer = document.createElement('div'); - outer.style.visibility = 'hidden'; - outer.style.width = '100px'; - outer.style.msOverflowStyle = 'scrollbar'; // needed for WinJS apps + const outer = document.createElement("div"); + outer.style.visibility = "hidden"; + outer.style.width = "100px"; + outer.style.msOverflowStyle = "scrollbar"; // needed for WinJS apps document.body.appendChild(outer); const widthNoScroll = outer.offsetWidth; - outer.style.overflow = 'scroll'; - const inner = document.createElement('div'); - inner.style.width = '100%'; + outer.style.overflow = "scroll"; + const inner = document.createElement("div"); + inner.style.width = "100%"; outer.appendChild(inner); const widthWithScroll = inner.offsetWidth; outer.parentNode.removeChild(outer); return widthNoScroll - widthWithScroll; } -export function imgToDataURL(url, callback) { +export function imgToDataURL(url, callback, failedCb) { const xhr = new XMLHttpRequest(); xhr.onload = () => { const reader = new FileReader(); @@ -149,8 +153,13 @@ export function imgToDataURL(url, callback) { }; reader.readAsDataURL(xhr.response); }; - xhr.open('GET', url); - xhr.responseType = 'blob'; + xhr.onerror = () => { + if (typeof failedCb === "function") { + failedCb(); + } + }; + xhr.open("GET", url); + xhr.responseType = "blob"; xhr.send(); } @@ -161,3 +170,20 @@ export function logError(error) { export function checkIn(what, where) { return where.indexOf(what) !== -1; } + +export function setPrimitiveToolValue(value, primitiveTool, method, param) { + primitiveTool[method](value); + const selector = `[data-id="${param}"]`; + const ctl = document.querySelector(selector); + console.log(ctl, value); + + if (ctl) { + if (method === "setShadowOn") { + ctl.setAttribute("data-value", value ? "true" : "false"); + } else { + ctl.value = value; + } + } else { + console.warn(`Control not found: ${selector}`); + } +} diff --git a/js/worklog.js b/js/worklog.js index 9e79822..0fd20c4 100644 --- a/js/worklog.js +++ b/js/worklog.js @@ -57,9 +57,15 @@ export default class WorkLog { } captureState(initial) { + let activeToolName = this.main.activeTool ? this.main.activeTool.name : null; + if (this.main.params.NON_SELECTABLE_TOOLS.includes(activeToolName)) { + activeToolName = this.main.defaultTool.name; + } + const state = { sizew: this.main.size.w, sizeh: this.main.size.h, + activeToolName, data: this.ctx.getImageData(0, 0, this.main.size.w, this.main.size.h), }; if (this.current === null) { @@ -93,9 +99,17 @@ export default class WorkLog { undoState() { if (this.current.prev !== null) { + let currentToolName = this.current.activeToolName; this.current = this.current.prev; this.applyState(this.current); this.changed(false); + if (currentToolName) { + this.main.closeActiveTool(true); + this.main.setActiveTool(this.main.toolByName[currentToolName]) + } else { + this.main.closeActiveTool(); + } + if (this.main.params.onUndo) { this.main.params.onUndo(this.current); } @@ -104,9 +118,20 @@ export default class WorkLog { redoState() { if (this.current.next !== null) { + this.current = this.current.next; this.applyState(this.current); this.changed(false); + + const nextToolName = this.current.activeToolName; + + if (nextToolName) { + this.main.closeActiveTool(true); + this.main.setActiveTool(this.main.toolByName[nextToolName]) + } else { + this.main.closeActiveTool(); + } + if (this.main.params.onRedo) { this.main.params.onRedo(this.current); } diff --git a/langs/ca.lang.js b/langs/ca.lang.js index a21a085..65957b2 100644 --- a/langs/ca.lang.js +++ b/langs/ca.lang.js @@ -57,11 +57,14 @@ export default { close: 'Tancar editor', eraser: 'Borrador', settings: 'Paràmetres', + undo: 'Desfer', + filters: 'Filtres', }, pasteOptions: { fit: 'Reemplaçar tot', extend_down: 'Extendre cap avall', extend_right: 'Extendre a la dreta', + extend: 'Extendre', over: 'Empegar al damunt', how_to_paste: 'Com s\'ha d\'empegar?', }, diff --git a/langs/de.lang.js b/langs/de.lang.js index 292e095..e1502b3 100644 --- a/langs/de.lang.js +++ b/langs/de.lang.js @@ -65,6 +65,7 @@ export default { fit: 'Alle Austauschen ', extend_down: 'Nach unten strecken', extend_right: 'Nach rechts strecken', + extend: 'Strecken', over: 'Überkleben', how_to_paste: 'Wie füge ich hinzu?', }, diff --git a/langs/en.lang.js b/langs/en.lang.js index 7b280d1..6a2caf9 100644 --- a/langs/en.lang.js +++ b/langs/en.lang.js @@ -66,8 +66,12 @@ export default { close: 'Close Painterro', eraser: 'Eraser', settings: 'Settings', + zoomin: 'Zoom In', + zoomout: 'Zoom Out', undo: 'Undo', redo: 'Redo', + clear: 'Clear', + bucket: 'Fill', }, pasteOptions: { fit: 'Replace all', @@ -75,6 +79,7 @@ export default { extend_right: 'Extend right', extend_left: 'Extend left', extend_top: 'Extend top', + extend: 'Add', over: 'Paste over', how_to_paste: 'How to paste?', }, diff --git a/langs/es.lang.js b/langs/es.lang.js index d8e2603..e86618c 100644 --- a/langs/es.lang.js +++ b/langs/es.lang.js @@ -59,6 +59,7 @@ export default { fit: 'Reemplazar todo', extend_down: 'Extender hacia abajo', extend_right: 'Extender a la derecha', + extend: 'Extender', over: 'Pegar encima', how_to_paste: 'Cómo se ha de pegar?', }, diff --git a/langs/fa.lang.js b/langs/fa.lang.js index e746c1a..2da3746 100644 --- a/langs/fa.lang.js +++ b/langs/fa.lang.js @@ -68,6 +68,7 @@ fit: 'جایگزین کردن همه', extend_down: 'گسترش به پایین', extend_right: 'گسترش به راست', + extend: 'گسترش', over: 'چسباندن روی', how_to_paste: 'چگونه چسبانده؟', }, diff --git a/langs/fr.lang.js b/langs/fr.lang.js index 7b00600..bfb9738 100644 --- a/langs/fr.lang.js +++ b/langs/fr.lang.js @@ -66,6 +66,7 @@ export default { fit: 'Tout Remplacer', extend_down: 'Étendre vers le bas', extend_right: 'Étendre à droite', + extend: 'Étendre', over: 'Coller sur', how_to_paste: 'Comment coller?', }, diff --git a/langs/ja.lang.js b/langs/ja.lang.js index 5c3931f..2e7df8c 100644 --- a/langs/ja.lang.js +++ b/langs/ja.lang.js @@ -68,6 +68,7 @@ export default { fit: 'すべてを置き換え', extend_down: '下に拡張', extend_right: '右に拡張', + extend: '拡張', over: '重ねて貼り付け', how_to_paste: 'どう貼り付ける?', }, diff --git a/langs/nl.lang.js b/langs/nl.lang.js new file mode 100644 index 0000000..f0a5c9d --- /dev/null +++ b/langs/nl.lang.js @@ -0,0 +1,84 @@ +export default { + lineColor: 'L', + lineColorFull: 'Lijnkleur', + fillColor: 'V', + fillColorFull: 'Vulkleur', + alpha: 'A', + alphaFull: 'Alpha', + lineWidth: 'D', + lineWidthFull: 'Lijndikte', + arrowLength: 'L', + arrowLengthFull: 'Pijllengte', + eraserWidth: 'G', + eraserWidthFull: 'Gumdikte', + textColor: 'K', + textColorFull: 'Tekstkleur', + fontSize: 'G', + fontSizeFull: 'Tekstgrootte', + fontStrokeSize: 'St', + fontStrokeSizeFull: 'Streepdikte', + fontIsBold: 'V', + fontIsBoldFull: 'Vetgedrukt', + fontIsItalic: 'C', + fontIsItalicFull: 'Cursief', + shadowOn: 'S', + shadowOnFull: 'Schaduw', + fontStrokeAndShadow: 'D&S', + fontStrokeAndShadowFull: 'Streep & Schaduw', + + fontName: 'F', + fontNameFull: 'Naam lettertype', + textStrokeColor: 'SK', + textStrokeColorFull: 'Streepkleur', + apply: 'Toepassen', + cancel: 'Annuleren', + close: 'Sluiten', + clear: 'Opnieuw', + width: 'Breedte', + height: 'Hoogte', + keepRatio: 'Behoud breedte-/hoogteverhouding', + fillPageWith: 'Vul pagina met de huidige achtergrondkleur', + pixelSize: 'P', + pixelSizeFull: 'Pixelgrootte', + resizeScale: 'Schalen', + resizeResize: 'Grootte aanpassen', + backgroundColor: 'Achtergrondkleur pagina', + pixelizePixelSize: 'Pixelgrootte pixel', + language: 'Taal', + wrongPixelSizeValue: + 'Foute pixelgrootte. Je kunt b.v. \'20%\' invullen, wat een pixelgrootte van ' + + '1/5 van de geselecteerde gebiedszijde betekent, of \'4\' voor een pixelgrootte van 4 px', + tools: { + crop: 'Afbeelding bijsnijden naar geselecteerde gebied', + pixelize: 'Geselecteerde gebied pixelen', + rect: 'Teken rechthoek', + ellipse: 'Teken ovaal', + line: 'Teken lijn', + arrow: 'Teken pijl', + rotate: 'Afbeelding draaien', + save: 'Afbeelding opslaan', + load: 'Afbeelding laden', + text: 'Text schrijven', + brush: 'Penseel', + resize: 'Grootte aanpassen', + open: 'Afbeelding openen', + select: 'Gebied selecteren', + close: 'Painterro sluiten', + eraser: 'Gum', + settings: 'Instellingen', + zoomin: 'Inzoomen', + zoomout: 'Uitzoomen', + undo: 'Ongedaan maken', + redo: 'Opnieuw doen', + }, + pasteOptions: { + fit: 'Vervang alles', + extend_down: 'Onder uitbreiden', + extend_right: 'Rechts uitbreiden', + extend_left: 'Links uitbreiden', + extend_top: 'Boven uitbreiden', + extend: 'Uitbreiden', + over: 'Overheen plakken', + how_to_paste: 'Hoe te plakken?', + }, +}; diff --git a/langs/pl.lang.js b/langs/pl.lang.js index f30780a..f06748b 100644 --- a/langs/pl.lang.js +++ b/langs/pl.lang.js @@ -66,6 +66,7 @@ export default { fit: 'Zastąp', extend_down: 'Dodaj poniżej', extend_right: 'Dodaj po prawej', + extend: 'Dodaj', over: 'Dodaj ponad', how_to_paste: 'Jak wkleić?', }, diff --git a/langs/pt-BR.lang.js b/langs/pt-BR.lang.js index b4414b4..944b934 100644 --- a/langs/pt-BR.lang.js +++ b/langs/pt-BR.lang.js @@ -59,6 +59,7 @@ export default { fit: 'Substituir tudo', extend_down: 'Acrescentar por baixo', extend_right: 'Acrescentar pela direita', + extend: 'Acrescentar', over: 'Por cima', how_to_paste: 'Como colar?', }, diff --git a/langs/pt-PT.lang.js b/langs/pt-PT.lang.js index 85902b2..02cabcd 100644 --- a/langs/pt-PT.lang.js +++ b/langs/pt-PT.lang.js @@ -59,6 +59,7 @@ export default { fit: 'Substituir tudo', extend_down: 'Acrescentar por baixo', extend_right: 'Acrescentar pela direita', + extend: 'Acrescentar', over: 'Por cima', how_to_paste: 'Como colar?', }, diff --git a/langs/ru.lang.js b/langs/ru.lang.js new file mode 100644 index 0000000..2cc28d9 --- /dev/null +++ b/langs/ru.lang.js @@ -0,0 +1,81 @@ +export default { + lineColor: 'Л', + lineColorFull: 'Цвет линии', + fillColor: 'З', + fillColorFull: 'Цвет заливки', + alpha: 'П', + alphaFull: 'Прозрачность', + lineWidth: 'Ш', + lineWidthFull: 'Ширина линии', + arrowLength: 'Ш', + arrowLengthFull: 'Ширина стрелки', + eraserWidth: 'Ш', + eraserWidthFull: 'Ширина ластика', + textColor: 'Ц', + textColorFull: 'Цвет текста', + fontSize: 'Р', + fontSizeFull: 'Размер шрифта', + fontStrokeSize: 'Ш', + fontStrokeSizeFull: 'Ширина штриха', + fontIsBold: 'Ж', + fontIsBoldFull: 'Жирный', + fontIsItalic: 'К', + fontIsItalicFull: 'Курсив', + shadowOn: 'Т', + shadowOnFull: 'Тень', + fontStrokeAndShadow: 'О&Т', + fontStrokeAndShadowFull: 'Обводка и Тень', + fontName: 'Ш', + fontNameFull: 'Название шрифта', + textStrokeColor: 'ЦО', + textStrokeColorFull: 'Цвет обводки', + apply: 'Применить', + cancel: 'Отмена', + close: 'Закрыть', + clear: 'Очистить', + width: 'Ширина', + height: 'Высота', + keepRatio: 'Сохранить соотношение ширины/высоты', + fillPageWith: 'Заполнить страницу текущим цветом фона', + pixelSize: 'П', + pixelSizeFull: 'Размер пикселя', + resizeScale: 'Масштаб', + resizeResize: 'Изменить размер', + backgroundColor: 'Цвет фона страницы', + pixelizePixelSize: 'Пикселизация размера пикселя', + language: 'Язык', + wrongPixelSizeValue: + 'Неправильный размер пикселя. Вы можете ввести, например \'20%\', что означает, что средний размер пикселя будет 1/5 от' + + 'стороны выбранной области или \'4\', что означает 4 пикселя', + tools: { + crop: 'Обрезать изображение до выделенной области', + pixelize: 'Сделать пикселизацию выделенной области', + rect: 'Рисовать прямоугольник', + ellipse: 'Рисовать эллипс', + line: 'Рисовать линию', + arrow: 'Рисовать Стрелку', + rotate: 'Повернуть лист', + save: 'Сохрнить изображение', + load: 'Загрузть изображение', + text: 'Вставить текст', + brush: 'Кисть', + resize: 'Изменить размер или масштаб', + open: 'Открыть изображение', + select: 'Выбрать область', + close: 'Закрыть редактор', + eraser: 'Ластик', + settings: 'Настройки', + undo: 'Отменить', + redo: 'Повторить', + }, + pasteOptions: { + fit: 'Заменить всё', + extend_down: 'Добавить вниз', + extend_right: 'Добавить вправо', + extend_left: 'Добавить влево', + extend_top: 'Добавить вверх', + extend: 'Добавить', + over: 'Вставить', + how_to_paste: 'Как вставить?', + }, +}; diff --git a/langs/uk.lang.js b/langs/uk.lang.js new file mode 100644 index 0000000..39fedd5 --- /dev/null +++ b/langs/uk.lang.js @@ -0,0 +1,96 @@ +export default { + lineColor: "КЛ", + lineColorFull: "Колір лінії", + fillColor: "КЗ", + fillColorFull: "Колір заливки", + alpha: "Пр", + alphaFull: "Прозорість", + lineWidth: "ТЛ", + lineWidthFull: "Товщина лінії", + arrowLength: "ДЛ", + arrowLengthFull: "Довжина стрілки", + eraserWidth: "ШГ", + eraserWidthFull: "Ширина гумки", + textColor: "КТ", + textColorFull: "Колір тексту", + fontSize: "РШ", + fontSizeFull: "Розмір шрифту", + fontStrokeSize: "ТШ", + fontStrokeSizeFull: "Ширина шрифту", + fontIsBold: "B", + fontIsBoldFull: "Жирний", + fontIsItalic: "I", + fontIsItalicFull: "Курсив", + shadowOn: "Т", + shadowOnFull: "Тінь", + filtersFull: "Фільтри", + fontStrokeAndShadow: "Т+О", + fontStrokeAndShadowFull: "Тінь та обводка", + filters: 'Фільтр', + imageFilters: 'Фільтри зображення', + percents: "%", + percentsFull: "Проценти", + + + + + + fontName: "НШ", + fontNameFull: "Назва шрифту", + textStrokeColor: "КО", + textStrokeColorFull: "Колір обводки", + apply: "Застосувати", + cancel: "Відміна", + close: "Закрити", + clear: "Очистити", + width: "Ширина", + height: "Висота", + keepRatio: "Зберегти пропорції ширини/висоти", + fillPageWith: "Залити сторінку поточним кольором фону", + pixelSize: "РП", + pixelSizeFull: "Розмір пікселя", + resizeScale: "Масштаб", + resizeResize: "Змінити розмір", + backgroundColor: "Колір фону сторінки", + pixelizePixelSize: "Розмити пікселі розміром", + language: "Мова", + wrongPixelSizeValue: + "Неправильний розмір пікселя. Ви можете ввести, наприклад, '20%', що означає, що середній розмір пікселя буде 1/5 від " + + "сторони вибраної області, або '4', що означає 4 пікселя", + tools: { + crop: "Обрізати зображення до виділеної області", + pixelize: "Зробити пікселізацію виділеної області", + rect: "Намалювати прямокутник", + ellipse: "Намалювати еліпс", + line: "Намалювати лінію", + arrow: "Намалювати стрілку", + rotate: "Повернути ", + save: "Зберегти ", + load: "Завантажити ", + text: "Вставити текст", + brush: "Пензель", + resize: "Змінити розмір або масштаб", + open: "Відкрити зображення", + select: "Вибрати область", + close: "Закрити", + eraser: "Ластик", + settings: "Налаштування", + zoomin: "Наблизити", + zoomout: "Віддалити", + undo: "Скасувати", + redo: "Повторити", + clear: "Очистити", + bucket: "Заливка", + filters: "Фільтри", + }, + pasteOptions: { + fit: "Замінити все", + extend_down: "Додати вниз", + extend_right: "Додати вправо", + extend_left: "Додати вліво", + extend_top: "Додати вгору", + extend: "Додати", + over: "Вставити", + how_to_paste: "Як вставити?", + }, +}; diff --git a/package-lock.json b/package-lock.json index 662e14b..ffa0dce 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,1947 +1,3020 @@ { "name": "painterro", - "version": "1.2.10", - "lockfileVersion": 1, + "version": "1.2.92", + "lockfileVersion": 3, "requires": true, - "dependencies": { - "@types/glob": { - "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/minimatch": "*", - "@types/node": "*" + "packages": { + "": { + "name": "painterro", + "version": "1.2.92", + "license": "MIT", + "dependencies": { + "caniuse-lite": "^1.0.30001596", + "core-js": "^3.11.0", + "dom-to-image": "^2.6.0" + }, + "devDependencies": { + "@babel/core": "^7.12.16", + "@babel/preset-env": "^7.12.16", + "@vusion/webfonts-generator": "^0.8.0", + "babel-loader": "^8.2.2", + "css-loader": "^5.0.2", + "es6-promise": "^4.2.8", + "eslint": "^6.8.0", + "eslint-config-airbnb-base": "^11.2.0", + "eslint-loader": "^4.0.2", + "eslint-plugin-import": "^2.22.1", + "ismobilejs": "^1.1.1", + "lodash": ">=4.17.13", + "mime": ">=1.4.1", + "raw-loader": "^0.5.1", + "string.prototype.repeat": "^0.2.0", + "style-loader": "^2.0.0", + "terser-webpack-plugin": "^5.1.4", + "url-loader": "^4.1.1", + "webpack": "^5.21.2", + "webpack-bundle-analyzer": "^4.4.0", + "webpack-cli": "^4.5.0", + "webpack-dev-server": "^4.0.0-beta.0" + } + }, + "node_modules/@babel/code-frame": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.12.13.tgz", + "integrity": "sha512-HV1Cm0Q3ZrpCR93tkWOYiuYIgLxZXZFVG2VgK+MBWjUqZTundupbfx2aXarXuw5Ko5aMcjtJgbSs4vUGBS5v6g==", + "dev": true, + "dependencies": { + "@babel/highlight": "^7.12.13" } }, - "@types/minimatch": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/@types/minimatch/-/minimatch-3.0.3.tgz", - "integrity": "sha512-tHq6qdbT9U1IRSGf14CL0pUlULksvY9OZ+5eEgl1N7t+OA3tGvNpxJCzuKQlsNgCVwbAs670L1vcVQi8j9HjnA==", - "dev": true - }, - "@types/node": { - "version": "14.14.2", - "resolved": "https://registry.npmjs.org/@types/node/-/node-14.14.2.tgz", - "integrity": "sha512-jeYJU2kl7hL9U5xuI/BhKPZ4vqGM/OmK6whiFAXVhlstzZhVamWhDSmHyGLIp+RVyuF9/d0dqr2P85aFj4BvJg==", + "node_modules/@babel/compat-data": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.12.13.tgz", + "integrity": "sha512-U/hshG5R+SIoW7HVWIdmy1cB7s3ki+r3FpyEZiCgpi4tFgPnX/vynY80ZGSASOIrUM6O7VxOgCZgdt7h97bUGg==", "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==", + "node_modules/@babel/core": { + "version": "7.12.16", + "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.12.16.tgz", + "integrity": "sha512-t/hHIB504wWceOeaOoONOhu+gX+hpjfeN6YRBT209X/4sibZQfSF1I0HFRRlBe97UZZosGx5XwUg1ZgNbelmNw==", "dev": true, - "requires": { - "@webassemblyjs/helper-module-context": "1.8.5", - "@webassemblyjs/helper-wasm-bytecode": "1.8.5", - "@webassemblyjs/wast-parser": "1.8.5" + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@babel/generator": "^7.12.15", + "@babel/helper-module-transforms": "^7.12.13", + "@babel/helpers": "^7.12.13", + "@babel/parser": "^7.12.16", + "@babel/template": "^7.12.13", + "@babel/traverse": "^7.12.13", + "@babel/types": "^7.12.13", + "convert-source-map": "^1.7.0", + "debug": "^4.1.0", + "gensync": "^1.0.0-beta.1", + "json5": "^2.1.2", + "lodash": "^4.17.19", + "semver": "^5.4.1", + "source-map": "^0.5.0" + }, + "engines": { + "node": ">=6.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/babel" } }, - "@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==", + "node_modules/@babel/core/node_modules/debug": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", "dev": true, - "requires": { - "@webassemblyjs/wast-printer": "1.8.5" + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } } }, - "@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==", + "node_modules/@babel/core/node_modules/json5": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz", + "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==", "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "mamacro": "^0.0.3" + "dependencies": { + "minimist": "^1.2.5" + }, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" } }, - "@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==", + "node_modules/@babel/core/node_modules/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 }, - "@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==", + "node_modules/@babel/generator": { + "version": "7.12.15", + "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.12.15.tgz", + "integrity": "sha512-6F2xHxBiFXWNSGb7vyCUTBF8RCLY66rS0zEPcP8t/nQyXjha5EuK4z7H5o7fWG8B4M7y6mqVWq1J+1PuwRhecQ==", "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" + "dependencies": { + "@babel/types": "^7.12.13", + "jsesc": "^2.5.1", + "source-map": "^0.5.0" } }, - "@webassemblyjs/ieee754": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.8.5.tgz", - "integrity": "sha512-aaCvQYrvKbY/n6wKHb/ylAJr27GglahUO89CcGXMItrOBqRarUMxWLJgxm9PJNuKULwN5n1csT9bYoMeZOGF3g==", + "node_modules/@babel/generator/node_modules/jsesc": { + "version": "2.5.2", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-2.5.2.tgz", + "integrity": "sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA==", "dev": true, - "requires": { - "@xtuc/ieee754": "^1.2.0" + "bin": { + "jsesc": "bin/jsesc" + }, + "engines": { + "node": ">=4" } }, - "@webassemblyjs/leb128": { - "version": "1.8.5", - "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.8.5.tgz", - "integrity": "sha512-plYUuUwleLIziknvlP8VpTgO4kqNaH57Y3JnNa6DLpu/sGcP6hbVdfdX5aHAV716pQBKrfuU26BJK29qY37J7A==", + "node_modules/@babel/helper-annotate-as-pure": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.12.13.tgz", + "integrity": "sha512-7YXfX5wQ5aYM/BOlbSccHDbuXXFPxeoUmfWtz8le2yTkTZc+BxsiEnENFoi2SlmA8ewDkG2LgIMIVzzn2h8kfw==", "dev": true, - "requires": { - "@xtuc/long": "4.2.2" + "dependencies": { + "@babel/types": "^7.12.13" } }, - "@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" + "node_modules/@babel/helper-builder-binary-assignment-operator-visitor": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-builder-binary-assignment-operator-visitor/-/helper-builder-binary-assignment-operator-visitor-7.12.13.tgz", + "integrity": "sha512-CZOv9tGphhDRlVjVkAgm8Nhklm9RzSmWpX2my+t7Ua/KT616pEzXsQCjinzvkRvHWJ9itO4f296efroX23XCMA==", + "dev": true, + "dependencies": { + "@babel/helper-explode-assignable-expression": "^7.12.13", + "@babel/types": "^7.12.13" } }, - "@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==", + "node_modules/@babel/helper-compilation-targets": { + "version": "7.12.16", + "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.12.16.tgz", + "integrity": "sha512-dBHNEEaZx7F3KoUYqagIhRIeqyyuI65xMndMZ3WwGwEBI609I4TleYQHcrS627vbKyNTXqShoN+fvYD9HuQxAg==", "dev": true, - "requires": { - "@webassemblyjs/ast": "1.8.5", - "@webassemblyjs/wast-parser": "1.8.5", - "@xtuc/long": "4.2.2" + "dependencies": { + "@babel/compat-data": "^7.12.13", + "@babel/helper-validator-option": "^7.12.16", + "browserslist": "^4.14.5", + "semver": "^5.5.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "@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 - }, - "abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "dev": true - }, - "accepts": { - "version": "1.3.7", - "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", - "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", + "node_modules/@babel/helper-compilation-targets/node_modules/browserslist": { + "version": "4.16.3", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.3.tgz", + "integrity": "sha512-vIyhWmIkULaq04Gt93txdh+j02yX/JzlyhLYbV3YQCn/zvES3JnY7TifHHvvr1w5hTDluNKMkV05cs4vy8Q7sw==", "dev": true, - "requires": { - "mime-types": "~2.1.24", - "negotiator": "0.6.2" + "dependencies": { + "caniuse-lite": "^1.0.30001181", + "colorette": "^1.2.1", + "electron-to-chromium": "^1.3.649", + "escalade": "^3.1.1", + "node-releases": "^1.1.70" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" } }, - "acorn": { - "version": "5.7.3", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.3.tgz", - "integrity": "sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==", - "dev": true - }, - "acorn-jsx": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-3.0.1.tgz", - "integrity": "sha1-r9+UiPsezvyDSPb7IvRk4ypYs2s=", + "node_modules/@babel/helper-create-class-features-plugin": { + "version": "7.12.16", + "resolved": "https://registry.npmjs.org/@babel/helper-create-class-features-plugin/-/helper-create-class-features-plugin-7.12.16.tgz", + "integrity": "sha512-KbSEj8l9zYkMVHpQqM3wJNxS1d9h3U9vm/uE5tpjMbaj3lTp+0noe3KPsV5dSD9jxKnf9jO9Ip9FX5PKNZCKow==", "dev": true, - "requires": { - "acorn": "^3.0.4" - }, "dependencies": { - "acorn": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz", - "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=", - "dev": true - } + "@babel/helper-function-name": "^7.12.13", + "@babel/helper-member-expression-to-functions": "^7.12.16", + "@babel/helper-optimise-call-expression": "^7.12.13", + "@babel/helper-replace-supers": "^7.12.13", + "@babel/helper-split-export-declaration": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "ajv": { - "version": "5.5.2", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-5.5.2.tgz", - "integrity": "sha1-c7Xuyj+rZT49P5Qis0GtQiBdyWU=", + "node_modules/@babel/helper-create-regexp-features-plugin": { + "version": "7.12.16", + "resolved": "https://registry.npmjs.org/@babel/helper-create-regexp-features-plugin/-/helper-create-regexp-features-plugin-7.12.16.tgz", + "integrity": "sha512-jAcQ1biDYZBdaAxB4yg46/XirgX7jBDiMHDbwYQOgtViLBXGxJpZQ24jutmBqAIB/q+AwB6j+NbBXjKxEY8vqg==", "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" + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.12.13", + "regexpu-core": "^4.7.1" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "ajv-errors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/ajv-errors/-/ajv-errors-1.0.1.tgz", - "integrity": "sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ==", - "dev": true - }, - "ajv-keywords": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-2.1.1.tgz", - "integrity": "sha1-YXmX/F9gV2iUxDX5QNgZ4TW4B2I=", - "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 - }, - "ansi-colors": { - "version": "3.2.4", - "resolved": "https://registry.npmjs.org/ansi-colors/-/ansi-colors-3.2.4.tgz", - "integrity": "sha512-hHUXGagefjN2iRrID63xckIvotOXOojhQKWIPUZ4mNUZ9nLZW+7FMNoE1lOkEhNWYsx/7ysGIuJYCiMAA9FnrA==", - "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": "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==", + "node_modules/@babel/helper-create-regexp-features-plugin/node_modules/jsesc": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", + "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", "dev": true, - "requires": { - "color-convert": "^1.9.0" + "bin": { + "jsesc": "bin/jsesc" } }, - "anymatch": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", - "integrity": "sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw==", - "dev": true, - "requires": { - "micromatch": "^3.1.4", - "normalize-path": "^2.1.1" - }, - "dependencies": { - "normalize-path": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-2.1.1.tgz", - "integrity": "sha1-GrKLVW4Zg2Oowab35vogE3/mrtk=", - "dev": true, - "requires": { - "remove-trailing-separator": "^1.0.1" - } - } + "node_modules/@babel/helper-create-regexp-features-plugin/node_modules/regexpu-core": { + "version": "4.7.1", + "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-4.7.1.tgz", + "integrity": "sha512-ywH2VUraA44DZQuRKzARmw6S66mr48pQVva4LBeRhcOltJ6hExvWly5ZjFLYo67xbIxb6W1q4bAGtgfEl20zfQ==", + "dev": true, + "dependencies": { + "regenerate": "^1.4.0", + "regenerate-unicode-properties": "^8.2.0", + "regjsgen": "^0.5.1", + "regjsparser": "^0.6.4", + "unicode-match-property-ecmascript": "^1.0.4", + "unicode-match-property-value-ecmascript": "^1.2.0" + }, + "engines": { + "node": ">=4" } }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", + "node_modules/@babel/helper-create-regexp-features-plugin/node_modules/regjsgen": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.5.2.tgz", + "integrity": "sha512-OFFT3MfrH90xIW8OOSyUrk6QHD5E9JOTeGodiJeBS3J6IwlgzJMNE/1bZklWz5oTg+9dCMyEetclvCVXOPoN3A==", "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==", + "node_modules/@babel/helper-create-regexp-features-plugin/node_modules/regjsparser": { + "version": "0.6.7", + "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.6.7.tgz", + "integrity": "sha512-ib77G0uxsA2ovgiYbCVGx4Pv3PSttAx2vIwidqQzbL2U5S4Q+j00HdSAneSBuyVcMvEnTXMjiGgB+DlXozVhpQ==", "dev": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" + "dependencies": { + "jsesc": "~0.5.0" + }, + "bin": { + "regjsparser": "bin/parser" } }, - "argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "node_modules/@babel/helper-explode-assignable-expression": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-explode-assignable-expression/-/helper-explode-assignable-expression-7.12.13.tgz", + "integrity": "sha512-5loeRNvMo9mx1dA/d6yNi+YiKziJZFylZnCo1nmFF4qPU4yJ14abhWESuSMQSlQxWdxdOFzxXjk/PpfudTtYyw==", "dev": true, - "requires": { - "sprintf-js": "~1.0.2" + "dependencies": { + "@babel/types": "^7.12.13" } }, - "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-flatten": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-2.1.2.tgz", - "integrity": "sha512-hNfzcOV8W4NdualtqBFPyVO+54DSJuZGY9qT4pRroB6S9e3iiido2ISIC5h9R2sPJ8H3FHCIiEnsv1lPXO3KtQ==", - "dev": true - }, - "array-includes": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.0.3.tgz", - "integrity": "sha1-GEtI9i2S10UrsxsyMWXH+L0CJm0=", + "node_modules/@babel/helper-function-name": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-function-name/-/helper-function-name-7.12.13.tgz", + "integrity": "sha512-TZvmPn0UOqmvi5G4vvw0qZTpVptGkB1GL61R6lKvrSdIxGm5Pky7Q3fpKiIkQCAtRCBUwB0PaThlx9vebCDSwA==", "dev": true, - "requires": { - "define-properties": "^1.1.2", - "es-abstract": "^1.7.0" + "dependencies": { + "@babel/helper-get-function-arity": "^7.12.13", + "@babel/template": "^7.12.13", + "@babel/types": "^7.12.13" } }, - "array-union": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz", - "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=", + "node_modules/@babel/helper-get-function-arity": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-get-function-arity/-/helper-get-function-arity-7.12.13.tgz", + "integrity": "sha512-DjEVzQNz5LICkzN0REdpD5prGoidvbdYk1BVgRUOINaWJP2t6avB27X1guXK1kXNrX0WMfsrm1A/ZBthYuIMQg==", "dev": true, - "requires": { - "array-uniq": "^1.0.1" + "dependencies": { + "@babel/types": "^7.12.13" } }, - "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 - }, - "asn1": { - "version": "0.2.4", - "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", - "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", + "node_modules/@babel/helper-hoist-variables": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-hoist-variables/-/helper-hoist-variables-7.12.13.tgz", + "integrity": "sha512-KSC5XSj5HreRhYQtZ3cnSnQwDzgnbdUDEFsxkN0m6Q3WrCRt72xrnZ8+h+pX7YxM7hr87zIO3a/v5p/H3TrnVw==", "dev": true, - "requires": { - "safer-buffer": "~2.1.0" + "dependencies": { + "@babel/types": "^7.12.13" } }, - "asn1.js": { - "version": "4.10.1", - "resolved": "https://registry.npmjs.org/asn1.js/-/asn1.js-4.10.1.tgz", - "integrity": "sha512-p32cOF5q0Zqs9uBiONKYLm6BClCoBCM5O9JfeUSlnQLBTxYdTK+pW+nXflm8UkKd2UYlEbYz5qEi0JuZR9ckSw==", + "node_modules/@babel/helper-member-expression-to-functions": { + "version": "7.12.16", + "resolved": "https://registry.npmjs.org/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.12.16.tgz", + "integrity": "sha512-zYoZC1uvebBFmj1wFAlXwt35JLEgecefATtKp20xalwEK8vHAixLBXTGxNrVGEmTT+gzOThUgr8UEdgtalc1BQ==", "dev": true, - "requires": { - "bn.js": "^4.0.0", - "inherits": "^2.0.1", - "minimalistic-assert": "^1.0.0" + "dependencies": { + "@babel/types": "^7.12.13" } }, - "assert": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/assert/-/assert-1.5.0.tgz", - "integrity": "sha512-EDsgawzwoun2CZkCgtxJbv392v4nbk9XDD06zI+kQYoBM/3RBWLlEyJARDOmhAAosBjWACEkKL6S+lIZtcAubA==", + "node_modules/@babel/helper-module-imports": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.12.13.tgz", + "integrity": "sha512-NGmfvRp9Rqxy0uHSSVP+SRIW1q31a7Ji10cLBcqSDUngGentY4FRiHOFZFE1CLU5eiL0oE8reH7Tg1y99TDM/g==", "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" - } - } + "@babel/types": "^7.12.13" } }, - "assert-plus": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", - "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", - "dev": true + "node_modules/@babel/helper-module-transforms": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.12.13.tgz", + "integrity": "sha512-acKF7EjqOR67ASIlDTupwkKM1eUisNAjaSduo5Cz+793ikfnpe7p4Q7B7EWU2PCoSTPWsQkR7hRUWEIZPiVLGA==", + "dev": true, + "dependencies": { + "@babel/helper-module-imports": "^7.12.13", + "@babel/helper-replace-supers": "^7.12.13", + "@babel/helper-simple-access": "^7.12.13", + "@babel/helper-split-export-declaration": "^7.12.13", + "@babel/helper-validator-identifier": "^7.12.11", + "@babel/template": "^7.12.13", + "@babel/traverse": "^7.12.13", + "@babel/types": "^7.12.13", + "lodash": "^4.17.19" + } + }, + "node_modules/@babel/helper-optimise-call-expression": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.12.13.tgz", + "integrity": "sha512-BdWQhoVJkp6nVjB7nkFWcn43dkprYauqtk++Py2eaf/GRDFm5BxRqEIZCiHlZUGAVmtwKcsVL1dC68WmzeFmiA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.12.13" + } }, - "assign-symbols": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/assign-symbols/-/assign-symbols-1.0.0.tgz", - "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=", + "node_modules/@babel/helper-plugin-utils": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.12.13.tgz", + "integrity": "sha512-C+10MXCXJLiR6IeG9+Wiejt9jmtFpxUc3MQqCmPY8hfCjyUGl9kT+B2okzEZrtykiwrc4dbCPdDoz0A/HQbDaA==", "dev": true }, - "async": { - "version": "2.6.3", - "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", - "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", + "node_modules/@babel/helper-remap-async-to-generator": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-remap-async-to-generator/-/helper-remap-async-to-generator-7.12.13.tgz", + "integrity": "sha512-Qa6PU9vNcj1NZacZZI1Mvwt+gXDH6CTfgAkSjeRMLE8HxtDK76+YDId6NQR+z7Rgd5arhD2cIbS74r0SxD6PDA==", "dev": true, - "requires": { - "lodash": "^4.17.14" + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.12.13", + "@babel/helper-wrap-function": "^7.12.13", + "@babel/types": "^7.12.13" } }, - "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-limiter": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/async-limiter/-/async-limiter-1.0.1.tgz", - "integrity": "sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ==", - "dev": true + "node_modules/@babel/helper-replace-supers": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-replace-supers/-/helper-replace-supers-7.12.13.tgz", + "integrity": "sha512-pctAOIAMVStI2TMLhozPKbf5yTEXc0OJa0eENheb4w09SrgOWEs+P4nTOZYJQCqs8JlErGLDPDJTiGIp3ygbLg==", + "dev": true, + "dependencies": { + "@babel/helper-member-expression-to-functions": "^7.12.13", + "@babel/helper-optimise-call-expression": "^7.12.13", + "@babel/traverse": "^7.12.13", + "@babel/types": "^7.12.13" + } }, - "asynckit": { - "version": "0.4.0", - "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", - "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=", - "dev": true + "node_modules/@babel/helper-simple-access": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-simple-access/-/helper-simple-access-7.12.13.tgz", + "integrity": "sha512-0ski5dyYIHEfwpWGx5GPWhH35j342JaflmCeQmsPWcrOQDtCN6C1zKAVRFVbK53lPW2c9TsuLLSUDf0tIGJ5hA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.12.13" + } }, - "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 + "node_modules/@babel/helper-skip-transparent-expression-wrappers": { + "version": "7.12.1", + "resolved": "https://registry.npmjs.org/@babel/helper-skip-transparent-expression-wrappers/-/helper-skip-transparent-expression-wrappers-7.12.1.tgz", + "integrity": "sha512-Mf5AUuhG1/OCChOJ/HcADmvcHM42WJockombn8ATJG3OnyiSxBK/Mm5x78BQWvmtXZKHgbjdGL2kin/HOLlZGA==", + "dev": true, + "dependencies": { + "@babel/types": "^7.12.1" + } }, - "autoprefixer": { - "version": "6.7.7", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-6.7.7.tgz", - "integrity": "sha1-Hb0cg1ZY41zj+ZhAmdsAWFx4IBQ=", + "node_modules/@babel/helper-split-export-declaration": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.12.13.tgz", + "integrity": "sha512-tCJDltF83htUtXx5NLcaDqRmknv652ZWCHyoTETf1CXYJdPC7nohZohjUgieXhv0hTJdRf2FjDueFehdNucpzg==", "dev": true, - "requires": { - "browserslist": "^1.7.6", - "caniuse-db": "^1.0.30000634", - "normalize-range": "^0.1.2", - "num2fraction": "^1.2.2", - "postcss": "^5.2.16", - "postcss-value-parser": "^3.2.3" + "dependencies": { + "@babel/types": "^7.12.13" } }, - "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=", + "node_modules/@babel/helper-validator-identifier": { + "version": "7.12.11", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.12.11.tgz", + "integrity": "sha512-np/lG3uARFybkoHokJUmf1QfEvRVCPbmQeUQpKow5cQ3xWrV9i3rUHodKDJPQfTVX61qKi+UdYk8kik84n7XOw==", "dev": true }, - "aws4": { - "version": "1.10.1", - "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.10.1.tgz", - "integrity": "sha512-zg7Hz2k5lI8kb7U32998pRRFin7zJlkfezGJjUc2heaD4Pw2wObakCDVzkKztTm/Ln7eiVvYsjqak0Ed4LkMDA==", + "node_modules/@babel/helper-validator-option": { + "version": "7.12.16", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.12.16.tgz", + "integrity": "sha512-uCgsDBPUQDvzr11ePPo4TVEocxj8RXjUVSC/Y8N1YpVAI/XDdUwGJu78xmlGhTxj2ntaWM7n9LQdRtyhOzT2YQ==", "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=", + "node_modules/@babel/helper-wrap-function": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helper-wrap-function/-/helper-wrap-function-7.12.13.tgz", + "integrity": "sha512-t0aZFEmBJ1LojdtJnhOaQEVejnzYhyjWHSsNSNo8vOYRbAJNh6r6GQF7pd36SqG7OKGbn+AewVQ/0IfYfIuGdw==", "dev": true, - "requires": { - "chalk": "^1.1.3", - "esutils": "^2.0.2", - "js-tokens": "^3.0.2" - }, "dependencies": { - "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": "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" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "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/helper-function-name": "^7.12.13", + "@babel/template": "^7.12.13", + "@babel/traverse": "^7.12.13", + "@babel/types": "^7.12.13" } }, - "babel-core": { - "version": "6.26.3", - "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-6.26.3.tgz", - "integrity": "sha512-6jyFLuDmeidKmUEb3NM+/yawG0M2bDZ9Z1qbZP59cyHLz8kYGKYwpJP0UwUKKUiTRNvxfLesJnTedqczP7cTDA==", - "dev": true, - "requires": { - "babel-code-frame": "^6.26.0", - "babel-generator": "^6.26.0", - "babel-helpers": "^6.24.1", - "babel-messages": "^6.23.0", - "babel-register": "^6.26.0", - "babel-runtime": "^6.26.0", - "babel-template": "^6.26.0", - "babel-traverse": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "convert-source-map": "^1.5.1", - "debug": "^2.6.9", - "json5": "^0.5.1", - "lodash": "^4.17.4", - "minimatch": "^3.0.4", - "path-is-absolute": "^1.0.1", - "private": "^0.1.8", - "slash": "^1.0.0", - "source-map": "^0.5.7" - }, + "node_modules/@babel/helpers": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.12.13.tgz", + "integrity": "sha512-oohVzLRZ3GQEk4Cjhfs9YkJA4TdIDTObdBEZGrd6F/T0GPSnuV6l22eMcxlvcvzVIPH3VTtxbseudM1zIE+rPQ==", + "dev": true, "dependencies": { - "json5": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/json5/-/json5-0.5.1.tgz", - "integrity": "sha1-Hq3nrMASA0rYTiOWdn6tn6VJWCE=", - "dev": true - } + "@babel/template": "^7.12.13", + "@babel/traverse": "^7.12.13", + "@babel/types": "^7.12.13" } }, - "babel-generator": { - "version": "6.26.1", - "resolved": "https://registry.npmjs.org/babel-generator/-/babel-generator-6.26.1.tgz", - "integrity": "sha512-HyfwY6ApZj7BYTcJURpM5tznulaBvyio7/0d4zFOeMPUmfxkCjHocCuoLa2SAGzBI8AREcH3eP3758F672DppA==", + "node_modules/@babel/highlight": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/highlight/-/highlight-7.12.13.tgz", + "integrity": "sha512-kocDQvIbgMKlWxXe9fof3TQ+gkIPOUSEYhJjqUjvKMez3krV7vbzYCDq39Oj11UAVK7JqPVGQPlgE85dPNlQww==", "dev": true, - "requires": { - "babel-messages": "^6.23.0", - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "detect-indent": "^4.0.0", - "jsesc": "^1.3.0", - "lodash": "^4.17.4", - "source-map": "^0.5.7", - "trim-right": "^1.0.1" + "dependencies": { + "@babel/helper-validator-identifier": "^7.12.11", + "chalk": "^2.0.0", + "js-tokens": "^4.0.0" } }, - "babel-helper-builder-binary-assignment-operator-visitor": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-builder-binary-assignment-operator-visitor/-/babel-helper-builder-binary-assignment-operator-visitor-6.24.1.tgz", - "integrity": "sha1-zORReto1b0IgvK6KAsKzRvmlZmQ=", - "dev": true, - "requires": { - "babel-helper-explode-assignable-expression": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } + "node_modules/@babel/highlight/node_modules/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-helper-call-delegate": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-call-delegate/-/babel-helper-call-delegate-6.24.1.tgz", - "integrity": "sha1-7Oaqzdx25Bw0YfiL/Fdb0Nqi340=", + "node_modules/@babel/parser": { + "version": "7.12.16", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.12.16.tgz", + "integrity": "sha512-c/+u9cqV6F0+4Hpq01jnJO+GLp2DdT63ppz9Xa+6cHaajM9VFzK/iDXiKK65YtpeVwu+ctfS6iqlMqRgQRzeCw==", "dev": true, - "requires": { - "babel-helper-hoist-variables": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" } }, - "babel-helper-define-map": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-helper-define-map/-/babel-helper-define-map-6.26.0.tgz", - "integrity": "sha1-pfVtq0GiX5fstJjH66ypgZ+Vvl8=", + "node_modules/@babel/plugin-proposal-async-generator-functions": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-async-generator-functions/-/plugin-proposal-async-generator-functions-7.12.13.tgz", + "integrity": "sha512-1KH46Hx4WqP77f978+5Ye/VUbuwQld2hph70yaw2hXS2v7ER2f3nlpNMu909HO2rbvP0NKLlMVDPh9KXklVMhA==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-async-generator-functions instead.", "dev": true, - "requires": { - "babel-helper-function-name": "^6.24.1", - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "lodash": "^4.17.4" + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13", + "@babel/helper-remap-async-to-generator": "^7.12.13", + "@babel/plugin-syntax-async-generators": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "babel-helper-explode-assignable-expression": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-explode-assignable-expression/-/babel-helper-explode-assignable-expression-6.24.1.tgz", - "integrity": "sha1-8luCz33BBDPFX3BZLVdGQArCLKo=", + "node_modules/@babel/plugin-proposal-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-properties/-/plugin-proposal-class-properties-7.12.13.tgz", + "integrity": "sha512-8SCJ0Ddrpwv4T7Gwb33EmW1V9PY5lggTO+A8WjyIwxrSHDUyBw4MtF96ifn1n8H806YlxbVCoKXbbmzD6RD+cA==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-class-properties instead.", "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.12.13", + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "babel-helper-function-name": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-function-name/-/babel-helper-function-name-6.24.1.tgz", - "integrity": "sha1-00dbjAPtmCQqJbSDUasYOZ01gKk=", + "node_modules/@babel/plugin-proposal-dynamic-import": { + "version": "7.12.16", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-dynamic-import/-/plugin-proposal-dynamic-import-7.12.16.tgz", + "integrity": "sha512-yiDkYFapVxNOCcBfLnsb/qdsliroM+vc3LHiZwS4gh7pFjo5Xq3BDhYBNn3H3ao+hWPvqeeTdU+s+FIvokov+w==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-dynamic-import instead.", "dev": true, - "requires": { - "babel-helper-get-function-arity": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13", + "@babel/plugin-syntax-dynamic-import": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "babel-helper-get-function-arity": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-get-function-arity/-/babel-helper-get-function-arity-6.24.1.tgz", - "integrity": "sha1-j3eCqpNAfEHTqlCQj4mwMbG2hT0=", + "node_modules/@babel/plugin-proposal-export-namespace-from": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-export-namespace-from/-/plugin-proposal-export-namespace-from-7.12.13.tgz", + "integrity": "sha512-INAgtFo4OnLN3Y/j0VwAgw3HDXcDtX+C/erMvWzuV9v71r7urb6iyMXu7eM9IgLr1ElLlOkaHjJ0SbCmdOQ3Iw==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-export-namespace-from instead.", "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "babel-helper-hoist-variables": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-hoist-variables/-/babel-helper-hoist-variables-6.24.1.tgz", - "integrity": "sha1-HssnaJydJVE+rbyZFKc/VAi+enY=", + "node_modules/@babel/plugin-proposal-json-strings": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-json-strings/-/plugin-proposal-json-strings-7.12.13.tgz", + "integrity": "sha512-v9eEi4GiORDg8x+Dmi5r8ibOe0VXoKDeNPYcTTxdGN4eOWikrJfDJCJrr1l5gKGvsNyGJbrfMftC2dTL6oz7pg==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-json-strings instead.", "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13", + "@babel/plugin-syntax-json-strings": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "babel-helper-optimise-call-expression": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-optimise-call-expression/-/babel-helper-optimise-call-expression-6.24.1.tgz", - "integrity": "sha1-96E0J7qfc/j0+pk8VKl4gtEkQlc=", + "node_modules/@babel/plugin-proposal-logical-assignment-operators": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-logical-assignment-operators/-/plugin-proposal-logical-assignment-operators-7.12.13.tgz", + "integrity": "sha512-fqmiD3Lz7jVdK6kabeSr1PZlWSUVqSitmHEe3Z00dtGTKieWnX9beafvavc32kjORa5Bai4QNHgFDwWJP+WtSQ==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-logical-assignment-operators instead.", "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "babel-helper-regex": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-helper-regex/-/babel-helper-regex-6.26.0.tgz", - "integrity": "sha1-MlxZ+QL4LyS3T6zu0DY5VPZJXnI=", + "node_modules/@babel/plugin-proposal-nullish-coalescing-operator": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-nullish-coalescing-operator/-/plugin-proposal-nullish-coalescing-operator-7.12.13.tgz", + "integrity": "sha512-Qoxpy+OxhDBI5kRqliJFAl4uWXk3Bn24WeFstPH0iLymFehSAUR8MHpqU7njyXv/qbo7oN6yTy5bfCmXdKpo1Q==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-nullish-coalescing-operator instead.", "dev": true, - "requires": { - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "lodash": "^4.17.4" + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "babel-helper-replace-supers": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helper-replace-supers/-/babel-helper-replace-supers-6.24.1.tgz", - "integrity": "sha1-v22/5Dk40XNpohPKiov3S2qQqxo=", + "node_modules/@babel/plugin-proposal-numeric-separator": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-numeric-separator/-/plugin-proposal-numeric-separator-7.12.13.tgz", + "integrity": "sha512-O1jFia9R8BUCl3ZGB7eitaAPu62TXJRHn7rh+ojNERCFyqRwJMTmhz+tJ+k0CwI6CLjX/ee4qW74FSqlq9I35w==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-numeric-separator instead.", "dev": true, - "requires": { - "babel-helper-optimise-call-expression": "^6.24.1", - "babel-messages": "^6.23.0", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13", + "@babel/plugin-syntax-numeric-separator": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "babel-helpers": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-helpers/-/babel-helpers-6.24.1.tgz", - "integrity": "sha1-NHHenK7DiOXIUOWX5Yom3fN2ArI=", + "node_modules/@babel/plugin-proposal-object-rest-spread": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-object-rest-spread/-/plugin-proposal-object-rest-spread-7.12.13.tgz", + "integrity": "sha512-WvA1okB/0OS/N3Ldb3sziSrXg6sRphsBgqiccfcQq7woEn5wQLNX82Oc4PlaFcdwcWHuQXAtb8ftbS8Fbsg/sg==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-object-rest-spread instead.", "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1" + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13", + "@babel/plugin-syntax-object-rest-spread": "^7.8.0", + "@babel/plugin-transform-parameters": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "babel-loader": { - "version": "7.1.5", - "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-7.1.5.tgz", - "integrity": "sha512-iCHfbieL5d1LfOQeeVJEUyD9rTwBcP/fcEbRCfempxTDuqrKpu0AZjLAQHEQa3Yqyj9ORKe2iHfoj4rHLf7xpw==", + "node_modules/@babel/plugin-proposal-optional-catch-binding": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-catch-binding/-/plugin-proposal-optional-catch-binding-7.12.13.tgz", + "integrity": "sha512-9+MIm6msl9sHWg58NvqpNpLtuFbmpFYk37x8kgnGzAHvX35E1FyAwSUt5hIkSoWJFSAH+iwU8bJ4fcD1zKXOzg==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-optional-catch-binding instead.", "dev": true, - "requires": { - "find-cache-dir": "^1.0.0", - "loader-utils": "^1.0.2", - "mkdirp": "^0.5.1" + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "babel-messages": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-messages/-/babel-messages-6.23.0.tgz", - "integrity": "sha1-8830cDhYA1sqKVHG7F7fbGLyYw4=", + "node_modules/@babel/plugin-proposal-optional-chaining": { + "version": "7.12.16", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-optional-chaining/-/plugin-proposal-optional-chaining-7.12.16.tgz", + "integrity": "sha512-O3ohPwOhkwji5Mckb7F/PJpJVJY3DpPsrt/F0Bk40+QMk9QpAIqeGusHWqu/mYqsM8oBa6TziL/2mbERWsUZjg==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-optional-chaining instead.", "dev": true, - "requires": { - "babel-runtime": "^6.22.0" + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13", + "@babel/helper-skip-transparent-expression-wrappers": "^7.12.1", + "@babel/plugin-syntax-optional-chaining": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "babel-plugin-check-es2015-constants": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-check-es2015-constants/-/babel-plugin-check-es2015-constants-6.22.0.tgz", - "integrity": "sha1-NRV7EBQm/S/9PaP3XH0ekYNbv4o=", + "node_modules/@babel/plugin-proposal-private-methods": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-methods/-/plugin-proposal-private-methods-7.12.13.tgz", + "integrity": "sha512-sV0V57uUwpauixvR7s2o75LmwJI6JECwm5oPUY5beZB1nBl2i37hc7CJGqB5G+58fur5Y6ugvl3LRONk5x34rg==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-private-methods instead.", "dev": true, - "requires": { - "babel-runtime": "^6.22.0" + "dependencies": { + "@babel/helper-create-class-features-plugin": "^7.12.13", + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "babel-plugin-syntax-exponentiation-operator": { - "version": "6.13.0", - "resolved": "https://registry.npmjs.org/babel-plugin-syntax-exponentiation-operator/-/babel-plugin-syntax-exponentiation-operator-6.13.0.tgz", - "integrity": "sha1-nufoM3KQ2pUoggGmpX9BcDF4MN4=", - "dev": true - }, - "babel-plugin-transform-es2015-arrow-functions": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-arrow-functions/-/babel-plugin-transform-es2015-arrow-functions-6.22.0.tgz", - "integrity": "sha1-RSaSy3EdX3ncf4XkQM5BufJE0iE=", + "node_modules/@babel/plugin-proposal-unicode-property-regex": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-unicode-property-regex/-/plugin-proposal-unicode-property-regex-7.12.13.tgz", + "integrity": "sha512-XyJmZidNfofEkqFV5VC/bLabGmO5QzenPO/YOfGuEbgU+2sSwMmio3YLb4WtBgcmmdwZHyVyv8on77IUjQ5Gvg==", + "deprecated": "This proposal has been merged to the ECMAScript standard and thus this plugin is no longer maintained. Please use @babel/plugin-transform-unicode-property-regex instead.", "dev": true, - "requires": { - "babel-runtime": "^6.22.0" + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.12.13", + "@babel/helper-plugin-utils": "^7.12.13" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "babel-plugin-transform-es2015-block-scoped-functions": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoped-functions/-/babel-plugin-transform-es2015-block-scoped-functions-6.22.0.tgz", - "integrity": "sha1-u8UbSflk1wy42OC5ToICRs46YUE=", + "node_modules/@babel/plugin-syntax-async-generators": { + "version": "7.8.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", + "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw==", "dev": true, - "requires": { - "babel-runtime": "^6.22.0" + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "babel-plugin-transform-es2015-block-scoping": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-block-scoping/-/babel-plugin-transform-es2015-block-scoping-6.26.0.tgz", - "integrity": "sha1-1w9SmcEwjQXBL0Y4E7CgnnOxiV8=", + "node_modules/@babel/plugin-syntax-class-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", + "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA==", "dev": true, - "requires": { - "babel-runtime": "^6.26.0", - "babel-template": "^6.26.0", - "babel-traverse": "^6.26.0", - "babel-types": "^6.26.0", - "lodash": "^4.17.4" + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "babel-plugin-transform-es2015-classes": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-classes/-/babel-plugin-transform-es2015-classes-6.24.1.tgz", - "integrity": "sha1-WkxYpQyclGHlZLSyo7+ryXolhNs=", + "node_modules/@babel/plugin-syntax-dynamic-import": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-dynamic-import/-/plugin-syntax-dynamic-import-7.8.3.tgz", + "integrity": "sha512-5gdGbFon+PszYzqs83S3E5mpi7/y/8M9eC90MRTZfduQOYW76ig6SOSPNe41IG5LoP3FGBn2N0RjVDSQiS94kQ==", "dev": true, - "requires": { - "babel-helper-define-map": "^6.24.1", - "babel-helper-function-name": "^6.24.1", - "babel-helper-optimise-call-expression": "^6.24.1", - "babel-helper-replace-supers": "^6.24.1", - "babel-messages": "^6.23.0", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "babel-plugin-transform-es2015-computed-properties": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-computed-properties/-/babel-plugin-transform-es2015-computed-properties-6.24.1.tgz", - "integrity": "sha1-b+Ko0WiV1WNPTNmZttNICjCBWbM=", + "node_modules/@babel/plugin-syntax-export-namespace-from": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-export-namespace-from/-/plugin-syntax-export-namespace-from-7.8.3.tgz", + "integrity": "sha512-MXf5laXo6c1IbEbegDmzGPwGNTsHZmEy6QGznu5Sh2UCWvueywb2ee+CCE4zQiZstxU9BMoQO9i6zUFSY0Kj0Q==", "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1" + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "babel-plugin-transform-es2015-destructuring": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-destructuring/-/babel-plugin-transform-es2015-destructuring-6.23.0.tgz", - "integrity": "sha1-mXux8auWf2gtKwh2/jWNYOdlxW0=", + "node_modules/@babel/plugin-syntax-json-strings": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", + "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA==", "dev": true, - "requires": { - "babel-runtime": "^6.22.0" + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "babel-plugin-transform-es2015-duplicate-keys": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-duplicate-keys/-/babel-plugin-transform-es2015-duplicate-keys-6.24.1.tgz", - "integrity": "sha1-c+s9MQypaePvnskcU3QabxV2Qj4=", + "node_modules/@babel/plugin-syntax-logical-assignment-operators": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", + "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig==", "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "babel-plugin-transform-es2015-for-of": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-for-of/-/babel-plugin-transform-es2015-for-of-6.23.0.tgz", - "integrity": "sha1-9HyVsrYT3x0+zC/bdXNiPHUkhpE=", + "node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", + "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ==", "dev": true, - "requires": { - "babel-runtime": "^6.22.0" + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "babel-plugin-transform-es2015-function-name": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-function-name/-/babel-plugin-transform-es2015-function-name-6.24.1.tgz", - "integrity": "sha1-g0yJhTvDaxrw86TF26qU/Y6sqos=", + "node_modules/@babel/plugin-syntax-numeric-separator": { + "version": "7.10.4", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", + "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug==", "dev": true, - "requires": { - "babel-helper-function-name": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" + "dependencies": { + "@babel/helper-plugin-utils": "^7.10.4" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "babel-plugin-transform-es2015-literals": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-literals/-/babel-plugin-transform-es2015-literals-6.22.0.tgz", - "integrity": "sha1-T1SgLWzWbPkVKAAZox0xklN3yi4=", + "node_modules/@babel/plugin-syntax-object-rest-spread": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", + "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA==", "dev": true, - "requires": { - "babel-runtime": "^6.22.0" + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "babel-plugin-transform-es2015-modules-amd": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-amd/-/babel-plugin-transform-es2015-modules-amd-6.24.1.tgz", - "integrity": "sha1-Oz5UAXI5hC1tGcMBHEvS8AoA0VQ=", + "node_modules/@babel/plugin-syntax-optional-catch-binding": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", + "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q==", "dev": true, - "requires": { - "babel-plugin-transform-es2015-modules-commonjs": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1" + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "babel-plugin-transform-es2015-modules-commonjs": { - "version": "6.26.2", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-commonjs/-/babel-plugin-transform-es2015-modules-commonjs-6.26.2.tgz", - "integrity": "sha512-CV9ROOHEdrjcwhIaJNBGMBCodN+1cfkwtM1SbUHmvyy35KGT7fohbpOxkE2uLz1o6odKK2Ck/tz47z+VqQfi9Q==", + "node_modules/@babel/plugin-syntax-optional-chaining": { + "version": "7.8.3", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", + "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg==", "dev": true, - "requires": { - "babel-plugin-transform-strict-mode": "^6.24.1", - "babel-runtime": "^6.26.0", - "babel-template": "^6.26.0", - "babel-types": "^6.26.0" + "dependencies": { + "@babel/helper-plugin-utils": "^7.8.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "babel-plugin-transform-es2015-modules-systemjs": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-systemjs/-/babel-plugin-transform-es2015-modules-systemjs-6.24.1.tgz", - "integrity": "sha1-/4mhQrkRmpBhlfXxBuzzBdlAfSM=", + "node_modules/@babel/plugin-syntax-top-level-await": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.12.13.tgz", + "integrity": "sha512-A81F9pDwyS7yM//KwbCSDqy3Uj4NMIurtplxphWxoYtNPov7cJsDkAFNNyVlIZ3jwGycVsurZ+LtOA8gZ376iQ==", "dev": true, - "requires": { - "babel-helper-hoist-variables": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1" + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "babel-plugin-transform-es2015-modules-umd": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-modules-umd/-/babel-plugin-transform-es2015-modules-umd-6.24.1.tgz", - "integrity": "sha1-rJl+YoXNGO1hdq22B9YCNErThGg=", + "node_modules/@babel/plugin-transform-arrow-functions": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-arrow-functions/-/plugin-transform-arrow-functions-7.12.13.tgz", + "integrity": "sha512-tBtuN6qtCTd+iHzVZVOMNp+L04iIJBpqkdY42tWbmjIT5wvR2kx7gxMBsyhQtFzHwBbyGi9h8J8r9HgnOpQHxg==", "dev": true, - "requires": { - "babel-plugin-transform-es2015-modules-amd": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1" + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "babel-plugin-transform-es2015-object-super": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-object-super/-/babel-plugin-transform-es2015-object-super-6.24.1.tgz", - "integrity": "sha1-JM72muIcuDp/hgPa0CH1cusnj40=", + "node_modules/@babel/plugin-transform-async-to-generator": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-async-to-generator/-/plugin-transform-async-to-generator-7.12.13.tgz", + "integrity": "sha512-psM9QHcHaDr+HZpRuJcE1PXESuGWSCcbiGFFhhwfzdbTxaGDVzuVtdNYliAwcRo3GFg0Bc8MmI+AvIGYIJG04A==", "dev": true, - "requires": { - "babel-helper-replace-supers": "^6.24.1", - "babel-runtime": "^6.22.0" + "dependencies": { + "@babel/helper-module-imports": "^7.12.13", + "@babel/helper-plugin-utils": "^7.12.13", + "@babel/helper-remap-async-to-generator": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "babel-plugin-transform-es2015-parameters": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-parameters/-/babel-plugin-transform-es2015-parameters-6.24.1.tgz", - "integrity": "sha1-V6w1GrScrxSpfNE7CfZv3wpiXys=", + "node_modules/@babel/plugin-transform-block-scoped-functions": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoped-functions/-/plugin-transform-block-scoped-functions-7.12.13.tgz", + "integrity": "sha512-zNyFqbc3kI/fVpqwfqkg6RvBgFpC4J18aKKMmv7KdQ/1GgREapSJAykLMVNwfRGO3BtHj3YQZl8kxCXPcVMVeg==", "dev": true, - "requires": { - "babel-helper-call-delegate": "^6.24.1", - "babel-helper-get-function-arity": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-template": "^6.24.1", - "babel-traverse": "^6.24.1", - "babel-types": "^6.24.1" + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "babel-plugin-transform-es2015-shorthand-properties": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-shorthand-properties/-/babel-plugin-transform-es2015-shorthand-properties-6.24.1.tgz", - "integrity": "sha1-JPh11nIch2YbvZmkYi5R8U3jiqA=", + "node_modules/@babel/plugin-transform-block-scoping": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-block-scoping/-/plugin-transform-block-scoping-7.12.13.tgz", + "integrity": "sha512-Pxwe0iqWJX4fOOM2kEZeUuAxHMWb9nK+9oh5d11bsLoB0xMg+mkDpt0eYuDZB7ETrY9bbcVlKUGTOGWy7BHsMQ==", "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "babel-plugin-transform-es2015-spread": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-spread/-/babel-plugin-transform-es2015-spread-6.22.0.tgz", - "integrity": "sha1-1taKmfia7cRTbIGlQujdnxdG+NE=", + "node_modules/@babel/plugin-transform-classes": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-classes/-/plugin-transform-classes-7.12.13.tgz", + "integrity": "sha512-cqZlMlhCC1rVnxE5ZGMtIb896ijL90xppMiuWXcwcOAuFczynpd3KYemb91XFFPi3wJSe/OcrX9lXoowatkkxA==", "dev": true, - "requires": { - "babel-runtime": "^6.22.0" + "dependencies": { + "@babel/helper-annotate-as-pure": "^7.12.13", + "@babel/helper-function-name": "^7.12.13", + "@babel/helper-optimise-call-expression": "^7.12.13", + "@babel/helper-plugin-utils": "^7.12.13", + "@babel/helper-replace-supers": "^7.12.13", + "@babel/helper-split-export-declaration": "^7.12.13", + "globals": "^11.1.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "babel-plugin-transform-es2015-sticky-regex": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-sticky-regex/-/babel-plugin-transform-es2015-sticky-regex-6.24.1.tgz", - "integrity": "sha1-AMHNsaynERLN8M9hJsLta0V8zbw=", + "node_modules/@babel/plugin-transform-computed-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-computed-properties/-/plugin-transform-computed-properties-7.12.13.tgz", + "integrity": "sha512-dDfuROUPGK1mTtLKyDPUavmj2b6kFu82SmgpztBFEO974KMjJT+Ytj3/oWsTUMBmgPcp9J5Pc1SlcAYRpJ2hRA==", "dev": true, - "requires": { - "babel-helper-regex": "^6.24.1", - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "babel-plugin-transform-es2015-template-literals": { - "version": "6.22.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-template-literals/-/babel-plugin-transform-es2015-template-literals-6.22.0.tgz", - "integrity": "sha1-qEs0UPfp+PH2g51taH2oS7EjbY0=", + "node_modules/@babel/plugin-transform-destructuring": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-destructuring/-/plugin-transform-destructuring-7.12.13.tgz", + "integrity": "sha512-Dn83KykIFzjhA3FDPA1z4N+yfF3btDGhjnJwxIj0T43tP0flCujnU8fKgEkf0C1biIpSv9NZegPBQ1J6jYkwvQ==", "dev": true, - "requires": { - "babel-runtime": "^6.22.0" + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "babel-plugin-transform-es2015-typeof-symbol": { - "version": "6.23.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-typeof-symbol/-/babel-plugin-transform-es2015-typeof-symbol-6.23.0.tgz", - "integrity": "sha1-3sCfHN3/lLUqxz1QXITfWdzOs3I=", + "node_modules/@babel/plugin-transform-dotall-regex": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-dotall-regex/-/plugin-transform-dotall-regex-7.12.13.tgz", + "integrity": "sha512-foDrozE65ZFdUC2OfgeOCrEPTxdB3yjqxpXh8CH+ipd9CHd4s/iq81kcUpyH8ACGNEPdFqbtzfgzbT/ZGlbDeQ==", "dev": true, - "requires": { - "babel-runtime": "^6.22.0" + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.12.13", + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "babel-plugin-transform-es2015-unicode-regex": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-es2015-unicode-regex/-/babel-plugin-transform-es2015-unicode-regex-6.24.1.tgz", - "integrity": "sha1-04sS9C6nMj9yk4fxinxa4frrNek=", + "node_modules/@babel/plugin-transform-duplicate-keys": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-duplicate-keys/-/plugin-transform-duplicate-keys-7.12.13.tgz", + "integrity": "sha512-NfADJiiHdhLBW3pulJlJI2NB0t4cci4WTZ8FtdIuNc2+8pslXdPtRRAEWqUY+m9kNOk2eRYbTAOipAxlrOcwwQ==", "dev": true, - "requires": { - "babel-helper-regex": "^6.24.1", - "babel-runtime": "^6.22.0", - "regexpu-core": "^2.0.0" + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "babel-plugin-transform-exponentiation-operator": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-exponentiation-operator/-/babel-plugin-transform-exponentiation-operator-6.24.1.tgz", - "integrity": "sha1-KrDJx/MJj6SJB3cruBP+QejeOg4=", + "node_modules/@babel/plugin-transform-exponentiation-operator": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-exponentiation-operator/-/plugin-transform-exponentiation-operator-7.12.13.tgz", + "integrity": "sha512-fbUelkM1apvqez/yYx1/oICVnGo2KM5s63mhGylrmXUxK/IAXSIf87QIxVfZldWf4QsOafY6vV3bX8aMHSvNrA==", "dev": true, - "requires": { - "babel-helper-builder-binary-assignment-operator-visitor": "^6.24.1", - "babel-plugin-syntax-exponentiation-operator": "^6.8.0", - "babel-runtime": "^6.22.0" + "dependencies": { + "@babel/helper-builder-binary-assignment-operator-visitor": "^7.12.13", + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "babel-plugin-transform-regenerator": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-regenerator/-/babel-plugin-transform-regenerator-6.26.0.tgz", - "integrity": "sha1-4HA2lvveJ/Cj78rPi03KL3s6jy8=", + "node_modules/@babel/plugin-transform-for-of": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-for-of/-/plugin-transform-for-of-7.12.13.tgz", + "integrity": "sha512-xCbdgSzXYmHGyVX3+BsQjcd4hv4vA/FDy7Kc8eOpzKmBBPEOTurt0w5fCRQaGl+GSBORKgJdstQ1rHl4jbNseQ==", "dev": true, - "requires": { - "regenerator-transform": "^0.10.0" - } + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" + } }, - "babel-plugin-transform-strict-mode": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-plugin-transform-strict-mode/-/babel-plugin-transform-strict-mode-6.24.1.tgz", - "integrity": "sha1-1fr3qleKZbvlkc9e2uBKDGcCB1g=", + "node_modules/@babel/plugin-transform-function-name": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-function-name/-/plugin-transform-function-name-7.12.13.tgz", + "integrity": "sha512-6K7gZycG0cmIwwF7uMK/ZqeCikCGVBdyP2J5SKNCXO5EOHcqi+z7Jwf8AmyDNcBgxET8DrEtCt/mPKPyAzXyqQ==", "dev": true, - "requires": { - "babel-runtime": "^6.22.0", - "babel-types": "^6.24.1" - } - }, - "babel-preset-es2015": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-preset-es2015/-/babel-preset-es2015-6.24.1.tgz", - "integrity": "sha1-1EBQ1rwsn+6nAqrzjXJ6AhBTiTk=", - "dev": true, - "requires": { - "babel-plugin-check-es2015-constants": "^6.22.0", - "babel-plugin-transform-es2015-arrow-functions": "^6.22.0", - "babel-plugin-transform-es2015-block-scoped-functions": "^6.22.0", - "babel-plugin-transform-es2015-block-scoping": "^6.24.1", - "babel-plugin-transform-es2015-classes": "^6.24.1", - "babel-plugin-transform-es2015-computed-properties": "^6.24.1", - "babel-plugin-transform-es2015-destructuring": "^6.22.0", - "babel-plugin-transform-es2015-duplicate-keys": "^6.24.1", - "babel-plugin-transform-es2015-for-of": "^6.22.0", - "babel-plugin-transform-es2015-function-name": "^6.24.1", - "babel-plugin-transform-es2015-literals": "^6.22.0", - "babel-plugin-transform-es2015-modules-amd": "^6.24.1", - "babel-plugin-transform-es2015-modules-commonjs": "^6.24.1", - "babel-plugin-transform-es2015-modules-systemjs": "^6.24.1", - "babel-plugin-transform-es2015-modules-umd": "^6.24.1", - "babel-plugin-transform-es2015-object-super": "^6.24.1", - "babel-plugin-transform-es2015-parameters": "^6.24.1", - "babel-plugin-transform-es2015-shorthand-properties": "^6.24.1", - "babel-plugin-transform-es2015-spread": "^6.22.0", - "babel-plugin-transform-es2015-sticky-regex": "^6.24.1", - "babel-plugin-transform-es2015-template-literals": "^6.22.0", - "babel-plugin-transform-es2015-typeof-symbol": "^6.22.0", - "babel-plugin-transform-es2015-unicode-regex": "^6.24.1", - "babel-plugin-transform-regenerator": "^6.24.1" - } - }, - "babel-preset-es2016": { - "version": "6.24.1", - "resolved": "https://registry.npmjs.org/babel-preset-es2016/-/babel-preset-es2016-6.24.1.tgz", - "integrity": "sha1-+QC/k+LrwNJ235uKtZck6/2Vn4s=", - "dev": true, - "requires": { - "babel-plugin-transform-exponentiation-operator": "^6.24.1" - } - }, - "babel-register": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-register/-/babel-register-6.26.0.tgz", - "integrity": "sha1-btAhFz4vy0htestFxgCahW9kcHE=", - "dev": true, - "requires": { - "babel-core": "^6.26.0", - "babel-runtime": "^6.26.0", - "core-js": "^2.5.0", - "home-or-tmp": "^2.0.0", - "lodash": "^4.17.4", - "mkdirp": "^0.5.1", - "source-map-support": "^0.4.15" + "dependencies": { + "@babel/helper-function-name": "^7.12.13", + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "babel-runtime": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-runtime/-/babel-runtime-6.26.0.tgz", - "integrity": "sha1-llxwWGaOgrVde/4E/yM3vItWR/4=", + "node_modules/@babel/plugin-transform-literals": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-literals/-/plugin-transform-literals-7.12.13.tgz", + "integrity": "sha512-FW+WPjSR7hiUxMcKqyNjP05tQ2kmBCdpEpZHY1ARm96tGQCCBvXKnpjILtDplUnJ/eHZ0lALLM+d2lMFSpYJrQ==", "dev": true, - "requires": { - "core-js": "^2.4.0", - "regenerator-runtime": "^0.11.0" + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "babel-template": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-template/-/babel-template-6.26.0.tgz", - "integrity": "sha1-3gPi0WOWsGn0bdn/+FIfsaDjXgI=", + "node_modules/@babel/plugin-transform-member-expression-literals": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-member-expression-literals/-/plugin-transform-member-expression-literals-7.12.13.tgz", + "integrity": "sha512-kxLkOsg8yir4YeEPHLuO2tXP9R/gTjpuTOjshqSpELUN3ZAg2jfDnKUvzzJxObun38sw3wm4Uu69sX/zA7iRvg==", "dev": true, - "requires": { - "babel-runtime": "^6.26.0", - "babel-traverse": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "lodash": "^4.17.4" + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "babel-traverse": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-traverse/-/babel-traverse-6.26.0.tgz", - "integrity": "sha1-RqnL1+3MYsjlwGTi0tjQ9ANXZu4=", + "node_modules/@babel/plugin-transform-modules-amd": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-amd/-/plugin-transform-modules-amd-7.12.13.tgz", + "integrity": "sha512-JHLOU0o81m5UqG0Ulz/fPC68/v+UTuGTWaZBUwpEk1fYQ1D9LfKV6MPn4ttJKqRo5Lm460fkzjLTL4EHvCprvA==", "dev": true, - "requires": { - "babel-code-frame": "^6.26.0", - "babel-messages": "^6.23.0", - "babel-runtime": "^6.26.0", - "babel-types": "^6.26.0", - "babylon": "^6.18.0", - "debug": "^2.6.8", - "globals": "^9.18.0", - "invariant": "^2.2.2", - "lodash": "^4.17.4" + "dependencies": { + "@babel/helper-module-transforms": "^7.12.13", + "@babel/helper-plugin-utils": "^7.12.13", + "babel-plugin-dynamic-import-node": "^2.3.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "babel-types": { - "version": "6.26.0", - "resolved": "https://registry.npmjs.org/babel-types/-/babel-types-6.26.0.tgz", - "integrity": "sha1-o7Bz+Uq0nrb6Vc1lInozQ4BjJJc=", + "node_modules/@babel/plugin-transform-modules-commonjs": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-commonjs/-/plugin-transform-modules-commonjs-7.12.13.tgz", + "integrity": "sha512-OGQoeVXVi1259HjuoDnsQMlMkT9UkZT9TpXAsqWplS/M0N1g3TJAn/ByOCeQu7mfjc5WpSsRU+jV1Hd89ts0kQ==", "dev": true, - "requires": { - "babel-runtime": "^6.26.0", - "esutils": "^2.0.2", - "lodash": "^4.17.4", - "to-fast-properties": "^1.0.3" + "dependencies": { + "@babel/helper-module-transforms": "^7.12.13", + "@babel/helper-plugin-utils": "^7.12.13", + "@babel/helper-simple-access": "^7.12.13", + "babel-plugin-dynamic-import-node": "^2.3.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "babylon": { - "version": "6.18.0", - "resolved": "https://registry.npmjs.org/babylon/-/babylon-6.18.0.tgz", - "integrity": "sha512-q/UEjfGJ2Cm3oKV71DJz9d25TPnq5rhBVL2Q4fA5wcC3jcrdn7+SssEybFIxwAvvP+YCsCYNKughoF33GxgycQ==", - "dev": true - }, - "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" - } - } + "node_modules/@babel/plugin-transform-modules-systemjs": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-systemjs/-/plugin-transform-modules-systemjs-7.12.13.tgz", + "integrity": "sha512-aHfVjhZ8QekaNF/5aNdStCGzwTbU7SI5hUybBKlMzqIMC7w7Ho8hx5a4R/DkTHfRfLwHGGxSpFt9BfxKCoXKoA==", + "dev": true, + "dependencies": { + "@babel/helper-hoist-variables": "^7.12.13", + "@babel/helper-module-transforms": "^7.12.13", + "@babel/helper-plugin-utils": "^7.12.13", + "@babel/helper-validator-identifier": "^7.12.11", + "babel-plugin-dynamic-import-node": "^2.3.3" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "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=", + "node_modules/@babel/plugin-transform-modules-umd": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-modules-umd/-/plugin-transform-modules-umd-7.12.13.tgz", + "integrity": "sha512-BgZndyABRML4z6ibpi7Z98m4EVLFI9tVsZDADC14AElFaNHHBcJIovflJ6wtCqFxwy2YJ1tJhGRsr0yLPKoN+w==", "dev": true, - "requires": { - "tweetnacl": "^0.14.3" + "dependencies": { + "@babel/helper-module-transforms": "^7.12.13", + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "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 - }, - "binary-extensions": { - "version": "1.13.1", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-1.13.1.tgz", - "integrity": "sha512-Un7MIEDdUC5gNpcGDV97op1Ywk748MpHcFTHoYs6qnj1Z3j7I53VG3nwZhKzoBZmbdRNnb6WRdFlwl7tSDuZGw==", - "dev": true - }, - "bindings": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", - "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "node_modules/@babel/plugin-transform-named-capturing-groups-regex": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-named-capturing-groups-regex/-/plugin-transform-named-capturing-groups-regex-7.12.13.tgz", + "integrity": "sha512-Xsm8P2hr5hAxyYblrfACXpQKdQbx4m2df9/ZZSQ8MAhsadw06+jW7s9zsSw6he+mJZXRlVMyEnVktJo4zjk1WA==", "dev": true, - "requires": { - "file-uri-to-path": "1.0.0" + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0" } }, - "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=", + "node_modules/@babel/plugin-transform-new-target": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-new-target/-/plugin-transform-new-target-7.12.13.tgz", + "integrity": "sha512-/KY2hbLxrG5GTQ9zzZSc3xWiOy379pIETEhbtzwZcw9rvuaVV4Fqy7BYGYOWZnaoXIQYbbJ0ziXLa/sKcGCYEQ==", "dev": true, - "requires": { - "inherits": "~2.0.0" + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.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==", + "node_modules/@babel/plugin-transform-object-super": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-object-super/-/plugin-transform-object-super-7.12.13.tgz", + "integrity": "sha512-JzYIcj3XtYspZDV8j9ulnoMPZZnF/Cj0LUxPOjR89BdBVx+zYJI9MdMIlUZjbXDX+6YVeS6I3e8op+qQ3BYBoQ==", "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 - }, - "qs": { - "version": "6.7.0", - "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", - "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==", - "dev": true - } + "@babel/helper-plugin-utils": "^7.12.13", + "@babel/helper-replace-supers": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "bonjour": { - "version": "3.5.0", - "resolved": "https://registry.npmjs.org/bonjour/-/bonjour-3.5.0.tgz", - "integrity": "sha1-jokKGD2O6aI5OzhExpGkK897yfU=", + "node_modules/@babel/plugin-transform-parameters": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-parameters/-/plugin-transform-parameters-7.12.13.tgz", + "integrity": "sha512-e7QqwZalNiBRHCpJg/P8s/VJeSRYgmtWySs1JwvfwPqhBbiWfOcHDKdeAi6oAyIimoKWBlwc8oTgbZHdhCoVZA==", "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": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "node_modules/@babel/plugin-transform-property-literals": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-property-literals/-/plugin-transform-property-literals-7.12.13.tgz", + "integrity": "sha512-nqVigwVan+lR+g8Fj8Exl0UQX2kymtjcWfMOYM1vTYEKujeyv2SkMgazf2qNcK7l4SDiKyTA/nHCPqL4e2zo1A==", "dev": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "braces": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", - "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "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" - } - } + "node_modules/@babel/plugin-transform-regenerator": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-regenerator/-/plugin-transform-regenerator-7.12.13.tgz", + "integrity": "sha512-lxb2ZAvSLyJ2PEe47hoGWPmW22v7CtSl9jW8mingV4H2sEX/JOcrAj2nPuGWi56ERUm2bUpjKzONAuT6HCn2EA==", + "dev": true, + "dependencies": { + "regenerator-transform": "^0.14.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "brorand": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz", - "integrity": "sha1-EsJe/kCkXjwyPrhnWgoM5XsiNx8=", - "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" + "node_modules/@babel/plugin-transform-regenerator/node_modules/regenerator-transform": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.14.5.tgz", + "integrity": "sha512-eOf6vka5IO151Jfsw2NO9WpGX58W6wWmefK3I1zEGr0lOD0u8rwPaNqQL1aRxUaxLeKO3ArNh3VYg1KbaD+FFw==", + "dev": true, + "dependencies": { + "@babel/runtime": "^7.8.4" } }, - "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==", + "node_modules/@babel/plugin-transform-reserved-words": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-reserved-words/-/plugin-transform-reserved-words-7.12.13.tgz", + "integrity": "sha512-xhUPzDXxZN1QfiOy/I5tyye+TRz6lA7z6xaT4CLOjPRMVg1ldRf0LHw0TDBpYL4vG78556WuHdyO9oi5UmzZBg==", "dev": true, - "requires": { - "browserify-aes": "^1.0.4", - "browserify-des": "^1.0.0", - "evp_bytestokey": "^1.0.0" + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.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==", + "node_modules/@babel/plugin-transform-shorthand-properties": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-shorthand-properties/-/plugin-transform-shorthand-properties-7.12.13.tgz", + "integrity": "sha512-xpL49pqPnLtf0tVluuqvzWIgLEhuPpZzvs2yabUHSKRNlN7ScYU7aMlmavOeyXJZKgZKQRBlh8rHbKiJDraTSw==", "dev": true, - "requires": { - "cipher-base": "^1.0.1", - "des.js": "^1.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "browserify-rsa": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/browserify-rsa/-/browserify-rsa-4.0.1.tgz", - "integrity": "sha1-IeCr+vbyApzy+vsTNWenAdQTVSQ=", + "node_modules/@babel/plugin-transform-spread": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-spread/-/plugin-transform-spread-7.12.13.tgz", + "integrity": "sha512-dUCrqPIowjqk5pXsx1zPftSq4sT0aCeZVAxhdgs3AMgyaDmoUT0G+5h3Dzja27t76aUEIJWlFgPJqJ/d4dbTtg==", "dev": true, - "requires": { - "bn.js": "^4.1.0", - "randombytes": "^2.0.1" + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13", + "@babel/helper-skip-transparent-expression-wrappers": "^7.12.1" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "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" + "node_modules/@babel/plugin-transform-sticky-regex": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-sticky-regex/-/plugin-transform-sticky-regex-7.12.13.tgz", + "integrity": "sha512-Jc3JSaaWT8+fr7GRvQP02fKDsYk4K/lYwWq38r/UGfaxo89ajud321NH28KRQ7xy1Ybc0VUE5Pz8psjNNDUglg==", + "dev": true, + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.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==", + "node_modules/@babel/plugin-transform-template-literals": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-template-literals/-/plugin-transform-template-literals-7.12.13.tgz", + "integrity": "sha512-arIKlWYUgmNsF28EyfmiQHJLJFlAJNYkuQO10jL46ggjBpeb2re1P9K9YGxNJB45BqTbaslVysXDYm/g3sN/Qg==", "dev": true, - "requires": { - "pako": "~1.0.5" + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "browserslist": { - "version": "1.7.7", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-1.7.7.tgz", - "integrity": "sha1-C9dnBCWL6CmyOYu1Dkti0aFmsLk=", + "node_modules/@babel/plugin-transform-typeof-symbol": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-typeof-symbol/-/plugin-transform-typeof-symbol-7.12.13.tgz", + "integrity": "sha512-eKv/LmUJpMnu4npgfvs3LiHhJua5fo/CysENxa45YCQXZwKnGCQKAg87bvoqSW1fFT+HA32l03Qxsm8ouTY3ZQ==", "dev": true, - "requires": { - "caniuse-db": "^1.0.30000639", - "electron-to-chromium": "^1.2.7" + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "buffer": { - "version": "4.9.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-4.9.1.tgz", - "integrity": "sha1-bRu2AbB6TvztlwlBMgkwJ8lbwpg=", + "node_modules/@babel/plugin-transform-unicode-escapes": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-escapes/-/plugin-transform-unicode-escapes-7.12.13.tgz", + "integrity": "sha512-0bHEkdwJ/sN/ikBHfSmOXPypN/beiGqjo+o4/5K+vxEFNPRPdImhviPakMKG4x96l85emoa0Z6cDflsdBusZbw==", "dev": true, - "requires": { - "base64-js": "^1.0.2", - "ieee754": "^1.1.4", - "isarray": "^1.0.0" + "dependencies": { + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "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 - }, - "bufferstreams": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/bufferstreams/-/bufferstreams-1.1.3.tgz", - "integrity": "sha512-HaJnVuslRF4g2kSDeyl++AaVizoitCpL9PglzCYwy0uHHyvWerfvEb8jWmYbF1z4kiVFolGomnxSGl+GUQp2jg==", + "node_modules/@babel/plugin-transform-unicode-regex": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/plugin-transform-unicode-regex/-/plugin-transform-unicode-regex-7.12.13.tgz", + "integrity": "sha512-mDRzSNY7/zopwisPZ5kM9XKCfhchqIYwAKRERtEnhYscZB79VRekuRSoYbN0+KVe3y8+q1h6A4svXtP7N+UoCA==", "dev": true, - "requires": { - "readable-stream": "^2.0.2" + "dependencies": { + "@babel/helper-create-regexp-features-plugin": "^7.12.13", + "@babel/helper-plugin-utils": "^7.12.13" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "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=", - "dev": true - }, - "bytes": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", - "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==", + "node_modules/@babel/preset-env": { + "version": "7.12.16", + "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.12.16.tgz", + "integrity": "sha512-BXCAXy8RE/TzX416pD2hsVdkWo0G+tYd16pwnRV4Sc0fRwTLRS/Ssv8G5RLXUGQv7g4FG7TXkdDJxCjQ5I+Zjg==", "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": { - "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" - } - }, - "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 - } + "dependencies": { + "@babel/compat-data": "^7.12.13", + "@babel/helper-compilation-targets": "^7.12.16", + "@babel/helper-module-imports": "^7.12.13", + "@babel/helper-plugin-utils": "^7.12.13", + "@babel/helper-validator-option": "^7.12.16", + "@babel/plugin-proposal-async-generator-functions": "^7.12.13", + "@babel/plugin-proposal-class-properties": "^7.12.13", + "@babel/plugin-proposal-dynamic-import": "^7.12.16", + "@babel/plugin-proposal-export-namespace-from": "^7.12.13", + "@babel/plugin-proposal-json-strings": "^7.12.13", + "@babel/plugin-proposal-logical-assignment-operators": "^7.12.13", + "@babel/plugin-proposal-nullish-coalescing-operator": "^7.12.13", + "@babel/plugin-proposal-numeric-separator": "^7.12.13", + "@babel/plugin-proposal-object-rest-spread": "^7.12.13", + "@babel/plugin-proposal-optional-catch-binding": "^7.12.13", + "@babel/plugin-proposal-optional-chaining": "^7.12.16", + "@babel/plugin-proposal-private-methods": "^7.12.13", + "@babel/plugin-proposal-unicode-property-regex": "^7.12.13", + "@babel/plugin-syntax-async-generators": "^7.8.0", + "@babel/plugin-syntax-class-properties": "^7.12.13", + "@babel/plugin-syntax-dynamic-import": "^7.8.0", + "@babel/plugin-syntax-export-namespace-from": "^7.8.3", + "@babel/plugin-syntax-json-strings": "^7.8.0", + "@babel/plugin-syntax-logical-assignment-operators": "^7.10.4", + "@babel/plugin-syntax-nullish-coalescing-operator": "^7.8.0", + "@babel/plugin-syntax-numeric-separator": "^7.10.4", + "@babel/plugin-syntax-object-rest-spread": "^7.8.0", + "@babel/plugin-syntax-optional-catch-binding": "^7.8.0", + "@babel/plugin-syntax-optional-chaining": "^7.8.0", + "@babel/plugin-syntax-top-level-await": "^7.12.13", + "@babel/plugin-transform-arrow-functions": "^7.12.13", + "@babel/plugin-transform-async-to-generator": "^7.12.13", + "@babel/plugin-transform-block-scoped-functions": "^7.12.13", + "@babel/plugin-transform-block-scoping": "^7.12.13", + "@babel/plugin-transform-classes": "^7.12.13", + "@babel/plugin-transform-computed-properties": "^7.12.13", + "@babel/plugin-transform-destructuring": "^7.12.13", + "@babel/plugin-transform-dotall-regex": "^7.12.13", + "@babel/plugin-transform-duplicate-keys": "^7.12.13", + "@babel/plugin-transform-exponentiation-operator": "^7.12.13", + "@babel/plugin-transform-for-of": "^7.12.13", + "@babel/plugin-transform-function-name": "^7.12.13", + "@babel/plugin-transform-literals": "^7.12.13", + "@babel/plugin-transform-member-expression-literals": "^7.12.13", + "@babel/plugin-transform-modules-amd": "^7.12.13", + "@babel/plugin-transform-modules-commonjs": "^7.12.13", + "@babel/plugin-transform-modules-systemjs": "^7.12.13", + "@babel/plugin-transform-modules-umd": "^7.12.13", + "@babel/plugin-transform-named-capturing-groups-regex": "^7.12.13", + "@babel/plugin-transform-new-target": "^7.12.13", + "@babel/plugin-transform-object-super": "^7.12.13", + "@babel/plugin-transform-parameters": "^7.12.13", + "@babel/plugin-transform-property-literals": "^7.12.13", + "@babel/plugin-transform-regenerator": "^7.12.13", + "@babel/plugin-transform-reserved-words": "^7.12.13", + "@babel/plugin-transform-shorthand-properties": "^7.12.13", + "@babel/plugin-transform-spread": "^7.12.13", + "@babel/plugin-transform-sticky-regex": "^7.12.13", + "@babel/plugin-transform-template-literals": "^7.12.13", + "@babel/plugin-transform-typeof-symbol": "^7.12.13", + "@babel/plugin-transform-unicode-escapes": "^7.12.13", + "@babel/plugin-transform-unicode-regex": "^7.12.13", + "@babel/preset-modules": "^0.1.3", + "@babel/types": "^7.12.13", + "core-js-compat": "^3.8.0", + "semver": "^5.5.0" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "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" - } - }, - "caller-path": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-0.1.0.tgz", - "integrity": "sha1-lAhe9jWB7NPaqSREqP6U6CV3dR8=", + "node_modules/@babel/preset-modules": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/@babel/preset-modules/-/preset-modules-0.1.4.tgz", + "integrity": "sha512-J36NhwnfdzpmH41M1DrnkkgAqhZaqr/NBdPfQ677mLzlaXo+oDiv1deyCDtgAhz8p328otdob0Du7+xgHGZbKg==", "dev": true, - "requires": { - "callsites": "^0.2.0" + "dependencies": { + "@babel/helper-plugin-utils": "^7.0.0", + "@babel/plugin-proposal-unicode-property-regex": "^7.4.4", + "@babel/plugin-transform-dotall-regex": "^7.4.4", + "@babel/types": "^7.4.4", + "esutils": "^2.0.2" + }, + "peerDependencies": { + "@babel/core": "^7.0.0-0" } }, - "callsites": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/callsites/-/callsites-0.2.0.tgz", - "integrity": "sha1-r6uWJikQp/M8GaV3WCXGnzTjUMo=", - "dev": true + "node_modules/@babel/runtime": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.12.13.tgz", + "integrity": "sha512-8+3UMPBrjFa/6TtKi/7sehPKqfAm4g6K+YQjyyFOLUTxzOngcRZTlAVY8sc2CORJYqdHQY8gRPHmn+qo15rCBw==", + "dev": true, + "dependencies": { + "regenerator-runtime": "^0.13.4" + } }, - "camelcase": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - "dev": true + "node_modules/@babel/template": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.12.13.tgz", + "integrity": "sha512-/7xxiGA57xMo/P2GVvdEumr8ONhFOhfgq2ihK3h1e6THqzTAkHbkXgB0xI9yeTfIUoH3+oAeHhqm/I43OTbbjA==", + "dev": true, + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@babel/parser": "^7.12.13", + "@babel/types": "^7.12.13" + } }, - "caniuse-api": { - "version": "1.6.1", - "resolved": "https://registry.npmjs.org/caniuse-api/-/caniuse-api-1.6.1.tgz", - "integrity": "sha1-tTTnxzTE+B7F++isoq0kNUuWLGw=", + "node_modules/@babel/traverse": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.12.13.tgz", + "integrity": "sha512-3Zb4w7eE/OslI0fTp8c7b286/cQps3+vdLW3UcwC8VSJC6GbKn55aeVVu2QJNuCDoeKyptLOFrPq8WqZZBodyA==", "dev": true, - "requires": { - "browserslist": "^1.3.6", - "caniuse-db": "^1.0.30000529", - "lodash.memoize": "^4.1.2", - "lodash.uniq": "^4.5.0" + "dependencies": { + "@babel/code-frame": "^7.12.13", + "@babel/generator": "^7.12.13", + "@babel/helper-function-name": "^7.12.13", + "@babel/helper-split-export-declaration": "^7.12.13", + "@babel/parser": "^7.12.13", + "@babel/types": "^7.12.13", + "debug": "^4.1.0", + "globals": "^11.1.0", + "lodash": "^4.17.19" } }, - "caniuse-db": { - "version": "1.0.30000971", - "resolved": "https://registry.npmjs.org/caniuse-db/-/caniuse-db-1.0.30000971.tgz", - "integrity": "sha512-ubSZfYXO2KMYtCVmDez82mjodeZa+mBYWAnBMAmFBPAn4C2PY4SD0eC/diYQD4Rj1K+WNdp0vr0JDtm0SQ6GNg==", - "dev": true + "node_modules/@babel/traverse/node_modules/debug": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } }, - "caseless": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", - "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=", + "node_modules/@babel/traverse/node_modules/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 }, - "chalk": { - "version": "2.4.2", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", - "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "node_modules/@babel/types": { + "version": "7.12.13", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.12.13.tgz", + "integrity": "sha512-oKrdZTld2im1z8bDwTOQvUbxKwE+854zc16qWZQlcTqMN00pWxHQ4ZeOq0yDMnisOpRykH2/5Qqcrk/OlbAjiQ==", "dev": true, - "requires": { - "ansi-styles": "^3.2.1", - "escape-string-regexp": "^1.0.5", - "supports-color": "^5.3.0" + "dependencies": { + "@babel/helper-validator-identifier": "^7.12.11", + "lodash": "^4.17.19", + "to-fast-properties": "^2.0.0" } }, - "chardet": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.4.2.tgz", - "integrity": "sha1-tUc7M9yXxCTl2Y3IfVXU2KKci/I=", - "dev": true + "node_modules/@babel/types/node_modules/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, + "engines": { + "node": ">=4" + } }, - "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" - }, - "dependencies": { - "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" - } - } + "node_modules/@discoveryjs/json-ext": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/@discoveryjs/json-ext/-/json-ext-0.5.2.tgz", + "integrity": "sha512-HyYEUDeIj5rRQU2Hk5HTB2uHsbRQpF70nvMhVzi+VJR0X+xNEhjPui4/kBf3VeH/wqD28PT4sVOm8qqLjBrSZg==", + "dev": true, + "engines": { + "node": ">=10.0.0" } }, - "chownr": { + "node_modules/@gar/promisify": { "version": "1.1.2", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.2.tgz", - "integrity": "sha512-GkfeAQh+QNy3wquu9oIZr6SS5x7wGdSgNQvD10X3r+AZr1Oys22HW8kAmDMvNg2+Dm0TeGaEuO8gFwdBXxwO8A==", + "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.2.tgz", + "integrity": "sha512-82cpyJyKRoQoRi+14ibCeGPu0CwypgtBAdBhq1WfvagpCZNKqwXbKwXllYSMG91DhmG4jt9gN8eP6lGOtozuaw==", "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==", + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.4.tgz", + "integrity": "sha512-33g3pMJk3bg5nXbL/+CY6I2eJDzZAni49PfJnL5fghPTggPvBd/pFNSgJsdAgWptuFu7qq/ERvOYFlhvsLTCKA==", "dev": true, - "requires": { - "tslib": "^1.9.0" + "dependencies": { + "@nodelib/fs.stat": "2.0.4", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" } }, - "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==", + "node_modules/@nodelib/fs.stat": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.4.tgz", + "integrity": "sha512-IYlHJA0clt2+Vg7bccq+TzRdJvv19c2INqBSsoOLp1je7xjtr7J26+WXR72MCdvU9q1qTzIWDfhMf+DRvQJK4Q==", "dev": true, - "requires": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "engines": { + "node": ">= 8" } }, - "circular-json": { - "version": "0.3.3", - "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.3.3.tgz", - "integrity": "sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A==", - "dev": true - }, - "clap": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/clap/-/clap-1.2.3.tgz", - "integrity": "sha512-4CoL/A3hf90V3VIEjeuhSvlGFEHKzOz+Wfc2IVZc+FaUgU0ZQafJTP49fvnULipOPcAfqhyI2duwQyns6xqjYA==", + "node_modules/@nodelib/fs.walk": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.6.tgz", + "integrity": "sha512-8Broas6vTtW4GIXTAHDoE32hnN2M5ykgCpWGbuXHQ15vEMqr23pB76e/GZcYsZCHALv50ktd24qhEyKr6wBtow==", "dev": true, - "requires": { - "chalk": "^1.1.3" + "dependencies": { + "@nodelib/fs.scandir": "2.1.4", + "fastq": "^1.6.0" }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@npmcli/fs": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-1.1.0.tgz", + "integrity": "sha512-VhP1qZLXcrXRIaPoqb4YA55JQxLNF3jNR4T55IdOJa3+IFJKNYHtPvtXx8slmeMavj37vCzCfrqQM1vWLsYKLA==", + "deprecated": "this version had an improper engines field added, update to 1.1.1", + "dev": true, "dependencies": { - "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": "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" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, + "@gar/promisify": "^1.0.1", + "semver": "^7.3.5" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16" + } + }, + "node_modules/@npmcli/fs/node_modules/semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@npmcli/move-file": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-1.1.2.tgz", + "integrity": "sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg==", + "deprecated": "This functionality has been moved to @npmcli/fs", + "dev": true, + "dependencies": { + "mkdirp": "^1.0.4", + "rimraf": "^3.0.2" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@npmcli/move-file/node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true, + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@npmcli/move-file/node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@polka/url": { + "version": "1.0.0-next.11", + "resolved": "https://registry.npmjs.org/@polka/url/-/url-1.0.0-next.11.tgz", + "integrity": "sha512-3NsZsJIA/22P3QUyrEDNA2D133H4j224twJrdipXN38dpnIOzAbUDtOwkcJ5pXmn75w7LSQDjA4tO9dm1XlqlA==", + "dev": true + }, + "node_modules/@tootallnate/once": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", + "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", + "dev": true, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@types/eslint": { + "version": "7.2.6", + "resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-7.2.6.tgz", + "integrity": "sha512-I+1sYH+NPQ3/tVqCeUSBwTE/0heyvtXqpIopUUArlBm0Kpocb8FbMa3AZ/ASKIFpN3rnEx932TTXDbt9OXsNDw==", + "dev": true, + "dependencies": { + "@types/estree": "*", + "@types/json-schema": "*" + } + }, + "node_modules/@types/eslint-scope": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/@types/eslint-scope/-/eslint-scope-3.7.0.tgz", + "integrity": "sha512-O/ql2+rrCUe2W2rs7wMR+GqPRcgB6UiqN5RhrR5xruFlY7l9YLMn0ZkDzjoHLeiFkR8MCQZVudUuuvQ2BLC9Qw==", + "dev": true, + "dependencies": { + "@types/eslint": "*", + "@types/estree": "*" + } + }, + "node_modules/@types/estree": { + "version": "0.0.46", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-0.0.46.tgz", + "integrity": "sha512-laIjwTQaD+5DukBZaygQ79K1Z0jb1bPEMRrkXSLjtCcZm+abyp5YbrqpSLzD42FwWW6gK/aS4NYpJ804nG2brg==", + "dev": true + }, + "node_modules/@types/http-proxy": { + "version": "1.17.5", + "resolved": "https://registry.npmjs.org/@types/http-proxy/-/http-proxy-1.17.5.tgz", + "integrity": "sha512-GNkDE7bTv6Sf8JbV2GksknKOsk7OznNYHSdrtvPJXO0qJ9odZig6IZKUi5RFGi6d1bf6dgIAe4uXi3DBc7069Q==", + "dev": true, + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/json-schema": { + "version": "7.0.7", + "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.7.tgz", + "integrity": "sha512-cxWFQVseBm6O9Gbw1IWb8r6OS4OhSt3hPZLkFApLjM8TEXROBuQGLAH2i2gZpcXdLBIrpXuTDhH7Vbm1iXmNGA==", + "dev": true + }, + "node_modules/@types/json5": { + "version": "0.0.29", + "resolved": "https://registry.npmjs.org/@types/json5/-/json5-0.0.29.tgz", + "integrity": "sha1-7ihweulOEdK4J7y+UnC86n8+ce4=", + "dev": true + }, + "node_modules/@types/node": { + "version": "14.14.2", + "resolved": "https://registry.npmjs.org/@types/node/-/node-14.14.2.tgz", + "integrity": "sha512-jeYJU2kl7hL9U5xuI/BhKPZ4vqGM/OmK6whiFAXVhlstzZhVamWhDSmHyGLIp+RVyuF9/d0dqr2P85aFj4BvJg==", + "dev": true + }, + "node_modules/@types/retry": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/@types/retry/-/retry-0.12.0.tgz", + "integrity": "sha512-wWKOClTTiizcZhXnPY4wikVAwmdYHp8q6DmC+EJUzAMsycb7HB32Kh9RN4+0gExjmPmZSAQjgURXIGATPegAvA==", + "dev": true + }, + "node_modules/@vusion/webfonts-generator": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/@vusion/webfonts-generator/-/webfonts-generator-0.8.0.tgz", + "integrity": "sha512-1q17CF6umBEjlAtO37TzRw3aOCCAyFX+T4HPG70BmM6qx8s6H4/LQOa8eHFZq/oiMuMyd0FehKgUt/pqYlIMWA==", + "dev": true, + "dependencies": { + "handlebars": "^4.0.11", + "mkdirp": "^1.0.4", + "q": "^1.1.2", + "svg2ttf": "^6.0.3", + "svgicons2svgfont": "^10.0.4", + "ttf2eot": "^3.0.0", + "ttf2woff": "^3.0.0", + "ttf2woff2": "^4.0.4", + "underscore": "^1.9.1", + "url-join": "^4.0.0" + } + }, + "node_modules/@vusion/webfonts-generator/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/@vusion/webfonts-generator/node_modules/are-we-there-yet": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz", + "integrity": "sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw==", + "dev": true, + "dependencies": { + "delegates": "^1.0.0", + "readable-stream": "^3.6.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@vusion/webfonts-generator/node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "node_modules/@vusion/webfonts-generator/node_modules/bufferstreams": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bufferstreams/-/bufferstreams-3.0.0.tgz", + "integrity": "sha512-Qg0ggJUWJq90vtg4lDsGN9CDWvzBMQxhiEkSOD/sJfYt6BLect3eV1/S6K7SCSKJ34n60rf6U5eUPmQENVE4UA==", + "dev": true, + "dependencies": { + "readable-stream": "^3.4.0" + }, + "engines": { + "node": ">=8.12.0" + } + }, + "node_modules/@vusion/webfonts-generator/node_modules/commander": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", + "dev": true, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@vusion/webfonts-generator/node_modules/cubic2quad": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/cubic2quad/-/cubic2quad-1.2.1.tgz", + "integrity": "sha512-wT5Y7mO8abrV16gnssKdmIhIbA9wSkeMzhh27jAguKrV82i24wER0vL5TGhUJ9dbJNDcigoRZ0IAHFEEEI4THQ==", + "dev": true + }, + "node_modules/@vusion/webfonts-generator/node_modules/gauge": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.0.tgz", + "integrity": "sha512-F8sU45yQpjQjxKkm1UOAhf0U/O0aFt//Fl7hsrNVto+patMHjs7dPI9mFOGUKbhrgKm0S3EjW3scMFuQmWSROw==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1", + "aproba": "^1.0.3 || ^2.0.0", + "color-support": "^1.1.2", + "console-control-strings": "^1.0.0", + "has-unicode": "^2.0.1", + "signal-exit": "^3.0.0", + "string-width": "^4.2.3", + "strip-ansi": "^6.0.1", + "wide-align": "^1.1.2" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16" + } + }, + "node_modules/@vusion/webfonts-generator/node_modules/glob": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz", + "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==", + "dev": true, + "dependencies": { + "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" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@vusion/webfonts-generator/node_modules/graceful-fs": { + "version": "4.2.8", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.8.tgz", + "integrity": "sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg==", + "dev": true + }, + "node_modules/@vusion/webfonts-generator/node_modules/is-fullwidth-code-point": { + "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, + "engines": { + "node": ">=8" + } + }, + "node_modules/@vusion/webfonts-generator/node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true, + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@vusion/webfonts-generator/node_modules/nan": { + "version": "2.15.0", + "resolved": "https://registry.npmjs.org/nan/-/nan-2.15.0.tgz", + "integrity": "sha512-8ZtvEnA2c5aYCZYd1cvgdnU6cqwixRoYg70xPLWUws5ORTa/lnw+u4amixRS/Ac5U5mQVgp9pnlSUnbNWFaWZQ==", + "dev": true + }, + "node_modules/@vusion/webfonts-generator/node_modules/node-gyp": { + "version": "8.4.1", + "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-8.4.1.tgz", + "integrity": "sha512-olTJRgUtAb/hOXG0E93wZDs5YiJlgbXxTwQAFHyNlRsXQnYzUaF2aGgujZbw+hR8aF4ZG/rST57bWMWD16jr9w==", + "dev": true, + "dependencies": { + "env-paths": "^2.2.0", + "glob": "^7.1.4", + "graceful-fs": "^4.2.6", + "make-fetch-happen": "^9.1.0", + "nopt": "^5.0.0", + "npmlog": "^6.0.0", + "rimraf": "^3.0.2", + "semver": "^7.3.5", + "tar": "^6.1.2", + "which": "^2.0.2" + }, + "bin": { + "node-gyp": "bin/node-gyp.js" + }, + "engines": { + "node": ">= 10.12.0" + } + }, + "node_modules/@vusion/webfonts-generator/node_modules/nopt": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", + "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", + "dev": true, + "dependencies": { + "abbrev": "1" + }, + "bin": { + "nopt": "bin/nopt.js" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/@vusion/webfonts-generator/node_modules/npmlog": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.0.tgz", + "integrity": "sha512-03ppFRGlsyUaQFbGC2C8QWJN/C/K7PsfyD9aQdhVKAQIH4sQBc8WASqFBP7O+Ut4d2oo5LoeoboB3cGdBZSp6Q==", + "dev": true, + "dependencies": { + "are-we-there-yet": "^2.0.0", + "console-control-strings": "^1.1.0", + "gauge": "^4.0.0", + "set-blocking": "^2.0.0" + }, + "engines": { + "node": "^12.13.0 || ^14.15.0 || >=16" + } + }, + "node_modules/@vusion/webfonts-generator/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dev": true, + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/@vusion/webfonts-generator/node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@vusion/webfonts-generator/node_modules/semver": { + "version": "7.3.5", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.5.tgz", + "integrity": "sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ==", + "dev": true, + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@vusion/webfonts-generator/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", + "dev": true, + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@vusion/webfonts-generator/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dev": true, + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/@vusion/webfonts-generator/node_modules/svg-pathdata": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/svg-pathdata/-/svg-pathdata-6.0.3.tgz", + "integrity": "sha512-qsjeeq5YjBZ5eMdFuUa4ZosMLxgr5RZ+F+Y1OrDhuOCEInRMA3x74XdBtggJcj9kOeInz0WE+LgCPDkZFlBYJw==", + "dev": true, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@vusion/webfonts-generator/node_modules/svg2ttf": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/svg2ttf/-/svg2ttf-6.0.3.tgz", + "integrity": "sha512-CgqMyZrbOPpc+WqH7aga4JWkDPso23EgypLsbQ6gN3uoPWwwiLjXvzgrwGADBExvCRJrWFzAeK1bSoSpE7ixSQ==", + "dev": true, + "dependencies": { + "@xmldom/xmldom": "^0.7.2", + "argparse": "^2.0.1", + "cubic2quad": "^1.2.1", + "lodash": "^4.17.10", + "microbuffer": "^1.0.0", + "svgpath": "^2.1.5" + }, + "bin": { + "svg2ttf": "svg2ttf.js" + } + }, + "node_modules/@vusion/webfonts-generator/node_modules/svgicons2svgfont": { + "version": "10.0.5", + "resolved": "https://registry.npmjs.org/svgicons2svgfont/-/svgicons2svgfont-10.0.5.tgz", + "integrity": "sha512-mkP/i0SW5jah4bwIOBpZvrTwJY7rOB3QIIMb/1QwIvJSOScmtAagJTrN3FwHnK1Cu4gw6LgemsefS1Oi0lqkkQ==", + "dev": true, + "dependencies": { + "commander": "^7.2.0", + "geometry-interfaces": "^1.1.4", + "glob": "^7.1.6", + "neatequal": "^1.0.0", + "readable-stream": "^3.4.0", + "sax": "^1.2.4", + "svg-pathdata": "^6.0.0" + }, + "bin": { + "svgicons2svgfont": "bin/svgicons2svgfont.js" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/@vusion/webfonts-generator/node_modules/tar": { + "version": "6.1.11", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz", + "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==", + "dev": true, + "dependencies": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^3.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/@vusion/webfonts-generator/node_modules/ttf2eot": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ttf2eot/-/ttf2eot-3.0.0.tgz", + "integrity": "sha512-Y/ymhhYr/lLkf66BnLQBs3LjttPDE+1BJcFHq/oJN5SnZTacMWVdPfGLB5eIVnC2iT9gZ2ls/Bre2zbKq6hNsA==", + "dev": true, + "dependencies": { + "argparse": "^2.0.1" + }, + "bin": { + "ttf2eot": "ttf2eot.js" + } + }, + "node_modules/@vusion/webfonts-generator/node_modules/ttf2woff": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ttf2woff/-/ttf2woff-3.0.0.tgz", + "integrity": "sha512-OvmFcj70PhmAsVQKfC15XoKH55cRWuaRzvr2fpTNhTNer6JBpG8n6vOhRrIgxMjcikyYt88xqYXMMVapJ4Rjvg==", + "dev": true, + "dependencies": { + "argparse": "^2.0.1", + "pako": "^1.0.0" + }, + "bin": { + "ttf2woff": "ttf2woff.js" + } + }, + "node_modules/@vusion/webfonts-generator/node_modules/ttf2woff2": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/ttf2woff2/-/ttf2woff2-4.0.4.tgz", + "integrity": "sha512-pdt/q89D6VmWToUkiwrUo/OrQtmHGr2iBl3GQriHE6xq0cnteb8gJF8UitOdXmFTX8ajKgb3HMGKpKAsCJM61g==", + "dev": true, + "hasInstallScript": true, + "dependencies": { + "bindings": "^1.5.0", + "bufferstreams": "^3.0.0", + "nan": "^2.14.2", + "node-gyp": "^8.1.0" + }, + "bin": { + "ttf2woff2": "bin/ttf2woff2.js" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/@vusion/webfonts-generator/node_modules/url-join": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/url-join/-/url-join-4.0.1.tgz", + "integrity": "sha512-jk1+QP6ZJqyOiuEI9AEWQfju/nB2Pw466kbA0LEZljHwKeMgd9WrAEgEGxjPDD2+TNbbb37rTyhEfrCXfuKXnA==", + "dev": true + }, + "node_modules/@vusion/webfonts-generator/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", + "dev": true, + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@webassemblyjs/ast": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ast/-/ast-1.11.0.tgz", + "integrity": "sha512-kX2W49LWsbthrmIRMbQZuQDhGtjyqXfEmmHyEi4XWnSZtPmxY0+3anPIzsnRb45VH/J55zlOfWvZuY47aJZTJg==", + "dev": true, + "dependencies": { + "@webassemblyjs/helper-numbers": "1.11.0", + "@webassemblyjs/helper-wasm-bytecode": "1.11.0" + } + }, + "node_modules/@webassemblyjs/floating-point-hex-parser": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.0.tgz", + "integrity": "sha512-Q/aVYs/VnPDVYvsCBL/gSgwmfjeCb4LW8+TMrO3cSzJImgv8lxxEPM2JA5jMrivE7LSz3V+PFqtMbls3m1exDA==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-api-error": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.0.tgz", + "integrity": "sha512-baT/va95eXiXb2QflSx95QGT5ClzWpGaa8L7JnJbgzoYeaA27FCvuBXU758l+KXWRndEmUXjP0Q5fibhavIn8w==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-buffer": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.0.tgz", + "integrity": "sha512-u9HPBEl4DS+vA8qLQdEQ6N/eJQ7gT7aNvMIo8AAWvAl/xMrcOSiI2M0MAnMCy3jIFke7bEee/JwdX1nUpCtdyA==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-numbers": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.0.tgz", + "integrity": "sha512-DhRQKelIj01s5IgdsOJMKLppI+4zpmcMQ3XboFPLwCpSNH6Hqo1ritgHgD0nqHeSYqofA6aBN/NmXuGjM1jEfQ==", + "dev": true, + "dependencies": { + "@webassemblyjs/floating-point-hex-parser": "1.11.0", + "@webassemblyjs/helper-api-error": "1.11.0", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/helper-wasm-bytecode": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.0.tgz", + "integrity": "sha512-MbmhvxXExm542tWREgSFnOVo07fDpsBJg3sIl6fSp9xuu75eGz5lz31q7wTLffwL3Za7XNRCMZy210+tnsUSEA==", + "dev": true + }, + "node_modules/@webassemblyjs/helper-wasm-section": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.0.tgz", + "integrity": "sha512-3Eb88hcbfY/FCukrg6i3EH8H2UsD7x8Vy47iVJrP967A9JGqgBVL9aH71SETPx1JrGsOUVLo0c7vMCN22ytJew==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.0", + "@webassemblyjs/helper-buffer": "1.11.0", + "@webassemblyjs/helper-wasm-bytecode": "1.11.0", + "@webassemblyjs/wasm-gen": "1.11.0" + } + }, + "node_modules/@webassemblyjs/ieee754": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/ieee754/-/ieee754-1.11.0.tgz", + "integrity": "sha512-KXzOqpcYQwAfeQ6WbF6HXo+0udBNmw0iXDmEK5sFlmQdmND+tr773Ti8/5T/M6Tl/413ArSJErATd8In3B+WBA==", + "dev": true, + "dependencies": { + "@xtuc/ieee754": "^1.2.0" + } + }, + "node_modules/@webassemblyjs/leb128": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/leb128/-/leb128-1.11.0.tgz", + "integrity": "sha512-aqbsHa1mSQAbeeNcl38un6qVY++hh8OpCOzxhixSYgbRfNWcxJNJQwe2rezK9XEcssJbbWIkblaJRwGMS9zp+g==", + "dev": true, + "dependencies": { + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webassemblyjs/utf8": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/utf8/-/utf8-1.11.0.tgz", + "integrity": "sha512-A/lclGxH6SpSLSyFowMzO/+aDEPU4hvEiooCMXQPcQFPPJaYcPQNKGOCLUySJsYJ4trbpr+Fs08n4jelkVTGVw==", + "dev": true + }, + "node_modules/@webassemblyjs/wasm-edit": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.0.tgz", + "integrity": "sha512-JHQ0damXy0G6J9ucyKVXO2j08JVJ2ntkdJlq1UTiUrIgfGMmA7Ik5VdC/L8hBK46kVJgujkBIoMtT8yVr+yVOQ==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.0", + "@webassemblyjs/helper-buffer": "1.11.0", + "@webassemblyjs/helper-wasm-bytecode": "1.11.0", + "@webassemblyjs/helper-wasm-section": "1.11.0", + "@webassemblyjs/wasm-gen": "1.11.0", + "@webassemblyjs/wasm-opt": "1.11.0", + "@webassemblyjs/wasm-parser": "1.11.0", + "@webassemblyjs/wast-printer": "1.11.0" + } + }, + "node_modules/@webassemblyjs/wasm-gen": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.0.tgz", + "integrity": "sha512-BEUv1aj0WptCZ9kIS30th5ILASUnAPEvE3tVMTrItnZRT9tXCLW2LEXT8ezLw59rqPP9klh9LPmpU+WmRQmCPQ==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.0", + "@webassemblyjs/helper-wasm-bytecode": "1.11.0", + "@webassemblyjs/ieee754": "1.11.0", + "@webassemblyjs/leb128": "1.11.0", + "@webassemblyjs/utf8": "1.11.0" + } + }, + "node_modules/@webassemblyjs/wasm-opt": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.0.tgz", + "integrity": "sha512-tHUSP5F4ywyh3hZ0+fDQuWxKx3mJiPeFufg+9gwTpYp324mPCQgnuVKwzLTZVqj0duRDovnPaZqDwoyhIO8kYg==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.0", + "@webassemblyjs/helper-buffer": "1.11.0", + "@webassemblyjs/wasm-gen": "1.11.0", + "@webassemblyjs/wasm-parser": "1.11.0" + } + }, + "node_modules/@webassemblyjs/wasm-parser": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.0.tgz", + "integrity": "sha512-6L285Sgu9gphrcpDXINvm0M9BskznnzJTE7gYkjDbxET28shDqp27wpruyx3C2S/dvEwiigBwLA1cz7lNUi0kw==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.0", + "@webassemblyjs/helper-api-error": "1.11.0", + "@webassemblyjs/helper-wasm-bytecode": "1.11.0", + "@webassemblyjs/ieee754": "1.11.0", + "@webassemblyjs/leb128": "1.11.0", + "@webassemblyjs/utf8": "1.11.0" + } + }, + "node_modules/@webassemblyjs/wast-printer": { + "version": "1.11.0", + "resolved": "https://registry.npmjs.org/@webassemblyjs/wast-printer/-/wast-printer-1.11.0.tgz", + "integrity": "sha512-Fg5OX46pRdTgB7rKIUojkh9vXaVN6sGYCnEiJN1GYkb0RPwShZXp6KTDqmoMdQPKhcroOXh3fEzmkWmCYaKYhQ==", + "dev": true, + "dependencies": { + "@webassemblyjs/ast": "1.11.0", + "@xtuc/long": "4.2.2" + } + }, + "node_modules/@webpack-cli/configtest": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/@webpack-cli/configtest/-/configtest-1.0.1.tgz", + "integrity": "sha512-B+4uBUYhpzDXmwuo3V9yBH6cISwxEI4J+NO5ggDaGEEHb0osY/R7MzeKc0bHURXQuZjMM4qD+bSJCKIuI3eNBQ==", + "dev": true, + "peerDependencies": { + "webpack": "4.x.x || 5.x.x", + "webpack-cli": "4.x.x" + } + }, + "node_modules/@webpack-cli/info": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/@webpack-cli/info/-/info-1.2.2.tgz", + "integrity": "sha512-5U9kUJHnwU+FhKH4PWGZuBC1hTEPYyxGSL5jjoBI96Gx8qcYJGOikpiIpFoTq8mmgX3im2zAo2wanv/alD74KQ==", + "dev": true, + "dependencies": { + "envinfo": "^7.7.3" + }, + "peerDependencies": { + "webpack-cli": "4.x.x" + } + }, + "node_modules/@webpack-cli/serve": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/@webpack-cli/serve/-/serve-1.3.0.tgz", + "integrity": "sha512-k2p2VrONcYVX1wRRrf0f3X2VGltLWcv+JzXRBDmvCxGlCeESx4OXw91TsWeKOkp784uNoVQo313vxJFHXPPwfw==", + "dev": true, + "peerDependencies": { + "webpack-cli": "4.x.x" + }, + "peerDependenciesMeta": { + "webpack-dev-server": { + "optional": true + } + } + }, + "node_modules/@xmldom/xmldom": { + "version": "0.7.5", + "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.7.5.tgz", + "integrity": "sha512-V3BIhmY36fXZ1OtVcI9W+FxQqxVLsPKcNjWigIaa81dLC9IolJl5Mt4Cvhmr0flUnjSpTdrbMTSbXqYqV5dT6A==", + "dev": true, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/@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 + }, + "node_modules/@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 + }, + "node_modules/abbrev": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", + "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", + "dev": true + }, + "node_modules/accepts": { + "version": "1.3.7", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", + "integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", + "dev": true, + "dependencies": { + "mime-types": "~2.1.24", + "negotiator": "0.6.2" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/acorn": { + "version": "7.4.1", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-7.4.1.tgz", + "integrity": "sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/acorn-jsx": { + "version": "5.3.2", + "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", + "integrity": "sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ==", + "dev": true, + "peerDependencies": { + "acorn": "^6.0.0 || ^7.0.0 || ^8.0.0" + } + }, + "node_modules/acorn-walk": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.0.2.tgz", + "integrity": "sha512-+bpA9MJsHdZ4bgfDcpk0ozQyhhVct7rzOmO0s1IIr0AGGgKBljss8n2zp11rRP2wid5VGeh04CgeKzgat5/25A==", + "dev": true, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/agent-base": { + "version": "6.0.2", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", + "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", + "dev": true, + "dependencies": { + "debug": "4" + }, + "engines": { + "node": ">= 6.0.0" + } + }, + "node_modules/agent-base/node_modules/debug": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/agent-base/node_modules/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 + }, + "node_modules/agentkeepalive": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.1.4.tgz", + "integrity": "sha512-+V/rGa3EuU74H6wR04plBb7Ks10FbtUQgRj/FQOG7uUIEuaINI+AiqJR1k6t3SVNs7o7ZjIdus6706qqzVq8jQ==", + "dev": true, + "dependencies": { + "debug": "^4.1.0", + "depd": "^1.1.2", + "humanize-ms": "^1.2.1" + }, + "engines": { + "node": ">= 8.0.0" + } + }, + "node_modules/agentkeepalive/node_modules/debug": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { "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 + "optional": true } } }, - "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==", + "node_modules/agentkeepalive/node_modules/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 + }, + "node_modules/aggregate-error": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", + "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", + "dev": true, + "dependencies": { + "clean-stack": "^2.0.0", + "indent-string": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/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, + "engines": { + "node": ">=6" + } + }, + "node_modules/ansi-escapes": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", + "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", + "dev": true, + "dependencies": { + "type-fest": "^0.21.3" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/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, + "engines": [ + "node >= 0.8.0" + ], + "bin": { + "ansi-html": "bin/ansi-html" + } + }, + "node_modules/ansi-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz", + "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/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, + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/anymatch": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.1.tgz", + "integrity": "sha512-mM8522psRCqzV+6LhomX5wgp25YVibjh8Wj23I5RPkPppSVSjyKD2A2mBJmWGa+KN7f2D6LNh9jkBCeyLktzjg==", + "dev": true, + "dependencies": { + "normalize-path": "^3.0.0", + "picomatch": "^2.0.4" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/aproba": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", + "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", + "dev": true + }, + "node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/array-filter": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/array-filter/-/array-filter-1.0.0.tgz", + "integrity": "sha1-uveeYubvTCpMC4MSMtr/7CUfnYM=", + "dev": true + }, + "node_modules/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 + }, + "node_modules/array-includes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/array-includes/-/array-includes-3.1.2.tgz", + "integrity": "sha512-w2GspexNQpx+PutG3QpT437/BenZBj0M/MZGn5mzv/MofYqo0xmRHzn4lFsoDlWJ+THYsGJmFlW68WlDFx7VRw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.1", + "get-intrinsic": "^1.0.1", + "is-string": "^1.0.5" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array-union": { + "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, + "engines": { + "node": ">=8" + } + }, + "node_modules/array.prototype.flat": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/array.prototype.flat/-/array.prototype.flat-1.2.4.tgz", + "integrity": "sha512-4470Xi3GAPAjZqFcljX2xzckv1qeKPizoNkiS0+O4IoPR2ZNpcjE0pkhdihlDouK+x6QOast26B4Q/O9DJnwSg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/astral-regex": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-1.0.0.tgz", + "integrity": "sha512-+Ryf6g3BKoRc7jfp7ad8tM4TtMiaWvbF/1/sQcZPkkS7ag3D5nMBCe2UfOTONtAkaG0tO0ij3C5Lwmf1EiyjHg==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/async": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/async/-/async-2.6.3.tgz", + "integrity": "sha512-zflvls11DCy+dQWzTW2dzuilv8Z5X/pjfmZOWba6TNIVDm+2UDaJmXSOXlasHKfNBs8oo3M0aT50fDEWfKZjXg==", + "dev": true, + "dependencies": { + "lodash": "^4.17.14" + } + }, + "node_modules/available-typed-arrays": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/available-typed-arrays/-/available-typed-arrays-1.0.2.tgz", + "integrity": "sha512-XWX3OX8Onv97LMk/ftVyBibpGwY5a8SmuxZPzeOxqmuEqUCOM9ZE+uIaD1VNJ5QnvU2UQusvmKbuM1FR8QWGfQ==", + "dev": true, + "dependencies": { + "array-filter": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/babel-loader": { + "version": "8.2.2", + "resolved": "https://registry.npmjs.org/babel-loader/-/babel-loader-8.2.2.tgz", + "integrity": "sha512-JvTd0/D889PQBtUXJ2PXaKU/pjZDMtHA9V2ecm+eNRmmBCMR09a+fmpGTNwnJtFmFl5Ei7Vy47LjBb+L0wQ99g==", + "dev": true, + "dependencies": { + "find-cache-dir": "^3.3.1", + "loader-utils": "^1.4.0", + "make-dir": "^3.1.0", + "schema-utils": "^2.6.5" + }, + "engines": { + "node": ">= 8.9" + }, + "peerDependencies": { + "@babel/core": "^7.0.0", + "webpack": ">=2" + } + }, + "node_modules/babel-loader/node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/babel-loader/node_modules/loader-utils": { + "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, + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/babel-loader/node_modules/schema-utils": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", + "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.5", + "ajv": "^6.12.4", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 8.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/babel-plugin-dynamic-import-node": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/babel-plugin-dynamic-import-node/-/babel-plugin-dynamic-import-node-2.3.3.tgz", + "integrity": "sha512-jZVI+s9Zg3IqA/kdi0i6UDCybUI3aSBLnglhYbSSjKlV7yF1F/5LWv8MakQmvYpnbJDS6fcBL2KzHSxNCMtWSQ==", + "dev": true, + "dependencies": { + "object.assign": "^4.1.0" + } + }, + "node_modules/balanced-match": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", + "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", + "dev": true + }, + "node_modules/batch": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/batch/-/batch-0.6.1.tgz", + "integrity": "sha1-3DQxT05nkxgJP8dgJyUl+UvyXBY=", + "dev": true + }, + "node_modules/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, + "engines": { + "node": "*" + } + }, + "node_modules/binary-extensions": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.2.0.tgz", + "integrity": "sha512-jDctJ/IVQbZoJykoeHbhXpOlNBqGNcwXJKJog42E5HDPUwQTSdjCHdihjj0DlnheQ7blbT6dHOafNAiS8ooQKA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/bindings": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", + "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", + "dev": true, + "dependencies": { + "file-uri-to-path": "1.0.0" + } + }, + "node_modules/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, + "dependencies": { + "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" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/body-parser/node_modules/bytes": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", + "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/body-parser/node_modules/qs": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", + "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==", + "dev": true, + "engines": { + "node": ">=0.6" + } + }, + "node_modules/bonjour": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/bonjour/-/bonjour-3.5.0.tgz", + "integrity": "sha1-jokKGD2O6aI5OzhExpGkK897yfU=", + "dev": true, + "dependencies": { + "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" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.2.tgz", + "integrity": "sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A==", + "dev": true, + "dependencies": { + "fill-range": "^7.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/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 + }, + "node_modules/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 + }, + "node_modules/bytes": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.0.0.tgz", + "integrity": "sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg=", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/cacache": { + "version": "15.3.0", + "resolved": "https://registry.npmjs.org/cacache/-/cacache-15.3.0.tgz", + "integrity": "sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ==", + "dev": true, + "dependencies": { + "@npmcli/fs": "^1.0.0", + "@npmcli/move-file": "^1.0.1", + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "glob": "^7.1.4", + "infer-owner": "^1.0.4", + "lru-cache": "^6.0.0", + "minipass": "^3.1.1", + "minipass-collect": "^1.0.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.2", + "mkdirp": "^1.0.3", + "p-map": "^4.0.0", + "promise-inflight": "^1.0.1", + "rimraf": "^3.0.2", + "ssri": "^8.0.1", + "tar": "^6.0.2", + "unique-filename": "^1.1.1" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/cacache/node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true, + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/cacache/node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/cacache/node_modules/tar": { + "version": "6.1.11", + "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.11.tgz", + "integrity": "sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA==", + "dev": true, + "dependencies": { + "chownr": "^2.0.0", + "fs-minipass": "^2.0.0", + "minipass": "^3.0.0", + "minizlib": "^2.1.1", + "mkdirp": "^1.0.3", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dev": true, + "dependencies": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/callsites": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", + "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/camelcase": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.2.0.tgz", + "integrity": "sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg==", "dev": true, - "requires": { - "arr-union": "^3.1.0", - "define-property": "^0.2.5", - "isobject": "^3.0.0", - "static-extend": "^0.1.1" + "engines": { + "node": ">=10" }, - "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" - } + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/caniuse-lite": { + "version": "1.0.30001596", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001596.tgz", + "integrity": "sha512-zpkZ+kEr6We7w63ORkoJ2pOfBwBkY/bJrG/UZ90qNb45Isblu8wzDgevEOrRL1r9dWayHjYiiyCMEXPn4DweGQ==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" } - } + ] }, - "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=", + "node_modules/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": { - "restore-cursor": "^2.0.0" + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" } }, - "cli-width": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", - "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=", + "node_modules/chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==", "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==", + "node_modules/chokidar": { + "version": "3.5.1", + "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.5.1.tgz", + "integrity": "sha512-9+s+Od+W0VJJzawDma/gvBNQqkTiqYTWLuZoyAsivsI4AaWTCzHG06/TMjsf1cYe9Cb97UCEhjz7HvnPk2p/tw==", "dev": true, - "requires": { - "string-width": "^2.1.1", - "strip-ansi": "^4.0.0", - "wrap-ansi": "^2.0.0" + "dependencies": { + "anymatch": "~3.1.1", + "braces": "~3.0.2", + "glob-parent": "~5.1.0", + "is-binary-path": "~2.1.0", + "is-glob": "~4.0.1", + "normalize-path": "~3.0.0", + "readdirp": "~3.5.0" + }, + "engines": { + "node": ">= 8.10.0" + }, + "optionalDependencies": { + "fsevents": "~2.3.1" } }, - "clone": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", - "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=", - "dev": true + "node_modules/chownr": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", + "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", + "dev": true, + "engines": { + "node": ">=10" + } }, - "co": { - "version": "4.6.0", - "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=", - "dev": true + "node_modules/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, + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "node": ">=6.0" + } }, - "coa": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/coa/-/coa-1.0.4.tgz", - "integrity": "sha1-qe8VNmDWqGqL3sAomlxoTSF0Mv0=", + "node_modules/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, - "requires": { - "q": "^1.1.2" + "engines": { + "node": ">=6" } }, - "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 + "node_modules/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, + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } }, - "collection-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/collection-visit/-/collection-visit-1.0.0.tgz", - "integrity": "sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA=", + "node_modules/cli-width": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz", + "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==", "dev": true, - "requires": { - "map-visit": "^1.0.0", - "object-visit": "^1.0.0" + "engines": { + "node": ">= 10" } }, - "color": { - "version": "0.11.4", - "resolved": "https://registry.npmjs.org/color/-/color-0.11.4.tgz", - "integrity": "sha1-bXtcdPtl6EHNSHkq0e1eB7kE12Q=", + "node_modules/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": { - "clone": "^1.0.2", - "color-convert": "^1.3.0", - "color-string": "^0.3.0" + "dependencies": { + "is-plain-object": "^2.0.4", + "kind-of": "^6.0.2", + "shallow-clone": "^3.0.0" + }, + "engines": { + "node": ">=6" } }, - "color-convert": { + "node_modules/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": { + "dependencies": { "color-name": "1.1.3" } }, - "color-name": { + "node_modules/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-string": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/color-string/-/color-string-0.3.0.tgz", - "integrity": "sha1-J9RvtnAlxcL6JZk7+/V55HhBuZE=", - "dev": true, - "requires": { - "color-name": "^1.0.0" - } - }, - "colormin": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/colormin/-/colormin-1.1.2.tgz", - "integrity": "sha1-6i90IKcrlogaOKrlnsEkpvcpgTM=", + "node_modules/color-support": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", + "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", "dev": true, - "requires": { - "color": "^0.11.0", - "css-color-names": "0.0.4", - "has": "^1.0.1" + "bin": { + "color-support": "bin.js" } }, - "colors": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/colors/-/colors-1.1.2.tgz", - "integrity": "sha1-FopHAXVran9RoSzgyXv6KMCE7WM=", + "node_modules/colorette": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/colorette/-/colorette-1.2.1.tgz", + "integrity": "sha512-puCDz0CzydiSYOrnXpz/PKd69zRrribezjtE9yd4zvytoRc8+RY/KJPvtPFKZS3E3wP6neGyMe0vOTlHO5L3Pw==", "dev": true }, - "combined-stream": { - "version": "1.0.8", - "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", - "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", - "dev": true, - "requires": { - "delayed-stream": "~1.0.0" - } - }, - "commander": { + "node_modules/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 }, - "commondir": { + "node_modules/commondir": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/commondir/-/commondir-1.0.1.tgz", "integrity": "sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs=", "dev": true }, - "component-emitter": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/component-emitter/-/component-emitter-1.3.0.tgz", - "integrity": "sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg==", - "dev": true - }, - "compressible": { + "node_modules/compressible": { "version": "2.0.18", "resolved": "https://registry.npmjs.org/compressible/-/compressible-2.0.18.tgz", "integrity": "sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg==", "dev": true, - "requires": { + "dependencies": { "mime-db": ">= 1.43.0 < 2" }, - "dependencies": { - "mime-db": { - "version": "1.45.0", - "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.45.0.tgz", - "integrity": "sha512-CkqLUxUk15hofLoLyljJSrukZi8mAtgd+yE5uO4tqRZsdsAJKv0O+rFMhVDRJgozy+yG6md5KwuXhD4ocIoP+w==", - "dev": true - } + "engines": { + "node": ">= 0.6" } }, - "compression": { + "node_modules/compression": { "version": "1.7.4", "resolved": "https://registry.npmjs.org/compression/-/compression-1.7.4.tgz", "integrity": "sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ==", "dev": true, - "requires": { + "dependencies": { "accepts": "~1.3.5", "bytes": "3.0.0", "compressible": "~2.0.16", @@ -1949,1108 +3022,1273 @@ "on-headers": "~1.0.2", "safe-buffer": "5.1.2", "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.8.0" } }, - "concat-map": { + "node_modules/concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "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": { + "node_modules/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" + "engines": { + "node": ">=0.8" } }, - "console-control-strings": { + "node_modules/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 - }, - "contains-path": { + "node_modules/contains-path": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/contains-path/-/contains-path-0.1.0.tgz", "integrity": "sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, - "content-disposition": { + "node_modules/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": { + "dependencies": { "safe-buffer": "5.1.2" + }, + "engines": { + "node": ">= 0.6" } }, - "content-type": { + "node_modules/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 + "dev": true, + "engines": { + "node": ">= 0.6" + } }, - "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==", + "node_modules/convert-source-map": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-1.7.0.tgz", + "integrity": "sha512-4FJkXzKXEDB1snCFZlLP4gpC3JILicCpGbzG9f9G7tGqGCzETQ2hWPrcinA9oU4wtf2biUaEH5065UnMeR33oA==", "dev": true, - "requires": { + "dependencies": { "safe-buffer": "~5.1.1" } }, - "cookie": { + "node_modules/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 + "dev": true, + "engines": { + "node": ">= 0.6" + } }, - "cookie-signature": { + "node_modules/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==", + "node_modules/core-js": { + "version": "3.11.0", + "resolved": "https://registry.npmjs.org/core-js/-/core-js-3.11.0.tgz", + "integrity": "sha512-bd79DPpx+1Ilh9+30aT5O1sgpQd4Ttg8oqkqi51ZzhedMM1omD2e6IOF48Z/DzDCZ2svp49tN/3vneTK6ZBkXw==", + "deprecated": "core-js@<3.23.3 is no longer maintained and not recommended for usage due to the number of issues. Because of the V8 engine whims, feature detection in old core-js versions could cause a slowdown up to 100x even if nothing is polyfilled. Some versions have web compatibility issues. Please, upgrade your dependencies to the actual version of core-js.", + "hasInstallScript": true, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" + } + }, + "node_modules/core-js-compat": { + "version": "3.8.3", + "resolved": "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.8.3.tgz", + "integrity": "sha512-1sCb0wBXnBIL16pfFG1Gkvei6UzvKyTNYpiC41yrdjEv0UoJoq9E/abTMzyYJ6JpTkAj15dLjbqifIzEBDVvog==", "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" + "dependencies": { + "browserslist": "^4.16.1", + "semver": "7.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/core-js" } }, - "copy-descriptor": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/copy-descriptor/-/copy-descriptor-0.1.1.tgz", - "integrity": "sha1-Z29us8OZl8LuGsOpJP1hJHSPV40=", - "dev": true + "node_modules/core-js-compat/node_modules/browserslist": { + "version": "4.16.3", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.3.tgz", + "integrity": "sha512-vIyhWmIkULaq04Gt93txdh+j02yX/JzlyhLYbV3YQCn/zvES3JnY7TifHHvvr1w5hTDluNKMkV05cs4vy8Q7sw==", + "dev": true, + "dependencies": { + "caniuse-lite": "^1.0.30001181", + "colorette": "^1.2.1", + "electron-to-chromium": "^1.3.649", + "escalade": "^3.1.1", + "node-releases": "^1.1.70" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" + } }, - "core-js": { - "version": "2.6.8", - "resolved": "https://registry.npmjs.org/core-js/-/core-js-2.6.8.tgz", - "integrity": "sha512-RWlREFU74TEkdXzyl1bka66O3kYp8jeTXrvJZDzVVMH8AiHUSOFpL1yfhQJ+wHocAm1m+4971W1PPzfLuCv1vg==", - "dev": true + "node_modules/core-js-compat/node_modules/semver": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.0.0.tgz", + "integrity": "sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } }, - "core-util-is": { + "node_modules/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=", "dev": true }, - "create-ecdh": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/create-ecdh/-/create-ecdh-4.0.3.tgz", - "integrity": "sha512-GbEHQPMOswGpKXM9kCWVrremUcBmjteUaQ01T9rkKCPDXfUHX0IoP9LpHYo2NPFampa4e+/pFDc3jQdxrxQLaw==", + "node_modules/cross-spawn": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", + "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", "dev": true, - "requires": { - "bn.js": "^4.1.0", - "elliptic": "^6.0.0" + "dependencies": { + "path-key": "^3.1.0", + "shebang-command": "^2.0.0", + "which": "^2.0.1" + }, + "engines": { + "node": ">= 8" } }, - "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==", + "node_modules/cross-spawn/node_modules/shebang-command": { + "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": { - "cipher-base": "^1.0.1", - "inherits": "^2.0.1", - "md5.js": "^1.3.4", - "ripemd160": "^2.0.1", - "sha.js": "^2.4.0" + "dependencies": { + "shebang-regex": "^3.0.0" + }, + "engines": { + "node": ">=8" } }, - "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==", + "node_modules/cross-spawn/node_modules/shebang-regex": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", + "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "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" + "engines": { + "node": ">=8" } }, - "cross-spawn": { - "version": "6.0.5", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.5.tgz", - "integrity": "sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ==", + "node_modules/cross-spawn/node_modules/which": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", + "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", "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" + "dependencies": { + "isexe": "^2.0.0" + }, + "bin": { + "node-which": "bin/node-which" + }, + "engines": { + "node": ">= 8" } }, - "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==", + "node_modules/css-loader": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-5.0.2.tgz", + "integrity": "sha512-gbkBigdcHbmNvZ1Cg6aV6qh6k9N6XOr8YWzISLQGrwk2mgOH8LLrizhkxbDhQtaLtktyKHD4970S0xwz5btfTA==", "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-color-names": { - "version": "0.0.4", - "resolved": "https://registry.npmjs.org/css-color-names/-/css-color-names-0.0.4.tgz", - "integrity": "sha1-gIrcLnnPhHOAabZGyyDsJ762KeA=", - "dev": true - }, - "css-loader": { - "version": "0.28.11", - "resolved": "https://registry.npmjs.org/css-loader/-/css-loader-0.28.11.tgz", - "integrity": "sha512-wovHgjAx8ZIMGSL8pTys7edA1ClmzxHeY6n/d97gg5odgsxEgKjULPR0viqyC+FWMCL9sfqoC/QCUBo62tLvPg==", - "dev": true, - "requires": { - "babel-code-frame": "^6.26.0", - "css-selector-tokenizer": "^0.7.0", - "cssnano": "^3.10.0", - "icss-utils": "^2.1.0", - "loader-utils": "^1.0.2", - "lodash.camelcase": "^4.3.0", - "object-assign": "^4.1.1", - "postcss": "^5.0.6", - "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-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" - } - } + "dependencies": { + "camelcase": "^6.2.0", + "cssesc": "^3.0.0", + "icss-utils": "^5.1.0", + "loader-utils": "^2.0.0", + "postcss": "^8.2.4", + "postcss-modules-extract-imports": "^3.0.0", + "postcss-modules-local-by-default": "^4.0.0", + "postcss-modules-scope": "^3.0.0", + "postcss-modules-values": "^4.0.0", + "postcss-value-parser": "^4.1.0", + "schema-utils": "^3.0.0", + "semver": "^7.3.4" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.27.0 || ^5.0.0" } }, - "cssesc": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-0.1.0.tgz", - "integrity": "sha1-yBSQPkViM3GgR3tAEJqq++6t27Q=", - "dev": true - }, - "cssnano": { - "version": "3.10.0", - "resolved": "https://registry.npmjs.org/cssnano/-/cssnano-3.10.0.tgz", - "integrity": "sha1-Tzj2zqK5sX+gFJDyPx3GjqZcHDg=", - "dev": true, - "requires": { - "autoprefixer": "^6.3.1", - "decamelize": "^1.1.2", - "defined": "^1.0.0", - "has": "^1.0.1", - "object-assign": "^4.0.1", - "postcss": "^5.0.14", - "postcss-calc": "^5.2.0", - "postcss-colormin": "^2.1.8", - "postcss-convert-values": "^2.3.4", - "postcss-discard-comments": "^2.0.4", - "postcss-discard-duplicates": "^2.0.1", - "postcss-discard-empty": "^2.0.1", - "postcss-discard-overridden": "^0.1.1", - "postcss-discard-unused": "^2.2.1", - "postcss-filter-plugins": "^2.0.0", - "postcss-merge-idents": "^2.1.5", - "postcss-merge-longhand": "^2.0.1", - "postcss-merge-rules": "^2.0.3", - "postcss-minify-font-values": "^1.0.2", - "postcss-minify-gradients": "^1.0.1", - "postcss-minify-params": "^1.0.4", - "postcss-minify-selectors": "^2.0.4", - "postcss-normalize-charset": "^1.1.0", - "postcss-normalize-url": "^3.0.7", - "postcss-ordered-values": "^2.1.0", - "postcss-reduce-idents": "^2.2.2", - "postcss-reduce-initial": "^1.0.0", - "postcss-reduce-transforms": "^1.0.3", - "postcss-svgo": "^2.1.1", - "postcss-unique-selectors": "^2.0.2", - "postcss-value-parser": "^3.2.3", - "postcss-zindex": "^2.0.1" - } - }, - "csso": { - "version": "2.3.2", - "resolved": "https://registry.npmjs.org/csso/-/csso-2.3.2.tgz", - "integrity": "sha1-3dUsWHAz9J6Utx/FVWnyUuj/X4U=", - "dev": true, - "requires": { - "clap": "^1.0.9", - "source-map": "^0.5.3" - } - }, - "cubic2quad": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/cubic2quad/-/cubic2quad-1.1.1.tgz", - "integrity": "sha1-abGcYaP1tB7PLx1fro+wNBWqixU=", - "dev": true - }, - "cyclist": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-0.2.2.tgz", - "integrity": "sha1-GzN5LhHpFKL9bW7WRHRkRE5fpkA=", - "dev": true - }, - "dashdash": { - "version": "1.14.1", - "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", - "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "node_modules/css-loader/node_modules/semver": { + "version": "7.3.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.4.tgz", + "integrity": "sha512-tCfb2WLjqFAtXn4KEdxIhalnRtoKFN7nAwj0B3ZXCbQloV2tq5eDbcTmT68JJD3nRJq24/XgxtQKFIpQdtvmVw==", "dev": true, - "requires": { - "assert-plus": "^1.0.0" + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" } }, - "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 + "node_modules/cssesc": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/cssesc/-/cssesc-3.0.0.tgz", + "integrity": "sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg==", + "dev": true, + "bin": { + "cssesc": "bin/cssesc" + }, + "engines": { + "node": ">=4" + } }, - "debug": { + "node_modules/debug": { "version": "2.6.9", "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", "dev": true, - "requires": { + "dependencies": { "ms": "2.0.0" } }, - "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 - }, - "deep-equal": { + "node_modules/deep-equal": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/deep-equal/-/deep-equal-1.1.1.tgz", "integrity": "sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g==", "dev": true, - "requires": { + "dependencies": { "is-arguments": "^1.0.4", "is-date-object": "^1.0.1", "is-regex": "^1.0.4", "object-is": "^1.0.1", "object-keys": "^1.1.1", "regexp.prototype.flags": "^1.2.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "deep-is": { + "node_modules/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=", "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==", + "node_modules/default-gateway": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/default-gateway/-/default-gateway-6.0.3.tgz", + "integrity": "sha512-fwSOJsbbNzZ/CUFpqFBqYfYNLj1NbMPm8MMCIzHjC83iSJRBEGmDUxU+WP661BaBQImeC2yHwXtz+P/O9o+XEg==", "dev": true, - "requires": { - "execa": "^1.0.0", - "ip-regex": "^2.1.0" + "dependencies": { + "execa": "^5.0.0" + }, + "engines": { + "node": ">= 10" } }, - "define-properties": { + "node_modules/define-properties": { "version": "1.1.3", "resolved": "https://registry.npmjs.org/define-properties/-/define-properties-1.1.3.tgz", "integrity": "sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==", "dev": true, - "requires": { + "dependencies": { "object-keys": "^1.0.12" + }, + "engines": { + "node": ">= 0.4" } }, - "define-property": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/define-property/-/define-property-2.0.2.tgz", - "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "node_modules/del": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/del/-/del-6.0.0.tgz", + "integrity": "sha512-1shh9DQ23L16oXSZKB2JxpL7iMy2E0S9d517ptA1P8iw0alkPtQcrKH7ru31rYtKwF499HkTu+DRzq3TCKDFRQ==", "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" - } - } + "globby": "^11.0.1", + "graceful-fs": "^4.2.4", + "is-glob": "^4.0.1", + "is-path-cwd": "^2.2.0", + "is-path-inside": "^3.0.2", + "p-map": "^4.0.0", + "rimraf": "^3.0.2", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "defined": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/defined/-/defined-1.0.0.tgz", - "integrity": "sha1-yY2bzvdWdBiOEQlpFRGZ45sfppM=", + "node_modules/del/node_modules/graceful-fs": { + "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 }, - "del": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/del/-/del-4.1.1.tgz", - "integrity": "sha512-QwGuEUouP2kVwQenAsOof5Fv8K9t3D8Ca8NxcXKrIpEHjTXK5J2nXLdP+ALI1cgv8wj7KuwBhTwBkOZSJKM5XQ==", - "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": { - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true - } + "node_modules/del/node_modules/rimraf": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", + "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", + "dev": true, + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" } }, - "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": { + "node_modules/delegates": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", "dev": true }, - "depd": { + "node_modules/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" + "engines": { + "node": ">= 0.6" } }, - "destroy": { + "node_modules/destroy": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=", "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-indent": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-4.0.0.tgz", - "integrity": "sha1-920GQ1LN9Docts5hnE7jqUdd4gg=", - "dev": true, - "requires": { - "repeating": "^2.0.0" - } - }, - "detect-node": { + "node_modules/detect-node": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/detect-node/-/detect-node-2.0.4.tgz", "integrity": "sha512-ZIzRpLJrOj7jjP2miAtgqIfmzbxa4ZOr5jJc601zklsfEx9oTzmmj2nVpIPRpNlRTIh8lc1kyViIY7BWSGNmKw==", "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==", + "node_modules/dir-glob": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/dir-glob/-/dir-glob-3.0.1.tgz", + "integrity": "sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA==", + "dev": true, + "dependencies": { + "path-type": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/dir-glob/node_modules/path-type": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz", + "integrity": "sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw==", "dev": true, - "requires": { - "bn.js": "^4.1.0", - "miller-rabin": "^4.0.0", - "randombytes": "^2.0.0" + "engines": { + "node": ">=8" } }, - "dns-equal": { + "node_modules/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": { + "node_modules/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": { + "dependencies": { "ip": "^1.1.0", "safe-buffer": "^5.0.1" } }, - "dns-txt": { + "node_modules/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": { + "dependencies": { "buffer-indexof": "^1.0.0" } }, - "doctrine": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz", - "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==", + "node_modules/doctrine": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz", + "integrity": "sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w==", "dev": true, - "requires": { + "dependencies": { "esutils": "^2.0.2" + }, + "engines": { + "node": ">=6.0.0" } }, - "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 - }, - "duplexify": { - "version": "3.7.1", - "resolved": "https://registry.npmjs.org/duplexify/-/duplexify-3.7.1.tgz", - "integrity": "sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g==", - "dev": true, - "requires": { - "end-of-stream": "^1.0.0", - "inherits": "^2.0.1", - "readable-stream": "^2.0.0", - "stream-shift": "^1.0.0" - } + "node_modules/dom-to-image": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/dom-to-image/-/dom-to-image-2.6.0.tgz", + "integrity": "sha1-ilA2CAiMh7HCL5A0rgMuGJiVWGc=" }, - "ecc-jsbn": { + "node_modules/duplexer": { "version": "0.1.2", - "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", - "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", - "dev": true, - "requires": { - "jsbn": "~0.1.0", - "safer-buffer": "^2.1.0" - } + "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.2.tgz", + "integrity": "sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg==", + "dev": true }, - "ee-first": { + "node_modules/ee-first": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", "dev": true }, - "electron-to-chromium": { - "version": "1.3.136", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.136.tgz", - "integrity": "sha512-xHkYkbEi4kI+2w5v6yBGCQTRXL7N0PWscygTFZu/1bArnPSo2WR9xjdw4m06RR4J5PncrWJcuOVv+MAG2mK5JQ==", + "node_modules/electron-to-chromium": { + "version": "1.3.653", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.3.653.tgz", + "integrity": "sha512-LehOhcl74u9fkV9Un6WahJ+Xh+0FZLCCDnKYis1Olx1DX2ugRww5PJicE65OG8yznMj8EOQZRcz6FSV1xKxqsA==", "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": "7.0.3", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", - "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", + "node_modules/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 + "node_modules/emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "dev": true, + "engines": { + "node": ">= 4" + } }, - "encodeurl": { + "node_modules/encodeurl": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", "integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "dev": true, + "optional": true, + "dependencies": { + "iconv-lite": "^0.6.2" + } + }, + "node_modules/encoding/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dev": true, + "optional": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/enhanced-resolve": { + "version": "5.7.0", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.7.0.tgz", + "integrity": "sha512-6njwt/NsZFUKhM6j9U8hzVyD4E4r0x7NQzhTCbcWOJ0IQjNSAoalWmb0AE51Wn+fwan5qVESWi7t2ToBxs9vrw==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.2.4", + "tapable": "^2.2.0" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/enhanced-resolve/node_modules/graceful-fs": { + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz", + "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==", "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==", + "node_modules/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": { - "once": "^1.4.0" + "dependencies": { + "ansi-colors": "^4.1.1" + }, + "engines": { + "node": ">=8.6" } }, - "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==", + "node_modules/env-paths": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", + "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "memory-fs": "^0.4.0", - "tapable": "^1.0.0" + "engines": { + "node": ">=6" } }, - "errno": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.7.tgz", - "integrity": "sha512-MfrRBDWzIWifgq6tJj60gkAwtLNb6sQPlcFrSOflcP1aFmmruKQ2wRnze/8V6kgyz7H3FF8Npzv78mZ7XLLflg==", + "node_modules/envinfo": { + "version": "7.7.4", + "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.7.4.tgz", + "integrity": "sha512-TQXTYFVVwwluWSFis6K2XKxgrD22jEv0FTuLCQI+OjH7rn93+iY0fSSFM5lrSxFY+H1+B0/cvvlamr3UsBivdQ==", "dev": true, - "requires": { - "prr": "~1.0.1" + "bin": { + "envinfo": "dist/cli.js" + }, + "engines": { + "node": ">=4" } }, - "error-ex": { + "node_modules/err-code": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", + "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", + "dev": true + }, + "node_modules/error-ex": { "version": "1.3.2", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.2.tgz", "integrity": "sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g==", "dev": true, - "requires": { + "dependencies": { "is-arrayish": "^0.2.1" } }, - "es-abstract": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.13.0.tgz", - "integrity": "sha512-vDZfg/ykNxQVwup/8E1BZhVzFfBxs9NqMzGcvIJrqg5k2/5Za2bWo40dK2J1pgLngZ7c+Shh8lwYtLGyrwPutg==", + "node_modules/es-abstract": { + "version": "1.18.0-next.2", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0-next.2.tgz", + "integrity": "sha512-Ih4ZMFHEtZupnUh6497zEL4y2+w8+1ljnCyaTa+adcoafI1GOvMwFlDjBLfWR7y9VLfrjRJe9ocuHY1PSR9jjw==", "dev": true, - "requires": { - "es-to-primitive": "^1.2.0", + "dependencies": { + "call-bind": "^1.0.2", + "es-to-primitive": "^1.2.1", "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2", "has": "^1.0.3", - "is-callable": "^1.1.4", - "is-regex": "^1.0.4", - "object-keys": "^1.0.12" + "has-symbols": "^1.0.1", + "is-callable": "^1.2.2", + "is-negative-zero": "^2.0.1", + "is-regex": "^1.1.1", + "object-inspect": "^1.9.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.2", + "string.prototype.trimend": "^1.0.3", + "string.prototype.trimstart": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "es-to-primitive": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.0.tgz", - "integrity": "sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg==", + "node_modules/es-abstract/node_modules/has-symbols": { + "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, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-abstract/node_modules/is-regex": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.2.tgz", + "integrity": "sha512-axvdhb5pdhEVThqJzYXwMlVuZwC+FF2DpcOhTS+y/8jVq4trxyPgfcwIxIKiyeuLlSQYKkmUaPQJ8ZE4yNKXDg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-symbols": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-module-lexer": { + "version": "0.3.26", + "resolved": "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-0.3.26.tgz", + "integrity": "sha512-Va0Q/xqtrss45hWzP8CZJwzGSZJjDM5/MJRE3IXXnUCcVLElR9BRaE9F62BopysASyc4nM3uwhSW7FFB9nlWAA==", + "dev": true + }, + "node_modules/es-to-primitive": { + "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": { + "dependencies": { "is-callable": "^1.1.4", "is-date-object": "^1.0.1", "is-symbol": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "es6-promise": { + "node_modules/es6-promise": { "version": "4.2.8", "resolved": "https://registry.npmjs.org/es6-promise/-/es6-promise-4.2.8.tgz", "integrity": "sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w==", "dev": true }, - "escape-html": { + "node_modules/escalade": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.1.tgz", + "integrity": "sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/escape-html": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", "integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=", "dev": true }, - "escape-string-regexp": { + "node_modules/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 + "dev": true, + "engines": { + "node": ">=0.8.0" + } }, - "eslint": { - "version": "4.19.1", - "resolved": "https://registry.npmjs.org/eslint/-/eslint-4.19.1.tgz", - "integrity": "sha512-bT3/1x1EbZB7phzYu7vCr1v3ONuzDtX8WjuM9c0iYxe+cq+pwcKEoQjl7zd3RpC6YOLgnSy3cTN58M2jcoPDIQ==", + "node_modules/eslint": { + "version": "6.8.0", + "resolved": "https://registry.npmjs.org/eslint/-/eslint-6.8.0.tgz", + "integrity": "sha512-K+Iayyo2LtyYhDSYwz5D5QdWw0hCacNzyq1Y821Xna2xSJj7cijoLLYmLxTQgcgZ9mC61nryMy9S7GRbYpI5Ig==", + "deprecated": "This version is no longer supported. Please see https://eslint.org/version-support for other options.", "dev": true, - "requires": { - "ajv": "^5.3.0", - "babel-code-frame": "^6.22.0", + "dependencies": { + "@babel/code-frame": "^7.0.0", + "ajv": "^6.10.0", "chalk": "^2.1.0", - "concat-stream": "^1.6.0", - "cross-spawn": "^5.1.0", - "debug": "^3.1.0", - "doctrine": "^2.1.0", - "eslint-scope": "^3.7.1", - "eslint-visitor-keys": "^1.0.0", - "espree": "^3.5.4", - "esquery": "^1.0.0", + "cross-spawn": "^6.0.5", + "debug": "^4.0.1", + "doctrine": "^3.0.0", + "eslint-scope": "^5.0.0", + "eslint-utils": "^1.4.3", + "eslint-visitor-keys": "^1.1.0", + "espree": "^6.1.2", + "esquery": "^1.0.1", "esutils": "^2.0.2", - "file-entry-cache": "^2.0.0", + "file-entry-cache": "^5.0.1", "functional-red-black-tree": "^1.0.1", - "glob": "^7.1.2", - "globals": "^11.0.1", - "ignore": "^3.3.3", + "glob-parent": "^5.0.0", + "globals": "^12.1.0", + "ignore": "^4.0.6", + "import-fresh": "^3.0.0", "imurmurhash": "^0.1.4", - "inquirer": "^3.0.6", - "is-resolvable": "^1.0.0", - "js-yaml": "^3.9.1", + "inquirer": "^7.0.0", + "is-glob": "^4.0.0", + "js-yaml": "^3.13.1", "json-stable-stringify-without-jsonify": "^1.0.1", "levn": "^0.3.0", - "lodash": "^4.17.4", - "minimatch": "^3.0.2", + "lodash": "^4.17.14", + "minimatch": "^3.0.4", "mkdirp": "^0.5.1", "natural-compare": "^1.4.0", - "optionator": "^0.8.2", - "path-is-inside": "^1.0.2", - "pluralize": "^7.0.0", + "optionator": "^0.8.3", "progress": "^2.0.0", - "regexpp": "^1.0.1", - "require-uncached": "^1.0.3", - "semver": "^5.3.0", - "strip-ansi": "^4.0.0", - "strip-json-comments": "~2.0.1", - "table": "4.0.2", - "text-table": "~0.2.0" - }, - "dependencies": { - "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": { - "lru-cache": "^4.0.1", - "shebang-command": "^1.2.0", - "which": "^1.2.9" - } - }, - "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" - } - }, - "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 - }, - "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 - }, - "js-yaml": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", - "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - } - }, - "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 - } + "regexpp": "^2.0.1", + "semver": "^6.1.2", + "strip-ansi": "^5.2.0", + "strip-json-comments": "^3.0.1", + "table": "^5.2.3", + "text-table": "^0.2.0", + "v8-compile-cache": "^2.0.3" + }, + "bin": { + "eslint": "bin/eslint.js" + }, + "engines": { + "node": "^8.10.0 || ^10.13.0 || >=11.10.1" + }, + "funding": { + "url": "https://opencollective.com/eslint" } }, - "eslint-config-airbnb-base": { + "node_modules/eslint-config-airbnb-base": { "version": "11.3.2", "resolved": "https://registry.npmjs.org/eslint-config-airbnb-base/-/eslint-config-airbnb-base-11.3.2.tgz", "integrity": "sha512-/fhjt/VqzBA2SRsx7ErDtv6Ayf+XLw9LIOqmpBuHFCVwyJo2EtzGWMB9fYRFBoWWQLxmNmCpenNiH0RxyeS41w==", "dev": true, - "requires": { + "dependencies": { "eslint-restricted-globals": "^0.1.1" + }, + "engines": { + "node": ">= 4" + }, + "peerDependencies": { + "eslint": "^3.19.0 || ^4.5.0", + "eslint-plugin-import": "^2.7.0" } }, - "eslint-import-resolver-node": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.2.tgz", - "integrity": "sha512-sfmTqJfPSizWu4aymbPr4Iidp5yKm8yDkHp+Ir3YiTHiiDfxh69mOUsmiqW6RZ9zRXFaF64GtYmN7e+8GHBv6Q==", + "node_modules/eslint-import-resolver-node": { + "version": "0.3.4", + "resolved": "https://registry.npmjs.org/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.4.tgz", + "integrity": "sha512-ogtf+5AB/O+nM6DIeBUNr2fuT7ot9Qg/1harBfBtaP13ekEWFQEEMP94BCB7zaNW3gyY+8SHYF00rnqYwXKWOA==", "dev": true, - "requires": { + "dependencies": { "debug": "^2.6.9", - "resolve": "^1.5.0" + "resolve": "^1.13.1" } }, - "eslint-loader": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/eslint-loader/-/eslint-loader-2.2.1.tgz", - "integrity": "sha512-RLgV9hoCVsMLvOxCuNjdqOrUqIj9oJg8hF44vzJaYqsAHuY9G2YAeN3joQ9nxP0p5Th9iFSIpKo+SD8KISxXRg==", + "node_modules/eslint-import-resolver-node/node_modules/resolve": { + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", + "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", "dev": true, - "requires": { - "loader-fs-cache": "^1.0.0", - "loader-utils": "^1.0.2", - "object-assign": "^4.0.1", - "object-hash": "^1.1.4", - "rimraf": "^2.6.1" + "dependencies": { + "is-core-module": "^2.2.0", + "path-parse": "^1.0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "eslint-module-utils": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.4.0.tgz", - "integrity": "sha512-14tltLm38Eu3zS+mt0KvILC3q8jyIAH518MlG+HO0p+yK885Lb1UHTY/UgR91eOyGdmxAPb+OLoW4znqIT6Ndw==", + "node_modules/eslint-loader": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/eslint-loader/-/eslint-loader-4.0.2.tgz", + "integrity": "sha512-EDpXor6lsjtTzZpLUn7KmXs02+nIjGcgees9BYjNkWra3jVq5vVa8IoCKgzT2M7dNNeoMBtaSG83Bd40N3poLw==", + "deprecated": "This loader has been deprecated. Please use eslint-webpack-plugin", + "dev": true, + "dependencies": { + "find-cache-dir": "^3.3.1", + "fs-extra": "^8.1.0", + "loader-utils": "^2.0.0", + "object-hash": "^2.0.3", + "schema-utils": "^2.6.5" + }, + "engines": { + "node": ">= 10.13.0" + }, + "peerDependencies": { + "eslint": "^6.0.0 || ^7.0.0", + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/eslint-loader/node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", + "dev": true, + "peerDependencies": { + "ajv": "^6.9.1" + } + }, + "node_modules/eslint-loader/node_modules/schema-utils": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-2.7.1.tgz", + "integrity": "sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.5", + "ajv": "^6.12.4", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 8.9.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/eslint-module-utils": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/eslint-module-utils/-/eslint-module-utils-2.6.0.tgz", + "integrity": "sha512-6j9xxegbqe8/kZY8cYpcp0xhbK0EgJlg3g9mib3/miLaExuuwc3n5UEfSnU6hWMbT0FAYVvDbL9RrRgpUeQIvA==", "dev": true, - "requires": { - "debug": "^2.6.8", + "dependencies": { + "debug": "^2.6.9", "pkg-dir": "^2.0.0" }, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-module-utils/node_modules/find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", + "dev": true, "dependencies": { - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "requires": { - "locate-path": "^2.0.0" - } - }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "requires": { - "p-try": "^1.0.0" - } - }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "requires": { - "p-limit": "^1.1.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=", - "dev": true - }, - "pkg-dir": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", - "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", - "dev": true, - "requires": { - "find-up": "^2.1.0" - } - } + "locate-path": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-module-utils/node_modules/locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", + "dev": true, + "dependencies": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-module-utils/node_modules/p-limit": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", + "dev": true, + "dependencies": { + "p-try": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-module-utils/node_modules/p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", + "dev": true, + "dependencies": { + "p-limit": "^1.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-module-utils/node_modules/p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint-module-utils/node_modules/pkg-dir": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", + "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", + "dev": true, + "dependencies": { + "find-up": "^2.1.0" + }, + "engines": { + "node": ">=4" } }, - "eslint-plugin-import": { - "version": "2.17.2", - "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.17.2.tgz", - "integrity": "sha512-m+cSVxM7oLsIpmwNn2WXTJoReOF9f/CtLMo7qOVmKd1KntBy0hEcuNZ3erTmWjx+DxRO0Zcrm5KwAvI9wHcV5g==", + "node_modules/eslint-plugin-import": { + "version": "2.22.1", + "resolved": "https://registry.npmjs.org/eslint-plugin-import/-/eslint-plugin-import-2.22.1.tgz", + "integrity": "sha512-8K7JjINHOpH64ozkAhpT3sd+FswIZTfMZTjdx052pnWrgRCVfp8op9tbjpAk3DdUeI/Ba4C8OjdC0r90erHEOw==", "dev": true, - "requires": { - "array-includes": "^3.0.3", + "dependencies": { + "array-includes": "^3.1.1", + "array.prototype.flat": "^1.2.3", "contains-path": "^0.1.0", "debug": "^2.6.9", "doctrine": "1.5.0", - "eslint-import-resolver-node": "^0.3.2", - "eslint-module-utils": "^2.4.0", + "eslint-import-resolver-node": "^0.3.4", + "eslint-module-utils": "^2.6.0", "has": "^1.0.3", - "lodash": "^4.17.11", "minimatch": "^3.0.4", + "object.values": "^1.1.1", "read-pkg-up": "^2.0.0", - "resolve": "^1.10.0" - }, - "dependencies": { - "doctrine": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-1.5.0.tgz", - "integrity": "sha1-N53Ocw9hZvds76TmcHoVmwLFpvo=", - "dev": true, - "requires": { - "esutils": "^2.0.2", - "isarray": "^1.0.0" - } - } + "resolve": "^1.17.0", + "tsconfig-paths": "^3.9.0" + }, + "engines": { + "node": ">=4" + }, + "peerDependencies": { + "eslint": "^2 || ^3 || ^4 || ^5 || ^6 || ^7.2.0" + } + }, + "node_modules/eslint-plugin-import/node_modules/doctrine": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-1.5.0.tgz", + "integrity": "sha1-N53Ocw9hZvds76TmcHoVmwLFpvo=", + "dev": true, + "dependencies": { + "esutils": "^2.0.2", + "isarray": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/eslint-plugin-import/node_modules/resolve": { + "version": "1.20.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.20.0.tgz", + "integrity": "sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A==", + "dev": true, + "dependencies": { + "is-core-module": "^2.2.0", + "path-parse": "^1.0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "eslint-restricted-globals": { + "node_modules/eslint-restricted-globals": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/eslint-restricted-globals/-/eslint-restricted-globals-0.1.1.tgz", "integrity": "sha1-NfDVy8ZMLj7WLpO0saevBbp+1Nc=", "dev": true }, - "eslint-scope": { - "version": "3.7.3", - "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-3.7.3.tgz", - "integrity": "sha512-W+B0SvF4gamyCTmUc+uITPY0989iXVfKvhwtmJocTaYoc/3khEHmEmvfY/Gn9HA9VV75jrQECsHizkNw1b68FA==", + "node_modules/eslint-scope": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-5.1.1.tgz", + "integrity": "sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw==", "dev": true, - "requires": { - "esrecurse": "^4.1.0", + "dependencies": { + "esrecurse": "^4.3.0", "estraverse": "^4.1.1" + }, + "engines": { + "node": ">=8.0.0" } }, - "eslint-visitor-keys": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.0.0.tgz", - "integrity": "sha512-qzm/XxIbxm/FHyH341ZrbnMUpe+5Bocte9xkmFMzPMjRaZMcXww+MpBptFvtU+79L362nqiLhekCxCxDPaUMBQ==", - "dev": true + "node_modules/eslint-utils": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/eslint-utils/-/eslint-utils-1.4.3.tgz", + "integrity": "sha512-fbBN5W2xdY45KulGXmLHZ3c3FHfVYmKg0IrAKGOkT/464PQsx2UeIzfz1RmEci+KLm1bBaAzZAh8+/E+XAeZ8Q==", + "dev": true, + "dependencies": { + "eslint-visitor-keys": "^1.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/eslint-visitor-keys": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz", + "integrity": "sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint/node_modules/ansi-regex": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", + "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/eslint/node_modules/cross-spawn": { + "version": "6.0.6", + "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-6.0.6.tgz", + "integrity": "sha512-VqCUuhcd1iB+dsv8gxPttb5iZh/D0iubSP21g36KXdEuf6I5JiioesUVjpCdHV9MZRUfVFlvwtIUyPfxo5trtw==", + "dev": true, + "dependencies": { + "nice-try": "^1.0.4", + "path-key": "^2.0.1", + "semver": "^5.5.0", + "shebang-command": "^1.2.0", + "which": "^1.2.9" + }, + "engines": { + "node": ">=4.8" + } + }, + "node_modules/eslint/node_modules/cross-spawn/node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "dev": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/eslint/node_modules/debug": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.1.tgz", + "integrity": "sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ==", + "dev": true, + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } }, - "espree": { - "version": "3.5.4", - "resolved": "https://registry.npmjs.org/espree/-/espree-3.5.4.tgz", - "integrity": "sha512-yAcIQxtmMiB/jL32dzEp2enBeidsB7xWPLNiw3IIkpVds1P+h7qF9YwJq1yUNzp2OKXgAprs4F61ih66UsoD1A==", + "node_modules/eslint/node_modules/globals": { + "version": "12.4.0", + "resolved": "https://registry.npmjs.org/globals/-/globals-12.4.0.tgz", + "integrity": "sha512-BWICuzzDvDoH54NHKCseDanAhE3CeDorgDL5MT6LMXXj2WCnd9UC2szdk4AWLfjdgNBCXLUanXYcpBBKOSWGwg==", "dev": true, - "requires": { - "acorn": "^5.5.0", - "acorn-jsx": "^3.0.0" + "dependencies": { + "type-fest": "^0.8.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "esprima": { - "version": "2.7.3", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-2.7.3.tgz", - "integrity": "sha1-luO3DVd59q1JzQMmc9HDEnZ7pYE=", + "node_modules/eslint/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", "dev": true }, - "esquery": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.1.tgz", - "integrity": "sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA==", + "node_modules/eslint/node_modules/path-key": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-2.0.1.tgz", + "integrity": "sha512-fEHGKCSmUSDPv4uoj8AlD+joPlq3peND+HRYyxFz4KPw4z926S/b8rIuFs2FYJg3BwsxJf6A9/3eIdLaYC+9Dw==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/eslint/node_modules/semver": { + "version": "6.3.1", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", + "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", + "dev": true, + "bin": { + "semver": "bin/semver.js" + } + }, + "node_modules/eslint/node_modules/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, + "dependencies": { + "ansi-regex": "^4.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/eslint/node_modules/type-fest": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.8.1.tgz", + "integrity": "sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/espree": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/espree/-/espree-6.2.1.tgz", + "integrity": "sha512-ysCxRQY3WaXJz9tdbWOwuWr5Y/XrPTGX9Kiz3yoUXwW0VZ4w30HTkQLaGx/+ttFjF8i+ACbArnB4ce68a9m5hw==", + "dev": true, + "dependencies": { + "acorn": "^7.1.1", + "acorn-jsx": "^5.2.0", + "eslint-visitor-keys": "^1.1.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/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, + "bin": { + "esparse": "bin/esparse.js", + "esvalidate": "bin/esvalidate.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/esquery": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.4.0.tgz", + "integrity": "sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w==", + "dev": true, + "dependencies": { + "estraverse": "^5.1.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/esquery/node_modules/estraverse": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", "dev": true, - "requires": { - "estraverse": "^4.0.0" + "engines": { + "node": ">=4.0" } }, - "esrecurse": { - "version": "4.2.1", - "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz", - "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==", + "node_modules/esrecurse": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.3.0.tgz", + "integrity": "sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag==", + "dev": true, + "dependencies": { + "estraverse": "^5.2.0" + }, + "engines": { + "node": ">=4.0" + } + }, + "node_modules/esrecurse/node_modules/estraverse": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-5.2.0.tgz", + "integrity": "sha512-BxbNGGNm0RyRYvUdHpIwv9IWzeM9XClbOxwoATuFdOE7ZE6wHL+HQ5T8hoPM+zHvmKzzsEqhgy0GrQ5X13afiQ==", "dev": true, - "requires": { - "estraverse": "^4.1.0" + "engines": { + "node": ">=4.0" } }, - "estraverse": { + "node_modules/estraverse": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz", "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, - "esutils": { + "node_modules/esutils": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz", "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, - "etag": { + "node_modules/etag": { "version": "1.8.1", "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", "integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=", - "dev": true + "dev": true, + "engines": { + "node": ">= 0.6" + } }, - "eventemitter3": { + "node_modules/eventemitter3": { "version": "4.0.7", "resolved": "https://registry.npmjs.org/eventemitter3/-/eventemitter3-4.0.7.tgz", "integrity": "sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw==", "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" - } - }, - "execa": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-1.0.0.tgz", - "integrity": "sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA==", - "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" + "node_modules/events": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.2.0.tgz", + "integrity": "sha512-/46HWwbfCX2xTawVfkKLGxMifJYQBWMwY1mjywRtb4c9x8l5NP3KoJtnIOiL1hfdRkIuYhETxQlo62IF8tcnlg==", + "dev": true, + "engines": { + "node": ">=0.8.x" } }, - "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" - } - } + "node_modules/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, + "dependencies": { + "original": "^1.0.0" + }, + "engines": { + "node": ">=0.12.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=", + "node_modules/execa": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/execa/-/execa-5.0.0.tgz", + "integrity": "sha512-ov6w/2LCiuyO4RLYGdpFGjkcs0wMTgGE8PrkTHikeUy5iJekXyPIKUjifk5CsE0pt7sMCrMZ3YNqoCj6idQOnQ==", "dev": true, - "requires": { - "homedir-polyfill": "^1.0.1" + "dependencies": { + "cross-spawn": "^7.0.3", + "get-stream": "^6.0.0", + "human-signals": "^2.1.0", + "is-stream": "^2.0.0", + "merge-stream": "^2.0.0", + "npm-run-path": "^4.0.1", + "onetime": "^5.1.2", + "signal-exit": "^3.0.3", + "strip-final-newline": "^2.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/execa?sponsor=1" } }, - "express": { + "node_modules/execa/node_modules/signal-exit": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.3.tgz", + "integrity": "sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==", + "dev": true + }, + "node_modules/express": { "version": "4.17.1", "resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz", "integrity": "sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==", "dev": true, - "requires": { + "dependencies": { "accepts": "~1.3.7", "array-flatten": "1.1.1", "body-parser": "1.19.0", @@ -3082,223 +4320,152 @@ "utils-merge": "1.0.1", "vary": "~1.1.2" }, - "dependencies": { - "array-flatten": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", - "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=", - "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 - } + "engines": { + "node": ">= 0.10.0" } }, - "extend": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", - "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==", + "node_modules/express/node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=", "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" - } - } + "node_modules/express/node_modules/qs": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", + "integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==", + "dev": true, + "engines": { + "node": ">=0.6" } }, - "external-editor": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-2.2.0.tgz", - "integrity": "sha512-bSn6gvGxKt+b7+6TKEv1ZycHleA7aHhRHyAqJyp5pbUFuYYNIzpZnQDk7AsYckyWdEnTeAnay0aCy2aV6iTk9A==", + "node_modules/external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", "dev": true, - "requires": { - "chardet": "^0.4.0", - "iconv-lite": "^0.4.17", + "dependencies": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", "tmp": "^0.0.33" + }, + "engines": { + "node": ">=4" } }, - "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=", + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", "dev": true }, - "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 + "node_modules/fast-glob": { + "version": "3.2.5", + "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.5.tgz", + "integrity": "sha512-2DtFcgT68wiTTiwZ2hNdJfcHNke9XOfnwmBRWXhmeKM8rF0TGwmC/Qto3S7RoZKp5cilZbxzO5iTNTQsJ+EeDg==", + "dev": true, + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.0", + "merge2": "^1.3.0", + "micromatch": "^4.0.2", + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8" + } }, - "fast-json-stable-stringify": { + "node_modules/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=", "dev": true }, - "fast-levenshtein": { + "node_modules/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==", + "node_modules/fastest-levenshtein": { + "version": "1.0.12", + "resolved": "https://registry.npmjs.org/fastest-levenshtein/-/fastest-levenshtein-1.0.12.tgz", + "integrity": "sha512-On2N+BpYJ15xIC974QNVuYGMOlEVt4s0EOI3wwMqOmK1fdDY+FN/zltPV8vosq4ad4c/gJ1KHScUn/6AWIgiow==", "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=", + "node_modules/fastq": { + "version": "1.10.1", + "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.10.1.tgz", + "integrity": "sha512-AWuv6Ery3pM+dY7LYS8YIaCiQvUaos9OB1RyNgaOWnaX+Tik7Onvcsf8x8c+YtDeT0maYLniBip2hox5KtEXXA==", "dev": true, - "requires": { - "websocket-driver": ">=0.5.1" + "dependencies": { + "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 + "node_modules/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, + "dependencies": { + "websocket-driver": ">=0.5.1" + }, + "engines": { + "node": ">=0.8.0" + } }, - "figures": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", - "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", + "node_modules/figures": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz", + "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==", "dev": true, - "requires": { + "dependencies": { "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "file-entry-cache": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-2.0.0.tgz", - "integrity": "sha1-w5KZDD5oR4PYOLjISkXYoEhFg2E=", + "node_modules/file-entry-cache": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-5.0.1.tgz", + "integrity": "sha512-bCg29ictuBaKUwwArK4ouCaqDgLZcysCFLmM/Yn/FDoqndh/9vNuQfXRDvTuXKLxfD/JtZQGKFT8MGcJBK644g==", "dev": true, - "requires": { - "flat-cache": "^1.2.1", - "object-assign": "^4.0.1" + "dependencies": { + "flat-cache": "^2.0.1" + }, + "engines": { + "node": ">=4" } }, - "file-uri-to-path": { + "node_modules/file-uri-to-path": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==", "dev": true }, - "fill-range": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", - "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "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" - } - } + "node_modules/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, + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" } }, - "finalhandler": { + "node_modules/finalhandler": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", "integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", "dev": true, - "requires": { + "dependencies": { "debug": "2.6.9", "encodeurl": "~1.0.2", "escape-html": "~1.0.3", @@ -3306,4402 +4473,3068 @@ "parseurl": "~1.3.3", "statuses": "~1.5.0", "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" } }, - "find-cache-dir": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-1.0.0.tgz", - "integrity": "sha1-kojj6ePMN0hxfTnq3hfPcfww7m8=", + "node_modules/find-cache-dir": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-3.3.1.tgz", + "integrity": "sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ==", "dev": true, - "requires": { + "dependencies": { "commondir": "^1.0.1", - "make-dir": "^1.0.0", - "pkg-dir": "^2.0.0" + "make-dir": "^3.0.2", + "pkg-dir": "^4.1.0" + }, + "engines": { + "node": ">=8" }, + "funding": { + "url": "https://github.com/avajs/find-cache-dir?sponsor=1" + } + }, + "node_modules/find-cache-dir/node_modules/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, "dependencies": { - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "requires": { - "locate-path": "^2.0.0" - } - }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "requires": { - "p-try": "^1.0.0" - } - }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "requires": { - "p-limit": "^1.1.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=", - "dev": true - }, - "pkg-dir": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-2.0.0.tgz", - "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", - "dev": true, - "requires": { - "find-up": "^2.1.0" - } - } + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "find-up": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", - "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", + "node_modules/find-cache-dir/node_modules/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": { - "locate-path": "^3.0.0" + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" } }, - "findup-sync": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/findup-sync/-/findup-sync-2.0.0.tgz", - "integrity": "sha1-kyaxSIwi0aYIhlCoaQGy2akKLLw=", + "node_modules/find-cache-dir/node_modules/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": { - "detect-file": "^1.0.0", - "is-glob": "^3.1.0", - "micromatch": "^3.0.4", - "resolve-dir": "^1.0.1" + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" } }, - "flat-cache": { - "version": "1.3.4", - "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-1.3.4.tgz", - "integrity": "sha512-VwyB3Lkgacfik2vhqR4uv2rvebqmDvFu4jlN/C1RzWoJEo8I7z4Q404oiqYCkq41mni8EzQnm95emU9seckwtg==", + "node_modules/find-cache-dir/node_modules/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, - "requires": { - "circular-json": "^0.3.1", - "graceful-fs": "^4.1.2", - "rimraf": "~2.6.2", - "write": "^0.2.1" + "engines": { + "node": ">=8" } }, - "flatten": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/flatten/-/flatten-1.0.2.tgz", - "integrity": "sha1-2uRqnXj74lKSJYzB54CkHZXAN4I=", - "dev": true + "node_modules/find-cache-dir/node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", + "dev": true, + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" + } }, - "flush-write-stream": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/flush-write-stream/-/flush-write-stream-1.1.1.tgz", - "integrity": "sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w==", + "node_modules/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": { - "inherits": "^2.0.3", - "readable-stream": "^2.3.6" + "dependencies": { + "locate-path": "^5.0.0", + "path-exists": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "follow-redirects": { - "version": "1.13.0", - "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.13.0.tgz", - "integrity": "sha512-aq6gF1BEKje4a9i9+5jimNFIpq4Q1WiwBToeRK5NvZBd/TRsmW8BsJfOEGkr76TbOyPVD3OVDN910EcUNtRYEA==", - "dev": true + "node_modules/find-up/node_modules/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, + "engines": { + "node": ">=8" + } }, - "for-in": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/for-in/-/for-in-1.0.2.tgz", - "integrity": "sha1-gQaNKVqBQuwKxybG4iAMMPttXoA=", - "dev": true + "node_modules/flat-cache": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-2.0.1.tgz", + "integrity": "sha512-LoQe6yDuUMDzQAEH8sgmh4Md6oZnc/7PjtwjNFSzveXqSHt6ka9fPBuso7IGf9Rz4uqnSnWiFH2B/zj24a5ReA==", + "dev": true, + "dependencies": { + "flatted": "^2.0.0", + "rimraf": "2.6.3", + "write": "1.0.3" + }, + "engines": { + "node": ">=4" + } }, - "forever-agent": { - "version": "0.6.1", - "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", - "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "node_modules/flatted": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/flatted/-/flatted-2.0.2.tgz", + "integrity": "sha512-r5wGx7YeOwNWNlCA0wQ86zKyDLMQr+/RB8xy74M4hTphfmjlijTSSXGuH8rnvKZnfT9i+75zmd8jcKdMR4O6jA==", "dev": true }, - "form-data": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", - "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "node_modules/follow-redirects": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.13.2.tgz", + "integrity": "sha512-6mPTgLxYm3r6Bkkg0vNM0HTjfGrOEtsfbhagQvbxDEsEkpNhw582upBaoRZylzen6krEmxXJgt9Ju6HiI4O7BA==", "dev": true, - "requires": { - "asynckit": "^0.4.0", - "combined-stream": "^1.0.6", - "mime-types": "^2.1.12" + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } } }, - "forwarded": { + "node_modules/foreach": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/foreach/-/foreach-2.0.5.tgz", + "integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k=", + "dev": true + }, + "node_modules/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" + "engines": { + "node": ">= 0.6" } }, - "fresh": { + "node_modules/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" + "engines": { + "node": ">= 0.6" } }, - "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=", + "node_modules/fs-extra": { + "version": "8.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-8.1.0.tgz", + "integrity": "sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g==", "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "iferr": "^0.1.5", - "imurmurhash": "^0.1.4", - "readable-stream": "1 || 2" + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + }, + "engines": { + "node": ">=6 <7 || >=8" } }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "node_modules/fs-extra/node_modules/graceful-fs": { + "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 }, - "fsevents": { - "version": "1.2.9", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-1.2.9.tgz", - "integrity": "sha512-oeyj2H3EjjonWcFjD5NvZNE9Rqe4UW+nQBU2HNeKw0koVLEFIhtyETyAakeAM3de7Z/SW5kcA+fZUait9EApnw==", - "dev": true, - "optional": true, - "requires": { - "nan": "^2.12.1", - "node-pre-gyp": "^0.12.0" - }, - "dependencies": { - "abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "dev": true, - "optional": 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, - "optional": true - }, - "aproba": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-1.2.0.tgz", - "integrity": "sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw==", - "dev": true, - "optional": 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==", - "dev": true, - "optional": true, - "requires": { - "delegates": "^1.0.0", - "readable-stream": "^2.0.6" - } - }, - "balanced-match": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz", - "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=", - "dev": true, - "optional": true - }, - "brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "dev": true, - "optional": true, - "requires": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, - "chownr": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.1.tgz", - "integrity": "sha512-j38EvO5+LHX84jlo6h4UzmOwi0UgW61WRyPtJz4qaadK5eY3BTS5TY/S1Stc3Uk2lIM6TPevAlULiEJwie860g==", - "dev": true, - "optional": true - }, - "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, - "optional": true - }, - "concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=", - "dev": true, - "optional": true - }, - "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, - "optional": 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=", - "dev": true, - "optional": true - }, - "debug": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.1.1.tgz", - "integrity": "sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw==", - "dev": true, - "optional": true, - "requires": { - "ms": "^2.1.1" - } - }, - "deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", - "dev": true, - "optional": true - }, - "delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=", - "dev": true, - "optional": true - }, - "detect-libc": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz", - "integrity": "sha1-+hN8S9aY7fVc1c0CrFWfkaTEups=", - "dev": true, - "optional": true - }, - "fs-minipass": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-1.2.5.tgz", - "integrity": "sha512-JhBl0skXjUPCFH7x6x61gQxrKyXsxB5gcgePLZCwfyCGGsTISMoIeObbrvVeP6Xmyaudw4TT43qV2Gz+iyd2oQ==", - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.2.1" - } - }, - "fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", - "dev": true, - "optional": true - }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", - "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", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz", - "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==", - "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", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=", - "dev": true, - "optional": 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, - "optional": true, - "requires": { - "safer-buffer": ">= 2.1.2 < 3" - } - }, - "ignore-walk": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-3.0.1.tgz", - "integrity": "sha512-DTVlMx3IYPe0/JJcYP7Gxg7ttZZu3IInhuEhbchuqneY9wWe5Ojy2mXLBaQFUQmo0AW2r3qG7m1mg86js+gnlQ==", - "dev": true, - "optional": true, - "requires": { - "minimatch": "^3.0.4" - } - }, - "inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", - "dev": true, - "optional": true, - "requires": { - "once": "^1.3.0", - "wrappy": "1" - } - }, - "inherits": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", - "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", - "dev": true, - "optional": true - }, - "ini": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", - "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", - "dev": true, - "optional": 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, - "optional": true, - "requires": { - "number-is-nan": "^1.0.0" - } - }, - "isarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", - "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", - "dev": true, - "optional": true - }, - "minimatch": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", - "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", - "dev": true, - "optional": true, - "requires": { - "brace-expansion": "^1.1.7" - } - }, - "minimist": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", - "dev": true, - "optional": true - }, - "minipass": { - "version": "2.3.5", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-2.3.5.tgz", - "integrity": "sha512-Gi1W4k059gyRbyVUZQ4mEqLm0YIUiGYfvxhF6SIlk3ui1WVxMTGfGdQ2SInh3PDrRTVvPKgULkpJtT4RH10+VA==", - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "^5.1.2", - "yallist": "^3.0.0" - } - }, - "minizlib": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-1.2.1.tgz", - "integrity": "sha512-7+4oTUOWKg7AuL3vloEWekXY2/D20cevzsrNT2kGWm+39J9hGTCBv8VI5Pm5lXZ/o3/mdR4f8rflAPhnQb8mPA==", - "dev": true, - "optional": true, - "requires": { - "minipass": "^2.2.1" - } - }, - "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", - "dev": true, - "optional": true, - "requires": { - "minimist": "0.0.8" - } - }, - "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, - "optional": true - }, - "needle": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/needle/-/needle-2.3.0.tgz", - "integrity": "sha512-QBZu7aAFR0522EyaXZM0FZ9GLpq6lvQ3uq8gteiDUp7wKdy0lSd2hPlgFwVuW1CBkfEs9PfDQsQzZghLs/psdg==", - "dev": true, - "optional": true, - "requires": { - "debug": "^4.1.0", - "iconv-lite": "^0.4.4", - "sax": "^1.2.4" - } - }, - "node-pre-gyp": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/node-pre-gyp/-/node-pre-gyp-0.12.0.tgz", - "integrity": "sha512-4KghwV8vH5k+g2ylT+sLTjy5wmUOb9vPhnM8NHvRf9dHmnW/CndrFXy2aRPaPST6dugXSdHXfeaHQm77PIz/1A==", - "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", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-4.0.1.tgz", - "integrity": "sha1-0NRoWv1UFRk8jHUFYC0NF81kR00=", - "dev": true, - "optional": true, - "requires": { - "abbrev": "1", - "osenv": "^0.1.4" - } - }, - "npm-bundled": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/npm-bundled/-/npm-bundled-1.0.6.tgz", - "integrity": "sha512-8/JCaftHwbd//k6y2rEWp6k1wxVfpFzB6t1p825+cUb7Ym2XQfhwIC5KwhrvzZRJu+LtDE585zVaS32+CGtf0g==", - "dev": true, - "optional": true - }, - "npm-packlist": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/npm-packlist/-/npm-packlist-1.4.1.tgz", - "integrity": "sha512-+TcdO7HJJ8peiiYhvPxsEDhF3PJFGUGRcFsGve3vxvxdcpO2Z4Z7rkosRM0kWj6LfbK/P0gu3dzk5RU1ffvFcw==", - "dev": true, - "optional": true, - "requires": { - "ignore-walk": "^3.0.1", - "npm-bundled": "^1.0.1" - } - }, - "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, - "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", - "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz", - "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=", - "dev": true, - "optional": 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, - "optional": true - }, - "once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", - "dev": true, - "optional": true, - "requires": { - "wrappy": "1" - } - }, - "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, - "optional": true - }, - "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, - "optional": true - }, - "osenv": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/osenv/-/osenv-0.1.5.tgz", - "integrity": "sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g==", - "dev": true, - "optional": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" - } - }, - "path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true, - "optional": 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, - "optional": true - }, - "rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "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", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true, - "optional": true - } - } - }, - "readable-stream": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", - "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", - "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", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", - "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", - "dev": true, - "optional": true, - "requires": { - "glob": "^7.1.3" - } - }, - "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, - "optional": true - }, - "safer-buffer": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", - "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", - "dev": true, - "optional": true - }, - "sax": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", - "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", - "dev": true, - "optional": 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, - "optional": 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, - "optional": true - }, - "signal-exit": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", - "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", - "dev": true, - "optional": true - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "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", - "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", - "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", - "dev": true, - "optional": true, - "requires": { - "safe-buffer": "~5.1.0" - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "optional": true, - "requires": { - "ansi-regex": "^2.0.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, - "optional": true - }, - "tar": { - "version": "4.4.8", - "resolved": "https://registry.npmjs.org/tar/-/tar-4.4.8.tgz", - "integrity": "sha512-LzHF64s5chPQQS0IYBn9IN5h3i98c12bo4NCO7e0sGM2llXQ3p2FGC5sdENN4cTW48O915Sh+x+EXx7XW96xYQ==", - "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", - "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", - "dev": true, - "optional": 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, - "optional": true, - "requires": { - "string-width": "^1.0.2 || 2" - } - }, - "wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", - "dev": true, - "optional": true - }, - "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, - "optional": true - } + "node_modules/fs-minipass": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", + "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" } }, - "fstream": { - "version": "1.0.12", - "resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz", - "integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==", + "node_modules/fs-monkey": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/fs-monkey/-/fs-monkey-1.0.1.tgz", + "integrity": "sha512-fcSa+wyTqZa46iWweI7/ZiUfegOZl0SG8+dltIwFXo7+zYU9J9kpS3NB6pZcSlJdhvIwp81Adx2XhZorncxiaA==", + "dev": true + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", + "dev": true + }, + "node_modules/fsevents": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.1.tgz", + "integrity": "sha512-YR47Eg4hChJGAB1O3yEAOkGO+rlzutoICGqGo9EZ4lKWokzZRSyIW1QmTzqjtw8MJdj9srP869CuWw/hyzSiBw==", "dev": true, - "requires": { - "graceful-fs": "^4.1.2", - "inherits": "~2.0.0", - "mkdirp": ">=0.5 0", - "rimraf": "2" + "hasInstallScript": true, + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" } }, - "function-bind": { + "node_modules/function-bind": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==", "dev": true }, - "functional-red-black-tree": { + "node_modules/functional-red-black-tree": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", "dev": true }, - "gauge": { - "version": "2.7.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz", - "integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=", + "node_modules/gensync": { + "version": "1.0.0-beta.2", + "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", + "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", "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" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "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" - } - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.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=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - } + "engines": { + "node": ">=6.9.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==", + "node_modules/geometry-interfaces": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/geometry-interfaces/-/geometry-interfaces-1.1.4.tgz", + "integrity": "sha512-qD6OdkT6NcES9l4Xx3auTpwraQruU7dARbQPVO71MKvkGYw5/z/oIiGymuFXrRaEQa5Y67EIojUpaLeGEa5hGA==", "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==", + "node_modules/get-intrinsic": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", + "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", "dev": true, - "requires": { - "pump": "^3.0.0" + "dependencies": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "get-value": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/get-value/-/get-value-2.0.6.tgz", - "integrity": "sha1-3BXKHGcjh8p2vTesCjlbogQqLCg=", - "dev": true + "node_modules/get-intrinsic/node_modules/has-symbols": { + "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, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "getpass": { - "version": "0.1.7", - "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", - "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "node_modules/get-stream": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.0.tgz", + "integrity": "sha512-A1B3Bh1UmL0bidM/YX2NsCOTnGJePL9rO/M+Mw3m9f2gUpfokS0hi5Eah0WSUEWZdZhIZtMjkIYS7mDfOqNHbg==", "dev": true, - "requires": { - "assert-plus": "^1.0.0" + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "glob": { + "node_modules/glob": { "version": "7.1.4", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.4.tgz", "integrity": "sha512-hkLPepehmnKk41pUGm3sYxoFs/umurYfYJCerbXEyFIWcAzvpipAgVkBqqT9RBKMGjnq6kMuyYwha6csxbiM1A==", "dev": true, - "requires": { + "dependencies": { "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" + }, + "engines": { + "node": "*" } }, - "glob-parent": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-3.1.0.tgz", - "integrity": "sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4=", + "node_modules/glob-parent": { + "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": "^4.0.1" + }, + "engines": { + "node": ">= 6" } }, - "global-modules": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/global-modules/-/global-modules-1.0.0.tgz", - "integrity": "sha512-sKzpEkf11GpOFuw0Zzjzmt4B4UZwjOcG757PPvrfhxcLFbq0wpsgpOqxpxtxFiCG4DtG93M6XRVbF2oGdev7bg==", + "node_modules/glob-to-regexp": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz", + "integrity": "sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw==", + "dev": true + }, + "node_modules/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, - "requires": { - "global-prefix": "^1.0.1", - "is-windows": "^1.0.1", - "resolve-dir": "^1.0.0" + "engines": { + "node": ">=4" } }, - "global-prefix": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/global-prefix/-/global-prefix-1.0.2.tgz", - "integrity": "sha1-2/dDxsFJklk8ZVVoy2btMsASLr4=", + "node_modules/globby": { + "version": "11.0.2", + "resolved": "https://registry.npmjs.org/globby/-/globby-11.0.2.tgz", + "integrity": "sha512-2ZThXDvvV8fYFRVIxnrMQBipZQDr7MxKAmQK1vujaj9/7eF0efG7BPUKJ7jP7G5SLF37xKDXvO4S/KKLj/Z0og==", "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" + "dependencies": { + "array-union": "^2.1.0", + "dir-glob": "^3.0.1", + "fast-glob": "^3.1.1", + "ignore": "^5.1.4", + "merge2": "^1.3.0", + "slash": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "globals": { - "version": "9.18.0", - "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz", - "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==", - "dev": true - }, - "globby": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/globby/-/globby-6.1.0.tgz", - "integrity": "sha1-9abXDoOV4hyFj7BInWTfAkJNUGw=", + "node_modules/globby/node_modules/ignore": { + "version": "5.1.8", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.1.8.tgz", + "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", "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 - } + "engines": { + "node": ">= 4" } }, - "graceful-fs": { + "node_modules/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 }, - "handle-thing": { + "node_modules/gzip-size": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/gzip-size/-/gzip-size-6.0.0.tgz", + "integrity": "sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q==", + "dev": true, + "dependencies": { + "duplexer": "^0.1.2" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/handle-thing": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/handle-thing/-/handle-thing-2.0.1.tgz", "integrity": "sha512-9Qn4yBxelxoh2Ow62nP+Ka/kMnOXRi8BXnRaUwezLNhqelnN49xKz4F/dPP8OYLxLxq6JDtZb2i9XznUQbNPTg==", "dev": true }, - "handlebars": { + "node_modules/handlebars": { "version": "4.7.6", "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.6.tgz", "integrity": "sha512-1f2BACcBfiwAfStCKZNrUCgqNZkGsAT7UM3kkYtXuLo0KnaVfjKOyf7PRzB6++aK9STyT1Pd2ZCPe3EGOXleXA==", "dev": true, - "requires": { + "dependencies": { "minimist": "^1.2.5", "neo-async": "^2.6.0", "source-map": "^0.6.1", - "uglify-js": "^3.1.4", "wordwrap": "^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 - }, - "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 - } + "bin": { + "handlebars": "bin/handlebars" + }, + "engines": { + "node": ">=0.4.7" + }, + "optionalDependencies": { + "uglify-js": "^3.1.4" } }, - "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.1.5", - "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.5.tgz", - "integrity": "sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w==", - "dev": true, - "requires": { - "ajv": "^6.12.3", - "har-schema": "^2.0.0" - }, - "dependencies": { - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "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" - } - }, - "fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - } + "node_modules/handlebars/node_modules/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, + "engines": { + "node": ">=0.10.0" } }, - "has": { + "node_modules/has": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", "dev": true, - "requires": { + "dependencies": { "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" }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "dev": true - } + "engines": { + "node": ">= 0.4.0" } }, - "has-flag": { + "node_modules/has-flag": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, - "has-symbols": { + "node_modules/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 + "dev": true, + "engines": { + "node": ">= 0.4" + } }, - "has-unicode": { + "node_modules/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" - } - }, - "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" - } - }, - "home-or-tmp": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/home-or-tmp/-/home-or-tmp-2.0.0.tgz", - "integrity": "sha1-42w/LSyufXRqhX440Y1fMqeILbg=", - "dev": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.1" - } - }, - "homedir-polyfill": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/homedir-polyfill/-/homedir-polyfill-1.0.3.tgz", - "integrity": "sha512-eSmmWE5bZTK2Nou4g0AI3zZ9rswp7GRKoKXS1BLUkvPviOqs4YTN1djQIqrXy9k5gEtdLPy86JjRwsNM9tnDcA==", - "dev": true, - "requires": { - "parse-passwd": "^1.0.0" - } - }, - "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==", + "node_modules/hosted-git-info": { + "version": "2.8.8", + "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.8.tgz", + "integrity": "sha512-f/wzC2QaWBs7t9IYqB4T3sR1xviIViXJRJTWBlx2Gf3g0Xi5vI7Yy4koXQ1c9OYDGHN9sBy1DQ2AB8fqZBWhUg==", "dev": true }, - "hpack.js": { + "node_modules/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": { + "dependencies": { "inherits": "^2.0.1", "obuf": "^1.0.0", "readable-stream": "^2.0.1", "wbuf": "^1.1.0" } }, - "html-comment-regex": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/html-comment-regex/-/html-comment-regex-1.1.2.tgz", - "integrity": "sha512-P+M65QY2JQ5Y0G9KKdlDpo0zK+/OHptU5AaBwUfAIDJZk1MYf32Frm84EcOytfJE0t5JvkAnKlmjsXDnWzCJmQ==", + "node_modules/html-entities": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-1.4.0.tgz", + "integrity": "sha512-8nxjcBcd8wovbeKx7h3wTji4e6+rhaVuPNpMqwWgnHh+N9ToqsCs6XztWRBPQ+UtzsoMAdKZtUENoVzU/EMtZA==", "dev": true }, - "html-entities": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/html-entities/-/html-entities-1.3.1.tgz", - "integrity": "sha512-rhE/4Z3hIhzHAUKbW8jVcCyuT5oJCXXqhN/6mXXVCpzTmvJnoH2HL/bt3EZ6p55jbFJBeAe1ZNpL5BugLujxNA==", + "node_modules/http-cache-semantics": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz", + "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==", "dev": true }, - "html2canvas": { - "version": "1.0.0-rc.7", - "resolved": "https://registry.npmjs.org/html2canvas/-/html2canvas-1.0.0-rc.7.tgz", - "integrity": "sha512-yvPNZGejB2KOyKleZspjK/NruXVQuowu8NnV2HYG7gW7ytzl+umffbtUI62v2dCHQLDdsK6HIDtyJZ0W3neerA==", - "requires": { - "css-line-break": "1.1.1" - }, - "dependencies": { - "base64-arraybuffer": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-0.2.0.tgz", - "integrity": "sha512-7emyCsu1/xiBXgQZrscw/8KPRT44I4Yq9Pe6EGs3aPRTsWuggML1/1DTuZUuIaJPIm1FTDUVXl4x/yW8s0kQDQ==" - }, - "css-line-break": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/css-line-break/-/css-line-break-1.1.1.tgz", - "integrity": "sha512-1feNVaM4Fyzdj4mKPIQNL2n70MmuYzAXZ1aytlROFX1JsOo070OsugwGjj7nl6jnDJWHDM8zRZswkmeYVWZJQA==", - "requires": { - "base64-arraybuffer": "^0.2.0" - } - } - } - }, - "http-deceiver": { + "node_modules/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": { + "node_modules/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": { + "dependencies": { "depd": "~1.1.2", "inherits": "2.0.3", "setprototypeof": "1.1.1", "statuses": ">= 1.5.0 < 2", "toidentifier": "1.0.0" + }, + "engines": { + "node": ">= 0.6" } }, - "http-proxy": { + "node_modules/http-parser-js": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/http-parser-js/-/http-parser-js-0.5.3.tgz", + "integrity": "sha512-t7hjvef/5HEK7RWTdUzVUhl8zkEu+LlaE0IYzdMuvbSDipxBRpOn4Uhw8ZyECEa808iVT8XCjzo6xmYt4CiLZg==", + "dev": true + }, + "node_modules/http-proxy": { "version": "1.18.1", "resolved": "https://registry.npmjs.org/http-proxy/-/http-proxy-1.18.1.tgz", "integrity": "sha512-7mz/721AbnJwIVbnaSv1Cz3Am0ZLT/UBwkC92VlxhXv/k/BBQfM2fXElQNC27BVGr0uwUpplYPQM9LnaBMR5NQ==", "dev": true, - "requires": { + "dependencies": { "eventemitter3": "^4.0.0", "follow-redirects": "^1.0.0", "requires-port": "^1.0.0" + }, + "engines": { + "node": ">=8.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==", + "node_modules/http-proxy-agent": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", + "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", "dev": true, - "requires": { - "http-proxy": "^1.17.0", - "is-glob": "^4.0.0", - "lodash": "^4.17.11", - "micromatch": "^3.1.10" - }, - "dependencies": { - "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" - } + "dependencies": { + "@tootallnate/once": "1", + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/http-proxy-agent/node_modules/debug": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true } } }, - "http-signature": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", - "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "node_modules/http-proxy-agent/node_modules/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 + }, + "node_modules/http-proxy-middleware": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/http-proxy-middleware/-/http-proxy-middleware-1.0.6.tgz", + "integrity": "sha512-NyL6ZB6cVni7pl+/IT2W0ni5ME00xR0sN27AQZZrpKn1b+qRh+mLbBxIq9Cq1oGfmTc7BUq4HB77mxwCaxAYNg==", "dev": true, - "requires": { - "assert-plus": "^1.0.0", - "jsprim": "^1.2.2", - "sshpk": "^1.7.0" + "dependencies": { + "@types/http-proxy": "^1.17.4", + "http-proxy": "^1.18.1", + "is-glob": "^4.0.1", + "lodash": "^4.17.20", + "micromatch": "^4.0.2" + }, + "engines": { + "node": ">=8.0.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=", + "node_modules/https-proxy-agent": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz", + "integrity": "sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA==", + "dev": true, + "dependencies": { + "agent-base": "6", + "debug": "4" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/https-proxy-agent/node_modules/debug": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", + "dev": true, + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/https-proxy-agent/node_modules/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 }, - "iconv-lite": { + "node_modules/human-signals": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", + "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", + "dev": true, + "engines": { + "node": ">=10.17.0" + } + }, + "node_modules/humanize-ms": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", + "integrity": "sha1-xG4xWaKT9riW2ikxbYtv6Lt5u+0=", + "dev": true, + "dependencies": { + "ms": "^2.0.0" + } + }, + "node_modules/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": { + "dependencies": { "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" } }, - "icss-replace-symbols": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/icss-replace-symbols/-/icss-replace-symbols-1.1.0.tgz", - "integrity": "sha1-Bupvg2ead0njhs/h/oEq5dsiPe0=", - "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=", - "dev": true, - "requires": { - "postcss": "^6.0.1" - }, - "dependencies": { - "postcss": { - "version": "6.0.23", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz", - "integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==", - "dev": true, - "requires": { - "chalk": "^2.4.1", - "source-map": "^0.6.1", - "supports-color": "^5.4.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 - } + "node_modules/icss-utils": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/icss-utils/-/icss-utils-5.1.0.tgz", + "integrity": "sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA==", + "dev": true, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" } }, - "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 + "node_modules/ignore": { + "version": "4.0.6", + "resolved": "https://registry.npmjs.org/ignore/-/ignore-4.0.6.tgz", + "integrity": "sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg==", + "dev": true, + "engines": { + "node": ">= 4" + } }, - "iferr": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/iferr/-/iferr-0.1.5.tgz", - "integrity": "sha1-xg7taebY/bazEEofy8ocGS3FtQE=", - "dev": true + "node_modules/import-fresh": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/import-fresh/-/import-fresh-3.3.1.tgz", + "integrity": "sha512-TR3KfrTZTYLPB6jUjfx6MF9WcWrHL9su5TObK4ZkYgBdWKPOFoSoQIdEuTuR82pmtxH2spWG9h6etwfr1pLBqQ==", + "dev": true, + "dependencies": { + "parent-module": "^1.0.0", + "resolve-from": "^4.0.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "ignore": { - "version": "3.3.10", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz", - "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==", - "dev": true + "node_modules/import-fresh/node_modules/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, + "engines": { + "node": ">=4" + } }, - "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==", + "node_modules/import-local": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.0.2.tgz", + "integrity": "sha512-vjL3+w0oulAVZ0hBHnxa/Nm5TAurf9YLQJDhqRZyqb+VKGOB6LU8t9H1Nr5CIo16vh9XfJTOoHwU0B71S557gA==", "dev": true, - "requires": { - "pkg-dir": "^3.0.0", - "resolve-cwd": "^2.0.0" + "dependencies": { + "pkg-dir": "^4.2.0", + "resolve-cwd": "^3.0.0" + }, + "bin": { + "import-local-fixture": "fixtures/cli.js" + }, + "engines": { + "node": ">=8" } }, - "imurmurhash": { + "node_modules/imurmurhash": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.8.19" + } + }, + "node_modules/indent-string": { + "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, + "engines": { + "node": ">=8" + } }, - "indexes-of": { + "node_modules/indexes-of": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/indexes-of/-/indexes-of-1.0.1.tgz", "integrity": "sha1-8w9xbI4r00bHtn0985FVZqfAVgc=", "dev": true }, - "infer-owner": { + "node_modules/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": { + "node_modules/inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=", "dev": true, - "requires": { + "dependencies": { "once": "^1.3.0", "wrappy": "1" } }, - "inherits": { + "node_modules/inherits": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz", "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=", "dev": true }, - "ini": { - "version": "1.3.5", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.5.tgz", - "integrity": "sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==", + "node_modules/inquirer": { + "version": "7.3.3", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz", + "integrity": "sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==", + "dev": true, + "dependencies": { + "ansi-escapes": "^4.2.1", + "chalk": "^4.1.0", + "cli-cursor": "^3.1.0", + "cli-width": "^3.0.0", + "external-editor": "^3.0.3", + "figures": "^3.0.0", + "lodash": "^4.17.19", + "mute-stream": "0.0.8", + "run-async": "^2.4.0", + "rxjs": "^6.6.0", + "string-width": "^4.1.0", + "strip-ansi": "^6.0.0", + "through": "^2.3.6" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/inquirer/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/inquirer/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/inquirer/node_modules/chalk": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", + "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } + }, + "node_modules/inquirer/node_modules/color-convert": { + "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, + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/inquirer/node_modules/color-name": { + "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 }, - "inquirer": { - "version": "3.3.0", - "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-3.3.0.tgz", - "integrity": "sha512-h+xtnyk4EwKvFWHrUYsWErEVR+igKtLdchu+o0Z1RL7VU/jVMFbYir2bp6bAj8efFNxWqHX0dIss6fJQ+/+qeQ==", + "node_modules/inquirer/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/inquirer/node_modules/is-fullwidth-code-point": { + "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, + "engines": { + "node": ">=8" + } + }, + "node_modules/inquirer/node_modules/string-width": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", + "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", "dev": true, - "requires": { - "ansi-escapes": "^3.0.0", - "chalk": "^2.0.0", - "cli-cursor": "^2.1.0", - "cli-width": "^2.0.0", - "external-editor": "^2.0.4", - "figures": "^2.0.0", - "lodash": "^4.3.0", - "mute-stream": "0.0.7", - "run-async": "^2.2.0", - "rx-lite": "^4.0.8", - "rx-lite-aggregates": "^4.0.8", - "string-width": "^2.1.0", - "strip-ansi": "^4.0.0", - "through": "^2.3.6" + "dependencies": { + "emoji-regex": "^8.0.0", + "is-fullwidth-code-point": "^3.0.0", + "strip-ansi": "^6.0.1" + }, + "engines": { + "node": ">=8" } }, - "internal-ip": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-4.3.0.tgz", - "integrity": "sha512-S1zBo1D6zcsyuC6PMmY5+55YMILQ9av8lotMx447Bq6SAgo/sDK6y6uUKmuYhW7eacnIhFfsPmCNYdDzsnnDCg==", + "node_modules/inquirer/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", "dev": true, - "requires": { - "default-gateway": "^4.2.0", - "ipaddr.js": "^1.9.0" + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" } }, - "interpret": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.2.0.tgz", - "integrity": "sha512-mT34yGKMNceBQUoVn7iCDKDntA7SC6gycMAWzGx1z/CMCTV7b2AAtXlo3nRyHZ1FelRkQbQjprHSYGwzLtkVbw==", - "dev": true + "node_modules/inquirer/node_modules/supports-color": { + "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, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } }, - "invariant": { - "version": "2.2.4", - "resolved": "https://registry.npmjs.org/invariant/-/invariant-2.2.4.tgz", - "integrity": "sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA==", + "node_modules/internal-ip": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/internal-ip/-/internal-ip-6.2.0.tgz", + "integrity": "sha512-D8WGsR6yDt8uq7vDMu7mjcR+yRMm3dW8yufyChmszWRjcSHuxLBkR3GdS2HZAjodsaGuCvXeEJpueisXJULghg==", "dev": true, - "requires": { - "loose-envify": "^1.0.0" + "dependencies": { + "default-gateway": "^6.0.0", + "ipaddr.js": "^1.9.1", + "is-ip": "^3.1.0", + "p-event": "^4.2.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/internal-ip?sponsor=1" } }, - "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 + "node_modules/interpret": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/interpret/-/interpret-2.2.0.tgz", + "integrity": "sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw==", + "dev": true, + "engines": { + "node": ">= 0.10" + } }, - "ip": { + "node_modules/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 + "node_modules/ip-regex": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ip-regex/-/ip-regex-4.3.0.tgz", + "integrity": "sha512-B9ZWJxHHOHUhUjCPrMpLD4xEq35bUTClHM1S6CBU5ixQnkZmwipwgc96vAd7AAGM9TGHvJR+Uss+/Ak6UphK+Q==", + "dev": true, + "engines": { + "node": ">=8" + } }, - "ipaddr.js": { + "node_modules/ipaddr.js": { "version": "1.9.1", "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", - "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 + "dev": true, + "engines": { + "node": ">= 0.10" + } }, - "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=", + "node_modules/is-arguments": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.1.0.tgz", + "integrity": "sha512-1Ij4lOMPl/xB5kBDn7I+b2ttPMKa8szhEIrXDuXQD/oe3HJLTLhqhgGspwgyGd6MOywBUqVvYicF72lkgDnIHg==", "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" - } - } + "call-bind": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "is-arguments": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/is-arguments/-/is-arguments-1.0.4.tgz", - "integrity": "sha512-xPh0Rmt8NE65sNzvyUmWgI1tz3mKq74lGA0mL8LYZcoIzKOzDh6HmrYm3d18k60nHerC8A9Km8kYu87zfSFnLA==", - "dev": true - }, - "is-arrayish": { + "node_modules/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": "1.0.1", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-1.0.1.tgz", - "integrity": "sha1-dfFmQrSA8YenEcgUFh/TpKdlWJg=", + "node_modules/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": "^1.0.0" + "dependencies": { + "binary-extensions": "^2.0.0" + }, + "engines": { + "node": ">=8" } }, - "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-callable": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.1.4.tgz", - "integrity": "sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==", - "dev": true - }, - "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=", + "node_modules/is-callable": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.3.tgz", + "integrity": "sha512-J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ==", "dev": true, - "requires": { - "kind-of": "^3.0.2" + "engines": { + "node": ">= 0.4" }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-core-module": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.2.0.tgz", + "integrity": "sha512-XRAfAdyyY5F5cOXn7hYQDqh2Xmii+DEfIcQGxK/uNwMHhIkPWO0g8msXcbzLe+MpGoR951MlqM/2iIlU4vKDdQ==", + "dev": true, "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": "^1.0.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "is-date-object": { + "node_modules/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=", - "dev": true + "dev": true, + "engines": { + "node": ">= 0.4" + } }, - "is-descriptor": { - "version": "0.1.6", - "resolved": "https://registry.npmjs.org/is-descriptor/-/is-descriptor-0.1.6.tgz", - "integrity": "sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg==", + "node_modules/is-docker": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.1.1.tgz", + "integrity": "sha512-ZOoqiXfEwtGknTiuDEy8pN2CfE3TxMHprvNer1mXiqwkOT77Rw3YVrUQ52EqAOU3QAWDQ+bQdx7HJzrv7LS2Hw==", "dev": true, - "requires": { - "is-accessor-descriptor": "^0.1.6", - "is-data-descriptor": "^0.1.4", - "kind-of": "^5.0.0" + "bin": { + "is-docker": "cli.js" }, - "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 - } + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "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": { + "node_modules/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.0.2", - "resolved": "https://registry.npmjs.org/is-finite/-/is-finite-1.0.2.tgz", - "integrity": "sha1-zGZ3aVYCvlUO8R6LSqYwU0K20Ko=", "dev": true, - "requires": { - "number-is-nan": "^1.0.0" + "engines": { + "node": ">=0.10.0" } }, - "is-fullwidth-code-point": { + "node_modules/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 + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/is-generator-function": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/is-generator-function/-/is-generator-function-1.0.8.tgz", + "integrity": "sha512-2Omr/twNtufVZFr1GhxjOMFPAj2sjc/dKaIqBhvo4qciXfJmITGH6ZGd8eZYNHza8t1y0e01AuqRhJwfWp26WQ==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "is-glob": { + "node_modules/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, + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-ip": { "version": "3.1.0", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-3.1.0.tgz", - "integrity": "sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo=", + "resolved": "https://registry.npmjs.org/is-ip/-/is-ip-3.1.0.tgz", + "integrity": "sha512-35vd5necO7IitFPjd/YBeqwWnyDWbuLH9ZXQdMfDA8TEo7pv5X8yfrvVO3xbJbLUlERCMvf6X0hTUamQxCYJ9Q==", "dev": true, - "requires": { - "is-extglob": "^2.1.0" + "dependencies": { + "ip-regex": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "is-negative-zero": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.0.tgz", - "integrity": "sha1-lVOxIbD6wohp2p7UWeIMdUN4hGE=", + "node_modules/is-lambda": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", + "integrity": "sha1-PZh3iZ5qU+/AFgUEzeFfgubwYdU=", "dev": true }, - "is-number": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", - "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", + "node_modules/is-negative-zero": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/is-negative-zero/-/is-negative-zero-2.0.1.tgz", + "integrity": "sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w==", "dev": true, - "requires": { - "kind-of": "^3.0.2" + "engines": { + "node": ">= 0.4" }, - "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" - } - } + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/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, + "engines": { + "node": ">=0.12.0" } }, - "is-path-cwd": { + "node_modules/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" + "engines": { + "node": ">=6" } }, - "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==", + "node_modules/is-path-inside": { + "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, - "requires": { - "path-is-inside": "^1.0.2" + "engines": { + "node": ">=8" } }, - "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=", - "dev": true - }, - "is-plain-object": { + "node_modules/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==", "dev": true, - "requires": { + "dependencies": { "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" } }, - "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": { + "node_modules/is-regex": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.0.4.tgz", "integrity": "sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=", "dev": true, - "requires": { + "dependencies": { "has": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" } }, - "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-stream": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-1.1.0.tgz", - "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", - "dev": true + "node_modules/is-stream": { + "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, + "engines": { + "node": ">=8" + } }, - "is-svg": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-svg/-/is-svg-2.1.0.tgz", - "integrity": "sha1-z2EJDaDZ77yrhyLeum8DIgjbsOk=", + "node_modules/is-string": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/is-string/-/is-string-1.0.5.tgz", + "integrity": "sha512-buY6VNRjhQMiF1qWDouloZlQbRhDPCebwxSjxMjxgemYT46YMd2NR0/H+fBhEfWX4A/w9TBJ+ol+okqJKFE6vQ==", "dev": true, - "requires": { - "html-comment-regex": "^1.1.0" + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "is-symbol": { + "node_modules/is-symbol": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/is-symbol/-/is-symbol-1.0.2.tgz", "integrity": "sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw==", "dev": true, - "requires": { + "dependencies": { "has-symbols": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" } }, - "is-typedarray": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", - "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=", - "dev": true + "node_modules/is-typed-array": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/is-typed-array/-/is-typed-array-1.1.4.tgz", + "integrity": "sha512-ILaRgn4zaSrVNXNGtON6iFNotXW3hAPF3+0fB1usg2jFlWqo5fEDdmJkz0zBfoi7Dgskr8Khi2xZ8cXqZEfXNA==", + "dev": true, + "dependencies": { + "available-typed-arrays": "^1.0.2", + "call-bind": "^1.0.0", + "es-abstract": "^1.18.0-next.1", + "foreach": "^2.0.5", + "has-symbols": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "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 + "node_modules/is-typed-array/node_modules/es-abstract": { + "version": "1.18.0-next.2", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0-next.2.tgz", + "integrity": "sha512-Ih4ZMFHEtZupnUh6497zEL4y2+w8+1ljnCyaTa+adcoafI1GOvMwFlDjBLfWR7y9VLfrjRJe9ocuHY1PSR9jjw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2", + "has": "^1.0.3", + "has-symbols": "^1.0.1", + "is-callable": "^1.2.2", + "is-negative-zero": "^2.0.1", + "is-regex": "^1.1.1", + "object-inspect": "^1.9.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.2", + "string.prototype.trimend": "^1.0.3", + "string.prototype.trimstart": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "is-wsl": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", - "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", - "dev": true + "node_modules/is-typed-array/node_modules/es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "dev": true, + "dependencies": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typed-array/node_modules/has-symbols": { + "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, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typed-array/node_modules/is-callable": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.3.tgz", + "integrity": "sha512-J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typed-array/node_modules/is-regex": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.2.tgz", + "integrity": "sha512-axvdhb5pdhEVThqJzYXwMlVuZwC+FF2DpcOhTS+y/8jVq4trxyPgfcwIxIKiyeuLlSQYKkmUaPQJ8ZE4yNKXDg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-symbols": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-wsl": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", + "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", + "dev": true, + "dependencies": { + "is-docker": "^2.0.0" + }, + "engines": { + "node": ">=8" + } }, - "isarray": { + "node_modules/isarray": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=", "dev": true }, - "isexe": { + "node_modules/isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", "integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=", "dev": true }, - "ismobilejs": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/ismobilejs/-/ismobilejs-1.0.3.tgz", - "integrity": "sha512-6rTcdWK7PHIWPYlCPdTbU9eE9yzdnIQSpiH+8Ln5OqugpEszQK5KHlsjZrDae26fEhki9rPvQmsjI1q4CLuKIA==", + "node_modules/ismobilejs": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ismobilejs/-/ismobilejs-1.1.1.tgz", + "integrity": "sha512-VaFW53yt8QO61k2WJui0dHf4SlL8lxBofUuUmwBo0ljPk0Drz2TiuDW4jo3wDcv41qy/SxrJ+VAzJ/qYqsmzRw==", "dev": true }, - "isobject": { + "node_modules/isobject": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/isobject/-/isobject-3.0.1.tgz", "integrity": "sha1-TkMekrEalzFjaqH5yNHMvP2reN8=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, - "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 + "node_modules/jest-worker": { + "version": "27.1.0", + "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-27.1.0.tgz", + "integrity": "sha512-mO4PHb2QWLn9yRXGp7rkvXLAYuxwhq1ZYUo0LoDhg8wqvv4QizP1ZWEJOeolgbEgAWZLIEU0wsku8J+lGWfBhg==", + "dev": true, + "dependencies": { + "@types/node": "*", + "merge-stream": "^2.0.0", + "supports-color": "^8.0.0" + }, + "engines": { + "node": ">= 10.13.0" + } }, - "js-base64": { - "version": "2.5.1", - "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.5.1.tgz", - "integrity": "sha512-M7kLczedRMYX4L8Mdh4MzyAMM9O5osx+4FcOQuTvr3A9F2D9S5JXheN0ewNbrvK2UatkTRhL5ejGmGSjNMiZuw==", - "dev": true + "node_modules/jest-worker/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "engines": { + "node": ">=8" + } }, - "js-tokens": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz", - "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=", - "dev": true + "node_modules/jest-worker/node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } }, - "js-yaml": { - "version": "3.13.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.13.1.tgz", - "integrity": "sha512-YfbcO7jXDdyj0DGxYVSlSeQNHbD7XPWvrVWeVUujrQEoZzWJIRrCPoyk6kL6IAjAG2IolMK4T0hNUe0HOUs5Jw==", + "node_modules/js-yaml": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", + "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", "dev": true, - "requires": { + "dependencies": { "argparse": "^1.0.7", "esprima": "^4.0.0" }, - "dependencies": { - "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 - } + "bin": { + "js-yaml": "bin/js-yaml.js" } }, - "jsbn": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", - "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=", - "dev": true - }, - "jsesc": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-1.3.0.tgz", - "integrity": "sha1-RsP+yMGJKxKwgz25vHYiF226s0s=", - "dev": true - }, - "json-parse-better-errors": { + "node_modules/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=", - "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=", + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", "dev": true }, - "json-stable-stringify-without-jsonify": { + "node_modules/json-stable-stringify-without-jsonify": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz", "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", "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": { + "node_modules/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": { + "node_modules/json5": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/json5/-/json5-1.0.1.tgz", "integrity": "sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow==", "dev": true, - "requires": { + "dependencies": { "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" } }, - "jsprim": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.1.tgz", - "integrity": "sha1-MT5mvB5cwG5Di8G3SZwuXFastqI=", + "node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss=", "dev": true, - "requires": { - "assert-plus": "1.0.0", - "extsprintf": "1.3.0", - "json-schema": "0.2.3", - "verror": "1.10.0" + "optionalDependencies": { + "graceful-fs": "^4.1.6" } }, - "killable": { + "node_modules/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 - }, - "lcid": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/lcid/-/lcid-2.0.0.tgz", - "integrity": "sha512-avPEb8P8EGnwXKClwsNUgryVjllcRqtMYa49NTsbQagYuT1DcXnl1915oxWjoyGrXR6zH/Y0Zc96xWsPcoDKeA==", + "node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", "dev": true, - "requires": { - "invert-kv": "^2.0.0" + "engines": { + "node": ">=0.10.0" } }, - "levn": { + "node_modules/levn": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz", "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=", "dev": true, - "requires": { + "dependencies": { "prelude-ls": "~1.1.2", "type-check": "~0.3.2" + }, + "engines": { + "node": ">= 0.8.0" } }, - "load-json-file": { + "node_modules/load-json-file": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-2.0.0.tgz", "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", "dev": true, - "requires": { + "dependencies": { "graceful-fs": "^4.1.2", "parse-json": "^2.2.0", "pify": "^2.0.0", "strip-bom": "^3.0.0" }, - "dependencies": { - "pify": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", - "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", - "dev": true - } - } - }, - "loader-fs-cache": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/loader-fs-cache/-/loader-fs-cache-1.0.2.tgz", - "integrity": "sha512-70IzT/0/L+M20jUlEqZhZyArTU6VKLRTYRDAYN26g4jfzpJqjipLL3/hgYpySqI9PwsVRHHFja0LfEmsx9X2Cw==", - "dev": true, - "requires": { - "find-cache-dir": "^0.1.1", - "mkdirp": "0.5.1" - }, - "dependencies": { - "find-cache-dir": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/find-cache-dir/-/find-cache-dir-0.1.1.tgz", - "integrity": "sha1-yN765XyKUqinhPnjHFfHQumToLk=", - "dev": true, - "requires": { - "commondir": "^1.0.1", - "mkdirp": "^0.5.1", - "pkg-dir": "^1.0.0" - } - }, - "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" - } - }, - "pkg-dir": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-1.0.0.tgz", - "integrity": "sha1-ektQio1bstYp1EcFb/TpyTFM89Q=", - "dev": true, - "requires": { - "find-up": "^1.0.0" - } - } + "engines": { + "node": ">=4" } }, - "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==", + "node_modules/loader-runner": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/loader-runner/-/loader-runner-4.2.0.tgz", + "integrity": "sha512-92+huvxMvYlMzMt0iIOukcwYBFpkYJdpl2xsZ7LrlayO7E8SOv+JJUEK17B/dJIHAOLMfh2dZZ/Y18WgmGtYNw==", "dev": true, - "requires": { - "big.js": "^5.2.2", - "emojis-list": "^2.0.0", - "json5": "^1.0.1" + "engines": { + "node": ">=6.11.5" } }, - "locate-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", - "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", + "node_modules/loader-utils": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/loader-utils/-/loader-utils-2.0.0.tgz", + "integrity": "sha512-rP4F0h2RaWSvPEkD7BLDFQnvSf+nK+wr3ESUjNTyAGobqrijmW92zc+SO6d4p4B1wh7+B/Jg1mkQe5NYUEHtHQ==", "dev": true, - "requires": { - "p-locate": "^3.0.0", - "path-exists": "^3.0.0" + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^2.1.2" + }, + "engines": { + "node": ">=8.9.0" } }, - "lodash": { - "version": "4.17.15", - "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.15.tgz", - "integrity": "sha512-8xOcRHvCjnocdS5cpwXQXVzmmh5e5+saE2QGoeQmbKmRS6J3VQppPOIt0MnmE+4xlZoumy0GPG0D0MVIQbNA1A==", - "dev": true - }, - "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": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", - "integrity": "sha1-vMbEmkKihA7Zl/Mj6tpezRguC/4=", - "dev": true + "node_modules/loader-utils/node_modules/json5": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.0.tgz", + "integrity": "sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA==", + "dev": true, + "dependencies": { + "minimist": "^1.2.5" + }, + "bin": { + "json5": "lib/cli.js" + }, + "engines": { + "node": ">=6" + } }, - "lodash.uniq": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/lodash.uniq/-/lodash.uniq-4.5.0.tgz", - "integrity": "sha1-0CJTc662Uq3BvILklFM5qEJ1R3M=", - "dev": true + "node_modules/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, + "dependencies": { + "p-locate": "^4.1.0" + }, + "engines": { + "node": ">=8" + } }, - "loglevel": { - "version": "1.7.0", - "resolved": "https://registry.npmjs.org/loglevel/-/loglevel-1.7.0.tgz", - "integrity": "sha512-i2sY04nal5jDcagM3FMfG++T69GEEM8CYuOfeOIvmXzOIcwE9a/CJPR0MFM97pYMj/u10lzz7/zd7+qwhrBTqQ==", + "node_modules/lodash": { + "version": "4.17.20", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.20.tgz", + "integrity": "sha512-PlhdFcillOINfeV7Ni6oF1TAEayyZBoZ8bcshTHqOYJYlrqzRK5hagpagky5o4HfCzzd1TRkXPMFq6cKk9rGmA==", "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==", + "node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", "dev": true, - "requires": { - "js-tokens": "^3.0.0 || ^4.0.0" + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" } }, - "lru-cache": { - "version": "4.1.5", - "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz", - "integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==", + "node_modules/make-dir": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-3.1.0.tgz", + "integrity": "sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==", "dev": true, - "requires": { - "pseudomap": "^1.0.2", - "yallist": "^2.1.2" + "dependencies": { + "semver": "^6.0.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "make-dir": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-1.3.0.tgz", - "integrity": "sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ==", + "node_modules/make-dir/node_modules/semver": { + "version": "6.3.0", + "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", "dev": true, - "requires": { - "pify": "^3.0.0" + "bin": { + "semver": "bin/semver.js" } }, - "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 + "node_modules/make-fetch-happen": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-9.1.0.tgz", + "integrity": "sha512-+zopwDy7DNknmwPQplem5lAZX/eCOzSvSNNcSKm5eVwTkOBzoktEfXsa9L23J/GIRhxRsaxzkPEhrJEpE2F4Gg==", + "dev": true, + "dependencies": { + "agentkeepalive": "^4.1.3", + "cacache": "^15.2.0", + "http-cache-semantics": "^4.1.0", + "http-proxy-agent": "^4.0.1", + "https-proxy-agent": "^5.0.0", + "is-lambda": "^1.0.1", + "lru-cache": "^6.0.0", + "minipass": "^3.1.3", + "minipass-collect": "^1.0.2", + "minipass-fetch": "^1.3.2", + "minipass-flush": "^1.0.5", + "minipass-pipeline": "^1.2.4", + "negotiator": "^0.6.2", + "promise-retry": "^2.0.1", + "socks-proxy-agent": "^6.0.0", + "ssri": "^8.0.0" + }, + "engines": { + "node": ">= 10" + } }, - "map-age-cleaner": { + "node_modules/map-age-cleaner": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz", "integrity": "sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==", "dev": true, - "requires": { + "dependencies": { "p-defer": "^1.0.0" + }, + "engines": { + "node": ">=6" } }, - "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-visit": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/map-visit/-/map-visit-1.0.0.tgz", - "integrity": "sha1-7Nyo8TFE5mDxtb1B8S80edmN+48=", + "node_modules/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, - "requires": { - "object-visit": "^1.0.0" + "engines": { + "node": ">= 0.6" } }, - "math-expression-evaluator": { - "version": "1.2.17", - "resolved": "https://registry.npmjs.org/math-expression-evaluator/-/math-expression-evaluator-1.2.17.tgz", - "integrity": "sha1-3oGf282E3M2PrlnGrreWFbnSZqw=", - "dev": true - }, - "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==", + "node_modules/mem": { + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/mem/-/mem-8.0.0.tgz", + "integrity": "sha512-qrcJOe6uD+EW8Wrci1Vdiua/15Xw3n/QnaNXE7varnB6InxSk7nu3/i5jfy3S6kWxr8WYJ6R1o0afMUtvorTsA==", "dev": true, - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1", - "safe-buffer": "^5.1.2" + "dependencies": { + "map-age-cleaner": "^0.1.3", + "mimic-fn": "^3.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sindresorhus/mem?sponsor=1" } }, - "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.3.0", - "resolved": "https://registry.npmjs.org/mem/-/mem-4.3.0.tgz", - "integrity": "sha512-qX2bG48pTqYRVmDB37rn/6PT7LcR8T7oAX3bf99u1Tt1nzxYfxkgqDwUwolPlXweM0XzBOBFzSx4kfp7KP1s/w==", + "node_modules/mem/node_modules/mimic-fn": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-3.1.0.tgz", + "integrity": "sha512-Ysbi9uYW9hFyfrThdDEQuykN4Ey6BuwPD2kpI5ES/nFTDn/98yxYNLZJcgUAKPT/mcrLLKaGzJR9YVxJrIdASQ==", "dev": true, - "requires": { - "map-age-cleaner": "^0.1.1", - "mimic-fn": "^2.0.0", - "p-is-promise": "^2.0.0" + "engines": { + "node": ">=8" } }, - "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=", + "node_modules/memfs": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/memfs/-/memfs-3.2.0.tgz", + "integrity": "sha512-f/xxz2TpdKv6uDn6GtHee8ivFyxwxmPuXatBb1FBwxYNuVpbM3k/Y1Z+vC0mH/dIXXrukYfe3qe5J32Dfjg93A==", "dev": true, - "requires": { - "errno": "^0.1.3", - "readable-stream": "^2.0.1" + "dependencies": { + "fs-monkey": "1.0.1" + }, + "engines": { + "node": ">= 4.0.0" } }, - "merge-descriptors": { + "node_modules/merge-descriptors": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=", "dev": true }, - "methods": { + "node_modules/merge-stream": { + "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 + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "dev": true, + "engines": { + "node": ">= 8" + } + }, + "node_modules/methods": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", - "dev": true + "dev": true, + "engines": { + "node": ">= 0.6" + } }, - "microbuffer": { + "node_modules/microbuffer": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/microbuffer/-/microbuffer-1.0.0.tgz", "integrity": "sha1-izgy7UDIfVH0e7I0kTppinVtGdI=", "dev": true }, - "micromatch": { - "version": "3.1.10", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", - "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "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==", + "node_modules/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": { - "bn.js": "^4.0.0", - "brorand": "^1.0.1" + "dependencies": { + "braces": "^3.0.1", + "picomatch": "^2.0.5" + }, + "engines": { + "node": ">=8" } }, - "mime": { + "node_modules/mime": { "version": "2.4.4", "resolved": "https://registry.npmjs.org/mime/-/mime-2.4.4.tgz", "integrity": "sha512-LRxmNwziLPT828z+4YkNzloCFC2YM4wrB99k+AV5ZbEyfGNWfG8SO1FUXLmLDBSo89NrJZ4DIWeLjy1CHGhMGA==", - "dev": true + "dev": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4.0.0" + } }, - "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 + "node_modules/mime-db": { + "version": "1.45.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.45.0.tgz", + "integrity": "sha512-CkqLUxUk15hofLoLyljJSrukZi8mAtgd+yE5uO4tqRZsdsAJKv0O+rFMhVDRJgozy+yG6md5KwuXhD4ocIoP+w==", + "dev": true, + "engines": { + "node": ">= 0.6" + } }, - "mime-types": { - "version": "2.1.24", - "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.24.tgz", - "integrity": "sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==", + "node_modules/mime-types": { + "version": "2.1.28", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.28.tgz", + "integrity": "sha512-0TO2yJ5YHYr7M2zzT7gDU1tbwHxEUWBCLt0lscSNpcdAfFyJOVEpRYNS7EXVcTLNj/25QO8gulHC5JtTzSE2UQ==", "dev": true, - "requires": { - "mime-db": "1.40.0" + "dependencies": { + "mime-db": "1.45.0" + }, + "engines": { + "node": ">= 0.6" } }, - "mimic-fn": { + "node_modules/mimic-fn": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true + "dev": true, + "engines": { + "node": ">=6" + } }, - "minimalistic-assert": { + "node_modules/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=", - "dev": true - }, - "minimatch": { + "node_modules/minimatch": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", "dev": true, - "requires": { + "dependencies": { "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" } }, - "minimist": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.0.tgz", - "integrity": "sha1-o1AIsg9BOD7sH7kU9M1d95omQoQ=", - "dev": true + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "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" - } - }, - "mixin-deep": { - "version": "1.3.2", - "resolved": "https://registry.npmjs.org/mixin-deep/-/mixin-deep-1.3.2.tgz", - "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", - "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" - } - } + "node_modules/minipass": { + "version": "3.1.6", + "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.1.6.tgz", + "integrity": "sha512-rty5kpw9/z8SX9dmxblFA6edItUmwJgMeYDZRrwlIVN27i8gysGbznJwUggw2V/FVqFSDdWy040ZPS811DYAqQ==", + "dev": true, + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "mkdirp": { - "version": "0.5.1", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz", - "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=", + "node_modules/minipass-collect": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", + "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", "dev": true, - "requires": { - "minimist": "0.0.8" + "dependencies": { + "minipass": "^3.0.0" }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minipass-fetch": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-1.4.1.tgz", + "integrity": "sha512-CGH1eblLq26Y15+Azk7ey4xh0J/XfJfrCox5LDJiKqI2Q2iwOLOKrlmIaODiSQS8d18jalF6y2K2ePUm0CmShw==", + "dev": true, "dependencies": { - "minimist": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz", - "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=", - "dev": true - } + "minipass": "^3.1.0", + "minipass-sized": "^1.0.3", + "minizlib": "^2.0.0" + }, + "engines": { + "node": ">=8" + }, + "optionalDependencies": { + "encoding": "^0.1.12" } }, - "move-concurrently": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/move-concurrently/-/move-concurrently-1.0.1.tgz", - "integrity": "sha1-viwAX9oy4LKa8fBdfEszIUxwH5I=", + "node_modules/minipass-flush": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", + "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", "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" + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/minipass-pipeline": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", + "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minipass-sized": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", + "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/minizlib": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", + "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", + "dev": true, + "dependencies": { + "minipass": "^3.0.0", + "yallist": "^4.0.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dev": true, + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" } }, - "ms": { + "node_modules/ms": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", "dev": true }, - "multicast-dns": { + "node_modules/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": { + "dependencies": { "dns-packet": "^1.3.1", "thunky": "^1.0.2" + }, + "bin": { + "multicast-dns": "cli.js" } }, - "multicast-dns-service-types": { + "node_modules/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 }, - "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.14.0", - "resolved": "https://registry.npmjs.org/nan/-/nan-2.14.0.tgz", - "integrity": "sha512-INOFj37C7k3AfaNTtX8RhsTw7qRy7eLET14cROi9+5HAVbbHuIWUHEauBv5qT4Av2tWasiTY1Jw6puUNqRJXQg==", + "node_modules/mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==", "dev": true }, - "nanomatch": { - "version": "1.2.13", - "resolved": "https://registry.npmjs.org/nanomatch/-/nanomatch-1.2.13.tgz", - "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", + "node_modules/nanoid": { + "version": "3.1.20", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.1.20.tgz", + "integrity": "sha512-a1cQNyczgKbLX9jwbS/+d7W8fX/RfgYR7lVWwWOGIPNgK2m0MWvrGF6/m4kk6U3QcFMnZf3RIhL0v2Jgh/0Uxw==", "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" + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" } }, - "natural-compare": { + "node_modules/natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", "dev": true }, - "neatequal": { + "node_modules/neatequal": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/neatequal/-/neatequal-1.0.0.tgz", "integrity": "sha1-LuEhG8n6bkxVcV/SELsFYC6xrjs=", "dev": true, - "requires": { + "dependencies": { "varstream": "^0.3.2" } }, - "negotiator": { + "node_modules/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 + "dev": true, + "engines": { + "node": ">= 0.6" + } }, - "neo-async": { + "node_modules/neo-async": { "version": "2.6.1", "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.1.tgz", "integrity": "sha512-iyam8fBuCUpWeKPGpaNMetEocMt364qkCsfL9JuhjXX6dRnguRVOfk2GZaDpPjcOKiiXCPINZC1GczQ7iTq3Zw==", "dev": true }, - "nice-try": { + "node_modules/nice-try": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/nice-try/-/nice-try-1.0.5.tgz", "integrity": "sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ==", "dev": true }, - "node-forge": { + "node_modules/node-forge": { "version": "0.10.0", "resolved": "https://registry.npmjs.org/node-forge/-/node-forge-0.10.0.tgz", "integrity": "sha512-PPmu8eEeG9saEUvI97fm4OYxXVB6bFvyNTyiUOBichBpFG8A1Ljw3bY62+5oOjDEMHRnd0Y7HQ+x7uzxOzC6JA==", - "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-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 - } + "engines": { + "node": ">= 6.0.0" } }, - "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" - } + "node_modules/node-releases": { + "version": "1.1.70", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.70.tgz", + "integrity": "sha512-Slf2s69+2/uAD79pVVQo8uSiC34+g8GWY8UH2Qtqv34ZfhYrxpYpfzs9Js9d6O0mbDmALuxaTlplnBTnSELcrw==", + "dev": true }, - "normalize-package-data": { + "node_modules/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": { + "dependencies": { "hosted-git-info": "^2.1.4", "resolve": "^1.10.0", "semver": "2 || 3 || 4 || 5", "validate-npm-package-license": "^3.0.1" } }, - "normalize-path": { + "node_modules/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 - }, - "normalize-range": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", - "integrity": "sha1-LRDAa9/TEuqXd2laTShDlFa3WUI=", - "dev": true - }, - "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" + "engines": { + "node": ">=0.10.0" } }, - "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=", + "node_modules/npm-run-path": { + "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" + "dependencies": { + "path-key": "^3.0.0" + }, + "engines": { + "node": ">=8" } }, - "npmlog": { - "version": "4.1.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz", - "integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==", + "node_modules/object-hash": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-2.1.1.tgz", + "integrity": "sha512-VOJmgmS+7wvXf8CjbQmimtCnEx3IAoLxI3fp2fbWehxrWBcAQFbk+vcwb6vzR0VZv/eNCJ/27j151ZTwqW/JeQ==", "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" + "engines": { + "node": ">= 6" } }, - "num2fraction": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/num2fraction/-/num2fraction-1.2.2.tgz", - "integrity": "sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4=", - "dev": true - }, - "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=", - "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 - }, - "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" - } - } + "node_modules/object-inspect": { + "version": "1.9.0", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.9.0.tgz", + "integrity": "sha512-i3Bp9iTqwhaLZBxGkRfo5ZbE07BQRT7MGu8+nNgwW9ItGp1TzCTw2DLEoWwjClxBjOFI/hWljTAmYGCEwmtnOw==", + "dev": true, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "object-hash": { - "version": "1.3.1", - "resolved": "https://registry.npmjs.org/object-hash/-/object-hash-1.3.1.tgz", - "integrity": "sha512-OSuu/pU4ENM9kmREg0BdNrUDIl1heYa4mBZacJc+vVWz4GtAwu7jO8s4AIt2aGRUTqxykpWzI3Oqnsm13tTMDA==", - "dev": true - }, - "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 - }, - "object-is": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.3.tgz", - "integrity": "sha512-teyqLvFWzLkq5B9ki8FVWA902UER2qkxmdA4nLf+wjOLAWgxzCWZNCxpDq9MvE8MmhWNr+I8w3BN49Vx36Y6Xg==", + "node_modules/object-is": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/object-is/-/object-is-1.1.4.tgz", + "integrity": "sha512-1ZvAZ4wlF7IyPVOcE1Omikt7UpaFlOQq0HlSti+ZvDH3UiD2brwGMwDbyV43jao2bKJ+4+WdPJHSd7kgzKYVqg==", "dev": true, - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.1" - }, "dependencies": { - "es-abstract": { - "version": "1.18.0-next.1", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0-next.1.tgz", - "integrity": "sha512-I4UGspA0wpZXWENrdA0uHbnhte683t3qT/1VFH9aX2dA5PPSf6QW5HHXf5HImaqPmjXaVeVk4RGWnaylmV7uAA==", - "dev": true, - "requires": { - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1", - "is-callable": "^1.2.2", - "is-negative-zero": "^2.0.0", - "is-regex": "^1.1.1", - "object-inspect": "^1.8.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.1", - "string.prototype.trimend": "^1.0.1", - "string.prototype.trimstart": "^1.0.1" - } - }, - "es-to-primitive": { - "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.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - } - }, - "has-symbols": { - "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 - }, - "is-callable": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.2.tgz", - "integrity": "sha512-dnMqspv5nU3LoewK2N/y7KLtxtakvTuaCsU9FU50/QDmdbHNy/4/JuRtMHqRU22o3q+W89YQndQEeCVwK+3qrA==", - "dev": true - }, - "is-regex": { - "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-symbols": "^1.0.1" - } - } + "call-bind": "^1.0.0", + "define-properties": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "object-keys": { + "node_modules/object-keys": { "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" + "engines": { + "node": ">= 0.4" } }, - "object.assign": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.1.tgz", - "integrity": "sha512-VT/cxmx5yaoHSOTSyrCygIDFco+RsibY2NM0a4RdEeY/4KgqezwFtK1yr3U67xYhqJSlASm2pKhLVzPj2lr4bA==", + "node_modules/object.assign": { + "version": "4.1.2", + "resolved": "https://registry.npmjs.org/object.assign/-/object.assign-4.1.2.tgz", + "integrity": "sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ==", "dev": true, - "requires": { + "dependencies": { + "call-bind": "^1.0.0", "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.0", "has-symbols": "^1.0.1", "object-keys": "^1.1.1" }, - "dependencies": { - "es-abstract": { - "version": "1.18.0-next.1", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0-next.1.tgz", - "integrity": "sha512-I4UGspA0wpZXWENrdA0uHbnhte683t3qT/1VFH9aX2dA5PPSf6QW5HHXf5HImaqPmjXaVeVk4RGWnaylmV7uAA==", - "dev": true, - "requires": { - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1", - "is-callable": "^1.2.2", - "is-negative-zero": "^2.0.0", - "is-regex": "^1.1.1", - "object-inspect": "^1.8.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.1", - "string.prototype.trimend": "^1.0.1", - "string.prototype.trimstart": "^1.0.1" - } - }, - "es-to-primitive": { - "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.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - } - }, - "has-symbols": { - "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 - }, - "is-callable": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.2.tgz", - "integrity": "sha512-dnMqspv5nU3LoewK2N/y7KLtxtakvTuaCsU9FU50/QDmdbHNy/4/JuRtMHqRU22o3q+W89YQndQEeCVwK+3qrA==", - "dev": true - }, - "is-regex": { - "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-symbols": "^1.0.1" - } - } + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "object.pick": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/object.pick/-/object.pick-1.3.0.tgz", - "integrity": "sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c=", + "node_modules/object.assign/node_modules/has-symbols": { + "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, - "requires": { - "isobject": "^3.0.1" + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.values": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/object.values/-/object.values-1.1.2.tgz", + "integrity": "sha512-MYC0jvJopr8EK6dPBiO8Nb9mvjdypOachO5REGk6MXzujbBrAisKo3HmdEI6kZDL6fC31Mwee/5YbtMebixeag==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3", + "es-abstract": "^1.18.0-next.1", + "has": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "obuf": { + "node_modules/obuf": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/obuf/-/obuf-1.1.2.tgz", "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", "dev": true }, - "on-finished": { + "node_modules/on-finished": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", "integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", "dev": true, - "requires": { + "dependencies": { "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" } }, - "on-headers": { + "node_modules/on-headers": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/on-headers/-/on-headers-1.0.2.tgz", "integrity": "sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA==", - "dev": true + "dev": true, + "engines": { + "node": ">= 0.8" + } }, - "once": { + "node_modules/once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=", "dev": true, - "requires": { + "dependencies": { "wrappy": "1" } }, - "onetime": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", - "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", + "node_modules/onetime": { + "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" + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/open": { + "version": "7.4.0", + "resolved": "https://registry.npmjs.org/open/-/open-7.4.0.tgz", + "integrity": "sha512-PGoBCX/lclIWlpS/R2PQuIR4NJoXh6X5AwVzE7WXnWRGvHg7+4TBCgsujUgiPpm0K1y4qvQeWnCWVTpTKZBtvA==", + "dev": true, "dependencies": { - "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 - } + "is-docker": "^2.0.0", + "is-wsl": "^2.1.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "opn": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/opn/-/opn-5.5.0.tgz", - "integrity": "sha512-PqHpggC9bLV0VeWcdKhkpxY+3JTzetLSqTCWL/z/tFIbI6G8JCjondXklT1JinczLz2Xib62sSp0T/gKT4KksA==", + "node_modules/opener": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/opener/-/opener-1.5.2.tgz", + "integrity": "sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==", "dev": true, - "requires": { - "is-wsl": "^1.1.0" + "bin": { + "opener": "bin/opener-bin.js" } }, - "optionator": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz", - "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=", + "node_modules/optionator": { + "version": "0.8.3", + "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.3.tgz", + "integrity": "sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA==", "dev": true, - "requires": { + "dependencies": { "deep-is": "~0.1.3", - "fast-levenshtein": "~2.0.4", + "fast-levenshtein": "~2.0.6", "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" + "word-wrap": "~1.2.3" + }, + "engines": { + "node": ">= 0.8.0" } }, - "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": { + "node_modules/original": { "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": "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==", + "resolved": "https://registry.npmjs.org/original/-/original-1.0.2.tgz", + "integrity": "sha512-hyBVl6iqqUOJ8FqRe+l/gS8H+kKYjrEndd5Pm1MfBtsEKA038HkkdbAl/72EAXGyonD/PFsvmVG+EvcIpliMBg==", "dev": true, - "requires": { - "execa": "^1.0.0", - "lcid": "^2.0.0", - "mem": "^4.0.0" + "dependencies": { + "url-parse": "^1.4.3" } }, - "os-tmpdir": { + "node_modules/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==", + "integrity": "sha512-D2FR03Vir7FIu45XBY20mTb+/ZSWB00sjU9jdQXt83gDrI4Ztz5Fs7/yy74g2N5SVQY4xY1qDr4rNddwYRVX0g==", "dev": true, - "requires": { - "os-homedir": "^1.0.0", - "os-tmpdir": "^1.0.0" + "engines": { + "node": ">=0.10.0" } }, - "p-defer": { + "node_modules/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 + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/p-event": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/p-event/-/p-event-4.2.0.tgz", + "integrity": "sha512-KXatOjCRXXkSePPb1Nbi0p0m+gQAwdlbhi4wQKJPI1HsMQS9g+Sqp2o+QHziPr7eYJyOZet836KoHEVM1mwOrQ==", + "dev": true, + "dependencies": { + "p-timeout": "^3.1.0" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "p-finally": { + "node_modules/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": "2.1.0", - "resolved": "https://registry.npmjs.org/p-is-promise/-/p-is-promise-2.1.0.tgz", - "integrity": "sha512-Y3W0wlRPK8ZMRbNq97l4M5otioeA5lm1z7bkNkxCka8HSPjR0xRWmpCmc9utiaLP9Jb1eD8BgeIxTW4AIF45Pg==", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, - "p-limit": { + "node_modules/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": { + "dependencies": { "p-try": "^2.0.0" + }, + "engines": { + "node": ">=6" } }, - "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==", + "node_modules/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.0.0" + "dependencies": { + "p-limit": "^2.2.0" + }, + "engines": { + "node": ">=8" } }, - "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 + "node_modules/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, + "dependencies": { + "aggregate-error": "^3.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } }, - "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==", + "node_modules/p-retry": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/p-retry/-/p-retry-4.3.0.tgz", + "integrity": "sha512-Pow4yaHpOiJou1QcpGcBJhGHiS4782LdDa6GhU91hlaNh3ExOOupjSJcxPQZYmUSZk3Pl2ARz/LRvW8Qu0+3mQ==", "dev": true, - "requires": { + "dependencies": { + "@types/retry": "^0.12.0", "retry": "^0.12.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/p-timeout": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-3.2.0.tgz", + "integrity": "sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==", + "dev": true, + "dependencies": { + "p-finally": "^1.0.0" + }, + "engines": { + "node": ">=8" } }, - "p-try": { + "node_modules/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 + "dev": true, + "engines": { + "node": ">=6" + } }, - "pako": { + "node_modules/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=", - "dev": true, - "requires": { - "cyclist": "~0.2.2", - "inherits": "^2.0.3", - "readable-stream": "^2.1.5" - } - }, - "parse-asn1": { - "version": "5.1.4", - "resolved": "https://registry.npmjs.org/parse-asn1/-/parse-asn1-5.1.4.tgz", - "integrity": "sha512-Qs5duJcuvNExRfFZ99HDD3z4mAi3r9Wl/FOjEOijlxwCZs7E7mW2vjTpgQ4J8LpTF8x5v+1Vn5UQFejmWT11aw==", + "node_modules/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": { - "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" + "dependencies": { + "callsites": "^3.0.0" + }, + "engines": { + "node": ">=6" } }, - "parse-json": { + "node_modules/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": { + "dependencies": { "error-ex": "^1.2.0" + }, + "engines": { + "node": ">=0.10.0" } }, - "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 - }, - "parseurl": { + "node_modules/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 + "dev": true, + "engines": { + "node": ">= 0.8" + } }, - "path-exists": { + "node_modules/path-exists": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, - "path-is-absolute": { + "node_modules/path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", - "dev": true - }, - "path-is-inside": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz", - "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.10.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 + "node_modules/path-key": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", + "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", + "dev": true, + "engines": { + "node": ">=8" + } }, - "path-parse": { + "node_modules/path-parse": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz", "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==", "dev": true }, - "path-to-regexp": { + "node_modules/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=", "dev": true }, - "path-type": { + "node_modules/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": { + "dependencies": { "pify": "^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 - } + "engines": { + "node": ">=4" } }, - "pbkdf2": { - "version": "3.0.17", - "resolved": "https://registry.npmjs.org/pbkdf2/-/pbkdf2-3.0.17.tgz", - "integrity": "sha512-U/il5MsrZp7mGg3mSQfn742na2T+1/vHDCG5/iTI3X9MKUuYUZVLQhyRsg06mCgDBTd57TxzgZt7P+fYfjRLtA==", + "node_modules/picomatch": { + "version": "2.2.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", + "integrity": "sha512-q0M/9eZHzmr0AulXyPwNfZjtwZ/RBZlbN3K3CErVrk50T2ASYI7Bye0EvekFY3IP1Nt2DHu0re+V2ZHIpMkuWg==", "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" + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" } }, - "performance-now": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", - "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", - "dev": true - }, - "pify": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz", - "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=", - "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=", + "node_modules/pify": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz", + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", "dev": true, - "requires": { - "pinkie": "^2.0.0" + "engines": { + "node": ">=0.10.0" } }, - "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==", + "node_modules/pkg-dir": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", + "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", "dev": true, - "requires": { - "find-up": "^3.0.0" + "dependencies": { + "find-up": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "pluralize": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-7.0.0.tgz", - "integrity": "sha512-ARhBOdzS3e41FbkW/XWrTEtukqqLoK5+Z/4UeDaLuSW+39JPeFgs4gCGqsrJHVZX0fUrx//4OF0K1CUGwlIFow==", - "dev": true - }, - "portfinder": { + "node_modules/portfinder": { "version": "1.0.28", "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.28.tgz", "integrity": "sha512-Se+2isanIcEqf2XMHjyUKskczxbPH7dQnlMjXX6+dybayyHvAf/TCgyMRlzf/B6QDhAEFOGes0pzRo3by4AbMA==", "dev": true, - "requires": { + "dependencies": { "async": "^2.6.2", "debug": "^3.1.1", "mkdirp": "^0.5.5" }, - "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" - } - }, - "minimist": { - "version": "1.2.5", - "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz", - "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==", - "dev": true - }, - "mkdirp": { - "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": "^1.2.5" - } - }, - "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 - } + "engines": { + "node": ">= 0.12.0" } }, - "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": "5.2.18", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-5.2.18.tgz", - "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==", + "node_modules/portfinder/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, - "requires": { - "chalk": "^1.1.3", - "js-base64": "^2.1.9", - "source-map": "^0.5.6", - "supports-color": "^3.2.3" - }, "dependencies": { - "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": "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": { - "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 - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - }, - "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" - } - } - } - }, - "postcss-calc": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/postcss-calc/-/postcss-calc-5.3.1.tgz", - "integrity": "sha1-d7rnypKK2FcW4v2kLyYb98HWW14=", - "dev": true, - "requires": { - "postcss": "^5.0.2", - "postcss-message-helpers": "^2.0.0", - "reduce-css-calc": "^1.2.6" - } - }, - "postcss-colormin": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/postcss-colormin/-/postcss-colormin-2.2.2.tgz", - "integrity": "sha1-ZjFBfV8OkJo9fsJrJMio0eT5bks=", - "dev": true, - "requires": { - "colormin": "^1.0.5", - "postcss": "^5.0.13", - "postcss-value-parser": "^3.2.3" - } - }, - "postcss-convert-values": { - "version": "2.6.1", - "resolved": "https://registry.npmjs.org/postcss-convert-values/-/postcss-convert-values-2.6.1.tgz", - "integrity": "sha1-u9hZPFwf0uPRwyK7kl3K6Nrk1i0=", - "dev": true, - "requires": { - "postcss": "^5.0.11", - "postcss-value-parser": "^3.1.2" - } - }, - "postcss-discard-comments": { - "version": "2.0.4", - "resolved": "https://registry.npmjs.org/postcss-discard-comments/-/postcss-discard-comments-2.0.4.tgz", - "integrity": "sha1-vv6J+v1bPazlzM5Rt2uBUUvgDj0=", - "dev": true, - "requires": { - "postcss": "^5.0.14" - } - }, - "postcss-discard-duplicates": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/postcss-discard-duplicates/-/postcss-discard-duplicates-2.1.0.tgz", - "integrity": "sha1-uavye4isGIFYpesSq8riAmO5GTI=", - "dev": true, - "requires": { - "postcss": "^5.0.4" - } - }, - "postcss-discard-empty": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/postcss-discard-empty/-/postcss-discard-empty-2.1.0.tgz", - "integrity": "sha1-0rS9nVztXr2Nyt52QMfXzX9PkrU=", - "dev": true, - "requires": { - "postcss": "^5.0.14" + "ms": "^2.1.1" } }, - "postcss-discard-overridden": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/postcss-discard-overridden/-/postcss-discard-overridden-0.1.1.tgz", - "integrity": "sha1-ix6vVU9ob7KIzYdMVWZ7CqNmjVg=", - "dev": true, - "requires": { - "postcss": "^5.0.16" - } - }, - "postcss-discard-unused": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/postcss-discard-unused/-/postcss-discard-unused-2.2.3.tgz", - "integrity": "sha1-vOMLLMWR/8Y0Mitfs0ZLbZNPRDM=", - "dev": true, - "requires": { - "postcss": "^5.0.14", - "uniqs": "^2.0.0" - } - }, - "postcss-filter-plugins": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/postcss-filter-plugins/-/postcss-filter-plugins-2.0.3.tgz", - "integrity": "sha512-T53GVFsdinJhgwm7rg1BzbeBRomOg9y5MBVhGcsV0CxurUdVj1UlPdKtn7aqYA/c/QVkzKMjq2bSV5dKG5+AwQ==", - "dev": true, - "requires": { - "postcss": "^5.0.4" - } - }, - "postcss-merge-idents": { - "version": "2.1.7", - "resolved": "https://registry.npmjs.org/postcss-merge-idents/-/postcss-merge-idents-2.1.7.tgz", - "integrity": "sha1-TFUwMTwI4dWzu/PSu8dH4njuonA=", - "dev": true, - "requires": { - "has": "^1.0.1", - "postcss": "^5.0.10", - "postcss-value-parser": "^3.1.1" - } - }, - "postcss-merge-longhand": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/postcss-merge-longhand/-/postcss-merge-longhand-2.0.2.tgz", - "integrity": "sha1-I9kM0Sewp3mUkVMyc5A0oaTz1lg=", - "dev": true, - "requires": { - "postcss": "^5.0.4" - } - }, - "postcss-merge-rules": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/postcss-merge-rules/-/postcss-merge-rules-2.1.2.tgz", - "integrity": "sha1-0d9d+qexrMO+VT8OnhDofGG19yE=", - "dev": true, - "requires": { - "browserslist": "^1.5.2", - "caniuse-api": "^1.5.2", - "postcss": "^5.0.4", - "postcss-selector-parser": "^2.2.2", - "vendors": "^1.0.0" - } - }, - "postcss-message-helpers": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/postcss-message-helpers/-/postcss-message-helpers-2.0.0.tgz", - "integrity": "sha1-pPL0+rbk/gAvCu0ABHjN9S+bpg4=", + "node_modules/portfinder/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", "dev": true }, - "postcss-minify-font-values": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/postcss-minify-font-values/-/postcss-minify-font-values-1.0.5.tgz", - "integrity": "sha1-S1jttWZB66fIR0qzUmyv17vey2k=", - "dev": true, - "requires": { - "object-assign": "^4.0.1", - "postcss": "^5.0.4", - "postcss-value-parser": "^3.0.2" - } - }, - "postcss-minify-gradients": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/postcss-minify-gradients/-/postcss-minify-gradients-1.0.5.tgz", - "integrity": "sha1-Xb2hE3NwP4PPtKPqOIHY11/15uE=", - "dev": true, - "requires": { - "postcss": "^5.0.12", - "postcss-value-parser": "^3.3.0" - } - }, - "postcss-minify-params": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/postcss-minify-params/-/postcss-minify-params-1.2.2.tgz", - "integrity": "sha1-rSzgcTc7lDs9kwo/pZo1jCjW8fM=", - "dev": true, - "requires": { - "alphanum-sort": "^1.0.1", - "postcss": "^5.0.2", - "postcss-value-parser": "^3.0.2", - "uniqs": "^2.0.0" - } - }, - "postcss-minify-selectors": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/postcss-minify-selectors/-/postcss-minify-selectors-2.1.1.tgz", - "integrity": "sha1-ssapjAByz5G5MtGkllCBFDEXNb8=", - "dev": true, - "requires": { - "alphanum-sort": "^1.0.2", - "has": "^1.0.1", - "postcss": "^5.0.14", - "postcss-selector-parser": "^2.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" - }, - "dependencies": { - "postcss": { - "version": "6.0.23", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz", - "integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==", - "dev": true, - "requires": { - "chalk": "^2.4.1", - "source-map": "^0.6.1", - "supports-color": "^5.4.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 - } - } - }, - "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" - }, - "dependencies": { - "postcss": { - "version": "6.0.23", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz", - "integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==", - "dev": true, - "requires": { - "chalk": "^2.4.1", - "source-map": "^0.6.1", - "supports-color": "^5.4.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 - } - } - }, - "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" - }, - "dependencies": { - "postcss": { - "version": "6.0.23", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz", - "integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==", - "dev": true, - "requires": { - "chalk": "^2.4.1", - "source-map": "^0.6.1", - "supports-color": "^5.4.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 - } - } - }, - "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" - }, - "dependencies": { - "postcss": { - "version": "6.0.23", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-6.0.23.tgz", - "integrity": "sha512-soOk1h6J3VMTZtVeVpv15/Hpdl2cBLX3CAw4TAbkpTJiNPk9YP/zWcD1ND+xEtvyuuvKzbxliTOIyvkSeSJ6ag==", - "dev": true, - "requires": { - "chalk": "^2.4.1", - "source-map": "^0.6.1", - "supports-color": "^5.4.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 - } - } - }, - "postcss-normalize-charset": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/postcss-normalize-charset/-/postcss-normalize-charset-1.1.1.tgz", - "integrity": "sha1-757nEhLX/nWceO0WL2HtYrXLk/E=", - "dev": true, - "requires": { - "postcss": "^5.0.5" - } - }, - "postcss-normalize-url": { - "version": "3.0.8", - "resolved": "https://registry.npmjs.org/postcss-normalize-url/-/postcss-normalize-url-3.0.8.tgz", - "integrity": "sha1-EI90s/L82viRov+j6kWSJ5/HgiI=", + "node_modules/postcss": { + "version": "8.2.6", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.2.6.tgz", + "integrity": "sha512-xpB8qYxgPuly166AGlpRjUdEYtmOWx2iCwGmrv4vqZL9YPVviDVPZPRXxnXr6xPZOdxQ9lp3ZBFCRgWJ7LE3Sg==", "dev": true, - "requires": { - "is-absolute-url": "^2.0.0", - "normalize-url": "^1.4.0", - "postcss": "^5.0.14", - "postcss-value-parser": "^3.2.3" + "dependencies": { + "colorette": "^1.2.1", + "nanoid": "^3.1.20", + "source-map": "^0.6.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" } }, - "postcss-ordered-values": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/postcss-ordered-values/-/postcss-ordered-values-2.2.3.tgz", - "integrity": "sha1-7sbCpntsQSqNsgQud/6NpD+VwR0=", + "node_modules/postcss-modules-extract-imports": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz", + "integrity": "sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw==", "dev": true, - "requires": { - "postcss": "^5.0.4", - "postcss-value-parser": "^3.0.1" + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" } }, - "postcss-reduce-idents": { - "version": "2.4.0", - "resolved": "https://registry.npmjs.org/postcss-reduce-idents/-/postcss-reduce-idents-2.4.0.tgz", - "integrity": "sha1-wsbSDMlYKE9qv75j92Cb9AkFmtM=", + "node_modules/postcss-modules-local-by-default": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz", + "integrity": "sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ==", "dev": true, - "requires": { - "postcss": "^5.0.4", - "postcss-value-parser": "^3.0.2" + "dependencies": { + "icss-utils": "^5.0.0", + "postcss-selector-parser": "^6.0.2", + "postcss-value-parser": "^4.1.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" } }, - "postcss-reduce-initial": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/postcss-reduce-initial/-/postcss-reduce-initial-1.0.1.tgz", - "integrity": "sha1-aPgGlfBF0IJjqHmtJA343WT2ROo=", + "node_modules/postcss-modules-scope": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz", + "integrity": "sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg==", "dev": true, - "requires": { - "postcss": "^5.0.4" + "dependencies": { + "postcss-selector-parser": "^6.0.4" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" } }, - "postcss-reduce-transforms": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/postcss-reduce-transforms/-/postcss-reduce-transforms-1.0.4.tgz", - "integrity": "sha1-/3b02CEkN7McKYpC0uFEQCV3GuE=", + "node_modules/postcss-modules-values": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz", + "integrity": "sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ==", "dev": true, - "requires": { - "has": "^1.0.1", - "postcss": "^5.0.8", - "postcss-value-parser": "^3.0.1" + "dependencies": { + "icss-utils": "^5.0.0" + }, + "engines": { + "node": "^10 || ^12 || >= 14" + }, + "peerDependencies": { + "postcss": "^8.1.0" } }, - "postcss-selector-parser": { - "version": "2.2.3", - "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-2.2.3.tgz", - "integrity": "sha1-+UN3iGBsPJrO4W/+jYsWKX8nu5A=", + "node_modules/postcss-selector-parser": { + "version": "6.0.4", + "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.4.tgz", + "integrity": "sha512-gjMeXBempyInaBqpp8gODmwZ52WaYsVOsfr4L4lDQ7n3ncD6mEyySiDtgzCT+NYC0mmeOLvtsF8iaEf0YT6dBw==", "dev": true, - "requires": { - "flatten": "^1.0.2", + "dependencies": { + "cssesc": "^3.0.0", "indexes-of": "^1.0.1", - "uniq": "^1.0.1" - } - }, - "postcss-svgo": { - "version": "2.1.6", - "resolved": "https://registry.npmjs.org/postcss-svgo/-/postcss-svgo-2.1.6.tgz", - "integrity": "sha1-tt8YqmE7Zm4TPwittSGcJoSsEI0=", - "dev": true, - "requires": { - "is-svg": "^2.0.0", - "postcss": "^5.0.14", - "postcss-value-parser": "^3.2.3", - "svgo": "^0.7.0" - } - }, - "postcss-unique-selectors": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/postcss-unique-selectors/-/postcss-unique-selectors-2.0.2.tgz", - "integrity": "sha1-mB1X0p3csz57Hf4f1DuGSfkzyh0=", - "dev": true, - "requires": { - "alphanum-sort": "^1.0.1", - "postcss": "^5.0.4", - "uniqs": "^2.0.0" + "uniq": "^1.0.1", + "util-deprecate": "^1.0.2" + }, + "engines": { + "node": ">=4" } }, - "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==", + "node_modules/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 }, - "postcss-zindex": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/postcss-zindex/-/postcss-zindex-2.2.0.tgz", - "integrity": "sha1-0hCd3AVbka9n/EyzsCWUZjnSryI=", + "node_modules/postcss/node_modules/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, - "requires": { - "has": "^1.0.1", - "postcss": "^5.0.4", - "uniqs": "^2.0.0" + "engines": { + "node": ">=0.10.0" } }, - "prelude-ls": { + "node_modules/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": "1.0.4", - "resolved": "https://registry.npmjs.org/prepend-http/-/prepend-http-1.0.4.tgz", - "integrity": "sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw=", - "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 + "dev": true, + "engines": { + "node": ">= 0.8.0" + } }, - "process-nextick-args": { + "node_modules/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": { + "node_modules/progress": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/progress/-/progress-2.0.3.tgz", "integrity": "sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA==", - "dev": true + "dev": true, + "engines": { + "node": ">=0.4.0" + } }, - "promise-inflight": { + "node_modules/promise-inflight": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", "integrity": "sha1-mEcocL8igTL8vdhoEputEsPAKeM=", "dev": true }, - "proxy-addr": { + "node_modules/promise-retry": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", + "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", + "dev": true, + "dependencies": { + "err-code": "^2.0.2", + "retry": "^0.12.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/proxy-addr": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.6.tgz", "integrity": "sha512-dh/frvCBVmSsDYzw6n926jv974gddhkFPfiN8hPOi30Wax25QZyZEGveluCgliBnqmuM+UJmBErbAUFIoDbjOw==", "dev": true, - "requires": { + "dependencies": { "forwarded": "~0.1.2", "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" } }, - "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.8.0", - "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", - "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==", - "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": "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" - } - }, - "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" - }, - "dependencies": { - "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" - } - } - } - }, - "punycode": { + "node_modules/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 + "dev": true, + "engines": { + "node": ">=6" + } }, - "q": { + "node_modules/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": "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" + "engines": { + "node": ">=0.6.0", + "teleport": ">=0.2.0" } }, - "querystring": { + "node_modules/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 + "deprecated": "The querystring API is considered Legacy. new code should use the URLSearchParams API instead.", + "dev": true, + "engines": { + "node": ">=0.4.x" + } }, - "querystringify": { + "node_modules/querystringify": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/querystringify/-/querystringify-2.2.0.tgz", "integrity": "sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==", "dev": true }, - "randombytes": { + "node_modules/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", + "dependencies": { "safe-buffer": "^5.1.0" } }, - "range-parser": { + "node_modules/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 + "dev": true, + "engines": { + "node": ">= 0.6" + } }, - "raw-body": { + "node_modules/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": { + "dependencies": { "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 - } + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/raw-body/node_modules/bytes": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", + "integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==", + "dev": true, + "engines": { + "node": ">= 0.8" } }, - "raw-loader": { + "node_modules/raw-loader": { "version": "0.5.1", "resolved": "https://registry.npmjs.org/raw-loader/-/raw-loader-0.5.1.tgz", "integrity": "sha1-DD0L6u2KAclm2Xh793goElKpeao=", "dev": true }, - "read-pkg": { + "node_modules/read-pkg": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-2.0.0.tgz", "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", "dev": true, - "requires": { + "dependencies": { "load-json-file": "^2.0.0", "normalize-package-data": "^2.3.2", "path-type": "^2.0.0" + }, + "engines": { + "node": ">=4" } }, - "read-pkg-up": { + "node_modules/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": { + "dependencies": { "find-up": "^2.0.0", "read-pkg": "^2.0.0" }, - "dependencies": { - "find-up": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", - "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", - "dev": true, - "requires": { - "locate-path": "^2.0.0" - } - }, - "locate-path": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", - "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", - "dev": true, - "requires": { - "p-locate": "^2.0.0", - "path-exists": "^3.0.0" - } - }, - "p-limit": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", - "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", - "dev": true, - "requires": { - "p-try": "^1.0.0" - } - }, - "p-locate": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", - "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", - "dev": true, - "requires": { - "p-limit": "^1.1.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=", - "dev": true - } + "engines": { + "node": ">=4" } }, - "readable-stream": { - "version": "2.3.6", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", - "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", + "node_modules/read-pkg-up/node_modules/find-up": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/find-up/-/find-up-2.1.0.tgz", + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", "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" + "dependencies": { + "locate-path": "^2.0.0" + }, + "engines": { + "node": ">=4" } }, - "readdirp": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-2.2.1.tgz", - "integrity": "sha512-1JU/8q+VgFZyxwrJ+SVIOsh+KywWGpds3NTqikiKpDMZWScmAYyKIgqkO+ARvNWJfXeXR1zxz7aHF4u4CyH6vQ==", + "node_modules/read-pkg-up/node_modules/locate-path": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-2.0.0.tgz", + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", "dev": true, - "requires": { - "graceful-fs": "^4.1.11", - "micromatch": "^3.1.10", - "readable-stream": "^2.0.2" + "dependencies": { + "p-locate": "^2.0.0", + "path-exists": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, - "reduce-css-calc": { + "node_modules/read-pkg-up/node_modules/p-limit": { "version": "1.3.0", - "resolved": "https://registry.npmjs.org/reduce-css-calc/-/reduce-css-calc-1.3.0.tgz", - "integrity": "sha1-dHyRTgSWFKTJz7umKYca0dKSdxY=", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-1.3.0.tgz", + "integrity": "sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q==", "dev": true, - "requires": { - "balanced-match": "^0.4.2", - "math-expression-evaluator": "^1.2.14", - "reduce-function-call": "^1.0.1" - }, "dependencies": { - "balanced-match": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.4.2.tgz", - "integrity": "sha1-yz8+PHMtwPAe5wtAPzAuYddwmDg=", - "dev": true - } + "p-try": "^1.0.0" + }, + "engines": { + "node": ">=4" } }, - "reduce-function-call": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/reduce-function-call/-/reduce-function-call-1.0.2.tgz", - "integrity": "sha1-WiAL+S4ON3UXUv5FsKszD9S2vpk=", + "node_modules/read-pkg-up/node_modules/p-locate": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-2.0.0.tgz", + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", "dev": true, - "requires": { - "balanced-match": "^0.4.2" - }, "dependencies": { - "balanced-match": { - "version": "0.4.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-0.4.2.tgz", - "integrity": "sha1-yz8+PHMtwPAe5wtAPzAuYddwmDg=", - "dev": true - } + "p-limit": "^1.1.0" + }, + "engines": { + "node": ">=4" } }, - "regenerate": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.0.tgz", - "integrity": "sha512-1G6jJVDWrt0rK99kBjvEtziZNCICAuvIPkSiUFIQxVP06RCVpq3dmDo2oi6ABpYaDYaTRr67BEhL8r1wgEZZKg==", - "dev": true - }, - "regenerator-runtime": { - "version": "0.11.1", - "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.11.1.tgz", - "integrity": "sha512-MguG95oij0fC3QV3URf4V2SDYGJhJnJGqvIIgdECeODCT98wSWDAJ94SSuVpYQUoTcGUIL6L4yNB7j1DFFHSBg==", - "dev": true - }, - "regenerator-transform": { - "version": "0.10.1", - "resolved": "https://registry.npmjs.org/regenerator-transform/-/regenerator-transform-0.10.1.tgz", - "integrity": "sha512-PJepbvDbuK1xgIgnau7Y90cwaAmO/LCLMI2mPvaXq2heGMR3aWW5/BQvYrhJ8jgmQjXewXvBjzfqKcVOmhjZ6Q==", + "node_modules/read-pkg-up/node_modules/p-try": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/p-try/-/p-try-1.0.0.tgz", + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", "dev": true, - "requires": { - "babel-runtime": "^6.18.0", - "babel-types": "^6.19.0", - "private": "^0.1.6" + "engines": { + "node": ">=4" } }, - "regex-not": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/regex-not/-/regex-not-1.0.2.tgz", - "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", + "node_modules/readable-stream": { + "version": "2.3.6", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz", + "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==", "dev": true, - "requires": { - "extend-shallow": "^3.0.2", - "safe-regex": "^1.1.0" + "dependencies": { + "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" } }, - "regexp.prototype.flags": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.0.tgz", - "integrity": "sha512-2+Q0C5g951OlYlJz6yu5/M33IcsESLlLfsyIaLJaG4FA2r4yP8MvVMJUUP/fVBkSpbbbZlS5gynbEWLipiiXiQ==", + "node_modules/readdirp": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.5.0.tgz", + "integrity": "sha512-cMhu7c/8rdhkHXWsY+osBhfSy0JikwpHK/5+imo+LpeasTF8ouErHrlYkwT0++njiyuDvc7OFY5T3ukvZ8qmFQ==", "dev": true, - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.17.0-next.1" - }, - "dependencies": { - "es-abstract": { - "version": "1.17.7", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.17.7.tgz", - "integrity": "sha512-VBl/gnfcJ7OercKA9MVaegWsBHFjV492syMudcnQZvt/Dw8ezpcOHYZXa/J96O8vx+g4x65YKhxOwDUh63aS5g==", - "dev": true, - "requires": { - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1", - "is-callable": "^1.2.2", - "is-regex": "^1.1.1", - "object-inspect": "^1.8.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.1", - "string.prototype.trimend": "^1.0.1", - "string.prototype.trimstart": "^1.0.1" - } - }, - "es-to-primitive": { - "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.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - } - }, - "has-symbols": { - "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 - }, - "is-callable": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.2.tgz", - "integrity": "sha512-dnMqspv5nU3LoewK2N/y7KLtxtakvTuaCsU9FU50/QDmdbHNy/4/JuRtMHqRU22o3q+W89YQndQEeCVwK+3qrA==", - "dev": true - }, - "is-regex": { - "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-symbols": "^1.0.1" - } - } + "dependencies": { + "picomatch": "^2.2.1" + }, + "engines": { + "node": ">=8.10.0" } }, - "regexpp": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-1.1.0.tgz", - "integrity": "sha512-LOPw8FpgdQF9etWMaAfG/WRthIdXJGYp4mJ2Jgn/2lpkbod9jPn0t9UqN7AxBOKNfzRbYyVfgc7Vk4t/MpnXgw==", - "dev": true - }, - "regexpu-core": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/regexpu-core/-/regexpu-core-2.0.0.tgz", - "integrity": "sha1-SdA4g3uNz4v6W5pCE5k45uoq4kA=", + "node_modules/rechoir": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.7.0.tgz", + "integrity": "sha512-ADsDEH2bvbjltXEP+hTIAmeFekTFK0V2BTxMkok6qILyAJEXV0AFfoWcAq4yfll5VdIMd/RVXq0lR+wQi5ZU3Q==", "dev": true, - "requires": { - "regenerate": "^1.2.1", - "regjsgen": "^0.2.0", - "regjsparser": "^0.1.4" + "dependencies": { + "resolve": "^1.9.0" + }, + "engines": { + "node": ">= 0.10" } }, - "regjsgen": { - "version": "0.2.0", - "resolved": "https://registry.npmjs.org/regjsgen/-/regjsgen-0.2.0.tgz", - "integrity": "sha1-bAFq3qxVT3WCP+N6wFuS1aTtsfc=", + "node_modules/regenerate": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/regenerate/-/regenerate-1.4.2.tgz", + "integrity": "sha512-zrceR/XhGYU/d/opr2EKO7aRHUeiBI8qjtfHqADTwZd6Szfy16la6kqD0MIUs5z5hx6AaKa+PixpPrR289+I0A==", "dev": true }, - "regjsparser": { - "version": "0.1.5", - "resolved": "https://registry.npmjs.org/regjsparser/-/regjsparser-0.1.5.tgz", - "integrity": "sha1-fuj4Tcb6eS0/0K4ijSS9lJ6tIFw=", + "node_modules/regenerate-unicode-properties": { + "version": "8.2.0", + "resolved": "https://registry.npmjs.org/regenerate-unicode-properties/-/regenerate-unicode-properties-8.2.0.tgz", + "integrity": "sha512-F9DjY1vKLo/tPePDycuH3dn9H1OTPIkVD9Kz4LODu+F2C75mgjAJ7x/gwy6ZcSNRAAkhNlJSOHRe8k3p+K9WhA==", "dev": true, - "requires": { - "jsesc": "~0.5.0" - }, "dependencies": { - "jsesc": { - "version": "0.5.0", - "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-0.5.0.tgz", - "integrity": "sha1-597mbjXW/Bb3EP6R1c9p9w8IkR0=", - "dev": true - } + "regenerate": "^1.4.0" + }, + "engines": { + "node": ">=4" } }, - "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 - }, - "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=", + "node_modules/regenerator-runtime": { + "version": "0.13.7", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.13.7.tgz", + "integrity": "sha512-a54FxoJDIr27pgf7IgeQGxmqUNYrcV338lf/6gH456HZ/PhX+5BcwHXG9ajESmwe6WRO0tAzRUrRmNONWgkrew==", "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" - } - }, - "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" + "node_modules/regexp.prototype.flags": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz", + "integrity": "sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "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 - }, - "require-uncached": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/require-uncached/-/require-uncached-1.0.3.tgz", - "integrity": "sha1-Tg1W1slmL9MeQwEcS5WqSZVUIdM=", + "node_modules/regexpp": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/regexpp/-/regexpp-2.0.1.tgz", + "integrity": "sha512-lv0M6+TkDVniA3aD1Eg0DVpfU/booSu7Eev3TDO/mZKHBfVjgCGTV4t4buppESEYDtkArYFOxTJWv6S5C+iaNw==", "dev": true, - "requires": { - "caller-path": "^0.1.0", - "resolve-from": "^1.0.0" - }, - "dependencies": { - "resolve-from": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-1.0.1.tgz", - "integrity": "sha1-Jsv+k10a7uq7Kbw/5a6wHpPUQiY=", - "dev": true - } + "engines": { + "node": ">=6.5.0" } }, - "requires-port": { + "node_modules/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": { + "node_modules/resolve": { "version": "1.11.0", "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.11.0.tgz", "integrity": "sha512-WL2pBDjqT6pGUNSUzMw00o4T7If+z4H2x3Gz893WoUQ5KW8Vr9txp00ykiP16VBaZF5+j/OcXJHZ9+PCvdiDKw==", "dev": true, - "requires": { + "dependencies": { "path-parse": "^1.0.6" } }, - "resolve-cwd": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-2.0.0.tgz", - "integrity": "sha1-AKn3OHVW4nA46uIyyqNypqWbZlo=", + "node_modules/resolve-cwd": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", + "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", "dev": true, - "requires": { - "resolve-from": "^3.0.0" + "dependencies": { + "resolve-from": "^5.0.0" + }, + "engines": { + "node": ">=8" } }, - "resolve-dir": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/resolve-dir/-/resolve-dir-1.0.1.tgz", - "integrity": "sha1-eaQGRMNivoLybv/nOcm7U4IEb0M=", + "node_modules/resolve-from": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", + "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", "dev": true, - "requires": { - "expand-tilde": "^2.0.0", - "global-modules": "^1.0.0" + "engines": { + "node": ">=8" } }, - "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 - }, - "restore-cursor": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", - "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", + "node_modules/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": "^2.0.0", + "dependencies": { + "onetime": "^5.1.0", "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" } }, - "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": { + "node_modules/retry": { "version": "0.12.0", "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", "integrity": "sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs=", - "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" + "engines": { + "node": ">= 4" } }, - "ripemd160": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/ripemd160/-/ripemd160-2.0.2.tgz", - "integrity": "sha512-ii4iagi25WusVoiC4B4lq7pbXfAp3D9v5CwfkY33vffw2+pkDjY1D8GaN7spsxvCSx8dkPqOZCEZyfxcmJG2IA==", + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", "dev": true, - "requires": { - "hash-base": "^3.0.0", - "inherits": "^2.0.1" + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" } }, - "run-async": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.3.0.tgz", - "integrity": "sha1-A3GrSuC91yDUFm19/aZP96RFpsA=", + "node_modules/rimraf": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.3.tgz", + "integrity": "sha512-mwqeW5XsA2qAejG46gYdENaxXjx9onRNCfn7L0duuP4hCuTIi/QO7PDK07KJfp1d+izWPrzEJDcSqBa0OZQriA==", + "deprecated": "Rimraf versions prior to v4 are no longer supported", "dev": true, - "requires": { - "is-promise": "^2.1.0" + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" } }, - "run-queue": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/run-queue/-/run-queue-1.0.3.tgz", - "integrity": "sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec=", + "node_modules/run-async": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz", + "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==", "dev": true, - "requires": { - "aproba": "^1.1.1" + "engines": { + "node": ">=0.12.0" } }, - "rx-lite": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-4.0.8.tgz", - "integrity": "sha1-Cx4Rr4vESDbwSmQH6S2kJGe3lEQ=", - "dev": true + "node_modules/run-parallel": { + "version": "1.1.10", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.1.10.tgz", + "integrity": "sha512-zb/1OuZ6flOlH6tQyMPUrE3x3Ulxjlo9WIVXR4yVYi4H9UXQaeIsPbLn2R3O3vQCnDKkAl2qHiuocKKX4Tz/Sw==", + "dev": true, + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] }, - "rx-lite-aggregates": { - "version": "4.0.8", - "resolved": "https://registry.npmjs.org/rx-lite-aggregates/-/rx-lite-aggregates-4.0.8.tgz", - "integrity": "sha1-dTuHqJoRyVRnxKwWJsTvxOBcZ74=", + "node_modules/rxjs": { + "version": "6.6.7", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz", + "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==", "dev": true, - "requires": { - "rx-lite": "*" + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" } }, - "safe-buffer": { + "node_modules/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": { + "node_modules/safer-buffer": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", "dev": true }, - "sax": { + "node_modules/sax": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/sax/-/sax-1.2.4.tgz", "integrity": "sha512-NqVDv9TpANUjFm0N8uM5GxL36UgKi9/atZw+x7YFnQ8ckwFGKrl4xX4yWtrey3UJm5nP1kUbnYgLopqWNSRhWw==", "dev": true }, - "schema-utils": { - "version": "0.3.0", - "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-0.3.0.tgz", - "integrity": "sha1-9YdyIs4+kx7a4DnxfrNxbnE3+M8=", + "node_modules/schema-utils": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/schema-utils/-/schema-utils-3.0.0.tgz", + "integrity": "sha512-6D82/xSzO094ajanoOSbe4YvXWMfn2A//8Y1+MUqFAJul5Bs+yn36xbK9OtNDcRVSBJ9jjeoXftM6CfztsjOAA==", + "dev": true, + "dependencies": { + "@types/json-schema": "^7.0.6", + "ajv": "^6.12.5", + "ajv-keywords": "^3.5.2" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + } + }, + "node_modules/schema-utils/node_modules/ajv-keywords": { + "version": "3.5.2", + "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", + "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", "dev": true, - "requires": { - "ajv": "^5.0.0" + "peerDependencies": { + "ajv": "^6.9.1" } }, - "select-hose": { + "node_modules/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": { + "node_modules/selfsigned": { "version": "1.10.8", "resolved": "https://registry.npmjs.org/selfsigned/-/selfsigned-1.10.8.tgz", "integrity": "sha512-2P4PtieJeEwVgTU9QEcwIRDQ/mXJLX8/+I3ur+Pg16nS8oNbrGxEso9NyYWy8NAmXiNl4dlAp5MwoNeCWzON4w==", "dev": true, - "requires": { + "dependencies": { "node-forge": "^0.10.0" } }, - "semver": { + "node_modules/semver": { "version": "5.7.0", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.0.tgz", "integrity": "sha512-Ya52jSX2u7QKghxeoFGpLwCtGlt7j0oY9DYb5apt9nPlJ42ID+ulTXESnt/qAQcoSERyZ5sl3LDIOw0nAn/5DA==", - "dev": true + "dev": true, + "bin": { + "semver": "bin/semver" + } }, - "send": { + "node_modules/send": { "version": "0.17.1", "resolved": "https://registry.npmjs.org/send/-/send-0.17.1.tgz", "integrity": "sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==", "dev": true, - "requires": { + "dependencies": { "debug": "2.6.9", "depd": "~1.1.2", "destroy": "~1.0.4", @@ -7716,33 +7549,43 @@ "range-parser": "~1.2.1", "statuses": "~1.5.0" }, - "dependencies": { - "mime": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", - "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", - "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 - } + "engines": { + "node": ">= 0.8.0" } }, - "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==", + "node_modules/send/node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "dev": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/send/node_modules/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 }, - "serve-index": { + "node_modules/serialize-javascript": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/serialize-javascript/-/serialize-javascript-6.0.0.tgz", + "integrity": "sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag==", + "dev": true, + "dependencies": { + "randombytes": "^2.1.0" + } + }, + "node_modules/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": { + "dependencies": { "accepts": "~1.3.4", "batch": "0.6.1", "debug": "2.6.9", @@ -7751,2197 +7594,1758 @@ "mime-types": "~2.1.17", "parseurl": "~1.3.2" }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/serve-index/node_modules/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, "dependencies": { - "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" - } - }, - "setprototypeof": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", - "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", - "dev": true - } + "depd": "~1.1.2", + "inherits": "2.0.3", + "setprototypeof": "1.1.0", + "statuses": ">= 1.4.0 < 2" + }, + "engines": { + "node": ">= 0.6" } }, - "serve-static": { + "node_modules/serve-index/node_modules/setprototypeof": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.0.tgz", + "integrity": "sha512-BvE/TwpZX4FXExxOxZyRGQQv651MSwmWKZGqvmPcRIjDqWub67kTKuIMx43cZZrS/cBBzwBcNDWoFxt2XEFIpQ==", + "dev": true + }, + "node_modules/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": { + "dependencies": { "encodeurl": "~1.0.2", "escape-html": "~1.0.3", "parseurl": "~1.3.3", "send": "0.17.1" + }, + "engines": { + "node": ">= 0.8.0" } }, - "set-blocking": { + "node_modules/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": { + "node_modules/setprototypeof": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", "integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==", "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==", + "node_modules/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": { - "inherits": "^2.0.1", - "safe-buffer": "^5.0.1" + "dependencies": { + "kind-of": "^6.0.2" + }, + "engines": { + "node": ">=8" } }, - "shebang-command": { + "node_modules/shebang-command": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-1.2.0.tgz", - "integrity": "sha1-RKrGW2lbAzmJaMOfNj/uXer98eo=", + "integrity": "sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==", "dev": true, - "requires": { + "dependencies": { "shebang-regex": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" } }, - "shebang-regex": { + "node_modules/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 + "integrity": "sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==", + "dev": true, + "engines": { + "node": ">=0.10.0" + } }, - "signal-exit": { + "node_modules/signal-exit": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.2.tgz", "integrity": "sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=", "dev": true }, - "slash": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-1.0.0.tgz", - "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", - "dev": true + "node_modules/sirv": { + "version": "1.0.11", + "resolved": "https://registry.npmjs.org/sirv/-/sirv-1.0.11.tgz", + "integrity": "sha512-SR36i3/LSWja7AJNRBz4fF/Xjpn7lQFI30tZ434dIy+bitLYSP+ZEenHg36i23V2SGEz+kqjksg0uOGZ5LPiqg==", + "dev": true, + "dependencies": { + "@polka/url": "^1.0.0-next.9", + "mime": "^2.3.1", + "totalist": "^1.0.0" + }, + "engines": { + "node": ">= 10" + } }, - "slice-ansi": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-1.0.0.tgz", - "integrity": "sha512-POqxBK6Lb3q6s047D/XsDVNPnF9Dl8JSaqe9h9lURl0OdNqy/ujDrOiIHtsqXMGbWWTIomRzAMaTyawAU//Reg==", + "node_modules/slash": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", + "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/slice-ansi": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", + "integrity": "sha512-Qu+VC3EwYLldKa1fCxuuvULvSJOKEgk9pi8dZeCVK7TqBfUNTH4sFkk4joj8afVSfAYgJoSOetjx9QWOJ5mYoQ==", "dev": true, - "requires": { + "dependencies": { + "ansi-styles": "^3.2.0", + "astral-regex": "^1.0.0", "is-fullwidth-code-point": "^2.0.0" + }, + "engines": { + "node": ">=6" } }, - "snapdragon": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/snapdragon/-/snapdragon-0.8.2.tgz", - "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", - "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" - } - } + "node_modules/smart-buffer": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", + "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", + "dev": true, + "engines": { + "node": ">= 6.0.0", + "npm": ">= 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" - } - } + "node_modules/sockjs": { + "version": "0.3.21", + "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.21.tgz", + "integrity": "sha512-DhbPFGpxjc6Z3I+uX07Id5ZO2XwYsWOrYjaSeieES78cq+JaJvVe5q/m1uvjIQhXinhIeCFRH6JgXe+mvVMyXw==", + "dev": true, + "dependencies": { + "faye-websocket": "^0.11.3", + "uuid": "^3.4.0", + "websocket-driver": "^0.7.4" } }, - "snapdragon-util": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/snapdragon-util/-/snapdragon-util-3.0.1.tgz", - "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "node_modules/sockjs-client": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/sockjs-client/-/sockjs-client-1.5.0.tgz", + "integrity": "sha512-8Dt3BDi4FYNrCFGTL/HtwVzkARrENdwOUf1ZoW/9p3M8lZdFT35jVdrHza+qgxuG9H3/shR4cuX/X9umUrjP8Q==", "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" - } - } + "debug": "^3.2.6", + "eventsource": "^1.0.7", + "faye-websocket": "^0.11.3", + "inherits": "^2.0.4", + "json3": "^3.3.3", + "url-parse": "^1.4.7" } }, - "sockjs": { - "version": "0.3.20", - "resolved": "https://registry.npmjs.org/sockjs/-/sockjs-0.3.20.tgz", - "integrity": "sha512-SpmVOVpdq0DJc0qArhF3E5xsxvaiqGNb73XfgBpK1y3UD5gs8DSo8aCTsuT5pX8rssdc2NDIzANwP9eCAiSdTA==", + "node_modules/sockjs-client/node_modules/debug": { + "version": "3.2.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-3.2.7.tgz", + "integrity": "sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ==", "dev": true, - "requires": { - "faye-websocket": "^0.10.0", - "uuid": "^3.4.0", - "websocket-driver": "0.6.5" - }, "dependencies": { - "uuid": { - "version": "3.4.0", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", - "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", - "dev": true - } + "ms": "^2.1.1" } }, - "sockjs-client": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/sockjs-client/-/sockjs-client-1.4.0.tgz", - "integrity": "sha512-5zaLyO8/nri5cua0VtOrFXBPK1jbL4+1cebT/mmKA1E1ZXOvJrII75bPu0l0k843G/+iAbhEqzyKr0w/eCCj7g==", + "node_modules/sockjs-client/node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "dev": true + }, + "node_modules/sockjs-client/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "dev": true + }, + "node_modules/sockjs/node_modules/uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", "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" + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/socks": { + "version": "2.6.1", + "resolved": "https://registry.npmjs.org/socks/-/socks-2.6.1.tgz", + "integrity": "sha512-kLQ9N5ucj8uIcxrDwjm0Jsqk06xdpBjGNQtpXy4Q8/QY2k+fY7nZH8CARy+hkbG+SGAovmzzuauCpBlb8FrnBA==", + "dev": true, + "dependencies": { + "ip": "^1.1.5", + "smart-buffer": "^4.1.0" }, + "engines": { + "node": ">= 10.13.0", + "npm": ">= 3.0.0" + } + }, + "node_modules/socks-proxy-agent": { + "version": "6.1.1", + "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-6.1.1.tgz", + "integrity": "sha512-t8J0kG3csjA4g6FTbsMOWws+7R7vuRC8aQ/wy3/1OWmsgwA68zs/+cExQ0koSitUDXqhufF/YJr9wtNMZHw5Ew==", + "dev": true, "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 - } + "agent-base": "^6.0.2", + "debug": "^4.3.1", + "socks": "^2.6.1" + }, + "engines": { + "node": ">= 10" } }, - "sort-keys": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/sort-keys/-/sort-keys-1.1.2.tgz", - "integrity": "sha1-RBttTTRnmPG05J6JIK37oOVD+a0=", + "node_modules/socks-proxy-agent/node_modules/debug": { + "version": "4.3.3", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.3.tgz", + "integrity": "sha512-/zxw5+vh1Tfv+4Qn7a5nsbcJKPaSvCDhojn6FEl9vupwK2VCSDtEiEtqr8DFtzYFOdz63LBkxec7DYuc2jon6Q==", "dev": true, - "requires": { - "is-plain-obj": "^1.0.0" + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } } }, - "source-list-map": { + "node_modules/socks-proxy-agent/node_modules/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 + }, + "node_modules/source-list-map": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/source-list-map/-/source-list-map-2.0.1.tgz", "integrity": "sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw==", "dev": true }, - "source-map": { + "node_modules/source-map": { "version": "0.5.7", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.5.7.tgz", "integrity": "sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w=", - "dev": true - }, - "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" + "engines": { + "node": ">=0.10.0" } }, - "source-map-support": { - "version": "0.4.18", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.4.18.tgz", - "integrity": "sha512-try0/JqxPLF9nOjvSta7tVondkP5dwgyLDjVoyMDlmjugT2lRZ1OfsrYTkCd2hkDnJTKRbO/Rl3orm8vlsUzbA==", + "node_modules/source-map-support": { + "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": { - "source-map": "^0.5.6" + "dependencies": { + "buffer-from": "^1.0.0", + "source-map": "^0.6.0" } }, - "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=", - "dev": true + "node_modules/source-map-support/node_modules/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, + "engines": { + "node": ">=0.10.0" + } }, - "spdx-correct": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.0.tgz", - "integrity": "sha512-lr2EZCctC2BNR7j7WzJ2FpDznxky1sjfxvvYEyzxNyb6lZXHODmEoJeFu4JupYlkfha1KZpJyoqiJ7pgA1qq8Q==", + "node_modules/spdx-correct": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz", + "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==", "dev": true, - "requires": { + "dependencies": { "spdx-expression-parse": "^3.0.0", "spdx-license-ids": "^3.0.0" } }, - "spdx-exceptions": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.2.0.tgz", - "integrity": "sha512-2XQACfElKi9SlVb1CYadKDXvoajPgBVPn/gOQLrTvHdElaVhr7ZEbqJaRnJLVNeaI4cMEAgVCeBMKF6MWRDCRA==", + "node_modules/spdx-exceptions": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz", + "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==", "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==", + "node_modules/spdx-expression-parse": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz", + "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==", "dev": true, - "requires": { + "dependencies": { "spdx-exceptions": "^2.1.0", "spdx-license-ids": "^3.0.0" } }, - "spdx-license-ids": { - "version": "3.0.4", - "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.4.tgz", - "integrity": "sha512-7j8LYJLeY/Yb6ACbQ7F76qy5jHkp0U6jgBfJsk97bwWlVUnUWsAgpyaCvo17h0/RQGnQ036tVDomiwoI4pDkQA==", + "node_modules/spdx-license-ids": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.7.tgz", + "integrity": "sha512-U+MTEOO0AiDzxwFvoa4JVnMV6mZlJKk2sBLt90s7G0Gd0Mlknc7kxEn3nuDPNZRta7O2uy8oLcZLVT+4sqNZHQ==", "dev": true }, - "spdy": { + "node_modules/spdy": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/spdy/-/spdy-4.0.2.tgz", "integrity": "sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==", "dev": true, - "requires": { + "dependencies": { "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.2.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.2.0.tgz", - "integrity": "sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "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 - } + "engines": { + "node": ">=6.0.0" } }, - "spdy-transport": { + "node_modules/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": { + "dependencies": { "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.2.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.2.0.tgz", - "integrity": "sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "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.6.0", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", - "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", - "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==", + "node_modules/spdy-transport/node_modules/debug": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", "dev": true, - "requires": { - "extend-shallow": "^3.0.0" + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } } }, - "sprintf-js": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "node_modules/spdy-transport/node_modules/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 }, - "sshpk": { - "version": "1.16.1", - "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", - "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", + "node_modules/spdy-transport/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", "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" + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" } }, - "ssri": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-6.0.1.tgz", - "integrity": "sha512-3Wge10hNcT1Kur4PDFwEieXSCMCJs/7WvSACcrMYrNp+b8kDL1/0wJch5Ni2WrtwEa2IO8OsVfeKIciKCDx/QA==", + "node_modules/spdy/node_modules/debug": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.1.tgz", + "integrity": "sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ==", "dev": true, - "requires": { - "figgy-pudding": "^3.5.1" - } - }, - "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" - } + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true } } }, - "statuses": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", - "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", + "node_modules/spdy/node_modules/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 }, - "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==", + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=", + "dev": true + }, + "node_modules/ssri": { + "version": "8.0.1", + "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", + "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", "dev": true, - "requires": { - "inherits": "~2.0.1", - "readable-stream": "^2.0.2" + "dependencies": { + "minipass": "^3.1.1" + }, + "engines": { + "node": ">= 8" } }, - "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==", + "node_modules/statuses": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", + "integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=", "dev": true, - "requires": { - "end-of-stream": "^1.1.0", - "stream-shift": "^1.0.0" + "engines": { + "node": ">= 0.6" } }, - "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==", + "node_modules/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==", "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" + "dependencies": { + "safe-buffer": "~5.1.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-width": { + "node_modules/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": { + "dependencies": { "is-fullwidth-code-point": "^2.0.0", "strip-ansi": "^4.0.0" + }, + "engines": { + "node": ">=4" } }, - "string.fromcodepoint": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/string.fromcodepoint/-/string.fromcodepoint-0.2.1.tgz", - "integrity": "sha1-jZeDM8C8klOPUPOD5IiPPlYZ1lM=", - "dev": true - }, - "string.prototype.codepointat": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/string.prototype.codepointat/-/string.prototype.codepointat-0.2.1.tgz", - "integrity": "sha512-2cBVCj6I4IOvEnjgO/hWqXjqBGsY+zwPmHl12Srk9IXSZ56Jwwmy+66XO5Iut/oQVR7t5ihYdLB0GMa4alEUcg==", - "dev": true - }, - "string.prototype.repeat": { + "node_modules/string.prototype.repeat": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/string.prototype.repeat/-/string.prototype.repeat-0.2.0.tgz", "integrity": "sha1-q6Nt4I3O5qWjN9SbLqHaGyj8Ds8=", "dev": true }, - "string.prototype.trimend": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.2.tgz", - "integrity": "sha512-8oAG/hi14Z4nOVP0z6mdiVZ/wqjDtWSLygMigTzAb+7aPEDTleeFf+WrF+alzecxIRkckkJVn+dTlwzJXORATw==", + "node_modules/string.prototype.trimend": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.3.tgz", + "integrity": "sha512-ayH0pB+uf0U28CtjlLvL7NaohvR1amUvVZk+y3DYb0Ey2PUV5zPkkKy9+U1ndVEIXO8hNg18eIv9Jntbii+dKw==", "dev": true, - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.1" - }, "dependencies": { - "es-abstract": { - "version": "1.18.0-next.1", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0-next.1.tgz", - "integrity": "sha512-I4UGspA0wpZXWENrdA0uHbnhte683t3qT/1VFH9aX2dA5PPSf6QW5HHXf5HImaqPmjXaVeVk4RGWnaylmV7uAA==", - "dev": true, - "requires": { - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1", - "is-callable": "^1.2.2", - "is-negative-zero": "^2.0.0", - "is-regex": "^1.1.1", - "object-inspect": "^1.8.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.1", - "string.prototype.trimend": "^1.0.1", - "string.prototype.trimstart": "^1.0.1" - } - }, - "es-to-primitive": { - "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.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - } - }, - "has-symbols": { - "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 - }, - "is-callable": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.2.tgz", - "integrity": "sha512-dnMqspv5nU3LoewK2N/y7KLtxtakvTuaCsU9FU50/QDmdbHNy/4/JuRtMHqRU22o3q+W89YQndQEeCVwK+3qrA==", - "dev": true - }, - "is-regex": { - "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-symbols": "^1.0.1" - } - } - } - }, - "string.prototype.trimstart": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.2.tgz", - "integrity": "sha512-7F6CdBTl5zyu30BJFdzSTlSlLPwODC23Od+iLoVH8X6+3fvDPPuBVVj9iaB1GOsSTSIgVfsfm27R2FGrAPznWg==", - "dev": true, - "requires": { - "define-properties": "^1.1.3", - "es-abstract": "^1.18.0-next.1" + "call-bind": "^1.0.0", + "define-properties": "^1.1.3" }, - "dependencies": { - "es-abstract": { - "version": "1.18.0-next.1", - "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0-next.1.tgz", - "integrity": "sha512-I4UGspA0wpZXWENrdA0uHbnhte683t3qT/1VFH9aX2dA5PPSf6QW5HHXf5HImaqPmjXaVeVk4RGWnaylmV7uAA==", - "dev": true, - "requires": { - "es-to-primitive": "^1.2.1", - "function-bind": "^1.1.1", - "has": "^1.0.3", - "has-symbols": "^1.0.1", - "is-callable": "^1.2.2", - "is-negative-zero": "^2.0.0", - "is-regex": "^1.1.1", - "object-inspect": "^1.8.0", - "object-keys": "^1.1.1", - "object.assign": "^4.1.1", - "string.prototype.trimend": "^1.0.1", - "string.prototype.trimstart": "^1.0.1" - } - }, - "es-to-primitive": { - "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.4", - "is-date-object": "^1.0.1", - "is-symbol": "^1.0.2" - } - }, - "has-symbols": { - "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 - }, - "is-callable": { - "version": "1.2.2", - "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.2.tgz", - "integrity": "sha512-dnMqspv5nU3LoewK2N/y7KLtxtakvTuaCsU9FU50/QDmdbHNy/4/JuRtMHqRU22o3q+W89YQndQEeCVwK+3qrA==", - "dev": true - }, - "is-regex": { - "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-symbols": "^1.0.1" - } - } + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "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==", + "node_modules/string.prototype.trimstart": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/string.prototype.trimstart/-/string.prototype.trimstart-1.0.3.tgz", + "integrity": "sha512-oBIBUy5lea5tt0ovtOFiEQaBkoBBkyJhZXzJYrSmDo5IUUqbOPvVezuRs/agBIdZ2p2Eo1FD6bD9USyBLfl3xg==", "dev": true, - "requires": { - "safe-buffer": "~5.1.0" + "dependencies": { + "call-bind": "^1.0.0", + "define-properties": "^1.1.3" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" } }, - "strip-ansi": { + "node_modules/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": { + "dependencies": { "ansi-regex": "^3.0.0" + }, + "engines": { + "node": ">=4" } }, - "strip-bom": { + "node_modules/strip-bom": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz", "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", - "dev": true + "dev": true, + "engines": { + "node": ">=4" + } }, - "strip-eof": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-eof/-/strip-eof-1.0.0.tgz", - "integrity": "sha1-u0P/VZim6wXYm1n80SnJgzE2Br8=", + "node_modules/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, + "engines": { + "node": ">=6" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/style-loader": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-2.0.0.tgz", + "integrity": "sha512-Z0gYUJmzZ6ZdRUqpg1r8GsaFKypE+3xAzuFeMuoHgjc9KZv3wMyCRjQIWEbhoFSq7+7yoHXySDJyyWQaPajeiQ==", + "dev": true, + "dependencies": { + "loader-utils": "^2.0.0", + "schema-utils": "^3.0.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + } + }, + "node_modules/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, + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/svgpath": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/svgpath/-/svgpath-2.3.0.tgz", + "integrity": "sha512-N/4UDu3Y2ICik0daMmFW1tplw0XPs1nVIEVYkTiQfj9/JQZeEtAKaSYwheCwje1I4pQ5r22fGpoaNIvGgsyJyg==", "dev": true }, - "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=", + "node_modules/table": { + "version": "5.4.6", + "resolved": "https://registry.npmjs.org/table/-/table-5.4.6.tgz", + "integrity": "sha512-wmEc8m4fjnob4gt5riFRtTu/6+4rSe12TpAELNSqHMfF3IqnA+CH37USM6/YR3qRZv7e56kAEAtd6nKZaxe0Ug==", + "dev": true, + "dependencies": { + "ajv": "^6.10.2", + "lodash": "^4.17.14", + "slice-ansi": "^2.1.0", + "string-width": "^3.0.0" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/table/node_modules/ansi-regex": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", + "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", + "dev": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/table/node_modules/emoji-regex": { + "version": "7.0.3", + "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz", + "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==", "dev": true }, - "style-loader": { - "version": "0.18.2", - "resolved": "https://registry.npmjs.org/style-loader/-/style-loader-0.18.2.tgz", - "integrity": "sha512-WPpJPZGUxWYHWIUMNNOYqql7zh85zGmr84FdTVWq52WTIkqlW9xSxD3QYWi/T31cqn9UNSsietVEgGn2aaSCzw==", - "dev": true, - "requires": { - "loader-utils": "^1.0.2", - "schema-utils": "^0.3.0" - } - }, - "supports-color": { - "version": "5.5.0", - "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", - "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "node_modules/table/node_modules/string-width": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", + "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", "dev": true, - "requires": { - "has-flag": "^3.0.0" + "dependencies": { + "emoji-regex": "^7.0.1", + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^5.1.0" + }, + "engines": { + "node": ">=6" } }, - "svg-pathdata": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/svg-pathdata/-/svg-pathdata-1.0.4.tgz", - "integrity": "sha1-emgTQqrH7/2NUq+6eZmRDJ2juVk=", + "node_modules/table/node_modules/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": { - "readable-stream": "~2.0.4" - }, "dependencies": { - "process-nextick-args": { - "version": "1.0.7", - "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-1.0.7.tgz", - "integrity": "sha1-FQ4gt1ZZCtP5EJPyWk8q2L/zC6M=", - "dev": true - }, - "readable-stream": { - "version": "2.0.6", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.0.6.tgz", - "integrity": "sha1-j5A0HmilPMySh4jaz80Rs265t44=", - "dev": true, - "requires": { - "core-util-is": "~1.0.0", - "inherits": "~2.0.1", - "isarray": "~1.0.0", - "process-nextick-args": "~1.0.6", - "string_decoder": "~0.10.x", - "util-deprecate": "~1.0.1" - } - }, - "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 - } + "ansi-regex": "^4.1.0" + }, + "engines": { + "node": ">=6" } }, - "svg2ttf": { - "version": "4.3.0", - "resolved": "https://registry.npmjs.org/svg2ttf/-/svg2ttf-4.3.0.tgz", - "integrity": "sha512-LZ0B7zzHWLWbzLzwaKGHQvPOuxCXLReIb3LSxFSGUy1gMw2Utk6KGNbTmbmRL6Rk1qDSmTixnDrQgnXaL9n0CA==", + "node_modules/tapable": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/tapable/-/tapable-2.2.0.tgz", + "integrity": "sha512-FBk4IesMV1rBxX2tfiK8RAmogtWn53puLOQlvO8XuwlgxcYbP4mVPS9Ph4aeamSyyVjOl24aYWAuc8U5kCVwMw==", "dev": true, - "requires": { - "argparse": "^1.0.6", - "cubic2quad": "^1.0.0", - "lodash": "^4.17.10", - "microbuffer": "^1.0.0", - "svgpath": "^2.1.5", - "xmldom": "~0.1.22" + "engines": { + "node": ">=6" } }, - "svgicons2svgfont": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/svgicons2svgfont/-/svgicons2svgfont-5.0.2.tgz", - "integrity": "sha1-BRGCPGSRvhp9VDKS4pqK5ietBAY=", + "node_modules/terser": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/terser/-/terser-5.7.2.tgz", + "integrity": "sha512-0Omye+RD4X7X69O0eql3lC4Heh/5iLj3ggxR/B5ketZLOtLiOqukUgjw3q4PDnNQbsrkKr3UMypqStQG3XKRvw==", "dev": true, - "requires": { - "commander": "^2.9.0", - "neatequal": "^1.0.0", - "readable-stream": "^2.0.4", - "sax": "^1.1.5", - "string.fromcodepoint": "^0.2.1", - "string.prototype.codepointat": "^0.2.0", - "svg-pathdata": "^1.0.4" - } - }, - "svgo": { - "version": "0.7.2", - "resolved": "https://registry.npmjs.org/svgo/-/svgo-0.7.2.tgz", - "integrity": "sha1-n1dyQTlSE1xv779Ar+ak+qiLS7U=", - "dev": true, - "requires": { - "coa": "~1.0.1", - "colors": "~1.1.2", - "csso": "~2.3.1", - "js-yaml": "~3.7.0", - "mkdirp": "~0.5.1", - "sax": "~1.2.1", - "whet.extend": "~0.9.9" - }, - "dependencies": { - "js-yaml": { - "version": "3.7.0", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.7.0.tgz", - "integrity": "sha1-XJZ93YN6m/3KXy3oQlOr6KHAO4A=", - "dev": true, - "requires": { - "argparse": "^1.0.7", - "esprima": "^2.6.0" - } - } + "dependencies": { + "commander": "^2.20.0", + "source-map": "~0.7.2", + "source-map-support": "~0.5.19" + }, + "bin": { + "terser": "bin/terser" + }, + "engines": { + "node": ">=10" } }, - "svgpath": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/svgpath/-/svgpath-2.3.0.tgz", - "integrity": "sha512-N/4UDu3Y2ICik0daMmFW1tplw0XPs1nVIEVYkTiQfj9/JQZeEtAKaSYwheCwje1I4pQ5r22fGpoaNIvGgsyJyg==", - "dev": true - }, - "table": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/table/-/table-4.0.2.tgz", - "integrity": "sha512-UUkEAPdSGxtRpiV9ozJ5cMTtYiqz7Ni1OGqLXRCynrvzdtR1p+cfOWe2RJLwvUG8hNanaSRjecIqwOjqeatDsA==", + "node_modules/terser-webpack-plugin": { + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/terser-webpack-plugin/-/terser-webpack-plugin-5.1.4.tgz", + "integrity": "sha512-C2WkFwstHDhVEmsmlCxrXUtVklS+Ir1A7twrYzrDrQQOIMOaVAYykaoo/Aq1K0QRkMoY2hhvDQY1cm4jnIMFwA==", "dev": true, - "requires": { - "ajv": "^5.2.3", - "ajv-keywords": "^2.1.0", - "chalk": "^2.1.0", - "lodash": "^4.17.4", - "slice-ansi": "1.0.0", - "string-width": "^2.1.1" + "dependencies": { + "jest-worker": "^27.0.2", + "p-limit": "^3.1.0", + "schema-utils": "^3.0.0", + "serialize-javascript": "^6.0.0", + "source-map": "^0.6.1", + "terser": "^5.7.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^5.1.0" } }, - "tapable": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/tapable/-/tapable-1.1.3.tgz", - "integrity": "sha512-4WK/bYZmj8xLr+HUCODHGF1ZFzsYffasLUgEiMBY4fgtltdO6B4WJtlSbPaDTLpYTcGVwM2qLnFTICEcNxs3kA==", - "dev": true - }, - "tar": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/tar/-/tar-2.2.2.tgz", - "integrity": "sha512-FCEhQ/4rE1zYv9rYXJw/msRqsnmlje5jHP6huWeBZ704jUTy02c5AZyWujpMR1ax6mVw9NyJMfuK2CMDWVIfgA==", + "node_modules/terser-webpack-plugin/node_modules/p-limit": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", + "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", "dev": true, - "requires": { - "block-stream": "*", - "fstream": "^1.0.12", - "inherits": "2" + "dependencies": { + "yocto-queue": "^0.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "terser": { - "version": "4.1.4", - "resolved": "https://registry.npmjs.org/terser/-/terser-4.1.4.tgz", - "integrity": "sha512-+ZwXJvdSwbd60jG0Illav0F06GDJF0R4ydZ21Q3wGAFKoBGyJGo34F63vzJHgvYxc1ukOtIjvwEvl9MkjzM6Pg==", + "node_modules/terser-webpack-plugin/node_modules/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, - "requires": { - "commander": "^2.20.0", - "source-map": "~0.6.1", - "source-map-support": "~0.5.12" - }, - "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-support": { - "version": "0.5.13", - "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", - "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", - "dev": true, - "requires": { - "buffer-from": "^1.0.0", - "source-map": "^0.6.0" - } - } + "engines": { + "node": ">=0.10.0" } }, - "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": { - "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 - }, - "fast-deep-equal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", - "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" - } - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true - }, - "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" - } - }, - "pify": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", - "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", - "dev": true - }, - "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" - } - }, - "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 - } + "node_modules/terser/node_modules/source-map": { + "version": "0.7.3", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.7.3.tgz", + "integrity": "sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ==", + "dev": true, + "engines": { + "node": ">= 8" } }, - "text-table": { + "node_modules/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 }, - "through": { + "node_modules/through": { "version": "2.3.8", "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", - "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", + "integrity": "sha512-w89qg7PI8wAdvX60bMDP+bFoD5Dvhm9oLheFp5O4a2QF0cSBGsBX4qZmadPMvVqlLJBBci+WqGGOAPvcDeNSVg==", "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": { + "node_modules/thunky": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==", "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" - } - }, - "tmp": { + "node_modules/tmp": { "version": "0.0.33", "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", "dev": true, - "requires": { + "dependencies": { "os-tmpdir": "~1.0.2" - } - }, - "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": "1.0.3", - "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-1.0.3.tgz", - "integrity": "sha1-uDVx+k2MJbguIxsG46MFXeTKGkc=", - "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" - } - } + "engines": { + "node": ">=0.6.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==", - "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=", + "node_modules/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": "^3.0.0", - "repeat-string": "^1.6.1" + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" } }, - "toidentifier": { + "node_modules/toidentifier": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", "integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==", - "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" - } - }, - "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 - }, - "tslib": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.10.0.tgz", - "integrity": "sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ==", - "dev": true - }, - "ttf2eot": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ttf2eot/-/ttf2eot-2.0.0.tgz", - "integrity": "sha1-jmM3pYWr0WCKDISVirSDzmn2ZUs=", - "dev": true, - "requires": { - "argparse": "^1.0.6", - "microbuffer": "^1.0.0" - } - }, - "ttf2woff": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/ttf2woff/-/ttf2woff-2.0.2.tgz", - "integrity": "sha512-X68badwBjAy/+itU49scLjXUL094up+rHuYk+YAOTTBYSUMOmLZ7VyhZJuqQESj1gnyLAC2/5V8Euv+mExmyPA==", "dev": true, - "requires": { - "argparse": "^1.0.6", - "microbuffer": "^1.0.0", - "pako": "^1.0.0" + "engines": { + "node": ">=0.6" } }, - "ttf2woff2": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/ttf2woff2/-/ttf2woff2-2.0.3.tgz", - "integrity": "sha1-XgIK/m5kMofzrXaHq+0g/mVOsyk=", + "node_modules/totalist": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/totalist/-/totalist-1.1.0.tgz", + "integrity": "sha512-gduQwd1rOdDMGxFG1gEvhV88Oirdo2p+KjoYFU7k2g+i7n6AFFbDQ5kMPUsW0pNbfQsB/cwXvT1i4Bue0s9g5g==", "dev": true, - "requires": { - "bindings": "^1.2.1", - "bufferstreams": "^1.1.0", - "nan": "^2.1.0", - "node-gyp": "^3.0.3" + "engines": { + "node": ">=6" } }, - "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=", + "node_modules/tsconfig-paths": { + "version": "3.9.0", + "resolved": "https://registry.npmjs.org/tsconfig-paths/-/tsconfig-paths-3.9.0.tgz", + "integrity": "sha512-dRcuzokWhajtZWkQsDVKbWyY+jgcLC5sqJhg2PSgf4ZkH2aHPvaOY8YWGhmjb68b5qqTfasSsDO9k7RUiEmZAw==", "dev": true, - "requires": { - "safe-buffer": "^5.0.1" + "dependencies": { + "@types/json5": "^0.0.29", + "json5": "^1.0.1", + "minimist": "^1.2.0", + "strip-bom": "^3.0.0" } }, - "tweetnacl": { - "version": "0.14.5", - "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", - "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=", + "node_modules/tslib": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz", + "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==", "dev": true }, - "type-check": { + "node_modules/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": { + "dependencies": { "prelude-ls": "~1.1.2" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/type-fest": { + "version": "0.21.3", + "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", + "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } }, - "type-is": { + "node_modules/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": { + "dependencies": { "media-typer": "0.3.0", "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" } }, - "typedarray": { - "version": "0.0.6", - "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz", - "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=", - "dev": true - }, - "uglify-js": { + "node_modules/uglify-js": { "version": "3.11.3", "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.11.3.tgz", "integrity": "sha512-wDRziHG94mNj2n3R864CvYw/+pc9y/RNImiTyrrf8BzgWn75JgFSwYvXrtZQMnMnOp/4UTrf3iCSQxSStPiByA==", "dev": true, - "optional": true + "optional": true, + "bin": { + "uglifyjs": "bin/uglifyjs" + }, + "engines": { + "node": ">=0.8.0" + } }, - "underscore": { + "node_modules/underscore": { "version": "1.11.0", "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.11.0.tgz", "integrity": "sha512-xY96SsN3NA461qIRKZ/+qox37YXPtSBswMGfiNptr+wrt6ds4HaMw23TP612fEyGekRE6LNRiLYr/aqbHXNedw==", "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" - } - } + "node_modules/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, + "engines": { + "node": ">=4" + } + }, + "node_modules/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, + "dependencies": { + "unicode-canonical-property-names-ecmascript": "^1.0.4", + "unicode-property-aliases-ecmascript": "^1.0.4" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-match-property-value-ecmascript": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/unicode-match-property-value-ecmascript/-/unicode-match-property-value-ecmascript-1.2.0.tgz", + "integrity": "sha512-wjuQHGQVofmSJv1uVISKLE5zO2rNGzM/KCYZch/QQvez7C1hUhBIuZ701fYXExuufJFMPhv2SyL8CyoIfMLbIQ==", + "dev": true, + "engines": { + "node": ">=4" + } + }, + "node_modules/unicode-property-aliases-ecmascript": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/unicode-property-aliases-ecmascript/-/unicode-property-aliases-ecmascript-1.1.0.tgz", + "integrity": "sha512-PqSoPh/pWetQ2phoj5RLiaqIk4kCNwoV3CI+LfGmWLKI3rE3kl1h59XpX2BjgDrmbxD9ARtQobPGU1SguCYuQg==", + "dev": true, + "engines": { + "node": ">=4" } }, - "uniq": { + "node_modules/uniq": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz", "integrity": "sha1-sxxa6CVIRKOoKBVBzisEuGWnNP8=", "dev": true }, - "uniqs": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/uniqs/-/uniqs-2.0.0.tgz", - "integrity": "sha1-/+3ks2slKQaW5uFl1KWe25mOawI=", - "dev": true - }, - "unique-filename": { + "node_modules/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": { + "dependencies": { "unique-slug": "^2.0.0" } }, - "unique-slug": { + "node_modules/unique-slug": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", "dev": true, - "requires": { + "dependencies": { "imurmurhash": "^0.1.4" } }, - "unpipe": { + "node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "dev": true, + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/unpipe": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", "integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=", - "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=", - "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 - } + "dev": true, + "engines": { + "node": ">= 0.8" } }, - "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 - }, - "uri-js": { + "node_modules/uri-js": { "version": "4.2.2", "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", "dev": true, - "requires": { + "dependencies": { "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": { + "node_modules/url": { "version": "0.11.0", "resolved": "https://registry.npmjs.org/url/-/url-0.11.0.tgz", "integrity": "sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE=", "dev": true, - "requires": { + "dependencies": { "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-join": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/url-join/-/url-join-1.1.0.tgz", - "integrity": "sha1-dBxsL0WWxIMNZxhGCSDQySIC3Hg=", - "dev": true - }, - "url-loader": { - "version": "0.5.9", - "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-0.5.9.tgz", - "integrity": "sha512-B7QYFyvv+fOBqBVeefsxv6koWWtjmHaMFT6KZWti4KRw8YUD/hOU+3AECvXuzyVawIBx3z7zQRejXCDSO5kk1Q==", + "node_modules/url-loader": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/url-loader/-/url-loader-4.1.1.tgz", + "integrity": "sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA==", "dev": true, - "requires": { - "loader-utils": "^1.0.2", - "mime": "1.3.x" - }, "dependencies": { - "mime": { - "version": "1.3.6", - "resolved": "https://registry.npmjs.org/mime/-/mime-1.3.6.tgz", - "integrity": "sha1-WR2E02U6awtKO5343lqoEI5y5eA=", - "dev": true + "loader-utils": "^2.0.0", + "mime-types": "^2.1.27", + "schema-utils": "^3.0.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "file-loader": "*", + "webpack": "^4.0.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "file-loader": { + "optional": true } } }, - "url-parse": { + "node_modules/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": { + "dependencies": { "querystringify": "^2.1.1", "requires-port": "^1.0.0" } }, - "use": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/use/-/use-3.1.1.tgz", - "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", + "node_modules/url/node_modules/punycode": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-1.3.2.tgz", + "integrity": "sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0=", "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==", + "node_modules/util": { + "version": "0.12.3", + "resolved": "https://registry.npmjs.org/util/-/util-0.12.3.tgz", + "integrity": "sha512-I8XkoQwE+fPQEhy9v012V+TSdH2kp9ts29i20TaaDUXsg7x/onePbhFJUExBfv/2ay1ZOp/Vsm3nDlmnFGSAog==", "dev": true, - "requires": { - "inherits": "2.0.3" + "dependencies": { + "inherits": "^2.0.3", + "is-arguments": "^1.0.4", + "is-generator-function": "^1.0.7", + "is-typed-array": "^1.1.3", + "safe-buffer": "^5.1.2", + "which-typed-array": "^1.1.2" } }, - "util-deprecate": { + "node_modules/util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=", "dev": true }, - "utils-merge": { + "node_modules/utils-merge": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", + "dev": true, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/v8-compile-cache": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/v8-compile-cache/-/v8-compile-cache-2.2.0.tgz", + "integrity": "sha512-gTpR5XQNKFwOd4clxfnhaqvfqMpqEwr4tOtCyz4MtYZX2JYhfr1JvBFKdS+7K/9rfpZR3VLX+YWBbKoxCgS43Q==", "dev": true }, - "uuid": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.3.2.tgz", - "integrity": "sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==", + "node_modules/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==", + "dev": true, + "dependencies": { + "spdx-correct": "^3.0.0", + "spdx-expression-parse": "^3.0.0" + } + }, + "node_modules/varstream": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/varstream/-/varstream-0.3.2.tgz", + "integrity": "sha1-GKxklHZfP/GjWtmkvgU77BiKXeE=", + "dev": true, + "dependencies": { + "readable-stream": "^1.0.33" + }, + "bin": { + "json2varstream": "cli/json2varstream.js", + "varstream2json": "cli/varstream2json.js" + }, + "engines": { + "node": ">=0.10.*" + } + }, + "node_modules/varstream/node_modules/isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8=", "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==", + "node_modules/varstream/node_modules/readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", + "dev": true, + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "node_modules/varstream/node_modules/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 }, - "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==", + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", + "dev": true, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/watchpack": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-2.1.1.tgz", + "integrity": "sha512-Oo7LXCmc1eE1AjyuSBmtC3+Wy4HcV8PxWh2kP6fOl8yTlNS7r0K9l1ao2lrrUza7V39Y3D/BbJgY8VeSlc5JKw==", + "dev": true, + "dependencies": { + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.1.2" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/wbuf": { + "version": "1.7.3", + "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", + "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", + "dev": true, + "dependencies": { + "minimalistic-assert": "^1.0.0" + } + }, + "node_modules/webpack": { + "version": "5.21.2", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.21.2.tgz", + "integrity": "sha512-xHflCenx+AM4uWKX71SWHhxml5aMXdy2tu/vdi4lClm7PADKxlyDAFFN1rEFzNV0MAoPpHtBeJnl/+K6F4QBPg==", + "dev": true, + "dependencies": { + "@types/eslint-scope": "^3.7.0", + "@types/estree": "^0.0.46", + "@webassemblyjs/ast": "1.11.0", + "@webassemblyjs/wasm-edit": "1.11.0", + "@webassemblyjs/wasm-parser": "1.11.0", + "acorn": "^8.0.4", + "browserslist": "^4.14.5", + "chrome-trace-event": "^1.0.2", + "enhanced-resolve": "^5.7.0", + "es-module-lexer": "^0.3.26", + "eslint-scope": "^5.1.1", + "events": "^3.2.0", + "glob-to-regexp": "^0.4.1", + "graceful-fs": "^4.2.4", + "json-parse-better-errors": "^1.0.2", + "loader-runner": "^4.2.0", + "mime-types": "^2.1.27", + "neo-async": "^2.6.2", + "schema-utils": "^3.0.0", + "tapable": "^2.1.1", + "terser-webpack-plugin": "^5.1.1", + "watchpack": "^2.0.0", + "webpack-sources": "^2.1.1" + }, + "bin": { + "webpack": "bin/webpack.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true + } + } + }, + "node_modules/webpack-bundle-analyzer": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.4.0.tgz", + "integrity": "sha512-9DhNa+aXpqdHk8LkLPTBU/dMfl84Y+WE2+KnfI6rSpNRNVKa0VGLjPd2pjFubDeqnWmulFggxmWBxhfJXZnR0g==", "dev": true, - "requires": { - "spdx-correct": "^3.0.0", - "spdx-expression-parse": "^3.0.0" + "dependencies": { + "acorn": "^8.0.4", + "acorn-walk": "^8.0.0", + "chalk": "^4.1.0", + "commander": "^6.2.0", + "gzip-size": "^6.0.0", + "lodash": "^4.17.20", + "opener": "^1.5.2", + "sirv": "^1.0.7", + "ws": "^7.3.1" + }, + "bin": { + "webpack-bundle-analyzer": "lib/bin/analyzer.js" + }, + "engines": { + "node": ">= 10.13.0" } }, - "varstream": { - "version": "0.3.2", - "resolved": "https://registry.npmjs.org/varstream/-/varstream-0.3.2.tgz", - "integrity": "sha1-GKxklHZfP/GjWtmkvgU77BiKXeE=", + "node_modules/webpack-bundle-analyzer/node_modules/acorn": { + "version": "8.0.5", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.0.5.tgz", + "integrity": "sha512-v+DieK/HJkJOpFBETDJioequtc3PfxsWMaxIdIwujtF7FEV/MAyDQLlm6/zPvr7Mix07mLh6ccVwIsloceodlg==", "dev": true, - "requires": { - "readable-stream": "^1.0.33" + "bin": { + "acorn": "bin/acorn" }, - "dependencies": { - "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.1.14", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", - "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", - "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 - } + "engines": { + "node": ">=0.4.0" } }, - "vary": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", - "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", - "dev": true + "node_modules/webpack-bundle-analyzer/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dev": true, + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } }, - "vendors": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/vendors/-/vendors-1.0.3.tgz", - "integrity": "sha512-fOi47nsJP5Wqefa43kyWSg80qF+Q3XA6MUkgi7Hp1HQaKDQW4cQrK2D0P7mmbFtsV1N89am55Yru/nyEwRubcw==", - "dev": true + "node_modules/webpack-bundle-analyzer/node_modules/chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "dev": true, + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/chalk?sponsor=1" + } }, - "verror": { - "version": "1.10.0", - "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", - "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "node_modules/webpack-bundle-analyzer/node_modules/color-convert": { + "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": { - "assert-plus": "^1.0.0", - "core-util-is": "1.0.2", - "extsprintf": "^1.2.0" + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" } }, - "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==", + "node_modules/webpack-bundle-analyzer/node_modules/color-name": { + "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 }, - "vusion-webfonts-generator": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/vusion-webfonts-generator/-/vusion-webfonts-generator-0.4.1.tgz", - "integrity": "sha512-ij+PKR4tL/e7cpY/3rX9DPL61YtOT2j73OKoHyLj5xpR/JRupYs6q3jCKWA4Wim9hL07Aab9jZ/MuOJKPhCyzA==", + "node_modules/webpack-bundle-analyzer/node_modules/commander": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/commander/-/commander-6.2.1.tgz", + "integrity": "sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA==", "dev": true, - "requires": { - "handlebars": "^4.0.5", - "mkdirp": "^0.5.0", - "q": "^1.1.2", - "svg2ttf": "^4.0.0", - "svgicons2svgfont": "^5.0.0", - "ttf2eot": "^2.0.0", - "ttf2woff": "^2.0.1", - "ttf2woff2": "^2.0.3", - "underscore": "^1.7.0", - "url-join": "^1.1.0" + "engines": { + "node": ">= 6" } }, - "watchpack": { - "version": "1.6.0", - "resolved": "https://registry.npmjs.org/watchpack/-/watchpack-1.6.0.tgz", - "integrity": "sha512-i6dHe3EyLjMmDlU1/bGQpEw25XSjkJULPuAVKCbNRefQVq48yXKUpwg538F7AZTf9kyr57zj++pQFltUa5H7yA==", + "node_modules/webpack-bundle-analyzer/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", "dev": true, - "requires": { - "chokidar": "^2.0.2", - "graceful-fs": "^4.1.2", - "neo-async": "^2.5.0" + "engines": { + "node": ">=8" } }, - "wbuf": { - "version": "1.7.3", - "resolved": "https://registry.npmjs.org/wbuf/-/wbuf-1.7.3.tgz", - "integrity": "sha512-O84QOnr0icsbFGLS0O3bI5FswxzRr8/gHwWkDlQFskhSPryQXvrTMxjxGP4+iWYoauLoBvfDpkrOauZ+0iZpDA==", + "node_modules/webpack-bundle-analyzer/node_modules/supports-color": { + "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": { - "minimalistic-assert": "^1.0.0" + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" } }, - "webpack": { - "version": "4.39.1", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-4.39.1.tgz", - "integrity": "sha512-/LAb2TJ2z+eVwisldp3dqTEoNhzp/TLCZlmZm3GGGAlnfIWDgOEE758j/9atklNLfRyhKbZTCOIoPqLJXeBLbQ==", + "node_modules/webpack-bundle-analyzer/node_modules/ws": { + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.3.tgz", + "integrity": "sha512-hr6vCR76GsossIRsr8OLR9acVVm1jyfEWvhbNjtgPOrfvAlKzvyeg/P6r8RuDjRyrcQoPQT7K0DGEPc7Ae6jzA==", "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.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" - } + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true }, - "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 + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/webpack-cli": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-4.5.0.tgz", + "integrity": "sha512-wXg/ef6Ibstl2f50mnkcHblRPN/P9J4Nlod5Hg9HGFgSeF8rsqDGHJeVe4aR26q9l62TUJi6vmvC2Qz96YJw1Q==", + "dev": true, + "dependencies": { + "@discoveryjs/json-ext": "^0.5.0", + "@webpack-cli/configtest": "^1.0.1", + "@webpack-cli/info": "^1.2.2", + "@webpack-cli/serve": "^1.3.0", + "colorette": "^1.2.1", + "commander": "^7.0.0", + "enquirer": "^2.3.6", + "execa": "^5.0.0", + "fastest-levenshtein": "^1.0.12", + "import-local": "^3.0.2", + "interpret": "^2.2.0", + "rechoir": "^0.7.0", + "v8-compile-cache": "^2.2.0", + "webpack-merge": "^5.7.3" + }, + "bin": { + "webpack-cli": "bin/cli.js" + }, + "engines": { + "node": ">=10.13.0" + }, + "peerDependencies": { + "webpack": "4.x.x || 5.x.x" + }, + "peerDependenciesMeta": { + "@webpack-cli/generators": { + "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" - } + "@webpack-cli/init": { + "optional": true }, - "fast-deep-equal": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz", - "integrity": "sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=", - "dev": true + "@webpack-cli/migrate": { + "optional": true }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "dev": true + "webpack-bundle-analyzer": { + "optional": true }, - "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" - } + "webpack-dev-server": { + "optional": true } } }, - "webpack-cli": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/webpack-cli/-/webpack-cli-3.3.2.tgz", - "integrity": "sha512-FLkobnaJJ+03j5eplxlI0TUxhGCOdfewspIGuvDVtpOlrAuKMFC57K42Ukxqs1tn8947/PM6tP95gQc0DCzRYA==", + "node_modules/webpack-cli/node_modules/commander": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-7.0.0.tgz", + "integrity": "sha512-ovx/7NkTrnPuIV8sqk/GjUIIM1+iUQeqA3ye2VNpq9sVoiZsooObWlQy+OPWGI17GDaEoybuAGJm6U8yC077BA==", "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", - "supports-color": "^5.5.0", - "v8-compile-cache": "^2.0.2", - "yargs": "^12.0.5" - } - }, - "webpack-dev-middleware": { - "version": "3.7.2", - "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-3.7.2.tgz", - "integrity": "sha512-1xC42LxbYoqLNAhV6YzTYacicgMZQTqRd27Sim9wn5hJrX3I5nxYy1SxSd4+gjUFsz1dQFj+yEe6zEVmSkeJjw==", - "dev": true, - "requires": { - "memory-fs": "^0.4.1", - "mime": "^2.4.4", - "mkdirp": "^0.5.1", + "engines": { + "node": ">= 10" + } + }, + "node_modules/webpack-dev-middleware": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/webpack-dev-middleware/-/webpack-dev-middleware-4.1.0.tgz", + "integrity": "sha512-mpa/FY+DiBu5+r5JUIyTCYWRfkWgyA3/OOE9lwfzV9S70A4vJYLsVRKj5rMFEsezBroy2FmPyQ8oBRVW8QmK1A==", + "dev": true, + "dependencies": { + "colorette": "^1.2.1", + "mem": "^8.0.0", + "memfs": "^3.2.0", + "mime-types": "^2.1.28", "range-parser": "^1.2.1", - "webpack-log": "^2.0.0" + "schema-utils": "^3.0.0" + }, + "engines": { + "node": ">= 10.13.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/webpack" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" } }, - "webpack-dev-server": { - "version": "3.11.0", - "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-3.11.0.tgz", - "integrity": "sha512-PUxZ+oSTxogFQgkTtFndEtJIPNmml7ExwufBZ9L2/Xyyd5PnOL5UreWe5ZT7IU25DSdykL9p1MLQzmLh2ljSeg==", + "node_modules/webpack-dev-server": { + "version": "4.0.0-beta.0", + "resolved": "https://registry.npmjs.org/webpack-dev-server/-/webpack-dev-server-4.0.0-beta.0.tgz", + "integrity": "sha512-mVD4Hn3bsMdcq6qE0y8xvH6KAu9NwS6F0NNgFe+n6gbsTQ7YgffUDydvy2iieyyKjAcBJDT5PZexv9tKv8kTNQ==", "dev": true, - "requires": { + "dependencies": { "ansi-html": "0.0.7", "bonjour": "^3.5.0", - "chokidar": "^2.1.8", + "chokidar": "^3.4.3", "compression": "^1.7.4", "connect-history-api-fallback": "^1.6.0", - "debug": "^4.1.1", - "del": "^4.1.1", + "del": "^6.0.0", "express": "^4.17.1", + "find-cache-dir": "^3.3.1", + "graceful-fs": "^4.2.4", "html-entities": "^1.3.1", - "http-proxy-middleware": "0.19.1", - "import-local": "^2.0.0", - "internal-ip": "^4.3.0", + "http-proxy-middleware": "^1.0.6", + "internal-ip": "^6.2.0", "ip": "^1.1.5", "is-absolute-url": "^3.0.3", "killable": "^1.0.1", - "loglevel": "^1.6.8", - "opn": "^5.5.0", - "p-retry": "^3.0.1", - "portfinder": "^1.0.26", - "schema-utils": "^1.0.0", - "selfsigned": "^1.10.7", - "semver": "^6.3.0", + "open": "^7.3.0", + "p-retry": "^4.2.0", + "portfinder": "^1.0.28", + "schema-utils": "^3.0.0", + "selfsigned": "^1.10.8", "serve-index": "^1.9.1", - "sockjs": "0.3.20", - "sockjs-client": "1.4.0", + "sockjs": "0.3.21", + "sockjs-client": "1.5.0", "spdy": "^4.0.2", - "strip-ansi": "^3.0.1", - "supports-color": "^6.1.0", + "strip-ansi": "^6.0.0", "url": "^0.11.0", - "webpack-dev-middleware": "^3.7.2", - "webpack-log": "^2.0.0", - "ws": "^6.2.1", - "yargs": "^13.3.2" - }, - "dependencies": { - "ajv": { - "version": "6.12.6", - "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", - "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", - "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" - } - }, - "ajv-keywords": { - "version": "3.5.2", - "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-3.5.2.tgz", - "integrity": "sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ==", - "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 - }, - "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" - } - }, - "cliui": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", - "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", - "dev": true, - "requires": { - "string-width": "^3.1.0", - "strip-ansi": "^5.2.0", - "wrap-ansi": "^5.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 - }, - "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" - } - } - } - }, - "debug": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.2.0.tgz", - "integrity": "sha512-IX2ncY78vDTjZMFUdmsvIRFY2Cf4FnD0wRs+nQwJU8Lu99/tPFdb0VybiiMTPe3I6rQmwsqQqRBvxU+bZ/I8sg==", - "dev": true, - "requires": { - "ms": "2.1.2" - } - }, - "fast-deep-equal": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", - "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", - "dev": true - }, - "get-caller-file": { - "version": "2.0.5", - "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - "dev": true - }, - "is-absolute-url": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-3.0.3.tgz", - "integrity": "sha512-opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q==", - "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" - } - }, - "json-schema-traverse": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", - "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", - "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 - }, - "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 - }, - "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" - } - }, - "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": "3.1.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", - "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", - "dev": true, - "requires": { - "emoji-regex": "^7.0.1", - "is-fullwidth-code-point": "^2.0.0", - "strip-ansi": "^5.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 - }, - "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" - } - } - } - }, - "strip-ansi": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz", - "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=", - "dev": true, - "requires": { - "ansi-regex": "^2.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" - } - }, - "wrap-ansi": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", - "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", - "dev": true, - "requires": { - "ansi-styles": "^3.2.0", - "string-width": "^3.0.0", - "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 - }, - "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" - } - } - } - }, - "yargs": { - "version": "13.3.2", - "resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz", - "integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==", - "dev": true, - "requires": { - "cliui": "^5.0.0", - "find-up": "^3.0.0", - "get-caller-file": "^2.0.1", - "require-directory": "^2.1.1", - "require-main-filename": "^2.0.0", - "set-blocking": "^2.0.0", - "string-width": "^3.0.0", - "which-module": "^2.0.0", - "y18n": "^4.0.0", - "yargs-parser": "^13.1.2" - } - }, - "yargs-parser": { - "version": "13.1.2", - "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz", - "integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==", - "dev": true, - "requires": { - "camelcase": "^5.0.0", - "decamelize": "^1.2.0" - } + "util": "^0.12.3", + "webpack-dev-middleware": "^4.0.2", + "ws": "^7.4.0" + }, + "bin": { + "webpack-dev-server": "bin/webpack-dev-server.js" + }, + "engines": { + "node": ">= 10.13.0" + }, + "peerDependencies": { + "webpack": "^4.0.0 || ^5.0.0" + }, + "peerDependenciesMeta": { + "webpack-cli": { + "optional": true } } }, - "webpack-log": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/webpack-log/-/webpack-log-2.0.0.tgz", - "integrity": "sha512-cX8G2vR/85UYG59FgkoMamwHUIkSSlV3bBMRsbxVXVUk2j6NleCKjQ/WE9eYg9WY4w25O9w8wKP4rzNZFmUcUg==", + "node_modules/webpack-dev-server/node_modules/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, - "requires": { - "ansi-colors": "^3.0.0", - "uuid": "^3.3.2" + "engines": { + "node": ">=8" } }, - "webpack-sources": { - "version": "1.4.3", - "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-1.4.3.tgz", - "integrity": "sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ==", + "node_modules/webpack-dev-server/node_modules/graceful-fs": { + "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 + }, + "node_modules/webpack-dev-server/node_modules/is-absolute-url": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/is-absolute-url/-/is-absolute-url-3.0.3.tgz", + "integrity": "sha512-opmNIX7uFnS96NtPmhWQgQx6/NYFgsUXYMllcfzwWKUMwfo8kku1TvE6hkNcH+Q1ts5cMVrsY7j0bxXQDciu9Q==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/webpack-dev-server/node_modules/strip-ansi": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz", + "integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==", "dev": true, - "requires": { - "source-list-map": "^2.0.0", - "source-map": "~0.6.1" + "dependencies": { + "ansi-regex": "^5.0.0" }, + "engines": { + "node": ">=8" + } + }, + "node_modules/webpack-merge": { + "version": "5.7.3", + "resolved": "https://registry.npmjs.org/webpack-merge/-/webpack-merge-5.7.3.tgz", + "integrity": "sha512-6/JUQv0ELQ1igjGDzHkXbVDRxkfA57Zw7PfiupdLFJYrgFqY5ZP8xxbpp2lU3EPwYx89ht5Z/aDkD40hFCm5AA==", + "dev": true, "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 - } + "clone-deep": "^4.0.1", + "wildcard": "^2.0.0" + }, + "engines": { + "node": ">=10.0.0" + } + }, + "node_modules/webpack-sources": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/webpack-sources/-/webpack-sources-2.2.0.tgz", + "integrity": "sha512-bQsA24JLwcnWGArOKUxYKhX3Mz/nK1Xf6hxullKERyktjNMC4x8koOeaDNTA2fEJ09BdWLbM/iTW0ithREUP0w==", + "dev": true, + "dependencies": { + "source-list-map": "^2.0.1", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/webpack-sources/node_modules/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, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/webpack/node_modules/acorn": { + "version": "8.0.5", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.0.5.tgz", + "integrity": "sha512-v+DieK/HJkJOpFBETDJioequtc3PfxsWMaxIdIwujtF7FEV/MAyDQLlm6/zPvr7Mix07mLh6ccVwIsloceodlg==", + "dev": true, + "bin": { + "acorn": "bin/acorn" + }, + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/webpack/node_modules/browserslist": { + "version": "4.16.3", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.16.3.tgz", + "integrity": "sha512-vIyhWmIkULaq04Gt93txdh+j02yX/JzlyhLYbV3YQCn/zvES3JnY7TifHHvvr1w5hTDluNKMkV05cs4vy8Q7sw==", + "dev": true, + "dependencies": { + "caniuse-lite": "^1.0.30001181", + "colorette": "^1.2.1", + "electron-to-chromium": "^1.3.649", + "escalade": "^3.1.1", + "node-releases": "^1.1.70" + }, + "bin": { + "browserslist": "cli.js" + }, + "engines": { + "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/browserslist" } }, - "websocket-driver": { - "version": "0.6.5", - "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.6.5.tgz", - "integrity": "sha1-XLJVbOuF9Dc8bYI4qmkchFThOjY=", + "node_modules/webpack/node_modules/graceful-fs": { + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.6.tgz", + "integrity": "sha512-nTnJ528pbqxYanhpDYsi4Rd8MAeaBA67+RZ10CM1m3bTAVFEDcd5AuA4a6W5YkGZ1iNXHzZz8T6TBKLeBuNriQ==", + "dev": true + }, + "node_modules/webpack/node_modules/neo-async": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", + "dev": true + }, + "node_modules/websocket-driver": { + "version": "0.7.4", + "resolved": "https://registry.npmjs.org/websocket-driver/-/websocket-driver-0.7.4.tgz", + "integrity": "sha512-b17KeDIQVjvb0ssuSDF2cYXSg2iztliJ4B9WdsuB6J952qCPKmnVq4DyW5motImXHDC1cBT/1UezrJVsKw5zjg==", "dev": true, - "requires": { + "dependencies": { + "http-parser-js": ">=0.5.1", + "safe-buffer": ">=5.1.0", "websocket-extensions": ">=0.1.1" + }, + "engines": { + "node": ">=0.8.0" } }, - "websocket-extensions": { + "node_modules/websocket-extensions": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/websocket-extensions/-/websocket-extensions-0.1.4.tgz", "integrity": "sha512-OqedPIGOfsDlo31UNwYbCFMSaO9m9G/0faIHj5/dZFDMFqPTcx6UwqyOy3COEaEOg/9VsGIpdqn62W5KhoKSpg==", - "dev": true - }, - "whet.extend": { - "version": "0.9.9", - "resolved": "https://registry.npmjs.org/whet.extend/-/whet.extend-0.9.9.tgz", - "integrity": "sha1-+HfVv2SMl+WqVC+twW1qJZucEaE=", - "dev": true + "dev": true, + "engines": { + "node": ">=0.8.0" + } }, - "which": { + "node_modules/which": { "version": "1.3.1", "resolved": "https://registry.npmjs.org/which/-/which-1.3.1.tgz", "integrity": "sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ==", "dev": true, - "requires": { + "dependencies": { "isexe": "^2.0.0" + }, + "bin": { + "which": "bin/which" } }, - "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 + "node_modules/which-typed-array": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/which-typed-array/-/which-typed-array-1.1.4.tgz", + "integrity": "sha512-49E0SpUe90cjpoc7BOJwyPHRqSAd12c10Qm2amdEZrJPCY2NDxaW01zHITrem+rnETY3dwrbH3UUrUwagfCYDA==", + "dev": true, + "dependencies": { + "available-typed-arrays": "^1.0.2", + "call-bind": "^1.0.0", + "es-abstract": "^1.18.0-next.1", + "foreach": "^2.0.5", + "function-bind": "^1.1.1", + "has-symbols": "^1.0.1", + "is-typed-array": "^1.1.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-typed-array/node_modules/es-abstract": { + "version": "1.18.0-next.2", + "resolved": "https://registry.npmjs.org/es-abstract/-/es-abstract-1.18.0-next.2.tgz", + "integrity": "sha512-Ih4ZMFHEtZupnUh6497zEL4y2+w8+1ljnCyaTa+adcoafI1GOvMwFlDjBLfWR7y9VLfrjRJe9ocuHY1PSR9jjw==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "es-to-primitive": "^1.2.1", + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2", + "has": "^1.0.3", + "has-symbols": "^1.0.1", + "is-callable": "^1.2.2", + "is-negative-zero": "^2.0.1", + "is-regex": "^1.1.1", + "object-inspect": "^1.9.0", + "object-keys": "^1.1.1", + "object.assign": "^4.1.2", + "string.prototype.trimend": "^1.0.3", + "string.prototype.trimstart": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-typed-array/node_modules/es-to-primitive": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/es-to-primitive/-/es-to-primitive-1.2.1.tgz", + "integrity": "sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==", + "dev": true, + "dependencies": { + "is-callable": "^1.1.4", + "is-date-object": "^1.0.1", + "is-symbol": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-typed-array/node_modules/has-symbols": { + "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, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-typed-array/node_modules/is-callable": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/is-callable/-/is-callable-1.2.3.tgz", + "integrity": "sha512-J1DcMe8UYTBSrKezuIUTUwjXsho29693unXM2YhJUTR2txK/eG47bvNa/wipPFmZFgr/N6f1GA66dv0mEyTIyQ==", + "dev": true, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-typed-array/node_modules/is-regex": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/is-regex/-/is-regex-1.1.2.tgz", + "integrity": "sha512-axvdhb5pdhEVThqJzYXwMlVuZwC+FF2DpcOhTS+y/8jVq4trxyPgfcwIxIKiyeuLlSQYKkmUaPQJ8ZE4yNKXDg==", + "dev": true, + "dependencies": { + "call-bind": "^1.0.2", + "has-symbols": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } }, - "wide-align": { + "node_modules/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": { + "dependencies": { "string-width": "^1.0.2 || 2" } }, - "wordwrap": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", - "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", + "node_modules/wildcard": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/wildcard/-/wildcard-2.0.0.tgz", + "integrity": "sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw==", "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==", + "node_modules/word-wrap": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/word-wrap/-/word-wrap-1.2.3.tgz", + "integrity": "sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ==", "dev": true, - "requires": { - "errno": "~0.1.7" + "engines": { + "node": ">=0.10.0" } }, - "wrap-ansi": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-2.1.0.tgz", - "integrity": "sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU=", - "dev": true, - "requires": { - "string-width": "^1.0.1", - "strip-ansi": "^3.0.1" - }, - "dependencies": { - "ansi-regex": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz", - "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=", - "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" - } - }, - "string-width": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz", - "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=", - "dev": true, - "requires": { - "code-point-at": "^1.0.0", - "is-fullwidth-code-point": "^1.0.0", - "strip-ansi": "^3.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=", - "dev": true, - "requires": { - "ansi-regex": "^2.0.0" - } - } - } + "node_modules/wordwrap": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", + "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=", + "dev": true }, - "wrappy": { + "node_modules/wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=", "dev": true }, - "write": { - "version": "0.2.1", - "resolved": "https://registry.npmjs.org/write/-/write-0.2.1.tgz", - "integrity": "sha1-X8A4KOJkzqP+kUVUdvejxWbLB1c=", + "node_modules/write": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/write/-/write-1.0.3.tgz", + "integrity": "sha512-/lg70HAjtkUgWPVZhZcm+T4hkL8Zbtp1nFNOn3lRrxnlv50SRBv7cR7RqR+GMsd3hUXy9hWBo4CHTbFTcOYwig==", "dev": true, - "requires": { + "dependencies": { "mkdirp": "^0.5.1" + }, + "engines": { + "node": ">=4" } }, - "ws": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.1.tgz", - "integrity": "sha512-GIyAXC2cB7LjvpgMt9EKS2ldqr0MTrORaleiOno6TweZ6r3TKtoFQWay/2PceJ3RuBasOHzXNn5Lrw1X0bEjqA==", + "node_modules/ws": { + "version": "7.4.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-7.4.3.tgz", + "integrity": "sha512-hr6vCR76GsossIRsr8OLR9acVVm1jyfEWvhbNjtgPOrfvAlKzvyeg/P6r8RuDjRyrcQoPQT7K0DGEPc7Ae6jzA==", "dev": true, - "requires": { - "async-limiter": "~1.0.0" + "engines": { + "node": ">=8.3.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": "^5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } } }, - "xmldom": { - "version": "0.1.31", - "resolved": "https://registry.npmjs.org/xmldom/-/xmldom-0.1.31.tgz", - "integrity": "sha512-yS2uJflVQs6n+CyjHoaBmVSqIDevTAWrzMmjG1Gc7h1qQ7uVozNhEPJAwZXWyGQ/Gafo3fCwrcaokezLPupVyQ==", - "dev": true - }, - "xtend": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", - "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", - "dev": true - }, - "y18n": { + "node_modules/yallist": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.0.tgz", - "integrity": "sha512-r9S/ZyXu/Xu9q1tYlpsLIsa3EeLXXk0VwlxqTcFRfg9EhMW+17kbt9G0NrgCmhGb5vT2hyhJZLfDGx+7+5Uj/w==", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", "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": "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" + "node_modules/yocto-queue": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", + "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", + "dev": true, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" } } } diff --git a/package.json b/package.json index 3ee466f..3bdc8c4 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "painterro", - "version": "1.2.10", - "description": "HTML5 image editor widget", + "version": "1.2.92", + "description": "HTML5 image editing widget (js paint plugin)", "main": "build/painterro.commonjs2.js", "repository": { "type": "git", @@ -10,41 +10,57 @@ "scripts": { "prepare": "npm run build", "test": "echo \"Error: no test specified\" && exit 1", - "build": "webpack --optimize-minimize --progress", - "dev": "webpack-dev-server --inline --hot --content-base build/ --port 8081 --host 127.0.0.1", + "build": "webpack --progress", + "dev": "webpack serve --open --host 127.0.0.1 --port 3000", + "watch": "webpack --watch", "buildfont": "node generate_font.js" }, "keywords": [ "paint", - "imageeditor", - "image" + "paint plugin", + "image editor", + "paint widget", + "screenshots edit", + "js paint", + "canvas paint", + "image", + "js paint plugin", + "html5 canvas" ], + "homepage": "https://hinty.io/devforth/js-paint-plugin-for-your-website/", + "bugs": { + "url": "https://github.com/devforth/painterro/issues", + "email": "contact@devforth.io" + }, "author": "Ivan Borshchov", "license": "MIT", "devDependencies": { - "babel-core": "^6.24.1", - "babel-loader": "^7.0.0", - "babel-preset-es2015": "^6.24.1", - "babel-preset-es2016": "^6.24.1", - "css-loader": "^0.28.3", + "@babel/core": "^7.12.16", + "@babel/preset-env": "^7.12.16", + "@vusion/webfonts-generator": "^0.8.0", + "babel-loader": "^8.2.2", + "css-loader": "^5.0.2", "es6-promise": "^4.2.8", - "eslint": "^4.1.1", + "eslint": "^6.8.0", "eslint-config-airbnb-base": "^11.2.0", - "eslint-loader": "^2.2.1", - "eslint-plugin-import": "^2.7.0", - "ismobilejs": "^1.0.3", - "js-yaml": ">=3.13.1", + "eslint-loader": "^4.0.2", + "eslint-plugin-import": "^2.22.1", + "ismobilejs": "^1.1.1", "lodash": ">=4.17.13", "mime": ">=1.4.1", "raw-loader": "^0.5.1", "string.prototype.repeat": "^0.2.0", - "style-loader": "^0.18.1", - "url-loader": "^0.5.8", - "vusion-webfonts-generator": "^0.4.1", - "webpack": "^4.39.1", - "webpack-cli": "^3.3.2", - "webpack-dev-server": "^3.11.0", - "html2canvas": "^1.0.0-rc.7" + "style-loader": "^2.0.0", + "terser-webpack-plugin": "^5.1.4", + "url-loader": "^4.1.1", + "webpack": "^5.21.2", + "webpack-bundle-analyzer": "^4.4.0", + "webpack-cli": "^4.5.0", + "webpack-dev-server": "^4.0.0-beta.0" }, - "dependencies": {} + "dependencies": { + "caniuse-lite": "^1.0.30001596", + "core-js": "^3.11.0", + "dom-to-image": "^2.6.0" + } } diff --git a/publish.sh b/publish.sh index 76c3b86..1863999 100755 --- a/publish.sh +++ b/publish.sh @@ -5,7 +5,8 @@ GH_USER=ivictbor GH_REPO_USER=devforth -GH_PASS=`cat ~/.ghtoken` +GH_PASS=`cat ~/keys/gh_ptro_release_token` +WP_PASSWORD=`cat ~/keys/.wppassword` GH_REPO=painterro GH_TARGET=master ASSETS_PATH=build @@ -19,17 +20,21 @@ else echo FAIL exit 0 fi -rm wp/trunk/painterro-*.min.js -rm wp/trunk/painterro-*.min.js.map + +rm -rf wp +svn co http://plugins.svn.wordpress.org/painterro/ wp + +rm -f wp/trunk/painterro-*.min.js +rm -f wp/trunk/painterro-*.min.js.map cp build/painterro-${VERSION}.min.js wp/trunk/ cp build/painterro-${VERSION}.min.js.map wp/trunk/ sed -i -E "s/([ \t]+version: \")[0-9\\.]+(\",)/\1${VERSION}\2/" wp/trunk/index.js sed -i -E "s/(Version: )[0-9\\.]+/\1${VERSION}/" wp/trunk/painterro-wp.php sed -i -E "s/(define\\(\"PAINTERRO_FILE\", \"painterro-)[0-9\\.]+(\\.min\\.js\"\\);)/\1${VERSION}\2/" wp/trunk/painterro-wp.php cd wp -svn add trunk/* +svn add --force . svn st | grep ^! | awk '{print " --force "$2}' | xargs svn rm -svn ci -m "${VERSION}" +svn --username=vanbrosh --password="${WP_PASSWORD}" ci -m "${VERSION}" cd .. git add -u @@ -37,6 +42,8 @@ git commit -m "$VERSION" git push npm publish +echo "GH USER AND PATH",$GH_USER, $GH_PASS + res=`curl --user "$GH_USER:$GH_PASS" -X POST https://api.github.com/repos/${GH_REPO_USER}/${GH_REPO}/releases \ -d " { @@ -51,12 +58,14 @@ echo Create release result: ${res} rel_id=`echo ${res} | python -c 'import json,sys;print(json.load(sys.stdin)["id"])'` file_name=painterro-${VERSION}.min.js -curl --user "$GH_USER:$GH_PATH" -X POST https://uploads.github.com/repos/${GH_REPO_USER}/${GH_REPO}/releases/${rel_id}/assets?name=${file_name}\ +echo "Release id", $rel_id + +curl --user "$GH_USER:$GH_PASS" -X POST https://uploads.github.com/repos/${GH_REPO_USER}/${GH_REPO}/releases/${rel_id}/assets?name=${file_name}\ --header 'Content-Type: text/javascript ' --upload-file ${ASSETS_PATH}/${file_name} file_map_name=painterro-${VERSION}.min.js.map -curl --user "$GH_USER:$GH_PATH" -X POST https://uploads.github.com/repos/${GH_REPO_USER}/${GH_REPO}/releases/${rel_id}/assets?name=${file_map_name}\ +curl --user "$GH_USER:$GH_PASS" -X POST https://uploads.github.com/repos/${GH_REPO_USER}/${GH_REPO}/releases/${rel_id}/assets?name=${file_map_name}\ --header 'Content-Type: text/javascript ' --upload-file ${ASSETS_PATH}/${file_map_name} rm ${ASSETS_PATH}/${file_name} -rm ${ASSETS_PATH}/${file_map_name} \ No newline at end of file +rm ${ASSETS_PATH}/${file_map_name} diff --git a/res/font/bucket.svg b/res/font/bucket.svg new file mode 100644 index 0000000..ee9e7e8 --- /dev/null +++ b/res/font/bucket.svg @@ -0,0 +1,4 @@ + + + + diff --git a/res/font/clear.svg b/res/font/clear.svg new file mode 100644 index 0000000..4703765 --- /dev/null +++ b/res/font/clear.svg @@ -0,0 +1,69 @@ + + + +image/svg+xml \ No newline at end of file diff --git a/res/font/filters.svg b/res/font/filters.svg new file mode 100644 index 0000000..1655927 --- /dev/null +++ b/res/font/filters.svg @@ -0,0 +1,3 @@ + + + diff --git a/res/font/paste_extend_down.svg b/res/font/paste_extend_down.svg index 0d6a206..ab9a938 100644 --- a/res/font/paste_extend_down.svg +++ b/res/font/paste_extend_down.svg @@ -1,3 +1,3 @@ - - + + diff --git a/res/font/paste_extend_left.svg b/res/font/paste_extend_left.svg new file mode 100644 index 0000000..3536f6c --- /dev/null +++ b/res/font/paste_extend_left.svg @@ -0,0 +1,3 @@ + + + diff --git a/res/font/paste_extend_right.svg b/res/font/paste_extend_right.svg index ba2a6f7..7916b22 100644 --- a/res/font/paste_extend_right.svg +++ b/res/font/paste_extend_right.svg @@ -1,3 +1,3 @@ - - + + diff --git a/res/font/paste_extend_top.svg b/res/font/paste_extend_top.svg new file mode 100644 index 0000000..3a4c757 --- /dev/null +++ b/res/font/paste_extend_top.svg @@ -0,0 +1,3 @@ + + + diff --git a/res/font/zoomin.svg b/res/font/zoomin.svg new file mode 100644 index 0000000..0b210a9 --- /dev/null +++ b/res/font/zoomin.svg @@ -0,0 +1,4 @@ + + + + diff --git a/res/font/zoomout.svg b/res/font/zoomout.svg new file mode 100644 index 0000000..75f9475 --- /dev/null +++ b/res/font/zoomout.svg @@ -0,0 +1,4 @@ + + + + diff --git a/res/painterro.png b/res/painterro.png index 8a77120..7151d95 100644 Binary files a/res/painterro.png and b/res/painterro.png differ diff --git a/webpack.config.js b/webpack.config.js index eefcd7d..a7e723e 100644 --- a/webpack.config.js +++ b/webpack.config.js @@ -1,9 +1,11 @@ 'use strict'; const path = require('path'); const webpack = require('webpack'); -require('es6-promise').polyfill(); +const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin; +const TerserPlugin = require("terser-webpack-plugin"); -function webpackConfig(target) { + +function webpackConfig(target, mode) { let filename; if (target === 'var') { filename = `painterro-${require('./package.json').version}.min.js` @@ -14,12 +16,12 @@ function webpackConfig(target) { filename = `painterro.${target}.js`; } - return { - entry: './js/main.js', + let options = { + mode, + entry: ['./js/main.js'], output: { path: path.resolve(__dirname, 'build'), filename, - library: 'Painterro', // export as library libraryTarget: target, }, module: { @@ -30,13 +32,6 @@ function webpackConfig(target) { exclude: /node_modules/, loader: "eslint-loader", }, - { - test: /\.js$/, - loader: 'babel-loader', - query: { - presets: ['es2015', 'es2016'] - } - }, { test: /\.css$/, use: [ @@ -53,26 +48,65 @@ function webpackConfig(target) { stats: { colors: true }, - devtool: 'source-map', - devServer: { - disableHostCheck: true + optimization: { + minimize: true, + minimizer: [new TerserPlugin()], + }, + } + if (target === 'var') { + options.output.library = 'Painterro'; + options.output.libraryExport = 'default'; + options.target = 'browserslist'; + options.module.rules.push({ + test: /\.js$/, + loader: 'babel-loader', + exclude: /node_modules/, + options: { + // sourceType: "module", + presets: [["@babel/preset-env", { + "modules": "commonjs", + "useBuiltIns": "entry", + "corejs": "2" + }]], + } + }); + } else { + options.target = 'es2020'; + } + if (mode === 'development') { + options = { + ...options, + devServer: { + injectClient: false, + static: path.join(__dirname, 'build'), + hot: true, + }, + devtool: 'inline-source-map', + plugins: [ + new BundleAnalyzerPlugin({ + analyzerMode: 'static', + reportFilename: `report-${target}.html`, + openAnalyzer: false, + }), + ], } } + return options; } -const isDevServer = process.argv.find(v => v.includes('webpack-dev-server')); +const isDevServer = process.argv.find(v => v.includes('serve')); if (!isDevServer) { + console.log('Building production'); module.exports = [ - webpackConfig('var'), - webpackConfig('var-latest'), - webpackConfig('commonjs2'), - webpackConfig('amd'), - webpackConfig('umd') + webpackConfig('var', 'production'), + webpackConfig('var-latest', 'production'), + webpackConfig('commonjs2', 'production'), + webpackConfig('amd', 'production'), + webpackConfig('umd', 'production') ]; } else { - module.exports = [ - webpackConfig('var-latest'), - ]; + console.log('Building development'); + module.exports = [webpackConfig('var-latest', 'development')]; } \ No newline at end of file diff --git a/wp/assets/banner-1544x500.png b/wp/assets/banner-1544x500.png deleted file mode 100644 index 9f787c9..0000000 Binary files a/wp/assets/banner-1544x500.png and /dev/null differ diff --git a/wp/assets/banner-772x250.png b/wp/assets/banner-772x250.png deleted file mode 100644 index 5a86278..0000000 Binary files a/wp/assets/banner-772x250.png and /dev/null differ diff --git a/wp/assets/icon-128x128.png b/wp/assets/icon-128x128.png deleted file mode 100644 index 3ffd5f3..0000000 Binary files a/wp/assets/icon-128x128.png and /dev/null differ diff --git a/wp/assets/icon-256x256.png b/wp/assets/icon-256x256.png deleted file mode 100644 index e83c007..0000000 Binary files a/wp/assets/icon-256x256.png and /dev/null differ diff --git a/wp/assets/screenshot-1.png b/wp/assets/screenshot-1.png deleted file mode 100644 index 0fc3db3..0000000 Binary files a/wp/assets/screenshot-1.png and /dev/null differ diff --git a/wp/assets/screenshot-2.png b/wp/assets/screenshot-2.png deleted file mode 100644 index e9d7dc3..0000000 Binary files a/wp/assets/screenshot-2.png and /dev/null differ diff --git a/wp/assets/screenshot-3.png b/wp/assets/screenshot-3.png deleted file mode 100644 index c622a4f..0000000 Binary files a/wp/assets/screenshot-3.png and /dev/null differ diff --git a/wp/assets/screenshot-4.png b/wp/assets/screenshot-4.png deleted file mode 100644 index cb0519e..0000000 Binary files a/wp/assets/screenshot-4.png and /dev/null differ diff --git a/wp/assets/screenshot-5.png b/wp/assets/screenshot-5.png deleted file mode 100644 index 626e743..0000000 Binary files a/wp/assets/screenshot-5.png and /dev/null differ diff --git a/wp/tags/0.2.21.1/assets/banner-772x250.png b/wp/tags/0.2.21.1/assets/banner-772x250.png deleted file mode 100644 index b9989e5..0000000 Binary files a/wp/tags/0.2.21.1/assets/banner-772x250.png and /dev/null differ diff --git a/wp/tags/0.2.21.1/assets/icon-128x128.png b/wp/tags/0.2.21.1/assets/icon-128x128.png deleted file mode 100644 index 3ffd5f3..0000000 Binary files a/wp/tags/0.2.21.1/assets/icon-128x128.png and /dev/null differ diff --git a/wp/tags/0.2.21.1/assets/icon-256x256.png b/wp/tags/0.2.21.1/assets/icon-256x256.png deleted file mode 100644 index e83c007..0000000 Binary files a/wp/tags/0.2.21.1/assets/icon-256x256.png and /dev/null differ diff --git a/wp/tags/0.2.21.1/assets/screenshot-1.png b/wp/tags/0.2.21.1/assets/screenshot-1.png deleted file mode 100644 index 0fc3db3..0000000 Binary files a/wp/tags/0.2.21.1/assets/screenshot-1.png and /dev/null differ diff --git a/wp/tags/0.2.21.1/assets/screenshot-2.png b/wp/tags/0.2.21.1/assets/screenshot-2.png deleted file mode 100644 index e9d7dc3..0000000 Binary files a/wp/tags/0.2.21.1/assets/screenshot-2.png and /dev/null differ diff --git a/wp/tags/0.2.21.1/assets/screenshot-3.png b/wp/tags/0.2.21.1/assets/screenshot-3.png deleted file mode 100644 index c622a4f..0000000 Binary files a/wp/tags/0.2.21.1/assets/screenshot-3.png and /dev/null differ diff --git a/wp/tags/0.2.21.1/assets/screenshot-4.png b/wp/tags/0.2.21.1/assets/screenshot-4.png deleted file mode 100644 index cb0519e..0000000 Binary files a/wp/tags/0.2.21.1/assets/screenshot-4.png and /dev/null differ diff --git a/wp/tags/0.2.21.1/assets/screenshot-5.png b/wp/tags/0.2.21.1/assets/screenshot-5.png deleted file mode 100644 index 626e743..0000000 Binary files a/wp/tags/0.2.21.1/assets/screenshot-5.png and /dev/null differ diff --git a/wp/tags/0.2.21.1/index.js b/wp/tags/0.2.21.1/index.js deleted file mode 100644 index 41b251a..0000000 --- a/wp/tags/0.2.21.1/index.js +++ /dev/null @@ -1,100 +0,0 @@ -(function() { - - var paintrerro = Painterro({ - initText: 'Press Prn Scr, Ctrl+V to paste a screenshot', - colorScheme: { - main: '#23282d', - control: '#444', - controlContent: '#cccccc', - activeControl: '#015c88', - activeControlContent: '#ffffff', - controlActiveControl: '#cccccc', - inputBackground: '#ffffff', - backgroundColor: '#999999', - dragOverBarColor: '#899dff', - hoverControl: '#191e23', - hoverControlContent: '#00b9eb', - }, - saveHandler: function (image, done) { - console.log('media', _wpMediaViewsL10n.settings) - - var formData = new FormData() - formData.append('name', image.suggestedFileName()); - formData.append('action', 'upload-attachment'); - formData.append('_wpnonce', ptro_media_form_nonce); - formData.append('post_id', ptro_post_id); - formData.append('async-upload', image.asBlob(), image.suggestedFileName()); - - var xhr = new XMLHttpRequest(); - xhr.open('POST', '/wp-admin/async-upload.php', true); - xhr.onload = function () { - var response = JSON.parse(this.responseText); - console.log('Upload done:', response); - var xhrInsert = new XMLHttpRequest(); - xhrInsert.open("POST", "/wp-admin/admin-ajax.php"); - var formDataInsert = new FormData(); - formDataInsert.append('nonce', ptro_media_send_to_editor_nonce); - formDataInsert.append('attachment[id]', response.data.id); - formDataInsert.append('attachment[post_content]', ''); - formDataInsert.append('attachment[post_excerpt]', ''); - formDataInsert.append('attachment[align]','none'); - formDataInsert.append('attachment[image-size]','full'); - formDataInsert.append('html', ''); - formDataInsert.append('post_id', 'ptro_post_id'); - formDataInsert.append('action', 'send-attachment-to-editor'); - - xhrInsert.send(formDataInsert); - xhrInsert.onload = function (e) { - var response = JSON.parse(this.responseText); - console.log('Inserting done:', response); - paintrerro.mceEditor.execCommand("mceInsertContent", 0, response.data); - done(true); - } - xhrInsert.onerror = function (e) { - console.error('Error inserting text image: ', e) - done(true) - }; - }; - xhr.onerror = function (e) { - console.error('Error uploading image: ', e) - done(true) - }; - xhr.send(formData) - } - }); - tinymce.create("tinymce.plugins.painterro_plugin", { - - //url argument holds the absolute url of our plugin directory - init : function(ed, url) { - paintrerro.mceEditor = ed; - //add new button - ed.addButton("painterro", { - title : "Open Painterro", - cmd : "painterro_cmd", - 'icon' : "painterro ptro-icon ptro-icon-painterro", - }); - - //button functionality. - ed.addCommand("painterro_cmd", function() { - paintrerro.show(); - }); - - }, - - createControl : function(n, cm) { - return null; - }, - - getInfo : function() { - return { - longname : "Painterro", - author : "Ivan Borshchov", - version : "0.2.21" - }; - } - }); - - tinymce.PluginManager.add("painterro_plugin", tinymce.plugins.painterro_plugin); -})(); - diff --git a/wp/tags/0.2.21.1/painterro-0.2.21.min.js b/wp/tags/0.2.21.1/painterro-0.2.21.min.js deleted file mode 100644 index 50b77c6..0000000 --- a/wp/tags/0.2.21.1/painterro-0.2.21.min.js +++ /dev/null @@ -1,2 +0,0 @@ -var Painterro=function(t){function A(i){if(e[i])return e[i].exports;var o=e[i]={i:i,l:!1,exports:{}};return t[i].call(o.exports,o,o.exports,A),o.l=!0,o.exports}var e={};return A.m=t,A.c=e,A.i=function(t){return t},A.d=function(t,e,i){A.o(t,e)||Object.defineProperty(t,e,{configurable:!1,enumerable:!0,get:i})},A.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return A.d(e,"a",e),e},A.o=function(t,A){return Object.prototype.hasOwnProperty.call(t,A)},A.p="",A(A.s=16)}([function(t,A,e){"use strict";function i(t,A){if(!(t instanceof A))throw new TypeError("Cannot call a class as a function")}function o(t){return n.get().tr(t)}Object.defineProperty(A,"__esModule",{value:!0});var r=function(){function t(t,A){for(var e=0;e=0&&T.splice(A,1)}function n(t){var A=document.createElement("style");return t.attrs.type="text/css",s(A,t.attrs),r(t,A),A}function l(t){var A=document.createElement("link");return t.attrs.type="text/css",t.attrs.rel="stylesheet",s(A,t.attrs),r(t,A),A}function s(t,A){Object.keys(A).forEach(function(e){t.setAttribute(e,A[e])})}function c(t,A){var e,i,o,r;if(A.transform&&t.css){if(!(r=A.transform(t.css)))return function(){};t.css=r}if(A.singleton){var s=D++;e=d||(d=n(A)),i=g.bind(null,e,s,!1),o=g.bind(null,e,s,!0)}else t.sourceMap&&"function"==typeof URL&&"function"==typeof URL.createObjectURL&&"function"==typeof URL.revokeObjectURL&&"function"==typeof Blob&&"function"==typeof btoa?(e=l(A),i=M.bind(null,e,A),o=function(){a(e),e.href&&URL.revokeObjectURL(e.href)}):(e=n(A),i=h.bind(null,e),o=function(){a(e)});return i(t),function(A){if(A){if(A.css===t.css&&A.media===t.media&&A.sourceMap===t.sourceMap)return;i(t=A)}else o()}}function g(t,A,e,i){var o=e?"":i.css;if(t.styleSheet)t.styleSheet.cssText=w(A,o);else{var r=document.createTextNode(o),a=t.childNodes;a[A]&&t.removeChild(a[A]),a.length?t.insertBefore(r,a[A]):t.appendChild(r)}}function h(t,A){var e=A.css,i=A.media;if(i&&t.setAttribute("media",i),t.styleSheet)t.styleSheet.cssText=e;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(e))}}function M(t,A,e){var i=e.css,o=e.sourceMap,r=void 0===A.convertToAbsoluteUrls&&o;(A.convertToAbsoluteUrls||r)&&(i=I(i)),o&&(i+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(o))))+" */");var a=new Blob([i],{type:"text/css"}),n=t.href;t.href=URL.createObjectURL(a),n&&URL.revokeObjectURL(n)}var p={},u=function(t){var A;return function(){return void 0===A&&(A=t.apply(this,arguments)),A}}(function(){return window&&document&&document.all&&!window.atob}),N=function(t){var A={};return function(e){return void 0===A[e]&&(A[e]=t.call(this,e)),A[e]}}(function(t){return document.querySelector(t)}),d=null,D=0,T=[],I=e(17);t.exports=function(t,A){if("undefined"!=typeof DEBUG&&DEBUG&&"object"!=typeof document)throw new Error("The style-loader cannot be used in a non-browser environment");A=A||{},A.attrs="object"==typeof A.attrs?A.attrs:{},A.singleton||(A.singleton=u()),A.insertInto||(A.insertInto="head"),A.insertAt||(A.insertAt="bottom");var e=o(t,A);return i(e,A),function(t){for(var r=[],a=0;a=128&&"black"||"white"}Object.defineProperty(A,"__esModule",{value:!0});var s=function(){function t(t,A){for(var e=0;ethis.w&&this.w-1||A,e=e>this.h&&this.h-1||e;var i=this.ctx.getImageData(A,e,1,1).data;this.palleteColor=n(i[0],i[1],i[2]),this.drawLighter(),this.regetColor()}},{key:"regetColor",value:function(){var t=this.ctxLight.getImageData(this.lightPosition,5,1,1).data;this.setActiveColor(n(t[0],t[1],t[2])),this.drawAlpher()}},{key:"regetAlpha",value:function(){var t=this.ctxAlpha.getImageData(this.alphaPosition,5,1,1).data;this.alpha=t[3]/255,this.setActiveColor(this.color,!0)}},{key:"getColorLightAtClick",value:function(t){var A=t.clientX-this.canvasLight.documentOffsetLeft;A=A<1&&1||A,A=A>this.w-1&&this.w-1||A,this.lightPosition=A,this.colorRegulator.style.left=A+"px",this.regetColor()}},{key:"getAlphaAtClick",value:function(t){var A=t.clientX-this.canvasAlpha.documentOffsetLeft;A=A<1&&1||A,A=A>this.w-1&&this.w-1||A,this.alphaPosition=A,this.alphaRegulator.style.left=A+"px",this.regetAlpha()}},{key:"handleMouseDown",value:function(t){return this.choosing&&0===t.button?(this.choosingActive=!0,this.handleMouseMove(t),!0):(this.choosing=!1,!1)}},{key:"handleMouseMove",value:function(t){if(this.opened)this.selecting&&this.getPaletteColorAtPoint(t),this.lightSelecting&&this.getColorLightAtClick(t),this.alphaSelecting&&this.getAlphaAtClick(t);else if(this.choosingActive){var A=this.main.getScale(),e=(t.clientX-this.main.canvas.documentOffsetLeft)*A;e=e<1&&1||e,e=e>this.main.size.w-1&&this.main.size.w-1||e;var i=(t.clientY-this.main.canvas.documentOffsetTop)*A;i=i<1&&1||i,i=i>this.main.size.h-1&&this.main.size.h-1||i;var o=this.main.ctx.getImageData(e,i,1,1).data,a=n(o[0],o[1],o[2]);this.callback({alphaColor:r(a,1),lightPosition:this.w-1,alpha:1,palleteColor:a,target:this.target}),void 0!==this.addCallback&&this.addCallback({alphaColor:r(a,1),lightPosition:this.w-1,alpha:1,palleteColor:a,target:this.target})}}},{key:"handleMouseUp",value:function(){this.selecting=!1,this.lightSelecting=!1,this.choosing=!1,this.choosingActive=!1,this.alphaSelecting=!1}},{key:"setActiveColor",value:function(t,A){try{this.input.style.color=l(t)}catch(t){return}this.input.style["background-color"]=t,void 0===A&&(this.input.value=t),this.color=t,this.alphaColor=r(t,this.alpha),void 0!==this.callback&&this.opened&&this.callback({alphaColor:this.alphaColor,lightPosition:this.lightPosition,alpha:this.alpha,palleteColor:this.color,target:this.target}),void 0!==this.addCallback&&this.opened&&this.addCallback({alphaColor:this.alphaColor,lightPosition:this.lightPosition,alpha:this.alpha,palleteColor:this.color,target:this.target})}},{key:"drawLighter",value:function(){var t=this.ctxLight.createLinearGradient(0,0,this.w,0);t.addColorStop(0,"#ffffff"),t.addColorStop(.05,"#ffffff"),t.addColorStop(.95,this.palleteColor),t.addColorStop(1,this.palleteColor),this.ctxLight.fillStyle=t,this.ctxLight.fillRect(0,0,this.w,15)}},{key:"drawAlpher",value:function(){this.ctxAlpha.clearRect(0,0,this.w,15);var t=this.ctxAlpha.createLinearGradient(0,0,this.w,0);t.addColorStop(0,"rgba(255,255,255,0)"),t.addColorStop(.05,"rgba(255,255,255,0)"),t.addColorStop(.95,this.color),t.addColorStop(1,this.color),this.ctxAlpha.fillStyle=t,this.ctxAlpha.fillRect(0,0,this.w,15)}}],[{key:"html",value:function(){return'"}}]),t}();A.default=g},function(t,A,e){"use strict";function i(t,A){if(!(t instanceof A))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(A,"__esModule",{value:!0});var o=function(){function t(t,A){for(var e=0;ei/e){var o=i*(t.naturalHeight/t.naturalWidth);A.main.select.placeAt(0,0,0,e-o,t)}else{var r=e*(t.naturalWidth/t.naturalHeight);A.main.select.placeAt(0,0,i-r,0,t)}A.worklog.captureState()}}}}return o(t,[{key:"init",value:function(t){var A=this;this.CLIP_DATA_MARKER="painterro-data:",this.ctx=t.ctx,this.main=t,this.worklog=t.worklog,this.selector=t.wrapper.querySelector(".ptro-paster-select-wrapper"),this.cancelChoosing(),this.img=null,Object.keys(this.pasteOptions).forEach(function(t){var e=A.pasteOptions[t];A.main.doc.getElementById(e.id).onclick=function(){A.loading?A.doLater=e.handle:e.handle(A.img),A.cancelChoosing()}}),this.loading=!1,this.doLater=null}},{key:"insert",value:function(t,A,e,i){this.main.ctx.drawImage(this.tmpImg,t,A,e,i),this.main.worklog.reCaptureState()}},{key:"cancelChoosing",value:function(){this.selector.setAttribute("hidden",""),this.waitChoice=!1}},{key:"loaded",value:function(t){this.img=t,this.loading=!1,this.doLater&&(this.doLater(t),this.doLater=null)}},{key:"handleOpen",value:function(t){var A=this,e=new Image,i=this.main.worklog.empty;e.onload=function(){i?A.main.fitImage(e):A.loaded(e),A.finishLoading()},this.startLoading(),e.src=t,i||(this.selector.removeAttribute("hidden"),this.waitChoice=!0)}},{key:"handleKeyDown",value:function(t){if(this.waitChoice&&t.keyCode===a.KEYS.esc&&this.cancelChoosing(),!this.waitChoice&&!this.main.select.imagePlaced&&this.main.select.shown&&t.keyCode===a.KEYS.c&&(t.ctrlKey||t.metaKey)){var A=this.main.select.area,e=A.bottoml[0]-A.topl[0],i=A.bottoml[1]-A.topl[1],o=this.main.doc.createElement("canvas");o.width=e,o.height=i;o.getContext("2d").drawImage(this.main.canvas,-A.topl[0],-A.topl[1]),(0,a.copyToClipboard)(""+this.CLIP_DATA_MARKER+o.toDataURL())}}},{key:"startLoading",value:function(){this.loading=!0;var t=this.main.doc.getElementById(this.main.toolByName.open.buttonId),A=this.main.doc.querySelector("#"+this.main.toolByName.open.buttonId+" > i");t&&t.setAttribute("disabled","true"),A&&(A.className="ptro-icon ptro-icon-loading ptro-spinning")}},{key:"finishLoading",value:function(){var t=this.main.doc.getElementById(this.main.toolByName.open.buttonId),A=this.main.doc.querySelector("#"+this.main.toolByName.open.buttonId+" > i");t&&t.removeAttribute("disabled"),A&&(A.className="ptro-icon ptro-icon-open")}},{key:"html",value:function(){var t=this,A="";return Object.keys(this.pasteOptions).forEach(function(e){var i=t.pasteOptions[e];i.id=(0,a.genId)(),A+='"}),'"}}]),t}();A.default=n},function(t,A,e){"use strict";function i(){try{g=JSON.parse(localStorage.getItem(c))}catch(t){console.error("Unable get from localstorage: "+t)}g||(g={})}function o(t,A){g[t]=A;try{localStorage.setItem(c,JSON.stringify(g))}catch(t){console.error("Unable save to localstorage: "+t)}}function r(t){i();var A=t||{};if(A.activeColor=g.activeColor||A.activeColor||"#ff0000",A.activeColorAlpha=g.activeColorAlpha||A.activeColorAlpha||1,A.activeAlphaColor=(0,a.HexToRGBA)(A.activeColor,A.activeColorAlpha),A.activeFillColor=g.activeFillColor||A.activeFillColor||"#000000",A.activeFillColorAlpha=g.activeFillColorAlpha||A.activeFillColorAlpha||0,A.activeFillAlphaColor=(0,a.HexToRGBA)(A.activeFillColor,A.activeFillColorAlpha),A.initText=A.initText||null,A.initTextColor=A.initTextColor||"#808080",A.initTextStyle=A.initTextStyle||"26px 'Open Sans', sans-serif",A.defaultLineWidth=g.defaultLineWidth||A.defaultLineWidth||5,A.defaultFontSize=g.defaultFontSize||A.defaultFontSize||24,A.backgroundFillColor=g.backgroundFillColor||A.backgroundFillColor||"#ffffff",A.hiddenTools=A.hiddenTools||[],A.colorScheme=A.colorScheme||{},A.colorScheme.main=A.colorScheme.main||"#dbebff",A.colorScheme.control=A.colorScheme.control||"#abc6ff",A.colorScheme.controlContent=A.colorScheme.controlContent||"#000000",A.colorScheme.hoverControl=A.colorScheme.hoverControl||A.colorScheme.control,A.colorScheme.hoverControlContent=A.colorScheme.hoverControlContent||"#1a3d67",A.colorScheme.activeControl=A.colorScheme.activeControl||"#7485B1",A.colorScheme.activeControlContent=A.colorScheme.activeControlContent||A.colorScheme.main,A.colorScheme.inputBorderColor=A.colorScheme.inputBorderColor||A.colorScheme.main,A.colorScheme.inputBackground=A.colorScheme.inputBackground||"#ffffff",A.colorScheme.inputText=A.colorScheme.inputText||A.colorScheme.activeControl,A.colorScheme.backgroundColor=A.colorScheme.backgroundColor||"#999999",A.colorScheme.dragOverBarColor=A.colorScheme.dragOverBarColor||"#899dff",A.defaultSize=A.defaultSize||"fill",A.defaultPixelSize=A.defaultPixelSize||4,"fill"===A.defaultSize)A.defaultSize={width:"fill",height:"fill"};else{var e=A.defaultSize.split("x");A.defaultSize={width:(0,s.trim)(e[0]),height:(0,s.trim)(e[1])}}if(A.translation){var o=A.translation.name;l.default.get().addTranslation(o,A.translation.strings),l.default.get().activate(o)}return A.styles=".ptro-color-main{\n background-color: "+A.colorScheme.main+";\n color: "+A.colorScheme.controlContent+"}\n .ptro-color-control{\n background-color: "+A.colorScheme.control+";\n color:"+A.colorScheme.controlContent+"}\n button.ptro-color-control:hover:not(.ptro-color-active-control):not([disabled]){\n background-color: "+A.colorScheme.hoverControl+";\n color:"+A.colorScheme.hoverControlContent+"} \n .ptro-bordered-control{border-color: "+A.colorScheme.activeControl+"}\n .ptro-input, .ptro-input:focus {\n border: 1px solid "+A.colorScheme.inputBorderColor+";\n background-color: "+A.colorScheme.inputBackground+";\n color: "+A.colorScheme.inputText+"\n }\n .ptro-bar-dragover{background-color:"+A.colorScheme.dragOverBarColor+"}\n .ptro-color,.ptro-bordered-btn{\n border: 1px solid "+A.colorScheme.inputBorderColor+";\n }\n .ptro-color-control:active:enabled {\n background-color: "+A.colorScheme.activeControl+";\n color: "+A.colorScheme.activeControlContent+"}\n .ptro-color-active-control{\n background-color: "+A.colorScheme.activeControl+";\n color:"+A.colorScheme.activeControlContent+"}\n .ptro-wrapper{background-color:"+A.colorScheme.backgroundColor+";}}",A}Object.defineProperty(A,"__esModule",{value:!0}),A.setParam=o,A.setDefaults=r;var a=e(4),n=e(0),l=function(t){return t&&t.__esModule?t:{default:t}}(n),s=e(1),c="painterro-data",g={}},function(t,A,e){"use strict";function i(t,A){if(!(t instanceof A))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(A,"__esModule",{value:!0});var o=function(){function t(t,A){for(var e=0;e5&&this.points.push(i),this.drawBrushPath()}else if("line"===this.type){if(t.ctrlKey||t.shiftKey){var o=180*Math.atan(-(this.curCord[1]-this.centerCord[1])/(this.curCord[0]-this.centerCord[0]))/Math.PI;if(Math.abs(o)<22.5)this.curCord[1]=this.centerCord[1];else if(Math.abs(o)>45)this.curCord[0]=this.centerCord[0];else{var a=(Math.abs(this.curCord[0]-this.centerCord[0])-Math.abs(this.centerCord[1]-this.curCord[1]))/2;this.curCord[0]-=a*(this.centerCord[0]this.curCord[1]?1:-1)}}this.ctx.beginPath(),this.ctx.moveTo(this.centerCord[0],this.centerCord[1]),this.ctx.lineTo(this.curCord[0],this.curCord[1]),this.ctx.closePath(),this.ctx.stroke()}else if("rect"===this.type){this.ctx.beginPath();var n=[Math.min(this.curCord[0],this.centerCord[0]),Math.min(this.curCord[1],this.centerCord[1])],l=Math.abs(this.curCord[0]-this.centerCord[0]),s=Math.abs(this.curCord[1]-this.centerCord[1]);if(t.ctrlKey||t.shiftKey){var c=Math.min(Math.abs(l),Math.abs(s));l=c*Math.sign(l),s=c*Math.sign(s)}var g=Math.floor(this.lineWidth/2),h=this.lineWidth%2;this.ctx.rect(n[0]+g,n[1]+g,l-this.lineWidth+h,s-this.lineWidth+h),this.ctx.fill(),this.ctx.strokeRect(n[0],n[1],l,s),this.ctx.closePath()}else if("ellipse"===this.type){this.ctx.beginPath();var M=this.centerCord[0],p=this.centerCord[1],u=this.curCord[0]-M,N=this.curCord[1]-p;if(t.ctrlKey||t.shiftKey){var d=Math.min(Math.abs(u),Math.abs(N));u=d*Math.sign(u),N=d*Math.sign(N)}var D=Math.abs(u),T=Math.abs(N),I=Math.min(M,M+u),w=Math.min(p,p+N);this.ctx.save();var O=1,f=1,C=void 0,z=D/2,k=T/2;D>T?(f=D/T,C=z):(O=T/D,C=k),this.ctx.scale(1/O,1/f),this.ctx.arc((I+z)*O,(w+k)*f,C,0,2*Math.PI),this.ctx.restore(),this.ctx.fill(),this.ctx.stroke(),this.ctx.beginPath()}}}},{key:"handleMouseUp",value:function(){this.state.cornerMarked&&(this.state.cornerMarked=!1,this.main.worklog.captureState())}},{key:"setPixelSize",value:function(t){this.pixelSize=t}}]),t}();A.default=a},function(t,A,e){"use strict";function i(t,A){if(!(t instanceof A))throw new TypeError("Cannot call a class as a function")}Object.defineProperty(A,"__esModule",{value:!0});var o=function(){function t(t,A){for(var e=0;e"),"btn"===t.type)e+="";else if("color"===t.type)e+="';else if("int"===t.type)e+="";else if("dropdown"===t.type){var i="";t.getAvilableValues().forEach(function(A){i+=""}),e+=""}}),this.toolControls.innerHTML=e,(t.controls||[]).forEach(function(t){"int"===t.type?(A.doc.getElementById(t.id).value=t.getValue(),A.doc.getElementById(t.id).oninput=t.action):"dropdown"===t.type?A.doc.getElementById(t.id).onchange=t.action:A.doc.getElementById(t.id).onclick=t.action}),t.activate()}}]),t}();t.exports=function(t){return new z(t)}},function(t,A,e){"use strict";t.exports=function(t){var A="undefined"!=typeof window&&window.location;if(!A)throw new Error("fixUrls requires window.location");if(!t||"string"!=typeof t)return t;var e=A.protocol+"//"+A.host,i=e+A.pathname.replace(/\/[^\/]*$/,"/");return t.replace(/url\s*\(((?:[^)(]|\((?:[^)(]+|\([^)(]*\))*\))*)\)/gi,function(t,A){var o=A.trim().replace(/^"(.*)"$/,function(t,A){return A}).replace(/^'(.*)'$/,function(t,A){return A});if(/^(#|data:|http:\/\/|https:\/\/|file:\/\/\/)/i.test(o))return t;var r;return r=0===o.indexOf("//")?o:0===o.indexOf("/")?e+o:i+o.replace(/^\.\//,""),"url("+JSON.stringify(r)+")"})}},function(t,A,e){A=t.exports=e(2)(void 0),A.push([t.i,".color-diwget-btn{height:32px;width:32px;cursor:pointer;z-index:201;position:absolute;top:4px}.color-diwget-btn-substrate{display:inline-block;width:32px}.ptro-bar .ptro-btn-color-bg{z-index:200;position:absolute;top:4px}.ptro-bar .ptro-btn-color-bg span{width:8px;background-color:#676767;display:block;height:8px;position:absolute}.ptro-bar .ptro-btn-color-bg span:first-of-type{left:0}.ptro-bar .ptro-btn-color-bg span:nth-of-type(2){left:8px;margin-top:8px}.ptro-bar .ptro-btn-color-bg span:nth-of-type(3){left:16px}.ptro-bar .ptro-btn-color-bg span:nth-of-type(4){left:24px;margin-top:8px}.ptro-bar .ptro-btn-color-bg span:nth-of-type(5){left:0;margin-top:16px}.ptro-bar .ptro-btn-color-bg span:nth-of-type(6){left:8px;margin-top:24px}.ptro-bar .ptro-btn-color-bg span:nth-of-type(7){left:16px;margin-top:16px}.ptro-bar .ptro-btn-color-bg span:nth-of-type(8){left:24px;margin-top:24px}.ptro-bar .ptro-tool-ctl-name{padding:0 2px 0 0;line-height:30px;margin-left:5px}.ptro-bar .ptro-input,.ptro-bar .ptro-tool-ctl-name{font-family:Open Sans,sans-serif;position:relative;top:-4px}.ptro-bar .ptro-input{height:32px;line-height:32px;font-size:16px;padding-left:2px;padding-right:0}.ptro-bar .ptro-input[type=number]{width:42px}.ptro-bar .ptro-named-btn p{margin:0}.ptro-bar{height:40px;bottom:0;position:absolute;width:100%;font-size:16px;line-height:normal}.ptro-bar .ptro-icon{font-size:20px}button.ptro-icon-right:first-of-type{margin-right:4px}@-webkit-keyframes ptro-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}@keyframes ptro-spin{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(359deg);transform:rotate(359deg)}}.ptro-spinning{-webkit-animation:ptro-spin .5s infinite steps(9);animation:ptro-spin .8s infinite steps(9);display:inline-block;text-rendering:auto;-webkit-font-smoothing:antialiased}",""])},function(t,A,e){A=t.exports=e(2)(void 0),A.push([t.i,"@font-face{font-family:iconfont;src:url("+e(22)+'?#iefix) format("embedded-opentype"),url('+e(25)+') format("woff"),url('+e(24)+') format("truetype"),url('+e(23)+'#iconfont) format("svg");font-weight:400;font-style:normal}.ptro-icon:before{font-family:iconfont!important;font-style:normal!important;font-weight:400!important;font-variant:normal!important;text-transform:none!important;speak:none;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ptro-icon-blur:before{content:"\\F101"}.ptro-icon-brush:before{content:"\\F102"}.ptro-icon-close:before{content:"\\F103"}.ptro-icon-crop:before{content:"\\F104"}.ptro-icon-ellipse:before{content:"\\F105"}.ptro-icon-line:before{content:"\\F106"}.ptro-icon-linked:before{content:"\\F107"}.ptro-icon-loading:before{content:"\\F108"}.ptro-icon-mirror:before{content:"\\F109"}.ptro-icon-open:before{content:"\\F10A"}.ptro-icon-painterro:before{content:"\\F10B"}.ptro-icon-paste_extend_down:before{content:"\\F10C"}.ptro-icon-paste_extend_right:before{content:"\\F10D"}.ptro-icon-paste_fit:before{content:"\\F10E"}.ptro-icon-paste_over:before{content:"\\F10F"}.ptro-icon-pipette:before{content:"\\F110"}.ptro-icon-pixelize:before{content:"\\F111"}.ptro-icon-rect:before{content:"\\F112"}.ptro-icon-resize:before{content:"\\F113"}.ptro-icon-rotate:before{content:"\\F114"}.ptro-icon-save:before{content:"\\F115"}.ptro-icon-select:before{content:"\\F116"}.ptro-icon-text:before{content:"\\F117"}.ptro-icon-unlinked:before{content:"\\F118"}',""])},function(t,A,e){A=t.exports=e(2)(void 0),A.push([t.i,'.ptro-wrapper{position:absolute;top:0;bottom:40px;left:0;right:0;text-align:center;z-index:10;font-family:Open Sans,sans-serif}.ptro-holder{position:fixed;box-shadow:3px 3px 15px #787878;left:35px;right:35px;top:35px;bottom:35px}.ptro-holder-wrapper{position:fixed;top:0;left:0;width:100%;height:100%;background-color:rgba(0,0,0,.2)}.ptro-wrapper.ptro-v-aligned:before{content:"";display:inline-block;vertical-align:middle;height:100%}.ptro-icon-btn:disabled{color:gray}.ptro-wrapper canvas{vertical-align:middle;display:inline-block}.ptro-icon-btn{border:0;padding:4px 5px 5px;margin:4px 0 0 4px;height:32px;width:32px;cursor:pointer}.ptro-icon-btn i{line-height:23px}.ptro-named-btn{border:0;display:inline-block;height:30px;margin-left:4px;font-family:Open Sans,sans-serif;position:relative;top:-5px;font-size:14px;cursor:pointer}.color-diwget-btn:focus,.ptro-icon-btn:focus,.ptro-named-btn:focus,.ptro-selector-btn:focus{outline:none}.ptro-wrapper .select-handler{background-color:#fff;border:1px solid #000;width:6px;height:6px;position:absolute;z-index:10}.ptro-wrapper .ptro-crp-el{position:absolute}.ptro-wrapper .ptro-close-color-picker{height:24px;float:right;margin-top:5px}.ptro-wrapper .ptro-crp-rect{position:absolute;background-color:hsla(0,0%,88%,.5);border:1px dashed #000;cursor:move;-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-drag:none;user-drag:none;-webkit-touch-callout:none;background-repeat:no-repeat;background-size:100% 100%}.ptro-wrapper .ptro-crp-tl{position:absolute;top:0;left:0;margin:-4px 0 0 -4px;cursor:se-resize}.ptro-wrapper .ptro-crp-bl{position:absolute;left:0;bottom:0;margin:0 0 -4px -4px;cursor:ne-resize}.ptro-wrapper .ptro-crp-br{position:absolute;right:0;bottom:0;margin:0 -4px -4px 0;cursor:se-resize}.ptro-wrapper .ptro-crp-tr{position:absolute;right:0;top:0;margin:-4px -4px 0 0;cursor:ne-resize}.ptro-wrapper .ptro-crp-l{position:absolute;top:50%;left:0;margin:-4px 0 0 -4px;cursor:e-resize}.ptro-wrapper .ptro-crp-t{position:absolute;top:0;left:50%;margin:-4px 0 0 -4px;cursor:s-resize}.ptro-wrapper .ptro-crp-r{position:absolute;top:50%;right:0;margin:-4px -4px 0 0;cursor:e-resize}.ptro-wrapper .ptro-crp-b{position:absolute;left:50%;bottom:0;margin:0 0 -4px -4px;cursor:s-resize}.ptro-bar .ptro-named-btn p,.ptro-bar .ptro-tool-ctl-name,.ptro-bar input,.ptro-wrapper div,.ptro-wrapper i,.ptro-wrapper span{-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none;-webkit-user-drag:none;user-drag:none;-webkit-touch-callout:none}.ptro-info{font-family:Open Sans,sans-serif;font-size:10px;float:right;padding:22px 4px 4px 0}.ptro-wrapper .ptro-color-widget-wrapper,.ptro-wrapper .ptro-resize-widget-wrapper{position:absolute;background-color:rgba(0,0,0,.6);top:0;bottom:0;left:0;right:0}.ptro-wrapper .ptro-pallet canvas{cursor:crosshair}.ptro-wrapper .ptro-pallet{height:265px;margin-top:-115px;margin-left:-90px}.ptro-wrapper .ptro-pallet,.ptro-wrapper .ptro-resize-widget{width:200px;position:absolute;top:50%;left:50%;padding:10px;z-index:100;box-sizing:border-box}.ptro-wrapper .ptro-resize-widget{margin-top:-65px;margin-left:-100px}td.ptro-resize-table-left{text-align:right;padding-right:5px;float:none;font-size:14px}.ptro-wrapper .ptro-color-edit{margin-top:15px}.ptro-wrapper .ptro-color-edit input{float:left;height:24px;text-align:center;font-family:monospace;font-size:14px}.ptro-wrapper .ptro-color-edit input:focus{outline:none}.ptro-wrapper .ptro-color-edit input.ptro-color{width:70px}.ptro-wrapper .ptro-color-edit input.ptro-color-alpha{font-size:14px;width:55px;padding:0 0 0 2px;line-height:23px;height:23px}.ptro-wrapper .ptro-color-alpha-label,.ptro-wrapper .ptro-label{float:left;padding:0 2px 0 0;margin-left:5px;line-height:25px;font-family:Open Sans,sans-serif}.ptro-wrapper .ptro-pipette{float:right;height:24px;width:24px;margin:0}.ptro-wrapper .ptro-pipette i{line-height:16px}.ptro-wrapper .ptro-pipette:active{outline:none}.ptro-wrapper .ptro-color-widget-wrapper .ptro-canvas-alpha,.ptro-wrapper .ptro-color-widget-wrapper .ptro-canvas-light{margin-top:10px}span.ptro-color-alpha-regulator,span.ptro-color-light-regulator{display:block;margin-top:-5px;margin-left:5px;position:absolute;width:0;height:0;border-left:5px solid transparent;border-right:5px solid transparent;border-bottom:5px solid;cursor:crosshair}span.ptro-color-alpha-regulator{margin-top:0}.alpha-checkers{background-image:url('+e(21)+');display:block;width:100%;height:15px;background-size:10px 10px;margin-top:-20px}input.ptro-input:focus,select.ptro-input:focus{outline:none;box-shadow:none}input.ptro-input,select.ptro-input{vertical-align:initial;padding-top:0;padding-bottom:0;padding-right:0}.ptro-named-btn p{font-size:inherit;line-height:normal;margin:inherit}.ptro-wrapper .ptro-zoomer{border-top:1px solid #fff;border-left:1px solid #fff;position:absolute;z-index:2000;display:none}.ptro-text-tool-input{position:absolute;background-color:transparent;border:1px dashed;width:auto;display:block;min-width:5px;padding:0 1px;overflow-x:hidden;word-wrap:normal;overflow-y:hidden;box-sizing:content-box;line-height:normal}.ptro-text-tool-input:focus{outline:none}.ptro-bar-right{float:right;margin-right:4px}.ptro-link{float:left;margin-right:-12px;margin-top:-23px}.ptro-resize-link-wrapper{display:inline-block;height:20px}input.ptro-resize-heigth-input,input.ptro-resize-width-input{line-height:22px;padding:0 0 0 4px;height:22px}.ptro-selector-btn i{font-size:56px}.ptro-selector-btn{opacity:.8;border:0;width:100px;cursor:pointer}.ptro-selector-btn:not(:last-of-type){margin-right:10px}.ptro-selector-btn div{margin:5px 0}.ptro-paster-select .ptro-in div{font-family:Open Sans,sans-serif;font-size:14px}.ptro-selector-btn:hover{opacity:.6}.ptro-paster-select{display:inline-block;margin-left:auto;margin-right:auto;height:100%}.ptro-paster-select:before{content:"";display:inline-block;vertical-align:middle;height:100%}.ptro-paster-select .ptro-in{display:inline-block;background-color:rgba(0,0,0,.7);padding:10px}.ptro-paster-select-wrapper{position:absolute;top:0;left:0;right:0;bottom:0}.ptro-paste-label{color:#fff;margin-bottom:10px}.ptro-iframe{width:100%;height:100%;border:0}',""])},function(t,A){t.exports="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiIHN0YW5kYWxvbmU9Im5vIj8+CjwhLS0gQ3JlYXRlZCB3aXRoIElua3NjYXBlIChodHRwOi8vd3d3Lmlua3NjYXBlLm9yZy8pIC0tPgoKPHN2ZwogICB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iCiAgIHhtbG5zOmNjPSJodHRwOi8vY3JlYXRpdmVjb21tb25zLm9yZy9ucyMiCiAgIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyIKICAgeG1sbnM6c3ZnPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIKICAgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIgogICB4bWxuczpzb2RpcG9kaT0iaHR0cDovL3NvZGlwb2RpLnNvdXJjZWZvcmdlLm5ldC9EVEQvc29kaXBvZGktMC5kdGQiCiAgIHhtbG5zOmlua3NjYXBlPSJodHRwOi8vd3d3Lmlua3NjYXBlLm9yZy9uYW1lc3BhY2VzL2lua3NjYXBlIgogICB3aWR0aD0iMTAwIgogICBoZWlnaHQ9IjEwMCIKICAgdmlld0JveD0iMCAwIDEwMCAxMDAiCiAgIGlkPSJzdmcyIgogICB2ZXJzaW9uPSIxLjEiCiAgIGlua3NjYXBlOnZlcnNpb249IjAuOTEgcjEzNzI1IgogICBzb2RpcG9kaTpkb2NuYW1lPSJjaGVja2Vycy5zdmciPgogIDxkZWZzCiAgICAgaWQ9ImRlZnM0IiAvPgogIDxzb2RpcG9kaTpuYW1lZHZpZXcKICAgICBpZD0iYmFzZSIKICAgICBwYWdlY29sb3I9IiNmZmZmZmYiCiAgICAgYm9yZGVyY29sb3I9IiM2NjY2NjYiCiAgICAgYm9yZGVyb3BhY2l0eT0iMS4wIgogICAgIGlua3NjYXBlOnBhZ2VvcGFjaXR5PSIwLjAiCiAgICAgaW5rc2NhcGU6cGFnZXNoYWRvdz0iMiIKICAgICBpbmtzY2FwZTp6b29tPSIyLjgyODQyNzIiCiAgICAgaW5rc2NhcGU6Y3g9IjY1LjY1ODAyNyIKICAgICBpbmtzY2FwZTpjeT0iODAuMDM2NTc3IgogICAgIGlua3NjYXBlOmRvY3VtZW50LXVuaXRzPSJweCIKICAgICBpbmtzY2FwZTpjdXJyZW50LWxheWVyPSJsYXllcjEiCiAgICAgc2hvd2dyaWQ9InRydWUiCiAgICAgaW5rc2NhcGU6d2luZG93LXdpZHRoPSIxOTIwIgogICAgIGlua3NjYXBlOndpbmRvdy1oZWlnaHQ9IjEwMTciCiAgICAgaW5rc2NhcGU6d2luZG93LXg9Ii04IgogICAgIGlua3NjYXBlOndpbmRvdy15PSItOCIKICAgICBpbmtzY2FwZTp3aW5kb3ctbWF4aW1pemVkPSIxIgogICAgIGJvcmRlcmxheWVyPSJ0cnVlIgogICAgIHdpZHRoPSIxMG1tIgogICAgIHVuaXRzPSJweCIKICAgICBpbmtzY2FwZTpzbmFwLWJib3g9InRydWUiCiAgICAgaW5rc2NhcGU6YmJveC1ub2Rlcz0idHJ1ZSI+CiAgICA8aW5rc2NhcGU6Z3JpZAogICAgICAgdHlwZT0ieHlncmlkIgogICAgICAgaWQ9ImdyaWQ0MTM2IgogICAgICAgc3BhY2luZ3g9IjQuOTk5OTk5OSIKICAgICAgIHNwYWNpbmd5PSI0Ljk5OTk5OTkiCiAgICAgICBlbXBzcGFjaW5nPSI1IgogICAgICAgb3JpZ2lueD0iMCIKICAgICAgIG9yaWdpbnk9IjAiIC8+CiAgPC9zb2RpcG9kaTpuYW1lZHZpZXc+CiAgPG1ldGFkYXRhCiAgICAgaWQ9Im1ldGFkYXRhNyI+CiAgICA8cmRmOlJERj4KICAgICAgPGNjOldvcmsKICAgICAgICAgcmRmOmFib3V0PSIiPgogICAgICAgIDxkYzpmb3JtYXQ+aW1hZ2Uvc3ZnK3htbDwvZGM6Zm9ybWF0PgogICAgICAgIDxkYzp0eXBlCiAgICAgICAgICAgcmRmOnJlc291cmNlPSJodHRwOi8vcHVybC5vcmcvZGMvZGNtaXR5cGUvU3RpbGxJbWFnZSIgLz4KICAgICAgICA8ZGM6dGl0bGUgLz4KICAgICAgPC9jYzpXb3JrPgogICAgPC9yZGY6UkRGPgogIDwvbWV0YWRhdGE+CiAgPGcKICAgICBpbmtzY2FwZTpsYWJlbD0iTGF5ZXIgMSIKICAgICBpbmtzY2FwZTpncm91cG1vZGU9ImxheWVyIgogICAgIGlkPSJsYXllcjEiCiAgICAgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMCwtOTUyLjM2MjE3KSI+CiAgICA8cmVjdAogICAgICAgc3R5bGU9ImZpbGw6IzQ2NDY0NjtmaWxsLW9wYWNpdHk6MTtzdHJva2U6bm9uZTtzdHJva2Utd2lkdGg6MC4xO3N0cm9rZS1taXRlcmxpbWl0OjQ7c3Ryb2tlLWRhc2hhcnJheTpub25lO3N0cm9rZS1vcGFjaXR5OjEiCiAgICAgICBpZD0icmVjdDQxNDMiCiAgICAgICB3aWR0aD0iNTAiCiAgICAgICBoZWlnaHQ9IjQ5Ljk5OTk4OSIKICAgICAgIHg9IjAiCiAgICAgICB5PSI5NTIuMzYyMTgiIC8+CiAgICA8cmVjdAogICAgICAgc3R5bGU9ImZpbGw6IzQ2NDY0NjtmaWxsLW9wYWNpdHk6MTtzdHJva2U6bm9uZTtzdHJva2Utd2lkdGg6MC4xO3N0cm9rZS1taXRlcmxpbWl0OjQ7c3Ryb2tlLWRhc2hhcnJheTpub25lO3N0cm9rZS1vcGFjaXR5OjEiCiAgICAgICBpZD0icmVjdDQxNDMtOSIKICAgICAgIHdpZHRoPSI1MCIKICAgICAgIGhlaWdodD0iNDkuOTk5OTg5IgogICAgICAgeD0iNTAiCiAgICAgICB5PSIxMDAyLjM2MjIiIC8+CiAgPC9nPgo8L3N2Zz4K"},function(t,A){t.exports="data:application/vnd.ms-fontobject;base64,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NRcVMzUKUBAMJhQKVkw8EB4eAhYWAAAAAA4AAAAAAFcATwADAAcACwAPABMAFwAbAB8AIwAnACsALwAzADcAADczFSM3MxUjBzMVIxUzFSM3MxUjNzMVIzczFSMHMxUjNzMVIxUzFSMVMxUjJzMVIzczFSM3MxUjDQoKQAoKQAoKCgoQCgoQCgoQCgowCgpACgoKCgoKMAoKEAoKEAoKTwoKCgYKBgoqCgoKCgomCioKBgoGCgoKCgoKCgAAAQAAAAAAVQBVAAcAADcVMxUzNTM1Dx4KHlUKQUEKAAAIAAAAAABaAGAAEQAVABkAHQAhACUAKQA7AAA3BxUXMzUnNTczFxUHFTM3NScPARc/AQcXNwcVMzUzFTM1DwEXPwEHFzcnBxUXMzc1JyMVFxUHIyc1NzUqDAsBBggKCAYBCwwqAhACOBACEE4SLBI+EAIQKgIQAi8LDA4MCwEGCAoIBl8KEAwHBwwHBwwHBwwQChsECAQICAQIDAQEBAQICAQIBAQIBAcMEAoKEAwHBwwHBwwHBwAAAAAQAMYAAQAAAAAAAQAIAAAAAQAAAAAAAgAHAAgAAQAAAAAAAwAIAA8AAQAAAAAABAAIABcAAQAAAAAABQALAB8AAQAAAAAABgAIACoAAQAAAAAACgArADIAAQAAAAAACwATAF0AAwABBAkAAQAQAHAAAwABBAkAAgAOAIAAAwABBAkAAwAQAI4AAwABBAkABAAQAJ4AAwABBAkABQAWAK4AAwABBAkABgAQAMQAAwABBAkACgBWANQAAwABBAkACwAmASppY29uZm9udFJlZ3VsYXJpY29uZm9udGljb25mb250VmVyc2lvbiAxLjBpY29uZm9udEdlbmVyYXRlZCBieSBzdmcydHRmIGZyb20gRm9udGVsbG8gcHJvamVjdC5odHRwOi8vZm9udGVsbG8uY29tAGkAYwBvAG4AZgBvAG4AdABSAGUAZwB1AGwAYQByAGkAYwBvAG4AZgBvAG4AdABpAGMAbwBuAGYAbwBuAHQAVgBlAHIAcwBpAG8AbgAgADEALgAwAGkAYwBvAG4AZgBvAG4AdABHAGUAbgBlAHIAYQB0AGUAZAAgAGIAeQAgAHMAdgBnADIAdAB0AGYAIABmAHIAbwBtACAARgBvAG4AdABlAGwAbABvACAAcAByAG8AagBlAGMAdAAuAGgAdAB0AHAAOgAvAC8AZgBvAG4AdABlAGwAbABvAC4AYwBvAG0AAAACAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABkBAgEDAQQBBQEGAQcBCAEJAQoBCwEMAQ0BDgEPARABEQESARMBFAEVARYBFwEYARkBGgAEYmx1cgVicnVzaAVjbG9zZQRjcm9wB2VsbGlwc2UEbGluZQZsaW5rZWQHbG9hZGluZwZtaXJyb3IEb3BlbglwYWludGVycm8RcGFzdGVfZXh0ZW5kX2Rvd24ScGFzdGVfZXh0ZW5kX3JpZ2h0CXBhc3RlX2ZpdApwYXN0ZV9vdmVyB3BpcGV0dGUIcGl4ZWxpemUEcmVjdAZyZXNpemUGcm90YXRlBHNhdmUGc2VsZWN0BHRleHQIdW5saW5rZWQAAAA="},function(t,A){t.exports="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PiAKPCFET0NUWVBFIHN2ZyBQVUJMSUMgIi0vL1czQy8vRFREIFNWRyAxLjEvL0VOIiAiaHR0cDovL3d3dy53My5vcmcvR3JhcGhpY3MvU1ZHLzEuMS9EVEQvc3ZnMTEuZHRkIiA+CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPGRlZnM+CiAgPGZvbnQgaWQ9Imljb25mb250IiBob3Jpei1hZHYteD0iMTAwIj4KICAgIDxmb250LWZhY2UgZm9udC1mYW1pbHk9Imljb25mb250IgogICAgICB1bml0cy1wZXItZW09IjEwMCIgYXNjZW50PSIxMDAiCiAgICAgIGRlc2NlbnQ9IjAiIC8+CiAgICA8bWlzc2luZy1nbHlwaCBob3Jpei1hZHYteD0iMCIgLz4KICAgIDxnbHlwaCBnbHlwaC1uYW1lPSJibHVyIgogICAgICB1bmljb2RlPSImI3hGMTAxOyIKICAgICAgaG9yaXotYWR2LXg9IjEwMCIgZD0iIE0xMi41IDgyLjVMMTIuNSA3Mi41TDEyLjUgMjIuNUwyMi41IDIyLjVMNTAgMjIuNUw1MCAzMi41TDIyLjUgMzIuNUwyMi41IDcyLjVMNTAgNzIuNUw1MCA4Mi41TDIyLjUgODIuNUwxMi41IDgyLjV6IE01NS4wMDAwMDQgODQuOTk5OTlINjAuMDAwMDA0Vjc5Ljk5OTk5SDU1LjAwMDAwNFY4NC45OTk5OXogTTU1LjAwMDAwOCA3NC45OTk5OUg2MC4wMDAwMDhWNjkuOTk5OTlINTUuMDAwMDA4Vjc0Ljk5OTk5eiBNNjUgODQuOTk5OTlINzBWNzkuOTk5OTlINjVWODQuOTk5OTl6IE02NSA3NC45OTk5OUg3MFY2OS45OTk5OUg2NVY3NC45OTk5OXogTTc1IDg0Ljk5OTk5SDgwVjc5Ljk5OTk5SDc1Vjg0Ljk5OTk5eiBNNzUgNzQuOTk5OTlIODBWNjkuOTk5OTlINzVWNzQuOTk5OTl6IE01NC45OTk5OTYgMzQuOTk5OTdINTkuOTk5OTk2VjI5Ljk5OTk3SDU0Ljk5OTk5NlYzNC45OTk5N3ogTTU1LjAwMDAwNCAyNC45OTk5N0g2MC4wMDAwMDRWMTkuOTk5OTdINTUuMDAwMDA0VjI0Ljk5OTk3eiBNNjQuOTk5OTkyIDM0Ljk5OTk3SDY5Ljk5OTk5MlYyOS45OTk5N0g2NC45OTk5OTJWMzQuOTk5OTd6IE02NS4wMDAwMDggMjQuOTk5OTdINzAuMDAwMDA4VjE5Ljk5OTk3SDY1LjAwMDAwOFYyNC45OTk5N3ogTTc0Ljk5OTk5MiAzNC45OTk5N0g3OS45OTk5OTJWMjkuOTk5OTdINzQuOTk5OTkyVjM0Ljk5OTk3eiBNNzQuOTk5OTkyIDI0Ljk5OTk3SDc5Ljk5OTk5MlYxOS45OTk5N0g3NC45OTk5OTJWMjQuOTk5OTd6IE03NS4wMDAwMDggNjQuOTk5OTlIODAuMDAwMDA4VjU5Ljk5OTk5SDc1LjAwMDAwOFY2NC45OTk5OXogTTg1LjAwMDAwOCA2NC45OTk5OUg5MC4wMDAwMDhWNTkuOTk5OTlIODUuMDAwMDA4VjY0Ljk5OTk5eiBNNzUuMDAwMDA4IDU0Ljk5OTk5SDgwLjAwMDAwOFY0OS45OTk5OUg3NS4wMDAwMDhWNTQuOTk5OTl6IE04NS4wMDAwMDggNTQuOTk5OTlIOTAuMDAwMDA4VjQ5Ljk5OTk5SDg1LjAwMDAwOFY1NC45OTk5OXogTTc1LjAwMDAwOCA0NC45OTk5N0g4MC4wMDAwMDhWMzkuOTk5OTdINzUuMDAwMDA4VjQ0Ljk5OTk3eiBNODUuMDAwMDA4IDQ0Ljk5OTk3SDkwLjAwMDAwOFYzOS45OTk5N0g4NS4wMDAwMDhWNDQuOTk5OTd6IE04NS4wMDAwMDggNzQuOTk5OTlIOTAuMDAwMDA4VjY5Ljk5OTk5SDg1LjAwMDAwOFY3NC45OTk5OXogTTg0Ljk5OTk5MiAzNC45OTk5N0g4OS45OTk5OTJWMjkuOTk5OTdIODQuOTk5OTkyVjM0Ljk5OTk3eiBNODUgMjQuOTk5OTdIOTBWMTkuOTk5OTdIODVWMjQuOTk5OTd6IE04NSA4NC45OTk5OUg5MFY3OS45OTk5OUg4NVY4NC45OTk5OXoiIC8+CiAgICA8Z2x5cGggZ2x5cGgtbmFtZT0iYnJ1c2giCiAgICAgIHVuaWNvZGU9IiYjeEYxMDI7IgogICAgICBob3Jpei1hZHYteD0iMTAwIiBkPSIgTTc5LjM5MjU4IDkwTDU4LjE3NzczNSA2OC43ODcxMUw1MS4xMDc0MjIgNzUuODU3NDJMNDQuMDM3MTEgNjguNzg1MTZMNTEuMTA3NDIyIDYxLjcxNDg4TDYxLjcxNDg0NCA1MS4xMDcyN0w2OC43ODUxNTcgNDQuMDM2OTdMNzUuODU3NDIgNTEuMTA3MjdMNjguNzg3MTEgNTguMTc3NzhMOTAgNzkuMzkyNThMNzkuMzkyNTggOTB6TTQwLjUwMTk1NCA2NC43OTI5N0M0MC41MDE5NTQgNjQuNzkyOTcgMjUuOTAxMjY0IDUyLjgzMjQ4IDExLjg5MjU3OSA1Mi4yMzA0N0MxMS42NDA5NjggNTIuMjE5NDcgOS43MDMxMjYgNTIuMzcxMDggOS43MDMxMjYgNTIuMzcxMDhDMTMuMjM4NjU5IDM0LjY5MzI3IDM1Ljg0MjYyMiAxMi4wNTg4NyA1MS4xOTkyMTkgMTIuMjczMzdDNTEuMzc2OTMgMTIuMjczMzcgNTEuODE5NjI5IDEyLjg2MzM3IDUxLjk0OTIxOSAxMi45OTAxN0M2NS4yNTA2MzIgMjYuMDY0MDcgNjQuODU5Mzc2IDQwLjM5MDU3IDY0Ljg1OTM3NiA0MC4zOTA1N0w0MC41MDE5NTQgNjQuNzkyOTd6IiAvPgogICAgPGdseXBoIGdseXBoLW5hbWU9ImNsb3NlIgogICAgICB1bmljb2RlPSImI3hGMTAzOyIKICAgICAgaG9yaXotYWR2LXg9IjEwMCIgZD0iIE01MCA5Ny41QTQ3LjQ5OTk5OSA0Ny41MDAwMDcgMCAwIDEgMi41IDQ5Ljk5OTk3QTQ3LjQ5OTk5OSA0Ny41MDAwMDcgMCAwIDEgNTAgMi40OTk5N0E0Ny40OTk5OTkgNDcuNTAwMDA3IDAgMCAxIDk3LjUgNDkuOTk5OTdBNDcuNDk5OTk5IDQ3LjUwMDAwNyAwIDAgMSA1MCA5Ny41ek01MCA4Ni4zMjQyQTM2LjMyMzUyNyAzNi4zMjM1MzQgMCAwIDAgODYuMzI0MjIgNDkuOTk5OTdBMzYuMzIzNTI3IDM2LjMyMzUzNCAwIDAgMCA1MCAxMy42NzU3Njk5OTk5OTk5QTM2LjMyMzUyNyAzNi4zMjM1MzQgMCAwIDAgMTMuNjc1NzgxIDQ5Ljk5OTk3QTM2LjMyMzUyNyAzNi4zMjM1MzQgMCAwIDAgNTAgODYuMzI0MnpNMzUgNzVMMjUgNjVMNDAgNDkuOTk5OTdMMjUgMzQuOTk5OTdMMzUgMjQuOTk5OTdMNTAgMzkuOTk5OTdMNjUgMjQuOTk5OTdMNzUgMzQuOTk5OTdMNjAgNDkuOTk5OTdMNzUgNjVMNjUgNzVMNTAgNjBMMzUgNzV6IiAvPgogICAgPGdseXBoIGdseXBoLW5hbWU9ImNyb3AiCiAgICAgIHVuaWNvZGU9IiYjeEYxMDQ7IgogICAgICBob3Jpei1hZHYteD0iMTAwIiBkPSIgTTY3LjUgOTIuNUw2Ny41IDc3LjVMMzIuNSA3Ny41TDIyLjUgNzcuNUwyMi41IDY3LjVMMjIuNSAzMi41TDcuNSAzMi41TDcuNSAyMi41TDIyLjUgMjIuNUwyMi41IDcuNUwzMi41IDcuNUwzMi41IDIyLjVMNzcuNSAyMi41TDc3LjUgMzIuNUw3Ny41IDY3LjVMOTIuNSA2Ny41TDkyLjUgNzcuNUw3Ny41IDc3LjVMNzcuNSA5Mi41TDY3LjUgOTIuNXpNMzIuNSA2Ny41TDY3LjUgNjcuNUw2Ny41IDMyLjVMMzIuNSAzMi41TDMyLjUgNjcuNXoiIC8+CiAgICA8Z2x5cGggZ2x5cGgtbmFtZT0iZWxsaXBzZSIKICAgICAgdW5pY29kZT0iJiN4RjEwNTsiCiAgICAgIGhvcml6LWFkdi14PSIxMDAiIGQ9IiBNNTAgODcuNUEzNy40OTk5OTkgMzcuNDk5OTcxIDAgMCAxIDEyLjUgNDkuOTk5OTdBMzcuNDk5OTk5IDM3LjQ5OTk3MSAwIDAgMSA1MCAxMi40OTk5N0EzNy40OTk5OTkgMzcuNDk5OTcxIDAgMCAxIDg3LjUgNDkuOTk5OTdBMzcuNDk5OTk5IDM3LjQ5OTk3MSAwIDAgMSA1MCA4Ny41ek01MCA3OC42NzU3OEEyOC42NzY0Njg5OTk5OTk5OTcgMjguNjc2NDQ3OTk5OTk5OTk3IDAgMCAwIDc4LjY3NTc4IDQ5Ljk5OTk3QTI4LjY3NjQ2ODk5OTk5OTk5NyAyOC42NzY0NDc5OTk5OTk5OTcgMCAwIDAgNTAgMjEuMzI0MTdBMjguNjc2NDY4OTk5OTk5OTk3IDI4LjY3NjQ0Nzk5OTk5OTk5NyAwIDAgMCAyMS4zMjQyMTkgNDkuOTk5OTdBMjguNjc2NDY4OTk5OTk5OTk3IDI4LjY3NjQ0Nzk5OTk5OTk5NyAwIDAgMCA1MCA3OC42NzU3OHoiIC8+CiAgICA8Z2x5cGggZ2x5cGgtbmFtZT0ibGluZSIKICAgICAgdW5pY29kZT0iJiN4RjEwNjsiCiAgICAgIGhvcml6LWFkdi14PSIxMDAiIGQ9IiBNODMuNTg3ODkxIDkzLjE1ODIwMzFMOS4zNDE3OTY5IDE4LjkxMjEwOUwxNi40MTIxMDkgMTEuODQxNzk3TDkwLjY1ODIwMyA4Ni4wODc4OTFMODMuNTg3ODkxIDkzLjE1ODIwMzF6IiAvPgogICAgPGdseXBoIGdseXBoLW5hbWU9ImxpbmtlZCIKICAgICAgdW5pY29kZT0iJiN4RjEwNzsiCiAgICAgIGhvcml6LWFkdi14PSIxMDAiIGQ9IiBNNDEuOTc2NTYyIDk1LjMwNjY0MDZMMjkuOTUxMTcyIDg0LjY5MzM1OUwyOS45NTExNzIgNjguNzczNDM4MDAwMDAwMUw0MSA1N0w0MiA1N0w0MiA2Mkw0MiA2NEwzNS45NjI4OTEgNzAuNTQyOTY5TDM1Ljk2Mjg5MSA4Mi45MjM4MjhMNDMuOTgwNDY5IDkwTDU0IDkwTDYyLjAxNTYyNSA4Mi45MjM4MjhMNjIuMDE1NjI1IDcwLjU0Mjk2OUw1NiA2NEw1NiA1N0w1NyA1N0w2OC4wMjkyOTcgNjguNzczNDM4MDAwMDAwMUw2OC4wMjkyOTcgODQuNjkzMzU5TDU2LjAwMzkwNiA5NS4zMDY2NDA2TDQxLjk3NjU2MiA5NS4zMDY2NDA2ek00NS41NDY4NzUgNzAuMDM1MTU2TDQ1LjU0Njg3NSAzMC42MjY5NTNMNTIuNDUzMTI1IDMwLjYyNjk1M0w1Mi40NTMxMjUgNzAuMDM1MTU2TDQ1LjU0Njg3NSA3MC4wMzUxNTZ6TTQxIDQzTDI5Ljk1MTE3MiAzMS4yMjY1NjE5OTk5OTk5TDI5Ljk1MTE3MiAxNS4zMDY2NDFMNDEuOTc2NTYyIDQuNjkzMzU5TDU2LjAwMzkwNiA0LjY5MzM1OUw2OC4wMjkyOTcgMTUuMzA2NjQxTDY4LjAyOTI5NyAzMS4yMjY1NjE5OTk5OTk5TDU3IDQzTDU2IDQzTDU2IDM2TDYyLjAxNTYyNSAyOS40NTcwMzFMNjIuMDE1NjI1IDE3LjA3NjE3Mkw1NCAxMEw0My45ODA0NjkgMTBMMzUuOTYyODkxIDE3LjA3NjE3MkwzNS45NjI4OTEgMjkuNDU3MDMxTDQyIDM2TDQyIDM4TDQyIDQzTDQxIDQzeiIgLz4KICAgIDxnbHlwaCBnbHlwaC1uYW1lPSJsb2FkaW5nIgogICAgICB1bmljb2RlPSImI3hGMTA4OyIKICAgICAgaG9yaXotYWR2LXg9IjEwMCIgZD0iIE04MCA0OS45OTk5N0M4MCA0NC40NzcxMjI1MDE2OTIxIDg0LjQ3NzE1MjUwMTY5MjEgMzkuOTk5OTcgOTAgMzkuOTk5OTdDOTUuNTIyODQ3NDk4MzA3OSAzOS45OTk5NyAxMDAgNDQuNDc3MTIyNTAxNjkyMSAxMDAgNDkuOTk5OTdDMTAwIDU1LjUyMjgxNzQ5ODMwNzkgOTUuNTIyODQ3NDk4MzA3OSA1OS45OTk5NyA5MCA1OS45OTk5N0M4NC40NzcxNTI1MDE2OTIxIDU5Ljk5OTk3IDgwIDU1LjUyMjgxNzQ5ODMwNzkgODAgNDkuOTk5OTd6IE02OS4yODQyNzEgNzguMjg0Mjg5OTk5OTk5OUM2OS4yODQyNzEgNzMuMzEzNzI1NjQ5ODk3IDczLjMxMzcwODI1MTUyMjkgNjkuMjg0Mjg3MDk5OTk5OSA3OC4yODQyNzEgNjkuMjg0Mjg3MDk5OTk5OUM4My4yNTQ4MzM3NDg0NzcxIDY5LjI4NDI4NzA5OTk5OTkgODcuMjg0MjcxIDczLjMxMzcyNTY0OTg5NyA4Ny4yODQyNzEgNzguMjg0Mjg5OTk5OTk5OUM4Ny4yODQyNzEgODMuMjU0ODU0MzUwMTAyOSA4My4yNTQ4MzM3NDg0NzcxIDg3LjI4NDI5MjkgNzguMjg0MjcxIDg3LjI4NDI5MjlDNzMuMzEzNzA4MjUxNTIyOSA4Ny4yODQyOTI5IDY5LjI4NDI3MSA4My4yNTQ4NTQzNTAxMDI5IDY5LjI4NDI3MSA3OC4yODQyODk5OTk5OTk5eiBNNDIgOTAuNDk5OTlDNDIgODYuMDgxNzA5OTAyNjcxNiA0NS41ODE3MjIwMDEzNTM3IDgyLjQ5OTk4NjIwMDAwMDEgNTAgODIuNDk5OTg2MjAwMDAwMUM1NC40MTgyNzc5OTg2NDYzIDgyLjQ5OTk4NjIwMDAwMDEgNTggODYuMDgxNzA5OTAyNjcxNiA1OCA5MC40OTk5OUM1OCA5NC45MTgyNzAwOTczMjg1IDU0LjQxODI3Nzk5ODY0NjMgOTguNDk5OTkzOCA1MCA5OC40OTk5OTM4QzQ1LjU4MTcyMjAwMTM1MzcgOTguNDk5OTkzOCA0MiA5NC45MTgyNzAwOTczMjg1IDQyIDkwLjQ5OTk5eiBNMTQuNzE1NzI3IDc4LjI4NDI4OTk5OTk5OTlDMTQuNzE1NzI3IDc0LjQxODI5ODA3NjY2NzggMTcuODQ5NzMzNzUxMTg0NCA3MS4yODQyOTIzOTk5OTk5IDIxLjcxNTcyNyA3MS4yODQyOTIzOTk5OTk5QzI1LjU4MTcyMDI0ODgxNTYgNzEuMjg0MjkyMzk5OTk5OSAyOC43MTU3MjcgNzQuNDE4Mjk4MDc2NjY3OCAyOC43MTU3MjcgNzguMjg0Mjg5OTk5OTk5OUMyOC43MTU3MjcgODIuMTUwMjgxOTIzMzMyMSAyNS41ODE3MjAyNDg4MTU2IDg1LjI4NDI4NzYgMjEuNzE1NzI3IDg1LjI4NDI4NzZDMTcuODQ5NzMzNzUxMTg0NCA4NS4yODQyODc2IDE0LjcxNTcyNyA4Mi4xNTAyODE5MjMzMzIxIDE0LjcxNTcyNyA3OC4yODQyODk5OTk5OTk5eiBNNCA0OS45OTk5N0M0IDQ2LjY4NjI2MzU5OTY5NzIgNi42ODYyOTE1MDEwMTUyIDQzLjk5OTk3Mzc5OTk5OTkgMTAgNDMuOTk5OTczNzk5OTk5OUMxMy4zMTM3MDg0OTg5ODQ4IDQzLjk5OTk3Mzc5OTk5OTkgMTYgNDYuNjg2MjYzNTk5Njk3MiAxNiA0OS45OTk5N0MxNiA1My4zMTM2NzY0MDAzMDI3IDEzLjMxMzcwODQ5ODk4NDggNTUuOTk5OTY2MiAxMCA1NS45OTk5NjYyQzYuNjg2MjkxNTAxMDE1MiA1NS45OTk5NjYyIDQgNTMuMzEzNjc2NDAwMzAyNyA0IDQ5Ljk5OTk3eiBNMTYuNzE1NzM2IDIxLjcxNTY2OTk5OTk5OTlDMTYuNzE1NzM2IDE4Ljk1NDI0NDkyNTM2MjYgMTguOTU0MzEyMjUwODQ2IDE2LjcxNTY2NzU5OTk5OTggMjEuNzE1NzM2IDE2LjcxNTY2NzU5OTk5OThDMjQuNDc3MTU5NzQ5MTU0IDE2LjcxNTY2NzU5OTk5OTggMjYuNzE1NzM2IDE4Ljk1NDI0NDkyNTM2MjYgMjYuNzE1NzM2IDIxLjcxNTY2OTk5OTk5OTlDMjYuNzE1NzM2IDI0LjQ3NzA5NTA3NDYzNzMgMjQuNDc3MTU5NzQ5MTU0IDI2LjcxNTY3MjQgMjEuNzE1NzM2IDI2LjcxNTY3MjRDMTguOTU0MzEyMjUwODQ2IDI2LjcxNTY3MjQgMTYuNzE1NzM2IDI0LjQ3NzA5NTA3NDYzNzMgMTYuNzE1NzM2IDIxLjcxNTY2OTk5OTk5OTl6IE00NSA5Ljk5OTk3QzQ1IDcuMjM4NTQ0OTI1MzYyNiA0Ny4yMzg1NzYyNTA4NDYgNC45OTk5Njc1OTk5OTk5IDUwIDQuOTk5OTY3NTk5OTk5OUM1Mi43NjE0MjM3NDkxNTQgNC45OTk5Njc1OTk5OTk5IDU1IDcuMjM4NTQ0OTI1MzYyNiA1NSA5Ljk5OTk3QzU1IDEyLjc2MTM5NTA3NDYzNzMgNTIuNzYxNDIzNzQ5MTU0IDE0Ljk5OTk3MjQgNTAgMTQuOTk5OTcyNEM0Ny4yMzg1NzYyNTA4NDYgMTQuOTk5OTcyNCA0NSAxMi43NjEzOTUwNzQ2MzczIDQ1IDkuOTk5OTd6IE03My4yODQyNjQgMjEuNzE1NjY5OTk5OTk5OUM3My4yODQyNjQgMTguOTU0MjQ0OTI1MzYyNiA3NS41MjI4NDAyNTA4NDYgMTYuNzE1NjY3NTk5OTk5OCA3OC4yODQyNjQgMTYuNzE1NjY3NTk5OTk5OEM4MS4wNDU2ODc3NDkxNTQgMTYuNzE1NjY3NTk5OTk5OCA4My4yODQyNjQgMTguOTU0MjQ0OTI1MzYyNiA4My4yODQyNjQgMjEuNzE1NjY5OTk5OTk5OUM4My4yODQyNjQgMjQuNDc3MDk1MDc0NjM3MyA4MS4wNDU2ODc3NDkxNTQgMjYuNzE1NjcyNCA3OC4yODQyNjQgMjYuNzE1NjcyNEM3NS41MjI4NDAyNTA4NDYgMjYuNzE1NjcyNCA3My4yODQyNjQgMjQuNDc3MDk1MDc0NjM3MyA3My4yODQyNjQgMjEuNzE1NjY5OTk5OTk5OXoiIC8+CiAgICA8Z2x5cGggZ2x5cGgtbmFtZT0ibWlycm9yIgogICAgICB1bmljb2RlPSImI3hGMTA5OyIKICAgICAgaG9yaXotYWR2LXg9IjEwMCIgZD0iIE0xMi41IDEwMEw2LjkwMTU0OTE4MDgzMzIgMTAwLjgxMDc3MDI2NjcwMzlMMTguNDg0NjAwNjkwNTc4NiA5MS45ODg0NzM2NDI2NjE3TDEzLjMxMDc3MDI2NjcwMzkgMTA1LjU5ODQ1MDgxOTE2NjhMMTIuNSAxMDB6IE00NSA5Mi41TDE1IDcuNUw0NSA3LjVMNDUgOTIuNXpNNTYgOTIuNUw1NiA3LjVMODYgNy41TDU2IDkyLjV6TTYwLjUgNjZMNzguNSAxMkw2MC41IDEyTDYwLjUgNjZ6TTYzLjUgNDhMNjMuNSAxNUw3NC41IDE1TDYzLjUgNDh6IiAvPgogICAgPGdseXBoIGdseXBoLW5hbWU9Im9wZW4iCiAgICAgIHVuaWNvZGU9IiYjeEYxMEE7IgogICAgICBob3Jpei1hZHYteD0iMTAwIiBkPSIgTTEzLjA3MDMxMiA4Ny40OTk5OUw4LjE5OTIxODUgNzguMzUzNDRMOC4xOTkyMTg1IDI4LjA0ODI3TDIyLjgxNDQ1MyA2OS4yMDY4N0w3NC40NTg5ODQgNjkuMjA2ODdMNzQuNDU4OTg0IDc4LjM1MzQ0TDQyLjMwMjczNCA3OC4zNTM0NEwzNy40MzE2NDEgODcuNDk5OTlMMTMuMDcwMzEyIDg3LjQ5OTk5ek05MiA2MC4wNjAzMUwzMC4zNjcxODggNjAuMDQ5ODFMMTIuMTExMzI4IDEyLjUxMDM3TDc0LjQ1ODk4NCAxMi41MDAzN0w5MiA2MC4wNjAzMXoiIC8+CiAgICA8Z2x5cGggZ2x5cGgtbmFtZT0icGFpbnRlcnJvIgogICAgICB1bmljb2RlPSImI3hGMTBCOyIKICAgICAgaG9yaXotYWR2LXg9IjEwMCIgZD0iIE00NSA5N0w0MyA0OEw1NyA0OEw1NSA5N3pNNDEgNDVMNDAuMDA3ODEyIDMxLjEwOTM3NUM0MC4wMDc4MTIgMzEuMTA5Mzc1IDQzLjAwNzgxMiAzMS4xMDkzNzUgNDYuMDA3ODEyIDI5LjEwOTM3NUM0OS4wMDc4MTIgMjcuMTA5Mzc1IDQ5Ljk5NCAyNC45NDMyNSA1MCAyNUM1MCAyNSA1MS4wMDc4MTIgMjcuMTA5Mzc1IDU0LjAwNzgxMiAyOS4xMDkzNzVDNTcuMDA3ODEyIDMxLjEwOTM3NSA2MC4wMDc4MTIgMzEuMTA5Mzc1IDYwLjAwNzgxMiAzMS4xMDkzNzVMNTkgNDV6TTM5LjUzNzEwOSAyOC40MjE4NzVDMzAuNDc3NDg2IDI4LjY0MjcyMSAyMy4zNDkzNjMgMTguNTgzMDQgMTcgMTZDMTEuMzI5NzU3IDEzLjkwNjI2NyA2Ljk5OTcwOCAxNyA3LjU4MjAzMTIgMjBDNy45OTk3MDggMjEgNy45NjM0NjAxIDIyLjI4MzY2MyAxMiAyM0M5IDI0LjUzODk5NyA1LjU0NDE5MTkgMjMuOTk5OTI5IDQgMjEuNTgzOTg0Qy0xLjQ1OTI3MTMgMTQuMTI0NzEzIDEzLjgxOTc1NSA0LjQ1MzU2NyAyOCA1QzQzLjk1NzQ4OCA2LjE4Nzg4IDU3LjkxNDU5NyAyMS4wOTM3NCA0Mi40MTIxMDkgMjguMDAzOTA2QzQxLjQzMjMwOCAyOC4yNjY0NDMgNDAuNDc0MzEyIDI4LjM5OTAyOSAzOS41MzcxMDkgMjguNDIxODc1ek02MC4zNjkxNDEgMjguMjQ2MDk0QzU5LjQzMTkzOCAyOC4yMjMyNDQgNTguNDczOTQyIDI4LjA5MDY2MiA1Ny40OTQxNDEgMjcuODI4MTI1QzQxLjk5MTY1MyAyMC45MTc5NTkgNTUuOTQ4NzYyIDYuMDEyMDk5IDcxLjkwNjI1IDQuODI0MjE5Qzg2LjA4NjQ5NSA0LjI3Nzc4NiAxMDEuMzY1NTIgMTMuOTQ4OTMyIDk1LjkwNjI1IDIxLjQwODIwM0M5NC4zNjIwNTggMjMuODI0MTQ4IDkwLjkwNjI1IDI0LjM2MzIxNiA4Ny45MDYyNSAyMi44MjQyMTlDOTEuOTQyNzkgMjIuMTA3ODgyIDkxLjkwNjU0MiAyMC44MjQyMTkgOTIuMzI0MjE5IDE5LjgyNDIxOUM5Mi45MDY1NDIgMTYuODI0MjE5IDg4LjU3NjQ5MyAxMy43MzA0ODYgODIuOTA2MjUgMTUuODI0MjE5Qzc2LjU1Njg4NyAxOC40MDcyNTkgNjkuNDI4NzY0IDI4LjQ2Njk0IDYwLjM2OTE0MSAyOC4yNDYwOTR6IiAvPgogICAgPGdseXBoIGdseXBoLW5hbWU9InBhc3RlX2V4dGVuZF9kb3duIgogICAgICB1bmljb2RlPSImI3hGMTBDOyIKICAgICAgaG9yaXotYWR2LXg9IjEwMCIgZD0iIE01IDk1TDUgNTVMOC43NTE5NTMxIDU1TDk1IDU1TDk1IDk1TDUgOTV6TTEyLjUwMzkwNiA4Ny40OTYwOTRMODcuNDk2MDk0IDg3LjQ5NjA5NEw4Ny40OTYwOTQgNjIuNTAxOTUzTDEyLjUwMzkwNiA2Mi41MDE5NTNMMTIuNTAzOTA2IDg3LjQ5NjA5NHpNMzYuMjEwOTM4IDUwLjA1NjY0MUwzNi4yMTA5MzggNDYuMjMwNDY5TDM2LjIxMDkzOCAzNC41NDY4NzVMMTQuNTU2NjQxIDM0LjU0Njg3NUw1MC4wNDI5NjkgNC44NTc0MjJMODUuNDE3OTY5IDM0LjU0Njg3NUw2My43ODkwNjIgMzQuNTQ2ODc1TDYzLjc4OTA2MiA1MC4wNTY2NDFMMzYuMjEwOTM4IDUwLjA1NjY0MXpNNDMuODU5Mzc1IDQyLjQwNjI1TDU2LjE0MDYyNSA0Mi40MDYyNUw1Ni4xNDA2MjUgMjYuODk2NDg0TDY0LjQwNDI5NyAyNi44OTY0ODRMNTAuMDM1MTU2IDE0LjgzNzg5MUwzNS42MjEwOTQgMjYuODk2NDg0TDQzLjg1OTM3NSAyNi44OTY0ODRMNDMuODU5Mzc1IDQyLjQwNjI1eiIgLz4KICAgIDxnbHlwaCBnbHlwaC1uYW1lPSJwYXN0ZV9leHRlbmRfcmlnaHQiCiAgICAgIHVuaWNvZGU9IiYjeEYxMEQ7IgogICAgICBob3Jpei1hZHYteD0iMTAwIiBkPSIgTTUuNTQ4ODI4MSA5NS41NDY4NzVMNS41NDg4MjgxIDUuNTQ2ODc1TDkuMjk4ODI4MSA1LjU0Njg3NUw0NS41NDY4NzUgNS41NDY4NzVMNDUuNTQ2ODc1IDk1LjU0Njg3NUw1LjU0ODgyODEgOTUuNTQ2ODc1ek0xMy4wNTA3ODEgODguMDQyOTY5TDM4LjA0NDkyMiA4OC4wNDI5NjlMMzguMDQ0OTIyIDEzLjA1MDc4MUwxMy4wNTA3ODEgMTMuMDUwNzgxTDEzLjA1MDc4MSA4OC4wNDI5Njl6TTY2LjA3NDIxOSA4NS43NjU2MjVMNjYuMDc0MjE5IDY0LjI2MzY3Mkw1MC41NjQ0NTMgNjQuMjYzNjcyTDUwLjU2NDQ1MyAzNi44MzAwNzhMNTQuMzE2NDA2IDM2LjgzMDA3OEw2Ni4wNzQyMTkgMzYuODMwMDc4TDY2LjA3NDIxOSAxNS4zMDQ2ODgwMDAwMDAxTDk1LjU5NTcwMyA1MC41ODk4NDRMNjYuMDc0MjE5IDg1Ljc2NTYyNXpNNzMuNTc2MTcyIDY1LjE1MjM0NEw4NS44MDQ2ODggNTAuNTgyMDMxTDczLjU3NjE3MiAzNS45NjY3OTdMNzMuNTc2MTcyIDQ0LjMzMzk4NEw1OC4wNjY0MDYgNDQuMzMzOTg0TDU4LjA2NjQwNiA1Ni43NTk3NjZMNzMuNTc2MTcyIDU2Ljc1OTc2Nkw3My41NzYxNzIgNjUuMTUyMzQ0eiIgLz4KICAgIDxnbHlwaCBnbHlwaC1uYW1lPSJwYXN0ZV9maXQiCiAgICAgIHVuaWNvZGU9IiYjeEYxMEU7IgogICAgICBob3Jpei1hZHYteD0iMTAwIiBkPSIgTTUgOTVMNSA5MS4yODUxNTYyTDUgNUw5NSA1TDk1IDk1TDUgOTV6TTEyLjQyOTY4OCA4Ny41NzAzMTJMODcuNTcwMzEyIDg3LjU3MDMxMkw4Ny41NzAzMTIgMTIuNDI5Njg4MDAwMDAwMUwxMi40Mjk2ODggMTIuNDI5Njg4MDAwMDAwMUwxMi40Mjk2ODggODcuNTcwMzEyek04MCA4MEw1My4zNjUyMzQgNzMuNTU2NjQxTDY2LjgyNDIxOSA3MC4xOTE0MDZMNTAgNjAuMDk1NzAzTDYwLjA5Mzc1IDUwTDcwLjE4OTQ1MyA2Ni44MjYxNzJMNzMuNTU0Njg4IDUzLjM2NTIzNEw4MCA4MHpNNDAuMDkzNzUgNTBMMzAuMTg1NTQ3IDMzLjQ5MDIzNEwyNi44ODI4MTIgNDYuNjk3MjY2TDIwIDIwTDQ2LjY5NzI2NiAyNi44ODQ3NjZMMzMuNDg4MjgxIDMwLjE4NzVMNTAgNDAuMDkzNzVMNDAuMDkzNzUgNTB6IiAvPgogICAgPGdseXBoIGdseXBoLW5hbWU9InBhc3RlX292ZXIiCiAgICAgIHVuaWNvZGU9IiYjeEYxMEY7IgogICAgICBob3Jpei1hZHYteD0iMTAwIiBkPSIgTTUwIDk1TDM1IDgxLjY2NjAxNkw0Mi41IDgxLjY2NjAxNkw0Mi41IDc1TDU3LjUgNzVMNTcuNSA4MS42NjYwMTZMNjUgODEuNjY2MDE2TDUwIDk1ek0zMCA3MEwzMCAzMEwzMi45NzA3MDMgMzBMNjUuODcxMDk0IDMwTDcwIDMwTDcwIDcwTDMwIDcwek0xOC4zMzM5ODQgNjVMNSA1MEwxOC4zMzM5ODQgMzVMMTguMzMzOTg0IDQyLjVMMjUgNDIuNUwyNSA1Ny41TDE4LjMzMzk4NCA1Ny41TDE4LjMzMzk4NCA2NXpNODEuNjY2MDE2IDY1TDgxLjY2NjAxNiA1Ny41TDc1IDU3LjVMNzUgNDIuNUw4MS42NjYwMTYgNDIuNUw4MS42NjYwMTYgMzVMOTUgNTBMODEuNjY2MDE2IDY1ek0zNS45Mzk0NTMgNjQuMDU4NTk0TDY0LjA2MDU0NyA2NC4wNTg1OTRMNjQuMDYwNTQ3IDM1LjkzOTQ1M0wzNS45Mzk0NTMgMzUuOTM5NDUzTDM1LjkzOTQ1MyA2NC4wNTg1OTR6TTQyLjUgMjVMNDIuNSAxOC4zMzM5ODRMMzUgMTguMzMzOTg0TDUwIDVMNjUgMTguMzMzOTg0TDU3LjUgMTguMzMzOTg0TDU3LjUgMjVMNDIuNSAyNXoiIC8+CiAgICA8Z2x5cGggZ2x5cGgtbmFtZT0icGlwZXR0ZSIKICAgICAgdW5pY29kZT0iJiN4RjExMDsiCiAgICAgIGhvcml6LWFkdi14PSIxMDAiIGQ9IiBNODAuNDk4MDQ3IDkyLjVDNzcuNDMzMTEgOTIuNSA3NC4zNjgwNDQgOTEuMzI3MDQ1NiA3Mi4wMTk1MzEgODguOTc4NTE2TDU1LjY0MDYyNSA3Mi41OTc2NTZMNTQuODE0NDUzIDczLjQyMzgyOEM1Mi4yMzcwMzYgNzYuMDAxMjQ4IDQ4LjA4NzE4MyA3Ni4wMDEyNDggNDUuNTA5NzY2IDczLjQyMzgyOEM0Mi45MzIzNTEgNzAuODQ2Mzk4IDQyLjkzMjM1MSA2Ni42OTY1NjEgNDUuNTA5NzY2IDY0LjExOTE0MUw0OC43NTE5NTMgNjAuODc1TDE1LjAxNzU3OCAyNy4xNDA2MjVDMTEuNjU5ODcxIDIzLjc4MjgyNSAxMS42NTk4NzEgMTguMzc1Mjc4IDE1LjAxNzU3OCAxNS4wMTc1NzhDMTguMzc1Mjg0IDExLjY1OTg3OCAyMy43ODI5MTggMTEuNjU5ODc4IDI3LjE0MDYyNSAxNS4wMTc1NzhMNjAuODc1IDQ4Ljc1MTk1M0w2NC4xMTcxODggNDUuNTA5NzY2QzY2LjY5NDYwMyA0Mi45MzIzNjYgNzAuODQ2NDE0IDQyLjkzMjM2NiA3My40MjM4MjggNDUuNTA5NzY2Qzc2LjAwMTI0NCA0OC4wODcxNjYgNzYuMDAxMjQ0IDUyLjIzNjk3MyA3My40MjM4MjggNTQuODE0NDUzTDcyLjU5NzY1NiA1NS42NDA2MjVMODguOTc2NTYyIDcyLjAxOTUzMUM5My42NzM1ODYgNzYuNzE2NTgxIDkzLjY3MzU4NiA4NC4yODE0NTYwMDAwMDAxIDg4Ljk3NjU2MiA4OC45Nzg1MTZDODYuNjI4MDUgOTEuMzI3MDQ1NiA4My41NjI5ODIgOTIuNSA4MC40OTgwNDcgOTIuNXpNNTIuODg4NjcyIDU3LjAzOTA2Mkw1Ny4wMzkwNjIgNTIuODg4NjcyTDUyLjYyMTA5NCA0OC40NzA3MDNDNTIuNjA1MTUgNDguNDU0MDExIDUyLjU5NDUzNiA0OC40MzQzOCA1Mi41NzgxMjUgNDguNDE3OTY5TDIzLjczODI4MSAxOS41ODAwNzhDMjIuNTg2MTI5IDE4LjQyNzkyNiAyMC43MzIyMyAxOC40Mjc5MjYgMTkuNTgwMDc4IDE5LjU4MDA3OEMxOC40Mjc5MjYgMjAuNzMyMjMgMTguNDI3OTI2IDIyLjU4NjEyOSAxOS41ODAwNzggMjMuNzM4MjgxTDQ4LjQxNzk2OSA1Mi41NzgxMjVDNDguNDM0MzggNTIuNTk0NTM2IDQ4LjQ1NDAxMSA1Mi42MDUxNSA0OC40NzA3MDMgNTIuNjIxMDk0TDUyLjg4ODY3MiA1Ny4wMzkwNjJ6IiAvPgogICAgPGdseXBoIGdseXBoLW5hbWU9InBpeGVsaXplIgogICAgICB1bmljb2RlPSImI3hGMTExOyIKICAgICAgaG9yaXotYWR2LXg9IjEwMCIgZD0iIE0yMSA4NEwyMSA3MUwzNCA3MUwzNCA4NEwyMSA4NHpNMzYgODRMMzYgNzFMNDkgNzFMNDkgODRMMzYgODR6TTUxIDg0TDUxIDcxTDY0IDcxTDY0IDc0TDY0IDc2TDY0IDg0TDUxIDg0ek02NiA3NEw2NiA2MUw3OSA2MUw3OSA3NEw2NiA3NHpNMjEgNjlMMjEgNTZMMzQgNTZMMzQgNjlMMjEgNjl6TTY2IDU5TDY2IDQ2TDc5IDQ2TDc5IDU5TDY2IDU5ek0yMSA1NEwyMSA0MUwzNCA0MUwzNCA0OUwzNCA1MUwzNCA1NEwyMSA1NHpNMzYgNDlMMzYgMzZMNDkgMzZMNDkgNDlMMzYgNDl6TTUxIDQ5TDUxIDM2TDY0IDM2TDY0IDQ0TDY0IDQ2TDY0IDQ5TDUxIDQ5ek0yMSAzOUwyMSAyNkwzNCAyNkwzNCAzOUwyMSAzOXpNMjEgMjRMMjEgMTFMMzQgMTFMMzQgMjRMMjEgMjR6IiAvPgogICAgPGdseXBoIGdseXBoLW5hbWU9InJlY3QiCiAgICAgIHVuaWNvZGU9IiYjeEYxMTI7IgogICAgICBob3Jpei1hZHYteD0iMTAwIiBkPSIgTTEyLjUgODIuNUwxMi41IDcxLjY2NjY3TDEyLjUgMTcuNDk5OTdMMjIuNSAxNy40OTk5N0w4Ny41IDE3LjQ5OTk3TDg3LjUgMjguMzMzMzdMODcuNSA3MS42NjY2N0w4Ny41IDgyLjVMNzcuNSA4Mi41TDIyLjUgODIuNUwxMi41IDgyLjV6TTIyLjUgNzEuNjY2NjdMNzcuNSA3MS42NjY2N0w3Ny41IDI4LjMzMzM3TDIyLjUgMjguMzMzMzdMMjIuNSA3MS42NjY2N3oiIC8+CiAgICA8Z2x5cGggZ2x5cGgtbmFtZT0icmVzaXplIgogICAgICB1bmljb2RlPSImI3hGMTEzOyIKICAgICAgaG9yaXotYWR2LXg9IjEwMCIgZD0iIE05NC41NzgxMTkgOTQuNTc0Mkw1NC45OTk5OTkgODVMNzQuOTk5OTk4IDgwTDc0Ljk5OTk5OCA4MEw0OS45OTk5OTkgNjVMNjQuOTk5OTk5IDQ5Ljk5OTk3TDc5Ljk5OTk5OCA3NUw3OS45OTk5OTggNzVMODQuOTk5OTk4IDU1eiBNNC41NzgxMTggNC41NzQxN0w0NC45OTk5OTkgMTQuOTk5OTdMMjQuOTk5OTk5IDE5Ljk5OTk3TDI0Ljk5OTk5OSAxOS45OTk5N0w0OS45OTk5OTkgMzQuOTk5OTdMMzQuOTk5OTk5IDQ5Ljk5OTk3TDIwIDI0Ljk5OTk3TDIwIDI0Ljk5OTk3TDE1IDQ0Ljk5OTk3eiIgLz4KICAgIDxnbHlwaCBnbHlwaC1uYW1lPSJyb3RhdGUiCiAgICAgIHVuaWNvZGU9IiYjeEYxMTQ7IgogICAgICBob3Jpei1hZHYteD0iMTAwIiBkPSIgTTQ5Ljc3OTI5NyA5Mi40OTk5Nzk5OTk5OTk5TDUxLjc2NTYyNSA3Ny40NTExNDk5OTk5OTk5TDQ3LjM4ODY3MiA3Ny41MDE5NDk5OTk5OTk5QzI4LjA1ODY5NCA3Ny41MDE5NDk5OTk5OTk5IDEzLjM4ODY1NSA2MS44MzAwNDk5OTk5OTk5IDEzLjM4ODY3MiA0Mi40OTk5Njk5OTk5OTk5QzEzLjM4ODY3MiAyMy4xNjk5Njk5OTk5OTk5IDI5LjA1ODcwNiA3LjQ5OTk2OTk5OTk5OTkgNDguMzg4NjcyIDcuNDk5OTY5OTk5OTk5OUM1NS40OTY4ODEgNy40OTk5Njk5OTk5OTk5IDYyLjEwOTcwMSA5LjYxOTA2OTk5OTk5OTkgNjcuNjMwODU5IDEzLjI1OTc2OTk5OTk5OTlDNjguNDI5MTc0IDEzLjc4NjE2OTk5OTk5OTkgNjkuMjAyMjgxIDE0LjM0NzI2OTk5OTk5OTkgNjkuOTUzMTI1IDE0LjkzNTU2OTk5OTk5OTlMNjIuODA2NjQxIDIyLjA4Mzk2OTk5OTk5OTlDNjIuNzA2ODMxIDIyLjAxMjk2OTk5OTk5OTkgNjIuNjEwNjQ2IDIxLjkzNjM2OTk5OTk5OTkgNjIuNTA5NzY2IDIxLjg2NzE2OTk5OTk5OTlDNTguNDkxODc5IDE5LjExMjE2OTk5OTk5OTkgNTMuNjI4Mzg5IDE3LjQ5OTk2OTk5OTk5OTkgNDguMzg4NjcyIDE3LjQ5OTk2OTk5OTk5OTlDMzQuNTgxNTUzIDE3LjQ5OTk2OTk5OTk5OTkgMjMuMzg4NjcyIDI4LjY5Mjg2OTk5OTk5OTkgMjMuMzg4NjcyIDQyLjQ5OTk2OTk5OTk5OTlDMjMuMzg4NjU1IDU2LjMwNzE5OTk5OTk5OTkgMzMuNTgxNTQyIDY3LjUwMTk0OTk5OTk5OTkgNDcuMzg4NjcyIDY3LjUwMTk0OTk5OTk5OTlMNDcuMzg4NjcyIDY3LjU0MTA0OTk5OTk5OTlMNTEuNzY1NjI1IDY3LjU1Mjc0OTk5OTk5OTlMNDkuNzc1MzkxIDUyLjUwMDAxOTk5OTk5OTlMODUgNzIuNTAxOTVMNDkuNzc5Mjk3IDkyLjV6IiAvPgogICAgPGdseXBoIGdseXBoLW5hbWU9InNhdmUiCiAgICAgIHVuaWNvZGU9IiYjeEYxMTU7IgogICAgICBob3Jpei1hZHYteD0iMTAwIiBkPSIgTTEwIDg2TDEwIDkuOTk5OTdMOTAgOS45OTk5N0w5MCA3MEw3NCA4Nkw2MiA4Nkw2MiA1NkwyNCA1NkwyNCA4NkwxMCA4NnogTTQ0IDgzLjU1NDY4OTk5OTk5OTlMNDQgNjEuOTk5OTk5OTk5OTk5OUw1NCA2MS45OTk5OTk5OTk5OTk5TDU0LjA1NDY5IDgzLjU1NDY4OTk5OTk5OTlMNDQuMDAwMDAyIDgzLjU1NDY4OTk5OTk5OTl6IiAvPgogICAgPGdseXBoIGdseXBoLW5hbWU9InNlbGVjdCIKICAgICAgdW5pY29kZT0iJiN4RjExNjsiCiAgICAgIGhvcml6LWFkdi14PSIxMDAiIGQ9IiBNMTMgNzguOTk5OTlIMjNWNjguOTk5OTlIMTNWNzguOTk5OTl6IE03NyA3OC45OTk5OUg4N1Y2OC45OTk5OUg3N1Y3OC45OTk5OXogTTEzIDYyLjk5OTk5SDIzVjUyLjk5OTk5SDEzVjYyLjk5OTk5eiBNMTMgNDYuOTk5OTdIMjNWMzYuOTk5OTdIMTNWNDYuOTk5OTd6IE0yOSA3OC45OTk5OUgzOVY2OC45OTk5OUgyOVY3OC45OTk5OXogTTQ1IDc4Ljk5OTk5SDU1VjY4Ljk5OTk5SDQ1Vjc4Ljk5OTk5eiBNNjEgNzguOTk5OTlINzFWNjguOTk5OTlINjFWNzguOTk5OTl6IE0xMyAzMC45OTk5N0gyM1YyMC45OTk5N0gxM1YzMC45OTk5N3ogTTc3IDYyLjk5OTk5SDg3VjUyLjk5OTk5SDc3VjYyLjk5OTk5eiBNNzcgNDYuOTk5OTdIODdWMzYuOTk5OTdINzdWNDYuOTk5OTd6IE03NyAzMC45OTk5N0g4N1YyMC45OTk5N0g3N1YzMC45OTk5N3ogTTI5IDMwLjk5OTk3SDM5VjIwLjk5OTk3SDI5VjMwLjk5OTk3eiBNNDUgMzAuOTk5OTdINTVWMjAuOTk5OTdINDVWMzAuOTk5OTd6IE02MSAzMC45OTk5N0g3MVYyMC45OTk5N0g2MVYzMC45OTk5N3oiIC8+CiAgICA8Z2x5cGggZ2x5cGgtbmFtZT0idGV4dCIKICAgICAgdW5pY29kZT0iJiN4RjExNzsiCiAgICAgIGhvcml6LWFkdi14PSIxMDAiIGQ9IiBNMTUgODVMMTUgNzVMNDUgNzVMNDUgMTBMNTUgMTBMNTUgNzVMODUgNzVMODUgODVMMTUgODV6IiAvPgogICAgPGdseXBoIGdseXBoLW5hbWU9InVubGlua2VkIgogICAgICB1bmljb2RlPSImI3hGMTE4OyIKICAgICAgaG9yaXotYWR2LXg9IjEwMCIgZD0iIE00MS45NzY1NjIgOTUuMzA2NjQwNkwyOS45NTExNzIgODQuNjkzMzU5TDI5Ljk1MTE3MiA2OC43NzM0MzgwMDAwMDAxTDQxIDU3TDQyIDU3TDQyIDYyTDQyIDY0TDM1Ljk2Mjg5MSA3MC41NDI5NjlMMzUuOTYyODkxIDgyLjkyMzgyOEw0My45ODA0NjkgOTBMNTQgOTBMNjIuMDE1NjI1IDgyLjkyMzgyOEw2Mi4wMTU2MjUgNzAuNTQyOTY5TDU2IDY0TDU2IDU3TDU3IDU3TDY4LjAyOTI5NyA2OC43NzM0MzgwMDAwMDAxTDY4LjAyOTI5NyA4NC42OTMzNTlMNTYuMDAzOTA2IDk1LjMwNjY0MDZMNDEuOTc2NTYyIDk1LjMwNjY0MDZ6TTE0IDY4TDEyLjExNzE4OCA2NC40NzA3MDNMMjggNTZMMjkuODgyODEyIDU5LjUyOTI5N0wxNCA2OHpNODYgNjhMNzAuMTE3MTg4IDU5LjUyOTI5N0w3MiA1Nkw4Ny44ODI4MTIgNjQuNDcwNzAzTDg2IDY4ek0xMCA1MkwxMCA0OEwyOCA0OEwyOCA1MkwxMCA1MnpNNzIgNTJMNzIgNDhMOTAgNDhMOTAgNTJMNzIgNTJ6TTI4IDQ0TDEyLjExNzE4OCAzNS41MjkyOTdMMTQgMzJMMjkuODgyODEyIDQwLjQ3MDcwM0wyOCA0NHpNNzIgNDRMNzAuMTE3MTg4IDQwLjQ3MDcwM0w4NiAzMkw4Ny44ODI4MTIgMzUuNTI5Mjk3TDcyIDQ0ek00MSA0M0wyOS45NTExNzIgMzEuMjI2NTYxOTk5OTk5OUwyOS45NTExNzIgMTUuMzA2NjQxTDQxLjk3NjU2MiA0LjY5MzM1OUw1Ni4wMDM5MDYgNC42OTMzNTlMNjguMDI5Mjk3IDE1LjMwNjY0MUw2OC4wMjkyOTcgMzEuMjI2NTYxOTk5OTk5OUw1NyA0M0w1NiA0M0w1NiAzNkw2Mi4wMTU2MjUgMjkuNDU3MDMxTDYyLjAxNTYyNSAxNy4wNzYxNzJMNTQgMTBMNDMuOTgwNDY5IDEwTDM1Ljk2Mjg5MSAxNy4wNzYxNzJMMzUuOTYyODkxIDI5LjQ1NzAzMUw0MiAzNkw0MiAzOEw0MiA0M0w0MSA0M3oiIC8+CiAgPC9mb250Pgo8L2RlZnM+Cjwvc3ZnPgo="},function(t,A){t.exports="data:application/x-font-ttf;base64,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"},function(t,A){t.exports="data:application/font-woff;base64,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"}]); -//# sourceMappingURL=painterro-0.2.21.min.js.map \ No newline at end of file diff --git a/wp/tags/0.2.21.1/painterro-0.2.21.min.js.map b/wp/tags/0.2.21.1/painterro-0.2.21.min.js.map deleted file mode 100644 index 53e7c28..0000000 --- a/wp/tags/0.2.21.1/painterro-0.2.21.min.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"sources":["webpack:///painterro-0.2.21.min.js","webpack:///webpack/bootstrap 32081fe507e4b478bf1c","webpack:///./js/translation.js","webpack:///./js/utils.js","webpack:///./~/css-loader/lib/css-base.js","webpack:///./~/style-loader/lib/addStyles.js","webpack:///./js/colorPicker.js","webpack:///./js/inserter.js","webpack:///./js/params.js","webpack:///./js/primitive.js","webpack:///./js/resizer.js","webpack:///./js/selecter.js","webpack:///./js/text.js","webpack:///./js/worklog.js","webpack:///./js/zoomHelper.js","webpack:///./css/bar-styles.css?45cc","webpack:///./css/icons/iconfont.css?3bff","webpack:///./css/styles.css?0c22","webpack:///./js/main.js","webpack:///./~/style-loader/lib/urls.js","webpack:///./css/bar-styles.css","webpack:///./css/icons/iconfont.css","webpack:///./css/styles.css","webpack:///./css/checkers.svg","webpack:///./css/icons/iconfont.eot","webpack:///./css/icons/iconfont.svg","webpack:///./css/icons/iconfont.ttf","webpack:///./css/icons/iconfont.woff"],"names":["Painterro","modules","__webpack_require__","moduleId","installedModules","exports","module","i","l","call","m","c","value","d","name","getter","o","Object","defineProperty","configurable","enumerable","get","n","__esModule","object","property","prototype","hasOwnProperty","p","s","_classCallCheck","instance","Constructor","TypeError","tr","Translation","_createClass","defineProperties","target","props","length","descriptor","writable","key","protoProps","staticProps","this","translations","en","lineColor","lineColorFull","fillColor","fillColorFull","alpha","alphaFull","lineWidth","lineWidthFull","textColor","textColorFull","fontSize","fontSizeFull","fontName","fontNameFull","apply","cancel","close","width","height","keepRatio","pixelSize","pixelSizeFull","resizeScale","resizeResize","tools","crop","pixelize","rect","ellipse","line","rotate","save","load","text","brush","resize","open","select","pasteOptions","fit","extend_down","extend_right","over","how_to_paste","activate","defaultTranslator","dict","trans","undefined","translator","sentense","levels","split","res","fallbackRes","forEach","genId","possible","charAt","Math","floor","random","addDocumentObjectHelpers","Element","offsetTop","offsetParent","documentOffsetTop","offsetLeft","documentOffsetLeft","getBoundingClientRect","right","left","bottom","top","clearSelection","selection","window","getSelection","document","empty","removeAllRanges","distance","p1","p2","a","x","b","y","sqrt","trim","String","replace","copyToClipboard","clipboardData","setData","queryCommandSupported","textarea","createElement","textContent","style","position","body","appendChild","execCommand","ex","console","warn","removeChild","KEYS","z","enter","esc","cssWithMappingToString","item","useSourceMap","content","cssMapping","btoa","sourceMapping","toComment","concat","sources","map","source","sourceRoot","join","sourceMap","unescape","encodeURIComponent","JSON","stringify","list","toString","mediaQuery","alreadyImportedModules","id","push","addStylesToDom","styles","options","domStyle","stylesInDom","refs","j","parts","addStyle","listToStyles","newStyles","base","css","media","part","insertStyleElement","getElement","insertInto","Error","lastStyleElementInsertedAtTop","stylesInsertedAtTop","insertAt","nextSibling","insertBefore","firstChild","removeStyleElement","parentNode","idx","indexOf","splice","createStyleElement","attrs","type","addAttrs","createLinkElement","link","rel","el","keys","setAttribute","obj","update","remove","result","transform","singleton","styleIndex","singletonCounter","applyToSingletonTag","bind","URL","createObjectURL","revokeObjectURL","Blob","updateLink","href","applyToTag","newObj","index","styleSheet","cssText","replaceText","cssNode","createTextNode","childNodes","autoFixUrls","convertToAbsoluteUrls","fixUrls","blob","oldSrc","isOldIE","fn","memo","arguments","all","atob","selector","querySelector","DEBUG","newList","mayRemove","textStore","replacement","filter","Boolean","HexToRGB","hex","parse","exec","r","parseInt","g","repeat","HexToRGBA","rgb","format2Hex","val","rgbToHex","reversedColor","color","_translation","ColorPicker","main","callback","_this","w","h","lightPosition","wrapper","input","pipetteButton","closeButton","canvas","ctx","getContext","canvasLight","colorRegulator","canvasAlpha","alphaRegulator","ctxLight","ctxAlpha","palette","createLinearGradient","addColorStop","fillStyle","fillRect","darkOverlay","onmousedown","e","selecting","getPaletteColorAtPoint","startLightSelecting","lightSelecting","getColorLightAtClick","startAlphaSelecting","alphaSelecting","getAlphaAtClick","onclick","opened","choosing","onkeyup","setActiveColor","state","addCallback","palleteColor","drawLighter","round","regetColor","removeAttribute","clientX","clientY","getImageData","data","drawAlpher","alphaPosition","regetAlpha","button","choosingActive","handleMouseMove","scale","getScale","size","alphaColor","ignoreUpdateText","lightGradient","clearRect","default","_utils","Inserter","handle","img","fitImage","tmpImg","oldH","oldW","newH","naturalHeight","newW","max","naturalWidth","tmpData","clearBackground","putImageData","adjustSizeFull","offset","placeAt","worklog","captureState","_this2","CLIP_DATA_MARKER","cancelChoosing","k","doc","getElementById","loading","doLater","drawImage","reCaptureState","waitChoice","_this3","Image","onload","loaded","finishLoading","startLoading","src","evt","keyCode","imagePlaced","shown","ctrlKey","metaKey","area","bottoml","topl","tmpCan","toDataURL","btn","toolByName","buttonId","icon","className","_this4","buttons","loadSettings","settings","localStorage","getItem","STORAGE_KEY","error","setParam","setItem","setDefaults","parameters","params","activeColor","activeColorAlpha","activeAlphaColor","_colorPicker","activeFillColor","activeFillColorAlpha","activeFillAlphaColor","initText","initTextColor","initTextStyle","defaultLineWidth","defaultFontSize","backgroundFillColor","hiddenTools","colorScheme","control","controlContent","hoverControl","hoverControlContent","activeControl","activeControlContent","inputBorderColor","inputBackground","inputText","backgroundColor","dragOverBarColor","defaultSize","defaultPixelSize","wh","translation","_translation2","addTranslation","strings","PrimitiveTool","toolContainer","helperCanvas","lineJoin","event","mainClass","classList","strokeStyle","colorWidgetState","fill","lineCap","cornerMarked","cord","scrollLeft","scrollTop","cur","points","drawBrushPath","centerCord","smPoints","beginPath","arc","PI","closePath","moveTo","last","slice","lineTo","stroke","curCord","prevLast","shiftKey","deg","atan","abs","tl","min","sign","halfLW","oddCorrecter","strokeRect","x1","y1","rX","rY","tlX","tlY","xScale","yScale","radius","hR","vR","restore","Resizer","inputW","inputH","linkButton","linkButtonIcon","scaleButton","resizeButton","linked","startClose","origW","origH","oninput","ratio","closeActiveTool","PainterroSelecter","selectionCallback","areaionCallback","activated","pxData","pxSize","row","ii","jj","ImageData","baseX","baseY","clientWidth","getAttribute","clientHeight","t","setActiveTool","setLeft","setTop","setRight","setBottom","tmpCtx","placedData","lowScale","placedDataLow","show","reCalcCropperCords","placedRatio","inserter","insert","hide","undoState","handleKeyDown","finishPlacing","cancelPlacing","mousDownCallbacks","ptro-crp-el","resizingB","resizingR","ptro-crp-rect","moving","xHandle","yHandle","ptro-crp-tr","resizingT","ptro-crp-br","ptro-crp-bl","resizingL","ptro-crp-tl","ptro-crp-t","ptro-crp-r","ptro-crp-b","ptro-crp-l","v","newLeft","hDelta","newTop","vDelta","resizing","absLeft","fixCropperLeft","absRight","fixCropperRight","absTop","fixCropperTop","absBottom","fixCropperBottom","leftKeepRatio","rightKeepRatio","topKeepRatio","bottomKeepRatio","suggLeft","absLeftMiddle","newRight","absRightLimit","absTopMiddle","newBottom","absBottomLimit","TextTool","setFontSize","setFont","getFonts","font","active","focus","reLimit","innerHTML","pendingClear","crd","scaledCord","display","onkeydown","preventDefault","innerText","textAlign","fillText","fonts","f","WorkLog","changedHandler","current","initial","sizew","sizeh","prev","next","changed","applyState","ZoomHelper","zomer","zomerCtx","gridColor","createImageData","gridColorRed","captW","middle","ceil","periodW","fullW","halfFullW","cursor","colorPicker","altKey","locals","_interopRequireDefault","_selecter","_selecter2","_worklog","_worklog2","_primitive","_primitive2","_colorPicker2","_params","_zoomHelper","_zoomHelper2","_text","_text2","_resizer","_resizer2","_inserter","_inserter2","PainterroProc","draw","eventListner","doCrop","doPixelize","controls","title","titleFull","action","activeTool","primitiveTool","setLineWidth","getValue","textTool","setFontColor","dropdown","getFont","getAvilableValues","translate","resizer","click","onchange","files","dataTransfer","openFile","zoom","ratioRelation","saving","holderId","holderEl","baseEl","bar","rightBar","cropper","code","loadedName","html","saveBtn","info","toolControls","zoomHelper","notEmpty","setPixelSize","init","widgetState","getBtnEl","currentActive","imageSaver","asDataURL","quality","realType","getAsUri","asBlob","uri","byteString","ab","ArrayBuffer","ia","Uint8Array","charCodeAt","suggestedFileName","initEventHandlers","clear","realQuality","saveHandler","doNotSelect","eventHandler","listner","documentHandlers","mousedown","handleMouseDown","handleToolEvent","mousemove","mouseup","handleMouseUp","mousewheel","wheelDelta","keydown","redoState","paste","items","originalEvent","kind","getAsFile","txt","getData","startsWith","loadImage","dragover","dragleave","drop","windowHandlers","syncToolElement","addEventListener","handleOpen","openImage","substring","lastIndexOf","offsetWidth","documentClientWidth","documentClientHeight","newRelation","overflow","ctrls","ctl","hint","location","baseUrl","protocol","host","currentDir","pathname","fullMatch","origUrl","unquotedOrigUrl","$1","test","newUrl"],"mappings":"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","file":"painterro-0.2.21.min.js","sourcesContent":["var Painterro =\n/******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId]) {\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\ti: moduleId,\n/******/ \t\t\tl: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.l = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// identity function for calling harmony imports with the correct context\n/******/ \t__webpack_require__.i = function(value) { return value; };\n/******/\n/******/ \t// define getter function for harmony exports\n/******/ \t__webpack_require__.d = function(exports, name, getter) {\n/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n/******/ \t\t\tObject.defineProperty(exports, name, {\n/******/ \t\t\t\tconfigurable: false,\n/******/ \t\t\t\tenumerable: true,\n/******/ \t\t\t\tget: getter\n/******/ \t\t\t});\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = function(module) {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\tfunction getDefault() { return module['default']; } :\n/******/ \t\t\tfunction getModuleExports() { return module; };\n/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n/******/ \t\treturn getter;\n/******/ \t};\n/******/\n/******/ \t// Object.prototype.hasOwnProperty.call\n/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = 16);\n/******/ })\n/************************************************************************/\n/******/ ([\n/* 0 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.tr = tr;\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar instance = null;\n\nvar Translation = exports.Translation = function () {\n function Translation() {\n _classCallCheck(this, Translation);\n\n this.translations = {\n en: {\n lineColor: 'L:',\n lineColorFull: 'Line color',\n fillColor: 'F:',\n fillColorFull: 'Fill color',\n alpha: 'A:',\n alphaFull: 'Alpha',\n lineWidth: 'W:',\n lineWidthFull: 'Line width',\n textColor: 'C:',\n textColorFull: 'Text color',\n fontSize: 'S:',\n fontSizeFull: 'Font Size',\n fontName: 'F:',\n fontNameFull: 'Font name',\n apply: 'Apply',\n cancel: 'Cancel',\n close: 'Close',\n width: 'Width',\n height: 'Height',\n keepRatio: 'Keep width/height ratio',\n pixelSize: 'P:',\n pixelSizeFull: 'Pixel Size',\n resizeScale: 'Scale',\n resizeResize: 'Resize',\n tools: {\n crop: 'Crop image to selected area',\n pixelize: 'Pixelize selected area',\n rect: 'Draw rectangle',\n ellipse: 'Draw ellipse',\n line: 'Draw line',\n rotate: 'Rotate image',\n save: 'Save Image',\n load: 'Load image',\n text: 'Put text',\n brush: 'Brush',\n resize: 'Resize or scale',\n open: 'Open image',\n select: 'Select area',\n close: 'Close Painterro'\n },\n pasteOptions: {\n fit: 'Replace all',\n extend_down: 'Extend down',\n extend_right: 'Extend right',\n over: 'Paste over',\n how_to_paste: 'How to paste?'\n }\n }\n };\n this.activate('en');\n this.defaultTranslator = this.translations.en;\n }\n\n _createClass(Translation, [{\n key: 'addTranslation',\n value: function addTranslation(name, dict) {\n this.translations[name] = dict;\n }\n }, {\n key: 'activate',\n value: function activate(trans) {\n if (this.translations[trans] !== undefined) {\n this.trans = trans;\n this.translator = this.translations[this.trans];\n } else {\n this.translator = this.defaultTranslator;\n }\n }\n }, {\n key: 'tr',\n value: function tr(sentense) {\n var levels = sentense.split('.');\n var res = this.translator;\n var fallbackRes = this.defaultTranslator;\n levels.forEach(function (l) {\n fallbackRes = fallbackRes[l];\n if (res !== undefined) {\n res = res[l];\n }\n });\n return res || fallbackRes;\n }\n }], [{\n key: 'get',\n value: function get() {\n if (instance) {\n return instance;\n }\n instance = new Translation();\n return instance;\n }\n }]);\n\n return Translation;\n}();\n\nfunction tr(n) {\n return Translation.get().tr(n);\n}\n\n/***/ }),\n/* 1 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.genId = genId;\nexports.addDocumentObjectHelpers = addDocumentObjectHelpers;\nexports.clearSelection = clearSelection;\nexports.distance = distance;\nexports.trim = trim;\nexports.copyToClipboard = copyToClipboard;\nfunction genId() {\n var text = 'ptro';\n var possible = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789';\n for (var i = 0; i < 8; i += 1) {\n text += possible.charAt(Math.floor(Math.random() * possible.length));\n }\n return text;\n}\n\nfunction addDocumentObjectHelpers() {\n if (!('documentOffsetTop' in Element.prototype)) {\n Object.defineProperty(Element.prototype, 'documentOffsetTop', {\n get: function get() {\n return this.offsetTop + (this.offsetParent ? this.offsetParent.documentOffsetTop : 0);\n }\n });\n }\n if (!('documentOffsetLeft' in Element.prototype)) {\n Object.defineProperty(Element.prototype, 'documentOffsetLeft', {\n get: function get() {\n return this.offsetLeft + (this.offsetParent ? this.offsetParent.documentOffsetLeft : 0);\n }\n });\n }\n\n if (!('documentClientWidth' in Element.prototype)) {\n Object.defineProperty(Element.prototype, 'documentClientWidth', {\n get: function get() {\n var rect = this.getBoundingClientRect();\n if (rect.width) {\n // `width` is available for IE9+\n return rect.width;\n }\n // Calculate width for IE8 and below\n return rect.right - rect.left;\n }\n });\n }\n\n if (!('documentClientHeight' in Element.prototype)) {\n Object.defineProperty(Element.prototype, 'documentClientHeight', {\n get: function get() {\n var rect = this.getBoundingClientRect();\n if (rect.height) {\n return rect.height;\n }\n return rect.bottom - rect.top;\n }\n });\n }\n}\n\nfunction clearSelection() {\n var selection = null;\n if (window.getSelection) {\n selection = window.getSelection();\n } else if (document.selection) {\n selection = document.selection;\n }\n if (selection) {\n if (selection.empty) {\n selection.empty();\n }\n if (selection.removeAllRanges) {\n selection.removeAllRanges();\n }\n }\n}\n\nfunction distance(p1, p2) {\n var a = p1.x - p2.x;\n var b = p1.y - p2.y;\n return Math.sqrt(a * a + b * b);\n}\n\nfunction trim(s) {\n return String(s).replace(/^\\s+|\\s+$/g, '');\n}\n\nvar KEYS = exports.KEYS = {\n y: 89,\n z: 90,\n s: 83,\n c: 67,\n x: 88,\n enter: 13,\n esc: 27\n};\n\n// Copies a string to the clipboard. Must be called from within an\n// event handler such as click. May return false if it failed, but\n// this is not always possible. Browser support for Chrome 43+,\n// Firefox 42+, Safari 10+, Edge and IE 10+.\n// IE: The clipboard feature may be disabled by an administrator. By\n// default a prompt is shown the first time the clipboard is\n// used (per session).\nfunction copyToClipboard(text) {\n if (window.clipboardData && window.clipboardData.setData) {\n // IE specific code path to prevent textarea being shown while dialog is visible.\n window.clipboardData.setData('Text', text);\n } else if (document.queryCommandSupported && document.queryCommandSupported('copy')) {\n var textarea = document.createElement('textarea');\n textarea.textContent = text;\n textarea.style.position = 'fixed'; // Prevent scrolling to bottom of page in MS Edge.\n document.body.appendChild(textarea);\n textarea.select();\n try {\n document.execCommand('copy'); // Security exception may be thrown by some browsers.\n } catch (ex) {\n console.warn('Copy to clipboard failed.', ex);\n } finally {\n document.body.removeChild(textarea);\n }\n }\n}\n\n/***/ }),\n/* 2 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\n/*\n\tMIT License http://www.opensource.org/licenses/mit-license.php\n\tAuthor Tobias Koppers @sokra\n*/\n// css base code, injected by the css-loader\nmodule.exports = function (useSourceMap) {\n\tvar list = [];\n\n\t// return the list of modules as css string\n\tlist.toString = function toString() {\n\t\treturn this.map(function (item) {\n\t\t\tvar content = cssWithMappingToString(item, useSourceMap);\n\t\t\tif (item[2]) {\n\t\t\t\treturn \"@media \" + item[2] + \"{\" + content + \"}\";\n\t\t\t} else {\n\t\t\t\treturn content;\n\t\t\t}\n\t\t}).join(\"\");\n\t};\n\n\t// import a list of modules into the list\n\tlist.i = function (modules, mediaQuery) {\n\t\tif (typeof modules === \"string\") modules = [[null, modules, \"\"]];\n\t\tvar alreadyImportedModules = {};\n\t\tfor (var i = 0; i < this.length; i++) {\n\t\t\tvar id = this[i][0];\n\t\t\tif (typeof id === \"number\") alreadyImportedModules[id] = true;\n\t\t}\n\t\tfor (i = 0; i < modules.length; i++) {\n\t\t\tvar item = modules[i];\n\t\t\t// skip already imported module\n\t\t\t// this implementation is not 100% perfect for weird media query combinations\n\t\t\t// when a module is imported multiple times with different media queries.\n\t\t\t// I hope this will never occur (Hey this way we have smaller bundles)\n\t\t\tif (typeof item[0] !== \"number\" || !alreadyImportedModules[item[0]]) {\n\t\t\t\tif (mediaQuery && !item[2]) {\n\t\t\t\t\titem[2] = mediaQuery;\n\t\t\t\t} else if (mediaQuery) {\n\t\t\t\t\titem[2] = \"(\" + item[2] + \") and (\" + mediaQuery + \")\";\n\t\t\t\t}\n\t\t\t\tlist.push(item);\n\t\t\t}\n\t\t}\n\t};\n\treturn list;\n};\n\nfunction cssWithMappingToString(item, useSourceMap) {\n\tvar content = item[1] || '';\n\tvar cssMapping = item[3];\n\tif (!cssMapping) {\n\t\treturn content;\n\t}\n\n\tif (useSourceMap && typeof btoa === 'function') {\n\t\tvar sourceMapping = toComment(cssMapping);\n\t\tvar sourceURLs = cssMapping.sources.map(function (source) {\n\t\t\treturn '/*# sourceURL=' + cssMapping.sourceRoot + source + ' */';\n\t\t});\n\n\t\treturn [content].concat(sourceURLs).concat([sourceMapping]).join('\\n');\n\t}\n\n\treturn [content].join('\\n');\n}\n\n// Adapted from convert-source-map (MIT)\nfunction toComment(sourceMap) {\n\t// eslint-disable-next-line no-undef\n\tvar base64 = btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap))));\n\tvar data = 'sourceMappingURL=data:application/json;charset=utf-8;base64,' + base64;\n\n\treturn '/*# ' + data + ' */';\n}\n\n/***/ }),\n/* 3 */\n/***/ (function(module, exports, __webpack_require__) {\n\n/*\n\tMIT License http://www.opensource.org/licenses/mit-license.php\n\tAuthor Tobias Koppers @sokra\n*/\n\nvar stylesInDom = {};\n\nvar\tmemoize = function (fn) {\n\tvar memo;\n\n\treturn function () {\n\t\tif (typeof memo === \"undefined\") memo = fn.apply(this, arguments);\n\t\treturn memo;\n\t};\n};\n\nvar isOldIE = memoize(function () {\n\t// Test for IE <= 9 as proposed by Browserhacks\n\t// @see http://browserhacks.com/#hack-e71d8692f65334173fee715c222cb805\n\t// Tests for existence of standard globals is to allow style-loader\n\t// to operate correctly into non-standard environments\n\t// @see https://github.com/webpack-contrib/style-loader/issues/177\n\treturn window && document && document.all && !window.atob;\n});\n\nvar getElement = (function (fn) {\n\tvar memo = {};\n\n\treturn function(selector) {\n\t\tif (typeof memo[selector] === \"undefined\") {\n\t\t\tmemo[selector] = fn.call(this, selector);\n\t\t}\n\n\t\treturn memo[selector]\n\t};\n})(function (target) {\n\treturn document.querySelector(target)\n});\n\nvar singleton = null;\nvar\tsingletonCounter = 0;\nvar\tstylesInsertedAtTop = [];\n\nvar\tfixUrls = __webpack_require__(17);\n\nmodule.exports = function(list, options) {\n\tif (typeof DEBUG !== \"undefined\" && DEBUG) {\n\t\tif (typeof document !== \"object\") throw new Error(\"The style-loader cannot be used in a non-browser environment\");\n\t}\n\n\toptions = options || {};\n\n\toptions.attrs = typeof options.attrs === \"object\" ? options.attrs : {};\n\n\t// Force single-tag solution on IE6-9, which has a hard limit on the # of