From 0637903b386eeeae07f3482582fd18dd98a56f68 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Collonval?= Date: Fri, 12 Nov 2021 13:50:35 +0100 Subject: [PATCH 01/48] First stand-alone app --- .gitignore | 123 +- lab/lerna.json | 5 + lab/package.json | 12 + lab/packages/presentation/data/data.json | 97 + lab/packages/presentation/index.css | 26 + lab/packages/presentation/jupyter.png | Bin 0 -> 7667 bytes lab/packages/presentation/main.py | 102 + lab/packages/presentation/package.json | 43 + lab/packages/presentation/src/index.ts | 207 + .../presentation/src/rise-reveal.d.ts | 1 + .../presentation/templates/error.html | 59 + .../presentation/templates/index.html | 31 + lab/packages/presentation/test.ipynb | 86 + lab/packages/presentation/tsconfig.json | 25 + lab/packages/presentation/webpack.config.js | 48 + lab/yarn.lock | 8719 +++++++++++++++++ 16 files changed, 9575 insertions(+), 9 deletions(-) create mode 100644 lab/lerna.json create mode 100644 lab/package.json create mode 100644 lab/packages/presentation/data/data.json create mode 100644 lab/packages/presentation/index.css create mode 100644 lab/packages/presentation/jupyter.png create mode 100644 lab/packages/presentation/main.py create mode 100644 lab/packages/presentation/package.json create mode 100755 lab/packages/presentation/src/index.ts create mode 100644 lab/packages/presentation/src/rise-reveal.d.ts create mode 100644 lab/packages/presentation/templates/error.html create mode 100644 lab/packages/presentation/templates/index.html create mode 100644 lab/packages/presentation/test.ipynb create mode 100644 lab/packages/presentation/tsconfig.json create mode 100644 lab/packages/presentation/webpack.config.js create mode 100644 lab/yarn.lock diff --git a/.gitignore b/.gitignore index ef7cf104..74cec46a 100644 --- a/.gitignore +++ b/.gitignore @@ -1,11 +1,116 @@ -classic/rise/static/main.css -classic/rise/static/reveal.js/ -classic/rise/static/reveal.js-chalkboard/ -classic/build/ -classic/dist/ -classic/rise.egg-info/ -classic/rise/__pycache__/ +classic/rise/static/ rise-reveal/export/ doc/_build/ -.ipynb_checkpoints/ -node_modules +lab/packages/extension/rise_jupyterlab/labextension + +*.bundle.* +lib/ +node_modules/ +*.egg-info/ +.ipynb_checkpoints +*.tsbuildinfo + +# Created by https://www.gitignore.io/api/python +# Edit at https://www.gitignore.io/?templates=python + +### Python ### +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] +*$py.class + +# C extensions +*.so + +# Distribution / packaging +.Python +build/ +develop-eggs/ +dist/ +downloads/ +eggs/ +.eggs/ +lib/ +lib64/ +parts/ +sdist/ +var/ +wheels/ +pip-wheel-metadata/ +share/python-wheels/ +.installed.cfg +*.egg +MANIFEST + +# PyInstaller +# Usually these files are written by a python script from a template +# before PyInstaller builds the exe, so as to inject date/other infos into it. +*.manifest +*.spec + +# Installer logs +pip-log.txt +pip-delete-this-directory.txt + +# Unit test / coverage reports +htmlcov/ +.tox/ +.nox/ +.coverage +.coverage.* +.cache +nosetests.xml +coverage.xml +*.cover +.hypothesis/ +.pytest_cache/ + +# Translations +*.mo +*.pot + +# Scrapy stuff: +.scrapy + +# Sphinx documentation +docs/_build/ + +# PyBuilder +target/ + +# pyenv +.python-version + +# celery beat schedule file +celerybeat-schedule + +# SageMath parsed files +*.sage.py + +# Spyder project settings +.spyderproject +.spyproject + +# Rope project settings +.ropeproject + +# Mr Developer +.mr.developer.cfg +.project +.pydevproject + +# mkdocs documentation +/site + +# mypy +.mypy_cache/ +.dmypy.json +dmypy.json + +# Pyre type checker +.pyre/ + +# End of https://www.gitignore.io/api/python + +# OSX files +.DS_Store diff --git a/lab/lerna.json b/lab/lerna.json new file mode 100644 index 00000000..352f7710 --- /dev/null +++ b/lab/lerna.json @@ -0,0 +1,5 @@ +{ + "version": "0.0.0", + "npmClient": "yarn", + "useWorkspaces": true +} diff --git a/lab/package.json b/lab/package.json new file mode 100644 index 00000000..123284f2 --- /dev/null +++ b/lab/package.json @@ -0,0 +1,12 @@ +{ + "name": "rise-jupyterlab-metapackage", + "private": true, + "workspaces": { + "packages": [ + "packages/*" + ] + }, + "devDependencies": { + "lerna": "^4.0.0" + } +} diff --git a/lab/packages/presentation/data/data.json b/lab/packages/presentation/data/data.json new file mode 100644 index 00000000..24b71c35 --- /dev/null +++ b/lab/packages/presentation/data/data.json @@ -0,0 +1,97 @@ +{ + "name": "Untitled.ipynb", + "path": "Untitled.ipynb", + "last_modified": "2015-12-12T03:41:13+00:00", + "format": "json", + "content": { + "nbformat_minor": 0, + "nbformat": 4, + "metadata": { + "kernelspec": { + "name": "python3", + "display_name": "Python 3", + "language": "python" + }, + "language_info": { + "name": "python", + "codemirror_mode": { "name": "ipython", "version": 3 }, + "version": "3.5.1", + "nbconvert_exporter": "python", + "mimetype": "text/x-python", + "file_extension": ".py", + "pygments_lexer": "ipython3" + } + }, + "cells": [ + { + "cell_type": "markdown", + "source": "# Test notebook\n\nThis is a **markdown** *cell*.", + "metadata": {} + }, + { + "cell_type": "code", + "source": "import time\nimport sys\nfor i in range(5):\n print(5-i)\n time.sleep(1)\nprint('all systems go', file=sys.stderr, flush=True)\nprint('blast off!')", + "execution_count": 34, + "metadata": { "scrolled": true, "collapsed": false, "trusted": true }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": "5\n4\n3\n2\n1" + }, + { + "name": "stderr", + "output_type": "stream", + "text": "all systems go\n" + }, + { + "name": "stdout", + "output_type": "stream", + "text": "\nblast off!\n" + } + ] + }, + { + "cell_type": "code", + "source": "# from http://matplotlib.org/1.2.1/examples/pylab_examples/shading_example.html\n%matplotlib inline\nimport numpy as np\nimport matplotlib.pyplot as plt\nfrom matplotlib.colors import LightSource\n\n# test data\nX,Y=np.mgrid[-5:5:0.05,-5:5:0.05]\nZ=np.sqrt(X**2+Y**2)+np.sin(X**2+Y**2)\n# create light source object.\nls = LightSource(azdeg=0,altdeg=65)\n# shade data, creating an rgb array.\nrgb = ls.shade(Z, plt.cm.copper)\nplt.figure(figsize=(12,5))\nplt.imshow(rgb)\nplt.title('imshow with shading')\nplt.xticks([]); plt.yticks([])\nplt.show()", + "execution_count": 23, + "metadata": { "collapsed": false, "trusted": true }, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": "" + }, + "output_type": "display_data", + "metadata": {} + } + ] + }, + { + "cell_type": "markdown", + "source": "## That was a cool image!", + "metadata": {} + }, + { + "cell_type": "code", + "source": "this should be a syntax error", + "execution_count": 8, + "metadata": { "scrolled": true, "collapsed": false, "trusted": true }, + "outputs": [ + { + "evalue": "invalid syntax (, line 1)", + "ename": "SyntaxError", + "output_type": "error", + "traceback": [ + "\u001b[0;36m File \u001b[0;32m\"\"\u001b[0;36m, line \u001b[0;32m1\u001b[0m\n\u001b[0;31m this should be a syntax error\u001b[0m\n\u001b[0m ^\u001b[0m\n\u001b[0;31mSyntaxError\u001b[0m\u001b[0;31m:\u001b[0m invalid syntax\n" + ] + } + ] + } + ] + }, + "mimetype": null, + "type": "notebook", + "created": "2015-12-12T03:41:13+00:00", + "writable": true +} diff --git a/lab/packages/presentation/index.css b/lab/packages/presentation/index.css new file mode 100644 index 00000000..d709d139 --- /dev/null +++ b/lab/packages/presentation/index.css @@ -0,0 +1,26 @@ +/*----------------------------------------------------------------------------- +| Copyright (c) Jupyter Development Team. +| Distributed under the terms of the Modified BSD License. +|----------------------------------------------------------------------------*/ + +body { + background: white; + margin: 0; + padding: 0; +} + +#main { + position: absolute; + top: 4px; + left: 4px; + right: 4px; + bottom: 4px; +} + +.jp-NotebookPanel { + border-bottom: 1px solid #e0e0e0; +} + +.notebookCommandPalette { + min-width: 225px; +} diff --git a/lab/packages/presentation/jupyter.png b/lab/packages/presentation/jupyter.png new file mode 100644 index 0000000000000000000000000000000000000000..25ca0f7b5043f0e2cc0bfb1433791ac7320fb0db GIT binary patch literal 7667 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 aAT00|q(vk=U#a$IY+Gx)oh6puG5-g%RDP%c literal 0 HcmV?d00001 diff --git a/lab/packages/presentation/main.py b/lab/packages/presentation/main.py new file mode 100644 index 00000000..18decff5 --- /dev/null +++ b/lab/packages/presentation/main.py @@ -0,0 +1,102 @@ +""" +An example demonstrating a stand-alone "notebook". + +Copyright (c) Jupyter Development Team. +Distributed under the terms of the Modified BSD License. + +Example +------- + +To run the example, see the instructions in the README to build it. Then +run ``python main.py``. + +""" +import os +import json + +from jupyterlab_server import LabServerApp +from jupyter_server.base.handlers import JupyterHandler +from jupyter_server.extension.handler import ExtensionHandlerMixin, ExtensionHandlerJinjaMixin +from jupyter_server.utils import url_path_join as ujoin + +HERE = os.path.dirname(__file__) + +with open(os.path.join(HERE, 'package.json')) as fid: + version = json.load(fid)['version'] + +def _jupyter_server_extension_points(): + return [ + { + 'module': __name__, + 'app': ExampleApp + } + ] + +class ExampleHandler( + ExtensionHandlerJinjaMixin, + ExtensionHandlerMixin, + JupyterHandler + ): + """ + Serve a notebook file from the filesystem in the notebook interface + """ + + def get(self): + """Get the main page for the application's interface.""" + # Options set here can be read with PageConfig.getOption + mathjax_config = self.settings.get('mathjax_config', + 'TeX-AMS_HTML-full,Safe') + mathjax_url = self.settings.get('mathjax_url', 'https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js') + + config_data = { + # Use camelCase here, since that's what the lab components expect + 'baseUrl': self.base_url, + 'token': self.settings['token'], + 'notebookPath': 'test.ipynb', + 'fullStaticUrl': ujoin(self.base_url, 'static', self.name), + 'frontendUrl': ujoin(self.base_url, 'example/'), + 'mathjaxUrl': mathjax_url, + 'mathjaxConfig': mathjax_config + } + return self.write( + self.render_template( + 'index.html', + static=self.static_url, + base_url=self.base_url, + token=self.settings['token'], + page_config=config_data + ) + ) + + +class ExampleApp(LabServerApp): + + extension_url = '/example' + default_url = '/example' + app_url = "/example" + name = __name__ + app_name = 'JupyterLab Example Notebook' + app_settings_dir = os.path.join(HERE, 'build', 'application_settings') + schemas_dir = os.path.join(HERE, 'build', 'schemas') + static_dir = os.path.join(HERE, 'build') + templates_dir = os.path.join(HERE, 'templates') + themes_dir = os.path.join(HERE, 'build', 'themes') + user_settings_dir = os.path.join(HERE, 'build', 'user_settings') + workspaces_dir = os.path.join(HERE, 'build', 'workspaces') + + serverapp_config = { + "jpserver_extensions": { + "nbclassic": True + } + } + + def initialize_handlers(self): + """Add example handler to Lab Server's handler list. + """ + self.handlers.append( + ('/example', ExampleHandler) + ) + + +if __name__ == '__main__': + ExampleApp.launch_instance() diff --git a/lab/packages/presentation/package.json b/lab/packages/presentation/package.json new file mode 100644 index 00000000..f8111832 --- /dev/null +++ b/lab/packages/presentation/package.json @@ -0,0 +1,43 @@ +{ + "name": "rise-app", + "version": "0.1.0", + "private": true, + "scripts": { + "build": "tsc && webpack", + "clean": "rimraf build lib" + }, + "dependencies": { + "@jupyterlab/application": "^3.0.0", + "@jupyterlab/apputils": "^3.0.0", + "@jupyterlab/codemirror": "^3.0.0", + "@jupyterlab/coreutils": "^5.0.0", + "@jupyterlab/docmanager": "^3.0.0", + "@jupyterlab/docregistry": "^3.0.0", + "@jupyterlab/mathjax2": "^3.0.0", + "@jupyterlab/notebook": "^3.0.0", + "@jupyterlab/rendermime": "^3.0.0", + "@jupyterlab/services": "^6.0.0", + "@jupyterlab/theme-light-extension": "^3.0.0", + "@lumino/commands": "^1.17.0", + "@lumino/widgets": "^1.28.0", + "es6-promise": "~4.2.8", + "rise-reveal": "file:../../../rise-reveal/export/reveal.js" + }, + "devDependencies": { + "@types/codemirror": "^0.0.109", + "@types/reveal": "^3.0.0", + "css-loader": "^5.0.1", + "file-loader": "~6.0.0", + "mini-css-extract-plugin": "~1.3.2", + "raw-loader": "~4.0.0", + "rimraf": "~3.0.0", + "style-loader": "~2.0.0", + "svg-url-loader": "~6.0.0", + "typescript": "~4.1.3", + "url-loader": "~4.1.0", + "watch": "~1.0.2", + "webpack": "^5.55.1", + "webpack-cli": "^4.8.0", + "whatwg-fetch": "^3.0.0" + } +} diff --git a/lab/packages/presentation/src/index.ts b/lab/packages/presentation/src/index.ts new file mode 100755 index 00000000..d729b35f --- /dev/null +++ b/lab/packages/presentation/src/index.ts @@ -0,0 +1,207 @@ +// Copyright (c) Jupyter Development Team. +// Distributed under the terms of the Modified BSD License. + +import { IChangedArgs, PageConfig, URLExt } from "@jupyterlab/coreutils"; +(window as any).__webpack_public_path__ = URLExt.join( + PageConfig.getBaseUrl(), + "example/" +); +// TODO quid extension... +// import "@jupyterlab/application/style/index.css"; +// import "@jupyterlab/codemirror/style/index.css"; +import "@jupyterlab/notebook/style/index.css"; +import "@jupyterlab/theme-light-extension/style/theme.css"; +import "rise-reveal/css/reveal.css"; +import "rise-reveal/css/theme/simple.css"; +// require('../style/rise.css'); +import "../index.css"; + +import Reveal from "rise-reveal"; + +import { CommandRegistry } from "@lumino/commands"; + +import { SplitPanel, Widget } from "@lumino/widgets"; + +import { ServiceManager } from "@jupyterlab/services"; +import { MathJaxTypesetter } from "@jupyterlab/mathjax2"; + +import { + INotebookModel, + NotebookModelFactory, + NotebookPanel, + NotebookWidgetFactory, +} from "@jupyterlab/notebook"; + +import { editorServices } from "@jupyterlab/codemirror"; + +import { DocumentManager } from "@jupyterlab/docmanager"; + +import { DocumentRegistry } from "@jupyterlab/docregistry"; + +import { + standardRendererFactories as initialFactories, + RenderMimeRegistry, +} from "@jupyterlab/rendermime"; + +function main(): void { + const manager = new ServiceManager(); + void manager.ready.then(() => { + createApp(manager); + }); +} + +function startReveal(panel: NotebookPanel): void { + function get_slide_type(cell: any) { + let slideshow = cell.metadata.get("slideshow") || {}; + let slide_type = (slideshow as any)["slide_type"]; + //console.log(slide_type); + return slide_type === undefined || slide_type == "-" ? "" : slide_type; + } + + // function is_slide(cell: any) {return get_slide_type(cell) == 'slide';} + // function is_subslide(cell: any) {return get_slide_type(cell) == 'subslide';} + // function is_fragment(cell: any) {return get_slide_type(cell) == 'fragment';} + // function is_regular(cell: any) {return get_slide_type(cell) == ''; + + function markupSlides(container: any) { + let slide_section; + let slide_counter = 0; + let cells = container.model.cells; + + for (let i = 0; i < cells.length; i++) { + let cell = cells.get(i); + let slide_type = get_slide_type(cell); + + let cell_node = container.node.children[slide_counter]; + let prev_slide_section = slide_section; + + if (slide_type === "slide") { + // Start new slide + slide_section = document.createElement("section"); + slide_section.appendChild(cell_node); + if (i === 0) { + container.node.insertBefore(slide_section, container.node.firstChild); + } else { + container.node.insertBefore( + slide_section, + prev_slide_section?.nextSibling + ); + } + slide_counter++; + console.log("Sep slide", i); + } else { + slide_section?.appendChild(cell_node); + console.log("Nop slide", i); + } + console.log(container.node); + } + } + + let notebook = panel.content; + markupSlides(notebook); + + let panel_container = document.getElementsByClassName("jp-NotebookPanel")[0]; + panel_container.classList.add("reveal"); + //console.log("panel_container"); + + let notebook_container = document.getElementsByClassName("jp-Notebook")[0]; + notebook_container.classList.add("slides"); + //console.log("notebook_container"); + + Reveal.initialize({ + controls: true, + progress: true, + history: true, + center: true, + + transition: "slide", // none/fade/slide/convex/concave/zoom + //make codemirror works as expected + minScale: 1.0, + maxScale: 1.0, + }); +} + +function createApp(manager: ServiceManager.IManager): void { + // Initialize the command registry with the bindings. + const commands = new CommandRegistry(); + const useCapture = true; + + // Setup the keydown listener for the document. + document.addEventListener( + "keydown", + (event) => { + commands.processKeydownEvent(event); + }, + useCapture + ); + + const rendermime = new RenderMimeRegistry({ + initialFactories: initialFactories, + latexTypesetter: new MathJaxTypesetter({ + url: PageConfig.getOption("mathjaxUrl"), + config: PageConfig.getOption("mathjaxConfig"), + }), + }); + + const opener = { + open: (widget: Widget) => { + // Do nothing for sibling widgets for now. + }, + }; + + const docRegistry = new DocumentRegistry(); + const docManager = new DocumentManager({ + registry: docRegistry, + manager, + opener, + }); + const mFactory = new NotebookModelFactory({}); + const editorFactory = editorServices.factoryService.newInlineEditor; + const contentFactory = new NotebookPanel.ContentFactory({ editorFactory }); + + const wFactory = new NotebookWidgetFactory({ + name: "Notebook", + modelName: "notebook", + fileTypes: ["notebook"], + defaultFor: ["notebook"], + preferKernel: true, + canStartKernel: true, + rendermime, + contentFactory, + mimeTypeService: editorServices.mimeTypeService, + toolbarFactory: () => [], + }); + docRegistry.addModelFactory(mFactory); + docRegistry.addWidgetFactory(wFactory); + + const notebookPath = PageConfig.getOption("notebookPath"); + const nbWidget = docManager.open(notebookPath) as NotebookPanel; + + const panel = new SplitPanel(); + panel.id = "main"; + panel.orientation = "horizontal"; + panel.spacing = 0; + SplitPanel.setStretch(nbWidget, 1); + panel.addWidget(nbWidget); + + // Attach the panel to the DOM. + Widget.attach(panel, document.body); + + function initializeReveal( + _: INotebookModel, + change: IChangedArgs + ) { + if (change.name === "dirty" && change.newValue === false) { + nbWidget.model?.stateChanged.disconnect(initializeReveal, this); + startReveal(nbWidget); + } + } + nbWidget.model?.stateChanged.connect(initializeReveal, this); + + // Handle resize events. + window.addEventListener("resize", () => { + panel.update(); + }); +} + +window.addEventListener("load", main); diff --git a/lab/packages/presentation/src/rise-reveal.d.ts b/lab/packages/presentation/src/rise-reveal.d.ts new file mode 100644 index 00000000..4be18e64 --- /dev/null +++ b/lab/packages/presentation/src/rise-reveal.d.ts @@ -0,0 +1 @@ +declare module "rise-reveal"; diff --git a/lab/packages/presentation/templates/error.html b/lab/packages/presentation/templates/error.html new file mode 100644 index 00000000..895abe80 --- /dev/null +++ b/lab/packages/presentation/templates/error.html @@ -0,0 +1,59 @@ + + + + + + + + {% block title %}{{page_title | e}}{% endblock %} + + {% block favicon %}{% endblock %} + + + + + +{% block stylesheet %} + +{% endblock %} +{% block site %} + +
+ {% block h1_error %} +

{{status_code | e}} : {{status_message | e}}

+ {% endblock h1_error %} + {% block error_detail %} + {% if message %} +

The error was:

+
+
{{message | e}}
+
+ {% endif %} + {% endblock %} + + +{% endblock %} + +{% block script %} + +{% endblock script %} + + + + diff --git a/lab/packages/presentation/templates/index.html b/lab/packages/presentation/templates/index.html new file mode 100644 index 00000000..ed2bdc70 --- /dev/null +++ b/lab/packages/presentation/templates/index.html @@ -0,0 +1,31 @@ + + + + {{page_config['appName'] | e}} + + + + {# Copy so we do not modify the page_config with updates. #} + {% set page_config_full = page_config.copy() %} + + {# Set a dummy variable - we just want the side effect of the update. #} + {% set _ = page_config_full.update(baseUrl=base_url, wsUrl=ws_url) %} + + + + + + + + diff --git a/lab/packages/presentation/test.ipynb b/lab/packages/presentation/test.ipynb new file mode 100644 index 00000000..d9f0a9a7 --- /dev/null +++ b/lab/packages/presentation/test.ipynb @@ -0,0 +1,86 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "# RISE-jupyterlab (prototype!!!) in JupyterLab 2.2.9!" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "I am a WIP PoC again!\n" + ] + } + ], + "source": [ + "print(\"I am a WIP PoC again!\")" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "# Let's ride the wave..." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "![commits](commits.png)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Thank you!" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.7" + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} diff --git a/lab/packages/presentation/tsconfig.json b/lab/packages/presentation/tsconfig.json new file mode 100644 index 00000000..975837d3 --- /dev/null +++ b/lab/packages/presentation/tsconfig.json @@ -0,0 +1,25 @@ +{ + "$schema": "http://json.schemastore.org/tsconfig", + "compilerOptions": { + "allowSyntheticDefaultImports": true, + "composite": true, + "declaration": true, + "esModuleInterop": true, + "incremental": true, + "jsx": "react", + "module": "esnext", + "moduleResolution": "node", + "noEmitOnError": true, + "noImplicitAny": true, + "noUnusedLocals": true, + "preserveWatchOutput": true, + "resolveJsonModule": true, + "sourceMap": true, + "strictNullChecks": true, + "target": "es2017", + "types": [], + "outDir": "lib", + "rootDir": "src" + }, + "include": ["src/*"] +} diff --git a/lab/packages/presentation/webpack.config.js b/lab/packages/presentation/webpack.config.js new file mode 100644 index 00000000..e0f1e7d8 --- /dev/null +++ b/lab/packages/presentation/webpack.config.js @@ -0,0 +1,48 @@ +const webpack = require('webpack'); + +module.exports = { + entry: ['whatwg-fetch', './lib/index.js'], + output: { + path: __dirname + '/build', + filename: 'bundle.js' + }, + bail: true, + devtool: 'cheap-source-map', + mode: 'development', + module: { + rules: [ + { test: /\.css$/, use: ['style-loader', 'css-loader'] }, + { test: /\.html$/, use: 'file-loader' }, + { test: /\.md$/, use: 'raw-loader' }, + { test: /\.js.map$/, use: 'file-loader' }, + { + // In .css files, svg is loaded as a data URI. + test: /\.svg(\?v=\d+\.\d+\.\d+)?$/, + issuer: /\.css$/, + use: { + loader: 'svg-url-loader', + options: { encoding: 'none', limit: 10000 } + } + }, + { + // In .ts and .tsx files (both of which compile to .js), svg files + // must be loaded as a raw string instead of data URIs. + test: /\.svg(\?v=\d+\.\d+\.\d+)?$/, + issuer: /\.js$/, + use: { + loader: 'raw-loader' + } + }, + { + test: /\.(png|jpg|gif|ttf|woff|woff2|eot)(\?v=[0-9]\.[0-9]\.[0-9])?$/, + use: [{ loader: 'url-loader', options: { limit: 10000 } }] + } + ] + }, + plugins: [ + new webpack.DefinePlugin({ + // Needed for various packages using cwd(), like the path polyfill + process: { cwd: () => '/', env: {} } + }) + ] +}; diff --git a/lab/yarn.lock b/lab/yarn.lock new file mode 100644 index 00000000..65442792 --- /dev/null +++ b/lab/yarn.lock @@ -0,0 +1,8719 @@ +# THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. +# yarn lockfile v1 + + +"@babel/code-frame@7.12.11": + version "7.12.11" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.12.11.tgz#f4ad435aa263db935b8f10f2c552d23fb716a63f" + integrity sha512-Zt1yodBx1UcyiePMSkWnU4hPqhwq7hGi2nFL1LeA3EUl+q2LQx16MISgJ0+z7dnmgvP9QtIleuETGOiOH1RcIw== + dependencies: + "@babel/highlight" "^7.10.4" + +"@babel/code-frame@^7.0.0": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.16.0.tgz#0dfc80309beec8411e65e706461c408b0bb9b431" + integrity sha512-IF4EOMEV+bfYwOmNxGzSnjR2EmQod7f1UXOpZM3l4i4o4QNwzjtJAu/HxdjHq0aYBvdqMuQEY1eg0nqW9ZPORA== + dependencies: + "@babel/highlight" "^7.16.0" + +"@babel/helper-validator-identifier@^7.15.7": + version "7.15.7" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.15.7.tgz#220df993bfe904a4a6b02ab4f3385a5ebf6e2389" + integrity sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w== + +"@babel/highlight@^7.10.4", "@babel/highlight@^7.16.0": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.16.0.tgz#6ceb32b2ca4b8f5f361fb7fd821e3fddf4a1725a" + integrity sha512-t8MH41kUQylBtu2+4IQA3atqevA2lRgqA2wyVB/YiWmsDSuylZZuXOUy9ric30hfzauEFfdsuk/eXTRrGrfd0g== + dependencies: + "@babel/helper-validator-identifier" "^7.15.7" + chalk "^2.0.0" + js-tokens "^4.0.0" + +"@babel/runtime@^7.1.2": + version "7.16.3" + resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.16.3.tgz#b86f0db02a04187a3c17caa77de69840165d42d5" + integrity sha512-WBwekcqacdY2e9AF/Q7WLFUWmdJGJTkbjqTjoMDgXkVZ3ZRUvOPsLb5KdwISoQVsbP+DQzVZW4Zhci0DvpbNTQ== + dependencies: + regenerator-runtime "^0.13.4" + +"@blueprintjs/colors@^4.0.0-alpha.1": + version "4.0.0-alpha.1" + resolved "https://registry.yarnpkg.com/@blueprintjs/colors/-/colors-4.0.0-alpha.1.tgz#370684b404e5400494169c54cc3a31385fc6db6a" + integrity sha512-i95xW/cAIijJAMIBDrXw1WLbGVXVaRDRG1Ga0CxOtMVwL20zvdXlQj7EMqhkgVEJo9LaKNIDliPI+jsh7h5Lag== + +"@blueprintjs/core@^3.36.0", "@blueprintjs/core@^3.51.3": + version "3.51.3" + resolved "https://registry.yarnpkg.com/@blueprintjs/core/-/core-3.51.3.tgz#d74dd9ac299c0d8f635f04a81c8bda7ef534f069" + integrity sha512-Z3xGWBMBuboKFx19uxWNAUjITsCmpm+594R/KEAM578uT6yoydT6s5S7N12APAsFe8w3H1Yu2hbWHlHTvRfOhA== + dependencies: + "@blueprintjs/colors" "^4.0.0-alpha.1" + "@blueprintjs/icons" "^3.31.0" + "@types/dom4" "^2.0.1" + classnames "^2.2" + dom4 "^2.1.5" + normalize.css "^8.0.1" + popper.js "^1.16.1" + react-lifecycles-compat "^3.0.4" + react-popper "^1.3.7" + react-transition-group "^2.9.0" + resize-observer-polyfill "^1.5.1" + tslib "~1.13.0" + +"@blueprintjs/icons@^3.31.0": + version "3.31.0" + resolved "https://registry.yarnpkg.com/@blueprintjs/icons/-/icons-3.31.0.tgz#9b3075a45e93dacaf4363390e9985263d2999c6e" + integrity sha512-6pXhHC8zEvoDKN5KNsIHNuCRKsemmRbXNv1jweB95VaFzR1M+Mik+Qi+13Wd+VtZrzes2ZcWttIeyuK91NoLCw== + dependencies: + classnames "^2.2" + tslib "~1.13.0" + +"@blueprintjs/select@^3.15.0": + version "3.18.10" + resolved "https://registry.yarnpkg.com/@blueprintjs/select/-/select-3.18.10.tgz#6f71a070da17e478701a0417f138e4b18e051b1f" + integrity sha512-0G3ZHTGi+FJeXdE7nn5UPxZyEWgRR/jE+LckHiq9Aqmh62JweLUDwMmofBP9o72k+zvMVtTyn78QLAxfHJN5Xw== + dependencies: + "@blueprintjs/core" "^3.51.3" + classnames "^2.2" + tslib "~1.13.0" + +"@discoveryjs/json-ext@^0.5.0": + version "0.5.5" + resolved "https://registry.yarnpkg.com/@discoveryjs/json-ext/-/json-ext-0.5.5.tgz#9283c9ce5b289a3c4f61c12757469e59377f81f3" + integrity sha512-6nFkfkmSeV/rqSaS4oWHgmpnYw194f6hmWF5is6b0J1naJZoiD0NTc9AiUwPHvWsowkjuHErCZT1wa0jg+BLIA== + +"@eslint/eslintrc@^0.4.3": + version "0.4.3" + resolved "https://registry.yarnpkg.com/@eslint/eslintrc/-/eslintrc-0.4.3.tgz#9e42981ef035beb3dd49add17acb96e8ff6f394c" + integrity sha512-J6KFFz5QCYUJq3pf0mjEcCJVERbzv71PUIDczuh9JkwGEzced6CO5ADLHB1rbf/+oPBtoPfMYNOpGDzCANlbXw== + dependencies: + ajv "^6.12.4" + debug "^4.1.1" + espree "^7.3.0" + globals "^13.9.0" + ignore "^4.0.6" + import-fresh "^3.2.1" + js-yaml "^3.13.1" + minimatch "^3.0.4" + strip-json-comments "^3.1.1" + +"@fortawesome/fontawesome-free@^5.12.0": + version "5.15.4" + resolved "https://registry.yarnpkg.com/@fortawesome/fontawesome-free/-/fontawesome-free-5.15.4.tgz#ecda5712b61ac852c760d8b3c79c96adca5554e5" + integrity sha512-eYm8vijH/hpzr/6/1CJ/V/Eb1xQFW2nnUKArb3z+yUWv7HTwj6M7SP957oMjfZjAHU6qpoNc2wQvIxBLWYa/Jg== + +"@gar/promisify@^1.0.1": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@gar/promisify/-/promisify-1.1.2.tgz#30aa825f11d438671d585bd44e7fd564535fc210" + integrity sha512-82cpyJyKRoQoRi+14ibCeGPu0CwypgtBAdBhq1WfvagpCZNKqwXbKwXllYSMG91DhmG4jt9gN8eP6lGOtozuaw== + +"@humanwhocodes/config-array@^0.5.0": + version "0.5.0" + resolved "https://registry.yarnpkg.com/@humanwhocodes/config-array/-/config-array-0.5.0.tgz#1407967d4c6eecd7388f83acf1eaf4d0c6e58ef9" + integrity sha512-FagtKFz74XrTl7y6HCzQpwDfXP0yhxe9lHLD1UZxjvZIcbyRz8zTFF/yYNfSfzU414eDwZ1SrO0Qvtyf+wFMQg== + dependencies: + "@humanwhocodes/object-schema" "^1.2.0" + debug "^4.1.1" + minimatch "^3.0.4" + +"@humanwhocodes/object-schema@^1.2.0": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz#b520529ec21d8e5945a1851dfd1c32e94e39ff45" + integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA== + +"@hutson/parse-repository-url@^3.0.0": + version "3.0.2" + resolved "https://registry.yarnpkg.com/@hutson/parse-repository-url/-/parse-repository-url-3.0.2.tgz#98c23c950a3d9b6c8f0daed06da6c3af06981340" + integrity sha512-H9XAx3hc0BQHY6l+IFSWHDySypcXsvsuLhgYLUGywmJ5pswRVQJUHpOsobnLYp2ZUaUlKiKDrgWWhosOwAEM8Q== + +"@hypnosphi/create-react-context@^0.3.1": + version "0.3.1" + resolved "https://registry.yarnpkg.com/@hypnosphi/create-react-context/-/create-react-context-0.3.1.tgz#f8bfebdc7665f5d426cba3753e0e9c7d3154d7c6" + integrity sha512-V1klUed202XahrWJLLOT3EXNeCpFHCcJntdFGI15ntCwau+jfT386w7OFTMaCqOgXUH1fa0w/I1oZs+i/Rfr0A== + dependencies: + gud "^1.0.0" + warning "^4.0.3" + +"@jupyterlab/application@^3.0.0", "@jupyterlab/application@^3.1.0", "@jupyterlab/application@^3.2.3": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/application/-/application-3.2.3.tgz#5a19de7a73fbde29c6adb994068193f7e6061b3b" + integrity sha512-YcgxgRiYHOaUMbxevcUQn8QP0WN2JsCg4Q7Qtl1JOypLTsvoC66yqTzXcWsR/xtPUB4Ox0ka/EBGRHrH5aHA/g== + dependencies: + "@fortawesome/fontawesome-free" "^5.12.0" + "@jupyterlab/apputils" "^3.2.3" + "@jupyterlab/coreutils" "^5.2.3" + "@jupyterlab/docregistry" "^3.2.3" + "@jupyterlab/rendermime" "^3.2.3" + "@jupyterlab/rendermime-interfaces" "^3.2.3" + "@jupyterlab/services" "^6.2.3" + "@jupyterlab/statedb" "^3.2.3" + "@jupyterlab/translation" "^3.2.3" + "@jupyterlab/ui-components" "^3.2.3" + "@lumino/algorithm" "^1.3.3" + "@lumino/application" "^1.16.0" + "@lumino/commands" "^1.12.0" + "@lumino/coreutils" "^1.5.3" + "@lumino/disposable" "^1.4.3" + "@lumino/messaging" "^1.4.3" + "@lumino/polling" "^1.3.3" + "@lumino/properties" "^1.2.3" + "@lumino/signaling" "^1.4.3" + "@lumino/widgets" "^1.19.0" + +"@jupyterlab/apputils@^3.0.0", "@jupyterlab/apputils@^3.2.3": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/apputils/-/apputils-3.2.3.tgz#e4732ab6058d492c9dda83452c32d9e6415d370b" + integrity sha512-Mar07EgmCqS+Y1xPeAaUOZshEaLCNrIXilcBWyCGYfspvZv7W1ERGYsomy9ZMhlHmEaOcT1n4Y8T/iE6l/0gLQ== + dependencies: + "@jupyterlab/coreutils" "^5.2.3" + "@jupyterlab/services" "^6.2.3" + "@jupyterlab/settingregistry" "^3.2.3" + "@jupyterlab/statedb" "^3.2.3" + "@jupyterlab/translation" "^3.2.3" + "@jupyterlab/ui-components" "^3.2.3" + "@lumino/algorithm" "^1.3.3" + "@lumino/commands" "^1.12.0" + "@lumino/coreutils" "^1.5.3" + "@lumino/disposable" "^1.4.3" + "@lumino/domutils" "^1.2.3" + "@lumino/messaging" "^1.4.3" + "@lumino/polling" "^1.3.3" + "@lumino/properties" "^1.2.3" + "@lumino/signaling" "^1.4.3" + "@lumino/virtualdom" "^1.8.0" + "@lumino/widgets" "^1.19.0" + "@types/react" "^17.0.0" + react "^17.0.1" + react-dom "^17.0.1" + sanitize-html "~2.3.3" + url "^0.11.0" + +"@jupyterlab/attachments@^3.2.3": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/attachments/-/attachments-3.2.3.tgz#3ec896c4666f3687c9d5c46b576704ce3f60abcb" + integrity sha512-K8CyeeeppvEibZAyR0b/svZ1ZM4JA2gb6AdqpGQBXQuYlIjsq3A6qfdQkSNE6A1iR3uP8URVH/Ty4J7jmjvkGw== + dependencies: + "@jupyterlab/nbformat" "^3.2.3" + "@jupyterlab/observables" "^4.2.3" + "@jupyterlab/rendermime" "^3.2.3" + "@jupyterlab/rendermime-interfaces" "^3.2.3" + "@lumino/disposable" "^1.4.3" + "@lumino/signaling" "^1.4.3" + +"@jupyterlab/builder@^3.1.0": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/builder/-/builder-3.2.3.tgz#0f44a40de7d0142a64749019783795df7107a641" + integrity sha512-pIzNrmXLgkhKH9CH1tTxEMg6zO1RP2TAel6NVy8GPez6fLPVVpI1bKXn7uP1SjTJaEhAednwEjln+QMzR3revQ== + dependencies: + "@jupyterlab/buildutils" "^3.2.3" + "@lumino/algorithm" "^1.3.3" + "@lumino/application" "^1.16.0" + "@lumino/commands" "^1.12.0" + "@lumino/coreutils" "^1.5.3" + "@lumino/disposable" "^1.4.3" + "@lumino/domutils" "^1.2.3" + "@lumino/dragdrop" "^1.7.1" + "@lumino/messaging" "^1.4.3" + "@lumino/properties" "^1.2.3" + "@lumino/signaling" "^1.4.3" + "@lumino/virtualdom" "^1.8.0" + "@lumino/widgets" "^1.19.0" + ajv "^6.12.3" + commander "~6.0.0" + css-loader "^5.0.1" + duplicate-package-checker-webpack-plugin "^3.0.0" + file-loader "~6.0.0" + fs-extra "^9.0.1" + glob "~7.1.6" + license-webpack-plugin "^2.3.14" + mini-css-extract-plugin "~1.3.2" + path-browserify "^1.0.0" + process "^0.11.10" + raw-loader "~4.0.0" + style-loader "~2.0.0" + supports-color "^7.2.0" + svg-url-loader "~6.0.0" + terser-webpack-plugin "^4.1.0" + to-string-loader "^1.1.6" + url-loader "~4.1.0" + webpack "^5.41.1" + webpack-cli "^4.1.0" + webpack-merge "^5.1.2" + worker-loader "^3.0.2" + +"@jupyterlab/buildutils@^3.2.3": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/buildutils/-/buildutils-3.2.3.tgz#608787ee2e736b67d28e804282d088d609f0efa8" + integrity sha512-4mXEmPKsxja+1SLumcu1T9QYc+CiCQWUyjDsuGEAKBys56chnTrFERzR9XJrPXJTUnif5dzdyIIte0sptwD6Gw== + dependencies: + "@lumino/coreutils" "^1.5.3" + "@yarnpkg/lockfile" "^1.1.0" + child_process "~1.0.2" + commander "~6.0.0" + crypto "~1.0.1" + dependency-graph "^0.9.0" + fs-extra "^9.0.1" + glob "~7.1.6" + inquirer "^7.1.0" + minimatch "~3.0.4" + os "~0.1.1" + package-json "^6.5.0" + prettier "~2.1.1" + process "^0.11.10" + semver "^7.3.2" + sort-package-json "~1.44.0" + typescript "~4.1.3" + verdaccio "^5.1.1" + +"@jupyterlab/cells@^3.2.3": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/cells/-/cells-3.2.3.tgz#70e054aa95a1d740de3925451615f2901b03bdb8" + integrity sha512-cONGoXwd5TnbR1K1CWRiwquwb4Q4TPVQN9pLQSPiRxoq0ti+eRDV3g5ugChF5RUmZXRTF8ypEOtLIFVr06i5Jw== + dependencies: + "@jupyterlab/apputils" "^3.2.3" + "@jupyterlab/attachments" "^3.2.3" + "@jupyterlab/codeeditor" "^3.2.3" + "@jupyterlab/codemirror" "^3.2.3" + "@jupyterlab/coreutils" "^5.2.3" + "@jupyterlab/filebrowser" "^3.2.3" + "@jupyterlab/nbformat" "^3.2.3" + "@jupyterlab/observables" "^4.2.3" + "@jupyterlab/outputarea" "^3.2.3" + "@jupyterlab/rendermime" "^3.2.3" + "@jupyterlab/services" "^6.2.3" + "@jupyterlab/shared-models" "^3.2.3" + "@jupyterlab/ui-components" "^3.2.3" + "@lumino/algorithm" "^1.3.3" + "@lumino/coreutils" "^1.5.3" + "@lumino/domutils" "^1.2.3" + "@lumino/dragdrop" "^1.7.1" + "@lumino/messaging" "^1.4.3" + "@lumino/signaling" "^1.4.3" + "@lumino/virtualdom" "^1.8.0" + "@lumino/widgets" "^1.19.0" + marked "^2.0.0" + react "^17.0.1" + +"@jupyterlab/codeeditor@^3.2.3": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/codeeditor/-/codeeditor-3.2.3.tgz#d316685a85a10183f16177ef9d3378005bb5e496" + integrity sha512-uPN6j7emO9uv777Eh4yeNHgAMUdKViDdnoK1cw0Snhf0O2wmPbqygMsCyfZ9cmDzOGPvB7NbVbsDkXLQgzoJpQ== + dependencies: + "@jupyterlab/coreutils" "^5.2.3" + "@jupyterlab/nbformat" "^3.2.3" + "@jupyterlab/observables" "^4.2.3" + "@jupyterlab/shared-models" "^3.2.3" + "@jupyterlab/translation" "^3.2.3" + "@jupyterlab/ui-components" "^3.2.3" + "@lumino/coreutils" "^1.5.3" + "@lumino/disposable" "^1.4.3" + "@lumino/dragdrop" "^1.7.1" + "@lumino/messaging" "^1.4.3" + "@lumino/signaling" "^1.4.3" + "@lumino/widgets" "^1.19.0" + +"@jupyterlab/codemirror@^3.0.0", "@jupyterlab/codemirror@^3.2.3": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/codemirror/-/codemirror-3.2.3.tgz#ad0bcf887bfec2db1bafc80b8e459712512d10c3" + integrity sha512-PwsxhPINXOW4naMkkQrAxwB/S9kZYEa/2fKetEpGcoI9zX691gxw8Am4fjBo94JBYftw7JG6pNpVcUovm0Q7ZQ== + dependencies: + "@jupyterlab/apputils" "^3.2.3" + "@jupyterlab/codeeditor" "^3.2.3" + "@jupyterlab/coreutils" "^5.2.3" + "@jupyterlab/nbformat" "^3.2.3" + "@jupyterlab/observables" "^4.2.3" + "@jupyterlab/shared-models" "^3.2.3" + "@jupyterlab/statusbar" "^3.2.3" + "@jupyterlab/translation" "^3.2.3" + "@lumino/algorithm" "^1.3.3" + "@lumino/commands" "^1.12.0" + "@lumino/coreutils" "^1.5.3" + "@lumino/disposable" "^1.4.3" + "@lumino/polling" "^1.3.3" + "@lumino/signaling" "^1.4.3" + "@lumino/widgets" "^1.19.0" + codemirror "~5.61.0" + react "^17.0.1" + y-codemirror "^3.0.0" + +"@jupyterlab/coreutils@^5.0.0", "@jupyterlab/coreutils@^5.1.0", "@jupyterlab/coreutils@^5.2.3": + version "5.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/coreutils/-/coreutils-5.2.3.tgz#4b3e55f38d223b34140fb141acfe8884148f5f14" + integrity sha512-NoxK4r8VPX1Z/Fe9q+00tGTeY73sywSS0s0HObZCp9a7OScamnpxonHZ5ptms1XXHtr93uLgwkfROpQNFOYF3w== + dependencies: + "@lumino/coreutils" "^1.5.3" + "@lumino/disposable" "^1.4.3" + "@lumino/signaling" "^1.4.3" + minimist "~1.2.0" + moment "^2.24.0" + path-browserify "^1.0.0" + url-parse "~1.5.1" + +"@jupyterlab/docmanager@^3.0.0", "@jupyterlab/docmanager@^3.2.3": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/docmanager/-/docmanager-3.2.3.tgz#8d90313eca400d0a954487d66ed04bb50e8d3d67" + integrity sha512-uMgqjxw8XEyYEKfkrgw30qxswRPKCtjOW32JjMCr3obZo2DLbN7AVqcYeQ5DEJCzogBdsPYBcavzm35OScLi1A== + dependencies: + "@jupyterlab/apputils" "^3.2.3" + "@jupyterlab/coreutils" "^5.2.3" + "@jupyterlab/docprovider" "^3.2.3" + "@jupyterlab/docregistry" "^3.2.3" + "@jupyterlab/services" "^6.2.3" + "@jupyterlab/statusbar" "^3.2.3" + "@jupyterlab/translation" "^3.2.3" + "@lumino/algorithm" "^1.3.3" + "@lumino/coreutils" "^1.5.3" + "@lumino/disposable" "^1.4.3" + "@lumino/messaging" "^1.4.3" + "@lumino/properties" "^1.2.3" + "@lumino/signaling" "^1.4.3" + "@lumino/widgets" "^1.19.0" + react "^17.0.1" + +"@jupyterlab/docprovider@^3.2.3": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/docprovider/-/docprovider-3.2.3.tgz#94c737bdc3eeb04541513bbf8ab70b172cd59c29" + integrity sha512-cqtVuSIQL3HMM1qeoasSNKmdLYAhtSFr4kO9KaTI9I0DEfD6XeI1Y5e5tsK8bpkv0QgsYPQb8lUIgNztzG+m+w== + dependencies: + "@jupyterlab/shared-models" "^3.2.3" + "@lumino/coreutils" "^1.5.3" + lib0 "^0.2.42" + y-websocket "^1.3.15" + yjs "^13.5.17" + +"@jupyterlab/docregistry@^3.0.0", "@jupyterlab/docregistry@^3.2.3": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/docregistry/-/docregistry-3.2.3.tgz#575dbf9cc4a97293bc1d9ae60263c32c8f3e4d74" + integrity sha512-wHBetaMVGsw9+ryFDm9GyroveOsTL4HO5Entpjseqa/dDkbIjS9r3f5Q2+lONdmZaCMkBFAZmIZmR4c0bCi8qg== + dependencies: + "@jupyterlab/apputils" "^3.2.3" + "@jupyterlab/codeeditor" "^3.2.3" + "@jupyterlab/codemirror" "^3.2.3" + "@jupyterlab/coreutils" "^5.2.3" + "@jupyterlab/docprovider" "^3.2.3" + "@jupyterlab/observables" "^4.2.3" + "@jupyterlab/rendermime" "^3.2.3" + "@jupyterlab/rendermime-interfaces" "^3.2.3" + "@jupyterlab/services" "^6.2.3" + "@jupyterlab/shared-models" "^3.2.3" + "@jupyterlab/translation" "^3.2.3" + "@jupyterlab/ui-components" "^3.2.3" + "@lumino/algorithm" "^1.3.3" + "@lumino/coreutils" "^1.5.3" + "@lumino/disposable" "^1.4.3" + "@lumino/messaging" "^1.4.3" + "@lumino/signaling" "^1.4.3" + "@lumino/widgets" "^1.19.0" + yjs "^13.5.17" + +"@jupyterlab/filebrowser@^3.2.3": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/filebrowser/-/filebrowser-3.2.3.tgz#add868409a1c619eb53292749462897e93eaa155" + integrity sha512-ENKgCj9fYxfsdvFM5ilpdjVBdyyS48pCflcNhrQWlEwu1PLGhbxkMi96GBDhMBhB8RH/8DhWIVU+9gZ08BZLgw== + dependencies: + "@jupyterlab/apputils" "^3.2.3" + "@jupyterlab/coreutils" "^5.2.3" + "@jupyterlab/docmanager" "^3.2.3" + "@jupyterlab/docregistry" "^3.2.3" + "@jupyterlab/services" "^6.2.3" + "@jupyterlab/statedb" "^3.2.3" + "@jupyterlab/statusbar" "^3.2.3" + "@jupyterlab/translation" "^3.2.3" + "@jupyterlab/ui-components" "^3.2.3" + "@lumino/algorithm" "^1.3.3" + "@lumino/coreutils" "^1.5.3" + "@lumino/disposable" "^1.4.3" + "@lumino/domutils" "^1.2.3" + "@lumino/dragdrop" "^1.7.1" + "@lumino/messaging" "^1.4.3" + "@lumino/polling" "^1.3.3" + "@lumino/signaling" "^1.4.3" + "@lumino/virtualdom" "^1.8.0" + "@lumino/widgets" "^1.19.0" + react "^17.0.1" + +"@jupyterlab/mathjax2@^3.0.0": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/mathjax2/-/mathjax2-3.2.3.tgz#6bf1e2b661ea44fee97c0c2a228fbd999d08ef34" + integrity sha512-ZFiLyMK6al6KJCqm0MYSqk3TuYZ/qymEvHzhSEhx/qY7F+JBOoc/ndD71vO7UMfJYKgs52bKthQ3zNz7J0VKoA== + dependencies: + "@jupyterlab/rendermime-interfaces" "^3.2.3" + "@lumino/coreutils" "^1.5.3" + +"@jupyterlab/nbformat@^3.2.3": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/nbformat/-/nbformat-3.2.3.tgz#2721e563eaf5f0aa097e0bea15673fc2e3513e27" + integrity sha512-ywsXaeBVrEVyvyOkFhqcWlOHge1gsSrTOnF7v8c7ENcwDf1aU73Koa+RFoNom5LopJBlgu5yzHQaSCI9Jist+g== + dependencies: + "@lumino/coreutils" "^1.5.3" + +"@jupyterlab/notebook@^3.0.0": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/notebook/-/notebook-3.2.3.tgz#06f9fd64f7a6f290064734a00fd2c2ec0776bff8" + integrity sha512-n9+/q72ev3at/M/e0X22HcxQ9amCdmOmRz8aFqNTTMcJ45/om4oMlkpGoVs0z4Y3gX3OXPCQ/mfuIiPKVXmEAA== + dependencies: + "@jupyterlab/apputils" "^3.2.3" + "@jupyterlab/cells" "^3.2.3" + "@jupyterlab/codeeditor" "^3.2.3" + "@jupyterlab/coreutils" "^5.2.3" + "@jupyterlab/docregistry" "^3.2.3" + "@jupyterlab/nbformat" "^3.2.3" + "@jupyterlab/observables" "^4.2.3" + "@jupyterlab/rendermime" "^3.2.3" + "@jupyterlab/services" "^6.2.3" + "@jupyterlab/shared-models" "^3.2.3" + "@jupyterlab/statusbar" "^3.2.3" + "@jupyterlab/translation" "^3.2.3" + "@jupyterlab/ui-components" "^3.2.3" + "@lumino/algorithm" "^1.3.3" + "@lumino/coreutils" "^1.5.3" + "@lumino/domutils" "^1.2.3" + "@lumino/dragdrop" "^1.7.1" + "@lumino/messaging" "^1.4.3" + "@lumino/properties" "^1.2.3" + "@lumino/signaling" "^1.4.3" + "@lumino/virtualdom" "^1.8.0" + "@lumino/widgets" "^1.19.0" + react "^17.0.1" + +"@jupyterlab/observables@^4.2.3": + version "4.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/observables/-/observables-4.2.3.tgz#d8f66e8f8cc4d184ed578156025739830b80f85d" + integrity sha512-0zw4+KfhFXYPAGbh9WFUp5s4h7nDoDtizWYACN/LQ67BF0E7gz70QDj/1VClc1roYA7yUEPVomZfUKQZ3sFZ9g== + dependencies: + "@lumino/algorithm" "^1.3.3" + "@lumino/coreutils" "^1.5.3" + "@lumino/disposable" "^1.4.3" + "@lumino/messaging" "^1.4.3" + "@lumino/signaling" "^1.4.3" + +"@jupyterlab/outputarea@^3.2.3": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/outputarea/-/outputarea-3.2.3.tgz#1aa767bc28fceb8ca5219da0ee5971117994686b" + integrity sha512-2CSg8q9XLm/fGRaDT0tmRj/2EQxuavyjKwtK4MVTVAvYKHwc7sy8E/cURHayNtHFJjk7GMnpxUAUwWBjO2HvhA== + dependencies: + "@jupyterlab/apputils" "^3.2.3" + "@jupyterlab/nbformat" "^3.2.3" + "@jupyterlab/observables" "^4.2.3" + "@jupyterlab/rendermime" "^3.2.3" + "@jupyterlab/rendermime-interfaces" "^3.2.3" + "@jupyterlab/services" "^6.2.3" + "@lumino/algorithm" "^1.3.3" + "@lumino/coreutils" "^1.5.3" + "@lumino/disposable" "^1.4.3" + "@lumino/messaging" "^1.4.3" + "@lumino/properties" "^1.2.3" + "@lumino/signaling" "^1.4.3" + "@lumino/widgets" "^1.19.0" + resize-observer-polyfill "^1.5.1" + +"@jupyterlab/rendermime-interfaces@^3.2.3": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/rendermime-interfaces/-/rendermime-interfaces-3.2.3.tgz#311bf1461470def3a7e930298e25de7fd71c867b" + integrity sha512-NQz/0Iz+E5VlbffrmtLENXZCAMU8ihZSz4PYhQRFMEkpsrpRelHLxxG+0vSeZpWG94abSuboSs5tgIUFGPNf7A== + dependencies: + "@jupyterlab/translation" "^3.2.3" + "@lumino/coreutils" "^1.5.3" + "@lumino/widgets" "^1.19.0" + +"@jupyterlab/rendermime@^3.0.0", "@jupyterlab/rendermime@^3.2.3": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/rendermime/-/rendermime-3.2.3.tgz#6aea8d7c65248c4042081f6110fd67d885692eb1" + integrity sha512-/pciOXHkU3HyhkJT8EuRQgWa6Cc248D41KH6IqyiLQv5DHi/wYWkXXBZhiVPX/gDkT1owf5Wr3i5h/NbMfozEw== + dependencies: + "@jupyterlab/apputils" "^3.2.3" + "@jupyterlab/codemirror" "^3.2.3" + "@jupyterlab/coreutils" "^5.2.3" + "@jupyterlab/nbformat" "^3.2.3" + "@jupyterlab/observables" "^4.2.3" + "@jupyterlab/rendermime-interfaces" "^3.2.3" + "@jupyterlab/services" "^6.2.3" + "@jupyterlab/translation" "^3.2.3" + "@lumino/algorithm" "^1.3.3" + "@lumino/coreutils" "^1.5.3" + "@lumino/messaging" "^1.4.3" + "@lumino/signaling" "^1.4.3" + "@lumino/widgets" "^1.19.0" + lodash.escape "^4.0.1" + marked "^2.0.0" + +"@jupyterlab/services@^6.0.0", "@jupyterlab/services@^6.1.0", "@jupyterlab/services@^6.2.3": + version "6.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/services/-/services-6.2.3.tgz#3ed5620d3129703bfbf6151953bcb8f9db52a6a4" + integrity sha512-ckhZfBmveQzQnsGcf9Ka6A1Rr+Lj5PSzn6yHQktMdP8PXdTag4y3IIV/6MAtNAnuKrbArwUrHGiSmUtZD7lylA== + dependencies: + "@jupyterlab/coreutils" "^5.2.3" + "@jupyterlab/nbformat" "^3.2.3" + "@jupyterlab/observables" "^4.2.3" + "@jupyterlab/settingregistry" "^3.2.3" + "@jupyterlab/statedb" "^3.2.3" + "@lumino/algorithm" "^1.3.3" + "@lumino/coreutils" "^1.5.3" + "@lumino/disposable" "^1.4.3" + "@lumino/polling" "^1.3.3" + "@lumino/signaling" "^1.4.3" + node-fetch "^2.6.0" + ws "^7.4.6" + +"@jupyterlab/settingregistry@^3.2.3": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/settingregistry/-/settingregistry-3.2.3.tgz#9a256560475d46aa2089c1950c94c45becf47036" + integrity sha512-z+//IitEe82gD5ZTQkMiIb13/d0CACyW5TKdgp0A3CfK9TZuSFyVMd4j2YrWevWDVuisHU5n8fLuN57S/d9fRw== + dependencies: + "@jupyterlab/statedb" "^3.2.3" + "@lumino/commands" "^1.12.0" + "@lumino/coreutils" "^1.5.3" + "@lumino/disposable" "^1.4.3" + "@lumino/signaling" "^1.4.3" + ajv "^6.12.3" + json5 "^2.1.1" + +"@jupyterlab/shared-models@^3.2.3": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/shared-models/-/shared-models-3.2.3.tgz#a9602ef2eec8e6b7bbcafa9b98b67ac75464a4e9" + integrity sha512-nNQQeQ4d2UK0DwnUyn1IPgJ1eYRsBkoz5zj/nH+WxjscWIA8ldz295l7HGQNcXlO5tvLFTQMZ7nC1XVcko76iA== + dependencies: + "@jupyterlab/nbformat" "^3.2.3" + "@lumino/coreutils" "^1.5.3" + "@lumino/disposable" "^1.4.3" + "@lumino/signaling" "^1.4.3" + y-protocols "^1.0.5" + yjs "^13.5.17" + +"@jupyterlab/statedb@^3.2.3": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/statedb/-/statedb-3.2.3.tgz#abb1680e9af467f976c621a80c52c2ec832718a8" + integrity sha512-pQmZwgaxXLQPtN7milGedOh/4t34HkxOqhJW0GjL8lWhkxuvjWdZHrnwOclj0HScp4bXj9puMn8/MDPUx32mbg== + dependencies: + "@lumino/commands" "^1.12.0" + "@lumino/coreutils" "^1.5.3" + "@lumino/disposable" "^1.4.3" + "@lumino/properties" "^1.2.3" + "@lumino/signaling" "^1.4.3" + +"@jupyterlab/statusbar@^3.2.3": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/statusbar/-/statusbar-3.2.3.tgz#542e705cb16385017e7a927dc474933272dbc1ca" + integrity sha512-hyrVaKQ2qJiY18i+MtqU8QwWpar8CaCRXriWLoGjiqGy0V/21z72T1BJidwB/dVvCf2RcMYdM9scnNHYasT5KA== + dependencies: + "@jupyterlab/apputils" "^3.2.3" + "@jupyterlab/codeeditor" "^3.2.3" + "@jupyterlab/services" "^6.2.3" + "@jupyterlab/translation" "^3.2.3" + "@jupyterlab/ui-components" "^3.2.3" + "@lumino/algorithm" "^1.3.3" + "@lumino/coreutils" "^1.5.3" + "@lumino/disposable" "^1.4.3" + "@lumino/messaging" "^1.4.3" + "@lumino/signaling" "^1.4.3" + "@lumino/widgets" "^1.19.0" + csstype "~3.0.3" + react "^17.0.1" + typestyle "^2.0.4" + +"@jupyterlab/theme-light-extension@^3.0.0": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/theme-light-extension/-/theme-light-extension-3.2.3.tgz#44796c436e045e90b49a67b03c1a664095d4f328" + integrity sha512-qpxl+bu76ydQ+qz31GecpWOB6LFwEURmjo4i/sDuhdZ2dehBzctSpfpuJyGfhfsse5DFO/mFNwX/RkqdTlts8A== + dependencies: + "@jupyterlab/application" "^3.2.3" + "@jupyterlab/apputils" "^3.2.3" + "@jupyterlab/translation" "^3.2.3" + +"@jupyterlab/translation@^3.2.3": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/translation/-/translation-3.2.3.tgz#d50c97eb3c5dd9c4896b46158669f8fbc958d007" + integrity sha512-1pjLSbKhfAK0pZwd0iSCpMgJO4RB7wvrbpw8RC3vwhXYoRV5YTmqwIt4e3n/O1FUzG8UxD+XWeZqlBCbpAsQ3Q== + dependencies: + "@jupyterlab/coreutils" "^5.2.3" + "@jupyterlab/services" "^6.2.3" + "@jupyterlab/statedb" "^3.2.3" + "@lumino/coreutils" "^1.5.3" + +"@jupyterlab/ui-components@^3.2.3": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/ui-components/-/ui-components-3.2.3.tgz#2af6d66466dd72f4f0c2ada6b0e66cae94ffd367" + integrity sha512-DWS/kasCoWzE9tK/GJtIO3F9nZGkZOCAA+YiZwJbHqwZhHcpVP/RrzSYFQdQSOpTd2yPumprDhjID4Wcsgk6Fw== + dependencies: + "@blueprintjs/core" "^3.36.0" + "@blueprintjs/select" "^3.15.0" + "@jupyterlab/coreutils" "^5.2.3" + "@lumino/algorithm" "^1.3.3" + "@lumino/commands" "^1.12.0" + "@lumino/coreutils" "^1.5.3" + "@lumino/disposable" "^1.4.3" + "@lumino/signaling" "^1.4.3" + "@lumino/virtualdom" "^1.8.0" + "@lumino/widgets" "^1.19.0" + react "^17.0.1" + react-dom "^17.0.1" + typestyle "^2.0.4" + +"@lerna/add@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/add/-/add-4.0.0.tgz#c36f57d132502a57b9e7058d1548b7a565ef183f" + integrity sha512-cpmAH1iS3k8JBxNvnMqrGTTjbY/ZAiKa1ChJzFevMYY3eeqbvhsBKnBcxjRXtdrJ6bd3dCQM+ZtK+0i682Fhng== + dependencies: + "@lerna/bootstrap" "4.0.0" + "@lerna/command" "4.0.0" + "@lerna/filter-options" "4.0.0" + "@lerna/npm-conf" "4.0.0" + "@lerna/validation-error" "4.0.0" + dedent "^0.7.0" + npm-package-arg "^8.1.0" + p-map "^4.0.0" + pacote "^11.2.6" + semver "^7.3.4" + +"@lerna/bootstrap@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/bootstrap/-/bootstrap-4.0.0.tgz#5f5c5e2c6cfc8fcec50cb2fbe569a8c607101891" + integrity sha512-RkS7UbeM2vu+kJnHzxNRCLvoOP9yGNgkzRdy4UV2hNalD7EP41bLvRVOwRYQ7fhc2QcbhnKNdOBihYRL0LcKtw== + dependencies: + "@lerna/command" "4.0.0" + "@lerna/filter-options" "4.0.0" + "@lerna/has-npm-version" "4.0.0" + "@lerna/npm-install" "4.0.0" + "@lerna/package-graph" "4.0.0" + "@lerna/pulse-till-done" "4.0.0" + "@lerna/rimraf-dir" "4.0.0" + "@lerna/run-lifecycle" "4.0.0" + "@lerna/run-topologically" "4.0.0" + "@lerna/symlink-binary" "4.0.0" + "@lerna/symlink-dependencies" "4.0.0" + "@lerna/validation-error" "4.0.0" + dedent "^0.7.0" + get-port "^5.1.1" + multimatch "^5.0.0" + npm-package-arg "^8.1.0" + npmlog "^4.1.2" + p-map "^4.0.0" + p-map-series "^2.1.0" + p-waterfall "^2.1.1" + read-package-tree "^5.3.1" + semver "^7.3.4" + +"@lerna/changed@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/changed/-/changed-4.0.0.tgz#b9fc76cea39b9292a6cd263f03eb57af85c9270b" + integrity sha512-cD+KuPRp6qiPOD+BO6S6SN5cARspIaWSOqGBpGnYzLb4uWT8Vk4JzKyYtc8ym1DIwyoFXHosXt8+GDAgR8QrgQ== + dependencies: + "@lerna/collect-updates" "4.0.0" + "@lerna/command" "4.0.0" + "@lerna/listable" "4.0.0" + "@lerna/output" "4.0.0" + +"@lerna/check-working-tree@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/check-working-tree/-/check-working-tree-4.0.0.tgz#257e36a602c00142e76082a19358e3e1ae8dbd58" + integrity sha512-/++bxM43jYJCshBiKP5cRlCTwSJdRSxVmcDAXM+1oUewlZJVSVlnks5eO0uLxokVFvLhHlC5kHMc7gbVFPHv6Q== + dependencies: + "@lerna/collect-uncommitted" "4.0.0" + "@lerna/describe-ref" "4.0.0" + "@lerna/validation-error" "4.0.0" + +"@lerna/child-process@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/child-process/-/child-process-4.0.0.tgz#341b96a57dffbd9705646d316e231df6fa4df6e1" + integrity sha512-XtCnmCT9eyVsUUHx6y/CTBYdV9g2Cr/VxyseTWBgfIur92/YKClfEtJTbOh94jRT62hlKLqSvux/UhxXVh613Q== + dependencies: + chalk "^4.1.0" + execa "^5.0.0" + strong-log-transformer "^2.1.0" + +"@lerna/clean@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/clean/-/clean-4.0.0.tgz#8f778b6f2617aa2a936a6b5e085ae62498e57dc5" + integrity sha512-uugG2iN9k45ITx2jtd8nEOoAtca8hNlDCUM0N3lFgU/b1mEQYAPRkqr1qs4FLRl/Y50ZJ41wUz1eazS+d/0osA== + dependencies: + "@lerna/command" "4.0.0" + "@lerna/filter-options" "4.0.0" + "@lerna/prompt" "4.0.0" + "@lerna/pulse-till-done" "4.0.0" + "@lerna/rimraf-dir" "4.0.0" + p-map "^4.0.0" + p-map-series "^2.1.0" + p-waterfall "^2.1.1" + +"@lerna/cli@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/cli/-/cli-4.0.0.tgz#8eabd334558836c1664df23f19acb95e98b5bbf3" + integrity sha512-Neaw3GzFrwZiRZv2g7g6NwFjs3er1vhraIniEs0jjVLPMNC4eata0na3GfE5yibkM/9d3gZdmihhZdZ3EBdvYA== + dependencies: + "@lerna/global-options" "4.0.0" + dedent "^0.7.0" + npmlog "^4.1.2" + yargs "^16.2.0" + +"@lerna/collect-uncommitted@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/collect-uncommitted/-/collect-uncommitted-4.0.0.tgz#855cd64612969371cfc2453b90593053ff1ba779" + integrity sha512-ufSTfHZzbx69YNj7KXQ3o66V4RC76ffOjwLX0q/ab//61bObJ41n03SiQEhSlmpP+gmFbTJ3/7pTe04AHX9m/g== + dependencies: + "@lerna/child-process" "4.0.0" + chalk "^4.1.0" + npmlog "^4.1.2" + +"@lerna/collect-updates@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/collect-updates/-/collect-updates-4.0.0.tgz#8e208b1bafd98a372ff1177f7a5e288f6bea8041" + integrity sha512-bnNGpaj4zuxsEkyaCZLka9s7nMs58uZoxrRIPJ+nrmrZYp1V5rrd+7/NYTuunOhY2ug1sTBvTAxj3NZQ+JKnOw== + dependencies: + "@lerna/child-process" "4.0.0" + "@lerna/describe-ref" "4.0.0" + minimatch "^3.0.4" + npmlog "^4.1.2" + slash "^3.0.0" + +"@lerna/command@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/command/-/command-4.0.0.tgz#991c7971df8f5bf6ae6e42c808869a55361c1b98" + integrity sha512-LM9g3rt5FsPNFqIHUeRwWXLNHJ5NKzOwmVKZ8anSp4e1SPrv2HNc1V02/9QyDDZK/w+5POXH5lxZUI1CHaOK/A== + dependencies: + "@lerna/child-process" "4.0.0" + "@lerna/package-graph" "4.0.0" + "@lerna/project" "4.0.0" + "@lerna/validation-error" "4.0.0" + "@lerna/write-log-file" "4.0.0" + clone-deep "^4.0.1" + dedent "^0.7.0" + execa "^5.0.0" + is-ci "^2.0.0" + npmlog "^4.1.2" + +"@lerna/conventional-commits@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/conventional-commits/-/conventional-commits-4.0.0.tgz#660fb2c7b718cb942ead70110df61f18c6f99750" + integrity sha512-CSUQRjJHFrH8eBn7+wegZLV3OrNc0Y1FehYfYGhjLE2SIfpCL4bmfu/ViYuHh9YjwHaA+4SX6d3hR+xkeseKmw== + dependencies: + "@lerna/validation-error" "4.0.0" + conventional-changelog-angular "^5.0.12" + conventional-changelog-core "^4.2.2" + conventional-recommended-bump "^6.1.0" + fs-extra "^9.1.0" + get-stream "^6.0.0" + lodash.template "^4.5.0" + npm-package-arg "^8.1.0" + npmlog "^4.1.2" + pify "^5.0.0" + semver "^7.3.4" + +"@lerna/create-symlink@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/create-symlink/-/create-symlink-4.0.0.tgz#8c5317ce5ae89f67825443bd7651bf4121786228" + integrity sha512-I0phtKJJdafUiDwm7BBlEUOtogmu8+taxq6PtIrxZbllV9hWg59qkpuIsiFp+no7nfRVuaasNYHwNUhDAVQBig== + dependencies: + cmd-shim "^4.1.0" + fs-extra "^9.1.0" + npmlog "^4.1.2" + +"@lerna/create@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/create/-/create-4.0.0.tgz#b6947e9b5dfb6530321952998948c3e63d64d730" + integrity sha512-mVOB1niKByEUfxlbKTM1UNECWAjwUdiioIbRQZEeEabtjCL69r9rscIsjlGyhGWCfsdAG5wfq4t47nlDXdLLag== + dependencies: + "@lerna/child-process" "4.0.0" + "@lerna/command" "4.0.0" + "@lerna/npm-conf" "4.0.0" + "@lerna/validation-error" "4.0.0" + dedent "^0.7.0" + fs-extra "^9.1.0" + globby "^11.0.2" + init-package-json "^2.0.2" + npm-package-arg "^8.1.0" + p-reduce "^2.1.0" + pacote "^11.2.6" + pify "^5.0.0" + semver "^7.3.4" + slash "^3.0.0" + validate-npm-package-license "^3.0.4" + validate-npm-package-name "^3.0.0" + whatwg-url "^8.4.0" + yargs-parser "20.2.4" + +"@lerna/describe-ref@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/describe-ref/-/describe-ref-4.0.0.tgz#53c53b4ea65fdceffa072a62bfebe6772c45d9ec" + integrity sha512-eTU5+xC4C5Gcgz+Ey4Qiw9nV2B4JJbMulsYJMW8QjGcGh8zudib7Sduj6urgZXUYNyhYpRs+teci9M2J8u+UvQ== + dependencies: + "@lerna/child-process" "4.0.0" + npmlog "^4.1.2" + +"@lerna/diff@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/diff/-/diff-4.0.0.tgz#6d3071817aaa4205a07bf77cfc6e932796d48b92" + integrity sha512-jYPKprQVg41+MUMxx6cwtqsNm0Yxx9GDEwdiPLwcUTFx+/qKCEwifKNJ1oGIPBxyEHX2PFCOjkK39lHoj2qiag== + dependencies: + "@lerna/child-process" "4.0.0" + "@lerna/command" "4.0.0" + "@lerna/validation-error" "4.0.0" + npmlog "^4.1.2" + +"@lerna/exec@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/exec/-/exec-4.0.0.tgz#eb6cb95cb92d42590e9e2d628fcaf4719d4a8be6" + integrity sha512-VGXtL/b/JfY84NB98VWZpIExfhLOzy0ozm/0XaS4a2SmkAJc5CeUfrhvHxxkxiTBLkU+iVQUyYEoAT0ulQ8PCw== + dependencies: + "@lerna/child-process" "4.0.0" + "@lerna/command" "4.0.0" + "@lerna/filter-options" "4.0.0" + "@lerna/profiler" "4.0.0" + "@lerna/run-topologically" "4.0.0" + "@lerna/validation-error" "4.0.0" + p-map "^4.0.0" + +"@lerna/filter-options@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/filter-options/-/filter-options-4.0.0.tgz#ac94cc515d7fa3b47e2f7d74deddeabb1de5e9e6" + integrity sha512-vV2ANOeZhOqM0rzXnYcFFCJ/kBWy/3OA58irXih9AMTAlQLymWAK0akWybl++sUJ4HB9Hx12TOqaXbYS2NM5uw== + dependencies: + "@lerna/collect-updates" "4.0.0" + "@lerna/filter-packages" "4.0.0" + dedent "^0.7.0" + npmlog "^4.1.2" + +"@lerna/filter-packages@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/filter-packages/-/filter-packages-4.0.0.tgz#b1f70d70e1de9cdd36a4e50caa0ac501f8d012f2" + integrity sha512-+4AJIkK7iIiOaqCiVTYJxh/I9qikk4XjNQLhE3kixaqgMuHl1NQ99qXRR0OZqAWB9mh8Z1HA9bM5K1HZLBTOqA== + dependencies: + "@lerna/validation-error" "4.0.0" + multimatch "^5.0.0" + npmlog "^4.1.2" + +"@lerna/get-npm-exec-opts@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/get-npm-exec-opts/-/get-npm-exec-opts-4.0.0.tgz#dc955be94a4ae75c374ef9bce91320887d34608f" + integrity sha512-yvmkerU31CTWS2c7DvmAWmZVeclPBqI7gPVr5VATUKNWJ/zmVcU4PqbYoLu92I9Qc4gY1TuUplMNdNuZTSL7IQ== + dependencies: + npmlog "^4.1.2" + +"@lerna/get-packed@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/get-packed/-/get-packed-4.0.0.tgz#0989d61624ac1f97e393bdad2137c49cd7a37823" + integrity sha512-rfWONRsEIGyPJTxFzC8ECb3ZbsDXJbfqWYyeeQQDrJRPnEJErlltRLPLgC2QWbxFgFPsoDLeQmFHJnf0iDfd8w== + dependencies: + fs-extra "^9.1.0" + ssri "^8.0.1" + tar "^6.1.0" + +"@lerna/github-client@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/github-client/-/github-client-4.0.0.tgz#2ced67721363ef70f8e12ffafce4410918f4a8a4" + integrity sha512-2jhsldZtTKXYUBnOm23Lb0Fx8G4qfSXF9y7UpyUgWUj+YZYd+cFxSuorwQIgk5P4XXrtVhsUesIsli+BYSThiw== + dependencies: + "@lerna/child-process" "4.0.0" + "@octokit/plugin-enterprise-rest" "^6.0.1" + "@octokit/rest" "^18.1.0" + git-url-parse "^11.4.4" + npmlog "^4.1.2" + +"@lerna/gitlab-client@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/gitlab-client/-/gitlab-client-4.0.0.tgz#00dad73379c7b38951d4b4ded043504c14e2b67d" + integrity sha512-OMUpGSkeDWFf7BxGHlkbb35T7YHqVFCwBPSIR6wRsszY8PAzCYahtH3IaJzEJyUg6vmZsNl0FSr3pdA2skhxqA== + dependencies: + node-fetch "^2.6.1" + npmlog "^4.1.2" + whatwg-url "^8.4.0" + +"@lerna/global-options@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/global-options/-/global-options-4.0.0.tgz#c7d8b0de6a01d8a845e2621ea89e7f60f18c6a5f" + integrity sha512-TRMR8afAHxuYBHK7F++Ogop2a82xQjoGna1dvPOY6ltj/pEx59pdgcJfYcynYqMkFIk8bhLJJN9/ndIfX29FTQ== + +"@lerna/has-npm-version@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/has-npm-version/-/has-npm-version-4.0.0.tgz#d3fc3292c545eb28bd493b36e6237cf0279f631c" + integrity sha512-LQ3U6XFH8ZmLCsvsgq1zNDqka0Xzjq5ibVN+igAI5ccRWNaUsE/OcmsyMr50xAtNQMYMzmpw5GVLAivT2/YzCg== + dependencies: + "@lerna/child-process" "4.0.0" + semver "^7.3.4" + +"@lerna/import@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/import/-/import-4.0.0.tgz#bde656c4a451fa87ae41733ff8a8da60547c5465" + integrity sha512-FaIhd+4aiBousKNqC7TX1Uhe97eNKf5/SC7c5WZANVWtC7aBWdmswwDt3usrzCNpj6/Wwr9EtEbYROzxKH8ffg== + dependencies: + "@lerna/child-process" "4.0.0" + "@lerna/command" "4.0.0" + "@lerna/prompt" "4.0.0" + "@lerna/pulse-till-done" "4.0.0" + "@lerna/validation-error" "4.0.0" + dedent "^0.7.0" + fs-extra "^9.1.0" + p-map-series "^2.1.0" + +"@lerna/info@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/info/-/info-4.0.0.tgz#b9fb0e479d60efe1623603958a831a88b1d7f1fc" + integrity sha512-8Uboa12kaCSZEn4XRfPz5KU9XXoexSPS4oeYGj76s2UQb1O1GdnEyfjyNWoUl1KlJ2i/8nxUskpXIftoFYH0/Q== + dependencies: + "@lerna/command" "4.0.0" + "@lerna/output" "4.0.0" + envinfo "^7.7.4" + +"@lerna/init@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/init/-/init-4.0.0.tgz#dadff67e6dfb981e8ccbe0e6a310e837962f6c7a" + integrity sha512-wY6kygop0BCXupzWj5eLvTUqdR7vIAm0OgyV9WHpMYQGfs1V22jhztt8mtjCloD/O0nEe4tJhdG62XU5aYmPNQ== + dependencies: + "@lerna/child-process" "4.0.0" + "@lerna/command" "4.0.0" + fs-extra "^9.1.0" + p-map "^4.0.0" + write-json-file "^4.3.0" + +"@lerna/link@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/link/-/link-4.0.0.tgz#c3a38aabd44279d714e90f2451e31b63f0fb65ba" + integrity sha512-KlvPi7XTAcVOByfaLlOeYOfkkDcd+bejpHMCd1KcArcFTwijOwXOVi24DYomIeHvy6HsX/IUquJ4PPUJIeB4+w== + dependencies: + "@lerna/command" "4.0.0" + "@lerna/package-graph" "4.0.0" + "@lerna/symlink-dependencies" "4.0.0" + p-map "^4.0.0" + slash "^3.0.0" + +"@lerna/list@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/list/-/list-4.0.0.tgz#24b4e6995bd73f81c556793fe502b847efd9d1d7" + integrity sha512-L2B5m3P+U4Bif5PultR4TI+KtW+SArwq1i75QZ78mRYxPc0U/piau1DbLOmwrdqr99wzM49t0Dlvl6twd7GHFg== + dependencies: + "@lerna/command" "4.0.0" + "@lerna/filter-options" "4.0.0" + "@lerna/listable" "4.0.0" + "@lerna/output" "4.0.0" + +"@lerna/listable@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/listable/-/listable-4.0.0.tgz#d00d6cb4809b403f2b0374fc521a78e318b01214" + integrity sha512-/rPOSDKsOHs5/PBLINZOkRIX1joOXUXEtyUs5DHLM8q6/RP668x/1lFhw6Dx7/U+L0+tbkpGtZ1Yt0LewCLgeQ== + dependencies: + "@lerna/query-graph" "4.0.0" + chalk "^4.1.0" + columnify "^1.5.4" + +"@lerna/log-packed@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/log-packed/-/log-packed-4.0.0.tgz#95168fe2e26ac6a71e42f4be857519b77e57a09f" + integrity sha512-+dpCiWbdzgMAtpajLToy9PO713IHoE6GV/aizXycAyA07QlqnkpaBNZ8DW84gHdM1j79TWockGJo9PybVhrrZQ== + dependencies: + byte-size "^7.0.0" + columnify "^1.5.4" + has-unicode "^2.0.1" + npmlog "^4.1.2" + +"@lerna/npm-conf@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/npm-conf/-/npm-conf-4.0.0.tgz#b259fd1e1cee2bf5402b236e770140ff9ade7fd2" + integrity sha512-uS7H02yQNq3oejgjxAxqq/jhwGEE0W0ntr8vM3EfpCW1F/wZruwQw+7bleJQ9vUBjmdXST//tk8mXzr5+JXCfw== + dependencies: + config-chain "^1.1.12" + pify "^5.0.0" + +"@lerna/npm-dist-tag@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/npm-dist-tag/-/npm-dist-tag-4.0.0.tgz#d1e99b4eccd3414142f0548ad331bf2d53f3257a" + integrity sha512-F20sg28FMYTgXqEQihgoqSfwmq+Id3zT23CnOwD+XQMPSy9IzyLf1fFVH319vXIw6NF6Pgs4JZN2Qty6/CQXGw== + dependencies: + "@lerna/otplease" "4.0.0" + npm-package-arg "^8.1.0" + npm-registry-fetch "^9.0.0" + npmlog "^4.1.2" + +"@lerna/npm-install@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/npm-install/-/npm-install-4.0.0.tgz#31180be3ab3b7d1818a1a0c206aec156b7094c78" + integrity sha512-aKNxq2j3bCH3eXl3Fmu4D54s/YLL9WSwV8W7X2O25r98wzrO38AUN6AB9EtmAx+LV/SP15et7Yueg9vSaanRWg== + dependencies: + "@lerna/child-process" "4.0.0" + "@lerna/get-npm-exec-opts" "4.0.0" + fs-extra "^9.1.0" + npm-package-arg "^8.1.0" + npmlog "^4.1.2" + signal-exit "^3.0.3" + write-pkg "^4.0.0" + +"@lerna/npm-publish@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/npm-publish/-/npm-publish-4.0.0.tgz#84eb62e876fe949ae1fd62c60804423dbc2c4472" + integrity sha512-vQb7yAPRo5G5r77DRjHITc9piR9gvEKWrmfCH7wkfBnGWEqu7n8/4bFQ7lhnkujvc8RXOsYpvbMQkNfkYibD/w== + dependencies: + "@lerna/otplease" "4.0.0" + "@lerna/run-lifecycle" "4.0.0" + fs-extra "^9.1.0" + libnpmpublish "^4.0.0" + npm-package-arg "^8.1.0" + npmlog "^4.1.2" + pify "^5.0.0" + read-package-json "^3.0.0" + +"@lerna/npm-run-script@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/npm-run-script/-/npm-run-script-4.0.0.tgz#dfebf4f4601442e7c0b5214f9fb0d96c9350743b" + integrity sha512-Jmyh9/IwXJjOXqKfIgtxi0bxi1pUeKe5bD3S81tkcy+kyng/GNj9WSqD5ZggoNP2NP//s4CLDAtUYLdP7CU9rA== + dependencies: + "@lerna/child-process" "4.0.0" + "@lerna/get-npm-exec-opts" "4.0.0" + npmlog "^4.1.2" + +"@lerna/otplease@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/otplease/-/otplease-4.0.0.tgz#84972eb43448f8a1077435ba1c5e59233b725850" + integrity sha512-Sgzbqdk1GH4psNiT6hk+BhjOfIr/5KhGBk86CEfHNJTk9BK4aZYyJD4lpDbDdMjIV4g03G7pYoqHzH765T4fxw== + dependencies: + "@lerna/prompt" "4.0.0" + +"@lerna/output@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/output/-/output-4.0.0.tgz#b1d72215c0e35483e4f3e9994debc82c621851f2" + integrity sha512-Un1sHtO1AD7buDQrpnaYTi2EG6sLF+KOPEAMxeUYG5qG3khTs2Zgzq5WE3dt2N/bKh7naESt20JjIW6tBELP0w== + dependencies: + npmlog "^4.1.2" + +"@lerna/pack-directory@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/pack-directory/-/pack-directory-4.0.0.tgz#8b617db95d20792f043aaaa13a9ccc0e04cb4c74" + integrity sha512-NJrmZNmBHS+5aM+T8N6FVbaKFScVqKlQFJNY2k7nsJ/uklNKsLLl6VhTQBPwMTbf6Tf7l6bcKzpy7aePuq9UiQ== + dependencies: + "@lerna/get-packed" "4.0.0" + "@lerna/package" "4.0.0" + "@lerna/run-lifecycle" "4.0.0" + npm-packlist "^2.1.4" + npmlog "^4.1.2" + tar "^6.1.0" + temp-write "^4.0.0" + +"@lerna/package-graph@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/package-graph/-/package-graph-4.0.0.tgz#16a00253a8ac810f72041481cb46bcee8d8123dd" + integrity sha512-QED2ZCTkfXMKFoTGoccwUzjHtZMSf3UKX14A4/kYyBms9xfFsesCZ6SLI5YeySEgcul8iuIWfQFZqRw+Qrjraw== + dependencies: + "@lerna/prerelease-id-from-version" "4.0.0" + "@lerna/validation-error" "4.0.0" + npm-package-arg "^8.1.0" + npmlog "^4.1.2" + semver "^7.3.4" + +"@lerna/package@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/package/-/package-4.0.0.tgz#1b4c259c4bcff45c876ee1d591a043aacbc0d6b7" + integrity sha512-l0M/izok6FlyyitxiQKr+gZLVFnvxRQdNhzmQ6nRnN9dvBJWn+IxxpM+cLqGACatTnyo9LDzNTOj2Db3+s0s8Q== + dependencies: + load-json-file "^6.2.0" + npm-package-arg "^8.1.0" + write-pkg "^4.0.0" + +"@lerna/prerelease-id-from-version@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/prerelease-id-from-version/-/prerelease-id-from-version-4.0.0.tgz#c7e0676fcee1950d85630e108eddecdd5b48c916" + integrity sha512-GQqguzETdsYRxOSmdFZ6zDBXDErIETWOqomLERRY54f4p+tk4aJjoVdd9xKwehC9TBfIFvlRbL1V9uQGHh1opg== + dependencies: + semver "^7.3.4" + +"@lerna/profiler@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/profiler/-/profiler-4.0.0.tgz#8a53ab874522eae15d178402bff90a14071908e9" + integrity sha512-/BaEbqnVh1LgW/+qz8wCuI+obzi5/vRE8nlhjPzdEzdmWmZXuCKyWSEzAyHOJWw1ntwMiww5dZHhFQABuoFz9Q== + dependencies: + fs-extra "^9.1.0" + npmlog "^4.1.2" + upath "^2.0.1" + +"@lerna/project@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/project/-/project-4.0.0.tgz#ff84893935833533a74deff30c0e64ddb7f0ba6b" + integrity sha512-o0MlVbDkD5qRPkFKlBZsXZjoNTWPyuL58564nSfZJ6JYNmgAptnWPB2dQlAc7HWRZkmnC2fCkEdoU+jioPavbg== + dependencies: + "@lerna/package" "4.0.0" + "@lerna/validation-error" "4.0.0" + cosmiconfig "^7.0.0" + dedent "^0.7.0" + dot-prop "^6.0.1" + glob-parent "^5.1.1" + globby "^11.0.2" + load-json-file "^6.2.0" + npmlog "^4.1.2" + p-map "^4.0.0" + resolve-from "^5.0.0" + write-json-file "^4.3.0" + +"@lerna/prompt@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/prompt/-/prompt-4.0.0.tgz#5ec69a803f3f0db0ad9f221dad64664d3daca41b" + integrity sha512-4Ig46oCH1TH5M7YyTt53fT6TuaKMgqUUaqdgxvp6HP6jtdak6+amcsqB8YGz2eQnw/sdxunx84DfI9XpoLj4bQ== + dependencies: + inquirer "^7.3.3" + npmlog "^4.1.2" + +"@lerna/publish@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/publish/-/publish-4.0.0.tgz#f67011305adeba120066a3b6d984a5bb5fceef65" + integrity sha512-K8jpqjHrChH22qtkytA5GRKIVFEtqBF6JWj1I8dWZtHs4Jywn8yB1jQ3BAMLhqmDJjWJtRck0KXhQQKzDK2UPg== + dependencies: + "@lerna/check-working-tree" "4.0.0" + "@lerna/child-process" "4.0.0" + "@lerna/collect-updates" "4.0.0" + "@lerna/command" "4.0.0" + "@lerna/describe-ref" "4.0.0" + "@lerna/log-packed" "4.0.0" + "@lerna/npm-conf" "4.0.0" + "@lerna/npm-dist-tag" "4.0.0" + "@lerna/npm-publish" "4.0.0" + "@lerna/otplease" "4.0.0" + "@lerna/output" "4.0.0" + "@lerna/pack-directory" "4.0.0" + "@lerna/prerelease-id-from-version" "4.0.0" + "@lerna/prompt" "4.0.0" + "@lerna/pulse-till-done" "4.0.0" + "@lerna/run-lifecycle" "4.0.0" + "@lerna/run-topologically" "4.0.0" + "@lerna/validation-error" "4.0.0" + "@lerna/version" "4.0.0" + fs-extra "^9.1.0" + libnpmaccess "^4.0.1" + npm-package-arg "^8.1.0" + npm-registry-fetch "^9.0.0" + npmlog "^4.1.2" + p-map "^4.0.0" + p-pipe "^3.1.0" + pacote "^11.2.6" + semver "^7.3.4" + +"@lerna/pulse-till-done@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/pulse-till-done/-/pulse-till-done-4.0.0.tgz#04bace7d483a8205c187b806bcd8be23d7bb80a3" + integrity sha512-Frb4F7QGckaybRhbF7aosLsJ5e9WuH7h0KUkjlzSByVycxY91UZgaEIVjS2oN9wQLrheLMHl6SiFY0/Pvo0Cxg== + dependencies: + npmlog "^4.1.2" + +"@lerna/query-graph@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/query-graph/-/query-graph-4.0.0.tgz#09dd1c819ac5ee3f38db23931143701f8a6eef63" + integrity sha512-YlP6yI3tM4WbBmL9GCmNDoeQyzcyg1e4W96y/PKMZa5GbyUvkS2+Jc2kwPD+5KcXou3wQZxSPzR3Te5OenaDdg== + dependencies: + "@lerna/package-graph" "4.0.0" + +"@lerna/resolve-symlink@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/resolve-symlink/-/resolve-symlink-4.0.0.tgz#6d006628a210c9b821964657a9e20a8c9a115e14" + integrity sha512-RtX8VEUzqT+uLSCohx8zgmjc6zjyRlh6i/helxtZTMmc4+6O4FS9q5LJas2uGO2wKvBlhcD6siibGt7dIC3xZA== + dependencies: + fs-extra "^9.1.0" + npmlog "^4.1.2" + read-cmd-shim "^2.0.0" + +"@lerna/rimraf-dir@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/rimraf-dir/-/rimraf-dir-4.0.0.tgz#2edf3b62d4eb0ef4e44e430f5844667d551ec25a" + integrity sha512-QNH9ABWk9mcMJh2/muD9iYWBk1oQd40y6oH+f3wwmVGKYU5YJD//+zMiBI13jxZRtwBx0vmBZzkBkK1dR11cBg== + dependencies: + "@lerna/child-process" "4.0.0" + npmlog "^4.1.2" + path-exists "^4.0.0" + rimraf "^3.0.2" + +"@lerna/run-lifecycle@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/run-lifecycle/-/run-lifecycle-4.0.0.tgz#e648a46f9210a9bcd7c391df6844498cb5079334" + integrity sha512-IwxxsajjCQQEJAeAaxF8QdEixfI7eLKNm4GHhXHrgBu185JcwScFZrj9Bs+PFKxwb+gNLR4iI5rpUdY8Y0UdGQ== + dependencies: + "@lerna/npm-conf" "4.0.0" + npm-lifecycle "^3.1.5" + npmlog "^4.1.2" + +"@lerna/run-topologically@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/run-topologically/-/run-topologically-4.0.0.tgz#af846eeee1a09b0c2be0d1bfb5ef0f7b04bb1827" + integrity sha512-EVZw9hGwo+5yp+VL94+NXRYisqgAlj0jWKWtAIynDCpghRxCE5GMO3xrQLmQgqkpUl9ZxQFpICgYv5DW4DksQA== + dependencies: + "@lerna/query-graph" "4.0.0" + p-queue "^6.6.2" + +"@lerna/run@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/run/-/run-4.0.0.tgz#4bc7fda055a729487897c23579694f6183c91262" + integrity sha512-9giulCOzlMPzcZS/6Eov6pxE9gNTyaXk0Man+iCIdGJNMrCnW7Dme0Z229WWP/UoxDKg71F2tMsVVGDiRd8fFQ== + dependencies: + "@lerna/command" "4.0.0" + "@lerna/filter-options" "4.0.0" + "@lerna/npm-run-script" "4.0.0" + "@lerna/output" "4.0.0" + "@lerna/profiler" "4.0.0" + "@lerna/run-topologically" "4.0.0" + "@lerna/timer" "4.0.0" + "@lerna/validation-error" "4.0.0" + p-map "^4.0.0" + +"@lerna/symlink-binary@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/symlink-binary/-/symlink-binary-4.0.0.tgz#21009f62d53a425f136cb4c1a32c6b2a0cc02d47" + integrity sha512-zualodWC4q1QQc1pkz969hcFeWXOsVYZC5AWVtAPTDfLl+TwM7eG/O6oP+Rr3fFowspxo6b1TQ6sYfDV6HXNWA== + dependencies: + "@lerna/create-symlink" "4.0.0" + "@lerna/package" "4.0.0" + fs-extra "^9.1.0" + p-map "^4.0.0" + +"@lerna/symlink-dependencies@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/symlink-dependencies/-/symlink-dependencies-4.0.0.tgz#8910eca084ae062642d0490d8972cf2d98e9ebbd" + integrity sha512-BABo0MjeUHNAe2FNGty1eantWp8u83BHSeIMPDxNq0MuW2K3CiQRaeWT3EGPAzXpGt0+hVzBrA6+OT0GPn7Yuw== + dependencies: + "@lerna/create-symlink" "4.0.0" + "@lerna/resolve-symlink" "4.0.0" + "@lerna/symlink-binary" "4.0.0" + fs-extra "^9.1.0" + p-map "^4.0.0" + p-map-series "^2.1.0" + +"@lerna/timer@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/timer/-/timer-4.0.0.tgz#a52e51bfcd39bfd768988049ace7b15c1fd7a6da" + integrity sha512-WFsnlaE7SdOvjuyd05oKt8Leg3ENHICnvX3uYKKdByA+S3g+TCz38JsNs7OUZVt+ba63nC2nbXDlUnuT2Xbsfg== + +"@lerna/validation-error@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/validation-error/-/validation-error-4.0.0.tgz#af9d62fe8304eaa2eb9a6ba1394f9aa807026d35" + integrity sha512-1rBOM5/koiVWlRi3V6dB863E1YzJS8v41UtsHgMr6gB2ncJ2LsQtMKlJpi3voqcgh41H8UsPXR58RrrpPpufyw== + dependencies: + npmlog "^4.1.2" + +"@lerna/version@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/version/-/version-4.0.0.tgz#532659ec6154d8a8789c5ab53878663e244e3228" + integrity sha512-otUgiqs5W9zGWJZSCCMRV/2Zm2A9q9JwSDS7s/tlKq4mWCYriWo7+wsHEA/nPTMDyYyBO5oyZDj+3X50KDUzeA== + dependencies: + "@lerna/check-working-tree" "4.0.0" + "@lerna/child-process" "4.0.0" + "@lerna/collect-updates" "4.0.0" + "@lerna/command" "4.0.0" + "@lerna/conventional-commits" "4.0.0" + "@lerna/github-client" "4.0.0" + "@lerna/gitlab-client" "4.0.0" + "@lerna/output" "4.0.0" + "@lerna/prerelease-id-from-version" "4.0.0" + "@lerna/prompt" "4.0.0" + "@lerna/run-lifecycle" "4.0.0" + "@lerna/run-topologically" "4.0.0" + "@lerna/validation-error" "4.0.0" + chalk "^4.1.0" + dedent "^0.7.0" + load-json-file "^6.2.0" + minimatch "^3.0.4" + npmlog "^4.1.2" + p-map "^4.0.0" + p-pipe "^3.1.0" + p-reduce "^2.1.0" + p-waterfall "^2.1.1" + semver "^7.3.4" + slash "^3.0.0" + temp-write "^4.0.0" + write-json-file "^4.3.0" + +"@lerna/write-log-file@4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@lerna/write-log-file/-/write-log-file-4.0.0.tgz#18221a38a6a307d6b0a5844dd592ad53fa27091e" + integrity sha512-XRG5BloiArpXRakcnPHmEHJp+4AtnhRtpDIHSghmXD5EichI1uD73J7FgPp30mm2pDRq3FdqB0NbwSEsJ9xFQg== + dependencies: + npmlog "^4.1.2" + write-file-atomic "^3.0.3" + +"@lumino/algorithm@^1.3.3", "@lumino/algorithm@^1.9.1": + version "1.9.1" + resolved "https://registry.yarnpkg.com/@lumino/algorithm/-/algorithm-1.9.1.tgz#a870598e031f5ee85e20e77ce7bfffbb0dffd7f5" + integrity sha512-d0rj7IYRzYj6WbWSrbJbKvrfO4H0NUnXT2yjSWS/sCklpTpSp0IGmndK/X4r6gG+ev5lb5+wBg9ofUDBvoAlAw== + +"@lumino/application@^1.16.0": + version "1.27.0" + resolved "https://registry.yarnpkg.com/@lumino/application/-/application-1.27.0.tgz#4d17725ed209e04e840102ff67c892d87ffac2a2" + integrity sha512-QSS2UG0s7n0gM80FTThl3Xax6CBuVxxyr4ex0LMoiM94lYUMmXHXvEkRp5D/FXfke6hhn2295hYE6mUJdGnXcw== + dependencies: + "@lumino/commands" "^1.19.0" + "@lumino/coreutils" "^1.11.1" + "@lumino/widgets" "^1.30.0" + +"@lumino/collections@^1.9.1": + version "1.9.1" + resolved "https://registry.yarnpkg.com/@lumino/collections/-/collections-1.9.1.tgz#268f1ec6850d5e131cfc8db232c7e1e106144aa0" + integrity sha512-5RaRGUY7BJ/1j173sc9DCfiVf70Z0hopRnBV8/AeAaK9bJJRAYjDhlZ9O8xTyouegh6krkOfiDyjl3pwogLrQw== + dependencies: + "@lumino/algorithm" "^1.9.1" + +"@lumino/commands@^1.12.0", "@lumino/commands@^1.17.0", "@lumino/commands@^1.19.0": + version "1.19.0" + resolved "https://registry.yarnpkg.com/@lumino/commands/-/commands-1.19.0.tgz#9349c34b900653ac9d654e47831e7204e0c3476f" + integrity sha512-DMX5TTvgmRAIhQpsSRgctYrnTNpIWgwmvmEjX37L+uKwUgZpBQUrprjfVblqv3kpwUugY2bQWy9Uza/P4muo1Q== + dependencies: + "@lumino/algorithm" "^1.9.1" + "@lumino/coreutils" "^1.11.1" + "@lumino/disposable" "^1.10.1" + "@lumino/domutils" "^1.8.1" + "@lumino/keyboard" "^1.8.1" + "@lumino/signaling" "^1.10.1" + "@lumino/virtualdom" "^1.14.1" + +"@lumino/coreutils@^1.11.1", "@lumino/coreutils@^1.5.3": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@lumino/coreutils/-/coreutils-1.11.1.tgz#6d89c6325d7adb5f2179dfe3660f0aec8f3c4546" + integrity sha512-TbXeYnUChSMN8SmuOwT+bADS3kMhsVaQC0sZie0ZeGaLYxVqvd7NEDRZATDtjdw7QGHK0TwH5+XzuSdNkAXpFw== + +"@lumino/disposable@^1.10.1", "@lumino/disposable@^1.4.3": + version "1.10.1" + resolved "https://registry.yarnpkg.com/@lumino/disposable/-/disposable-1.10.1.tgz#58fddc619cf89335802d168564b76ff5315d5a84" + integrity sha512-mZQILc8sVGZC7mJNOGVmehDRO9/u3sIRdjZ+pCYjDgXKcINLd6HoPhZDquKCWiRBfHTL1B3tOHjnBhahBc2N/Q== + dependencies: + "@lumino/algorithm" "^1.9.1" + "@lumino/signaling" "^1.10.1" + +"@lumino/domutils@^1.2.3", "@lumino/domutils@^1.8.1": + version "1.8.1" + resolved "https://registry.yarnpkg.com/@lumino/domutils/-/domutils-1.8.1.tgz#cf118e4eba90c3bf1e3edf7f19cce8846ec7875c" + integrity sha512-QUVXwmDMIfcHC3yslhmyGK4HYBKaJ3xX5MTwDrjsSX7J7AZ4jwL4zfsxyF9ntdqEKraoJhLQ6BaUBY+Ur1cnYw== + +"@lumino/dragdrop@^1.13.1", "@lumino/dragdrop@^1.7.1": + version "1.13.1" + resolved "https://registry.yarnpkg.com/@lumino/dragdrop/-/dragdrop-1.13.1.tgz#a8f8ae4262dcbba4ef85900f6081c90bd47df2b5" + integrity sha512-78tvTLwUkGbxrVentok7J4M1y+QHml3+Z+N5urxpXZMqVaLCeLxXfQO5QbWKiQjRWuPSoXhCB/PNBrlZeqzK+A== + dependencies: + "@lumino/coreutils" "^1.11.1" + "@lumino/disposable" "^1.10.1" + +"@lumino/keyboard@^1.8.1": + version "1.8.1" + resolved "https://registry.yarnpkg.com/@lumino/keyboard/-/keyboard-1.8.1.tgz#e7850e2fb973fbb4c6e737ca8d9307f2dc3eb74b" + integrity sha512-8x0y2ZQtEvOsblpI2gfTgf+gboftusP+5aukKEsgNQtzFl28RezQXEOSVd8iD3K6+Q1MaPQF0OALYP0ASqBjBg== + +"@lumino/messaging@^1.10.1", "@lumino/messaging@^1.4.3": + version "1.10.1" + resolved "https://registry.yarnpkg.com/@lumino/messaging/-/messaging-1.10.1.tgz#b29575cca46e2f23b84626b793ec8e2be46a53ba" + integrity sha512-XZSdt9ih94rdeeLL0cryUw6HHD51D7TP8c+MFf+YRF6VKwOFB9RoajfQWadeqpmH+schTs3EsrFfA9KHduzC7w== + dependencies: + "@lumino/algorithm" "^1.9.1" + "@lumino/collections" "^1.9.1" + +"@lumino/polling@^1.3.3": + version "1.9.1" + resolved "https://registry.yarnpkg.com/@lumino/polling/-/polling-1.9.1.tgz#38d5f31b16ecdf95af0f48b9b67f0444b3de2df8" + integrity sha512-eZbkLcEJmx+1ABekXchiWbZGKuaEfBvCYb0swWHFrHYi48dtmVsJtyLMDmLGPDZC7cOxoQ3YoSCYiCKmgSIQCA== + dependencies: + "@lumino/coreutils" "^1.11.1" + "@lumino/disposable" "^1.10.1" + "@lumino/signaling" "^1.10.1" + +"@lumino/properties@^1.2.3", "@lumino/properties@^1.8.1": + version "1.8.1" + resolved "https://registry.yarnpkg.com/@lumino/properties/-/properties-1.8.1.tgz#47eb8516e92c987dcb2c404db83a258159efec3d" + integrity sha512-O+CCcAqP64Di32DUZ4Jqq0DtUyE5RJREN5vbkgGZGu+WauJ/RYoiLDe1ubbAeSaHk71OrS60ZBV7QyC8ZaBVsA== + +"@lumino/signaling@^1.10.1", "@lumino/signaling@^1.4.3": + version "1.10.1" + resolved "https://registry.yarnpkg.com/@lumino/signaling/-/signaling-1.10.1.tgz#c8a1cb5b661b6744ea817c99c758fdc897847c26" + integrity sha512-GZVbX4cfk/ZqLwkemPD/NwqToaTL/6q7qdLpEhgkiPlaH1S5/V7fDpP7N1uFy4n3BDITId8cpYgH/Ds32Mdp3A== + dependencies: + "@lumino/algorithm" "^1.9.1" + +"@lumino/virtualdom@^1.14.1", "@lumino/virtualdom@^1.8.0": + version "1.14.1" + resolved "https://registry.yarnpkg.com/@lumino/virtualdom/-/virtualdom-1.14.1.tgz#2551b146cbe87c48d23754f370c1331a60c9fe62" + integrity sha512-imIJd/wtRkoR1onEiG5nxPEaIrf70nn4PgD/56ri3/Lo6AJEX2CusF6iIA27GVB8yl/7CxgTHUnzzCwTFPypcA== + dependencies: + "@lumino/algorithm" "^1.9.1" + +"@lumino/widgets@^1.19.0", "@lumino/widgets@^1.28.0", "@lumino/widgets@^1.30.0": + version "1.30.0" + resolved "https://registry.yarnpkg.com/@lumino/widgets/-/widgets-1.30.0.tgz#fdf96ffab9a018523b932afd5727317c3a360b4f" + integrity sha512-0nYFoaZrUzJHa1uWvPGHtRjz9TItwQIK0m2hT1IS6fyPv9QKdDELjEMBGUgXHX5Do5h3TWrou0tgdviKZ0KNrg== + dependencies: + "@lumino/algorithm" "^1.9.1" + "@lumino/commands" "^1.19.0" + "@lumino/coreutils" "^1.11.1" + "@lumino/disposable" "^1.10.1" + "@lumino/domutils" "^1.8.1" + "@lumino/dragdrop" "^1.13.1" + "@lumino/keyboard" "^1.8.1" + "@lumino/messaging" "^1.10.1" + "@lumino/properties" "^1.8.1" + "@lumino/signaling" "^1.10.1" + "@lumino/virtualdom" "^1.14.1" + +"@nodelib/fs.scandir@2.1.5": + version "2.1.5" + resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5" + integrity sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g== + dependencies: + "@nodelib/fs.stat" "2.0.5" + run-parallel "^1.1.9" + +"@nodelib/fs.stat@2.0.5", "@nodelib/fs.stat@^2.0.2": + version "2.0.5" + resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b" + integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== + +"@nodelib/fs.walk@^1.2.3": + version "1.2.8" + resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a" + integrity sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg== + dependencies: + "@nodelib/fs.scandir" "2.1.5" + fastq "^1.6.0" + +"@npmcli/ci-detect@^1.0.0": + version "1.4.0" + resolved "https://registry.yarnpkg.com/@npmcli/ci-detect/-/ci-detect-1.4.0.tgz#18478bbaa900c37bfbd8a2006a6262c62e8b0fe1" + integrity sha512-3BGrt6FLjqM6br5AhWRKTr3u5GIVkjRYeAFrMp3HjnfICrg4xOrVRwFavKT6tsp++bq5dluL5t8ME/Nha/6c1Q== + +"@npmcli/fs@^1.0.0": + version "1.0.0" + resolved "https://registry.yarnpkg.com/@npmcli/fs/-/fs-1.0.0.tgz#589612cfad3a6ea0feafcb901d29c63fd52db09f" + integrity sha512-8ltnOpRR/oJbOp8vaGUnipOi3bqkcW+sLHFlyXIr08OGHmVJLB1Hn7QtGXbYcpVtH1gAYZTlmDXtE4YV0+AMMQ== + dependencies: + "@gar/promisify" "^1.0.1" + semver "^7.3.5" + +"@npmcli/git@^2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@npmcli/git/-/git-2.1.0.tgz#2fbd77e147530247d37f325930d457b3ebe894f6" + integrity sha512-/hBFX/QG1b+N7PZBFs0bi+evgRZcK9nWBxQKZkGoXUT5hJSwl5c4d7y8/hm+NQZRPhQ67RzFaj5UM9YeyKoryw== + dependencies: + "@npmcli/promise-spawn" "^1.3.2" + lru-cache "^6.0.0" + mkdirp "^1.0.4" + npm-pick-manifest "^6.1.1" + promise-inflight "^1.0.1" + promise-retry "^2.0.1" + semver "^7.3.5" + which "^2.0.2" + +"@npmcli/installed-package-contents@^1.0.6": + version "1.0.7" + resolved "https://registry.yarnpkg.com/@npmcli/installed-package-contents/-/installed-package-contents-1.0.7.tgz#ab7408c6147911b970a8abe261ce512232a3f4fa" + integrity sha512-9rufe0wnJusCQoLpV9ZPKIVP55itrM5BxOXs10DmdbRfgWtHy1LDyskbwRnBghuB0PrF7pNPOqREVtpz4HqzKw== + dependencies: + npm-bundled "^1.1.1" + npm-normalize-package-bin "^1.0.1" + +"@npmcli/move-file@^1.0.1": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@npmcli/move-file/-/move-file-1.1.2.tgz#1a82c3e372f7cae9253eb66d72543d6b8685c674" + integrity sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg== + dependencies: + mkdirp "^1.0.4" + rimraf "^3.0.2" + +"@npmcli/node-gyp@^1.0.2": + version "1.0.3" + resolved "https://registry.yarnpkg.com/@npmcli/node-gyp/-/node-gyp-1.0.3.tgz#a912e637418ffc5f2db375e93b85837691a43a33" + integrity sha512-fnkhw+fmX65kiLqk6E3BFLXNC26rUhK90zVwe2yncPliVT/Qos3xjhTLE59Df8KnPlcwIERXKVlU1bXoUQ+liA== + +"@npmcli/promise-spawn@^1.2.0", "@npmcli/promise-spawn@^1.3.2": + version "1.3.2" + resolved "https://registry.yarnpkg.com/@npmcli/promise-spawn/-/promise-spawn-1.3.2.tgz#42d4e56a8e9274fba180dabc0aea6e38f29274f5" + integrity sha512-QyAGYo/Fbj4MXeGdJcFzZ+FkDkomfRBrPM+9QYJSg+PxgAUL+LU3FneQk37rKR2/zjqkCV1BLHccX98wRXG3Sg== + dependencies: + infer-owner "^1.0.4" + +"@npmcli/run-script@^1.8.2": + version "1.8.6" + resolved "https://registry.yarnpkg.com/@npmcli/run-script/-/run-script-1.8.6.tgz#18314802a6660b0d4baa4c3afe7f1ad39d8c28b7" + integrity sha512-e42bVZnC6VluBZBAFEr3YrdqSspG3bgilyg4nSLBJ7TRGNCzxHa92XAHxQBLYg0BmgwO4b2mf3h/l5EkEWRn3g== + dependencies: + "@npmcli/node-gyp" "^1.0.2" + "@npmcli/promise-spawn" "^1.3.2" + node-gyp "^7.1.0" + read-package-json-fast "^2.0.1" + +"@octokit/auth-token@^2.4.4": + version "2.5.0" + resolved "https://registry.yarnpkg.com/@octokit/auth-token/-/auth-token-2.5.0.tgz#27c37ea26c205f28443402477ffd261311f21e36" + integrity sha512-r5FVUJCOLl19AxiuZD2VRZ/ORjp/4IN98Of6YJoJOkY75CIBuYfmiNHGrDwXr+aLGG55igl9QrxX3hbiXlLb+g== + dependencies: + "@octokit/types" "^6.0.3" + +"@octokit/core@^3.5.1": + version "3.5.1" + resolved "https://registry.yarnpkg.com/@octokit/core/-/core-3.5.1.tgz#8601ceeb1ec0e1b1b8217b960a413ed8e947809b" + integrity sha512-omncwpLVxMP+GLpLPgeGJBF6IWJFjXDS5flY5VbppePYX9XehevbDykRH9PdCdvqt9TS5AOTiDide7h0qrkHjw== + dependencies: + "@octokit/auth-token" "^2.4.4" + "@octokit/graphql" "^4.5.8" + "@octokit/request" "^5.6.0" + "@octokit/request-error" "^2.0.5" + "@octokit/types" "^6.0.3" + before-after-hook "^2.2.0" + universal-user-agent "^6.0.0" + +"@octokit/endpoint@^6.0.1": + version "6.0.12" + resolved "https://registry.yarnpkg.com/@octokit/endpoint/-/endpoint-6.0.12.tgz#3b4d47a4b0e79b1027fb8d75d4221928b2d05658" + integrity sha512-lF3puPwkQWGfkMClXb4k/eUT/nZKQfxinRWJrdZaJO85Dqwo/G0yOC434Jr2ojwafWJMYqFGFa5ms4jJUgujdA== + dependencies: + "@octokit/types" "^6.0.3" + is-plain-object "^5.0.0" + universal-user-agent "^6.0.0" + +"@octokit/graphql@^4.5.8": + version "4.8.0" + resolved "https://registry.yarnpkg.com/@octokit/graphql/-/graphql-4.8.0.tgz#664d9b11c0e12112cbf78e10f49a05959aa22cc3" + integrity sha512-0gv+qLSBLKF0z8TKaSKTsS39scVKF9dbMxJpj3U0vC7wjNWFuIpL/z76Qe2fiuCbDRcJSavkXsVtMS6/dtQQsg== + dependencies: + "@octokit/request" "^5.6.0" + "@octokit/types" "^6.0.3" + universal-user-agent "^6.0.0" + +"@octokit/openapi-types@^11.2.0": + version "11.2.0" + resolved "https://registry.yarnpkg.com/@octokit/openapi-types/-/openapi-types-11.2.0.tgz#b38d7fc3736d52a1e96b230c1ccd4a58a2f400a6" + integrity sha512-PBsVO+15KSlGmiI8QAzaqvsNlZlrDlyAJYcrXBCvVUxCp7VnXjkwPoFHgjEJXx3WF9BAwkA6nfCUA7i9sODzKA== + +"@octokit/plugin-enterprise-rest@^6.0.1": + version "6.0.1" + resolved "https://registry.yarnpkg.com/@octokit/plugin-enterprise-rest/-/plugin-enterprise-rest-6.0.1.tgz#e07896739618dab8da7d4077c658003775f95437" + integrity sha512-93uGjlhUD+iNg1iWhUENAtJata6w5nE+V4urXOAlIXdco6xNZtUSfYY8dzp3Udy74aqO/B5UZL80x/YMa5PKRw== + +"@octokit/plugin-paginate-rest@^2.16.8": + version "2.17.0" + resolved "https://registry.yarnpkg.com/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.17.0.tgz#32e9c7cab2a374421d3d0de239102287d791bce7" + integrity sha512-tzMbrbnam2Mt4AhuyCHvpRkS0oZ5MvwwcQPYGtMv4tUa5kkzG58SVB0fcsLulOZQeRnOgdkZWkRUiyBlh0Bkyw== + dependencies: + "@octokit/types" "^6.34.0" + +"@octokit/plugin-request-log@^1.0.4": + version "1.0.4" + resolved "https://registry.yarnpkg.com/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz#5e50ed7083a613816b1e4a28aeec5fb7f1462e85" + integrity sha512-mLUsMkgP7K/cnFEw07kWqXGF5LKrOkD+lhCrKvPHXWDywAwuDUeDwWBpc69XK3pNX0uKiVt8g5z96PJ6z9xCFA== + +"@octokit/plugin-rest-endpoint-methods@^5.12.0": + version "5.13.0" + resolved "https://registry.yarnpkg.com/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-5.13.0.tgz#8c46109021a3412233f6f50d28786f8e552427ba" + integrity sha512-uJjMTkN1KaOIgNtUPMtIXDOjx6dGYysdIFhgA52x4xSadQCz3b/zJexvITDVpANnfKPW/+E0xkOvLntqMYpviA== + dependencies: + "@octokit/types" "^6.34.0" + deprecation "^2.3.1" + +"@octokit/request-error@^2.0.5", "@octokit/request-error@^2.1.0": + version "2.1.0" + resolved "https://registry.yarnpkg.com/@octokit/request-error/-/request-error-2.1.0.tgz#9e150357831bfc788d13a4fd4b1913d60c74d677" + integrity sha512-1VIvgXxs9WHSjicsRwq8PlR2LR2x6DwsJAaFgzdi0JfJoGSO8mYI/cHJQ+9FbN21aa+DrgNLnwObmyeSC8Rmpg== + dependencies: + "@octokit/types" "^6.0.3" + deprecation "^2.0.0" + once "^1.4.0" + +"@octokit/request@^5.6.0": + version "5.6.2" + resolved "https://registry.yarnpkg.com/@octokit/request/-/request-5.6.2.tgz#1aa74d5da7b9e04ac60ef232edd9a7438dcf32d8" + integrity sha512-je66CvSEVf0jCpRISxkUcCa0UkxmFs6eGDRSbfJtAVwbLH5ceqF+YEyC8lj8ystKyZTy8adWr0qmkY52EfOeLA== + dependencies: + "@octokit/endpoint" "^6.0.1" + "@octokit/request-error" "^2.1.0" + "@octokit/types" "^6.16.1" + is-plain-object "^5.0.0" + node-fetch "^2.6.1" + universal-user-agent "^6.0.0" + +"@octokit/rest@^18.1.0": + version "18.12.0" + resolved "https://registry.yarnpkg.com/@octokit/rest/-/rest-18.12.0.tgz#f06bc4952fc87130308d810ca9d00e79f6988881" + integrity sha512-gDPiOHlyGavxr72y0guQEhLsemgVjwRePayJ+FcKc2SJqKUbxbkvf5kAZEWA/MKvsfYlQAMVzNJE3ezQcxMJ2Q== + dependencies: + "@octokit/core" "^3.5.1" + "@octokit/plugin-paginate-rest" "^2.16.8" + "@octokit/plugin-request-log" "^1.0.4" + "@octokit/plugin-rest-endpoint-methods" "^5.12.0" + +"@octokit/types@^6.0.3", "@octokit/types@^6.16.1", "@octokit/types@^6.34.0": + version "6.34.0" + resolved "https://registry.yarnpkg.com/@octokit/types/-/types-6.34.0.tgz#c6021333334d1ecfb5d370a8798162ddf1ae8218" + integrity sha512-s1zLBjWhdEI2zwaoSgyOFoKSl109CUcVBCc7biPJ3aAf6LGLU6szDvi31JPU7bxfla2lqfhjbbg/5DdFNxOwHw== + dependencies: + "@octokit/openapi-types" "^11.2.0" + +"@sindresorhus/is@^0.14.0": + version "0.14.0" + resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-0.14.0.tgz#9fb3a3cf3132328151f353de4632e01e52102bea" + integrity sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ== + +"@szmarczak/http-timer@^1.1.2": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@szmarczak/http-timer/-/http-timer-1.1.2.tgz#b1665e2c461a2cd92f4c1bbf50d5454de0d4b421" + integrity sha512-XIB2XbzHTN6ieIjfIMV9hlVcfPU26s2vafYWQcZHWXHOxiaRZYEDKEwdl129Zyg50+foYV2jCgtrqSA6qNuNSA== + dependencies: + defer-to-connect "^1.0.1" + +"@tootallnate/once@1": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82" + integrity sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw== + +"@types/codemirror@^0.0.109": + version "0.0.109" + resolved "https://registry.yarnpkg.com/@types/codemirror/-/codemirror-0.0.109.tgz#89d575ff1c7b462c4c3b8654f8bb38e5622e9036" + integrity sha512-cSdiHeeLjvGn649lRTNeYrVCDOgDrtP+bDDSFDd1TF+i0jKGPDRozno2NOJ9lTniso+taiv4kiVS8dgM8Jm5lg== + dependencies: + "@types/tern" "*" + +"@types/dom4@^2.0.1": + version "2.0.2" + resolved "https://registry.yarnpkg.com/@types/dom4/-/dom4-2.0.2.tgz#6495303f049689ce936ed328a3e5ede9c51408ee" + integrity sha512-Rt4IC1T7xkCWa0OG1oSsPa0iqnxlDeQqKXZAHrQGLb7wFGncWm85MaxKUjAGejOrUynOgWlFi4c6S6IyJwoK4g== + +"@types/eslint-scope@^3.7.0": + version "3.7.1" + resolved "https://registry.yarnpkg.com/@types/eslint-scope/-/eslint-scope-3.7.1.tgz#8dc390a7b4f9dd9f1284629efce982e41612116e" + integrity sha512-SCFeogqiptms4Fg29WpOTk5nHIzfpKCemSN63ksBQYKTcXoJEmJagV+DhVmbapZzY4/5YaOV1nZwrsU79fFm1g== + dependencies: + "@types/eslint" "*" + "@types/estree" "*" + +"@types/eslint@*": + version "7.28.2" + resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-7.28.2.tgz#0ff2947cdd305897c52d5372294e8c76f351db68" + integrity sha512-KubbADPkfoU75KgKeKLsFHXnU4ipH7wYg0TRT33NK3N3yiu7jlFAAoygIWBV+KbuHx/G+AvuGX6DllnK35gfJA== + dependencies: + "@types/estree" "*" + "@types/json-schema" "*" + +"@types/estree@*", "@types/estree@^0.0.50": + version "0.0.50" + resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.50.tgz#1e0caa9364d3fccd2931c3ed96fdbeaa5d4cca83" + integrity sha512-C6N5s2ZFtuZRj54k2/zyRhNDjJwwcViAM3Nbm8zjBpbqAdZ00mr0CFxvSKeO8Y/e03WVFLpQMdHYVfUd6SB+Hw== + +"@types/glob@^7.1.1": + version "7.2.0" + resolved "https://registry.yarnpkg.com/@types/glob/-/glob-7.2.0.tgz#bc1b5bf3aa92f25bd5dd39f35c57361bdce5b2eb" + integrity sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA== + dependencies: + "@types/minimatch" "*" + "@types/node" "*" + +"@types/json-schema@*", "@types/json-schema@^7.0.5", "@types/json-schema@^7.0.7", "@types/json-schema@^7.0.8": + version "7.0.9" + resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.9.tgz#97edc9037ea0c38585320b28964dde3b39e4660d" + integrity sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ== + +"@types/minimatch@*", "@types/minimatch@^3.0.3": + version "3.0.5" + resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.5.tgz#1001cc5e6a3704b83c236027e77f2f58ea010f40" + integrity sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ== + +"@types/minimist@^1.2.0": + version "1.2.2" + resolved "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.2.tgz#ee771e2ba4b3dc5b372935d549fd9617bf345b8c" + integrity sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ== + +"@types/node@*": + version "16.11.7" + resolved "https://registry.yarnpkg.com/@types/node/-/node-16.11.7.tgz#36820945061326978c42a01e56b61cd223dfdc42" + integrity sha512-QB5D2sqfSjCmTuWcBWyJ+/44bcjO7VbjSbOE0ucoVbAsSNQc4Lt6QkgkVXkTDwkL4z/beecZNDvVX15D4P8Jbw== + +"@types/normalize-package-data@^2.4.0": + version "2.4.1" + resolved "https://registry.yarnpkg.com/@types/normalize-package-data/-/normalize-package-data-2.4.1.tgz#d3357479a0fdfdd5907fe67e17e0a85c906e1301" + integrity sha512-Gj7cI7z+98M282Tqmp2K5EIsoouUEzbBJhQQzDE3jSIRk6r9gsz0oUokqIUR4u1R3dMHo0pDHM7sNOHyhulypw== + +"@types/parse-json@^4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" + integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA== + +"@types/prop-types@*": + version "15.7.4" + resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.4.tgz#fcf7205c25dff795ee79af1e30da2c9790808f11" + integrity sha512-rZ5drC/jWjrArrS8BR6SIr4cWpW09RNTYt9AMZo3Jwwif+iacXAqgVjm0B0Bv/S1jhDXKHqRVNCbACkJ89RAnQ== + +"@types/react@^17.0.0": + version "17.0.34" + resolved "https://registry.yarnpkg.com/@types/react/-/react-17.0.34.tgz#797b66d359b692e3f19991b6b07e4b0c706c0102" + integrity sha512-46FEGrMjc2+8XhHXILr+3+/sTe3OfzSPU9YGKILLrUYbQ1CLQC9Daqo1KzENGXAWwrFwiY0l4ZbF20gRvgpWTg== + dependencies: + "@types/prop-types" "*" + "@types/scheduler" "*" + csstype "^3.0.2" + +"@types/reveal@^3.0.0": + version "3.3.33" + resolved "https://registry.yarnpkg.com/@types/reveal/-/reveal-3.3.33.tgz#e5448f6b4e6734ec3ea4ee85211bb9313a879044" + integrity sha512-lKbezA9Oa5LfdSRwFDc/FHEGH4+FjiXh/a/PCSZAmN+KCeQJL/3ClOdAQwOxt3zdHc8XyioT+cNvIOletwRI7A== + +"@types/scheduler@*": + version "0.16.2" + resolved "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.16.2.tgz#1a62f89525723dde24ba1b01b092bf5df8ad4d39" + integrity sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew== + +"@types/source-list-map@*": + version "0.1.2" + resolved "https://registry.yarnpkg.com/@types/source-list-map/-/source-list-map-0.1.2.tgz#0078836063ffaf17412349bba364087e0ac02ec9" + integrity sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA== + +"@types/tern@*": + version "0.23.4" + resolved "https://registry.yarnpkg.com/@types/tern/-/tern-0.23.4.tgz#03926eb13dbeaf3ae0d390caf706b2643a0127fb" + integrity sha512-JAUw1iXGO1qaWwEOzxTKJZ/5JxVeON9kvGZ/osgZaJImBnyjyn0cjovPsf6FNLmyGY8Vw9DoXZCMlfMkMwHRWg== + dependencies: + "@types/estree" "*" + +"@types/webpack-sources@^0.1.5": + version "0.1.9" + resolved "https://registry.yarnpkg.com/@types/webpack-sources/-/webpack-sources-0.1.9.tgz#da69b06eb34f6432e6658acb5a6893c55d983920" + integrity sha512-bvzMnzqoK16PQIC8AYHNdW45eREJQMd6WG/msQWX5V2+vZmODCOPb4TJcbgRljTZZTwTM4wUMcsI8FftNA7new== + dependencies: + "@types/node" "*" + "@types/source-list-map" "*" + source-map "^0.6.1" + +"@typescript-eslint/eslint-plugin@^4.8.1": + version "4.33.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.33.0.tgz#c24dc7c8069c7706bc40d99f6fa87edcb2005276" + integrity sha512-aINiAxGVdOl1eJyVjaWn/YcVAq4Gi/Yo35qHGCnqbWVz61g39D0h23veY/MA0rFFGfxK7TySg2uwDeNv+JgVpg== + dependencies: + "@typescript-eslint/experimental-utils" "4.33.0" + "@typescript-eslint/scope-manager" "4.33.0" + debug "^4.3.1" + functional-red-black-tree "^1.0.1" + ignore "^5.1.8" + regexpp "^3.1.0" + semver "^7.3.5" + tsutils "^3.21.0" + +"@typescript-eslint/experimental-utils@4.33.0": + version "4.33.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-4.33.0.tgz#6f2a786a4209fa2222989e9380b5331b2810f7fd" + integrity sha512-zeQjOoES5JFjTnAhI5QY7ZviczMzDptls15GFsI6jyUOq0kOf9+WonkhtlIhh0RgHRnqj5gdNxW5j1EvAyYg6Q== + dependencies: + "@types/json-schema" "^7.0.7" + "@typescript-eslint/scope-manager" "4.33.0" + "@typescript-eslint/types" "4.33.0" + "@typescript-eslint/typescript-estree" "4.33.0" + eslint-scope "^5.1.1" + eslint-utils "^3.0.0" + +"@typescript-eslint/parser@^4.8.1": + version "4.33.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-4.33.0.tgz#dfe797570d9694e560528d18eecad86c8c744899" + integrity sha512-ZohdsbXadjGBSK0/r+d87X0SBmKzOq4/S5nzK6SBgJspFo9/CUDJ7hjayuze+JK7CZQLDMroqytp7pOcFKTxZA== + dependencies: + "@typescript-eslint/scope-manager" "4.33.0" + "@typescript-eslint/types" "4.33.0" + "@typescript-eslint/typescript-estree" "4.33.0" + debug "^4.3.1" + +"@typescript-eslint/scope-manager@4.33.0": + version "4.33.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/scope-manager/-/scope-manager-4.33.0.tgz#d38e49280d983e8772e29121cf8c6e9221f280a3" + integrity sha512-5IfJHpgTsTZuONKbODctL4kKuQje/bzBRkwHE8UOZ4f89Zeddg+EGZs8PD8NcN4LdM3ygHWYB3ukPAYjvl/qbQ== + dependencies: + "@typescript-eslint/types" "4.33.0" + "@typescript-eslint/visitor-keys" "4.33.0" + +"@typescript-eslint/types@4.33.0": + version "4.33.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/types/-/types-4.33.0.tgz#a1e59036a3b53ae8430ceebf2a919dc7f9af6d72" + integrity sha512-zKp7CjQzLQImXEpLt2BUw1tvOMPfNoTAfb8l51evhYbOEEzdWyQNmHWWGPR6hwKJDAi+1VXSBmnhL9kyVTTOuQ== + +"@typescript-eslint/typescript-estree@4.33.0": + version "4.33.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/typescript-estree/-/typescript-estree-4.33.0.tgz#0dfb51c2908f68c5c08d82aefeaf166a17c24609" + integrity sha512-rkWRY1MPFzjwnEVHsxGemDzqqddw2QbTJlICPD9p9I9LfsO8fdmfQPOX3uKfUaGRDFJbfrtm/sXhVXN4E+bzCA== + dependencies: + "@typescript-eslint/types" "4.33.0" + "@typescript-eslint/visitor-keys" "4.33.0" + debug "^4.3.1" + globby "^11.0.3" + is-glob "^4.0.1" + semver "^7.3.5" + tsutils "^3.21.0" + +"@typescript-eslint/visitor-keys@4.33.0": + version "4.33.0" + resolved "https://registry.yarnpkg.com/@typescript-eslint/visitor-keys/-/visitor-keys-4.33.0.tgz#2a22f77a41604289b7a186586e9ec48ca92ef1dd" + integrity sha512-uqi/2aSz9g2ftcHWf8uLPJA70rUv6yuMW5Bohw+bwcuzaxQIHaKFZCKGoGXIrc9vkTJ3+0txM73K0Hq3d5wgIg== + dependencies: + "@typescript-eslint/types" "4.33.0" + eslint-visitor-keys "^2.0.0" + +"@verdaccio/commons-api@10.0.1": + version "10.0.1" + resolved "https://registry.yarnpkg.com/@verdaccio/commons-api/-/commons-api-10.0.1.tgz#7217a167e428a7603ff46685c4cc40bb1526e463" + integrity sha512-dO/3ocK2Cpx5GZ/HST7YWRMVXAZu5zkDglfcoxEnUh2V9D4detGn0sIDV9nCJJJiO70ZmhuOoA5oeUmrA1lELA== + dependencies: + http-errors "1.8.0" + http-status-codes "1.4.0" + +"@verdaccio/file-locking@10.0.0", "@verdaccio/file-locking@^10.0.0": + version "10.0.0" + resolved "https://registry.yarnpkg.com/@verdaccio/file-locking/-/file-locking-10.0.0.tgz#3d476a6ba28207c795d49828438e7335166c1cfc" + integrity sha512-2tQUbJF3tQ3CY9grAlpovaF/zu8G56CBYMaeHwMBHo9rAmsJI9i7LfliHGS6Jygbs8vd0cOCPT7vl2CL9T8upw== + dependencies: + lockfile "1.0.4" + +"@verdaccio/local-storage@10.0.7": + version "10.0.7" + resolved "https://registry.yarnpkg.com/@verdaccio/local-storage/-/local-storage-10.0.7.tgz#c90114cc474c564b6aecc5513a95fe474ca8b797" + integrity sha512-DpR4RFDQXVFI9ILEU0xXIqGP7m59u4n5RJ9AYEbc6i/6Iv0Ba2K2Q4l/J22ZLURjqCKZY4ZPUJkhUwXSmzRFMQ== + dependencies: + "@verdaccio/commons-api" "10.0.1" + "@verdaccio/file-locking" "10.0.0" + "@verdaccio/streams" "10.0.0" + async "3.2.0" + debug "4.3.1" + lodash "4.17.21" + lowdb "1.0.0" + mkdirp "1.0.4" + +"@verdaccio/readme@10.0.0": + version "10.0.0" + resolved "https://registry.yarnpkg.com/@verdaccio/readme/-/readme-10.0.0.tgz#f9627c32b309ace311318b98b2c42226823f6cd7" + integrity sha512-OD3dMnRC8SvhgytEzczMBleN+K/3lMqyWw/epeXvolCpCd7mW/Dl5zSR25GiHh/2h3eTKP/HMs4km8gS1MMLgA== + dependencies: + dompurify "^2.2.6" + jsdom "15.2.1" + marked "^2.0.1" + +"@verdaccio/streams@10.0.0": + version "10.0.0" + resolved "https://registry.yarnpkg.com/@verdaccio/streams/-/streams-10.0.0.tgz#8b06e1d6f06e906ebda0f1d4089cdb651a533541" + integrity sha512-PqxxY11HhweN6z1lwfn9ydLCdnOkCPpthMZs+SGCDz8Rt6gOyrjJVslV7o4uobDipjD9+hUPpJHDeO33Qt24uw== + +"@verdaccio/ui-theme@3.2.1": + version "3.2.1" + resolved "https://registry.yarnpkg.com/@verdaccio/ui-theme/-/ui-theme-3.2.1.tgz#041a5b436847f73ebddeb693758b0f30819a98b0" + integrity sha512-xaN1nVxGWSIO4Qmnm3xZwvUf2jOUIt43nAp2IbSiPdozQztCcfU1LHEHiMW2mP036LoUWcHbb3Z6Tj1GHyuQNg== + +"@webassemblyjs/ast@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/ast/-/ast-1.11.1.tgz#2bfd767eae1a6996f432ff7e8d7fc75679c0b6a7" + integrity sha512-ukBh14qFLjxTQNTXocdyksN5QdM28S1CxHt2rdskFyL+xFV7VremuBLVbmCePj+URalXBENx/9Lm7lnhihtCSw== + dependencies: + "@webassemblyjs/helper-numbers" "1.11.1" + "@webassemblyjs/helper-wasm-bytecode" "1.11.1" + +"@webassemblyjs/floating-point-hex-parser@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/floating-point-hex-parser/-/floating-point-hex-parser-1.11.1.tgz#f6c61a705f0fd7a6aecaa4e8198f23d9dc179e4f" + integrity sha512-iGRfyc5Bq+NnNuX8b5hwBrRjzf0ocrJPI6GWFodBFzmFnyvrQ83SHKhmilCU/8Jv67i4GJZBMhEzltxzcNagtQ== + +"@webassemblyjs/helper-api-error@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-api-error/-/helper-api-error-1.11.1.tgz#1a63192d8788e5c012800ba6a7a46c705288fd16" + integrity sha512-RlhS8CBCXfRUR/cwo2ho9bkheSXG0+NwooXcc3PAILALf2QLdFyj7KGsKRbVc95hZnhnERon4kW/D3SZpp6Tcg== + +"@webassemblyjs/helper-buffer@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-buffer/-/helper-buffer-1.11.1.tgz#832a900eb444884cde9a7cad467f81500f5e5ab5" + integrity sha512-gwikF65aDNeeXa8JxXa2BAk+REjSyhrNC9ZwdT0f8jc4dQQeDQ7G4m0f2QCLPJiMTTO6wfDmRmj/pW0PsUvIcA== + +"@webassemblyjs/helper-numbers@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-numbers/-/helper-numbers-1.11.1.tgz#64d81da219fbbba1e3bd1bfc74f6e8c4e10a62ae" + integrity sha512-vDkbxiB8zfnPdNK9Rajcey5C0w+QJugEglN0of+kmO8l7lDb77AnlKYQF7aarZuCrv+l0UvqL+68gSDr3k9LPQ== + dependencies: + "@webassemblyjs/floating-point-hex-parser" "1.11.1" + "@webassemblyjs/helper-api-error" "1.11.1" + "@xtuc/long" "4.2.2" + +"@webassemblyjs/helper-wasm-bytecode@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-bytecode/-/helper-wasm-bytecode-1.11.1.tgz#f328241e41e7b199d0b20c18e88429c4433295e1" + integrity sha512-PvpoOGiJwXeTrSf/qfudJhwlvDQxFgelbMqtq52WWiXC6Xgg1IREdngmPN3bs4RoO83PnL/nFrxucXj1+BX62Q== + +"@webassemblyjs/helper-wasm-section@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/helper-wasm-section/-/helper-wasm-section-1.11.1.tgz#21ee065a7b635f319e738f0dd73bfbda281c097a" + integrity sha512-10P9No29rYX1j7F3EVPX3JvGPQPae+AomuSTPiF9eBQeChHI6iqjMIwR9JmOJXwpnn/oVGDk7I5IlskuMwU/pg== + dependencies: + "@webassemblyjs/ast" "1.11.1" + "@webassemblyjs/helper-buffer" "1.11.1" + "@webassemblyjs/helper-wasm-bytecode" "1.11.1" + "@webassemblyjs/wasm-gen" "1.11.1" + +"@webassemblyjs/ieee754@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/ieee754/-/ieee754-1.11.1.tgz#963929e9bbd05709e7e12243a099180812992614" + integrity sha512-hJ87QIPtAMKbFq6CGTkZYJivEwZDbQUgYd3qKSadTNOhVY7p+gfP6Sr0lLRVTaG1JjFj+r3YchoqRYxNH3M0GQ== + dependencies: + "@xtuc/ieee754" "^1.2.0" + +"@webassemblyjs/leb128@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/leb128/-/leb128-1.11.1.tgz#ce814b45574e93d76bae1fb2644ab9cdd9527aa5" + integrity sha512-BJ2P0hNZ0u+Th1YZXJpzW6miwqQUGcIHT1G/sf72gLVD9DZ5AdYTqPNbHZh6K1M5VmKvFXwGSWZADz+qBWxeRw== + dependencies: + "@xtuc/long" "4.2.2" + +"@webassemblyjs/utf8@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/utf8/-/utf8-1.11.1.tgz#d1f8b764369e7c6e6bae350e854dec9a59f0a3ff" + integrity sha512-9kqcxAEdMhiwQkHpkNiorZzqpGrodQQ2IGrHHxCy+Ozng0ofyMA0lTqiLkVs1uzTRejX+/O0EOT7KxqVPuXosQ== + +"@webassemblyjs/wasm-edit@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-edit/-/wasm-edit-1.11.1.tgz#ad206ebf4bf95a058ce9880a8c092c5dec8193d6" + integrity sha512-g+RsupUC1aTHfR8CDgnsVRVZFJqdkFHpsHMfJuWQzWU3tvnLC07UqHICfP+4XyL2tnr1amvl1Sdp06TnYCmVkA== + dependencies: + "@webassemblyjs/ast" "1.11.1" + "@webassemblyjs/helper-buffer" "1.11.1" + "@webassemblyjs/helper-wasm-bytecode" "1.11.1" + "@webassemblyjs/helper-wasm-section" "1.11.1" + "@webassemblyjs/wasm-gen" "1.11.1" + "@webassemblyjs/wasm-opt" "1.11.1" + "@webassemblyjs/wasm-parser" "1.11.1" + "@webassemblyjs/wast-printer" "1.11.1" + +"@webassemblyjs/wasm-gen@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-gen/-/wasm-gen-1.11.1.tgz#86c5ea304849759b7d88c47a32f4f039ae3c8f76" + integrity sha512-F7QqKXwwNlMmsulj6+O7r4mmtAlCWfO/0HdgOxSklZfQcDu0TpLiD1mRt/zF25Bk59FIjEuGAIyn5ei4yMfLhA== + dependencies: + "@webassemblyjs/ast" "1.11.1" + "@webassemblyjs/helper-wasm-bytecode" "1.11.1" + "@webassemblyjs/ieee754" "1.11.1" + "@webassemblyjs/leb128" "1.11.1" + "@webassemblyjs/utf8" "1.11.1" + +"@webassemblyjs/wasm-opt@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-opt/-/wasm-opt-1.11.1.tgz#657b4c2202f4cf3b345f8a4c6461c8c2418985f2" + integrity sha512-VqnkNqnZlU5EB64pp1l7hdm3hmQw7Vgqa0KF/KCNO9sIpI6Fk6brDEiX+iCOYrvMuBWDws0NkTOxYEb85XQHHw== + dependencies: + "@webassemblyjs/ast" "1.11.1" + "@webassemblyjs/helper-buffer" "1.11.1" + "@webassemblyjs/wasm-gen" "1.11.1" + "@webassemblyjs/wasm-parser" "1.11.1" + +"@webassemblyjs/wasm-parser@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wasm-parser/-/wasm-parser-1.11.1.tgz#86ca734534f417e9bd3c67c7a1c75d8be41fb199" + integrity sha512-rrBujw+dJu32gYB7/Lup6UhdkPx9S9SnobZzRVL7VcBH9Bt9bCBLEuX/YXOOtBsOZ4NQrRykKhffRWHvigQvOA== + dependencies: + "@webassemblyjs/ast" "1.11.1" + "@webassemblyjs/helper-api-error" "1.11.1" + "@webassemblyjs/helper-wasm-bytecode" "1.11.1" + "@webassemblyjs/ieee754" "1.11.1" + "@webassemblyjs/leb128" "1.11.1" + "@webassemblyjs/utf8" "1.11.1" + +"@webassemblyjs/wast-printer@1.11.1": + version "1.11.1" + resolved "https://registry.yarnpkg.com/@webassemblyjs/wast-printer/-/wast-printer-1.11.1.tgz#d0c73beda8eec5426f10ae8ef55cee5e7084c2f0" + integrity sha512-IQboUWM4eKzWW+N/jij2sRatKMh99QEelo3Eb2q0qXkvPRISAj8Qxtmw5itwqK+TTkBuUIE45AxYPToqPtL5gg== + dependencies: + "@webassemblyjs/ast" "1.11.1" + "@xtuc/long" "4.2.2" + +"@webpack-cli/configtest@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@webpack-cli/configtest/-/configtest-1.1.0.tgz#8342bef0badfb7dfd3b576f2574ab80c725be043" + integrity sha512-ttOkEkoalEHa7RaFYpM0ErK1xc4twg3Am9hfHhL7MVqlHebnkYd2wuI/ZqTDj0cVzZho6PdinY0phFZV3O0Mzg== + +"@webpack-cli/info@^1.4.0": + version "1.4.0" + resolved "https://registry.yarnpkg.com/@webpack-cli/info/-/info-1.4.0.tgz#b9179c3227ab09cbbb149aa733475fcf99430223" + integrity sha512-F6b+Man0rwE4n0409FyAJHStYA5OIZERxmnUfLVwv0mc0V1wLad3V7jqRlMkgKBeAq07jUvglacNaa6g9lOpuw== + dependencies: + envinfo "^7.7.3" + +"@webpack-cli/serve@^1.6.0": + version "1.6.0" + resolved "https://registry.yarnpkg.com/@webpack-cli/serve/-/serve-1.6.0.tgz#2c275aa05c895eccebbfc34cfb223c6e8bd591a2" + integrity sha512-ZkVeqEmRpBV2GHvjjUZqEai2PpUbuq8Bqd//vEYsp63J8WyexI8ppCqVS3Zs0QADf6aWuPdU+0XsPI647PVlQA== + +"@xtuc/ieee754@^1.2.0": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@xtuc/ieee754/-/ieee754-1.2.0.tgz#eef014a3145ae477a1cbc00cd1e552336dceb790" + integrity sha512-DX8nKgqcGwsc0eJSqYt5lwP4DH5FlHnmuWWBRy7X0NcaGR0ZtuyeESgMwTYVEtxmsNGY+qit4QYT/MIYTOTPeA== + +"@xtuc/long@4.2.2": + version "4.2.2" + resolved "https://registry.yarnpkg.com/@xtuc/long/-/long-4.2.2.tgz#d291c6a4e97989b5c61d9acf396ae4fe133a718d" + integrity sha512-NuHqBY1PB/D8xU6s/thBgOAiAP7HOYDQ32+BFZILJ8ivkUkAHQnWfn6WhL79Owj1qmUnoN/YPhktdIoucipkAQ== + +"@yarnpkg/lockfile@^1.1.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz#e77a97fbd345b76d83245edcd17d393b1b41fb31" + integrity sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ== + +JSONStream@1.3.5, JSONStream@^1.0.4: + version "1.3.5" + resolved "https://registry.yarnpkg.com/JSONStream/-/JSONStream-1.3.5.tgz#3208c1f08d3a4d99261ab64f92302bc15e111ca0" + integrity sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ== + dependencies: + jsonparse "^1.2.0" + through ">=2.2.7 <3" + +abab@^2.0.0: + version "2.0.5" + resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.5.tgz#c0b678fb32d60fc1219c784d6a826fe385aeb79a" + integrity sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q== + +abbrev@1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" + integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== + +abstract-leveldown@^6.2.1: + version "6.3.0" + resolved "https://registry.yarnpkg.com/abstract-leveldown/-/abstract-leveldown-6.3.0.tgz#d25221d1e6612f820c35963ba4bd739928f6026a" + integrity sha512-TU5nlYgta8YrBMNpc9FwQzRbiXsj49gsALsXadbGHt9CROPzX5fB0rWDR5mtdpOOKa5XqRFpbj1QroPAoPzVjQ== + dependencies: + buffer "^5.5.0" + immediate "^3.2.3" + level-concat-iterator "~2.0.0" + level-supports "~1.0.0" + xtend "~4.0.0" + +abstract-leveldown@~6.2.1, abstract-leveldown@~6.2.3: + version "6.2.3" + resolved "https://registry.yarnpkg.com/abstract-leveldown/-/abstract-leveldown-6.2.3.tgz#036543d87e3710f2528e47040bc3261b77a9a8eb" + integrity sha512-BsLm5vFMRUrrLeCcRc+G0t2qOaTzpoJQLOubq2XM72eNpjF5UdU5o/5NvlNhx95XHcAvcl8OMXr4mlg/fRgUXQ== + dependencies: + buffer "^5.5.0" + immediate "^3.2.3" + level-concat-iterator "~2.0.0" + level-supports "~1.0.0" + xtend "~4.0.0" + +accepts@~1.3.5, accepts@~1.3.7: + version "1.3.7" + resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.7.tgz#531bc726517a3b2b41f850021c6cc15eaab507cd" + integrity sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA== + dependencies: + mime-types "~2.1.24" + negotiator "0.6.2" + +acorn-globals@^4.3.2: + version "4.3.4" + resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-4.3.4.tgz#9fa1926addc11c97308c4e66d7add0d40c3272e7" + integrity sha512-clfQEh21R+D0leSbUdWf3OcfqyaCSAQ8Ryq00bofSekfr9W8u1jyYZo6ir0xu9Gtcf7BjcHJpnbZH7JOCpP60A== + dependencies: + acorn "^6.0.1" + acorn-walk "^6.0.1" + +acorn-import-assertions@^1.7.6: + version "1.8.0" + resolved "https://registry.yarnpkg.com/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz#ba2b5939ce62c238db6d93d81c9b111b29b855e9" + integrity sha512-m7VZ3jwz4eK6A4Vtt8Ew1/mNbP24u0FhdyfA7fSvnJR6LMdfOYnmuIrrJAgrYfYJ10F/otaHTtrtrtmHdMNzEw== + +acorn-jsx@^5.3.1: + version "5.3.2" + resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" + integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== + +acorn-walk@^6.0.1: + version "6.2.0" + resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-6.2.0.tgz#123cb8f3b84c2171f1f7fb252615b1c78a6b1a8c" + integrity sha512-7evsyfH1cLOCdAzZAd43Cic04yKydNx0cF+7tiA19p1XnLLPU4dpCQOqpjqwokFe//vS0QqfqqjCS2JkiIs0cA== + +acorn@^6.0.1: + version "6.4.2" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.2.tgz#35866fd710528e92de10cf06016498e47e39e1e6" + integrity sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ== + +acorn@^7.1.0, acorn@^7.4.0: + version "7.4.1" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" + integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== + +acorn@^8.4.1: + version "8.5.0" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.5.0.tgz#4512ccb99b3698c752591e9bb4472e38ad43cee2" + integrity sha512-yXbYeFy+jUuYd3/CDcg2NkIYE991XYX/bje7LmjJigUciaeO1JR4XxXgCIV1/Zc/dRuFEyw1L0pbA+qynJkW5Q== + +add-stream@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/add-stream/-/add-stream-1.0.0.tgz#6a7990437ca736d5e1288db92bd3266d5f5cb2aa" + integrity sha1-anmQQ3ynNtXhKI25K9MmbV9csqo= + +agent-base@6, agent-base@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-6.0.2.tgz#49fff58577cfee3f37176feab4c22e00f86d7f77" + integrity sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ== + dependencies: + debug "4" + +agentkeepalive@^4.1.3: + version "4.1.4" + resolved "https://registry.yarnpkg.com/agentkeepalive/-/agentkeepalive-4.1.4.tgz#d928028a4862cb11718e55227872e842a44c945b" + integrity sha512-+V/rGa3EuU74H6wR04plBb7Ks10FbtUQgRj/FQOG7uUIEuaINI+AiqJR1k6t3SVNs7o7ZjIdus6706qqzVq8jQ== + dependencies: + debug "^4.1.0" + depd "^1.1.2" + humanize-ms "^1.2.1" + +aggregate-error@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a" + integrity sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA== + dependencies: + clean-stack "^2.0.0" + indent-string "^4.0.0" + +ajv-keywords@^3.5.2: + version "3.5.2" + resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d" + integrity sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ== + +ajv@^6.10.0, ajv@^6.12.3, ajv@^6.12.4, ajv@^6.12.5: + version "6.12.6" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" + integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== + 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" + +ajv@^8.0.1: + version "8.7.1" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.7.1.tgz#52be6f1736b076074798124293618f132ad07a7e" + integrity sha512-gPpOObTO1QjbnN1sVMjJcp1TF9nggMfO4MBR5uQl6ZVTOaEPq5i4oq/6R9q2alMMPB3eg53wFv1RuJBLuxf3Hw== + dependencies: + fast-deep-equal "^3.1.1" + json-schema-traverse "^1.0.0" + require-from-string "^2.0.2" + uri-js "^4.2.2" + +ansi-colors@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348" + integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA== + +ansi-escapes@^4.2.1: + version "4.3.2" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e" + integrity sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ== + dependencies: + type-fest "^0.21.3" + +ansi-regex@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" + integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8= + +ansi-regex@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" + integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== + +ansi-styles@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" + integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== + dependencies: + color-convert "^1.9.0" + +ansi-styles@^4.0.0, ansi-styles@^4.1.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" + integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== + dependencies: + color-convert "^2.0.1" + +apache-md5@1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/apache-md5/-/apache-md5-1.1.2.tgz#ee49736b639b4f108b6e9e626c6da99306b41692" + integrity sha1-7klza2ObTxCLbp5ibG2pkwa0FpI= + +aproba@^1.0.3: + version "1.2.0" + resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" + integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw== + +aproba@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/aproba/-/aproba-2.0.0.tgz#52520b8ae5b569215b354efc0caa3fe1e45a8adc" + integrity sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ== + +are-we-there-yet@~1.1.2: + version "1.1.7" + resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz#b15474a932adab4ff8a50d9adfa7e4e926f21146" + integrity sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g== + dependencies: + delegates "^1.0.0" + readable-stream "^2.0.6" + +argparse@^1.0.7: + version "1.0.10" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-1.0.10.tgz#bcd6791ea5ae09725e17e5ad988134cd40b3d911" + integrity sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg== + dependencies: + sprintf-js "~1.0.2" + +argparse@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" + integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== + +array-differ@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/array-differ/-/array-differ-3.0.0.tgz#3cbb3d0f316810eafcc47624734237d6aee4ae6b" + integrity sha512-THtfYS6KtME/yIAhKjZ2ul7XI96lQGHRputJQHO80LAWQnuGP4iCIN8vdMRboGbIEYBwU33q8Tch1os2+X0kMg== + +array-equal@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/array-equal/-/array-equal-1.0.0.tgz#8c2a5ef2472fd9ea742b04c77a75093ba2757c93" + integrity sha1-jCpe8kcv2ep0KwTHenUJO6J1fJM= + +array-flatten@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" + integrity sha1-ml9pkFGx5wczKPKgCJaLZOopVdI= + +array-ify@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/array-ify/-/array-ify-1.0.0.tgz#9e528762b4a9066ad163a6962a364418e9626ece" + integrity sha1-nlKHYrSpBmrRY6aWKjZEGOlibs4= + +array-union@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" + integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== + +arrify@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" + integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0= + +arrify@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/arrify/-/arrify-2.0.1.tgz#c9655e9331e0abcd588d2a7cad7e9956f66701fa" + integrity sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug== + +asap@^2.0.0: + version "2.0.6" + resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" + integrity sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY= + +asn1@~0.2.3: + version "0.2.6" + resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.6.tgz#0d3a7bb6e64e02a90c0303b31f292868ea09a08d" + integrity sha512-ix/FxPn0MDjeyJ7i/yoHGFt/EX6LyNbxSEhPPXODPL+KB0VPk86UYfL0lMdy+KCnv+fmvIzySwaK5COwqVbWTQ== + dependencies: + safer-buffer "~2.1.0" + +assert-plus@1.0.0, assert-plus@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" + integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU= + +astral-regex@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31" + integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== + +async-limiter@~1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/async-limiter/-/async-limiter-1.0.1.tgz#dd379e94f0db8310b08291f9d64c3209766617fd" + integrity sha512-csOlWGAcRFJaI6m+F2WKdnMKr4HhdhFVBk0H/QbJFMCr+uO2kwohwXQPxw/9OCxp05r5ghVBFSyioixx3gfkNQ== + +async@3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/async/-/async-3.2.0.tgz#b3a2685c5ebb641d3de02d161002c60fc9f85720" + integrity sha512-TR2mEZFVOj2pLStYxLht7TyfuRzaydfpxr3k9RpHIzMgw7A64dzsdqCxH1WJyQdoe8T10nDXd9wnEigmiuHIZw== + +async@3.2.2: + version "3.2.2" + resolved "https://registry.yarnpkg.com/async/-/async-3.2.2.tgz#2eb7671034bb2194d45d30e31e24ec7e7f9670cd" + integrity sha512-H0E+qZaDEfx/FY4t7iLRv1W2fFI6+pyCeTw1uN20AQPiwqwM6ojPxHxdLv4z8hi2DtnW9BOckSspLucW7pIE5g== + +asynckit@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" + integrity sha1-x57Zf380y48robyXkLzDZkdLS3k= + +at-least-node@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/at-least-node/-/at-least-node-1.0.0.tgz#602cd4b46e844ad4effc92a8011a3c46e0238dc2" + integrity sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg== + +atomic-sleep@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/atomic-sleep/-/atomic-sleep-1.0.0.tgz#eb85b77a601fc932cfe432c5acd364a9e2c9075b" + integrity sha512-kNOjDqAh7px0XWNI+4QbzoiR/nTkHAWNud2uvnJquD1/x5a7EQZMJT0AczqK0Qn67oY/TTQ1LbUKajZpp3I9tQ== + +aws-sign2@~0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" + integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg= + +aws4@^1.8.0: + version "1.11.0" + resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.11.0.tgz#d61f46d83b2519250e2784daf5b09479a8b41c59" + integrity sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA== + +balanced-match@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" + integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== + +base64-js@^1.3.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" + integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== + +bcrypt-pbkdf@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" + integrity sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4= + dependencies: + tweetnacl "^0.14.3" + +bcryptjs@2.4.3: + version "2.4.3" + resolved "https://registry.yarnpkg.com/bcryptjs/-/bcryptjs-2.4.3.tgz#9ab5627b93e60621ff7cdac5da9733027df1d0cb" + integrity sha1-mrVie5PmBiH/fNrF2pczAn3x0Ms= + +before-after-hook@^2.2.0: + version "2.2.2" + resolved "https://registry.yarnpkg.com/before-after-hook/-/before-after-hook-2.2.2.tgz#a6e8ca41028d90ee2c24222f201c90956091613e" + integrity sha512-3pZEU3NT5BFUo/AD5ERPWOgQOCZITni6iavr5AUw5AUwQjMlI0kzu5btnyD39AF0gUEsDPwJT+oY1ORBJijPjQ== + +big.js@^5.2.2: + version "5.2.2" + resolved "https://registry.yarnpkg.com/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328" + integrity sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ== + +body-parser@1.19.0: + version "1.19.0" + resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.19.0.tgz#96b2709e57c9c4e09a6fd66a8fd979844f69f08a" + integrity sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw== + 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" + +brace-expansion@^1.1.7: + version "1.1.11" + resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" + integrity sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA== + dependencies: + balanced-match "^1.0.0" + concat-map "0.0.1" + +braces@^3.0.1: + version "3.0.2" + resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" + integrity sha512-b8um+L1RzM3WDSzvhm6gIz1yfTbBt6YTlcEKAvsmqCZZFw46z626lVj9j1yEPW33H5H+lBQpZMP1k8l+78Ha0A== + dependencies: + fill-range "^7.0.1" + +browser-process-hrtime@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626" + integrity sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow== + +browserslist@^4.14.5: + version "4.17.6" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.17.6.tgz#c76be33e7786b497f66cad25a73756c8b938985d" + integrity sha512-uPgz3vyRTlEiCv4ee9KlsKgo2V6qPk7Jsn0KAn2OBqbqKo3iNcPEC1Ti6J4dwnz+aIRfEEEuOzC9IBk8tXUomw== + dependencies: + caniuse-lite "^1.0.30001274" + electron-to-chromium "^1.3.886" + escalade "^3.1.1" + node-releases "^2.0.1" + picocolors "^1.0.0" + +buffer-equal-constant-time@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz#f8e71132f7ffe6e01a5c9697a4c6f3e48d5cc819" + integrity sha1-+OcRMvf/5uAaXJaXpMbz5I1cyBk= + +buffer-from@^1.0.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" + integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== + +buffer@^5.5.0, buffer@^5.6.0: + version "5.7.1" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-5.7.1.tgz#ba62e7c13133053582197160851a8f648e99eed0" + integrity sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ== + dependencies: + base64-js "^1.3.1" + ieee754 "^1.1.13" + +builtins@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/builtins/-/builtins-1.0.3.tgz#cb94faeb61c8696451db36534e1422f94f0aee88" + integrity sha1-y5T662HIaWRR2zZTThQi+U8K7og= + +byline@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/byline/-/byline-5.0.0.tgz#741c5216468eadc457b03410118ad77de8c1ddb1" + integrity sha1-dBxSFkaOrcRXsDQQEYrXfejB3bE= + +byte-size@^7.0.0: + version "7.0.1" + resolved "https://registry.yarnpkg.com/byte-size/-/byte-size-7.0.1.tgz#b1daf3386de7ab9d706b941a748dbfc71130dee3" + integrity sha512-crQdqyCwhokxwV1UyDzLZanhkugAgft7vt0qbbdt60C6Zf3CAiGmtUCylbtYwrU6loOUw3euGrNtW1J651ot1A== + +bytes@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.0.0.tgz#d32815404d689699f85a4ea4fa8755dd13a96048" + integrity sha1-0ygVQE1olpn4Wk6k+odV3ROpYEg= + +bytes@3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.0.tgz#f6cf7933a360e0588fa9fde85651cdc7f805d1f6" + integrity sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg== + +cacache@^15.0.5, cacache@^15.2.0: + version "15.3.0" + resolved "https://registry.yarnpkg.com/cacache/-/cacache-15.3.0.tgz#dc85380fb2f556fe3dda4c719bfa0ec875a7f1eb" + integrity sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ== + 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" + +cacheable-request@^6.0.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/cacheable-request/-/cacheable-request-6.1.0.tgz#20ffb8bd162ba4be11e9567d823db651052ca912" + integrity sha512-Oj3cAGPCqOZX7Rz64Uny2GYAZNliQSqfbePrgAQ1wKAihYmCUnraBtJtKcGR4xz7wF+LoJC+ssFZvv5BgF9Igg== + dependencies: + clone-response "^1.0.2" + get-stream "^5.1.0" + http-cache-semantics "^4.0.0" + keyv "^3.0.0" + lowercase-keys "^2.0.0" + normalize-url "^4.1.0" + responselike "^1.0.2" + +call-bind@^1.0.0, call-bind@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/call-bind/-/call-bind-1.0.2.tgz#b1d4e89e688119c3c9a903ad30abb2f6a919be3c" + integrity sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA== + dependencies: + function-bind "^1.1.1" + get-intrinsic "^1.0.2" + +callsites@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" + integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== + +camelcase-keys@^6.2.2: + version "6.2.2" + resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-6.2.2.tgz#5e755d6ba51aa223ec7d3d52f25778210f9dc3c0" + integrity sha512-YrwaA0vEKazPBkn0ipTiMpSajYDSe+KjQfrjhcBMxJt/znbvlHd8Pw/Vamaz5EB4Wfhs3SUR3Z9mwRu/P3s3Yg== + dependencies: + camelcase "^5.3.1" + map-obj "^4.0.0" + quick-lru "^4.0.1" + +camelcase@^5.3.1: + version "5.3.1" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" + integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== + +caniuse-lite@^1.0.30001274: + version "1.0.30001280" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001280.tgz#066a506046ba4be34cde5f74a08db7a396718fb7" + integrity sha512-kFXwYvHe5rix25uwueBxC569o53J6TpnGu0BEEn+6Lhl2vsnAumRFWEBhDft1fwyo6m1r4i+RqA4+163FpeFcA== + +caseless@~0.12.0: + version "0.12.0" + resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" + integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= + +chalk@^2.0.0, chalk@^2.3.0, chalk@^2.4.1: + version "2.4.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" + integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== + dependencies: + ansi-styles "^3.2.1" + escape-string-regexp "^1.0.5" + supports-color "^5.3.0" + +chalk@^4.0.0, chalk@^4.1.0: + version "4.1.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" + integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== + dependencies: + ansi-styles "^4.1.0" + supports-color "^7.1.0" + +chardet@^0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" + integrity sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA== + +child_process@~1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/child_process/-/child_process-1.0.2.tgz#b1f7e7fc73d25e7fd1d455adc94e143830182b5a" + integrity sha1-sffn/HPSXn/R1FWtyU4UODAYK1o= + +chownr@^1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" + integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg== + +chownr@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/chownr/-/chownr-2.0.0.tgz#15bfbe53d2eab4cf70f18a8cd68ebe5b3cb1dece" + integrity sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ== + +chrome-trace-event@^1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz#1015eced4741e15d06664a957dbbf50d041e26ac" + integrity sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg== + +ci-info@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46" + integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ== + +classnames@^2.2: + version "2.3.1" + resolved "https://registry.yarnpkg.com/classnames/-/classnames-2.3.1.tgz#dfcfa3891e306ec1dad105d0e88f4417b8535e8e" + integrity sha512-OlQdbZ7gLfGarSqxesMesDa5uz7KFbID8Kpq/SxIoNGDqY8lSYs0D+hhtBXhcdB3rcbXArFr7vlHheLk1voeNA== + +clean-stack@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" + integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== + +cli-cursor@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307" + integrity sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw== + dependencies: + restore-cursor "^3.1.0" + +cli-width@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-3.0.0.tgz#a2f48437a2caa9a22436e794bf071ec9e61cedf6" + integrity sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw== + +clipanion@3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/clipanion/-/clipanion-3.1.0.tgz#3e217dd6476bb9236638b07eb4673f7309839819" + integrity sha512-v025Hz+IDQ15FpOyK8p02h5bFznMu6rLFsJSyOPR+7WrbSnZ1Ek6pblPukV7K5tC/dsWfncQPIrJ4iUy2PXkbw== + dependencies: + typanion "^3.3.1" + +cliui@^7.0.2: + version "7.0.4" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" + integrity sha512-OcRE68cOsVMXp1Yvonl/fzkQOyjLSu/8bhPDfQt0e0/Eb283TKP20Fs2MqoPsr9SwA595rRCA+QMzYc9nBP+JQ== + dependencies: + string-width "^4.2.0" + strip-ansi "^6.0.0" + wrap-ansi "^7.0.0" + +clone-deep@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/clone-deep/-/clone-deep-4.0.1.tgz#c19fd9bdbbf85942b4fd979c84dcf7d5f07c2387" + integrity sha512-neHB9xuzh/wk0dIHweyAXv2aPGZIVk3pLMe+/RNzINf17fe0OG96QroktYAUm7SM1PBnzTabaLboqqxDyMU+SQ== + dependencies: + is-plain-object "^2.0.4" + kind-of "^6.0.2" + shallow-clone "^3.0.0" + +clone-response@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/clone-response/-/clone-response-1.0.2.tgz#d1dc973920314df67fbeb94223b4ee350239e96b" + integrity sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws= + dependencies: + mimic-response "^1.0.0" + +clone@^1.0.2: + version "1.0.4" + resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" + integrity sha1-2jCcwmPfFZlMaIypAheco8fNfH4= + +cmd-shim@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/cmd-shim/-/cmd-shim-4.1.0.tgz#b3a904a6743e9fede4148c6f3800bf2a08135bdd" + integrity sha512-lb9L7EM4I/ZRVuljLPEtUJOP+xiQVknZ4ZMpMgEp4JzNldPb27HU03hi6K1/6CoIuit/Zm/LQXySErFeXxDprw== + dependencies: + mkdirp-infer-owner "^2.0.0" + +code-point-at@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/code-point-at/-/code-point-at-1.1.0.tgz#0d070b4d043a5bea33a2f1a40e2edb3d9a4ccf77" + integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c= + +codemirror@~5.61.0: + version "5.61.1" + resolved "https://registry.yarnpkg.com/codemirror/-/codemirror-5.61.1.tgz#ccfc8a43b8fcfb8b12e8e75b5ffde48d541406e0" + integrity sha512-+D1NZjAucuzE93vJGbAaXzvoBHwp9nJZWWWF9utjv25+5AZUiah6CIlfb4ikG4MoDsFsCG8niiJH5++OO2LgIQ== + +color-convert@^1.9.0: + version "1.9.3" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" + integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== + dependencies: + color-name "1.1.3" + +color-convert@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" + integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== + dependencies: + color-name "~1.1.4" + +color-name@1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" + integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= + +color-name@~1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" + integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== + +colorette@^2.0.14: + version "2.0.16" + resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.16.tgz#713b9af84fdb000139f04546bd4a93f62a5085da" + integrity sha512-hUewv7oMjCp+wkBv5Rm0v87eJhq4woh5rSR+42YSQJKecCqgIqNkZ6lAlQms/BwHPJA5NKMRlpxPRv0n8HQW6g== + +columnify@^1.5.4: + version "1.5.4" + resolved "https://registry.yarnpkg.com/columnify/-/columnify-1.5.4.tgz#4737ddf1c7b69a8a7c340570782e947eec8e78bb" + integrity sha1-Rzfd8ce2mop8NAVweC6UfuyOeLs= + dependencies: + strip-ansi "^3.0.0" + wcwidth "^1.0.0" + +combined-stream@^1.0.6, combined-stream@~1.0.6: + version "1.0.8" + resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" + integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== + dependencies: + delayed-stream "~1.0.0" + +commander@^2.20.0: + version "2.20.3" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" + integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== + +commander@^7.0.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-7.2.0.tgz#a36cb57d0b501ce108e4d20559a150a391d97ab7" + integrity sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw== + +commander@~6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-6.0.0.tgz#2b270da94f8fb9014455312f829a1129dbf8887e" + integrity sha512-s7EA+hDtTYNhuXkTlhqew4txMZVdszBmKWSPEMxGr8ru8JXR7bLUFIAtPhcSuFdJQ0ILMxnJi8GkQL0yvDy/YA== + +commondir@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/commondir/-/commondir-1.0.1.tgz#ddd800da0c66127393cca5950ea968a3aaf1253b" + integrity sha1-3dgA2gxmEnOTzKWVDqloo6rxJTs= + +compare-func@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/compare-func/-/compare-func-2.0.0.tgz#fb65e75edbddfd2e568554e8b5b05fff7a51fcb3" + integrity sha512-zHig5N+tPWARooBnb0Zx1MFcdfpyJrfTJ3Y5L+IFvUm8rM74hHz66z0gw0x4tijh5CorKkKUCnW82R2vmpeCRA== + dependencies: + array-ify "^1.0.0" + dot-prop "^5.1.0" + +compressible@~2.0.16: + version "2.0.18" + resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.18.tgz#af53cca6b070d4c3c0750fbd77286a6d7cc46fba" + integrity sha512-AF3r7P5dWxL8MxyITRMlORQNaOA2IkAFaTr4k7BUumjPtRpGDTZpl0Pb1XCO6JeDCBdp126Cgs9sMxqSjgYyRg== + dependencies: + mime-db ">= 1.43.0 < 2" + +compression@1.7.4: + version "1.7.4" + resolved "https://registry.yarnpkg.com/compression/-/compression-1.7.4.tgz#95523eff170ca57c29a0ca41e6fe131f41e5bb8f" + integrity sha512-jaSIDzP9pZVS4ZfQ+TzvtiWhdpFhE2RDHz8QJkpX9SIpLq88VueF5jJw6t+6CUQcAoA6t+x89MLrWAqpfDE8iQ== + dependencies: + accepts "~1.3.5" + bytes "3.0.0" + compressible "~2.0.16" + debug "2.6.9" + on-headers "~1.0.2" + safe-buffer "5.1.2" + vary "~1.1.2" + +concat-map@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" + integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= + +concat-stream@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-2.0.0.tgz#414cf5af790a48c60ab9be4527d56d5e41133cb1" + integrity sha512-MWufYdFw53ccGjCA+Ol7XJYpAlW6/prSMzuPOTRnJGcGzuhLn4Scrz7qf6o8bROZ514ltazcIFJZevcfbo0x7A== + dependencies: + buffer-from "^1.0.0" + inherits "^2.0.3" + readable-stream "^3.0.2" + typedarray "^0.0.6" + +config-chain@^1.1.12: + version "1.1.13" + resolved "https://registry.yarnpkg.com/config-chain/-/config-chain-1.1.13.tgz#fad0795aa6a6cdaff9ed1b68e9dff94372c232f4" + integrity sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ== + dependencies: + ini "^1.3.4" + proto-list "~1.2.1" + +console-control-strings@^1.0.0, console-control-strings@~1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" + integrity sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4= + +content-disposition@0.5.3: + version "0.5.3" + resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.3.tgz#e130caf7e7279087c5616c2007d0485698984fbd" + integrity sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g== + dependencies: + safe-buffer "5.1.2" + +content-type@~1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" + integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA== + +conventional-changelog-angular@^5.0.12: + version "5.0.13" + resolved "https://registry.yarnpkg.com/conventional-changelog-angular/-/conventional-changelog-angular-5.0.13.tgz#896885d63b914a70d4934b59d2fe7bde1832b28c" + integrity sha512-i/gipMxs7s8L/QeuavPF2hLnJgH6pEZAttySB6aiQLWcX3puWDL3ACVmvBhJGxnAy52Qc15ua26BufY6KpmrVA== + dependencies: + compare-func "^2.0.0" + q "^1.5.1" + +conventional-changelog-core@^4.2.2: + version "4.2.4" + resolved "https://registry.yarnpkg.com/conventional-changelog-core/-/conventional-changelog-core-4.2.4.tgz#e50d047e8ebacf63fac3dc67bf918177001e1e9f" + integrity sha512-gDVS+zVJHE2v4SLc6B0sLsPiloR0ygU7HaDW14aNJE1v4SlqJPILPl/aJC7YdtRE4CybBf8gDwObBvKha8Xlyg== + dependencies: + add-stream "^1.0.0" + conventional-changelog-writer "^5.0.0" + conventional-commits-parser "^3.2.0" + dateformat "^3.0.0" + get-pkg-repo "^4.0.0" + git-raw-commits "^2.0.8" + git-remote-origin-url "^2.0.0" + git-semver-tags "^4.1.1" + lodash "^4.17.15" + normalize-package-data "^3.0.0" + q "^1.5.1" + read-pkg "^3.0.0" + read-pkg-up "^3.0.0" + through2 "^4.0.0" + +conventional-changelog-preset-loader@^2.3.4: + version "2.3.4" + resolved "https://registry.yarnpkg.com/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-2.3.4.tgz#14a855abbffd59027fd602581f1f34d9862ea44c" + integrity sha512-GEKRWkrSAZeTq5+YjUZOYxdHq+ci4dNwHvpaBC3+ENalzFWuCWa9EZXSuZBpkr72sMdKB+1fyDV4takK1Lf58g== + +conventional-changelog-writer@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/conventional-changelog-writer/-/conventional-changelog-writer-5.0.0.tgz#c4042f3f1542f2f41d7d2e0d6cad23aba8df8eec" + integrity sha512-HnDh9QHLNWfL6E1uHz6krZEQOgm8hN7z/m7tT16xwd802fwgMN0Wqd7AQYVkhpsjDUx/99oo+nGgvKF657XP5g== + dependencies: + conventional-commits-filter "^2.0.7" + dateformat "^3.0.0" + handlebars "^4.7.6" + json-stringify-safe "^5.0.1" + lodash "^4.17.15" + meow "^8.0.0" + semver "^6.0.0" + split "^1.0.0" + through2 "^4.0.0" + +conventional-commits-filter@^2.0.7: + version "2.0.7" + resolved "https://registry.yarnpkg.com/conventional-commits-filter/-/conventional-commits-filter-2.0.7.tgz#f8d9b4f182fce00c9af7139da49365b136c8a0b3" + integrity sha512-ASS9SamOP4TbCClsRHxIHXRfcGCnIoQqkvAzCSbZzTFLfcTqJVugB0agRgsEELsqaeWgsXv513eS116wnlSSPA== + dependencies: + lodash.ismatch "^4.4.0" + modify-values "^1.0.0" + +conventional-commits-parser@^3.2.0: + version "3.2.3" + resolved "https://registry.yarnpkg.com/conventional-commits-parser/-/conventional-commits-parser-3.2.3.tgz#fc43704698239451e3ef35fd1d8ed644f46bd86e" + integrity sha512-YyRDR7On9H07ICFpRm/igcdjIqebXbvf4Cff+Pf0BrBys1i1EOzx9iFXNlAbdrLAR8jf7bkUYkDAr8pEy0q4Pw== + dependencies: + JSONStream "^1.0.4" + is-text-path "^1.0.1" + lodash "^4.17.15" + meow "^8.0.0" + split2 "^3.0.0" + through2 "^4.0.0" + +conventional-recommended-bump@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/conventional-recommended-bump/-/conventional-recommended-bump-6.1.0.tgz#cfa623285d1de554012f2ffde70d9c8a22231f55" + integrity sha512-uiApbSiNGM/kkdL9GTOLAqC4hbptObFo4wW2QRyHsKciGAfQuLU1ShZ1BIVI/+K2BE/W1AWYQMCXAsv4dyKPaw== + dependencies: + concat-stream "^2.0.0" + conventional-changelog-preset-loader "^2.3.4" + conventional-commits-filter "^2.0.7" + conventional-commits-parser "^3.2.0" + git-raw-commits "^2.0.8" + git-semver-tags "^4.1.1" + meow "^8.0.0" + q "^1.5.1" + +cookie-signature@1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" + integrity sha1-4wOogrNCzD7oylE6eZmXNNqzriw= + +cookie@0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.4.0.tgz#beb437e7022b3b6d49019d088665303ebe9c14ba" + integrity sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg== + +cookies@0.8.0: + version "0.8.0" + resolved "https://registry.yarnpkg.com/cookies/-/cookies-0.8.0.tgz#1293ce4b391740a8406e3c9870e828c4b54f3f90" + integrity sha512-8aPsApQfebXnuI+537McwYsDtjVxGm8gTIzQI3FDW6t5t/DAhERxtnbEPN/8RX+uZthoz4eCOgloXaE5cYyNow== + dependencies: + depd "~2.0.0" + keygrip "~1.1.0" + +core-util-is@1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" + integrity sha1-tf1UIgqivFq1eqtxQMlAdUUDwac= + +core-util-is@~1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.3.tgz#a6042d3634c2b27e9328f837b965fac83808db85" + integrity sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ== + +cors@2.8.5: + version "2.8.5" + resolved "https://registry.yarnpkg.com/cors/-/cors-2.8.5.tgz#eac11da51592dd86b9f06f6e7ac293b3df875d29" + integrity sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g== + dependencies: + object-assign "^4" + vary "^1" + +cosmiconfig@^7.0.0: + version "7.0.1" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-7.0.1.tgz#714d756522cace867867ccb4474c5d01bbae5d6d" + integrity sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ== + dependencies: + "@types/parse-json" "^4.0.0" + import-fresh "^3.2.1" + parse-json "^5.0.0" + path-type "^4.0.0" + yaml "^1.10.0" + +cross-spawn@^6.0.5: + version "6.0.5" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" + integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ== + dependencies: + nice-try "^1.0.4" + path-key "^2.0.1" + semver "^5.5.0" + shebang-command "^1.2.0" + which "^1.2.9" + +cross-spawn@^7.0.2, cross-spawn@^7.0.3: + version "7.0.3" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" + integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== + dependencies: + path-key "^3.1.0" + shebang-command "^2.0.0" + which "^2.0.1" + +crypto@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/crypto/-/crypto-1.0.1.tgz#2af1b7cad8175d24c8a1b0778255794a21803037" + integrity sha512-VxBKmeNcqQdiUQUW2Tzq0t377b54N2bMtXO/qiLa+6eRRmmC4qT3D4OnTGoT/U6O9aklQ/jTwbOtRMTTY8G0Ig== + +css-loader@^5.0.1: + version "5.2.7" + resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-5.2.7.tgz#9b9f111edf6fb2be5dc62525644cbc9c232064ae" + integrity sha512-Q7mOvpBNBG7YrVGMxRxcBJZFL75o+cH2abNASdibkj/fffYD8qWbInZrD0S9ccI6vZclF3DsHE7njGlLtaHbhg== + dependencies: + icss-utils "^5.1.0" + loader-utils "^2.0.0" + postcss "^8.2.15" + 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.5" + +cssesc@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee" + integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== + +cssom@^0.4.1: + version "0.4.4" + resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.4.4.tgz#5a66cf93d2d0b661d80bf6a44fb65f5c2e4e0a10" + integrity sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw== + +cssom@~0.3.6: + version "0.3.8" + resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.8.tgz#9f1276f5b2b463f2114d3f2c75250af8c1a36f4a" + integrity sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg== + +cssstyle@^2.0.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-2.3.0.tgz#ff665a0ddbdc31864b09647f34163443d90b0852" + integrity sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A== + dependencies: + cssom "~0.3.6" + +csstype@2.6.9: + version "2.6.9" + resolved "https://registry.yarnpkg.com/csstype/-/csstype-2.6.9.tgz#05141d0cd557a56b8891394c1911c40c8a98d098" + integrity sha512-xz39Sb4+OaTsULgUERcCk+TJj8ylkL4aSVDQiX/ksxbELSqwkgt4d4RD7fovIdgJGSuNYqwZEiVjYY5l0ask+Q== + +csstype@^3.0.2, csstype@~3.0.3: + version "3.0.9" + resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.0.9.tgz#6410af31b26bd0520933d02cbc64fce9ce3fbf0b" + integrity sha512-rpw6JPxK6Rfg1zLOYCSwle2GFOOsnjmDYDaBwEcwoOg4qlsIVCN789VkBZDJAGi4T07gI4YSutR43t9Zz4Lzuw== + +d@1, d@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/d/-/d-1.0.1.tgz#8698095372d58dbee346ffd0c7093f99f8f9eb5a" + integrity sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA== + dependencies: + es5-ext "^0.10.50" + type "^1.0.1" + +dargs@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/dargs/-/dargs-7.0.0.tgz#04015c41de0bcb69ec84050f3d9be0caf8d6d5cc" + integrity sha512-2iy1EkLdlBzQGvbweYRFxmFath8+K7+AKB0TlhHWkNuH+TmovaMH/Wp7V7R4u7f4SnX3OgLsU9t1NI9ioDnUpg== + +dashdash@^1.12.0: + version "1.14.1" + resolved "https://registry.yarnpkg.com/dashdash/-/dashdash-1.14.1.tgz#853cfa0f7cbe2fed5de20326b8dd581035f6e2f0" + integrity sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA= + dependencies: + assert-plus "^1.0.0" + +data-urls@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-1.1.0.tgz#15ee0582baa5e22bb59c77140da8f9c76963bbfe" + integrity sha512-YTWYI9se1P55u58gL5GkQHW4P6VJBJ5iBT+B5a7i2Tjadhv52paJG0qHX4A0OR6/t52odI64KP2YvFpkDOi3eQ== + dependencies: + abab "^2.0.0" + whatwg-mimetype "^2.2.0" + whatwg-url "^7.0.0" + +dateformat@^3.0.0: + version "3.0.3" + resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-3.0.3.tgz#a6e37499a4d9a9cf85ef5872044d62901c9889ae" + integrity sha512-jyCETtSl3VMZMWeRo7iY1FL19ges1t55hMo5yaam4Jrsm5EPL89UQkoQRyiI+Yf4k8r2ZpdngkV8hr1lIdjb3Q== + +dayjs@1.10.7: + version "1.10.7" + resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.10.7.tgz#2cf5f91add28116748440866a0a1d26f3a6ce468" + integrity sha512-P6twpd70BcPK34K26uJ1KT3wlhpuOAPoMwJzpsIWUxHZ7wpmbdZL/hQqBDfz7hGurYSa5PhzdhDHtt319hL3ig== + +debug@2.6.9, debug@^2.6.9: + version "2.6.9" + resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" + integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== + dependencies: + ms "2.0.0" + +debug@4, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2: + version "4.3.2" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.2.tgz#f0a49c18ac8779e31d4a0c6029dfb76873c7428b" + integrity sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw== + dependencies: + ms "2.1.2" + +debug@4.3.1: + version "4.3.1" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.1.tgz#f0d229c505e0c6d8c49ac553d1b13dc183f6b2ee" + integrity sha512-doEwdvm4PCeK4K3RQN2ZC2BYUBaxwLARCqZmMjtF8a51J2Rb0xpVloFRnCODwqjpwnAoao4pelN8l3RJdv3gRQ== + dependencies: + ms "2.1.2" + +debuglog@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/debuglog/-/debuglog-1.0.1.tgz#aa24ffb9ac3df9a2351837cfb2d279360cd78492" + integrity sha1-qiT/uaw9+aI1GDfPstJ5NgzXhJI= + +decamelize-keys@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/decamelize-keys/-/decamelize-keys-1.1.0.tgz#d171a87933252807eb3cb61dc1c1445d078df2d9" + integrity sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk= + dependencies: + decamelize "^1.1.0" + map-obj "^1.0.0" + +decamelize@^1.1.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" + integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= + +decode-uri-component@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" + integrity sha1-6zkTMzRYd1y4TNGh+uBiEGu4dUU= + +decompress-response@^3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/decompress-response/-/decompress-response-3.3.0.tgz#80a4dd323748384bfa248083622aedec982adff3" + integrity sha1-gKTdMjdIOEv6JICDYirt7Jgq3/M= + dependencies: + mimic-response "^1.0.0" + +dedent@^0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/dedent/-/dedent-0.7.0.tgz#2495ddbaf6eb874abb0e1be9df22d2e5a544326c" + integrity sha1-JJXduvbrh0q7Dhvp3yLS5aVEMmw= + +deep-equal@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/deep-equal/-/deep-equal-1.1.1.tgz#b5c98c942ceffaf7cb051e24e1434a25a2e6076a" + integrity sha512-yd9c5AdiqVcR+JjcwUQb9DkhJc8ngNr0MahEBGvDiJw8puWab2yZlh+nkasOnZP+EGTAP6rRp2JzJhJZzvNF8g== + 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" + +deep-extend@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/deep-extend/-/deep-extend-0.6.0.tgz#c4fa7c95404a17a9c3e8ca7e1537312b736330ac" + integrity sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA== + +deep-is@^0.1.3, deep-is@~0.1.3: + version "0.1.4" + resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.4.tgz#a6f2dce612fadd2ef1f519b73551f17e85199831" + integrity sha512-oIPzksmTg4/MriiaYGO+okXDT7ztn/w3Eptv/+gSIdMdKsJo0u4CfYNFJPy+4SKMuCqGw2wxnA+URMg3t8a/bQ== + +deepmerge@^4.2.2: + version "4.2.2" + resolved "https://registry.yarnpkg.com/deepmerge/-/deepmerge-4.2.2.tgz#44d2ea3679b8f4d4ffba33f03d865fc1e7bf4955" + integrity sha512-FJ3UgI4gIl+PHZm53knsuSFpE+nESMr7M4v9QcgB7S63Kj/6WqMiFQJpBBYz1Pt+66bZpP3Q7Lye0Oo9MPKEdg== + +defaults@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/defaults/-/defaults-1.0.3.tgz#c656051e9817d9ff08ed881477f3fe4019f3ef7d" + integrity sha1-xlYFHpgX2f8I7YgUd/P+QBnz730= + dependencies: + clone "^1.0.2" + +defer-to-connect@^1.0.1: + version "1.1.3" + resolved "https://registry.yarnpkg.com/defer-to-connect/-/defer-to-connect-1.1.3.tgz#331ae050c08dcf789f8c83a7b81f0ed94f4ac591" + integrity sha512-0ISdNousHvZT2EiFlZeZAHBUvSxmKswVCEf8hW7KWgG4a8MVEu/3Vb6uWYozkjylyCxe0JBIiRB1jV45S70WVQ== + +deferred-leveldown@~5.3.0: + version "5.3.0" + resolved "https://registry.yarnpkg.com/deferred-leveldown/-/deferred-leveldown-5.3.0.tgz#27a997ad95408b61161aa69bd489b86c71b78058" + integrity sha512-a59VOT+oDy7vtAbLRCZwWgxu2BaCfd5Hk7wxJd48ei7I+nsg8Orlb9CLG0PMZienk9BSUKgeAqkO2+Lw+1+Ukw== + dependencies: + abstract-leveldown "~6.2.1" + inherits "^2.0.3" + +define-properties@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1" + integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ== + dependencies: + object-keys "^1.0.12" + +delayed-stream@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" + integrity sha1-3zrhmayt+31ECqrgsp4icrJOxhk= + +delegates@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" + integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= + +depd@^1.1.2, depd@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" + integrity sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak= + +depd@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" + integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== + +dependency-graph@^0.9.0: + version "0.9.0" + resolved "https://registry.yarnpkg.com/dependency-graph/-/dependency-graph-0.9.0.tgz#11aed7e203bc8b00f48356d92db27b265c445318" + integrity sha512-9YLIBURXj4DJMFALxXw9K3Y3rwb5Fk0X5/8ipCzaN84+gKxoHK43tVKRNakCQbiEx07E8Uwhuq21BpUagFhZ8w== + +deprecation@^2.0.0, deprecation@^2.3.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/deprecation/-/deprecation-2.3.1.tgz#6368cbdb40abf3373b525ac87e4a260c3a700919" + integrity sha512-xmHIy4F3scKVwMsQ4WnVaS8bHOx0DmVwRywosKhaILI0ywMDWPtBSku2HNxRvF7jtwDRsoEwYQSfbxj8b7RlJQ== + +destroy@~1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" + integrity sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA= + +detect-indent@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-5.0.0.tgz#3871cc0a6a002e8c3e5b3cf7f336264675f06b9d" + integrity sha1-OHHMCmoALow+Wzz38zYmRnXwa50= + +detect-indent@^6.0.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-6.1.0.tgz#592485ebbbf6b3b1ab2be175c8393d04ca0d57e6" + integrity sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA== + +detect-newline@3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651" + integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA== + +dezalgo@^1.0.0: + version "1.0.3" + resolved "https://registry.yarnpkg.com/dezalgo/-/dezalgo-1.0.3.tgz#7f742de066fc748bc8db820569dddce49bf0d456" + integrity sha1-f3Qt4Gb8dIvI24IFad3c5Jvw1FY= + dependencies: + asap "^2.0.0" + wrappy "1" + +dir-glob@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" + integrity sha512-WkrWp9GR4KXfKGYzOLmTuGVi1UWFfws377n9cc55/tb6DuqyF6pcQ5AbiHEshaDpY9v6oaSr2XCDidGmMwdzIA== + dependencies: + path-type "^4.0.0" + +doctrine@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" + integrity sha512-yS+Q5i3hBf7GBkd4KG8a7eBNNWNGLTaEwwYWUijIYM7zrlYDM0BFXHjjPWlWZ1Rg7UaddZeIDmi9jF3HmqiQ2w== + dependencies: + esutils "^2.0.2" + +dom-helpers@^3.4.0: + version "3.4.0" + resolved "https://registry.yarnpkg.com/dom-helpers/-/dom-helpers-3.4.0.tgz#e9b369700f959f62ecde5a6babde4bccd9169af8" + integrity sha512-LnuPJ+dwqKDIyotW1VzmOZ5TONUN7CwkCR5hrgawTUbkBGYdeoNLZo6nNfGkCrjtE1nXXaj7iMMpDa8/d9WoIA== + dependencies: + "@babel/runtime" "^7.1.2" + +dom-serializer@^1.0.1: + version "1.3.2" + resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-1.3.2.tgz#6206437d32ceefaec7161803230c7a20bc1b4d91" + integrity sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig== + dependencies: + domelementtype "^2.0.1" + domhandler "^4.2.0" + entities "^2.0.0" + +dom4@^2.1.5: + version "2.1.6" + resolved "https://registry.yarnpkg.com/dom4/-/dom4-2.1.6.tgz#c90df07134aa0dbd81ed4d6ba1237b36fc164770" + integrity sha512-JkCVGnN4ofKGbjf5Uvc8mmxaATIErKQKSgACdBXpsQ3fY6DlIpAyWfiBSrGkttATssbDCp3psiAKWXk5gmjycA== + +domelementtype@^2.0.1, domelementtype@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.2.0.tgz#9a0b6c2782ed6a1c7323d42267183df9bd8b1d57" + integrity sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A== + +domexception@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/domexception/-/domexception-1.0.1.tgz#937442644ca6a31261ef36e3ec677fe805582c90" + integrity sha512-raigMkn7CJNNo6Ihro1fzG7wr3fHuYVytzquZKX5n0yizGsTcYgzdIUwj1X9pK0VvjeihV+XiclP+DjwbsSKug== + dependencies: + webidl-conversions "^4.0.2" + +domhandler@^4.0.0, domhandler@^4.2.0: + version "4.2.2" + resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-4.2.2.tgz#e825d721d19a86b8c201a35264e226c678ee755f" + integrity sha512-PzE9aBMsdZO8TK4BnuJwH0QT41wgMbRzuZrHUcpYncEjmQazq8QEaBWgLG7ZyC/DAZKEgglpIA6j4Qn/HmxS3w== + dependencies: + domelementtype "^2.2.0" + +dompurify@^2.2.6: + version "2.3.3" + resolved "https://registry.yarnpkg.com/dompurify/-/dompurify-2.3.3.tgz#c1af3eb88be47324432964d8abc75cf4b98d634c" + integrity sha512-dqnqRkPMAjOZE0FogZ+ceJNM2dZ3V/yNOuFB7+39qpO93hHhfRpHw3heYQC7DPK9FqbQTfBKUJhiSfz4MvXYwg== + +domutils@^2.5.2: + version "2.8.0" + resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.8.0.tgz#4437def5db6e2d1f5d6ee859bd95ca7d02048135" + integrity sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A== + dependencies: + dom-serializer "^1.0.1" + domelementtype "^2.2.0" + domhandler "^4.2.0" + +dot-prop@^5.1.0: + version "5.3.0" + resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-5.3.0.tgz#90ccce708cd9cd82cc4dc8c3ddd9abdd55b20e88" + integrity sha512-QM8q3zDe58hqUqjraQOmzZ1LIH9SWQJTlEKCH4kJ2oQvLZk7RbQXvtDM2XEq3fwkV9CCvvH4LA0AV+ogFsBM2Q== + dependencies: + is-obj "^2.0.0" + +dot-prop@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-6.0.1.tgz#fc26b3cf142b9e59b74dbd39ed66ce620c681083" + integrity sha512-tE7ztYzXHIeyvc7N+hR3oi7FIbf/NIjVP9hmAt3yMXzrQ072/fpjGLx2GxNxGxUl5V73MEqYzioOMoVhGMJ5cA== + dependencies: + is-obj "^2.0.0" + +duplexer3@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2" + integrity sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI= + +duplexer@^0.1.1: + version "0.1.2" + resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.2.tgz#3abe43aef3835f8ae077d136ddce0f276b0400e6" + integrity sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg== + +duplicate-package-checker-webpack-plugin@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/duplicate-package-checker-webpack-plugin/-/duplicate-package-checker-webpack-plugin-3.0.0.tgz#78bb89e625fa7cf8c2a59c53f62b495fda9ba287" + integrity sha512-aO50/qPC7X2ChjRFniRiscxBLT/K01bALqfcDaf8Ih5OqQ1N4iT/Abx9Ofu3/ms446vHTm46FACIuJUmgUQcDQ== + dependencies: + chalk "^2.3.0" + find-root "^1.0.0" + lodash "^4.17.4" + semver "^5.4.1" + +ecc-jsbn@~0.1.1: + version "0.1.2" + resolved "https://registry.yarnpkg.com/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz#3a83a904e54353287874c564b7549386849a98c9" + integrity sha1-OoOpBOVDUyh4dMVkt1SThoSamMk= + dependencies: + jsbn "~0.1.0" + safer-buffer "^2.1.0" + +ecdsa-sig-formatter@1.0.11: + version "1.0.11" + resolved "https://registry.yarnpkg.com/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz#ae0f0fa2d85045ef14a817daa3ce9acd0489e5bf" + integrity sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ== + dependencies: + safe-buffer "^5.0.1" + +ee-first@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" + integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= + +electron-to-chromium@^1.3.886: + version "1.3.895" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.895.tgz#9b0f8f2e32d8283bbb200156fd5d8dfd775f31ed" + integrity sha512-9Ww3fB8CWctjqHwkOt7DQbMZMpal2x2reod+/lU4b9axO1XJEDUpPMBxs7YnjLhhqpKXIIB5SRYN/B4K0QpvyQ== + +emoji-regex@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" + integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== + +emojis-list@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/emojis-list/-/emojis-list-3.0.0.tgz#5570662046ad29e2e916e71aae260abdff4f6a78" + integrity sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q== + +encodeurl@~1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-1.0.2.tgz#ad3ff4c86ec2d029322f5a02c3a9a606c95b3f59" + integrity sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k= + +encoding-down@^6.3.0: + version "6.3.0" + resolved "https://registry.yarnpkg.com/encoding-down/-/encoding-down-6.3.0.tgz#b1c4eb0e1728c146ecaef8e32963c549e76d082b" + integrity sha512-QKrV0iKR6MZVJV08QY0wp1e7vF6QbhnbQhb07bwpEyuz4uZiZgPlEGdkCROuFkUwdxlFaiPIhjyarH1ee/3vhw== + dependencies: + abstract-leveldown "^6.2.1" + inherits "^2.0.3" + level-codec "^9.0.0" + level-errors "^2.0.0" + +encoding@^0.1.12: + version "0.1.13" + resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.13.tgz#56574afdd791f54a8e9b2785c0582a2d26210fa9" + integrity sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A== + dependencies: + iconv-lite "^0.6.2" + +end-of-stream@^1.1.0: + version "1.4.4" + resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" + integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== + dependencies: + once "^1.4.0" + +enhanced-resolve@^5.8.3: + version "5.8.3" + resolved "https://registry.yarnpkg.com/enhanced-resolve/-/enhanced-resolve-5.8.3.tgz#6d552d465cce0423f5b3d718511ea53826a7b2f0" + integrity sha512-EGAbGvH7j7Xt2nc0E7D99La1OiEs8LnyimkRgwExpUMScN6O+3x9tIWs7PLQZVNx4YD+00skHXPXi1yQHpAmZA== + dependencies: + graceful-fs "^4.2.4" + tapable "^2.2.0" + +enquirer@^2.3.5: + version "2.3.6" + resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d" + integrity sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg== + dependencies: + ansi-colors "^4.1.1" + +entities@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/entities/-/entities-2.2.0.tgz#098dc90ebb83d8dffa089d55256b351d34c4da55" + integrity sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A== + +env-paths@^2.2.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/env-paths/-/env-paths-2.2.1.tgz#420399d416ce1fbe9bc0a07c62fa68d67fd0f8f2" + integrity sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A== + +envinfo@7.8.1, envinfo@^7.7.3, envinfo@^7.7.4: + version "7.8.1" + resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-7.8.1.tgz#06377e3e5f4d379fea7ac592d5ad8927e0c4d475" + integrity sha512-/o+BXHmB7ocbHEAs6F2EnG0ogybVVUdkRunTT2glZU9XAaGmhqskrvKwqXuDfNjEO0LZKWdejEEpnq8aM0tOaw== + +err-code@^2.0.2: + version "2.0.3" + resolved "https://registry.yarnpkg.com/err-code/-/err-code-2.0.3.tgz#23c2f3b756ffdfc608d30e27c9a941024807e7f9" + integrity sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA== + +errno@~0.1.1: + version "0.1.8" + resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.8.tgz#8bb3e9c7d463be4976ff888f76b4809ebc2e811f" + integrity sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A== + dependencies: + prr "~1.0.1" + +error-ex@^1.3.1: + version "1.3.2" + resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" + integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== + dependencies: + is-arrayish "^0.2.1" + +es-abstract@^1.19.1: + version "1.19.1" + resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.19.1.tgz#d4885796876916959de78edaa0df456627115ec3" + integrity sha512-2vJ6tjA/UfqLm2MPs7jxVybLoB8i1t1Jd9R3kISld20sIxPcTbLuggQOUxeWeAvIUkduv/CfMjuh4WmiXr2v9w== + dependencies: + call-bind "^1.0.2" + es-to-primitive "^1.2.1" + function-bind "^1.1.1" + get-intrinsic "^1.1.1" + get-symbol-description "^1.0.0" + has "^1.0.3" + has-symbols "^1.0.2" + internal-slot "^1.0.3" + is-callable "^1.2.4" + is-negative-zero "^2.0.1" + is-regex "^1.1.4" + is-shared-array-buffer "^1.0.1" + is-string "^1.0.7" + is-weakref "^1.0.1" + object-inspect "^1.11.0" + object-keys "^1.1.1" + object.assign "^4.1.2" + string.prototype.trimend "^1.0.4" + string.prototype.trimstart "^1.0.4" + unbox-primitive "^1.0.1" + +es-module-lexer@^0.9.0: + version "0.9.3" + resolved "https://registry.yarnpkg.com/es-module-lexer/-/es-module-lexer-0.9.3.tgz#6f13db00cc38417137daf74366f535c8eb438f19" + integrity sha512-1HQ2M2sPtxwnvOvT1ZClHyQDiggdNjURWpY2we6aMKCQiUVxTmVs2UYPLIrD84sS+kMdUwfBSylbJPwNnBrnHQ== + +es-to-primitive@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.1.tgz#e55cd4c9cdc188bcefb03b366c736323fc5c898a" + integrity sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA== + dependencies: + is-callable "^1.1.4" + is-date-object "^1.0.1" + is-symbol "^1.0.2" + +es5-ext@^0.10.35, es5-ext@^0.10.46, es5-ext@^0.10.50, es5-ext@^0.10.53, es5-ext@~0.10.14, es5-ext@~0.10.2, es5-ext@~0.10.46: + version "0.10.53" + resolved "https://registry.yarnpkg.com/es5-ext/-/es5-ext-0.10.53.tgz#93c5a3acfdbef275220ad72644ad02ee18368de1" + integrity sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q== + dependencies: + es6-iterator "~2.0.3" + es6-symbol "~3.1.3" + next-tick "~1.0.0" + +es6-iterator@^2.0.3, es6-iterator@~2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/es6-iterator/-/es6-iterator-2.0.3.tgz#a7de889141a05a94b0854403b2d0a0fbfa98f3b7" + integrity sha1-p96IkUGgWpSwhUQDstCg+/qY87c= + dependencies: + d "1" + es5-ext "^0.10.35" + es6-symbol "^3.1.1" + +es6-promise@~4.2.8: + version "4.2.8" + resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-4.2.8.tgz#4eb21594c972bc40553d276e510539143db53e0a" + integrity sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w== + +es6-symbol@^3.1.1, es6-symbol@~3.1.3: + version "3.1.3" + resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.3.tgz#bad5d3c1bcdac28269f4cb331e431c78ac705d18" + integrity sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA== + dependencies: + d "^1.0.1" + ext "^1.1.2" + +es6-weak-map@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/es6-weak-map/-/es6-weak-map-2.0.3.tgz#b6da1f16cc2cc0d9be43e6bdbfc5e7dfcdf31d53" + integrity sha512-p5um32HOTO1kP+w7PRnB+5lQ43Z6muuMuIMffvDN8ZB4GcnjLBV6zGStpbASIMk4DCAvEaamhe2zhyCb/QXXsA== + dependencies: + d "1" + es5-ext "^0.10.46" + es6-iterator "^2.0.3" + es6-symbol "^3.1.1" + +escalade@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" + integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== + +escape-html@~1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" + integrity sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg= + +escape-string-regexp@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" + integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= + +escape-string-regexp@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" + integrity sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA== + +escodegen@^1.11.1: + version "1.14.3" + resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.14.3.tgz#4e7b81fba61581dc97582ed78cab7f0e8d63f503" + integrity sha512-qFcX0XJkdg+PB3xjZZG/wKSuT1PnQWx57+TVSjIMmILd2yC/6ByYElPwJnslDsuWuSAp4AwJGumarAAmJch5Kw== + dependencies: + esprima "^4.0.1" + estraverse "^4.2.0" + esutils "^2.0.2" + optionator "^0.8.1" + optionalDependencies: + source-map "~0.6.1" + +eslint-config-prettier@^6.15.0: + version "6.15.0" + resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-6.15.0.tgz#7f93f6cb7d45a92f1537a70ecc06366e1ac6fed9" + integrity sha512-a1+kOYLR8wMGustcgAjdydMsQ2A/2ipRPwRKUmfYaSxc9ZPcrku080Ctl6zrZzZNs/U82MjSv+qKREkoq3bJaw== + dependencies: + get-stdin "^6.0.0" + +eslint-import-resolver-node@0.3.4: + version "0.3.4" + resolved "https://registry.yarnpkg.com/eslint-import-resolver-node/-/eslint-import-resolver-node-0.3.4.tgz#85ffa81942c25012d8231096ddf679c03042c717" + integrity sha512-ogtf+5AB/O+nM6DIeBUNr2fuT7ot9Qg/1harBfBtaP13ekEWFQEEMP94BCB7zaNW3gyY+8SHYF00rnqYwXKWOA== + dependencies: + debug "^2.6.9" + resolve "^1.13.1" + +eslint-plugin-prettier@^3.1.4: + version "3.4.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-3.4.1.tgz#e9ddb200efb6f3d05ffe83b1665a716af4a387e5" + integrity sha512-htg25EUYUeIhKHXjOinK4BgCcDwtLHjqaxCDsMy5nbnUMkKFvIhMVCp+5GFUXQ4Nr8lBsPqtGAqBenbpFqAA2g== + dependencies: + prettier-linter-helpers "^1.0.0" + +eslint-scope@5.1.1, eslint-scope@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" + integrity sha512-2NxwbF/hZ0KpepYN0cNbo+FN6XoK7GaHlQhgx/hIZl6Va0bF45RQOOwhLIy8lQDbuCiadSLCBnH2CFYquit5bw== + dependencies: + esrecurse "^4.3.0" + estraverse "^4.1.1" + +eslint-utils@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-2.1.0.tgz#d2de5e03424e707dc10c74068ddedae708741b27" + integrity sha512-w94dQYoauyvlDc43XnGB8lU3Zt713vNChgt4EWwhXAP2XkBvndfxF0AgIqKOOasjPIPzj9JqgwkwbCYD0/V3Zg== + dependencies: + eslint-visitor-keys "^1.1.0" + +eslint-utils@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/eslint-utils/-/eslint-utils-3.0.0.tgz#8aebaface7345bb33559db0a1f13a1d2d48c3672" + integrity sha512-uuQC43IGctw68pJA1RgbQS8/NP7rch6Cwd4j3ZBtgo4/8Flj4eGE7ZYSZRN3iq5pVUv6GPdW5Z1RFleo84uLDA== + dependencies: + eslint-visitor-keys "^2.0.0" + +eslint-visitor-keys@^1.1.0, eslint-visitor-keys@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-1.3.0.tgz#30ebd1ef7c2fdff01c3a4f151044af25fab0523e" + integrity sha512-6J72N8UNa462wa/KFODt/PJ3IU60SDpC3QXC1Hjc1BXXpfL2C9R5+AU7jhe0F6GREqVMh4Juu+NY7xn+6dipUQ== + +eslint-visitor-keys@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303" + integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw== + +eslint@^7.14.0: + version "7.32.0" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.32.0.tgz#c6d328a14be3fb08c8d1d21e12c02fdb7a2a812d" + integrity sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA== + dependencies: + "@babel/code-frame" "7.12.11" + "@eslint/eslintrc" "^0.4.3" + "@humanwhocodes/config-array" "^0.5.0" + ajv "^6.10.0" + chalk "^4.0.0" + cross-spawn "^7.0.2" + debug "^4.0.1" + doctrine "^3.0.0" + enquirer "^2.3.5" + escape-string-regexp "^4.0.0" + eslint-scope "^5.1.1" + eslint-utils "^2.1.0" + eslint-visitor-keys "^2.0.0" + espree "^7.3.1" + esquery "^1.4.0" + esutils "^2.0.2" + fast-deep-equal "^3.1.3" + file-entry-cache "^6.0.1" + functional-red-black-tree "^1.0.1" + glob-parent "^5.1.2" + globals "^13.6.0" + ignore "^4.0.6" + import-fresh "^3.0.0" + imurmurhash "^0.1.4" + is-glob "^4.0.0" + js-yaml "^3.13.1" + json-stable-stringify-without-jsonify "^1.0.1" + levn "^0.4.1" + lodash.merge "^4.6.2" + minimatch "^3.0.4" + natural-compare "^1.4.0" + optionator "^0.9.1" + progress "^2.0.0" + regexpp "^3.1.0" + semver "^7.2.1" + strip-ansi "^6.0.0" + strip-json-comments "^3.1.0" + table "^6.0.9" + text-table "^0.2.0" + v8-compile-cache "^2.0.3" + +espree@^7.3.0, espree@^7.3.1: + version "7.3.1" + resolved "https://registry.yarnpkg.com/espree/-/espree-7.3.1.tgz#f2df330b752c6f55019f8bd89b7660039c1bbbb6" + integrity sha512-v3JCNCE64umkFpmkFGqzVKsOT0tN1Zr+ueqLZfpV1Ob8e+CEgPWa+OxCoGH3tnhimMKIaBm4m/vaRpJ/krRz2g== + dependencies: + acorn "^7.4.0" + acorn-jsx "^5.3.1" + eslint-visitor-keys "^1.3.0" + +esprima@^4.0.0, esprima@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/esprima/-/esprima-4.0.1.tgz#13b04cdb3e6c5d19df91ab6987a8695619b0aa71" + integrity sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A== + +esquery@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/esquery/-/esquery-1.4.0.tgz#2148ffc38b82e8c7057dfed48425b3e61f0f24a5" + integrity sha512-cCDispWt5vHHtwMY2YrAQ4ibFkAL8RbH5YGBnZBc90MolvvfkkQcJro/aZiAQUlQ3qgrYS6D6v8Gc5G5CQsc9w== + dependencies: + estraverse "^5.1.0" + +esrecurse@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/esrecurse/-/esrecurse-4.3.0.tgz#7ad7964d679abb28bee72cec63758b1c5d2c9921" + integrity sha512-KmfKL3b6G+RXvP8N1vr3Tq1kL/oCFgn2NYXEtqP8/L3pKapUA4G8cFVaoF3SU323CD4XypR/ffioHmkti6/Tag== + dependencies: + estraverse "^5.2.0" + +estraverse@^4.1.1, estraverse@^4.2.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" + integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== + +estraverse@^5.1.0, estraverse@^5.2.0: + version "5.3.0" + resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" + integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== + +esutils@^2.0.2: + version "2.0.3" + resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" + integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== + +etag@~1.8.1: + version "1.8.1" + resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" + integrity sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc= + +event-emitter@^0.3.5: + version "0.3.5" + resolved "https://registry.yarnpkg.com/event-emitter/-/event-emitter-0.3.5.tgz#df8c69eef1647923c7157b9ce83840610b02cc39" + integrity sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk= + dependencies: + d "1" + es5-ext "~0.10.14" + +eventemitter3@^4.0.4: + version "4.0.7" + resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f" + integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw== + +events@^3.2.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" + integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q== + +exec-sh@^0.2.0: + version "0.2.2" + resolved "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.2.2.tgz#2a5e7ffcbd7d0ba2755bdecb16e5a427dfbdec36" + integrity sha512-FIUCJz1RbuS0FKTdaAafAByGS0CPvU3R0MeHxgtl+djzCc//F8HakL8GzmVNZanasTbTAY/3DRFA0KpVqj/eAw== + dependencies: + merge "^1.2.0" + +execa@^5.0.0: + version "5.1.1" + resolved "https://registry.yarnpkg.com/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd" + integrity sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg== + 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" + +express@4.17.1: + version "4.17.1" + resolved "https://registry.yarnpkg.com/express/-/express-4.17.1.tgz#4491fc38605cf51f8629d39c2b5d026f98a4c134" + integrity sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g== + dependencies: + accepts "~1.3.7" + array-flatten "1.1.1" + body-parser "1.19.0" + content-disposition "0.5.3" + content-type "~1.0.4" + cookie "0.4.0" + cookie-signature "1.0.6" + debug "2.6.9" + depd "~1.1.2" + encodeurl "~1.0.2" + escape-html "~1.0.3" + etag "~1.8.1" + finalhandler "~1.1.2" + fresh "0.5.2" + merge-descriptors "1.0.1" + methods "~1.1.2" + on-finished "~2.3.0" + parseurl "~1.3.3" + path-to-regexp "0.1.7" + proxy-addr "~2.0.5" + qs "6.7.0" + range-parser "~1.2.1" + safe-buffer "5.1.2" + send "0.17.1" + serve-static "1.14.1" + setprototypeof "1.1.1" + statuses "~1.5.0" + type-is "~1.6.18" + utils-merge "1.0.1" + vary "~1.1.2" + +ext@^1.1.2: + version "1.6.0" + resolved "https://registry.yarnpkg.com/ext/-/ext-1.6.0.tgz#3871d50641e874cc172e2b53f919842d19db4c52" + integrity sha512-sdBImtzkq2HpkdRLtlLWDa6w4DX22ijZLKx8BMPUuKe1c5lbN6xwQDQCxSfxBQnHZ13ls/FH0MQZx/q/gr6FQg== + dependencies: + type "^2.5.0" + +extend@~3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" + integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== + +external-editor@^3.0.3: + version "3.1.0" + resolved "https://registry.yarnpkg.com/external-editor/-/external-editor-3.1.0.tgz#cb03f740befae03ea4d283caed2741a83f335495" + integrity sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew== + dependencies: + chardet "^0.7.0" + iconv-lite "^0.4.24" + tmp "^0.0.33" + +extsprintf@1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" + integrity sha1-lpGEQOMEGnpBT4xS48V06zw+HgU= + +extsprintf@^1.2.0: + version "1.4.1" + resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.1.tgz#8d172c064867f235c0c84a596806d279bf4bcc07" + integrity sha512-Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA== + +fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: + version "3.1.3" + resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" + integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== + +fast-diff@^1.1.2: + version "1.2.0" + resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.2.0.tgz#73ee11982d86caaf7959828d519cfe927fac5f03" + integrity sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w== + +fast-glob@^3.0.3, fast-glob@^3.1.1: + version "3.2.7" + resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.7.tgz#fd6cb7a2d7e9aa7a7846111e85a196d6b2f766a1" + integrity sha512-rYGMRwip6lUMvYD3BTScMwT1HtAs2d71SMv66Vrxs0IekGZEjhM0pcMfjQPnknBt2zeCwQMEupiN02ZP4DiT1Q== + dependencies: + "@nodelib/fs.stat" "^2.0.2" + "@nodelib/fs.walk" "^1.2.3" + glob-parent "^5.1.2" + merge2 "^1.3.0" + micromatch "^4.0.4" + +fast-json-stable-stringify@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" + integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== + +fast-levenshtein@^2.0.6, fast-levenshtein@~2.0.6: + version "2.0.6" + resolved "https://registry.yarnpkg.com/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz#3d8a5c66883a16a30ca8643e851f19baa7797917" + integrity sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc= + +fast-redact@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/fast-redact/-/fast-redact-3.0.2.tgz#c940ba7162dde3aeeefc522926ae8c5231412904" + integrity sha512-YN+CYfCVRVMUZOUPeinHNKgytM1wPI/C/UCLEi56EsY2dwwvI00kIJHJoI7pMVqGoMew8SMZ2SSfHKHULHXDsg== + +fast-safe-stringify@^2.0.8: + version "2.1.1" + resolved "https://registry.yarnpkg.com/fast-safe-stringify/-/fast-safe-stringify-2.1.1.tgz#c406a83b6e70d9e35ce3b30a81141df30aeba884" + integrity sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA== + +fastest-levenshtein@^1.0.12: + version "1.0.12" + resolved "https://registry.yarnpkg.com/fastest-levenshtein/-/fastest-levenshtein-1.0.12.tgz#9990f7d3a88cc5a9ffd1f1745745251700d497e2" + integrity sha512-On2N+BpYJ15xIC974QNVuYGMOlEVt4s0EOI3wwMqOmK1fdDY+FN/zltPV8vosq4ad4c/gJ1KHScUn/6AWIgiow== + +fastify-warning@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/fastify-warning/-/fastify-warning-0.2.0.tgz#e717776026a4493dc9a2befa44db6d17f618008f" + integrity sha512-s1EQguBw/9qtc1p/WTY4eq9WMRIACkj+HTcOIK1in4MV5aFaQC9ZCIt0dJ7pr5bIf4lPpHvAtP2ywpTNgs7hqw== + +fastq@^1.6.0: + version "1.13.0" + resolved "https://registry.yarnpkg.com/fastq/-/fastq-1.13.0.tgz#616760f88a7526bdfc596b7cab8c18938c36b98c" + integrity sha512-YpkpUnK8od0o1hmeSc7UUs/eB/vIPWJYjKck2QKIzAf71Vm1AAQ3EbuZB3g2JIy+pg+ERD0vqI79KyZiB2e2Nw== + dependencies: + reusify "^1.0.4" + +figures@^3.0.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/figures/-/figures-3.2.0.tgz#625c18bd293c604dc4a8ddb2febf0c88341746af" + integrity sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg== + dependencies: + escape-string-regexp "^1.0.5" + +file-entry-cache@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/file-entry-cache/-/file-entry-cache-6.0.1.tgz#211b2dd9659cb0394b073e7323ac3c933d522027" + integrity sha512-7Gps/XWymbLk2QLYK4NzpMOrYjMhdIxXuIvy2QBsLE6ljuodKvdkWs/cpyJJ3CVIVpH0Oi1Hvg1ovbMzLdFBBg== + dependencies: + flat-cache "^3.0.4" + +file-loader@~6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-6.0.0.tgz#97bbfaab7a2460c07bcbd72d3a6922407f67649f" + integrity sha512-/aMOAYEFXDdjG0wytpTL5YQLfZnnTmLNjn+AIrJ/6HVnTfDqLsVKUUwkDf4I4kgex36BvjuXEn/TX9B/1ESyqQ== + dependencies: + loader-utils "^2.0.0" + schema-utils "^2.6.5" + +fill-range@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" + integrity sha512-qOo9F+dMUmC2Lcb4BbVvnKJxTPjCm+RRpe4gDuGrzkL7mEVl/djYSu2OdQ2Pa302N4oqkSg9ir6jaLWJ2USVpQ== + dependencies: + to-regex-range "^5.0.1" + +filter-obj@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/filter-obj/-/filter-obj-1.1.0.tgz#9b311112bc6c6127a16e016c6c5d7f19e0805c5b" + integrity sha1-mzERErxsYSehbgFsbF1/GeCAXFs= + +finalhandler@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.1.2.tgz#b7e7d000ffd11938d0fdb053506f6ebabe9f587d" + integrity sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA== + dependencies: + debug "2.6.9" + encodeurl "~1.0.2" + escape-html "~1.0.3" + on-finished "~2.3.0" + parseurl "~1.3.3" + statuses "~1.5.0" + unpipe "~1.0.0" + +find-cache-dir@^3.3.1: + version "3.3.2" + resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-3.3.2.tgz#b30c5b6eff0730731aea9bbd9dbecbd80256d64b" + integrity sha512-wXZV5emFEjrridIgED11OoUKLxiYjAcqot/NJdAkOhlJ+vGzwhOAfcG5OX1jP+S0PcjEn8bdMJv+g2jwQ3Onig== + dependencies: + commondir "^1.0.1" + make-dir "^3.0.2" + pkg-dir "^4.1.0" + +find-root@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/find-root/-/find-root-1.1.0.tgz#abcfc8ba76f708c42a97b3d685b7e9450bfb9ce4" + integrity sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng== + +find-up@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" + integrity sha1-RdG35QbHF93UgndaK3eSCjwMV6c= + dependencies: + locate-path "^2.0.0" + +find-up@^4.0.0, find-up@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" + integrity sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw== + dependencies: + locate-path "^5.0.0" + path-exists "^4.0.0" + +flat-cache@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11" + integrity sha512-dm9s5Pw7Jc0GvMYbshN6zchCA9RgQlzzEZX3vylR9IqFfS8XciblUXOKfW6SiuJ0e13eDYZoZV5wdrev7P3Nwg== + dependencies: + flatted "^3.1.0" + rimraf "^3.0.2" + +flatstr@^1.0.12: + version "1.0.12" + resolved "https://registry.yarnpkg.com/flatstr/-/flatstr-1.0.12.tgz#c2ba6a08173edbb6c9640e3055b95e287ceb5931" + integrity sha512-4zPxDyhCyiN2wIAtSLI6gc82/EjqZc1onI4Mz/l0pWrAlsSfYH/2ZIcU+e3oA2wDwbzIWNKwa23F8rh6+DRWkw== + +flatted@^3.1.0: + version "3.2.4" + resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.4.tgz#28d9969ea90661b5134259f312ab6aa7929ac5e2" + integrity sha512-8/sOawo8tJ4QOBX8YlQBMxL8+RLZfxMQOif9o0KUKTNTjMYElWPE0r/m5VNFxTRd0NSw8qSy8dajrwX4RYI1Hw== + +forever-agent@~0.6.1: + version "0.6.1" + resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" + integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= + +form-data@~2.3.2: + version "2.3.3" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6" + integrity sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ== + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.6" + mime-types "^2.1.12" + +forwarded@0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.2.0.tgz#2269936428aad4c15c7ebe9779a84bf0b2a81811" + integrity sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow== + +free-style@3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/free-style/-/free-style-3.1.0.tgz#4e2996029534e6b1731611d843437b9e2f473f08" + integrity sha512-vJujYSIyT30iDoaoeigNAxX4yB1RUrh+N2ZMhIElMr3BvCuGXOw7XNJMEEJkDUeamK2Rnb/IKFGKRKlTWIGRWA== + +fresh@0.5.2: + version "0.5.2" + resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" + integrity sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac= + +fs-extra@^9.0.1, fs-extra@^9.1.0: + version "9.1.0" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.1.0.tgz#5954460c764a8da2094ba3554bf839e6b9a7c86d" + integrity sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ== + dependencies: + at-least-node "^1.0.0" + graceful-fs "^4.2.0" + jsonfile "^6.0.1" + universalify "^2.0.0" + +fs-minipass@^1.2.7: + version "1.2.7" + resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-1.2.7.tgz#ccff8570841e7fe4265693da88936c55aed7f7c7" + integrity sha512-GWSSJGFy4e9GUeCcbIkED+bgAoFyj7XF1mV8rma3QW4NIqX9Kyx79N/PF61H5udOV3aY1IaMLs6pGbH71nlCTA== + dependencies: + minipass "^2.6.0" + +fs-minipass@^2.0.0, fs-minipass@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb" + integrity sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg== + dependencies: + minipass "^3.0.0" + +fs.realpath@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" + integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= + +function-bind@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" + integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A== + +functional-red-black-tree@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz#1b0ab3bd553b2a0d6399d29c0e3ea0b252078327" + integrity sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc= + +gauge@~2.7.3: + version "2.7.4" + resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7" + integrity sha1-LANAXHU4w51+s3sxcCLjJfsBi/c= + dependencies: + 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" + +get-caller-file@^2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" + integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== + +get-intrinsic@^1.0.2, get-intrinsic@^1.1.0, get-intrinsic@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/get-intrinsic/-/get-intrinsic-1.1.1.tgz#15f59f376f855c446963948f0d24cd3637b4abc6" + integrity sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q== + dependencies: + function-bind "^1.1.1" + has "^1.0.3" + has-symbols "^1.0.1" + +get-pkg-repo@^4.0.0: + version "4.2.1" + resolved "https://registry.yarnpkg.com/get-pkg-repo/-/get-pkg-repo-4.2.1.tgz#75973e1c8050c73f48190c52047c4cee3acbf385" + integrity sha512-2+QbHjFRfGB74v/pYWjd5OhU3TDIC2Gv/YKUTk/tCvAz0pkn/Mz6P3uByuBimLOcPvN2jYdScl3xGFSrx0jEcA== + dependencies: + "@hutson/parse-repository-url" "^3.0.0" + hosted-git-info "^4.0.0" + through2 "^2.0.0" + yargs "^16.2.0" + +get-port@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/get-port/-/get-port-5.1.1.tgz#0469ed07563479de6efb986baf053dcd7d4e3193" + integrity sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ== + +get-stdin@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-6.0.0.tgz#9e09bf712b360ab9225e812048f71fde9c89657b" + integrity sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g== + +get-stream@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" + integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w== + dependencies: + pump "^3.0.0" + +get-stream@^5.1.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.2.0.tgz#4966a1795ee5ace65e706c4b7beb71257d6e22d3" + integrity sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA== + dependencies: + pump "^3.0.0" + +get-stream@^6.0.0: + version "6.0.1" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-6.0.1.tgz#a262d8eef67aced57c2852ad6167526a43cbf7b7" + integrity sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg== + +get-symbol-description@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/get-symbol-description/-/get-symbol-description-1.0.0.tgz#7fdb81c900101fbd564dd5f1a30af5aadc1e58d6" + integrity sha512-2EmdH1YvIQiZpltCNgkuiUnyukzxM/R6NDJX31Ke3BG1Nq5b0S2PhX59UKi9vZpPDQVdqn+1IcaAwnzTT5vCjw== + dependencies: + call-bind "^1.0.2" + get-intrinsic "^1.1.1" + +getpass@^0.1.1: + version "0.1.7" + resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" + integrity sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo= + dependencies: + assert-plus "^1.0.0" + +git-hooks-list@1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/git-hooks-list/-/git-hooks-list-1.0.3.tgz#be5baaf78203ce342f2f844a9d2b03dba1b45156" + integrity sha512-Y7wLWcrLUXwk2noSka166byGCvhMtDRpgHdzCno1UQv/n/Hegp++a2xBWJL1lJarnKD3SWaljD+0z1ztqxuKyQ== + +git-raw-commits@^2.0.8: + version "2.0.10" + resolved "https://registry.yarnpkg.com/git-raw-commits/-/git-raw-commits-2.0.10.tgz#e2255ed9563b1c9c3ea6bd05806410290297bbc1" + integrity sha512-sHhX5lsbG9SOO6yXdlwgEMQ/ljIn7qMpAbJZCGfXX2fq5T8M5SrDnpYk9/4HswTildcIqatsWa91vty6VhWSaQ== + dependencies: + dargs "^7.0.0" + lodash "^4.17.15" + meow "^8.0.0" + split2 "^3.0.0" + through2 "^4.0.0" + +git-remote-origin-url@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/git-remote-origin-url/-/git-remote-origin-url-2.0.0.tgz#5282659dae2107145a11126112ad3216ec5fa65f" + integrity sha1-UoJlna4hBxRaERJhEq0yFuxfpl8= + dependencies: + gitconfiglocal "^1.0.0" + pify "^2.3.0" + +git-semver-tags@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/git-semver-tags/-/git-semver-tags-4.1.1.tgz#63191bcd809b0ec3e151ba4751c16c444e5b5780" + integrity sha512-OWyMt5zBe7xFs8vglMmhM9lRQzCWL3WjHtxNNfJTMngGym7pC1kh8sP6jevfydJ6LP3ZvGxfb6ABYgPUM0mtsA== + dependencies: + meow "^8.0.0" + semver "^6.0.0" + +git-up@^4.0.0: + version "4.0.5" + resolved "https://registry.yarnpkg.com/git-up/-/git-up-4.0.5.tgz#e7bb70981a37ea2fb8fe049669800a1f9a01d759" + integrity sha512-YUvVDg/vX3d0syBsk/CKUTib0srcQME0JyHkL5BaYdwLsiCslPWmDSi8PUMo9pXYjrryMcmsCoCgsTpSCJEQaA== + dependencies: + is-ssh "^1.3.0" + parse-url "^6.0.0" + +git-url-parse@^11.4.4: + version "11.6.0" + resolved "https://registry.yarnpkg.com/git-url-parse/-/git-url-parse-11.6.0.tgz#c634b8de7faa66498a2b88932df31702c67df605" + integrity sha512-WWUxvJs5HsyHL6L08wOusa/IXYtMuCAhrMmnTjQPpBU0TTHyDhnOATNH3xNQz7YOQUsqIIPTGr4xiVti1Hsk5g== + dependencies: + git-up "^4.0.0" + +gitconfiglocal@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/gitconfiglocal/-/gitconfiglocal-1.0.0.tgz#41d045f3851a5ea88f03f24ca1c6178114464b9b" + integrity sha1-QdBF84UaXqiPA/JMocYXgRRGS5s= + dependencies: + ini "^1.3.2" + +glob-parent@^5.1.1, glob-parent@^5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" + integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== + dependencies: + is-glob "^4.0.1" + +glob-to-regexp@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e" + integrity sha512-lkX1HJXwyMcprw/5YUZc2s7DrpAiHB21/V+E1rHUrVNokkvB6bqMzT0VfV6/86ZNabt1k14YOIaT7nDvOX3Iiw== + +glob@^6.0.1: + version "6.0.4" + resolved "https://registry.yarnpkg.com/glob/-/glob-6.0.4.tgz#0f08860f6a155127b2fadd4f9ce24b1aab6e4d22" + integrity sha1-DwiGD2oVUSey+t1PnOJLGqtuTSI= + dependencies: + inflight "^1.0.4" + inherits "2" + minimatch "2 || 3" + once "^1.3.0" + path-is-absolute "^1.0.0" + +glob@^7.1.1, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6: + version "7.2.0" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023" + integrity sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q== + 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" + +glob@~7.1.6: + version "7.1.7" + resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.7.tgz#3b193e9233f01d42d0b3f78294bbeeb418f94a90" + integrity sha512-OvD9ENzPLbegENnYP5UUfJIirTg4+XwMWGaQfQTY0JenxNvvIKP3U3/tAQSPIu/lHxXYSZmpXlUHeqAIdKzBLQ== + 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" + +globals@^13.6.0, globals@^13.9.0: + version "13.12.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-13.12.0.tgz#4d733760304230a0082ed96e21e5c565f898089e" + integrity sha512-uS8X6lSKN2JumVoXrbUz+uG4BYG+eiawqm3qFcT7ammfbUHeCBoJMlHcec/S3krSk73/AE/f0szYFmgAA3kYZg== + dependencies: + type-fest "^0.20.2" + +globby@10.0.0: + version "10.0.0" + resolved "https://registry.yarnpkg.com/globby/-/globby-10.0.0.tgz#abfcd0630037ae174a88590132c2f6804e291072" + integrity sha512-3LifW9M4joGZasyYPz2A1U74zbC/45fvpXUvO/9KbSa+VV0aGZarWkfdgKyR9sExNP0t0x0ss/UMJpNpcaTspw== + dependencies: + "@types/glob" "^7.1.1" + array-union "^2.1.0" + dir-glob "^3.0.1" + fast-glob "^3.0.3" + glob "^7.1.3" + ignore "^5.1.1" + merge2 "^1.2.3" + slash "^3.0.0" + +globby@^11.0.2, globby@^11.0.3: + version "11.0.4" + resolved "https://registry.yarnpkg.com/globby/-/globby-11.0.4.tgz#2cbaff77c2f2a62e71e9b2813a67b97a3a3001a5" + integrity sha512-9O4MVG9ioZJ08ffbcyVYyLOJLk5JQ688pJ4eMGLpdWLHq/Wr1D9BlriLQyL0E+jbkuePVZXYFj47QM/v093wHg== + 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" + +got@^9.6.0: + version "9.6.0" + resolved "https://registry.yarnpkg.com/got/-/got-9.6.0.tgz#edf45e7d67f99545705de1f7bbeeeb121765ed85" + integrity sha512-R7eWptXuGYxwijs0eV+v3o6+XH1IqVK8dJOEecQfTmkncw9AV4dcw/Dhxi8MdlqPthxxpZyizMzyg8RTmEsG+Q== + dependencies: + "@sindresorhus/is" "^0.14.0" + "@szmarczak/http-timer" "^1.1.2" + cacheable-request "^6.0.0" + decompress-response "^3.3.0" + duplexer3 "^0.1.4" + get-stream "^4.1.0" + lowercase-keys "^1.0.1" + mimic-response "^1.0.1" + p-cancelable "^1.0.0" + to-readable-stream "^1.0.0" + url-parse-lax "^3.0.0" + +graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.3, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.2, graceful-fs@^4.2.3, graceful-fs@^4.2.4: + version "4.2.8" + resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.8.tgz#e412b8d33f5e006593cbd3cee6df9f2cebbe802a" + integrity sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg== + +gud@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/gud/-/gud-1.0.0.tgz#a489581b17e6a70beca9abe3ae57de7a499852c0" + integrity sha512-zGEOVKFM5sVPPrYs7J5/hYEw2Pof8KCyOwyhG8sAF26mCAeUFAcYPu1mwB7hhpIP29zOIBaDqwuHdLp0jvZXjw== + +handlebars@4.7.7, handlebars@^4.7.6: + version "4.7.7" + resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.7.7.tgz#9ce33416aad02dbd6c8fafa8240d5d98004945a1" + integrity sha512-aAcXm5OAfE/8IXkcZvCepKU3VzW1/39Fb5ZuqMtgI/hT8X2YgoMvBY5dLhq/cpOvw7Lk1nK/UF71aLG/ZnVYRA== + dependencies: + minimist "^1.2.5" + neo-async "^2.6.0" + source-map "^0.6.1" + wordwrap "^1.0.0" + optionalDependencies: + uglify-js "^3.1.4" + +har-schema@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" + integrity sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI= + +har-validator@~5.1.0, har-validator@~5.1.3: + version "5.1.5" + resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.1.5.tgz#1f0803b9f8cb20c0fa13822df1ecddb36bde1efd" + integrity sha512-nmT2T0lljbxdQZfspsno9hgrG3Uir6Ks5afism62poxqBM6sDnMEuPmzTq8XN0OEwqKLLdh1jQI3qyE66Nzb3w== + dependencies: + ajv "^6.12.3" + har-schema "^2.0.0" + +hard-rejection@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/hard-rejection/-/hard-rejection-2.1.0.tgz#1c6eda5c1685c63942766d79bb40ae773cecd883" + integrity sha512-VIZB+ibDhx7ObhAe7OVtoEbuP4h/MuOTHJ+J8h/eBXotJYl0fBgR72xDFCKgIh22OJZIOVNxBMWuhAr10r8HdA== + +has-bigints@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/has-bigints/-/has-bigints-1.0.1.tgz#64fe6acb020673e3b78db035a5af69aa9d07b113" + integrity sha512-LSBS2LjbNBTf6287JEbEzvJgftkF5qFkmCo9hDRpAzKhUOlJ+hx8dd4USs00SgsUNwc4617J9ki5YtEClM2ffA== + +has-flag@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" + integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= + +has-flag@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" + integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== + +has-symbols@^1.0.1, has-symbols@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.2.tgz#165d3070c00309752a1236a479331e3ac56f1423" + integrity sha512-chXa79rL/UC2KlX17jo3vRGz0azaWEx5tGqZg5pO3NUyEJVB17dMruQlzCCOfUvElghKcm5194+BCRvi2Rv/Gw== + +has-tostringtag@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-tostringtag/-/has-tostringtag-1.0.0.tgz#7e133818a7d394734f941e73c3d3f9291e658b25" + integrity sha512-kFjcSNhnlGV1kyoGk7OXKSawH5JOb/LzUc5w9B02hOTO0dfFRjbHQKvg1d6cf3HbeUmtU9VbbV3qzZ2Teh97WQ== + dependencies: + has-symbols "^1.0.2" + +has-unicode@^2.0.0, has-unicode@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" + integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk= + +has@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" + integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw== + dependencies: + function-bind "^1.1.1" + +hosted-git-info@^2.1.4: + version "2.8.9" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" + integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw== + +hosted-git-info@^4.0.0, hosted-git-info@^4.0.1: + version "4.0.2" + resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-4.0.2.tgz#5e425507eede4fea846b7262f0838456c4209961" + integrity sha512-c9OGXbZ3guC/xOlCg1Ci/VgWlwsqDv1yMQL1CWqXDL0hDjXuNcq0zuR4xqPSuasI3kqFDhqSyTjREz5gzq0fXg== + dependencies: + lru-cache "^6.0.0" + +html-encoding-sniffer@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-1.0.2.tgz#e70d84b94da53aa375e11fe3a351be6642ca46f8" + integrity sha512-71lZziiDnsuabfdYiUeWdCVyKuqwWi23L8YeIgV9jSSZHCtb6wB1BKWooH7L3tn4/FuZJMVWyNaIDr4RGmaSYw== + dependencies: + whatwg-encoding "^1.0.1" + +htmlparser2@^6.0.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-6.1.0.tgz#c4d762b6c3371a05dbe65e94ae43a9f845fb8fb7" + integrity sha512-gyyPk6rgonLFEDGoeRgQNaEUvdJ4ktTmmUh/h2t7s+M8oPpIPxgNACWa+6ESR57kXstwqPiCut0V8NRpcwgU7A== + dependencies: + domelementtype "^2.0.1" + domhandler "^4.0.0" + domutils "^2.5.2" + entities "^2.0.0" + +http-cache-semantics@^4.0.0, http-cache-semantics@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz#49e91c5cbf36c9b94bcfcd71c23d5249ec74e390" + integrity sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ== + +http-errors@1.7.2: + version "1.7.2" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.7.2.tgz#4f5029cf13239f31036e5b2e55292bcfbcc85c8f" + integrity sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg== + dependencies: + depd "~1.1.2" + inherits "2.0.3" + setprototypeof "1.1.1" + statuses ">= 1.5.0 < 2" + toidentifier "1.0.0" + +http-errors@1.8.0: + version "1.8.0" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.8.0.tgz#75d1bbe497e1044f51e4ee9e704a62f28d336507" + integrity sha512-4I8r0C5JDhT5VkvI47QktDW75rNlGVsUf/8hzjCC/wkWI/jdTRmBb9aI7erSG82r1bjKY3F6k28WnsVxB1C73A== + dependencies: + depd "~1.1.2" + inherits "2.0.4" + setprototypeof "1.2.0" + statuses ">= 1.5.0 < 2" + toidentifier "1.0.0" + +http-errors@~1.7.2: + version "1.7.3" + resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-1.7.3.tgz#6c619e4f9c60308c38519498c14fbb10aacebb06" + integrity sha512-ZTTX0MWrsQ2ZAhA1cejAwDLycFsd7I7nVtnkT3Ol0aqodaKW+0CTZDQ1uBv5whptCnc8e8HeRRJxRs0kmm/Qfw== + dependencies: + depd "~1.1.2" + inherits "2.0.4" + setprototypeof "1.1.1" + statuses ">= 1.5.0 < 2" + toidentifier "1.0.0" + +http-proxy-agent@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz#8a8c8ef7f5932ccf953c296ca8291b95aa74aa3a" + integrity sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg== + dependencies: + "@tootallnate/once" "1" + agent-base "6" + debug "4" + +http-signature@~1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" + integrity sha1-muzZJRFHcvPZW2WmCruPfBj7rOE= + dependencies: + assert-plus "^1.0.0" + jsprim "^1.2.2" + sshpk "^1.7.0" + +http-status-codes@1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/http-status-codes/-/http-status-codes-1.4.0.tgz#6e4c15d16ff3a9e2df03b89f3a55e1aae05fb477" + integrity sha512-JrT3ua+WgH8zBD3HEJYbeEgnuQaAnUeRRko/YojPAJjGmIfGD3KPU/asLdsLwKjfxOmQe5nXMQ0pt/7MyapVbQ== + +https-proxy-agent@5.0.0, https-proxy-agent@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-5.0.0.tgz#e2a90542abb68a762e0a0850f6c9edadfd8506b2" + integrity sha512-EkYm5BcKUGiduxzSt3Eppko+PiNWNEpa4ySk9vTC6wDsQJW9rHSa+UhGNJoRYp7bz6Ht1eaRIa6QaJqO5rCFbA== + dependencies: + agent-base "6" + debug "4" + +human-signals@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" + integrity sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw== + +humanize-ms@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/humanize-ms/-/humanize-ms-1.2.1.tgz#c46e3159a293f6b896da29316d8b6fe8bb79bbed" + integrity sha1-xG4xWaKT9riW2ikxbYtv6Lt5u+0= + dependencies: + ms "^2.0.0" + +iconv-lite@0.4.24, iconv-lite@^0.4.24: + version "0.4.24" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" + integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== + dependencies: + safer-buffer ">= 2.1.2 < 3" + +iconv-lite@^0.6.2: + version "0.6.3" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.6.3.tgz#a52f80bf38da1952eb5c681790719871a1a72501" + integrity sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw== + dependencies: + safer-buffer ">= 2.1.2 < 3.0.0" + +icss-utils@^5.0.0, icss-utils@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/icss-utils/-/icss-utils-5.1.0.tgz#c6be6858abd013d768e98366ae47e25d5887b1ae" + integrity sha512-soFhflCVWLfRNOPU3iv5Z9VUdT44xFRbzjLsEzSr5AQmgqPMTHdU3PMT1Cf1ssx8fLNJDA1juftYl+PUcv3MqA== + +ieee754@^1.1.13: + version "1.2.1" + resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" + integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== + +ignore-walk@^3.0.3: + version "3.0.4" + resolved "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-3.0.4.tgz#c9a09f69b7c7b479a5d74ac1a3c0d4236d2a6335" + integrity sha512-PY6Ii8o1jMRA1z4F2hRkH/xN59ox43DavKvD3oDpfurRlOJyAHpifIwpbdv1n4jt4ov0jSpw3kQ4GhJnpBL6WQ== + dependencies: + minimatch "^3.0.4" + +ignore@^4.0.6: + version "4.0.6" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" + integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== + +ignore@^5.1.1, ignore@^5.1.4, ignore@^5.1.8: + version "5.1.9" + resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.1.9.tgz#9ec1a5cbe8e1446ec60d4420060d43aa6e7382fb" + integrity sha512-2zeMQpbKz5dhZ9IwL0gbxSW5w0NK/MSAMtNuhgIHEPmaU3vPdKPL0UdvUCXs5SS4JAwsBxysK5sFMW8ocFiVjQ== + +immediate@^3.2.3: + version "3.3.0" + resolved "https://registry.yarnpkg.com/immediate/-/immediate-3.3.0.tgz#1aef225517836bcdf7f2a2de2600c79ff0269266" + integrity sha512-HR7EVodfFUdQCTIeySw+WDRFJlPcLOJbXfwwZ7Oom6tjsvZ3bOkCDJHehQC3nxJrv7+f9XecwazynjU8e4Vw3Q== + +import-fresh@^3.0.0, import-fresh@^3.2.1: + version "3.3.0" + resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" + integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== + dependencies: + parent-module "^1.0.0" + resolve-from "^4.0.0" + +import-local@^3.0.2: + version "3.0.3" + resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.0.3.tgz#4d51c2c495ca9393da259ec66b62e022920211e0" + integrity sha512-bE9iaUY3CXH8Cwfan/abDKAxe1KGT9kyGsBPqf6DMK/z0a2OzAsrukeYNgIH6cH5Xr452jb1TUL8rSfCLjZ9uA== + dependencies: + pkg-dir "^4.2.0" + resolve-cwd "^3.0.0" + +imurmurhash@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" + integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= + +indent-string@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" + integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== + +infer-owner@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/infer-owner/-/infer-owner-1.0.4.tgz#c4cefcaa8e51051c2a40ba2ce8a3d27295af9467" + integrity sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A== + +inflight@^1.0.4: + version "1.0.6" + resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" + integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= + dependencies: + once "^1.3.0" + wrappy "1" + +inherits@2, inherits@2.0.4, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.3: + version "2.0.4" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" + integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== + +inherits@2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" + integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= + +ini@^1.3.2, ini@^1.3.4, ini@~1.3.0: + version "1.3.8" + resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" + integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== + +init-package-json@^2.0.2: + version "2.0.5" + resolved "https://registry.yarnpkg.com/init-package-json/-/init-package-json-2.0.5.tgz#78b85f3c36014db42d8f32117252504f68022646" + integrity sha512-u1uGAtEFu3VA6HNl/yUWw57jmKEMx8SKOxHhxjGnOFUiIlFnohKDFg4ZrPpv9wWqk44nDxGJAtqjdQFm+9XXQA== + dependencies: + npm-package-arg "^8.1.5" + promzard "^0.3.0" + read "~1.0.1" + read-package-json "^4.1.1" + semver "^7.3.5" + validate-npm-package-license "^3.0.4" + validate-npm-package-name "^3.0.0" + +inquirer@^7.1.0, inquirer@^7.3.3: + version "7.3.3" + resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-7.3.3.tgz#04d176b2af04afc157a83fd7c100e98ee0aad003" + integrity sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA== + 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" + +internal-slot@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/internal-slot/-/internal-slot-1.0.3.tgz#7347e307deeea2faac2ac6205d4bc7d34967f59c" + integrity sha512-O0DB1JC/sPyZl7cIo78n5dR7eUSwwpYPiXRhTzNxZVAMUuB8vlnRFyLxdrVToks6XPLVnFfbzaVd5WLjhgg+vA== + dependencies: + get-intrinsic "^1.1.0" + has "^1.0.3" + side-channel "^1.0.4" + +interpret@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/interpret/-/interpret-2.2.0.tgz#1a78a0b5965c40a5416d007ad6f50ad27c417df9" + integrity sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw== + +ip-regex@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-2.1.0.tgz#fa78bf5d2e6913c911ce9f819ee5146bb6d844e9" + integrity sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk= + +ip@^1.1.5: + version "1.1.5" + resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a" + integrity sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo= + +ipaddr.js@1.9.1: + version "1.9.1" + resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" + integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g== + +is-arguments@^1.0.4: + version "1.1.1" + resolved "https://registry.yarnpkg.com/is-arguments/-/is-arguments-1.1.1.tgz#15b3f88fda01f2a97fec84ca761a560f123efa9b" + integrity sha512-8Q7EARjzEnKpt/PCD7e1cgUS0a6X8u5tdSiMqXhojOdoV9TsMsiO+9VLC5vAmO8N7/GmXn7yjR8qnA6bVAEzfA== + dependencies: + call-bind "^1.0.2" + has-tostringtag "^1.0.0" + +is-arrayish@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" + integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= + +is-bigint@^1.0.1: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-bigint/-/is-bigint-1.0.4.tgz#08147a1875bc2b32005d41ccd8291dffc6691df3" + integrity sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg== + dependencies: + has-bigints "^1.0.1" + +is-boolean-object@^1.1.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/is-boolean-object/-/is-boolean-object-1.1.2.tgz#5c6dc200246dd9321ae4b885a114bb1f75f63719" + integrity sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA== + dependencies: + call-bind "^1.0.2" + has-tostringtag "^1.0.0" + +is-callable@^1.1.4, is-callable@^1.2.4: + version "1.2.4" + resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.4.tgz#47301d58dd0259407865547853df6d61fe471945" + integrity sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w== + +is-ci@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-2.0.0.tgz#6bc6334181810e04b5c22b3d589fdca55026404c" + integrity sha512-YfJT7rkpQB0updsdHLGWrvhBJfcfzNNawYDNIyQXJz0IViGf75O8EBPKSdvw2rF+LGCsX4FZ8tcr3b19LcZq4w== + dependencies: + ci-info "^2.0.0" + +is-core-module@^2.2.0, is-core-module@^2.5.0: + version "2.8.0" + resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.8.0.tgz#0321336c3d0925e497fd97f5d95cb114a5ccd548" + integrity sha512-vd15qHsaqrRL7dtH6QNuy0ndJmRDrS9HAM1CAiSifNUFv4x1a0CCVsj18hJ1mShxIG6T2i1sO78MkP56r0nYRw== + dependencies: + has "^1.0.3" + +is-date-object@^1.0.1: + version "1.0.5" + resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.5.tgz#0841d5536e724c25597bf6ea62e1bd38298df31f" + integrity sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ== + dependencies: + has-tostringtag "^1.0.0" + +is-extglob@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" + integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= + +is-fullwidth-code-point@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" + integrity sha1-754xOG8DGn8NZDr4L95QxFfvAMs= + dependencies: + number-is-nan "^1.0.0" + +is-fullwidth-code-point@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" + integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== + +is-glob@^4.0.0, is-glob@^4.0.1: + version "4.0.3" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" + integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== + dependencies: + is-extglob "^2.1.1" + +is-lambda@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-lambda/-/is-lambda-1.0.1.tgz#3d9877899e6a53efc0160504cde15f82e6f061d5" + integrity sha1-PZh3iZ5qU+/AFgUEzeFfgubwYdU= + +is-negative-zero@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.1.tgz#3de746c18dda2319241a53675908d8f766f11c24" + integrity sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w== + +is-number-object@^1.0.4: + version "1.0.6" + resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.0.6.tgz#6a7aaf838c7f0686a50b4553f7e54a96494e89f0" + integrity sha512-bEVOqiRcvo3zO1+G2lVMy+gkkEm9Yh7cDMRusKKu5ZJKPUYSJwICTKZrNKHA2EbSP0Tu0+6B/emsYNHZyn6K8g== + dependencies: + has-tostringtag "^1.0.0" + +is-number@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" + integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== + +is-obj@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-2.0.0.tgz#473fb05d973705e3fd9620545018ca8e22ef4982" + integrity sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w== + +is-plain-obj@2.1.0, is-plain-obj@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-2.1.0.tgz#45e42e37fccf1f40da8e5f76ee21515840c09287" + integrity sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA== + +is-plain-obj@^1.0.0, is-plain-obj@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" + integrity sha1-caUMhCnfync8kqOQpKA7OfzVHT4= + +is-plain-object@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" + integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== + dependencies: + isobject "^3.0.1" + +is-plain-object@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-5.0.0.tgz#4427f50ab3429e9025ea7d52e9043a9ef4159344" + integrity sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q== + +is-promise@^2.1.0, is-promise@^2.2.2: + version "2.2.2" + resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.2.2.tgz#39ab959ccbf9a774cf079f7b40c7a26f763135f1" + integrity sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ== + +is-regex@^1.0.4, is-regex@^1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.4.tgz#eef5663cd59fa4c0ae339505323df6854bb15958" + integrity sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg== + dependencies: + call-bind "^1.0.2" + has-tostringtag "^1.0.0" + +is-shared-array-buffer@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.1.tgz#97b0c85fbdacb59c9c446fe653b82cf2b5b7cfe6" + integrity sha512-IU0NmyknYZN0rChcKhRO1X8LYz5Isj/Fsqh8NJOSf+N/hCOTwy29F32Ik7a+QszE63IdvmwdTPDd6cZ5pg4cwA== + +is-ssh@^1.3.0: + version "1.3.3" + resolved "https://registry.yarnpkg.com/is-ssh/-/is-ssh-1.3.3.tgz#7f133285ccd7f2c2c7fc897b771b53d95a2b2c7e" + integrity sha512-NKzJmQzJfEEma3w5cJNcUMxoXfDjz0Zj0eyCalHn2E6VOwlzjZo0yuO2fcBSf8zhFuVCL/82/r5gRcoi6aEPVQ== + dependencies: + protocols "^1.1.0" + +is-stream@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077" + integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg== + +is-string@^1.0.5, is-string@^1.0.7: + version "1.0.7" + resolved "https://registry.yarnpkg.com/is-string/-/is-string-1.0.7.tgz#0dd12bf2006f255bb58f695110eff7491eebc0fd" + integrity sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg== + dependencies: + has-tostringtag "^1.0.0" + +is-symbol@^1.0.2, is-symbol@^1.0.3: + version "1.0.4" + resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.4.tgz#a6dac93b635b063ca6872236de88910a57af139c" + integrity sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg== + dependencies: + has-symbols "^1.0.2" + +is-text-path@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-text-path/-/is-text-path-1.0.1.tgz#4e1aa0fb51bfbcb3e92688001397202c1775b66e" + integrity sha1-Thqg+1G/vLPpJogAE5cgLBd1tm4= + dependencies: + text-extensions "^1.0.0" + +is-typedarray@^1.0.0, is-typedarray@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" + integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= + +is-weakref@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-weakref/-/is-weakref-1.0.1.tgz#842dba4ec17fa9ac9850df2d6efbc1737274f2a2" + integrity sha512-b2jKc2pQZjaeFYWEf7ScFj+Be1I+PXmlu572Q8coTXZ+LD/QQZ7ShPMst8h16riVgyXTQwUsFEl74mDvc/3MHQ== + dependencies: + call-bind "^1.0.0" + +isarray@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" + integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= + +isexe@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" + integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= + +isobject@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" + integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8= + +isomorphic.js@^0.2.4: + version "0.2.4" + resolved "https://registry.yarnpkg.com/isomorphic.js/-/isomorphic.js-0.2.4.tgz#24ca374163ae54a7ce3b86ce63b701b91aa84969" + integrity sha512-Y4NjZceAwaPXctwsHgNsmfuPxR8lJ3f8X7QTAkhltrX4oGIv+eTlgHLXn4tWysC9zGTi929gapnPp+8F8cg7nA== + +isstream@~0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" + integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= + +jest-worker@^26.5.0: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-26.6.2.tgz#7f72cbc4d643c365e27b9fd775f9d0eaa9c7a8ed" + integrity sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ== + dependencies: + "@types/node" "*" + merge-stream "^2.0.0" + supports-color "^7.0.0" + +jest-worker@^27.0.6: + version "27.3.1" + resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-27.3.1.tgz#0def7feae5b8042be38479799aeb7b5facac24b2" + integrity sha512-ks3WCzsiZaOPJl/oMsDjaf0TRiSv7ctNgs0FqRr2nARsovz6AWWy4oLElwcquGSz692DzgZQrCLScPNs5YlC4g== + dependencies: + "@types/node" "*" + merge-stream "^2.0.0" + supports-color "^8.0.0" + +"js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" + integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== + +js-yaml@4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.0.tgz#c1fb65f8f5017901cdd2c951864ba18458a10602" + integrity sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA== + dependencies: + argparse "^2.0.1" + +js-yaml@^3.13.1: + version "3.14.1" + resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-3.14.1.tgz#dae812fdb3825fa306609a8717383c50c36a0537" + integrity sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g== + dependencies: + argparse "^1.0.7" + esprima "^4.0.0" + +jsbn@~0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/jsbn/-/jsbn-0.1.1.tgz#a5e654c2e5a2deb5f201d96cefbca80c0ef2f513" + integrity sha1-peZUwuWi3rXyAdls77yoDA7y9RM= + +jsdom@15.2.1: + version "15.2.1" + resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-15.2.1.tgz#d2feb1aef7183f86be521b8c6833ff5296d07ec5" + integrity sha512-fAl1W0/7T2G5vURSyxBzrJ1LSdQn6Tr5UX/xD4PXDx/PDgwygedfW6El/KIj3xJ7FU61TTYnc/l/B7P49Eqt6g== + dependencies: + abab "^2.0.0" + acorn "^7.1.0" + acorn-globals "^4.3.2" + array-equal "^1.0.0" + cssom "^0.4.1" + cssstyle "^2.0.0" + data-urls "^1.1.0" + domexception "^1.0.1" + escodegen "^1.11.1" + html-encoding-sniffer "^1.0.2" + nwsapi "^2.2.0" + parse5 "5.1.0" + pn "^1.1.0" + request "^2.88.0" + request-promise-native "^1.0.7" + saxes "^3.1.9" + symbol-tree "^3.2.2" + tough-cookie "^3.0.1" + w3c-hr-time "^1.0.1" + w3c-xmlserializer "^1.1.2" + webidl-conversions "^4.0.2" + whatwg-encoding "^1.0.5" + whatwg-mimetype "^2.3.0" + whatwg-url "^7.0.0" + ws "^7.0.0" + xml-name-validator "^3.0.0" + +json-buffer@3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.0.tgz#5b1f397afc75d677bde8bcfc0e47e1f9a3d9a898" + integrity sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg= + +json-parse-better-errors@^1.0.1, json-parse-better-errors@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" + integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== + +json-parse-even-better-errors@^2.3.0: + version "2.3.1" + resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" + integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== + +json-schema-traverse@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz#69f6a87d9513ab8bb8fe63bdb0979c448e684660" + integrity sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg== + +json-schema-traverse@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" + integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== + +json-schema@0.2.3: + version "0.2.3" + resolved "https://registry.yarnpkg.com/json-schema/-/json-schema-0.2.3.tgz#b480c892e59a2f05954ce727bd3f2a4e882f9e13" + integrity sha1-tIDIkuWaLwWVTOcnvT8qTogvnhM= + +json-stable-stringify-without-jsonify@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" + integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= + +json-stringify-safe@^5.0.1, json-stringify-safe@~5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" + integrity sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus= + +json5@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/json5/-/json5-1.0.1.tgz#779fb0018604fa854eacbf6252180d83543e3dbe" + integrity sha512-aKS4WQjPenRxiQsC93MNfjx+nbF4PAdYzmd/1JIj8HYzqfbu86beTuNgXDzPknWk0n0uARlyewZo4s++ES36Ow== + dependencies: + minimist "^1.2.0" + +json5@^2.1.1, json5@^2.1.2: + version "2.2.0" + resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.0.tgz#2dfefe720c6ba525d9ebd909950f0515316c89a3" + integrity sha512-f+8cldu7X/y7RAJurMEJmdoKXGB/X550w2Nr3tTbezL6RwEE/iMcm+tZnXeoZtKuOq6ft8+CqzEkrIgx1fPoQA== + dependencies: + minimist "^1.2.5" + +jsonfile@^6.0.1: + version "6.1.0" + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae" + integrity sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ== + dependencies: + universalify "^2.0.0" + optionalDependencies: + graceful-fs "^4.1.6" + +jsonparse@^1.2.0, jsonparse@^1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/jsonparse/-/jsonparse-1.3.1.tgz#3f4dae4a91fac315f71062f8521cc239f1366280" + integrity sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA= + +jsonwebtoken@8.5.1: + version "8.5.1" + resolved "https://registry.yarnpkg.com/jsonwebtoken/-/jsonwebtoken-8.5.1.tgz#00e71e0b8df54c2121a1f26137df2280673bcc0d" + integrity sha512-XjwVfRS6jTMsqYs0EsuJ4LGxXV14zQybNd4L2r0UvbVnSF9Af8x7p5MzbJ90Ioz/9TI41/hTCvznF/loiSzn8w== + dependencies: + jws "^3.2.2" + lodash.includes "^4.3.0" + lodash.isboolean "^3.0.3" + lodash.isinteger "^4.0.4" + lodash.isnumber "^3.0.3" + lodash.isplainobject "^4.0.6" + lodash.isstring "^4.0.1" + lodash.once "^4.0.0" + ms "^2.1.1" + semver "^5.6.0" + +jsprim@^1.2.2: + version "1.4.1" + resolved "https://registry.yarnpkg.com/jsprim/-/jsprim-1.4.1.tgz#313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2" + integrity sha1-MT5mvB5cwG5Di8G3SZwuXFastqI= + dependencies: + assert-plus "1.0.0" + extsprintf "1.3.0" + json-schema "0.2.3" + verror "1.10.0" + +jwa@^1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/jwa/-/jwa-1.4.1.tgz#743c32985cb9e98655530d53641b66c8645b039a" + integrity sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA== + dependencies: + buffer-equal-constant-time "1.0.1" + ecdsa-sig-formatter "1.0.11" + safe-buffer "^5.0.1" + +jws@^3.2.2: + version "3.2.2" + resolved "https://registry.yarnpkg.com/jws/-/jws-3.2.2.tgz#001099f3639468c9414000e99995fa52fb478304" + integrity sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA== + dependencies: + jwa "^1.4.1" + safe-buffer "^5.0.1" + +keygrip@~1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/keygrip/-/keygrip-1.1.0.tgz#871b1681d5e159c62a445b0c74b615e0917e7226" + integrity sha512-iYSchDJ+liQ8iwbSI2QqsQOvqv58eJCEanyJPJi+Khyu8smkcKSFUCbPwzFcL7YVtZ6eONjqRX/38caJ7QjRAQ== + dependencies: + tsscmp "1.0.6" + +keyv@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/keyv/-/keyv-3.1.0.tgz#ecc228486f69991e49e9476485a5be1e8fc5c4d9" + integrity sha512-9ykJ/46SN/9KPM/sichzQ7OvXyGDYKGTaDlKMGCAlg2UK8KRy4jb0d8sFc+0Tt0YYnThq8X2RZgCg74RPxgcVA== + dependencies: + json-buffer "3.0.0" + +kind-of@^6.0.2, kind-of@^6.0.3: + version "6.0.3" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" + integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== + +kleur@4.1.4: + version "4.1.4" + resolved "https://registry.yarnpkg.com/kleur/-/kleur-4.1.4.tgz#8c202987d7e577766d039a8cd461934c01cda04d" + integrity sha512-8QADVssbrFjivHWQU7KkMgptGTl6WAcSdlbBPY4uNF+mWr6DGcKrvY2w4FQJoXch7+fKMjj0dRrL75vk3k23OA== + +klona@^2.0.3: + version "2.0.5" + resolved "https://registry.yarnpkg.com/klona/-/klona-2.0.5.tgz#d166574d90076395d9963aa7a928fabb8d76afbc" + integrity sha512-pJiBpiXMbt7dkzXe8Ghj/u4FfXOOa98fPW+bihOJ4SjnoijweJrNThJfd3ifXpXhREjpoF2mZVH1GfS9LV3kHQ== + +lerna@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/lerna/-/lerna-4.0.0.tgz#b139d685d50ea0ca1be87713a7c2f44a5b678e9e" + integrity sha512-DD/i1znurfOmNJb0OBw66NmNqiM8kF6uIrzrJ0wGE3VNdzeOhz9ziWLYiRaZDGGwgbcjOo6eIfcx9O5Qynz+kg== + dependencies: + "@lerna/add" "4.0.0" + "@lerna/bootstrap" "4.0.0" + "@lerna/changed" "4.0.0" + "@lerna/clean" "4.0.0" + "@lerna/cli" "4.0.0" + "@lerna/create" "4.0.0" + "@lerna/diff" "4.0.0" + "@lerna/exec" "4.0.0" + "@lerna/import" "4.0.0" + "@lerna/info" "4.0.0" + "@lerna/init" "4.0.0" + "@lerna/link" "4.0.0" + "@lerna/list" "4.0.0" + "@lerna/publish" "4.0.0" + "@lerna/run" "4.0.0" + "@lerna/version" "4.0.0" + import-local "^3.0.2" + npmlog "^4.1.2" + +level-codec@^9.0.0: + version "9.0.2" + resolved "https://registry.yarnpkg.com/level-codec/-/level-codec-9.0.2.tgz#fd60df8c64786a80d44e63423096ffead63d8cbc" + integrity sha512-UyIwNb1lJBChJnGfjmO0OR+ezh2iVu1Kas3nvBS/BzGnx79dv6g7unpKIDNPMhfdTEGoc7mC8uAu51XEtX+FHQ== + dependencies: + buffer "^5.6.0" + +level-concat-iterator@~2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/level-concat-iterator/-/level-concat-iterator-2.0.1.tgz#1d1009cf108340252cb38c51f9727311193e6263" + integrity sha512-OTKKOqeav2QWcERMJR7IS9CUo1sHnke2C0gkSmcR7QuEtFNLLzHQAvnMw8ykvEcv0Qtkg0p7FOwP1v9e5Smdcw== + +level-errors@^2.0.0, level-errors@~2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/level-errors/-/level-errors-2.0.1.tgz#2132a677bf4e679ce029f517c2f17432800c05c8" + integrity sha512-UVprBJXite4gPS+3VznfgDSU8PTRuVX0NXwoWW50KLxd2yw4Y1t2JUR5In1itQnudZqRMT9DlAM3Q//9NCjCFw== + dependencies: + errno "~0.1.1" + +level-iterator-stream@~4.0.0: + version "4.0.2" + resolved "https://registry.yarnpkg.com/level-iterator-stream/-/level-iterator-stream-4.0.2.tgz#7ceba69b713b0d7e22fcc0d1f128ccdc8a24f79c" + integrity sha512-ZSthfEqzGSOMWoUGhTXdX9jv26d32XJuHz/5YnuHZzH6wldfWMOVwI9TBtKcya4BKTyTt3XVA0A3cF3q5CY30Q== + dependencies: + inherits "^2.0.4" + readable-stream "^3.4.0" + xtend "^4.0.2" + +level-js@^5.0.0: + version "5.0.2" + resolved "https://registry.yarnpkg.com/level-js/-/level-js-5.0.2.tgz#5e280b8f93abd9ef3a305b13faf0b5397c969b55" + integrity sha512-SnBIDo2pdO5VXh02ZmtAyPP6/+6YTJg2ibLtl9C34pWvmtMEmRTWpra+qO/hifkUtBTOtfx6S9vLDjBsBK4gRg== + dependencies: + abstract-leveldown "~6.2.3" + buffer "^5.5.0" + inherits "^2.0.3" + ltgt "^2.1.2" + +level-packager@^5.1.0: + version "5.1.1" + resolved "https://registry.yarnpkg.com/level-packager/-/level-packager-5.1.1.tgz#323ec842d6babe7336f70299c14df2e329c18939" + integrity sha512-HMwMaQPlTC1IlcwT3+swhqf/NUO+ZhXVz6TY1zZIIZlIR0YSn8GtAAWmIvKjNY16ZkEg/JcpAuQskxsXqC0yOQ== + dependencies: + encoding-down "^6.3.0" + levelup "^4.3.2" + +level-supports@~1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/level-supports/-/level-supports-1.0.1.tgz#2f530a596834c7301622521988e2c36bb77d122d" + integrity sha512-rXM7GYnW8gsl1vedTJIbzOrRv85c/2uCMpiiCzO2fndd06U/kUXEEU9evYn4zFggBOg36IsBW8LzqIpETwwQzg== + dependencies: + xtend "^4.0.2" + +level@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/level/-/level-6.0.1.tgz#dc34c5edb81846a6de5079eac15706334b0d7cd6" + integrity sha512-psRSqJZCsC/irNhfHzrVZbmPYXDcEYhA5TVNwr+V92jF44rbf86hqGp8fiT702FyiArScYIlPSBTDUASCVNSpw== + dependencies: + level-js "^5.0.0" + level-packager "^5.1.0" + leveldown "^5.4.0" + +leveldown@^5.4.0: + version "5.6.0" + resolved "https://registry.yarnpkg.com/leveldown/-/leveldown-5.6.0.tgz#16ba937bb2991c6094e13ac5a6898ee66d3eee98" + integrity sha512-iB8O/7Db9lPaITU1aA2txU/cBEXAt4vWwKQRrrWuS6XDgbP4QZGj9BL2aNbwb002atoQ/lIotJkfyzz+ygQnUQ== + dependencies: + abstract-leveldown "~6.2.1" + napi-macros "~2.0.0" + node-gyp-build "~4.1.0" + +levelup@^4.3.2: + version "4.4.0" + resolved "https://registry.yarnpkg.com/levelup/-/levelup-4.4.0.tgz#f89da3a228c38deb49c48f88a70fb71f01cafed6" + integrity sha512-94++VFO3qN95cM/d6eBXvd894oJE0w3cInq9USsyQzzoJxmiYzPAocNcuGCPGGjoXqDVJcr3C1jzt1TSjyaiLQ== + dependencies: + deferred-leveldown "~5.3.0" + level-errors "~2.0.0" + level-iterator-stream "~4.0.0" + level-supports "~1.0.0" + xtend "~4.0.0" + +levn@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" + integrity sha512-+bT2uH4E5LGE7h/n3evcS/sQlJXCpIp6ym8OWJ5eV6+67Dsql/LaaT7qJBAt2rzfoa/5QBGBhxDix1dMt2kQKQ== + dependencies: + prelude-ls "^1.2.1" + type-check "~0.4.0" + +levn@~0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/levn/-/levn-0.3.0.tgz#3b09924edf9f083c0490fdd4c0bc4421e04764ee" + integrity sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4= + dependencies: + prelude-ls "~1.1.2" + type-check "~0.3.2" + +lib0@^0.2.31, lib0@^0.2.42: + version "0.2.42" + resolved "https://registry.yarnpkg.com/lib0/-/lib0-0.2.42.tgz#6d8bf1fb8205dec37a953c521c5ee403fd8769b0" + integrity sha512-8BNM4MiokEKzMvSxTOC3gnCBisJH+jL67CnSnqzHv3jli3pUvGC8wz+0DQ2YvGr4wVQdb2R2uNNPw9LEpVvJ4Q== + dependencies: + isomorphic.js "^0.2.4" + +libnpmaccess@^4.0.1: + version "4.0.3" + resolved "https://registry.yarnpkg.com/libnpmaccess/-/libnpmaccess-4.0.3.tgz#dfb0e5b0a53c315a2610d300e46b4ddeb66e7eec" + integrity sha512-sPeTSNImksm8O2b6/pf3ikv4N567ERYEpeKRPSmqlNt1dTZbvgpJIzg5vAhXHpw2ISBsELFRelk0jEahj1c6nQ== + dependencies: + aproba "^2.0.0" + minipass "^3.1.1" + npm-package-arg "^8.1.2" + npm-registry-fetch "^11.0.0" + +libnpmpublish@^4.0.0: + version "4.0.2" + resolved "https://registry.yarnpkg.com/libnpmpublish/-/libnpmpublish-4.0.2.tgz#be77e8bf5956131bcb45e3caa6b96a842dec0794" + integrity sha512-+AD7A2zbVeGRCFI2aO//oUmapCwy7GHqPXFJh3qpToSRNU+tXKJ2YFUgjt04LPPAf2dlEH95s6EhIHM1J7bmOw== + dependencies: + normalize-package-data "^3.0.2" + npm-package-arg "^8.1.2" + npm-registry-fetch "^11.0.0" + semver "^7.1.3" + ssri "^8.0.1" + +license-webpack-plugin@^2.3.14: + version "2.3.21" + resolved "https://registry.yarnpkg.com/license-webpack-plugin/-/license-webpack-plugin-2.3.21.tgz#152f5e82d5f51f8bab78905731f2b8042aa5691b" + integrity sha512-rVaYU9TddZN3ao8M/0PrRSCdTp2EW6VQymlgsuScld1vef0Ou7fALx3ePe83KLP3xAEDcPK5fkqUVqGBnbz1zQ== + dependencies: + "@types/webpack-sources" "^0.1.5" + webpack-sources "^1.2.0" + +lines-and-columns@^1.1.6: + version "1.1.6" + resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.1.6.tgz#1c00c743b433cd0a4e80758f7b64a57440d9ff00" + integrity sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA= + +load-json-file@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-4.0.0.tgz#2f5f45ab91e33216234fd53adab668eb4ec0993b" + integrity sha1-L19Fq5HjMhYjT9U62rZo607AmTs= + dependencies: + graceful-fs "^4.1.2" + parse-json "^4.0.0" + pify "^3.0.0" + strip-bom "^3.0.0" + +load-json-file@^6.2.0: + version "6.2.0" + resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-6.2.0.tgz#5c7770b42cafa97074ca2848707c61662f4251a1" + integrity sha512-gUD/epcRms75Cw8RT1pUdHugZYM5ce64ucs2GEISABwkRsOQr0q2wm/MV2TKThycIe5e0ytRweW2RZxclogCdQ== + dependencies: + graceful-fs "^4.1.15" + parse-json "^5.0.0" + strip-bom "^4.0.0" + type-fest "^0.6.0" + +loader-runner@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-4.2.0.tgz#d7022380d66d14c5fb1d496b89864ebcfd478384" + integrity sha512-92+huvxMvYlMzMt0iIOukcwYBFpkYJdpl2xsZ7LrlayO7E8SOv+JJUEK17B/dJIHAOLMfh2dZZ/Y18WgmGtYNw== + +loader-utils@^1.0.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.4.0.tgz#c579b5e34cb34b1a74edc6c1fb36bfa371d5a613" + integrity sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA== + dependencies: + big.js "^5.2.2" + emojis-list "^3.0.0" + json5 "^1.0.1" + +loader-utils@^2.0.0, loader-utils@~2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-2.0.2.tgz#d6e3b4fb81870721ae4e0868ab11dd638368c129" + integrity sha512-TM57VeHptv569d/GKh6TAYdzKblwDNiumOdkFnejjD0XwTH87K90w3O7AiJRqdQoXygvi1VQTJTLGhJl7WqA7A== + dependencies: + big.js "^5.2.2" + emojis-list "^3.0.0" + json5 "^2.1.2" + +locate-path@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-2.0.0.tgz#2b568b265eec944c6d9c0de9c3dbbbca0354cd8e" + integrity sha1-K1aLJl7slExtnA3pw9u7ygNUzY4= + dependencies: + p-locate "^2.0.0" + path-exists "^3.0.0" + +locate-path@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" + integrity sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g== + dependencies: + p-locate "^4.1.0" + +lockfile@1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/lockfile/-/lockfile-1.0.4.tgz#07f819d25ae48f87e538e6578b6964a4981a5609" + integrity sha512-cvbTwETRfsFh4nHsL1eGWapU1XFi5Ot9E85sWAwia7Y7EgB7vfqcZhTKZ+l7hCGxSPoushMv5GKhT5PdLv03WA== + dependencies: + signal-exit "^3.0.2" + +lodash._reinterpolate@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d" + integrity sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0= + +lodash.debounce@^4.0.8: + version "4.0.8" + resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" + integrity sha1-gteb/zCmfEAF/9XiUVMArZyk168= + +lodash.escape@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/lodash.escape/-/lodash.escape-4.0.1.tgz#c9044690c21e04294beaa517712fded1fa88de98" + integrity sha1-yQRGkMIeBClL6qUXcS/e0fqI3pg= + +lodash.includes@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/lodash.includes/-/lodash.includes-4.3.0.tgz#60bb98a87cb923c68ca1e51325483314849f553f" + integrity sha1-YLuYqHy5I8aMoeUTJUgzFISfVT8= + +lodash.isboolean@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/lodash.isboolean/-/lodash.isboolean-3.0.3.tgz#6c2e171db2a257cd96802fd43b01b20d5f5870f6" + integrity sha1-bC4XHbKiV82WgC/UOwGyDV9YcPY= + +lodash.isinteger@^4.0.4: + version "4.0.4" + resolved "https://registry.yarnpkg.com/lodash.isinteger/-/lodash.isinteger-4.0.4.tgz#619c0af3d03f8b04c31f5882840b77b11cd68343" + integrity sha1-YZwK89A/iwTDH1iChAt3sRzWg0M= + +lodash.ismatch@^4.4.0: + version "4.4.0" + resolved "https://registry.yarnpkg.com/lodash.ismatch/-/lodash.ismatch-4.4.0.tgz#756cb5150ca3ba6f11085a78849645f188f85f37" + integrity sha1-dWy1FQyjum8RCFp4hJZF8Yj4Xzc= + +lodash.isnumber@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/lodash.isnumber/-/lodash.isnumber-3.0.3.tgz#3ce76810c5928d03352301ac287317f11c0b1ffc" + integrity sha1-POdoEMWSjQM1IwGsKHMX8RwLH/w= + +lodash.isplainobject@^4.0.6: + version "4.0.6" + resolved "https://registry.yarnpkg.com/lodash.isplainobject/-/lodash.isplainobject-4.0.6.tgz#7c526a52d89b45c45cc690b88163be0497f550cb" + integrity sha1-fFJqUtibRcRcxpC4gWO+BJf1UMs= + +lodash.isstring@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/lodash.isstring/-/lodash.isstring-4.0.1.tgz#d527dfb5456eca7cc9bb95d5daeaf88ba54a5451" + integrity sha1-1SfftUVuynzJu5XV2ur4i6VKVFE= + +lodash.merge@^4.6.2: + version "4.6.2" + resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" + integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== + +lodash.once@^4.0.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/lodash.once/-/lodash.once-4.1.1.tgz#0dd3971213c7c56df880977d504c88fb471a97ac" + integrity sha1-DdOXEhPHxW34gJd9UEyI+0cal6w= + +lodash.sortby@^4.7.0: + version "4.7.0" + resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438" + integrity sha1-7dFMgk4sycHgsKG0K7UhBRakJDg= + +lodash.template@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-4.5.0.tgz#f976195cf3f347d0d5f52483569fe8031ccce8ab" + integrity sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A== + dependencies: + lodash._reinterpolate "^3.0.0" + lodash.templatesettings "^4.0.0" + +lodash.templatesettings@^4.0.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/lodash.templatesettings/-/lodash.templatesettings-4.2.0.tgz#e481310f049d3cf6d47e912ad09313b154f0fb33" + integrity sha512-stgLz+i3Aa9mZgnjr/O+v9ruKZsPsndy7qPZOchbqk2cnTU1ZaldKK+v7m54WoKIyxiuMZTKT2H81F8BeAc3ZQ== + dependencies: + lodash._reinterpolate "^3.0.0" + +lodash.truncate@^4.4.2: + version "4.4.2" + resolved "https://registry.yarnpkg.com/lodash.truncate/-/lodash.truncate-4.4.2.tgz#5a350da0b1113b837ecfffd5812cbe58d6eae193" + integrity sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM= + +lodash@4, lodash@4.17.21, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.4, lodash@^4.7.0: + version "4.17.21" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" + integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== + +loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" + integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== + dependencies: + js-tokens "^3.0.0 || ^4.0.0" + +lowdb@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/lowdb/-/lowdb-1.0.0.tgz#5243be6b22786ccce30e50c9a33eac36b20c8064" + integrity sha512-2+x8esE/Wb9SQ1F9IHaYWfsC9FIecLOPrK4g17FGEayjUWH172H6nwicRovGvSE2CPZouc2MCIqCI7h9d+GftQ== + dependencies: + graceful-fs "^4.1.3" + is-promise "^2.1.0" + lodash "4" + pify "^3.0.0" + steno "^0.4.1" + +lowercase-keys@^1.0.0, lowercase-keys@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-1.0.1.tgz#6f9e30b47084d971a7c820ff15a6c5167b74c26f" + integrity sha512-G2Lj61tXDnVFFOi8VZds+SoQjtQC3dgokKdDG2mTm1tx4m50NUHBOZSBwQQHyy0V12A0JTG4icfZQH+xPyh8VA== + +lowercase-keys@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/lowercase-keys/-/lowercase-keys-2.0.0.tgz#2603e78b7b4b0006cbca2fbcc8a3202558ac9479" + integrity sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA== + +lru-cache@6.0.0, lru-cache@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" + integrity sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA== + dependencies: + yallist "^4.0.0" + +lru-queue@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/lru-queue/-/lru-queue-0.1.0.tgz#2738bd9f0d3cf4f84490c5736c48699ac632cda3" + integrity sha1-Jzi9nw089PhEkMVzbEhpmsYyzaM= + dependencies: + es5-ext "~0.10.2" + +ltgt@^2.1.2: + version "2.2.1" + resolved "https://registry.yarnpkg.com/ltgt/-/ltgt-2.2.1.tgz#f35ca91c493f7b73da0e07495304f17b31f87ee5" + integrity sha1-81ypHEk/e3PaDgdJUwTxezH4fuU= + +lunr-mutable-indexes@2.3.2: + version "2.3.2" + resolved "https://registry.yarnpkg.com/lunr-mutable-indexes/-/lunr-mutable-indexes-2.3.2.tgz#864253489735d598c5140f3fb75c0a5c8be2e98c" + integrity sha512-Han6cdWAPPFM7C2AigS2Ofl3XjAT0yVMrUixodJEpyg71zCtZ2yzXc3s+suc/OaNt4ca6WJBEzVnEIjxCTwFMw== + dependencies: + lunr ">= 2.3.0 < 2.4.0" + +"lunr@>= 2.3.0 < 2.4.0": + version "2.3.9" + resolved "https://registry.yarnpkg.com/lunr/-/lunr-2.3.9.tgz#18b123142832337dd6e964df1a5a7707b25d35e1" + integrity sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow== + +make-dir@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5" + integrity sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA== + dependencies: + pify "^4.0.1" + semver "^5.6.0" + +make-dir@^3.0.0, make-dir@^3.0.2: + version "3.1.0" + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" + integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== + dependencies: + semver "^6.0.0" + +make-fetch-happen@^8.0.9: + version "8.0.14" + resolved "https://registry.yarnpkg.com/make-fetch-happen/-/make-fetch-happen-8.0.14.tgz#aaba73ae0ab5586ad8eaa68bd83332669393e222" + integrity sha512-EsS89h6l4vbfJEtBZnENTOFk8mCRpY5ru36Xe5bcX1KYIli2mkSHqoFsp5O1wMDvTJJzxe/4THpCTtygjeeGWQ== + dependencies: + agentkeepalive "^4.1.3" + cacache "^15.0.5" + 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" + promise-retry "^2.0.1" + socks-proxy-agent "^5.0.0" + ssri "^8.0.0" + +make-fetch-happen@^9.0.1: + version "9.1.0" + resolved "https://registry.yarnpkg.com/make-fetch-happen/-/make-fetch-happen-9.1.0.tgz#53085a09e7971433e6765f7971bf63f4e05cb968" + integrity sha512-+zopwDy7DNknmwPQplem5lAZX/eCOzSvSNNcSKm5eVwTkOBzoktEfXsa9L23J/GIRhxRsaxzkPEhrJEpE2F4Gg== + 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" + +map-obj@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" + integrity sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0= + +map-obj@^4.0.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-4.3.0.tgz#9304f906e93faae70880da102a9f1df0ea8bb05a" + integrity sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ== + +marked@2.1.3, marked@^2.0.0, marked@^2.0.1: + version "2.1.3" + resolved "https://registry.yarnpkg.com/marked/-/marked-2.1.3.tgz#bd017cef6431724fd4b27e0657f5ceb14bff3753" + integrity sha512-/Q+7MGzaETqifOMWYEA7HVMaZb4XbcRfaOzcSsHZEith83KGlvaSG33u0SKu89Mj5h+T8V2hM+8O45Qc5XTgwA== + +media-typer@0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" + integrity sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g= + +memoizee@0.4.15: + version "0.4.15" + resolved "https://registry.yarnpkg.com/memoizee/-/memoizee-0.4.15.tgz#e6f3d2da863f318d02225391829a6c5956555b72" + integrity sha512-UBWmJpLZd5STPm7PMUlOw/TSy972M+z8gcyQ5veOnSDRREz/0bmpyTfKt3/51DhEBqCZQn1udM/5flcSPYhkdQ== + dependencies: + d "^1.0.1" + es5-ext "^0.10.53" + es6-weak-map "^2.0.3" + event-emitter "^0.3.5" + is-promise "^2.2.2" + lru-queue "^0.1.0" + next-tick "^1.1.0" + timers-ext "^0.1.7" + +memorystream@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/memorystream/-/memorystream-0.3.1.tgz#86d7090b30ce455d63fbae12dda51a47ddcaf9b2" + integrity sha1-htcJCzDORV1j+64S3aUaR93K+bI= + +meow@^8.0.0: + version "8.1.2" + resolved "https://registry.yarnpkg.com/meow/-/meow-8.1.2.tgz#bcbe45bda0ee1729d350c03cffc8395a36c4e897" + integrity sha512-r85E3NdZ+mpYk1C6RjPFEMSE+s1iZMuHtsHAqY0DT3jZczl0diWUZ8g6oU7h0M9cD2EL+PzaYghhCLzR0ZNn5Q== + dependencies: + "@types/minimist" "^1.2.0" + camelcase-keys "^6.2.2" + decamelize-keys "^1.1.0" + hard-rejection "^2.1.0" + minimist-options "4.1.0" + normalize-package-data "^3.0.0" + read-pkg-up "^7.0.1" + redent "^3.0.0" + trim-newlines "^3.0.0" + type-fest "^0.18.0" + yargs-parser "^20.2.3" + +merge-descriptors@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.1.tgz#b00aaa556dd8b44568150ec9d1b953f3f90cbb61" + integrity sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E= + +merge-stream@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/merge-stream/-/merge-stream-2.0.0.tgz#52823629a14dd00c9770fb6ad47dc6310f2c1f60" + integrity sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w== + +merge2@^1.2.3, merge2@^1.3.0: + version "1.4.1" + resolved "https://registry.yarnpkg.com/merge2/-/merge2-1.4.1.tgz#4368892f885e907455a6fd7dc55c0c9d404990ae" + integrity sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg== + +merge@^1.2.0: + version "1.2.1" + resolved "https://registry.yarnpkg.com/merge/-/merge-1.2.1.tgz#38bebf80c3220a8a487b6fcfb3941bb11720c145" + integrity sha512-VjFo4P5Whtj4vsLzsYBu5ayHhoHJ0UqNm7ibvShmbmoz7tGi0vXaoJbGdB+GmDMLUdg8DpQXEIeVDAe8MaABvQ== + +methods@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" + integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4= + +micromatch@^4.0.4: + version "4.0.4" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.4.tgz#896d519dfe9db25fce94ceb7a500919bf881ebf9" + integrity sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg== + dependencies: + braces "^3.0.1" + picomatch "^2.2.3" + +mime-db@1.51.0, "mime-db@>= 1.43.0 < 2": + version "1.51.0" + resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.51.0.tgz#d9ff62451859b18342d960850dc3cfb77e63fb0c" + integrity sha512-5y8A56jg7XVQx2mbv1lu49NR4dokRnhZYTtL+KGfaa27uq4pSTXkwQkFJl4pkRMyNFz/EtYDSkiiEHx3F7UN6g== + +mime-types@^2.1.12, mime-types@^2.1.27, mime-types@~2.1.19, mime-types@~2.1.24: + version "2.1.34" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.34.tgz#5a712f9ec1503511a945803640fafe09d3793c24" + integrity sha512-6cP692WwGIs9XXdOO4++N+7qjqv0rqxxVvJ3VHPh/Sc9mVZcQP+ZGhkKiTvWMQRr2tbHkJP/Yn7Y0npb3ZBs4A== + dependencies: + mime-db "1.51.0" + +mime@1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" + integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== + +mime@2.6.0: + version "2.6.0" + resolved "https://registry.yarnpkg.com/mime/-/mime-2.6.0.tgz#a2a682a95cd4d0cb1d6257e28f83da7e35800367" + integrity sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg== + +mimic-fn@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" + integrity sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg== + +mimic-response@^1.0.0, mimic-response@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-1.0.1.tgz#4923538878eef42063cb8a3e3b0798781487ab1b" + integrity sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ== + +min-indent@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869" + integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg== + +mini-css-extract-plugin@~1.3.2: + version "1.3.9" + resolved "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-1.3.9.tgz#47a32132b0fd97a119acd530e8421e8f6ab16d5e" + integrity sha512-Ac4s+xhVbqlyhXS5J/Vh/QXUz3ycXlCqoCPpg0vdfhsIBH9eg/It/9L1r1XhSCH737M1lqcWnMuWL13zcygn5A== + dependencies: + loader-utils "^2.0.0" + schema-utils "^3.0.0" + webpack-sources "^1.1.0" + +"minimatch@2 || 3", minimatch@3.0.4, minimatch@^3.0.4, minimatch@~3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-3.0.4.tgz#5166e286457f03306064be5497e8dbb0c3d32083" + integrity sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA== + dependencies: + brace-expansion "^1.1.7" + +minimist-options@4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/minimist-options/-/minimist-options-4.1.0.tgz#c0655713c53a8a2ebd77ffa247d342c40f010619" + integrity sha512-Q4r8ghd80yhO/0j1O3B2BjweX3fiHg9cdOwjJd2J76Q135c+NDxGCqdYKQ1SKBuFfgWbAUzBfvYjPUEeNgqN1A== + dependencies: + arrify "^1.0.1" + is-plain-obj "^1.1.0" + kind-of "^6.0.3" + +minimist@^1.2.0, minimist@^1.2.5, minimist@~1.2.0: + version "1.2.5" + resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" + integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== + +minipass-collect@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/minipass-collect/-/minipass-collect-1.0.2.tgz#22b813bf745dc6edba2576b940022ad6edc8c617" + integrity sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA== + dependencies: + minipass "^3.0.0" + +minipass-fetch@^1.3.0, minipass-fetch@^1.3.2: + version "1.4.1" + resolved "https://registry.yarnpkg.com/minipass-fetch/-/minipass-fetch-1.4.1.tgz#d75e0091daac1b0ffd7e9d41629faff7d0c1f1b6" + integrity sha512-CGH1eblLq26Y15+Azk7ey4xh0J/XfJfrCox5LDJiKqI2Q2iwOLOKrlmIaODiSQS8d18jalF6y2K2ePUm0CmShw== + dependencies: + minipass "^3.1.0" + minipass-sized "^1.0.3" + minizlib "^2.0.0" + optionalDependencies: + encoding "^0.1.12" + +minipass-flush@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/minipass-flush/-/minipass-flush-1.0.5.tgz#82e7135d7e89a50ffe64610a787953c4c4cbb373" + integrity sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw== + dependencies: + minipass "^3.0.0" + +minipass-json-stream@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz#7edbb92588fbfc2ff1db2fc10397acb7b6b44aa7" + integrity sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg== + dependencies: + jsonparse "^1.3.1" + minipass "^3.0.0" + +minipass-pipeline@^1.2.2, minipass-pipeline@^1.2.4: + version "1.2.4" + resolved "https://registry.yarnpkg.com/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz#68472f79711c084657c067c5c6ad93cddea8214c" + integrity sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A== + dependencies: + minipass "^3.0.0" + +minipass-sized@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/minipass-sized/-/minipass-sized-1.0.3.tgz#70ee5a7c5052070afacfbc22977ea79def353b70" + integrity sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g== + dependencies: + minipass "^3.0.0" + +minipass@^2.6.0, minipass@^2.9.0: + version "2.9.0" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.9.0.tgz#e713762e7d3e32fed803115cf93e04bca9fcc9a6" + integrity sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg== + dependencies: + safe-buffer "^5.1.2" + yallist "^3.0.0" + +minipass@^3.0.0, minipass@^3.1.0, minipass@^3.1.1, minipass@^3.1.3: + version "3.1.5" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.1.5.tgz#71f6251b0a33a49c01b3cf97ff77eda030dff732" + integrity sha512-+8NzxD82XQoNKNrl1d/FSi+X8wAEWR+sbYAfIvub4Nz0d22plFG72CEVVaufV8PNf4qSslFTD8VMOxNVhHCjTw== + dependencies: + yallist "^4.0.0" + +minizlib@^1.3.3: + version "1.3.3" + resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-1.3.3.tgz#2290de96818a34c29551c8a8d301216bd65a861d" + integrity sha512-6ZYMOEnmVsdCeTJVE0W9ZD+pVnE8h9Hma/iOwwRDsdQoePpoX56/8B6z3P9VNwppJuBKNRuFDRNRqRWexT9G9Q== + dependencies: + minipass "^2.9.0" + +minizlib@^2.0.0, minizlib@^2.1.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931" + integrity sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg== + dependencies: + minipass "^3.0.0" + yallist "^4.0.0" + +mkdirp-infer-owner@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/mkdirp-infer-owner/-/mkdirp-infer-owner-2.0.0.tgz#55d3b368e7d89065c38f32fd38e638f0ab61d316" + integrity sha512-sdqtiFt3lkOaYvTXSRIUjkIdPTcxgv5+fgqYE/5qgwdw12cOrAuzzgzvVExIkH/ul1oeHN3bCLOWSG3XOqbKKw== + dependencies: + chownr "^2.0.0" + infer-owner "^1.0.4" + mkdirp "^1.0.3" + +mkdirp@1.0.4, mkdirp@^1.0.3, mkdirp@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" + integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== + +mkdirp@^0.5.1, mkdirp@^0.5.5, mkdirp@~0.5.1: + version "0.5.5" + resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" + integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ== + dependencies: + minimist "^1.2.5" + +modify-values@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/modify-values/-/modify-values-1.0.1.tgz#b3939fa605546474e3e3e3c63d64bd43b4ee6022" + integrity sha512-xV2bxeN6F7oYjZWTe/YPAy6MN2M+sL4u/Rlm2AHCIVGfo2p1yGmBHQ6vHehl4bRTZBdHu3TSkWdYgkwpYzAGSw== + +moment@^2.24.0: + version "2.29.1" + resolved "https://registry.yarnpkg.com/moment/-/moment-2.29.1.tgz#b2be769fa31940be9eeea6469c075e35006fa3d3" + integrity sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ== + +ms@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" + integrity sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g= + +ms@2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.1.tgz#30a5864eb3ebb0a66f2ebe6d727af06a09d86e0a" + integrity sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg== + +ms@2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" + integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== + +ms@^2.0.0, ms@^2.1.1: + version "2.1.3" + resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" + integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== + +multimatch@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/multimatch/-/multimatch-5.0.0.tgz#932b800963cea7a31a033328fa1e0c3a1874dbe6" + integrity sha512-ypMKuglUrZUD99Tk2bUQ+xNQj43lPEfAeX2o9cTteAmShXy2VHDJpuwu1o0xqoKCt9jLVAvwyFKdLTPXKAfJyA== + dependencies: + "@types/minimatch" "^3.0.3" + array-differ "^3.0.0" + array-union "^2.1.0" + arrify "^2.0.1" + minimatch "^3.0.4" + +mute-stream@0.0.8, mute-stream@~0.0.4: + version "0.0.8" + resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d" + integrity sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA== + +mv@2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/mv/-/mv-2.1.1.tgz#ae6ce0d6f6d5e0a4f7d893798d03c1ea9559b6a2" + integrity sha1-rmzg1vbV4KT32JN5jQPB6pVZtqI= + dependencies: + mkdirp "~0.5.1" + ncp "~2.0.0" + rimraf "~2.4.0" + +nanoid@^3.1.30: + version "3.1.30" + resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.1.30.tgz#63f93cc548d2a113dc5dfbc63bfa09e2b9b64362" + integrity sha512-zJpuPDwOv8D2zq2WRoMe1HsfZthVewpel9CAvTfc/2mBD1uUT/agc5f7GHGWXlYkFvi1mVxe4IjvP2HNrop7nQ== + +napi-macros@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/napi-macros/-/napi-macros-2.0.0.tgz#2b6bae421e7b96eb687aa6c77a7858640670001b" + integrity sha512-A0xLykHtARfueITVDernsAWdtIMbOJgKgcluwENp3AlsKN/PloyO10HtmoqnFAQAcxPkgZN7wdfPfEd0zNGxbg== + +natural-compare@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/natural-compare/-/natural-compare-1.4.0.tgz#4abebfeed7541f2c27acfb29bdbbd15c8d5ba4f7" + integrity sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc= + +ncp@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ncp/-/ncp-2.0.0.tgz#195a21d6c46e361d2fb1281ba38b91e9df7bdbb3" + integrity sha1-GVoh1sRuNh0vsSgbo4uR6d9727M= + +negotiator@0.6.2, negotiator@^0.6.2: + version "0.6.2" + resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb" + integrity sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw== + +neo-async@^2.6.0, neo-async@^2.6.2: + version "2.6.2" + resolved "https://registry.yarnpkg.com/neo-async/-/neo-async-2.6.2.tgz#b4aafb93e3aeb2d8174ca53cf163ab7d7308305f" + integrity sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw== + +next-tick@1, next-tick@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/next-tick/-/next-tick-1.1.0.tgz#1836ee30ad56d67ef281b22bd199f709449b35eb" + integrity sha512-CXdUiJembsNjuToQvxayPZF9Vqht7hewsvy2sOWafLvi2awflj9mOC6bHIg50orX8IJvWKY9wYQ/zB2kogPslQ== + +next-tick@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/next-tick/-/next-tick-1.0.0.tgz#ca86d1fe8828169b0120208e3dc8424b9db8342c" + integrity sha1-yobR/ogoFpsBICCOPchCS524NCw= + +nice-try@^1.0.4: + version "1.0.5" + resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" + integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== + +node-fetch@2.6.1: + version "2.6.1" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.1.tgz#045bd323631f76ed2e2b55573394416b639a0052" + integrity sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw== + +node-fetch@^2.6.0, node-fetch@^2.6.1: + version "2.6.6" + resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.6.tgz#1751a7c01834e8e1697758732e9efb6eeadfaf89" + integrity sha512-Z8/6vRlTUChSdIgMa51jxQ4lrw/Jy5SOW10ObaA47/RElsAN2c5Pn8bTgFGWn/ibwzXTE8qwr1Yzx28vsecXEA== + dependencies: + whatwg-url "^5.0.0" + +node-gyp-build@~4.1.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.1.1.tgz#d7270b5d86717068d114cc57fff352f96d745feb" + integrity sha512-dSq1xmcPDKPZ2EED2S6zw/b9NKsqzXRE6dVr8TVQnI3FJOTteUMuqF3Qqs6LZg+mLGYJWqQzMbIjMtJqTv87nQ== + +node-gyp@^5.0.2: + version "5.1.1" + resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-5.1.1.tgz#eb915f7b631c937d282e33aed44cb7a025f62a3e" + integrity sha512-WH0WKGi+a4i4DUt2mHnvocex/xPLp9pYt5R6M2JdFB7pJ7Z34hveZ4nDTGTiLXCkitA9T8HFZjhinBCiVHYcWw== + dependencies: + env-paths "^2.2.0" + glob "^7.1.4" + graceful-fs "^4.2.2" + mkdirp "^0.5.1" + nopt "^4.0.1" + npmlog "^4.1.2" + request "^2.88.0" + rimraf "^2.6.3" + semver "^5.7.1" + tar "^4.4.12" + which "^1.3.1" + +node-gyp@^7.1.0: + version "7.1.2" + resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-7.1.2.tgz#21a810aebb187120251c3bcec979af1587b188ae" + integrity sha512-CbpcIo7C3eMu3dL1c3d0xw449fHIGALIJsRP4DDPHpyiW8vcriNY7ubh9TE4zEKfSxscY7PjeFnshE7h75ynjQ== + dependencies: + env-paths "^2.2.0" + glob "^7.1.4" + graceful-fs "^4.2.3" + nopt "^5.0.0" + npmlog "^4.1.2" + request "^2.88.2" + rimraf "^3.0.2" + semver "^7.3.2" + tar "^6.0.2" + which "^2.0.2" + +node-releases@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.1.tgz#3d1d395f204f1f2f29a54358b9fb678765ad2fc5" + integrity sha512-CqyzN6z7Q6aMeF/ktcMVTzhAHCEpf8SOarwpzpf8pNBY2k5/oM34UHldUwp8VKI7uxct2HxSRdJjBaZeESzcxA== + +nopt@^4.0.1: + version "4.0.3" + resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.3.tgz#a375cad9d02fd921278d954c2254d5aa57e15e48" + integrity sha512-CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg== + dependencies: + abbrev "1" + osenv "^0.1.4" + +nopt@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/nopt/-/nopt-5.0.0.tgz#530942bb58a512fccafe53fe210f13a25355dc88" + integrity sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ== + dependencies: + abbrev "1" + +normalize-package-data@^2.0.0, normalize-package-data@^2.3.2, normalize-package-data@^2.5.0: + version "2.5.0" + resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" + integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== + dependencies: + hosted-git-info "^2.1.4" + resolve "^1.10.0" + semver "2 || 3 || 4 || 5" + validate-npm-package-license "^3.0.1" + +normalize-package-data@^3.0.0, normalize-package-data@^3.0.2: + version "3.0.3" + resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-3.0.3.tgz#dbcc3e2da59509a0983422884cd172eefdfa525e" + integrity sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA== + dependencies: + hosted-git-info "^4.0.1" + is-core-module "^2.5.0" + semver "^7.3.4" + validate-npm-package-license "^3.0.1" + +normalize-url@^4.1.0: + version "4.5.1" + resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-4.5.1.tgz#0dd90cf1288ee1d1313b87081c9a5932ee48518a" + integrity sha512-9UZCFRHQdNrfTpGg8+1INIg93B6zE0aXMVFkw1WFwvO4SlZywU6aLg5Of0Ap/PgcbSw4LNxvMWXMeugwMCX0AA== + +normalize-url@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-6.1.0.tgz#40d0885b535deffe3f3147bec877d05fe4c5668a" + integrity sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A== + +normalize.css@^8.0.1: + version "8.0.1" + resolved "https://registry.yarnpkg.com/normalize.css/-/normalize.css-8.0.1.tgz#9b98a208738b9cc2634caacbc42d131c97487bf3" + integrity sha512-qizSNPO93t1YUuUhP22btGOo3chcvDFqFaj2TRybP0DMxkHOCTYwp3n34fel4a31ORXy4m1Xq0Gyqpb5m33qIg== + +npm-bundled@^1.1.1: + version "1.1.2" + resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.1.2.tgz#944c78789bd739035b70baa2ca5cc32b8d860bc1" + integrity sha512-x5DHup0SuyQcmL3s7Rx/YQ8sbw/Hzg0rj48eN0dV7hf5cmQq5PXIeioroH3raV1QC1yh3uTYuMThvEQF3iKgGQ== + dependencies: + npm-normalize-package-bin "^1.0.1" + +npm-install-checks@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/npm-install-checks/-/npm-install-checks-4.0.0.tgz#a37facc763a2fde0497ef2c6d0ac7c3fbe00d7b4" + integrity sha512-09OmyDkNLYwqKPOnbI8exiOZU2GVVmQp7tgez2BPi5OZC8M82elDAps7sxC4l//uSUtotWqoEIDwjRvWH4qz8w== + dependencies: + semver "^7.1.1" + +npm-lifecycle@^3.1.5: + version "3.1.5" + resolved "https://registry.yarnpkg.com/npm-lifecycle/-/npm-lifecycle-3.1.5.tgz#9882d3642b8c82c815782a12e6a1bfeed0026309" + integrity sha512-lDLVkjfZmvmfvpvBzA4vzee9cn+Me4orq0QF8glbswJVEbIcSNWib7qGOffolysc3teCqbbPZZkzbr3GQZTL1g== + dependencies: + byline "^5.0.0" + graceful-fs "^4.1.15" + node-gyp "^5.0.2" + resolve-from "^4.0.0" + slide "^1.1.6" + uid-number "0.0.6" + umask "^1.1.0" + which "^1.3.1" + +npm-normalize-package-bin@^1.0.0, npm-normalize-package-bin@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz#6e79a41f23fd235c0623218228da7d9c23b8f6e2" + integrity sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA== + +npm-package-arg@^8.0.0, npm-package-arg@^8.0.1, npm-package-arg@^8.1.0, npm-package-arg@^8.1.2, npm-package-arg@^8.1.5: + version "8.1.5" + resolved "https://registry.yarnpkg.com/npm-package-arg/-/npm-package-arg-8.1.5.tgz#3369b2d5fe8fdc674baa7f1786514ddc15466e44" + integrity sha512-LhgZrg0n0VgvzVdSm1oiZworPbTxYHUJCgtsJW8mGvlDpxTM1vSJc3m5QZeUkhAHIzbz3VCHd/R4osi1L1Tg/Q== + dependencies: + hosted-git-info "^4.0.1" + semver "^7.3.4" + validate-npm-package-name "^3.0.0" + +npm-packlist@^2.1.4: + version "2.2.2" + resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-2.2.2.tgz#076b97293fa620f632833186a7a8f65aaa6148c8" + integrity sha512-Jt01acDvJRhJGthnUJVF/w6gumWOZxO7IkpY/lsX9//zqQgnF7OJaxgQXcerd4uQOLu7W5bkb4mChL9mdfm+Zg== + dependencies: + glob "^7.1.6" + ignore-walk "^3.0.3" + npm-bundled "^1.1.1" + npm-normalize-package-bin "^1.0.1" + +npm-pick-manifest@^6.0.0, npm-pick-manifest@^6.1.1: + version "6.1.1" + resolved "https://registry.yarnpkg.com/npm-pick-manifest/-/npm-pick-manifest-6.1.1.tgz#7b5484ca2c908565f43b7f27644f36bb816f5148" + integrity sha512-dBsdBtORT84S8V8UTad1WlUyKIY9iMsAmqxHbLdeEeBNMLQDlDWWra3wYUx9EBEIiG/YwAy0XyNHDd2goAsfuA== + dependencies: + npm-install-checks "^4.0.0" + npm-normalize-package-bin "^1.0.1" + npm-package-arg "^8.1.2" + semver "^7.3.4" + +npm-registry-fetch@^11.0.0: + version "11.0.0" + resolved "https://registry.yarnpkg.com/npm-registry-fetch/-/npm-registry-fetch-11.0.0.tgz#68c1bb810c46542760d62a6a965f85a702d43a76" + integrity sha512-jmlgSxoDNuhAtxUIG6pVwwtz840i994dL14FoNVZisrmZW5kWd63IUTNv1m/hyRSGSqWjCUp/YZlS1BJyNp9XA== + dependencies: + make-fetch-happen "^9.0.1" + minipass "^3.1.3" + minipass-fetch "^1.3.0" + minipass-json-stream "^1.0.1" + minizlib "^2.0.0" + npm-package-arg "^8.0.0" + +npm-registry-fetch@^9.0.0: + version "9.0.0" + resolved "https://registry.yarnpkg.com/npm-registry-fetch/-/npm-registry-fetch-9.0.0.tgz#86f3feb4ce00313bc0b8f1f8f69daae6face1661" + integrity sha512-PuFYYtnQ8IyVl6ib9d3PepeehcUeHN9IO5N/iCRhyg9tStQcqGQBRVHmfmMWPDERU3KwZoHFvbJ4FPXPspvzbA== + dependencies: + "@npmcli/ci-detect" "^1.0.0" + lru-cache "^6.0.0" + make-fetch-happen "^8.0.9" + minipass "^3.1.3" + minipass-fetch "^1.3.0" + minipass-json-stream "^1.0.1" + minizlib "^2.0.0" + npm-package-arg "^8.0.0" + +npm-run-all@^4.1.5: + version "4.1.5" + resolved "https://registry.yarnpkg.com/npm-run-all/-/npm-run-all-4.1.5.tgz#04476202a15ee0e2e214080861bff12a51d98fba" + integrity sha512-Oo82gJDAVcaMdi3nuoKFavkIHBRVqQ1qvMb+9LHk/cF4P6B2m8aP04hGf7oL6wZ9BuGwX1onlLhpuoofSyoQDQ== + dependencies: + ansi-styles "^3.2.1" + chalk "^2.4.1" + cross-spawn "^6.0.5" + memorystream "^0.3.1" + minimatch "^3.0.4" + pidtree "^0.3.0" + read-pkg "^3.0.0" + shell-quote "^1.6.1" + string.prototype.padend "^3.0.0" + +npm-run-path@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" + integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== + dependencies: + path-key "^3.0.0" + +npmlog@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" + integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg== + dependencies: + 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@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" + integrity sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0= + +nwsapi@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.0.tgz#204879a9e3d068ff2a55139c2c772780681a38b7" + integrity sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ== + +oauth-sign@~0.9.0: + version "0.9.0" + resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" + integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ== + +object-assign@^4, object-assign@^4.1.0, object-assign@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" + integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= + +object-inspect@^1.11.0, object-inspect@^1.9.0: + version "1.11.0" + resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.11.0.tgz#9dceb146cedd4148a0d9e51ab88d34cf509922b1" + integrity sha512-jp7ikS6Sd3GxQfZJPyH3cjcbJF6GZPClgdV+EFygjFLQ5FmW/dRUnTd9PQ9k0JhoNDabWFbpF1yCdSWCC6gexg== + +object-is@^1.0.1: + version "1.1.5" + resolved "https://registry.yarnpkg.com/object-is/-/object-is-1.1.5.tgz#b9deeaa5fc7f1846a0faecdceec138e5778f53ac" + integrity sha512-3cyDsyHgtmi7I7DfSSI2LDp6SK2lwvtbg0p0R1e0RvTqF5ceGx+K2dfSjm1bKDMVCFEDAQvy+o8c6a7VujOddw== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + +object-keys@^1.0.12, object-keys@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" + integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== + +object.assign@^4.1.2: + version "4.1.2" + resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.2.tgz#0ed54a342eceb37b38ff76eb831a0e788cb63940" + integrity sha512-ixT2L5THXsApyiUPYKmW+2EHpXXe5Ii3M+f4e+aJFAHao5amFRW6J0OO6c/LU8Be47utCx2GL89hxGB6XSmKuQ== + dependencies: + call-bind "^1.0.0" + define-properties "^1.1.3" + has-symbols "^1.0.1" + object-keys "^1.1.1" + +object.getownpropertydescriptors@^2.0.3: + version "2.1.3" + resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.3.tgz#b223cf38e17fefb97a63c10c91df72ccb386df9e" + integrity sha512-VdDoCwvJI4QdC6ndjpqFmoL3/+HxffFBbcJzKi5hwLLqqx3mdbedRpfZDdK0SrOSauj8X4GzBvnDZl4vTN7dOw== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + es-abstract "^1.19.1" + +on-finished@~2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" + integrity sha1-IPEzZIGwg811M3mSoWlxqi2QaUc= + dependencies: + ee-first "1.1.1" + +on-headers@~1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.2.tgz#772b0ae6aaa525c399e489adfad90c403eb3c28f" + integrity sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA== + +once@^1.3.0, once@^1.3.1, once@^1.4.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" + integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= + dependencies: + wrappy "1" + +onetime@^5.1.0, onetime@^5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" + integrity sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg== + dependencies: + mimic-fn "^2.1.0" + +optionator@^0.8.1: + version "0.8.3" + resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495" + integrity sha512-+IW9pACdk3XWmmTXG8m3upGUJst5XRGzxMRjXzAuJ1XnIFNvfhjjIuYkDvysnPQ7qzqVzLt78BCruntqRhWQbA== + dependencies: + deep-is "~0.1.3" + fast-levenshtein "~2.0.6" + levn "~0.3.0" + prelude-ls "~1.1.2" + type-check "~0.3.2" + word-wrap "~1.2.3" + +optionator@^0.9.1: + version "0.9.1" + resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.9.1.tgz#4f236a6373dae0566a6d43e1326674f50c291499" + integrity sha512-74RlY5FCnhq4jRxVUPKDaRwrVNXMqsGsiW6AJw4XK8hmtm10wC0ypZBLw5IIp85NZMr91+qd1RvvENwg7jjRFw== + dependencies: + deep-is "^0.1.3" + fast-levenshtein "^2.0.6" + levn "^0.4.1" + prelude-ls "^1.2.1" + type-check "^0.4.0" + word-wrap "^1.2.3" + +os-homedir@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" + integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M= + +os-tmpdir@^1.0.0, os-tmpdir@~1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" + integrity sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ= + +os@~0.1.1: + version "0.1.2" + resolved "https://registry.yarnpkg.com/os/-/os-0.1.2.tgz#f29a50c62908516ba42652de42f7038600cadbc2" + integrity sha512-ZoXJkvAnljwvc56MbvhtKVWmSkzV712k42Is2mA0+0KTSRakq5XXuXpjZjgAt9ctzl51ojhQWakQQpmOvXWfjQ== + +osenv@^0.1.4: + version "0.1.5" + resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410" + integrity sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g== + dependencies: + os-homedir "^1.0.0" + os-tmpdir "^1.0.0" + +p-cancelable@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-1.1.0.tgz#d078d15a3af409220c886f1d9a0ca2e441ab26cc" + integrity sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw== + +p-finally@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" + integrity sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4= + +p-limit@^1.1.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-1.3.0.tgz#b86bd5f0c25690911c7590fcbfc2010d54b3ccb8" + integrity sha512-vvcXsLAJ9Dr5rQOPk7toZQZJApBl2K4J6dANSsEuh6QI41JYcsS/qhTGa9ErIUUgK3WNQoJYvylxvjqmiqEA9Q== + dependencies: + p-try "^1.0.0" + +p-limit@^2.2.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" + integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== + dependencies: + p-try "^2.0.0" + +p-limit@^3.0.2: + version "3.1.0" + resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-3.1.0.tgz#e1daccbe78d0d1388ca18c64fea38e3e57e3706b" + integrity sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ== + dependencies: + yocto-queue "^0.1.0" + +p-locate@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-2.0.0.tgz#20a0103b222a70c8fd39cc2e580680f3dde5ec43" + integrity sha1-IKAQOyIqcMj9OcwuWAaA893l7EM= + dependencies: + p-limit "^1.1.0" + +p-locate@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" + integrity sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A== + dependencies: + p-limit "^2.2.0" + +p-map-series@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/p-map-series/-/p-map-series-2.1.0.tgz#7560d4c452d9da0c07e692fdbfe6e2c81a2a91f2" + integrity sha512-RpYIIK1zXSNEOdwxcfe7FdvGcs7+y5n8rifMhMNWvaxRNMPINJHF5GDeuVxWqnfrcHPSCnp7Oo5yNXHId9Av2Q== + +p-map@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/p-map/-/p-map-4.0.0.tgz#bb2f95a5eda2ec168ec9274e06a747c3e2904d2b" + integrity sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ== + dependencies: + aggregate-error "^3.0.0" + +p-pipe@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/p-pipe/-/p-pipe-3.1.0.tgz#48b57c922aa2e1af6a6404cb7c6bf0eb9cc8e60e" + integrity sha512-08pj8ATpzMR0Y80x50yJHn37NF6vjrqHutASaX5LiH5npS9XPvrUmscd9MF5R4fuYRHOxQR1FfMIlF7AzwoPqw== + +p-queue@^6.6.2: + version "6.6.2" + resolved "https://registry.yarnpkg.com/p-queue/-/p-queue-6.6.2.tgz#2068a9dcf8e67dd0ec3e7a2bcb76810faa85e426" + integrity sha512-RwFpb72c/BhQLEXIZ5K2e+AhgNVmIejGlTgiB9MzZ0e93GRvqZ7uSi0dvRF7/XIXDeNkra2fNHBxTyPDGySpjQ== + dependencies: + eventemitter3 "^4.0.4" + p-timeout "^3.2.0" + +p-reduce@^2.0.0, p-reduce@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/p-reduce/-/p-reduce-2.1.0.tgz#09408da49507c6c274faa31f28df334bc712b64a" + integrity sha512-2USApvnsutq8uoxZBGbbWM0JIYLiEMJ9RlaN7fAzVNb9OZN0SHjjTTfIcb667XynS5Y1VhwDJVDa72TnPzAYWw== + +p-timeout@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/p-timeout/-/p-timeout-3.2.0.tgz#c7e17abc971d2a7962ef83626b35d635acf23dfe" + integrity sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg== + dependencies: + p-finally "^1.0.0" + +p-try@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-try/-/p-try-1.0.0.tgz#cbc79cdbaf8fd4228e13f621f2b1a237c1b207b3" + integrity sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M= + +p-try@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" + integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== + +p-waterfall@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/p-waterfall/-/p-waterfall-2.1.1.tgz#63153a774f472ccdc4eb281cdb2967fcf158b2ee" + integrity sha512-RRTnDb2TBG/epPRI2yYXsimO0v3BXC8Yd3ogr1545IaqKK17VGhbWVeGGN+XfCm/08OK8635nH31c8bATkHuSw== + dependencies: + p-reduce "^2.0.0" + +package-json@^6.5.0: + version "6.5.0" + resolved "https://registry.yarnpkg.com/package-json/-/package-json-6.5.0.tgz#6feedaca35e75725876d0b0e64974697fed145b0" + integrity sha512-k3bdm2n25tkyxcjSKzB5x8kfVxlMdgsbPr0GkZcwHsLpba6cBjqCt1KlcChKEvxHIcTB1FVMuwoijZ26xex5MQ== + dependencies: + got "^9.6.0" + registry-auth-token "^4.0.0" + registry-url "^5.0.0" + semver "^6.2.0" + +pacote@^11.2.6: + version "11.3.5" + resolved "https://registry.yarnpkg.com/pacote/-/pacote-11.3.5.tgz#73cf1fc3772b533f575e39efa96c50be8c3dc9d2" + integrity sha512-fT375Yczn4zi+6Hkk2TBe1x1sP8FgFsEIZ2/iWaXY2r/NkhDJfxbcn5paz1+RTFCyNf+dPnaoBDJoAxXSU8Bkg== + dependencies: + "@npmcli/git" "^2.1.0" + "@npmcli/installed-package-contents" "^1.0.6" + "@npmcli/promise-spawn" "^1.2.0" + "@npmcli/run-script" "^1.8.2" + cacache "^15.0.5" + chownr "^2.0.0" + fs-minipass "^2.1.0" + infer-owner "^1.0.4" + minipass "^3.1.3" + mkdirp "^1.0.3" + npm-package-arg "^8.0.1" + npm-packlist "^2.1.4" + npm-pick-manifest "^6.0.0" + npm-registry-fetch "^11.0.0" + promise-retry "^2.0.1" + read-package-json-fast "^2.0.1" + rimraf "^3.0.2" + ssri "^8.0.1" + tar "^6.1.0" + +parent-module@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" + integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== + dependencies: + callsites "^3.0.0" + +parse-json@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" + integrity sha1-vjX1Qlvh9/bHRxhPmKeIy5lHfuA= + dependencies: + error-ex "^1.3.1" + json-parse-better-errors "^1.0.1" + +parse-json@^5.0.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" + integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg== + dependencies: + "@babel/code-frame" "^7.0.0" + error-ex "^1.3.1" + json-parse-even-better-errors "^2.3.0" + lines-and-columns "^1.1.6" + +parse-ms@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/parse-ms/-/parse-ms-2.1.0.tgz#348565a753d4391fa524029956b172cb7753097d" + integrity sha512-kHt7kzLoS9VBZfUsiKjv43mr91ea+U05EyKkEtqp7vNbHxmaVuEqN7XxeEVnGrMtYOAxGrDElSi96K7EgO1zCA== + +parse-path@^4.0.0: + version "4.0.3" + resolved "https://registry.yarnpkg.com/parse-path/-/parse-path-4.0.3.tgz#82d81ec3e071dcc4ab49aa9f2c9c0b8966bb22bf" + integrity sha512-9Cepbp2asKnWTJ9x2kpw6Fe8y9JDbqwahGCTvklzd/cEq5C5JC59x2Xb0Kx+x0QZ8bvNquGO8/BWP0cwBHzSAA== + dependencies: + is-ssh "^1.3.0" + protocols "^1.4.0" + qs "^6.9.4" + query-string "^6.13.8" + +parse-srcset@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/parse-srcset/-/parse-srcset-1.0.2.tgz#f2bd221f6cc970a938d88556abc589caaaa2bde1" + integrity sha1-8r0iH2zJcKk42IVWq8WJyqqiveE= + +parse-url@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/parse-url/-/parse-url-6.0.0.tgz#f5dd262a7de9ec00914939220410b66cff09107d" + integrity sha512-cYyojeX7yIIwuJzledIHeLUBVJ6COVLeT4eF+2P6aKVzwvgKQPndCBv3+yQ7pcWjqToYwaligxzSYNNmGoMAvw== + dependencies: + is-ssh "^1.3.0" + normalize-url "^6.1.0" + parse-path "^4.0.0" + protocols "^1.4.0" + +parse5@5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/parse5/-/parse5-5.1.0.tgz#c59341c9723f414c452975564c7c00a68d58acd2" + integrity sha512-fxNG2sQjHvlVAYmzBZS9YlDp6PTSSDwa98vkD4QgVDDCAo84z5X1t5XyJQ62ImdLXx5NdIIfihey6xpum9/gRQ== + +parseurl@~1.3.3: + version "1.3.3" + resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" + integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== + +path-browserify@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-1.0.1.tgz#d98454a9c3753d5790860f16f68867b9e46be1fd" + integrity sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g== + +path-exists@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" + integrity sha1-zg6+ql94yxiSXqfYENe1mwEP1RU= + +path-exists@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-4.0.0.tgz#513bdbe2d3b95d7762e8c1137efa195c6c61b5b3" + integrity sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w== + +path-is-absolute@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" + integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= + +path-key@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" + integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A= + +path-key@^3.0.0, path-key@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" + integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== + +path-parse@^1.0.6: + version "1.0.7" + resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" + integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== + +path-to-regexp@0.1.7: + version "0.1.7" + resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" + integrity sha1-32BBeABfUi8V60SQ5yR6G/qmf4w= + +path-type@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" + integrity sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg== + dependencies: + pify "^3.0.0" + +path-type@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" + integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== + +performance-now@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" + integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= + +picocolors@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" + integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== + +picomatch@^2.2.3: + version "2.3.0" + resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.0.tgz#f1f061de8f6a4bf022892e2d128234fb98302972" + integrity sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw== + +pidtree@^0.3.0: + version "0.3.1" + resolved "https://registry.yarnpkg.com/pidtree/-/pidtree-0.3.1.tgz#ef09ac2cc0533df1f3250ccf2c4d366b0d12114a" + integrity sha512-qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA== + +pify@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" + integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw= + +pify@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/pify/-/pify-3.0.0.tgz#e5a4acd2c101fdf3d9a4d07f0dbc4db49dd28176" + integrity sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY= + +pify@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" + integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== + +pify@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/pify/-/pify-5.0.0.tgz#1f5eca3f5e87ebec28cc6d54a0e4aaf00acc127f" + integrity sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA== + +pino-std-serializers@^3.1.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/pino-std-serializers/-/pino-std-serializers-3.2.0.tgz#b56487c402d882eb96cd67c257868016b61ad671" + integrity sha512-EqX4pwDPrt3MuOAAUBMU0Tk5kR/YcCM5fNPEzgCO2zJ5HfX0vbiH9HbJglnyeQsN96Kznae6MWD47pZB5avTrg== + +pino@6.13.3: + version "6.13.3" + resolved "https://registry.yarnpkg.com/pino/-/pino-6.13.3.tgz#60b93bcda1541f92fb37b3f2be0a25cf1d05b6fe" + integrity sha512-tJy6qVgkh9MwNgqX1/oYi3ehfl2Y9H0uHyEEMsBe74KinESIjdMrMQDWpcZPpPicg3VV35d/GLQZmo4QgU2Xkg== + dependencies: + fast-redact "^3.0.0" + fast-safe-stringify "^2.0.8" + fastify-warning "^0.2.0" + flatstr "^1.0.12" + pino-std-serializers "^3.1.0" + quick-format-unescaped "^4.0.3" + sonic-boom "^1.0.2" + +pkg-dir@^4.1.0, pkg-dir@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" + integrity sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ== + dependencies: + find-up "^4.0.0" + +pkginfo@0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/pkginfo/-/pkginfo-0.4.1.tgz#b5418ef0439de5425fc4995042dced14fb2a84ff" + integrity sha1-tUGO8EOd5UJfxJlQQtztFPsqhP8= + +pn@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/pn/-/pn-1.1.0.tgz#e2f4cef0e219f463c179ab37463e4e1ecdccbafb" + integrity sha512-2qHaIQr2VLRFoxe2nASzsV6ef4yOOH+Fi9FBOVH6cqeSgUnoyySPZkxzLuzd+RYOQTRpROA0ztTMqxROKSb/nA== + +popper.js@^1.14.4, popper.js@^1.16.1: + version "1.16.1" + resolved "https://registry.yarnpkg.com/popper.js/-/popper.js-1.16.1.tgz#2a223cb3dc7b6213d740e40372be40de43e65b1b" + integrity sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ== + +postcss-modules-extract-imports@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz#cda1f047c0ae80c97dbe28c3e76a43b88025741d" + integrity sha512-bdHleFnP3kZ4NYDhuGlVK+CMrQ/pqUm8bx/oGL93K6gVwiclvX5x0n76fYMKuIGKzlABOy13zsvqjb0f92TEXw== + +postcss-modules-local-by-default@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/postcss-modules-local-by-default/-/postcss-modules-local-by-default-4.0.0.tgz#ebbb54fae1598eecfdf691a02b3ff3b390a5a51c" + integrity sha512-sT7ihtmGSF9yhm6ggikHdV0hlziDTX7oFoXtuVWeDd3hHObNkcHRo9V3yg7vCAY7cONyxJC/XXCmmiHHcvX7bQ== + dependencies: + icss-utils "^5.0.0" + postcss-selector-parser "^6.0.2" + postcss-value-parser "^4.1.0" + +postcss-modules-scope@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/postcss-modules-scope/-/postcss-modules-scope-3.0.0.tgz#9ef3151456d3bbfa120ca44898dfca6f2fa01f06" + integrity sha512-hncihwFA2yPath8oZ15PZqvWGkWf+XUfQgUGamS4LqoP1anQLOsOJw0vr7J7IwLpoY9fatA2qiGUGmuZL0Iqlg== + dependencies: + postcss-selector-parser "^6.0.4" + +postcss-modules-values@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/postcss-modules-values/-/postcss-modules-values-4.0.0.tgz#d7c5e7e68c3bb3c9b27cbf48ca0bb3ffb4602c9c" + integrity sha512-RDxHkAiEGI78gS2ofyvCsu7iycRv7oqw5xMWn9iMoR0N/7mf9D50ecQqUo5BZ9Zh2vH4bCUR/ktCqbB9m8vJjQ== + dependencies: + icss-utils "^5.0.0" + +postcss-selector-parser@^6.0.2, postcss-selector-parser@^6.0.4: + version "6.0.6" + resolved "https://registry.yarnpkg.com/postcss-selector-parser/-/postcss-selector-parser-6.0.6.tgz#2c5bba8174ac2f6981ab631a42ab0ee54af332ea" + integrity sha512-9LXrvaaX3+mcv5xkg5kFwqSzSH1JIObIx51PrndZwlmznwXRfxMddDvo9gve3gVR8ZTKgoFDdWkbRFmEhT4PMg== + dependencies: + cssesc "^3.0.0" + util-deprecate "^1.0.2" + +postcss-value-parser@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz#443f6a20ced6481a2bda4fa8532a6e55d789a2cb" + integrity sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ== + +postcss@^8.0.2, postcss@^8.2.15: + version "8.3.11" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.3.11.tgz#c3beca7ea811cd5e1c4a3ec6d2e7599ef1f8f858" + integrity sha512-hCmlUAIlUiav8Xdqw3Io4LcpA1DOt7h3LSTAC4G6JGHFFaWzI6qvFt9oilvl8BmkbBRX1IhM90ZAmpk68zccQA== + dependencies: + nanoid "^3.1.30" + picocolors "^1.0.0" + source-map-js "^0.6.2" + +prelude-ls@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.2.1.tgz#debc6489d7a6e6b0e7611888cec880337d316396" + integrity sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g== + +prelude-ls@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" + integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= + +prepend-http@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-2.0.0.tgz#e92434bfa5ea8c19f41cdfd401d741a3c819d897" + integrity sha1-6SQ0v6XqjBn0HN/UAddBo8gZ2Jc= + +prettier-bytes@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/prettier-bytes/-/prettier-bytes-1.0.4.tgz#994b02aa46f699c50b6257b5faaa7fe2557e62d6" + integrity sha1-mUsCqkb2mcULYle1+qp/4lV+YtY= + +prettier-linter-helpers@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/prettier-linter-helpers/-/prettier-linter-helpers-1.0.0.tgz#d23d41fe1375646de2d0104d3454a3008802cf7b" + integrity sha512-GbK2cP9nraSSUF9N2XwUwqfzlAFlMNYYl+ShE/V+H8a9uNl/oUqB1w2EL54Jh0OlyRSd8RfWYJ3coVS4TROP2w== + dependencies: + fast-diff "^1.1.2" + +prettier@^2.1.1: + version "2.4.1" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.4.1.tgz#671e11c89c14a4cfc876ce564106c4a6726c9f5c" + integrity sha512-9fbDAXSBcc6Bs1mZrDYb3XKzDLm4EXXL9sC1LqKP5rZkT6KRr/rf9amVUcODVXgguK/isJz0d0hP72WeaKWsvA== + +prettier@~2.1.1: + version "2.1.2" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.1.2.tgz#3050700dae2e4c8b67c4c3f666cdb8af405e1ce5" + integrity sha512-16c7K+x4qVlJg9rEbXl7HEGmQyZlG4R9AgP+oHKRMsMsuk8s+ATStlf1NpDqyBI1HpVyfjLOeMhH2LvuNvV5Vg== + +pretty-ms@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/pretty-ms/-/pretty-ms-7.0.1.tgz#7d903eaab281f7d8e03c66f867e239dc32fb73e8" + integrity sha512-973driJZvxiGOQ5ONsFhOF/DtzPMOMtgC11kCpUrPGMTgqp2q/1gwzCquocrN33is0VZ5GFHXZYMM9l6h67v2Q== + dependencies: + parse-ms "^2.1.0" + +process-nextick-args@~2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" + integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== + +process@^0.11.10: + version "0.11.10" + resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" + integrity sha1-czIwDoQBYb2j5podHZGn1LwW8YI= + +progress@^2.0.0: + version "2.0.3" + resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" + integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== + +promise-inflight@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" + integrity sha1-mEcocL8igTL8vdhoEputEsPAKeM= + +promise-retry@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/promise-retry/-/promise-retry-2.0.1.tgz#ff747a13620ab57ba688f5fc67855410c370da22" + integrity sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g== + dependencies: + err-code "^2.0.2" + retry "^0.12.0" + +promzard@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/promzard/-/promzard-0.3.0.tgz#26a5d6ee8c7dee4cb12208305acfb93ba382a9ee" + integrity sha1-JqXW7ox97kyxIggwWs+5O6OCqe4= + dependencies: + read "1" + +prop-types@^15.6.1, prop-types@^15.6.2: + version "15.7.2" + resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.7.2.tgz#52c41e75b8c87e72b9d9360e0206b99dcbffa6c5" + integrity sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ== + dependencies: + loose-envify "^1.4.0" + object-assign "^4.1.1" + react-is "^16.8.1" + +proto-list@~1.2.1: + version "1.2.4" + resolved "https://registry.yarnpkg.com/proto-list/-/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849" + integrity sha1-IS1b/hMYMGpCD2QCuOJv85ZHqEk= + +protocols@^1.1.0, protocols@^1.4.0: + version "1.4.8" + resolved "https://registry.yarnpkg.com/protocols/-/protocols-1.4.8.tgz#48eea2d8f58d9644a4a32caae5d5db290a075ce8" + integrity sha512-IgjKyaUSjsROSO8/D49Ab7hP8mJgTYcqApOqdPhLoPxAplXmkp+zRvsrSQjFn5by0rhm4VH0GAUELIPpx7B1yg== + +proxy-addr@~2.0.5: + version "2.0.7" + resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.7.tgz#f19fe69ceab311eeb94b42e70e8c2070f9ba1025" + integrity sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg== + dependencies: + forwarded "0.2.0" + ipaddr.js "1.9.1" + +prr@~1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" + integrity sha1-0/wRS6BplaRexok/SEzrHXj19HY= + +psl@^1.1.24, psl@^1.1.28: + version "1.8.0" + resolved "https://registry.yarnpkg.com/psl/-/psl-1.8.0.tgz#9326f8bcfb013adcc005fdff056acce020e51c24" + integrity sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ== + +pump@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" + integrity sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww== + dependencies: + end-of-stream "^1.1.0" + once "^1.3.1" + +punycode@1.3.2: + version "1.3.2" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" + integrity sha1-llOgNvt8HuQjQvIyXM7v6jkmxI0= + +punycode@^1.4.1: + version "1.4.1" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.4.1.tgz#c0d5a63b2718800ad8e1eb0fa5269c84dd41845e" + integrity sha1-wNWmOycYgArY4esPpSachN1BhF4= + +punycode@^2.1.0, punycode@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" + integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== + +q@^1.5.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" + integrity sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc= + +qs@6.7.0: + version "6.7.0" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.7.0.tgz#41dc1a015e3d581f1621776be31afb2876a9b1bc" + integrity sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ== + +qs@^6.9.4: + version "6.10.1" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.10.1.tgz#4931482fa8d647a5aab799c5271d2133b981fb6a" + integrity sha512-M528Hph6wsSVOBiYUnGf+K/7w0hNshs/duGsNXPUCLH5XAqjEtiPGwNONLV0tBH8NoGb0mvD5JubnUTrujKDTg== + dependencies: + side-channel "^1.0.4" + +qs@~6.5.2: + version "6.5.2" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" + integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA== + +query-string@^6.13.8: + version "6.14.1" + resolved "https://registry.yarnpkg.com/query-string/-/query-string-6.14.1.tgz#7ac2dca46da7f309449ba0f86b1fd28255b0c86a" + integrity sha512-XDxAeVmpfu1/6IjyT/gXHOl+S0vQ9owggJ30hhWKdHAsNPOcasn5o9BW0eejZqL2e4vMjhAxoW3jVHcD6mbcYw== + dependencies: + decode-uri-component "^0.2.0" + filter-obj "^1.1.0" + split-on-first "^1.0.0" + strict-uri-encode "^2.0.0" + +querystring@0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" + integrity sha1-sgmEkgO7Jd+CDadW50cAWHhSFiA= + +querystringify@^2.1.1: + version "2.2.0" + resolved "https://registry.yarnpkg.com/querystringify/-/querystringify-2.2.0.tgz#3345941b4153cb9d082d8eee4cda2016a9aef7f6" + integrity sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ== + +queue-microtask@^1.2.2: + version "1.2.3" + resolved "https://registry.yarnpkg.com/queue-microtask/-/queue-microtask-1.2.3.tgz#4929228bbc724dfac43e0efb058caf7b6cfb6243" + integrity sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A== + +quick-format-unescaped@^4.0.3: + version "4.0.4" + resolved "https://registry.yarnpkg.com/quick-format-unescaped/-/quick-format-unescaped-4.0.4.tgz#93ef6dd8d3453cbc7970dd614fad4c5954d6b5a7" + integrity sha512-tYC1Q1hgyRuHgloV/YXs2w15unPVh8qfu/qCTfhTYamaw7fyhumKa2yGpdSo87vY32rIclj+4fWYQXUMs9EHvg== + +quick-lru@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-4.0.1.tgz#5b8878f113a58217848c6482026c73e1ba57727f" + integrity sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g== + +randombytes@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" + integrity sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ== + dependencies: + safe-buffer "^5.1.0" + +range-parser@~1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" + integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== + +raw-body@2.4.0: + version "2.4.0" + resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.4.0.tgz#a1ce6fb9c9bc356ca52e89256ab59059e13d0332" + integrity sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q== + dependencies: + bytes "3.1.0" + http-errors "1.7.2" + iconv-lite "0.4.24" + unpipe "1.0.0" + +raw-loader@~4.0.0: + version "4.0.2" + resolved "https://registry.yarnpkg.com/raw-loader/-/raw-loader-4.0.2.tgz#1aac6b7d1ad1501e66efdac1522c73e59a584eb6" + integrity sha512-ZnScIV3ag9A4wPX/ZayxL/jZH+euYb6FcUinPcgiQW0+UBtEv0O6Q3lGd3cqJ+GHH+rksEv3Pj99oxJ3u3VIKA== + dependencies: + loader-utils "^2.0.0" + schema-utils "^3.0.0" + +rc@^1.2.8: + version "1.2.8" + resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" + integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw== + dependencies: + deep-extend "^0.6.0" + ini "~1.3.0" + minimist "^1.2.0" + strip-json-comments "~2.0.1" + +react-dom@^17.0.1: + version "17.0.2" + resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-17.0.2.tgz#ecffb6845e3ad8dbfcdc498f0d0a939736502c23" + integrity sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA== + dependencies: + loose-envify "^1.1.0" + object-assign "^4.1.1" + scheduler "^0.20.2" + +react-is@^16.8.1: + version "16.13.1" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" + integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== + +react-lifecycles-compat@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz#4f1a273afdfc8f3488a8c516bfda78f872352362" + integrity sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA== + +react-popper@^1.3.7: + version "1.3.11" + resolved "https://registry.yarnpkg.com/react-popper/-/react-popper-1.3.11.tgz#a2cc3f0a67b75b66cfa62d2c409f9dd1fcc71ffd" + integrity sha512-VSA/bS+pSndSF2fiasHK/PTEEAyOpX60+H5EPAjoArr8JGm+oihu4UbrqcEBpQibJxBVCpYyjAX7abJ+7DoYVg== + dependencies: + "@babel/runtime" "^7.1.2" + "@hypnosphi/create-react-context" "^0.3.1" + deep-equal "^1.1.1" + popper.js "^1.14.4" + prop-types "^15.6.1" + typed-styles "^0.0.7" + warning "^4.0.2" + +react-transition-group@^2.9.0: + version "2.9.0" + resolved "https://registry.yarnpkg.com/react-transition-group/-/react-transition-group-2.9.0.tgz#df9cdb025796211151a436c69a8f3b97b5b07c8d" + integrity sha512-+HzNTCHpeQyl4MJ/bdE0u6XRMe9+XG/+aL4mCxVN4DnPBQ0/5bfHWPDuOZUzYdMj94daZaZdCCc1Dzt9R/xSSg== + dependencies: + dom-helpers "^3.4.0" + loose-envify "^1.4.0" + prop-types "^15.6.2" + react-lifecycles-compat "^3.0.4" + +react@^17.0.1: + version "17.0.2" + resolved "https://registry.yarnpkg.com/react/-/react-17.0.2.tgz#d0b5cc516d29eb3eee383f75b62864cfb6800037" + integrity sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA== + dependencies: + loose-envify "^1.1.0" + object-assign "^4.1.1" + +read-cmd-shim@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/read-cmd-shim/-/read-cmd-shim-2.0.0.tgz#4a50a71d6f0965364938e9038476f7eede3928d9" + integrity sha512-HJpV9bQpkl6KwjxlJcBoqu9Ba0PQg8TqSNIOrulGt54a0uup0HtevreFHzYzkm0lpnleRdNBzXznKrgxglEHQw== + +read-package-json-fast@^2.0.1: + version "2.0.3" + resolved "https://registry.yarnpkg.com/read-package-json-fast/-/read-package-json-fast-2.0.3.tgz#323ca529630da82cb34b36cc0b996693c98c2b83" + integrity sha512-W/BKtbL+dUjTuRL2vziuYhp76s5HZ9qQhd/dKfWIZveD0O40453QNyZhC0e63lqZrAQ4jiOapVoeJ7JrszenQQ== + dependencies: + json-parse-even-better-errors "^2.3.0" + npm-normalize-package-bin "^1.0.1" + +read-package-json@^2.0.0: + version "2.1.2" + resolved "https://registry.yarnpkg.com/read-package-json/-/read-package-json-2.1.2.tgz#6992b2b66c7177259feb8eaac73c3acd28b9222a" + integrity sha512-D1KmuLQr6ZSJS0tW8hf3WGpRlwszJOXZ3E8Yd/DNRaM5d+1wVRZdHlpGBLAuovjr28LbWvjpWkBHMxpRGGjzNA== + dependencies: + glob "^7.1.1" + json-parse-even-better-errors "^2.3.0" + normalize-package-data "^2.0.0" + npm-normalize-package-bin "^1.0.0" + +read-package-json@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/read-package-json/-/read-package-json-3.0.1.tgz#c7108f0b9390257b08c21e3004d2404c806744b9" + integrity sha512-aLcPqxovhJTVJcsnROuuzQvv6oziQx4zd3JvG0vGCL5MjTONUc4uJ90zCBC6R7W7oUKBNoR/F8pkyfVwlbxqng== + dependencies: + glob "^7.1.1" + json-parse-even-better-errors "^2.3.0" + normalize-package-data "^3.0.0" + npm-normalize-package-bin "^1.0.0" + +read-package-json@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/read-package-json/-/read-package-json-4.1.1.tgz#153be72fce801578c1c86b8ef2b21188df1b9eea" + integrity sha512-P82sbZJ3ldDrWCOSKxJT0r/CXMWR0OR3KRh55SgKo3p91GSIEEC32v3lSHAvO/UcH3/IoL7uqhOFBduAnwdldw== + dependencies: + glob "^7.1.1" + json-parse-even-better-errors "^2.3.0" + normalize-package-data "^3.0.0" + npm-normalize-package-bin "^1.0.0" + +read-package-tree@^5.3.1: + version "5.3.1" + resolved "https://registry.yarnpkg.com/read-package-tree/-/read-package-tree-5.3.1.tgz#a32cb64c7f31eb8a6f31ef06f9cedf74068fe636" + integrity sha512-mLUDsD5JVtlZxjSlPPx1RETkNjjvQYuweKwNVt1Sn8kP5Jh44pvYuUHCp6xSVDZWbNxVxG5lyZJ921aJH61sTw== + dependencies: + read-package-json "^2.0.0" + readdir-scoped-modules "^1.0.0" + util-promisify "^2.1.0" + +read-pkg-up@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-3.0.0.tgz#3ed496685dba0f8fe118d0691dc51f4a1ff96f07" + integrity sha1-PtSWaF26D4/hGNBpHcUfSh/5bwc= + dependencies: + find-up "^2.0.0" + read-pkg "^3.0.0" + +read-pkg-up@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-7.0.1.tgz#f3a6135758459733ae2b95638056e1854e7ef507" + integrity sha512-zK0TB7Xd6JpCLmlLmufqykGE+/TlOePD6qKClNW7hHDKFh/J7/7gCWGR7joEQEW1bKq3a3yUZSObOoWLFQ4ohg== + dependencies: + find-up "^4.1.0" + read-pkg "^5.2.0" + type-fest "^0.8.1" + +read-pkg@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-3.0.0.tgz#9cbc686978fee65d16c00e2b19c237fcf6e38389" + integrity sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k= + dependencies: + load-json-file "^4.0.0" + normalize-package-data "^2.3.2" + path-type "^3.0.0" + +read-pkg@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-5.2.0.tgz#7bf295438ca5a33e56cd30e053b34ee7250c93cc" + integrity sha512-Ug69mNOpfvKDAc2Q8DRpMjjzdtrnv9HcSMX+4VsZxD1aZ6ZzrIE7rlzXBtWTyhULSMKg076AW6WR5iZpD0JiOg== + dependencies: + "@types/normalize-package-data" "^2.4.0" + normalize-package-data "^2.5.0" + parse-json "^5.0.0" + type-fest "^0.6.0" + +read@1, read@~1.0.1: + version "1.0.7" + resolved "https://registry.yarnpkg.com/read/-/read-1.0.7.tgz#b3da19bd052431a97671d44a42634adf710b40c4" + integrity sha1-s9oZvQUkMal2cdRKQmNK33ELQMQ= + dependencies: + mute-stream "~0.0.4" + +readable-stream@3, readable-stream@^3.0.0, readable-stream@^3.0.2, readable-stream@^3.4.0: + version "3.6.0" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" + integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== + dependencies: + inherits "^2.0.3" + string_decoder "^1.1.1" + util-deprecate "^1.0.1" + +readable-stream@^2.0.6, readable-stream@~2.3.6: + version "2.3.7" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57" + integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw== + 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" + +readdir-scoped-modules@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/readdir-scoped-modules/-/readdir-scoped-modules-1.1.0.tgz#8d45407b4f870a0dcaebc0e28670d18e74514309" + integrity sha512-asaikDeqAQg7JifRsZn1NJZXo9E+VwlyCfbkZhwyISinqk5zNS6266HS5kah6P0SaQKGF6SkNnZVHUzHFYxYDw== + dependencies: + debuglog "^1.0.1" + dezalgo "^1.0.0" + graceful-fs "^4.1.2" + once "^1.3.0" + +rechoir@^0.7.0: + version "0.7.1" + resolved "https://registry.yarnpkg.com/rechoir/-/rechoir-0.7.1.tgz#9478a96a1ca135b5e88fc027f03ee92d6c645686" + integrity sha512-/njmZ8s1wVeR6pjTZ+0nCnv8SpZNRMT2D1RLOJQESlYFDBvwpTA4KWJpZ+sBJ4+vhjILRcK7JIFdGCdxEAAitg== + dependencies: + resolve "^1.9.0" + +redent@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/redent/-/redent-3.0.0.tgz#e557b7998316bb53c9f1f56fa626352c6963059f" + integrity sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg== + dependencies: + indent-string "^4.0.0" + strip-indent "^3.0.0" + +regenerator-runtime@^0.13.4: + version "0.13.9" + resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz#8925742a98ffd90814988d7566ad30ca3b263b52" + integrity sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA== + +regexp.prototype.flags@^1.2.0: + version "1.3.1" + resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz#7ef352ae8d159e758c0eadca6f8fcb4eef07be26" + integrity sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + +regexpp@^3.1.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2" + integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg== + +registry-auth-token@^4.0.0: + version "4.2.1" + resolved "https://registry.yarnpkg.com/registry-auth-token/-/registry-auth-token-4.2.1.tgz#6d7b4006441918972ccd5fedcd41dc322c79b250" + integrity sha512-6gkSb4U6aWJB4SF2ZvLb76yCBjcvufXBqvvEx1HbmKPkutswjW1xNVRY0+daljIYRbogN7O0etYSlbiaEQyMyw== + dependencies: + rc "^1.2.8" + +registry-url@^5.0.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/registry-url/-/registry-url-5.1.0.tgz#e98334b50d5434b81136b44ec638d9c2009c5009" + integrity sha512-8acYXXTI0AkQv6RAOjE3vOaIXZkT9wo4LOFbBKYQEEnnMNBpKqdUrI6S4NT0KPIo/WVvJ5tE/X5LF/TQUf0ekw== + dependencies: + rc "^1.2.8" + +request-promise-core@1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/request-promise-core/-/request-promise-core-1.1.4.tgz#3eedd4223208d419867b78ce815167d10593a22f" + integrity sha512-TTbAfBBRdWD7aNNOoVOBH4pN/KigV6LyapYNNlAPA8JwbovRti1E88m3sYAwsLi5ryhPKsE9APwnjFTgdUjTpw== + dependencies: + lodash "^4.17.19" + +request-promise-native@^1.0.7: + version "1.0.9" + resolved "https://registry.yarnpkg.com/request-promise-native/-/request-promise-native-1.0.9.tgz#e407120526a5efdc9a39b28a5679bf47b9d9dc28" + integrity sha512-wcW+sIUiWnKgNY0dqCpOZkUbF/I+YPi+f09JZIDa39Ec+q82CpSYniDp+ISgTTbKmnpJWASeJBPZmoxH84wt3g== + dependencies: + request-promise-core "1.1.4" + stealthy-require "^1.1.1" + tough-cookie "^2.3.3" + +request@2.88.0: + version "2.88.0" + resolved "https://registry.yarnpkg.com/request/-/request-2.88.0.tgz#9c2fca4f7d35b592efe57c7f0a55e81052124fef" + integrity sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg== + dependencies: + aws-sign2 "~0.7.0" + aws4 "^1.8.0" + caseless "~0.12.0" + combined-stream "~1.0.6" + extend "~3.0.2" + forever-agent "~0.6.1" + form-data "~2.3.2" + har-validator "~5.1.0" + http-signature "~1.2.0" + is-typedarray "~1.0.0" + isstream "~0.1.2" + json-stringify-safe "~5.0.1" + mime-types "~2.1.19" + oauth-sign "~0.9.0" + performance-now "^2.1.0" + qs "~6.5.2" + safe-buffer "^5.1.2" + tough-cookie "~2.4.3" + tunnel-agent "^0.6.0" + uuid "^3.3.2" + +request@^2.88.0, request@^2.88.2: + version "2.88.2" + resolved "https://registry.yarnpkg.com/request/-/request-2.88.2.tgz#d73c918731cb5a87da047e207234146f664d12b3" + integrity sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw== + dependencies: + 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" + +require-directory@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/require-directory/-/require-directory-2.1.1.tgz#8c64ad5fd30dab1c976e2344ffe7f792a6a6df42" + integrity sha1-jGStX9MNqxyXbiNE/+f3kqam30I= + +require-from-string@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" + integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== + +requires-port@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" + integrity sha1-kl0mAdOaxIXgkc8NpcbmlNw9yv8= + +resize-observer-polyfill@^1.5.1: + version "1.5.1" + resolved "https://registry.yarnpkg.com/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz#0e9020dd3d21024458d4ebd27e23e40269810464" + integrity sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg== + +resolve-cwd@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-3.0.0.tgz#0f0075f1bb2544766cf73ba6a6e2adfebcb13f2d" + integrity sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg== + dependencies: + resolve-from "^5.0.0" + +resolve-from@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" + integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== + +resolve-from@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" + integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== + +resolve@^1.10.0, resolve@^1.13.1, resolve@^1.9.0: + version "1.20.0" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.20.0.tgz#629a013fb3f70755d6f0b7935cc1c2c5378b1975" + integrity sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A== + dependencies: + is-core-module "^2.2.0" + path-parse "^1.0.6" + +responselike@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/responselike/-/responselike-1.0.2.tgz#918720ef3b631c5642be068f15ade5a46f4ba1e7" + integrity sha1-kYcg7ztjHFZCvgaPFa3lpG9Loec= + dependencies: + lowercase-keys "^1.0.0" + +restore-cursor@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-3.1.0.tgz#39f67c54b3a7a58cea5236d95cf0034239631f7e" + integrity sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA== + dependencies: + onetime "^5.1.0" + signal-exit "^3.0.2" + +retry@^0.12.0: + version "0.12.0" + resolved "https://registry.yarnpkg.com/retry/-/retry-0.12.0.tgz#1b42a6266a21f07421d1b0b54b7dc167b01c013b" + integrity sha1-G0KmJmoh8HQh0bC1S33BZ7AcATs= + +reusify@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" + integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== + +rimraf@^2.6.3: + version "2.7.1" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" + integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== + dependencies: + glob "^7.1.3" + +rimraf@^3.0.2, rimraf@~3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" + integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== + dependencies: + glob "^7.1.3" + +rimraf@~2.4.0: + version "2.4.5" + resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.4.5.tgz#ee710ce5d93a8fdb856fb5ea8ff0e2d75934b2da" + integrity sha1-7nEM5dk6j9uFb7Xqj/Di11k0sto= + dependencies: + glob "^6.0.1" + +"rise-reveal@file:../rise-reveal/export/reveal.js": + version "3.9.2" + +run-async@^2.4.0: + version "2.4.1" + resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.4.1.tgz#8440eccf99ea3e70bd409d49aab88e10c189a455" + integrity sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ== + +run-parallel@^1.1.9: + version "1.2.0" + resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" + integrity sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA== + dependencies: + queue-microtask "^1.2.2" + +rxjs@^6.6.0: + version "6.6.7" + resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.6.7.tgz#90ac018acabf491bf65044235d5863c4dab804c9" + integrity sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ== + dependencies: + tslib "^1.9.0" + +safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: + version "5.1.2" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" + integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== + +safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.2, safe-buffer@^5.2.1, safe-buffer@~5.2.0: + version "5.2.1" + resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" + integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== + +"safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: + version "2.1.2" + resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" + integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== + +sanitize-html@~2.3.3: + version "2.3.3" + resolved "https://registry.yarnpkg.com/sanitize-html/-/sanitize-html-2.3.3.tgz#3db382c9a621cce4c46d90f10c64f1e9da9e8353" + integrity sha512-DCFXPt7Di0c6JUnlT90eIgrjs6TsJl/8HYU3KLdmrVclFN4O0heTcVbJiMa23OKVr6aR051XYtsgd8EWwEBwUA== + dependencies: + deepmerge "^4.2.2" + escape-string-regexp "^4.0.0" + htmlparser2 "^6.0.0" + is-plain-object "^5.0.0" + klona "^2.0.3" + parse-srcset "^1.0.2" + postcss "^8.0.2" + +saxes@^3.1.9: + version "3.1.11" + resolved "https://registry.yarnpkg.com/saxes/-/saxes-3.1.11.tgz#d59d1fd332ec92ad98a2e0b2ee644702384b1c5b" + integrity sha512-Ydydq3zC+WYDJK1+gRxRapLIED9PWeSuuS41wqyoRmzvhhh9nc+QQrVMKJYzJFULazeGhzSV0QleN2wD3boh2g== + dependencies: + xmlchars "^2.1.1" + +scheduler@^0.20.2: + version "0.20.2" + resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.20.2.tgz#4baee39436e34aa93b4874bddcbf0fe8b8b50e91" + integrity sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ== + dependencies: + loose-envify "^1.1.0" + object-assign "^4.1.1" + +schema-utils@^2.6.5: + version "2.7.1" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.7.1.tgz#1ca4f32d1b24c590c203b8e7a50bf0ea4cd394d7" + integrity sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg== + dependencies: + "@types/json-schema" "^7.0.5" + ajv "^6.12.4" + ajv-keywords "^3.5.2" + +schema-utils@^3.0.0, schema-utils@^3.1.0, schema-utils@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-3.1.1.tgz#bc74c4b6b6995c1d88f76a8b77bea7219e0c8281" + integrity sha512-Y5PQxS4ITlC+EahLuXaY86TXfR7Dc5lw294alXOq86JAHCihAIZfqv8nNCWvaEJvaC51uN9hbLGeV0cFBdH+Fw== + dependencies: + "@types/json-schema" "^7.0.8" + ajv "^6.12.5" + ajv-keywords "^3.5.2" + +"semver@2 || 3 || 4 || 5", semver@^5.4.1, semver@^5.5.0, semver@^5.6.0, semver@^5.7.1: + version "5.7.1" + resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" + integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== + +semver@7.3.5, semver@^7.1.1, semver@^7.1.3, semver@^7.2.1, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5: + version "7.3.5" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7" + integrity sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ== + dependencies: + lru-cache "^6.0.0" + +semver@^6.0.0, semver@^6.2.0: + version "6.3.0" + resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" + integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== + +send@0.17.1: + version "0.17.1" + resolved "https://registry.yarnpkg.com/send/-/send-0.17.1.tgz#c1d8b059f7900f7466dd4938bdc44e11ddb376c8" + integrity sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg== + dependencies: + debug "2.6.9" + depd "~1.1.2" + destroy "~1.0.4" + encodeurl "~1.0.2" + escape-html "~1.0.3" + etag "~1.8.1" + fresh "0.5.2" + http-errors "~1.7.2" + mime "1.6.0" + ms "2.1.1" + on-finished "~2.3.0" + range-parser "~1.2.1" + statuses "~1.5.0" + +serialize-javascript@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-5.0.1.tgz#7886ec848049a462467a97d3d918ebb2aaf934f4" + integrity sha512-SaaNal9imEO737H2c05Og0/8LUXG7EnsZyMa8MzkmuHoELfT6txuj0cMqRj6zfPKnmQ1yasR4PCJc8x+M4JSPA== + dependencies: + randombytes "^2.1.0" + +serialize-javascript@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/serialize-javascript/-/serialize-javascript-6.0.0.tgz#efae5d88f45d7924141da8b5c3a7a7e663fefeb8" + integrity sha512-Qr3TosvguFt8ePWqsvRfrKyQXIiW+nGbYpy8XK24NQHE83caxWt+mIymTT19DGFbNWNLfEwsrkSmN64lVWB9ag== + dependencies: + randombytes "^2.1.0" + +serve-static@1.14.1: + version "1.14.1" + resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.14.1.tgz#666e636dc4f010f7ef29970a88a674320898b2f9" + integrity sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg== + dependencies: + encodeurl "~1.0.2" + escape-html "~1.0.3" + parseurl "~1.3.3" + send "0.17.1" + +set-blocking@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" + integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= + +setprototypeof@1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.1.tgz#7e95acb24aa92f5885e0abef5ba131330d4ae683" + integrity sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw== + +setprototypeof@1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424" + integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw== + +shallow-clone@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-3.0.1.tgz#8f2981ad92531f55035b01fb230769a40e02efa3" + integrity sha512-/6KqX+GVUdqPuPPd2LxDDxzX6CAbjJehAAOKlNpqqUpAqPM6HeL8f+o3a+JsyGjn2lv0WY8UsTgUJjU9Ok55NA== + dependencies: + kind-of "^6.0.2" + +shebang-command@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-1.2.0.tgz#44aac65b695b03398968c39f363fee5deafdf1ea" + integrity sha1-RKrGW2lbAzmJaMOfNj/uXer98eo= + dependencies: + shebang-regex "^1.0.0" + +shebang-command@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" + integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== + dependencies: + shebang-regex "^3.0.0" + +shebang-regex@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-1.0.0.tgz#da42f49740c0b42db2ca9728571cb190c98efea3" + integrity sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM= + +shebang-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" + integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== + +shell-quote@^1.6.1: + version "1.7.3" + resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.7.3.tgz#aa40edac170445b9a431e17bb62c0b881b9c4123" + integrity sha512-Vpfqwm4EnqGdlsBFNmHhxhElJYrdfcxPThu+ryKS5J8L/fhAwLazFZtq+S+TWZ9ANj2piSQLGj6NQg+lKPmxrw== + +side-channel@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.4.tgz#efce5c8fdc104ee751b25c58d4290011fa5ea2cf" + integrity sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw== + dependencies: + call-bind "^1.0.0" + get-intrinsic "^1.0.2" + object-inspect "^1.9.0" + +signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3: + version "3.0.5" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.5.tgz#9e3e8cc0c75a99472b44321033a7702e7738252f" + integrity sha512-KWcOiKeQj6ZyXx7zq4YxSMgHRlod4czeBQZrPb8OKcohcqAXShm7E20kEMle9WBt26hFcAf0qLOcp5zmY7kOqQ== + +slash@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" + integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== + +slice-ansi@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-4.0.0.tgz#500e8dd0fd55b05815086255b3195adf2a45fe6b" + integrity sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ== + dependencies: + ansi-styles "^4.0.0" + astral-regex "^2.0.0" + is-fullwidth-code-point "^3.0.0" + +slide@^1.1.6: + version "1.1.6" + resolved "https://registry.yarnpkg.com/slide/-/slide-1.1.6.tgz#56eb027d65b4d2dce6cb2e2d32c4d4afc9e1d707" + integrity sha1-VusCfWW00tzmyy4tMsTUr8nh1wc= + +smart-buffer@^4.1.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/smart-buffer/-/smart-buffer-4.2.0.tgz#6e1d71fa4f18c05f7d0ff216dd16a481d0e8d9ae" + integrity sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg== + +socks-proxy-agent@^5.0.0: + version "5.0.1" + resolved "https://registry.yarnpkg.com/socks-proxy-agent/-/socks-proxy-agent-5.0.1.tgz#032fb583048a29ebffec2e6a73fca0761f48177e" + integrity sha512-vZdmnjb9a2Tz6WEQVIurybSwElwPxMZaIc7PzqbJTrezcKNznv6giT7J7tZDZ1BojVaa1jvO/UiUdhDVB0ACoQ== + dependencies: + agent-base "^6.0.2" + debug "4" + socks "^2.3.3" + +socks-proxy-agent@^6.0.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/socks-proxy-agent/-/socks-proxy-agent-6.1.0.tgz#869cf2d7bd10fea96c7ad3111e81726855e285c3" + integrity sha512-57e7lwCN4Tzt3mXz25VxOErJKXlPfXmkMLnk310v/jwW20jWRVcgsOit+xNkN3eIEdB47GwnfAEBLacZ/wVIKg== + dependencies: + agent-base "^6.0.2" + debug "^4.3.1" + socks "^2.6.1" + +socks@^2.3.3, socks@^2.6.1: + version "2.6.1" + resolved "https://registry.yarnpkg.com/socks/-/socks-2.6.1.tgz#989e6534a07cf337deb1b1c94aaa44296520d30e" + integrity sha512-kLQ9N5ucj8uIcxrDwjm0Jsqk06xdpBjGNQtpXy4Q8/QY2k+fY7nZH8CARy+hkbG+SGAovmzzuauCpBlb8FrnBA== + dependencies: + ip "^1.1.5" + smart-buffer "^4.1.0" + +sonic-boom@^1.0.2: + version "1.4.1" + resolved "https://registry.yarnpkg.com/sonic-boom/-/sonic-boom-1.4.1.tgz#d35d6a74076624f12e6f917ade7b9d75e918f53e" + integrity sha512-LRHh/A8tpW7ru89lrlkU4AszXt1dbwSjVWguGrmlxE7tawVmDBlI1PILMkXAxJTwqhgsEeTHzj36D5CmHgQmNg== + dependencies: + atomic-sleep "^1.0.0" + flatstr "^1.0.12" + +sort-keys@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-2.0.0.tgz#658535584861ec97d730d6cf41822e1f56684128" + integrity sha1-ZYU1WEhh7JfXMNbPQYIuH1ZoQSg= + dependencies: + is-plain-obj "^1.0.0" + +sort-keys@^4.0.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-4.2.0.tgz#6b7638cee42c506fff8c1cecde7376d21315be18" + integrity sha512-aUYIEU/UviqPgc8mHR6IW1EGxkAXpeRETYcrzg8cLAvUPZcpAlleSXHV2mY7G12GphSH6Gzv+4MMVSSkbdteHg== + dependencies: + is-plain-obj "^2.0.0" + +sort-object-keys@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/sort-object-keys/-/sort-object-keys-1.1.3.tgz#bff833fe85cab147b34742e45863453c1e190b45" + integrity sha512-855pvK+VkU7PaKYPc+Jjnmt4EzejQHyhhF33q31qG8x7maDzkeFhAAThdCYay11CISO+qAMwjOBP+fPZe0IPyg== + +sort-package-json@~1.44.0: + version "1.44.0" + resolved "https://registry.yarnpkg.com/sort-package-json/-/sort-package-json-1.44.0.tgz#470330be868f8a524a4607b26f2a0233e93d8b6d" + integrity sha512-u9GUZvpavUCXV5SbEqXu9FRbsJrYU6WM10r3zA0gymGPufK5X82MblCLh9GW9l46pXKEZvK+FA3eVTqC4oMp4A== + dependencies: + detect-indent "^6.0.0" + detect-newline "3.1.0" + git-hooks-list "1.0.3" + globby "10.0.0" + is-plain-obj "2.1.0" + sort-object-keys "^1.1.3" + +source-list-map@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34" + integrity sha512-qnQ7gVMxGNxsiL4lEuJwe/To8UnK7fAnmbGEEH8RpLouuKbeEm0lhbQVFIrNSuB+G7tVrAlVsZgETT5nljf+Iw== + +source-map-js@^0.6.2: + version "0.6.2" + resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-0.6.2.tgz#0bb5de631b41cfbda6cfba8bd05a80efdfd2385e" + integrity sha512-/3GptzWzu0+0MBQFrDKzw/DvvMTUORvgY6k6jd/VS6iCR4RDTKWH6v6WPwQoUO8667uQEf9Oe38DxAYWY5F/Ug== + +source-map-support@~0.5.20: + version "0.5.20" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.20.tgz#12166089f8f5e5e8c56926b377633392dd2cb6c9" + integrity sha512-n1lZZ8Ve4ksRqizaBQgxXDgKwttHDhyfQjA6YZZn8+AroHbsIz+JjwxQDxbp+7y5OYCI8t1Yk7etjD9CRd2hIw== + dependencies: + buffer-from "^1.0.0" + source-map "^0.6.0" + +source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.1: + version "0.6.1" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" + integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== + +source-map@~0.7.2: + version "0.7.3" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383" + integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ== + +spdx-correct@^3.0.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/spdx-correct/-/spdx-correct-3.1.1.tgz#dece81ac9c1e6713e5f7d1b6f17d468fa53d89a9" + integrity sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w== + dependencies: + spdx-expression-parse "^3.0.0" + spdx-license-ids "^3.0.0" + +spdx-exceptions@^2.1.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz#3f28ce1a77a00372683eade4a433183527a2163d" + integrity sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A== + +spdx-expression-parse@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz#cf70f50482eefdc98e3ce0a6833e4a53ceeba679" + integrity sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q== + dependencies: + spdx-exceptions "^2.1.0" + spdx-license-ids "^3.0.0" + +spdx-license-ids@^3.0.0: + version "3.0.10" + resolved "https://registry.yarnpkg.com/spdx-license-ids/-/spdx-license-ids-3.0.10.tgz#0d9becccde7003d6c658d487dd48a32f0bf3014b" + integrity sha512-oie3/+gKf7QtpitB0LYLETe+k8SifzsX4KixvpOsbI6S0kRiRQ5MKOio8eMSAKQ17N06+wdEOXRiId+zOxo0hA== + +split-on-first@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/split-on-first/-/split-on-first-1.1.0.tgz#f610afeee3b12bce1d0c30425e76398b78249a5f" + integrity sha512-43ZssAJaMusuKWL8sKUBQXHWOpq8d6CfN/u1p4gUzfJkM05C8rxTmYrkIPTXapZpORA6LkkzcUulJ8FqA7Uudw== + +split2@^3.0.0: + version "3.2.2" + resolved "https://registry.yarnpkg.com/split2/-/split2-3.2.2.tgz#bf2cf2a37d838312c249c89206fd7a17dd12365f" + integrity sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg== + dependencies: + readable-stream "^3.0.0" + +split@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/split/-/split-1.0.1.tgz#605bd9be303aa59fb35f9229fbea0ddec9ea07d9" + integrity sha512-mTyOoPbrivtXnwnIxZRFYRrPNtEFKlpB2fvjSnCQUiAA6qAZzqwna5envK4uk6OIeP17CsdF3rSBGYVBsU0Tkg== + dependencies: + through "2" + +sprintf-js@~1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/sprintf-js/-/sprintf-js-1.0.3.tgz#04e6926f662895354f3dd015203633b857297e2c" + integrity sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw= + +sshpk@^1.7.0: + version "1.16.1" + resolved "https://registry.yarnpkg.com/sshpk/-/sshpk-1.16.1.tgz#fb661c0bef29b39db40769ee39fa70093d6f6877" + integrity sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg== + dependencies: + asn1 "~0.2.3" + assert-plus "^1.0.0" + bcrypt-pbkdf "^1.0.0" + dashdash "^1.12.0" + ecc-jsbn "~0.1.1" + getpass "^0.1.1" + jsbn "~0.1.0" + safer-buffer "^2.0.2" + tweetnacl "~0.14.0" + +ssri@^8.0.0, ssri@^8.0.1: + version "8.0.1" + resolved "https://registry.yarnpkg.com/ssri/-/ssri-8.0.1.tgz#638e4e439e2ffbd2cd289776d5ca457c4f51a2af" + integrity sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ== + dependencies: + minipass "^3.1.1" + +"statuses@>= 1.5.0 < 2", statuses@~1.5.0: + version "1.5.0" + resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" + integrity sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow= + +stealthy-require@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/stealthy-require/-/stealthy-require-1.1.1.tgz#35b09875b4ff49f26a777e509b3090a3226bf24b" + integrity sha1-NbCYdbT/SfJqd35QmzCQoyJr8ks= + +steno@^0.4.1: + version "0.4.4" + resolved "https://registry.yarnpkg.com/steno/-/steno-0.4.4.tgz#071105bdfc286e6615c0403c27e9d7b5dcb855cb" + integrity sha1-BxEFvfwobmYVwEA8J+nXtdy4Vcs= + dependencies: + graceful-fs "^4.1.3" + +strict-uri-encode@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-2.0.0.tgz#b9c7330c7042862f6b142dc274bbcc5866ce3546" + integrity sha1-ucczDHBChi9rFC3CdLvMWGbONUY= + +string-width@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" + integrity sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M= + dependencies: + code-point-at "^1.0.0" + is-fullwidth-code-point "^1.0.0" + strip-ansi "^3.0.0" + +"string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: + version "4.2.3" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.1" + +string.prototype.padend@^3.0.0: + version "3.1.3" + resolved "https://registry.yarnpkg.com/string.prototype.padend/-/string.prototype.padend-3.1.3.tgz#997a6de12c92c7cb34dc8a201a6c53d9bd88a5f1" + integrity sha512-jNIIeokznm8SD/TZISQsZKYu7RJyheFNt84DUPrh482GC8RVp2MKqm2O5oBRdGxbDQoXrhhWtPIWQOiy20svUg== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + es-abstract "^1.19.1" + +string.prototype.trimend@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz#e75ae90c2942c63504686c18b287b4a0b1a45f80" + integrity sha512-y9xCjw1P23Awk8EvTpcyL2NIr1j7wJ39f+k6lvRnSMz+mz9CGz9NYPelDk42kOz6+ql8xjfK8oYzy3jAP5QU5A== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + +string.prototype.trimstart@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.4.tgz#b36399af4ab2999b4c9c648bd7a3fb2bb26feeed" + integrity sha512-jh6e984OBfvxS50tdY2nRZnoC5/mLFKOREQfw8t5yytkoUsJRNxvI/E39qu1sD0OtWI3OC0XgKSmcWwziwYuZw== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + +string_decoder@^1.1.1: + version "1.3.0" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" + integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== + dependencies: + safe-buffer "~5.2.0" + +string_decoder@~1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" + integrity sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg== + dependencies: + safe-buffer "~5.1.0" + +strip-ansi@^3.0.0, strip-ansi@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" + integrity sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8= + dependencies: + ansi-regex "^2.0.0" + +strip-ansi@^6.0.0, strip-ansi@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== + dependencies: + ansi-regex "^5.0.1" + +strip-bom@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" + integrity sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM= + +strip-bom@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878" + integrity sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w== + +strip-final-newline@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" + integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== + +strip-indent@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-3.0.0.tgz#c32e1cee940b6b3432c771bc2c54bcce73cd3001" + integrity sha512-laJTa3Jb+VQpaC6DseHhF7dXVqHTfJPCRDaEbid/drOhgitgYku/letMUqOXFoWV0zIIUbjpdH2t+tYj4bQMRQ== + dependencies: + min-indent "^1.0.0" + +strip-json-comments@^3.1.0, strip-json-comments@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-3.1.1.tgz#31f1281b3832630434831c310c01cccda8cbe006" + integrity sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig== + +strip-json-comments@~2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" + integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= + +strong-log-transformer@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/strong-log-transformer/-/strong-log-transformer-2.1.0.tgz#0f5ed78d325e0421ac6f90f7f10e691d6ae3ae10" + integrity sha512-B3Hgul+z0L9a236FAUC9iZsL+nVHgoCJnqCbN588DjYxvGXaXaaFbfmQ/JhvKjZwsOukuR72XbHv71Qkug0HxA== + dependencies: + duplexer "^0.1.1" + minimist "^1.2.0" + through "^2.3.4" + +style-loader@~2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-2.0.0.tgz#9669602fd4690740eaaec137799a03addbbc393c" + integrity sha512-Z0gYUJmzZ6ZdRUqpg1r8GsaFKypE+3xAzuFeMuoHgjc9KZv3wMyCRjQIWEbhoFSq7+7yoHXySDJyyWQaPajeiQ== + dependencies: + loader-utils "^2.0.0" + schema-utils "^3.0.0" + +supports-color@^5.3.0: + version "5.5.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" + integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== + dependencies: + has-flag "^3.0.0" + +supports-color@^7.0.0, supports-color@^7.1.0, supports-color@^7.2.0: + version "7.2.0" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" + integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== + dependencies: + has-flag "^4.0.0" + +supports-color@^8.0.0: + version "8.1.1" + resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-8.1.1.tgz#cd6fc17e28500cff56c1b86c0a7fd4a54a73005c" + integrity sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q== + dependencies: + has-flag "^4.0.0" + +svg-url-loader@~6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/svg-url-loader/-/svg-url-loader-6.0.0.tgz#b94861d9f6badfb8ca3e7d3ec4655c1bf732ac5d" + integrity sha512-Qr5SCKxyxKcRnvnVrO3iQj9EX/v40UiGEMshgegzV7vpo3yc+HexELOdtWcA3MKjL8IyZZ1zOdcILmDEa/8JJQ== + dependencies: + file-loader "~6.0.0" + loader-utils "~2.0.0" + +symbol-tree@^3.2.2: + version "3.2.4" + resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2" + integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== + +table@^6.0.9: + version "6.7.3" + resolved "https://registry.yarnpkg.com/table/-/table-6.7.3.tgz#255388439715a738391bd2ee4cbca89a4d05a9b7" + integrity sha512-5DkIxeA7XERBqMwJq0aHZOdMadBx4e6eDoFRuyT5VR82J0Ycg2DwM6GfA/EQAhJ+toRTaS1lIdSQCqgrmhPnlw== + dependencies: + ajv "^8.0.1" + lodash.truncate "^4.4.2" + slice-ansi "^4.0.0" + string-width "^4.2.3" + strip-ansi "^6.0.1" + +tapable@^2.1.1, tapable@^2.2.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.2.1.tgz#1967a73ef4060a82f12ab96af86d52fdb76eeca0" + integrity sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ== + +tar@^4.4.12: + version "4.4.19" + resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.19.tgz#2e4d7263df26f2b914dee10c825ab132123742f3" + integrity sha512-a20gEsvHnWe0ygBY8JbxoM4w3SJdhc7ZAuxkLqh+nvNQN2IOt0B5lLgM490X5Hl8FF0dl0tOf2ewFYAlIFgzVA== + dependencies: + chownr "^1.1.4" + fs-minipass "^1.2.7" + minipass "^2.9.0" + minizlib "^1.3.3" + mkdirp "^0.5.5" + safe-buffer "^5.2.1" + yallist "^3.1.1" + +tar@^6.0.2, tar@^6.1.0: + version "6.1.11" + resolved "https://registry.yarnpkg.com/tar/-/tar-6.1.11.tgz#6760a38f003afa1b2ffd0ffe9e9abbd0eab3d621" + integrity sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA== + 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" + +temp-dir@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/temp-dir/-/temp-dir-1.0.0.tgz#0a7c0ea26d3a39afa7e0ebea9c1fc0bc4daa011d" + integrity sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0= + +temp-write@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/temp-write/-/temp-write-4.0.0.tgz#cd2e0825fc826ae72d201dc26eef3bf7e6fc9320" + integrity sha512-HIeWmj77uOOHb0QX7siN3OtwV3CTntquin6TNVg6SHOqCP3hYKmox90eeFOGaY1MqJ9WYDDjkyZrW6qS5AWpbw== + dependencies: + graceful-fs "^4.1.15" + is-stream "^2.0.0" + make-dir "^3.0.0" + temp-dir "^1.0.0" + uuid "^3.3.2" + +terser-webpack-plugin@^4.1.0: + version "4.2.3" + resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-4.2.3.tgz#28daef4a83bd17c1db0297070adc07fc8cfc6a9a" + integrity sha512-jTgXh40RnvOrLQNgIkwEKnQ8rmHjHK4u+6UBEi+W+FPmvb+uo+chJXntKe7/3lW5mNysgSWD60KyesnhW8D6MQ== + dependencies: + cacache "^15.0.5" + find-cache-dir "^3.3.1" + jest-worker "^26.5.0" + p-limit "^3.0.2" + schema-utils "^3.0.0" + serialize-javascript "^5.0.1" + source-map "^0.6.1" + terser "^5.3.4" + webpack-sources "^1.4.3" + +terser-webpack-plugin@^5.1.3: + version "5.2.5" + resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-5.2.5.tgz#ce65b9880a0c36872555c4874f45bbdb02ee32c9" + integrity sha512-3luOVHku5l0QBeYS8r4CdHYWEGMmIj3H1U64jgkdZzECcSOJAyJ9TjuqcQZvw1Y+4AOBN9SeYJPJmFn2cM4/2g== + dependencies: + jest-worker "^27.0.6" + schema-utils "^3.1.1" + serialize-javascript "^6.0.0" + source-map "^0.6.1" + terser "^5.7.2" + +terser@^5.3.4, terser@^5.7.2: + version "5.9.0" + resolved "https://registry.yarnpkg.com/terser/-/terser-5.9.0.tgz#47d6e629a522963240f2b55fcaa3c99083d2c351" + integrity sha512-h5hxa23sCdpzcye/7b8YqbE5OwKca/ni0RQz1uRX3tGh8haaGHqcuSqbGRybuAKNdntZ0mDgFNXPJ48xQ2RXKQ== + dependencies: + commander "^2.20.0" + source-map "~0.7.2" + source-map-support "~0.5.20" + +text-extensions@^1.0.0: + version "1.9.0" + resolved "https://registry.yarnpkg.com/text-extensions/-/text-extensions-1.9.0.tgz#1853e45fee39c945ce6f6c36b2d659b5aabc2a26" + integrity sha512-wiBrwC1EhBelW12Zy26JeOUkQ5mRu+5o8rpsJk5+2t+Y5vE7e842qtZDQ2g1NpX/29HdyFeJ4nSIhI47ENSxlQ== + +text-table@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" + integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= + +through2@^2.0.0: + version "2.0.5" + resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" + integrity sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ== + dependencies: + readable-stream "~2.3.6" + xtend "~4.0.1" + +through2@^4.0.0: + version "4.0.2" + resolved "https://registry.yarnpkg.com/through2/-/through2-4.0.2.tgz#a7ce3ac2a7a8b0b966c80e7c49f0484c3b239764" + integrity sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw== + dependencies: + readable-stream "3" + +through@2, "through@>=2.2.7 <3", through@^2.3.4, through@^2.3.6: + version "2.3.8" + resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" + integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= + +timers-ext@^0.1.7: + version "0.1.7" + resolved "https://registry.yarnpkg.com/timers-ext/-/timers-ext-0.1.7.tgz#6f57ad8578e07a3fb9f91d9387d65647555e25c6" + integrity sha512-b85NUNzTSdodShTIbky6ZF02e8STtVVfD+fu4aXXShEELpozH+bCpJLYMPZbsABN2wDH7fJpqIoXxJpzbf0NqQ== + dependencies: + es5-ext "~0.10.46" + next-tick "1" + +tmp@^0.0.33: + version "0.0.33" + resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" + integrity sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw== + dependencies: + os-tmpdir "~1.0.2" + +to-readable-stream@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/to-readable-stream/-/to-readable-stream-1.0.0.tgz#ce0aa0c2f3df6adf852efb404a783e77c0475771" + integrity sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q== + +to-regex-range@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" + integrity sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ== + dependencies: + is-number "^7.0.0" + +to-string-loader@^1.1.6: + version "1.2.0" + resolved "https://registry.yarnpkg.com/to-string-loader/-/to-string-loader-1.2.0.tgz#4364aa044b9aa876473f4d7a36ef7d216a276e9c" + integrity sha512-KsWUL8FccgBW9FPFm4vYoQbOOcO5m6hKOGYoXjbseD9/4Ft+ravXN5jolQ9kTKYcK4zPt1j+khx97GPGnVoi6A== + dependencies: + loader-utils "^1.0.0" + +toidentifier@1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.0.tgz#7e1be3470f1e77948bc43d94a3c8f4d7752ba553" + integrity sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw== + +tough-cookie@^2.3.3, tough-cookie@~2.5.0: + version "2.5.0" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2" + integrity sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g== + dependencies: + psl "^1.1.28" + punycode "^2.1.1" + +tough-cookie@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-3.0.1.tgz#9df4f57e739c26930a018184887f4adb7dca73b2" + integrity sha512-yQyJ0u4pZsv9D4clxO69OEjLWYw+jbgspjTue4lTQZLfV0c5l1VmK2y1JK8E9ahdpltPOaAThPcp5nKPUgSnsg== + dependencies: + ip-regex "^2.1.0" + psl "^1.1.28" + punycode "^2.1.1" + +tough-cookie@~2.4.3: + version "2.4.3" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.4.3.tgz#53f36da3f47783b0925afa06ff9f3b165280f781" + integrity sha512-Q5srk/4vDM54WJsJio3XNn6K2sCG+CQ8G5Wz6bZhRZoAe/+TxjWB/GlFAnYEbkYVlON9FMk/fE3h2RLpPXo4lQ== + dependencies: + psl "^1.1.24" + punycode "^1.4.1" + +tr46@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/tr46/-/tr46-1.0.1.tgz#a8b13fd6bfd2489519674ccde55ba3693b706d09" + integrity sha1-qLE/1r/SSJUZZ0zN5VujaTtwbQk= + dependencies: + punycode "^2.1.0" + +tr46@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/tr46/-/tr46-2.1.0.tgz#fa87aa81ca5d5941da8cbf1f9b749dc969a4e240" + integrity sha512-15Ih7phfcdP5YxqiB+iDtLoaTz4Nd35+IiAv0kQ5FNKHzXgdWqPoTIqEDDJmXceQt4JZk6lVPT8lnDlPpGDppw== + dependencies: + punycode "^2.1.1" + +tr46@~0.0.3: + version "0.0.3" + resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" + integrity sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o= + +trim-newlines@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-3.0.1.tgz#260a5d962d8b752425b32f3a7db0dcacd176c144" + integrity sha512-c1PTsA3tYrIsLGkJkzHF+w9F2EyxfXGo4UyJc4pFL++FMjnq0HJS69T3M7d//gKrFKwy429bouPescbjecU+Zw== + +tslib@^1.8.1, tslib@^1.9.0: + version "1.14.1" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" + integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== + +tslib@~1.13.0: + version "1.13.0" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.13.0.tgz#c881e13cc7015894ed914862d276436fa9a47043" + integrity sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q== + +tsscmp@1.0.6: + version "1.0.6" + resolved "https://registry.yarnpkg.com/tsscmp/-/tsscmp-1.0.6.tgz#85b99583ac3589ec4bfef825b5000aa911d605eb" + integrity sha512-LxhtAkPDTkVCMQjt2h6eBVY28KCjikZqZfMcC15YBeNjkgUpdCfBu5HoiOTDu86v6smE8yOjyEktJ8hlbANHQA== + +tsutils@^3.21.0: + version "3.21.0" + resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-3.21.0.tgz#b48717d394cea6c1e096983eed58e9d61715b623" + integrity sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA== + dependencies: + tslib "^1.8.1" + +tunnel-agent@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd" + integrity sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0= + dependencies: + safe-buffer "^5.0.1" + +tweetnacl@^0.14.3, tweetnacl@~0.14.0: + version "0.14.5" + resolved "https://registry.yarnpkg.com/tweetnacl/-/tweetnacl-0.14.5.tgz#5ae68177f192d4456269d108afa93ff8743f4f64" + integrity sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q= + +typanion@^3.3.1: + version "3.7.1" + resolved "https://registry.yarnpkg.com/typanion/-/typanion-3.7.1.tgz#5fceb57a2fa0c0a5beca25a7e90ac2a420863709" + integrity sha512-g2QDI/ZLpuEor9EnJ1b7s9S2QSJgNCPBw9ZCSkQdqXNjg5ZQs4mASgW/elVifSxISFwBeMaIAmMBP5luAOIKAw== + +type-check@^0.4.0, type-check@~0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.4.0.tgz#07b8203bfa7056c0657050e3ccd2c37730bab8f1" + integrity sha512-XleUoc9uwGXqjWwXaUTZAmzMcFZ5858QA2vvx1Ur5xIcixXIP+8LnFDgRplU30us6teqdlskFfu+ae4K79Ooew== + dependencies: + prelude-ls "^1.2.1" + +type-check@~0.3.2: + version "0.3.2" + resolved "https://registry.yarnpkg.com/type-check/-/type-check-0.3.2.tgz#5884cab512cf1d355e3fb784f30804b2b520db72" + integrity sha1-WITKtRLPHTVeP7eE8wgEsrUg23I= + dependencies: + prelude-ls "~1.1.2" + +type-fest@^0.18.0: + version "0.18.1" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.18.1.tgz#db4bc151a4a2cf4eebf9add5db75508db6cc841f" + integrity sha512-OIAYXk8+ISY+qTOwkHtKqzAuxchoMiD9Udx+FSGQDuiRR+PJKJHc2NJAXlbhkGwTt/4/nKZxELY1w3ReWOL8mw== + +type-fest@^0.20.2: + version "0.20.2" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" + integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== + +type-fest@^0.21.3: + version "0.21.3" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37" + integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w== + +type-fest@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.4.1.tgz#8bdf77743385d8a4f13ba95f610f5ccd68c728f8" + integrity sha512-IwzA/LSfD2vC1/YDYMv/zHP4rDF1usCwllsDpbolT3D4fUepIO7f9K70jjmUewU/LmGUKJcwcVtDCpnKk4BPMw== + +type-fest@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.6.0.tgz#8d2a2370d3df886eb5c90ada1c5bf6188acf838b" + integrity sha512-q+MB8nYR1KDLrgr4G5yemftpMC7/QLqVndBmEEdqzmNj5dcFOO4Oo8qlwZE3ULT3+Zim1F8Kq4cBnikNhlCMlg== + +type-fest@^0.8.1: + version "0.8.1" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.8.1.tgz#09e249ebde851d3b1e48d27c105444667f17b83d" + integrity sha512-4dbzIzqvjtgiM5rw1k5rEHtBANKmdudhGyBEajN01fEyhaAIhsoKNy6y7+IN93IfpFtwY9iqi7kD+xwKhQsNJA== + +type-is@~1.6.17, type-is@~1.6.18: + version "1.6.18" + resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" + integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g== + dependencies: + media-typer "0.3.0" + mime-types "~2.1.24" + +type@^1.0.1: + version "1.2.0" + resolved "https://registry.yarnpkg.com/type/-/type-1.2.0.tgz#848dd7698dafa3e54a6c479e759c4bc3f18847a0" + integrity sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg== + +type@^2.5.0: + version "2.5.0" + resolved "https://registry.yarnpkg.com/type/-/type-2.5.0.tgz#0a2e78c2e77907b252abe5f298c1b01c63f0db3d" + integrity sha512-180WMDQaIMm3+7hGXWf12GtdniDEy7nYcyFMKJn/eZz/6tSLXrUN9V0wKSbMjej0I1WHWbpREDEKHtqPQa9NNw== + +typed-styles@^0.0.7: + version "0.0.7" + resolved "https://registry.yarnpkg.com/typed-styles/-/typed-styles-0.0.7.tgz#93392a008794c4595119ff62dde6809dbc40a3d9" + integrity sha512-pzP0PWoZUhsECYjABgCGQlRGL1n7tOHsgwYv3oIiEpJwGhFTuty/YNeduxQYzXXa3Ge5BdT6sHYIQYpl4uJ+5Q== + +typedarray-to-buffer@^3.1.5: + version "3.1.5" + resolved "https://registry.yarnpkg.com/typedarray-to-buffer/-/typedarray-to-buffer-3.1.5.tgz#a97ee7a9ff42691b9f783ff1bc5112fe3fca9080" + integrity sha512-zdu8XMNEDepKKR+XYOXAVPtWui0ly0NtohUscw+UmaHiAWT8hrV1rr//H6V+0DvJ3OQ19S979M0laLfX8rm82Q== + dependencies: + is-typedarray "^1.0.0" + +typedarray@^0.0.6: + version "0.0.6" + resolved "https://registry.yarnpkg.com/typedarray/-/typedarray-0.0.6.tgz#867ac74e3864187b1d3d47d996a78ec5c8830777" + integrity sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c= + +typescript@~4.1.3: + version "4.1.6" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.1.6.tgz#1becd85d77567c3c741172339e93ce2e69932138" + integrity sha512-pxnwLxeb/Z5SP80JDRzVjh58KsM6jZHRAOtTpS7sXLS4ogXNKC9ANxHHZqLLeVHZN35jCtI4JdmLLbLiC1kBow== + +typestyle@^2.0.4: + version "2.1.0" + resolved "https://registry.yarnpkg.com/typestyle/-/typestyle-2.1.0.tgz#7c5cc567de72cd8bfb686813150b92791aaa7636" + integrity sha512-6uCYPdG4xWLeEcl9O0GtNFnNGhami+irKiLsXSuvWHC/aTS7wdj49WeikWAKN+xHN3b1hm+9v0svwwgSBhCsNA== + dependencies: + csstype "2.6.9" + free-style "3.1.0" + +uglify-js@^3.1.4: + version "3.14.3" + resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.14.3.tgz#c0f25dfea1e8e5323eccf59610be08b6043c15cf" + integrity sha512-mic3aOdiq01DuSVx0TseaEzMIVqebMZ0Z3vaeDhFEh9bsc24hV1TFvN74reA2vs08D0ZWfNjAcJ3UbVLaBss+g== + +uid-number@0.0.6: + version "0.0.6" + resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81" + integrity sha1-DqEOgDXo61uOREnwbaHHMGY7qoE= + +umask@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/umask/-/umask-1.1.0.tgz#f29cebf01df517912bb58ff9c4e50fde8e33320d" + integrity sha1-8pzr8B31F5ErtY/5xOUP3o4zMg0= + +unbox-primitive@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/unbox-primitive/-/unbox-primitive-1.0.1.tgz#085e215625ec3162574dc8859abee78a59b14471" + integrity sha512-tZU/3NqK3dA5gpE1KtyiJUrEB0lxnGkMFHptJ7q6ewdZ8s12QrODwNbhIJStmJkd1QDXa1NRA8aF2A1zk/Ypyw== + dependencies: + function-bind "^1.1.1" + has-bigints "^1.0.1" + has-symbols "^1.0.2" + which-boxed-primitive "^1.0.2" + +unique-filename@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-1.1.1.tgz#1d69769369ada0583103a1e6ae87681b56573230" + integrity sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ== + dependencies: + unique-slug "^2.0.0" + +unique-slug@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/unique-slug/-/unique-slug-2.0.2.tgz#baabce91083fc64e945b0f3ad613e264f7cd4e6c" + integrity sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w== + dependencies: + imurmurhash "^0.1.4" + +universal-user-agent@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/universal-user-agent/-/universal-user-agent-6.0.0.tgz#3381f8503b251c0d9cd21bc1de939ec9df5480ee" + integrity sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w== + +universalify@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717" + integrity sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ== + +unix-crypt-td-js@1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/unix-crypt-td-js/-/unix-crypt-td-js-1.1.4.tgz#4912dfad1c8aeb7d20fa0a39e4c31918c1d5d5dd" + integrity sha512-8rMeVYWSIyccIJscb9NdCfZKSRBKYTeVnwmiRYT2ulE3qd1RaDQ0xQDP+rI3ccIWbhu/zuo5cgN8z73belNZgw== + +unpipe@1.0.0, unpipe@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" + integrity sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw= + +upath@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/upath/-/upath-2.0.1.tgz#50c73dea68d6f6b990f51d279ce6081665d61a8b" + integrity sha512-1uEe95xksV1O0CYKXo8vQvN1JEbtJp7lb7C5U9HMsIp6IVwntkH/oNUzyVNQSd4S1sYk2FpSSW44FqMc8qee5w== + +uri-js@^4.2.2: + version "4.4.1" + resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" + integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== + dependencies: + punycode "^2.1.0" + +url-loader@~4.1.0: + version "4.1.1" + resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-4.1.1.tgz#28505e905cae158cf07c92ca622d7f237e70a4e2" + integrity sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA== + dependencies: + loader-utils "^2.0.0" + mime-types "^2.1.27" + schema-utils "^3.0.0" + +url-parse-lax@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-3.0.0.tgz#16b5cafc07dbe3676c1b1999177823d6503acb0c" + integrity sha1-FrXK/Afb42dsGxmZF3gj1lA6yww= + dependencies: + prepend-http "^2.0.0" + +url-parse@~1.5.1: + version "1.5.3" + resolved "https://registry.yarnpkg.com/url-parse/-/url-parse-1.5.3.tgz#71c1303d38fb6639ade183c2992c8cc0686df862" + integrity sha512-IIORyIQD9rvj0A4CLWsHkBBJuNqWpFQe224b6j9t/ABmquIS0qDU2pY6kl6AuOrL5OkCXHMCFNe1jBcuAggjvQ== + dependencies: + querystringify "^2.1.1" + requires-port "^1.0.0" + +url@^0.11.0: + version "0.11.0" + resolved "https://registry.yarnpkg.com/url/-/url-0.11.0.tgz#3838e97cfc60521eb73c525a8e55bfdd9e2e28f1" + integrity sha1-ODjpfPxgUh63PFJajlW/3Z4uKPE= + dependencies: + punycode "1.3.2" + querystring "0.2.0" + +util-deprecate@^1.0.1, util-deprecate@^1.0.2, util-deprecate@~1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" + integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= + +util-promisify@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/util-promisify/-/util-promisify-2.1.0.tgz#3c2236476c4d32c5ff3c47002add7c13b9a82a53" + integrity sha1-PCI2R2xNMsX/PEcAKt18E7moKlM= + dependencies: + object.getownpropertydescriptors "^2.0.3" + +utils-merge@1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" + integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM= + +uuid@^3.3.2: + version "3.4.0" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" + integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== + +v8-compile-cache@^2.0.3: + version "2.3.0" + resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz#2de19618c66dc247dcfb6f99338035d8245a2cee" + integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA== + +validate-npm-package-license@^3.0.1, validate-npm-package-license@^3.0.4: + version "3.0.4" + resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" + integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== + dependencies: + spdx-correct "^3.0.0" + spdx-expression-parse "^3.0.0" + +validate-npm-package-name@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz#5fa912d81eb7d0c74afc140de7317f0ca7df437e" + integrity sha1-X6kS2B630MdK/BQN5zF/DKffQ34= + dependencies: + builtins "^1.0.3" + +validator@13.7.0: + version "13.7.0" + resolved "https://registry.yarnpkg.com/validator/-/validator-13.7.0.tgz#4f9658ba13ba8f3d82ee881d3516489ea85c0857" + integrity sha512-nYXQLCBkpJ8X6ltALua9dRrZDHVYxjJ1wgskNt1lH9fzGjs3tgojGSCBjmEPwkWS1y29+DrizMTW19Pr9uB2nw== + +vary@^1, vary@~1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" + integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw= + +verdaccio-audit@10.0.2: + version "10.0.2" + resolved "https://registry.yarnpkg.com/verdaccio-audit/-/verdaccio-audit-10.0.2.tgz#736e1d0dd96039a9de32830ea5a295bb9773f7a2" + integrity sha512-pcud2xwztYETO15r+a11cFkpvweLmnsuJJ0FLCifL3+z4IzYFgD5KgPwUD9sdMPHFz5efOrHeO71cu8hb8oEWg== + dependencies: + body-parser "1.19.0" + express "4.17.1" + https-proxy-agent "5.0.0" + node-fetch "2.6.1" + +verdaccio-htpasswd@10.0.0: + version "10.0.0" + resolved "https://registry.yarnpkg.com/verdaccio-htpasswd/-/verdaccio-htpasswd-10.0.0.tgz#7a7f44e8ed4db40c53deef0f5101f2a16dce4ff1" + integrity sha512-3TKwiLwl8/fbaTDawHvjSYcsyMmdARg58keP/1plv74x+Jw0sC66HbbRwQ/tPO5mqoG0UwoWW+lkO8h/OiWi9w== + dependencies: + "@verdaccio/file-locking" "^10.0.0" + apache-md5 "1.1.2" + bcryptjs "2.4.3" + http-errors "1.8.0" + unix-crypt-td-js "1.1.4" + +verdaccio@^5.1.1: + version "5.2.2" + resolved "https://registry.yarnpkg.com/verdaccio/-/verdaccio-5.2.2.tgz#e60c900e2193fa4b934d82934d15e18a6fe06ff9" + integrity sha512-7TbQ2QWDIQBabYMUAJQtJl9qbxpBKl8tndNYtMl9gVUgWN67gr+kPeMoqY0m4whg/+OdWrMyBj3NQy5VoTQiIw== + dependencies: + "@verdaccio/commons-api" "10.0.1" + "@verdaccio/local-storage" "10.0.7" + "@verdaccio/readme" "10.0.0" + "@verdaccio/streams" "10.0.0" + "@verdaccio/ui-theme" "3.2.1" + JSONStream "1.3.5" + async "3.2.2" + body-parser "1.19.0" + clipanion "3.1.0" + compression "1.7.4" + cookies "0.8.0" + cors "2.8.5" + dayjs "1.10.7" + debug "^4.3.2" + envinfo "7.8.1" + eslint-import-resolver-node "0.3.4" + express "4.17.1" + fast-safe-stringify "^2.0.8" + handlebars "4.7.7" + http-errors "1.8.0" + js-yaml "4.1.0" + jsonwebtoken "8.5.1" + kleur "4.1.4" + lodash "4.17.21" + lru-cache "6.0.0" + lunr-mutable-indexes "2.3.2" + marked "2.1.3" + memoizee "0.4.15" + mime "2.6.0" + minimatch "3.0.4" + mkdirp "1.0.4" + mv "2.1.1" + pino "6.13.3" + pkginfo "0.4.1" + prettier-bytes "^1.0.4" + pretty-ms "^7.0.1" + request "2.88.0" + semver "7.3.5" + validator "13.7.0" + verdaccio-audit "10.0.2" + verdaccio-htpasswd "10.0.0" + +verror@1.10.0: + version "1.10.0" + resolved "https://registry.yarnpkg.com/verror/-/verror-1.10.0.tgz#3a105ca17053af55d6e270c1f8288682e18da400" + integrity sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA= + dependencies: + assert-plus "^1.0.0" + core-util-is "1.0.2" + extsprintf "^1.2.0" + +w3c-hr-time@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz#0a89cdf5cc15822df9c360543676963e0cc308cd" + integrity sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ== + dependencies: + browser-process-hrtime "^1.0.0" + +w3c-xmlserializer@^1.1.2: + version "1.1.2" + resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-1.1.2.tgz#30485ca7d70a6fd052420a3d12fd90e6339ce794" + integrity sha512-p10l/ayESzrBMYWRID6xbuCKh2Fp77+sA0doRuGn4tTIMrrZVeqfpKjXHY+oDh3K4nLdPgNwMTVP6Vp4pvqbNg== + dependencies: + domexception "^1.0.1" + webidl-conversions "^4.0.2" + xml-name-validator "^3.0.0" + +warning@^4.0.2, warning@^4.0.3: + version "4.0.3" + resolved "https://registry.yarnpkg.com/warning/-/warning-4.0.3.tgz#16e9e077eb8a86d6af7d64aa1e05fd85b4678ca3" + integrity sha512-rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w== + dependencies: + loose-envify "^1.0.0" + +watch@~1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/watch/-/watch-1.0.2.tgz#340a717bde765726fa0aa07d721e0147a551df0c" + integrity sha1-NApxe952Vyb6CqB9ch4BR6VR3ww= + dependencies: + exec-sh "^0.2.0" + minimist "^1.2.0" + +watchpack@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/watchpack/-/watchpack-2.2.0.tgz#47d78f5415fe550ecd740f99fe2882323a58b1ce" + integrity sha512-up4YAn/XHgZHIxFBVCdlMiWDj6WaLKpwVeGQk2I5thdYxF/KmF0aaz6TfJZ/hfl1h/XlcDr7k1KH7ThDagpFaA== + dependencies: + glob-to-regexp "^0.4.1" + graceful-fs "^4.1.2" + +wcwidth@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/wcwidth/-/wcwidth-1.0.1.tgz#f0b0dcf915bc5ff1528afadb2c0e17b532da2fe8" + integrity sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g= + dependencies: + defaults "^1.0.3" + +webidl-conversions@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" + integrity sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE= + +webidl-conversions@^4.0.2: + version "4.0.2" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad" + integrity sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg== + +webidl-conversions@^6.1.0: + version "6.1.0" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-6.1.0.tgz#9111b4d7ea80acd40f5270d666621afa78b69514" + integrity sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w== + +webpack-cli@^4.1.0, webpack-cli@^4.8.0: + version "4.9.1" + resolved "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-4.9.1.tgz#b64be825e2d1b130f285c314caa3b1ba9a4632b3" + integrity sha512-JYRFVuyFpzDxMDB+v/nanUdQYcZtqFPGzmlW4s+UkPMFhSpfRNmf1z4AwYcHJVdvEFAM7FFCQdNTpsBYhDLusQ== + dependencies: + "@discoveryjs/json-ext" "^0.5.0" + "@webpack-cli/configtest" "^1.1.0" + "@webpack-cli/info" "^1.4.0" + "@webpack-cli/serve" "^1.6.0" + colorette "^2.0.14" + commander "^7.0.0" + execa "^5.0.0" + fastest-levenshtein "^1.0.12" + import-local "^3.0.2" + interpret "^2.2.0" + rechoir "^0.7.0" + webpack-merge "^5.7.3" + +webpack-merge@^5.1.2, webpack-merge@^5.7.3: + version "5.8.0" + resolved "https://registry.yarnpkg.com/webpack-merge/-/webpack-merge-5.8.0.tgz#2b39dbf22af87776ad744c390223731d30a68f61" + integrity sha512-/SaI7xY0831XwP6kzuwhKWVKDP9t1QY1h65lAFLbZqMPIuYcD9QAW4u9STIbU9kaJbPBB/geU/gLr1wDjOhQ+Q== + dependencies: + clone-deep "^4.0.1" + wildcard "^2.0.0" + +webpack-sources@^1.1.0, webpack-sources@^1.2.0, webpack-sources@^1.4.3: + version "1.4.3" + resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-1.4.3.tgz#eedd8ec0b928fbf1cbfe994e22d2d890f330a933" + integrity sha512-lgTS3Xhv1lCOKo7SA5TjKXMjpSM4sBjNV5+q2bqesbSPs5FjGmU6jjtBSkX9b4qW87vDIsCIlUPOEhbZrMdjeQ== + dependencies: + source-list-map "^2.0.0" + source-map "~0.6.1" + +webpack-sources@^3.2.0: + version "3.2.1" + resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-3.2.1.tgz#251a7d9720d75ada1469ca07dbb62f3641a05b6d" + integrity sha512-t6BMVLQ0AkjBOoRTZgqrWm7xbXMBzD+XDq2EZ96+vMfn3qKgsvdXZhbPZ4ElUOpdv4u+iiGe+w3+J75iy/bYGA== + +webpack@^5.41.1, webpack@^5.55.1: + version "5.64.0" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.64.0.tgz#db3e12546f755930ccc9e0e21ba660871940c615" + integrity sha512-UclnN24m054HaPC45nmDEosX6yXWD+UGC12YtUs5i356DleAUGMDC9LBAw37xRRfgPKYIdCYjGA7RZ1AA+ZnGg== + dependencies: + "@types/eslint-scope" "^3.7.0" + "@types/estree" "^0.0.50" + "@webassemblyjs/ast" "1.11.1" + "@webassemblyjs/wasm-edit" "1.11.1" + "@webassemblyjs/wasm-parser" "1.11.1" + acorn "^8.4.1" + acorn-import-assertions "^1.7.6" + browserslist "^4.14.5" + chrome-trace-event "^1.0.2" + enhanced-resolve "^5.8.3" + es-module-lexer "^0.9.0" + 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.1.0" + tapable "^2.1.1" + terser-webpack-plugin "^5.1.3" + watchpack "^2.2.0" + webpack-sources "^3.2.0" + +whatwg-encoding@^1.0.1, whatwg-encoding@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/whatwg-encoding/-/whatwg-encoding-1.0.5.tgz#5abacf777c32166a51d085d6b4f3e7d27113ddb0" + integrity sha512-b5lim54JOPN9HtzvK9HFXvBma/rnfFeqsic0hSpjtDbVxR3dJKLc+KB4V6GgiGOvl7CY/KNh8rxSo9DKQrnUEw== + dependencies: + iconv-lite "0.4.24" + +whatwg-fetch@^3.0.0: + version "3.6.2" + resolved "https://registry.yarnpkg.com/whatwg-fetch/-/whatwg-fetch-3.6.2.tgz#dced24f37f2624ed0281725d51d0e2e3fe677f8c" + integrity sha512-bJlen0FcuU/0EMLrdbJ7zOnW6ITZLrZMIarMUVmdKtsGvZna8vxKYaexICWPfZ8qwf9fzNq+UEIZrnSaApt6RA== + +whatwg-mimetype@^2.2.0, whatwg-mimetype@^2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/whatwg-mimetype/-/whatwg-mimetype-2.3.0.tgz#3d4b1e0312d2079879f826aff18dbeeca5960fbf" + integrity sha512-M4yMwr6mAnQz76TbJm914+gPpB/nCwvZbJU28cUD6dR004SAxDLOOSUaB1JDRqLtaOV/vi0IC5lEAGFgrjGv/g== + +whatwg-url@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" + integrity sha1-lmRU6HZUYuN2RNNib2dCzotwll0= + dependencies: + tr46 "~0.0.3" + webidl-conversions "^3.0.0" + +whatwg-url@^7.0.0: + version "7.1.0" + resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-7.1.0.tgz#c2c492f1eca612988efd3d2266be1b9fc6170d06" + integrity sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg== + dependencies: + lodash.sortby "^4.7.0" + tr46 "^1.0.1" + webidl-conversions "^4.0.2" + +whatwg-url@^8.4.0: + version "8.7.0" + resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-8.7.0.tgz#656a78e510ff8f3937bc0bcbe9f5c0ac35941b77" + integrity sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg== + dependencies: + lodash "^4.7.0" + tr46 "^2.1.0" + webidl-conversions "^6.1.0" + +which-boxed-primitive@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/which-boxed-primitive/-/which-boxed-primitive-1.0.2.tgz#13757bc89b209b049fe5d86430e21cf40a89a8e6" + integrity sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg== + dependencies: + is-bigint "^1.0.1" + is-boolean-object "^1.1.0" + is-number-object "^1.0.4" + is-string "^1.0.5" + is-symbol "^1.0.3" + +which@^1.2.9, which@^1.3.1: + version "1.3.1" + resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" + integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== + dependencies: + isexe "^2.0.0" + +which@^2.0.1, which@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" + integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== + dependencies: + isexe "^2.0.0" + +wide-align@^1.1.0: + version "1.1.5" + resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.5.tgz#df1d4c206854369ecf3c9a4898f1b23fbd9d15d3" + integrity sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg== + dependencies: + string-width "^1.0.2 || 2 || 3 || 4" + +wildcard@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/wildcard/-/wildcard-2.0.0.tgz#a77d20e5200c6faaac979e4b3aadc7b3dd7f8fec" + integrity sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw== + +word-wrap@^1.2.3, word-wrap@~1.2.3: + version "1.2.3" + resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" + integrity sha512-Hz/mrNwitNRh/HUAtM/VT/5VH+ygD6DV7mYKZAtHOrbs8U7lvPS6xf7EJKMF0uW1KJCl0H701g3ZGus+muE5vQ== + +wordwrap@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" + integrity sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus= + +worker-loader@^3.0.2: + version "3.0.8" + resolved "https://registry.yarnpkg.com/worker-loader/-/worker-loader-3.0.8.tgz#5fc5cda4a3d3163d9c274a4e3a811ce8b60dbb37" + integrity sha512-XQyQkIFeRVC7f7uRhFdNMe/iJOdO6zxAaR3EWbDp45v3mDhrTi+++oswKNxShUNjPC/1xUp5DB29YKLhFo129g== + dependencies: + loader-utils "^2.0.0" + schema-utils "^3.0.0" + +wrap-ansi@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + +wrappy@1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" + integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= + +write-file-atomic@^2.4.2: + version "2.4.3" + resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.4.3.tgz#1fd2e9ae1df3e75b8d8c367443c692d4ca81f481" + integrity sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ== + dependencies: + graceful-fs "^4.1.11" + imurmurhash "^0.1.4" + signal-exit "^3.0.2" + +write-file-atomic@^3.0.0, write-file-atomic@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz#56bd5c5a5c70481cd19c571bd39ab965a5de56e8" + integrity sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q== + dependencies: + imurmurhash "^0.1.4" + is-typedarray "^1.0.0" + signal-exit "^3.0.2" + typedarray-to-buffer "^3.1.5" + +write-json-file@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/write-json-file/-/write-json-file-3.2.0.tgz#65bbdc9ecd8a1458e15952770ccbadfcff5fe62a" + integrity sha512-3xZqT7Byc2uORAatYiP3DHUUAVEkNOswEWNs9H5KXiicRTvzYzYqKjYc4G7p+8pltvAw641lVByKVtMpf+4sYQ== + dependencies: + detect-indent "^5.0.0" + graceful-fs "^4.1.15" + make-dir "^2.1.0" + pify "^4.0.1" + sort-keys "^2.0.0" + write-file-atomic "^2.4.2" + +write-json-file@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/write-json-file/-/write-json-file-4.3.0.tgz#908493d6fd23225344af324016e4ca8f702dd12d" + integrity sha512-PxiShnxf0IlnQuMYOPPhPkhExoCQuTUNPOa/2JWCYTmBquU9njyyDuwRKN26IZBlp4yn1nt+Agh2HOOBl+55HQ== + dependencies: + detect-indent "^6.0.0" + graceful-fs "^4.1.15" + is-plain-obj "^2.0.0" + make-dir "^3.0.0" + sort-keys "^4.0.0" + write-file-atomic "^3.0.0" + +write-pkg@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/write-pkg/-/write-pkg-4.0.0.tgz#675cc04ef6c11faacbbc7771b24c0abbf2a20039" + integrity sha512-v2UQ+50TNf2rNHJ8NyWttfm/EJUBWMJcx6ZTYZr6Qp52uuegWw/lBkCtCbnYZEmPRNL61m+u67dAmGxo+HTULA== + dependencies: + sort-keys "^2.0.0" + type-fest "^0.4.1" + write-json-file "^3.2.0" + +ws@^6.2.1: + version "6.2.2" + resolved "https://registry.yarnpkg.com/ws/-/ws-6.2.2.tgz#dd5cdbd57a9979916097652d78f1cc5faea0c32e" + integrity sha512-zmhltoSR8u1cnDsD43TX59mzoMZsLKqUweyYBAIvTngR3shc0W6aOZylZmq/7hqyVxPdi+5Ud2QInblgyE72fw== + dependencies: + async-limiter "~1.0.0" + +ws@^7.0.0, ws@^7.4.6: + version "7.5.5" + resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.5.tgz#8b4bc4af518cfabd0473ae4f99144287b33eb881" + integrity sha512-BAkMFcAzl8as1G/hArkxOxq3G7pjUqQ3gzYbLL0/5zNkph70e+lCoxBGnm6AW1+/aiNeV4fnKqZ8m4GZewmH2w== + +xml-name-validator@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" + integrity sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw== + +xmlchars@^2.1.1: + version "2.2.0" + resolved "https://registry.yarnpkg.com/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb" + integrity sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw== + +xtend@^4.0.2, xtend@~4.0.0, xtend@~4.0.1: + version "4.0.2" + resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" + integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== + +y-codemirror@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/y-codemirror/-/y-codemirror-3.0.0.tgz#ca54f9d931c493dbe90f9b5bdc70d7b5ba1a5c20" + integrity sha512-fCcEhk6s08gqi2aoV5v39njc4n7iq5HufsZijwNFTmMiUv99D2NxnG+Ln168ssxIKJjmnDKQeUNaCdf6nuL+9A== + dependencies: + lib0 "^0.2.42" + +y-leveldb@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/y-leveldb/-/y-leveldb-0.1.0.tgz#8b60c1af020252445875ebc70d52666017bcb038" + integrity sha512-sMuitVrsAUNh+0b66I42nAuW3lCmez171uP4k0ePcTAJ+c+Iw9w4Yq3wwiyrDMFXBEyQSjSF86Inc23wEvWnxw== + dependencies: + level "^6.0.1" + lib0 "^0.2.31" + +y-protocols@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/y-protocols/-/y-protocols-1.0.5.tgz#91d574250060b29fcac8f8eb5e276fbad594245e" + integrity sha512-Wil92b7cGk712lRHDqS4T90IczF6RkcvCwAD0A2OPg+adKmOe+nOiT/N2hvpQIWS3zfjmtL4CPaH5sIW1Hkm/A== + dependencies: + lib0 "^0.2.42" + +y-websocket@^1.3.15: + version "1.3.17" + resolved "https://registry.yarnpkg.com/y-websocket/-/y-websocket-1.3.17.tgz#d5465fe6d378df9f6bdd503f23d001e5b526db54" + integrity sha512-SswN7EosLDpnrWue45/yQjkTGSRkzxioFc/0WcyHNkudnknWToOBaIo2coWgnYZd9BP0XlNAc8pPhTGkDveQJQ== + dependencies: + lib0 "^0.2.42" + lodash.debounce "^4.0.8" + y-protocols "^1.0.5" + optionalDependencies: + ws "^6.2.1" + y-leveldb "^0.1.0" + +y18n@^5.0.5: + version "5.0.8" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" + integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== + +yallist@^3.0.0, yallist@^3.1.1: + version "3.1.1" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" + integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== + +yallist@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" + integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== + +yaml@^1.10.0: + version "1.10.2" + resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" + integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== + +yargs-parser@20.2.4: + version "20.2.4" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.4.tgz#b42890f14566796f85ae8e3a25290d205f154a54" + integrity sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA== + +yargs-parser@^20.2.2, yargs-parser@^20.2.3: + version "20.2.9" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" + integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== + +yargs@^16.2.0: + version "16.2.0" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" + integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== + dependencies: + cliui "^7.0.2" + escalade "^3.1.1" + get-caller-file "^2.0.5" + require-directory "^2.1.1" + string-width "^4.2.0" + y18n "^5.0.5" + yargs-parser "^20.2.2" + +yjs@^13.5.17: + version "13.5.20" + resolved "https://registry.yarnpkg.com/yjs/-/yjs-13.5.20.tgz#e9e551929813f111c543501cbb3b267319accc0f" + integrity sha512-VZuxhu0V6ILtAHi+7JmCxhkzvffLzpH70Nso4zTGj3qeq1ZuqZhLRjQZwBbFHlBTZD0PvpsFk20BlG5XDScr/w== + dependencies: + lib0 "^0.2.42" + +yocto-queue@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/yocto-queue/-/yocto-queue-0.1.0.tgz#0294eb3dee05028d31ee1a5fa2c556a6aaf10a1b" + integrity sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q== From b9151e456722b8eedc141ada33770b2471e294f8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Collonval?= Date: Mon, 15 Nov 2021 10:52:42 +0100 Subject: [PATCH 02/48] Lab like app --- .gitignore | 6 +- lab/.eslintignore | 5 + lab/.eslintrc.js | 39 + lab/.prettierignore | 5 + lab/.prettierrc | 5 + lab/LICENSE.md | 1 + lab/MANIFEST.in | 24 + lab/README.md | 1 + lab/app/index.js | 255 + lab/app/package.json | 149 + lab/app/publicpath.js | 37 + lab/app/style.js | 0 lab/app/webpack.config.js | 180 + lab/{packages/presentation => }/jupyter.png | Bin lab/package.json | 65 +- lab/packages/application/package.json | 76 + lab/packages/application/src/app/index.ts | 198 + lab/packages/application/src/index.ts | 5 + lab/packages/application/src/plugins/index.ts | 129 + .../src/rise-reveal.d.ts | 0 lab/packages/application/style/base.css | 12 + lab/packages/application/style/index.css | 1 + lab/packages/application/style/index.js | 1 + lab/packages/application/tsconfig.json | 8 + lab/packages/extension/package.json | 56 + lab/packages/extension/src/index.ts | 17 + lab/packages/extension/style/base.css | 0 lab/packages/extension/style/index.css | 1 + lab/packages/extension/style/index.js | 1 + lab/packages/extension/tsconfig.json | 8 + lab/packages/presentation/data/data.json | 97 - lab/packages/presentation/index.css | 26 - lab/packages/presentation/main.py | 102 - lab/packages/presentation/package.json | 43 - lab/packages/presentation/src/index.ts | 207 - .../presentation/templates/index.html | 31 - lab/packages/presentation/webpack.config.js | 48 - lab/rise/__init__.py | 22 + lab/rise/__main__.py | 6 + lab/rise/_version.py | 1 + lab/rise/app.py | 128 + lab/rise/serverextension.py | 10 + .../templates/error.html | 0 lab/rise/templates/index.html | 36 + lab/setup.py | 101 + lab/{packages/presentation => }/test.ipynb | 0 lab/tsconfig.eslint.json | 5 + .../tsconfig.json => tsconfigbase.json} | 10 +- lab/yarn.lock | 7151 ++++++++++++++--- 49 files changed, 7467 insertions(+), 1842 deletions(-) create mode 100644 lab/.eslintignore create mode 100644 lab/.eslintrc.js create mode 100644 lab/.prettierignore create mode 100644 lab/.prettierrc create mode 120000 lab/LICENSE.md create mode 100644 lab/MANIFEST.in create mode 120000 lab/README.md create mode 100644 lab/app/index.js create mode 100644 lab/app/package.json create mode 100644 lab/app/publicpath.js create mode 100644 lab/app/style.js create mode 100644 lab/app/webpack.config.js rename lab/{packages/presentation => }/jupyter.png (100%) create mode 100644 lab/packages/application/package.json create mode 100644 lab/packages/application/src/app/index.ts create mode 100644 lab/packages/application/src/index.ts create mode 100644 lab/packages/application/src/plugins/index.ts rename lab/packages/{presentation => application}/src/rise-reveal.d.ts (100%) create mode 100644 lab/packages/application/style/base.css create mode 100644 lab/packages/application/style/index.css create mode 100644 lab/packages/application/style/index.js create mode 100644 lab/packages/application/tsconfig.json create mode 100644 lab/packages/extension/package.json create mode 100644 lab/packages/extension/src/index.ts create mode 100644 lab/packages/extension/style/base.css create mode 100644 lab/packages/extension/style/index.css create mode 100644 lab/packages/extension/style/index.js create mode 100644 lab/packages/extension/tsconfig.json delete mode 100644 lab/packages/presentation/data/data.json delete mode 100644 lab/packages/presentation/index.css delete mode 100644 lab/packages/presentation/main.py delete mode 100644 lab/packages/presentation/package.json delete mode 100755 lab/packages/presentation/src/index.ts delete mode 100644 lab/packages/presentation/templates/index.html delete mode 100644 lab/packages/presentation/webpack.config.js create mode 100644 lab/rise/__init__.py create mode 100644 lab/rise/__main__.py create mode 100644 lab/rise/_version.py create mode 100644 lab/rise/app.py create mode 100644 lab/rise/serverextension.py rename lab/{packages/presentation => rise}/templates/error.html (100%) create mode 100644 lab/rise/templates/index.html create mode 100644 lab/setup.py rename lab/{packages/presentation => }/test.ipynb (100%) create mode 100644 lab/tsconfig.eslint.json rename lab/{packages/presentation/tsconfig.json => tsconfigbase.json} (81%) diff --git a/.gitignore b/.gitignore index 74cec46a..9c92915b 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,10 @@ classic/rise/static/ rise-reveal/export/ doc/_build/ -lab/packages/extension/rise_jupyterlab/labextension +lab/rise/labextension/ +lab/rise/schemas/ +lab/rise/static/* +lab/rise/static/favicons *.bundle.* lib/ @@ -114,3 +117,4 @@ dmypy.json # OSX files .DS_Store +rise-reveal/yarn.lock diff --git a/lab/.eslintignore b/lab/.eslintignore new file mode 100644 index 00000000..5c99ba78 --- /dev/null +++ b/lab/.eslintignore @@ -0,0 +1,5 @@ +node_modules +dist +coverage +**/*.d.ts +tests diff --git a/lab/.eslintrc.js b/lab/.eslintrc.js new file mode 100644 index 00000000..df50b4eb --- /dev/null +++ b/lab/.eslintrc.js @@ -0,0 +1,39 @@ +module.exports = { + extends: [ + 'eslint:recommended', + 'plugin:@typescript-eslint/eslint-recommended', + 'plugin:@typescript-eslint/recommended', + 'plugin:prettier/recommended' + ], + parser: '@typescript-eslint/parser', + parserOptions: { + project: 'tsconfig.eslint.json', + sourceType: 'module' + }, + plugins: ['@typescript-eslint'], + rules: { + '@typescript-eslint/naming-convention': [ + 'error', + { + 'selector': 'interface', + 'format': ['PascalCase'], + 'custom': { + 'regex': '^I[A-Z]', + 'match': true + } + } + ], + '@typescript-eslint/no-unused-vars': ['warn', { args: 'none' }], + '@typescript-eslint/no-explicit-any': 'off', + '@typescript-eslint/no-namespace': 'off', + '@typescript-eslint/no-use-before-define': 'off', + '@typescript-eslint/quotes': [ + 'error', + 'single', + { avoidEscape: true, allowTemplateLiterals: false } + ], + curly: ['error', 'all'], + eqeqeq: 'error', + 'prefer-arrow-callback': 'error' + } +}; diff --git a/lab/.prettierignore b/lab/.prettierignore new file mode 100644 index 00000000..52c00891 --- /dev/null +++ b/lab/.prettierignore @@ -0,0 +1,5 @@ +node_modules +**/node_modules +**/lib +**/package.json +rise_jupyterlab diff --git a/lab/.prettierrc b/lab/.prettierrc new file mode 100644 index 00000000..b0a179d4 --- /dev/null +++ b/lab/.prettierrc @@ -0,0 +1,5 @@ +{ + "singleQuote": true, + "trailingComma": "none", + "arrowParens": "avoid" +} diff --git a/lab/LICENSE.md b/lab/LICENSE.md new file mode 120000 index 00000000..3d409849 --- /dev/null +++ b/lab/LICENSE.md @@ -0,0 +1 @@ +../classic/LICENSE.md \ No newline at end of file diff --git a/lab/MANIFEST.in b/lab/MANIFEST.in new file mode 100644 index 00000000..1e25f8bb --- /dev/null +++ b/lab/MANIFEST.in @@ -0,0 +1,24 @@ +include *.md +include pyproject.toml +recursive-include jupyter-config *.json + +include package.json +include install.json +include ts*.json +include yarn.lock + +graft rise_jupyterlab/labextension + +# Javascript files +graft src +graft style +prune **/node_modules +prune lib +prune binder + +# Patterns to exclude from any directory +global-exclude *~ +global-exclude *.pyc +global-exclude *.pyo +global-exclude .git +global-exclude .ipynb_checkpoints diff --git a/lab/README.md b/lab/README.md new file mode 120000 index 00000000..dbd3d5a4 --- /dev/null +++ b/lab/README.md @@ -0,0 +1 @@ +../classic/README.md \ No newline at end of file diff --git a/lab/app/index.js b/lab/app/index.js new file mode 100644 index 00000000..9235ed2d --- /dev/null +++ b/lab/app/index.js @@ -0,0 +1,255 @@ +// Copyright (c) Jupyter Development Team. +// Distributed under the terms of the Modified BSD License. + +// Inspired by: https://github.com/jupyterlab/jupyterlab/blob/master/dev_mode/index.js + +import { PageConfig, URLExt } from '@jupyterlab/coreutils'; + +// Promise.allSettled polyfill, until our supported browsers implement it +// See https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/allSettled +if (Promise.allSettled === undefined) { + Promise.allSettled = promises => + Promise.all( + promises.map(promise => + promise.then( + value => ({ + status: 'fulfilled', + value + }), + reason => ({ + status: 'rejected', + reason + }) + ) + ) + ); +} + +require('./style.js'); +require('./extraStyle.js'); + +function loadScript(url) { + return new Promise((resolve, reject) => { + const newScript = document.createElement('script'); + newScript.onerror = reject; + newScript.onload = resolve; + newScript.async = true; + document.head.appendChild(newScript); + newScript.src = url; + }); +} +async function loadComponent(url, scope) { + await loadScript(url); + + // From MIT-licensed https://github.com/module-federation/module-federation-examples/blob/af043acd6be1718ee195b2511adf6011fba4233c/advanced-api/dynamic-remotes/app1/src/App.js#L6-L12 + // eslint-disable-next-line no-undef + await __webpack_init_sharing__('default'); + const container = window._JUPYTERLAB[scope]; + // Initialize the container, it may provide shared modules and may need ours + // eslint-disable-next-line no-undef + await container.init(__webpack_share_scopes__.default); +} + +async function createModule(scope, module) { + try { + const factory = await window._JUPYTERLAB[scope].get(module); + return factory(); + } catch (e) { + console.warn( + `Failed to create module: package: ${scope}; module: ${module}` + ); + throw e; + } +} + +/** + * The main function + */ +async function main() { + const rise = require('rise-application'); + + const mimeExtensionsMods = [ + require('@jupyterlab/javascript-extension'), + require('@jupyterlab/json-extension'), + require('@jupyterlab/pdf-extension'), + require('@jupyterlab/vega5-extension') + ]; + const mimeExtensions = await Promise.all(mimeExtensionsMods); + + const disabled = []; + // TODO: formalize the way the set of initial extensions and plugins are specified + let baseMods = [ + // rise plugins + rise.default, + require('rise-jupyterlab'), + + // @jupyterlab plugins + require('@jupyterlab/application-extension').default.filter(({ id }) => + [ + '@jupyterlab/application-extension:commands', + '@jupyterlab/application-extension:context-menu' + ].includes(id) + ), + require('@jupyterlab/apputils-extension'), + // .default.filter(({ id }) => + // [ + // '@jupyterlab/apputils-extension:palette', + // '@jupyterlab/apputils-extension:settings', + // '@jupyterlab/apputils-extension:state', + // '@jupyterlab/apputils-extension:themes', + // '@jupyterlab/apputils-extension:themes-palette-menu' + // ].includes(id) + // ), + require('@jupyterlab/codemirror-extension'), + // .default.filter(({ id }) => + // [ + // '@jupyterlab/codemirror-extension:services', + // '@jupyterlab/codemirror-extension:codemirror' + // ].includes(id) + // ), + require('@jupyterlab/docmanager-extension'), + // .default.filter(({ id }) => + // [ + // '@jupyterlab/docmanager-extension:plugin', + // '@jupyterlab/docmanager-extension:download' + // ].includes(id) + // ), + require('@jupyterlab/docprovider-extension'), + require('@jupyterlab/mathjax2-extension'), + require('@jupyterlab/notebook-extension'), + // .default.filter(({ id }) => + // [ + // '@jupyterlab/notebook-extension:factory', + // '@jupyterlab/notebook-extension:tracker', + // '@jupyterlab/notebook-extension:widget-factory' + // ].includes(id) + // ), + require('@jupyterlab/rendermime-extension'), + require('@jupyterlab/shortcuts-extension'), + require('@jupyterlab/theme-light-extension'), + require('@jupyterlab/theme-dark-extension'), + require('@jupyterlab/translation-extension') + ]; + + /** + * Iterate over active plugins in an extension. + * + * #### Notes + * This also populates the disabled + */ + function* activePlugins(extension) { + // Handle commonjs or es2015 modules + let exports; + if (Object.prototype.hasOwnProperty.call(extension, '__esModule')) { + exports = extension.default; + } else { + // CommonJS exports. + exports = extension; + } + + let plugins = Array.isArray(exports) ? exports : [exports]; + for (let plugin of plugins) { + if (PageConfig.Extension.isDisabled(plugin.id)) { + disabled.push(plugin.id); + continue; + } + yield plugin; + } + } + + const extension_data = JSON.parse( + PageConfig.getOption('federated_extensions') + ); + + const mods = []; + const federatedExtensionPromises = []; + const federatedMimeExtensionPromises = []; + const federatedStylePromises = []; + + const extensions = await Promise.allSettled( + extension_data.map(async data => { + await loadComponent( + `${URLExt.join( + PageConfig.getOption('fullLabextensionsUrl'), + data.name, + data.load + )}`, + data.name + ); + return data; + }) + ); + + extensions.forEach(p => { + if (p.status === 'rejected') { + // There was an error loading the component + console.error(p.reason); + return; + } + + const data = p.value; + if (data.extension) { + federatedExtensionPromises.push(createModule(data.name, data.extension)); + } + if (data.mimeExtension) { + federatedMimeExtensionPromises.push( + createModule(data.name, data.mimeExtension) + ); + } + if (data.style) { + federatedStylePromises.push(createModule(data.name, data.style)); + } + }); + + // Add the base frontend extensions + const baseFrontendMods = await Promise.all(baseMods); + baseFrontendMods.forEach(p => { + for (let plugin of activePlugins(p)) { + mods.push(plugin); + } + }); + + // Add the federated extensions. + const federatedExtensions = await Promise.allSettled( + federatedExtensionPromises + ); + federatedExtensions.forEach(p => { + if (p.status === 'fulfilled') { + for (let plugin of activePlugins(p.value)) { + mods.push(plugin); + } + } else { + console.error(p.reason); + } + }); + + // Add the federated mime extensions. + const federatedMimeExtensions = await Promise.allSettled( + federatedMimeExtensionPromises + ); + federatedMimeExtensions.forEach(p => { + if (p.status === 'fulfilled') { + for (let plugin of activePlugins(p.value)) { + mimeExtensions.push(plugin); + } + } else { + console.error(p.reason); + } + }); + + // Load all federated component styles and log errors for any that do not + (await Promise.allSettled(federatedStylePromises)) + .filter(({ status }) => status === 'rejected') + .forEach(({ reason }) => { + console.error(reason); + }); + + const RiseApp = rise.RiseApp; + const app = new RiseApp({ mimeExtensions }); + + app.registerPluginModules(mods); + + await app.start(); +} + +window.addEventListener('load', main); diff --git a/lab/app/package.json b/lab/app/package.json new file mode 100644 index 00000000..d2b0f428 --- /dev/null +++ b/lab/app/package.json @@ -0,0 +1,149 @@ +{ + "name": "rise-app", + "version": "0.1.0", + "private": true, + "scripts": { + "build": "webpack", + "build:prod": "webpack --mode=production", + "build:test": "tsc --build tsconfig.test.json", + "clean": "rimraf build && jlpm run clean:static", + "clean:static": "rimraf -g \"../rise/static/!(favicons)\"", + "prepublishOnly": "yarn run build", + "watch": "webpack --config ./webpack.config.watch.js" + }, + "resolutions": { + "@jupyterlab/application-extension": "^3.2.0", + "@jupyterlab/apputils-extension": "^3.2.0", + "@jupyterlab/codemirror-extension": "^3.2.0", + "@jupyterlab/coreutils": "~5.2.0", + "@jupyterlab/docmanager-extension": "^3.2.0", + "@jupyterlab/docprovider-extension": "^3.2.0", + "@jupyterlab/javascript-extension": "^3.2.0", + "@jupyterlab/json-extension": "^3.2.0", + "@jupyterlab/mathjax2-extension": "^3.2.0", + "@jupyterlab/notebook-extension": "^3.2.0", + "@jupyterlab/pdf-extension": "^3.2.0", + "@jupyterlab/rendermime-extension": "^3.2.0", + "@jupyterlab/shortcuts-extension": "^3.2.0", + "@jupyterlab/theme-dark-extension": "^3.2.0", + "@jupyterlab/theme-light-extension": "^3.2.0", + "@jupyterlab/translation-extension": "^3.2.0", + "@jupyterlab/vega5-extension": "^3.2.0", + "rise-application": "~0.1.0", + "react": "~17.0.2", + "react-dom": "~17.0.2", + "yjs": "~13.5.10" + }, + "dependencies": { + "@jupyterlab/application-extension": "^3.2.0", + "@jupyterlab/apputils-extension": "^3.2.0", + "@jupyterlab/codemirror-extension": "^3.2.0", + "@jupyterlab/coreutils": "~5.2.0", + "@jupyterlab/docmanager-extension": "^3.2.0", + "@jupyterlab/docprovider-extension": "^3.2.0", + "@jupyterlab/javascript-extension": "^3.2.0", + "@jupyterlab/json-extension": "^3.2.0", + "@jupyterlab/mathjax2-extension": "^3.2.0", + "@jupyterlab/notebook-extension": "^3.2.0", + "@jupyterlab/pdf-extension": "^3.2.0", + "@jupyterlab/rendermime-extension": "^3.2.0", + "@jupyterlab/shortcuts-extension": "^3.2.0", + "@jupyterlab/theme-dark-extension": "^3.2.0", + "@jupyterlab/theme-light-extension": "^3.2.0", + "@jupyterlab/translation-extension": "^3.2.0", + "@jupyterlab/vega5-extension": "^3.2.0", + "rise-application": "~0.1.0" + }, + "devDependencies": { + "@jupyterlab/builder": "^3.2.0", + "@jupyterlab/buildutils": "^3.2.0", + "@types/rimraf": "^3.0.0", + "css-loader": "~5.0.1", + "file-loader": "~5.0.2", + "fs-extra": "^8.1.0", + "glob": "~7.1.6", + "mini-css-extract-plugin": "~0.9.0", + "npm-run-all": "^4.1.5", + "playwright": "^1.12.3", + "raw-loader": "~4.0.0", + "rimraf": "~3.0.2", + "style-loader": "~1.0.1", + "svg-url-loader": "~6.0.0", + "url-loader": "~4.1.1", + "watch": "~1.0.2", + "webpack": "^5.7.0", + "webpack-bundle-analyzer": "^4.1.0", + "webpack-cli": "^4.2.0", + "webpack-merge": "^5.1.2", + "whatwg-fetch": "^3.0.0" + }, + "jupyterlab": { + "name": "RiseLab", + "extensions": [ + "@jupyterlab/application-extension", + "@jupyterlab/apputils-extension", + "@jupyterlab/codemirror-extension", + "@jupyterlab/coreutils", + "@jupyterlab/docmanager-extension", + "@jupyterlab/docprovider-extension", + "@jupyterlab/javascript-extension", + "@jupyterlab/json-extension", + "@jupyterlab/mathjax2-extension", + "@jupyterlab/notebook-extension", + "@jupyterlab/pdf-extension", + "@jupyterlab/rendermime-extension", + "@jupyterlab/shortcuts-extension", + "@jupyterlab/theme-dark-extension", + "@jupyterlab/theme-light-extension", + "@jupyterlab/translation-extension", + "@jupyterlab/vega5-extension", + "rise-application", + "rise-jupyterlab" + ], + "singletonPackages": [ + "@jupyterlab/application", + "@jupyterlab/apputils", + "@jupyterlab/celltags", + "@jupyterlab/codeeditor", + "@jupyterlab/completer", + "@jupyterlab/console", + "@jupyterlab/coreutils", + "@jupyterlab/docmanager", + "@jupyterlab/docprovider", + "@jupyterlab/filebrowser", + "@jupyterlab/fileeditor", + "@jupyterlab/mainmenu", + "@jupyterlab/notebook", + "@jupyterlab/observables", + "@jupyterlab/outputarea", + "@jupyterlab/rendermime", + "@jupyterlab/rendermime-interfaces", + "@jupyterlab/services", + "@jupyterlab/settingregistry", + "@jupyterlab/shared-models", + "@jupyterlab/statedb", + "@jupyterlab/statusbar", + "@jupyterlab/terminal", + "@jupyterlab/tooltip", + "@jupyterlab/translation", + "@jupyterlab/ui-components", + "@lumino/algorithm", + "@lumino/application", + "@lumino/commands", + "@lumino/coreutils", + "@lumino/disposable", + "@lumino/domutils", + "@lumino/dragdrop", + "@lumino/messaging", + "@lumino/properties", + "@lumino/signaling", + "@lumino/virtualdom", + "@lumino/widgets", + "react", + "react-dom", + "yjs" + ], + "mimeExtensions": {}, + "linkedPackages": {} + } +} diff --git a/lab/app/publicpath.js b/lab/app/publicpath.js new file mode 100644 index 00000000..4434ffed --- /dev/null +++ b/lab/app/publicpath.js @@ -0,0 +1,37 @@ +// Copyright (c) Jupyter Development Team. +// Distributed under the terms of the Modified BSD License. + +// We dynamically set the webpack public path based on the page config +// settings from the JupyterLab app. We copy some of the pageconfig parsing +// logic in @jupyterlab/coreutils below, since this must run before any other +// files are loaded (including @jupyterlab/coreutils). + +/** + * Get global configuration data for the Jupyter application. + * + * @param name - The name of the configuration option. + * + * @returns The config value or an empty string if not found. + * + * #### Notes + * All values are treated as strings. + * For browser based applications, it is assumed that the page HTML + * includes a script tag with the id `jupyter-config-data` containing the + * configuration as valid JSON. In order to support the classic Notebook, + * we fall back on checking for `body` data of the given `name`. + */ + function getOption(name) { + let configData = Object.create(null); + // Use script tag if available. + if (typeof document !== 'undefined' && document) { + const el = document.getElementById('jupyter-config-data'); + + if (el) { + configData = JSON.parse(el.textContent || '{}'); + } + } + return configData[name] || ''; +} + +// eslint-disable-next-line no-undef +__webpack_public_path__ = getOption('fullStaticUrl') + '/'; diff --git a/lab/app/style.js b/lab/app/style.js new file mode 100644 index 00000000..e69de29b diff --git a/lab/app/webpack.config.js b/lab/app/webpack.config.js new file mode 100644 index 00000000..89f9d527 --- /dev/null +++ b/lab/app/webpack.config.js @@ -0,0 +1,180 @@ +// Copyright (c) Jupyter Development Team. +// Distributed under the terms of the Modified BSD License. + +// Heavily inspired (and slightly tweaked) from: +// https://github.com/jupyterlab/jupyterlab/blob/master/examples/federated/core_package/webpack.config.js + +const fs = require('fs-extra'); +const path = require('path'); +const webpack = require('webpack'); +const merge = require('webpack-merge').default; +const { ModuleFederationPlugin } = webpack.container; +const BundleAnalyzerPlugin = require('webpack-bundle-analyzer') + .BundleAnalyzerPlugin; + +const Build = require('@jupyterlab/builder').Build; +const baseConfig = require('@jupyterlab/builder/lib/webpack.config.base'); + +const data = require('./package.json'); + +const names = Object.keys(data.dependencies).filter(name => { + const packageData = require(path.join(name, 'package.json')); + return packageData.jupyterlab !== undefined; +}); + +// Ensure a clear build directory. +const buildDir = path.resolve(__dirname, 'build'); +if (fs.existsSync(buildDir)) { + fs.removeSync(buildDir); +} +fs.ensureDirSync(buildDir); + +// Copy extra files +const index = path.resolve(__dirname, 'index.js'); +const cssImports = path.resolve(__dirname, 'style.js'); +fs.copySync(index, path.resolve(buildDir, 'index.js')); +fs.copySync(cssImports, path.resolve(buildDir, 'extraStyle.js')); + +const extras = Build.ensureAssets({ + packageNames: names, + output: buildDir, + schemaOutput: path.resolve(__dirname, '..', 'rise') +}); + +/** + * Create the webpack ``shared`` configuration + */ +function createShared(packageData) { + // Set up module federation sharing config + const shared = {}; + const extensionPackages = packageData.jupyterlab.extensions; + + // Make sure any resolutions are shared + for (let [pkg, requiredVersion] of Object.entries(packageData.resolutions)) { + shared[pkg] = { requiredVersion }; + } + + // Add any extension packages that are not in resolutions (i.e., installed from npm) + for (let pkg of extensionPackages) { + if (!shared[pkg]) { + shared[pkg] = { + requiredVersion: require(`${pkg}/package.json`).version + }; + } + } + + // Add dependencies and sharedPackage config from extension packages if they + // are not already in the shared config. This means that if there is a + // conflict, the resolutions package version is the one that is shared. + const extraShared = []; + for (let pkg of extensionPackages) { + let pkgShared = {}; + let { + dependencies = {}, + jupyterlab: { sharedPackages = {} } = {} + } = require(`${pkg}/package.json`); + for (let [dep, requiredVersion] of Object.entries(dependencies)) { + if (!shared[dep]) { + pkgShared[dep] = { requiredVersion }; + } + } + + // Overwrite automatic dependency sharing with custom sharing config + for (let [dep, config] of Object.entries(sharedPackages)) { + if (config === false) { + delete pkgShared[dep]; + } else { + if ('bundled' in config) { + config.import = config.bundled; + delete config.bundled; + } + pkgShared[dep] = config; + } + } + extraShared.push(pkgShared); + } + + // Now merge the extra shared config + const mergedShare = {}; + for (let sharedConfig of extraShared) { + for (let [pkg, config] of Object.entries(sharedConfig)) { + // Do not override the basic share config from resolutions + if (shared[pkg]) { + continue; + } + + // Add if we haven't seen the config before + if (!mergedShare[pkg]) { + mergedShare[pkg] = config; + continue; + } + + // Choose between the existing config and this new config. We do not try + // to merge configs, which may yield a config no one wants + let oldConfig = mergedShare[pkg]; + + // if the old one has import: false, use the new one + if (oldConfig.import === false) { + mergedShare[pkg] = config; + } + } + } + + Object.assign(shared, mergedShare); + + // Transform any file:// requiredVersion to the version number from the + // imported package. This assumes (for simplicity) that the version we get + // importing was installed from the file. + for (let [pkg, { requiredVersion }] of Object.entries(shared)) { + if (requiredVersion && requiredVersion.startsWith('file:')) { + shared[pkg].requiredVersion = require(`${pkg}/package.json`).version; + } + } + + // Add singleton package information + for (let pkg of packageData.jupyterlab.singletonPackages) { + if (shared[pkg]) { + shared[pkg].singleton = true; + } + } + + return shared; +} + +// Make a bootstrap entrypoint +const entryPoint = path.join(buildDir, 'bootstrap.js'); +const bootstrap = 'import("./index.js");'; +fs.writeFileSync(entryPoint, bootstrap); + +if (process.env.NODE_ENV === 'production') { + baseConfig.mode = 'production'; +} + +if (process.argv.includes('--analyze')) { + extras.push(new BundleAnalyzerPlugin()); +} + +module.exports = [ + merge(baseConfig, { + mode: 'development', + entry: ['./publicpath.js', './' + path.relative(__dirname, entryPoint)], + output: { + path: path.resolve(__dirname, '..', 'rise/static/'), + library: { + type: 'var', + name: ['_JUPYTERLAB', 'CORE_OUTPUT'] + }, + filename: 'bundle.js' + }, + plugins: [ + new ModuleFederationPlugin({ + library: { + type: 'var', + name: ['_JUPYTERLAB', 'CORE_LIBRARY_FEDERATION'] + }, + name: 'CORE_FEDERATION', + shared: createShared(data) + }) + ] + }) +].concat(extras); diff --git a/lab/packages/presentation/jupyter.png b/lab/jupyter.png similarity index 100% rename from lab/packages/presentation/jupyter.png rename to lab/jupyter.png diff --git a/lab/package.json b/lab/package.json index 123284f2..9079eac2 100644 --- a/lab/package.json +++ b/lab/package.json @@ -1,12 +1,71 @@ { - "name": "rise-jupyterlab-metapackage", + "name": "rise-jupyterlab-root", + "description": "Edit and Present Revealjs-based LIVE slides in the Jupyter Notebook", + "version": "0.1.0", + "license": "BSD-3-Clause", + "homepage": "https://github.com/damianavila/RISE", "private": true, "workspaces": { "packages": [ - "packages/*" + "app", + "packages/application", + "packages/extension" ] }, + "author": { + "name": "Damián Avila", + "url": "https://github.com/damianavila", + "email": "" + }, + "contributors": [ + { + "name": "Thierry Parmentelat", + "url": "https://github.com/parmentelat" + }, + { + "name": "Frederic Collonval" + } + ], + "scripts": { + "build": "lerna run build", + "build:prod": "lerna run build:prod", + "build:test": "lerna run build:test", + "clean": "lerna run clean", + "eslint": "eslint . --ext .ts,.tsx --fix", + "eslint:check": "eslint . --ext .ts,.tsx", + "develop": "jupyter labextension develop . --overwrite", + "install": "lerna bootstrap", + "prettier": "prettier --write \"**/*{.ts,.tsx,.js,.jsx,.css,.json,.md}\"", + "prettier:check": "prettier --list-different \"**/*{.ts,.tsx,.js,.jsx,.css,.json,.md}\"", + "test": "lerna run test", + "update:dependency": "node ./node_modules/@jupyterlab/buildutils/lib/update-dependency.js --lerna" + }, + "husky": { + "hooks": { + "pre-commit": "lint-staged" + } + }, "devDependencies": { - "lerna": "^4.0.0" + "@jupyterlab/buildutils": "^3.2.0", + "@typescript-eslint/eslint-plugin": "^4.2.0", + "@typescript-eslint/parser": "^4.2.0", + "eslint": "^7.10.0", + "eslint-config-prettier": "^6.15.0", + "eslint-plugin-jest": "^24.1.3", + "eslint-plugin-prettier": "^3.1.4", + "eslint-plugin-react": "^7.21.5", + "extra-watch-webpack-plugin": "^1.0.3", + "husky": "^3", + "jest": "^26.4.2", + "jest-junit": "^11.1.0", + "jest-raw-loader": "^1.0.1", + "jest-summary-reporter": "^0.0.2", + "lerna": "^3.22.1", + "lint-staged": "^10.4.0", + "npm-run-all": "^4.1.5", + "prettier": "^1.19.0", + "rimraf": "^3.0.2", + "shell-quote": "^1.7.2", + "typescript": "~4.1.3" } } diff --git a/lab/packages/application/package.json b/lab/packages/application/package.json new file mode 100644 index 00000000..3fb8e302 --- /dev/null +++ b/lab/packages/application/package.json @@ -0,0 +1,76 @@ +{ + "name": "rise-application", + "version": "0.1.0", + "description": "Rise Application based on JupyterLab modules.", + "keywords": [ + "jupyter", + "jupyterlab", + "jupyterlab-extension" + ], + "homepage": "https://github.com/damianavila/RISE", + "bugs": { + "url": "https://github.com/damianavila/RISE/issues" + }, + "license": "BSD-3-Clause", + "author": { + "name": "Frederic Collonval" + }, + "files": [ + "lib/**/*.{d.ts,eot,gif,html,jpg,js,js.map,json,png,svg,woff2,ttf}", + "style/**/*.{css,js,eot,gif,html,jpg,json,png,svg,woff2,ttf}" + ], + "main": "lib/index.js", + "types": "lib/index.d.ts", + "style": "style/index.css", + "repository": { + "type": "git", + "url": "https://github.com/damianavila/RISE.git" + }, + "scripts": { + "build": "tsc -b", + "build:prod": "tsc -b", + "build:test": "tsc --build tsconfig.test.json", + "clean": "rimraf lib tsconfig.tsbuildinfo", + "watch": "tsc -b --watch" + }, + "dependencies": { + "@jupyterlab/application": "^3.2.0", + "@jupyterlab/apputils": "^3.2.0", + "@jupyterlab/codemirror": "^3.2.0", + "@jupyterlab/coreutils": "^5.2.0", + "@jupyterlab/docmanager": "^3.2.0", + "@jupyterlab/docregistry": "^3.2.0", + "@jupyterlab/mathjax2": "^3.2.0", + "@jupyterlab/notebook": "^3.2.0", + "@jupyterlab/rendermime": "^3.2.0", + "@jupyterlab/services": "^6.2.0", + "@lumino/commands": "^1.17.0", + "@lumino/widgets": "^1.28.0", + "rise-reveal": "file:../../../rise-reveal/export/reveal.js" + }, + "devDependencies": { + "@jupyterlab/builder": "^3.1.0", + "@types/reveal": "^3.0.0", + "@typescript-eslint/eslint-plugin": "^4.8.1", + "@typescript-eslint/parser": "^4.8.1", + "eslint": "^7.14.0", + "eslint-config-prettier": "^6.15.0", + "eslint-plugin-prettier": "^3.1.4", + "mkdirp": "^1.0.3", + "npm-run-all": "^4.1.5", + "prettier": "^2.1.1", + "rimraf": "^3.0.2", + "typescript": "~4.1.3" + }, + "sideEffects": [ + "style/*.css", + "style/index.js" + ], + "styleModule": "style/index.js", + "publishConfig": { + "access": "public" + }, + "jupyterlab": { + "coreDependency": true + } +} diff --git a/lab/packages/application/src/app/index.ts b/lab/packages/application/src/app/index.ts new file mode 100644 index 00000000..305db409 --- /dev/null +++ b/lab/packages/application/src/app/index.ts @@ -0,0 +1,198 @@ +import { + JupyterFrontEnd, + JupyterFrontEndPlugin +} from '@jupyterlab/application'; +import { createRendermimePlugins } from '@jupyterlab/application/lib/mimerenderers'; +import { PageConfig } from '@jupyterlab/coreutils'; +import { DocumentRegistry } from '@jupyterlab/docregistry'; +import { IRenderMime } from '@jupyterlab/rendermime-interfaces'; +import { IIterator, iter } from '@lumino/algorithm'; +import { Token } from '@lumino/coreutils'; +import { BoxLayout, Widget } from '@lumino/widgets'; + +/** + * The Rise application shell token. + */ +export const IRetroShell = new Token('rise-application:IRiseShell'); + +export class RiseShell extends Widget implements JupyterFrontEnd.IShell { + constructor() { + super(); + this.layout = new BoxLayout(); + this.id = 'main'; + this._currentWidget = null; + } + /** + * Activates a widget inside the application shell. + * + * @param id - The ID of the widget being activated. + */ + activateById(id: string): void { + // pass no-op + } + + /** + * Add a widget to the application shell. + * + * @param widget - The widget being added. + * + * @param area - Optional region in the shell into which the widget should + * be added. + * + * @param options - Optional flags the shell might use when opening the + * widget, as defined in the `DocumentRegistry`. + */ + add( + widget: Widget, + area?: string, + options?: DocumentRegistry.IOpenOptions + ): void { + if ((this.layout as BoxLayout).widgets.length > 0) { + // pass no-op + } + BoxLayout.setStretch(widget, 1); + (this.layout as BoxLayout).addWidget(widget); + this._currentWidget = widget; + } + /** + * The focused widget in the application shell. + * + * #### Notes + * Different shell implementations have latitude to decide what "current" + * or "focused" mean, depending on their user interface characteristics. + */ + get currentWidget(): Widget | null { + return this._currentWidget; + } + + /** + * Returns an iterator for the widgets inside the application shell. + * + * @param area - Optional regions in the shell whose widgets are iterated. + */ + widgets(area?: string): IIterator { + return iter((this.layout as BoxLayout).widgets); + } + + private _currentWidget: Widget | null; +} + +export class RiseApp extends JupyterFrontEnd { + /** + * Construct a new RetroApp object. + * + * @param options The instantiation options for an application. + */ + constructor(options: Partial = {}) { + super({ ...options, shell: options.shell ?? new RiseShell() }); + if (options.mimeExtensions) { + for (const plugin of createRendermimePlugins(options.mimeExtensions)) { + this.registerPlugin(plugin); + } + } + } + + /** + * The name of the application. + */ + readonly name = 'Rise'; + + /** + * A namespace/prefix plugins may use to denote their provenance. + */ + readonly namespace = this.name; + + /** + * The version of the application. + */ + readonly version = PageConfig.getOption('appVersion') ?? 'unknown'; + + /** + * The JupyterLab application paths dictionary. + */ + get paths(): JupyterFrontEnd.IPaths { + return { + urls: { + base: PageConfig.getOption('baseUrl'), + notFound: PageConfig.getOption('notFoundUrl'), + app: PageConfig.getOption('appUrl'), + static: PageConfig.getOption('staticUrl'), + settings: PageConfig.getOption('settingsUrl'), + themes: PageConfig.getOption('themesUrl'), + doc: PageConfig.getOption('docUrl'), + translations: PageConfig.getOption('translationsApiUrl') + }, + directories: { + appSettings: PageConfig.getOption('appSettingsDir'), + schemas: PageConfig.getOption('schemasDir'), + static: PageConfig.getOption('staticDir'), + templates: PageConfig.getOption('templatesDir'), + themes: PageConfig.getOption('themesDir'), + userSettings: PageConfig.getOption('userSettingsDir'), + serverRoot: PageConfig.getOption('serverRoot'), + workspaces: PageConfig.getOption('workspacesDir') + } + }; + } + + /** + * Register plugins from a plugin module. + * + * @param mod - The plugin module to register. + */ + registerPluginModule(mod: RiseApp.IPluginModule): void { + let data = mod.default; + // Handle commonjs exports. + if (!Object.prototype.hasOwnProperty.call(mod, '__esModule')) { + data = mod as any; + } + if (!Array.isArray(data)) { + data = [data]; + } + data.forEach(item => { + try { + this.registerPlugin(item); + } catch (error) { + console.error(error); + } + }); + } + + /** + * Register the plugins from multiple plugin modules. + * + * @param mods - The plugin modules to register. + */ + registerPluginModules(mods: RiseApp.IPluginModule[]): void { + mods.forEach(mod => { + this.registerPluginModule(mod); + }); + } +} + +export namespace RiseApp { + export interface IOptions + extends JupyterFrontEnd.IOptions, + Partial {} + + /** + * The information about a RetroLab application. + */ + export interface IInfo { + /** + * The mime renderer extensions. + */ + readonly mimeExtensions: IRenderMime.IExtensionModule[]; + } + + /** + * The interface for a module that exports a plugin or plugins as + * the default value. + */ + export interface IPluginModule { + /** + * The default export. + */ + default: JupyterFrontEndPlugin | JupyterFrontEndPlugin[]; + } +} diff --git a/lab/packages/application/src/index.ts b/lab/packages/application/src/index.ts new file mode 100644 index 00000000..88dd7bda --- /dev/null +++ b/lab/packages/application/src/index.ts @@ -0,0 +1,5 @@ +import * as plugins from './plugins'; + +export * from './app'; + +export default plugins; diff --git a/lab/packages/application/src/plugins/index.ts b/lab/packages/application/src/plugins/index.ts new file mode 100644 index 00000000..9eec0497 --- /dev/null +++ b/lab/packages/application/src/plugins/index.ts @@ -0,0 +1,129 @@ +import { + JupyterFrontEnd, + JupyterFrontEndPlugin +} from '@jupyterlab/application'; +import { IChangedArgs, PageConfig } from '@jupyterlab/coreutils'; +import { IDocumentManager } from '@jupyterlab/docmanager'; +import { INotebookModel, NotebookPanel } from '@jupyterlab/notebook'; +import Reveal from 'rise-reveal'; +import { RiseApp } from '../app'; + +// TODO should we define our own factory? + +function startReveal(panel: NotebookPanel): void { + function get_slide_type(cell: any) { + const slideshow = cell.metadata.get('slideshow') || {}; + const slide_type = (slideshow as any)['slide_type']; + //console.log(slide_type); + return slide_type === undefined || slide_type === '-' ? '' : slide_type; + } + + // function is_slide(cell: any) {return get_slide_type(cell) == 'slide';} + // function is_subslide(cell: any) {return get_slide_type(cell) == 'subslide';} + // function is_fragment(cell: any) {return get_slide_type(cell) == 'fragment';} + // function is_regular(cell: any) {return get_slide_type(cell) == ''; + + function markupSlides(container: any) { + let slide_section; + let slide_counter = 0; + const cells = container.model.cells; + + for (let i = 0; i < cells.length; i++) { + const cell = cells.get(i); + const slide_type = get_slide_type(cell); + + const cell_node = container.node.children[slide_counter]; + const prev_slide_section = slide_section; + + if (slide_type === 'slide') { + // Start new slide + slide_section = document.createElement('section'); + slide_section.appendChild(cell_node); + if (i === 0) { + container.node.insertBefore(slide_section, container.node.firstChild); + } else { + container.node.insertBefore( + slide_section, + prev_slide_section?.nextSibling + ); + } + slide_counter++; + console.log('Sep slide', i); + } else { + slide_section?.appendChild(cell_node); + console.log('Nop slide', i); + } + console.log(container.node); + } + } + + const notebook = panel.content; + markupSlides(notebook); + + const panel_container = document.getElementsByClassName( + 'jp-NotebookPanel' + )[0]; + panel_container.classList.add('reveal'); + //console.log("panel_container"); + + const notebook_container = document.getElementsByClassName('jp-Notebook')[0]; + notebook_container.classList.add('slides'); + //console.log("notebook_container"); + + Reveal.initialize({ + controls: true, + progress: true, + history: true, + center: true, + + transition: 'slide', // none/fade/slide/convex/concave/zoom + //make codemirror works as expected + minScale: 1.0, + maxScale: 1.0 + }); +} + +/** + * Open the notebook with RISE. + */ +const opener: JupyterFrontEndPlugin = { + id: 'rise-extension:opener', + autoStart: true, + requires: [IDocumentManager], + activate: (app: JupyterFrontEnd, documentManager: IDocumentManager) => { + Promise.all([app.started, app.restored]).then(() => { + const notebookPath = PageConfig.getOption('notebookPath'); + const notebookPanel = documentManager.open(notebookPath) as NotebookPanel; + + app.shell.add(notebookPanel); + + const initializeReveal = ( + _: INotebookModel, + change: IChangedArgs + ) => { + if (change.name === 'dirty' && change.newValue === false) { + notebookPanel.model?.stateChanged.disconnect(initializeReveal, this); + startReveal(notebookPanel); + } + }; + notebookPanel.model?.stateChanged.connect(initializeReveal, this); + }); + } +}; + +/** + * The default paths for a Rise app. + */ +const paths: JupyterFrontEndPlugin = { + id: 'rise-extension:paths', + autoStart: true, + provides: JupyterFrontEnd.IPaths, + activate: (app: JupyterFrontEnd): JupyterFrontEnd.IPaths => { + if (!(app instanceof RiseApp)) { + throw new Error(`${paths.id} must be activated in Rise.`); + } + return app.paths; + } +}; + +export default [opener, paths]; diff --git a/lab/packages/presentation/src/rise-reveal.d.ts b/lab/packages/application/src/rise-reveal.d.ts similarity index 100% rename from lab/packages/presentation/src/rise-reveal.d.ts rename to lab/packages/application/src/rise-reveal.d.ts diff --git a/lab/packages/application/style/base.css b/lab/packages/application/style/base.css new file mode 100644 index 00000000..fa6d69e3 --- /dev/null +++ b/lab/packages/application/style/base.css @@ -0,0 +1,12 @@ +@import url('~rise-reveal/css/reveal.css'); +@import url('~rise-reveal/css/theme/simple.css'); + +#main { + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; +} + + diff --git a/lab/packages/application/style/index.css b/lab/packages/application/style/index.css new file mode 100644 index 00000000..8a7ea29e --- /dev/null +++ b/lab/packages/application/style/index.css @@ -0,0 +1 @@ +@import url('base.css'); diff --git a/lab/packages/application/style/index.js b/lab/packages/application/style/index.js new file mode 100644 index 00000000..a028a764 --- /dev/null +++ b/lab/packages/application/style/index.js @@ -0,0 +1 @@ +import './base.css'; diff --git a/lab/packages/application/tsconfig.json b/lab/packages/application/tsconfig.json new file mode 100644 index 00000000..399b75b7 --- /dev/null +++ b/lab/packages/application/tsconfig.json @@ -0,0 +1,8 @@ +{ + "extends": "../../tsconfigbase", + "compilerOptions": { + "outDir": "lib", + "rootDir": "src" + }, + "include": ["src/**/*"] +} diff --git a/lab/packages/extension/package.json b/lab/packages/extension/package.json new file mode 100644 index 00000000..d1167ab4 --- /dev/null +++ b/lab/packages/extension/package.json @@ -0,0 +1,56 @@ +{ + "name": "rise-jupyterlab", + "version": "0.1.0", + "description": "A JupyterLab extension to turn your Jupyter Notebooks into a live presentation.", + "keywords": [ + "jupyter", + "jupyterlab", + "jupyterlab-extension" + ], + "homepage": "https://github.com/damianavila/RISE", + "bugs": { + "url": "https://github.com/damianavila/RISE/issues" + }, + "license": "BSD-3-Clause", + "author": { + "name": "Frederic Collonval", + "email": "" + }, + "files": [ + "lib/**/*.{d.ts,eot,gif,html,jpg,js,js.map,json,png,svg,woff2,ttf}", + "style/**/*.{css,js,eot,gif,html,jpg,json,png,svg,woff2,ttf}" + ], + "main": "lib/index.js", + "types": "lib/index.d.ts", + "style": "style/index.css", + "repository": { + "type": "git", + "url": "https://github.com/damianavila/RISE.git" + }, + "scripts": { + "build": "tsc -b", + "build:prod": "tsc -b", + "clean": "rimraf lib tsconfig.tsbuildinfo", + "prepublishOnly": "npm run build", + "watch": "tsc -b --watch" + }, + "dependencies": { + "@jupyterlab/application": "^3.2.0" + + }, + "devDependencies": { + "rimraf": "~3.0.0", + "typescript": "~4.1.3" + }, + "sideEffects": [ + "style/*.css", + "style/index.js" + ], + "styleModule": "style/index.js", + "publishConfig": { + "access": "public" + }, + "jupyterlab": { + "extension": true + } +} diff --git a/lab/packages/extension/src/index.ts b/lab/packages/extension/src/index.ts new file mode 100644 index 00000000..0dc2df4e --- /dev/null +++ b/lab/packages/extension/src/index.ts @@ -0,0 +1,17 @@ +import { + JupyterFrontEnd, + JupyterFrontEndPlugin +} from '@jupyterlab/application'; + +/** + * Open the notebook with RISE. + */ +const plugin: JupyterFrontEndPlugin = { + id: 'rise-jupyterlab:plugin', + autoStart: true, + activate: (app: JupyterFrontEnd) => { + console.log('rise-jupyterlab extension activated'); + } +}; + +export default plugin; diff --git a/lab/packages/extension/style/base.css b/lab/packages/extension/style/base.css new file mode 100644 index 00000000..e69de29b diff --git a/lab/packages/extension/style/index.css b/lab/packages/extension/style/index.css new file mode 100644 index 00000000..8a7ea29e --- /dev/null +++ b/lab/packages/extension/style/index.css @@ -0,0 +1 @@ +@import url('base.css'); diff --git a/lab/packages/extension/style/index.js b/lab/packages/extension/style/index.js new file mode 100644 index 00000000..a028a764 --- /dev/null +++ b/lab/packages/extension/style/index.js @@ -0,0 +1 @@ +import './base.css'; diff --git a/lab/packages/extension/tsconfig.json b/lab/packages/extension/tsconfig.json new file mode 100644 index 00000000..a1e4ba13 --- /dev/null +++ b/lab/packages/extension/tsconfig.json @@ -0,0 +1,8 @@ +{ + "extends": "../../tsconfigbase", + "compilerOptions": { + "outDir": "lib", + "rootDir": "src" + }, + "include": ["src/*"] +} diff --git a/lab/packages/presentation/data/data.json b/lab/packages/presentation/data/data.json deleted file mode 100644 index 24b71c35..00000000 --- a/lab/packages/presentation/data/data.json +++ /dev/null @@ -1,97 +0,0 @@ -{ - "name": "Untitled.ipynb", - "path": "Untitled.ipynb", - "last_modified": "2015-12-12T03:41:13+00:00", - "format": "json", - "content": { - "nbformat_minor": 0, - "nbformat": 4, - "metadata": { - "kernelspec": { - "name": "python3", - "display_name": "Python 3", - "language": "python" - }, - "language_info": { - "name": "python", - "codemirror_mode": { "name": "ipython", "version": 3 }, - "version": "3.5.1", - "nbconvert_exporter": "python", - "mimetype": "text/x-python", - "file_extension": ".py", - "pygments_lexer": "ipython3" - } - }, - "cells": [ - { - "cell_type": "markdown", - "source": "# Test notebook\n\nThis is a **markdown** *cell*.", - "metadata": {} - }, - { - "cell_type": "code", - "source": "import time\nimport sys\nfor i in range(5):\n print(5-i)\n time.sleep(1)\nprint('all systems go', file=sys.stderr, flush=True)\nprint('blast off!')", - "execution_count": 34, - "metadata": { "scrolled": true, "collapsed": false, "trusted": true }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": "5\n4\n3\n2\n1" - }, - { - "name": "stderr", - "output_type": "stream", - "text": "all systems go\n" - }, - { - "name": "stdout", - "output_type": "stream", - "text": "\nblast off!\n" - } - ] - }, - { - "cell_type": "code", - "source": "# from http://matplotlib.org/1.2.1/examples/pylab_examples/shading_example.html\n%matplotlib inline\nimport numpy as np\nimport matplotlib.pyplot as plt\nfrom matplotlib.colors import LightSource\n\n# test data\nX,Y=np.mgrid[-5:5:0.05,-5:5:0.05]\nZ=np.sqrt(X**2+Y**2)+np.sin(X**2+Y**2)\n# create light source object.\nls = LightSource(azdeg=0,altdeg=65)\n# shade data, creating an rgb array.\nrgb = ls.shade(Z, plt.cm.copper)\nplt.figure(figsize=(12,5))\nplt.imshow(rgb)\nplt.title('imshow with shading')\nplt.xticks([]); plt.yticks([])\nplt.show()", - "execution_count": 23, - "metadata": { "collapsed": false, "trusted": true }, - "outputs": [ - { - "data": { - "image/png": "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\n", - "text/plain": "" - }, - "output_type": "display_data", - "metadata": {} - } - ] - }, - { - "cell_type": "markdown", - "source": "## That was a cool image!", - "metadata": {} - }, - { - "cell_type": "code", - "source": "this should be a syntax error", - "execution_count": 8, - "metadata": { "scrolled": true, "collapsed": false, "trusted": true }, - "outputs": [ - { - "evalue": "invalid syntax (, line 1)", - "ename": "SyntaxError", - "output_type": "error", - "traceback": [ - "\u001b[0;36m File \u001b[0;32m\"\"\u001b[0;36m, line \u001b[0;32m1\u001b[0m\n\u001b[0;31m this should be a syntax error\u001b[0m\n\u001b[0m ^\u001b[0m\n\u001b[0;31mSyntaxError\u001b[0m\u001b[0;31m:\u001b[0m invalid syntax\n" - ] - } - ] - } - ] - }, - "mimetype": null, - "type": "notebook", - "created": "2015-12-12T03:41:13+00:00", - "writable": true -} diff --git a/lab/packages/presentation/index.css b/lab/packages/presentation/index.css deleted file mode 100644 index d709d139..00000000 --- a/lab/packages/presentation/index.css +++ /dev/null @@ -1,26 +0,0 @@ -/*----------------------------------------------------------------------------- -| Copyright (c) Jupyter Development Team. -| Distributed under the terms of the Modified BSD License. -|----------------------------------------------------------------------------*/ - -body { - background: white; - margin: 0; - padding: 0; -} - -#main { - position: absolute; - top: 4px; - left: 4px; - right: 4px; - bottom: 4px; -} - -.jp-NotebookPanel { - border-bottom: 1px solid #e0e0e0; -} - -.notebookCommandPalette { - min-width: 225px; -} diff --git a/lab/packages/presentation/main.py b/lab/packages/presentation/main.py deleted file mode 100644 index 18decff5..00000000 --- a/lab/packages/presentation/main.py +++ /dev/null @@ -1,102 +0,0 @@ -""" -An example demonstrating a stand-alone "notebook". - -Copyright (c) Jupyter Development Team. -Distributed under the terms of the Modified BSD License. - -Example -------- - -To run the example, see the instructions in the README to build it. Then -run ``python main.py``. - -""" -import os -import json - -from jupyterlab_server import LabServerApp -from jupyter_server.base.handlers import JupyterHandler -from jupyter_server.extension.handler import ExtensionHandlerMixin, ExtensionHandlerJinjaMixin -from jupyter_server.utils import url_path_join as ujoin - -HERE = os.path.dirname(__file__) - -with open(os.path.join(HERE, 'package.json')) as fid: - version = json.load(fid)['version'] - -def _jupyter_server_extension_points(): - return [ - { - 'module': __name__, - 'app': ExampleApp - } - ] - -class ExampleHandler( - ExtensionHandlerJinjaMixin, - ExtensionHandlerMixin, - JupyterHandler - ): - """ - Serve a notebook file from the filesystem in the notebook interface - """ - - def get(self): - """Get the main page for the application's interface.""" - # Options set here can be read with PageConfig.getOption - mathjax_config = self.settings.get('mathjax_config', - 'TeX-AMS_HTML-full,Safe') - mathjax_url = self.settings.get('mathjax_url', 'https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js') - - config_data = { - # Use camelCase here, since that's what the lab components expect - 'baseUrl': self.base_url, - 'token': self.settings['token'], - 'notebookPath': 'test.ipynb', - 'fullStaticUrl': ujoin(self.base_url, 'static', self.name), - 'frontendUrl': ujoin(self.base_url, 'example/'), - 'mathjaxUrl': mathjax_url, - 'mathjaxConfig': mathjax_config - } - return self.write( - self.render_template( - 'index.html', - static=self.static_url, - base_url=self.base_url, - token=self.settings['token'], - page_config=config_data - ) - ) - - -class ExampleApp(LabServerApp): - - extension_url = '/example' - default_url = '/example' - app_url = "/example" - name = __name__ - app_name = 'JupyterLab Example Notebook' - app_settings_dir = os.path.join(HERE, 'build', 'application_settings') - schemas_dir = os.path.join(HERE, 'build', 'schemas') - static_dir = os.path.join(HERE, 'build') - templates_dir = os.path.join(HERE, 'templates') - themes_dir = os.path.join(HERE, 'build', 'themes') - user_settings_dir = os.path.join(HERE, 'build', 'user_settings') - workspaces_dir = os.path.join(HERE, 'build', 'workspaces') - - serverapp_config = { - "jpserver_extensions": { - "nbclassic": True - } - } - - def initialize_handlers(self): - """Add example handler to Lab Server's handler list. - """ - self.handlers.append( - ('/example', ExampleHandler) - ) - - -if __name__ == '__main__': - ExampleApp.launch_instance() diff --git a/lab/packages/presentation/package.json b/lab/packages/presentation/package.json deleted file mode 100644 index f8111832..00000000 --- a/lab/packages/presentation/package.json +++ /dev/null @@ -1,43 +0,0 @@ -{ - "name": "rise-app", - "version": "0.1.0", - "private": true, - "scripts": { - "build": "tsc && webpack", - "clean": "rimraf build lib" - }, - "dependencies": { - "@jupyterlab/application": "^3.0.0", - "@jupyterlab/apputils": "^3.0.0", - "@jupyterlab/codemirror": "^3.0.0", - "@jupyterlab/coreutils": "^5.0.0", - "@jupyterlab/docmanager": "^3.0.0", - "@jupyterlab/docregistry": "^3.0.0", - "@jupyterlab/mathjax2": "^3.0.0", - "@jupyterlab/notebook": "^3.0.0", - "@jupyterlab/rendermime": "^3.0.0", - "@jupyterlab/services": "^6.0.0", - "@jupyterlab/theme-light-extension": "^3.0.0", - "@lumino/commands": "^1.17.0", - "@lumino/widgets": "^1.28.0", - "es6-promise": "~4.2.8", - "rise-reveal": "file:../../../rise-reveal/export/reveal.js" - }, - "devDependencies": { - "@types/codemirror": "^0.0.109", - "@types/reveal": "^3.0.0", - "css-loader": "^5.0.1", - "file-loader": "~6.0.0", - "mini-css-extract-plugin": "~1.3.2", - "raw-loader": "~4.0.0", - "rimraf": "~3.0.0", - "style-loader": "~2.0.0", - "svg-url-loader": "~6.0.0", - "typescript": "~4.1.3", - "url-loader": "~4.1.0", - "watch": "~1.0.2", - "webpack": "^5.55.1", - "webpack-cli": "^4.8.0", - "whatwg-fetch": "^3.0.0" - } -} diff --git a/lab/packages/presentation/src/index.ts b/lab/packages/presentation/src/index.ts deleted file mode 100755 index d729b35f..00000000 --- a/lab/packages/presentation/src/index.ts +++ /dev/null @@ -1,207 +0,0 @@ -// Copyright (c) Jupyter Development Team. -// Distributed under the terms of the Modified BSD License. - -import { IChangedArgs, PageConfig, URLExt } from "@jupyterlab/coreutils"; -(window as any).__webpack_public_path__ = URLExt.join( - PageConfig.getBaseUrl(), - "example/" -); -// TODO quid extension... -// import "@jupyterlab/application/style/index.css"; -// import "@jupyterlab/codemirror/style/index.css"; -import "@jupyterlab/notebook/style/index.css"; -import "@jupyterlab/theme-light-extension/style/theme.css"; -import "rise-reveal/css/reveal.css"; -import "rise-reveal/css/theme/simple.css"; -// require('../style/rise.css'); -import "../index.css"; - -import Reveal from "rise-reveal"; - -import { CommandRegistry } from "@lumino/commands"; - -import { SplitPanel, Widget } from "@lumino/widgets"; - -import { ServiceManager } from "@jupyterlab/services"; -import { MathJaxTypesetter } from "@jupyterlab/mathjax2"; - -import { - INotebookModel, - NotebookModelFactory, - NotebookPanel, - NotebookWidgetFactory, -} from "@jupyterlab/notebook"; - -import { editorServices } from "@jupyterlab/codemirror"; - -import { DocumentManager } from "@jupyterlab/docmanager"; - -import { DocumentRegistry } from "@jupyterlab/docregistry"; - -import { - standardRendererFactories as initialFactories, - RenderMimeRegistry, -} from "@jupyterlab/rendermime"; - -function main(): void { - const manager = new ServiceManager(); - void manager.ready.then(() => { - createApp(manager); - }); -} - -function startReveal(panel: NotebookPanel): void { - function get_slide_type(cell: any) { - let slideshow = cell.metadata.get("slideshow") || {}; - let slide_type = (slideshow as any)["slide_type"]; - //console.log(slide_type); - return slide_type === undefined || slide_type == "-" ? "" : slide_type; - } - - // function is_slide(cell: any) {return get_slide_type(cell) == 'slide';} - // function is_subslide(cell: any) {return get_slide_type(cell) == 'subslide';} - // function is_fragment(cell: any) {return get_slide_type(cell) == 'fragment';} - // function is_regular(cell: any) {return get_slide_type(cell) == ''; - - function markupSlides(container: any) { - let slide_section; - let slide_counter = 0; - let cells = container.model.cells; - - for (let i = 0; i < cells.length; i++) { - let cell = cells.get(i); - let slide_type = get_slide_type(cell); - - let cell_node = container.node.children[slide_counter]; - let prev_slide_section = slide_section; - - if (slide_type === "slide") { - // Start new slide - slide_section = document.createElement("section"); - slide_section.appendChild(cell_node); - if (i === 0) { - container.node.insertBefore(slide_section, container.node.firstChild); - } else { - container.node.insertBefore( - slide_section, - prev_slide_section?.nextSibling - ); - } - slide_counter++; - console.log("Sep slide", i); - } else { - slide_section?.appendChild(cell_node); - console.log("Nop slide", i); - } - console.log(container.node); - } - } - - let notebook = panel.content; - markupSlides(notebook); - - let panel_container = document.getElementsByClassName("jp-NotebookPanel")[0]; - panel_container.classList.add("reveal"); - //console.log("panel_container"); - - let notebook_container = document.getElementsByClassName("jp-Notebook")[0]; - notebook_container.classList.add("slides"); - //console.log("notebook_container"); - - Reveal.initialize({ - controls: true, - progress: true, - history: true, - center: true, - - transition: "slide", // none/fade/slide/convex/concave/zoom - //make codemirror works as expected - minScale: 1.0, - maxScale: 1.0, - }); -} - -function createApp(manager: ServiceManager.IManager): void { - // Initialize the command registry with the bindings. - const commands = new CommandRegistry(); - const useCapture = true; - - // Setup the keydown listener for the document. - document.addEventListener( - "keydown", - (event) => { - commands.processKeydownEvent(event); - }, - useCapture - ); - - const rendermime = new RenderMimeRegistry({ - initialFactories: initialFactories, - latexTypesetter: new MathJaxTypesetter({ - url: PageConfig.getOption("mathjaxUrl"), - config: PageConfig.getOption("mathjaxConfig"), - }), - }); - - const opener = { - open: (widget: Widget) => { - // Do nothing for sibling widgets for now. - }, - }; - - const docRegistry = new DocumentRegistry(); - const docManager = new DocumentManager({ - registry: docRegistry, - manager, - opener, - }); - const mFactory = new NotebookModelFactory({}); - const editorFactory = editorServices.factoryService.newInlineEditor; - const contentFactory = new NotebookPanel.ContentFactory({ editorFactory }); - - const wFactory = new NotebookWidgetFactory({ - name: "Notebook", - modelName: "notebook", - fileTypes: ["notebook"], - defaultFor: ["notebook"], - preferKernel: true, - canStartKernel: true, - rendermime, - contentFactory, - mimeTypeService: editorServices.mimeTypeService, - toolbarFactory: () => [], - }); - docRegistry.addModelFactory(mFactory); - docRegistry.addWidgetFactory(wFactory); - - const notebookPath = PageConfig.getOption("notebookPath"); - const nbWidget = docManager.open(notebookPath) as NotebookPanel; - - const panel = new SplitPanel(); - panel.id = "main"; - panel.orientation = "horizontal"; - panel.spacing = 0; - SplitPanel.setStretch(nbWidget, 1); - panel.addWidget(nbWidget); - - // Attach the panel to the DOM. - Widget.attach(panel, document.body); - - function initializeReveal( - _: INotebookModel, - change: IChangedArgs - ) { - if (change.name === "dirty" && change.newValue === false) { - nbWidget.model?.stateChanged.disconnect(initializeReveal, this); - startReveal(nbWidget); - } - } - nbWidget.model?.stateChanged.connect(initializeReveal, this); - - // Handle resize events. - window.addEventListener("resize", () => { - panel.update(); - }); -} - -window.addEventListener("load", main); diff --git a/lab/packages/presentation/templates/index.html b/lab/packages/presentation/templates/index.html deleted file mode 100644 index ed2bdc70..00000000 --- a/lab/packages/presentation/templates/index.html +++ /dev/null @@ -1,31 +0,0 @@ - - - - {{page_config['appName'] | e}} - - - - {# Copy so we do not modify the page_config with updates. #} - {% set page_config_full = page_config.copy() %} - - {# Set a dummy variable - we just want the side effect of the update. #} - {% set _ = page_config_full.update(baseUrl=base_url, wsUrl=ws_url) %} - - - - - - - - diff --git a/lab/packages/presentation/webpack.config.js b/lab/packages/presentation/webpack.config.js deleted file mode 100644 index e0f1e7d8..00000000 --- a/lab/packages/presentation/webpack.config.js +++ /dev/null @@ -1,48 +0,0 @@ -const webpack = require('webpack'); - -module.exports = { - entry: ['whatwg-fetch', './lib/index.js'], - output: { - path: __dirname + '/build', - filename: 'bundle.js' - }, - bail: true, - devtool: 'cheap-source-map', - mode: 'development', - module: { - rules: [ - { test: /\.css$/, use: ['style-loader', 'css-loader'] }, - { test: /\.html$/, use: 'file-loader' }, - { test: /\.md$/, use: 'raw-loader' }, - { test: /\.js.map$/, use: 'file-loader' }, - { - // In .css files, svg is loaded as a data URI. - test: /\.svg(\?v=\d+\.\d+\.\d+)?$/, - issuer: /\.css$/, - use: { - loader: 'svg-url-loader', - options: { encoding: 'none', limit: 10000 } - } - }, - { - // In .ts and .tsx files (both of which compile to .js), svg files - // must be loaded as a raw string instead of data URIs. - test: /\.svg(\?v=\d+\.\d+\.\d+)?$/, - issuer: /\.js$/, - use: { - loader: 'raw-loader' - } - }, - { - test: /\.(png|jpg|gif|ttf|woff|woff2|eot)(\?v=[0-9]\.[0-9]\.[0-9])?$/, - use: [{ loader: 'url-loader', options: { limit: 10000 } }] - } - ] - }, - plugins: [ - new webpack.DefinePlugin({ - // Needed for various packages using cwd(), like the path polyfill - process: { cwd: () => '/', env: {} } - }) - ] -}; diff --git a/lab/rise/__init__.py b/lab/rise/__init__.py new file mode 100644 index 00000000..87ca37c5 --- /dev/null +++ b/lab/rise/__init__.py @@ -0,0 +1,22 @@ +from ._version import __version__ +from .app import RiseApp +from .serverextension import load_jupyter_server_extension + + +def _jupyter_server_extension_paths(): + return [ + { + 'module': 'rise' + } + ] + + +def _jupyter_server_extension_points(): + return [{"module": "rise", "app": RiseApp}] + + +# def _jupyter_labextension_paths(): +# return [{ +# 'src': 'labextension', +# 'dest': '@retrolab/lab-extension' +# }] diff --git a/lab/rise/__main__.py b/lab/rise/__main__.py new file mode 100644 index 00000000..f7745a00 --- /dev/null +++ b/lab/rise/__main__.py @@ -0,0 +1,6 @@ +import sys + +from rise.app import main + +if __name__ == "__main__": + sys.exit(main()) diff --git a/lab/rise/_version.py b/lab/rise/_version.py new file mode 100644 index 00000000..3dc1f76b --- /dev/null +++ b/lab/rise/_version.py @@ -0,0 +1 @@ +__version__ = "0.1.0" diff --git a/lab/rise/app.py b/lab/rise/app.py new file mode 100644 index 00000000..7dcf0790 --- /dev/null +++ b/lab/rise/app.py @@ -0,0 +1,128 @@ +import os +from os.path import join as pjoin + + +from jupyter_server.base.handlers import JupyterHandler +from jupyter_server.extension.handler import ( + ExtensionHandlerJinjaMixin, + ExtensionHandlerMixin, +) +from jupyter_server.utils import url_path_join as ujoin +from jupyterlab.commands import get_app_dir, get_user_settings_dir, get_workspaces_dir +from jupyterlab_server import LabServerApp +from jupyterlab_server.config import get_page_config, recursive_update, LabConfig +from jupyterlab_server.handlers import is_url, _camelCase +from tornado import web + +from ._version import __version__ + +HERE = os.path.dirname(__file__) + +app_dir = get_app_dir() +version = __version__ + + +class RiseHandler( + ExtensionHandlerJinjaMixin, ExtensionHandlerMixin, JupyterHandler +): + def get_page_config(self): + config = LabConfig() + app = self.extensionapp + base_url = self.settings.get("base_url") + + page_config = { + "appVersion": version, + "baseUrl": self.base_url, + "terminalsAvailable": False, + "token": self.settings["token"], + "fullStaticUrl": ujoin(self.base_url, "static", self.name), + "frontendUrl": ujoin(self.base_url, "rise/"), + 'notebookPath': 'test.ipynb', + } + + mathjax_config = self.settings.get("mathjax_config", "TeX-AMS_HTML-full,Safe") + # TODO Remove CDN usage. + mathjax_url = self.settings.get( + "mathjax_url", + "https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.7/MathJax.js", + ) + page_config.setdefault("mathjaxConfig", mathjax_config) + page_config.setdefault("fullMathjaxUrl", mathjax_url) + + # Put all our config in page_config + for name in config.trait_names(): + page_config[_camelCase(name)] = getattr(app, name) + + # Add full versions of all the urls + for name in config.trait_names(): + if not name.endswith("_url"): + continue + full_name = _camelCase("full_" + name) + full_url = getattr(app, name) + if not is_url(full_url): + # Relative URL will be prefixed with base_url + full_url = ujoin(base_url, full_url) + page_config[full_name] = full_url + + labextensions_path = app.extra_labextensions_path + app.labextensions_path + recursive_update( + page_config, + get_page_config( + labextensions_path, + logger=self.log, + ), + ) + return page_config + + @web.authenticated + def get(self): + return self.write( + self.render_template( + "index.html", + static=self.static_url, + base_url=self.base_url, + token=self.settings["token"], + page_config=self.get_page_config() + ) + ) + +class RiseApp(LabServerApp): + name = "rise" + app_name = "Rise" + description = "Rise - Standalone notebook presenter" + version = version + app_version = version + extension_url = "/rise" + default_url = "/rise" + load_other_extensions = True + app_dir = app_dir + app_settings_dir = pjoin(app_dir, "settings") + schemas_dir = pjoin(app_dir, "schemas") + themes_dir = pjoin(app_dir, "themes") + user_settings_dir = get_user_settings_dir() + workspaces_dir = get_workspaces_dir() + subcommands = {} + + def initialize_handlers(self): + self.handlers.append(("/rise", RiseHandler)) + super().initialize_handlers() + + def initialize_templates(self): + super().initialize_templates() + self.static_dir = os.path.join(HERE, "static") + self.templates_dir = os.path.join(HERE, "templates") + self.static_paths = [self.static_dir] + self.template_paths = [self.templates_dir] + + def initialize_settings(self): + super().initialize_settings() + + def initialize(self, argv=None): + """Subclass because the ExtensionApp.initialize() method does not take arguments""" + super().initialize() + + +main = launch_new_instance = RiseApp.launch_instance + +if __name__ == "__main__": + main() diff --git a/lab/rise/serverextension.py b/lab/rise/serverextension.py new file mode 100644 index 00000000..c4acba89 --- /dev/null +++ b/lab/rise/serverextension.py @@ -0,0 +1,10 @@ +from .app import RiseApp + + +def load_jupyter_server_extension(serverapp): + extension = RiseApp() + extension.serverapp = serverapp + extension.load_config_file() + extension.update_config(serverapp.config) + extension.parse_command_line(serverapp.extra_args) + extension.initialize() diff --git a/lab/packages/presentation/templates/error.html b/lab/rise/templates/error.html similarity index 100% rename from lab/packages/presentation/templates/error.html rename to lab/rise/templates/error.html diff --git a/lab/rise/templates/index.html b/lab/rise/templates/index.html new file mode 100644 index 00000000..a8ed8ba9 --- /dev/null +++ b/lab/rise/templates/index.html @@ -0,0 +1,36 @@ + + + + + + + {{page_config['appName'] | e}} + + + + + {# Copy so we do not modify the page_config with updates. #} + {% set page_config_full = page_config.copy() %} + + {# Set a dummy variable - we just want the side effect of the update. #} + {% set _ = page_config_full.update(baseUrl=base_url, wsUrl=ws_url) %} + + + + + + + + + \ No newline at end of file diff --git a/lab/setup.py b/lab/setup.py new file mode 100644 index 00000000..afac1f6e --- /dev/null +++ b/lab/setup.py @@ -0,0 +1,101 @@ +""" +rise_jupyterlab setup +""" +import json +import sys +from pathlib import Path + +import setuptools + +HERE = Path(__file__).parent.resolve() + +# The name of the project +name = "rise" + +lab_path = (HERE / name.replace("-", "_") / "labextension") + +# Representative files that should exist after a successful build +ensured_targets = [ + str(lab_path / "package.json"), + str(lab_path / "static/style.js") +] + +labext_name = "rise-jupyterlab" + +# data_files_spec = [ +# ("share/jupyter/labextensions/%s" % labext_name, str(lab_path.relative_to(HERE)), "**"), +# ("share/jupyter/labextensions/%s" % labext_name, str("."), "install.json"), +# ("etc/jupyter/jupyter_server_config.d", +# "jupyter-config/server-config", "rise_jupyterlab.json"), +# # For backward compatibility with notebook server +# ("etc/jupyter/jupyter_notebook_config.d", +# "jupyter-config/nb-config", "rise_jupyterlab.json"), +# ] + +long_description = (HERE / "README.md").read_text() + +# Get the package info from package.json +pkg_json = json.loads((HERE / "package.json").read_bytes()) +version = ( + pkg_json["version"] + .replace("-alpha.", "a") + .replace("-beta.", "b") + .replace("-rc.", "rc") +) + +setup_args = dict( + name=name, + version=version, + url=pkg_json["homepage"], + author=pkg_json["author"]["name"], + author_email=pkg_json["author"]["email"], + description=pkg_json["description"], + license=pkg_json["license"], + license_file="LICENSE.md", + long_description=long_description, + long_description_content_type="text/markdown", + packages=setuptools.find_packages(), + install_requires=[ + "jupyter_server>=1.6,<2" + ], + zip_safe=False, + include_package_data=True, + python_requires=">=3.6", + platforms="Linux, Mac OS X, Windows", + keywords=["Jupyter", "JupyterLab", "JupyterLab3"], + classifiers=[ + "License :: OSI Approved :: BSD License", + "Programming Language :: Python", + "Programming Language :: Python :: 3", + "Programming Language :: Python :: 3.6", + "Programming Language :: Python :: 3.7", + "Programming Language :: Python :: 3.8", + "Programming Language :: Python :: 3.9", + "Framework :: Jupyter", + "Framework :: Jupyter :: JupyterLab", + "Framework :: Jupyter :: JupyterLab :: 3", + "Framework :: Jupyter :: JupyterLab :: Extensions", + "Framework :: Jupyter :: JupyterLab :: Extensions :: Prebuilt", + ], +) + +# try: +# from jupyter_packaging import ( +# wrap_installers, +# npm_builder, +# get_data_files +# ) +# post_develop = npm_builder( +# build_cmd="install:extension", source_dir="src", build_dir=lab_path +# ) +# setup_args["cmdclass"] = wrap_installers(post_develop=post_develop, ensured_targets=ensured_targets) +# setup_args["data_files"] = get_data_files(data_files_spec) +# except ImportError as e: +# import logging +# logging.basicConfig(format="%(levelname)s: %(message)s") +# logging.warning("Build tool `jupyter-packaging` is missing. Install it with pip or conda.") +# if not ("--name" in sys.argv or "--version" in sys.argv): +# raise e + +if __name__ == "__main__": + setuptools.setup(**setup_args) diff --git a/lab/packages/presentation/test.ipynb b/lab/test.ipynb similarity index 100% rename from lab/packages/presentation/test.ipynb rename to lab/test.ipynb diff --git a/lab/tsconfig.eslint.json b/lab/tsconfig.eslint.json new file mode 100644 index 00000000..f9cdb9bb --- /dev/null +++ b/lab/tsconfig.eslint.json @@ -0,0 +1,5 @@ +{ + "extends": "./tsconfigbase", + "include": ["packages/**/*", "app/**/*"], + "types": ["jest"] +} diff --git a/lab/packages/presentation/tsconfig.json b/lab/tsconfigbase.json similarity index 81% rename from lab/packages/presentation/tsconfig.json rename to lab/tsconfigbase.json index 975837d3..9488105f 100644 --- a/lab/packages/presentation/tsconfig.json +++ b/lab/tsconfigbase.json @@ -14,12 +14,10 @@ "noUnusedLocals": true, "preserveWatchOutput": true, "resolveJsonModule": true, - "sourceMap": true, + "strict": true, + "skipLibCheck": true, "strictNullChecks": true, "target": "es2017", - "types": [], - "outDir": "lib", - "rootDir": "src" - }, - "include": ["src/*"] + "types": [] + } } diff --git a/lab/yarn.lock b/lab/yarn.lock index 65442792..70ecfc26 100644 --- a/lab/yarn.lock +++ b/lab/yarn.lock @@ -9,18 +9,164 @@ dependencies: "@babel/highlight" "^7.10.4" -"@babel/code-frame@^7.0.0": +"@babel/code-frame@^7.0.0", "@babel/code-frame@^7.16.0": version "7.16.0" resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.16.0.tgz#0dfc80309beec8411e65e706461c408b0bb9b431" integrity sha512-IF4EOMEV+bfYwOmNxGzSnjR2EmQod7f1UXOpZM3l4i4o4QNwzjtJAu/HxdjHq0aYBvdqMuQEY1eg0nqW9ZPORA== dependencies: "@babel/highlight" "^7.16.0" +"@babel/compat-data@^7.16.0": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.16.0.tgz#ea269d7f78deb3a7826c39a4048eecda541ebdaa" + integrity sha512-DGjt2QZse5SGd9nfOSqO4WLJ8NN/oHkijbXbPrxuoJO3oIPJL3TciZs9FX+cOHNiY9E9l0opL8g7BmLe3T+9ew== + +"@babel/core@^7.1.0", "@babel/core@^7.12.3", "@babel/core@^7.7.5": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.16.0.tgz#c4ff44046f5fe310525cc9eb4ef5147f0c5374d4" + integrity sha512-mYZEvshBRHGsIAiyH5PzCFTCfbWfoYbO/jcSdXQSUQu1/pW0xDZAUP7KEc32heqWTAfAHhV9j1vH8Sav7l+JNQ== + dependencies: + "@babel/code-frame" "^7.16.0" + "@babel/generator" "^7.16.0" + "@babel/helper-compilation-targets" "^7.16.0" + "@babel/helper-module-transforms" "^7.16.0" + "@babel/helpers" "^7.16.0" + "@babel/parser" "^7.16.0" + "@babel/template" "^7.16.0" + "@babel/traverse" "^7.16.0" + "@babel/types" "^7.16.0" + convert-source-map "^1.7.0" + debug "^4.1.0" + gensync "^1.0.0-beta.2" + json5 "^2.1.2" + semver "^6.3.0" + source-map "^0.5.0" + +"@babel/generator@^7.16.0": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.16.0.tgz#d40f3d1d5075e62d3500bccb67f3daa8a95265b2" + integrity sha512-RR8hUCfRQn9j9RPKEVXo9LiwoxLPYn6hNZlvUOR8tSnaxlD0p0+la00ZP9/SnRt6HchKr+X0fO2r8vrETiJGew== + dependencies: + "@babel/types" "^7.16.0" + jsesc "^2.5.1" + source-map "^0.5.0" + +"@babel/helper-compilation-targets@^7.16.0": + version "7.16.3" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.16.3.tgz#5b480cd13f68363df6ec4dc8ac8e2da11363cbf0" + integrity sha512-vKsoSQAyBmxS35JUOOt+07cLc6Nk/2ljLIHwmq2/NM6hdioUaqEXq/S+nXvbvXbZkNDlWOymPanJGOc4CBjSJA== + dependencies: + "@babel/compat-data" "^7.16.0" + "@babel/helper-validator-option" "^7.14.5" + browserslist "^4.17.5" + semver "^6.3.0" + +"@babel/helper-function-name@^7.16.0": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.16.0.tgz#b7dd0797d00bbfee4f07e9c4ea5b0e30c8bb1481" + integrity sha512-BZh4mEk1xi2h4HFjWUXRQX5AEx4rvaZxHgax9gcjdLWdkjsY7MKt5p0otjsg5noXw+pB+clMCjw+aEVYADMjog== + dependencies: + "@babel/helper-get-function-arity" "^7.16.0" + "@babel/template" "^7.16.0" + "@babel/types" "^7.16.0" + +"@babel/helper-get-function-arity@^7.16.0": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.16.0.tgz#0088c7486b29a9cb5d948b1a1de46db66e089cfa" + integrity sha512-ASCquNcywC1NkYh/z7Cgp3w31YW8aojjYIlNg4VeJiHkqyP4AzIvr4qx7pYDb4/s8YcsZWqqOSxgkvjUz1kpDQ== + dependencies: + "@babel/types" "^7.16.0" + +"@babel/helper-hoist-variables@^7.16.0": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.0.tgz#4c9023c2f1def7e28ff46fc1dbcd36a39beaa81a" + integrity sha512-1AZlpazjUR0EQZQv3sgRNfM9mEVWPK3M6vlalczA+EECcPz3XPh6VplbErL5UoMpChhSck5wAJHthlj1bYpcmg== + dependencies: + "@babel/types" "^7.16.0" + +"@babel/helper-member-expression-to-functions@^7.16.0": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@babel/helper-member-expression-to-functions/-/helper-member-expression-to-functions-7.16.0.tgz#29287040efd197c77636ef75188e81da8bccd5a4" + integrity sha512-bsjlBFPuWT6IWhl28EdrQ+gTvSvj5tqVP5Xeftp07SEuz5pLnsXZuDkDD3Rfcxy0IsHmbZ+7B2/9SHzxO0T+sQ== + dependencies: + "@babel/types" "^7.16.0" + +"@babel/helper-module-imports@^7.16.0": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.16.0.tgz#90538e60b672ecf1b448f5f4f5433d37e79a3ec3" + integrity sha512-kkH7sWzKPq0xt3H1n+ghb4xEMP8k0U7XV3kkB+ZGy69kDk2ySFW1qPi06sjKzFY3t1j6XbJSqr4mF9L7CYVyhg== + dependencies: + "@babel/types" "^7.16.0" + +"@babel/helper-module-transforms@^7.16.0": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.16.0.tgz#1c82a8dd4cb34577502ebd2909699b194c3e9bb5" + integrity sha512-My4cr9ATcaBbmaEa8M0dZNA74cfI6gitvUAskgDtAFmAqyFKDSHQo5YstxPbN+lzHl2D9l/YOEFqb2mtUh4gfA== + dependencies: + "@babel/helper-module-imports" "^7.16.0" + "@babel/helper-replace-supers" "^7.16.0" + "@babel/helper-simple-access" "^7.16.0" + "@babel/helper-split-export-declaration" "^7.16.0" + "@babel/helper-validator-identifier" "^7.15.7" + "@babel/template" "^7.16.0" + "@babel/traverse" "^7.16.0" + "@babel/types" "^7.16.0" + +"@babel/helper-optimise-call-expression@^7.16.0": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@babel/helper-optimise-call-expression/-/helper-optimise-call-expression-7.16.0.tgz#cecdb145d70c54096b1564f8e9f10cd7d193b338" + integrity sha512-SuI467Gi2V8fkofm2JPnZzB/SUuXoJA5zXe/xzyPP2M04686RzFKFHPK6HDVN6JvWBIEW8tt9hPR7fXdn2Lgpw== + dependencies: + "@babel/types" "^7.16.0" + +"@babel/helper-plugin-utils@^7.0.0", "@babel/helper-plugin-utils@^7.10.4", "@babel/helper-plugin-utils@^7.12.13", "@babel/helper-plugin-utils@^7.14.5", "@babel/helper-plugin-utils@^7.8.0": + version "7.14.5" + resolved "https://registry.yarnpkg.com/@babel/helper-plugin-utils/-/helper-plugin-utils-7.14.5.tgz#5ac822ce97eec46741ab70a517971e443a70c5a9" + integrity sha512-/37qQCE3K0vvZKwoK4XU/irIJQdIfCJuhU5eKnNxpFDsOkgFaUAwbv+RYw6eYgsC0E4hS7r5KqGULUogqui0fQ== + +"@babel/helper-replace-supers@^7.16.0": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@babel/helper-replace-supers/-/helper-replace-supers-7.16.0.tgz#73055e8d3cf9bcba8ddb55cad93fedc860f68f17" + integrity sha512-TQxuQfSCdoha7cpRNJvfaYxxxzmbxXw/+6cS7V02eeDYyhxderSoMVALvwupA54/pZcOTtVeJ0xccp1nGWladA== + dependencies: + "@babel/helper-member-expression-to-functions" "^7.16.0" + "@babel/helper-optimise-call-expression" "^7.16.0" + "@babel/traverse" "^7.16.0" + "@babel/types" "^7.16.0" + +"@babel/helper-simple-access@^7.16.0": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@babel/helper-simple-access/-/helper-simple-access-7.16.0.tgz#21d6a27620e383e37534cf6c10bba019a6f90517" + integrity sha512-o1rjBT/gppAqKsYfUdfHq5Rk03lMQrkPHG1OWzHWpLgVXRH4HnMM9Et9CVdIqwkCQlobnGHEJMsgWP/jE1zUiw== + dependencies: + "@babel/types" "^7.16.0" + +"@babel/helper-split-export-declaration@^7.16.0": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.0.tgz#29672f43663e936df370aaeb22beddb3baec7438" + integrity sha512-0YMMRpuDFNGTHNRiiqJX19GjNXA4H0E8jZ2ibccfSxaCogbm3am5WN/2nQNj0YnQwGWM1J06GOcQ2qnh3+0paw== + dependencies: + "@babel/types" "^7.16.0" + "@babel/helper-validator-identifier@^7.15.7": version "7.15.7" resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.15.7.tgz#220df993bfe904a4a6b02ab4f3385a5ebf6e2389" integrity sha512-K4JvCtQqad9OY2+yTU8w+E82ywk/fe+ELNlt1G8z3bVGlZfn/hOcQQsUhGhW/N+tb3fxK800wLtKOE/aM0m72w== +"@babel/helper-validator-option@^7.14.5": + version "7.14.5" + resolved "https://registry.yarnpkg.com/@babel/helper-validator-option/-/helper-validator-option-7.14.5.tgz#6e72a1fff18d5dfcb878e1e62f1a021c4b72d5a3" + integrity sha512-OX8D5eeX4XwcroVW45NMvoYaIuFI+GQpA2a8Gi+X/U/cDUIRsV37qQfF905F0htTRCREQIB4KqPeaveRJUl3Ow== + +"@babel/helpers@^7.16.0": + version "7.16.3" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.16.3.tgz#27fc64f40b996e7074dc73128c3e5c3e7f55c43c" + integrity sha512-Xn8IhDlBPhvYTvgewPKawhADichOsbkZuzN7qz2BusOM0brChsyXMDJvldWaYMMUNiCQdQzNEioXTp3sC8Nt8w== + dependencies: + "@babel/template" "^7.16.0" + "@babel/traverse" "^7.16.3" + "@babel/types" "^7.16.0" + "@babel/highlight@^7.10.4", "@babel/highlight@^7.16.0": version "7.16.0" resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.16.0.tgz#6ceb32b2ca4b8f5f361fb7fd821e3fddf4a1725a" @@ -30,6 +176,95 @@ chalk "^2.0.0" js-tokens "^4.0.0" +"@babel/parser@^7.1.0", "@babel/parser@^7.14.7", "@babel/parser@^7.16.0", "@babel/parser@^7.16.3": + version "7.16.3" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.16.3.tgz#271bafcb811080905a119222edbc17909c82261d" + integrity sha512-dcNwU1O4sx57ClvLBVFbEgx0UZWfd0JQX5X6fxFRCLHelFBGXFfSz6Y0FAq2PEwUqlqLkdVjVr4VASEOuUnLJw== + +"@babel/plugin-syntax-async-generators@^7.8.4": + version "7.8.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz#a983fb1aeb2ec3f6ed042a210f640e90e786fe0d" + integrity sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7TEHylV5zNhykX6KAgHJmTNw== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-bigint@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz#4c9a6f669f5d0cdf1b90a1671e9a146be5300cea" + integrity sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3Npg== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-class-properties@^7.8.3": + version "7.12.13" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz#b5c987274c4a3a82b89714796931a6b53544ae10" + integrity sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dXTSDnulOVqiF3Hgr9nbXvXTQZYA== + dependencies: + "@babel/helper-plugin-utils" "^7.12.13" + +"@babel/plugin-syntax-import-meta@^7.8.3": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz#ee601348c370fa334d2207be158777496521fd51" + integrity sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+vK+Clp7bfh0iD7g== + dependencies: + "@babel/helper-plugin-utils" "^7.10.4" + +"@babel/plugin-syntax-json-strings@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz#01ca21b668cd8218c9e640cb6dd88c5412b2c96a" + integrity sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQnAtgVCZ6jv30EA== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-logical-assignment-operators@^7.8.3": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz#ca91ef46303530448b906652bac2e9fe9941f699" + integrity sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2baFIoMr952hKOLp1HR7VszoZvOsV/4+RRszNY7D17ba0te0ig== + dependencies: + "@babel/helper-plugin-utils" "^7.10.4" + +"@babel/plugin-syntax-nullish-coalescing-operator@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz#167ed70368886081f74b5c36c65a88c03b66d1a9" + integrity sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwpwtfFleiQDMdzA/R+UlWDzfnHFCxxleFT0PMIrR36XLNQ== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-numeric-separator@^7.8.3": + version "7.10.4" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz#b9b070b3e33570cd9fd07ba7fa91c0dd37b9af97" + integrity sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9AUw9EsSjPW8SVyMJwYRtWs3X3ug== + dependencies: + "@babel/helper-plugin-utils" "^7.10.4" + +"@babel/plugin-syntax-object-rest-spread@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz#60e225edcbd98a640332a2e72dd3e66f1af55871" + integrity sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm8rWM48orGy5YpI5Bl8U1y7ydlA== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-optional-catch-binding@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz#6111a265bcfb020eb9efd0fdfd7d26402b9ed6c1" + integrity sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZlwN3NNPQjehA2E/91FV3RjLWoVTglWcSV3Q== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-optional-chaining@^7.8.3": + version "7.8.3" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz#4f69c2ab95167e0180cd5336613f8c5788f7d48a" + integrity sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPrkxRwuGdtCk0v/wPTKbQgBjkg== + dependencies: + "@babel/helper-plugin-utils" "^7.8.0" + +"@babel/plugin-syntax-top-level-await@^7.8.3": + version "7.14.5" + resolved "https://registry.yarnpkg.com/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz#c1cfdadc35a646240001f06138247b741c34d94c" + integrity sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OFkBaHkbTAKTnd3/YyESRHFw== + dependencies: + "@babel/helper-plugin-utils" "^7.14.5" + "@babel/runtime@^7.1.2": version "7.16.3" resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.16.3.tgz#b86f0db02a04187a3c17caa77de69840165d42d5" @@ -37,6 +272,43 @@ dependencies: regenerator-runtime "^0.13.4" +"@babel/template@^7.16.0", "@babel/template@^7.3.3": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.16.0.tgz#d16a35ebf4cd74e202083356fab21dd89363ddd6" + integrity sha512-MnZdpFD/ZdYhXwiunMqqgyZyucaYsbL0IrjoGjaVhGilz+x8YB++kRfygSOIj1yOtWKPlx7NBp+9I1RQSgsd5A== + dependencies: + "@babel/code-frame" "^7.16.0" + "@babel/parser" "^7.16.0" + "@babel/types" "^7.16.0" + +"@babel/traverse@^7.1.0", "@babel/traverse@^7.16.0", "@babel/traverse@^7.16.3": + version "7.16.3" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.16.3.tgz#f63e8a938cc1b780f66d9ed3c54f532ca2d14787" + integrity sha512-eolumr1vVMjqevCpwVO99yN/LoGL0EyHiLO5I043aYQvwOJ9eR5UsZSClHVCzfhBduMAsSzgA/6AyqPjNayJag== + dependencies: + "@babel/code-frame" "^7.16.0" + "@babel/generator" "^7.16.0" + "@babel/helper-function-name" "^7.16.0" + "@babel/helper-hoist-variables" "^7.16.0" + "@babel/helper-split-export-declaration" "^7.16.0" + "@babel/parser" "^7.16.3" + "@babel/types" "^7.16.0" + debug "^4.1.0" + globals "^11.1.0" + +"@babel/types@^7.0.0", "@babel/types@^7.16.0", "@babel/types@^7.3.0", "@babel/types@^7.3.3": + version "7.16.0" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.16.0.tgz#db3b313804f96aadd0b776c4823e127ad67289ba" + integrity sha512-PJgg/k3SdLsGb3hhisFvtLOw5ts113klrpLuIPtCJIU+BB24fqq6lf8RWqKJEjzqXR9AEH1rIb5XTqwBHB+kQg== + dependencies: + "@babel/helper-validator-identifier" "^7.15.7" + to-fast-properties "^2.0.0" + +"@bcoe/v8-coverage@^0.2.3": + version "0.2.3" + resolved "https://registry.yarnpkg.com/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz#75a2e8b51cb758a7553d6804a5932d7aace75c39" + integrity sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw== + "@blueprintjs/colors@^4.0.0-alpha.1": version "4.0.0-alpha.1" resolved "https://registry.yarnpkg.com/@blueprintjs/colors/-/colors-4.0.0-alpha.1.tgz#370684b404e5400494169c54cc3a31385fc6db6a" @@ -77,6 +349,14 @@ classnames "^2.2" tslib "~1.13.0" +"@cnakazawa/watch@^1.0.3": + version "1.0.4" + resolved "https://registry.yarnpkg.com/@cnakazawa/watch/-/watch-1.0.4.tgz#f864ae85004d0fcab6f50be9141c4da368d1656a" + integrity sha512-v9kIhKwjeZThiWrLmj0y17CWoyddASLj9O2yvbZkbvw/N3rWOYy9zkV66ursAoVr0mV15bL8g0c4QZUE6cdDoQ== + dependencies: + exec-sh "^0.3.2" + minimist "^1.2.0" + "@discoveryjs/json-ext@^0.5.0": version "0.5.5" resolved "https://registry.yarnpkg.com/@discoveryjs/json-ext/-/json-ext-0.5.5.tgz#9283c9ce5b289a3c4f61c12757469e59377f81f3" @@ -97,6 +377,80 @@ minimatch "^3.0.4" strip-json-comments "^3.1.1" +"@evocateur/libnpmaccess@^3.1.2": + version "3.1.2" + resolved "https://registry.yarnpkg.com/@evocateur/libnpmaccess/-/libnpmaccess-3.1.2.tgz#ecf7f6ce6b004e9f942b098d92200be4a4b1c845" + integrity sha512-KSCAHwNWro0CF2ukxufCitT9K5LjL/KuMmNzSu8wuwN2rjyKHD8+cmOsiybK+W5hdnwc5M1SmRlVCaMHQo+3rg== + dependencies: + "@evocateur/npm-registry-fetch" "^4.0.0" + aproba "^2.0.0" + figgy-pudding "^3.5.1" + get-stream "^4.0.0" + npm-package-arg "^6.1.0" + +"@evocateur/libnpmpublish@^1.2.2": + version "1.2.2" + resolved "https://registry.yarnpkg.com/@evocateur/libnpmpublish/-/libnpmpublish-1.2.2.tgz#55df09d2dca136afba9c88c759ca272198db9f1a" + integrity sha512-MJrrk9ct1FeY9zRlyeoyMieBjGDG9ihyyD9/Ft6MMrTxql9NyoEx2hw9casTIP4CdqEVu+3nQ2nXxoJ8RCXyFg== + dependencies: + "@evocateur/npm-registry-fetch" "^4.0.0" + aproba "^2.0.0" + figgy-pudding "^3.5.1" + get-stream "^4.0.0" + lodash.clonedeep "^4.5.0" + normalize-package-data "^2.4.0" + npm-package-arg "^6.1.0" + semver "^5.5.1" + ssri "^6.0.1" + +"@evocateur/npm-registry-fetch@^4.0.0": + version "4.0.0" + resolved "https://registry.yarnpkg.com/@evocateur/npm-registry-fetch/-/npm-registry-fetch-4.0.0.tgz#8c4c38766d8d32d3200fcb0a83f064b57365ed66" + integrity sha512-k1WGfKRQyhJpIr+P17O5vLIo2ko1PFLKwoetatdduUSt/aQ4J2sJrJwwatdI5Z3SiYk/mRH9S3JpdmMFd/IK4g== + dependencies: + JSONStream "^1.3.4" + bluebird "^3.5.1" + figgy-pudding "^3.4.1" + lru-cache "^5.1.1" + make-fetch-happen "^5.0.0" + npm-package-arg "^6.1.0" + safe-buffer "^5.1.2" + +"@evocateur/pacote@^9.6.3": + version "9.6.5" + resolved "https://registry.yarnpkg.com/@evocateur/pacote/-/pacote-9.6.5.tgz#33de32ba210b6f17c20ebab4d497efc6755f4ae5" + integrity sha512-EI552lf0aG2nOV8NnZpTxNo2PcXKPmDbF9K8eCBFQdIZwHNGN/mi815fxtmUMa2wTa1yndotICIDt/V0vpEx2w== + dependencies: + "@evocateur/npm-registry-fetch" "^4.0.0" + bluebird "^3.5.3" + cacache "^12.0.3" + chownr "^1.1.2" + figgy-pudding "^3.5.1" + get-stream "^4.1.0" + glob "^7.1.4" + infer-owner "^1.0.4" + lru-cache "^5.1.1" + make-fetch-happen "^5.0.0" + minimatch "^3.0.4" + minipass "^2.3.5" + mississippi "^3.0.0" + mkdirp "^0.5.1" + normalize-package-data "^2.5.0" + npm-package-arg "^6.1.0" + npm-packlist "^1.4.4" + npm-pick-manifest "^3.0.0" + osenv "^0.1.5" + promise-inflight "^1.0.1" + promise-retry "^1.1.1" + protoduck "^5.0.1" + rimraf "^2.6.3" + safe-buffer "^5.2.0" + semver "^5.7.0" + ssri "^6.0.1" + tar "^4.4.10" + unique-filename "^1.1.1" + which "^1.3.1" + "@fortawesome/fontawesome-free@^5.12.0": version "5.15.4" resolved "https://registry.yarnpkg.com/@fortawesome/fontawesome-free/-/fontawesome-free-5.15.4.tgz#ecda5712b61ac852c760d8b3c79c96adca5554e5" @@ -121,11 +475,6 @@ resolved "https://registry.yarnpkg.com/@humanwhocodes/object-schema/-/object-schema-1.2.1.tgz#b520529ec21d8e5945a1851dfd1c32e94e39ff45" integrity sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA== -"@hutson/parse-repository-url@^3.0.0": - version "3.0.2" - resolved "https://registry.yarnpkg.com/@hutson/parse-repository-url/-/parse-repository-url-3.0.2.tgz#98c23c950a3d9b6c8f0daed06da6c3af06981340" - integrity sha512-H9XAx3hc0BQHY6l+IFSWHDySypcXsvsuLhgYLUGywmJ5pswRVQJUHpOsobnLYp2ZUaUlKiKDrgWWhosOwAEM8Q== - "@hypnosphi/create-react-context@^0.3.1": version "0.3.1" resolved "https://registry.yarnpkg.com/@hypnosphi/create-react-context/-/create-react-context-0.3.1.tgz#f8bfebdc7665f5d426cba3753e0e9c7d3154d7c6" @@ -134,7 +483,213 @@ gud "^1.0.0" warning "^4.0.3" -"@jupyterlab/application@^3.0.0", "@jupyterlab/application@^3.1.0", "@jupyterlab/application@^3.2.3": +"@istanbuljs/load-nyc-config@^1.0.0": + version "1.1.0" + resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced" + integrity sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ== + dependencies: + camelcase "^5.3.1" + find-up "^4.1.0" + get-package-type "^0.1.0" + js-yaml "^3.13.1" + resolve-from "^5.0.0" + +"@istanbuljs/schema@^0.1.2": + version "0.1.3" + resolved "https://registry.yarnpkg.com/@istanbuljs/schema/-/schema-0.1.3.tgz#e45e384e4b8ec16bce2fd903af78450f6bf7ec98" + integrity sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA== + +"@jest/console@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/console/-/console-26.6.2.tgz#4e04bc464014358b03ab4937805ee36a0aeb98f2" + integrity sha512-IY1R2i2aLsLr7Id3S6p2BA82GNWryt4oSvEXLAKc+L2zdi89dSkE8xC1C+0kpATG4JhBJREnQOH7/zmccM2B0g== + dependencies: + "@jest/types" "^26.6.2" + "@types/node" "*" + chalk "^4.0.0" + jest-message-util "^26.6.2" + jest-util "^26.6.2" + slash "^3.0.0" + +"@jest/core@^26.6.3": + version "26.6.3" + resolved "https://registry.yarnpkg.com/@jest/core/-/core-26.6.3.tgz#7639fcb3833d748a4656ada54bde193051e45fad" + integrity sha512-xvV1kKbhfUqFVuZ8Cyo+JPpipAHHAV3kcDBftiduK8EICXmTFddryy3P7NfZt8Pv37rA9nEJBKCCkglCPt/Xjw== + dependencies: + "@jest/console" "^26.6.2" + "@jest/reporters" "^26.6.2" + "@jest/test-result" "^26.6.2" + "@jest/transform" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + ansi-escapes "^4.2.1" + chalk "^4.0.0" + exit "^0.1.2" + graceful-fs "^4.2.4" + jest-changed-files "^26.6.2" + jest-config "^26.6.3" + jest-haste-map "^26.6.2" + jest-message-util "^26.6.2" + jest-regex-util "^26.0.0" + jest-resolve "^26.6.2" + jest-resolve-dependencies "^26.6.3" + jest-runner "^26.6.3" + jest-runtime "^26.6.3" + jest-snapshot "^26.6.2" + jest-util "^26.6.2" + jest-validate "^26.6.2" + jest-watcher "^26.6.2" + micromatch "^4.0.2" + p-each-series "^2.1.0" + rimraf "^3.0.0" + slash "^3.0.0" + strip-ansi "^6.0.0" + +"@jest/environment@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/environment/-/environment-26.6.2.tgz#ba364cc72e221e79cc8f0a99555bf5d7577cf92c" + integrity sha512-nFy+fHl28zUrRsCeMB61VDThV1pVTtlEokBRgqPrcT1JNq4yRNIyTHfyht6PqtUvY9IsuLGTrbG8kPXjSZIZwA== + dependencies: + "@jest/fake-timers" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + jest-mock "^26.6.2" + +"@jest/fake-timers@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/fake-timers/-/fake-timers-26.6.2.tgz#459c329bcf70cee4af4d7e3f3e67848123535aad" + integrity sha512-14Uleatt7jdzefLPYM3KLcnUl1ZNikaKq34enpb5XG9i81JpppDb5muZvonvKyrl7ftEHkKS5L5/eB/kxJ+bvA== + dependencies: + "@jest/types" "^26.6.2" + "@sinonjs/fake-timers" "^6.0.1" + "@types/node" "*" + jest-message-util "^26.6.2" + jest-mock "^26.6.2" + jest-util "^26.6.2" + +"@jest/globals@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/globals/-/globals-26.6.2.tgz#5b613b78a1aa2655ae908eba638cc96a20df720a" + integrity sha512-85Ltnm7HlB/KesBUuALwQ68YTU72w9H2xW9FjZ1eL1U3lhtefjjl5c2MiUbpXt/i6LaPRvoOFJ22yCBSfQ0JIA== + dependencies: + "@jest/environment" "^26.6.2" + "@jest/types" "^26.6.2" + expect "^26.6.2" + +"@jest/reporters@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/reporters/-/reporters-26.6.2.tgz#1f518b99637a5f18307bd3ecf9275f6882a667f6" + integrity sha512-h2bW53APG4HvkOnVMo8q3QXa6pcaNt1HkwVsOPMBV6LD/q9oSpxNSYZQYkAnjdMjrJ86UuYeLo+aEZClV6opnw== + dependencies: + "@bcoe/v8-coverage" "^0.2.3" + "@jest/console" "^26.6.2" + "@jest/test-result" "^26.6.2" + "@jest/transform" "^26.6.2" + "@jest/types" "^26.6.2" + chalk "^4.0.0" + collect-v8-coverage "^1.0.0" + exit "^0.1.2" + glob "^7.1.2" + graceful-fs "^4.2.4" + istanbul-lib-coverage "^3.0.0" + istanbul-lib-instrument "^4.0.3" + istanbul-lib-report "^3.0.0" + istanbul-lib-source-maps "^4.0.0" + istanbul-reports "^3.0.2" + jest-haste-map "^26.6.2" + jest-resolve "^26.6.2" + jest-util "^26.6.2" + jest-worker "^26.6.2" + slash "^3.0.0" + source-map "^0.6.0" + string-length "^4.0.1" + terminal-link "^2.0.0" + v8-to-istanbul "^7.0.0" + optionalDependencies: + node-notifier "^8.0.0" + +"@jest/source-map@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/source-map/-/source-map-26.6.2.tgz#29af5e1e2e324cafccc936f218309f54ab69d535" + integrity sha512-YwYcCwAnNmOVsZ8mr3GfnzdXDAl4LaenZP5z+G0c8bzC9/dugL8zRmxZzdoTl4IaS3CryS1uWnROLPFmb6lVvA== + dependencies: + callsites "^3.0.0" + graceful-fs "^4.2.4" + source-map "^0.6.0" + +"@jest/test-result@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/test-result/-/test-result-26.6.2.tgz#55da58b62df134576cc95476efa5f7949e3f5f18" + integrity sha512-5O7H5c/7YlojphYNrK02LlDIV2GNPYisKwHm2QTKjNZeEzezCbwYs9swJySv2UfPMyZ0VdsmMv7jIlD/IKYQpQ== + dependencies: + "@jest/console" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/istanbul-lib-coverage" "^2.0.0" + collect-v8-coverage "^1.0.0" + +"@jest/test-sequencer@^26.6.3": + version "26.6.3" + resolved "https://registry.yarnpkg.com/@jest/test-sequencer/-/test-sequencer-26.6.3.tgz#98e8a45100863886d074205e8ffdc5a7eb582b17" + integrity sha512-YHlVIjP5nfEyjlrSr8t/YdNfU/1XEt7c5b4OxcXCjyRhjzLYu/rO69/WHPuYcbCWkz8kAeZVZp2N2+IOLLEPGw== + dependencies: + "@jest/test-result" "^26.6.2" + graceful-fs "^4.2.4" + jest-haste-map "^26.6.2" + jest-runner "^26.6.3" + jest-runtime "^26.6.3" + +"@jest/transform@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/transform/-/transform-26.6.2.tgz#5ac57c5fa1ad17b2aae83e73e45813894dcf2e4b" + integrity sha512-E9JjhUgNzvuQ+vVAL21vlyfy12gP0GhazGgJC4h6qUt1jSdUXGWJ1wfu/X7Sd8etSgxV4ovT1pb9v5D6QW4XgA== + dependencies: + "@babel/core" "^7.1.0" + "@jest/types" "^26.6.2" + babel-plugin-istanbul "^6.0.0" + chalk "^4.0.0" + convert-source-map "^1.4.0" + fast-json-stable-stringify "^2.0.0" + graceful-fs "^4.2.4" + jest-haste-map "^26.6.2" + jest-regex-util "^26.0.0" + jest-util "^26.6.2" + micromatch "^4.0.2" + pirates "^4.0.1" + slash "^3.0.0" + source-map "^0.6.1" + write-file-atomic "^3.0.0" + +"@jest/types@^26.6.2": + version "26.6.2" + resolved "https://registry.yarnpkg.com/@jest/types/-/types-26.6.2.tgz#bef5a532030e1d88a2f5a6d933f84e97226ed48e" + integrity sha512-fC6QCp7Sc5sX6g8Tvbmj4XUTbyrik0akgRy03yjXbQaBWWNWGE7SGtJk98m0N8nzegD/7SggrUlivxo5ax4KWQ== + dependencies: + "@types/istanbul-lib-coverage" "^2.0.0" + "@types/istanbul-reports" "^3.0.0" + "@types/node" "*" + "@types/yargs" "^15.0.0" + chalk "^4.0.0" + +"@jupyterlab/application-extension@^3.2.0": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/application-extension/-/application-extension-3.2.3.tgz#8cb1a20dbd13928879cc874b50da154ad5a37b67" + integrity sha512-XlhkENcP9st/FD9LXre9EzTB3XyX6r2ohKCq95rktbQ0vlYYeYHpCxnd+a5lX+lzQ1OIhxZL1ouQ+B5bT8As6Q== + dependencies: + "@jupyterlab/application" "^3.2.3" + "@jupyterlab/apputils" "^3.2.3" + "@jupyterlab/coreutils" "^5.2.3" + "@jupyterlab/property-inspector" "^3.2.3" + "@jupyterlab/settingregistry" "^3.2.3" + "@jupyterlab/statedb" "^3.2.3" + "@jupyterlab/translation" "^3.2.3" + "@jupyterlab/ui-components" "^3.2.3" + "@lumino/algorithm" "^1.3.3" + "@lumino/coreutils" "^1.5.3" + "@lumino/disposable" "^1.4.3" + "@lumino/widgets" "^1.19.0" + react "^17.0.1" + +"@jupyterlab/application@^3.0.0", "@jupyterlab/application@^3.2.0", "@jupyterlab/application@^3.2.3": version "3.2.3" resolved "https://registry.yarnpkg.com/@jupyterlab/application/-/application-3.2.3.tgz#5a19de7a73fbde29c6adb994068193f7e6061b3b" integrity sha512-YcgxgRiYHOaUMbxevcUQn8QP0WN2JsCg4Q7Qtl1JOypLTsvoC66yqTzXcWsR/xtPUB4Ox0ka/EBGRHrH5aHA/g== @@ -160,7 +715,31 @@ "@lumino/signaling" "^1.4.3" "@lumino/widgets" "^1.19.0" -"@jupyterlab/apputils@^3.0.0", "@jupyterlab/apputils@^3.2.3": +"@jupyterlab/apputils-extension@^3.2.0": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/apputils-extension/-/apputils-extension-3.2.3.tgz#963cf69d3ef92e04a3dda41abb3d5aca4088ca1a" + integrity sha512-3IsyG9NCYW2wtDMZq0YTSXf0Phm1ISkrc390cdy0+eFwA7DxkTRSB74v1zAB4eGpPl76rpWX+tnfGJISoPNJdQ== + dependencies: + "@jupyterlab/application" "^3.2.3" + "@jupyterlab/apputils" "^3.2.3" + "@jupyterlab/coreutils" "^5.2.3" + "@jupyterlab/docregistry" "^3.2.3" + "@jupyterlab/filebrowser" "^3.2.3" + "@jupyterlab/mainmenu" "^3.2.3" + "@jupyterlab/services" "^6.2.3" + "@jupyterlab/settingregistry" "^3.2.3" + "@jupyterlab/statedb" "^3.2.3" + "@jupyterlab/translation" "^3.2.3" + "@jupyterlab/ui-components" "^3.2.3" + "@lumino/algorithm" "^1.3.3" + "@lumino/commands" "^1.12.0" + "@lumino/coreutils" "^1.5.3" + "@lumino/disposable" "^1.4.3" + "@lumino/polling" "^1.3.3" + "@lumino/widgets" "^1.19.0" + es6-promise "~4.2.8" + +"@jupyterlab/apputils@^3.0.0", "@jupyterlab/apputils@^3.2.0", "@jupyterlab/apputils@^3.2.3": version "3.2.3" resolved "https://registry.yarnpkg.com/@jupyterlab/apputils/-/apputils-3.2.3.tgz#e4732ab6058d492c9dda83452c32d9e6415d370b" integrity sha512-Mar07EgmCqS+Y1xPeAaUOZshEaLCNrIXilcBWyCGYfspvZv7W1ERGYsomy9ZMhlHmEaOcT1n4Y8T/iE6l/0gLQ== @@ -200,7 +779,7 @@ "@lumino/disposable" "^1.4.3" "@lumino/signaling" "^1.4.3" -"@jupyterlab/builder@^3.1.0": +"@jupyterlab/builder@^3.1.0", "@jupyterlab/builder@^3.2.0": version "3.2.3" resolved "https://registry.yarnpkg.com/@jupyterlab/builder/-/builder-3.2.3.tgz#0f44a40de7d0142a64749019783795df7107a641" integrity sha512-pIzNrmXLgkhKH9CH1tTxEMg6zO1RP2TAel6NVy8GPez6fLPVVpI1bKXn7uP1SjTJaEhAednwEjln+QMzR3revQ== @@ -241,7 +820,7 @@ webpack-merge "^5.1.2" worker-loader "^3.0.2" -"@jupyterlab/buildutils@^3.2.3": +"@jupyterlab/buildutils@^3.2.0", "@jupyterlab/buildutils@^3.2.3": version "3.2.3" resolved "https://registry.yarnpkg.com/@jupyterlab/buildutils/-/buildutils-3.2.3.tgz#608787ee2e736b67d28e804282d088d609f0efa8" integrity sha512-4mXEmPKsxja+1SLumcu1T9QYc+CiCQWUyjDsuGEAKBys56chnTrFERzR9XJrPXJTUnif5dzdyIIte0sptwD6Gw== @@ -312,7 +891,23 @@ "@lumino/signaling" "^1.4.3" "@lumino/widgets" "^1.19.0" -"@jupyterlab/codemirror@^3.0.0", "@jupyterlab/codemirror@^3.2.3": +"@jupyterlab/codemirror-extension@^3.2.0": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/codemirror-extension/-/codemirror-extension-3.2.3.tgz#ab46a5ae88639e0d1f32432f7973bdff1b192fea" + integrity sha512-mzVUZrU5d1Mz0d+44a/jSZMcaRf6vEcMVF9+6Dmke0TqRma9BRZUdcsIxmxVPty1EPQd/vAJhovZMOyKY2PSVA== + dependencies: + "@jupyterlab/application" "^3.2.3" + "@jupyterlab/codeeditor" "^3.2.3" + "@jupyterlab/codemirror" "^3.2.3" + "@jupyterlab/docregistry" "^3.2.3" + "@jupyterlab/fileeditor" "^3.2.3" + "@jupyterlab/mainmenu" "^3.2.3" + "@jupyterlab/settingregistry" "^3.2.3" + "@jupyterlab/statusbar" "^3.2.3" + "@jupyterlab/translation" "^3.2.3" + codemirror "~5.61.0" + +"@jupyterlab/codemirror@^3.0.0", "@jupyterlab/codemirror@^3.2.0", "@jupyterlab/codemirror@^3.2.3": version "3.2.3" resolved "https://registry.yarnpkg.com/@jupyterlab/codemirror/-/codemirror-3.2.3.tgz#ad0bcf887bfec2db1bafc80b8e459712512d10c3" integrity sha512-PwsxhPINXOW4naMkkQrAxwB/S9kZYEa/2fKetEpGcoI9zX691gxw8Am4fjBo94JBYftw7JG6pNpVcUovm0Q7ZQ== @@ -336,7 +931,7 @@ react "^17.0.1" y-codemirror "^3.0.0" -"@jupyterlab/coreutils@^5.0.0", "@jupyterlab/coreutils@^5.1.0", "@jupyterlab/coreutils@^5.2.3": +"@jupyterlab/coreutils@^5.0.0", "@jupyterlab/coreutils@^5.2.0", "@jupyterlab/coreutils@^5.2.3", "@jupyterlab/coreutils@~5.2.0": version "5.2.3" resolved "https://registry.yarnpkg.com/@jupyterlab/coreutils/-/coreutils-5.2.3.tgz#4b3e55f38d223b34140fb141acfe8884148f5f14" integrity sha512-NoxK4r8VPX1Z/Fe9q+00tGTeY73sywSS0s0HObZCp9a7OScamnpxonHZ5ptms1XXHtr93uLgwkfROpQNFOYF3w== @@ -349,7 +944,27 @@ path-browserify "^1.0.0" url-parse "~1.5.1" -"@jupyterlab/docmanager@^3.0.0", "@jupyterlab/docmanager@^3.2.3": +"@jupyterlab/docmanager-extension@^3.2.0": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/docmanager-extension/-/docmanager-extension-3.2.3.tgz#eb7d9e172ebd06ac4f055bb42d6f95a24025cd3b" + integrity sha512-YKcp1DuX23JMXdjM+k5LDTVhdxoGc3SEvJP/isDyGdhyRmYNMno6aGC0jvIQctgFJhzp6w3cxV0EBmqfnjkFfQ== + dependencies: + "@jupyterlab/application" "^3.2.3" + "@jupyterlab/apputils" "^3.2.3" + "@jupyterlab/coreutils" "^5.2.3" + "@jupyterlab/docmanager" "^3.2.3" + "@jupyterlab/docprovider" "^3.2.3" + "@jupyterlab/docregistry" "^3.2.3" + "@jupyterlab/services" "^6.2.3" + "@jupyterlab/settingregistry" "^3.2.3" + "@jupyterlab/statusbar" "^3.2.3" + "@jupyterlab/translation" "^3.2.3" + "@lumino/algorithm" "^1.3.3" + "@lumino/coreutils" "^1.5.3" + "@lumino/disposable" "^1.4.3" + "@lumino/widgets" "^1.19.0" + +"@jupyterlab/docmanager@^3.0.0", "@jupyterlab/docmanager@^3.2.0", "@jupyterlab/docmanager@^3.2.3": version "3.2.3" resolved "https://registry.yarnpkg.com/@jupyterlab/docmanager/-/docmanager-3.2.3.tgz#8d90313eca400d0a954487d66ed04bb50e8d3d67" integrity sha512-uMgqjxw8XEyYEKfkrgw30qxswRPKCtjOW32JjMCr3obZo2DLbN7AVqcYeQ5DEJCzogBdsPYBcavzm35OScLi1A== @@ -370,6 +985,16 @@ "@lumino/widgets" "^1.19.0" react "^17.0.1" +"@jupyterlab/docprovider-extension@^3.2.0": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/docprovider-extension/-/docprovider-extension-3.2.3.tgz#a267f404f22cf0a7bba2dd6186beed591043993c" + integrity sha512-1S+0lqBCW80zdkksTYimRmbOlhIGYkZWceytRVSGarYGdCbXJRahXU4so1lKAF4TCDpXFcih0GlBO1dxp86FnA== + dependencies: + "@jupyterlab/application" "^3.2.3" + "@jupyterlab/coreutils" "^5.2.3" + "@jupyterlab/docprovider" "^3.2.3" + "@jupyterlab/services" "^6.2.3" + "@jupyterlab/docprovider@^3.2.3": version "3.2.3" resolved "https://registry.yarnpkg.com/@jupyterlab/docprovider/-/docprovider-3.2.3.tgz#94c737bdc3eeb04541513bbf8ab70b172cd59c29" @@ -381,7 +1006,7 @@ y-websocket "^1.3.15" yjs "^13.5.17" -"@jupyterlab/docregistry@^3.0.0", "@jupyterlab/docregistry@^3.2.3": +"@jupyterlab/docregistry@^3.0.0", "@jupyterlab/docregistry@^3.2.0", "@jupyterlab/docregistry@^3.2.3": version "3.2.3" resolved "https://registry.yarnpkg.com/@jupyterlab/docregistry/-/docregistry-3.2.3.tgz#575dbf9cc4a97293bc1d9ae60263c32c8f3e4d74" integrity sha512-wHBetaMVGsw9+ryFDm9GyroveOsTL4HO5Entpjseqa/dDkbIjS9r3f5Q2+lONdmZaCMkBFAZmIZmR4c0bCi8qg== @@ -432,7 +1057,105 @@ "@lumino/widgets" "^1.19.0" react "^17.0.1" -"@jupyterlab/mathjax2@^3.0.0": +"@jupyterlab/fileeditor@^3.2.3": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/fileeditor/-/fileeditor-3.2.3.tgz#0fa8d2454fd9cb065b03e7f21f73bf860e042b6e" + integrity sha512-8v2wUIL2Pwa0JtDODxImaSBX5adKZ3AKuQRShdY1SifYgyi5ZLVjLuCwykYsl7mHMzBlXBu3oKmkX8hfhuVDwg== + dependencies: + "@jupyterlab/apputils" "^3.2.3" + "@jupyterlab/codeeditor" "^3.2.3" + "@jupyterlab/docregistry" "^3.2.3" + "@jupyterlab/statusbar" "^3.2.3" + "@jupyterlab/translation" "^3.2.3" + "@jupyterlab/ui-components" "^3.2.3" + "@lumino/coreutils" "^1.5.3" + "@lumino/messaging" "^1.4.3" + "@lumino/widgets" "^1.19.0" + react "^17.0.1" + +"@jupyterlab/javascript-extension@^3.2.0": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/javascript-extension/-/javascript-extension-3.2.3.tgz#b9c202dfd75f45361457147205dc85fc4147b126" + integrity sha512-eUrUxOClELonXQ+sAaZ01x9bWOQhZABnl1E+CbwFh0YpR84Z+BU0JEMT9zarJsLUK0EOweiniHs0qSsZaSRy7Q== + dependencies: + "@jupyterlab/rendermime" "^3.2.3" + "@jupyterlab/rendermime-interfaces" "^3.2.3" + +"@jupyterlab/json-extension@^3.2.0": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/json-extension/-/json-extension-3.2.3.tgz#b78d8fc6b710193ad30bf5e6967d7d8f17f2bf62" + integrity sha512-CXWutgyyT/C57VCgU+IDSkk4nWudjdddDhQzdSJ+yT+66h1kDmcvfGaj5tFUSjsq3qxE8XXwO9GGz5BPNuCgzw== + dependencies: + "@jupyterlab/apputils" "^3.2.3" + "@jupyterlab/rendermime-interfaces" "^3.2.3" + "@jupyterlab/translation" "^3.2.3" + "@jupyterlab/ui-components" "^3.2.3" + "@lumino/coreutils" "^1.5.3" + "@lumino/messaging" "^1.4.3" + "@lumino/widgets" "^1.19.0" + react "^17.0.1" + react-dom "^17.0.1" + react-highlighter "^0.4.3" + react-json-tree "^0.15.0" + +"@jupyterlab/launcher@^3.2.3": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/launcher/-/launcher-3.2.3.tgz#de9e4993741ca4367980bf18237d3519c5640519" + integrity sha512-OO/NxxO0bDBn0MfwFkSh1XoyCANnhawCnvObOGsEUX/dFUjo8L5XPt+OZFbOniMoJmGNyRLbMV4Kw7JyFF/dzg== + dependencies: + "@jupyterlab/apputils" "^3.2.3" + "@jupyterlab/translation" "^3.2.3" + "@jupyterlab/ui-components" "^3.2.3" + "@lumino/algorithm" "^1.3.3" + "@lumino/commands" "^1.12.0" + "@lumino/coreutils" "^1.5.3" + "@lumino/disposable" "^1.4.3" + "@lumino/properties" "^1.2.3" + "@lumino/widgets" "^1.19.0" + react "^17.0.1" + +"@jupyterlab/logconsole@^3.2.3": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/logconsole/-/logconsole-3.2.3.tgz#fd9d14ec1102bcb97b01f768cdedf1a5bf7f5239" + integrity sha512-iSP2S/UJhfl08S/MHZxbZa+r6lFfZhkl6fm8Xo5jgYw/dD7RRfsmXTyHrv4U5Rz4hTjKW9s8emjZ7GAMFDq3xQ== + dependencies: + "@jupyterlab/coreutils" "^5.2.3" + "@jupyterlab/nbformat" "^3.2.3" + "@jupyterlab/outputarea" "^3.2.3" + "@jupyterlab/rendermime" "^3.2.3" + "@jupyterlab/services" "^6.2.3" + "@jupyterlab/translation" "^3.2.3" + "@lumino/coreutils" "^1.5.3" + "@lumino/disposable" "^1.4.3" + "@lumino/messaging" "^1.4.3" + "@lumino/signaling" "^1.4.3" + "@lumino/widgets" "^1.19.0" + +"@jupyterlab/mainmenu@^3.2.3": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/mainmenu/-/mainmenu-3.2.3.tgz#621eb93ad2131332cd531a6f4fb95389ee82aca8" + integrity sha512-OvbqhnX2OVabSoQAwlhar63EwTsLT5MkwGnlHXpuLTk58Ihrb1QNnzvI8Nhoau7OnGazsJNjevD7taviyY2nNw== + dependencies: + "@jupyterlab/apputils" "^3.2.3" + "@jupyterlab/services" "^6.2.3" + "@jupyterlab/translation" "^3.2.3" + "@jupyterlab/ui-components" "^3.2.3" + "@lumino/algorithm" "^1.3.3" + "@lumino/commands" "^1.12.0" + "@lumino/coreutils" "^1.5.3" + "@lumino/widgets" "^1.19.0" + +"@jupyterlab/mathjax2-extension@^3.2.0": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/mathjax2-extension/-/mathjax2-extension-3.2.3.tgz#2a5a5d9a506fe16d43ec877e8f4c35ab6666dd1a" + integrity sha512-KlAu90Hqo1C3R19cEfsziWwLLHOlG/A+ybvzsP88rWaSR6jr+5pXJdKHp74pbixYJuRAIXUt0qScPuKHxvFPWQ== + dependencies: + "@jupyterlab/application" "^3.2.3" + "@jupyterlab/coreutils" "^5.2.3" + "@jupyterlab/mathjax2" "^3.2.3" + "@jupyterlab/rendermime" "^3.2.3" + +"@jupyterlab/mathjax2@^3.0.0", "@jupyterlab/mathjax2@^3.2.0", "@jupyterlab/mathjax2@^3.2.3": version "3.2.3" resolved "https://registry.yarnpkg.com/@jupyterlab/mathjax2/-/mathjax2-3.2.3.tgz#6bf1e2b661ea44fee97c0c2a228fbd999d08ef34" integrity sha512-ZFiLyMK6al6KJCqm0MYSqk3TuYZ/qymEvHzhSEhx/qY7F+JBOoc/ndD71vO7UMfJYKgs52bKthQ3zNz7J0VKoA== @@ -447,7 +1170,40 @@ dependencies: "@lumino/coreutils" "^1.5.3" -"@jupyterlab/notebook@^3.0.0": +"@jupyterlab/notebook-extension@^3.2.0": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/notebook-extension/-/notebook-extension-3.2.3.tgz#5a7434e648148fad3a66074ea71ad9660140e2e8" + integrity sha512-HiTG6gnyDuNc88UsqU8S2h6q5W9oAsIWOAxwHVJeW3BjdC1d7dWydJWjRg8ss7vPcIcQeJJTE4h8oMwbdRZfpA== + dependencies: + "@jupyterlab/application" "^3.2.3" + "@jupyterlab/apputils" "^3.2.3" + "@jupyterlab/cells" "^3.2.3" + "@jupyterlab/codeeditor" "^3.2.3" + "@jupyterlab/coreutils" "^5.2.3" + "@jupyterlab/docmanager" "^3.2.3" + "@jupyterlab/filebrowser" "^3.2.3" + "@jupyterlab/launcher" "^3.2.3" + "@jupyterlab/logconsole" "^3.2.3" + "@jupyterlab/mainmenu" "^3.2.3" + "@jupyterlab/nbformat" "^3.2.3" + "@jupyterlab/notebook" "^3.2.3" + "@jupyterlab/observables" "^4.2.3" + "@jupyterlab/property-inspector" "^3.2.3" + "@jupyterlab/rendermime" "^3.2.3" + "@jupyterlab/services" "^6.2.3" + "@jupyterlab/settingregistry" "^3.2.3" + "@jupyterlab/statedb" "^3.2.3" + "@jupyterlab/statusbar" "^3.2.3" + "@jupyterlab/translation" "^3.2.3" + "@jupyterlab/ui-components" "^3.2.3" + "@lumino/algorithm" "^1.3.3" + "@lumino/commands" "^1.12.0" + "@lumino/coreutils" "^1.5.3" + "@lumino/disposable" "^1.4.3" + "@lumino/messaging" "^1.4.3" + "@lumino/widgets" "^1.19.0" + +"@jupyterlab/notebook@^3.0.0", "@jupyterlab/notebook@^3.2.0", "@jupyterlab/notebook@^3.2.3": version "3.2.3" resolved "https://registry.yarnpkg.com/@jupyterlab/notebook/-/notebook-3.2.3.tgz#06f9fd64f7a6f290064734a00fd2c2ec0776bff8" integrity sha512-n9+/q72ev3at/M/e0X22HcxQ9amCdmOmRz8aFqNTTMcJ45/om4oMlkpGoVs0z4Y3gX3OXPCQ/mfuIiPKVXmEAA== @@ -507,6 +1263,41 @@ "@lumino/widgets" "^1.19.0" resize-observer-polyfill "^1.5.1" +"@jupyterlab/pdf-extension@^3.2.0": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/pdf-extension/-/pdf-extension-3.2.3.tgz#942a1b575eb9db45f4f83ab8c57881bc93761b6a" + integrity sha512-8TWur3SM84JibQVLQN3XHF6CP60Dy6sICE7XOHzYgYW/fhVy5MyGf6YamXywJ2s4dIyXyGQuTLak+jm1dYZs6Q== + dependencies: + "@jupyterlab/rendermime-interfaces" "^3.2.3" + "@lumino/coreutils" "^1.5.3" + "@lumino/disposable" "^1.4.3" + "@lumino/widgets" "^1.19.0" + +"@jupyterlab/property-inspector@^3.2.3": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/property-inspector/-/property-inspector-3.2.3.tgz#00522d386b43bebc9eab3e6380ff80673713f245" + integrity sha512-DZ5lXZr2jzdIMB1430Yv5XK+PNivGGX7Qyhtg9wy75Gq2/hPUd2kqwGqAPGUFyjyKOmCmV+9E2VA3YF5lvrahA== + dependencies: + "@jupyterlab/application" "^3.2.3" + "@jupyterlab/apputils" "^3.2.3" + "@jupyterlab/translation" "^3.2.3" + "@lumino/coreutils" "^1.5.3" + "@lumino/disposable" "^1.4.3" + "@lumino/signaling" "^1.4.3" + "@lumino/widgets" "^1.19.0" + react "^17.0.1" + +"@jupyterlab/rendermime-extension@^3.2.0": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/rendermime-extension/-/rendermime-extension-3.2.3.tgz#9746d7a48389cd818d1e719a81208995148fbbba" + integrity sha512-vD08bH/ajV2bl2wZiPYHsiD+a/9BgSXRiVrAuBj5GniDpulgHgNPJD+0kcnmdO+SnzN6SOiRKXNHoUmNyROq5w== + dependencies: + "@jupyterlab/application" "^3.2.3" + "@jupyterlab/apputils" "^3.2.3" + "@jupyterlab/docmanager" "^3.2.3" + "@jupyterlab/rendermime" "^3.2.3" + "@jupyterlab/translation" "^3.2.3" + "@jupyterlab/rendermime-interfaces@^3.2.3": version "3.2.3" resolved "https://registry.yarnpkg.com/@jupyterlab/rendermime-interfaces/-/rendermime-interfaces-3.2.3.tgz#311bf1461470def3a7e930298e25de7fd71c867b" @@ -516,7 +1307,7 @@ "@lumino/coreutils" "^1.5.3" "@lumino/widgets" "^1.19.0" -"@jupyterlab/rendermime@^3.0.0", "@jupyterlab/rendermime@^3.2.3": +"@jupyterlab/rendermime@^3.0.0", "@jupyterlab/rendermime@^3.2.0", "@jupyterlab/rendermime@^3.2.3": version "3.2.3" resolved "https://registry.yarnpkg.com/@jupyterlab/rendermime/-/rendermime-3.2.3.tgz#6aea8d7c65248c4042081f6110fd67d885692eb1" integrity sha512-/pciOXHkU3HyhkJT8EuRQgWa6Cc248D41KH6IqyiLQv5DHi/wYWkXXBZhiVPX/gDkT1owf5Wr3i5h/NbMfozEw== @@ -537,7 +1328,7 @@ lodash.escape "^4.0.1" marked "^2.0.0" -"@jupyterlab/services@^6.0.0", "@jupyterlab/services@^6.1.0", "@jupyterlab/services@^6.2.3": +"@jupyterlab/services@^6.0.0", "@jupyterlab/services@^6.2.0", "@jupyterlab/services@^6.2.3": version "6.2.3" resolved "https://registry.yarnpkg.com/@jupyterlab/services/-/services-6.2.3.tgz#3ed5620d3129703bfbf6151953bcb8f9db52a6a4" integrity sha512-ckhZfBmveQzQnsGcf9Ka6A1Rr+Lj5PSzn6yHQktMdP8PXdTag4y3IIV/6MAtNAnuKrbArwUrHGiSmUtZD7lylA== @@ -580,6 +1371,18 @@ y-protocols "^1.0.5" yjs "^13.5.17" +"@jupyterlab/shortcuts-extension@^3.2.0": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/shortcuts-extension/-/shortcuts-extension-3.2.3.tgz#4c9e254c36cdfc70c1165edd1722142f26d5abdd" + integrity sha512-5sr3Fm2AGIMsrT7ZcUduwRJ9hF/kiO+hHhDCFalkwF76KCjAjZIyjh79cmgl6Ct6qfUZBGFViPXN8AuP9A4lIw== + dependencies: + "@jupyterlab/application" "^3.2.3" + "@jupyterlab/settingregistry" "^3.2.3" + "@jupyterlab/translation" "^3.2.3" + "@lumino/commands" "^1.12.0" + "@lumino/coreutils" "^1.5.3" + "@lumino/disposable" "^1.4.3" + "@jupyterlab/statedb@^3.2.3": version "3.2.3" resolved "https://registry.yarnpkg.com/@jupyterlab/statedb/-/statedb-3.2.3.tgz#abb1680e9af467f976c621a80c52c2ec832718a8" @@ -611,7 +1414,16 @@ react "^17.0.1" typestyle "^2.0.4" -"@jupyterlab/theme-light-extension@^3.0.0": +"@jupyterlab/theme-dark-extension@^3.2.0": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/theme-dark-extension/-/theme-dark-extension-3.2.3.tgz#bdaba6b5560033b162663b6f9318c18183cbe1b5" + integrity sha512-SxO4fxKmmf9ulG3oMb7rnZmmNohkbI6OmcM1+64g93WAIRtF05OTYal1SN+2XriHXC3w6AFNpVxXsRrlESN5Kw== + dependencies: + "@jupyterlab/application" "^3.2.3" + "@jupyterlab/apputils" "^3.2.3" + "@jupyterlab/translation" "^3.2.3" + +"@jupyterlab/theme-light-extension@^3.0.0", "@jupyterlab/theme-light-extension@^3.2.0": version "3.2.3" resolved "https://registry.yarnpkg.com/@jupyterlab/theme-light-extension/-/theme-light-extension-3.2.3.tgz#44796c436e045e90b49a67b03c1a664095d4f328" integrity sha512-qpxl+bu76ydQ+qz31GecpWOB6LFwEURmjo4i/sDuhdZ2dehBzctSpfpuJyGfhfsse5DFO/mFNwX/RkqdTlts8A== @@ -620,6 +1432,17 @@ "@jupyterlab/apputils" "^3.2.3" "@jupyterlab/translation" "^3.2.3" +"@jupyterlab/translation-extension@^3.2.0": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/translation-extension/-/translation-extension-3.2.3.tgz#e9f47e5249197ed1066e908708d23d6251e03736" + integrity sha512-9PqobatAg0HMVl5g6WKf7Qkzi3U+O+3otym5HxGjSk4kWaohi8j53MvkGlFliftPgrQAU8C8DvDt2zW7UqIInA== + dependencies: + "@jupyterlab/application" "^3.2.3" + "@jupyterlab/apputils" "^3.2.3" + "@jupyterlab/mainmenu" "^3.2.3" + "@jupyterlab/settingregistry" "^3.2.3" + "@jupyterlab/translation" "^3.2.3" + "@jupyterlab/translation@^3.2.3": version "3.2.3" resolved "https://registry.yarnpkg.com/@jupyterlab/translation/-/translation-3.2.3.tgz#d50c97eb3c5dd9c4896b46158669f8fbc958d007" @@ -649,676 +1472,702 @@ react-dom "^17.0.1" typestyle "^2.0.4" -"@lerna/add@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/add/-/add-4.0.0.tgz#c36f57d132502a57b9e7058d1548b7a565ef183f" - integrity sha512-cpmAH1iS3k8JBxNvnMqrGTTjbY/ZAiKa1ChJzFevMYY3eeqbvhsBKnBcxjRXtdrJ6bd3dCQM+ZtK+0i682Fhng== - dependencies: - "@lerna/bootstrap" "4.0.0" - "@lerna/command" "4.0.0" - "@lerna/filter-options" "4.0.0" - "@lerna/npm-conf" "4.0.0" - "@lerna/validation-error" "4.0.0" +"@jupyterlab/vega5-extension@^3.2.0": + version "3.2.3" + resolved "https://registry.yarnpkg.com/@jupyterlab/vega5-extension/-/vega5-extension-3.2.3.tgz#78b1df2573a1a288a986e9ff563f50a9ccd55c5a" + integrity sha512-YNRNHOOLUgsfAyAOvK63x6q2U641/CF9RBYFhVoBdcFacVL56h9hS1PGYJTBoBmztIGP+UtGVa3cr2ycyjqpHQ== + dependencies: + "@jupyterlab/rendermime-interfaces" "^3.2.3" + "@lumino/coreutils" "^1.5.3" + "@lumino/widgets" "^1.19.0" + vega "^5.20.0" + vega-embed "^6.2.1" + vega-lite "^5.1.0" + +"@lerna/add@3.21.0": + version "3.21.0" + resolved "https://registry.yarnpkg.com/@lerna/add/-/add-3.21.0.tgz#27007bde71cc7b0a2969ab3c2f0ae41578b4577b" + integrity sha512-vhUXXF6SpufBE1EkNEXwz1VLW03f177G9uMOFMQkp6OJ30/PWg4Ekifuz9/3YfgB2/GH8Tu4Lk3O51P2Hskg/A== + dependencies: + "@evocateur/pacote" "^9.6.3" + "@lerna/bootstrap" "3.21.0" + "@lerna/command" "3.21.0" + "@lerna/filter-options" "3.20.0" + "@lerna/npm-conf" "3.16.0" + "@lerna/validation-error" "3.13.0" dedent "^0.7.0" - npm-package-arg "^8.1.0" - p-map "^4.0.0" - pacote "^11.2.6" - semver "^7.3.4" + npm-package-arg "^6.1.0" + p-map "^2.1.0" + semver "^6.2.0" -"@lerna/bootstrap@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/bootstrap/-/bootstrap-4.0.0.tgz#5f5c5e2c6cfc8fcec50cb2fbe569a8c607101891" - integrity sha512-RkS7UbeM2vu+kJnHzxNRCLvoOP9yGNgkzRdy4UV2hNalD7EP41bLvRVOwRYQ7fhc2QcbhnKNdOBihYRL0LcKtw== - dependencies: - "@lerna/command" "4.0.0" - "@lerna/filter-options" "4.0.0" - "@lerna/has-npm-version" "4.0.0" - "@lerna/npm-install" "4.0.0" - "@lerna/package-graph" "4.0.0" - "@lerna/pulse-till-done" "4.0.0" - "@lerna/rimraf-dir" "4.0.0" - "@lerna/run-lifecycle" "4.0.0" - "@lerna/run-topologically" "4.0.0" - "@lerna/symlink-binary" "4.0.0" - "@lerna/symlink-dependencies" "4.0.0" - "@lerna/validation-error" "4.0.0" +"@lerna/bootstrap@3.21.0": + version "3.21.0" + resolved "https://registry.yarnpkg.com/@lerna/bootstrap/-/bootstrap-3.21.0.tgz#bcd1b651be5b0970b20d8fae04c864548123aed6" + integrity sha512-mtNHlXpmvJn6JTu0KcuTTPl2jLsDNud0QacV/h++qsaKbhAaJr/FElNZ5s7MwZFUM3XaDmvWzHKaszeBMHIbBw== + dependencies: + "@lerna/command" "3.21.0" + "@lerna/filter-options" "3.20.0" + "@lerna/has-npm-version" "3.16.5" + "@lerna/npm-install" "3.16.5" + "@lerna/package-graph" "3.18.5" + "@lerna/pulse-till-done" "3.13.0" + "@lerna/rimraf-dir" "3.16.5" + "@lerna/run-lifecycle" "3.16.2" + "@lerna/run-topologically" "3.18.5" + "@lerna/symlink-binary" "3.17.0" + "@lerna/symlink-dependencies" "3.17.0" + "@lerna/validation-error" "3.13.0" dedent "^0.7.0" - get-port "^5.1.1" - multimatch "^5.0.0" - npm-package-arg "^8.1.0" + get-port "^4.2.0" + multimatch "^3.0.0" + npm-package-arg "^6.1.0" npmlog "^4.1.2" - p-map "^4.0.0" - p-map-series "^2.1.0" - p-waterfall "^2.1.1" - read-package-tree "^5.3.1" - semver "^7.3.4" - -"@lerna/changed@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/changed/-/changed-4.0.0.tgz#b9fc76cea39b9292a6cd263f03eb57af85c9270b" - integrity sha512-cD+KuPRp6qiPOD+BO6S6SN5cARspIaWSOqGBpGnYzLb4uWT8Vk4JzKyYtc8ym1DIwyoFXHosXt8+GDAgR8QrgQ== - dependencies: - "@lerna/collect-updates" "4.0.0" - "@lerna/command" "4.0.0" - "@lerna/listable" "4.0.0" - "@lerna/output" "4.0.0" - -"@lerna/check-working-tree@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/check-working-tree/-/check-working-tree-4.0.0.tgz#257e36a602c00142e76082a19358e3e1ae8dbd58" - integrity sha512-/++bxM43jYJCshBiKP5cRlCTwSJdRSxVmcDAXM+1oUewlZJVSVlnks5eO0uLxokVFvLhHlC5kHMc7gbVFPHv6Q== - dependencies: - "@lerna/collect-uncommitted" "4.0.0" - "@lerna/describe-ref" "4.0.0" - "@lerna/validation-error" "4.0.0" + p-finally "^1.0.0" + p-map "^2.1.0" + p-map-series "^1.0.0" + p-waterfall "^1.0.0" + read-package-tree "^5.1.6" + semver "^6.2.0" -"@lerna/child-process@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/child-process/-/child-process-4.0.0.tgz#341b96a57dffbd9705646d316e231df6fa4df6e1" - integrity sha512-XtCnmCT9eyVsUUHx6y/CTBYdV9g2Cr/VxyseTWBgfIur92/YKClfEtJTbOh94jRT62hlKLqSvux/UhxXVh613Q== +"@lerna/changed@3.21.0": + version "3.21.0" + resolved "https://registry.yarnpkg.com/@lerna/changed/-/changed-3.21.0.tgz#108e15f679bfe077af500f58248c634f1044ea0b" + integrity sha512-hzqoyf8MSHVjZp0gfJ7G8jaz+++mgXYiNs9iViQGA8JlN/dnWLI5sWDptEH3/B30Izo+fdVz0S0s7ydVE3pWIw== dependencies: - chalk "^4.1.0" - execa "^5.0.0" - strong-log-transformer "^2.1.0" - -"@lerna/clean@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/clean/-/clean-4.0.0.tgz#8f778b6f2617aa2a936a6b5e085ae62498e57dc5" - integrity sha512-uugG2iN9k45ITx2jtd8nEOoAtca8hNlDCUM0N3lFgU/b1mEQYAPRkqr1qs4FLRl/Y50ZJ41wUz1eazS+d/0osA== - dependencies: - "@lerna/command" "4.0.0" - "@lerna/filter-options" "4.0.0" - "@lerna/prompt" "4.0.0" - "@lerna/pulse-till-done" "4.0.0" - "@lerna/rimraf-dir" "4.0.0" - p-map "^4.0.0" - p-map-series "^2.1.0" - p-waterfall "^2.1.1" + "@lerna/collect-updates" "3.20.0" + "@lerna/command" "3.21.0" + "@lerna/listable" "3.18.5" + "@lerna/output" "3.13.0" -"@lerna/cli@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/cli/-/cli-4.0.0.tgz#8eabd334558836c1664df23f19acb95e98b5bbf3" - integrity sha512-Neaw3GzFrwZiRZv2g7g6NwFjs3er1vhraIniEs0jjVLPMNC4eata0na3GfE5yibkM/9d3gZdmihhZdZ3EBdvYA== +"@lerna/check-working-tree@3.16.5": + version "3.16.5" + resolved "https://registry.yarnpkg.com/@lerna/check-working-tree/-/check-working-tree-3.16.5.tgz#b4f8ae61bb4523561dfb9f8f8d874dd46bb44baa" + integrity sha512-xWjVBcuhvB8+UmCSb5tKVLB5OuzSpw96WEhS2uz6hkWVa/Euh1A0/HJwn2cemyK47wUrCQXtczBUiqnq9yX5VQ== + dependencies: + "@lerna/collect-uncommitted" "3.16.5" + "@lerna/describe-ref" "3.16.5" + "@lerna/validation-error" "3.13.0" + +"@lerna/child-process@3.16.5": + version "3.16.5" + resolved "https://registry.yarnpkg.com/@lerna/child-process/-/child-process-3.16.5.tgz#38fa3c18064aa4ac0754ad80114776a7b36a69b2" + integrity sha512-vdcI7mzei9ERRV4oO8Y1LHBZ3A5+ampRKg1wq5nutLsUA4mEBN6H7JqjWOMY9xZemv6+kATm2ofjJ3lW5TszQg== dependencies: - "@lerna/global-options" "4.0.0" + chalk "^2.3.1" + execa "^1.0.0" + strong-log-transformer "^2.0.0" + +"@lerna/clean@3.21.0": + version "3.21.0" + resolved "https://registry.yarnpkg.com/@lerna/clean/-/clean-3.21.0.tgz#c0b46b5300cc3dae2cda3bec14b803082da3856d" + integrity sha512-b/L9l+MDgE/7oGbrav6rG8RTQvRiZLO1zTcG17zgJAAuhlsPxJExMlh2DFwJEVi2les70vMhHfST3Ue1IMMjpg== + dependencies: + "@lerna/command" "3.21.0" + "@lerna/filter-options" "3.20.0" + "@lerna/prompt" "3.18.5" + "@lerna/pulse-till-done" "3.13.0" + "@lerna/rimraf-dir" "3.16.5" + p-map "^2.1.0" + p-map-series "^1.0.0" + p-waterfall "^1.0.0" + +"@lerna/cli@3.18.5": + version "3.18.5" + resolved "https://registry.yarnpkg.com/@lerna/cli/-/cli-3.18.5.tgz#c90c461542fcd35b6d5b015a290fb0dbfb41d242" + integrity sha512-erkbxkj9jfc89vVs/jBLY/fM0I80oLmJkFUV3Q3wk9J3miYhP14zgVEBsPZY68IZlEjT6T3Xlq2xO1AVaatHsA== + dependencies: + "@lerna/global-options" "3.13.0" dedent "^0.7.0" npmlog "^4.1.2" - yargs "^16.2.0" + yargs "^14.2.2" -"@lerna/collect-uncommitted@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/collect-uncommitted/-/collect-uncommitted-4.0.0.tgz#855cd64612969371cfc2453b90593053ff1ba779" - integrity sha512-ufSTfHZzbx69YNj7KXQ3o66V4RC76ffOjwLX0q/ab//61bObJ41n03SiQEhSlmpP+gmFbTJ3/7pTe04AHX9m/g== +"@lerna/collect-uncommitted@3.16.5": + version "3.16.5" + resolved "https://registry.yarnpkg.com/@lerna/collect-uncommitted/-/collect-uncommitted-3.16.5.tgz#a494d61aac31cdc7aec4bbe52c96550274132e63" + integrity sha512-ZgqnGwpDZiWyzIQVZtQaj9tRizsL4dUOhuOStWgTAw1EMe47cvAY2kL709DzxFhjr6JpJSjXV5rZEAeU3VE0Hg== dependencies: - "@lerna/child-process" "4.0.0" - chalk "^4.1.0" + "@lerna/child-process" "3.16.5" + chalk "^2.3.1" + figgy-pudding "^3.5.1" npmlog "^4.1.2" -"@lerna/collect-updates@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/collect-updates/-/collect-updates-4.0.0.tgz#8e208b1bafd98a372ff1177f7a5e288f6bea8041" - integrity sha512-bnNGpaj4zuxsEkyaCZLka9s7nMs58uZoxrRIPJ+nrmrZYp1V5rrd+7/NYTuunOhY2ug1sTBvTAxj3NZQ+JKnOw== +"@lerna/collect-updates@3.20.0": + version "3.20.0" + resolved "https://registry.yarnpkg.com/@lerna/collect-updates/-/collect-updates-3.20.0.tgz#62f9d76ba21a25b7d9fbf31c02de88744a564bd1" + integrity sha512-qBTVT5g4fupVhBFuY4nI/3FSJtQVcDh7/gEPOpRxoXB/yCSnT38MFHXWl+y4einLciCjt/+0x6/4AG80fjay2Q== dependencies: - "@lerna/child-process" "4.0.0" - "@lerna/describe-ref" "4.0.0" + "@lerna/child-process" "3.16.5" + "@lerna/describe-ref" "3.16.5" minimatch "^3.0.4" npmlog "^4.1.2" - slash "^3.0.0" + slash "^2.0.0" -"@lerna/command@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/command/-/command-4.0.0.tgz#991c7971df8f5bf6ae6e42c808869a55361c1b98" - integrity sha512-LM9g3rt5FsPNFqIHUeRwWXLNHJ5NKzOwmVKZ8anSp4e1SPrv2HNc1V02/9QyDDZK/w+5POXH5lxZUI1CHaOK/A== - dependencies: - "@lerna/child-process" "4.0.0" - "@lerna/package-graph" "4.0.0" - "@lerna/project" "4.0.0" - "@lerna/validation-error" "4.0.0" - "@lerna/write-log-file" "4.0.0" +"@lerna/command@3.21.0": + version "3.21.0" + resolved "https://registry.yarnpkg.com/@lerna/command/-/command-3.21.0.tgz#9a2383759dc7b700dacfa8a22b2f3a6e190121f7" + integrity sha512-T2bu6R8R3KkH5YoCKdutKv123iUgUbW8efVjdGCDnCMthAQzoentOJfDeodBwn0P2OqCl3ohsiNVtSn9h78fyQ== + dependencies: + "@lerna/child-process" "3.16.5" + "@lerna/package-graph" "3.18.5" + "@lerna/project" "3.21.0" + "@lerna/validation-error" "3.13.0" + "@lerna/write-log-file" "3.13.0" clone-deep "^4.0.1" dedent "^0.7.0" - execa "^5.0.0" + execa "^1.0.0" is-ci "^2.0.0" npmlog "^4.1.2" -"@lerna/conventional-commits@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/conventional-commits/-/conventional-commits-4.0.0.tgz#660fb2c7b718cb942ead70110df61f18c6f99750" - integrity sha512-CSUQRjJHFrH8eBn7+wegZLV3OrNc0Y1FehYfYGhjLE2SIfpCL4bmfu/ViYuHh9YjwHaA+4SX6d3hR+xkeseKmw== - dependencies: - "@lerna/validation-error" "4.0.0" - conventional-changelog-angular "^5.0.12" - conventional-changelog-core "^4.2.2" - conventional-recommended-bump "^6.1.0" - fs-extra "^9.1.0" - get-stream "^6.0.0" +"@lerna/conventional-commits@3.22.0": + version "3.22.0" + resolved "https://registry.yarnpkg.com/@lerna/conventional-commits/-/conventional-commits-3.22.0.tgz#2798f4881ee2ef457bdae027ab7d0bf0af6f1e09" + integrity sha512-z4ZZk1e8Mhz7+IS8NxHr64wyklHctCJyWpJKEZZPJiLFJ8yKto/x38O80R10pIzC0rr8Sy/OsjSH4bl0TbbgqA== + dependencies: + "@lerna/validation-error" "3.13.0" + conventional-changelog-angular "^5.0.3" + conventional-changelog-core "^3.1.6" + conventional-recommended-bump "^5.0.0" + fs-extra "^8.1.0" + get-stream "^4.0.0" lodash.template "^4.5.0" - npm-package-arg "^8.1.0" + npm-package-arg "^6.1.0" npmlog "^4.1.2" - pify "^5.0.0" - semver "^7.3.4" + pify "^4.0.1" + semver "^6.2.0" -"@lerna/create-symlink@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/create-symlink/-/create-symlink-4.0.0.tgz#8c5317ce5ae89f67825443bd7651bf4121786228" - integrity sha512-I0phtKJJdafUiDwm7BBlEUOtogmu8+taxq6PtIrxZbllV9hWg59qkpuIsiFp+no7nfRVuaasNYHwNUhDAVQBig== +"@lerna/create-symlink@3.16.2": + version "3.16.2" + resolved "https://registry.yarnpkg.com/@lerna/create-symlink/-/create-symlink-3.16.2.tgz#412cb8e59a72f5a7d9463e4e4721ad2070149967" + integrity sha512-pzXIJp6av15P325sgiIRpsPXLFmkisLhMBCy4764d+7yjf2bzrJ4gkWVMhsv4AdF0NN3OyZ5jjzzTtLNqfR+Jw== dependencies: - cmd-shim "^4.1.0" - fs-extra "^9.1.0" + "@zkochan/cmd-shim" "^3.1.0" + fs-extra "^8.1.0" npmlog "^4.1.2" -"@lerna/create@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/create/-/create-4.0.0.tgz#b6947e9b5dfb6530321952998948c3e63d64d730" - integrity sha512-mVOB1niKByEUfxlbKTM1UNECWAjwUdiioIbRQZEeEabtjCL69r9rscIsjlGyhGWCfsdAG5wfq4t47nlDXdLLag== - dependencies: - "@lerna/child-process" "4.0.0" - "@lerna/command" "4.0.0" - "@lerna/npm-conf" "4.0.0" - "@lerna/validation-error" "4.0.0" +"@lerna/create@3.22.0": + version "3.22.0" + resolved "https://registry.yarnpkg.com/@lerna/create/-/create-3.22.0.tgz#d6bbd037c3dc5b425fe5f6d1b817057c278f7619" + integrity sha512-MdiQQzCcB4E9fBF1TyMOaAEz9lUjIHp1Ju9H7f3lXze5JK6Fl5NYkouAvsLgY6YSIhXMY8AHW2zzXeBDY4yWkw== + dependencies: + "@evocateur/pacote" "^9.6.3" + "@lerna/child-process" "3.16.5" + "@lerna/command" "3.21.0" + "@lerna/npm-conf" "3.16.0" + "@lerna/validation-error" "3.13.0" + camelcase "^5.0.0" dedent "^0.7.0" - fs-extra "^9.1.0" - globby "^11.0.2" - init-package-json "^2.0.2" - npm-package-arg "^8.1.0" - p-reduce "^2.1.0" - pacote "^11.2.6" - pify "^5.0.0" - semver "^7.3.4" - slash "^3.0.0" - validate-npm-package-license "^3.0.4" + fs-extra "^8.1.0" + globby "^9.2.0" + init-package-json "^1.10.3" + npm-package-arg "^6.1.0" + p-reduce "^1.0.0" + pify "^4.0.1" + semver "^6.2.0" + slash "^2.0.0" + validate-npm-package-license "^3.0.3" validate-npm-package-name "^3.0.0" - whatwg-url "^8.4.0" - yargs-parser "20.2.4" + whatwg-url "^7.0.0" -"@lerna/describe-ref@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/describe-ref/-/describe-ref-4.0.0.tgz#53c53b4ea65fdceffa072a62bfebe6772c45d9ec" - integrity sha512-eTU5+xC4C5Gcgz+Ey4Qiw9nV2B4JJbMulsYJMW8QjGcGh8zudib7Sduj6urgZXUYNyhYpRs+teci9M2J8u+UvQ== +"@lerna/describe-ref@3.16.5": + version "3.16.5" + resolved "https://registry.yarnpkg.com/@lerna/describe-ref/-/describe-ref-3.16.5.tgz#a338c25aaed837d3dc70b8a72c447c5c66346ac0" + integrity sha512-c01+4gUF0saOOtDBzbLMFOTJDHTKbDFNErEY6q6i9QaXuzy9LNN62z+Hw4acAAZuJQhrVWncVathcmkkjvSVGw== dependencies: - "@lerna/child-process" "4.0.0" + "@lerna/child-process" "3.16.5" npmlog "^4.1.2" -"@lerna/diff@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/diff/-/diff-4.0.0.tgz#6d3071817aaa4205a07bf77cfc6e932796d48b92" - integrity sha512-jYPKprQVg41+MUMxx6cwtqsNm0Yxx9GDEwdiPLwcUTFx+/qKCEwifKNJ1oGIPBxyEHX2PFCOjkK39lHoj2qiag== +"@lerna/diff@3.21.0": + version "3.21.0" + resolved "https://registry.yarnpkg.com/@lerna/diff/-/diff-3.21.0.tgz#e6df0d8b9916167ff5a49fcb02ac06424280a68d" + integrity sha512-5viTR33QV3S7O+bjruo1SaR40m7F2aUHJaDAC7fL9Ca6xji+aw1KFkpCtVlISS0G8vikUREGMJh+c/VMSc8Usw== dependencies: - "@lerna/child-process" "4.0.0" - "@lerna/command" "4.0.0" - "@lerna/validation-error" "4.0.0" + "@lerna/child-process" "3.16.5" + "@lerna/command" "3.21.0" + "@lerna/validation-error" "3.13.0" npmlog "^4.1.2" -"@lerna/exec@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/exec/-/exec-4.0.0.tgz#eb6cb95cb92d42590e9e2d628fcaf4719d4a8be6" - integrity sha512-VGXtL/b/JfY84NB98VWZpIExfhLOzy0ozm/0XaS4a2SmkAJc5CeUfrhvHxxkxiTBLkU+iVQUyYEoAT0ulQ8PCw== - dependencies: - "@lerna/child-process" "4.0.0" - "@lerna/command" "4.0.0" - "@lerna/filter-options" "4.0.0" - "@lerna/profiler" "4.0.0" - "@lerna/run-topologically" "4.0.0" - "@lerna/validation-error" "4.0.0" - p-map "^4.0.0" - -"@lerna/filter-options@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/filter-options/-/filter-options-4.0.0.tgz#ac94cc515d7fa3b47e2f7d74deddeabb1de5e9e6" - integrity sha512-vV2ANOeZhOqM0rzXnYcFFCJ/kBWy/3OA58irXih9AMTAlQLymWAK0akWybl++sUJ4HB9Hx12TOqaXbYS2NM5uw== - dependencies: - "@lerna/collect-updates" "4.0.0" - "@lerna/filter-packages" "4.0.0" +"@lerna/exec@3.21.0": + version "3.21.0" + resolved "https://registry.yarnpkg.com/@lerna/exec/-/exec-3.21.0.tgz#17f07533893cb918a17b41bcc566dc437016db26" + integrity sha512-iLvDBrIE6rpdd4GIKTY9mkXyhwsJ2RvQdB9ZU+/NhR3okXfqKc6py/24tV111jqpXTtZUW6HNydT4dMao2hi1Q== + dependencies: + "@lerna/child-process" "3.16.5" + "@lerna/command" "3.21.0" + "@lerna/filter-options" "3.20.0" + "@lerna/profiler" "3.20.0" + "@lerna/run-topologically" "3.18.5" + "@lerna/validation-error" "3.13.0" + p-map "^2.1.0" + +"@lerna/filter-options@3.20.0": + version "3.20.0" + resolved "https://registry.yarnpkg.com/@lerna/filter-options/-/filter-options-3.20.0.tgz#0f0f5d5a4783856eece4204708cc902cbc8af59b" + integrity sha512-bmcHtvxn7SIl/R9gpiNMVG7yjx7WyT0HSGw34YVZ9B+3xF/83N3r5Rgtjh4hheLZ+Q91Or0Jyu5O3Nr+AwZe2g== + dependencies: + "@lerna/collect-updates" "3.20.0" + "@lerna/filter-packages" "3.18.0" dedent "^0.7.0" + figgy-pudding "^3.5.1" npmlog "^4.1.2" -"@lerna/filter-packages@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/filter-packages/-/filter-packages-4.0.0.tgz#b1f70d70e1de9cdd36a4e50caa0ac501f8d012f2" - integrity sha512-+4AJIkK7iIiOaqCiVTYJxh/I9qikk4XjNQLhE3kixaqgMuHl1NQ99qXRR0OZqAWB9mh8Z1HA9bM5K1HZLBTOqA== +"@lerna/filter-packages@3.18.0": + version "3.18.0" + resolved "https://registry.yarnpkg.com/@lerna/filter-packages/-/filter-packages-3.18.0.tgz#6a7a376d285208db03a82958cfb8172e179b4e70" + integrity sha512-6/0pMM04bCHNATIOkouuYmPg6KH3VkPCIgTfQmdkPJTullERyEQfNUKikrefjxo1vHOoCACDpy65JYyKiAbdwQ== dependencies: - "@lerna/validation-error" "4.0.0" - multimatch "^5.0.0" + "@lerna/validation-error" "3.13.0" + multimatch "^3.0.0" npmlog "^4.1.2" -"@lerna/get-npm-exec-opts@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/get-npm-exec-opts/-/get-npm-exec-opts-4.0.0.tgz#dc955be94a4ae75c374ef9bce91320887d34608f" - integrity sha512-yvmkerU31CTWS2c7DvmAWmZVeclPBqI7gPVr5VATUKNWJ/zmVcU4PqbYoLu92I9Qc4gY1TuUplMNdNuZTSL7IQ== +"@lerna/get-npm-exec-opts@3.13.0": + version "3.13.0" + resolved "https://registry.yarnpkg.com/@lerna/get-npm-exec-opts/-/get-npm-exec-opts-3.13.0.tgz#d1b552cb0088199fc3e7e126f914e39a08df9ea5" + integrity sha512-Y0xWL0rg3boVyJk6An/vurKzubyJKtrxYv2sj4bB8Mc5zZ3tqtv0ccbOkmkXKqbzvNNF7VeUt1OJ3DRgtC/QZw== dependencies: npmlog "^4.1.2" -"@lerna/get-packed@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/get-packed/-/get-packed-4.0.0.tgz#0989d61624ac1f97e393bdad2137c49cd7a37823" - integrity sha512-rfWONRsEIGyPJTxFzC8ECb3ZbsDXJbfqWYyeeQQDrJRPnEJErlltRLPLgC2QWbxFgFPsoDLeQmFHJnf0iDfd8w== +"@lerna/get-packed@3.16.0": + version "3.16.0" + resolved "https://registry.yarnpkg.com/@lerna/get-packed/-/get-packed-3.16.0.tgz#1b316b706dcee86c7baa55e50b087959447852ff" + integrity sha512-AjsFiaJzo1GCPnJUJZiTW6J1EihrPkc2y3nMu6m3uWFxoleklsSCyImumzVZJssxMi3CPpztj8LmADLedl9kXw== dependencies: - fs-extra "^9.1.0" - ssri "^8.0.1" - tar "^6.1.0" + fs-extra "^8.1.0" + ssri "^6.0.1" + tar "^4.4.8" -"@lerna/github-client@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/github-client/-/github-client-4.0.0.tgz#2ced67721363ef70f8e12ffafce4410918f4a8a4" - integrity sha512-2jhsldZtTKXYUBnOm23Lb0Fx8G4qfSXF9y7UpyUgWUj+YZYd+cFxSuorwQIgk5P4XXrtVhsUesIsli+BYSThiw== +"@lerna/github-client@3.22.0": + version "3.22.0" + resolved "https://registry.yarnpkg.com/@lerna/github-client/-/github-client-3.22.0.tgz#5d816aa4f76747ed736ae64ff962b8f15c354d95" + integrity sha512-O/GwPW+Gzr3Eb5bk+nTzTJ3uv+jh5jGho9BOqKlajXaOkMYGBELEAqV5+uARNGWZFvYAiF4PgqHb6aCUu7XdXg== dependencies: - "@lerna/child-process" "4.0.0" + "@lerna/child-process" "3.16.5" "@octokit/plugin-enterprise-rest" "^6.0.1" - "@octokit/rest" "^18.1.0" - git-url-parse "^11.4.4" + "@octokit/rest" "^16.28.4" + git-url-parse "^11.1.2" npmlog "^4.1.2" -"@lerna/gitlab-client@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/gitlab-client/-/gitlab-client-4.0.0.tgz#00dad73379c7b38951d4b4ded043504c14e2b67d" - integrity sha512-OMUpGSkeDWFf7BxGHlkbb35T7YHqVFCwBPSIR6wRsszY8PAzCYahtH3IaJzEJyUg6vmZsNl0FSr3pdA2skhxqA== +"@lerna/gitlab-client@3.15.0": + version "3.15.0" + resolved "https://registry.yarnpkg.com/@lerna/gitlab-client/-/gitlab-client-3.15.0.tgz#91f4ec8c697b5ac57f7f25bd50fe659d24aa96a6" + integrity sha512-OsBvRSejHXUBMgwWQqNoioB8sgzL/Pf1pOUhHKtkiMl6aAWjklaaq5HPMvTIsZPfS6DJ9L5OK2GGZuooP/5c8Q== dependencies: - node-fetch "^2.6.1" + node-fetch "^2.5.0" npmlog "^4.1.2" - whatwg-url "^8.4.0" + whatwg-url "^7.0.0" -"@lerna/global-options@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/global-options/-/global-options-4.0.0.tgz#c7d8b0de6a01d8a845e2621ea89e7f60f18c6a5f" - integrity sha512-TRMR8afAHxuYBHK7F++Ogop2a82xQjoGna1dvPOY6ltj/pEx59pdgcJfYcynYqMkFIk8bhLJJN9/ndIfX29FTQ== +"@lerna/global-options@3.13.0": + version "3.13.0" + resolved "https://registry.yarnpkg.com/@lerna/global-options/-/global-options-3.13.0.tgz#217662290db06ad9cf2c49d8e3100ee28eaebae1" + integrity sha512-SlZvh1gVRRzYLVluz9fryY1nJpZ0FHDGB66U9tFfvnnxmueckRQxLopn3tXj3NU1kc3QANT2I5BsQkOqZ4TEFQ== -"@lerna/has-npm-version@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/has-npm-version/-/has-npm-version-4.0.0.tgz#d3fc3292c545eb28bd493b36e6237cf0279f631c" - integrity sha512-LQ3U6XFH8ZmLCsvsgq1zNDqka0Xzjq5ibVN+igAI5ccRWNaUsE/OcmsyMr50xAtNQMYMzmpw5GVLAivT2/YzCg== +"@lerna/has-npm-version@3.16.5": + version "3.16.5" + resolved "https://registry.yarnpkg.com/@lerna/has-npm-version/-/has-npm-version-3.16.5.tgz#ab83956f211d8923ea6afe9b979b38cc73b15326" + integrity sha512-WL7LycR9bkftyqbYop5rEGJ9sRFIV55tSGmbN1HLrF9idwOCD7CLrT64t235t3t4O5gehDnwKI5h2U3oxTrF8Q== dependencies: - "@lerna/child-process" "4.0.0" - semver "^7.3.4" + "@lerna/child-process" "3.16.5" + semver "^6.2.0" -"@lerna/import@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/import/-/import-4.0.0.tgz#bde656c4a451fa87ae41733ff8a8da60547c5465" - integrity sha512-FaIhd+4aiBousKNqC7TX1Uhe97eNKf5/SC7c5WZANVWtC7aBWdmswwDt3usrzCNpj6/Wwr9EtEbYROzxKH8ffg== - dependencies: - "@lerna/child-process" "4.0.0" - "@lerna/command" "4.0.0" - "@lerna/prompt" "4.0.0" - "@lerna/pulse-till-done" "4.0.0" - "@lerna/validation-error" "4.0.0" +"@lerna/import@3.22.0": + version "3.22.0" + resolved "https://registry.yarnpkg.com/@lerna/import/-/import-3.22.0.tgz#1a5f0394f38e23c4f642a123e5e1517e70d068d2" + integrity sha512-uWOlexasM5XR6tXi4YehODtH9Y3OZrFht3mGUFFT3OIl2s+V85xIGFfqFGMTipMPAGb2oF1UBLL48kR43hRsOg== + dependencies: + "@lerna/child-process" "3.16.5" + "@lerna/command" "3.21.0" + "@lerna/prompt" "3.18.5" + "@lerna/pulse-till-done" "3.13.0" + "@lerna/validation-error" "3.13.0" dedent "^0.7.0" - fs-extra "^9.1.0" - p-map-series "^2.1.0" + fs-extra "^8.1.0" + p-map-series "^1.0.0" -"@lerna/info@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/info/-/info-4.0.0.tgz#b9fb0e479d60efe1623603958a831a88b1d7f1fc" - integrity sha512-8Uboa12kaCSZEn4XRfPz5KU9XXoexSPS4oeYGj76s2UQb1O1GdnEyfjyNWoUl1KlJ2i/8nxUskpXIftoFYH0/Q== +"@lerna/info@3.21.0": + version "3.21.0" + resolved "https://registry.yarnpkg.com/@lerna/info/-/info-3.21.0.tgz#76696b676fdb0f35d48c83c63c1e32bb5e37814f" + integrity sha512-0XDqGYVBgWxUquFaIptW2bYSIu6jOs1BtkvRTWDDhw4zyEdp6q4eaMvqdSap1CG+7wM5jeLCi6z94wS0AuiuwA== dependencies: - "@lerna/command" "4.0.0" - "@lerna/output" "4.0.0" - envinfo "^7.7.4" + "@lerna/command" "3.21.0" + "@lerna/output" "3.13.0" + envinfo "^7.3.1" -"@lerna/init@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/init/-/init-4.0.0.tgz#dadff67e6dfb981e8ccbe0e6a310e837962f6c7a" - integrity sha512-wY6kygop0BCXupzWj5eLvTUqdR7vIAm0OgyV9WHpMYQGfs1V22jhztt8mtjCloD/O0nEe4tJhdG62XU5aYmPNQ== +"@lerna/init@3.21.0": + version "3.21.0" + resolved "https://registry.yarnpkg.com/@lerna/init/-/init-3.21.0.tgz#1e810934dc8bf4e5386c031041881d3b4096aa5c" + integrity sha512-6CM0z+EFUkFfurwdJCR+LQQF6MqHbYDCBPyhu/d086LRf58GtYZYj49J8mKG9ktayp/TOIxL/pKKjgLD8QBPOg== dependencies: - "@lerna/child-process" "4.0.0" - "@lerna/command" "4.0.0" - fs-extra "^9.1.0" - p-map "^4.0.0" - write-json-file "^4.3.0" + "@lerna/child-process" "3.16.5" + "@lerna/command" "3.21.0" + fs-extra "^8.1.0" + p-map "^2.1.0" + write-json-file "^3.2.0" -"@lerna/link@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/link/-/link-4.0.0.tgz#c3a38aabd44279d714e90f2451e31b63f0fb65ba" - integrity sha512-KlvPi7XTAcVOByfaLlOeYOfkkDcd+bejpHMCd1KcArcFTwijOwXOVi24DYomIeHvy6HsX/IUquJ4PPUJIeB4+w== +"@lerna/link@3.21.0": + version "3.21.0" + resolved "https://registry.yarnpkg.com/@lerna/link/-/link-3.21.0.tgz#8be68ff0ccee104b174b5bbd606302c2f06e9d9b" + integrity sha512-tGu9GxrX7Ivs+Wl3w1+jrLi1nQ36kNI32dcOssij6bg0oZ2M2MDEFI9UF2gmoypTaN9uO5TSsjCFS7aR79HbdQ== dependencies: - "@lerna/command" "4.0.0" - "@lerna/package-graph" "4.0.0" - "@lerna/symlink-dependencies" "4.0.0" - p-map "^4.0.0" - slash "^3.0.0" + "@lerna/command" "3.21.0" + "@lerna/package-graph" "3.18.5" + "@lerna/symlink-dependencies" "3.17.0" + p-map "^2.1.0" + slash "^2.0.0" -"@lerna/list@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/list/-/list-4.0.0.tgz#24b4e6995bd73f81c556793fe502b847efd9d1d7" - integrity sha512-L2B5m3P+U4Bif5PultR4TI+KtW+SArwq1i75QZ78mRYxPc0U/piau1DbLOmwrdqr99wzM49t0Dlvl6twd7GHFg== +"@lerna/list@3.21.0": + version "3.21.0" + resolved "https://registry.yarnpkg.com/@lerna/list/-/list-3.21.0.tgz#42f76fafa56dea13b691ec8cab13832691d61da2" + integrity sha512-KehRjE83B1VaAbRRkRy6jLX1Cin8ltsrQ7FHf2bhwhRHK0S54YuA6LOoBnY/NtA8bHDX/Z+G5sMY78X30NS9tg== dependencies: - "@lerna/command" "4.0.0" - "@lerna/filter-options" "4.0.0" - "@lerna/listable" "4.0.0" - "@lerna/output" "4.0.0" + "@lerna/command" "3.21.0" + "@lerna/filter-options" "3.20.0" + "@lerna/listable" "3.18.5" + "@lerna/output" "3.13.0" -"@lerna/listable@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/listable/-/listable-4.0.0.tgz#d00d6cb4809b403f2b0374fc521a78e318b01214" - integrity sha512-/rPOSDKsOHs5/PBLINZOkRIX1joOXUXEtyUs5DHLM8q6/RP668x/1lFhw6Dx7/U+L0+tbkpGtZ1Yt0LewCLgeQ== +"@lerna/listable@3.18.5": + version "3.18.5" + resolved "https://registry.yarnpkg.com/@lerna/listable/-/listable-3.18.5.tgz#e82798405b5ed8fc51843c8ef1e7a0e497388a1a" + integrity sha512-Sdr3pVyaEv5A7ZkGGYR7zN+tTl2iDcinryBPvtuv20VJrXBE8wYcOks1edBTcOWsPjCE/rMP4bo1pseyk3UTsg== dependencies: - "@lerna/query-graph" "4.0.0" - chalk "^4.1.0" + "@lerna/query-graph" "3.18.5" + chalk "^2.3.1" columnify "^1.5.4" -"@lerna/log-packed@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/log-packed/-/log-packed-4.0.0.tgz#95168fe2e26ac6a71e42f4be857519b77e57a09f" - integrity sha512-+dpCiWbdzgMAtpajLToy9PO713IHoE6GV/aizXycAyA07QlqnkpaBNZ8DW84gHdM1j79TWockGJo9PybVhrrZQ== +"@lerna/log-packed@3.16.0": + version "3.16.0" + resolved "https://registry.yarnpkg.com/@lerna/log-packed/-/log-packed-3.16.0.tgz#f83991041ee77b2495634e14470b42259fd2bc16" + integrity sha512-Fp+McSNBV/P2mnLUYTaSlG8GSmpXM7krKWcllqElGxvAqv6chk2K3c2k80MeVB4WvJ9tRjUUf+i7HUTiQ9/ckQ== dependencies: - byte-size "^7.0.0" + byte-size "^5.0.1" columnify "^1.5.4" has-unicode "^2.0.1" npmlog "^4.1.2" -"@lerna/npm-conf@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/npm-conf/-/npm-conf-4.0.0.tgz#b259fd1e1cee2bf5402b236e770140ff9ade7fd2" - integrity sha512-uS7H02yQNq3oejgjxAxqq/jhwGEE0W0ntr8vM3EfpCW1F/wZruwQw+7bleJQ9vUBjmdXST//tk8mXzr5+JXCfw== +"@lerna/npm-conf@3.16.0": + version "3.16.0" + resolved "https://registry.yarnpkg.com/@lerna/npm-conf/-/npm-conf-3.16.0.tgz#1c10a89ae2f6c2ee96962557738685300d376827" + integrity sha512-HbO3DUrTkCAn2iQ9+FF/eisDpWY5POQAOF1m7q//CZjdC2HSW3UYbKEGsSisFxSfaF9Z4jtrV+F/wX6qWs3CuA== dependencies: - config-chain "^1.1.12" - pify "^5.0.0" + config-chain "^1.1.11" + pify "^4.0.1" -"@lerna/npm-dist-tag@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/npm-dist-tag/-/npm-dist-tag-4.0.0.tgz#d1e99b4eccd3414142f0548ad331bf2d53f3257a" - integrity sha512-F20sg28FMYTgXqEQihgoqSfwmq+Id3zT23CnOwD+XQMPSy9IzyLf1fFVH319vXIw6NF6Pgs4JZN2Qty6/CQXGw== +"@lerna/npm-dist-tag@3.18.5": + version "3.18.5" + resolved "https://registry.yarnpkg.com/@lerna/npm-dist-tag/-/npm-dist-tag-3.18.5.tgz#9ef9abb7c104077b31f6fab22cc73b314d54ac55" + integrity sha512-xw0HDoIG6HreVsJND9/dGls1c+lf6vhu7yJoo56Sz5bvncTloYGLUppIfDHQr4ZvmPCK8rsh0euCVh2giPxzKQ== dependencies: - "@lerna/otplease" "4.0.0" - npm-package-arg "^8.1.0" - npm-registry-fetch "^9.0.0" + "@evocateur/npm-registry-fetch" "^4.0.0" + "@lerna/otplease" "3.18.5" + figgy-pudding "^3.5.1" + npm-package-arg "^6.1.0" npmlog "^4.1.2" -"@lerna/npm-install@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/npm-install/-/npm-install-4.0.0.tgz#31180be3ab3b7d1818a1a0c206aec156b7094c78" - integrity sha512-aKNxq2j3bCH3eXl3Fmu4D54s/YLL9WSwV8W7X2O25r98wzrO38AUN6AB9EtmAx+LV/SP15et7Yueg9vSaanRWg== +"@lerna/npm-install@3.16.5": + version "3.16.5" + resolved "https://registry.yarnpkg.com/@lerna/npm-install/-/npm-install-3.16.5.tgz#d6bfdc16f81285da66515ae47924d6e278d637d3" + integrity sha512-hfiKk8Eku6rB9uApqsalHHTHY+mOrrHeWEs+gtg7+meQZMTS3kzv4oVp5cBZigndQr3knTLjwthT/FX4KvseFg== dependencies: - "@lerna/child-process" "4.0.0" - "@lerna/get-npm-exec-opts" "4.0.0" - fs-extra "^9.1.0" - npm-package-arg "^8.1.0" + "@lerna/child-process" "3.16.5" + "@lerna/get-npm-exec-opts" "3.13.0" + fs-extra "^8.1.0" + npm-package-arg "^6.1.0" npmlog "^4.1.2" - signal-exit "^3.0.3" - write-pkg "^4.0.0" - -"@lerna/npm-publish@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/npm-publish/-/npm-publish-4.0.0.tgz#84eb62e876fe949ae1fd62c60804423dbc2c4472" - integrity sha512-vQb7yAPRo5G5r77DRjHITc9piR9gvEKWrmfCH7wkfBnGWEqu7n8/4bFQ7lhnkujvc8RXOsYpvbMQkNfkYibD/w== - dependencies: - "@lerna/otplease" "4.0.0" - "@lerna/run-lifecycle" "4.0.0" - fs-extra "^9.1.0" - libnpmpublish "^4.0.0" - npm-package-arg "^8.1.0" + signal-exit "^3.0.2" + write-pkg "^3.1.0" + +"@lerna/npm-publish@3.18.5": + version "3.18.5" + resolved "https://registry.yarnpkg.com/@lerna/npm-publish/-/npm-publish-3.18.5.tgz#240e4039959fd9816b49c5b07421e11b5cb000af" + integrity sha512-3etLT9+2L8JAx5F8uf7qp6iAtOLSMj+ZYWY6oUgozPi/uLqU0/gsMsEXh3F0+YVW33q0M61RpduBoAlOOZnaTg== + dependencies: + "@evocateur/libnpmpublish" "^1.2.2" + "@lerna/otplease" "3.18.5" + "@lerna/run-lifecycle" "3.16.2" + figgy-pudding "^3.5.1" + fs-extra "^8.1.0" + npm-package-arg "^6.1.0" npmlog "^4.1.2" - pify "^5.0.0" - read-package-json "^3.0.0" + pify "^4.0.1" + read-package-json "^2.0.13" -"@lerna/npm-run-script@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/npm-run-script/-/npm-run-script-4.0.0.tgz#dfebf4f4601442e7c0b5214f9fb0d96c9350743b" - integrity sha512-Jmyh9/IwXJjOXqKfIgtxi0bxi1pUeKe5bD3S81tkcy+kyng/GNj9WSqD5ZggoNP2NP//s4CLDAtUYLdP7CU9rA== +"@lerna/npm-run-script@3.16.5": + version "3.16.5" + resolved "https://registry.yarnpkg.com/@lerna/npm-run-script/-/npm-run-script-3.16.5.tgz#9c2ec82453a26c0b46edc0bb7c15816c821f5c15" + integrity sha512-1asRi+LjmVn3pMjEdpqKJZFT/3ZNpb+VVeJMwrJaV/3DivdNg7XlPK9LTrORuKU4PSvhdEZvJmSlxCKyDpiXsQ== dependencies: - "@lerna/child-process" "4.0.0" - "@lerna/get-npm-exec-opts" "4.0.0" + "@lerna/child-process" "3.16.5" + "@lerna/get-npm-exec-opts" "3.13.0" npmlog "^4.1.2" -"@lerna/otplease@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/otplease/-/otplease-4.0.0.tgz#84972eb43448f8a1077435ba1c5e59233b725850" - integrity sha512-Sgzbqdk1GH4psNiT6hk+BhjOfIr/5KhGBk86CEfHNJTk9BK4aZYyJD4lpDbDdMjIV4g03G7pYoqHzH765T4fxw== +"@lerna/otplease@3.18.5": + version "3.18.5" + resolved "https://registry.yarnpkg.com/@lerna/otplease/-/otplease-3.18.5.tgz#b77b8e760b40abad9f7658d988f3ea77d4fd0231" + integrity sha512-S+SldXAbcXTEDhzdxYLU0ZBKuYyURP/ND2/dK6IpKgLxQYh/z4ScljPDMyKymmEvgiEJmBsPZAAPfmNPEzxjog== dependencies: - "@lerna/prompt" "4.0.0" + "@lerna/prompt" "3.18.5" + figgy-pudding "^3.5.1" -"@lerna/output@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/output/-/output-4.0.0.tgz#b1d72215c0e35483e4f3e9994debc82c621851f2" - integrity sha512-Un1sHtO1AD7buDQrpnaYTi2EG6sLF+KOPEAMxeUYG5qG3khTs2Zgzq5WE3dt2N/bKh7naESt20JjIW6tBELP0w== +"@lerna/output@3.13.0": + version "3.13.0" + resolved "https://registry.yarnpkg.com/@lerna/output/-/output-3.13.0.tgz#3ded7cc908b27a9872228a630d950aedae7a4989" + integrity sha512-7ZnQ9nvUDu/WD+bNsypmPG5MwZBwu86iRoiW6C1WBuXXDxM5cnIAC1m2WxHeFnjyMrYlRXM9PzOQ9VDD+C15Rg== dependencies: npmlog "^4.1.2" -"@lerna/pack-directory@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/pack-directory/-/pack-directory-4.0.0.tgz#8b617db95d20792f043aaaa13a9ccc0e04cb4c74" - integrity sha512-NJrmZNmBHS+5aM+T8N6FVbaKFScVqKlQFJNY2k7nsJ/uklNKsLLl6VhTQBPwMTbf6Tf7l6bcKzpy7aePuq9UiQ== +"@lerna/pack-directory@3.16.4": + version "3.16.4" + resolved "https://registry.yarnpkg.com/@lerna/pack-directory/-/pack-directory-3.16.4.tgz#3eae5f91bdf5acfe0384510ed53faddc4c074693" + integrity sha512-uxSF0HZeGyKaaVHz5FroDY9A5NDDiCibrbYR6+khmrhZtY0Bgn6hWq8Gswl9iIlymA+VzCbshWIMX4o2O8C8ng== dependencies: - "@lerna/get-packed" "4.0.0" - "@lerna/package" "4.0.0" - "@lerna/run-lifecycle" "4.0.0" - npm-packlist "^2.1.4" + "@lerna/get-packed" "3.16.0" + "@lerna/package" "3.16.0" + "@lerna/run-lifecycle" "3.16.2" + figgy-pudding "^3.5.1" + npm-packlist "^1.4.4" npmlog "^4.1.2" - tar "^6.1.0" - temp-write "^4.0.0" + tar "^4.4.10" + temp-write "^3.4.0" -"@lerna/package-graph@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/package-graph/-/package-graph-4.0.0.tgz#16a00253a8ac810f72041481cb46bcee8d8123dd" - integrity sha512-QED2ZCTkfXMKFoTGoccwUzjHtZMSf3UKX14A4/kYyBms9xfFsesCZ6SLI5YeySEgcul8iuIWfQFZqRw+Qrjraw== +"@lerna/package-graph@3.18.5": + version "3.18.5" + resolved "https://registry.yarnpkg.com/@lerna/package-graph/-/package-graph-3.18.5.tgz#c740e2ea3578d059e551633e950690831b941f6b" + integrity sha512-8QDrR9T+dBegjeLr+n9WZTVxUYUhIUjUgZ0gvNxUBN8S1WB9r6H5Yk56/MVaB64tA3oGAN9IIxX6w0WvTfFudA== dependencies: - "@lerna/prerelease-id-from-version" "4.0.0" - "@lerna/validation-error" "4.0.0" - npm-package-arg "^8.1.0" + "@lerna/prerelease-id-from-version" "3.16.0" + "@lerna/validation-error" "3.13.0" + npm-package-arg "^6.1.0" npmlog "^4.1.2" - semver "^7.3.4" + semver "^6.2.0" -"@lerna/package@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/package/-/package-4.0.0.tgz#1b4c259c4bcff45c876ee1d591a043aacbc0d6b7" - integrity sha512-l0M/izok6FlyyitxiQKr+gZLVFnvxRQdNhzmQ6nRnN9dvBJWn+IxxpM+cLqGACatTnyo9LDzNTOj2Db3+s0s8Q== +"@lerna/package@3.16.0": + version "3.16.0" + resolved "https://registry.yarnpkg.com/@lerna/package/-/package-3.16.0.tgz#7e0a46e4697ed8b8a9c14d59c7f890e0d38ba13c" + integrity sha512-2lHBWpaxcBoiNVbtyLtPUuTYEaB/Z+eEqRS9duxpZs6D+mTTZMNy6/5vpEVSCBmzvdYpyqhqaYjjSLvjjr5Riw== dependencies: - load-json-file "^6.2.0" - npm-package-arg "^8.1.0" - write-pkg "^4.0.0" + load-json-file "^5.3.0" + npm-package-arg "^6.1.0" + write-pkg "^3.1.0" -"@lerna/prerelease-id-from-version@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/prerelease-id-from-version/-/prerelease-id-from-version-4.0.0.tgz#c7e0676fcee1950d85630e108eddecdd5b48c916" - integrity sha512-GQqguzETdsYRxOSmdFZ6zDBXDErIETWOqomLERRY54f4p+tk4aJjoVdd9xKwehC9TBfIFvlRbL1V9uQGHh1opg== +"@lerna/prerelease-id-from-version@3.16.0": + version "3.16.0" + resolved "https://registry.yarnpkg.com/@lerna/prerelease-id-from-version/-/prerelease-id-from-version-3.16.0.tgz#b24bfa789f5e1baab914d7b08baae9b7bd7d83a1" + integrity sha512-qZyeUyrE59uOK8rKdGn7jQz+9uOpAaF/3hbslJVFL1NqF9ELDTqjCPXivuejMX/lN4OgD6BugTO4cR7UTq/sZA== dependencies: - semver "^7.3.4" + semver "^6.2.0" -"@lerna/profiler@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/profiler/-/profiler-4.0.0.tgz#8a53ab874522eae15d178402bff90a14071908e9" - integrity sha512-/BaEbqnVh1LgW/+qz8wCuI+obzi5/vRE8nlhjPzdEzdmWmZXuCKyWSEzAyHOJWw1ntwMiww5dZHhFQABuoFz9Q== +"@lerna/profiler@3.20.0": + version "3.20.0" + resolved "https://registry.yarnpkg.com/@lerna/profiler/-/profiler-3.20.0.tgz#0f6dc236f4ea8f9ea5f358c6703305a4f32ad051" + integrity sha512-bh8hKxAlm6yu8WEOvbLENm42i2v9SsR4WbrCWSbsmOElx3foRnMlYk7NkGECa+U5c3K4C6GeBbwgqs54PP7Ljg== dependencies: - fs-extra "^9.1.0" + figgy-pudding "^3.5.1" + fs-extra "^8.1.0" npmlog "^4.1.2" - upath "^2.0.1" + upath "^1.2.0" -"@lerna/project@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/project/-/project-4.0.0.tgz#ff84893935833533a74deff30c0e64ddb7f0ba6b" - integrity sha512-o0MlVbDkD5qRPkFKlBZsXZjoNTWPyuL58564nSfZJ6JYNmgAptnWPB2dQlAc7HWRZkmnC2fCkEdoU+jioPavbg== +"@lerna/project@3.21.0": + version "3.21.0" + resolved "https://registry.yarnpkg.com/@lerna/project/-/project-3.21.0.tgz#5d784d2d10c561a00f20320bcdb040997c10502d" + integrity sha512-xT1mrpET2BF11CY32uypV2GPtPVm6Hgtha7D81GQP9iAitk9EccrdNjYGt5UBYASl4CIDXBRxwmTTVGfrCx82A== dependencies: - "@lerna/package" "4.0.0" - "@lerna/validation-error" "4.0.0" - cosmiconfig "^7.0.0" + "@lerna/package" "3.16.0" + "@lerna/validation-error" "3.13.0" + cosmiconfig "^5.1.0" dedent "^0.7.0" - dot-prop "^6.0.1" - glob-parent "^5.1.1" - globby "^11.0.2" - load-json-file "^6.2.0" + dot-prop "^4.2.0" + glob-parent "^5.0.0" + globby "^9.2.0" + load-json-file "^5.3.0" npmlog "^4.1.2" - p-map "^4.0.0" - resolve-from "^5.0.0" - write-json-file "^4.3.0" + p-map "^2.1.0" + resolve-from "^4.0.0" + write-json-file "^3.2.0" -"@lerna/prompt@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/prompt/-/prompt-4.0.0.tgz#5ec69a803f3f0db0ad9f221dad64664d3daca41b" - integrity sha512-4Ig46oCH1TH5M7YyTt53fT6TuaKMgqUUaqdgxvp6HP6jtdak6+amcsqB8YGz2eQnw/sdxunx84DfI9XpoLj4bQ== +"@lerna/prompt@3.18.5": + version "3.18.5" + resolved "https://registry.yarnpkg.com/@lerna/prompt/-/prompt-3.18.5.tgz#628cd545f225887d060491ab95df899cfc5218a1" + integrity sha512-rkKj4nm1twSbBEb69+Em/2jAERK8htUuV8/xSjN0NPC+6UjzAwY52/x9n5cfmpa9lyKf/uItp7chCI7eDmNTKQ== dependencies: - inquirer "^7.3.3" + inquirer "^6.2.0" npmlog "^4.1.2" -"@lerna/publish@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/publish/-/publish-4.0.0.tgz#f67011305adeba120066a3b6d984a5bb5fceef65" - integrity sha512-K8jpqjHrChH22qtkytA5GRKIVFEtqBF6JWj1I8dWZtHs4Jywn8yB1jQ3BAMLhqmDJjWJtRck0KXhQQKzDK2UPg== - dependencies: - "@lerna/check-working-tree" "4.0.0" - "@lerna/child-process" "4.0.0" - "@lerna/collect-updates" "4.0.0" - "@lerna/command" "4.0.0" - "@lerna/describe-ref" "4.0.0" - "@lerna/log-packed" "4.0.0" - "@lerna/npm-conf" "4.0.0" - "@lerna/npm-dist-tag" "4.0.0" - "@lerna/npm-publish" "4.0.0" - "@lerna/otplease" "4.0.0" - "@lerna/output" "4.0.0" - "@lerna/pack-directory" "4.0.0" - "@lerna/prerelease-id-from-version" "4.0.0" - "@lerna/prompt" "4.0.0" - "@lerna/pulse-till-done" "4.0.0" - "@lerna/run-lifecycle" "4.0.0" - "@lerna/run-topologically" "4.0.0" - "@lerna/validation-error" "4.0.0" - "@lerna/version" "4.0.0" - fs-extra "^9.1.0" - libnpmaccess "^4.0.1" - npm-package-arg "^8.1.0" - npm-registry-fetch "^9.0.0" +"@lerna/publish@3.22.1": + version "3.22.1" + resolved "https://registry.yarnpkg.com/@lerna/publish/-/publish-3.22.1.tgz#b4f7ce3fba1e9afb28be4a1f3d88222269ba9519" + integrity sha512-PG9CM9HUYDreb1FbJwFg90TCBQooGjj+n/pb3gw/eH5mEDq0p8wKdLFe0qkiqUkm/Ub5C8DbVFertIo0Vd0zcw== + dependencies: + "@evocateur/libnpmaccess" "^3.1.2" + "@evocateur/npm-registry-fetch" "^4.0.0" + "@evocateur/pacote" "^9.6.3" + "@lerna/check-working-tree" "3.16.5" + "@lerna/child-process" "3.16.5" + "@lerna/collect-updates" "3.20.0" + "@lerna/command" "3.21.0" + "@lerna/describe-ref" "3.16.5" + "@lerna/log-packed" "3.16.0" + "@lerna/npm-conf" "3.16.0" + "@lerna/npm-dist-tag" "3.18.5" + "@lerna/npm-publish" "3.18.5" + "@lerna/otplease" "3.18.5" + "@lerna/output" "3.13.0" + "@lerna/pack-directory" "3.16.4" + "@lerna/prerelease-id-from-version" "3.16.0" + "@lerna/prompt" "3.18.5" + "@lerna/pulse-till-done" "3.13.0" + "@lerna/run-lifecycle" "3.16.2" + "@lerna/run-topologically" "3.18.5" + "@lerna/validation-error" "3.13.0" + "@lerna/version" "3.22.1" + figgy-pudding "^3.5.1" + fs-extra "^8.1.0" + npm-package-arg "^6.1.0" npmlog "^4.1.2" - p-map "^4.0.0" - p-pipe "^3.1.0" - pacote "^11.2.6" - semver "^7.3.4" + p-finally "^1.0.0" + p-map "^2.1.0" + p-pipe "^1.2.0" + semver "^6.2.0" -"@lerna/pulse-till-done@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/pulse-till-done/-/pulse-till-done-4.0.0.tgz#04bace7d483a8205c187b806bcd8be23d7bb80a3" - integrity sha512-Frb4F7QGckaybRhbF7aosLsJ5e9WuH7h0KUkjlzSByVycxY91UZgaEIVjS2oN9wQLrheLMHl6SiFY0/Pvo0Cxg== +"@lerna/pulse-till-done@3.13.0": + version "3.13.0" + resolved "https://registry.yarnpkg.com/@lerna/pulse-till-done/-/pulse-till-done-3.13.0.tgz#c8e9ce5bafaf10d930a67d7ed0ccb5d958fe0110" + integrity sha512-1SOHpy7ZNTPulzIbargrgaJX387csN7cF1cLOGZiJQA6VqnS5eWs2CIrG8i8wmaUavj2QlQ5oEbRMVVXSsGrzA== dependencies: npmlog "^4.1.2" -"@lerna/query-graph@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/query-graph/-/query-graph-4.0.0.tgz#09dd1c819ac5ee3f38db23931143701f8a6eef63" - integrity sha512-YlP6yI3tM4WbBmL9GCmNDoeQyzcyg1e4W96y/PKMZa5GbyUvkS2+Jc2kwPD+5KcXou3wQZxSPzR3Te5OenaDdg== +"@lerna/query-graph@3.18.5": + version "3.18.5" + resolved "https://registry.yarnpkg.com/@lerna/query-graph/-/query-graph-3.18.5.tgz#df4830bb5155273003bf35e8dda1c32d0927bd86" + integrity sha512-50Lf4uuMpMWvJ306be3oQDHrWV42nai9gbIVByPBYJuVW8dT8O8pA3EzitNYBUdLL9/qEVbrR0ry1HD7EXwtRA== dependencies: - "@lerna/package-graph" "4.0.0" + "@lerna/package-graph" "3.18.5" + figgy-pudding "^3.5.1" -"@lerna/resolve-symlink@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/resolve-symlink/-/resolve-symlink-4.0.0.tgz#6d006628a210c9b821964657a9e20a8c9a115e14" - integrity sha512-RtX8VEUzqT+uLSCohx8zgmjc6zjyRlh6i/helxtZTMmc4+6O4FS9q5LJas2uGO2wKvBlhcD6siibGt7dIC3xZA== +"@lerna/resolve-symlink@3.16.0": + version "3.16.0" + resolved "https://registry.yarnpkg.com/@lerna/resolve-symlink/-/resolve-symlink-3.16.0.tgz#37fc7095fabdbcf317c26eb74e0d0bde8efd2386" + integrity sha512-Ibj5e7njVHNJ/NOqT4HlEgPFPtPLWsO7iu59AM5bJDcAJcR96mLZ7KGVIsS2tvaO7akMEJvt2P+ErwCdloG3jQ== dependencies: - fs-extra "^9.1.0" + fs-extra "^8.1.0" npmlog "^4.1.2" - read-cmd-shim "^2.0.0" + read-cmd-shim "^1.0.1" -"@lerna/rimraf-dir@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/rimraf-dir/-/rimraf-dir-4.0.0.tgz#2edf3b62d4eb0ef4e44e430f5844667d551ec25a" - integrity sha512-QNH9ABWk9mcMJh2/muD9iYWBk1oQd40y6oH+f3wwmVGKYU5YJD//+zMiBI13jxZRtwBx0vmBZzkBkK1dR11cBg== +"@lerna/rimraf-dir@3.16.5": + version "3.16.5" + resolved "https://registry.yarnpkg.com/@lerna/rimraf-dir/-/rimraf-dir-3.16.5.tgz#04316ab5ffd2909657aaf388ea502cb8c2f20a09" + integrity sha512-bQlKmO0pXUsXoF8lOLknhyQjOZsCc0bosQDoX4lujBXSWxHVTg1VxURtWf2lUjz/ACsJVDfvHZbDm8kyBk5okA== dependencies: - "@lerna/child-process" "4.0.0" + "@lerna/child-process" "3.16.5" npmlog "^4.1.2" - path-exists "^4.0.0" - rimraf "^3.0.2" + path-exists "^3.0.0" + rimraf "^2.6.2" -"@lerna/run-lifecycle@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/run-lifecycle/-/run-lifecycle-4.0.0.tgz#e648a46f9210a9bcd7c391df6844498cb5079334" - integrity sha512-IwxxsajjCQQEJAeAaxF8QdEixfI7eLKNm4GHhXHrgBu185JcwScFZrj9Bs+PFKxwb+gNLR4iI5rpUdY8Y0UdGQ== +"@lerna/run-lifecycle@3.16.2": + version "3.16.2" + resolved "https://registry.yarnpkg.com/@lerna/run-lifecycle/-/run-lifecycle-3.16.2.tgz#67b288f8ea964db9ea4fb1fbc7715d5bbb0bce00" + integrity sha512-RqFoznE8rDpyyF0rOJy3+KjZCeTkO8y/OB9orPauR7G2xQ7PTdCpgo7EO6ZNdz3Al+k1BydClZz/j78gNCmL2A== dependencies: - "@lerna/npm-conf" "4.0.0" - npm-lifecycle "^3.1.5" + "@lerna/npm-conf" "3.16.0" + figgy-pudding "^3.5.1" + npm-lifecycle "^3.1.2" npmlog "^4.1.2" -"@lerna/run-topologically@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/run-topologically/-/run-topologically-4.0.0.tgz#af846eeee1a09b0c2be0d1bfb5ef0f7b04bb1827" - integrity sha512-EVZw9hGwo+5yp+VL94+NXRYisqgAlj0jWKWtAIynDCpghRxCE5GMO3xrQLmQgqkpUl9ZxQFpICgYv5DW4DksQA== - dependencies: - "@lerna/query-graph" "4.0.0" - p-queue "^6.6.2" - -"@lerna/run@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/run/-/run-4.0.0.tgz#4bc7fda055a729487897c23579694f6183c91262" - integrity sha512-9giulCOzlMPzcZS/6Eov6pxE9gNTyaXk0Man+iCIdGJNMrCnW7Dme0Z229WWP/UoxDKg71F2tMsVVGDiRd8fFQ== - dependencies: - "@lerna/command" "4.0.0" - "@lerna/filter-options" "4.0.0" - "@lerna/npm-run-script" "4.0.0" - "@lerna/output" "4.0.0" - "@lerna/profiler" "4.0.0" - "@lerna/run-topologically" "4.0.0" - "@lerna/timer" "4.0.0" - "@lerna/validation-error" "4.0.0" - p-map "^4.0.0" - -"@lerna/symlink-binary@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/symlink-binary/-/symlink-binary-4.0.0.tgz#21009f62d53a425f136cb4c1a32c6b2a0cc02d47" - integrity sha512-zualodWC4q1QQc1pkz969hcFeWXOsVYZC5AWVtAPTDfLl+TwM7eG/O6oP+Rr3fFowspxo6b1TQ6sYfDV6HXNWA== +"@lerna/run-topologically@3.18.5": + version "3.18.5" + resolved "https://registry.yarnpkg.com/@lerna/run-topologically/-/run-topologically-3.18.5.tgz#3cd639da20e967d7672cb88db0f756b92f2fdfc3" + integrity sha512-6N1I+6wf4hLOnPW+XDZqwufyIQ6gqoPfHZFkfWlvTQ+Ue7CuF8qIVQ1Eddw5HKQMkxqN10thKOFfq/9NQZ4NUg== dependencies: - "@lerna/create-symlink" "4.0.0" - "@lerna/package" "4.0.0" - fs-extra "^9.1.0" - p-map "^4.0.0" + "@lerna/query-graph" "3.18.5" + figgy-pudding "^3.5.1" + p-queue "^4.0.0" -"@lerna/symlink-dependencies@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/symlink-dependencies/-/symlink-dependencies-4.0.0.tgz#8910eca084ae062642d0490d8972cf2d98e9ebbd" - integrity sha512-BABo0MjeUHNAe2FNGty1eantWp8u83BHSeIMPDxNq0MuW2K3CiQRaeWT3EGPAzXpGt0+hVzBrA6+OT0GPn7Yuw== - dependencies: - "@lerna/create-symlink" "4.0.0" - "@lerna/resolve-symlink" "4.0.0" - "@lerna/symlink-binary" "4.0.0" - fs-extra "^9.1.0" - p-map "^4.0.0" - p-map-series "^2.1.0" +"@lerna/run@3.21.0": + version "3.21.0" + resolved "https://registry.yarnpkg.com/@lerna/run/-/run-3.21.0.tgz#2a35ec84979e4d6e42474fe148d32e5de1cac891" + integrity sha512-fJF68rT3veh+hkToFsBmUJ9MHc9yGXA7LSDvhziAojzOb0AI/jBDp6cEcDQyJ7dbnplba2Lj02IH61QUf9oW0Q== + dependencies: + "@lerna/command" "3.21.0" + "@lerna/filter-options" "3.20.0" + "@lerna/npm-run-script" "3.16.5" + "@lerna/output" "3.13.0" + "@lerna/profiler" "3.20.0" + "@lerna/run-topologically" "3.18.5" + "@lerna/timer" "3.13.0" + "@lerna/validation-error" "3.13.0" + p-map "^2.1.0" + +"@lerna/symlink-binary@3.17.0": + version "3.17.0" + resolved "https://registry.yarnpkg.com/@lerna/symlink-binary/-/symlink-binary-3.17.0.tgz#8f8031b309863814883d3f009877f82e38aef45a" + integrity sha512-RLpy9UY6+3nT5J+5jkM5MZyMmjNHxZIZvXLV+Q3MXrf7Eaa1hNqyynyj4RO95fxbS+EZc4XVSk25DGFQbcRNSQ== + dependencies: + "@lerna/create-symlink" "3.16.2" + "@lerna/package" "3.16.0" + fs-extra "^8.1.0" + p-map "^2.1.0" + +"@lerna/symlink-dependencies@3.17.0": + version "3.17.0" + resolved "https://registry.yarnpkg.com/@lerna/symlink-dependencies/-/symlink-dependencies-3.17.0.tgz#48d6360e985865a0e56cd8b51b308a526308784a" + integrity sha512-KmjU5YT1bpt6coOmdFueTJ7DFJL4H1w5eF8yAQ2zsGNTtZ+i5SGFBWpb9AQaw168dydc3s4eu0W0Sirda+F59Q== + dependencies: + "@lerna/create-symlink" "3.16.2" + "@lerna/resolve-symlink" "3.16.0" + "@lerna/symlink-binary" "3.17.0" + fs-extra "^8.1.0" + p-finally "^1.0.0" + p-map "^2.1.0" + p-map-series "^1.0.0" -"@lerna/timer@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/timer/-/timer-4.0.0.tgz#a52e51bfcd39bfd768988049ace7b15c1fd7a6da" - integrity sha512-WFsnlaE7SdOvjuyd05oKt8Leg3ENHICnvX3uYKKdByA+S3g+TCz38JsNs7OUZVt+ba63nC2nbXDlUnuT2Xbsfg== +"@lerna/timer@3.13.0": + version "3.13.0" + resolved "https://registry.yarnpkg.com/@lerna/timer/-/timer-3.13.0.tgz#bcd0904551db16e08364d6c18e5e2160fc870781" + integrity sha512-RHWrDl8U4XNPqY5MQHkToWS9jHPnkLZEt5VD+uunCKTfzlxGnRCr3/zVr8VGy/uENMYpVP3wJa4RKGY6M0vkRw== -"@lerna/validation-error@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/validation-error/-/validation-error-4.0.0.tgz#af9d62fe8304eaa2eb9a6ba1394f9aa807026d35" - integrity sha512-1rBOM5/koiVWlRi3V6dB863E1YzJS8v41UtsHgMr6gB2ncJ2LsQtMKlJpi3voqcgh41H8UsPXR58RrrpPpufyw== +"@lerna/validation-error@3.13.0": + version "3.13.0" + resolved "https://registry.yarnpkg.com/@lerna/validation-error/-/validation-error-3.13.0.tgz#c86b8f07c5ab9539f775bd8a54976e926f3759c3" + integrity sha512-SiJP75nwB8GhgwLKQfdkSnDufAaCbkZWJqEDlKOUPUvVOplRGnfL+BPQZH5nvq2BYSRXsksXWZ4UHVnQZI/HYA== dependencies: npmlog "^4.1.2" -"@lerna/version@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/version/-/version-4.0.0.tgz#532659ec6154d8a8789c5ab53878663e244e3228" - integrity sha512-otUgiqs5W9zGWJZSCCMRV/2Zm2A9q9JwSDS7s/tlKq4mWCYriWo7+wsHEA/nPTMDyYyBO5oyZDj+3X50KDUzeA== - dependencies: - "@lerna/check-working-tree" "4.0.0" - "@lerna/child-process" "4.0.0" - "@lerna/collect-updates" "4.0.0" - "@lerna/command" "4.0.0" - "@lerna/conventional-commits" "4.0.0" - "@lerna/github-client" "4.0.0" - "@lerna/gitlab-client" "4.0.0" - "@lerna/output" "4.0.0" - "@lerna/prerelease-id-from-version" "4.0.0" - "@lerna/prompt" "4.0.0" - "@lerna/run-lifecycle" "4.0.0" - "@lerna/run-topologically" "4.0.0" - "@lerna/validation-error" "4.0.0" - chalk "^4.1.0" +"@lerna/version@3.22.1": + version "3.22.1" + resolved "https://registry.yarnpkg.com/@lerna/version/-/version-3.22.1.tgz#9805a9247a47ee62d6b81bd9fa5fb728b24b59e2" + integrity sha512-PSGt/K1hVqreAFoi3zjD0VEDupQ2WZVlVIwesrE5GbrL2BjXowjCsTDPqblahDUPy0hp6h7E2kG855yLTp62+g== + dependencies: + "@lerna/check-working-tree" "3.16.5" + "@lerna/child-process" "3.16.5" + "@lerna/collect-updates" "3.20.0" + "@lerna/command" "3.21.0" + "@lerna/conventional-commits" "3.22.0" + "@lerna/github-client" "3.22.0" + "@lerna/gitlab-client" "3.15.0" + "@lerna/output" "3.13.0" + "@lerna/prerelease-id-from-version" "3.16.0" + "@lerna/prompt" "3.18.5" + "@lerna/run-lifecycle" "3.16.2" + "@lerna/run-topologically" "3.18.5" + "@lerna/validation-error" "3.13.0" + chalk "^2.3.1" dedent "^0.7.0" - load-json-file "^6.2.0" + load-json-file "^5.3.0" minimatch "^3.0.4" npmlog "^4.1.2" - p-map "^4.0.0" - p-pipe "^3.1.0" - p-reduce "^2.1.0" - p-waterfall "^2.1.1" - semver "^7.3.4" - slash "^3.0.0" - temp-write "^4.0.0" - write-json-file "^4.3.0" + p-map "^2.1.0" + p-pipe "^1.2.0" + p-reduce "^1.0.0" + p-waterfall "^1.0.0" + semver "^6.2.0" + slash "^2.0.0" + temp-write "^3.4.0" + write-json-file "^3.2.0" -"@lerna/write-log-file@4.0.0": - version "4.0.0" - resolved "https://registry.yarnpkg.com/@lerna/write-log-file/-/write-log-file-4.0.0.tgz#18221a38a6a307d6b0a5844dd592ad53fa27091e" - integrity sha512-XRG5BloiArpXRakcnPHmEHJp+4AtnhRtpDIHSghmXD5EichI1uD73J7FgPp30mm2pDRq3FdqB0NbwSEsJ9xFQg== +"@lerna/write-log-file@3.13.0": + version "3.13.0" + resolved "https://registry.yarnpkg.com/@lerna/write-log-file/-/write-log-file-3.13.0.tgz#b78d9e4cfc1349a8be64d91324c4c8199e822a26" + integrity sha512-RibeMnDPvlL8bFYW5C8cs4mbI3AHfQef73tnJCQ/SgrXZHehmHnsyWUiE7qDQCAo+B1RfTapvSyFF69iPj326A== dependencies: npmlog "^4.1.2" - write-file-atomic "^3.0.3" + write-file-atomic "^2.3.0" "@lumino/algorithm@^1.3.3", "@lumino/algorithm@^1.9.1": version "1.9.1" @@ -1438,6 +2287,14 @@ "@lumino/signaling" "^1.10.1" "@lumino/virtualdom" "^1.14.1" +"@mrmlnc/readdir-enhanced@^2.2.1": + version "2.2.1" + resolved "https://registry.yarnpkg.com/@mrmlnc/readdir-enhanced/-/readdir-enhanced-2.2.1.tgz#524af240d1a360527b730475ecfa1344aa540dde" + integrity sha512-bPHp6Ji8b41szTOcaP63VlnbbO5Ny6dwAATtY6JTjh5N2OLrb5Qk/Th5cRkRQhkWCt+EJsYrNB0MiL+Gpn6e3g== + dependencies: + call-me-maybe "^1.0.1" + glob-to-regexp "^0.3.0" + "@nodelib/fs.scandir@2.1.5": version "2.1.5" resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5" @@ -1451,6 +2308,11 @@ resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz#5bd262af94e9d25bd1e71b05deed44876a222e8b" integrity sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A== +"@nodelib/fs.stat@^1.1.2": + version "1.1.3" + resolved "https://registry.yarnpkg.com/@nodelib/fs.stat/-/fs.stat-1.1.3.tgz#2b5a3ab3f918cca48a8c754c08168e3f03eba61b" + integrity sha512-shAmDyaQC4H92APFoIaVDHCx5bStIocgvbwQyxPRrbUY20V1EYTbSDchWbuwlMG3V17cprZhA6+78JfB+3DTPw== + "@nodelib/fs.walk@^1.2.3": version "1.2.8" resolved "https://registry.yarnpkg.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz#e95737e8bb6746ddedf69c556953494f196fe69a" @@ -1459,11 +2321,6 @@ "@nodelib/fs.scandir" "2.1.5" fastq "^1.6.0" -"@npmcli/ci-detect@^1.0.0": - version "1.4.0" - resolved "https://registry.yarnpkg.com/@npmcli/ci-detect/-/ci-detect-1.4.0.tgz#18478bbaa900c37bfbd8a2006a6262c62e8b0fe1" - integrity sha512-3BGrt6FLjqM6br5AhWRKTr3u5GIVkjRYeAFrMp3HjnfICrg4xOrVRwFavKT6tsp++bq5dluL5t8ME/Nha/6c1Q== - "@npmcli/fs@^1.0.0": version "1.0.0" resolved "https://registry.yarnpkg.com/@npmcli/fs/-/fs-1.0.0.tgz#589612cfad3a6ea0feafcb901d29c63fd52db09f" @@ -1472,28 +2329,6 @@ "@gar/promisify" "^1.0.1" semver "^7.3.5" -"@npmcli/git@^2.1.0": - version "2.1.0" - resolved "https://registry.yarnpkg.com/@npmcli/git/-/git-2.1.0.tgz#2fbd77e147530247d37f325930d457b3ebe894f6" - integrity sha512-/hBFX/QG1b+N7PZBFs0bi+evgRZcK9nWBxQKZkGoXUT5hJSwl5c4d7y8/hm+NQZRPhQ67RzFaj5UM9YeyKoryw== - dependencies: - "@npmcli/promise-spawn" "^1.3.2" - lru-cache "^6.0.0" - mkdirp "^1.0.4" - npm-pick-manifest "^6.1.1" - promise-inflight "^1.0.1" - promise-retry "^2.0.1" - semver "^7.3.5" - which "^2.0.2" - -"@npmcli/installed-package-contents@^1.0.6": - version "1.0.7" - resolved "https://registry.yarnpkg.com/@npmcli/installed-package-contents/-/installed-package-contents-1.0.7.tgz#ab7408c6147911b970a8abe261ce512232a3f4fa" - integrity sha512-9rufe0wnJusCQoLpV9ZPKIVP55itrM5BxOXs10DmdbRfgWtHy1LDyskbwRnBghuB0PrF7pNPOqREVtpz4HqzKw== - dependencies: - npm-bundled "^1.1.1" - npm-normalize-package-bin "^1.0.1" - "@npmcli/move-file@^1.0.1": version "1.1.2" resolved "https://registry.yarnpkg.com/@npmcli/move-file/-/move-file-1.1.2.tgz#1a82c3e372f7cae9253eb66d72543d6b8685c674" @@ -1502,48 +2337,13 @@ mkdirp "^1.0.4" rimraf "^3.0.2" -"@npmcli/node-gyp@^1.0.2": - version "1.0.3" - resolved "https://registry.yarnpkg.com/@npmcli/node-gyp/-/node-gyp-1.0.3.tgz#a912e637418ffc5f2db375e93b85837691a43a33" - integrity sha512-fnkhw+fmX65kiLqk6E3BFLXNC26rUhK90zVwe2yncPliVT/Qos3xjhTLE59Df8KnPlcwIERXKVlU1bXoUQ+liA== - -"@npmcli/promise-spawn@^1.2.0", "@npmcli/promise-spawn@^1.3.2": - version "1.3.2" - resolved "https://registry.yarnpkg.com/@npmcli/promise-spawn/-/promise-spawn-1.3.2.tgz#42d4e56a8e9274fba180dabc0aea6e38f29274f5" - integrity sha512-QyAGYo/Fbj4MXeGdJcFzZ+FkDkomfRBrPM+9QYJSg+PxgAUL+LU3FneQk37rKR2/zjqkCV1BLHccX98wRXG3Sg== - dependencies: - infer-owner "^1.0.4" - -"@npmcli/run-script@^1.8.2": - version "1.8.6" - resolved "https://registry.yarnpkg.com/@npmcli/run-script/-/run-script-1.8.6.tgz#18314802a6660b0d4baa4c3afe7f1ad39d8c28b7" - integrity sha512-e42bVZnC6VluBZBAFEr3YrdqSspG3bgilyg4nSLBJ7TRGNCzxHa92XAHxQBLYg0BmgwO4b2mf3h/l5EkEWRn3g== - dependencies: - "@npmcli/node-gyp" "^1.0.2" - "@npmcli/promise-spawn" "^1.3.2" - node-gyp "^7.1.0" - read-package-json-fast "^2.0.1" - -"@octokit/auth-token@^2.4.4": +"@octokit/auth-token@^2.4.0": version "2.5.0" resolved "https://registry.yarnpkg.com/@octokit/auth-token/-/auth-token-2.5.0.tgz#27c37ea26c205f28443402477ffd261311f21e36" integrity sha512-r5FVUJCOLl19AxiuZD2VRZ/ORjp/4IN98Of6YJoJOkY75CIBuYfmiNHGrDwXr+aLGG55igl9QrxX3hbiXlLb+g== dependencies: "@octokit/types" "^6.0.3" -"@octokit/core@^3.5.1": - version "3.5.1" - resolved "https://registry.yarnpkg.com/@octokit/core/-/core-3.5.1.tgz#8601ceeb1ec0e1b1b8217b960a413ed8e947809b" - integrity sha512-omncwpLVxMP+GLpLPgeGJBF6IWJFjXDS5flY5VbppePYX9XehevbDykRH9PdCdvqt9TS5AOTiDide7h0qrkHjw== - dependencies: - "@octokit/auth-token" "^2.4.4" - "@octokit/graphql" "^4.5.8" - "@octokit/request" "^5.6.0" - "@octokit/request-error" "^2.0.5" - "@octokit/types" "^6.0.3" - before-after-hook "^2.2.0" - universal-user-agent "^6.0.0" - "@octokit/endpoint@^6.0.1": version "6.0.12" resolved "https://registry.yarnpkg.com/@octokit/endpoint/-/endpoint-6.0.12.tgz#3b4d47a4b0e79b1027fb8d75d4221928b2d05658" @@ -1553,15 +2353,6 @@ is-plain-object "^5.0.0" universal-user-agent "^6.0.0" -"@octokit/graphql@^4.5.8": - version "4.8.0" - resolved "https://registry.yarnpkg.com/@octokit/graphql/-/graphql-4.8.0.tgz#664d9b11c0e12112cbf78e10f49a05959aa22cc3" - integrity sha512-0gv+qLSBLKF0z8TKaSKTsS39scVKF9dbMxJpj3U0vC7wjNWFuIpL/z76Qe2fiuCbDRcJSavkXsVtMS6/dtQQsg== - dependencies: - "@octokit/request" "^5.6.0" - "@octokit/types" "^6.0.3" - universal-user-agent "^6.0.0" - "@octokit/openapi-types@^11.2.0": version "11.2.0" resolved "https://registry.yarnpkg.com/@octokit/openapi-types/-/openapi-types-11.2.0.tgz#b38d7fc3736d52a1e96b230c1ccd4a58a2f400a6" @@ -1572,27 +2363,36 @@ resolved "https://registry.yarnpkg.com/@octokit/plugin-enterprise-rest/-/plugin-enterprise-rest-6.0.1.tgz#e07896739618dab8da7d4077c658003775f95437" integrity sha512-93uGjlhUD+iNg1iWhUENAtJata6w5nE+V4urXOAlIXdco6xNZtUSfYY8dzp3Udy74aqO/B5UZL80x/YMa5PKRw== -"@octokit/plugin-paginate-rest@^2.16.8": - version "2.17.0" - resolved "https://registry.yarnpkg.com/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-2.17.0.tgz#32e9c7cab2a374421d3d0de239102287d791bce7" - integrity sha512-tzMbrbnam2Mt4AhuyCHvpRkS0oZ5MvwwcQPYGtMv4tUa5kkzG58SVB0fcsLulOZQeRnOgdkZWkRUiyBlh0Bkyw== +"@octokit/plugin-paginate-rest@^1.1.1": + version "1.1.2" + resolved "https://registry.yarnpkg.com/@octokit/plugin-paginate-rest/-/plugin-paginate-rest-1.1.2.tgz#004170acf8c2be535aba26727867d692f7b488fc" + integrity sha512-jbsSoi5Q1pj63sC16XIUboklNw+8tL9VOnJsWycWYR78TKss5PVpIPb1TUUcMQ+bBh7cY579cVAWmf5qG+dw+Q== dependencies: - "@octokit/types" "^6.34.0" + "@octokit/types" "^2.0.1" -"@octokit/plugin-request-log@^1.0.4": +"@octokit/plugin-request-log@^1.0.0": version "1.0.4" resolved "https://registry.yarnpkg.com/@octokit/plugin-request-log/-/plugin-request-log-1.0.4.tgz#5e50ed7083a613816b1e4a28aeec5fb7f1462e85" integrity sha512-mLUsMkgP7K/cnFEw07kWqXGF5LKrOkD+lhCrKvPHXWDywAwuDUeDwWBpc69XK3pNX0uKiVt8g5z96PJ6z9xCFA== -"@octokit/plugin-rest-endpoint-methods@^5.12.0": - version "5.13.0" - resolved "https://registry.yarnpkg.com/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-5.13.0.tgz#8c46109021a3412233f6f50d28786f8e552427ba" - integrity sha512-uJjMTkN1KaOIgNtUPMtIXDOjx6dGYysdIFhgA52x4xSadQCz3b/zJexvITDVpANnfKPW/+E0xkOvLntqMYpviA== +"@octokit/plugin-rest-endpoint-methods@2.4.0": + version "2.4.0" + resolved "https://registry.yarnpkg.com/@octokit/plugin-rest-endpoint-methods/-/plugin-rest-endpoint-methods-2.4.0.tgz#3288ecf5481f68c494dd0602fc15407a59faf61e" + integrity sha512-EZi/AWhtkdfAYi01obpX0DF7U6b1VRr30QNQ5xSFPITMdLSfhcBqjamE3F+sKcxPbD7eZuMHu3Qkk2V+JGxBDQ== dependencies: - "@octokit/types" "^6.34.0" + "@octokit/types" "^2.0.1" deprecation "^2.3.1" -"@octokit/request-error@^2.0.5", "@octokit/request-error@^2.1.0": +"@octokit/request-error@^1.0.2": + version "1.2.1" + resolved "https://registry.yarnpkg.com/@octokit/request-error/-/request-error-1.2.1.tgz#ede0714c773f32347576c25649dc013ae6b31801" + integrity sha512-+6yDyk1EES6WK+l3viRDElw96MvwfJxCt45GvmjDUKWjYIb3PJZQkq3i46TwGwoPD4h8NmTrENmtyA1FwbmhRA== + dependencies: + "@octokit/types" "^2.0.0" + deprecation "^2.0.0" + once "^1.4.0" + +"@octokit/request-error@^2.1.0": version "2.1.0" resolved "https://registry.yarnpkg.com/@octokit/request-error/-/request-error-2.1.0.tgz#9e150357831bfc788d13a4fd4b1913d60c74d677" integrity sha512-1VIvgXxs9WHSjicsRwq8PlR2LR2x6DwsJAaFgzdi0JfJoGSO8mYI/cHJQ+9FbN21aa+DrgNLnwObmyeSC8Rmpg== @@ -1601,7 +2401,7 @@ deprecation "^2.0.0" once "^1.4.0" -"@octokit/request@^5.6.0": +"@octokit/request@^5.2.0": version "5.6.2" resolved "https://registry.yarnpkg.com/@octokit/request/-/request-5.6.2.tgz#1aa74d5da7b9e04ac60ef232edd9a7438dcf32d8" integrity sha512-je66CvSEVf0jCpRISxkUcCa0UkxmFs6eGDRSbfJtAVwbLH5ceqF+YEyC8lj8ystKyZTy8adWr0qmkY52EfOeLA== @@ -1613,28 +2413,66 @@ node-fetch "^2.6.1" universal-user-agent "^6.0.0" -"@octokit/rest@^18.1.0": - version "18.12.0" - resolved "https://registry.yarnpkg.com/@octokit/rest/-/rest-18.12.0.tgz#f06bc4952fc87130308d810ca9d00e79f6988881" - integrity sha512-gDPiOHlyGavxr72y0guQEhLsemgVjwRePayJ+FcKc2SJqKUbxbkvf5kAZEWA/MKvsfYlQAMVzNJE3ezQcxMJ2Q== +"@octokit/rest@^16.28.4": + version "16.43.2" + resolved "https://registry.yarnpkg.com/@octokit/rest/-/rest-16.43.2.tgz#c53426f1e1d1044dee967023e3279c50993dd91b" + integrity sha512-ngDBevLbBTFfrHZeiS7SAMAZ6ssuVmXuya+F/7RaVvlysgGa1JKJkKWY+jV6TCJYcW0OALfJ7nTIGXcBXzycfQ== + dependencies: + "@octokit/auth-token" "^2.4.0" + "@octokit/plugin-paginate-rest" "^1.1.1" + "@octokit/plugin-request-log" "^1.0.0" + "@octokit/plugin-rest-endpoint-methods" "2.4.0" + "@octokit/request" "^5.2.0" + "@octokit/request-error" "^1.0.2" + atob-lite "^2.0.0" + before-after-hook "^2.0.0" + btoa-lite "^1.0.0" + deprecation "^2.0.0" + lodash.get "^4.4.2" + lodash.set "^4.3.2" + lodash.uniq "^4.5.0" + octokit-pagination-methods "^1.1.0" + once "^1.4.0" + universal-user-agent "^4.0.0" + +"@octokit/types@^2.0.0", "@octokit/types@^2.0.1": + version "2.16.2" + resolved "https://registry.yarnpkg.com/@octokit/types/-/types-2.16.2.tgz#4c5f8da3c6fecf3da1811aef678fda03edac35d2" + integrity sha512-O75k56TYvJ8WpAakWwYRN8Bgu60KrmX0z1KqFp1kNiFNkgW+JW+9EBKZ+S33PU6SLvbihqd+3drvPxKK68Ee8Q== dependencies: - "@octokit/core" "^3.5.1" - "@octokit/plugin-paginate-rest" "^2.16.8" - "@octokit/plugin-request-log" "^1.0.4" - "@octokit/plugin-rest-endpoint-methods" "^5.12.0" + "@types/node" ">= 8" -"@octokit/types@^6.0.3", "@octokit/types@^6.16.1", "@octokit/types@^6.34.0": +"@octokit/types@^6.0.3", "@octokit/types@^6.16.1": version "6.34.0" resolved "https://registry.yarnpkg.com/@octokit/types/-/types-6.34.0.tgz#c6021333334d1ecfb5d370a8798162ddf1ae8218" integrity sha512-s1zLBjWhdEI2zwaoSgyOFoKSl109CUcVBCc7biPJ3aAf6LGLU6szDvi31JPU7bxfla2lqfhjbbg/5DdFNxOwHw== dependencies: "@octokit/openapi-types" "^11.2.0" +"@polka/url@^1.0.0-next.20": + version "1.0.0-next.21" + resolved "https://registry.yarnpkg.com/@polka/url/-/url-1.0.0-next.21.tgz#5de5a2385a35309427f6011992b544514d559aa1" + integrity sha512-a5Sab1C4/icpTZVzZc5Ghpz88yQtGOyNqYXcZgOssB2uuAr+wF/MvN6bgtW32q7HHrvBki+BsZ0OuNv6EV3K9g== + "@sindresorhus/is@^0.14.0": version "0.14.0" resolved "https://registry.yarnpkg.com/@sindresorhus/is/-/is-0.14.0.tgz#9fb3a3cf3132328151f353de4632e01e52102bea" integrity sha512-9NET910DNaIPngYnLLPeg+Ogzqsi9uM4mSboU5y6p8S5DzMTVEsJZrawi+BoDNUVBa2DhJqQYUFvMDfgU062LQ== +"@sinonjs/commons@^1.7.0": + version "1.8.3" + resolved "https://registry.yarnpkg.com/@sinonjs/commons/-/commons-1.8.3.tgz#3802ddd21a50a949b6721ddd72da36e67e7f1b2d" + integrity sha512-xkNcLAn/wZaX14RPlwizcKicDk9G3F8m2nU3L7Ukm5zBgTwiT0wsoFAHx9Jq56fJA1z/7uKGtCRu16sOUCLIHQ== + dependencies: + type-detect "4.0.8" + +"@sinonjs/fake-timers@^6.0.1": + version "6.0.1" + resolved "https://registry.yarnpkg.com/@sinonjs/fake-timers/-/fake-timers-6.0.1.tgz#293674fccb3262ac782c7aadfdeca86b10c75c40" + integrity sha512-MZPUxrmFubI36XS1DI3qmI0YdN1gks62JtFZvxR67ljjSNCeK6U08Zx4msEWOXuofgqUt6zPHSi1H9fbjR/NRA== + dependencies: + "@sinonjs/commons" "^1.7.0" + "@szmarczak/http-timer@^1.1.2": version "1.1.2" resolved "https://registry.yarnpkg.com/@szmarczak/http-timer/-/http-timer-1.1.2.tgz#b1665e2c461a2cd92f4c1bbf50d5454de0d4b421" @@ -1647,6 +2485,49 @@ resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82" integrity sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw== +"@types/babel__core@^7.0.0", "@types/babel__core@^7.1.7": + version "7.1.16" + resolved "https://registry.yarnpkg.com/@types/babel__core/-/babel__core-7.1.16.tgz#bc12c74b7d65e82d29876b5d0baf5c625ac58702" + integrity sha512-EAEHtisTMM+KaKwfWdC3oyllIqswlznXCIVCt7/oRNrh+DhgT4UEBNC/jlADNjvw7UnfbcdkGQcPVZ1xYiLcrQ== + dependencies: + "@babel/parser" "^7.1.0" + "@babel/types" "^7.0.0" + "@types/babel__generator" "*" + "@types/babel__template" "*" + "@types/babel__traverse" "*" + +"@types/babel__generator@*": + version "7.6.3" + resolved "https://registry.yarnpkg.com/@types/babel__generator/-/babel__generator-7.6.3.tgz#f456b4b2ce79137f768aa130d2423d2f0ccfaba5" + integrity sha512-/GWCmzJWqV7diQW54smJZzWbSFf4QYtF71WCKhcx6Ru/tFyQIY2eiiITcCAeuPbNSvT9YCGkVMqqvSk2Z0mXiA== + dependencies: + "@babel/types" "^7.0.0" + +"@types/babel__template@*": + version "7.4.1" + resolved "https://registry.yarnpkg.com/@types/babel__template/-/babel__template-7.4.1.tgz#3d1a48fd9d6c0edfd56f2ff578daed48f36c8969" + integrity sha512-azBFKemX6kMg5Io+/rdGT0dkGreboUVR0Cdm3fz9QJWpaQGJRQXl7C+6hOTCZcMll7KFyEQpgbYI2lHdsS4U7g== + dependencies: + "@babel/parser" "^7.1.0" + "@babel/types" "^7.0.0" + +"@types/babel__traverse@*", "@types/babel__traverse@^7.0.4", "@types/babel__traverse@^7.0.6": + version "7.14.2" + resolved "https://registry.yarnpkg.com/@types/babel__traverse/-/babel__traverse-7.14.2.tgz#ffcd470bbb3f8bf30481678fb5502278ca833a43" + integrity sha512-K2waXdXBi2302XUdcHcR1jCeU0LL4TD9HRs/gk0N2Xvrht+G/BfJa4QObBQZfhMdxiCpV3COl5Nfq4uKTeTnJA== + dependencies: + "@babel/types" "^7.3.0" + +"@types/base16@^1.0.2": + version "1.0.2" + resolved "https://registry.yarnpkg.com/@types/base16/-/base16-1.0.2.tgz#eb3a07db52309bfefb9ba010dfdb3c0784971f65" + integrity sha512-oYO/U4VD1DavwrKuCSQWdLG+5K22SLPem2OQaHmFcQuwHoVeGC+JGVRji2MUqZUAIQZHEonOeVfAX09hYiLsdg== + +"@types/clone@~2.1.1": + version "2.1.1" + resolved "https://registry.yarnpkg.com/@types/clone/-/clone-2.1.1.tgz#9b880d0ce9b1f209b5e0bd6d9caa38209db34024" + integrity sha512-BZIU34bSYye0j/BFcPraiDZ5ka6MJADjcDVELGf7glr9K+iE8NYVjFslJFVWzskSxkLLyCrSPScE82/UUoBSvg== + "@types/codemirror@^0.0.109": version "0.0.109" resolved "https://registry.yarnpkg.com/@types/codemirror/-/codemirror-0.0.109.tgz#89d575ff1c7b462c4c3b8654f8bb38e5622e9036" @@ -1680,7 +2561,7 @@ resolved "https://registry.yarnpkg.com/@types/estree/-/estree-0.0.50.tgz#1e0caa9364d3fccd2931c3ed96fdbeaa5d4cca83" integrity sha512-C6N5s2ZFtuZRj54k2/zyRhNDjJwwcViAM3Nbm8zjBpbqAdZ00mr0CFxvSKeO8Y/e03WVFLpQMdHYVfUd6SB+Hw== -"@types/glob@^7.1.1": +"@types/glob@*", "@types/glob@^7.1.1": version "7.2.0" resolved "https://registry.yarnpkg.com/@types/glob/-/glob-7.2.0.tgz#bc1b5bf3aa92f25bd5dd39f35c57361bdce5b2eb" integrity sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA== @@ -1688,12 +2569,43 @@ "@types/minimatch" "*" "@types/node" "*" +"@types/graceful-fs@^4.1.2": + version "4.1.5" + resolved "https://registry.yarnpkg.com/@types/graceful-fs/-/graceful-fs-4.1.5.tgz#21ffba0d98da4350db64891f92a9e5db3cdb4e15" + integrity sha512-anKkLmZZ+xm4p8JWBf4hElkM4XR+EZeA2M9BAkkTldmcyDY4mbdIJnRghDJH3Ov5ooY7/UAoENtmdMSkaAd7Cw== + dependencies: + "@types/node" "*" + +"@types/istanbul-lib-coverage@*", "@types/istanbul-lib-coverage@^2.0.0", "@types/istanbul-lib-coverage@^2.0.1": + version "2.0.3" + resolved "https://registry.yarnpkg.com/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.3.tgz#4ba8ddb720221f432e443bd5f9117fd22cfd4762" + integrity sha512-sz7iLqvVUg1gIedBOvlkxPlc8/uVzyS5OwGz1cKjXzkl3FpL3al0crU8YGU1WoHkxn0Wxbw5tyi6hvzJKNzFsw== + +"@types/istanbul-lib-report@*": + version "3.0.0" + resolved "https://registry.yarnpkg.com/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#c14c24f18ea8190c118ee7562b7ff99a36552686" + integrity sha512-plGgXAPfVKFoYfa9NpYDAkseG+g6Jr294RqeqcqDixSbU34MZVJRi/P+7Y8GDpzkEwLaGZZOpKIEmeVZNtKsrg== + dependencies: + "@types/istanbul-lib-coverage" "*" + +"@types/istanbul-reports@^3.0.0": + version "3.0.1" + resolved "https://registry.yarnpkg.com/@types/istanbul-reports/-/istanbul-reports-3.0.1.tgz#9153fe98bba2bd565a63add9436d6f0d7f8468ff" + integrity sha512-c3mAZEuK0lvBp8tmuL74XRKn1+y2dcwOUpH7x4WrF6gk1GIgiluDRgMYQtw2OFcBvAJWlt6ASU3tSqxp0Uu0Aw== + dependencies: + "@types/istanbul-lib-report" "*" + "@types/json-schema@*", "@types/json-schema@^7.0.5", "@types/json-schema@^7.0.7", "@types/json-schema@^7.0.8": version "7.0.9" resolved "https://registry.yarnpkg.com/@types/json-schema/-/json-schema-7.0.9.tgz#97edc9037ea0c38585320b28964dde3b39e4660d" integrity sha512-qcUXuemtEu+E5wZSJHNxUXeCZhAfXKQ41D+duX+VYPde7xyEVZci+/oXKJL13tnRs9lR2pr4fod59GT6/X1/yQ== -"@types/minimatch@*", "@types/minimatch@^3.0.3": +"@types/lodash@^4.14.176": + version "4.14.176" + resolved "https://registry.yarnpkg.com/@types/lodash/-/lodash-4.14.176.tgz#641150fc1cda36fbfa329de603bbb175d7ee20c0" + integrity sha512-xZmuPTa3rlZoIbtDUyJKZQimJV3bxCmzMIO2c9Pz9afyDro6kr7R79GwcB6mRhuoPmV2p1Vb66WOJH7F886WKQ== + +"@types/minimatch@*": version "3.0.5" resolved "https://registry.yarnpkg.com/@types/minimatch/-/minimatch-3.0.5.tgz#1001cc5e6a3704b83c236027e77f2f58ea010f40" integrity sha512-Klz949h02Gz2uZCMGwDUSDS1YBlTdDDgbWHi+81l29tQALUtvz4rAYi5uoVhE5Lagoq6DeqAUlbrHvW/mXDgdQ== @@ -1703,7 +2615,7 @@ resolved "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.2.tgz#ee771e2ba4b3dc5b372935d549fd9617bf345b8c" integrity sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ== -"@types/node@*": +"@types/node@*", "@types/node@>= 8": version "16.11.7" resolved "https://registry.yarnpkg.com/@types/node/-/node-16.11.7.tgz#36820945061326978c42a01e56b61cd223dfdc42" integrity sha512-QB5D2sqfSjCmTuWcBWyJ+/44bcjO7VbjSbOE0ucoVbAsSNQc4Lt6QkgkVXkTDwkL4z/beecZNDvVX15D4P8Jbw== @@ -1718,7 +2630,12 @@ resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA== -"@types/prop-types@*": +"@types/prettier@^2.0.0": + version "2.4.1" + resolved "https://registry.yarnpkg.com/@types/prettier/-/prettier-2.4.1.tgz#e1303048d5389563e130f5bdd89d37a99acb75eb" + integrity sha512-Fo79ojj3vdEZOHg3wR9ksAMRz4P3S5fDB5e/YWZiFnyFQI1WY2Vftu9XoXVVtJfxB7Bpce/QTqWSSntkz2Znrw== + +"@types/prop-types@*", "@types/prop-types@^15.7.4": version "15.7.4" resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.4.tgz#fcf7205c25dff795ee79af1e30da2c9790808f11" integrity sha512-rZ5drC/jWjrArrS8BR6SIr4cWpW09RNTYt9AMZo3Jwwif+iacXAqgVjm0B0Bv/S1jhDXKHqRVNCbACkJ89RAnQ== @@ -1737,6 +2654,14 @@ resolved "https://registry.yarnpkg.com/@types/reveal/-/reveal-3.3.33.tgz#e5448f6b4e6734ec3ea4ee85211bb9313a879044" integrity sha512-lKbezA9Oa5LfdSRwFDc/FHEGH4+FjiXh/a/PCSZAmN+KCeQJL/3ClOdAQwOxt3zdHc8XyioT+cNvIOletwRI7A== +"@types/rimraf@^3.0.0": + version "3.0.2" + resolved "https://registry.yarnpkg.com/@types/rimraf/-/rimraf-3.0.2.tgz#a63d175b331748e5220ad48c901d7bbf1f44eef8" + integrity sha512-F3OznnSLAUxFrCEu/L5PY8+ny8DtcFRjx7fZZ9bycvXRi3KPTRS9HOitGZwvPg0juRhXFWIeKX58cnX5YqLohQ== + dependencies: + "@types/glob" "*" + "@types/node" "*" + "@types/scheduler@*": version "0.16.2" resolved "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.16.2.tgz#1a62f89525723dde24ba1b01b092bf5df8ad4d39" @@ -1747,6 +2672,11 @@ resolved "https://registry.yarnpkg.com/@types/source-list-map/-/source-list-map-0.1.2.tgz#0078836063ffaf17412349bba364087e0ac02ec9" integrity sha512-K5K+yml8LTo9bWJI/rECfIPrGgxdpeNbj+d53lwN4QjW1MCwlkhUms+gtdzigTeUyBr09+u8BwOIY3MXvHdcsA== +"@types/stack-utils@^2.0.0": + version "2.0.1" + resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.1.tgz#20f18294f797f2209b5f65c8e3b5c8e8261d127c" + integrity sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw== + "@types/tern@*": version "0.23.4" resolved "https://registry.yarnpkg.com/@types/tern/-/tern-0.23.4.tgz#03926eb13dbeaf3ae0d390caf706b2643a0127fb" @@ -1763,7 +2693,26 @@ "@types/source-list-map" "*" source-map "^0.6.1" -"@typescript-eslint/eslint-plugin@^4.8.1": +"@types/yargs-parser@*": + version "20.2.1" + resolved "https://registry.yarnpkg.com/@types/yargs-parser/-/yargs-parser-20.2.1.tgz#3b9ce2489919d9e4fea439b76916abc34b2df129" + integrity sha512-7tFImggNeNBVMsn0vLrpn1H1uPrUBdnARPTpZoitY37ZrdJREzf7I16tMrlK3hen349gr1NYh8CmZQa7CTG6Aw== + +"@types/yargs@^15.0.0": + version "15.0.14" + resolved "https://registry.yarnpkg.com/@types/yargs/-/yargs-15.0.14.tgz#26d821ddb89e70492160b66d10a0eb6df8f6fb06" + integrity sha512-yEJzHoxf6SyQGhBhIYGXQDSCkJjB6HohDShto7m8vaKg9Yp0Yn8+71J9eakh2bnPg6BfsH9PRMhiRTZnd4eXGQ== + dependencies: + "@types/yargs-parser" "*" + +"@types/yauzl@^2.9.1": + version "2.9.2" + resolved "https://registry.yarnpkg.com/@types/yauzl/-/yauzl-2.9.2.tgz#c48e5d56aff1444409e39fa164b0b4d4552a7b7a" + integrity sha512-8uALY5LTvSuHgloDVUvWP3pIauILm+8/0pDMokuDYIoNsOkSwd5AiHBTSEJjKTDcZr5z8UpgOWZkxBF4iJftoA== + dependencies: + "@types/node" "*" + +"@typescript-eslint/eslint-plugin@^4.2.0", "@typescript-eslint/eslint-plugin@^4.8.1": version "4.33.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/eslint-plugin/-/eslint-plugin-4.33.0.tgz#c24dc7c8069c7706bc40d99f6fa87edcb2005276" integrity sha512-aINiAxGVdOl1eJyVjaWn/YcVAq4Gi/Yo35qHGCnqbWVz61g39D0h23veY/MA0rFFGfxK7TySg2uwDeNv+JgVpg== @@ -1777,7 +2726,7 @@ semver "^7.3.5" tsutils "^3.21.0" -"@typescript-eslint/experimental-utils@4.33.0": +"@typescript-eslint/experimental-utils@4.33.0", "@typescript-eslint/experimental-utils@^4.0.1": version "4.33.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/experimental-utils/-/experimental-utils-4.33.0.tgz#6f2a786a4209fa2222989e9380b5331b2810f7fd" integrity sha512-zeQjOoES5JFjTnAhI5QY7ZviczMzDptls15GFsI6jyUOq0kOf9+WonkhtlIhh0RgHRnqj5gdNxW5j1EvAyYg6Q== @@ -1789,7 +2738,7 @@ eslint-scope "^5.1.1" eslint-utils "^3.0.0" -"@typescript-eslint/parser@^4.8.1": +"@typescript-eslint/parser@^4.2.0", "@typescript-eslint/parser@^4.8.1": version "4.33.0" resolved "https://registry.yarnpkg.com/@typescript-eslint/parser/-/parser-4.33.0.tgz#dfe797570d9694e560528d18eecad86c8c744899" integrity sha512-ZohdsbXadjGBSK0/r+d87X0SBmKzOq4/S5nzK6SBgJspFo9/CUDJ7hjayuze+JK7CZQLDMroqytp7pOcFKTxZA== @@ -2034,7 +2983,16 @@ resolved "https://registry.yarnpkg.com/@yarnpkg/lockfile/-/lockfile-1.1.0.tgz#e77a97fbd345b76d83245edcd17d393b1b41fb31" integrity sha512-GpSwvyXOcOOlV70vbnzjj4fW5xW/FdUF6nQEt1ENy7m4ZCczi1+/buVUPAqmGfqznsORNFzUMjctTIp8a9tuCQ== -JSONStream@1.3.5, JSONStream@^1.0.4: +"@zkochan/cmd-shim@^3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@zkochan/cmd-shim/-/cmd-shim-3.1.0.tgz#2ab8ed81f5bb5452a85f25758eb9b8681982fd2e" + integrity sha512-o8l0+x7C7sMZU3v9GuJIAU10qQLtwR1dtRQIOmlNMtyaqhmpXOzx1HWiYoWfmmf9HHZoAkXpc9TM9PQYF9d4Jg== + dependencies: + is-windows "^1.0.0" + mkdirp-promise "^5.0.1" + mz "^2.5.0" + +JSONStream@1.3.5, JSONStream@^1.0.4, JSONStream@^1.3.4: version "1.3.5" resolved "https://registry.yarnpkg.com/JSONStream/-/JSONStream-1.3.5.tgz#3208c1f08d3a4d99261ab64f92302bc15e111ca0" integrity sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ== @@ -2042,7 +3000,7 @@ JSONStream@1.3.5, JSONStream@^1.0.4: jsonparse "^1.2.0" through ">=2.2.7 <3" -abab@^2.0.0: +abab@^2.0.0, abab@^2.0.3, abab@^2.0.5: version "2.0.5" resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.5.tgz#c0b678fb32d60fc1219c784d6a826fe385aeb79a" integrity sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q== @@ -2090,6 +3048,14 @@ acorn-globals@^4.3.2: acorn "^6.0.1" acorn-walk "^6.0.1" +acorn-globals@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/acorn-globals/-/acorn-globals-6.0.0.tgz#46cdd39f0f8ff08a876619b55f5ac8a6dc770b45" + integrity sha512-ZQl7LOWaF5ePqqcX4hLuv/bLXYQNfNWw2c0/yX/TsPRKamzHcTGQnlCjHT3TsmkOUVEPS3crCxiPfdzE/Trlhg== + dependencies: + acorn "^7.1.1" + acorn-walk "^7.1.1" + acorn-import-assertions@^1.7.6: version "1.8.0" resolved "https://registry.yarnpkg.com/acorn-import-assertions/-/acorn-import-assertions-1.8.0.tgz#ba2b5939ce62c238db6d93d81c9b111b29b855e9" @@ -2105,25 +3071,37 @@ acorn-walk@^6.0.1: resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-6.2.0.tgz#123cb8f3b84c2171f1f7fb252615b1c78a6b1a8c" integrity sha512-7evsyfH1cLOCdAzZAd43Cic04yKydNx0cF+7tiA19p1XnLLPU4dpCQOqpjqwokFe//vS0QqfqqjCS2JkiIs0cA== +acorn-walk@^7.1.1: + version "7.2.0" + resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-7.2.0.tgz#0de889a601203909b0fbe07b8938dc21d2e967bc" + integrity sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA== + +acorn-walk@^8.0.0: + version "8.2.0" + resolved "https://registry.yarnpkg.com/acorn-walk/-/acorn-walk-8.2.0.tgz#741210f2e2426454508853a2f44d0ab83b7f69c1" + integrity sha512-k+iyHEuPgSw6SbuDpGQM+06HQUa04DZ3o+F6CSzXMvvI5KMvnaEqXe+YVe555R9nn6GPt404fos4wcgpw12SDA== + acorn@^6.0.1: version "6.4.2" resolved "https://registry.yarnpkg.com/acorn/-/acorn-6.4.2.tgz#35866fd710528e92de10cf06016498e47e39e1e6" integrity sha512-XtGIhXwF8YM8bJhGxG5kXgjkEuNGLTkoYqVE+KMR+aspr4KGYmKYg7yUe3KghyQ9yheNwLnjmzh/7+gfDBmHCQ== -acorn@^7.1.0, acorn@^7.4.0: +acorn@^7.1.0, acorn@^7.1.1, acorn@^7.4.0: version "7.4.1" resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== -acorn@^8.4.1: +acorn@^8.0.4, acorn@^8.2.4, acorn@^8.4.1: version "8.5.0" resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.5.0.tgz#4512ccb99b3698c752591e9bb4472e38ad43cee2" integrity sha512-yXbYeFy+jUuYd3/CDcg2NkIYE991XYX/bje7LmjJigUciaeO1JR4XxXgCIV1/Zc/dRuFEyw1L0pbA+qynJkW5Q== -add-stream@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/add-stream/-/add-stream-1.0.0.tgz#6a7990437ca736d5e1288db92bd3266d5f5cb2aa" - integrity sha1-anmQQ3ynNtXhKI25K9MmbV9csqo= +agent-base@4, agent-base@^4.3.0: + version "4.3.0" + resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-4.3.0.tgz#8165f01c436009bccad0b1d122f05ed770efc6ee" + integrity sha512-salcGninV0nPrwpGNn4VTXBb1SOuXQBiqbrNXoeizJsHrsL6ERFM2Ne3JUSBWRE6aeNJI2ROP/WEEIDUiDe3cg== + dependencies: + es6-promisify "^5.0.0" agent-base@6, agent-base@^6.0.2: version "6.0.2" @@ -2132,13 +3110,18 @@ agent-base@6, agent-base@^6.0.2: dependencies: debug "4" -agentkeepalive@^4.1.3: - version "4.1.4" - resolved "https://registry.yarnpkg.com/agentkeepalive/-/agentkeepalive-4.1.4.tgz#d928028a4862cb11718e55227872e842a44c945b" - integrity sha512-+V/rGa3EuU74H6wR04plBb7Ks10FbtUQgRj/FQOG7uUIEuaINI+AiqJR1k6t3SVNs7o7ZjIdus6706qqzVq8jQ== +agent-base@~4.2.1: + version "4.2.1" + resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-4.2.1.tgz#d89e5999f797875674c07d87f260fc41e83e8ca9" + integrity sha512-JVwXMr9nHYTUXsBFKUqhJwvlcYU/blreOEUkhNR2eXZIvwd+c+o5V4MgDPKWnMS/56awN3TRzIP+KoPn+roQtg== + dependencies: + es6-promisify "^5.0.0" + +agentkeepalive@^3.4.1: + version "3.5.2" + resolved "https://registry.yarnpkg.com/agentkeepalive/-/agentkeepalive-3.5.2.tgz#a113924dd3fa24a0bc3b78108c450c2abee00f67" + integrity sha512-e0L/HNe6qkQ7H19kTlRRqUibEAwDK5AFk6y3PtMsuut2VAH6+Q4xZml1tNDJD7kSAyqmbG/K08K5WEJYtUrSlQ== dependencies: - debug "^4.1.0" - depd "^1.1.2" humanize-ms "^1.2.1" aggregate-error@^3.0.0: @@ -2149,12 +3132,17 @@ aggregate-error@^3.0.0: clean-stack "^2.0.0" indent-string "^4.0.0" -ajv-keywords@^3.5.2: +ajv-errors@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/ajv-errors/-/ajv-errors-1.0.1.tgz#f35986aceb91afadec4102fbd85014950cefa64d" + integrity sha512-DCRfO/4nQ+89p/RK43i8Ezd41EqdGIU4ld7nGF8OQ14oc/we5rEntLCUa7+jrn3nn83BosfwZA0wb4pon2o8iQ== + +ajv-keywords@^3.1.0, ajv-keywords@^3.5.2: version "3.5.2" resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d" integrity sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ== -ajv@^6.10.0, ajv@^6.12.3, ajv@^6.12.4, ajv@^6.12.5: +ajv@^6.1.0, ajv@^6.10.0, ajv@^6.12.3, ajv@^6.12.4, ajv@^6.12.5: version "6.12.6" resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" integrity sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g== @@ -2179,7 +3167,12 @@ ansi-colors@^4.1.1: resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348" integrity sha512-JoX0apGbHaUJBNl6yF+p6JAFYZ666/hhCGKN5t9QFjbJQKUU/g8MNbFDbvfrgKXvI1QpZplPOnwIo99lX/AAmA== -ansi-escapes@^4.2.1: +ansi-escapes@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-3.2.0.tgz#8780b98ff9dbf5638152d1f1fe5c1d7b4442976b" + integrity sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ== + +ansi-escapes@^4.2.1, ansi-escapes@^4.3.0: version "4.3.2" resolved "https://registry.yarnpkg.com/ansi-escapes/-/ansi-escapes-4.3.2.tgz#6b2291d1db7d98b6521d5f1efa42d0f3a9feb65e" integrity sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ== @@ -2191,12 +3184,22 @@ ansi-regex@^2.0.0: resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df" integrity sha1-w7M6te42DYbg5ijwRorn7yfWVN8= -ansi-regex@^5.0.1: +ansi-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-3.0.0.tgz#ed0317c322064f79466c02966bddb605ab37d998" + integrity sha1-7QMXwyIGT3lGbAKWa922Bas32Zg= + +ansi-regex@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-4.1.0.tgz#8b9f8f08cf1acb843756a839ca8c7e3168c51997" + integrity sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg== + +ansi-regex@^5.0.0, ansi-regex@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== -ansi-styles@^3.2.1: +ansi-styles@^3.2.0, ansi-styles@^3.2.1: version "3.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== @@ -2210,12 +3213,33 @@ ansi-styles@^4.0.0, ansi-styles@^4.1.0: dependencies: color-convert "^2.0.1" +any-promise@^1.0.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/any-promise/-/any-promise-1.3.0.tgz#abc6afeedcea52e809cdc0376aed3ce39635d17f" + integrity sha1-q8av7tzqUugJzcA3au0845Y10X8= + +anymatch@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-2.0.0.tgz#bcb24b4f37934d9aa7ac17b4adaf89e7c76ef2eb" + integrity sha512-5teOsQWABXHHBFP9y3skS5P3d/WfWXpv3FUpy+LorMrNYaT9pI4oLMQX7jzQ2KklNpGpWHzdCXTDT2Y3XGlZBw== + dependencies: + micromatch "^3.1.4" + normalize-path "^2.1.1" + +anymatch@^3.0.3: + version "3.1.2" + resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.2.tgz#c0557c096af32f106198f4f4e2a383537e378716" + integrity sha512-P43ePfOAIupkguHUycrc4qJ9kz8ZiuOUijaETwX7THt0Y/GNK7v0aa8rY816xWjZ7rJdA5XdMcpVFTKMq+RvWg== + dependencies: + normalize-path "^3.0.0" + picomatch "^2.0.4" + apache-md5@1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/apache-md5/-/apache-md5-1.1.2.tgz#ee49736b639b4f108b6e9e626c6da99306b41692" integrity sha1-7klza2ObTxCLbp5ibG2pkwa0FpI= -aproba@^1.0.3: +aproba@^1.0.3, aproba@^1.1.1: version "1.2.0" resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw== @@ -2245,16 +3269,41 @@ argparse@^2.0.1: resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== -array-differ@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/array-differ/-/array-differ-3.0.0.tgz#3cbb3d0f316810eafcc47624734237d6aee4ae6b" - integrity sha512-THtfYS6KtME/yIAhKjZ2ul7XI96lQGHRputJQHO80LAWQnuGP4iCIN8vdMRboGbIEYBwU33q8Tch1os2+X0kMg== +arr-diff@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/arr-diff/-/arr-diff-4.0.0.tgz#d6461074febfec71e7e15235761a329a5dc7c520" + integrity sha1-1kYQdP6/7HHn4VI1dhoyml3HxSA= + +arr-flatten@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/arr-flatten/-/arr-flatten-1.1.0.tgz#36048bbff4e7b47e136644316c99669ea5ae91f1" + integrity sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg== + +arr-union@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/arr-union/-/arr-union-3.1.0.tgz#e39b09aea9def866a8f206e288af63919bae39c4" + integrity sha1-45sJrqne+Gao8gbiiK9jkZuuOcQ= + +array-differ@^2.0.3: + version "2.1.0" + resolved "https://registry.yarnpkg.com/array-differ/-/array-differ-2.1.0.tgz#4b9c1c3f14b906757082925769e8ab904f4801b1" + integrity sha512-KbUpJgx909ZscOc/7CLATBFam7P1Z1QRQInvgT0UztM9Q72aGKCunKASAl7WNW0tnPmPyEMeMhdsfWhfmW037w== array-equal@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/array-equal/-/array-equal-1.0.0.tgz#8c2a5ef2472fd9ea742b04c77a75093ba2757c93" integrity sha1-jCpe8kcv2ep0KwTHenUJO6J1fJM= +array-find-index@^1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/array-find-index/-/array-find-index-1.0.2.tgz#df010aa1287e164bbda6f9723b0a96a1ec4187a1" + integrity sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E= + +array-flat-polyfill@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/array-flat-polyfill/-/array-flat-polyfill-1.0.1.tgz#1e3a4255be619dfbffbfd1d635c1cf357cd034e7" + integrity sha512-hfJmKupmQN0lwi0xG6FQ5U8Rd97RnIERplymOv/qpq8AoNKPPAnxJadjFA23FNWm88wykh9HmpLJUUwUtNU/iw== + array-flatten@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" @@ -2265,21 +3314,53 @@ array-ify@^1.0.0: resolved "https://registry.yarnpkg.com/array-ify/-/array-ify-1.0.0.tgz#9e528762b4a9066ad163a6962a364418e9626ece" integrity sha1-nlKHYrSpBmrRY6aWKjZEGOlibs4= +array-includes@^3.1.3, array-includes@^3.1.4: + version "3.1.4" + resolved "https://registry.yarnpkg.com/array-includes/-/array-includes-3.1.4.tgz#f5b493162c760f3539631f005ba2bb46acb45ba9" + integrity sha512-ZTNSQkmWumEbiHO2GF4GmWxYVTiQyJy2XOTa15sdQSrvKn7l+180egQMqlrMOUMCyLMD7pmyQe4mMDUT6Behrw== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + es-abstract "^1.19.1" + get-intrinsic "^1.1.1" + is-string "^1.0.7" + +array-union@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/array-union/-/array-union-1.0.2.tgz#9a34410e4f4e3da23dea375be5be70f24778ec39" + integrity sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk= + dependencies: + array-uniq "^1.0.1" + array-union@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/array-union/-/array-union-2.1.0.tgz#b798420adbeb1de828d84acd8a2e23d3efe85e8d" integrity sha512-HGyxoOTYUyCM6stUe6EJgnd4EoewAI7zMdfqO+kGjnlZmBDz/cR5pf8r/cR4Wq60sL/p0IkcjUEEPwS3GFrIyw== +array-uniq@^1.0.1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/array-uniq/-/array-uniq-1.0.3.tgz#af6ac877a25cc7f74e058894753858dfdb24fdb6" + integrity sha1-r2rId6Jcx/dOBYiUdThY39sk/bY= + +array-unique@^0.3.2: + version "0.3.2" + resolved "https://registry.yarnpkg.com/array-unique/-/array-unique-0.3.2.tgz#a894b75d4bc4f6cd679ef3244a9fd8f46ae2d428" + integrity sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg= + +array.prototype.flatmap@^1.2.5: + version "1.2.5" + resolved "https://registry.yarnpkg.com/array.prototype.flatmap/-/array.prototype.flatmap-1.2.5.tgz#908dc82d8a406930fdf38598d51e7411d18d4446" + integrity sha512-08u6rVyi1Lj7oqWbS9nUxliETrtIROT4XGTA4D/LWGten6E3ocm7cy9SIrmNHOL5XVbVuckUp3X6Xyg8/zpvHA== + dependencies: + call-bind "^1.0.0" + define-properties "^1.1.3" + es-abstract "^1.19.0" + arrify@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0= -arrify@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/arrify/-/arrify-2.0.1.tgz#c9655e9331e0abcd588d2a7cad7e9956f66701fa" - integrity sha512-3duEwti880xqi4eAMN8AyR4a0ByT90zoYdLlevfrvU43vb0YZwZVfxOgxWrLXXXpyugL0hNZc9G6BiB5B3nUug== - asap@^2.0.0: version "2.0.6" resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" @@ -2297,6 +3378,11 @@ assert-plus@1.0.0, assert-plus@^1.0.0: resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU= +assign-symbols@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" + integrity sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c= + astral-regex@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31" @@ -2327,6 +3413,16 @@ at-least-node@^1.0.0: resolved "https://registry.yarnpkg.com/at-least-node/-/at-least-node-1.0.0.tgz#602cd4b46e844ad4effc92a8011a3c46e0238dc2" integrity sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg== +atob-lite@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/atob-lite/-/atob-lite-2.0.0.tgz#0fef5ad46f1bd7a8502c65727f0367d5ee43d696" + integrity sha1-D+9a1G8b16hQLGVyfwNn1e5D1pY= + +atob@^2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/atob/-/atob-2.1.2.tgz#6d9517eb9e030d2436666651e86bd9f6f13533c9" + integrity sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg== + atomic-sleep@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/atomic-sleep/-/atomic-sleep-1.0.0.tgz#eb85b77a601fc932cfe432c5acd364a9e2c9075b" @@ -2342,16 +3438,95 @@ aws4@^1.8.0: resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.11.0.tgz#d61f46d83b2519250e2784daf5b09479a8b41c59" integrity sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA== +babel-jest@^26.6.3: + version "26.6.3" + resolved "https://registry.yarnpkg.com/babel-jest/-/babel-jest-26.6.3.tgz#d87d25cb0037577a0c89f82e5755c5d293c01056" + integrity sha512-pl4Q+GAVOHwvjrck6jKjvmGhnO3jHX/xuB9d27f+EJZ/6k+6nMuPjorrYp7s++bKKdANwzElBWnLWaObvTnaZA== + dependencies: + "@jest/transform" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/babel__core" "^7.1.7" + babel-plugin-istanbul "^6.0.0" + babel-preset-jest "^26.6.2" + chalk "^4.0.0" + graceful-fs "^4.2.4" + slash "^3.0.0" + +babel-plugin-istanbul@^6.0.0: + version "6.1.1" + resolved "https://registry.yarnpkg.com/babel-plugin-istanbul/-/babel-plugin-istanbul-6.1.1.tgz#fa88ec59232fd9b4e36dbbc540a8ec9a9b47da73" + integrity sha512-Y1IQok9821cC9onCx5otgFfRm7Lm+I+wwxOx738M/WLPZ9Q42m4IG5W0FNX8WLL2gYMZo3JkuXIH2DOpWM+qwA== + dependencies: + "@babel/helper-plugin-utils" "^7.0.0" + "@istanbuljs/load-nyc-config" "^1.0.0" + "@istanbuljs/schema" "^0.1.2" + istanbul-lib-instrument "^5.0.4" + test-exclude "^6.0.0" + +babel-plugin-jest-hoist@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-26.6.2.tgz#8185bd030348d254c6d7dd974355e6a28b21e62d" + integrity sha512-PO9t0697lNTmcEHH69mdtYiOIkkOlj9fySqfO3K1eCcdISevLAE0xY59VLLUj0SoiPiTX/JU2CYFpILydUa5Lw== + dependencies: + "@babel/template" "^7.3.3" + "@babel/types" "^7.3.3" + "@types/babel__core" "^7.0.0" + "@types/babel__traverse" "^7.0.6" + +babel-preset-current-node-syntax@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.0.1.tgz#b4399239b89b2a011f9ddbe3e4f401fc40cff73b" + integrity sha512-M7LQ0bxarkxQoN+vz5aJPsLBn77n8QgTFmo8WK0/44auK2xlCXrYcUxHFxgU7qW5Yzw/CjmLRK2uJzaCd7LvqQ== + dependencies: + "@babel/plugin-syntax-async-generators" "^7.8.4" + "@babel/plugin-syntax-bigint" "^7.8.3" + "@babel/plugin-syntax-class-properties" "^7.8.3" + "@babel/plugin-syntax-import-meta" "^7.8.3" + "@babel/plugin-syntax-json-strings" "^7.8.3" + "@babel/plugin-syntax-logical-assignment-operators" "^7.8.3" + "@babel/plugin-syntax-nullish-coalescing-operator" "^7.8.3" + "@babel/plugin-syntax-numeric-separator" "^7.8.3" + "@babel/plugin-syntax-object-rest-spread" "^7.8.3" + "@babel/plugin-syntax-optional-catch-binding" "^7.8.3" + "@babel/plugin-syntax-optional-chaining" "^7.8.3" + "@babel/plugin-syntax-top-level-await" "^7.8.3" + +babel-preset-jest@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/babel-preset-jest/-/babel-preset-jest-26.6.2.tgz#747872b1171df032252426586881d62d31798fee" + integrity sha512-YvdtlVm9t3k777c5NPQIv6cxFFFapys25HiUmuSgHwIZhfifweR5c5Sf5nwE3MAbfu327CYSvps8Yx6ANLyleQ== + dependencies: + babel-plugin-jest-hoist "^26.6.2" + babel-preset-current-node-syntax "^1.0.0" + balanced-match@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== +base16@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/base16/-/base16-1.0.0.tgz#e297f60d7ec1014a7a971a39ebc8a98c0b681e70" + integrity sha1-4pf2DX7BAUp6lxo568ipjAtoHnA= + base64-js@^1.3.1: version "1.5.1" resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" integrity sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA== +base@^0.11.1: + version "0.11.2" + resolved "https://registry.yarnpkg.com/base/-/base-0.11.2.tgz#7bde5ced145b6d551a90db87f83c558b4eb48a8f" + integrity sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg== + dependencies: + 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" + bcrypt-pbkdf@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz#a4301d389b6a43f9b67ff3ca11a3f6637e360e9e" @@ -2364,7 +3539,7 @@ bcryptjs@2.4.3: resolved "https://registry.yarnpkg.com/bcryptjs/-/bcryptjs-2.4.3.tgz#9ab5627b93e60621ff7cdac5da9733027df1d0cb" integrity sha1-mrVie5PmBiH/fNrF2pczAn3x0Ms= -before-after-hook@^2.2.0: +before-after-hook@^2.0.0: version "2.2.2" resolved "https://registry.yarnpkg.com/before-after-hook/-/before-after-hook-2.2.2.tgz#a6e8ca41028d90ee2c24222f201c90956091613e" integrity sha512-3pZEU3NT5BFUo/AD5ERPWOgQOCZITni6iavr5AUw5AUwQjMlI0kzu5btnyD39AF0gUEsDPwJT+oY1ORBJijPjQ== @@ -2374,6 +3549,16 @@ big.js@^5.2.2: resolved "https://registry.yarnpkg.com/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328" integrity sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ== +blacklist@^1.1.4: + version "1.1.4" + resolved "https://registry.yarnpkg.com/blacklist/-/blacklist-1.1.4.tgz#b2dd09d6177625b2caa69835a37b28995fa9a2f2" + integrity sha1-st0J1hd2JbLKppg1o3somV+povI= + +bluebird@^3.5.1, bluebird@^3.5.3, bluebird@^3.5.5: + version "3.7.2" + resolved "https://registry.yarnpkg.com/bluebird/-/bluebird-3.7.2.tgz#9f229c15be272454ffa973ace0dbee79a1b0c36f" + integrity sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg== + body-parser@1.19.0: version "1.19.0" resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.19.0.tgz#96b2709e57c9c4e09a6fd66a8fd979844f69f08a" @@ -2398,6 +3583,22 @@ brace-expansion@^1.1.7: balanced-match "^1.0.0" concat-map "0.0.1" +braces@^2.3.1: + version "2.3.2" + resolved "https://registry.yarnpkg.com/braces/-/braces-2.3.2.tgz#5979fd3f14cd531565e5fa2df1abfff1dfaee729" + integrity sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w== + dependencies: + 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" + braces@^3.0.1: version "3.0.2" resolved "https://registry.yarnpkg.com/braces/-/braces-3.0.2.tgz#3454e1a462ee8d599e236df336cd9ea4f8afe107" @@ -2410,7 +3611,7 @@ browser-process-hrtime@^1.0.0: resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626" integrity sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow== -browserslist@^4.14.5: +browserslist@^4.14.5, browserslist@^4.17.5: version "4.17.6" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.17.6.tgz#c76be33e7786b497f66cad25a73756c8b938985d" integrity sha512-uPgz3vyRTlEiCv4ee9KlsKgo2V6qPk7Jsn0KAn2OBqbqKo3iNcPEC1Ti6J4dwnz+aIRfEEEuOzC9IBk8tXUomw== @@ -2421,6 +3622,23 @@ browserslist@^4.14.5: node-releases "^2.0.1" picocolors "^1.0.0" +bser@2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/bser/-/bser-2.1.1.tgz#e6787da20ece9d07998533cfd9de6f5c38f4bc05" + integrity sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ== + dependencies: + node-int64 "^0.4.0" + +btoa-lite@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/btoa-lite/-/btoa-lite-1.0.0.tgz#337766da15801210fdd956c22e9c6891ab9d0337" + integrity sha1-M3dm2hWAEhD92VbCLpxokaudAzc= + +buffer-crc32@~0.2.3: + version "0.2.13" + resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242" + integrity sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI= + buffer-equal-constant-time@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/buffer-equal-constant-time/-/buffer-equal-constant-time-1.0.1.tgz#f8e71132f7ffe6e01a5c9697a4c6f3e48d5cc819" @@ -2449,10 +3667,10 @@ byline@^5.0.0: resolved "https://registry.yarnpkg.com/byline/-/byline-5.0.0.tgz#741c5216468eadc457b03410118ad77de8c1ddb1" integrity sha1-dBxSFkaOrcRXsDQQEYrXfejB3bE= -byte-size@^7.0.0: - version "7.0.1" - resolved "https://registry.yarnpkg.com/byte-size/-/byte-size-7.0.1.tgz#b1daf3386de7ab9d706b941a748dbfc71130dee3" - integrity sha512-crQdqyCwhokxwV1UyDzLZanhkugAgft7vt0qbbdt60C6Zf3CAiGmtUCylbtYwrU6loOUw3euGrNtW1J651ot1A== +byte-size@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/byte-size/-/byte-size-5.0.1.tgz#4b651039a5ecd96767e71a3d7ed380e48bed4191" + integrity sha512-/XuKeqWocKsYa/cBY1YbSJSWWqTi4cFgr9S6OyM7PBaPbr9zvNGwWP33vt0uqGhwDdN+y3yhbXVILEUpnwEWGw== bytes@3.0.0: version "3.0.0" @@ -2464,7 +3682,28 @@ bytes@3.1.0: resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.0.tgz#f6cf7933a360e0588fa9fde85651cdc7f805d1f6" integrity sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg== -cacache@^15.0.5, cacache@^15.2.0: +cacache@^12.0.0, cacache@^12.0.3: + version "12.0.4" + resolved "https://registry.yarnpkg.com/cacache/-/cacache-12.0.4.tgz#668bcbd105aeb5f1d92fe25570ec9525c8faa40c" + integrity sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ== + dependencies: + 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" + +cacache@^15.0.5: version "15.3.0" resolved "https://registry.yarnpkg.com/cacache/-/cacache-15.3.0.tgz#dc85380fb2f556fe3dda4c719bfa0ec875a7f1eb" integrity sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ== @@ -2488,6 +3727,21 @@ cacache@^15.0.5, cacache@^15.2.0: tar "^6.0.2" unique-filename "^1.1.1" +cache-base@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/cache-base/-/cache-base-1.0.1.tgz#0a7f46416831c8b662ee36fe4e7c59d76f666ab2" + integrity sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ== + dependencies: + collection-visit "^1.0.0" + component-emitter "^1.2.1" + get-value "^2.0.6" + has-value "^1.0.0" + isobject "^3.0.1" + set-value "^2.0.0" + to-object-path "^0.3.0" + union-value "^1.0.0" + unset-value "^1.0.0" + cacheable-request@^6.0.0: version "6.1.0" resolved "https://registry.yarnpkg.com/cacheable-request/-/cacheable-request-6.1.0.tgz#20ffb8bd162ba4be11e9567d823db651052ca912" @@ -2509,11 +3763,52 @@ call-bind@^1.0.0, call-bind@^1.0.2: function-bind "^1.1.1" get-intrinsic "^1.0.2" +call-me-maybe@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/call-me-maybe/-/call-me-maybe-1.0.1.tgz#26d208ea89e37b5cbde60250a15f031c16a4d66b" + integrity sha1-JtII6onje1y95gJQoV8DHBak1ms= + +caller-callsite@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/caller-callsite/-/caller-callsite-2.0.0.tgz#847e0fce0a223750a9a027c54b33731ad3154134" + integrity sha1-hH4PzgoiN1CpoCfFSzNzGtMVQTQ= + dependencies: + callsites "^2.0.0" + +caller-path@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/caller-path/-/caller-path-2.0.0.tgz#468f83044e369ab2010fac5f06ceee15bb2cb1f4" + integrity sha1-Ro+DBE42mrIBD6xfBs7uFbsssfQ= + dependencies: + caller-callsite "^2.0.0" + +callsites@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/callsites/-/callsites-2.0.0.tgz#06eb84f00eea413da86affefacbffb36093b3c50" + integrity sha1-BuuE8A7qQT2oav/vrL/7Ngk7PFA= + callsites@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== +camelcase-keys@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz#308beeaffdf28119051efa1d932213c91b8f92e7" + integrity sha1-MIvur/3ygRkFHvodkyITyRuPkuc= + dependencies: + camelcase "^2.0.0" + map-obj "^1.0.0" + +camelcase-keys@^4.0.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-4.2.0.tgz#a2aa5fb1af688758259c32c141426d78923b9b77" + integrity sha1-oqpfsa9oh1glnDLBQUJteJI7m3c= + dependencies: + camelcase "^4.1.0" + map-obj "^2.0.0" + quick-lru "^1.0.0" + camelcase-keys@^6.2.2: version "6.2.2" resolved "https://registry.yarnpkg.com/camelcase-keys/-/camelcase-keys-6.2.2.tgz#5e755d6ba51aa223ec7d3d52f25778210f9dc3c0" @@ -2523,22 +3818,44 @@ camelcase-keys@^6.2.2: map-obj "^4.0.0" quick-lru "^4.0.1" -camelcase@^5.3.1: +camelcase@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" + integrity sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8= + +camelcase@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd" + integrity sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0= + +camelcase@^5.0.0, camelcase@^5.3.1: version "5.3.1" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== +camelcase@^6.0.0, camelcase@^6.2.0: + version "6.2.0" + resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.2.0.tgz#924af881c9d525ac9d87f40d964e5cea982a1809" + integrity sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg== + caniuse-lite@^1.0.30001274: version "1.0.30001280" resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001280.tgz#066a506046ba4be34cde5f74a08db7a396718fb7" integrity sha512-kFXwYvHe5rix25uwueBxC569o53J6TpnGu0BEEn+6Lhl2vsnAumRFWEBhDft1fwyo6m1r4i+RqA4+163FpeFcA== +capture-exit@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/capture-exit/-/capture-exit-2.0.0.tgz#fb953bfaebeb781f62898239dabb426d08a509a4" + integrity sha512-PiT/hQmTonHhl/HFGN+Lx3JJUznrVYJ3+AQsnthneZbvW7x+f08Tk7yLJTLEOUvBTbduLeeBkxEaYXUOUrRq6g== + dependencies: + rsvp "^4.8.4" + caseless@~0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= -chalk@^2.0.0, chalk@^2.3.0, chalk@^2.4.1: +chalk@^2.0.0, chalk@^2.3.0, chalk@^2.3.1, chalk@^2.4.1, chalk@^2.4.2: version "2.4.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== @@ -2555,6 +3872,11 @@ chalk@^4.0.0, chalk@^4.1.0: ansi-styles "^4.1.0" supports-color "^7.1.0" +char-regex@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/char-regex/-/char-regex-1.0.2.tgz#d744358226217f981ed58f479b1d6bcc29545dcf" + integrity sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw== + chardet@^0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/chardet/-/chardet-0.7.0.tgz#90094849f0937f2eedc2425d0d28a9e5f0cbad9e" @@ -2565,7 +3887,7 @@ child_process@~1.0.2: resolved "https://registry.yarnpkg.com/child_process/-/child_process-1.0.2.tgz#b1f7e7fc73d25e7fd1d455adc94e143830182b5a" integrity sha1-sffn/HPSXn/R1FWtyU4UODAYK1o= -chownr@^1.1.4: +chownr@^1.1.1, chownr@^1.1.2, chownr@^1.1.4: version "1.1.4" resolved "https://registry.yarnpkg.com/chownr/-/chownr-1.1.4.tgz#6fc9d7b42d32a583596337666e7d08084da2cc6b" integrity sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg== @@ -2585,6 +3907,21 @@ ci-info@^2.0.0: resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46" integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ== +cjs-module-lexer@^0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-0.6.0.tgz#4186fcca0eae175970aee870b9fe2d6cf8d5655f" + integrity sha512-uc2Vix1frTfnuzxxu1Hp4ktSvM3QaI4oXl4ZUqL1wjTu/BGki9TrCWoqLTg/drR1KwAEarXuRFCG2Svr1GxPFw== + +class-utils@^0.3.5: + version "0.3.6" + resolved "https://registry.yarnpkg.com/class-utils/-/class-utils-0.3.6.tgz#f93369ae8b9a7ce02fd41faad0ca83033190c463" + integrity sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg== + dependencies: + arr-union "^3.1.0" + define-property "^0.2.5" + isobject "^3.0.0" + static-extend "^0.1.1" + classnames@^2.2: version "2.3.1" resolved "https://registry.yarnpkg.com/classnames/-/classnames-2.3.1.tgz#dfcfa3891e306ec1dad105d0e88f4417b8535e8e" @@ -2595,6 +3932,13 @@ clean-stack@^2.0.0: resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== +cli-cursor@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" + integrity sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU= + dependencies: + restore-cursor "^2.0.0" + cli-cursor@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-3.1.0.tgz#264305a7ae490d1d03bf0c9ba7c925d1753af307" @@ -2602,6 +3946,19 @@ cli-cursor@^3.1.0: dependencies: restore-cursor "^3.1.0" +cli-truncate@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-2.1.0.tgz#c39e28bf05edcde5be3b98992a22deed5a2b93c7" + integrity sha512-n8fOixwDD6b/ObinzTrp1ZKFzbgvKZvuz/TvejnLn1aQfC6r52XEx85FmuC+3HI+JM7coBRXUvNqEU2PHVrHpg== + dependencies: + slice-ansi "^3.0.0" + string-width "^4.2.0" + +cli-width@^2.0.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-2.2.1.tgz#b0433d0b4e9c847ef18868a4ef16fd5fc8271c48" + integrity sha512-GRMWDxpOB6Dgk2E5Uo+3eEBvtOOlimMmpbFiKuLFnQzYDavtLFY3K5ona41jgN/WdRZtG7utuVSVTL4HbZHGkw== + cli-width@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/cli-width/-/cli-width-3.0.0.tgz#a2f48437a2caa9a22436e794bf071ec9e61cedf6" @@ -2614,6 +3971,24 @@ clipanion@3.1.0: dependencies: typanion "^3.3.1" +cliui@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-5.0.0.tgz#deefcfdb2e800784aa34f46fa08e06851c7bbbc5" + integrity sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA== + dependencies: + string-width "^3.1.0" + strip-ansi "^5.2.0" + wrap-ansi "^5.1.0" + +cliui@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-6.0.0.tgz#511d702c0c4e41ca156d7d0e96021f23e13225b1" + integrity sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ== + dependencies: + string-width "^4.2.0" + strip-ansi "^6.0.0" + wrap-ansi "^6.2.0" + cliui@^7.0.2: version "7.0.4" resolved "https://registry.yarnpkg.com/cliui/-/cliui-7.0.4.tgz#a0265ee655476fc807aea9df3df8df7783808b4f" @@ -2644,12 +4019,15 @@ clone@^1.0.2: resolved "https://registry.yarnpkg.com/clone/-/clone-1.0.4.tgz#da309cc263df15994c688ca902179ca3c7cd7c7e" integrity sha1-2jCcwmPfFZlMaIypAheco8fNfH4= -cmd-shim@^4.1.0: - version "4.1.0" - resolved "https://registry.yarnpkg.com/cmd-shim/-/cmd-shim-4.1.0.tgz#b3a904a6743e9fede4148c6f3800bf2a08135bdd" - integrity sha512-lb9L7EM4I/ZRVuljLPEtUJOP+xiQVknZ4ZMpMgEp4JzNldPb27HU03hi6K1/6CoIuit/Zm/LQXySErFeXxDprw== - dependencies: - mkdirp-infer-owner "^2.0.0" +clone@^2.1.2, clone@~2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/clone/-/clone-2.1.2.tgz#1b7f4b9f591f1e8f83670401600345a02887435f" + integrity sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18= + +co@^4.6.0: + version "4.6.0" + resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" + integrity sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ= code-point-at@^1.0.0: version "1.1.0" @@ -2661,7 +4039,20 @@ codemirror@~5.61.0: resolved "https://registry.yarnpkg.com/codemirror/-/codemirror-5.61.1.tgz#ccfc8a43b8fcfb8b12e8e75b5ffde48d541406e0" integrity sha512-+D1NZjAucuzE93vJGbAaXzvoBHwp9nJZWWWF9utjv25+5AZUiah6CIlfb4ikG4MoDsFsCG8niiJH5++OO2LgIQ== -color-convert@^1.9.0: +collect-v8-coverage@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/collect-v8-coverage/-/collect-v8-coverage-1.0.1.tgz#cc2c8e94fc18bbdffe64d6534570c8a673b27f59" + integrity sha512-iBPtljfCNcTKNAto0KEtDfZ3qzjJvqE3aTGZsbhjSBlorqpXJlaWWtPO35D+ZImoC3KWejX64o+yPGxhWSTzfg== + +collection-visit@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/collection-visit/-/collection-visit-1.0.0.tgz#4bc0373c164bc3291b4d368c829cf1a80a59dca0" + integrity sha1-S8A3PBZLwykbTTaMgpzxqApZ3KA= + dependencies: + map-visit "^1.0.0" + object-visit "^1.0.0" + +color-convert@^1.9.0, color-convert@^1.9.3: version "1.9.3" resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== @@ -2680,12 +4071,28 @@ color-name@1.1.3: resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= -color-name@~1.1.4: +color-name@^1.0.0, color-name@~1.1.4: version "1.1.4" resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== -colorette@^2.0.14: +color-string@^1.6.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/color-string/-/color-string-1.6.0.tgz#c3915f61fe267672cb7e1e064c9d692219f6c312" + integrity sha512-c/hGS+kRWJutUBEngKKmk4iH3sD59MBkoxVapS/0wgpCz2u7XsNloxknyvBhzwEs1IbV36D9PwqLPJ2DTu3vMA== + dependencies: + color-name "^1.0.0" + simple-swizzle "^0.2.2" + +color@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/color/-/color-3.2.1.tgz#3544dc198caf4490c3ecc9a790b54fe9ff45e164" + integrity sha512-aBl7dZI9ENN6fUGC7mWpMTPNHmWUSNan9tuWN6ahh5ZLNk9baLJOnSMlrQkHcrfFgz2/RigjUVAjdx36VcemKA== + dependencies: + color-convert "^1.9.3" + color-string "^1.6.0" + +colorette@^2.0.14, colorette@^2.0.16: version "2.0.16" resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.16.tgz#713b9af84fdb000139f04546bd4a93f62a5085da" integrity sha512-hUewv7oMjCp+wkBv5Rm0v87eJhq4woh5rSR+42YSQJKecCqgIqNkZ6lAlQms/BwHPJA5NKMRlpxPRv0n8HQW6g== @@ -2698,23 +4105,33 @@ columnify@^1.5.4: strip-ansi "^3.0.0" wcwidth "^1.0.0" -combined-stream@^1.0.6, combined-stream@~1.0.6: +combined-stream@^1.0.6, combined-stream@^1.0.8, combined-stream@~1.0.6: version "1.0.8" resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== dependencies: delayed-stream "~1.0.0" -commander@^2.20.0: +commander@2, commander@^2.20.0: version "2.20.3" resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== -commander@^7.0.0: +commander@^6.2.0: + version "6.2.1" + resolved "https://registry.yarnpkg.com/commander/-/commander-6.2.1.tgz#0792eb682dfbc325999bb2b84fddddba110ac73c" + integrity sha512-U7VdrJFnJgo4xjrHpTzu0yrHPGImdsmD95ZlgYSEajAn2JKzDhDTPG9kBTefmObL2w/ngeZnilk+OV9CG3d7UA== + +commander@^7.0.0, commander@^7.2.0: version "7.2.0" resolved "https://registry.yarnpkg.com/commander/-/commander-7.2.0.tgz#a36cb57d0b501ce108e4d20559a150a391d97ab7" integrity sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw== +commander@^8.2.0: + version "8.3.0" + resolved "https://registry.yarnpkg.com/commander/-/commander-8.3.0.tgz#4837ea1b2da67b9c616a67afbb0fafee567bca66" + integrity sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww== + commander@~6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/commander/-/commander-6.0.0.tgz#2b270da94f8fb9014455312f829a1129dbf8887e" @@ -2733,6 +4150,11 @@ compare-func@^2.0.0: array-ify "^1.0.0" dot-prop "^5.1.0" +component-emitter@^1.2.1: + version "1.3.0" + resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0" + integrity sha512-Rd3se6QB+sO1TwqZjscQrurpEPIfO0/yYnSin6Q/rD3mOutHvUrCAhJub3r90uNb+SESBuE0QYoB90YdfatsRg== + compressible@~2.0.16: version "2.0.18" resolved "https://registry.yarnpkg.com/compressible/-/compressible-2.0.18.tgz#af53cca6b070d4c3c0750fbd77286a6d7cc46fba" @@ -2758,6 +4180,16 @@ concat-map@0.0.1: resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" integrity sha1-2Klr13/Wjfd5OnMDajug1UBdR3s= +concat-stream@^1.5.0: + version "1.6.2" + resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-1.6.2.tgz#904bdf194cd3122fc675c77fc4ac3d4ff0fd1a34" + integrity sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw== + dependencies: + buffer-from "^1.0.0" + inherits "^2.0.3" + readable-stream "^2.2.2" + typedarray "^0.0.6" + concat-stream@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/concat-stream/-/concat-stream-2.0.0.tgz#414cf5af790a48c60ab9be4527d56d5e41133cb1" @@ -2768,7 +4200,7 @@ concat-stream@^2.0.0: readable-stream "^3.0.2" typedarray "^0.0.6" -config-chain@^1.1.12: +config-chain@^1.1.11: version "1.1.13" resolved "https://registry.yarnpkg.com/config-chain/-/config-chain-1.1.13.tgz#fad0795aa6a6cdaff9ed1b68e9dff94372c232f4" integrity sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ== @@ -2793,7 +4225,7 @@ content-type@~1.0.4: resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.4.tgz#e138cc75e040c727b1966fe5e5f8c9aee256fe3b" integrity sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA== -conventional-changelog-angular@^5.0.12: +conventional-changelog-angular@^5.0.3: version "5.0.13" resolved "https://registry.yarnpkg.com/conventional-changelog-angular/-/conventional-changelog-angular-5.0.13.tgz#896885d63b914a70d4934b59d2fe7bde1832b28c" integrity sha512-i/gipMxs7s8L/QeuavPF2hLnJgH6pEZAttySB6aiQLWcX3puWDL3ACVmvBhJGxnAy52Qc15ua26BufY6KpmrVA== @@ -2801,36 +4233,36 @@ conventional-changelog-angular@^5.0.12: compare-func "^2.0.0" q "^1.5.1" -conventional-changelog-core@^4.2.2: - version "4.2.4" - resolved "https://registry.yarnpkg.com/conventional-changelog-core/-/conventional-changelog-core-4.2.4.tgz#e50d047e8ebacf63fac3dc67bf918177001e1e9f" - integrity sha512-gDVS+zVJHE2v4SLc6B0sLsPiloR0ygU7HaDW14aNJE1v4SlqJPILPl/aJC7YdtRE4CybBf8gDwObBvKha8Xlyg== +conventional-changelog-core@^3.1.6: + version "3.2.3" + resolved "https://registry.yarnpkg.com/conventional-changelog-core/-/conventional-changelog-core-3.2.3.tgz#b31410856f431c847086a7dcb4d2ca184a7d88fb" + integrity sha512-LMMX1JlxPIq/Ez5aYAYS5CpuwbOk6QFp8O4HLAcZxe3vxoCtABkhfjetk8IYdRB9CDQGwJFLR3Dr55Za6XKgUQ== dependencies: - add-stream "^1.0.0" - conventional-changelog-writer "^5.0.0" - conventional-commits-parser "^3.2.0" + conventional-changelog-writer "^4.0.6" + conventional-commits-parser "^3.0.3" dateformat "^3.0.0" - get-pkg-repo "^4.0.0" - git-raw-commits "^2.0.8" + get-pkg-repo "^1.0.0" + git-raw-commits "2.0.0" git-remote-origin-url "^2.0.0" - git-semver-tags "^4.1.1" - lodash "^4.17.15" - normalize-package-data "^3.0.0" + git-semver-tags "^2.0.3" + lodash "^4.2.1" + normalize-package-data "^2.3.5" q "^1.5.1" read-pkg "^3.0.0" read-pkg-up "^3.0.0" - through2 "^4.0.0" + through2 "^3.0.0" -conventional-changelog-preset-loader@^2.3.4: +conventional-changelog-preset-loader@^2.1.1: version "2.3.4" resolved "https://registry.yarnpkg.com/conventional-changelog-preset-loader/-/conventional-changelog-preset-loader-2.3.4.tgz#14a855abbffd59027fd602581f1f34d9862ea44c" integrity sha512-GEKRWkrSAZeTq5+YjUZOYxdHq+ci4dNwHvpaBC3+ENalzFWuCWa9EZXSuZBpkr72sMdKB+1fyDV4takK1Lf58g== -conventional-changelog-writer@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/conventional-changelog-writer/-/conventional-changelog-writer-5.0.0.tgz#c4042f3f1542f2f41d7d2e0d6cad23aba8df8eec" - integrity sha512-HnDh9QHLNWfL6E1uHz6krZEQOgm8hN7z/m7tT16xwd802fwgMN0Wqd7AQYVkhpsjDUx/99oo+nGgvKF657XP5g== +conventional-changelog-writer@^4.0.6: + version "4.1.0" + resolved "https://registry.yarnpkg.com/conventional-changelog-writer/-/conventional-changelog-writer-4.1.0.tgz#1ca7880b75aa28695ad33312a1f2366f4b12659f" + integrity sha512-WwKcUp7WyXYGQmkLsX4QmU42AZ1lqlvRW9mqoyiQzdD+rJWbTepdWoKJuwXTS+yq79XKnQNa93/roViPQrAQgw== dependencies: + compare-func "^2.0.0" conventional-commits-filter "^2.0.7" dateformat "^3.0.0" handlebars "^4.7.6" @@ -2841,7 +4273,7 @@ conventional-changelog-writer@^5.0.0: split "^1.0.0" through2 "^4.0.0" -conventional-commits-filter@^2.0.7: +conventional-commits-filter@^2.0.2, conventional-commits-filter@^2.0.7: version "2.0.7" resolved "https://registry.yarnpkg.com/conventional-commits-filter/-/conventional-commits-filter-2.0.7.tgz#f8d9b4f182fce00c9af7139da49365b136c8a0b3" integrity sha512-ASS9SamOP4TbCClsRHxIHXRfcGCnIoQqkvAzCSbZzTFLfcTqJVugB0agRgsEELsqaeWgsXv513eS116wnlSSPA== @@ -2849,7 +4281,7 @@ conventional-commits-filter@^2.0.7: lodash.ismatch "^4.4.0" modify-values "^1.0.0" -conventional-commits-parser@^3.2.0: +conventional-commits-parser@^3.0.3: version "3.2.3" resolved "https://registry.yarnpkg.com/conventional-commits-parser/-/conventional-commits-parser-3.2.3.tgz#fc43704698239451e3ef35fd1d8ed644f46bd86e" integrity sha512-YyRDR7On9H07ICFpRm/igcdjIqebXbvf4Cff+Pf0BrBys1i1EOzx9iFXNlAbdrLAR8jf7bkUYkDAr8pEy0q4Pw== @@ -2861,20 +4293,27 @@ conventional-commits-parser@^3.2.0: split2 "^3.0.0" through2 "^4.0.0" -conventional-recommended-bump@^6.1.0: - version "6.1.0" - resolved "https://registry.yarnpkg.com/conventional-recommended-bump/-/conventional-recommended-bump-6.1.0.tgz#cfa623285d1de554012f2ffde70d9c8a22231f55" - integrity sha512-uiApbSiNGM/kkdL9GTOLAqC4hbptObFo4wW2QRyHsKciGAfQuLU1ShZ1BIVI/+K2BE/W1AWYQMCXAsv4dyKPaw== +conventional-recommended-bump@^5.0.0: + version "5.0.1" + resolved "https://registry.yarnpkg.com/conventional-recommended-bump/-/conventional-recommended-bump-5.0.1.tgz#5af63903947b6e089e77767601cb592cabb106ba" + integrity sha512-RVdt0elRcCxL90IrNP0fYCpq1uGt2MALko0eyeQ+zQuDVWtMGAy9ng6yYn3kax42lCj9+XBxQ8ZN6S9bdKxDhQ== dependencies: concat-stream "^2.0.0" - conventional-changelog-preset-loader "^2.3.4" - conventional-commits-filter "^2.0.7" - conventional-commits-parser "^3.2.0" - git-raw-commits "^2.0.8" - git-semver-tags "^4.1.1" - meow "^8.0.0" + conventional-changelog-preset-loader "^2.1.1" + conventional-commits-filter "^2.0.2" + conventional-commits-parser "^3.0.3" + git-raw-commits "2.0.0" + git-semver-tags "^2.0.3" + meow "^4.0.0" q "^1.5.1" +convert-source-map@^1.4.0, convert-source-map@^1.6.0, convert-source-map@^1.7.0: + version "1.8.0" + resolved "https://registry.yarnpkg.com/convert-source-map/-/convert-source-map-1.8.0.tgz#f3373c32d21b4d780dd8004514684fb791ca4369" + integrity sha512-+OQdjP49zViI/6i7nIJpA8rAl4sV/JdPfU9nZs3VqOwGIgizICvuN2ru6fMd+4llL0tar18UYJXfZ/TWtmhUjA== + dependencies: + safe-buffer "~5.1.1" + cookie-signature@1.0.6: version "1.0.6" resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.6.tgz#e303a882b342cc3ee8ca513a79999734dab3ae2c" @@ -2893,6 +4332,23 @@ cookies@0.8.0: depd "~2.0.0" keygrip "~1.1.0" +copy-concurrently@^1.0.0: + version "1.0.5" + resolved "https://registry.yarnpkg.com/copy-concurrently/-/copy-concurrently-1.0.5.tgz#92297398cae34937fcafd6ec8139c18051f0b5e0" + integrity sha512-f2domd9fsVDFtaFcbaRZuYXwtdmnzqbADSwhSWYxYB/Q8zsdUUFMXVRwXGDMWmbEzAn1kdRrtI1T/KTFOL4X2A== + dependencies: + aproba "^1.1.1" + fs-write-stream-atomic "^1.0.8" + iferr "^0.1.5" + mkdirp "^0.5.1" + rimraf "^2.5.4" + run-queue "^1.0.0" + +copy-descriptor@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz#676f6eb3c39997c2ee1ac3a924fd6124748f578d" + integrity sha1-Z29us8OZl8LuGsOpJP1hJHSPV40= + core-util-is@1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7" @@ -2911,6 +4367,16 @@ cors@2.8.5: object-assign "^4" vary "^1" +cosmiconfig@^5.1.0, cosmiconfig@^5.2.1: + version "5.2.1" + resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-5.2.1.tgz#040f726809c591e77a17c0a3626ca45b4f168b1a" + integrity sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA== + dependencies: + import-fresh "^2.0.0" + is-directory "^0.3.1" + js-yaml "^3.13.1" + parse-json "^4.0.0" + cosmiconfig@^7.0.0: version "7.0.1" resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-7.0.1.tgz#714d756522cace867867ccb4474c5d01bbae5d6d" @@ -2922,7 +4388,15 @@ cosmiconfig@^7.0.0: path-type "^4.0.0" yaml "^1.10.0" -cross-spawn@^6.0.5: +create-react-class@^15.6.2: + version "15.7.0" + resolved "https://registry.yarnpkg.com/create-react-class/-/create-react-class-15.7.0.tgz#7499d7ca2e69bb51d13faf59bd04f0c65a1d6c1e" + integrity sha512-QZv4sFWG9S5RUvkTYWbflxeZX+JG7Cz0Tn33rQBJ+WFQTqTfUTjMjiv9tnfXazjsO5r0KhPs+AqCjyrQX6h2ng== + dependencies: + loose-envify "^1.3.1" + object-assign "^4.1.1" + +cross-spawn@^6.0.0, cross-spawn@^6.0.5: version "6.0.5" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" integrity sha512-eTVLrBSt7fjbDygz805pMnstIs2VTBNkRm0qxZd+M7A5XDdxVRWO5MxGBXZhjY4cqLYLdtrGqRf8mBPmzwSpWQ== @@ -2933,7 +4407,7 @@ cross-spawn@^6.0.5: shebang-command "^1.2.0" which "^1.2.9" -cross-spawn@^7.0.2, cross-spawn@^7.0.3: +cross-spawn@^7.0.0, cross-spawn@^7.0.2, cross-spawn@^7.0.3: version "7.0.3" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.3.tgz#f73a85b9d5d41d045551c177e2882d4ac85728a6" integrity sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w== @@ -2963,12 +4437,30 @@ css-loader@^5.0.1: schema-utils "^3.0.0" semver "^7.3.5" +css-loader@~5.0.1: + version "5.0.2" + resolved "https://registry.yarnpkg.com/css-loader/-/css-loader-5.0.2.tgz#24f758dae349bad0a440c50d7e2067742e0899cb" + integrity sha512-gbkBigdcHbmNvZ1Cg6aV6qh6k9N6XOr8YWzISLQGrwk2mgOH8LLrizhkxbDhQtaLtktyKHD4970S0xwz5btfTA== + 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" + cssesc@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/cssesc/-/cssesc-3.0.0.tgz#37741919903b868565e1c09ea747445cd18983ee" integrity sha512-/Tb/JcjK111nNScGob5MNtsntNM1aCNUDipB/TkwZFhyDrrE47SOx/18wF2bbjgc3ZzCSKW1T5nt5EbFoAz/Vg== -cssom@^0.4.1: +cssom@^0.4.1, cssom@^0.4.4: version "0.4.4" resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.4.4.tgz#5a66cf93d2d0b661d80bf6a44fb65f5c2e4e0a10" integrity sha512-p3pvU7r1MyyqbTk+WbNJIgJjG2VmTIaB10rI93LzVPrmDJKkzKYMtxxyAvQXR/NS6otuzveI7+7BBq3SjBS2mw== @@ -2978,7 +4470,7 @@ cssom@~0.3.6: resolved "https://registry.yarnpkg.com/cssom/-/cssom-0.3.8.tgz#9f1276f5b2b463f2114d3f2c75250af8c1a36f4a" integrity sha512-b0tGHbfegbhPJpxpiBPU2sCkigAqtM9O121le6bbOlgyV+NyGyCmVfJ6QW9eRjz8CpNfWEOYBIMIGRYkLwsIYg== -cssstyle@^2.0.0: +cssstyle@^2.0.0, cssstyle@^2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/cssstyle/-/cssstyle-2.3.0.tgz#ff665a0ddbdc31864b09647f34163443d90b0852" integrity sha512-AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A== @@ -2990,11 +4482,146 @@ csstype@2.6.9: resolved "https://registry.yarnpkg.com/csstype/-/csstype-2.6.9.tgz#05141d0cd557a56b8891394c1911c40c8a98d098" integrity sha512-xz39Sb4+OaTsULgUERcCk+TJj8ylkL4aSVDQiX/ksxbELSqwkgt4d4RD7fovIdgJGSuNYqwZEiVjYY5l0ask+Q== -csstype@^3.0.2, csstype@~3.0.3: +csstype@^3.0.2, csstype@^3.0.9, csstype@~3.0.3: version "3.0.9" resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.0.9.tgz#6410af31b26bd0520933d02cbc64fce9ce3fbf0b" integrity sha512-rpw6JPxK6Rfg1zLOYCSwle2GFOOsnjmDYDaBwEcwoOg4qlsIVCN789VkBZDJAGi4T07gI4YSutR43t9Zz4Lzuw== +currently-unhandled@^0.4.1: + version "0.4.1" + resolved "https://registry.yarnpkg.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz#988df33feab191ef799a61369dd76c17adf957ea" + integrity sha1-mI3zP+qxke95mmE2nddsF635V+o= + dependencies: + array-find-index "^1.0.1" + +cyclist@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/cyclist/-/cyclist-1.0.1.tgz#596e9698fd0c80e12038c2b82d6eb1b35b6224d9" + integrity sha1-WW6WmP0MgOEgOMK4LW6xs1tiJNk= + +"d3-array@1 - 2", d3-array@2, d3-array@^2.3.0, d3-array@^2.5.0, d3-array@^2.7.1: + version "2.12.1" + resolved "https://registry.yarnpkg.com/d3-array/-/d3-array-2.12.1.tgz#e20b41aafcdffdf5d50928004ececf815a465e81" + integrity sha512-B0ErZK/66mHtEsR1TkPEEkwdy+WDesimkM5gpZr5Dsg54BiTA5RXtYW5qTLIAcekaS9xfZrzBLF/OAkB3Qn1YQ== + dependencies: + internmap "^1.0.0" + +"d3-color@1 - 2", d3-color@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/d3-color/-/d3-color-2.0.0.tgz#8d625cab42ed9b8f601a1760a389f7ea9189d62e" + integrity sha512-SPXi0TSKPD4g9tw0NMZFnR95XVgUZiBH+uUTqQuDu1OsE2zomHU7ho0FISciaPvosimixwHFl3WHLGabv6dDgQ== + +d3-delaunay@^5.3.0: + version "5.3.0" + resolved "https://registry.yarnpkg.com/d3-delaunay/-/d3-delaunay-5.3.0.tgz#b47f05c38f854a4e7b3cea80e0bb12e57398772d" + integrity sha512-amALSrOllWVLaHTnDLHwMIiz0d1bBu9gZXd1FiLfXf8sHcX9jrcj81TVZOqD4UX7MgBZZ07c8GxzEgBpJqc74w== + dependencies: + delaunator "4" + +"d3-dispatch@1 - 2": + version "2.0.0" + resolved "https://registry.yarnpkg.com/d3-dispatch/-/d3-dispatch-2.0.0.tgz#8a18e16f76dd3fcaef42163c97b926aa9b55e7cf" + integrity sha512-S/m2VsXI7gAti2pBoLClFFTMOO1HTtT0j99AuXLoGFKO6deHDdnv6ZGTxSTTUTgO1zVcv82fCOtDjYK4EECmWA== + +d3-dsv@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/d3-dsv/-/d3-dsv-2.0.0.tgz#b37b194b6df42da513a120d913ad1be22b5fe7c5" + integrity sha512-E+Pn8UJYx9mViuIUkoc93gJGGYut6mSDKy2+XaPwccwkRGlR+LO97L2VCCRjQivTwLHkSnAJG7yo00BWY6QM+w== + dependencies: + commander "2" + iconv-lite "0.4" + rw "1" + +d3-force@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/d3-force/-/d3-force-2.1.1.tgz#f20ccbf1e6c9e80add1926f09b51f686a8bc0937" + integrity sha512-nAuHEzBqMvpFVMf9OX75d00OxvOXdxY+xECIXjW6Gv8BRrXu6gAWbv/9XKrvfJ5i5DCokDW7RYE50LRoK092ew== + dependencies: + d3-dispatch "1 - 2" + d3-quadtree "1 - 2" + d3-timer "1 - 2" + +"d3-format@1 - 2", d3-format@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/d3-format/-/d3-format-2.0.0.tgz#a10bcc0f986c372b729ba447382413aabf5b0767" + integrity sha512-Ab3S6XuE/Q+flY96HXT0jOXcM4EAClYFnRGY5zsjRGNy6qCYrQsMffs7cV5Q9xejb35zxW5hf/guKw34kvIKsA== + +d3-geo-projection@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/d3-geo-projection/-/d3-geo-projection-3.0.0.tgz#45ad8ce756cdbfa8340b11b2988644d8e1fa42e4" + integrity sha512-1JE+filVbkEX2bT25dJdQ05iA4QHvUwev6o0nIQHOSrNlHCAKfVss/U10vEM3pA4j5v7uQoFdQ4KLbx9BlEbWA== + dependencies: + commander "2" + d3-array "1 - 2" + d3-geo "1.12.0 - 2" + resolve "^1.1.10" + +"d3-geo@1.12.0 - 2", d3-geo@^2.0.1: + version "2.0.2" + resolved "https://registry.yarnpkg.com/d3-geo/-/d3-geo-2.0.2.tgz#c065c1b71fe8c5f1be657e5f43d9bdd010383c40" + integrity sha512-8pM1WGMLGFuhq9S+FpPURxic+gKzjluCD/CHTuUF3mXMeiCo0i6R0tO1s4+GArRFde96SLcW/kOFRjoAosPsFA== + dependencies: + d3-array "^2.5.0" + +d3-hierarchy@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/d3-hierarchy/-/d3-hierarchy-2.0.0.tgz#dab88a58ca3e7a1bc6cab390e89667fcc6d20218" + integrity sha512-SwIdqM3HxQX2214EG9GTjgmCc/mbSx4mQBn+DuEETubhOw6/U3fmnji4uCVrmzOydMHSO1nZle5gh6HB/wdOzw== + +"d3-interpolate@1.2.0 - 2", d3-interpolate@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/d3-interpolate/-/d3-interpolate-2.0.1.tgz#98be499cfb8a3b94d4ff616900501a64abc91163" + integrity sha512-c5UhwwTs/yybcmTpAVqwSFl6vrQ8JZJoT5F7xNFK9pymv5C0Ymcc9/LIJHtYIggg/yS9YHw8i8O8tgb9pupjeQ== + dependencies: + d3-color "1 - 2" + +"d3-path@1 - 2", d3-path@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/d3-path/-/d3-path-2.0.0.tgz#55d86ac131a0548adae241eebfb56b4582dd09d8" + integrity sha512-ZwZQxKhBnv9yHaiWd6ZU4x5BtCQ7pXszEV9CU6kRgwIQVQGLMv1oiL4M+MK/n79sYzsj+gcgpPQSctJUsLN7fA== + +"d3-quadtree@1 - 2": + version "2.0.0" + resolved "https://registry.yarnpkg.com/d3-quadtree/-/d3-quadtree-2.0.0.tgz#edbad045cef88701f6fee3aee8e93fb332d30f9d" + integrity sha512-b0Ed2t1UUalJpc3qXzKi+cPGxeXRr4KU9YSlocN74aTzp6R/Ud43t79yLLqxHRWZfsvWXmbDWPpoENK1K539xw== + +d3-scale@^3.2.2: + version "3.3.0" + resolved "https://registry.yarnpkg.com/d3-scale/-/d3-scale-3.3.0.tgz#28c600b29f47e5b9cd2df9749c206727966203f3" + integrity sha512-1JGp44NQCt5d1g+Yy+GeOnZP7xHo0ii8zsQp6PGzd+C1/dl0KGsp9A7Mxwp+1D1o4unbTTxVdU/ZOIEBoeZPbQ== + dependencies: + d3-array "^2.3.0" + d3-format "1 - 2" + d3-interpolate "1.2.0 - 2" + d3-time "^2.1.1" + d3-time-format "2 - 3" + +d3-shape@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/d3-shape/-/d3-shape-2.1.0.tgz#3b6a82ccafbc45de55b57fcf956c584ded3b666f" + integrity sha512-PnjUqfM2PpskbSLTJvAzp2Wv4CZsnAgTfcVRTwW03QR3MkXF8Uo7B1y/lWkAsmbKwuecto++4NlsYcvYpXpTHA== + dependencies: + d3-path "1 - 2" + +"d3-time-format@2 - 3", d3-time-format@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/d3-time-format/-/d3-time-format-3.0.0.tgz#df8056c83659e01f20ac5da5fdeae7c08d5f1bb6" + integrity sha512-UXJh6EKsHBTjopVqZBhFysQcoXSv/5yLONZvkQ5Kk3qbwiUYkdX17Xa1PT6U1ZWXGGfB1ey5L8dKMlFq2DO0Ag== + dependencies: + d3-time "1 - 2" + +"d3-time@1 - 2", d3-time@^2.0.0, d3-time@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/d3-time/-/d3-time-2.1.1.tgz#e9d8a8a88691f4548e68ca085e5ff956724a6682" + integrity sha512-/eIQe/eR4kCQwq7yxi7z4c6qEXf2IYGcjoWB5OOQy4Tq9Uv39/947qlDcN2TLkiTzQWzvnsuYPB9TrWaNfipKQ== + dependencies: + d3-array "2" + +"d3-timer@1 - 2", d3-timer@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/d3-timer/-/d3-timer-2.0.0.tgz#055edb1d170cfe31ab2da8968deee940b56623e6" + integrity sha512-TO4VLh0/420Y/9dO3+f9abDEFYeCUr2WZRlxJvbp4HPTQcSylXNiL6yZa9FIUvV1yRiFufl1bszTCLDqv9PWNA== + d@1, d@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/d/-/d-1.0.1.tgz#8698095372d58dbee346ffd0c7093f99f8f9eb5a" @@ -3003,10 +4630,12 @@ d@1, d@^1.0.1: es5-ext "^0.10.50" type "^1.0.1" -dargs@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/dargs/-/dargs-7.0.0.tgz#04015c41de0bcb69ec84050f3d9be0caf8d6d5cc" - integrity sha512-2iy1EkLdlBzQGvbweYRFxmFath8+K7+AKB0TlhHWkNuH+TmovaMH/Wp7V7R4u7f4SnX3OgLsU9t1NI9ioDnUpg== +dargs@^4.0.1: + version "4.1.0" + resolved "https://registry.yarnpkg.com/dargs/-/dargs-4.1.0.tgz#03a9dbb4b5c2f139bf14ae53f0b8a2a6a86f4e17" + integrity sha1-A6nbtLXC8Tm/FK5T8LiipqhvThc= + dependencies: + number-is-nan "^1.0.0" dashdash@^1.12.0: version "1.14.1" @@ -3024,6 +4653,15 @@ data-urls@^1.1.0: whatwg-mimetype "^2.2.0" whatwg-url "^7.0.0" +data-urls@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/data-urls/-/data-urls-2.0.0.tgz#156485a72963a970f5d5821aaf642bef2bf2db9b" + integrity sha512-X5eWTSXO/BJmpdIKCRuKUgSCgAN0OwliVK3yPKbwIWU1Tdw5BRajxlzMidvh+gwko9AfQ9zIj52pzF91Q3YAvQ== + dependencies: + abab "^2.0.3" + whatwg-mimetype "^2.3.0" + whatwg-url "^8.0.0" + dateformat@^3.0.0: version "3.0.3" resolved "https://registry.yarnpkg.com/dateformat/-/dateformat-3.0.3.tgz#a6e37499a4d9a9cf85ef5872044d62901c9889ae" @@ -3034,14 +4672,21 @@ dayjs@1.10.7: resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.10.7.tgz#2cf5f91add28116748440866a0a1d26f3a6ce468" integrity sha512-P6twpd70BcPK34K26uJ1KT3wlhpuOAPoMwJzpsIWUxHZ7wpmbdZL/hQqBDfz7hGurYSa5PhzdhDHtt319hL3ig== -debug@2.6.9, debug@^2.6.9: +debug@2.6.9, debug@^2.2.0, debug@^2.3.3, debug@^2.6.9: version "2.6.9" resolved "https://registry.yarnpkg.com/debug/-/debug-2.6.9.tgz#5d128515df134ff327e90a4c93f4e077a536341f" integrity sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA== dependencies: ms "2.0.0" -debug@4, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.3.2: +debug@3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/debug/-/debug-3.1.0.tgz#5bb5a0672628b64149566ba16819e61518c67261" + integrity sha512-OX8XqP7/1a9cqkxYw2yXss15f26NKWBpDXQd0/uK/KPqdQhxbPa994hnzjcE2VqQpDslf55723cKPUOGSmMY3g== + dependencies: + ms "2.0.0" + +debug@4, debug@^4.0.1, debug@^4.1.0, debug@^4.1.1, debug@^4.2.0, debug@^4.3.1, debug@^4.3.2: version "4.3.2" resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.2.tgz#f0a49c18ac8779e31d4a0c6029dfb76873c7428b" integrity sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw== @@ -3055,12 +4700,19 @@ debug@4.3.1: dependencies: ms "2.1.2" +debug@^3.1.0: + version "3.2.7" + resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" + integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== + dependencies: + ms "^2.1.1" + debuglog@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/debuglog/-/debuglog-1.0.1.tgz#aa24ffb9ac3df9a2351837cfb2d279360cd78492" integrity sha1-qiT/uaw9+aI1GDfPstJ5NgzXhJI= -decamelize-keys@^1.1.0: +decamelize-keys@^1.0.0, decamelize-keys@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/decamelize-keys/-/decamelize-keys-1.1.0.tgz#d171a87933252807eb3cb61dc1c1445d078df2d9" integrity sha1-0XGoeTMlKAfrPLYdwcFEXQeN8tk= @@ -3068,11 +4720,16 @@ decamelize-keys@^1.1.0: decamelize "^1.1.0" map-obj "^1.0.0" -decamelize@^1.1.0: +decamelize@^1.1.0, decamelize@^1.1.2, decamelize@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= +decimal.js@^10.2.1: + version "10.3.1" + resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.3.1.tgz#d8c3a444a9c6774ba60ca6ad7261c3a94fd5e783" + integrity sha512-V0pfhfr8suzyPGOx3nmq4aHqabehUZn6Ch9kyFpV79TGDTWFmHqUqXdabR7QHqxzrYolF4+tVmJhUG4OURg5dQ== + decode-uri-component@^0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/decode-uri-component/-/decode-uri-component-0.2.0.tgz#eb3913333458775cb84cd1a1fae062106bb87545" @@ -3144,6 +4801,33 @@ define-properties@^1.1.3: dependencies: object-keys "^1.0.12" +define-property@^0.2.5: + version "0.2.5" + resolved "https://registry.yarnpkg.com/define-property/-/define-property-0.2.5.tgz#c35b1ef918ec3c990f9a5bc57be04aacec5c8116" + integrity sha1-w1se+RjsPJkPmlvFe+BKrOxcgRY= + dependencies: + is-descriptor "^0.1.0" + +define-property@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/define-property/-/define-property-1.0.0.tgz#769ebaaf3f4a63aad3af9e8d304c9bbe79bfb0e6" + integrity sha1-dp66rz9KY6rTr56NMEybvnm/sOY= + dependencies: + is-descriptor "^1.0.0" + +define-property@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/define-property/-/define-property-2.0.2.tgz#d459689e8d654ba77e02a817f8710d702cb16e9d" + integrity sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ== + dependencies: + is-descriptor "^1.0.2" + isobject "^3.0.1" + +delaunator@4: + version "4.0.1" + resolved "https://registry.yarnpkg.com/delaunator/-/delaunator-4.0.1.tgz#3d779687f57919a7a418f8ab947d3bddb6846957" + integrity sha512-WNPWi1IRKZfCt/qIDMfERkDp93+iZEmOxN2yy4Jg+Xhv8SLk2UTqqbe1sfiipn0and9QrE914/ihdx82Y/Giag== + delayed-stream@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619" @@ -3154,7 +4838,7 @@ delegates@^1.0.0: resolved "https://registry.yarnpkg.com/delegates/-/delegates-1.0.0.tgz#84c6e159b81904fdca59a0ef44cd870d31250f9a" integrity sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o= -depd@^1.1.2, depd@~1.1.2: +depd@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/depd/-/depd-1.1.2.tgz#9bcd52e14c097763e749b274c4346ed2e560b5a9" integrity sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak= @@ -3189,7 +4873,7 @@ detect-indent@^6.0.0: resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-6.1.0.tgz#592485ebbbf6b3b1ab2be175c8393d04ca0d57e6" integrity sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA== -detect-newline@3.1.0: +detect-newline@3.1.0, detect-newline@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651" integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA== @@ -3202,6 +4886,18 @@ dezalgo@^1.0.0: asap "^2.0.0" wrappy "1" +diff-sequences@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/diff-sequences/-/diff-sequences-26.6.2.tgz#48ba99157de1923412eed41db6b6d4aa9ca7c0b1" + integrity sha512-Mv/TDa3nZ9sbc5soK+OoA74BsS3mL37yixCvUAQkiuA4Wz6YtwP/K47n2rv2ovzHZvoiQeA5FTQOschKkEwB0Q== + +dir-glob@^2.2.2: + version "2.2.2" + resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-2.2.2.tgz#fa09f0694153c8918b18ba0deafae94769fc50c4" + integrity sha512-f9LBi5QWzIW3I6e//uxZoLBlUt9kcp66qo0sSCxL6YZKc75R1c4MFCoe/LaZiBGmgujvQdxc5Bn3QhfyvK5Hsw== + dependencies: + path-type "^3.0.0" + dir-glob@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/dir-glob/-/dir-glob-3.0.1.tgz#56dbf73d992a4a93ba1584f4534063fd2e41717f" @@ -3209,6 +4905,13 @@ dir-glob@^3.0.1: dependencies: path-type "^4.0.0" +doctrine@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-2.1.0.tgz#5cd01fc101621b42c4cd7f5d1a66243716d3f39d" + integrity sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw== + dependencies: + esutils "^2.0.2" + doctrine@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/doctrine/-/doctrine-3.0.0.tgz#addebead72a6574db783639dc87a121773973961" @@ -3249,6 +4952,13 @@ domexception@^1.0.1: dependencies: webidl-conversions "^4.0.2" +domexception@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/domexception/-/domexception-2.0.1.tgz#fb44aefba793e1574b0af6aed2801d057529f304" + integrity sha512-yxJ2mFy/sibVQlu5qHjOkf9J3K6zgmCxgJ94u2EdvDOV09H+32LtRswEcUsmUWN72pVLOEnTSRaIVVzVQgS0dg== + dependencies: + webidl-conversions "^5.0.0" + domhandler@^4.0.0, domhandler@^4.2.0: version "4.2.2" resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-4.2.2.tgz#e825d721d19a86b8c201a35264e226c678ee755f" @@ -3270,6 +4980,13 @@ domutils@^2.5.2: domelementtype "^2.2.0" domhandler "^4.2.0" +dot-prop@^4.2.0: + version "4.2.1" + resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-4.2.1.tgz#45884194a71fc2cda71cbb4bceb3a4dd2f433ba4" + integrity sha512-l0p4+mIuJIua0mhxGoh4a+iNL9bmeK5DvnSVQa6T0OhrVmaEa1XScX5Etc673FePCJOArq/4Pa2cLGODUWTPOQ== + dependencies: + is-obj "^1.0.0" + dot-prop@^5.1.0: version "5.3.0" resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-5.3.0.tgz#90ccce708cd9cd82cc4dc8c3ddd9abdd55b20e88" @@ -3277,23 +4994,26 @@ dot-prop@^5.1.0: dependencies: is-obj "^2.0.0" -dot-prop@^6.0.1: - version "6.0.1" - resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-6.0.1.tgz#fc26b3cf142b9e59b74dbd39ed66ce620c681083" - integrity sha512-tE7ztYzXHIeyvc7N+hR3oi7FIbf/NIjVP9hmAt3yMXzrQ072/fpjGLx2GxNxGxUl5V73MEqYzioOMoVhGMJ5cA== - dependencies: - is-obj "^2.0.0" - duplexer3@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2" integrity sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI= -duplexer@^0.1.1: +duplexer@^0.1.1, duplexer@^0.1.2: version "0.1.2" resolved "https://registry.yarnpkg.com/duplexer/-/duplexer-0.1.2.tgz#3abe43aef3835f8ae077d136ddce0f276b0400e6" integrity sha512-jtD6YG370ZCIi/9GTaJKQxWTZD045+4R4hTk/x1UyoqadyJ9x9CgSi1RlVDQF8U2sxLLSnFkCaMihqljHIWgMg== +duplexify@^3.4.2, duplexify@^3.6.0: + version "3.7.1" + resolved "https://registry.yarnpkg.com/duplexify/-/duplexify-3.7.1.tgz#2a4df5317f6ccfd91f86d6fd25d8d8a103b88309" + integrity sha512-07z8uv2wMyS51kKhD1KsdXJg5WQ6t93RneqRxUHnskXVtlYYkLqM0gqStQZ3pj073g687jPCHrqNfCzawLYh5g== + dependencies: + end-of-stream "^1.0.0" + inherits "^2.0.1" + readable-stream "^2.0.0" + stream-shift "^1.0.0" + duplicate-package-checker-webpack-plugin@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/duplicate-package-checker-webpack-plugin/-/duplicate-package-checker-webpack-plugin-3.0.0.tgz#78bb89e625fa7cf8c2a59c53f62b495fda9ba287" @@ -3329,6 +5049,16 @@ electron-to-chromium@^1.3.886: resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.895.tgz#9b0f8f2e32d8283bbb200156fd5d8dfd775f31ed" integrity sha512-9Ww3fB8CWctjqHwkOt7DQbMZMpal2x2reod+/lU4b9axO1XJEDUpPMBxs7YnjLhhqpKXIIB5SRYN/B4K0QpvyQ== +emittery@^0.7.1: + version "0.7.2" + resolved "https://registry.yarnpkg.com/emittery/-/emittery-0.7.2.tgz#25595908e13af0f5674ab419396e2fb394cdfa82" + integrity sha512-A8OG5SR/ij3SsJdWDJdkkSYUjQdCUx6APQXem0SaEePBSRg4eymGYwBkKo1Y6DU+af/Jn2dBQqDBvjnr9Vi8nQ== + +emoji-regex@^7.0.1: + version "7.0.3" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-7.0.3.tgz#933a04052860c85e83c122479c4748a8e4c72156" + integrity sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA== + emoji-regex@^8.0.0: version "8.0.0" resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" @@ -3354,14 +5084,14 @@ encoding-down@^6.3.0: level-codec "^9.0.0" level-errors "^2.0.0" -encoding@^0.1.12: +encoding@^0.1.11: version "0.1.13" resolved "https://registry.yarnpkg.com/encoding/-/encoding-0.1.13.tgz#56574afdd791f54a8e9b2785c0582a2d26210fa9" integrity sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A== dependencies: iconv-lite "^0.6.2" -end-of-stream@^1.1.0: +end-of-stream@^1.0.0, end-of-stream@^1.1.0: version "1.4.4" resolved "https://registry.yarnpkg.com/end-of-stream/-/end-of-stream-1.4.4.tgz#5ae64a5f45057baf3626ec14da0ca5e4b2431eb0" integrity sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q== @@ -3376,7 +5106,7 @@ enhanced-resolve@^5.8.3: graceful-fs "^4.2.4" tapable "^2.2.0" -enquirer@^2.3.5: +enquirer@^2.3.5, enquirer@^2.3.6: version "2.3.6" resolved "https://registry.yarnpkg.com/enquirer/-/enquirer-2.3.6.tgz#2a7fe5dd634a1e4125a975ec994ff5456dc3734d" integrity sha512-yjNnPr315/FjS4zIsUxYguYUPP2e1NK4d7E7ZOLiyYCcbFBiTMyID+2wvm2w6+pZ/odMA7cRkjhsPbltwBOrLg== @@ -3393,15 +5123,15 @@ env-paths@^2.2.0: resolved "https://registry.yarnpkg.com/env-paths/-/env-paths-2.2.1.tgz#420399d416ce1fbe9bc0a07c62fa68d67fd0f8f2" integrity sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A== -envinfo@7.8.1, envinfo@^7.7.3, envinfo@^7.7.4: +envinfo@7.8.1, envinfo@^7.3.1, envinfo@^7.7.3: version "7.8.1" resolved "https://registry.yarnpkg.com/envinfo/-/envinfo-7.8.1.tgz#06377e3e5f4d379fea7ac592d5ad8927e0c4d475" integrity sha512-/o+BXHmB7ocbHEAs6F2EnG0ogybVVUdkRunTT2glZU9XAaGmhqskrvKwqXuDfNjEO0LZKWdejEEpnq8aM0tOaw== -err-code@^2.0.2: - version "2.0.3" - resolved "https://registry.yarnpkg.com/err-code/-/err-code-2.0.3.tgz#23c2f3b756ffdfc608d30e27c9a941024807e7f9" - integrity sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA== +err-code@^1.0.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/err-code/-/err-code-1.1.2.tgz#06e0116d3028f6aef4806849eb0ea6a748ae6960" + integrity sha1-BuARbTAo9q70gGhJ6w6mp0iuaWA= errno@~0.1.1: version "0.1.8" @@ -3410,14 +5140,14 @@ errno@~0.1.1: dependencies: prr "~1.0.1" -error-ex@^1.3.1: +error-ex@^1.2.0, error-ex@^1.3.1: version "1.3.2" resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== dependencies: is-arrayish "^0.2.1" -es-abstract@^1.19.1: +es-abstract@^1.19.0, es-abstract@^1.19.1: version "1.19.1" resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.19.1.tgz#d4885796876916959de78edaa0df456627115ec3" integrity sha512-2vJ6tjA/UfqLm2MPs7jxVybLoB8i1t1Jd9R3kISld20sIxPcTbLuggQOUxeWeAvIUkduv/CfMjuh4WmiXr2v9w== @@ -3475,11 +5205,18 @@ es6-iterator@^2.0.3, es6-iterator@~2.0.3: es5-ext "^0.10.35" es6-symbol "^3.1.1" -es6-promise@~4.2.8: +es6-promise@^4.0.3, es6-promise@~4.2.8: version "4.2.8" resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-4.2.8.tgz#4eb21594c972bc40553d276e510539143db53e0a" integrity sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w== +es6-promisify@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/es6-promisify/-/es6-promisify-5.0.0.tgz#5109d62f3e56ea967c4b63505aef08291c8a5203" + integrity sha1-UQnWLz5W6pZ8S2NQWu8IKRyKUgM= + dependencies: + es6-promise "^4.0.3" + es6-symbol@^3.1.1, es6-symbol@~3.1.3: version "3.1.3" resolved "https://registry.yarnpkg.com/es6-symbol/-/es6-symbol-3.1.3.tgz#bad5d3c1bcdac28269f4cb331e431c78ac705d18" @@ -3513,6 +5250,11 @@ escape-string-regexp@^1.0.5: resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= +escape-string-regexp@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz#a30304e99daa32e23b2fd20f51babd07cffca344" + integrity sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w== + escape-string-regexp@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz#14ba83a5d373e3d311e5afca29cf5bfad965bf34" @@ -3530,6 +5272,18 @@ escodegen@^1.11.1: optionalDependencies: source-map "~0.6.1" +escodegen@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-2.0.0.tgz#5e32b12833e8aa8fa35e1bf0befa89380484c7dd" + integrity sha512-mmHKys/C8BFUGI+MAWNcSYoORYLMdPzjrknd2Vc+bUsjN5bXcr8EhrNB+UTqfL1y3I9c4fw2ihgtMPQLBRiQxw== + dependencies: + esprima "^4.0.1" + estraverse "^5.2.0" + esutils "^2.0.2" + optionator "^0.8.1" + optionalDependencies: + source-map "~0.6.1" + eslint-config-prettier@^6.15.0: version "6.15.0" resolved "https://registry.yarnpkg.com/eslint-config-prettier/-/eslint-config-prettier-6.15.0.tgz#7f93f6cb7d45a92f1537a70ecc06366e1ac6fed9" @@ -3545,6 +5299,13 @@ eslint-import-resolver-node@0.3.4: debug "^2.6.9" resolve "^1.13.1" +eslint-plugin-jest@^24.1.3: + version "24.7.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-jest/-/eslint-plugin-jest-24.7.0.tgz#206ac0833841e59e375170b15f8d0955219c4889" + integrity sha512-wUxdF2bAZiYSKBclsUMrYHH6WxiBreNjyDxbRv345TIvPeoCEgPNEn3Sa+ZrSqsf1Dl9SqqSREXMHExlMMu1DA== + dependencies: + "@typescript-eslint/experimental-utils" "^4.0.1" + eslint-plugin-prettier@^3.1.4: version "3.4.1" resolved "https://registry.yarnpkg.com/eslint-plugin-prettier/-/eslint-plugin-prettier-3.4.1.tgz#e9ddb200efb6f3d05ffe83b1665a716af4a387e5" @@ -3552,6 +5313,26 @@ eslint-plugin-prettier@^3.1.4: dependencies: prettier-linter-helpers "^1.0.0" +eslint-plugin-react@^7.21.5: + version "7.27.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-react/-/eslint-plugin-react-7.27.0.tgz#f952c76517a3915b81c7788b220b2b4c96703124" + integrity sha512-0Ut+CkzpppgFtoIhdzi2LpdpxxBvgFf99eFqWxJnUrO7mMe0eOiNpou6rvNYeVVV6lWZvTah0BFne7k5xHjARg== + dependencies: + array-includes "^3.1.4" + array.prototype.flatmap "^1.2.5" + doctrine "^2.1.0" + estraverse "^5.3.0" + jsx-ast-utils "^2.4.1 || ^3.0.0" + minimatch "^3.0.4" + object.entries "^1.1.5" + object.fromentries "^2.0.5" + object.hasown "^1.1.0" + object.values "^1.1.5" + prop-types "^15.7.2" + resolve "^2.0.0-next.3" + semver "^6.3.0" + string.prototype.matchall "^4.0.6" + eslint-scope@5.1.1, eslint-scope@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-5.1.1.tgz#e786e59a66cb92b3f6c1fb0d508aab174848f48c" @@ -3584,7 +5365,7 @@ eslint-visitor-keys@^2.0.0: resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-2.1.0.tgz#f65328259305927392c938ed44eb0a5c9b2bd303" integrity sha512-0rSmRBzXgDzIsD6mGdJgevzgezI534Cer5L/vyMX0kHzT/jiB43jRhd9YUlMGYLQy2zprNmoT8qasCGtY+QaKw== -eslint@^7.14.0: +eslint@^7.10.0, eslint@^7.14.0: version "7.32.0" resolved "https://registry.yarnpkg.com/eslint/-/eslint-7.32.0.tgz#c6d328a14be3fb08c8d1d21e12c02fdb7a2a812d" integrity sha512-VHZ8gX+EDfz+97jGcgyGCyRia/dPOd6Xh9yPv8Bl1+SoaIwD+a/vlrOmGRUyOYu7MwUhc7CxqeaDZU13S4+EpA== @@ -3663,7 +5444,7 @@ estraverse@^4.1.1, estraverse@^4.2.0: resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-4.3.0.tgz#398ad3f3c5a24948be7725e83d11a7de28cdbd1d" integrity sha512-39nnKffWz8xN1BU/2c79n9nB9HDzo0niYUqx6xyqUnyoAnQyyWpOTdZEeiCch8BBu515t4wp9ZmgVfVhn9EBpw== -estraverse@^5.1.0, estraverse@^5.2.0: +estraverse@^5.1.0, estraverse@^5.2.0, estraverse@^5.3.0: version "5.3.0" resolved "https://registry.yarnpkg.com/estraverse/-/estraverse-5.3.0.tgz#2eea5290702f26ab8fe5370370ff86c965d21123" integrity sha512-MMdARuVEQziNTeJD8DgMqmhwR11BRQ/cBP+pLtYdSTnf3MIO8fFeiINEbX36ZdNlfU/7A9f3gUw49B3oQsvwBA== @@ -3686,10 +5467,10 @@ event-emitter@^0.3.5: d "1" es5-ext "~0.10.14" -eventemitter3@^4.0.4: - version "4.0.7" - resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-4.0.7.tgz#2de9b68f6528d5644ef5c59526a1b4a07306169f" - integrity sha512-8guHBZCwKnFhYdHr2ysuRWErTwhoN2X8XELRlrRwpmfeY2jjuUN4taQMsULKUVo1K4DvZl+0pgfyoysHxvmvEw== +eventemitter3@^3.1.0: + version "3.1.2" + resolved "https://registry.yarnpkg.com/eventemitter3/-/eventemitter3-3.1.2.tgz#2d3d48f9c346698fce83a85d7d664e98535df6e7" + integrity sha512-tvtQIeLVHjDkJYnzf2dgVMxfuSGJeM/7UCG17TT4EumTfNtF+0nebF/4zWOIkCreAbtNqhGEboB6BWrwqNaw4Q== events@^3.2.0: version "3.3.0" @@ -3703,6 +5484,39 @@ exec-sh@^0.2.0: dependencies: merge "^1.2.0" +exec-sh@^0.3.2: + version "0.3.6" + resolved "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.3.6.tgz#ff264f9e325519a60cb5e273692943483cca63bc" + integrity sha512-nQn+hI3yp+oD0huYhKwvYI32+JFeq+XkNcD1GAo3Y/MjxsfVGmrrzrnzjWiNY6f+pUCP440fThsFh5gZrRAU/w== + +execa@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-1.0.0.tgz#c6236a5bb4df6d6f15e88e7f017798216749ddd8" + integrity sha512-adbxcyWV46qiHyvSp50TKt05tB4tK3HcmF7/nxfAdhnox83seTDbwnaqKO4sXRy7roHAIFqJP/Rw/AuEbX61LA== + dependencies: + 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" + +execa@^4.0.0, execa@^4.1.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-4.1.0.tgz#4e5491ad1572f2f17a77d388c6c857135b22847a" + integrity sha512-j5W0//W7f8UxAn8hXVnwG8tLwdiUy4FJLcSupCg6maBYZDpyBvTApK7KyuI4bKj8KOh1r2YH+6ucuYtJv1bTZA== + dependencies: + cross-spawn "^7.0.0" + get-stream "^5.0.0" + human-signals "^1.1.1" + is-stream "^2.0.0" + merge-stream "^2.0.0" + npm-run-path "^4.0.0" + onetime "^5.1.0" + signal-exit "^3.0.2" + strip-final-newline "^2.0.0" + execa@^5.0.0: version "5.1.1" resolved "https://registry.yarnpkg.com/execa/-/execa-5.1.1.tgz#f80ad9cbf4298f7bd1d4c9555c21e93741c411dd" @@ -3718,6 +5532,36 @@ execa@^5.0.0: signal-exit "^3.0.3" strip-final-newline "^2.0.0" +exit@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/exit/-/exit-0.1.2.tgz#0632638f8d877cc82107d30a0fff1a17cba1cd0c" + integrity sha1-BjJjj42HfMghB9MKD/8aF8uhzQw= + +expand-brackets@^2.1.4: + version "2.1.4" + resolved "https://registry.yarnpkg.com/expand-brackets/-/expand-brackets-2.1.4.tgz#b77735e315ce30f6b6eff0f83b04151a22449622" + integrity sha1-t3c14xXOMPa27/D4OwQVGiJEliI= + dependencies: + 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" + +expect@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/expect/-/expect-26.6.2.tgz#c6b996bf26bf3fe18b67b2d0f51fc981ba934417" + integrity sha512-9/hlOBkQl2l/PLHJx6JjoDF6xPKcJEsUlWKb23rKE7KzeDqUZKXKNMW27KIue5JMdBV9HgmoJPcc8HtO85t9IA== + dependencies: + "@jest/types" "^26.6.2" + ansi-styles "^4.0.0" + jest-get-type "^26.3.0" + jest-matcher-utils "^26.6.2" + jest-message-util "^26.6.2" + jest-regex-util "^26.0.0" + express@4.17.1: version "4.17.1" resolved "https://registry.yarnpkg.com/express/-/express-4.17.1.tgz#4491fc38605cf51f8629d39c2b5d026f98a4c134" @@ -3761,6 +5605,21 @@ ext@^1.1.2: dependencies: type "^2.5.0" +extend-shallow@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-2.0.1.tgz#51af7d614ad9a9f610ea1bafbb989d6b1c56890f" + integrity sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8= + dependencies: + is-extendable "^0.1.0" + +extend-shallow@^3.0.0, extend-shallow@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/extend-shallow/-/extend-shallow-3.0.2.tgz#26a71aaf073b39fb2127172746131c2704028db8" + integrity sha1-Jqcarwc7OfshJxcnRhMcJwQCjbg= + dependencies: + assign-symbols "^1.0.0" + is-extendable "^1.0.1" + extend@~3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" @@ -3775,6 +5634,41 @@ external-editor@^3.0.3: iconv-lite "^0.4.24" tmp "^0.0.33" +extglob@^2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/extglob/-/extglob-2.0.4.tgz#ad00fe4dc612a9232e8718711dc5cb5ab0285543" + integrity sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw== + dependencies: + 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" + +extra-watch-webpack-plugin@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/extra-watch-webpack-plugin/-/extra-watch-webpack-plugin-1.0.3.tgz#774248f4ac590159bd5878d862d77afce697d7cc" + integrity sha512-ZScQdMH6hNofRRN6QMQFg+aa5vqimfBgnPXmRDhdaLpttT6hrzpY9Oyren3Gh/FySPrgsvKCNbx/NFA7XNdIsg== + dependencies: + glob "^7.1.2" + is-glob "^4.0.0" + lodash.uniq "^4.5.0" + schema-utils "^0.4.0" + +extract-zip@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/extract-zip/-/extract-zip-2.0.1.tgz#663dca56fe46df890d5f131ef4a06d22bb8ba13a" + integrity sha512-GDhU9ntwuKyGXdZBUgTIe+vXnWj0fppUEtMDL0+idd5Sta8TGpHssn/eusA9mrPr9qNDym6SxAYZjNvCn/9RBg== + dependencies: + debug "^4.1.1" + get-stream "^5.1.0" + yauzl "^2.10.0" + optionalDependencies: + "@types/yauzl" "^2.9.1" + extsprintf@1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.3.0.tgz#96918440e3041a7a414f8c52e3c574eb3c3e1e05" @@ -3785,7 +5679,7 @@ extsprintf@^1.2.0: resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.1.tgz#8d172c064867f235c0c84a596806d279bf4bcc07" integrity sha512-Wrk35e8ydCKDj/ArClo1VrPVmN8zph5V4AtHwIuHhvMXsKf73UT3BOD+azBIW+3wOJ4FhEH7zyaJCFvChjYvMA== -fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3: +fast-deep-equal@^3.1.1, fast-deep-equal@^3.1.3, fast-deep-equal@~3.1.3: version "3.1.3" resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== @@ -3795,6 +5689,18 @@ fast-diff@^1.1.2: resolved "https://registry.yarnpkg.com/fast-diff/-/fast-diff-1.2.0.tgz#73ee11982d86caaf7959828d519cfe927fac5f03" integrity sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w== +fast-glob@^2.2.6: + version "2.2.7" + resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-2.2.7.tgz#6953857c3afa475fff92ee6015d52da70a4cd39d" + integrity sha512-g1KuQwHOZAmOZMuBtHdxDtju+T2RT8jgCC9aANsbpdiDDTSnjgfuVsIBNKbUeJI3oKMRExcfNDtJl4OhbffMsw== + dependencies: + "@mrmlnc/readdir-enhanced" "^2.2.1" + "@nodelib/fs.stat" "^1.1.2" + glob-parent "^3.1.0" + is-glob "^4.0.0" + merge2 "^1.2.3" + micromatch "^3.1.10" + fast-glob@^3.0.3, fast-glob@^3.1.1: version "3.2.7" resolved "https://registry.yarnpkg.com/fast-glob/-/fast-glob-3.2.7.tgz#fd6cb7a2d7e9aa7a7846111e85a196d6b2f766a1" @@ -3806,7 +5712,12 @@ fast-glob@^3.0.3, fast-glob@^3.1.1: merge2 "^1.3.0" micromatch "^4.0.4" -fast-json-stable-stringify@^2.0.0: +fast-json-patch@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/fast-json-patch/-/fast-json-patch-3.1.0.tgz#ec8cd9b9c4c564250ec8b9140ef7a55f70acaee6" + integrity sha512-IhpytlsVTRndz0hU5t0/MGzS/etxLlfrpG5V5M9mVbuj9TrJLWaMfsox9REM5rkuGX0T+5qjpe8XA1o0gZ42nA== + +fast-json-stable-stringify@^2.0.0, fast-json-stable-stringify@~2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633" integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw== @@ -3843,6 +5754,32 @@ fastq@^1.6.0: dependencies: reusify "^1.0.4" +fb-watchman@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/fb-watchman/-/fb-watchman-2.0.1.tgz#fc84fb39d2709cf3ff6d743706157bb5708a8a85" + integrity sha512-DkPJKQeY6kKwmuMretBhr7G6Vodr7bFwDYTXIkfG1gjvNpaxBTQV3PbXg6bR1c1UP4jPOX0jHUbbHANL9vRjVg== + dependencies: + bser "2.1.1" + +fd-slicer@~1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/fd-slicer/-/fd-slicer-1.1.0.tgz#25c7c89cb1f9077f8891bbe61d8f390eae256f1e" + integrity sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4= + dependencies: + pend "~1.2.0" + +figgy-pudding@^3.4.1, figgy-pudding@^3.5.1: + version "3.5.2" + resolved "https://registry.yarnpkg.com/figgy-pudding/-/figgy-pudding-3.5.2.tgz#b4eee8148abb01dcf1d1ac34367d59e12fa61d6e" + integrity sha512-0btnI/H8f2pavGMN8w40mlSKOfTK2SVJmBfBeVIj3kNw0swwgzyRq0d5TJVOwodFmtvpPeWPN/MCcfuWF0Ezbw== + +figures@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/figures/-/figures-2.0.0.tgz#3ab1a2d2a62c8bfb431a0c94cb797a2fce27c962" + integrity sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI= + dependencies: + escape-string-regexp "^1.0.5" + figures@^3.0.0: version "3.2.0" resolved "https://registry.yarnpkg.com/figures/-/figures-3.2.0.tgz#625c18bd293c604dc4a8ddb2febf0c88341746af" @@ -3857,6 +5794,14 @@ file-entry-cache@^6.0.1: dependencies: flat-cache "^3.0.4" +file-loader@~5.0.2: + version "5.0.2" + resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-5.0.2.tgz#7f3d8b4ac85a5e8df61338cfec95d7405f971caa" + integrity sha512-QMiQ+WBkGLejKe81HU8SZ9PovsU/5uaLo0JdTCEXOYv7i7jfAjHZi1tcwp9tSASJPOmmHZtbdCervFmXMH/Dcg== + dependencies: + loader-utils "^1.2.3" + schema-utils "^2.5.0" + file-loader@~6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/file-loader/-/file-loader-6.0.0.tgz#97bbfaab7a2460c07bcbd72d3a6922407f67649f" @@ -3865,6 +5810,16 @@ file-loader@~6.0.0: loader-utils "^2.0.0" schema-utils "^2.6.5" +fill-range@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-4.0.0.tgz#d544811d428f98eb06a63dc402d2403c328c38f7" + integrity sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc= + dependencies: + extend-shallow "^2.0.1" + is-number "^3.0.0" + repeat-string "^1.6.1" + to-regex-range "^2.1.0" + fill-range@^7.0.1: version "7.0.1" resolved "https://registry.yarnpkg.com/fill-range/-/fill-range-7.0.1.tgz#1919a6a7c75fe38b2c7c77e5198535da9acdda40" @@ -3904,6 +5859,14 @@ find-root@^1.0.0: resolved "https://registry.yarnpkg.com/find-root/-/find-root-1.1.0.tgz#abcfc8ba76f708c42a97b3d685b7e9450bfb9ce4" integrity sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng== +find-up@^1.0.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-1.1.2.tgz#6b2e9822b1a2ce0a60ab64d610eccad53cb24d0f" + integrity sha1-ay6YIrGizgpgq2TWEOzK1TyyTQ8= + dependencies: + path-exists "^2.0.0" + pinkie-promise "^2.0.0" + find-up@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-2.1.0.tgz#45d1b7e506c717ddd482775a2b77920a3c0c57a7" @@ -3911,6 +5874,13 @@ find-up@^2.0.0: dependencies: locate-path "^2.0.0" +find-up@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-3.0.0.tgz#49169f1d7993430646da61ecc5ae355c21c97b73" + integrity sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg== + dependencies: + locate-path "^3.0.0" + find-up@^4.0.0, find-up@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/find-up/-/find-up-4.1.0.tgz#97afe7d6cdc0bc5928584b7c8d7b16e8a9aa5d19" @@ -3937,11 +5907,33 @@ flatted@^3.1.0: resolved "https://registry.yarnpkg.com/flatted/-/flatted-3.2.4.tgz#28d9969ea90661b5134259f312ab6aa7929ac5e2" integrity sha512-8/sOawo8tJ4QOBX8YlQBMxL8+RLZfxMQOif9o0KUKTNTjMYElWPE0r/m5VNFxTRd0NSw8qSy8dajrwX4RYI1Hw== +flush-write-stream@^1.0.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/flush-write-stream/-/flush-write-stream-1.1.1.tgz#8dd7d873a1babc207d94ead0c2e0e44276ebf2e8" + integrity sha512-3Z4XhFZ3992uIq0XOqb9AreonueSYphE6oYbpt5+3u06JWklbsPkNv3ZKkP9Bz/r+1MWCaMoSQ28P85+1Yc77w== + dependencies: + inherits "^2.0.3" + readable-stream "^2.3.6" + +for-in@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/for-in/-/for-in-1.0.2.tgz#81068d295a8142ec0ac726c6e2200c30fb6d5e80" + integrity sha1-gQaNKVqBQuwKxybG4iAMMPttXoA= + forever-agent@~0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91" integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= +form-data@^3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-3.0.1.tgz#ebd53791b78356a99af9a300d4282c4d5eb9755f" + integrity sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg== + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.8" + mime-types "^2.1.12" + form-data@~2.3.2: version "2.3.3" resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6" @@ -3956,6 +5948,13 @@ forwarded@0.2.0: resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.2.0.tgz#2269936428aad4c15c7ebe9779a84bf0b2a81811" integrity sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow== +fragment-cache@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/fragment-cache/-/fragment-cache-0.2.1.tgz#4290fad27f13e89be7f33799c6bc5a0abfff0d19" + integrity sha1-QpD60n8T6Jvn8zeZxrxaCr//DRk= + dependencies: + map-cache "^0.2.2" + free-style@3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/free-style/-/free-style-3.1.0.tgz#4e2996029534e6b1731611d843437b9e2f473f08" @@ -3966,7 +5965,24 @@ fresh@0.5.2: resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" integrity sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac= -fs-extra@^9.0.1, fs-extra@^9.1.0: +from2@^2.1.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/from2/-/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af" + integrity sha1-i/tVAr3kpNNs/e6gB/zKIdfjgq8= + dependencies: + inherits "^2.0.1" + readable-stream "^2.0.0" + +fs-extra@^8.1.0: + version "8.1.0" + resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-8.1.0.tgz#49d43c45a88cd9677668cb7be1b46efdb8d2e1c0" + integrity sha512-yhlQgA6mnOJUKOsRUFsgJdQCvkKhcz8tlZG5HBQfReYZy46OwLcY+Zia0mtdHsOo9y/hP+CxMN0TU9QxoOtG4g== + dependencies: + graceful-fs "^4.2.0" + jsonfile "^4.0.0" + universalify "^0.1.0" + +fs-extra@^9.0.1: version "9.1.0" resolved "https://registry.yarnpkg.com/fs-extra/-/fs-extra-9.1.0.tgz#5954460c764a8da2094ba3554bf839e6b9a7c86d" integrity sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ== @@ -3983,18 +5999,33 @@ fs-minipass@^1.2.7: dependencies: minipass "^2.6.0" -fs-minipass@^2.0.0, fs-minipass@^2.1.0: +fs-minipass@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb" integrity sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg== dependencies: minipass "^3.0.0" +fs-write-stream-atomic@^1.0.8: + version "1.0.10" + resolved "https://registry.yarnpkg.com/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz#b47df53493ef911df75731e70a9ded0189db40c9" + integrity sha1-tH31NJPvkR33VzHnCp3tAYnbQMk= + dependencies: + graceful-fs "^4.1.2" + iferr "^0.1.5" + imurmurhash "^0.1.4" + readable-stream "1 || 2" + fs.realpath@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f" integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8= +fsevents@^2.1.2: + version "2.3.2" + resolved "https://registry.yarnpkg.com/fsevents/-/fsevents-2.3.2.tgz#8a526f78b8fdf4623b709e0b975c52c24c02fd1a" + integrity sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA== + function-bind@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d" @@ -4019,7 +6050,17 @@ gauge@~2.7.3: strip-ansi "^3.0.1" wide-align "^1.1.0" -get-caller-file@^2.0.5: +genfun@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/genfun/-/genfun-5.0.0.tgz#9dd9710a06900a5c4a5bf57aca5da4e52fe76537" + integrity sha512-KGDOARWVga7+rnB3z9Sd2Letx515owfk0hSxHGuqjANb1M+x2bGZGqHLiozPsYMdM2OubeMni/Hpwmjq6qIUhA== + +gensync@^1.0.0-beta.2: + version "1.0.0-beta.2" + resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" + integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== + +get-caller-file@^2.0.1, get-caller-file@^2.0.5: version "2.0.5" resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" integrity sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg== @@ -4033,34 +6074,55 @@ get-intrinsic@^1.0.2, get-intrinsic@^1.1.0, get-intrinsic@^1.1.1: has "^1.0.3" has-symbols "^1.0.1" -get-pkg-repo@^4.0.0: - version "4.2.1" - resolved "https://registry.yarnpkg.com/get-pkg-repo/-/get-pkg-repo-4.2.1.tgz#75973e1c8050c73f48190c52047c4cee3acbf385" - integrity sha512-2+QbHjFRfGB74v/pYWjd5OhU3TDIC2Gv/YKUTk/tCvAz0pkn/Mz6P3uByuBimLOcPvN2jYdScl3xGFSrx0jEcA== +get-own-enumerable-property-symbols@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/get-own-enumerable-property-symbols/-/get-own-enumerable-property-symbols-3.0.2.tgz#b5fde77f22cbe35f390b4e089922c50bce6ef664" + integrity sha512-I0UBV/XOz1XkIJHEUDMZAbzCThU/H8DxmSfmdGcKPnVhu2VfFqr34jr9777IyaTYvxjedWhqVIilEDsCdP5G6g== + +get-package-type@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/get-package-type/-/get-package-type-0.1.0.tgz#8de2d803cff44df3bc6c456e6668b36c3926e11a" + integrity sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q== + +get-pkg-repo@^1.0.0: + version "1.4.0" + resolved "https://registry.yarnpkg.com/get-pkg-repo/-/get-pkg-repo-1.4.0.tgz#c73b489c06d80cc5536c2c853f9e05232056972d" + integrity sha1-xztInAbYDMVTbCyFP54FIyBWly0= dependencies: - "@hutson/parse-repository-url" "^3.0.0" - hosted-git-info "^4.0.0" + hosted-git-info "^2.1.4" + meow "^3.3.0" + normalize-package-data "^2.3.0" + parse-github-repo-url "^1.3.0" through2 "^2.0.0" - yargs "^16.2.0" -get-port@^5.1.1: - version "5.1.1" - resolved "https://registry.yarnpkg.com/get-port/-/get-port-5.1.1.tgz#0469ed07563479de6efb986baf053dcd7d4e3193" - integrity sha512-g/Q1aTSDOxFpchXC4i8ZWvxA1lnPqx/JHqcpIw0/LX9T8x/GBbi6YnlN5nhaKIFkT8oFsscUKgDJYxfwfS6QsQ== +get-port@^4.2.0: + version "4.2.0" + resolved "https://registry.yarnpkg.com/get-port/-/get-port-4.2.0.tgz#e37368b1e863b7629c43c5a323625f95cf24b119" + integrity sha512-/b3jarXkH8KJoOMQc3uVGHASwGLPq3gSFJ7tgJm2diza+bydJPTGOibin2steecKeOylE8oY2JERlVWkAJO6yw== + +get-stdin@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-4.0.1.tgz#b968c6b0a04384324902e8bf1a5df32579a450fe" + integrity sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4= get-stdin@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-6.0.0.tgz#9e09bf712b360ab9225e812048f71fde9c89657b" integrity sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g== -get-stream@^4.1.0: +get-stdin@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-7.0.0.tgz#8d5de98f15171a125c5e516643c7a6d0ea8a96f6" + integrity sha512-zRKcywvrXlXsA0v0i9Io4KDRaAw7+a1ZpjRwl9Wox8PFlVCCHra7E9c4kqXCoCM9nR5tBkaTTZRBoCm60bFqTQ== + +get-stream@^4.0.0, get-stream@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" integrity sha512-GMat4EJ5161kIy2HevLlr4luNjBgvmj413KaQA7jt4V8B4RDsfpHk7WQ9GVqfYyyx8OS/L66Kox+rJRNklLK7w== dependencies: pump "^3.0.0" -get-stream@^5.1.0: +get-stream@^5.0.0, get-stream@^5.1.0: version "5.2.0" resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-5.2.0.tgz#4966a1795ee5ace65e706c4b7beb71257d6e22d3" integrity sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA== @@ -4080,6 +6142,11 @@ get-symbol-description@^1.0.0: call-bind "^1.0.2" get-intrinsic "^1.1.1" +get-value@^2.0.3, get-value@^2.0.6: + version "2.0.6" + resolved "https://registry.yarnpkg.com/get-value/-/get-value-2.0.6.tgz#dc15ca1c672387ca76bd37ac0a395ba2042a2c28" + integrity sha1-3BXKHGcjh8p2vTesCjlbogQqLCg= + getpass@^0.1.1: version "0.1.7" resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" @@ -4092,16 +6159,16 @@ git-hooks-list@1.0.3: resolved "https://registry.yarnpkg.com/git-hooks-list/-/git-hooks-list-1.0.3.tgz#be5baaf78203ce342f2f844a9d2b03dba1b45156" integrity sha512-Y7wLWcrLUXwk2noSka166byGCvhMtDRpgHdzCno1UQv/n/Hegp++a2xBWJL1lJarnKD3SWaljD+0z1ztqxuKyQ== -git-raw-commits@^2.0.8: - version "2.0.10" - resolved "https://registry.yarnpkg.com/git-raw-commits/-/git-raw-commits-2.0.10.tgz#e2255ed9563b1c9c3ea6bd05806410290297bbc1" - integrity sha512-sHhX5lsbG9SOO6yXdlwgEMQ/ljIn7qMpAbJZCGfXX2fq5T8M5SrDnpYk9/4HswTildcIqatsWa91vty6VhWSaQ== +git-raw-commits@2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/git-raw-commits/-/git-raw-commits-2.0.0.tgz#d92addf74440c14bcc5c83ecce3fb7f8a79118b5" + integrity sha512-w4jFEJFgKXMQJ0H0ikBk2S+4KP2VEjhCvLCNqbNRQC8BgGWgLKNCO7a9K9LI+TVT7Gfoloje502sEnctibffgg== dependencies: - dargs "^7.0.0" - lodash "^4.17.15" - meow "^8.0.0" - split2 "^3.0.0" - through2 "^4.0.0" + dargs "^4.0.1" + lodash.template "^4.0.2" + meow "^4.0.0" + split2 "^2.0.0" + through2 "^2.0.0" git-remote-origin-url@^2.0.0: version "2.0.0" @@ -4111,12 +6178,12 @@ git-remote-origin-url@^2.0.0: gitconfiglocal "^1.0.0" pify "^2.3.0" -git-semver-tags@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/git-semver-tags/-/git-semver-tags-4.1.1.tgz#63191bcd809b0ec3e151ba4751c16c444e5b5780" - integrity sha512-OWyMt5zBe7xFs8vglMmhM9lRQzCWL3WjHtxNNfJTMngGym7pC1kh8sP6jevfydJ6LP3ZvGxfb6ABYgPUM0mtsA== +git-semver-tags@^2.0.3: + version "2.0.3" + resolved "https://registry.yarnpkg.com/git-semver-tags/-/git-semver-tags-2.0.3.tgz#48988a718acf593800f99622a952a77c405bfa34" + integrity sha512-tj4FD4ww2RX2ae//jSrXZzrocla9db5h0V7ikPl1P/WwoZar9epdUhwR7XHXSgc+ZkNq72BEEerqQuicoEQfzA== dependencies: - meow "^8.0.0" + meow "^4.0.0" semver "^6.0.0" git-up@^4.0.0: @@ -4127,7 +6194,7 @@ git-up@^4.0.0: is-ssh "^1.3.0" parse-url "^6.0.0" -git-url-parse@^11.4.4: +git-url-parse@^11.1.2: version "11.6.0" resolved "https://registry.yarnpkg.com/git-url-parse/-/git-url-parse-11.6.0.tgz#c634b8de7faa66498a2b88932df31702c67df605" integrity sha512-WWUxvJs5HsyHL6L08wOusa/IXYtMuCAhrMmnTjQPpBU0TTHyDhnOATNH3xNQz7YOQUsqIIPTGr4xiVti1Hsk5g== @@ -4141,13 +6208,26 @@ gitconfiglocal@^1.0.0: dependencies: ini "^1.3.2" -glob-parent@^5.1.1, glob-parent@^5.1.2: +glob-parent@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-3.1.0.tgz#9e6af6299d8d3bd2bd40430832bd113df906c5ae" + integrity sha1-nmr2KZ2NO9K9QEMIMr0RPfkGxa4= + dependencies: + is-glob "^3.1.0" + path-dirname "^1.0.0" + +glob-parent@^5.0.0, glob-parent@^5.1.2: version "5.1.2" resolved "https://registry.yarnpkg.com/glob-parent/-/glob-parent-5.1.2.tgz#869832c58034fe68a4093c17dc15e8340d8401c4" integrity sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow== dependencies: is-glob "^4.0.1" +glob-to-regexp@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.3.0.tgz#8c5a1494d2066c570cc3bfe4496175acc4d502ab" + integrity sha1-jFoUlNIGbFcMw7/kSWF1rMTVAqs= + glob-to-regexp@^0.4.1: version "0.4.1" resolved "https://registry.yarnpkg.com/glob-to-regexp/-/glob-to-regexp-0.4.1.tgz#c75297087c851b9a578bd217dd59a92f59fe546e" @@ -4164,7 +6244,7 @@ glob@^6.0.1: once "^1.3.0" path-is-absolute "^1.0.0" -glob@^7.1.1, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6: +glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4: version "7.2.0" resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023" integrity sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q== @@ -4188,6 +6268,11 @@ glob@~7.1.6: once "^1.3.0" path-is-absolute "^1.0.0" +globals@^11.1.0: + version "11.12.0" + resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" + integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== + globals@^13.6.0, globals@^13.9.0: version "13.12.0" resolved "https://registry.yarnpkg.com/globals/-/globals-13.12.0.tgz#4d733760304230a0082ed96e21e5c565f898089e" @@ -4209,7 +6294,7 @@ globby@10.0.0: merge2 "^1.2.3" slash "^3.0.0" -globby@^11.0.2, globby@^11.0.3: +globby@^11.0.3: version "11.0.4" resolved "https://registry.yarnpkg.com/globby/-/globby-11.0.4.tgz#2cbaff77c2f2a62e71e9b2813a67b97a3a3001a5" integrity sha512-9O4MVG9ioZJ08ffbcyVYyLOJLk5JQ688pJ4eMGLpdWLHq/Wr1D9BlriLQyL0E+jbkuePVZXYFj47QM/v093wHg== @@ -4221,6 +6306,20 @@ globby@^11.0.2, globby@^11.0.3: merge2 "^1.3.0" slash "^3.0.0" +globby@^9.2.0: + version "9.2.0" + resolved "https://registry.yarnpkg.com/globby/-/globby-9.2.0.tgz#fd029a706c703d29bdd170f4b6db3a3f7a7cb63d" + integrity sha512-ollPHROa5mcxDEkwg6bPt3QbEf4pDQSNtd6JPL1YvOvAo/7/0VAm9TccUeoTmarjPw4pfUthSCqcyfNB1I3ZSg== + dependencies: + "@types/glob" "^7.1.1" + array-union "^1.0.2" + dir-glob "^2.2.2" + fast-glob "^2.2.6" + glob "^7.1.3" + ignore "^4.0.3" + pify "^4.0.1" + slash "^2.0.0" + got@^9.6.0: version "9.6.0" resolved "https://registry.yarnpkg.com/got/-/got-9.6.0.tgz#edf45e7d67f99545705de1f7bbeeeb121765ed85" @@ -4238,16 +6337,28 @@ got@^9.6.0: to-readable-stream "^1.0.0" url-parse-lax "^3.0.0" -graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.3, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.2, graceful-fs@^4.2.3, graceful-fs@^4.2.4: +graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.3, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.2, graceful-fs@^4.2.4: version "4.2.8" resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.8.tgz#e412b8d33f5e006593cbd3cee6df9f2cebbe802a" integrity sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg== +growly@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081" + integrity sha1-8QdIy+dq+WS3yWyTxrzCivEgwIE= + gud@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/gud/-/gud-1.0.0.tgz#a489581b17e6a70beca9abe3ae57de7a499852c0" integrity sha512-zGEOVKFM5sVPPrYs7J5/hYEw2Pof8KCyOwyhG8sAF26mCAeUFAcYPu1mwB7hhpIP29zOIBaDqwuHdLp0jvZXjw== +gzip-size@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/gzip-size/-/gzip-size-6.0.0.tgz#065367fd50c239c0671cbcbad5be3e2eeb10e462" + integrity sha512-ax7ZYomf6jqPTQ4+XCpUGyXKHk5WweS+e05MBO4/y3WJ5RkmPXNKvX+bx1behVILVwr6JSQvZAku021CHPXG3Q== + dependencies: + duplexer "^0.1.2" + handlebars@4.7.7, handlebars@^4.7.6: version "4.7.7" resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.7.7.tgz#9ce33416aad02dbd6c8fafa8240d5d98004945a1" @@ -4310,6 +6421,37 @@ has-unicode@^2.0.0, has-unicode@^2.0.1: resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk= +has-value@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/has-value/-/has-value-0.3.1.tgz#7b1f58bada62ca827ec0a2078025654845995e1f" + integrity sha1-ex9YutpiyoJ+wKIHgCVlSEWZXh8= + dependencies: + get-value "^2.0.3" + has-values "^0.1.4" + isobject "^2.0.0" + +has-value@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-value/-/has-value-1.0.0.tgz#18b281da585b1c5c51def24c930ed29a0be6b177" + integrity sha1-GLKB2lhbHFxR3vJMkw7SmgvmsXc= + dependencies: + get-value "^2.0.6" + has-values "^1.0.0" + isobject "^3.0.0" + +has-values@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/has-values/-/has-values-0.1.4.tgz#6d61de95d91dfca9b9a02089ad384bff8f62b771" + integrity sha1-bWHeldkd/Km5oCCJrThL/49it3E= + +has-values@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/has-values/-/has-values-1.0.0.tgz#95b0b63fec2146619a6fe57fe75628d5a39efe4f" + integrity sha1-lbC2P+whRmGab+V/51Yo1aOe/k8= + dependencies: + is-number "^3.0.0" + kind-of "^4.0.0" + has@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796" @@ -4317,12 +6459,12 @@ has@^1.0.3: dependencies: function-bind "^1.1.1" -hosted-git-info@^2.1.4: +hosted-git-info@^2.1.4, hosted-git-info@^2.7.1: version "2.8.9" resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw== -hosted-git-info@^4.0.0, hosted-git-info@^4.0.1: +hosted-git-info@^4.0.1: version "4.0.2" resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-4.0.2.tgz#5e425507eede4fea846b7262f0838456c4209961" integrity sha512-c9OGXbZ3guC/xOlCg1Ci/VgWlwsqDv1yMQL1CWqXDL0hDjXuNcq0zuR4xqPSuasI3kqFDhqSyTjREz5gzq0fXg== @@ -4336,6 +6478,18 @@ html-encoding-sniffer@^1.0.2: dependencies: whatwg-encoding "^1.0.1" +html-encoding-sniffer@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/html-encoding-sniffer/-/html-encoding-sniffer-2.0.1.tgz#42a6dc4fd33f00281176e8b23759ca4e4fa185f3" + integrity sha512-D5JbOMBIR/TVZkubHT+OyT2705QvogUW4IBn6nHd756OwieSF9aDYFj4dv6HHEVGYbHaLETa3WggZYWWMyy3ZQ== + dependencies: + whatwg-encoding "^1.0.5" + +html-escaper@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/html-escaper/-/html-escaper-2.0.2.tgz#dfd60027da36a36dfcbe236262c00a5822681453" + integrity sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg== + htmlparser2@^6.0.0: version "6.1.0" resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-6.1.0.tgz#c4d762b6c3371a05dbe65e94ae43a9f845fb8fb7" @@ -4346,7 +6500,12 @@ htmlparser2@^6.0.0: domutils "^2.5.2" entities "^2.0.0" -http-cache-semantics@^4.0.0, http-cache-semantics@^4.1.0: +http-cache-semantics@^3.8.1: + version "3.8.1" + resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-3.8.1.tgz#39b0e16add9b605bf0a9ef3d9daaf4843b4cacd2" + integrity sha512-5ai2iksyV8ZXmnZhHH4rWPoxxistEexSi5936zIQ1bnNTW5VnA85B6P/VpXiRM017IgRvb2kKo1a//y+0wSp3w== + +http-cache-semantics@^4.0.0: version "4.1.0" resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz#49e91c5cbf36c9b94bcfcd71c23d5249ec74e390" integrity sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ== @@ -4384,6 +6543,14 @@ http-errors@~1.7.2: statuses ">= 1.5.0 < 2" toidentifier "1.0.0" +http-proxy-agent@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-2.1.0.tgz#e4821beef5b2142a2026bd73926fe537631c5405" + integrity sha512-qwHbBLV7WviBl0rQsOzH6o5lwyOIvwp/BdFnvVxXORldu5TmjFfjzBcWUWS5kWAZhmv+JtiDhSuQCp4sBfbIgg== + dependencies: + agent-base "4" + debug "3.1.0" + http-proxy-agent@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz#8a8c8ef7f5932ccf953c296ca8291b95aa74aa3a" @@ -4415,6 +6582,19 @@ https-proxy-agent@5.0.0, https-proxy-agent@^5.0.0: agent-base "6" debug "4" +https-proxy-agent@^2.2.3: + version "2.2.4" + resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-2.2.4.tgz#4ee7a737abd92678a293d9b34a1af4d0d08c787b" + integrity sha512-OmvfoQ53WLjtA9HeYP9RNrWMJzzAz1JGaSFr1nijg0PVR1JaD/xbJq1mdEIIlxGpXp9eSe/O2LgU9DJmTPd0Eg== + dependencies: + agent-base "^4.3.0" + debug "^3.1.0" + +human-signals@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-1.1.1.tgz#c5b1cd14f50aeae09ab6c59fe63ba3395fe4dfa3" + integrity sha512-SEQu7vl8KjNL2eoGBLF3+wAjpsNfA9XMlXAYj/3EdaNfAlxKthD1xjEQfGOUhllCGGJVNY34bRr6lPINhNjyZw== + human-signals@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-2.1.0.tgz#dc91fcba42e4d06e4abaed33b3e7a3c02f514ea0" @@ -4427,7 +6607,24 @@ humanize-ms@^1.2.1: dependencies: ms "^2.0.0" -iconv-lite@0.4.24, iconv-lite@^0.4.24: +husky@^3: + version "3.1.0" + resolved "https://registry.yarnpkg.com/husky/-/husky-3.1.0.tgz#5faad520ab860582ed94f0c1a77f0f04c90b57c0" + integrity sha512-FJkPoHHB+6s4a+jwPqBudBDvYZsoQW5/HBuMSehC8qDiCe50kpcxeqFoDSlow+9I6wg47YxBoT3WxaURlrDIIQ== + dependencies: + chalk "^2.4.2" + ci-info "^2.0.0" + cosmiconfig "^5.2.1" + execa "^1.0.0" + get-stdin "^7.0.0" + opencollective-postinstall "^2.0.2" + pkg-dir "^4.2.0" + please-upgrade-node "^3.2.0" + read-pkg "^5.2.0" + run-node "^1.0.0" + slash "^3.0.0" + +iconv-lite@0.4, iconv-lite@0.4.24, iconv-lite@^0.4.24: version "0.4.24" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== @@ -4451,14 +6648,19 @@ ieee754@^1.1.13: resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== -ignore-walk@^3.0.3: +iferr@^0.1.5: + version "0.1.5" + resolved "https://registry.yarnpkg.com/iferr/-/iferr-0.1.5.tgz#c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501" + integrity sha1-xg7taebY/bazEEofy8ocGS3FtQE= + +ignore-walk@^3.0.1: version "3.0.4" resolved "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-3.0.4.tgz#c9a09f69b7c7b479a5d74ac1a3c0d4236d2a6335" integrity sha512-PY6Ii8o1jMRA1z4F2hRkH/xN59ox43DavKvD3oDpfurRlOJyAHpifIwpbdv1n4jt4ov0jSpw3kQ4GhJnpBL6WQ== dependencies: minimatch "^3.0.4" -ignore@^4.0.6: +ignore@^4.0.3, ignore@^4.0.6: version "4.0.6" resolved "https://registry.yarnpkg.com/ignore/-/ignore-4.0.6.tgz#750e3db5862087b4737ebac8207ffd1ef27b25fc" integrity sha512-cyFDKrqc/YdcWFniJhzI42+AzS+gNwmUzOSFcRCQYwySuBBBy/KjuxWLZ/FHEH6Moq1NizMOBWyTcv8O4OZIMg== @@ -4473,6 +6675,14 @@ immediate@^3.2.3: resolved "https://registry.yarnpkg.com/immediate/-/immediate-3.3.0.tgz#1aef225517836bcdf7f2a2de2600c79ff0269266" integrity sha512-HR7EVodfFUdQCTIeySw+WDRFJlPcLOJbXfwwZ7Oom6tjsvZ3bOkCDJHehQC3nxJrv7+f9XecwazynjU8e4Vw3Q== +import-fresh@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-2.0.0.tgz#d81355c15612d386c61f9ddd3922d4304822a546" + integrity sha1-2BNVwVYS04bGH53dOSLUMEgipUY= + dependencies: + caller-path "^2.0.0" + resolve-from "^3.0.0" + import-fresh@^3.0.0, import-fresh@^3.2.1: version "3.3.0" resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" @@ -4481,6 +6691,14 @@ import-fresh@^3.0.0, import-fresh@^3.2.1: parent-module "^1.0.0" resolve-from "^4.0.0" +import-local@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/import-local/-/import-local-2.0.0.tgz#55070be38a5993cf18ef6db7e961f5bee5c5a09d" + integrity sha512-b6s04m3O+s3CGSbqDIyP4R6aAwAeYlVq9+WUWep6iHa8ETRf9yei1U48C5MmfJmV9AiLYYBKPMq/W+/WRpQmCQ== + dependencies: + pkg-dir "^3.0.0" + resolve-cwd "^2.0.0" + import-local@^3.0.2: version "3.0.3" resolved "https://registry.yarnpkg.com/import-local/-/import-local-3.0.3.tgz#4d51c2c495ca9393da259ec66b62e022920211e0" @@ -4494,12 +6712,24 @@ imurmurhash@^0.1.4: resolved "https://registry.yarnpkg.com/imurmurhash/-/imurmurhash-0.1.4.tgz#9218b9b2b928a238b13dc4fb6b6d576f231453ea" integrity sha1-khi5srkoojixPcT7a21XbyMUU+o= +indent-string@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-2.1.0.tgz#8e2d48348742121b4a8218b7a137e9a52049dc80" + integrity sha1-ji1INIdCEhtKghi3oTfppSBJ3IA= + dependencies: + repeating "^2.0.0" + +indent-string@^3.0.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-3.2.0.tgz#4a5fd6d27cc332f37e5419a504dbb837105c9289" + integrity sha1-Sl/W0nzDMvN+VBmlBNu4NxBckok= + indent-string@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/indent-string/-/indent-string-4.0.0.tgz#624f8f4497d619b2d9768531d58f4122854d7251" integrity sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg== -infer-owner@^1.0.4: +infer-owner@^1.0.3, infer-owner@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/infer-owner/-/infer-owner-1.0.4.tgz#c4cefcaa8e51051c2a40ba2ce8a3d27295af9467" integrity sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A== @@ -4512,7 +6742,7 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@2.0.4, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.3: +inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.3: version "2.0.4" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== @@ -4527,20 +6757,40 @@ ini@^1.3.2, ini@^1.3.4, ini@~1.3.0: resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== -init-package-json@^2.0.2: - version "2.0.5" - resolved "https://registry.yarnpkg.com/init-package-json/-/init-package-json-2.0.5.tgz#78b85f3c36014db42d8f32117252504f68022646" - integrity sha512-u1uGAtEFu3VA6HNl/yUWw57jmKEMx8SKOxHhxjGnOFUiIlFnohKDFg4ZrPpv9wWqk44nDxGJAtqjdQFm+9XXQA== +init-package-json@^1.10.3: + version "1.10.3" + resolved "https://registry.yarnpkg.com/init-package-json/-/init-package-json-1.10.3.tgz#45ffe2f610a8ca134f2bd1db5637b235070f6cbe" + integrity sha512-zKSiXKhQveNteyhcj1CoOP8tqp1QuxPIPBl8Bid99DGLFqA1p87M6lNgfjJHSBoWJJlidGOv5rWjyYKEB3g2Jw== dependencies: - npm-package-arg "^8.1.5" + glob "^7.1.1" + npm-package-arg "^4.0.0 || ^5.0.0 || ^6.0.0" promzard "^0.3.0" read "~1.0.1" - read-package-json "^4.1.1" - semver "^7.3.5" - validate-npm-package-license "^3.0.4" + read-package-json "1 || 2" + semver "2.x || 3.x || 4 || 5" + validate-npm-package-license "^3.0.1" validate-npm-package-name "^3.0.0" -inquirer@^7.1.0, inquirer@^7.3.3: +inquirer@^6.2.0: + version "6.5.2" + resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-6.5.2.tgz#ad50942375d036d327ff528c08bd5fab089928ca" + integrity sha512-cntlB5ghuB0iuO65Ovoi8ogLHiWGs/5yNrtUcKjFhSSiVeAIVpD7koaSU9RM8mpXw5YDi9RdYXGQMaOURB7ycQ== + dependencies: + ansi-escapes "^3.2.0" + chalk "^2.4.2" + cli-cursor "^2.1.0" + cli-width "^2.0.0" + external-editor "^3.0.3" + figures "^2.0.0" + lodash "^4.17.12" + mute-stream "0.0.7" + run-async "^2.2.0" + rxjs "^6.4.0" + string-width "^2.1.0" + strip-ansi "^5.1.0" + through "^2.3.6" + +inquirer@^7.1.0: version "7.3.3" resolved "https://registry.yarnpkg.com/inquirer/-/inquirer-7.3.3.tgz#04d176b2af04afc157a83fd7c100e98ee0aad003" integrity sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA== @@ -4568,6 +6818,11 @@ internal-slot@^1.0.3: has "^1.0.3" side-channel "^1.0.4" +internmap@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/internmap/-/internmap-1.0.1.tgz#0017cc8a3b99605f0302f2b198d272e015e5df95" + integrity sha512-lDB5YccMydFBtasVtxnZ3MRBHuaoE8GKsppq+EchKL2U4nK/DmEpPHNH8MZe5HkMtpSiTSOZwfN0tzYjO/lJEw== + interpret@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/interpret/-/interpret-2.2.0.tgz#1a78a0b5965c40a5416d007ad6f50ad27c417df9" @@ -4578,7 +6833,7 @@ ip-regex@^2.1.0: resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-2.1.0.tgz#fa78bf5d2e6913c911ce9f819ee5146bb6d844e9" integrity sha1-+ni/XS5pE8kRzp+BnuUUa7bYROk= -ip@^1.1.5: +ip@1.1.5, ip@^1.1.5: version "1.1.5" resolved "https://registry.yarnpkg.com/ip/-/ip-1.1.5.tgz#bdded70114290828c0a039e72ef25f5aaec4354a" integrity sha1-vd7XARQpCCjAoDnnLvJfWq7ENUo= @@ -4588,6 +6843,20 @@ ipaddr.js@1.9.1: resolved "https://registry.yarnpkg.com/ipaddr.js/-/ipaddr.js-1.9.1.tgz#bff38543eeb8984825079ff3a2a8e6cbd46781b3" integrity sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g== +is-accessor-descriptor@^0.1.6: + version "0.1.6" + resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-0.1.6.tgz#a9e12cb3ae8d876727eeef3843f8a0897b5c98d6" + integrity sha1-qeEss66Nh2cn7u84Q/igiXtcmNY= + dependencies: + kind-of "^3.0.2" + +is-accessor-descriptor@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.0.tgz#169c2f6d3df1f992618072365c9b0ea1f6878656" + integrity sha512-m5hnHTkcVsPfqx3AKlyttIPb7J+XykHvJP2B9bZDjlhLIoEq4XoK64Vg7boZlVWYK6LUY94dYPEE7Lh0ZkZKcQ== + dependencies: + kind-of "^6.0.0" + is-arguments@^1.0.4: version "1.1.1" resolved "https://registry.yarnpkg.com/is-arguments/-/is-arguments-1.1.1.tgz#15b3f88fda01f2a97fec84ca761a560f123efa9b" @@ -4601,6 +6870,11 @@ is-arrayish@^0.2.1: resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= +is-arrayish@^0.3.1: + version "0.3.2" + resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.3.2.tgz#4574a2ae56f7ab206896fb431eaeed066fdf8f03" + integrity sha512-eVRqCvVlZbuw3GrM63ovNSNAeA1K16kaR/LRY/92w0zxQ5/1YzwblUX652i4Xs9RwAGjW9d9y6X88t8OaAJfWQ== + is-bigint@^1.0.1: version "1.0.4" resolved "https://registry.yarnpkg.com/is-bigint/-/is-bigint-1.0.4.tgz#08147a1875bc2b32005d41ccd8291dffc6691df3" @@ -4616,6 +6890,11 @@ is-boolean-object@^1.1.0: call-bind "^1.0.2" has-tostringtag "^1.0.0" +is-buffer@^1.1.5: + version "1.1.6" + resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be" + integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w== + is-callable@^1.1.4, is-callable@^1.2.4: version "1.2.4" resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.4.tgz#47301d58dd0259407865547853df6d61fe471945" @@ -4635,6 +6914,20 @@ is-core-module@^2.2.0, is-core-module@^2.5.0: dependencies: has "^1.0.3" +is-data-descriptor@^0.1.4: + version "0.1.4" + resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-0.1.4.tgz#0b5ee648388e2c860282e793f1856fec3f301b56" + integrity sha1-C17mSDiOLIYCgueT8YVv7D8wG1Y= + dependencies: + kind-of "^3.0.2" + +is-data-descriptor@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-data-descriptor/-/is-data-descriptor-1.0.0.tgz#d84876321d0e7add03990406abbbbd36ba9268c7" + integrity sha512-jbRXy1FmtAoCjQkVmIVYwuuqDFUbaOeDjmed1tOGPrsMhtJA4rD9tkgA0F1qJ3gRFRXcHYVkdeaP50Q5rE/jLQ== + dependencies: + kind-of "^6.0.0" + is-date-object@^1.0.1: version "1.0.5" resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.5.tgz#0841d5536e724c25597bf6ea62e1bd38298df31f" @@ -4642,11 +6935,56 @@ is-date-object@^1.0.1: dependencies: has-tostringtag "^1.0.0" -is-extglob@^2.1.1: +is-descriptor@^0.1.0: + version "0.1.6" + resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-0.1.6.tgz#366d8240dde487ca51823b1ab9f07a10a78251ca" + integrity sha512-avDYr0SB3DwO9zsMov0gKCESFYqCnE4hq/4z3TdUlukEy5t9C0YRq7HLrsN52NAcqXKaepeCD0n+B0arnVG3Hg== + dependencies: + is-accessor-descriptor "^0.1.6" + is-data-descriptor "^0.1.4" + kind-of "^5.0.0" + +is-descriptor@^1.0.0, is-descriptor@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-descriptor/-/is-descriptor-1.0.2.tgz#3b159746a66604b04f8c81524ba365c5f14d86ec" + integrity sha512-2eis5WqQGV7peooDyLmNEPUrps9+SXX5c9pL3xEB+4e9HnGuDa7mB7kHxHw4CbqS9k1T2hOH3miL8n8WtiYVtg== + dependencies: + is-accessor-descriptor "^1.0.0" + is-data-descriptor "^1.0.0" + kind-of "^6.0.2" + +is-directory@^0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/is-directory/-/is-directory-0.3.1.tgz#61339b6f2475fc772fd9c9d83f5c8575dc154ae1" + integrity sha1-YTObbyR1/Hcv2cnYP1yFddwVSuE= + +is-docker@^2.0.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/is-docker/-/is-docker-2.2.1.tgz#33eeabe23cfe86f14bde4408a02c0cfb853acdaa" + integrity sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ== + +is-extendable@^0.1.0, is-extendable@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-0.1.1.tgz#62b110e289a471418e3ec36a617d472e301dfc89" + integrity sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik= + +is-extendable@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-extendable/-/is-extendable-1.0.1.tgz#a7470f9e426733d81bd81e1155264e3a3507cab4" + integrity sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA== + dependencies: + is-plain-object "^2.0.4" + +is-extglob@^2.1.0, is-extglob@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/is-extglob/-/is-extglob-2.1.1.tgz#a88c02535791f02ed37c76a1b9ea9773c833f8c2" integrity sha1-qIwCU1eR8C7TfHahueqXc8gz+MI= +is-finite@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-finite/-/is-finite-1.1.0.tgz#904135c77fb42c0641d6aa1bcdbc4daa8da082f3" + integrity sha512-cdyMtqX/BOqqNBBiKlIVkytNHm49MtMlYyn1zxzvJKWmFMlGzm+ry5BBfYyeY9YmNKbRSo/o7OX9w9ale0wg3w== + is-fullwidth-code-point@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb" @@ -4654,11 +6992,28 @@ is-fullwidth-code-point@^1.0.0: dependencies: number-is-nan "^1.0.0" +is-fullwidth-code-point@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f" + integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8= + is-fullwidth-code-point@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== +is-generator-fn@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/is-generator-fn/-/is-generator-fn-2.1.0.tgz#7d140adc389aaf3011a8f2a2a4cfa6faadffb118" + integrity sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ== + +is-glob@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-3.1.0.tgz#7ba5ae24217804ac70707b96922567486cc3e84a" + integrity sha1-e6WuJCF4BKxwcHuWkiVnSGzD6Eo= + dependencies: + is-extglob "^2.1.0" + is-glob@^4.0.0, is-glob@^4.0.1: version "4.0.3" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" @@ -4666,11 +7021,6 @@ is-glob@^4.0.0, is-glob@^4.0.1: dependencies: is-extglob "^2.1.1" -is-lambda@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/is-lambda/-/is-lambda-1.0.1.tgz#3d9877899e6a53efc0160504cde15f82e6f061d5" - integrity sha1-PZh3iZ5qU+/AFgUEzeFfgubwYdU= - is-negative-zero@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.1.tgz#3de746c18dda2319241a53675908d8f766f11c24" @@ -4683,17 +7033,29 @@ is-number-object@^1.0.4: dependencies: has-tostringtag "^1.0.0" +is-number@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/is-number/-/is-number-3.0.0.tgz#24fd6201a4782cf50561c810276afc7d12d71195" + integrity sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU= + dependencies: + kind-of "^3.0.2" + is-number@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== +is-obj@^1.0.0, is-obj@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-1.0.1.tgz#3e4729ac1f5fde025cd7d83a896dab9f4f67db0f" + integrity sha1-PkcprB9f3gJc19g6iW2rn09n2w8= + is-obj@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-2.0.0.tgz#473fb05d973705e3fd9620545018ca8e22ef4982" integrity sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w== -is-plain-obj@2.1.0, is-plain-obj@^2.0.0: +is-plain-obj@2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-2.1.0.tgz#45e42e37fccf1f40da8e5f76ee21515840c09287" integrity sha512-YWnfyRwxL/+SsrWYfOpUtz5b3YD+nyfkHvjbcanzk8zgyO4ASD67uVMRt8k5bM4lLMDnXfriRhOpemw+NfT1eA== @@ -4703,7 +7065,7 @@ is-plain-obj@^1.0.0, is-plain-obj@^1.1.0: resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz#71a50c8429dfca773c92a390a4a03b39fcd51d3e" integrity sha1-caUMhCnfync8kqOQpKA7OfzVHT4= -is-plain-object@^2.0.4: +is-plain-object@^2.0.3, is-plain-object@^2.0.4: version "2.0.4" resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-2.0.4.tgz#2c163b3fafb1b606d9d17928f05c2a1c38e07677" integrity sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og== @@ -4715,6 +7077,11 @@ is-plain-object@^5.0.0: resolved "https://registry.yarnpkg.com/is-plain-object/-/is-plain-object-5.0.0.tgz#4427f50ab3429e9025ea7d52e9043a9ef4159344" integrity sha512-VRSzKkbMm5jMDoKLbltAkFQ5Qr7VDiTFGXxYFXXowVj387GeGNOCsOH6Msy00SGZ3Fp84b1Naa1psqgcCIEP5Q== +is-potential-custom-element-name@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz#171ed6f19e3ac554394edf78caa05784a45bebb5" + integrity sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ== + is-promise@^2.1.0, is-promise@^2.2.2: version "2.2.2" resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.2.2.tgz#39ab959ccbf9a774cf079f7b40c7a26f763135f1" @@ -4728,6 +7095,11 @@ is-regex@^1.0.4, is-regex@^1.1.4: call-bind "^1.0.2" has-tostringtag "^1.0.0" +is-regexp@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-regexp/-/is-regexp-1.0.0.tgz#fd2d883545c46bac5a633e7b9a09e87fa2cb5069" + integrity sha1-/S2INUXEa6xaYz57mgnof6LLUGk= + is-shared-array-buffer@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.1.tgz#97b0c85fbdacb59c9c446fe653b82cf2b5b7cfe6" @@ -4740,6 +7112,11 @@ is-ssh@^1.3.0: dependencies: protocols "^1.1.0" +is-stream@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" + integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ= + is-stream@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077" @@ -4771,6 +7148,16 @@ is-typedarray@^1.0.0, is-typedarray@~1.0.0: resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a" integrity sha1-5HnICFjfDBsR3dppQPlgEfzaSpo= +is-unicode-supported@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/is-unicode-supported/-/is-unicode-supported-0.1.0.tgz#3f26c76a809593b52bfa2ecb5710ed2779b522a7" + integrity sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw== + +is-utf8@^0.2.0: + version "0.2.1" + resolved "https://registry.yarnpkg.com/is-utf8/-/is-utf8-0.2.1.tgz#4b0da1442104d1b336340e80797e865cf39f7d72" + integrity sha1-Sw2hRCEE0bM2NA6AeX6GXPOffXI= + is-weakref@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-weakref/-/is-weakref-1.0.1.tgz#842dba4ec17fa9ac9850df2d6efbc1737274f2a2" @@ -4778,7 +7165,19 @@ is-weakref@^1.0.1: dependencies: call-bind "^1.0.0" -isarray@~1.0.0: +is-windows@^1.0.0, is-windows@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/is-windows/-/is-windows-1.0.2.tgz#d1850eb9791ecd18e6182ce12a30f396634bb19d" + integrity sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA== + +is-wsl@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/is-wsl/-/is-wsl-2.2.0.tgz#74a4c76e77ca9fd3f932f290c17ea326cd157271" + integrity sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww== + dependencies: + is-docker "^2.0.0" + +isarray@1.0.0, isarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" integrity sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE= @@ -4788,7 +7187,14 @@ isexe@^2.0.0: resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" integrity sha1-6PvzdNxVb/iUehDcsFctYz8s+hA= -isobject@^3.0.1: +isobject@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/isobject/-/isobject-2.1.0.tgz#f065561096a3f1da2ef46272f815c840d87e0c89" + integrity sha1-8GVWEJaj8dou9GJy+BXIQNh+DIk= + dependencies: + isarray "1.0.0" + +isobject@^3.0.0, isobject@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/isobject/-/isobject-3.0.1.tgz#4e431e92b11a9731636aa1f9c8d1ccbcfdab78df" integrity sha1-TkMekrEalzFjaqH5yNHMvP2reN8= @@ -4803,7 +7209,436 @@ isstream@~0.1.2: resolved "https://registry.yarnpkg.com/isstream/-/isstream-0.1.2.tgz#47e63f7af55afa6f92e1500e690eb8b8529c099a" integrity sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo= -jest-worker@^26.5.0: +istanbul-lib-coverage@^3.0.0, istanbul-lib-coverage@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.0.tgz#189e7909d0a39fa5a3dfad5b03f71947770191d3" + integrity sha512-eOeJ5BHCmHYvQK7xt9GkdHuzuCGS1Y6g9Gvnx3Ym33fz/HpLRYxiS0wHNr+m/MBC8B647Xt608vCDEvhl9c6Mw== + +istanbul-lib-instrument@^4.0.3: + version "4.0.3" + resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-4.0.3.tgz#873c6fff897450118222774696a3f28902d77c1d" + integrity sha512-BXgQl9kf4WTCPCCpmFGoJkz/+uhvm7h7PFKUYxh7qarQd3ER33vHG//qaE8eN25l07YqZPpHXU9I09l/RD5aGQ== + dependencies: + "@babel/core" "^7.7.5" + "@istanbuljs/schema" "^0.1.2" + istanbul-lib-coverage "^3.0.0" + semver "^6.3.0" + +istanbul-lib-instrument@^5.0.4: + version "5.1.0" + resolved "https://registry.yarnpkg.com/istanbul-lib-instrument/-/istanbul-lib-instrument-5.1.0.tgz#7b49198b657b27a730b8e9cb601f1e1bff24c59a" + integrity sha512-czwUz525rkOFDJxfKK6mYfIs9zBKILyrZQxjz3ABhjQXhbhFsSbo1HW/BFcsDnfJYJWA6thRR5/TUY2qs5W99Q== + dependencies: + "@babel/core" "^7.12.3" + "@babel/parser" "^7.14.7" + "@istanbuljs/schema" "^0.1.2" + istanbul-lib-coverage "^3.2.0" + semver "^6.3.0" + +istanbul-lib-report@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/istanbul-lib-report/-/istanbul-lib-report-3.0.0.tgz#7518fe52ea44de372f460a76b5ecda9ffb73d8a6" + integrity sha512-wcdi+uAKzfiGT2abPpKZ0hSU1rGQjUQnLvtY5MpQ7QCTahD3VODhcu4wcfY1YtkGaDD5yuydOLINXsfbus9ROw== + dependencies: + istanbul-lib-coverage "^3.0.0" + make-dir "^3.0.0" + supports-color "^7.1.0" + +istanbul-lib-source-maps@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/istanbul-lib-source-maps/-/istanbul-lib-source-maps-4.0.1.tgz#895f3a709fcfba34c6de5a42939022f3e4358551" + integrity sha512-n3s8EwkdFIJCG3BPKBYvskgXGoy88ARzvegkitk60NxRdwltLOTaH7CUiMRXvwYorl0Q712iEjcWB+fK/MrWVw== + dependencies: + debug "^4.1.1" + istanbul-lib-coverage "^3.0.0" + source-map "^0.6.1" + +istanbul-reports@^3.0.2: + version "3.0.5" + resolved "https://registry.yarnpkg.com/istanbul-reports/-/istanbul-reports-3.0.5.tgz#a2580107e71279ea6d661ddede929ffc6d693384" + integrity sha512-5+19PlhnGabNWB7kOFnuxT8H3T/iIyQzIbQMxXsURmmvKg86P2sbkrGOT77VnHw0Qr0gc2XzRaRfMZYYbSQCJQ== + dependencies: + html-escaper "^2.0.0" + istanbul-lib-report "^3.0.0" + +jest-changed-files@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-changed-files/-/jest-changed-files-26.6.2.tgz#f6198479e1cc66f22f9ae1e22acaa0b429c042d0" + integrity sha512-fDS7szLcY9sCtIip8Fjry9oGf3I2ht/QT21bAHm5Dmf0mD4X3ReNUf17y+bO6fR8WgbIZTlbyG1ak/53cbRzKQ== + dependencies: + "@jest/types" "^26.6.2" + execa "^4.0.0" + throat "^5.0.0" + +jest-cli@^26.6.3: + version "26.6.3" + resolved "https://registry.yarnpkg.com/jest-cli/-/jest-cli-26.6.3.tgz#43117cfef24bc4cd691a174a8796a532e135e92a" + integrity sha512-GF9noBSa9t08pSyl3CY4frMrqp+aQXFGFkf5hEPbh/pIUFYWMK6ZLTfbmadxJVcJrdRoChlWQsA2VkJcDFK8hg== + dependencies: + "@jest/core" "^26.6.3" + "@jest/test-result" "^26.6.2" + "@jest/types" "^26.6.2" + chalk "^4.0.0" + exit "^0.1.2" + graceful-fs "^4.2.4" + import-local "^3.0.2" + is-ci "^2.0.0" + jest-config "^26.6.3" + jest-util "^26.6.2" + jest-validate "^26.6.2" + prompts "^2.0.1" + yargs "^15.4.1" + +jest-config@^26.6.3: + version "26.6.3" + resolved "https://registry.yarnpkg.com/jest-config/-/jest-config-26.6.3.tgz#64f41444eef9eb03dc51d5c53b75c8c71f645349" + integrity sha512-t5qdIj/bCj2j7NFVHb2nFB4aUdfucDn3JRKgrZnplb8nieAirAzRSHP8uDEd+qV6ygzg9Pz4YG7UTJf94LPSyg== + dependencies: + "@babel/core" "^7.1.0" + "@jest/test-sequencer" "^26.6.3" + "@jest/types" "^26.6.2" + babel-jest "^26.6.3" + chalk "^4.0.0" + deepmerge "^4.2.2" + glob "^7.1.1" + graceful-fs "^4.2.4" + jest-environment-jsdom "^26.6.2" + jest-environment-node "^26.6.2" + jest-get-type "^26.3.0" + jest-jasmine2 "^26.6.3" + jest-regex-util "^26.0.0" + jest-resolve "^26.6.2" + jest-util "^26.6.2" + jest-validate "^26.6.2" + micromatch "^4.0.2" + pretty-format "^26.6.2" + +jest-diff@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-diff/-/jest-diff-26.6.2.tgz#1aa7468b52c3a68d7d5c5fdcdfcd5e49bd164394" + integrity sha512-6m+9Z3Gv9wN0WFVasqjCL/06+EFCMTqDEUl/b87HYK2rAPTyfz4ZIuSlPhY51PIQRWx5TaxeF1qmXKe9gfN3sA== + dependencies: + chalk "^4.0.0" + diff-sequences "^26.6.2" + jest-get-type "^26.3.0" + pretty-format "^26.6.2" + +jest-docblock@^26.0.0: + version "26.0.0" + resolved "https://registry.yarnpkg.com/jest-docblock/-/jest-docblock-26.0.0.tgz#3e2fa20899fc928cb13bd0ff68bd3711a36889b5" + integrity sha512-RDZ4Iz3QbtRWycd8bUEPxQsTlYazfYn/h5R65Fc6gOfwozFhoImx+affzky/FFBuqISPTqjXomoIGJVKBWoo0w== + dependencies: + detect-newline "^3.0.0" + +jest-each@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-each/-/jest-each-26.6.2.tgz#02526438a77a67401c8a6382dfe5999952c167cb" + integrity sha512-Mer/f0KaATbjl8MCJ+0GEpNdqmnVmDYqCTJYTvoo7rqmRiDllmp2AYN+06F93nXcY3ur9ShIjS+CO/uD+BbH4A== + dependencies: + "@jest/types" "^26.6.2" + chalk "^4.0.0" + jest-get-type "^26.3.0" + jest-util "^26.6.2" + pretty-format "^26.6.2" + +jest-environment-jsdom@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-environment-jsdom/-/jest-environment-jsdom-26.6.2.tgz#78d09fe9cf019a357009b9b7e1f101d23bd1da3e" + integrity sha512-jgPqCruTlt3Kwqg5/WVFyHIOJHsiAvhcp2qiR2QQstuG9yWox5+iHpU3ZrcBxW14T4fe5Z68jAfLRh7joCSP2Q== + dependencies: + "@jest/environment" "^26.6.2" + "@jest/fake-timers" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + jest-mock "^26.6.2" + jest-util "^26.6.2" + jsdom "^16.4.0" + +jest-environment-node@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-environment-node/-/jest-environment-node-26.6.2.tgz#824e4c7fb4944646356f11ac75b229b0035f2b0c" + integrity sha512-zhtMio3Exty18dy8ee8eJ9kjnRyZC1N4C1Nt/VShN1apyXc8rWGtJ9lI7vqiWcyyXS4BVSEn9lxAM2D+07/Tag== + dependencies: + "@jest/environment" "^26.6.2" + "@jest/fake-timers" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + jest-mock "^26.6.2" + jest-util "^26.6.2" + +jest-get-type@^26.3.0: + version "26.3.0" + resolved "https://registry.yarnpkg.com/jest-get-type/-/jest-get-type-26.3.0.tgz#e97dc3c3f53c2b406ca7afaed4493b1d099199e0" + integrity sha512-TpfaviN1R2pQWkIihlfEanwOXK0zcxrKEE4MlU6Tn7keoXdN6/3gK/xl0yEh8DOunn5pOVGKf8hB4R9gVh04ig== + +jest-haste-map@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-haste-map/-/jest-haste-map-26.6.2.tgz#dd7e60fe7dc0e9f911a23d79c5ff7fb5c2cafeaa" + integrity sha512-easWIJXIw71B2RdR8kgqpjQrbMRWQBgiBwXYEhtGUTaX+doCjBheluShdDMeR8IMfJiTqH4+zfhtg29apJf/8w== + dependencies: + "@jest/types" "^26.6.2" + "@types/graceful-fs" "^4.1.2" + "@types/node" "*" + anymatch "^3.0.3" + fb-watchman "^2.0.0" + graceful-fs "^4.2.4" + jest-regex-util "^26.0.0" + jest-serializer "^26.6.2" + jest-util "^26.6.2" + jest-worker "^26.6.2" + micromatch "^4.0.2" + sane "^4.0.3" + walker "^1.0.7" + optionalDependencies: + fsevents "^2.1.2" + +jest-jasmine2@^26.6.3: + version "26.6.3" + resolved "https://registry.yarnpkg.com/jest-jasmine2/-/jest-jasmine2-26.6.3.tgz#adc3cf915deacb5212c93b9f3547cd12958f2edd" + integrity sha512-kPKUrQtc8aYwBV7CqBg5pu+tmYXlvFlSFYn18ev4gPFtrRzB15N2gW/Roew3187q2w2eHuu0MU9TJz6w0/nPEg== + dependencies: + "@babel/traverse" "^7.1.0" + "@jest/environment" "^26.6.2" + "@jest/source-map" "^26.6.2" + "@jest/test-result" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + chalk "^4.0.0" + co "^4.6.0" + expect "^26.6.2" + is-generator-fn "^2.0.0" + jest-each "^26.6.2" + jest-matcher-utils "^26.6.2" + jest-message-util "^26.6.2" + jest-runtime "^26.6.3" + jest-snapshot "^26.6.2" + jest-util "^26.6.2" + pretty-format "^26.6.2" + throat "^5.0.0" + +jest-junit@^11.1.0: + version "11.1.0" + resolved "https://registry.yarnpkg.com/jest-junit/-/jest-junit-11.1.0.tgz#79cd53948e44d62b2b30fa23ea0d7a899d2c8d7a" + integrity sha512-c2LFOyKY7+ZxL5zSu+WHmHfsJ2wqbOpeYJ4Uu26yMhFxny2J2NQj6AVS7M+Eaxji9Q/oIDDK5tQy0DGzDp9xOw== + dependencies: + mkdirp "^1.0.4" + strip-ansi "^5.2.0" + uuid "^3.3.3" + xml "^1.0.1" + +jest-leak-detector@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-leak-detector/-/jest-leak-detector-26.6.2.tgz#7717cf118b92238f2eba65054c8a0c9c653a91af" + integrity sha512-i4xlXpsVSMeKvg2cEKdfhh0H39qlJlP5Ex1yQxwF9ubahboQYMgTtz5oML35AVA3B4Eu+YsmwaiKVev9KCvLxg== + dependencies: + jest-get-type "^26.3.0" + pretty-format "^26.6.2" + +jest-matcher-utils@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-matcher-utils/-/jest-matcher-utils-26.6.2.tgz#8e6fd6e863c8b2d31ac6472eeb237bc595e53e7a" + integrity sha512-llnc8vQgYcNqDrqRDXWwMr9i7rS5XFiCwvh6DTP7Jqa2mqpcCBBlpCbn+trkG0KNhPu/h8rzyBkriOtBstvWhw== + dependencies: + chalk "^4.0.0" + jest-diff "^26.6.2" + jest-get-type "^26.3.0" + pretty-format "^26.6.2" + +jest-message-util@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-message-util/-/jest-message-util-26.6.2.tgz#58173744ad6fc0506b5d21150b9be56ef001ca07" + integrity sha512-rGiLePzQ3AzwUshu2+Rn+UMFk0pHN58sOG+IaJbk5Jxuqo3NYO1U2/MIR4S1sKgsoYSXSzdtSa0TgrmtUwEbmA== + dependencies: + "@babel/code-frame" "^7.0.0" + "@jest/types" "^26.6.2" + "@types/stack-utils" "^2.0.0" + chalk "^4.0.0" + graceful-fs "^4.2.4" + micromatch "^4.0.2" + pretty-format "^26.6.2" + slash "^3.0.0" + stack-utils "^2.0.2" + +jest-mock@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-mock/-/jest-mock-26.6.2.tgz#d6cb712b041ed47fe0d9b6fc3474bc6543feb302" + integrity sha512-YyFjePHHp1LzpzYcmgqkJ0nm0gg/lJx2aZFzFy1S6eUqNjXsOqTK10zNRff2dNfssgokjkG65OlWNcIlgd3zew== + dependencies: + "@jest/types" "^26.6.2" + "@types/node" "*" + +jest-pnp-resolver@^1.2.2: + version "1.2.2" + resolved "https://registry.yarnpkg.com/jest-pnp-resolver/-/jest-pnp-resolver-1.2.2.tgz#b704ac0ae028a89108a4d040b3f919dfddc8e33c" + integrity sha512-olV41bKSMm8BdnuMsewT4jqlZ8+3TCARAXjZGT9jcoSnrfUnRCqnMoF9XEeoWjbzObpqF9dRhHQj0Xb9QdF6/w== + +jest-raw-loader@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/jest-raw-loader/-/jest-raw-loader-1.0.1.tgz#ce9f56d54650f157c4a7d16d224ba5d613bcd626" + integrity sha1-zp9W1UZQ8VfEp9FtIkul1hO81iY= + +jest-regex-util@^26.0.0: + version "26.0.0" + resolved "https://registry.yarnpkg.com/jest-regex-util/-/jest-regex-util-26.0.0.tgz#d25e7184b36e39fd466c3bc41be0971e821fee28" + integrity sha512-Gv3ZIs/nA48/Zvjrl34bf+oD76JHiGDUxNOVgUjh3j890sblXryjY4rss71fPtD/njchl6PSE2hIhvyWa1eT0A== + +jest-resolve-dependencies@^26.6.3: + version "26.6.3" + resolved "https://registry.yarnpkg.com/jest-resolve-dependencies/-/jest-resolve-dependencies-26.6.3.tgz#6680859ee5d22ee5dcd961fe4871f59f4c784fb6" + integrity sha512-pVwUjJkxbhe4RY8QEWzN3vns2kqyuldKpxlxJlzEYfKSvY6/bMvxoFrYYzUO1Gx28yKWN37qyV7rIoIp2h8fTg== + dependencies: + "@jest/types" "^26.6.2" + jest-regex-util "^26.0.0" + jest-snapshot "^26.6.2" + +jest-resolve@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-resolve/-/jest-resolve-26.6.2.tgz#a3ab1517217f469b504f1b56603c5bb541fbb507" + integrity sha512-sOxsZOq25mT1wRsfHcbtkInS+Ek7Q8jCHUB0ZUTP0tc/c41QHriU/NunqMfCUWsL4H3MHpvQD4QR9kSYhS7UvQ== + dependencies: + "@jest/types" "^26.6.2" + chalk "^4.0.0" + graceful-fs "^4.2.4" + jest-pnp-resolver "^1.2.2" + jest-util "^26.6.2" + read-pkg-up "^7.0.1" + resolve "^1.18.1" + slash "^3.0.0" + +jest-runner@^26.6.3: + version "26.6.3" + resolved "https://registry.yarnpkg.com/jest-runner/-/jest-runner-26.6.3.tgz#2d1fed3d46e10f233fd1dbd3bfaa3fe8924be159" + integrity sha512-atgKpRHnaA2OvByG/HpGA4g6CSPS/1LK0jK3gATJAoptC1ojltpmVlYC3TYgdmGp+GLuhzpH30Gvs36szSL2JQ== + dependencies: + "@jest/console" "^26.6.2" + "@jest/environment" "^26.6.2" + "@jest/test-result" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + chalk "^4.0.0" + emittery "^0.7.1" + exit "^0.1.2" + graceful-fs "^4.2.4" + jest-config "^26.6.3" + jest-docblock "^26.0.0" + jest-haste-map "^26.6.2" + jest-leak-detector "^26.6.2" + jest-message-util "^26.6.2" + jest-resolve "^26.6.2" + jest-runtime "^26.6.3" + jest-util "^26.6.2" + jest-worker "^26.6.2" + source-map-support "^0.5.6" + throat "^5.0.0" + +jest-runtime@^26.6.3: + version "26.6.3" + resolved "https://registry.yarnpkg.com/jest-runtime/-/jest-runtime-26.6.3.tgz#4f64efbcfac398331b74b4b3c82d27d401b8fa2b" + integrity sha512-lrzyR3N8sacTAMeonbqpnSka1dHNux2uk0qqDXVkMv2c/A3wYnvQ4EXuI013Y6+gSKSCxdaczvf4HF0mVXHRdw== + dependencies: + "@jest/console" "^26.6.2" + "@jest/environment" "^26.6.2" + "@jest/fake-timers" "^26.6.2" + "@jest/globals" "^26.6.2" + "@jest/source-map" "^26.6.2" + "@jest/test-result" "^26.6.2" + "@jest/transform" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/yargs" "^15.0.0" + chalk "^4.0.0" + cjs-module-lexer "^0.6.0" + collect-v8-coverage "^1.0.0" + exit "^0.1.2" + glob "^7.1.3" + graceful-fs "^4.2.4" + jest-config "^26.6.3" + jest-haste-map "^26.6.2" + jest-message-util "^26.6.2" + jest-mock "^26.6.2" + jest-regex-util "^26.0.0" + jest-resolve "^26.6.2" + jest-snapshot "^26.6.2" + jest-util "^26.6.2" + jest-validate "^26.6.2" + slash "^3.0.0" + strip-bom "^4.0.0" + yargs "^15.4.1" + +jest-serializer@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-serializer/-/jest-serializer-26.6.2.tgz#d139aafd46957d3a448f3a6cdabe2919ba0742d1" + integrity sha512-S5wqyz0DXnNJPd/xfIzZ5Xnp1HrJWBczg8mMfMpN78OJ5eDxXyf+Ygld9wX1DnUWbIbhM1YDY95NjR4CBXkb2g== + dependencies: + "@types/node" "*" + graceful-fs "^4.2.4" + +jest-snapshot@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-snapshot/-/jest-snapshot-26.6.2.tgz#f3b0af1acb223316850bd14e1beea9837fb39c84" + integrity sha512-OLhxz05EzUtsAmOMzuupt1lHYXCNib0ECyuZ/PZOx9TrZcC8vL0x+DUG3TL+GLX3yHG45e6YGjIm0XwDc3q3og== + dependencies: + "@babel/types" "^7.0.0" + "@jest/types" "^26.6.2" + "@types/babel__traverse" "^7.0.4" + "@types/prettier" "^2.0.0" + chalk "^4.0.0" + expect "^26.6.2" + graceful-fs "^4.2.4" + jest-diff "^26.6.2" + jest-get-type "^26.3.0" + jest-haste-map "^26.6.2" + jest-matcher-utils "^26.6.2" + jest-message-util "^26.6.2" + jest-resolve "^26.6.2" + natural-compare "^1.4.0" + pretty-format "^26.6.2" + semver "^7.3.2" + +jest-summary-reporter@^0.0.2: + version "0.0.2" + resolved "https://registry.yarnpkg.com/jest-summary-reporter/-/jest-summary-reporter-0.0.2.tgz#53b9997b56f343a0dd9af24199c68d371e01f534" + integrity sha512-rZ3ThO57l+ZJCxF74cXIGQU3cV9I7bSBe1ElBp0taE3x2JghgD69bNCKt0LvpVQX5azTRHG7LmcjIpwriVnTng== + dependencies: + chalk "^2.4.1" + +jest-util@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-util/-/jest-util-26.6.2.tgz#907535dbe4d5a6cb4c47ac9b926f6af29576cbc1" + integrity sha512-MDW0fKfsn0OI7MS7Euz6h8HNDXVQ0gaM9uW6RjfDmd1DAFcaxX9OqIakHIqhbnmF08Cf2DLDG+ulq8YQQ0Lp0Q== + dependencies: + "@jest/types" "^26.6.2" + "@types/node" "*" + chalk "^4.0.0" + graceful-fs "^4.2.4" + is-ci "^2.0.0" + micromatch "^4.0.2" + +jest-validate@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-validate/-/jest-validate-26.6.2.tgz#23d380971587150467342911c3d7b4ac57ab20ec" + integrity sha512-NEYZ9Aeyj0i5rQqbq+tpIOom0YS1u2MVu6+euBsvpgIme+FOfRmoC4R5p0JiAUpaFvFy24xgrpMknarR/93XjQ== + dependencies: + "@jest/types" "^26.6.2" + camelcase "^6.0.0" + chalk "^4.0.0" + jest-get-type "^26.3.0" + leven "^3.1.0" + pretty-format "^26.6.2" + +jest-watcher@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/jest-watcher/-/jest-watcher-26.6.2.tgz#a5b683b8f9d68dbcb1d7dae32172d2cca0592975" + integrity sha512-WKJob0P/Em2csiVthsI68p6aGKTIcsfjH9Gsx1f0A3Italz43e3ho0geSAVsmj09RWOELP1AZ/DXyJgOgDKxXQ== + dependencies: + "@jest/test-result" "^26.6.2" + "@jest/types" "^26.6.2" + "@types/node" "*" + ansi-escapes "^4.2.1" + chalk "^4.0.0" + jest-util "^26.6.2" + string-length "^4.0.1" + +jest-worker@^26.5.0, jest-worker@^26.6.2: version "26.6.2" resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-26.6.2.tgz#7f72cbc4d643c365e27b9fd775f9d0eaa9c7a8ed" integrity sha512-KWYVV1c4i+jbMpaBC+U++4Va0cp8OisU185o73T1vo99hqi7w8tSJfUXYswwqqrjzwxa6KpRK54WhPvwf5w6PQ== @@ -4821,6 +7656,20 @@ jest-worker@^27.0.6: merge-stream "^2.0.0" supports-color "^8.0.0" +jest@^26.4.2: + version "26.6.3" + resolved "https://registry.yarnpkg.com/jest/-/jest-26.6.3.tgz#40e8fdbe48f00dfa1f0ce8121ca74b88ac9148ef" + integrity sha512-lGS5PXGAzR4RF7V5+XObhqz2KZIDUA1yD0DG6pBVmy10eh0ZIXQImRuzocsI/N2XZ1GrLFwTS27In2i2jlpq1Q== + dependencies: + "@jest/core" "^26.6.3" + import-local "^3.0.2" + jest-cli "^26.6.3" + +jpeg-js@^0.4.2: + version "0.4.3" + resolved "https://registry.yarnpkg.com/jpeg-js/-/jpeg-js-0.4.3.tgz#6158e09f1983ad773813704be80680550eff977b" + integrity sha512-ru1HWKek8octvUHFHvE5ZzQ1yAsJmIvRdGWvSoKV52XKyuyYA437QWDttXT8eZXDSbuMpHlLzPDZUPd6idIz+Q== + "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" @@ -4878,12 +7727,50 @@ jsdom@15.2.1: ws "^7.0.0" xml-name-validator "^3.0.0" +jsdom@^16.4.0: + version "16.7.0" + resolved "https://registry.yarnpkg.com/jsdom/-/jsdom-16.7.0.tgz#918ae71965424b197c819f8183a754e18977b710" + integrity sha512-u9Smc2G1USStM+s/x1ru5Sxrl6mPYCbByG1U/hUmqaVsm4tbNyS7CicOSRyuGQYZhTu0h84qkZZQ/I+dzizSVw== + dependencies: + abab "^2.0.5" + acorn "^8.2.4" + acorn-globals "^6.0.0" + cssom "^0.4.4" + cssstyle "^2.3.0" + data-urls "^2.0.0" + decimal.js "^10.2.1" + domexception "^2.0.1" + escodegen "^2.0.0" + form-data "^3.0.0" + html-encoding-sniffer "^2.0.1" + http-proxy-agent "^4.0.1" + https-proxy-agent "^5.0.0" + is-potential-custom-element-name "^1.0.1" + nwsapi "^2.2.0" + parse5 "6.0.1" + saxes "^5.0.1" + symbol-tree "^3.2.4" + tough-cookie "^4.0.0" + w3c-hr-time "^1.0.2" + w3c-xmlserializer "^2.0.0" + webidl-conversions "^6.1.0" + whatwg-encoding "^1.0.5" + whatwg-mimetype "^2.3.0" + whatwg-url "^8.5.0" + ws "^7.4.6" + xml-name-validator "^3.0.0" + +jsesc@^2.5.1: + version "2.5.2" + resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" + integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== + json-buffer@3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/json-buffer/-/json-buffer-3.0.0.tgz#5b1f397afc75d677bde8bcfc0e47e1f9a3d9a898" integrity sha1-Wx85evx11ne96Lz8Dkfh+aPZqJg= -json-parse-better-errors@^1.0.1, json-parse-better-errors@^1.0.2: +json-parse-better-errors@^1.0.0, json-parse-better-errors@^1.0.1, json-parse-better-errors@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/json-parse-better-errors/-/json-parse-better-errors-1.0.2.tgz#bb867cfb3450e69107c131d1c514bab3dc8bcaa9" integrity sha512-mrqyZKfX5EhL7hvqcV6WG1yYjnjeuYDzDhhcAAUrq8Po85NBQBJP+ZDUT75qZQ98IkUoBqdkExkukOU7Ts2wrw== @@ -4913,6 +7800,11 @@ json-stable-stringify-without-jsonify@^1.0.1: resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= +json-stringify-pretty-compact@^3.0.0, json-stringify-pretty-compact@~3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/json-stringify-pretty-compact/-/json-stringify-pretty-compact-3.0.0.tgz#f71ef9d82ef16483a407869556588e91b681d9ab" + integrity sha512-Rc2suX5meI0S3bfdZuA7JMFBGkJ875ApfVyq2WHELjBiiG22My/l7/8zPpH/CfFVQHuVLd8NLR0nv6vi0BYYKA== + json-stringify-safe@^5.0.1, json-stringify-safe@~5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz#1296a2d58fd45f19a0f6ce01d65701e2c735b6eb" @@ -4932,6 +7824,13 @@ json5@^2.1.1, json5@^2.1.2: dependencies: minimist "^1.2.5" +jsonfile@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-4.0.0.tgz#8771aae0799b64076b76640fca058f9c10e33ecb" + integrity sha1-h3Gq4HmbZAdrdmQPygWPnBDjPss= + optionalDependencies: + graceful-fs "^4.1.6" + jsonfile@^6.0.1: version "6.1.0" resolved "https://registry.yarnpkg.com/jsonfile/-/jsonfile-6.1.0.tgz#bc55b2634793c679ec6403094eb13698a6ec0aae" @@ -4941,7 +7840,7 @@ jsonfile@^6.0.1: optionalDependencies: graceful-fs "^4.1.6" -jsonparse@^1.2.0, jsonparse@^1.3.1: +jsonparse@^1.2.0: version "1.3.1" resolved "https://registry.yarnpkg.com/jsonparse/-/jsonparse-1.3.1.tgz#3f4dae4a91fac315f71062f8521cc239f1366280" integrity sha1-P02uSpH6wxX3EGL4UhzCOfE2YoA= @@ -4972,6 +7871,14 @@ jsprim@^1.2.2: json-schema "0.2.3" verror "1.10.0" +"jsx-ast-utils@^2.4.1 || ^3.0.0": + version "3.2.1" + resolved "https://registry.yarnpkg.com/jsx-ast-utils/-/jsx-ast-utils-3.2.1.tgz#720b97bfe7d901b927d87c3773637ae8ea48781b" + integrity sha512-uP5vu8xfy2F9A6LGC22KO7e2/vGTS1MhP+18f++ZNlf0Ohaxbc9nIEwHAsejlJKyzfZzU5UIhe5ItYkitcZnZA== + dependencies: + array-includes "^3.1.3" + object.assign "^4.1.2" + jwa@^1.4.1: version "1.4.1" resolved "https://registry.yarnpkg.com/jwa/-/jwa-1.4.1.tgz#743c32985cb9e98655530d53641b66c8645b039a" @@ -5003,7 +7910,26 @@ keyv@^3.0.0: dependencies: json-buffer "3.0.0" -kind-of@^6.0.2, kind-of@^6.0.3: +kind-of@^3.0.2, kind-of@^3.0.3, kind-of@^3.2.0: + version "3.2.2" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-3.2.2.tgz#31ea21a734bab9bbb0f32466d893aea51e4a3c64" + integrity sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ= + dependencies: + is-buffer "^1.1.5" + +kind-of@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-4.0.0.tgz#20813df3d712928b207378691a45066fae72dd57" + integrity sha1-IIE989cSkosgc3hpGkUGb65y3Vc= + dependencies: + is-buffer "^1.1.5" + +kind-of@^5.0.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-5.1.0.tgz#729c91e2d857b7a419a1f9aa65685c4c33f5845d" + integrity sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw== + +kind-of@^6.0.0, kind-of@^6.0.2, kind-of@^6.0.3: version "6.0.3" resolved "https://registry.yarnpkg.com/kind-of/-/kind-of-6.0.3.tgz#07c05034a6c349fa06e24fa35aa76db4580ce4dd" integrity sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw== @@ -5013,33 +7939,38 @@ kleur@4.1.4: resolved "https://registry.yarnpkg.com/kleur/-/kleur-4.1.4.tgz#8c202987d7e577766d039a8cd461934c01cda04d" integrity sha512-8QADVssbrFjivHWQU7KkMgptGTl6WAcSdlbBPY4uNF+mWr6DGcKrvY2w4FQJoXch7+fKMjj0dRrL75vk3k23OA== +kleur@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/kleur/-/kleur-3.0.3.tgz#a79c9ecc86ee1ce3fa6206d1216c501f147fc07e" + integrity sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w== + klona@^2.0.3: version "2.0.5" resolved "https://registry.yarnpkg.com/klona/-/klona-2.0.5.tgz#d166574d90076395d9963aa7a928fabb8d76afbc" integrity sha512-pJiBpiXMbt7dkzXe8Ghj/u4FfXOOa98fPW+bihOJ4SjnoijweJrNThJfd3ifXpXhREjpoF2mZVH1GfS9LV3kHQ== -lerna@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/lerna/-/lerna-4.0.0.tgz#b139d685d50ea0ca1be87713a7c2f44a5b678e9e" - integrity sha512-DD/i1znurfOmNJb0OBw66NmNqiM8kF6uIrzrJ0wGE3VNdzeOhz9ziWLYiRaZDGGwgbcjOo6eIfcx9O5Qynz+kg== - dependencies: - "@lerna/add" "4.0.0" - "@lerna/bootstrap" "4.0.0" - "@lerna/changed" "4.0.0" - "@lerna/clean" "4.0.0" - "@lerna/cli" "4.0.0" - "@lerna/create" "4.0.0" - "@lerna/diff" "4.0.0" - "@lerna/exec" "4.0.0" - "@lerna/import" "4.0.0" - "@lerna/info" "4.0.0" - "@lerna/init" "4.0.0" - "@lerna/link" "4.0.0" - "@lerna/list" "4.0.0" - "@lerna/publish" "4.0.0" - "@lerna/run" "4.0.0" - "@lerna/version" "4.0.0" - import-local "^3.0.2" +lerna@^3.22.1: + version "3.22.1" + resolved "https://registry.yarnpkg.com/lerna/-/lerna-3.22.1.tgz#82027ac3da9c627fd8bf02ccfeff806a98e65b62" + integrity sha512-vk1lfVRFm+UuEFA7wkLKeSF7Iz13W+N/vFd48aW2yuS7Kv0RbNm2/qcDPV863056LMfkRlsEe+QYOw3palj5Lg== + dependencies: + "@lerna/add" "3.21.0" + "@lerna/bootstrap" "3.21.0" + "@lerna/changed" "3.21.0" + "@lerna/clean" "3.21.0" + "@lerna/cli" "3.18.5" + "@lerna/create" "3.22.0" + "@lerna/diff" "3.21.0" + "@lerna/exec" "3.21.0" + "@lerna/import" "3.22.0" + "@lerna/info" "3.21.0" + "@lerna/init" "3.21.0" + "@lerna/link" "3.21.0" + "@lerna/list" "3.21.0" + "@lerna/publish" "3.22.1" + "@lerna/run" "3.21.0" + "@lerna/version" "3.22.1" + import-local "^2.0.0" npmlog "^4.1.2" level-codec@^9.0.0: @@ -5124,6 +8055,11 @@ levelup@^4.3.2: level-supports "~1.0.0" xtend "~4.0.0" +leven@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/leven/-/leven-3.1.0.tgz#77891de834064cccba82ae7842bb6b14a13ed7f2" + integrity sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A== + levn@^0.4.1: version "0.4.1" resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" @@ -5141,32 +8077,11 @@ levn@~0.3.0: type-check "~0.3.2" lib0@^0.2.31, lib0@^0.2.42: - version "0.2.42" - resolved "https://registry.yarnpkg.com/lib0/-/lib0-0.2.42.tgz#6d8bf1fb8205dec37a953c521c5ee403fd8769b0" - integrity sha512-8BNM4MiokEKzMvSxTOC3gnCBisJH+jL67CnSnqzHv3jli3pUvGC8wz+0DQ2YvGr4wVQdb2R2uNNPw9LEpVvJ4Q== - dependencies: - isomorphic.js "^0.2.4" - -libnpmaccess@^4.0.1: - version "4.0.3" - resolved "https://registry.yarnpkg.com/libnpmaccess/-/libnpmaccess-4.0.3.tgz#dfb0e5b0a53c315a2610d300e46b4ddeb66e7eec" - integrity sha512-sPeTSNImksm8O2b6/pf3ikv4N567ERYEpeKRPSmqlNt1dTZbvgpJIzg5vAhXHpw2ISBsELFRelk0jEahj1c6nQ== - dependencies: - aproba "^2.0.0" - minipass "^3.1.1" - npm-package-arg "^8.1.2" - npm-registry-fetch "^11.0.0" - -libnpmpublish@^4.0.0: - version "4.0.2" - resolved "https://registry.yarnpkg.com/libnpmpublish/-/libnpmpublish-4.0.2.tgz#be77e8bf5956131bcb45e3caa6b96a842dec0794" - integrity sha512-+AD7A2zbVeGRCFI2aO//oUmapCwy7GHqPXFJh3qpToSRNU+tXKJ2YFUgjt04LPPAf2dlEH95s6EhIHM1J7bmOw== + version "0.2.42" + resolved "https://registry.yarnpkg.com/lib0/-/lib0-0.2.42.tgz#6d8bf1fb8205dec37a953c521c5ee403fd8769b0" + integrity sha512-8BNM4MiokEKzMvSxTOC3gnCBisJH+jL67CnSnqzHv3jli3pUvGC8wz+0DQ2YvGr4wVQdb2R2uNNPw9LEpVvJ4Q== dependencies: - normalize-package-data "^3.0.2" - npm-package-arg "^8.1.2" - npm-registry-fetch "^11.0.0" - semver "^7.1.3" - ssri "^8.0.1" + isomorphic.js "^0.2.4" license-webpack-plugin@^2.3.14: version "2.3.21" @@ -5181,6 +8096,52 @@ lines-and-columns@^1.1.6: resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.1.6.tgz#1c00c743b433cd0a4e80758f7b64a57440d9ff00" integrity sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA= +lint-staged@^10.4.0: + version "10.5.4" + resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-10.5.4.tgz#cd153b5f0987d2371fc1d2847a409a2fe705b665" + integrity sha512-EechC3DdFic/TdOPgj/RB3FicqE6932LTHCUm0Y2fsD9KGlLB+RwJl2q1IYBIvEsKzDOgn0D4gll+YxG5RsrKg== + dependencies: + chalk "^4.1.0" + cli-truncate "^2.1.0" + commander "^6.2.0" + cosmiconfig "^7.0.0" + debug "^4.2.0" + dedent "^0.7.0" + enquirer "^2.3.6" + execa "^4.1.0" + listr2 "^3.2.2" + log-symbols "^4.0.0" + micromatch "^4.0.2" + normalize-path "^3.0.0" + please-upgrade-node "^3.2.0" + string-argv "0.3.1" + stringify-object "^3.3.0" + +listr2@^3.2.2: + version "3.13.3" + resolved "https://registry.yarnpkg.com/listr2/-/listr2-3.13.3.tgz#d8f6095c9371b382c9b1c2bc33c5941d8e177f11" + integrity sha512-VqAgN+XVfyaEjSaFewGPcDs5/3hBbWVaX1VgWv2f52MF7US45JuARlArULctiB44IIcEk3JF7GtoFCLqEdeuPA== + dependencies: + cli-truncate "^2.1.0" + clone "^2.1.2" + colorette "^2.0.16" + log-update "^4.0.0" + p-map "^4.0.0" + rxjs "^7.4.0" + through "^2.3.8" + wrap-ansi "^7.0.0" + +load-json-file@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-1.1.0.tgz#956905708d58b4bab4c2261b04f59f31c99374c0" + integrity sha1-lWkFcI1YtLq0wiYbBPWfMcmTdMA= + dependencies: + graceful-fs "^4.1.2" + parse-json "^2.2.0" + pify "^2.0.0" + pinkie-promise "^2.0.0" + strip-bom "^2.0.0" + load-json-file@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-4.0.0.tgz#2f5f45ab91e33216234fd53adab668eb4ec0993b" @@ -5191,22 +8152,23 @@ load-json-file@^4.0.0: pify "^3.0.0" strip-bom "^3.0.0" -load-json-file@^6.2.0: - version "6.2.0" - resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-6.2.0.tgz#5c7770b42cafa97074ca2848707c61662f4251a1" - integrity sha512-gUD/epcRms75Cw8RT1pUdHugZYM5ce64ucs2GEISABwkRsOQr0q2wm/MV2TKThycIe5e0ytRweW2RZxclogCdQ== +load-json-file@^5.3.0: + version "5.3.0" + resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-5.3.0.tgz#4d3c1e01fa1c03ea78a60ac7af932c9ce53403f3" + integrity sha512-cJGP40Jc/VXUsp8/OrnyKyTZ1y6v/dphm3bioS+RrKXjK2BB6wHUd6JptZEFDGgGahMT+InnZO5i1Ei9mpC8Bw== dependencies: graceful-fs "^4.1.15" - parse-json "^5.0.0" - strip-bom "^4.0.0" - type-fest "^0.6.0" + parse-json "^4.0.0" + pify "^4.0.1" + strip-bom "^3.0.0" + type-fest "^0.3.0" loader-runner@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/loader-runner/-/loader-runner-4.2.0.tgz#d7022380d66d14c5fb1d496b89864ebcfd478384" integrity sha512-92+huvxMvYlMzMt0iIOukcwYBFpkYJdpl2xsZ7LrlayO7E8SOv+JJUEK17B/dJIHAOLMfh2dZZ/Y18WgmGtYNw== -loader-utils@^1.0.0: +loader-utils@^1.0.0, loader-utils@^1.1.0, loader-utils@^1.2.3: version "1.4.0" resolved "https://registry.yarnpkg.com/loader-utils/-/loader-utils-1.4.0.tgz#c579b5e34cb34b1a74edc6c1fb36bfa371d5a613" integrity sha512-qH0WSMBtn/oHuwjy/NucEgbx5dbxxnxup9s4PVXJUDHZBQY+s0NWA9rJf53RBnQZxfch7euUui7hpoAPvALZdA== @@ -5232,6 +8194,14 @@ locate-path@^2.0.0: p-locate "^2.0.0" path-exists "^3.0.0" +locate-path@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-3.0.0.tgz#dbec3b3ab759758071b58fe59fc41871af21400e" + integrity sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A== + dependencies: + p-locate "^3.0.0" + path-exists "^3.0.0" + locate-path@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-5.0.0.tgz#1afba396afd676a6d42504d0a67a3a7eb9f62aa0" @@ -5251,6 +8221,16 @@ lodash._reinterpolate@^3.0.0: resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d" integrity sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0= +lodash.clonedeep@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef" + integrity sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8= + +lodash.curry@^4.1.1: + version "4.1.1" + resolved "https://registry.yarnpkg.com/lodash.curry/-/lodash.curry-4.1.1.tgz#248e36072ede906501d75966200a86dab8b23170" + integrity sha1-JI42By7ekGUB11lmIAqG2riyMXA= + lodash.debounce@^4.0.8: version "4.0.8" resolved "https://registry.yarnpkg.com/lodash.debounce/-/lodash.debounce-4.0.8.tgz#82d79bff30a67c4005ffd5e2515300ad9ca4d7af" @@ -5261,6 +8241,11 @@ lodash.escape@^4.0.1: resolved "https://registry.yarnpkg.com/lodash.escape/-/lodash.escape-4.0.1.tgz#c9044690c21e04294beaa517712fded1fa88de98" integrity sha1-yQRGkMIeBClL6qUXcS/e0fqI3pg= +lodash.get@^4.4.2: + version "4.4.2" + resolved "https://registry.yarnpkg.com/lodash.get/-/lodash.get-4.4.2.tgz#2d177f652fa31e939b4438d5341499dfa3825e99" + integrity sha1-LRd/ZS+jHpObRDjVNBSZ36OCXpk= + lodash.includes@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/lodash.includes/-/lodash.includes-4.3.0.tgz#60bb98a87cb923c68ca1e51325483314849f553f" @@ -5306,12 +8291,17 @@ lodash.once@^4.0.0: resolved "https://registry.yarnpkg.com/lodash.once/-/lodash.once-4.1.1.tgz#0dd3971213c7c56df880977d504c88fb471a97ac" integrity sha1-DdOXEhPHxW34gJd9UEyI+0cal6w= +lodash.set@^4.3.2: + version "4.3.2" + resolved "https://registry.yarnpkg.com/lodash.set/-/lodash.set-4.3.2.tgz#d8757b1da807dde24816b0d6a84bea1a76230b23" + integrity sha1-2HV7HagH3eJIFrDWqEvqGnYjCyM= + lodash.sortby@^4.7.0: version "4.7.0" resolved "https://registry.yarnpkg.com/lodash.sortby/-/lodash.sortby-4.7.0.tgz#edd14c824e2cc9c1e0b0a1b42bb5210516a42438" integrity sha1-7dFMgk4sycHgsKG0K7UhBRakJDg= -lodash.template@^4.5.0: +lodash.template@^4.0.2, lodash.template@^4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.template/-/lodash.template-4.5.0.tgz#f976195cf3f347d0d5f52483569fe8031ccce8ab" integrity sha512-84vYFxIkmidUiFxidA/KjjH9pAycqW+h980j7Fuz5qxRtO9pgB7MDFTdys1N7A5mcucRiDyEq4fusljItR1T/A== @@ -5331,18 +8321,49 @@ lodash.truncate@^4.4.2: resolved "https://registry.yarnpkg.com/lodash.truncate/-/lodash.truncate-4.4.2.tgz#5a350da0b1113b837ecfffd5812cbe58d6eae193" integrity sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM= -lodash@4, lodash@4.17.21, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.4, lodash@^4.7.0: +lodash.uniq@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" + integrity sha1-0CJTc662Uq3BvILklFM5qEJ1R3M= + +lodash@4, lodash@4.17.21, lodash@^4.17.12, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.4, lodash@^4.2.1, lodash@^4.7.0: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== -loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.4.0: +log-symbols@^4.0.0: + version "4.1.0" + resolved "https://registry.yarnpkg.com/log-symbols/-/log-symbols-4.1.0.tgz#3fbdbb95b4683ac9fc785111e792e558d4abd503" + integrity sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg== + dependencies: + chalk "^4.1.0" + is-unicode-supported "^0.1.0" + +log-update@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/log-update/-/log-update-4.0.0.tgz#589ecd352471f2a1c0c570287543a64dfd20e0a1" + integrity sha512-9fkkDevMefjg0mmzWFBW8YkFP91OrizzkW3diF7CpG+S2EYdy4+TVfGwz1zeF8x7hCx1ovSPTOE9Ngib74qqUg== + dependencies: + ansi-escapes "^4.3.0" + cli-cursor "^3.1.0" + slice-ansi "^4.0.0" + wrap-ansi "^6.2.0" + +loose-envify@^1.0.0, loose-envify@^1.1.0, loose-envify@^1.3.1, loose-envify@^1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== dependencies: js-tokens "^3.0.0 || ^4.0.0" +loud-rejection@^1.0.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/loud-rejection/-/loud-rejection-1.6.0.tgz#5b46f80147edee578870f086d04821cf998e551f" + integrity sha1-W0b4AUft7leIcPCG0Eghz5mOVR8= + dependencies: + currently-unhandled "^0.4.1" + signal-exit "^3.0.0" + lowdb@1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/lowdb/-/lowdb-1.0.0.tgz#5243be6b22786ccce30e50c9a33eac36b20c8064" @@ -5371,6 +8392,13 @@ lru-cache@6.0.0, lru-cache@^6.0.0: dependencies: yallist "^4.0.0" +lru-cache@^5.1.1: + version "5.1.1" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" + integrity sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w== + dependencies: + yallist "^3.0.2" + lru-queue@^0.1.0: version "0.1.0" resolved "https://registry.yarnpkg.com/lru-queue/-/lru-queue-0.1.0.tgz#2738bd9f0d3cf4f84490c5736c48699ac632cda3" @@ -5395,6 +8423,18 @@ lunr-mutable-indexes@2.3.2: resolved "https://registry.yarnpkg.com/lunr/-/lunr-2.3.9.tgz#18b123142832337dd6e964df1a5a7707b25d35e1" integrity sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow== +macos-release@^2.2.0: + version "2.5.0" + resolved "https://registry.yarnpkg.com/macos-release/-/macos-release-2.5.0.tgz#067c2c88b5f3fb3c56a375b2ec93826220fa1ff2" + integrity sha512-EIgv+QZ9r+814gjJj0Bt5vSLJLzswGmSUbUpbi9AIr/fsN2IWFBl2NucV9PAiek+U1STK468tEkxmVYUtuAN3g== + +make-dir@^1.0.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-1.3.0.tgz#79c1033b80515bd6d24ec9933e860ca75ee27f0c" + integrity sha512-2w31R7SJtieJJnQtGc7RVL2StM2vGYVfqUOvUDxH6bC6aJTxPxTF0GnIgCyu7tjockiUWAYQRbxa7vKn34s5sQ== + dependencies: + pify "^3.0.0" + make-dir@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-2.1.0.tgz#5f0310e18b8be898cc07009295a30ae41e91e6f5" @@ -5410,59 +8450,57 @@ make-dir@^3.0.0, make-dir@^3.0.2: dependencies: semver "^6.0.0" -make-fetch-happen@^8.0.9: - version "8.0.14" - resolved "https://registry.yarnpkg.com/make-fetch-happen/-/make-fetch-happen-8.0.14.tgz#aaba73ae0ab5586ad8eaa68bd83332669393e222" - integrity sha512-EsS89h6l4vbfJEtBZnENTOFk8mCRpY5ru36Xe5bcX1KYIli2mkSHqoFsp5O1wMDvTJJzxe/4THpCTtygjeeGWQ== +make-fetch-happen@^5.0.0: + version "5.0.2" + resolved "https://registry.yarnpkg.com/make-fetch-happen/-/make-fetch-happen-5.0.2.tgz#aa8387104f2687edca01c8687ee45013d02d19bd" + integrity sha512-07JHC0r1ykIoruKO8ifMXu+xEU8qOXDFETylktdug6vJDACnP+HKevOu3PXyNPzFyTSlz8vrBYlBO1JZRe8Cag== + dependencies: + agentkeepalive "^3.4.1" + cacache "^12.0.0" + http-cache-semantics "^3.8.1" + http-proxy-agent "^2.1.0" + https-proxy-agent "^2.2.3" + lru-cache "^5.1.1" + mississippi "^3.0.0" + node-fetch-npm "^2.0.2" + promise-retry "^1.1.1" + socks-proxy-agent "^4.0.0" + ssri "^6.0.0" + +makeerror@1.0.12: + version "1.0.12" + resolved "https://registry.yarnpkg.com/makeerror/-/makeerror-1.0.12.tgz#3e5dd2079a82e812e983cc6610c4a2cb0eaa801a" + integrity sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg== dependencies: - agentkeepalive "^4.1.3" - cacache "^15.0.5" - 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" - promise-retry "^2.0.1" - socks-proxy-agent "^5.0.0" - ssri "^8.0.0" + tmpl "1.0.5" -make-fetch-happen@^9.0.1: - version "9.1.0" - resolved "https://registry.yarnpkg.com/make-fetch-happen/-/make-fetch-happen-9.1.0.tgz#53085a09e7971433e6765f7971bf63f4e05cb968" - integrity sha512-+zopwDy7DNknmwPQplem5lAZX/eCOzSvSNNcSKm5eVwTkOBzoktEfXsa9L23J/GIRhxRsaxzkPEhrJEpE2F4Gg== - 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" +map-cache@^0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/map-cache/-/map-cache-0.2.2.tgz#c32abd0bd6525d9b051645bb4f26ac5dc98a0dbf" + integrity sha1-wyq9C9ZSXZsFFkW7TyasXcmKDb8= -map-obj@^1.0.0: +map-obj@^1.0.0, map-obj@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-1.0.1.tgz#d933ceb9205d82bdcf4886f6742bdc2b4dea146d" integrity sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0= +map-obj@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-2.0.0.tgz#a65cd29087a92598b8791257a523e021222ac1f9" + integrity sha1-plzSkIepJZi4eRJXpSPgISIqwfk= + map-obj@^4.0.0: version "4.3.0" resolved "https://registry.yarnpkg.com/map-obj/-/map-obj-4.3.0.tgz#9304f906e93faae70880da102a9f1df0ea8bb05a" integrity sha512-hdN1wVrZbb29eBGiGjJbeP8JbKjq1urkHJ/LIP/NY48MZ1QVXUsQBV1G1zvYFHn1XE06cwjBsOI2K3Ulnj1YXQ== +map-visit@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/map-visit/-/map-visit-1.0.0.tgz#ecdca8f13144e660f1b5bd41f12f3479d98dfb8f" + integrity sha1-7Nyo8TFE5mDxtb1B8S80edmN+48= + dependencies: + object-visit "^1.0.0" + marked@2.1.3, marked@^2.0.0, marked@^2.0.1: version "2.1.3" resolved "https://registry.yarnpkg.com/marked/-/marked-2.1.3.tgz#bd017cef6431724fd4b27e0657f5ceb14bff3753" @@ -5492,6 +8530,37 @@ memorystream@^0.3.1: resolved "https://registry.yarnpkg.com/memorystream/-/memorystream-0.3.1.tgz#86d7090b30ce455d63fbae12dda51a47ddcaf9b2" integrity sha1-htcJCzDORV1j+64S3aUaR93K+bI= +meow@^3.3.0: + version "3.7.0" + resolved "https://registry.yarnpkg.com/meow/-/meow-3.7.0.tgz#72cb668b425228290abbfa856892587308a801fb" + integrity sha1-cstmi0JSKCkKu/qFaJJYcwioAfs= + dependencies: + camelcase-keys "^2.0.0" + decamelize "^1.1.2" + loud-rejection "^1.0.0" + map-obj "^1.0.1" + minimist "^1.1.3" + normalize-package-data "^2.3.4" + object-assign "^4.0.1" + read-pkg-up "^1.0.1" + redent "^1.0.0" + trim-newlines "^1.0.0" + +meow@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/meow/-/meow-4.0.1.tgz#d48598f6f4b1472f35bf6317a95945ace347f975" + integrity sha512-xcSBHD5Z86zaOc+781KrupuHAzeGXSLtiAOmBsiLDiPSaYSB6hdew2ng9EBAnZ62jagG9MHAOdxpDi/lWBFJ/A== + dependencies: + camelcase-keys "^4.0.0" + decamelize-keys "^1.0.0" + loud-rejection "^1.0.0" + minimist "^1.1.3" + minimist-options "^3.0.1" + normalize-package-data "^2.3.4" + read-pkg-up "^3.0.0" + redent "^2.0.0" + trim-newlines "^2.0.0" + meow@^8.0.0: version "8.1.2" resolved "https://registry.yarnpkg.com/meow/-/meow-8.1.2.tgz#bcbe45bda0ee1729d350c03cffc8395a36c4e897" @@ -5534,7 +8603,26 @@ methods@~1.1.2: resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" integrity sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4= -micromatch@^4.0.4: +micromatch@^3.1.10, micromatch@^3.1.4: + version "3.1.10" + resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-3.1.10.tgz#70859bc95c9840952f359a068a3fc49f9ecfac23" + integrity sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg== + dependencies: + 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" + +micromatch@^4.0.2, micromatch@^4.0.4: version "4.0.4" resolved "https://registry.yarnpkg.com/micromatch/-/micromatch-4.0.4.tgz#896d519dfe9db25fce94ceb7a500919bf881ebf9" integrity sha512-pRmzw/XUcwXGpD9aI9q/0XOwLNygjETJ8y0ao0wdqprrzDa4YnxLcz7fQRZr8voh8V10kGhABbNcHVk5wHgWwg== @@ -5559,11 +8647,16 @@ mime@1.6.0: resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== -mime@2.6.0: +mime@2.6.0, mime@^2.3.1, mime@^2.4.6: version "2.6.0" resolved "https://registry.yarnpkg.com/mime/-/mime-2.6.0.tgz#a2a682a95cd4d0cb1d6257e28f83da7e35800367" integrity sha512-USPkMeET31rOMiarsBNIHZKLGgvKc/LrjofAnBlOttf5ajRvqiRA8QsenbcooctK6d6Ts6aqZXBA+XbkKthiQg== +mimic-fn@^1.0.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-1.2.0.tgz#820c86a39334640e99516928bd03fca88057d022" + integrity sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ== + mimic-fn@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/mimic-fn/-/mimic-fn-2.1.0.tgz#7ed2c2ccccaf84d3ffcb7a69b57711fc2083401b" @@ -5579,6 +8672,16 @@ min-indent@^1.0.0: resolved "https://registry.yarnpkg.com/min-indent/-/min-indent-1.0.1.tgz#a63f681673b30571fbe8bc25686ae746eefa9869" integrity sha512-I9jwMn07Sy/IwOj3zVkVik2JTvgpaykDZEigL6Rx6N9LbMywwUSMtxET+7lVoDLLd3O3IXwJwvuuns8UB/HeAg== +mini-css-extract-plugin@~0.9.0: + version "0.9.0" + resolved "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-0.9.0.tgz#47f2cf07aa165ab35733b1fc97d4c46c0564339e" + integrity sha512-lp3GeY7ygcgAmVIcRPBVhIkf8Us7FZjA+ILpal44qLdSu11wmjKQ3d9k15lfD7pO4esu9eUIAW7qiYIBppv40A== + dependencies: + loader-utils "^1.1.0" + normalize-url "1.9.1" + schema-utils "^1.0.0" + webpack-sources "^1.1.0" + mini-css-extract-plugin@~1.3.2: version "1.3.9" resolved "https://registry.yarnpkg.com/mini-css-extract-plugin/-/mini-css-extract-plugin-1.3.9.tgz#47a32132b0fd97a119acd530e8421e8f6ab16d5e" @@ -5604,7 +8707,15 @@ minimist-options@4.1.0: is-plain-obj "^1.1.0" kind-of "^6.0.3" -minimist@^1.2.0, minimist@^1.2.5, minimist@~1.2.0: +minimist-options@^3.0.1: + version "3.0.2" + resolved "https://registry.yarnpkg.com/minimist-options/-/minimist-options-3.0.2.tgz#fba4c8191339e13ecf4d61beb03f070103f3d954" + integrity sha512-FyBrT/d0d4+uiZRbqznPXqw3IpZZG3gl3wKWiX784FycUKVwBt0uLBFkQrtE4tZOrgo78nZp2jnKz3L65T5LdQ== + dependencies: + arrify "^1.0.1" + is-plain-obj "^1.1.0" + +minimist@^1.1.1, minimist@^1.1.3, minimist@^1.2.0, minimist@^1.2.5, minimist@~1.2.0: version "1.2.5" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== @@ -5616,17 +8727,6 @@ minipass-collect@^1.0.2: dependencies: minipass "^3.0.0" -minipass-fetch@^1.3.0, minipass-fetch@^1.3.2: - version "1.4.1" - resolved "https://registry.yarnpkg.com/minipass-fetch/-/minipass-fetch-1.4.1.tgz#d75e0091daac1b0ffd7e9d41629faff7d0c1f1b6" - integrity sha512-CGH1eblLq26Y15+Azk7ey4xh0J/XfJfrCox5LDJiKqI2Q2iwOLOKrlmIaODiSQS8d18jalF6y2K2ePUm0CmShw== - dependencies: - minipass "^3.1.0" - minipass-sized "^1.0.3" - minizlib "^2.0.0" - optionalDependencies: - encoding "^0.1.12" - minipass-flush@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/minipass-flush/-/minipass-flush-1.0.5.tgz#82e7135d7e89a50ffe64610a787953c4c4cbb373" @@ -5634,29 +8734,14 @@ minipass-flush@^1.0.5: dependencies: minipass "^3.0.0" -minipass-json-stream@^1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/minipass-json-stream/-/minipass-json-stream-1.0.1.tgz#7edbb92588fbfc2ff1db2fc10397acb7b6b44aa7" - integrity sha512-ODqY18UZt/I8k+b7rl2AENgbWE8IDYam+undIJONvigAz8KR5GWblsFTEfQs0WODsjbSXWlm+JHEv8Gr6Tfdbg== - dependencies: - jsonparse "^1.3.1" - minipass "^3.0.0" - -minipass-pipeline@^1.2.2, minipass-pipeline@^1.2.4: +minipass-pipeline@^1.2.2: version "1.2.4" resolved "https://registry.yarnpkg.com/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz#68472f79711c084657c067c5c6ad93cddea8214c" integrity sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A== dependencies: minipass "^3.0.0" -minipass-sized@^1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/minipass-sized/-/minipass-sized-1.0.3.tgz#70ee5a7c5052070afacfbc22977ea79def353b70" - integrity sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g== - dependencies: - minipass "^3.0.0" - -minipass@^2.6.0, minipass@^2.9.0: +minipass@^2.3.5, minipass@^2.6.0, minipass@^2.9.0: version "2.9.0" resolved "https://registry.yarnpkg.com/minipass/-/minipass-2.9.0.tgz#e713762e7d3e32fed803115cf93e04bca9fcc9a6" integrity sha512-wxfUjg9WebH+CUDX/CdbRlh5SmfZiy/hpkxaRI16Y9W56Pa75sWgd/rvFilSgrauD9NyFymP/+JFV3KwzIsJeg== @@ -5664,7 +8749,7 @@ minipass@^2.6.0, minipass@^2.9.0: safe-buffer "^5.1.2" yallist "^3.0.0" -minipass@^3.0.0, minipass@^3.1.0, minipass@^3.1.1, minipass@^3.1.3: +minipass@^3.0.0, minipass@^3.1.1: version "3.1.5" resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.1.5.tgz#71f6251b0a33a49c01b3cf97ff77eda030dff732" integrity sha512-+8NzxD82XQoNKNrl1d/FSi+X8wAEWR+sbYAfIvub4Nz0d22plFG72CEVVaufV8PNf4qSslFTD8VMOxNVhHCjTw== @@ -5678,7 +8763,7 @@ minizlib@^1.3.3: dependencies: minipass "^2.9.0" -minizlib@^2.0.0, minizlib@^2.1.1: +minizlib@^2.1.1: version "2.1.2" resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931" integrity sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg== @@ -5686,16 +8771,38 @@ minizlib@^2.0.0, minizlib@^2.1.1: minipass "^3.0.0" yallist "^4.0.0" -mkdirp-infer-owner@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/mkdirp-infer-owner/-/mkdirp-infer-owner-2.0.0.tgz#55d3b368e7d89065c38f32fd38e638f0ab61d316" - integrity sha512-sdqtiFt3lkOaYvTXSRIUjkIdPTcxgv5+fgqYE/5qgwdw12cOrAuzzgzvVExIkH/ul1oeHN3bCLOWSG3XOqbKKw== +mississippi@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/mississippi/-/mississippi-3.0.0.tgz#ea0a3291f97e0b5e8776b363d5f0a12d94c67022" + integrity sha512-x471SsVjUtBRtcvd4BzKE9kFC+/2TeWgKCgw0bZcw1b9l2X3QX5vCWgF+KaZaYm87Ss//rHnWryupDrgLvmSkA== dependencies: - chownr "^2.0.0" - infer-owner "^1.0.4" - mkdirp "^1.0.3" + 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@^1.2.0: + version "1.3.2" + resolved "https://registry.yarnpkg.com/mixin-deep/-/mixin-deep-1.3.2.tgz#1120b43dc359a785dce65b55b82e257ccf479566" + integrity sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA== + dependencies: + for-in "^1.0.2" + is-extendable "^1.0.1" -mkdirp@1.0.4, mkdirp@^1.0.3, mkdirp@^1.0.4: +mkdirp-promise@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/mkdirp-promise/-/mkdirp-promise-5.0.1.tgz#e9b8f68e552c68a9c1713b84883f7a1dd039b8a1" + integrity sha1-6bj2jlUsaKnBcTuEiD96HdA5uKE= + dependencies: + mkdirp "*" + +mkdirp@*, mkdirp@1.0.4, mkdirp@^1.0.3, mkdirp@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== @@ -5717,6 +8824,18 @@ moment@^2.24.0: resolved "https://registry.yarnpkg.com/moment/-/moment-2.29.1.tgz#b2be769fa31940be9eeea6469c075e35006fa3d3" integrity sha512-kHmoybcPV8Sqy59DwNDY3Jefr64lK/by/da0ViFcuA4DH0vQg5Q6Ze5VimxkfQNSC+Mls/Kx53s7TjP1RhFEDQ== +move-concurrently@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/move-concurrently/-/move-concurrently-1.0.1.tgz#be2c005fda32e0b29af1f05d7c4b33214c701f92" + integrity sha1-viwAX9oy4LKa8fBdfEszIUxwH5I= + dependencies: + 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" + ms@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ms/-/ms-2.0.0.tgz#5608aeadfc00be6c2901df5f9861788de0d597c8" @@ -5737,17 +8856,21 @@ ms@^2.0.0, ms@^2.1.1: resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== -multimatch@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/multimatch/-/multimatch-5.0.0.tgz#932b800963cea7a31a033328fa1e0c3a1874dbe6" - integrity sha512-ypMKuglUrZUD99Tk2bUQ+xNQj43lPEfAeX2o9cTteAmShXy2VHDJpuwu1o0xqoKCt9jLVAvwyFKdLTPXKAfJyA== +multimatch@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/multimatch/-/multimatch-3.0.0.tgz#0e2534cc6bc238d9ab67e1b9cd5fcd85a6dbf70b" + integrity sha512-22foS/gqQfANZ3o+W7ST2x25ueHDVNWl/b9OlGcLpy/iKxjCpvcNCM51YCenUi7Mt/jAjjqv8JwZRs8YP5sRjA== dependencies: - "@types/minimatch" "^3.0.3" - array-differ "^3.0.0" - array-union "^2.1.0" - arrify "^2.0.1" + array-differ "^2.0.3" + array-union "^1.0.2" + arrify "^1.0.1" minimatch "^3.0.4" +mute-stream@0.0.7: + version "0.0.7" + resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.7.tgz#3075ce93bc21b8fab43e1bc4da7e8115ed1e7bab" + integrity sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s= + mute-stream@0.0.8, mute-stream@~0.0.4: version "0.0.8" resolved "https://registry.yarnpkg.com/mute-stream/-/mute-stream-0.0.8.tgz#1630c42b2251ff81e2a283de96a5497ea92e5e0d" @@ -5762,11 +8885,37 @@ mv@2.1.1: ncp "~2.0.0" rimraf "~2.4.0" +mz@^2.5.0: + version "2.7.0" + resolved "https://registry.yarnpkg.com/mz/-/mz-2.7.0.tgz#95008057a56cafadc2bc63dde7f9ff6955948e32" + integrity sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q== + dependencies: + any-promise "^1.0.0" + object-assign "^4.0.1" + thenify-all "^1.0.0" + nanoid@^3.1.30: version "3.1.30" resolved "https://registry.yarnpkg.com/nanoid/-/nanoid-3.1.30.tgz#63f93cc548d2a113dc5dfbc63bfa09e2b9b64362" integrity sha512-zJpuPDwOv8D2zq2WRoMe1HsfZthVewpel9CAvTfc/2mBD1uUT/agc5f7GHGWXlYkFvi1mVxe4IjvP2HNrop7nQ== +nanomatch@^1.2.9: + version "1.2.13" + resolved "https://registry.yarnpkg.com/nanomatch/-/nanomatch-1.2.13.tgz#b87a8aa4fc0de8fe6be88895b38983ff265bd119" + integrity sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA== + dependencies: + 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" + napi-macros@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/napi-macros/-/napi-macros-2.0.0.tgz#2b6bae421e7b96eb687aa6c77a7858640670001b" @@ -5782,7 +8931,7 @@ ncp@~2.0.0: resolved "https://registry.yarnpkg.com/ncp/-/ncp-2.0.0.tgz#195a21d6c46e361d2fb1281ba38b91e9df7bdbb3" integrity sha1-GVoh1sRuNh0vsSgbo4uR6d9727M= -negotiator@0.6.2, negotiator@^0.6.2: +negotiator@0.6.2: version "0.6.2" resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.2.tgz#feacf7ccf525a77ae9634436a64883ffeca346fb" integrity sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw== @@ -5807,12 +8956,21 @@ nice-try@^1.0.4: resolved "https://registry.yarnpkg.com/nice-try/-/nice-try-1.0.5.tgz#a3378a7696ce7d223e88fc9b764bd7ef1089e366" integrity sha512-1nh45deeb5olNY7eX82BkPO7SSxR5SSYJiPTrTdFUVYwAl8CKMA5N9PjTYkHiRjisVcxcQ1HXdLhx2qxxJzLNQ== +node-fetch-npm@^2.0.2: + version "2.0.4" + resolved "https://registry.yarnpkg.com/node-fetch-npm/-/node-fetch-npm-2.0.4.tgz#6507d0e17a9ec0be3bec516958a497cec54bf5a4" + integrity sha512-iOuIQDWDyjhv9qSDrj9aq/klt6F9z1p2otB3AV7v3zBDcL/x+OfGsvGQZZCcMZbUf4Ujw1xGNQkjvGnVT22cKg== + dependencies: + encoding "^0.1.11" + json-parse-better-errors "^1.0.0" + safe-buffer "^5.1.1" + node-fetch@2.6.1: version "2.6.1" resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.1.tgz#045bd323631f76ed2e2b55573394416b639a0052" integrity sha512-V4aYg89jEoVRxRb2fJdAg8FHvI7cEyYdVAh94HH0UIK8oJxUfkjlDQN9RbMx+bEjP7+ggMiFRprSti032Oipxw== -node-fetch@^2.6.0, node-fetch@^2.6.1: +node-fetch@^2.5.0, node-fetch@^2.6.0, node-fetch@^2.6.1: version "2.6.6" resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.6.6.tgz#1751a7c01834e8e1697758732e9efb6eeadfaf89" integrity sha512-Z8/6vRlTUChSdIgMa51jxQ4lrw/Jy5SOW10ObaA47/RElsAN2c5Pn8bTgFGWn/ibwzXTE8qwr1Yzx28vsecXEA== @@ -5841,20 +8999,26 @@ node-gyp@^5.0.2: tar "^4.4.12" which "^1.3.1" -node-gyp@^7.1.0: - version "7.1.2" - resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-7.1.2.tgz#21a810aebb187120251c3bcec979af1587b188ae" - integrity sha512-CbpcIo7C3eMu3dL1c3d0xw449fHIGALIJsRP4DDPHpyiW8vcriNY7ubh9TE4zEKfSxscY7PjeFnshE7h75ynjQ== +node-int64@^0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/node-int64/-/node-int64-0.4.0.tgz#87a9065cdb355d3182d8f94ce11188b825c68a3b" + integrity sha1-h6kGXNs1XTGC2PlM4RGIuCXGijs= + +node-modules-regexp@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/node-modules-regexp/-/node-modules-regexp-1.0.0.tgz#8d9dbe28964a4ac5712e9131642107c71e90ec40" + integrity sha1-jZ2+KJZKSsVxLpExZCEHxx6Q7EA= + +node-notifier@^8.0.0: + version "8.0.2" + resolved "https://registry.yarnpkg.com/node-notifier/-/node-notifier-8.0.2.tgz#f3167a38ef0d2c8a866a83e318c1ba0efeb702c5" + integrity sha512-oJP/9NAdd9+x2Q+rfphB2RJCHjod70RcRLjosiPMMu5gjIfwVnOUGq2nbTjTUbmy0DJ/tFIVT30+Qe3nzl4TJg== dependencies: - env-paths "^2.2.0" - glob "^7.1.4" - graceful-fs "^4.2.3" - nopt "^5.0.0" - npmlog "^4.1.2" - request "^2.88.2" - rimraf "^3.0.2" + growly "^1.3.0" + is-wsl "^2.2.0" semver "^7.3.2" - tar "^6.0.2" + shellwords "^0.1.1" + uuid "^8.3.0" which "^2.0.2" node-releases@^2.0.1: @@ -5870,14 +9034,7 @@ nopt@^4.0.1: abbrev "1" osenv "^0.1.4" -nopt@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/nopt/-/nopt-5.0.0.tgz#530942bb58a512fccafe53fe210f13a25355dc88" - integrity sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ== - dependencies: - abbrev "1" - -normalize-package-data@^2.0.0, normalize-package-data@^2.3.2, normalize-package-data@^2.5.0: +normalize-package-data@^2.0.0, normalize-package-data@^2.3.0, normalize-package-data@^2.3.2, normalize-package-data@^2.3.4, normalize-package-data@^2.3.5, normalize-package-data@^2.4.0, normalize-package-data@^2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-2.5.0.tgz#e66db1838b200c1dfc233225d12cb36520e234a8" integrity sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA== @@ -5887,7 +9044,7 @@ normalize-package-data@^2.0.0, normalize-package-data@^2.3.2, normalize-package- semver "2 || 3 || 4 || 5" validate-npm-package-license "^3.0.1" -normalize-package-data@^3.0.0, normalize-package-data@^3.0.2: +normalize-package-data@^3.0.0: version "3.0.3" resolved "https://registry.yarnpkg.com/normalize-package-data/-/normalize-package-data-3.0.3.tgz#dbcc3e2da59509a0983422884cd172eefdfa525e" integrity sha512-p2W1sgqij3zMMyRC067Dg16bfzVH+w7hyegmpIvZ4JNjqtGOVAIvLmjBx3yP7YTe9vKJgkoNOPjwQGogDoMXFA== @@ -5897,6 +9054,28 @@ normalize-package-data@^3.0.0, normalize-package-data@^3.0.2: semver "^7.3.4" validate-npm-package-license "^3.0.1" +normalize-path@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-2.1.1.tgz#1ab28b556e198363a8c1a6f7e6fa20137fe6aed9" + integrity sha1-GrKLVW4Zg2Oowab35vogE3/mrtk= + dependencies: + remove-trailing-separator "^1.0.1" + +normalize-path@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" + integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== + +normalize-url@1.9.1: + version "1.9.1" + resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-1.9.1.tgz#2cc0d66b31ea23036458436e3620d85954c66c3c" + integrity sha1-LMDWazHqIwNkWENuNiDYWVTGbDw= + dependencies: + object-assign "^4.0.1" + prepend-http "^1.0.0" + query-string "^4.1.0" + sort-keys "^1.0.0" + normalize-url@^4.1.0: version "4.5.1" resolved "https://registry.yarnpkg.com/normalize-url/-/normalize-url-4.5.1.tgz#0dd90cf1288ee1d1313b87081c9a5932ee48518a" @@ -5912,21 +9091,14 @@ normalize.css@^8.0.1: resolved "https://registry.yarnpkg.com/normalize.css/-/normalize.css-8.0.1.tgz#9b98a208738b9cc2634caacbc42d131c97487bf3" integrity sha512-qizSNPO93t1YUuUhP22btGOo3chcvDFqFaj2TRybP0DMxkHOCTYwp3n34fel4a31ORXy4m1Xq0Gyqpb5m33qIg== -npm-bundled@^1.1.1: +npm-bundled@^1.0.1: version "1.1.2" resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.1.2.tgz#944c78789bd739035b70baa2ca5cc32b8d860bc1" integrity sha512-x5DHup0SuyQcmL3s7Rx/YQ8sbw/Hzg0rj48eN0dV7hf5cmQq5PXIeioroH3raV1QC1yh3uTYuMThvEQF3iKgGQ== dependencies: npm-normalize-package-bin "^1.0.1" -npm-install-checks@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/npm-install-checks/-/npm-install-checks-4.0.0.tgz#a37facc763a2fde0497ef2c6d0ac7c3fbe00d7b4" - integrity sha512-09OmyDkNLYwqKPOnbI8exiOZU2GVVmQp7tgez2BPi5OZC8M82elDAps7sxC4l//uSUtotWqoEIDwjRvWH4qz8w== - dependencies: - semver "^7.1.1" - -npm-lifecycle@^3.1.5: +npm-lifecycle@^3.1.2: version "3.1.5" resolved "https://registry.yarnpkg.com/npm-lifecycle/-/npm-lifecycle-3.1.5.tgz#9882d3642b8c82c815782a12e6a1bfeed0026309" integrity sha512-lDLVkjfZmvmfvpvBzA4vzee9cn+Me4orq0QF8glbswJVEbIcSNWib7qGOffolysc3teCqbbPZZkzbr3GQZTL1g== @@ -5945,60 +9117,33 @@ npm-normalize-package-bin@^1.0.0, npm-normalize-package-bin@^1.0.1: resolved "https://registry.yarnpkg.com/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz#6e79a41f23fd235c0623218228da7d9c23b8f6e2" integrity sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA== -npm-package-arg@^8.0.0, npm-package-arg@^8.0.1, npm-package-arg@^8.1.0, npm-package-arg@^8.1.2, npm-package-arg@^8.1.5: - version "8.1.5" - resolved "https://registry.yarnpkg.com/npm-package-arg/-/npm-package-arg-8.1.5.tgz#3369b2d5fe8fdc674baa7f1786514ddc15466e44" - integrity sha512-LhgZrg0n0VgvzVdSm1oiZworPbTxYHUJCgtsJW8mGvlDpxTM1vSJc3m5QZeUkhAHIzbz3VCHd/R4osi1L1Tg/Q== +"npm-package-arg@^4.0.0 || ^5.0.0 || ^6.0.0", npm-package-arg@^6.0.0, npm-package-arg@^6.1.0: + version "6.1.1" + resolved "https://registry.yarnpkg.com/npm-package-arg/-/npm-package-arg-6.1.1.tgz#02168cb0a49a2b75bf988a28698de7b529df5cb7" + integrity sha512-qBpssaL3IOZWi5vEKUKW0cO7kzLeT+EQO9W8RsLOZf76KF9E/K9+wH0C7t06HXPpaH8WH5xF1MExLuCwbTqRUg== dependencies: - hosted-git-info "^4.0.1" - semver "^7.3.4" + hosted-git-info "^2.7.1" + osenv "^0.1.5" + semver "^5.6.0" validate-npm-package-name "^3.0.0" -npm-packlist@^2.1.4: - version "2.2.2" - resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-2.2.2.tgz#076b97293fa620f632833186a7a8f65aaa6148c8" - integrity sha512-Jt01acDvJRhJGthnUJVF/w6gumWOZxO7IkpY/lsX9//zqQgnF7OJaxgQXcerd4uQOLu7W5bkb4mChL9mdfm+Zg== - dependencies: - glob "^7.1.6" - ignore-walk "^3.0.3" - npm-bundled "^1.1.1" - npm-normalize-package-bin "^1.0.1" - -npm-pick-manifest@^6.0.0, npm-pick-manifest@^6.1.1: - version "6.1.1" - resolved "https://registry.yarnpkg.com/npm-pick-manifest/-/npm-pick-manifest-6.1.1.tgz#7b5484ca2c908565f43b7f27644f36bb816f5148" - integrity sha512-dBsdBtORT84S8V8UTad1WlUyKIY9iMsAmqxHbLdeEeBNMLQDlDWWra3wYUx9EBEIiG/YwAy0XyNHDd2goAsfuA== +npm-packlist@^1.4.4: + version "1.4.8" + resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.4.8.tgz#56ee6cc135b9f98ad3d51c1c95da22bbb9b2ef3e" + integrity sha512-5+AZgwru5IevF5ZdnFglB5wNlHG1AOOuw28WhUq8/8emhBmLv6jX5by4WJCh7lW0uSYZYS6DXqIsyZVIXRZU9A== dependencies: - npm-install-checks "^4.0.0" + ignore-walk "^3.0.1" + npm-bundled "^1.0.1" npm-normalize-package-bin "^1.0.1" - npm-package-arg "^8.1.2" - semver "^7.3.4" -npm-registry-fetch@^11.0.0: - version "11.0.0" - resolved "https://registry.yarnpkg.com/npm-registry-fetch/-/npm-registry-fetch-11.0.0.tgz#68c1bb810c46542760d62a6a965f85a702d43a76" - integrity sha512-jmlgSxoDNuhAtxUIG6pVwwtz840i994dL14FoNVZisrmZW5kWd63IUTNv1m/hyRSGSqWjCUp/YZlS1BJyNp9XA== - dependencies: - make-fetch-happen "^9.0.1" - minipass "^3.1.3" - minipass-fetch "^1.3.0" - minipass-json-stream "^1.0.1" - minizlib "^2.0.0" - npm-package-arg "^8.0.0" - -npm-registry-fetch@^9.0.0: - version "9.0.0" - resolved "https://registry.yarnpkg.com/npm-registry-fetch/-/npm-registry-fetch-9.0.0.tgz#86f3feb4ce00313bc0b8f1f8f69daae6face1661" - integrity sha512-PuFYYtnQ8IyVl6ib9d3PepeehcUeHN9IO5N/iCRhyg9tStQcqGQBRVHmfmMWPDERU3KwZoHFvbJ4FPXPspvzbA== +npm-pick-manifest@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/npm-pick-manifest/-/npm-pick-manifest-3.0.2.tgz#f4d9e5fd4be2153e5f4e5f9b7be8dc419a99abb7" + integrity sha512-wNprTNg+X5nf+tDi+hbjdHhM4bX+mKqv6XmPh7B5eG+QY9VARfQPfCEH013H5GqfNj6ee8Ij2fg8yk0mzps1Vw== dependencies: - "@npmcli/ci-detect" "^1.0.0" - lru-cache "^6.0.0" - make-fetch-happen "^8.0.9" - minipass "^3.1.3" - minipass-fetch "^1.3.0" - minipass-json-stream "^1.0.1" - minizlib "^2.0.0" - npm-package-arg "^8.0.0" + figgy-pudding "^3.5.1" + npm-package-arg "^6.0.0" + semver "^5.4.1" npm-run-all@^4.1.5: version "4.1.5" @@ -6015,7 +9160,14 @@ npm-run-all@^4.1.5: shell-quote "^1.6.1" string.prototype.padend "^3.0.0" -npm-run-path@^4.0.1: +npm-run-path@^2.0.0: + version "2.0.2" + resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-2.0.2.tgz#35a9232dfa35d7067b4cb2ddf2357b1871536c5f" + integrity sha1-NakjLfo11wZ7TLLd8jV7GHFTbF8= + dependencies: + path-key "^2.0.0" + +npm-run-path@^4.0.0, npm-run-path@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/npm-run-path/-/npm-run-path-4.0.1.tgz#b7ecd1e5ed53da8e37a55e1c2269e0b97ed748ea" integrity sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw== @@ -6047,11 +9199,20 @@ oauth-sign@~0.9.0: resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" integrity sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ== -object-assign@^4, object-assign@^4.1.0, object-assign@^4.1.1: +object-assign@^4, object-assign@^4.0.1, object-assign@^4.1.0, object-assign@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= +object-copy@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/object-copy/-/object-copy-0.1.0.tgz#7e7d858b781bd7c991a41ba975ed3812754e998c" + integrity sha1-fn2Fi3gb18mRpBupde04EnVOmYw= + dependencies: + copy-descriptor "^0.1.0" + define-property "^0.2.5" + kind-of "^3.0.3" + object-inspect@^1.11.0, object-inspect@^1.9.0: version "1.11.0" resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.11.0.tgz#9dceb146cedd4148a0d9e51ab88d34cf509922b1" @@ -6070,6 +9231,13 @@ object-keys@^1.0.12, object-keys@^1.1.1: resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e" integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA== +object-visit@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/object-visit/-/object-visit-1.0.1.tgz#f79c4493af0c5377b59fe39d395e41042dd045bb" + integrity sha1-95xEk68MU3e1n+OdOV5BBC3QRbs= + dependencies: + isobject "^3.0.0" + object.assign@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/object.assign/-/object.assign-4.1.2.tgz#0ed54a342eceb37b38ff76eb831a0e788cb63940" @@ -6080,6 +9248,24 @@ object.assign@^4.1.2: has-symbols "^1.0.1" object-keys "^1.1.1" +object.entries@^1.1.5: + version "1.1.5" + resolved "https://registry.yarnpkg.com/object.entries/-/object.entries-1.1.5.tgz#e1acdd17c4de2cd96d5a08487cfb9db84d881861" + integrity sha512-TyxmjUoZggd4OrrU1W66FMDG6CuqJxsFvymeyXI51+vQLN67zYfZseptRge703kKQdo4uccgAKebXFcRCzk4+g== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + es-abstract "^1.19.1" + +object.fromentries@^2.0.5: + version "2.0.5" + resolved "https://registry.yarnpkg.com/object.fromentries/-/object.fromentries-2.0.5.tgz#7b37b205109c21e741e605727fe8b0ad5fa08251" + integrity sha512-CAyG5mWQRRiBU57Re4FKoTBjXfDoNwdFVH2Y1tS9PqCsfUTymAohOkEMSG3aRNKmv4lV3O7p1et7c187q6bynw== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + es-abstract "^1.19.1" + object.getownpropertydescriptors@^2.0.3: version "2.1.3" resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.1.3.tgz#b223cf38e17fefb97a63c10c91df72ccb386df9e" @@ -6089,6 +9275,35 @@ object.getownpropertydescriptors@^2.0.3: define-properties "^1.1.3" es-abstract "^1.19.1" +object.hasown@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/object.hasown/-/object.hasown-1.1.0.tgz#7232ed266f34d197d15cac5880232f7a4790afe5" + integrity sha512-MhjYRfj3GBlhSkDHo6QmvgjRLXQ2zndabdf3nX0yTyZK9rPfxb6uRpAac8HXNLy1GpqWtZ81Qh4v3uOls2sRAg== + dependencies: + define-properties "^1.1.3" + es-abstract "^1.19.1" + +object.pick@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/object.pick/-/object.pick-1.3.0.tgz#87a10ac4c1694bd2e1cbf53591a66141fb5dd747" + integrity sha1-h6EKxMFpS9Lhy/U1kaZhQftd10c= + dependencies: + isobject "^3.0.1" + +object.values@^1.1.5: + version "1.1.5" + resolved "https://registry.yarnpkg.com/object.values/-/object.values-1.1.5.tgz#959f63e3ce9ef108720333082131e4a459b716ac" + integrity sha512-QUZRW0ilQ3PnPpbNtgdNV1PDbEqLIiSFB3l+EnGtBQ/8SUTLj1PZwtQHABZtLgwpJZTSZhuGLOGk57Drx2IvYg== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + es-abstract "^1.19.1" + +octokit-pagination-methods@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/octokit-pagination-methods/-/octokit-pagination-methods-1.1.0.tgz#cf472edc9d551055f9ef73f6e42b4dbb4c80bea4" + integrity sha512-fZ4qZdQ2nxJvtcasX7Ghl+WlWS/d9IgnBIwFZXVNNZUmzpno91SX5bc5vuxiuKoCtK78XxGGNuSCrDC7xYB3OQ== + on-finished@~2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.3.0.tgz#20f1336481b083cd75337992a16971aa2d906947" @@ -6108,6 +9323,13 @@ once@^1.3.0, once@^1.3.1, once@^1.4.0: dependencies: wrappy "1" +onetime@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/onetime/-/onetime-2.0.1.tgz#067428230fd67443b2794b22bba528b6867962d4" + integrity sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ= + dependencies: + mimic-fn "^1.0.0" + onetime@^5.1.0, onetime@^5.1.2: version "5.1.2" resolved "https://registry.yarnpkg.com/onetime/-/onetime-5.1.2.tgz#d0e96ebb56b07476df1dd9c4806e5237985ca45e" @@ -6115,6 +9337,16 @@ onetime@^5.1.0, onetime@^5.1.2: dependencies: mimic-fn "^2.1.0" +opencollective-postinstall@^2.0.2: + version "2.0.3" + resolved "https://registry.yarnpkg.com/opencollective-postinstall/-/opencollective-postinstall-2.0.3.tgz#7a0fff978f6dbfa4d006238fbac98ed4198c3259" + integrity sha512-8AV/sCtuzUeTo8gQK5qDZzARrulB3egtLzFgteqB2tcT4Mw7B8Kt7JcDHmltjz6FOAHsvTevk70gZEbhM4ZS9Q== + +opener@^1.5.2: + version "1.5.2" + resolved "https://registry.yarnpkg.com/opener/-/opener-1.5.2.tgz#5d37e1f35077b9dcac4301372271afdeb2a13598" + integrity sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A== + optionator@^0.8.1: version "0.8.3" resolved "https://registry.yarnpkg.com/optionator/-/optionator-0.8.3.tgz#84fa1d036fe9d3c7e21d99884b601167ec8fb495" @@ -6144,6 +9376,14 @@ os-homedir@^1.0.0: resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M= +os-name@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/os-name/-/os-name-3.1.0.tgz#dec19d966296e1cd62d701a5a66ee1ddeae70801" + integrity sha512-h8L+8aNjNcMpo/mAIBPn5PXCM16iyPGjHNWo6U1YO8sJTMHtEtyczI6QJnLoplswm6goopQkqc7OAnjhWcugVg== + dependencies: + macos-release "^2.2.0" + windows-release "^3.1.0" + os-tmpdir@^1.0.0, os-tmpdir@~1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/os-tmpdir/-/os-tmpdir-1.0.2.tgz#bbe67406c79aa85c5cfec766fe5734555dfa1274" @@ -6154,7 +9394,7 @@ os@~0.1.1: resolved "https://registry.yarnpkg.com/os/-/os-0.1.2.tgz#f29a50c62908516ba42652de42f7038600cadbc2" integrity sha512-ZoXJkvAnljwvc56MbvhtKVWmSkzV712k42Is2mA0+0KTSRakq5XXuXpjZjgAt9ctzl51ojhQWakQQpmOvXWfjQ== -osenv@^0.1.4: +osenv@^0.1.4, osenv@^0.1.5: version "0.1.5" resolved "https://registry.yarnpkg.com/osenv/-/osenv-0.1.5.tgz#85cdfafaeb28e8677f416e287592b5f3f49ea410" integrity sha512-0CWcCECdMVc2Rw3U5w9ZjqX6ga6ubk1xDVKxtBQPK7wis/0F2r9T6k4ydGYhecl7YUBxBVxhL5oisPsNxAPe2g== @@ -6167,6 +9407,11 @@ p-cancelable@^1.0.0: resolved "https://registry.yarnpkg.com/p-cancelable/-/p-cancelable-1.1.0.tgz#d078d15a3af409220c886f1d9a0ca2e441ab26cc" integrity sha512-s73XxOZ4zpt1edZYZzvhqFa6uvQc1vwUa0K0BdtIZgQMAJj9IbebH+JkgKZc9h+B05PKHLOTl4ajG1BmNrVZlw== +p-each-series@^2.1.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/p-each-series/-/p-each-series-2.2.0.tgz#105ab0357ce72b202a8a8b94933672657b5e2a9a" + integrity sha512-ycIL2+1V32th+8scbpTvyHNaHe02z0sjgh91XXjAk+ZeXoPN4Z46DVUnzdso0aX4KckKw0FNNFHdjZ2UsZvxiA== + p-finally@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/p-finally/-/p-finally-1.0.0.tgz#3fbcfb15b899a44123b34b6dcc18b724336a2cae" @@ -6179,7 +9424,7 @@ p-limit@^1.1.0: dependencies: p-try "^1.0.0" -p-limit@^2.2.0: +p-limit@^2.0.0, p-limit@^2.2.0: version "2.3.0" resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1" integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w== @@ -6200,6 +9445,13 @@ p-locate@^2.0.0: dependencies: p-limit "^1.1.0" +p-locate@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-3.0.0.tgz#322d69a05c0264b25997d9f40cd8a891ab0064a4" + integrity sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ== + dependencies: + p-limit "^2.0.0" + p-locate@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-4.1.0.tgz#a3428bb7088b3a60292f66919278b7c297ad4f07" @@ -6207,10 +9459,17 @@ p-locate@^4.1.0: dependencies: p-limit "^2.2.0" -p-map-series@^2.1.0: +p-map-series@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-map-series/-/p-map-series-1.0.0.tgz#bf98fe575705658a9e1351befb85ae4c1f07bdca" + integrity sha1-v5j+V1cFZYqeE1G++4WuTB8Hvco= + dependencies: + p-reduce "^1.0.0" + +p-map@^2.1.0: version "2.1.0" - resolved "https://registry.yarnpkg.com/p-map-series/-/p-map-series-2.1.0.tgz#7560d4c452d9da0c07e692fdbfe6e2c81a2a91f2" - integrity sha512-RpYIIK1zXSNEOdwxcfe7FdvGcs7+y5n8rifMhMNWvaxRNMPINJHF5GDeuVxWqnfrcHPSCnp7Oo5yNXHId9Av2Q== + resolved "https://registry.yarnpkg.com/p-map/-/p-map-2.1.0.tgz#310928feef9c9ecc65b68b17693018a665cea175" + integrity sha512-y3b8Kpd8OAN444hxfBbFfj1FY/RjtTd8tzYwhUqNYXx0fXx2iX4maP4Qr6qhIKbQXI02wTLAda4fYUbDagTUFw== p-map@^4.0.0: version "4.0.0" @@ -6219,30 +9478,22 @@ p-map@^4.0.0: dependencies: aggregate-error "^3.0.0" -p-pipe@^3.1.0: - version "3.1.0" - resolved "https://registry.yarnpkg.com/p-pipe/-/p-pipe-3.1.0.tgz#48b57c922aa2e1af6a6404cb7c6bf0eb9cc8e60e" - integrity sha512-08pj8ATpzMR0Y80x50yJHn37NF6vjrqHutASaX5LiH5npS9XPvrUmscd9MF5R4fuYRHOxQR1FfMIlF7AzwoPqw== +p-pipe@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/p-pipe/-/p-pipe-1.2.0.tgz#4b1a11399a11520a67790ee5a0c1d5881d6befe9" + integrity sha1-SxoROZoRUgpneQ7loMHViB1r7+k= -p-queue@^6.6.2: - version "6.6.2" - resolved "https://registry.yarnpkg.com/p-queue/-/p-queue-6.6.2.tgz#2068a9dcf8e67dd0ec3e7a2bcb76810faa85e426" - integrity sha512-RwFpb72c/BhQLEXIZ5K2e+AhgNVmIejGlTgiB9MzZ0e93GRvqZ7uSi0dvRF7/XIXDeNkra2fNHBxTyPDGySpjQ== +p-queue@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/p-queue/-/p-queue-4.0.0.tgz#ed0eee8798927ed6f2c2f5f5b77fdb2061a5d346" + integrity sha512-3cRXXn3/O0o3+eVmUroJPSj/esxoEFIm0ZOno/T+NzG/VZgPOqQ8WKmlNqubSEpZmCIngEy34unkHGg83ZIBmg== dependencies: - eventemitter3 "^4.0.4" - p-timeout "^3.2.0" - -p-reduce@^2.0.0, p-reduce@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/p-reduce/-/p-reduce-2.1.0.tgz#09408da49507c6c274faa31f28df334bc712b64a" - integrity sha512-2USApvnsutq8uoxZBGbbWM0JIYLiEMJ9RlaN7fAzVNb9OZN0SHjjTTfIcb667XynS5Y1VhwDJVDa72TnPzAYWw== + eventemitter3 "^3.1.0" -p-timeout@^3.2.0: - version "3.2.0" - resolved "https://registry.yarnpkg.com/p-timeout/-/p-timeout-3.2.0.tgz#c7e17abc971d2a7962ef83626b35d635acf23dfe" - integrity sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg== - dependencies: - p-finally "^1.0.0" +p-reduce@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-reduce/-/p-reduce-1.0.0.tgz#18c2b0dd936a4690a529f8231f58a0fdb6a47dfa" + integrity sha1-GMKw3ZNqRpClKfgjH1ig/bakffo= p-try@^1.0.0: version "1.0.0" @@ -6254,12 +9505,12 @@ p-try@^2.0.0: resolved "https://registry.yarnpkg.com/p-try/-/p-try-2.2.0.tgz#cb2868540e313d61de58fafbe35ce9004d5540e6" integrity sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ== -p-waterfall@^2.1.1: - version "2.1.1" - resolved "https://registry.yarnpkg.com/p-waterfall/-/p-waterfall-2.1.1.tgz#63153a774f472ccdc4eb281cdb2967fcf158b2ee" - integrity sha512-RRTnDb2TBG/epPRI2yYXsimO0v3BXC8Yd3ogr1545IaqKK17VGhbWVeGGN+XfCm/08OK8635nH31c8bATkHuSw== +p-waterfall@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/p-waterfall/-/p-waterfall-1.0.0.tgz#7ed94b3ceb3332782353af6aae11aa9fc235bb00" + integrity sha1-ftlLPOszMngjU69qrhGqn8I1uwA= dependencies: - p-reduce "^2.0.0" + p-reduce "^1.0.0" package-json@^6.5.0: version "6.5.0" @@ -6269,32 +9520,16 @@ package-json@^6.5.0: got "^9.6.0" registry-auth-token "^4.0.0" registry-url "^5.0.0" - semver "^6.2.0" - -pacote@^11.2.6: - version "11.3.5" - resolved "https://registry.yarnpkg.com/pacote/-/pacote-11.3.5.tgz#73cf1fc3772b533f575e39efa96c50be8c3dc9d2" - integrity sha512-fT375Yczn4zi+6Hkk2TBe1x1sP8FgFsEIZ2/iWaXY2r/NkhDJfxbcn5paz1+RTFCyNf+dPnaoBDJoAxXSU8Bkg== - dependencies: - "@npmcli/git" "^2.1.0" - "@npmcli/installed-package-contents" "^1.0.6" - "@npmcli/promise-spawn" "^1.2.0" - "@npmcli/run-script" "^1.8.2" - cacache "^15.0.5" - chownr "^2.0.0" - fs-minipass "^2.1.0" - infer-owner "^1.0.4" - minipass "^3.1.3" - mkdirp "^1.0.3" - npm-package-arg "^8.0.1" - npm-packlist "^2.1.4" - npm-pick-manifest "^6.0.0" - npm-registry-fetch "^11.0.0" - promise-retry "^2.0.1" - read-package-json-fast "^2.0.1" - rimraf "^3.0.2" - ssri "^8.0.1" - tar "^6.1.0" + semver "^6.2.0" + +parallel-transform@^1.1.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/parallel-transform/-/parallel-transform-1.2.0.tgz#9049ca37d6cb2182c3b1d2c720be94d14a5814fc" + integrity sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg== + dependencies: + cyclist "^1.0.1" + inherits "^2.0.3" + readable-stream "^2.1.5" parent-module@^1.0.0: version "1.0.1" @@ -6303,6 +9538,18 @@ parent-module@^1.0.0: dependencies: callsites "^3.0.0" +parse-github-repo-url@^1.3.0: + version "1.4.1" + resolved "https://registry.yarnpkg.com/parse-github-repo-url/-/parse-github-repo-url-1.4.1.tgz#9e7d8bb252a6cb6ba42595060b7bf6df3dbc1f50" + integrity sha1-nn2LslKmy2ukJZUGC3v23z28H1A= + +parse-json@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-2.2.0.tgz#f480f40434ef80741f8469099f8dea18f55a4dc9" + integrity sha1-9ID0BDTvgHQfhGkJn43qGPVaTck= + dependencies: + error-ex "^1.2.0" + parse-json@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" @@ -6356,16 +9603,38 @@ parse5@5.1.0: resolved "https://registry.yarnpkg.com/parse5/-/parse5-5.1.0.tgz#c59341c9723f414c452975564c7c00a68d58acd2" integrity sha512-fxNG2sQjHvlVAYmzBZS9YlDp6PTSSDwa98vkD4QgVDDCAo84z5X1t5XyJQ62ImdLXx5NdIIfihey6xpum9/gRQ== +parse5@6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/parse5/-/parse5-6.0.1.tgz#e1a1c085c569b3dc08321184f19a39cc27f7c30b" + integrity sha512-Ofn/CTFzRGTTxwpNEs9PP93gXShHcTq255nzRYSKe8AkVpZY7e1fpmTfOyoIvjP5HG7Z2ZM7VS9PPhQGW2pOpw== + parseurl@~1.3.3: version "1.3.3" resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== +pascalcase@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/pascalcase/-/pascalcase-0.1.1.tgz#b363e55e8006ca6fe21784d2db22bd15d7917f14" + integrity sha1-s2PlXoAGym/iF4TS2yK9FdeRfxQ= + path-browserify@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/path-browserify/-/path-browserify-1.0.1.tgz#d98454a9c3753d5790860f16f68867b9e46be1fd" integrity sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g== +path-dirname@^1.0.0: + version "1.0.2" + resolved "https://registry.yarnpkg.com/path-dirname/-/path-dirname-1.0.2.tgz#cc33d24d525e099a5388c0336c6e32b9160609e0" + integrity sha1-zDPSTVJeCZpTiMAzbG4yuRYGCeA= + +path-exists@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-2.1.0.tgz#0feb6c64f0fc518d9a754dd5efb62c7022761f4b" + integrity sha1-D+tsZPD8UY2adU3V77YscCJ2H0s= + dependencies: + pinkie-promise "^2.0.0" + path-exists@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/path-exists/-/path-exists-3.0.0.tgz#ce0ebeaa5f78cb18925ea7d810d7b59b010fd515" @@ -6381,7 +9650,7 @@ path-is-absolute@^1.0.0: resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= -path-key@^2.0.1: +path-key@^2.0.0, path-key@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" integrity sha1-QRyttXTFoUDTpLGRDUDYDMn0C0A= @@ -6401,6 +9670,15 @@ path-to-regexp@0.1.7: resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.7.tgz#df604178005f522f15eb4490e7247a1bfaa67f8c" integrity sha1-32BBeABfUi8V60SQ5yR6G/qmf4w= +path-type@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-1.1.0.tgz#59c44f7ee491da704da415da5a4070ba4f8fe441" + integrity sha1-WcRPfuSR2nBNpBXaWkBwuk+P5EE= + dependencies: + graceful-fs "^4.1.2" + pify "^2.0.0" + pinkie-promise "^2.0.0" + path-type@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" @@ -6413,6 +9691,11 @@ path-type@^4.0.0: resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== +pend@~1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50" + integrity sha1-elfrVQpng/kRUzH89GY9XI4AelA= + performance-now@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" @@ -6423,7 +9706,7 @@ picocolors@^1.0.0: resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== -picomatch@^2.2.3: +picomatch@^2.0.4, picomatch@^2.2.3: version "2.3.0" resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.0.tgz#f1f061de8f6a4bf022892e2d128234fb98302972" integrity sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw== @@ -6433,7 +9716,7 @@ pidtree@^0.3.0: resolved "https://registry.yarnpkg.com/pidtree/-/pidtree-0.3.1.tgz#ef09ac2cc0533df1f3250ccf2c4d366b0d12114a" integrity sha512-qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA== -pify@^2.3.0: +pify@^2.0.0, pify@^2.3.0: version "2.3.0" resolved "https://registry.yarnpkg.com/pify/-/pify-2.3.0.tgz#ed141a6ac043a849ea588498e7dca8b15330e90c" integrity sha1-7RQaasBDqEnqWISY59yosVMw6Qw= @@ -6448,10 +9731,17 @@ pify@^4.0.1: resolved "https://registry.yarnpkg.com/pify/-/pify-4.0.1.tgz#4b2cd25c50d598735c50292224fd8c6df41e3231" integrity sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g== -pify@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/pify/-/pify-5.0.0.tgz#1f5eca3f5e87ebec28cc6d54a0e4aaf00acc127f" - integrity sha512-eW/gHNMlxdSP6dmG6uJip6FXN0EQBwm2clYYd8Wul42Cwu/DK8HEftzsapcNdYe2MfLiIwZqsDk2RDEsTE79hA== +pinkie-promise@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/pinkie-promise/-/pinkie-promise-2.0.1.tgz#2135d6dfa7a358c069ac9b178776288228450ffa" + integrity sha1-ITXW36ejWMBprJsXh3YogihFD/o= + dependencies: + pinkie "^2.0.0" + +pinkie@^2.0.0: + version "2.0.4" + resolved "https://registry.yarnpkg.com/pinkie/-/pinkie-2.0.4.tgz#72556b80cfa0d48a974e80e77248e80ed4f7f870" + integrity sha1-clVrgM+g1IqXToDnckjoDtT3+HA= pino-std-serializers@^3.1.0: version "3.2.0" @@ -6471,6 +9761,20 @@ pino@6.13.3: quick-format-unescaped "^4.0.3" sonic-boom "^1.0.2" +pirates@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/pirates/-/pirates-4.0.1.tgz#643a92caf894566f91b2b986d2c66950a8e2fb87" + integrity sha512-WuNqLTbMI3tmfef2TKxlQmAiLHKtFhlsCZnPIpuv2Ow0RDVO8lfy1Opf4NUzlMXLjPl+Men7AuVdX6TA+s+uGA== + dependencies: + node-modules-regexp "^1.0.0" + +pkg-dir@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-3.0.0.tgz#2749020f239ed990881b1f71210d51eb6523bea3" + integrity sha512-/E57AYkoeQ25qkxMj5PBOVgF8Kiu/h7cYS30Z5+R7WaiCCBfLq58ZI/dSeaEKb9WVJV5n/03QwrN3IeWIFllvw== + dependencies: + find-up "^3.0.0" + pkg-dir@^4.1.0, pkg-dir@^4.2.0: version "4.2.0" resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-4.2.0.tgz#f099133df7ede422e81d1d8448270eeb3e4261f3" @@ -6483,16 +9787,62 @@ pkginfo@0.4.1: resolved "https://registry.yarnpkg.com/pkginfo/-/pkginfo-0.4.1.tgz#b5418ef0439de5425fc4995042dced14fb2a84ff" integrity sha1-tUGO8EOd5UJfxJlQQtztFPsqhP8= +playwright-core@=1.16.3: + version "1.16.3" + resolved "https://registry.yarnpkg.com/playwright-core/-/playwright-core-1.16.3.tgz#f466be9acaffb698654adfb0a17a4906ba936895" + integrity sha512-16hF27IvQheJee+DbhC941AUZLjbJgfZFWi9YPS4LKEk/lKFhZI+9TiFD0sboYqb9eaEWvul47uR5xxTVbE4iw== + dependencies: + commander "^8.2.0" + debug "^4.1.1" + extract-zip "^2.0.1" + https-proxy-agent "^5.0.0" + jpeg-js "^0.4.2" + mime "^2.4.6" + pngjs "^5.0.0" + progress "^2.0.3" + proper-lockfile "^4.1.1" + proxy-from-env "^1.1.0" + rimraf "^3.0.2" + socks-proxy-agent "^6.1.0" + stack-utils "^2.0.3" + ws "^7.4.6" + yauzl "^2.10.0" + yazl "^2.5.1" + +playwright@^1.12.3: + version "1.16.3" + resolved "https://registry.yarnpkg.com/playwright/-/playwright-1.16.3.tgz#27a292d9fa54fbac923998d3af58cd2b691f5ebe" + integrity sha512-nfJx/OpIb/8OexL3rYGxNN687hGyaM3XNpfuMzoPlrekURItyuiHHsNhC9oQCx3JDmCn5O3EyyyFCnrZjH6MpA== + dependencies: + playwright-core "=1.16.3" + +please-upgrade-node@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/please-upgrade-node/-/please-upgrade-node-3.2.0.tgz#aeddd3f994c933e4ad98b99d9a556efa0e2fe942" + integrity sha512-gQR3WpIgNIKwBMVLkpMUeR3e1/E1y42bqDQZfql+kDeXd8COYfM8PQA4X6y7a8u9Ua9FHmsrrmirW2vHs45hWg== + dependencies: + semver-compare "^1.0.0" + pn@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/pn/-/pn-1.1.0.tgz#e2f4cef0e219f463c179ab37463e4e1ecdccbafb" integrity sha512-2qHaIQr2VLRFoxe2nASzsV6ef4yOOH+Fi9FBOVH6cqeSgUnoyySPZkxzLuzd+RYOQTRpROA0ztTMqxROKSb/nA== +pngjs@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/pngjs/-/pngjs-5.0.0.tgz#e79dd2b215767fd9c04561c01236df960bce7fbb" + integrity sha512-40QW5YalBNfQo5yRYmiw7Yz6TKKVr3h6970B2YE+3fQpsWcrbj1PzJgxeJ19DRQjhMbKPIuMY8rFaXc8moolVw== + popper.js@^1.14.4, popper.js@^1.16.1: version "1.16.1" resolved "https://registry.yarnpkg.com/popper.js/-/popper.js-1.16.1.tgz#2a223cb3dc7b6213d740e40372be40de43e65b1b" integrity sha512-Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ== +posix-character-classes@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz#01eac0fe3b5af71a2a6c02feabb8c1fef7e00eab" + integrity sha1-AerA/jta9xoqbAL+q7jB/vfgDqs= + postcss-modules-extract-imports@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/postcss-modules-extract-imports/-/postcss-modules-extract-imports-3.0.0.tgz#cda1f047c0ae80c97dbe28c3e76a43b88025741d" @@ -6534,7 +9884,7 @@ postcss-value-parser@^4.1.0: resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz#443f6a20ced6481a2bda4fa8532a6e55d789a2cb" integrity sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ== -postcss@^8.0.2, postcss@^8.2.15: +postcss@^8.0.2, postcss@^8.2.15, postcss@^8.2.4: version "8.3.11" resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.3.11.tgz#c3beca7ea811cd5e1c4a3ec6d2e7599ef1f8f858" integrity sha512-hCmlUAIlUiav8Xdqw3Io4LcpA1DOt7h3LSTAC4G6JGHFFaWzI6qvFt9oilvl8BmkbBRX1IhM90ZAmpk68zccQA== @@ -6553,6 +9903,11 @@ prelude-ls@~1.1.2: resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= +prepend-http@^1.0.0: + version "1.0.4" + resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc" + integrity sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw= + prepend-http@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-2.0.0.tgz#e92434bfa5ea8c19f41cdfd401d741a3c819d897" @@ -6570,6 +9925,11 @@ prettier-linter-helpers@^1.0.0: dependencies: fast-diff "^1.1.2" +prettier@^1.19.0: + version "1.19.1" + resolved "https://registry.yarnpkg.com/prettier/-/prettier-1.19.1.tgz#f7d7f5ff8a9cd872a7be4ca142095956a60797cb" + integrity sha512-s7PoyDv/II1ObgQunCbB9PdLmUcBZcnWOcxDh7O0N/UwDEsHyqkW+Qh28jW+mVuCdx7gLB0BotYI1Y6uI9iyew== + prettier@^2.1.1: version "2.4.1" resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.4.1.tgz#671e11c89c14a4cfc876ce564106c4a6726c9f5c" @@ -6580,6 +9940,16 @@ prettier@~2.1.1: resolved "https://registry.yarnpkg.com/prettier/-/prettier-2.1.2.tgz#3050700dae2e4c8b67c4c3f666cdb8af405e1ce5" integrity sha512-16c7K+x4qVlJg9rEbXl7HEGmQyZlG4R9AgP+oHKRMsMsuk8s+ATStlf1NpDqyBI1HpVyfjLOeMhH2LvuNvV5Vg== +pretty-format@^26.6.2: + version "26.6.2" + resolved "https://registry.yarnpkg.com/pretty-format/-/pretty-format-26.6.2.tgz#e35c2705f14cb7fe2fe94fa078345b444120fc93" + integrity sha512-7AeGuCYNGmycyQbCqd/3PWH4eOoX/OiCa0uphp57NVTeAGdJGaAliecxwBDHYQCIvrW7aDBZCYeNTP/WX69mkg== + dependencies: + "@jest/types" "^26.6.2" + ansi-regex "^5.0.0" + ansi-styles "^4.0.0" + react-is "^17.0.1" + pretty-ms@^7.0.1: version "7.0.1" resolved "https://registry.yarnpkg.com/pretty-ms/-/pretty-ms-7.0.1.tgz#7d903eaab281f7d8e03c66f867e239dc32fb73e8" @@ -6597,7 +9967,7 @@ process@^0.11.10: resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" integrity sha1-czIwDoQBYb2j5podHZGn1LwW8YI= -progress@^2.0.0: +progress@^2.0.0, progress@^2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== @@ -6607,13 +9977,21 @@ promise-inflight@^1.0.1: resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" integrity sha1-mEcocL8igTL8vdhoEputEsPAKeM= -promise-retry@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/promise-retry/-/promise-retry-2.0.1.tgz#ff747a13620ab57ba688f5fc67855410c370da22" - integrity sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g== +promise-retry@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/promise-retry/-/promise-retry-1.1.1.tgz#6739e968e3051da20ce6497fb2b50f6911df3d6d" + integrity sha1-ZznpaOMFHaIM5kl/srUPaRHfPW0= dependencies: - err-code "^2.0.2" - retry "^0.12.0" + err-code "^1.0.0" + retry "^0.10.0" + +prompts@^2.0.1: + version "2.4.2" + resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.2.tgz#7b57e73b3a48029ad10ebd44f74b01722a4cb069" + integrity sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q== + dependencies: + kleur "^3.0.3" + sisteransi "^1.0.5" promzard@^0.3.0: version "0.3.0" @@ -6622,7 +10000,7 @@ promzard@^0.3.0: dependencies: read "1" -prop-types@^15.6.1, prop-types@^15.6.2: +prop-types@^15.6.0, prop-types@^15.6.1, prop-types@^15.6.2, prop-types@^15.7.2: version "15.7.2" resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.7.2.tgz#52c41e75b8c87e72b9d9360e0206b99dcbffa6c5" integrity sha512-8QQikdH7//R2vurIJSutZ1smHYTcLpRWEOlHnzcWHmBYrOGUysKwSsrC89BCiFj3CbrfJ/nXFdJepOVrY1GCHQ== @@ -6631,6 +10009,15 @@ prop-types@^15.6.1, prop-types@^15.6.2: object-assign "^4.1.1" react-is "^16.8.1" +proper-lockfile@^4.1.1: + version "4.1.2" + resolved "https://registry.yarnpkg.com/proper-lockfile/-/proper-lockfile-4.1.2.tgz#c8b9de2af6b2f1601067f98e01ac66baa223141f" + integrity sha512-TjNPblN4BwAWMXU8s9AEz4JmQxnD1NNL7bNOY/AKUzyamc379FWASUhc/K1pL2noVb+XmZKLL68cjzLsiOAMaA== + dependencies: + graceful-fs "^4.2.4" + retry "^0.12.0" + signal-exit "^3.0.2" + proto-list@~1.2.1: version "1.2.4" resolved "https://registry.yarnpkg.com/proto-list/-/proto-list-1.2.4.tgz#212d5bfe1318306a420f6402b8e26ff39647a849" @@ -6641,6 +10028,13 @@ protocols@^1.1.0, protocols@^1.4.0: resolved "https://registry.yarnpkg.com/protocols/-/protocols-1.4.8.tgz#48eea2d8f58d9644a4a32caae5d5db290a075ce8" integrity sha512-IgjKyaUSjsROSO8/D49Ab7hP8mJgTYcqApOqdPhLoPxAplXmkp+zRvsrSQjFn5by0rhm4VH0GAUELIPpx7B1yg== +protoduck@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/protoduck/-/protoduck-5.0.1.tgz#03c3659ca18007b69a50fd82a7ebcc516261151f" + integrity sha512-WxoCeDCoCBY55BMvj4cAEjdVUFGRWed9ZxPlqTKYyw1nDDTQ4pqmnIMAGfJlg7Dx35uB/M+PHJPTmGOvaCaPTg== + dependencies: + genfun "^5.0.0" + proxy-addr@~2.0.5: version "2.0.7" resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.7.tgz#f19fe69ceab311eeb94b42e70e8c2070f9ba1025" @@ -6649,16 +10043,29 @@ proxy-addr@~2.0.5: forwarded "0.2.0" ipaddr.js "1.9.1" +proxy-from-env@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/proxy-from-env/-/proxy-from-env-1.1.0.tgz#e102f16ca355424865755d2c9e8ea4f24d58c3e2" + integrity sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg== + prr@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" integrity sha1-0/wRS6BplaRexok/SEzrHXj19HY= -psl@^1.1.24, psl@^1.1.28: +psl@^1.1.24, psl@^1.1.28, psl@^1.1.33: version "1.8.0" resolved "https://registry.yarnpkg.com/psl/-/psl-1.8.0.tgz#9326f8bcfb013adcc005fdff056acce020e51c24" integrity sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ== +pump@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/pump/-/pump-2.0.1.tgz#12399add6e4cf7526d973cbc8b5ce2e2908b3909" + integrity sha512-ruPMNRkN3MHP1cWJc9OWr+T/xDP0jhXYCLfJcBuX54hhfIBnaQmAUMfDcG4DM5UMWByBbJY69QSphm3jtDKIkA== + dependencies: + end-of-stream "^1.1.0" + once "^1.3.1" + pump@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/pump/-/pump-3.0.0.tgz#b4a2116815bde2f4e1ea602354e8c75565107a64" @@ -6667,6 +10074,15 @@ pump@^3.0.0: end-of-stream "^1.1.0" once "^1.3.1" +pumpify@^1.3.3: + version "1.5.1" + resolved "https://registry.yarnpkg.com/pumpify/-/pumpify-1.5.1.tgz#36513be246ab27570b1a374a5ce278bfd74370ce" + integrity sha512-oClZI37HvuUJJxSKKrC17bZ9Cu0ZYhEAGPsPUy9KlMUmv9dKX2o77RUmq7f3XjIxbwyGwYzbzQ1L2Ks8sIradQ== + dependencies: + duplexify "^3.6.0" + inherits "^2.0.3" + pump "^2.0.0" + punycode@1.3.2: version "1.3.2" resolved "https://registry.yarnpkg.com/punycode/-/punycode-1.3.2.tgz#9653a036fb7c1ee42342f2325cceefea3926c48d" @@ -6704,6 +10120,14 @@ qs@~6.5.2: resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" integrity sha512-N5ZAX4/LxJmF+7wN74pUD6qAh9/wnvdQcjq9TZjevvXzSUo7bfmw91saqMjzGS2xq91/odN2dW/WOl7qQHNDGA== +query-string@^4.1.0: + version "4.3.4" + resolved "https://registry.yarnpkg.com/query-string/-/query-string-4.3.4.tgz#bbb693b9ca915c232515b228b1a02b609043dbeb" + integrity sha1-u7aTucqRXCMlFbIosaArYJBD2+s= + dependencies: + object-assign "^4.1.0" + strict-uri-encode "^1.0.0" + query-string@^6.13.8: version "6.14.1" resolved "https://registry.yarnpkg.com/query-string/-/query-string-6.14.1.tgz#7ac2dca46da7f309449ba0f86b1fd28255b0c86a" @@ -6734,6 +10158,11 @@ quick-format-unescaped@^4.0.3: resolved "https://registry.yarnpkg.com/quick-format-unescaped/-/quick-format-unescaped-4.0.4.tgz#93ef6dd8d3453cbc7970dd614fad4c5954d6b5a7" integrity sha512-tYC1Q1hgyRuHgloV/YXs2w15unPVh8qfu/qCTfhTYamaw7fyhumKa2yGpdSo87vY32rIclj+4fWYQXUMs9EHvg== +quick-lru@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-1.1.0.tgz#4360b17c61136ad38078397ff11416e186dcfbb8" + integrity sha1-Q2CxfGETatOAeDl/8RQW4Ybc+7g= + quick-lru@^4.0.1: version "4.0.1" resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-4.0.1.tgz#5b8878f113a58217848c6482026c73e1ba57727f" @@ -6779,6 +10208,18 @@ rc@^1.2.8: minimist "^1.2.0" strip-json-comments "~2.0.1" +react-base16-styling@^0.8.1: + version "0.8.1" + resolved "https://registry.yarnpkg.com/react-base16-styling/-/react-base16-styling-0.8.1.tgz#fa397b831a1c1050cb13cf29e3729e4780483b14" + integrity sha512-Qf8MiaeZRa6EiooXEtQWGvPuJDp1CuN2EjS9QUiBTBY5lmpFLvL58lCfRNkkAs8fBVsXOmkiKTcFQuEl4vYTgw== + dependencies: + "@types/base16" "^1.0.2" + "@types/lodash" "^4.14.176" + base16 "^1.0.0" + color "^3.2.1" + csstype "^3.0.9" + lodash.curry "^4.1.1" + react-dom@^17.0.1: version "17.0.2" resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-17.0.2.tgz#ecffb6845e3ad8dbfcdc498f0d0a939736502c23" @@ -6788,11 +10229,35 @@ react-dom@^17.0.1: object-assign "^4.1.1" scheduler "^0.20.2" +react-highlighter@^0.4.3: + version "0.4.3" + resolved "https://registry.yarnpkg.com/react-highlighter/-/react-highlighter-0.4.3.tgz#e32c84d053259c30ca72c615aa759036d0d23048" + integrity sha512-dwItRaGRHBceuzZd5NXeroapdmZ2JCAWZ3AdwdthRlSkdtPCY18DWrd6mPmiMCfSB6lgVwwCPQl4unZzG5sXXw== + dependencies: + blacklist "^1.1.4" + create-react-class "^15.6.2" + escape-string-regexp "^1.0.5" + prop-types "^15.6.0" + react-is@^16.8.1: version "16.13.1" resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== +react-is@^17.0.1: + version "17.0.2" + resolved "https://registry.yarnpkg.com/react-is/-/react-is-17.0.2.tgz#e691d4a8e9c789365655539ab372762b0efb54f0" + integrity sha512-w2GsyukL62IJnlaff/nRegPQR94C/XXamvMWmSHRJ4y7Ts/4ocGRmTHvOs8PSE6pB3dWOrD/nueuU5sduBsQ4w== + +react-json-tree@^0.15.0: + version "0.15.1" + resolved "https://registry.yarnpkg.com/react-json-tree/-/react-json-tree-0.15.1.tgz#1682c3b59feaf192d4ff26cbb99d38f36d904a12" + integrity sha512-9HTejgI4yuR1RBSQ8HOp4AOZ513MZru/PC7abzo0EG+++IoMHqnCKw43hIySUyBNGz81un/0M575Hvwnp4oQiA== + dependencies: + "@types/prop-types" "^15.7.4" + prop-types "^15.7.2" + react-base16-styling "^0.8.1" + react-lifecycles-compat@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz#4f1a273afdfc8f3488a8c516bfda78f872352362" @@ -6829,20 +10294,14 @@ react@^17.0.1: loose-envify "^1.1.0" object-assign "^4.1.1" -read-cmd-shim@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/read-cmd-shim/-/read-cmd-shim-2.0.0.tgz#4a50a71d6f0965364938e9038476f7eede3928d9" - integrity sha512-HJpV9bQpkl6KwjxlJcBoqu9Ba0PQg8TqSNIOrulGt54a0uup0HtevreFHzYzkm0lpnleRdNBzXznKrgxglEHQw== - -read-package-json-fast@^2.0.1: - version "2.0.3" - resolved "https://registry.yarnpkg.com/read-package-json-fast/-/read-package-json-fast-2.0.3.tgz#323ca529630da82cb34b36cc0b996693c98c2b83" - integrity sha512-W/BKtbL+dUjTuRL2vziuYhp76s5HZ9qQhd/dKfWIZveD0O40453QNyZhC0e63lqZrAQ4jiOapVoeJ7JrszenQQ== +read-cmd-shim@^1.0.1: + version "1.0.5" + resolved "https://registry.yarnpkg.com/read-cmd-shim/-/read-cmd-shim-1.0.5.tgz#87e43eba50098ba5a32d0ceb583ab8e43b961c16" + integrity sha512-v5yCqQ/7okKoZZkBQUAfTsQ3sVJtXdNfbPnI5cceppoxEVLYA3k+VtV2omkeo8MS94JCy4fSiUwlRBAwCVRPUA== dependencies: - json-parse-even-better-errors "^2.3.0" - npm-normalize-package-bin "^1.0.1" + graceful-fs "^4.1.2" -read-package-json@^2.0.0: +"read-package-json@1 || 2", read-package-json@^2.0.0, read-package-json@^2.0.13: version "2.1.2" resolved "https://registry.yarnpkg.com/read-package-json/-/read-package-json-2.1.2.tgz#6992b2b66c7177259feb8eaac73c3acd28b9222a" integrity sha512-D1KmuLQr6ZSJS0tW8hf3WGpRlwszJOXZ3E8Yd/DNRaM5d+1wVRZdHlpGBLAuovjr28LbWvjpWkBHMxpRGGjzNA== @@ -6852,27 +10311,7 @@ read-package-json@^2.0.0: normalize-package-data "^2.0.0" npm-normalize-package-bin "^1.0.0" -read-package-json@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/read-package-json/-/read-package-json-3.0.1.tgz#c7108f0b9390257b08c21e3004d2404c806744b9" - integrity sha512-aLcPqxovhJTVJcsnROuuzQvv6oziQx4zd3JvG0vGCL5MjTONUc4uJ90zCBC6R7W7oUKBNoR/F8pkyfVwlbxqng== - dependencies: - glob "^7.1.1" - json-parse-even-better-errors "^2.3.0" - normalize-package-data "^3.0.0" - npm-normalize-package-bin "^1.0.0" - -read-package-json@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/read-package-json/-/read-package-json-4.1.1.tgz#153be72fce801578c1c86b8ef2b21188df1b9eea" - integrity sha512-P82sbZJ3ldDrWCOSKxJT0r/CXMWR0OR3KRh55SgKo3p91GSIEEC32v3lSHAvO/UcH3/IoL7uqhOFBduAnwdldw== - dependencies: - glob "^7.1.1" - json-parse-even-better-errors "^2.3.0" - normalize-package-data "^3.0.0" - npm-normalize-package-bin "^1.0.0" - -read-package-tree@^5.3.1: +read-package-tree@^5.1.6: version "5.3.1" resolved "https://registry.yarnpkg.com/read-package-tree/-/read-package-tree-5.3.1.tgz#a32cb64c7f31eb8a6f31ef06f9cedf74068fe636" integrity sha512-mLUDsD5JVtlZxjSlPPx1RETkNjjvQYuweKwNVt1Sn8kP5Jh44pvYuUHCp6xSVDZWbNxVxG5lyZJ921aJH61sTw== @@ -6881,6 +10320,14 @@ read-package-tree@^5.3.1: readdir-scoped-modules "^1.0.0" util-promisify "^2.1.0" +read-pkg-up@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-1.0.1.tgz#9d63c13276c065918d57f002a57f40a1b643fb02" + integrity sha1-nWPBMnbAZZGNV/ACpX9AobZD+wI= + dependencies: + find-up "^1.0.0" + read-pkg "^1.0.0" + read-pkg-up@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-3.0.0.tgz#3ed496685dba0f8fe118d0691dc51f4a1ff96f07" @@ -6898,6 +10345,15 @@ read-pkg-up@^7.0.1: read-pkg "^5.2.0" type-fest "^0.8.1" +read-pkg@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-1.1.0.tgz#f5ffaa5ecd29cb31c0474bca7d756b6bb29e3f28" + integrity sha1-9f+qXs0pyzHAR0vKfXVra7KePyg= + dependencies: + load-json-file "^1.0.0" + normalize-package-data "^2.3.2" + path-type "^1.0.0" + read-pkg@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-3.0.0.tgz#9cbc686978fee65d16c00e2b19c237fcf6e38389" @@ -6924,16 +10380,7 @@ read@1, read@~1.0.1: dependencies: mute-stream "~0.0.4" -readable-stream@3, readable-stream@^3.0.0, readable-stream@^3.0.2, readable-stream@^3.4.0: - version "3.6.0" - resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" - integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== - dependencies: - inherits "^2.0.3" - string_decoder "^1.1.1" - util-deprecate "^1.0.1" - -readable-stream@^2.0.6, readable-stream@~2.3.6: +"readable-stream@1 || 2", readable-stream@^2.0.0, readable-stream@^2.0.6, readable-stream@^2.1.5, readable-stream@^2.2.2, readable-stream@^2.3.6, readable-stream@~2.3.6: version "2.3.7" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.7.tgz#1eca1cf711aef814c04f62252a36a62f6cb23b57" integrity sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw== @@ -6946,6 +10393,15 @@ readable-stream@^2.0.6, readable-stream@~2.3.6: string_decoder "~1.1.1" util-deprecate "~1.0.1" +"readable-stream@2 || 3", readable-stream@3, readable-stream@^3.0.0, readable-stream@^3.0.2, readable-stream@^3.4.0: + version "3.6.0" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" + integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== + dependencies: + inherits "^2.0.3" + string_decoder "^1.1.1" + util-deprecate "^1.0.1" + readdir-scoped-modules@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/readdir-scoped-modules/-/readdir-scoped-modules-1.1.0.tgz#8d45407b4f870a0dcaebc0e28670d18e74514309" @@ -6963,6 +10419,22 @@ rechoir@^0.7.0: dependencies: resolve "^1.9.0" +redent@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/redent/-/redent-1.0.0.tgz#cf916ab1fd5f1f16dfb20822dd6ec7f730c2afde" + integrity sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94= + dependencies: + indent-string "^2.1.0" + strip-indent "^1.0.1" + +redent@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/redent/-/redent-2.0.0.tgz#c1b2007b42d57eb1389079b3c8333639d5e1ccaa" + integrity sha1-wbIAe0LVfrE4kHmzyDM2OdXhzKo= + dependencies: + indent-string "^3.0.0" + strip-indent "^2.0.0" + redent@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/redent/-/redent-3.0.0.tgz#e557b7998316bb53c9f1f56fa626352c6963059f" @@ -6976,7 +10448,15 @@ regenerator-runtime@^0.13.4: resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz#8925742a98ffd90814988d7566ad30ca3b263b52" integrity sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA== -regexp.prototype.flags@^1.2.0: +regex-not@^1.0.0, regex-not@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/regex-not/-/regex-not-1.0.2.tgz#1f4ece27e00b0b65e0247a6810e6a85d83a5752c" + integrity sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A== + dependencies: + extend-shallow "^3.0.2" + safe-regex "^1.1.0" + +regexp.prototype.flags@^1.2.0, regexp.prototype.flags@^1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/regexp.prototype.flags/-/regexp.prototype.flags-1.3.1.tgz#7ef352ae8d159e758c0eadca6f8fcb4eef07be26" integrity sha512-JiBdRBq91WlY7uRJ0ds7R+dU02i6LKi8r3BuQhNXn+kmeLN+EfHhfjqMRis1zJxnlu88hq/4dx0P2OP3APRTOA== @@ -7003,6 +10483,28 @@ registry-url@^5.0.0: dependencies: rc "^1.2.8" +remove-trailing-separator@^1.0.1: + version "1.1.0" + resolved "https://registry.yarnpkg.com/remove-trailing-separator/-/remove-trailing-separator-1.1.0.tgz#c24bce2a283adad5bc3f58e0d48249b92379d8ef" + integrity sha1-wkvOKig62tW8P1jg1IJJuSN52O8= + +repeat-element@^1.1.2: + version "1.1.4" + resolved "https://registry.yarnpkg.com/repeat-element/-/repeat-element-1.1.4.tgz#be681520847ab58c7568ac75fbfad28ed42d39e9" + integrity sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ== + +repeat-string@^1.6.1: + version "1.6.1" + resolved "https://registry.yarnpkg.com/repeat-string/-/repeat-string-1.6.1.tgz#8dcae470e1c88abc2d600fff4a776286da75e637" + integrity sha1-jcrkcOHIirwtYA//Sndihtp15jc= + +repeating@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/repeating/-/repeating-2.0.1.tgz#5214c53a926d3552707527fbab415dbc08d06dda" + integrity sha1-UhTFOpJtNVJwdSf7q0FdvAjQbdo= + dependencies: + is-finite "^1.0.0" + request-promise-core@1.1.4: version "1.1.4" resolved "https://registry.yarnpkg.com/request-promise-core/-/request-promise-core-1.1.4.tgz#3eedd4223208d419867b78ce815167d10593a22f" @@ -7045,7 +10547,7 @@ request@2.88.0: tunnel-agent "^0.6.0" uuid "^3.3.2" -request@^2.88.0, request@^2.88.2: +request@^2.88.0: version "2.88.2" resolved "https://registry.yarnpkg.com/request/-/request-2.88.2.tgz#d73c918731cb5a87da047e207234146f664d12b3" integrity sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw== @@ -7081,6 +10583,11 @@ require-from-string@^2.0.2: resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== +require-main-filename@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b" + integrity sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg== + requires-port@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/requires-port/-/requires-port-1.0.0.tgz#925d2601d39ac485e091cf0da5c6e694dc3dcaff" @@ -7091,6 +10598,13 @@ resize-observer-polyfill@^1.5.1: resolved "https://registry.yarnpkg.com/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz#0e9020dd3d21024458d4ebd27e23e40269810464" integrity sha512-LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg== +resolve-cwd@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-2.0.0.tgz#00a9f7387556e27038eae232caa372a6a59b665a" + integrity sha1-AKn3OHVW4nA46uIyyqNypqWbZlo= + dependencies: + resolve-from "^3.0.0" + resolve-cwd@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/resolve-cwd/-/resolve-cwd-3.0.0.tgz#0f0075f1bb2544766cf73ba6a6e2adfebcb13f2d" @@ -7098,6 +10612,11 @@ resolve-cwd@^3.0.0: dependencies: resolve-from "^5.0.0" +resolve-from@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-3.0.0.tgz#b22c7af7d9d6881bc8b6e653335eebcb0a188748" + integrity sha1-six699nWiBvItuZTM17rywoYh0g= + resolve-from@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" @@ -7108,7 +10627,12 @@ resolve-from@^5.0.0: resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-5.0.0.tgz#c35225843df8f776df21c57557bc087e9dfdfc69" integrity sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw== -resolve@^1.10.0, resolve@^1.13.1, resolve@^1.9.0: +resolve-url@^0.2.1: + version "0.2.1" + resolved "https://registry.yarnpkg.com/resolve-url/-/resolve-url-0.2.1.tgz#2c637fe77c893afd2a663fe21aa9080068e2052a" + integrity sha1-LGN/53yJOv0qZj/iGqkIAGjiBSo= + +resolve@^1.1.10, resolve@^1.10.0, resolve@^1.13.1, resolve@^1.18.1, resolve@^1.9.0: version "1.20.0" resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.20.0.tgz#629a013fb3f70755d6f0b7935cc1c2c5378b1975" integrity sha512-wENBPt4ySzg4ybFQW2TT1zMQucPK95HSh/nq2CFTZVOGut2+pQvSsgtda4d26YrYcr067wjbmzOG8byDPBX63A== @@ -7116,6 +10640,14 @@ resolve@^1.10.0, resolve@^1.13.1, resolve@^1.9.0: is-core-module "^2.2.0" path-parse "^1.0.6" +resolve@^2.0.0-next.3: + version "2.0.0-next.3" + resolved "https://registry.yarnpkg.com/resolve/-/resolve-2.0.0-next.3.tgz#d41016293d4a8586a39ca5d9b5f15cbea1f55e46" + integrity sha512-W8LucSynKUIDu9ylraa7ueVZ7hc0uAgJBxVsQSKOXOyle8a93qXhcz+XAXZ8bIq2d6i4Ehddn6Evt+0/UwKk6Q== + dependencies: + is-core-module "^2.2.0" + path-parse "^1.0.6" + responselike@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/responselike/-/responselike-1.0.2.tgz#918720ef3b631c5642be068f15ade5a46f4ba1e7" @@ -7123,6 +10655,14 @@ responselike@^1.0.2: dependencies: lowercase-keys "^1.0.0" +restore-cursor@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-2.0.0.tgz#9f7ee287f82fd326d4fd162923d62129eee0dfaf" + integrity sha1-n37ih/gv0ybU/RYpI9YhKe7g368= + dependencies: + onetime "^2.0.0" + signal-exit "^3.0.2" + restore-cursor@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/restore-cursor/-/restore-cursor-3.1.0.tgz#39f67c54b3a7a58cea5236d95cf0034239631f7e" @@ -7131,6 +10671,16 @@ restore-cursor@^3.1.0: onetime "^5.1.0" signal-exit "^3.0.2" +ret@~0.1.10: + version "0.1.15" + resolved "https://registry.yarnpkg.com/ret/-/ret-0.1.15.tgz#b8a4825d5bdb1fc3f6f53c2bc33f81388681c7bc" + integrity sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg== + +retry@^0.10.0: + version "0.10.1" + resolved "https://registry.yarnpkg.com/retry/-/retry-0.10.1.tgz#e76388d217992c252750241d3d3956fed98d8ff4" + integrity sha1-52OI0heZLCUnUCQdPTlW/tmNj/Q= + retry@^0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/retry/-/retry-0.12.0.tgz#1b42a6266a21f07421d1b0b54b7dc167b01c013b" @@ -7141,14 +10691,14 @@ reusify@^1.0.4: resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== -rimraf@^2.6.3: +rimraf@^2.5.4, rimraf@^2.6.2, rimraf@^2.6.3: version "2.7.1" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== dependencies: glob "^7.1.3" -rimraf@^3.0.2, rimraf@~3.0.0: +rimraf@^3.0.0, rimraf@^3.0.2, rimraf@~3.0.0, rimraf@~3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-3.0.2.tgz#f1a5402ba6220ad52cc1282bac1ae3aa49fd061a" integrity sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA== @@ -7165,11 +10715,21 @@ rimraf@~2.4.0: "rise-reveal@file:../rise-reveal/export/reveal.js": version "3.9.2" -run-async@^2.4.0: +rsvp@^4.8.4: + version "4.8.5" + resolved "https://registry.yarnpkg.com/rsvp/-/rsvp-4.8.5.tgz#c8f155311d167f68f21e168df71ec5b083113734" + integrity sha512-nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA== + +run-async@^2.2.0, run-async@^2.4.0: version "2.4.1" resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.4.1.tgz#8440eccf99ea3e70bd409d49aab88e10c189a455" integrity sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ== +run-node@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/run-node/-/run-node-1.0.0.tgz#46b50b946a2aa2d4947ae1d886e9856fd9cabe5e" + integrity sha512-kc120TBlQ3mih1LSzdAJXo4xn/GWS2ec0l3S+syHDXP9uRr0JAT8Qd3mdMuyjqCzeZktgP3try92cEgf9Nks8A== + run-parallel@^1.1.9: version "1.2.0" resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" @@ -7177,28 +10737,69 @@ run-parallel@^1.1.9: dependencies: queue-microtask "^1.2.2" -rxjs@^6.6.0: +run-queue@^1.0.0, run-queue@^1.0.3: + version "1.0.3" + resolved "https://registry.yarnpkg.com/run-queue/-/run-queue-1.0.3.tgz#e848396f057d223f24386924618e25694161ec47" + integrity sha1-6Eg5bwV9Ij8kOGkkYY4laUFh7Ec= + dependencies: + aproba "^1.1.1" + +rw@1: + version "1.3.3" + resolved "https://registry.yarnpkg.com/rw/-/rw-1.3.3.tgz#3f862dfa91ab766b14885ef4d01124bfda074fb4" + integrity sha1-P4Yt+pGrdmsUiF700BEkv9oHT7Q= + +rxjs@^6.4.0, rxjs@^6.6.0: version "6.6.7" resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-6.6.7.tgz#90ac018acabf491bf65044235d5863c4dab804c9" integrity sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ== dependencies: tslib "^1.9.0" +rxjs@^7.4.0: + version "7.4.0" + resolved "https://registry.yarnpkg.com/rxjs/-/rxjs-7.4.0.tgz#a12a44d7eebf016f5ff2441b87f28c9a51cebc68" + integrity sha512-7SQDi7xeTMCJpqViXh8gL/lebcwlp3d831F05+9B44A4B0WfsEwUQHR64gsH1kvJ+Ep/J9K2+n1hVl1CsGN23w== + dependencies: + tslib "~2.1.0" + safe-buffer@5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1: version "5.1.2" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== -safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.2, safe-buffer@^5.2.1, safe-buffer@~5.2.0: +safe-buffer@^5.0.1, safe-buffer@^5.1.0, safe-buffer@^5.1.1, safe-buffer@^5.1.2, safe-buffer@^5.2.0, safe-buffer@^5.2.1, safe-buffer@~5.2.0: version "5.2.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== +safe-regex@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/safe-regex/-/safe-regex-1.1.0.tgz#40a3669f3b077d1e943d44629e157dd48023bf2e" + integrity sha1-QKNmnzsHfR6UPURinhV91IAjvy4= + dependencies: + ret "~0.1.10" + "safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0", safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: version "2.1.2" resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== +sane@^4.0.3: + version "4.1.0" + resolved "https://registry.yarnpkg.com/sane/-/sane-4.1.0.tgz#ed881fd922733a6c461bc189dc2b6c006f3ffded" + integrity sha512-hhbzAgTIX8O7SHfp2c8/kREfEn4qO/9q8C9beyY6+tvZ87EpoZ3i1RIEvp27YBswnNbY9mWd6paKVmKbAgLfZA== + dependencies: + "@cnakazawa/watch" "^1.0.3" + anymatch "^2.0.0" + capture-exit "^2.0.0" + exec-sh "^0.3.2" + execa "^1.0.0" + fb-watchman "^2.0.0" + micromatch "^3.1.4" + minimist "^1.1.1" + walker "~1.0.5" + sanitize-html@~2.3.3: version "2.3.3" resolved "https://registry.yarnpkg.com/sanitize-html/-/sanitize-html-2.3.3.tgz#3db382c9a621cce4c46d90f10c64f1e9da9e8353" @@ -7219,6 +10820,13 @@ saxes@^3.1.9: dependencies: xmlchars "^2.1.1" +saxes@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/saxes/-/saxes-5.0.1.tgz#eebab953fa3b7608dbe94e5dadb15c888fa6696d" + integrity sha512-5LBh1Tls8c9xgGjw3QrMwETmTMVk0oFgvrFSvWx62llR2hcEInrKNZ2GZCCuuy2lvWrdl5jhbpeqc5hRYKFOcw== + dependencies: + xmlchars "^2.2.0" + scheduler@^0.20.2: version "0.20.2" resolved "https://registry.yarnpkg.com/scheduler/-/scheduler-0.20.2.tgz#4baee39436e34aa93b4874bddcbf0fe8b8b50e91" @@ -7227,7 +10835,24 @@ scheduler@^0.20.2: loose-envify "^1.1.0" object-assign "^4.1.1" -schema-utils@^2.6.5: +schema-utils@^0.4.0: + version "0.4.7" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-0.4.7.tgz#ba74f597d2be2ea880131746ee17d0a093c68187" + integrity sha512-v/iwU6wvwGK8HbU9yi3/nhGzP0yGSuhQMzL6ySiec1FSrZZDkhm4noOSWzrNFo/jEc+SJY6jRTwuwbSXJPDUnQ== + dependencies: + ajv "^6.1.0" + ajv-keywords "^3.1.0" + +schema-utils@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-1.0.0.tgz#0b79a93204d7b600d4b2850d1f66c2a34951c770" + integrity sha512-i27Mic4KovM/lnGsy8whRCHhc7VicJajAjTrYg11K9zfZXnYIt4k5F+kZkwjnrhKzLic/HLU4j11mjsz2G/75g== + dependencies: + ajv "^6.1.0" + ajv-errors "^1.0.0" + ajv-keywords "^3.1.0" + +schema-utils@^2.0.1, schema-utils@^2.5.0, schema-utils@^2.6.5: version "2.7.1" resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.7.1.tgz#1ca4f32d1b24c590c203b8e7a50bf0ea4cd394d7" integrity sha512-SHiNtMOUGWBQJwzISiVYKu82GiV4QYGePp3odlY1tuKO7gPtphAT5R/py0fA6xtbgLL/RvtJZnU9b8s0F1q0Xg== @@ -7245,19 +10870,24 @@ schema-utils@^3.0.0, schema-utils@^3.1.0, schema-utils@^3.1.1: ajv "^6.12.5" ajv-keywords "^3.5.2" -"semver@2 || 3 || 4 || 5", semver@^5.4.1, semver@^5.5.0, semver@^5.6.0, semver@^5.7.1: +semver-compare@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/semver-compare/-/semver-compare-1.0.0.tgz#0dee216a1c941ab37e9efb1788f6afc5ff5537fc" + integrity sha1-De4hahyUGrN+nvsXiPavxf9VN/w= + +"semver@2 || 3 || 4 || 5", "semver@2.x || 3.x || 4 || 5", semver@^5.4.1, semver@^5.5.0, semver@^5.5.1, semver@^5.6.0, semver@^5.7.0, semver@^5.7.1: version "5.7.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== -semver@7.3.5, semver@^7.1.1, semver@^7.1.3, semver@^7.2.1, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5: +semver@7.3.5, semver@^7.2.1, semver@^7.3.2, semver@^7.3.4, semver@^7.3.5: version "7.3.5" resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.5.tgz#0b621c879348d8998e4b0e4be94b3f12e6018ef7" integrity sha512-PoeGJYh8HK4BTO/a9Tf6ZG3veo/A7ZVsYrSA6J8ny9nb3B1VrpkuN+z9OE5wfE5p6H4LchYZsegiQgbJD94ZFQ== dependencies: lru-cache "^6.0.0" -semver@^6.0.0, semver@^6.2.0: +semver@^6.0.0, semver@^6.2.0, semver@^6.3.0: version "6.3.0" resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.0.tgz#ee0a64c8af5e8ceea67687b133761e1becbd1d3d" integrity sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw== @@ -7305,11 +10935,21 @@ serve-static@1.14.1: parseurl "~1.3.3" send "0.17.1" -set-blocking@~2.0.0: +set-blocking@^2.0.0, set-blocking@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" integrity sha1-BF+XgtARrppoA93TgrJDkrPYkPc= +set-value@^2.0.0, set-value@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/set-value/-/set-value-2.0.1.tgz#a18d40530e6f07de4228c7defe4227af8cad005b" + integrity sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw== + dependencies: + extend-shallow "^2.0.1" + is-extendable "^0.1.1" + is-plain-object "^2.0.3" + split-string "^3.0.1" + setprototypeof@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.1.1.tgz#7e95acb24aa92f5885e0abef5ba131330d4ae683" @@ -7351,11 +10991,16 @@ shebang-regex@^3.0.0: resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== -shell-quote@^1.6.1: +shell-quote@^1.6.1, shell-quote@^1.7.2: version "1.7.3" resolved "https://registry.yarnpkg.com/shell-quote/-/shell-quote-1.7.3.tgz#aa40edac170445b9a431e17bb62c0b881b9c4123" integrity sha512-Vpfqwm4EnqGdlsBFNmHhxhElJYrdfcxPThu+ryKS5J8L/fhAwLazFZtq+S+TWZ9ANj2piSQLGj6NQg+lKPmxrw== +shellwords@^0.1.1: + version "0.1.1" + resolved "https://registry.yarnpkg.com/shellwords/-/shellwords-0.1.1.tgz#d6b9181c1a48d397324c84871efbcfc73fc0654b" + integrity sha512-vFwSUfQvqybiICwZY5+DAWIPLKsWO31Q91JSKl3UYv+K5c2QRPzn0qzec6QPu1Qc9eHYItiP3NdJqNVqetYAww== + side-channel@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/side-channel/-/side-channel-1.0.4.tgz#efce5c8fdc104ee751b25c58d4290011fa5ea2cf" @@ -7370,11 +11015,46 @@ signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3: resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.5.tgz#9e3e8cc0c75a99472b44321033a7702e7738252f" integrity sha512-KWcOiKeQj6ZyXx7zq4YxSMgHRlod4czeBQZrPb8OKcohcqAXShm7E20kEMle9WBt26hFcAf0qLOcp5zmY7kOqQ== +simple-swizzle@^0.2.2: + version "0.2.2" + resolved "https://registry.yarnpkg.com/simple-swizzle/-/simple-swizzle-0.2.2.tgz#a4da6b635ffcccca33f70d17cb92592de95e557a" + integrity sha1-pNprY1/8zMoz9w0Xy5JZLeleVXo= + dependencies: + is-arrayish "^0.3.1" + +sirv@^1.0.7: + version "1.0.18" + resolved "https://registry.yarnpkg.com/sirv/-/sirv-1.0.18.tgz#105fab52fb656ce8a2bebbf36b11052005952899" + integrity sha512-f2AOPogZmXgJ9Ma2M22ZEhc1dNtRIzcEkiflMFeVTRq+OViOZMvH1IPMVOwrKaxpSaHioBJiDR0SluRqGa7atA== + dependencies: + "@polka/url" "^1.0.0-next.20" + mime "^2.3.1" + totalist "^1.0.0" + +sisteransi@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/sisteransi/-/sisteransi-1.0.5.tgz#134d681297756437cc05ca01370d3a7a571075ed" + integrity sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg== + +slash@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/slash/-/slash-2.0.0.tgz#de552851a1759df3a8f206535442f5ec4ddeab44" + integrity sha512-ZYKh3Wh2z1PpEXWr0MpSBZ0V6mZHAQfYevttO11c51CaWjGTaadiKZ+wVt1PbMlDV5qhMFslpZCemhwOK7C89A== + slash@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/slash/-/slash-3.0.0.tgz#6539be870c165adbd5240220dbe361f1bc4d4634" integrity sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q== +slice-ansi@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-3.0.0.tgz#31ddc10930a1b7e0b67b08c96c2f49b77a789787" + integrity sha512-pSyv7bSTC7ig9Dcgbw9AuRNUb5k5V6oDudjZoMBSr13qpLBG7tB+zgCkARjq7xIUgdz5P1Qe8u+rSGdouOOIyQ== + dependencies: + ansi-styles "^4.0.0" + astral-regex "^2.0.0" + is-fullwidth-code-point "^3.0.0" + slice-ansi@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/slice-ansi/-/slice-ansi-4.0.0.tgz#500e8dd0fd55b05815086255b3195adf2a45fe6b" @@ -7394,16 +11074,45 @@ smart-buffer@^4.1.0: resolved "https://registry.yarnpkg.com/smart-buffer/-/smart-buffer-4.2.0.tgz#6e1d71fa4f18c05f7d0ff216dd16a481d0e8d9ae" integrity sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg== -socks-proxy-agent@^5.0.0: - version "5.0.1" - resolved "https://registry.yarnpkg.com/socks-proxy-agent/-/socks-proxy-agent-5.0.1.tgz#032fb583048a29ebffec2e6a73fca0761f48177e" - integrity sha512-vZdmnjb9a2Tz6WEQVIurybSwElwPxMZaIc7PzqbJTrezcKNznv6giT7J7tZDZ1BojVaa1jvO/UiUdhDVB0ACoQ== +snapdragon-node@^2.0.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz#6c175f86ff14bdb0724563e8f3c1b021a286853b" + integrity sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw== dependencies: - agent-base "^6.0.2" - debug "4" - socks "^2.3.3" + define-property "^1.0.0" + isobject "^3.0.0" + snapdragon-util "^3.0.1" + +snapdragon-util@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz#f956479486f2acd79700693f6f7b805e45ab56e2" + integrity sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ== + dependencies: + kind-of "^3.2.0" + +snapdragon@^0.8.1: + version "0.8.2" + resolved "https://registry.yarnpkg.com/snapdragon/-/snapdragon-0.8.2.tgz#64922e7c565b0e14204ba1aa7d6964278d25182d" + integrity sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg== + dependencies: + 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" + +socks-proxy-agent@^4.0.0: + version "4.0.2" + resolved "https://registry.yarnpkg.com/socks-proxy-agent/-/socks-proxy-agent-4.0.2.tgz#3c8991f3145b2799e70e11bd5fbc8b1963116386" + integrity sha512-NT6syHhI9LmuEMSK6Kd2V7gNv5KFZoLE7V5udWmn0de+3Mkj3UMA/AJPLyeNUVmElCurSHtUdM3ETpR3z770Wg== + dependencies: + agent-base "~4.2.1" + socks "~2.3.2" -socks-proxy-agent@^6.0.0: +socks-proxy-agent@^6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/socks-proxy-agent/-/socks-proxy-agent-6.1.0.tgz#869cf2d7bd10fea96c7ad3111e81726855e285c3" integrity sha512-57e7lwCN4Tzt3mXz25VxOErJKXlPfXmkMLnk310v/jwW20jWRVcgsOit+xNkN3eIEdB47GwnfAEBLacZ/wVIKg== @@ -7412,7 +11121,7 @@ socks-proxy-agent@^6.0.0: debug "^4.3.1" socks "^2.6.1" -socks@^2.3.3, socks@^2.6.1: +socks@^2.6.1: version "2.6.1" resolved "https://registry.yarnpkg.com/socks/-/socks-2.6.1.tgz#989e6534a07cf337deb1b1c94aaa44296520d30e" integrity sha512-kLQ9N5ucj8uIcxrDwjm0Jsqk06xdpBjGNQtpXy4Q8/QY2k+fY7nZH8CARy+hkbG+SGAovmzzuauCpBlb8FrnBA== @@ -7420,6 +11129,14 @@ socks@^2.3.3, socks@^2.6.1: ip "^1.1.5" smart-buffer "^4.1.0" +socks@~2.3.2: + version "2.3.3" + resolved "https://registry.yarnpkg.com/socks/-/socks-2.3.3.tgz#01129f0a5d534d2b897712ed8aceab7ee65d78e3" + integrity sha512-o5t52PCNtVdiOvzMry7wU4aOqYWL0PeCXRWBEiJow4/i/wr+wpsJQ9awEu1EonLIqsfGd5qSgDdxEOvCdmBEpA== + dependencies: + ip "1.1.5" + smart-buffer "^4.1.0" + sonic-boom@^1.0.2: version "1.4.1" resolved "https://registry.yarnpkg.com/sonic-boom/-/sonic-boom-1.4.1.tgz#d35d6a74076624f12e6f917ade7b9d75e918f53e" @@ -7428,6 +11145,13 @@ sonic-boom@^1.0.2: atomic-sleep "^1.0.0" flatstr "^1.0.12" +sort-keys@^1.0.0: + version "1.1.2" + resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-1.1.2.tgz#441b6d4d346798f1b4e49e8920adfba0e543f9ad" + integrity sha1-RBttTTRnmPG05J6JIK37oOVD+a0= + dependencies: + is-plain-obj "^1.0.0" + sort-keys@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-2.0.0.tgz#658535584861ec97d730d6cf41822e1f56684128" @@ -7435,13 +11159,6 @@ sort-keys@^2.0.0: dependencies: is-plain-obj "^1.0.0" -sort-keys@^4.0.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/sort-keys/-/sort-keys-4.2.0.tgz#6b7638cee42c506fff8c1cecde7376d21315be18" - integrity sha512-aUYIEU/UviqPgc8mHR6IW1EGxkAXpeRETYcrzg8cLAvUPZcpAlleSXHV2mY7G12GphSH6Gzv+4MMVSSkbdteHg== - dependencies: - is-plain-obj "^2.0.0" - sort-object-keys@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/sort-object-keys/-/sort-object-keys-1.1.3.tgz#bff833fe85cab147b34742e45863453c1e190b45" @@ -7469,7 +11186,18 @@ source-map-js@^0.6.2: resolved "https://registry.yarnpkg.com/source-map-js/-/source-map-js-0.6.2.tgz#0bb5de631b41cfbda6cfba8bd05a80efdfd2385e" integrity sha512-/3GptzWzu0+0MBQFrDKzw/DvvMTUORvgY6k6jd/VS6iCR4RDTKWH6v6WPwQoUO8667uQEf9Oe38DxAYWY5F/Ug== -source-map-support@~0.5.20: +source-map-resolve@^0.5.0: + version "0.5.3" + resolved "https://registry.yarnpkg.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz#190866bece7553e1f8f267a2ee82c606b5509a1a" + integrity sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw== + dependencies: + atob "^2.1.2" + decode-uri-component "^0.2.0" + resolve-url "^0.2.1" + source-map-url "^0.4.0" + urix "^0.1.0" + +source-map-support@^0.5.6, source-map-support@~0.5.20: version "0.5.20" resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.20.tgz#12166089f8f5e5e8c56926b377633392dd2cb6c9" integrity sha512-n1lZZ8Ve4ksRqizaBQgxXDgKwttHDhyfQjA6YZZn8+AroHbsIz+JjwxQDxbp+7y5OYCI8t1Yk7etjD9CRd2hIw== @@ -7477,12 +11205,22 @@ source-map-support@~0.5.20: buffer-from "^1.0.0" source-map "^0.6.0" +source-map-url@^0.4.0: + version "0.4.1" + resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.1.tgz#0af66605a745a5a2f91cf1bbf8a7afbc283dec56" + integrity sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw== + +source-map@^0.5.0, source-map@^0.5.6: + version "0.5.7" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" + integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= + source-map@^0.6.0, source-map@^0.6.1, source-map@~0.6.1: version "0.6.1" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== -source-map@~0.7.2: +source-map@^0.7.3, source-map@~0.7.2: version "0.7.3" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383" integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ== @@ -7518,6 +11256,20 @@ split-on-first@^1.0.0: resolved "https://registry.yarnpkg.com/split-on-first/-/split-on-first-1.1.0.tgz#f610afeee3b12bce1d0c30425e76398b78249a5f" integrity sha512-43ZssAJaMusuKWL8sKUBQXHWOpq8d6CfN/u1p4gUzfJkM05C8rxTmYrkIPTXapZpORA6LkkzcUulJ8FqA7Uudw== +split-string@^3.0.1, split-string@^3.0.2: + version "3.1.0" + resolved "https://registry.yarnpkg.com/split-string/-/split-string-3.1.0.tgz#7cb09dda3a86585705c64b39a6466038682e8fe2" + integrity sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw== + dependencies: + extend-shallow "^3.0.0" + +split2@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/split2/-/split2-2.2.0.tgz#186b2575bcf83e85b7d18465756238ee4ee42493" + integrity sha512-RAb22TG39LhI31MbreBgIuKiIKhVsawfTgEGqKHTK87aG+ul/PB8Sqoi3I7kVdRWiCfrKxK3uo4/YUkpNvhPbw== + dependencies: + through2 "^2.0.2" + split2@^3.0.0: version "3.2.2" resolved "https://registry.yarnpkg.com/split2/-/split2-3.2.2.tgz#bf2cf2a37d838312c249c89206fd7a17dd12365f" @@ -7552,13 +11304,35 @@ sshpk@^1.7.0: safer-buffer "^2.0.2" tweetnacl "~0.14.0" -ssri@^8.0.0, ssri@^8.0.1: +ssri@^6.0.0, ssri@^6.0.1: + version "6.0.2" + resolved "https://registry.yarnpkg.com/ssri/-/ssri-6.0.2.tgz#157939134f20464e7301ddba3e90ffa8f7728ac5" + integrity sha512-cepbSq/neFK7xB6A50KHN0xHDotYzq58wWCa5LeWqnPrHG8GzfEjO/4O8kpmcGW+oaxkvhEJCWgbgNk4/ZV93Q== + dependencies: + figgy-pudding "^3.5.1" + +ssri@^8.0.1: version "8.0.1" resolved "https://registry.yarnpkg.com/ssri/-/ssri-8.0.1.tgz#638e4e439e2ffbd2cd289776d5ca457c4f51a2af" integrity sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ== dependencies: minipass "^3.1.1" +stack-utils@^2.0.2, stack-utils@^2.0.3: + version "2.0.5" + resolved "https://registry.yarnpkg.com/stack-utils/-/stack-utils-2.0.5.tgz#d25265fca995154659dbbfba3b49254778d2fdd5" + integrity sha512-xrQcmYhOsn/1kX+Vraq+7j4oE2j/6BFscZ0etmYg81xuM8Gq0022Pxb8+IqgOFUIaxHs0KaSb7T1+OegiNrNFA== + dependencies: + escape-string-regexp "^2.0.0" + +static-extend@^0.1.1: + version "0.1.2" + resolved "https://registry.yarnpkg.com/static-extend/-/static-extend-0.1.2.tgz#60809c39cbff55337226fd5e0b520f341f1fb5c6" + integrity sha1-YICcOcv/VTNyJv1eC1IPNB8ftcY= + dependencies: + define-property "^0.2.5" + object-copy "^0.1.0" + "statuses@>= 1.5.0 < 2", statuses@~1.5.0: version "1.5.0" resolved "https://registry.yarnpkg.com/statuses/-/statuses-1.5.0.tgz#161c7dac177659fd9811f43771fa99381478628c" @@ -7576,11 +11350,42 @@ steno@^0.4.1: dependencies: graceful-fs "^4.1.3" +stream-each@^1.1.0: + version "1.2.3" + resolved "https://registry.yarnpkg.com/stream-each/-/stream-each-1.2.3.tgz#ebe27a0c389b04fbcc233642952e10731afa9bae" + integrity sha512-vlMC2f8I2u/bZGqkdfLQW/13Zihpej/7PmSiMQsbYddxuTsJp8vRe2x2FvVExZg7FaOds43ROAuFJwPR4MTZLw== + dependencies: + end-of-stream "^1.1.0" + stream-shift "^1.0.0" + +stream-shift@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.1.tgz#d7088281559ab2778424279b0877da3c392d5a3d" + integrity sha512-AiisoFqQ0vbGcZgQPY1cdP2I76glaVA/RauYR4G4thNFgkTqr90yXTo4LYX60Jl+sIlPNHHdGSwo01AvbKUSVQ== + +strict-uri-encode@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz#279b225df1d582b1f54e65addd4352e18faa0713" + integrity sha1-J5siXfHVgrH1TmWt3UNS4Y+qBxM= + strict-uri-encode@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/strict-uri-encode/-/strict-uri-encode-2.0.0.tgz#b9c7330c7042862f6b142dc274bbcc5866ce3546" integrity sha1-ucczDHBChi9rFC3CdLvMWGbONUY= +string-argv@0.3.1: + version "0.3.1" + resolved "https://registry.yarnpkg.com/string-argv/-/string-argv-0.3.1.tgz#95e2fbec0427ae19184935f816d74aaa4c5c19da" + integrity sha512-a1uQGz7IyVy9YwhqjZIZu1c8JO8dNIe20xBmSS6qu9kv++k3JGzCVmprbNN5Kn+BgzD5E7YYwg1CcjuJMRNsvg== + +string-length@^4.0.1: + version "4.0.2" + resolved "https://registry.yarnpkg.com/string-length/-/string-length-4.0.2.tgz#a8a8dc7bd5c1a82b9b3c8b87e125f66871b6e57a" + integrity sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ== + dependencies: + char-regex "^1.0.2" + strip-ansi "^6.0.0" + string-width@^1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/string-width/-/string-width-1.0.2.tgz#118bdf5b8cdc51a2a7e70d211e07e2b0b9b107d3" @@ -7599,6 +11404,37 @@ string-width@^1.0.1: is-fullwidth-code-point "^3.0.0" strip-ansi "^6.0.1" +string-width@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" + integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== + dependencies: + is-fullwidth-code-point "^2.0.0" + strip-ansi "^4.0.0" + +string-width@^3.0.0, string-width@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-3.1.0.tgz#22767be21b62af1081574306f69ac51b62203961" + integrity sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w== + dependencies: + emoji-regex "^7.0.1" + is-fullwidth-code-point "^2.0.0" + strip-ansi "^5.1.0" + +string.prototype.matchall@^4.0.6: + version "4.0.6" + resolved "https://registry.yarnpkg.com/string.prototype.matchall/-/string.prototype.matchall-4.0.6.tgz#5abb5dabc94c7b0ea2380f65ba610b3a544b15fa" + integrity sha512-6WgDX8HmQqvEd7J+G6VtAahhsQIssiZ8zl7zKh1VDMFyL3hRTJP4FTNA3RbIp2TOQ9AYNDcc7e3fH0Qbup+DBg== + dependencies: + call-bind "^1.0.2" + define-properties "^1.1.3" + es-abstract "^1.19.1" + get-intrinsic "^1.1.1" + has-symbols "^1.0.2" + internal-slot "^1.0.3" + regexp.prototype.flags "^1.3.1" + side-channel "^1.0.4" + string.prototype.padend@^3.0.0: version "3.1.3" resolved "https://registry.yarnpkg.com/string.prototype.padend/-/string.prototype.padend-3.1.3.tgz#997a6de12c92c7cb34dc8a201a6c53d9bd88a5f1" @@ -7638,6 +11474,15 @@ string_decoder@~1.1.1: dependencies: safe-buffer "~5.1.0" +stringify-object@^3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/stringify-object/-/stringify-object-3.3.0.tgz#703065aefca19300d3ce88af4f5b3956d7556629" + integrity sha512-rHqiFh1elqCQ9WPLIC8I0Q/g/wj5J1eMkyoiD6eoQApWHP0FtlK7rqnhmabL5VUY9JQCcqwwvlOaSuutekgyrw== + dependencies: + get-own-enumerable-property-symbols "^3.0.0" + is-obj "^1.0.1" + is-regexp "^1.0.0" + strip-ansi@^3.0.0, strip-ansi@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" @@ -7645,6 +11490,20 @@ strip-ansi@^3.0.0, strip-ansi@^3.0.1: dependencies: ansi-regex "^2.0.0" +strip-ansi@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-4.0.0.tgz#a8479022eb1ac368a871389b635262c505ee368f" + integrity sha1-qEeQIusaw2iocTibY1JixQXuNo8= + dependencies: + ansi-regex "^3.0.0" + +strip-ansi@^5.0.0, strip-ansi@^5.1.0, strip-ansi@^5.2.0: + version "5.2.0" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-5.2.0.tgz#8c9a536feb6afc962bdfa5b104a5091c1ad9c0ae" + integrity sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA== + dependencies: + ansi-regex "^4.1.0" + strip-ansi@^6.0.0, strip-ansi@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" @@ -7652,6 +11511,13 @@ strip-ansi@^6.0.0, strip-ansi@^6.0.1: dependencies: ansi-regex "^5.0.1" +strip-bom@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-2.0.0.tgz#6219a85616520491f35788bdbf1447a99c7e6b0e" + integrity sha1-YhmoVhZSBJHzV4i9vxRHqZx+aw4= + dependencies: + is-utf8 "^0.2.0" + strip-bom@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" @@ -7662,11 +11528,28 @@ strip-bom@^4.0.0: resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-4.0.0.tgz#9c3505c1db45bcedca3d9cf7a16f5c5aa3901878" integrity sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w== +strip-eof@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/strip-eof/-/strip-eof-1.0.0.tgz#bb43ff5598a6eb05d89b59fcd129c983313606bf" + integrity sha1-u0P/VZim6wXYm1n80SnJgzE2Br8= + strip-final-newline@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/strip-final-newline/-/strip-final-newline-2.0.0.tgz#89b852fb2fcbe936f6f4b3187afb0a12c1ab58ad" integrity sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA== +strip-indent@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-1.0.1.tgz#0c7962a6adefa7bbd4ac366460a638552ae1a0a2" + integrity sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI= + dependencies: + get-stdin "^4.0.1" + +strip-indent@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-2.0.0.tgz#5ef8db295d01e6ed6cbf7aab96998d7822527b68" + integrity sha1-XvjbKV0B5u1sv3qrlpmNeCJSe2g= + strip-indent@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/strip-indent/-/strip-indent-3.0.0.tgz#c32e1cee940b6b3432c771bc2c54bcce73cd3001" @@ -7684,7 +11567,7 @@ strip-json-comments@~2.0.1: resolved "https://registry.yarnpkg.com/strip-json-comments/-/strip-json-comments-2.0.1.tgz#3c531942e908c2697c0ec344858c286c7ca0a60a" integrity sha1-PFMZQukIwml8DsNEhYwobHygpgo= -strong-log-transformer@^2.1.0: +strong-log-transformer@^2.0.0: version "2.1.0" resolved "https://registry.yarnpkg.com/strong-log-transformer/-/strong-log-transformer-2.1.0.tgz#0f5ed78d325e0421ac6f90f7f10e691d6ae3ae10" integrity sha512-B3Hgul+z0L9a236FAUC9iZsL+nVHgoCJnqCbN588DjYxvGXaXaaFbfmQ/JhvKjZwsOukuR72XbHv71Qkug0HxA== @@ -7693,6 +11576,14 @@ strong-log-transformer@^2.1.0: minimist "^1.2.0" through "^2.3.4" +style-loader@~1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-1.0.2.tgz#433d72eab8d1dd7d64c648b8ad7d9cbff3184111" + integrity sha512-xehHGWeCPrr+R/bU82To0j7L7ENzH30RHYmMhmAumbuIpQ/bHmv3SAj1aTRfBSszkXoqNtpKnJyWXEDydS+KeA== + dependencies: + loader-utils "^1.2.3" + schema-utils "^2.0.1" + style-loader@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/style-loader/-/style-loader-2.0.0.tgz#9669602fd4690740eaaec137799a03addbbc393c" @@ -7722,6 +11613,14 @@ supports-color@^8.0.0: dependencies: has-flag "^4.0.0" +supports-hyperlinks@^2.0.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/supports-hyperlinks/-/supports-hyperlinks-2.2.0.tgz#4f77b42488765891774b70c79babd87f9bd594bb" + integrity sha512-6sXEzV5+I5j8Bmq9/vUphGRM/RJNT9SCURJLjwfOg51heRtguGWDzcaBlgAzKhQa0EVNpPEKzQuBwZ8S8WaCeQ== + dependencies: + has-flag "^4.0.0" + supports-color "^7.0.0" + svg-url-loader@~6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/svg-url-loader/-/svg-url-loader-6.0.0.tgz#b94861d9f6badfb8ca3e7d3ec4655c1bf732ac5d" @@ -7730,7 +11629,7 @@ svg-url-loader@~6.0.0: file-loader "~6.0.0" loader-utils "~2.0.0" -symbol-tree@^3.2.2: +symbol-tree@^3.2.2, symbol-tree@^3.2.4: version "3.2.4" resolved "https://registry.yarnpkg.com/symbol-tree/-/symbol-tree-3.2.4.tgz#430637d248ba77e078883951fb9aa0eed7c63fa2" integrity sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw== @@ -7751,7 +11650,7 @@ tapable@^2.1.1, tapable@^2.2.0: resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.2.1.tgz#1967a73ef4060a82f12ab96af86d52fdb76eeca0" integrity sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ== -tar@^4.4.12: +tar@^4.4.10, tar@^4.4.12, tar@^4.4.8: version "4.4.19" resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.19.tgz#2e4d7263df26f2b914dee10c825ab132123742f3" integrity sha512-a20gEsvHnWe0ygBY8JbxoM4w3SJdhc7ZAuxkLqh+nvNQN2IOt0B5lLgM490X5Hl8FF0dl0tOf2ewFYAlIFgzVA== @@ -7764,7 +11663,7 @@ tar@^4.4.12: safe-buffer "^5.2.1" yallist "^3.1.1" -tar@^6.0.2, tar@^6.1.0: +tar@^6.0.2: version "6.1.11" resolved "https://registry.yarnpkg.com/tar/-/tar-6.1.11.tgz#6760a38f003afa1b2ffd0ffe9e9abbd0eab3d621" integrity sha512-an/KZQzQUkZCkuoAA64hM92X0Urb6VpRhAFllDzz44U2mcD5scmT3zBc4VgVpkugF580+DQn8eAFSyoQt0tznA== @@ -7781,16 +11680,25 @@ temp-dir@^1.0.0: resolved "https://registry.yarnpkg.com/temp-dir/-/temp-dir-1.0.0.tgz#0a7c0ea26d3a39afa7e0ebea9c1fc0bc4daa011d" integrity sha1-CnwOom06Oa+n4OvqnB/AvE2qAR0= -temp-write@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/temp-write/-/temp-write-4.0.0.tgz#cd2e0825fc826ae72d201dc26eef3bf7e6fc9320" - integrity sha512-HIeWmj77uOOHb0QX7siN3OtwV3CTntquin6TNVg6SHOqCP3hYKmox90eeFOGaY1MqJ9WYDDjkyZrW6qS5AWpbw== +temp-write@^3.4.0: + version "3.4.0" + resolved "https://registry.yarnpkg.com/temp-write/-/temp-write-3.4.0.tgz#8cff630fb7e9da05f047c74ce4ce4d685457d492" + integrity sha1-jP9jD7fp2gXwR8dM5M5NaFRX1JI= dependencies: - graceful-fs "^4.1.15" - is-stream "^2.0.0" - make-dir "^3.0.0" + graceful-fs "^4.1.2" + is-stream "^1.1.0" + make-dir "^1.0.0" + pify "^3.0.0" temp-dir "^1.0.0" - uuid "^3.3.2" + uuid "^3.0.1" + +terminal-link@^2.0.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/terminal-link/-/terminal-link-2.1.1.tgz#14a64a27ab3c0df933ea546fba55f2d078edc994" + integrity sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ== + dependencies: + ansi-escapes "^4.2.1" + supports-hyperlinks "^2.0.0" terser-webpack-plugin@^4.1.0: version "4.2.3" @@ -7827,6 +11735,15 @@ terser@^5.3.4, terser@^5.7.2: source-map "~0.7.2" source-map-support "~0.5.20" +test-exclude@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-6.0.0.tgz#04a8698661d805ea6fa293b6cb9e63ac044ef15e" + integrity sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w== + dependencies: + "@istanbuljs/schema" "^0.1.2" + glob "^7.1.4" + minimatch "^3.0.4" + text-extensions@^1.0.0: version "1.9.0" resolved "https://registry.yarnpkg.com/text-extensions/-/text-extensions-1.9.0.tgz#1853e45fee39c945ce6f6c36b2d659b5aabc2a26" @@ -7837,7 +11754,26 @@ text-table@^0.2.0: resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= -through2@^2.0.0: +thenify-all@^1.0.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/thenify-all/-/thenify-all-1.6.0.tgz#1a1918d402d8fc3f98fbf234db0bcc8cc10e9726" + integrity sha1-GhkY1ALY/D+Y+/I02wvMjMEOlyY= + dependencies: + thenify ">= 3.1.0 < 4" + +"thenify@>= 3.1.0 < 4": + version "3.3.1" + resolved "https://registry.yarnpkg.com/thenify/-/thenify-3.3.1.tgz#8932e686a4066038a016dd9e2ca46add9838a95f" + integrity sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw== + dependencies: + any-promise "^1.0.0" + +throat@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/throat/-/throat-5.0.0.tgz#c5199235803aad18754a667d659b5e72ce16764b" + integrity sha512-fcwX4mndzpLQKBS1DVYhGAcYaYt7vsHNIvQV+WXMvnow5cgjPphq5CaayLaGsjRdSCKZFNGt7/GYAuXaNOiYCA== + +through2@^2.0.0, through2@^2.0.2: version "2.0.5" resolved "https://registry.yarnpkg.com/through2/-/through2-2.0.5.tgz#01c1e39eb31d07cb7d03a96a70823260b23132cd" integrity sha512-/mrRod8xqpA+IHSLyGCQ2s8SPHiCDEeQJSep1jqLYeEUClOFG2Qsh+4FU6G9VeqpZnGW/Su8LQGc4YKni5rYSQ== @@ -7845,6 +11781,14 @@ through2@^2.0.0: readable-stream "~2.3.6" xtend "~4.0.1" +through2@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/through2/-/through2-3.0.2.tgz#99f88931cfc761ec7678b41d5d7336b5b6a07bf4" + integrity sha512-enaDQ4MUyP2W6ZyT6EsMzqBPZaM/avg8iuo+l2d3QCs0J+6RaqkHV/2/lOwDTueBHeJ/2LG9lrLW3d5rWPucuQ== + dependencies: + inherits "^2.0.4" + readable-stream "2 || 3" + through2@^4.0.0: version "4.0.2" resolved "https://registry.yarnpkg.com/through2/-/through2-4.0.2.tgz#a7ce3ac2a7a8b0b966c80e7c49f0484c3b239764" @@ -7852,7 +11796,7 @@ through2@^4.0.0: dependencies: readable-stream "3" -through@2, "through@>=2.2.7 <3", through@^2.3.4, through@^2.3.6: +through@2, "through@>=2.2.7 <3", through@^2.3.4, through@^2.3.6, through@^2.3.8: version "2.3.8" resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= @@ -7872,11 +11816,36 @@ tmp@^0.0.33: dependencies: os-tmpdir "~1.0.2" +tmpl@1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/tmpl/-/tmpl-1.0.5.tgz#8683e0b902bb9c20c4f726e3c0b69f36518c07cc" + integrity sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw== + +to-fast-properties@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" + integrity sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4= + +to-object-path@^0.3.0: + version "0.3.0" + resolved "https://registry.yarnpkg.com/to-object-path/-/to-object-path-0.3.0.tgz#297588b7b0e7e0ac08e04e672f85c1f4999e17af" + integrity sha1-KXWIt7Dn4KwI4E5nL4XB9JmeF68= + dependencies: + kind-of "^3.0.2" + to-readable-stream@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/to-readable-stream/-/to-readable-stream-1.0.0.tgz#ce0aa0c2f3df6adf852efb404a783e77c0475771" integrity sha512-Iq25XBt6zD5npPhlLVXGFN3/gyR2/qODcKNNyTMd4vbm39HUaOiAM4PMq0eMVC/Tkxz+Zjdsc55g9yyz+Yq00Q== +to-regex-range@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-2.1.1.tgz#7c80c17b9dfebe599e27367e0d4dd5590141db38" + integrity sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg= + dependencies: + is-number "^3.0.0" + repeat-string "^1.6.1" + to-regex-range@^5.0.1: version "5.0.1" resolved "https://registry.yarnpkg.com/to-regex-range/-/to-regex-range-5.0.1.tgz#1648c44aae7c8d988a326018ed72f5b4dd0392e4" @@ -7884,6 +11853,16 @@ to-regex-range@^5.0.1: dependencies: is-number "^7.0.0" +to-regex@^3.0.1, to-regex@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/to-regex/-/to-regex-3.0.2.tgz#13cfdd9b336552f30b51f33a8ae1b42a7a7599ce" + integrity sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw== + dependencies: + define-property "^2.0.2" + extend-shallow "^3.0.2" + regex-not "^1.0.2" + safe-regex "^1.1.0" + to-string-loader@^1.1.6: version "1.2.0" resolved "https://registry.yarnpkg.com/to-string-loader/-/to-string-loader-1.2.0.tgz#4364aa044b9aa876473f4d7a36ef7d216a276e9c" @@ -7896,6 +11875,18 @@ toidentifier@1.0.0: resolved "https://registry.yarnpkg.com/toidentifier/-/toidentifier-1.0.0.tgz#7e1be3470f1e77948bc43d94a3c8f4d7752ba553" integrity sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw== +topojson-client@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/topojson-client/-/topojson-client-3.1.0.tgz#22e8b1ed08a2b922feeb4af6f53b6ef09a467b99" + integrity sha512-605uxS6bcYxGXw9qi62XyrV6Q3xwbndjachmNxu8HWTtVPxZfEJN9fd/SZS1Q54Sn2y0TMyMxFj/cJINqGHrKw== + dependencies: + commander "2" + +totalist@^1.0.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/totalist/-/totalist-1.1.0.tgz#a4d65a3e546517701e3e5c37a47a70ac97fe56df" + integrity sha512-gduQwd1rOdDMGxFG1gEvhV88Oirdo2p+KjoYFU7k2g+i7n6AFFbDQ5kMPUsW0pNbfQsB/cwXvT1i4Bue0s9g5g== + tough-cookie@^2.3.3, tough-cookie@~2.5.0: version "2.5.0" resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2" @@ -7913,6 +11904,15 @@ tough-cookie@^3.0.1: psl "^1.1.28" punycode "^2.1.1" +tough-cookie@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-4.0.0.tgz#d822234eeca882f991f0f908824ad2622ddbece4" + integrity sha512-tHdtEpQCMrc1YLrMaqXXcj6AxhYi/xgit6mZu1+EDWUn+qhUf8wMQoFIy9NXuq23zAwtcB0t/MjACGR18pcRbg== + dependencies: + psl "^1.1.33" + punycode "^2.1.1" + universalify "^0.1.2" + tough-cookie@~2.4.3: version "2.4.3" resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.4.3.tgz#53f36da3f47783b0925afa06ff9f3b165280f781" @@ -7940,6 +11940,16 @@ tr46@~0.0.3: resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" integrity sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o= +trim-newlines@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-1.0.0.tgz#5887966bb582a4503a41eb524f7d35011815a613" + integrity sha1-WIeWa7WCpFA6QetST301ARgVphM= + +trim-newlines@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-2.0.0.tgz#b403d0b91be50c331dfc4b82eeceb22c3de16d20" + integrity sha1-tAPQuRvlDDMd/EuC7s6yLD3hbSA= + trim-newlines@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/trim-newlines/-/trim-newlines-3.0.1.tgz#260a5d962d8b752425b32f3a7db0dcacd176c144" @@ -7950,11 +11960,21 @@ tslib@^1.8.1, tslib@^1.9.0: resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== +tslib@^2.3.1, tslib@~2.3.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.3.1.tgz#e8a335add5ceae51aa261d32a490158ef042ef01" + integrity sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw== + tslib@~1.13.0: version "1.13.0" resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.13.0.tgz#c881e13cc7015894ed914862d276436fa9a47043" integrity sha512-i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q== +tslib@~2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.1.0.tgz#da60860f1c2ecaa5703ab7d39bc05b6bf988b97a" + integrity sha512-hcVC3wYEziELGGmEEXue7D75zbwIIVUMWAVbHItGPx0ziyXxrOMQx4rQEVEV45Ut/1IotuEvwqPopzIOkDMf0A== + tsscmp@1.0.6: version "1.0.6" resolved "https://registry.yarnpkg.com/tsscmp/-/tsscmp-1.0.6.tgz#85b99583ac3589ec4bfef825b5000aa911d605eb" @@ -7998,6 +12018,11 @@ type-check@~0.3.2: dependencies: prelude-ls "~1.1.2" +type-detect@4.0.8: + version "4.0.8" + resolved "https://registry.yarnpkg.com/type-detect/-/type-detect-4.0.8.tgz#7646fb5f18871cfbb7749e69bd39a6388eb7450c" + integrity sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g== + type-fest@^0.18.0: version "0.18.1" resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.18.1.tgz#db4bc151a4a2cf4eebf9add5db75508db6cc841f" @@ -8013,10 +12038,10 @@ type-fest@^0.21.3: resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.21.3.tgz#d260a24b0198436e133fa26a524a6d65fa3b2e37" integrity sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w== -type-fest@^0.4.1: - version "0.4.1" - resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.4.1.tgz#8bdf77743385d8a4f13ba95f610f5ccd68c728f8" - integrity sha512-IwzA/LSfD2vC1/YDYMv/zHP4rDF1usCwllsDpbolT3D4fUepIO7f9K70jjmUewU/LmGUKJcwcVtDCpnKk4BPMw== +type-fest@^0.3.0: + version "0.3.1" + resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.3.1.tgz#63d00d204e059474fe5e1b7c011112bbd1dc29e1" + integrity sha512-cUGJnCdr4STbePCgqNFbpVNCepa+kAVohJs1sLhxzdH+gnEoOd8VhbYa7pD3zZYGiURWM2xzEII3fQcRizDkYQ== type-fest@^0.6.0: version "0.6.0" @@ -8101,6 +12126,16 @@ unbox-primitive@^1.0.1: has-symbols "^1.0.2" which-boxed-primitive "^1.0.2" +union-value@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/union-value/-/union-value-1.0.1.tgz#0b6fe7b835aecda61c6ea4d4f02c14221e109847" + integrity sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg== + dependencies: + arr-union "^3.1.0" + get-value "^2.0.6" + is-extendable "^0.1.1" + set-value "^2.0.1" + unique-filename@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/unique-filename/-/unique-filename-1.1.1.tgz#1d69769369ada0583103a1e6ae87681b56573230" @@ -8115,11 +12150,23 @@ unique-slug@^2.0.0: dependencies: imurmurhash "^0.1.4" +universal-user-agent@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/universal-user-agent/-/universal-user-agent-4.0.1.tgz#fd8d6cb773a679a709e967ef8288a31fcc03e557" + integrity sha512-LnST3ebHwVL2aNe4mejI9IQh2HfZ1RLo8Io2HugSif8ekzD1TlWpHpColOB/eh8JHMLkGH3Akqf040I+4ylNxg== + dependencies: + os-name "^3.1.0" + universal-user-agent@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/universal-user-agent/-/universal-user-agent-6.0.0.tgz#3381f8503b251c0d9cd21bc1de939ec9df5480ee" integrity sha512-isyNax3wXoKaulPDZWHQqbmIx1k2tb9fb3GGDBRxCscfYV2Ch7WxPArBsFEG8s/safwXTT7H4QGhaIkTp9447w== +universalify@^0.1.0, universalify@^0.1.2: + version "0.1.2" + resolved "https://registry.yarnpkg.com/universalify/-/universalify-0.1.2.tgz#b646f69be3942dabcecc9d6639c80dc105efaa66" + integrity sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg== + universalify@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/universalify/-/universalify-2.0.0.tgz#75a4984efedc4b08975c5aeb73f530d02df25717" @@ -8135,10 +12182,18 @@ unpipe@1.0.0, unpipe@~1.0.0: resolved "https://registry.yarnpkg.com/unpipe/-/unpipe-1.0.0.tgz#b2bf4ee8514aae6165b4817829d21b2ef49904ec" integrity sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw= -upath@^2.0.1: - version "2.0.1" - resolved "https://registry.yarnpkg.com/upath/-/upath-2.0.1.tgz#50c73dea68d6f6b990f51d279ce6081665d61a8b" - integrity sha512-1uEe95xksV1O0CYKXo8vQvN1JEbtJp7lb7C5U9HMsIp6IVwntkH/oNUzyVNQSd4S1sYk2FpSSW44FqMc8qee5w== +unset-value@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/unset-value/-/unset-value-1.0.0.tgz#8376873f7d2335179ffb1e6fc3a8ed0dfc8ab559" + integrity sha1-g3aHP30jNRef+x5vw6jtDfyKtVk= + dependencies: + has-value "^0.3.1" + isobject "^3.0.0" + +upath@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/upath/-/upath-1.2.0.tgz#8f66dbcd55a883acdae4408af8b035a5044c1894" + integrity sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg== uri-js@^4.2.2: version "4.4.1" @@ -8147,7 +12202,12 @@ uri-js@^4.2.2: dependencies: punycode "^2.1.0" -url-loader@~4.1.0: +urix@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/urix/-/urix-0.1.0.tgz#da937f7a62e21fec1fd18d49b35c2935067a6c72" + integrity sha1-2pN/emLiH+wf0Y1Js1wpNQZ6bHI= + +url-loader@~4.1.0, url-loader@~4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/url-loader/-/url-loader-4.1.1.tgz#28505e905cae158cf07c92ca622d7f237e70a4e2" integrity sha512-3BTV812+AVHHOJQO8O5MkWgZ5aosP7GnROJwvzLS9hWDj00lZ6Z0wNak423Lp9PBZN05N+Jk/N5Si8jRAlGyWA== @@ -8179,6 +12239,11 @@ url@^0.11.0: punycode "1.3.2" querystring "0.2.0" +use@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/use/-/use-3.1.1.tgz#d50c8cac79a19fbc20f2911f56eb973f4e10070f" + integrity sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ== + util-deprecate@^1.0.1, util-deprecate@^1.0.2, util-deprecate@~1.0.1: version "1.0.2" resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" @@ -8196,17 +12261,31 @@ utils-merge@1.0.1: resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM= -uuid@^3.3.2: +uuid@^3.0.1, uuid@^3.3.2, uuid@^3.3.3: version "3.4.0" resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== +uuid@^8.3.0: + version "8.3.2" + resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" + integrity sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg== + v8-compile-cache@^2.0.3: version "2.3.0" resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz#2de19618c66dc247dcfb6f99338035d8245a2cee" integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA== -validate-npm-package-license@^3.0.1, validate-npm-package-license@^3.0.4: +v8-to-istanbul@^7.0.0: + version "7.1.2" + resolved "https://registry.yarnpkg.com/v8-to-istanbul/-/v8-to-istanbul-7.1.2.tgz#30898d1a7fa0c84d225a2c1434fb958f290883c1" + integrity sha512-TxNb7YEUwkLXCQYeudi6lgQ/SZrzNO4kMdlqVxaZPUIUjCv6iSSypUQX70kNBSERpQ8fk48+d61FXk+tgqcWow== + dependencies: + "@types/istanbul-lib-coverage" "^2.0.1" + convert-source-map "^1.6.0" + source-map "^0.7.3" + +validate-npm-package-license@^3.0.1, validate-npm-package-license@^3.0.3: version "3.0.4" resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== @@ -8231,6 +12310,389 @@ vary@^1, vary@~1.1.2: resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" integrity sha1-IpnwLG3tMNSllhsLn3RSShj2NPw= +vega-canvas@^1.2.5: + version "1.2.6" + resolved "https://registry.yarnpkg.com/vega-canvas/-/vega-canvas-1.2.6.tgz#55e032ce9a62acd17229f6bac66d99db3d6879cd" + integrity sha512-rgeYUpslYn/amIfnuv3Sw6n4BGns94OjjZNtUc9IDji6b+K8LGS/kW+Lvay8JX/oFqtulBp8RLcHN6QjqPLA9Q== + +vega-crossfilter@~4.0.5: + version "4.0.5" + resolved "https://registry.yarnpkg.com/vega-crossfilter/-/vega-crossfilter-4.0.5.tgz#cf6a5fca60821928f976b32f22cf66cfd9cbeeae" + integrity sha512-yF+iyGP+ZxU7Tcj5yBsMfoUHTCebTALTXIkBNA99RKdaIHp1E690UaGVLZe6xde2n5WaYpho6I/I6wdAW3NXcg== + dependencies: + d3-array "^2.7.1" + vega-dataflow "^5.7.3" + vega-util "^1.15.2" + +vega-dataflow@^5.7.3, vega-dataflow@^5.7.4, vega-dataflow@~5.7.4: + version "5.7.4" + resolved "https://registry.yarnpkg.com/vega-dataflow/-/vega-dataflow-5.7.4.tgz#7cafc0a41b9d0b11dd2e34a513f8b7ca345dfd74" + integrity sha512-JGHTpUo8XGETH3b1V892we6hdjzCWB977ybycIu8DPqRoyrZuj6t1fCVImazfMgQD1LAfJlQybWP+alwKDpKig== + dependencies: + vega-format "^1.0.4" + vega-loader "^4.3.2" + vega-util "^1.16.1" + +vega-embed@^6.2.1: + version "6.20.0" + resolved "https://registry.yarnpkg.com/vega-embed/-/vega-embed-6.20.0.tgz#6a35e58695709b2c2d75eb767509498f44b3dc9f" + integrity sha512-CHBBK7g7id351JHHl0nBzjvolN6PpiRJqV9BRFsOvX1EYXRxMCMvz5b0lU+mN6OSdEISI30EmY2ArXEuqjp/6A== + dependencies: + fast-json-patch "^3.1.0" + json-stringify-pretty-compact "^3.0.0" + semver "^7.3.5" + tslib "^2.3.1" + vega-interpreter "^1.0.4" + vega-schema-url-parser "^2.2.0" + vega-themes "^2.10.0" + vega-tooltip "^0.27.0" + +vega-encode@~4.8.3: + version "4.8.3" + resolved "https://registry.yarnpkg.com/vega-encode/-/vega-encode-4.8.3.tgz#b3048fb39845d72f18d8dc302ad697f826e0ff83" + integrity sha512-JoRYtaV2Hs8spWLzTu/IjR7J9jqRmuIOEicAaWj6T9NSZrNWQzu2zF3IVsX85WnrIDIRUDaehXaFZvy9uv9RQg== + dependencies: + d3-array "^2.7.1" + d3-interpolate "^2.0.1" + vega-dataflow "^5.7.3" + vega-scale "^7.0.3" + vega-util "^1.15.2" + +vega-event-selector@^3.0.0, vega-event-selector@~3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/vega-event-selector/-/vega-event-selector-3.0.0.tgz#7b855ac0c3ddb59bc5b5caa0d96dbbc9fbd33a4c" + integrity sha512-Gls93/+7tEJGE3kUuUnxrBIxtvaNeF01VIFB2Q2Of2hBIBvtHX74jcAdDtkh5UhhoYGD8Q1J30P5cqEBEwtPoQ== + +vega-event-selector@~2.0.6: + version "2.0.6" + resolved "https://registry.yarnpkg.com/vega-event-selector/-/vega-event-selector-2.0.6.tgz#6beb00e066b78371dde1a0f40cb5e0bbaecfd8bc" + integrity sha512-UwCu50Sqd8kNZ1X/XgiAY+QAyQUmGFAwyDu7y0T5fs6/TPQnDo/Bo346NgSgINBEhEKOAMY1Nd/rPOk4UEm/ew== + +vega-expression@^5.0.0, vega-expression@~5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/vega-expression/-/vega-expression-5.0.0.tgz#938f26689693a1e0d26716030cdaed43ca7abdfb" + integrity sha512-y5+c2frq0tGwJ7vYXzZcfVcIRF/QGfhf2e+bV1Z0iQs+M2lI1II1GPDdmOcMKimpoCVp/D61KUJDIGE1DSmk2w== + dependencies: + "@types/estree" "^0.0.50" + vega-util "^1.16.0" + +vega-expression@~4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/vega-expression/-/vega-expression-4.0.1.tgz#c03e4fc68a00acac49557faa4e4ed6ac8a59c5fd" + integrity sha512-ZrDj0hP8NmrCpdLFf7Rd/xMUHGoSYsAOTaYp7uXZ2dkEH5x0uPy5laECMc8TiQvL8W+8IrN2HAWCMRthTSRe2Q== + dependencies: + vega-util "^1.16.0" + +vega-force@~4.0.7: + version "4.0.7" + resolved "https://registry.yarnpkg.com/vega-force/-/vega-force-4.0.7.tgz#6dc39ecb7889d9102661244d62fbc8d8714162ee" + integrity sha512-pyLKdwXSZ9C1dVIqdJOobvBY29rLvZjvRRTla9BU/nMwAiAGlGi6WKUFdRGdneyGe3zo2nSZDTZlZM/Z5VaQNA== + dependencies: + d3-force "^2.1.1" + vega-dataflow "^5.7.3" + vega-util "^1.15.2" + +vega-format@^1.0.4, vega-format@~1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/vega-format/-/vega-format-1.0.4.tgz#40c0c252d11128738b845ee73d8173f8064d6626" + integrity sha512-oTAeub3KWm6nKhXoYCx1q9G3K43R6/pDMXvqDlTSUtjoY7b/Gixm8iLcir5S9bPjvH40n4AcbZsPmNfL/Up77A== + dependencies: + d3-array "^2.7.1" + d3-format "^2.0.0" + d3-time-format "^3.0.0" + vega-time "^2.0.3" + vega-util "^1.15.2" + +vega-functions@^5.10.0, vega-functions@^5.12.1, vega-functions@~5.12.1: + version "5.12.1" + resolved "https://registry.yarnpkg.com/vega-functions/-/vega-functions-5.12.1.tgz#b69f9ad4cd9f777dbc942587c02261b2f4cdba2c" + integrity sha512-7cHfcjXOj27qEbh2FTzWDl7FJK4xGcMFF7+oiyqa0fp7BU/wNT5YdNV0t5kCX9WjV7mfJWACKV74usLJbyM6GA== + dependencies: + d3-array "^2.7.1" + d3-color "^2.0.0" + d3-geo "^2.0.1" + vega-dataflow "^5.7.3" + vega-expression "^5.0.0" + vega-scale "^7.1.1" + vega-scenegraph "^4.9.3" + vega-selections "^5.3.1" + vega-statistics "^1.7.9" + vega-time "^2.0.4" + vega-util "^1.16.0" + +vega-geo@~4.3.8: + version "4.3.8" + resolved "https://registry.yarnpkg.com/vega-geo/-/vega-geo-4.3.8.tgz#5629d18327bb4f3700cdf05db4aced0a43abbf4a" + integrity sha512-fsGxV96Q/QRgPqOPtMBZdI+DneIiROKTG3YDZvGn0EdV16OG5LzFhbNgLT5GPzI+kTwgLpAsucBHklexlB4kfg== + dependencies: + d3-array "^2.7.1" + d3-color "^2.0.0" + d3-geo "^2.0.1" + vega-canvas "^1.2.5" + vega-dataflow "^5.7.3" + vega-projection "^1.4.5" + vega-statistics "^1.7.9" + vega-util "^1.15.2" + +vega-hierarchy@~4.0.9: + version "4.0.9" + resolved "https://registry.yarnpkg.com/vega-hierarchy/-/vega-hierarchy-4.0.9.tgz#4b4bafbc181a14a280ecdbee8874c0db7e369f47" + integrity sha512-4XaWK6V38/QOZ+vllKKTafiwL25m8Kd+ebHmDV+Q236ONHmqc/gv82wwn9nBeXPEfPv4FyJw2SRoqa2Jol6fug== + dependencies: + d3-hierarchy "^2.0.0" + vega-dataflow "^5.7.3" + vega-util "^1.15.2" + +vega-interpreter@^1.0.4: + version "1.0.4" + resolved "https://registry.yarnpkg.com/vega-interpreter/-/vega-interpreter-1.0.4.tgz#291ebf85bc2d1c3550a3da22ff75b3ba0d326a39" + integrity sha512-6tpYIa/pJz0cZo5fSxDSkZkAA51pID2LjOtQkOQvbzn+sJiCaWKPFhur8MBqbcmYZ9bnap1OYNwlrvpd2qBLvg== + +vega-label@~1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/vega-label/-/vega-label-1.1.0.tgz#0a11ae3ba18d7aed909c51ec67c2a9dde4426c6f" + integrity sha512-LAThIiDEsZxYvbSkvPLJ93eJF+Ts8RXv1IpBh8gmew8XGmaLJvVkzdsMe7WJJwuaVEsK7ZZFyB/Inkp842GW6w== + dependencies: + vega-canvas "^1.2.5" + vega-dataflow "^5.7.3" + vega-scenegraph "^4.9.2" + vega-util "^1.15.2" + +vega-lite@^5.1.0: + version "5.1.1" + resolved "https://registry.yarnpkg.com/vega-lite/-/vega-lite-5.1.1.tgz#7655a75b657540fae663ca7c6b1ba4c44016007f" + integrity sha512-V085gNkbgbmcVC/Q3dJjmIioxcDicxMHvH0FIKOPxdplzt+qU9xGIhQy7scj0tSMYnmAPCayB5oLkkQXFb6w1w== + dependencies: + "@types/clone" "~2.1.1" + array-flat-polyfill "^1.0.1" + clone "~2.1.2" + fast-deep-equal "~3.1.3" + fast-json-stable-stringify "~2.1.0" + json-stringify-pretty-compact "~3.0.0" + tslib "~2.3.1" + vega-event-selector "~2.0.6" + vega-expression "~4.0.1" + vega-util "~1.16.1" + yargs "~17.1.1" + +vega-loader@^4.3.2, vega-loader@^4.3.3, vega-loader@~4.4.1: + version "4.4.1" + resolved "https://registry.yarnpkg.com/vega-loader/-/vega-loader-4.4.1.tgz#8f9de46202f33659d1a2737f6e322a9fc3364275" + integrity sha512-dj65i4qlNhK0mOmjuchHgUrF5YUaWrYpx0A8kXA68lBk5Hkx8FNRztkcl07CZJ1+8V81ymEyJii9jzGbhEX0ag== + dependencies: + d3-dsv "^2.0.0" + node-fetch "^2.6.1" + topojson-client "^3.1.0" + vega-format "^1.0.4" + vega-util "^1.16.0" + +vega-parser@~6.1.4: + version "6.1.4" + resolved "https://registry.yarnpkg.com/vega-parser/-/vega-parser-6.1.4.tgz#4868e41af2c9645b6d7daeeb205cfad06b9d465c" + integrity sha512-tORdpWXiH/kkXcpNdbSVEvtaxBuuDtgYp9rBunVW9oLsjFvFXbSWlM1wvJ9ZFSaTfx6CqyTyGMiJemmr1QnTjQ== + dependencies: + vega-dataflow "^5.7.3" + vega-event-selector "^3.0.0" + vega-functions "^5.12.1" + vega-scale "^7.1.1" + vega-util "^1.16.0" + +vega-projection@^1.4.5, vega-projection@~1.4.5: + version "1.4.5" + resolved "https://registry.yarnpkg.com/vega-projection/-/vega-projection-1.4.5.tgz#020cb646b4eaae535359da25f4f48eef8d324af2" + integrity sha512-85kWcPv0zrrNfxescqHtSYpRknilrS0K3CVRZc7IYQxnLtL1oma9WEbrSr1LCmDoCP5hl2Z1kKbomPXkrQX5Ag== + dependencies: + d3-geo "^2.0.1" + d3-geo-projection "^3.0.0" + +vega-regression@~1.0.9: + version "1.0.9" + resolved "https://registry.yarnpkg.com/vega-regression/-/vega-regression-1.0.9.tgz#f33da47fe457e03ad134782c11414bcef7b1da82" + integrity sha512-KSr3QbCF0vJEAWFVY2MA9X786oiJncTTr3gqRMPoaLr/Yo3f7OPKXRoUcw36RiWa0WCOEMgTYtM28iK6ZuSgaA== + dependencies: + d3-array "^2.7.1" + vega-dataflow "^5.7.3" + vega-statistics "^1.7.9" + vega-util "^1.15.2" + +vega-runtime@^6.1.3, vega-runtime@~6.1.3: + version "6.1.3" + resolved "https://registry.yarnpkg.com/vega-runtime/-/vega-runtime-6.1.3.tgz#01e18246f7a80cee034a96017ac30113b92c4034" + integrity sha512-gE+sO2IfxMUpV0RkFeQVnHdmPy3K7LjHakISZgUGsDI/ZFs9y+HhBf8KTGSL5pcZPtQsZh3GBQ0UonqL1mp9PA== + dependencies: + vega-dataflow "^5.7.3" + vega-util "^1.15.2" + +vega-scale@^7.0.3, vega-scale@^7.1.1, vega-scale@~7.1.1: + version "7.1.1" + resolved "https://registry.yarnpkg.com/vega-scale/-/vega-scale-7.1.1.tgz#b69a38d1980f6fc1093390f796e556be63fdc808" + integrity sha512-yE0to0prA9E5PBJ/XP77TO0BMkzyUVyt7TH5PAwj+CZT7PMsMO6ozihelRhoIiVcP0Ae/ByCEQBUQkzN5zJ0ZA== + dependencies: + d3-array "^2.7.1" + d3-interpolate "^2.0.1" + d3-scale "^3.2.2" + vega-time "^2.0.4" + vega-util "^1.15.2" + +vega-scenegraph@^4.9.2, vega-scenegraph@^4.9.3, vega-scenegraph@^4.9.4, vega-scenegraph@~4.9.4: + version "4.9.4" + resolved "https://registry.yarnpkg.com/vega-scenegraph/-/vega-scenegraph-4.9.4.tgz#468408c1e89703fa9d3450445daabff623de2757" + integrity sha512-QaegQzbFE2yhYLNWAmHwAuguW3yTtQrmwvfxYT8tk0g+KKodrQ5WSmNrphWXhqwtsgVSvtdZkfp2IPeumcOQJg== + dependencies: + d3-path "^2.0.0" + d3-shape "^2.0.0" + vega-canvas "^1.2.5" + vega-loader "^4.3.3" + vega-scale "^7.1.1" + vega-util "^1.15.2" + +vega-schema-url-parser@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/vega-schema-url-parser/-/vega-schema-url-parser-2.2.0.tgz#a0d1e02915adfbfcb1fd517c8c2ebe2419985c1e" + integrity sha512-yAtdBnfYOhECv9YC70H2gEiqfIbVkq09aaE4y/9V/ovEFmH9gPKaEgzIZqgT7PSPQjKhsNkb6jk6XvSoboxOBw== + +vega-selections@^5.3.1: + version "5.3.1" + resolved "https://registry.yarnpkg.com/vega-selections/-/vega-selections-5.3.1.tgz#af5c3cc6532a55a5b692eb0fcc2a1d8d521605a4" + integrity sha512-cm4Srw1WHjcLGXX7GpxiUlfESv8XPu5b6Vh3mqMDPU94P2FO91SR9gei+EtRdt+KCFgIjr//MnRUjg/hAWwjkQ== + dependencies: + vega-expression "^5.0.0" + vega-util "^1.16.0" + +vega-statistics@^1.7.9, vega-statistics@~1.7.10: + version "1.7.10" + resolved "https://registry.yarnpkg.com/vega-statistics/-/vega-statistics-1.7.10.tgz#4353637402e5e96bff2ebd16bd58e2c15cac3018" + integrity sha512-QLb12gcfpDZ9K5h3TLGrlz4UXDH9wSPyg9LLfOJZacxvvJEPohacUQNrGEAVtFO9ccUCerRfH9cs25ZtHsOZrw== + dependencies: + d3-array "^2.7.1" + +vega-themes@^2.10.0: + version "2.10.0" + resolved "https://registry.yarnpkg.com/vega-themes/-/vega-themes-2.10.0.tgz#82768b14686e3fbfbdab0e77cb63e12c62b4911e" + integrity sha512-prePRUKFUFGWniuZsJOfkdb+27Gwrrm82yAlVuU+912kcknsx1DVmMSg2yF79f4jdtqnAFIGycZgxoj13SEIuQ== + +vega-time@^2.0.3, vega-time@^2.0.4, vega-time@~2.0.4: + version "2.0.4" + resolved "https://registry.yarnpkg.com/vega-time/-/vega-time-2.0.4.tgz#ff308358a831de927caa44e281cdc96f0863ba08" + integrity sha512-U314UDR9+ZlWrD3KBaeH+j/c2WSMdvcZq5yJfFT0yTg1jsBKAQBYFGvl+orackD8Zx3FveHOxx3XAObaQeDX+Q== + dependencies: + d3-array "^2.7.1" + d3-time "^2.0.0" + vega-util "^1.15.2" + +vega-tooltip@^0.27.0: + version "0.27.0" + resolved "https://registry.yarnpkg.com/vega-tooltip/-/vega-tooltip-0.27.0.tgz#e03c150cdec78f68938a0dab5ef67a24e6d685da" + integrity sha512-FRcHNfMNo9D/7an5nZuP6JC2JGEsc85qcGjyMU7VlPpjQj9eBj1P+sZSNbb54Z20g7inVSBRyd8qgNn5EYTxJA== + dependencies: + vega-util "^1.16.0" + +vega-transforms@~4.9.4: + version "4.9.4" + resolved "https://registry.yarnpkg.com/vega-transforms/-/vega-transforms-4.9.4.tgz#5cf6b91bda9f184bbbaba63838be8e5e6a571235" + integrity sha512-JGBhm5Bf6fiGTUSB5Qr5ckw/KU9FJcSV5xIe/y4IobM/i/KNwI1i1fP45LzP4F4yZc0DMTwJod2UvFHGk9plKA== + dependencies: + d3-array "^2.7.1" + vega-dataflow "^5.7.4" + vega-statistics "^1.7.9" + vega-time "^2.0.4" + vega-util "^1.16.1" + +vega-typings@~0.22.0: + version "0.22.1" + resolved "https://registry.yarnpkg.com/vega-typings/-/vega-typings-0.22.1.tgz#287c646cfa93b1822d0fb6ea11d5543632f8b56e" + integrity sha512-88cIrjmoTxo/0nWTf+GuitkFhirHWVWCfymADiCUXt6s9arpQ6XPP5xjrN5KDc0LZd9xr7p4FIiEgADghgLTgw== + dependencies: + vega-event-selector "^3.0.0" + vega-expression "^5.0.0" + vega-util "^1.15.2" + +vega-util@^1.15.2, vega-util@^1.16.0, vega-util@^1.16.1, vega-util@~1.17.0: + version "1.17.0" + resolved "https://registry.yarnpkg.com/vega-util/-/vega-util-1.17.0.tgz#b72ae0baa97f943bf591f8f5bb27ceadf06834ac" + integrity sha512-HTaydZd9De3yf+8jH66zL4dXJ1d1p5OIFyoBzFiOli4IJbwkL1jrefCKz6AHDm1kYBzDJ0X4bN+CzZSCTvNk1w== + +vega-util@~1.16.1: + version "1.16.1" + resolved "https://registry.yarnpkg.com/vega-util/-/vega-util-1.16.1.tgz#992bf3c3b6e145797214d99862841baea417ba39" + integrity sha512-FdgD72fmZMPJE99FxvFXth0IL4BbLA93WmBg/lvcJmfkK4Uf90WIlvGwaIUdSePIsdpkZjBPyQcHMQ8OcS8Smg== + +vega-view-transforms@~4.5.8: + version "4.5.8" + resolved "https://registry.yarnpkg.com/vega-view-transforms/-/vega-view-transforms-4.5.8.tgz#c8dc42c3c7d4aa725d40b8775180c9f23bc98f4e" + integrity sha512-966m7zbzvItBL8rwmF2nKG14rBp7q+3sLCKWeMSUrxoG+M15Smg5gWEGgwTG3A/RwzrZ7rDX5M1sRaAngRH25g== + dependencies: + vega-dataflow "^5.7.3" + vega-scenegraph "^4.9.2" + vega-util "^1.15.2" + +vega-view@~5.10.1: + version "5.10.1" + resolved "https://registry.yarnpkg.com/vega-view/-/vega-view-5.10.1.tgz#b69348bb32a9845a1bd341fdd946df98684fadc3" + integrity sha512-4xvQ5KZcgKdZx1Z7jjenCUumvlyr/j4XcHLRf9gyeFrFvvS596dVpL92V8twhV6O++DmS2+fj+rHagO8Di4nMg== + dependencies: + d3-array "^2.7.1" + d3-timer "^2.0.0" + vega-dataflow "^5.7.3" + vega-format "^1.0.4" + vega-functions "^5.10.0" + vega-runtime "^6.1.3" + vega-scenegraph "^4.9.4" + vega-util "^1.16.1" + +vega-voronoi@~4.1.5: + version "4.1.5" + resolved "https://registry.yarnpkg.com/vega-voronoi/-/vega-voronoi-4.1.5.tgz#e7af574d4c27fd9cb12d70082f12c6f59b80b445" + integrity sha512-950IkgCFLj0zG33EWLAm1hZcp+FMqWcNQliMYt+MJzOD5S4MSpZpZ7K4wp2M1Jktjw/CLKFL9n38JCI0i3UonA== + dependencies: + d3-delaunay "^5.3.0" + vega-dataflow "^5.7.3" + vega-util "^1.15.2" + +vega-wordcloud@~4.1.3: + version "4.1.3" + resolved "https://registry.yarnpkg.com/vega-wordcloud/-/vega-wordcloud-4.1.3.tgz#ce90900333f4e0d3ee706ba4f36bb0905f8b4a9f" + integrity sha512-is4zYn9FMAyp9T4SAcz2P/U/wqc0Lx3P5YtpWKCbOH02a05vHjUQrQ2TTPOuvmMfAEDCSKvbMSQIJMOE018lJA== + dependencies: + vega-canvas "^1.2.5" + vega-dataflow "^5.7.3" + vega-scale "^7.1.1" + vega-statistics "^1.7.9" + vega-util "^1.15.2" + +vega@^5.20.0: + version "5.21.0" + resolved "https://registry.yarnpkg.com/vega/-/vega-5.21.0.tgz#f3d858d7544bfe4ffa3d8cd43d9ea978bf7391e8" + integrity sha512-yqqRa9nAqYoAxe7sVhRpsh0b001fly7Yx05klPkXmrvzjxXd07gClW1mOuGgSnVQqo7jTp/LYgbO1bD37FbEig== + dependencies: + vega-crossfilter "~4.0.5" + vega-dataflow "~5.7.4" + vega-encode "~4.8.3" + vega-event-selector "~3.0.0" + vega-expression "~5.0.0" + vega-force "~4.0.7" + vega-format "~1.0.4" + vega-functions "~5.12.1" + vega-geo "~4.3.8" + vega-hierarchy "~4.0.9" + vega-label "~1.1.0" + vega-loader "~4.4.1" + vega-parser "~6.1.4" + vega-projection "~1.4.5" + vega-regression "~1.0.9" + vega-runtime "~6.1.3" + vega-scale "~7.1.1" + vega-scenegraph "~4.9.4" + vega-statistics "~1.7.10" + vega-time "~2.0.4" + vega-transforms "~4.9.4" + vega-typings "~0.22.0" + vega-util "~1.17.0" + vega-view "~5.10.1" + vega-view-transforms "~4.5.8" + vega-voronoi "~4.1.5" + vega-wordcloud "~4.1.3" + verdaccio-audit@10.0.2: version "10.0.2" resolved "https://registry.yarnpkg.com/verdaccio-audit/-/verdaccio-audit-10.0.2.tgz#736e1d0dd96039a9de32830ea5a295bb9773f7a2" @@ -8308,7 +12770,7 @@ verror@1.10.0: core-util-is "1.0.2" extsprintf "^1.2.0" -w3c-hr-time@^1.0.1: +w3c-hr-time@^1.0.1, w3c-hr-time@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/w3c-hr-time/-/w3c-hr-time-1.0.2.tgz#0a89cdf5cc15822df9c360543676963e0cc308cd" integrity sha512-z8P5DvDNjKDoFIHK7q8r8lackT6l+jo/Ye3HOle7l9nICP9lf1Ci25fy9vHd0JOWewkIFzXIEig3TdKT7JQ5fQ== @@ -8324,6 +12786,20 @@ w3c-xmlserializer@^1.1.2: webidl-conversions "^4.0.2" xml-name-validator "^3.0.0" +w3c-xmlserializer@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/w3c-xmlserializer/-/w3c-xmlserializer-2.0.0.tgz#3e7104a05b75146cc60f564380b7f683acf1020a" + integrity sha512-4tzD0mF8iSiMiNs30BiLO3EpfGLZUT2MSX/G+o7ZywDzliWQ3OPtTZ0PTC3B3ca1UAf4cJMHB+2Bf56EriJuRA== + dependencies: + xml-name-validator "^3.0.0" + +walker@^1.0.7, walker@~1.0.5: + version "1.0.8" + resolved "https://registry.yarnpkg.com/walker/-/walker-1.0.8.tgz#bd498db477afe573dc04185f011d3ab8a8d7653f" + integrity sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ== + dependencies: + makeerror "1.0.12" + warning@^4.0.2, warning@^4.0.3: version "4.0.3" resolved "https://registry.yarnpkg.com/warning/-/warning-4.0.3.tgz#16e9e077eb8a86d6af7d64aa1e05fd85b4678ca3" @@ -8364,12 +12840,32 @@ webidl-conversions@^4.0.2: resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-4.0.2.tgz#a855980b1f0b6b359ba1d5d9fb39ae941faa63ad" integrity sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg== +webidl-conversions@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-5.0.0.tgz#ae59c8a00b121543a2acc65c0434f57b0fc11aff" + integrity sha512-VlZwKPCkYKxQgeSbH5EyngOmRp7Ww7I9rQLERETtf5ofd9pGeswWiOtogpEO850jziPRarreGxn5QIiTqpb2wA== + webidl-conversions@^6.1.0: version "6.1.0" resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-6.1.0.tgz#9111b4d7ea80acd40f5270d666621afa78b69514" integrity sha512-qBIvFLGiBpLjfwmYAaHPXsn+ho5xZnGvyGvsarywGNc8VyQJUMHJ8OBKGGrPER0okBeMDaan4mNBlgBROxuI8w== -webpack-cli@^4.1.0, webpack-cli@^4.8.0: +webpack-bundle-analyzer@^4.1.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/webpack-bundle-analyzer/-/webpack-bundle-analyzer-4.5.0.tgz#1b0eea2947e73528754a6f9af3e91b2b6e0f79d5" + integrity sha512-GUMZlM3SKwS8Z+CKeIFx7CVoHn3dXFcUAjT/dcZQQmfSZGvitPfMob2ipjai7ovFFqPvTqkEZ/leL4O0YOdAYQ== + dependencies: + acorn "^8.0.4" + acorn-walk "^8.0.0" + chalk "^4.1.0" + commander "^7.2.0" + gzip-size "^6.0.0" + lodash "^4.17.20" + opener "^1.5.2" + sirv "^1.0.7" + ws "^7.3.1" + +webpack-cli@^4.1.0, webpack-cli@^4.2.0, webpack-cli@^4.8.0: version "4.9.1" resolved "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-4.9.1.tgz#b64be825e2d1b130f285c314caa3b1ba9a4632b3" integrity sha512-JYRFVuyFpzDxMDB+v/nanUdQYcZtqFPGzmlW4s+UkPMFhSpfRNmf1z4AwYcHJVdvEFAM7FFCQdNTpsBYhDLusQ== @@ -8408,7 +12904,7 @@ webpack-sources@^3.2.0: resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-3.2.1.tgz#251a7d9720d75ada1469ca07dbb62f3641a05b6d" integrity sha512-t6BMVLQ0AkjBOoRTZgqrWm7xbXMBzD+XDq2EZ96+vMfn3qKgsvdXZhbPZ4ElUOpdv4u+iiGe+w3+J75iy/bYGA== -webpack@^5.41.1, webpack@^5.55.1: +webpack@^5.41.1, webpack@^5.55.1, webpack@^5.7.0: version "5.64.0" resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.64.0.tgz#db3e12546f755930ccc9e0e21ba660871940c615" integrity sha512-UclnN24m054HaPC45nmDEosX6yXWD+UGC12YtUs5i356DleAUGMDC9LBAw37xRRfgPKYIdCYjGA7RZ1AA+ZnGg== @@ -8472,7 +12968,7 @@ whatwg-url@^7.0.0: tr46 "^1.0.1" webidl-conversions "^4.0.2" -whatwg-url@^8.4.0: +whatwg-url@^8.0.0, whatwg-url@^8.5.0: version "8.7.0" resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-8.7.0.tgz#656a78e510ff8f3937bc0bcbe9f5c0ac35941b77" integrity sha512-gAojqb/m9Q8a5IV96E3fHJM70AzCkgt4uXYX2O7EmuyOnLrViCQlsEBmF9UQIu3/aeAIp2U17rtbpZWNntQqdg== @@ -8492,6 +12988,11 @@ which-boxed-primitive@^1.0.2: is-string "^1.0.5" is-symbol "^1.0.3" +which-module@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" + integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= + which@^1.2.9, which@^1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" @@ -8518,6 +13019,13 @@ wildcard@^2.0.0: resolved "https://registry.yarnpkg.com/wildcard/-/wildcard-2.0.0.tgz#a77d20e5200c6faaac979e4b3aadc7b3dd7f8fec" integrity sha512-JcKqAHLPxcdb9KM49dufGXn2x3ssnfjbcaQdLlfZsL9rH9wgDQjUtDxbo8NE0F6SFvydeu1VhZe7hZuHsB2/pw== +windows-release@^3.1.0: + version "3.3.3" + resolved "https://registry.yarnpkg.com/windows-release/-/windows-release-3.3.3.tgz#1c10027c7225743eec6b89df160d64c2e0293999" + integrity sha512-OSOGH1QYiW5yVor9TtmXKQvt2vjQqbYS+DqmsZw+r7xDwLXEeT3JGW0ZppFmHx4diyXmxt238KFR3N9jzevBRg== + dependencies: + execa "^1.0.0" + word-wrap@^1.2.3, word-wrap@~1.2.3: version "1.2.3" resolved "https://registry.yarnpkg.com/word-wrap/-/word-wrap-1.2.3.tgz#610636f6b1f703891bd34771ccb17fb93b47079c" @@ -8536,6 +13044,24 @@ worker-loader@^3.0.2: loader-utils "^2.0.0" schema-utils "^3.0.0" +wrap-ansi@^5.1.0: + version "5.1.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-5.1.0.tgz#1fd1f67235d5b6d0fee781056001bfb694c03b09" + integrity sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q== + dependencies: + ansi-styles "^3.2.0" + string-width "^3.0.0" + strip-ansi "^5.0.0" + +wrap-ansi@^6.2.0: + version "6.2.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz#e9393ba07102e6c91a3b221478f0257cd2856e53" + integrity sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + wrap-ansi@^7.0.0: version "7.0.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" @@ -8550,7 +13076,7 @@ wrappy@1: resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= -write-file-atomic@^2.4.2: +write-file-atomic@^2.0.0, write-file-atomic@^2.3.0, write-file-atomic@^2.4.2: version "2.4.3" resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.4.3.tgz#1fd2e9ae1df3e75b8d8c367443c692d4ca81f481" integrity sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ== @@ -8559,7 +13085,7 @@ write-file-atomic@^2.4.2: imurmurhash "^0.1.4" signal-exit "^3.0.2" -write-file-atomic@^3.0.0, write-file-atomic@^3.0.3: +write-file-atomic@^3.0.0: version "3.0.3" resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-3.0.3.tgz#56bd5c5a5c70481cd19c571bd39ab965a5de56e8" integrity sha512-AvHcyZ5JnSfq3ioSyjrBkH9yW4m7Ayk8/9My/DD9onKeu/94fwrMocemO2QAJFAlnnDN+ZDS+ZjAR5ua1/PV/Q== @@ -8569,6 +13095,18 @@ write-file-atomic@^3.0.0, write-file-atomic@^3.0.3: signal-exit "^3.0.2" typedarray-to-buffer "^3.1.5" +write-json-file@^2.2.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/write-json-file/-/write-json-file-2.3.0.tgz#2b64c8a33004d54b8698c76d585a77ceb61da32f" + integrity sha1-K2TIozAE1UuGmMdtWFp3zrYdoy8= + dependencies: + detect-indent "^5.0.0" + graceful-fs "^4.1.2" + make-dir "^1.0.0" + pify "^3.0.0" + sort-keys "^2.0.0" + write-file-atomic "^2.0.0" + write-json-file@^3.2.0: version "3.2.0" resolved "https://registry.yarnpkg.com/write-json-file/-/write-json-file-3.2.0.tgz#65bbdc9ecd8a1458e15952770ccbadfcff5fe62a" @@ -8581,26 +13119,13 @@ write-json-file@^3.2.0: sort-keys "^2.0.0" write-file-atomic "^2.4.2" -write-json-file@^4.3.0: - version "4.3.0" - resolved "https://registry.yarnpkg.com/write-json-file/-/write-json-file-4.3.0.tgz#908493d6fd23225344af324016e4ca8f702dd12d" - integrity sha512-PxiShnxf0IlnQuMYOPPhPkhExoCQuTUNPOa/2JWCYTmBquU9njyyDuwRKN26IZBlp4yn1nt+Agh2HOOBl+55HQ== - dependencies: - detect-indent "^6.0.0" - graceful-fs "^4.1.15" - is-plain-obj "^2.0.0" - make-dir "^3.0.0" - sort-keys "^4.0.0" - write-file-atomic "^3.0.0" - -write-pkg@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/write-pkg/-/write-pkg-4.0.0.tgz#675cc04ef6c11faacbbc7771b24c0abbf2a20039" - integrity sha512-v2UQ+50TNf2rNHJ8NyWttfm/EJUBWMJcx6ZTYZr6Qp52uuegWw/lBkCtCbnYZEmPRNL61m+u67dAmGxo+HTULA== +write-pkg@^3.1.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/write-pkg/-/write-pkg-3.2.0.tgz#0e178fe97820d389a8928bc79535dbe68c2cff21" + integrity sha512-tX2ifZ0YqEFOF1wjRW2Pk93NLsj02+n1UP5RvO6rCs0K6R2g1padvf006cY74PQJKMGS2r42NK7FD0dG6Y6paw== dependencies: sort-keys "^2.0.0" - type-fest "^0.4.1" - write-json-file "^3.2.0" + write-json-file "^2.2.0" ws@^6.2.1: version "6.2.2" @@ -8609,7 +13134,7 @@ ws@^6.2.1: dependencies: async-limiter "~1.0.0" -ws@^7.0.0, ws@^7.4.6: +ws@^7.0.0, ws@^7.3.1, ws@^7.4.6: version "7.5.5" resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.5.tgz#8b4bc4af518cfabd0473ae4f99144287b33eb881" integrity sha512-BAkMFcAzl8as1G/hArkxOxq3G7pjUqQ3gzYbLL0/5zNkph70e+lCoxBGnm6AW1+/aiNeV4fnKqZ8m4GZewmH2w== @@ -8619,7 +13144,12 @@ xml-name-validator@^3.0.0: resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" integrity sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw== -xmlchars@^2.1.1: +xml@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/xml/-/xml-1.0.1.tgz#78ba72020029c5bc87b8a81a3cfcd74b4a2fc1e5" + integrity sha1-eLpyAgApxbyHuKgaPPzXS0ovweU= + +xmlchars@^2.1.1, xmlchars@^2.2.0: version "2.2.0" resolved "https://registry.yarnpkg.com/xmlchars/-/xmlchars-2.2.0.tgz#060fe1bcb7f9c76fe2a17db86a9bc3ab894210cb" integrity sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw== @@ -8663,12 +13193,17 @@ y-websocket@^1.3.15: ws "^6.2.1" y-leveldb "^0.1.0" +y18n@^4.0.0: + version "4.0.3" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.3.tgz#b5f259c82cd6e336921efd7bfd8bf560de9eeedf" + integrity sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ== + y18n@^5.0.5: version "5.0.8" resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== -yallist@^3.0.0, yallist@^3.1.1: +yallist@^3.0.0, yallist@^3.0.2, yallist@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" integrity sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g== @@ -8683,20 +13218,65 @@ yaml@^1.10.0: resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== -yargs-parser@20.2.4: - version "20.2.4" - resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.4.tgz#b42890f14566796f85ae8e3a25290d205f154a54" - integrity sha512-WOkpgNhPTlE73h4VFAFsOnomJVaovO8VqLDzy5saChRBFQFBoMYirowyW+Q9HB4HFF4Z7VZTiG3iSzJJA29yRA== +yargs-parser@^15.0.1: + version "15.0.3" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-15.0.3.tgz#316e263d5febe8b38eef61ac092b33dfcc9b1115" + integrity sha512-/MVEVjTXy/cGAjdtQf8dW3V9b97bPN7rNn8ETj6BmAQL7ibC7O1Q9SPJbGjgh3SlwoBNXMzj/ZGIj8mBgl12YA== + dependencies: + camelcase "^5.0.0" + decamelize "^1.2.0" + +yargs-parser@^18.1.2: + version "18.1.3" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-18.1.3.tgz#be68c4975c6b2abf469236b0c870362fab09a7b0" + integrity sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ== + dependencies: + camelcase "^5.0.0" + decamelize "^1.2.0" yargs-parser@^20.2.2, yargs-parser@^20.2.3: version "20.2.9" resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== -yargs@^16.2.0: - version "16.2.0" - resolved "https://registry.yarnpkg.com/yargs/-/yargs-16.2.0.tgz#1c82bf0f6b6a66eafce7ef30e376f49a12477f66" - integrity sha512-D1mvvtDG0L5ft/jGWkLpG1+m0eQxOfaBvTNELraWj22wSVUMWxZUvYgJYcKh6jGGIkJFhH4IZPQhR4TKpc8mBw== +yargs@^14.2.2: + version "14.2.3" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-14.2.3.tgz#1a1c3edced1afb2a2fea33604bc6d1d8d688a414" + integrity sha512-ZbotRWhF+lkjijC/VhmOT9wSgyBQ7+zr13+YLkhfsSiTriYsMzkTUFP18pFhWwBeMa5gUc1MzbhrO6/VB7c9Xg== + dependencies: + cliui "^5.0.0" + decamelize "^1.2.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 "^15.0.1" + +yargs@^15.4.1: + version "15.4.1" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-15.4.1.tgz#0d87a16de01aee9d8bec2bfbf74f67851730f4f8" + integrity sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A== + dependencies: + cliui "^6.0.0" + decamelize "^1.2.0" + find-up "^4.1.0" + get-caller-file "^2.0.1" + require-directory "^2.1.1" + require-main-filename "^2.0.0" + set-blocking "^2.0.0" + string-width "^4.2.0" + which-module "^2.0.0" + y18n "^4.0.0" + yargs-parser "^18.1.2" + +yargs@~17.1.1: + version "17.1.1" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.1.1.tgz#c2a8091564bdb196f7c0a67c1d12e5b85b8067ba" + integrity sha512-c2k48R0PwKIqKhPMWjeiF6y2xY/gPMUlro0sgxqXpbOIohWiLNXWslsootttv7E1e73QPAMQSg5FeySbVcpsPQ== dependencies: cliui "^7.0.2" escalade "^3.1.1" @@ -8706,6 +13286,21 @@ yargs@^16.2.0: y18n "^5.0.5" yargs-parser "^20.2.2" +yauzl@^2.10.0: + version "2.10.0" + resolved "https://registry.yarnpkg.com/yauzl/-/yauzl-2.10.0.tgz#c7eb17c93e112cb1086fa6d8e51fb0667b79a5f9" + integrity sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk= + dependencies: + buffer-crc32 "~0.2.3" + fd-slicer "~1.1.0" + +yazl@^2.5.1: + version "2.5.1" + resolved "https://registry.yarnpkg.com/yazl/-/yazl-2.5.1.tgz#a3d65d3dd659a5b0937850e8609f22fffa2b5c35" + integrity sha512-phENi2PLiHnHb6QBVot+dJnaAZ0xosj7p3fWl+znIjBDlnMI2PsZCJZ306BPTFOaHf5qdDEI8x5qFrSOBN5vrw== + dependencies: + buffer-crc32 "~0.2.3" + yjs@^13.5.17: version "13.5.20" resolved "https://registry.yarnpkg.com/yjs/-/yjs-13.5.20.tgz#e9e551929813f111c543501cbb3b267319accc0f" From bdb826ee43baa9bf3f49b4cb1df9a2042d3adcab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Collonval?= Date: Mon, 15 Nov 2021 11:14:15 +0100 Subject: [PATCH 03/48] Be sure Reveal layout takes over --- .gitignore | 1 + lab/packages/application/package.json | 5 +- lab/packages/application/src/app/index.ts | 23 +++ lab/packages/application/src/plugins/index.ts | 13 +- lab/packages/application/src/rise-reveal.d.ts | 192 +++++++++++++++++- lab/yarn.lock | 46 ++--- 6 files changed, 243 insertions(+), 37 deletions(-) diff --git a/.gitignore b/.gitignore index 9c92915b..6a8e840f 100644 --- a/.gitignore +++ b/.gitignore @@ -118,3 +118,4 @@ dmypy.json # OSX files .DS_Store rise-reveal/yarn.lock +classic/package-lock.json diff --git a/lab/packages/application/package.json b/lab/packages/application/package.json index 3fb8e302..c17a0040 100644 --- a/lab/packages/application/package.json +++ b/lab/packages/application/package.json @@ -36,15 +36,16 @@ "dependencies": { "@jupyterlab/application": "^3.2.0", "@jupyterlab/apputils": "^3.2.0", - "@jupyterlab/codemirror": "^3.2.0", "@jupyterlab/coreutils": "^5.2.0", "@jupyterlab/docmanager": "^3.2.0", "@jupyterlab/docregistry": "^3.2.0", "@jupyterlab/mathjax2": "^3.2.0", "@jupyterlab/notebook": "^3.2.0", - "@jupyterlab/rendermime": "^3.2.0", + "@jupyterlab/rendermime-interfaces": "^3.2.0", "@jupyterlab/services": "^6.2.0", "@lumino/commands": "^1.17.0", + "@lumino/signaling": "^1.9.0", + "@lumino/messaging": "^1.9.0", "@lumino/widgets": "^1.28.0", "rise-reveal": "file:../../../rise-reveal/export/reveal.js" }, diff --git a/lab/packages/application/src/app/index.ts b/lab/packages/application/src/app/index.ts index 305db409..7017b9cb 100644 --- a/lab/packages/application/src/app/index.ts +++ b/lab/packages/application/src/app/index.ts @@ -8,6 +8,8 @@ import { DocumentRegistry } from '@jupyterlab/docregistry'; import { IRenderMime } from '@jupyterlab/rendermime-interfaces'; import { IIterator, iter } from '@lumino/algorithm'; import { Token } from '@lumino/coreutils'; +import { Message } from '@lumino/messaging'; +import { Signal, ISignal } from '@lumino/signaling'; import { BoxLayout, Widget } from '@lumino/widgets'; /** @@ -18,10 +20,19 @@ export const IRetroShell = new Token('rise-application:IRiseShell'); export class RiseShell extends Widget implements JupyterFrontEnd.IShell { constructor() { super(); + this._updated = new Signal(this); this.layout = new BoxLayout(); this.id = 'main'; this._currentWidget = null; } + + /** + * Signal emitted when the shell is updated. + */ + get updated(): ISignal { + return this._updated; + } + /** * Activates a widget inside the application shell. * @@ -74,7 +85,19 @@ export class RiseShell extends Widget implements JupyterFrontEnd.IShell { return iter((this.layout as BoxLayout).widgets); } + /** + * A message handler invoked on an `'update-request'` message. + * + * #### Notes + * The default implementation of this handler is a no-op. + */ + protected onUpdateRequest(msg: Message): void { + super.onUpdateRequest(msg); + this._updated.emit() + } + private _currentWidget: Widget | null; + private _updated: Signal; } export class RiseApp extends JupyterFrontEnd { diff --git a/lab/packages/application/src/plugins/index.ts b/lab/packages/application/src/plugins/index.ts index 9eec0497..84ff58fc 100644 --- a/lab/packages/application/src/plugins/index.ts +++ b/lab/packages/application/src/plugins/index.ts @@ -5,8 +5,9 @@ import { import { IChangedArgs, PageConfig } from '@jupyterlab/coreutils'; import { IDocumentManager } from '@jupyterlab/docmanager'; import { INotebookModel, NotebookPanel } from '@jupyterlab/notebook'; +import { Signal } from '@lumino/signaling'; import Reveal from 'rise-reveal'; -import { RiseApp } from '../app'; +import { RiseApp, RiseShell } from '../app'; // TODO should we define our own factory? @@ -60,9 +61,8 @@ function startReveal(panel: NotebookPanel): void { const notebook = panel.content; markupSlides(notebook); - const panel_container = document.getElementsByClassName( - 'jp-NotebookPanel' - )[0]; + const panel_container = + document.getElementsByClassName('jp-NotebookPanel')[0]; panel_container.classList.add('reveal'); //console.log("panel_container"); @@ -104,6 +104,11 @@ const opener: JupyterFrontEndPlugin = { if (change.name === 'dirty' && change.newValue === false) { notebookPanel.model?.stateChanged.disconnect(initializeReveal, this); startReveal(notebookPanel); + + Signal.disconnectAll(this); + (app.shell as RiseShell).updated.connect(() => { + Reveal.layout(); + }); } }; notebookPanel.model?.stateChanged.connect(initializeReveal, this); diff --git a/lab/packages/application/src/rise-reveal.d.ts b/lab/packages/application/src/rise-reveal.d.ts index 4be18e64..1f0aef0c 100644 --- a/lab/packages/application/src/rise-reveal.d.ts +++ b/lab/packages/application/src/rise-reveal.d.ts @@ -1 +1,191 @@ -declare module "rise-reveal"; +// Type definitions for Reveal 3.3.0 +// Project: https://github.com/hakimel/reveal.js/ +// Definitions by: robertop87 , Nava2 +// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped + +declare module 'rise-reveal' { + export = Reveal; + + declare var Reveal: RevealStatic; + + interface RevealStatic { + initialize: (config: RevealOptions) => void; + configure: (diff: RevealOptions) => void; + + // Navigation + slide(indexh: number, indexv?: number, f?: number, o?: number): void; + left(): void; + right(): void; + up(): void; + down(): void; + prev(): void; + next(): void; + prevFragment(): boolean; + nextFragment(): boolean; + + // Randomize the order of slides + shuffle(): void; + + // Toogle presentation states + toggleOverview(override?: boolean): void; + togglePause(override?: boolean): void; + toggleAutoSlide(override?: boolean): void; + + // Retrieves the previous and current slide elements + getPreviousSlide(): Element; + getCurrentSlide(): Element; + + getIndices(slide?: Element): { h: number; v: number }; + getProgress(): number; + getTotalSlides(): number; + + // Returns the speaker notes for the current slide + getSlideNotes(slide?: Element): string; + + // States + addEventListener( + type: string, + listener: (event: any) => void, + useCapture?: boolean + ): void; + removeEventListener( + type: string, + listener: (event: any) => void, + useCapture?: boolean + ): void; + + // State Checks + isFirstSlide(): boolean; + isLastSlide(): boolean; + isPaused(): boolean; + isOverview(): boolean; + isAutoSliding(): boolean; + + // undocumented method + layout(): void; + addEventListeners(): void; + removeEventListeners(): void; + getSlide(x: number, y?: number): Element; + getScale(): number; + getConfig(): RevealOptions; + getQueryHash(): any; + setState(state: any): void; + getState(): any; + + // update slides after dynamic changes + sync(): void; + } + + interface RevealOptions { + // Configuration + controls?: boolean; + progress?: boolean; + // https://github.com/hakimel/reveal.js/#slide-number + slideNumber?: boolean | string; + + history?: boolean; + + // https://github.com/hakimel/reveal.js/#keyboard-bindings + keyboard?: any; + overview?: boolean; + center?: boolean; + touch?: boolean; + loop?: boolean; + rtl?: boolean; + shuffle?: boolean; + fragments?: boolean; + embedded?: boolean; + help?: boolean; + showNotes?: boolean; + autoSlide?: number; + autoSlideStoppable?: boolean; + autoSlideMethod?: any; + mouseWheel?: boolean; + hideAddressBar?: boolean; + previewLinks?: boolean; + transition?: string; + transitionSpeed?: string; + backgroundTransition?: string; + viewDistance?: number; + + // https://github.com/hakimel/reveal.js/#parallax-background + // Parallax background image + parallaxBackgroundImage?: string; + + // Parallax background size + parallaxBackgroundSize?: string; // CSS syntax, e.g. "2100px 900px" - currently only pixels are supported (don't use % or auto) + + // Number of pixels to move the parallax background per slide + // - Calculated automatically unless specified + // - Set to 0 to disable movement along an axis + parallaxBackgroundHorizontal?: number; + parallaxBackgroundVertical?: number; + + rollingLinks?: boolean; + theme?: string; + + // Presentation Size + // https://github.com/hakimel/reveal.js/#presentation-size + width?: number | string; + height?: number | string; + margin?: number | string; + minScale?: number | string; + maxScale?: number | string; + + // Dependencies + // https://github.com/hakimel/reveal.js/#dependencies + dependencies?: RevealDependency[]; + + // Exposes the reveal.js API through window.postMessage + postMessage?: boolean; + + // Dispatches all reveal.js events to the parent window through postMessage + postMessageEvents?: boolean; + + // https://github.com/hakimel/reveal.js/#multiplexing + multiplex?: MultiplexConfig; + + // https://github.com/hakimel/reveal.js/#mathjax + math?: MathConfig; + } + + // https://github.com/hakimel/reveal.js/#slide-changed-event + interface SlideEvent { + previousSlide?: Element; + currentSlide: Element; + indexh: number; + indexv?: number; + } + + // https://github.com/hakimel/reveal.js/#fragment-events + interface FragmentEvent { + fragment: Element; + } + + // https://github.com/hakimel/reveal.js/#multiplexing + interface MultiplexConfig { + // Obtained from the socket.io server. Gives this (the master) control of the presentation + secret?: string; + // Obtained from the socket.io server + id: string; + + // Location of socket.io server + url: string; + } + + // https://github.com/hakimel/reveal.js/#mathjax + interface MathConfig { + // Obtained from the socket.io server. Gives this (the master) control of the presentation + mathjax: string; + // Obtained from the socket.io server + config: string; + } + + // https://github.com/hakimel/reveal.js/#dependencies + interface RevealDependency { + src: string; + condition?: () => boolean; + async?: boolean; + callback?: () => void; + } +} diff --git a/lab/yarn.lock b/lab/yarn.lock index 70ecfc26..f85f2743 100644 --- a/lab/yarn.lock +++ b/lab/yarn.lock @@ -689,7 +689,7 @@ "@lumino/widgets" "^1.19.0" react "^17.0.1" -"@jupyterlab/application@^3.0.0", "@jupyterlab/application@^3.2.0", "@jupyterlab/application@^3.2.3": +"@jupyterlab/application@^3.2.0", "@jupyterlab/application@^3.2.3": version "3.2.3" resolved "https://registry.yarnpkg.com/@jupyterlab/application/-/application-3.2.3.tgz#5a19de7a73fbde29c6adb994068193f7e6061b3b" integrity sha512-YcgxgRiYHOaUMbxevcUQn8QP0WN2JsCg4Q7Qtl1JOypLTsvoC66yqTzXcWsR/xtPUB4Ox0ka/EBGRHrH5aHA/g== @@ -739,7 +739,7 @@ "@lumino/widgets" "^1.19.0" es6-promise "~4.2.8" -"@jupyterlab/apputils@^3.0.0", "@jupyterlab/apputils@^3.2.0", "@jupyterlab/apputils@^3.2.3": +"@jupyterlab/apputils@^3.2.0", "@jupyterlab/apputils@^3.2.3": version "3.2.3" resolved "https://registry.yarnpkg.com/@jupyterlab/apputils/-/apputils-3.2.3.tgz#e4732ab6058d492c9dda83452c32d9e6415d370b" integrity sha512-Mar07EgmCqS+Y1xPeAaUOZshEaLCNrIXilcBWyCGYfspvZv7W1ERGYsomy9ZMhlHmEaOcT1n4Y8T/iE6l/0gLQ== @@ -907,7 +907,7 @@ "@jupyterlab/translation" "^3.2.3" codemirror "~5.61.0" -"@jupyterlab/codemirror@^3.0.0", "@jupyterlab/codemirror@^3.2.0", "@jupyterlab/codemirror@^3.2.3": +"@jupyterlab/codemirror@^3.2.3": version "3.2.3" resolved "https://registry.yarnpkg.com/@jupyterlab/codemirror/-/codemirror-3.2.3.tgz#ad0bcf887bfec2db1bafc80b8e459712512d10c3" integrity sha512-PwsxhPINXOW4naMkkQrAxwB/S9kZYEa/2fKetEpGcoI9zX691gxw8Am4fjBo94JBYftw7JG6pNpVcUovm0Q7ZQ== @@ -931,7 +931,7 @@ react "^17.0.1" y-codemirror "^3.0.0" -"@jupyterlab/coreutils@^5.0.0", "@jupyterlab/coreutils@^5.2.0", "@jupyterlab/coreutils@^5.2.3", "@jupyterlab/coreutils@~5.2.0": +"@jupyterlab/coreutils@^5.2.0", "@jupyterlab/coreutils@^5.2.3", "@jupyterlab/coreutils@~5.2.0": version "5.2.3" resolved "https://registry.yarnpkg.com/@jupyterlab/coreutils/-/coreutils-5.2.3.tgz#4b3e55f38d223b34140fb141acfe8884148f5f14" integrity sha512-NoxK4r8VPX1Z/Fe9q+00tGTeY73sywSS0s0HObZCp9a7OScamnpxonHZ5ptms1XXHtr93uLgwkfROpQNFOYF3w== @@ -964,7 +964,7 @@ "@lumino/disposable" "^1.4.3" "@lumino/widgets" "^1.19.0" -"@jupyterlab/docmanager@^3.0.0", "@jupyterlab/docmanager@^3.2.0", "@jupyterlab/docmanager@^3.2.3": +"@jupyterlab/docmanager@^3.2.0", "@jupyterlab/docmanager@^3.2.3": version "3.2.3" resolved "https://registry.yarnpkg.com/@jupyterlab/docmanager/-/docmanager-3.2.3.tgz#8d90313eca400d0a954487d66ed04bb50e8d3d67" integrity sha512-uMgqjxw8XEyYEKfkrgw30qxswRPKCtjOW32JjMCr3obZo2DLbN7AVqcYeQ5DEJCzogBdsPYBcavzm35OScLi1A== @@ -1006,7 +1006,7 @@ y-websocket "^1.3.15" yjs "^13.5.17" -"@jupyterlab/docregistry@^3.0.0", "@jupyterlab/docregistry@^3.2.0", "@jupyterlab/docregistry@^3.2.3": +"@jupyterlab/docregistry@^3.2.0", "@jupyterlab/docregistry@^3.2.3": version "3.2.3" resolved "https://registry.yarnpkg.com/@jupyterlab/docregistry/-/docregistry-3.2.3.tgz#575dbf9cc4a97293bc1d9ae60263c32c8f3e4d74" integrity sha512-wHBetaMVGsw9+ryFDm9GyroveOsTL4HO5Entpjseqa/dDkbIjS9r3f5Q2+lONdmZaCMkBFAZmIZmR4c0bCi8qg== @@ -1155,7 +1155,7 @@ "@jupyterlab/mathjax2" "^3.2.3" "@jupyterlab/rendermime" "^3.2.3" -"@jupyterlab/mathjax2@^3.0.0", "@jupyterlab/mathjax2@^3.2.0", "@jupyterlab/mathjax2@^3.2.3": +"@jupyterlab/mathjax2@^3.2.0", "@jupyterlab/mathjax2@^3.2.3": version "3.2.3" resolved "https://registry.yarnpkg.com/@jupyterlab/mathjax2/-/mathjax2-3.2.3.tgz#6bf1e2b661ea44fee97c0c2a228fbd999d08ef34" integrity sha512-ZFiLyMK6al6KJCqm0MYSqk3TuYZ/qymEvHzhSEhx/qY7F+JBOoc/ndD71vO7UMfJYKgs52bKthQ3zNz7J0VKoA== @@ -1203,7 +1203,7 @@ "@lumino/messaging" "^1.4.3" "@lumino/widgets" "^1.19.0" -"@jupyterlab/notebook@^3.0.0", "@jupyterlab/notebook@^3.2.0", "@jupyterlab/notebook@^3.2.3": +"@jupyterlab/notebook@^3.2.0", "@jupyterlab/notebook@^3.2.3": version "3.2.3" resolved "https://registry.yarnpkg.com/@jupyterlab/notebook/-/notebook-3.2.3.tgz#06f9fd64f7a6f290064734a00fd2c2ec0776bff8" integrity sha512-n9+/q72ev3at/M/e0X22HcxQ9amCdmOmRz8aFqNTTMcJ45/om4oMlkpGoVs0z4Y3gX3OXPCQ/mfuIiPKVXmEAA== @@ -1298,7 +1298,7 @@ "@jupyterlab/rendermime" "^3.2.3" "@jupyterlab/translation" "^3.2.3" -"@jupyterlab/rendermime-interfaces@^3.2.3": +"@jupyterlab/rendermime-interfaces@^3.2.0", "@jupyterlab/rendermime-interfaces@^3.2.3": version "3.2.3" resolved "https://registry.yarnpkg.com/@jupyterlab/rendermime-interfaces/-/rendermime-interfaces-3.2.3.tgz#311bf1461470def3a7e930298e25de7fd71c867b" integrity sha512-NQz/0Iz+E5VlbffrmtLENXZCAMU8ihZSz4PYhQRFMEkpsrpRelHLxxG+0vSeZpWG94abSuboSs5tgIUFGPNf7A== @@ -1307,7 +1307,7 @@ "@lumino/coreutils" "^1.5.3" "@lumino/widgets" "^1.19.0" -"@jupyterlab/rendermime@^3.0.0", "@jupyterlab/rendermime@^3.2.0", "@jupyterlab/rendermime@^3.2.3": +"@jupyterlab/rendermime@^3.2.3": version "3.2.3" resolved "https://registry.yarnpkg.com/@jupyterlab/rendermime/-/rendermime-3.2.3.tgz#6aea8d7c65248c4042081f6110fd67d885692eb1" integrity sha512-/pciOXHkU3HyhkJT8EuRQgWa6Cc248D41KH6IqyiLQv5DHi/wYWkXXBZhiVPX/gDkT1owf5Wr3i5h/NbMfozEw== @@ -1328,7 +1328,7 @@ lodash.escape "^4.0.1" marked "^2.0.0" -"@jupyterlab/services@^6.0.0", "@jupyterlab/services@^6.2.0", "@jupyterlab/services@^6.2.3": +"@jupyterlab/services@^6.2.0", "@jupyterlab/services@^6.2.3": version "6.2.3" resolved "https://registry.yarnpkg.com/@jupyterlab/services/-/services-6.2.3.tgz#3ed5620d3129703bfbf6151953bcb8f9db52a6a4" integrity sha512-ckhZfBmveQzQnsGcf9Ka6A1Rr+Lj5PSzn6yHQktMdP8PXdTag4y3IIV/6MAtNAnuKrbArwUrHGiSmUtZD7lylA== @@ -1423,7 +1423,7 @@ "@jupyterlab/apputils" "^3.2.3" "@jupyterlab/translation" "^3.2.3" -"@jupyterlab/theme-light-extension@^3.0.0", "@jupyterlab/theme-light-extension@^3.2.0": +"@jupyterlab/theme-light-extension@^3.2.0": version "3.2.3" resolved "https://registry.yarnpkg.com/@jupyterlab/theme-light-extension/-/theme-light-extension-3.2.3.tgz#44796c436e045e90b49a67b03c1a664095d4f328" integrity sha512-qpxl+bu76ydQ+qz31GecpWOB6LFwEURmjo4i/sDuhdZ2dehBzctSpfpuJyGfhfsse5DFO/mFNwX/RkqdTlts8A== @@ -2234,7 +2234,7 @@ resolved "https://registry.yarnpkg.com/@lumino/keyboard/-/keyboard-1.8.1.tgz#e7850e2fb973fbb4c6e737ca8d9307f2dc3eb74b" integrity sha512-8x0y2ZQtEvOsblpI2gfTgf+gboftusP+5aukKEsgNQtzFl28RezQXEOSVd8iD3K6+Q1MaPQF0OALYP0ASqBjBg== -"@lumino/messaging@^1.10.1", "@lumino/messaging@^1.4.3": +"@lumino/messaging@^1.10.1", "@lumino/messaging@^1.4.3", "@lumino/messaging@^1.9.0": version "1.10.1" resolved "https://registry.yarnpkg.com/@lumino/messaging/-/messaging-1.10.1.tgz#b29575cca46e2f23b84626b793ec8e2be46a53ba" integrity sha512-XZSdt9ih94rdeeLL0cryUw6HHD51D7TP8c+MFf+YRF6VKwOFB9RoajfQWadeqpmH+schTs3EsrFfA9KHduzC7w== @@ -2256,7 +2256,7 @@ resolved "https://registry.yarnpkg.com/@lumino/properties/-/properties-1.8.1.tgz#47eb8516e92c987dcb2c404db83a258159efec3d" integrity sha512-O+CCcAqP64Di32DUZ4Jqq0DtUyE5RJREN5vbkgGZGu+WauJ/RYoiLDe1ubbAeSaHk71OrS60ZBV7QyC8ZaBVsA== -"@lumino/signaling@^1.10.1", "@lumino/signaling@^1.4.3": +"@lumino/signaling@^1.10.1", "@lumino/signaling@^1.4.3", "@lumino/signaling@^1.9.0": version "1.10.1" resolved "https://registry.yarnpkg.com/@lumino/signaling/-/signaling-1.10.1.tgz#c8a1cb5b661b6744ea817c99c758fdc897847c26" integrity sha512-GZVbX4cfk/ZqLwkemPD/NwqToaTL/6q7qdLpEhgkiPlaH1S5/V7fDpP7N1uFy4n3BDITId8cpYgH/Ds32Mdp3A== @@ -2528,13 +2528,6 @@ resolved "https://registry.yarnpkg.com/@types/clone/-/clone-2.1.1.tgz#9b880d0ce9b1f209b5e0bd6d9caa38209db34024" integrity sha512-BZIU34bSYye0j/BFcPraiDZ5ka6MJADjcDVELGf7glr9K+iE8NYVjFslJFVWzskSxkLLyCrSPScE82/UUoBSvg== -"@types/codemirror@^0.0.109": - version "0.0.109" - resolved "https://registry.yarnpkg.com/@types/codemirror/-/codemirror-0.0.109.tgz#89d575ff1c7b462c4c3b8654f8bb38e5622e9036" - integrity sha512-cSdiHeeLjvGn649lRTNeYrVCDOgDrtP+bDDSFDd1TF+i0jKGPDRozno2NOJ9lTniso+taiv4kiVS8dgM8Jm5lg== - dependencies: - "@types/tern" "*" - "@types/dom4@^2.0.1": version "2.0.2" resolved "https://registry.yarnpkg.com/@types/dom4/-/dom4-2.0.2.tgz#6495303f049689ce936ed328a3e5ede9c51408ee" @@ -2677,13 +2670,6 @@ resolved "https://registry.yarnpkg.com/@types/stack-utils/-/stack-utils-2.0.1.tgz#20f18294f797f2209b5f65c8e3b5c8e8261d127c" integrity sha512-Hl219/BT5fLAaz6NDkSuhzasy49dwQS/DSdu4MdggFB8zcXv7vflBI3xp7FEmkmdDkBUI2bPUNeMttp2knYdxw== -"@types/tern@*": - version "0.23.4" - resolved "https://registry.yarnpkg.com/@types/tern/-/tern-0.23.4.tgz#03926eb13dbeaf3ae0d390caf706b2643a0127fb" - integrity sha512-JAUw1iXGO1qaWwEOzxTKJZ/5JxVeON9kvGZ/osgZaJImBnyjyn0cjovPsf6FNLmyGY8Vw9DoXZCMlfMkMwHRWg== - dependencies: - "@types/estree" "*" - "@types/webpack-sources@^0.1.5": version "0.1.9" resolved "https://registry.yarnpkg.com/@types/webpack-sources/-/webpack-sources-0.1.9.tgz#da69b06eb34f6432e6658acb5a6893c55d983920" @@ -12865,7 +12851,7 @@ webpack-bundle-analyzer@^4.1.0: sirv "^1.0.7" ws "^7.3.1" -webpack-cli@^4.1.0, webpack-cli@^4.2.0, webpack-cli@^4.8.0: +webpack-cli@^4.1.0, webpack-cli@^4.2.0: version "4.9.1" resolved "https://registry.yarnpkg.com/webpack-cli/-/webpack-cli-4.9.1.tgz#b64be825e2d1b130f285c314caa3b1ba9a4632b3" integrity sha512-JYRFVuyFpzDxMDB+v/nanUdQYcZtqFPGzmlW4s+UkPMFhSpfRNmf1z4AwYcHJVdvEFAM7FFCQdNTpsBYhDLusQ== @@ -12904,7 +12890,7 @@ webpack-sources@^3.2.0: resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-3.2.1.tgz#251a7d9720d75ada1469ca07dbb62f3641a05b6d" integrity sha512-t6BMVLQ0AkjBOoRTZgqrWm7xbXMBzD+XDq2EZ96+vMfn3qKgsvdXZhbPZ4ElUOpdv4u+iiGe+w3+J75iy/bYGA== -webpack@^5.41.1, webpack@^5.55.1, webpack@^5.7.0: +webpack@^5.41.1, webpack@^5.7.0: version "5.64.0" resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.64.0.tgz#db3e12546f755930ccc9e0e21ba660871940c615" integrity sha512-UclnN24m054HaPC45nmDEosX6yXWD+UGC12YtUs5i356DleAUGMDC9LBAw37xRRfgPKYIdCYjGA7RZ1AA+ZnGg== From ecedeb9419997305a417b6be60dd88fb7e125237 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Collonval?= Date: Mon, 15 Nov 2021 11:26:59 +0100 Subject: [PATCH 04/48] Pass notebook path as part of URL --- lab/rise/app.py | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/lab/rise/app.py b/lab/rise/app.py index 7dcf0790..0afe13fc 100644 --- a/lab/rise/app.py +++ b/lab/rise/app.py @@ -1,8 +1,10 @@ import os from os.path import join as pjoin +from pathlib import Path +from typing import Optional -from jupyter_server.base.handlers import JupyterHandler +from jupyter_server.base.handlers import JupyterHandler, path_regex from jupyter_server.extension.handler import ( ExtensionHandlerJinjaMixin, ExtensionHandlerMixin, @@ -25,7 +27,7 @@ class RiseHandler( ExtensionHandlerJinjaMixin, ExtensionHandlerMixin, JupyterHandler ): - def get_page_config(self): + def get_page_config(self, notebook_path: Optional[str] = None): config = LabConfig() app = self.extensionapp base_url = self.settings.get("base_url") @@ -37,7 +39,7 @@ def get_page_config(self): "token": self.settings["token"], "fullStaticUrl": ujoin(self.base_url, "static", self.name), "frontendUrl": ujoin(self.base_url, "rise/"), - 'notebookPath': 'test.ipynb', + 'notebookPath': notebook_path, } mathjax_config = self.settings.get("mathjax_config", "TeX-AMS_HTML-full,Safe") @@ -75,14 +77,18 @@ def get_page_config(self): return page_config @web.authenticated - def get(self): + def get(self, path: str = None): + nb_path = Path(path) + if nb_path.suffix != '.ipynb': + raise web.HTTPError(404, f"Only notebook files can be opened with RISE; got {path}") + return self.write( self.render_template( "index.html", static=self.static_url, base_url=self.base_url, token=self.settings["token"], - page_config=self.get_page_config() + page_config=self.get_page_config(path) ) ) @@ -104,7 +110,7 @@ class RiseApp(LabServerApp): subcommands = {} def initialize_handlers(self): - self.handlers.append(("/rise", RiseHandler)) + self.handlers.append((f"/rise{path_regex}", RiseHandler)) super().initialize_handlers() def initialize_templates(self): From a152583fc88545c5cd74ded0aa3cec4ae5dccbe5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Collonval?= Date: Mon, 15 Nov 2021 11:56:14 +0100 Subject: [PATCH 05/48] Fix loading included files --- lab/rise/app.py | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/lab/rise/app.py b/lab/rise/app.py index 0afe13fc..386dec49 100644 --- a/lab/rise/app.py +++ b/lab/rise/app.py @@ -79,8 +79,8 @@ def get_page_config(self, notebook_path: Optional[str] = None): @web.authenticated def get(self, path: str = None): nb_path = Path(path) - if nb_path.suffix != '.ipynb': - raise web.HTTPError(404, f"Only notebook files can be opened with RISE; got {path}") + if nb_path.is_dir(): # TODO is it enough to support Jupytext? or should we filter the `suffix` + raise web.HTTPError(404, f"Only files can be opened with RISE; got {path}") return self.write( self.render_template( @@ -100,6 +100,7 @@ class RiseApp(LabServerApp): app_version = version extension_url = "/rise" default_url = "/rise" + file_url_prefix = "/rise" load_other_extensions = True app_dir = app_dir app_settings_dir = pjoin(app_dir, "settings") From 94069ca5f9967adc5f7c7916a553c737e0d3b29c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Collonval?= Date: Mon, 15 Nov 2021 11:56:27 +0100 Subject: [PATCH 06/48] Add widgets test case --- examples/widgets.ipynb | 151 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 151 insertions(+) create mode 100644 examples/widgets.ipynb diff --git a/examples/widgets.ipynb b/examples/widgets.ipynb new file mode 100644 index 00000000..5b0d56eb --- /dev/null +++ b/examples/widgets.ipynb @@ -0,0 +1,151 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "id": "2640fd82-24a2-48c1-930d-fb547c031abc", + "metadata": { + "slideshow": { + "slide_type": "slide" + }, + "tags": [] + }, + "source": [ + "# RISE with widgets\n", + "\n", + "This demonstrates the usage of RISE with widgets." + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "id": "37621576-aae0-4acb-a3a5-eb9f7eee8e80", + "metadata": {}, + "outputs": [], + "source": [ + "import numpy as np\n", + "import bqplot.pyplot as plt\n", + "import ipywidgets as ipy" + ] + }, + { + "cell_type": "markdown", + "id": "65c191e3-e5a1-455d-90fe-a9f6c93c159c", + "metadata": { + "slideshow": { + "slide_type": "slide" + }, + "tags": [] + }, + "source": [ + "## ipywidgets" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "id": "e5a0043c-24ce-44a7-8174-84c38326b5e4", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "19fdf6cee8624ee9a831b2a3eced587e", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + "IntSlider(value=0, description='This is Label')" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "ipy.IntSlider(description=\"This is Label\")" + ] + }, + { + "cell_type": "markdown", + "id": "b4444583-af5c-4a98-a689-f42e30295054", + "metadata": { + "slideshow": { + "slide_type": "slide" + }, + "tags": [] + }, + "source": [ + "## bqplot" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "id": "af4d1af3-4c6c-4ab1-a0b0-518ae982d216", + "metadata": {}, + "outputs": [], + "source": [ + "size = 100\n", + "scale = 100.\n", + "np.random.seed(0)\n", + "x_data = np.arange(size)\n", + "y_data = np.cumsum(np.random.randn(size) * scale)" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "id": "a157ff3a-d7d4-4be6-bfef-34772606666f", + "metadata": { + "tags": [] + }, + "outputs": [ + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "31aeb55c051f4cf6a45efcb6b5a86faa", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + "Figure(axes=[Axis(scale=LinearScale()), Axis(orientation='vertical', scale=LinearScale())], fig_margin={'top':…" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "fig = plt.figure()\n", + "axes_options = {'x': {'label': 'Date', 'tick_format': '%m/%d'},\n", + " 'y': {'label': 'Price', 'tick_format': '0.0f'}}\n", + "\n", + "plt.scatter(x_data, y_data, colors=['red'], stroke='black')\n", + "fig" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.7" + } + }, + "nbformat": 4, + "nbformat_minor": 5 +} From 06177d7c252963eba4119bc24e6ce8562678cdd6 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Collonval?= Date: Mon, 15 Nov 2021 12:17:52 +0100 Subject: [PATCH 07/48] Reduce mandatory plugin list --- lab/app/index.js | 61 ++++++++++++++++++++++-------------------------- 1 file changed, 28 insertions(+), 33 deletions(-) diff --git a/lab/app/index.js b/lab/app/index.js index 9235ed2d..2cb2e354 100644 --- a/lab/app/index.js +++ b/lab/app/index.js @@ -90,45 +90,40 @@ async function main() { '@jupyterlab/application-extension:context-menu' ].includes(id) ), - require('@jupyterlab/apputils-extension'), - // .default.filter(({ id }) => - // [ - // '@jupyterlab/apputils-extension:palette', - // '@jupyterlab/apputils-extension:settings', - // '@jupyterlab/apputils-extension:state', - // '@jupyterlab/apputils-extension:themes', - // '@jupyterlab/apputils-extension:themes-palette-menu' - // ].includes(id) - // ), - require('@jupyterlab/codemirror-extension'), - // .default.filter(({ id }) => - // [ - // '@jupyterlab/codemirror-extension:services', - // '@jupyterlab/codemirror-extension:codemirror' - // ].includes(id) - // ), - require('@jupyterlab/docmanager-extension'), - // .default.filter(({ id }) => - // [ - // '@jupyterlab/docmanager-extension:plugin', - // '@jupyterlab/docmanager-extension:download' - // ].includes(id) - // ), + require('@jupyterlab/apputils-extension').default.filter(({ id }) => + [ + '@jupyter/apputils-extension:sanitizer', + '@jupyterlab/apputils-extension:settings', + '@jupyterlab/apputils-extension:splash', + '@jupyterlab/apputils-extension:sessionDialogs', + '@jupyterlab/apputils-extension:themes' + ].includes(id) + ), + require('@jupyterlab/codemirror-extension').default.filter(({ id }) => + [ + '@jupyterlab/codemirror-extension:services', + '@jupyterlab/codemirror-extension:codemirror' + ].includes(id) + ), + require('@jupyterlab/docmanager-extension').default.filter(({ id }) => + ['@jupyterlab/docmanager-extension:plugin'].includes(id) + ), require('@jupyterlab/docprovider-extension'), require('@jupyterlab/mathjax2-extension'), - require('@jupyterlab/notebook-extension'), - // .default.filter(({ id }) => - // [ - // '@jupyterlab/notebook-extension:factory', - // '@jupyterlab/notebook-extension:tracker', - // '@jupyterlab/notebook-extension:widget-factory' - // ].includes(id) - // ), + require('@jupyterlab/notebook-extension').default.filter(({ id }) => + [ + '@jupyterlab/notebook-extension:factory', + '@jupyterlab/notebook-extension:tracker', + '@jupyterlab/notebook-extension:widget-factory' + ].includes(id) + ), require('@jupyterlab/rendermime-extension'), require('@jupyterlab/shortcuts-extension'), require('@jupyterlab/theme-light-extension'), require('@jupyterlab/theme-dark-extension'), - require('@jupyterlab/translation-extension') + require('@jupyterlab/translation-extension').default.filter(({ id }) => + ['@jupyterlab/translation:translator'].includes(id) + ) ]; /** From d792bc5aa4470ae161115f67df773567b5e52a45 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Collonval?= Date: Mon, 15 Nov 2021 15:14:15 +0100 Subject: [PATCH 08/48] Add JupyterLab extension --- lab/app/index.js | 1 - lab/packages/extension/package.json | 36 +++++++++--- lab/packages/extension/schema/plugin.json | 21 +++++++ lab/packages/extension/src/icons.ts | 5 ++ lab/packages/extension/src/index.ts | 71 ++++++++++++++++++++++- lab/packages/extension/src/svg.d.ts | 13 +++++ lab/packages/extension/style/rise.svg | 5 ++ lab/rise/__init__.py | 10 ++-- lab/setup.py | 13 ++--- lab/yarn.lock | 10 ++-- 10 files changed, 154 insertions(+), 31 deletions(-) create mode 100644 lab/packages/extension/schema/plugin.json create mode 100644 lab/packages/extension/src/icons.ts create mode 100644 lab/packages/extension/src/svg.d.ts create mode 100644 lab/packages/extension/style/rise.svg diff --git a/lab/app/index.js b/lab/app/index.js index 2cb2e354..9ba5e933 100644 --- a/lab/app/index.js +++ b/lab/app/index.js @@ -81,7 +81,6 @@ async function main() { let baseMods = [ // rise plugins rise.default, - require('rise-jupyterlab'), // @jupyterlab plugins require('@jupyterlab/application-extension').default.filter(({ id }) => diff --git a/lab/packages/extension/package.json b/lab/packages/extension/package.json index d1167ab4..aa74fd5c 100644 --- a/lab/packages/extension/package.json +++ b/lab/packages/extension/package.json @@ -13,11 +13,11 @@ }, "license": "BSD-3-Clause", "author": { - "name": "Frederic Collonval", - "email": "" + "name": "Frederic Collonval" }, "files": [ "lib/**/*.{d.ts,eot,gif,html,jpg,js,js.map,json,png,svg,woff2,ttf}", + "schema/*.json", "style/**/*.{css,js,eot,gif,html,jpg,json,png,svg,woff2,ttf}" ], "main": "lib/index.js", @@ -28,17 +28,33 @@ "url": "https://github.com/damianavila/RISE.git" }, "scripts": { - "build": "tsc -b", - "build:prod": "tsc -b", - "clean": "rimraf lib tsconfig.tsbuildinfo", - "prepublishOnly": "npm run build", - "watch": "tsc -b --watch" + "build": "jlpm run build:lib && jlpm run build:labextension:dev", + "build:labextension": "jupyter labextension build .", + "build:labextension:dev": "jupyter labextension build --development True .", + "build:lib": "tsc", + "build:prod": "jlpm run build:lib && jlpm run build:labextension", + "clean": "jlpm run clean:lib && jlpm run clean:labextension", + "clean:labextension": "rimraf ../../rise/labextension", + "clean:lib": "rimraf lib tsconfig.tsbuildinfo", + "watch": "run-p watch:src watch:labextension", + "watch:labextension": "jupyter labextension watch .", + "watch:src": "tsc -w" }, "dependencies": { - "@jupyterlab/application": "^3.2.0" + "@jupyterlab/application": "^3.2.0", + "@jupyterlab/apputils": "^3.2.0", + "@jupyterlab/coreutils": "^5.2.0", + "@jupyterlab/docregistry": "^3.2.0", + "@jupyterlab/mainmenu": "^3.2.0", + "@jupyterlab/notebook": "^3.2.0", + "@jupyterlab/translation": "^3.2.0", + "@jupyterlab/ui-components": "^3.2.0", + "@lumino/commands": "^1.15.0", + "@lumino/disposable": "^1.7.0" }, "devDependencies": { + "@jupyterlab/builder": "^3.2.0", "rimraf": "~3.0.0", "typescript": "~4.1.3" }, @@ -51,6 +67,8 @@ "access": "public" }, "jupyterlab": { - "extension": true + "extension": true, + "outputDir": "../../rise/labextension", + "schemaDir": "schema" } } diff --git a/lab/packages/extension/schema/plugin.json b/lab/packages/extension/schema/plugin.json new file mode 100644 index 00000000..22459830 --- /dev/null +++ b/lab/packages/extension/schema/plugin.json @@ -0,0 +1,21 @@ +{ + "title": "RISE", + "description": "RISE settings.", + "jupyter.lab.setting-icon-label": "RISE slideshow", + "jupyter.lab.menus": { + "main": [ + { + "id": "jp-mainmenu-view", + "items": [ + { "type": "separator" }, + { + "command": "rise-jupyterlab:open" + }, + { "type": "separator" } + ] + } + ] + }, + "type": "object", + "additionalProperties": false +} diff --git a/lab/packages/extension/src/icons.ts b/lab/packages/extension/src/icons.ts new file mode 100644 index 00000000..2750ed5a --- /dev/null +++ b/lab/packages/extension/src/icons.ts @@ -0,0 +1,5 @@ +import { LabIcon } from '@jupyterlab/ui-components'; + +import RISESvg from '../style/rise.svg'; + +export const RISEIcon = new LabIcon({ name: 'RISE', svgstr: RISESvg }); diff --git a/lab/packages/extension/src/index.ts b/lab/packages/extension/src/index.ts index 0dc2df4e..b8dba36d 100644 --- a/lab/packages/extension/src/index.ts +++ b/lab/packages/extension/src/index.ts @@ -3,14 +3,81 @@ import { JupyterFrontEndPlugin } from '@jupyterlab/application'; +import { CommandToolbarButton, ICommandPalette } from '@jupyterlab/apputils'; + +import { PageConfig } from '@jupyterlab/coreutils'; + +import { INotebookTracker, NotebookPanel } from '@jupyterlab/notebook'; + +import { ITranslator } from '@jupyterlab/translation'; + +import { RISEIcon } from './icons'; + +/** + * Command IDs namespace for JupyterLab RISE extension + */ +namespace CommandIDs { + export const openRise = 'rise-jupyterlab:open'; +} + /** * Open the notebook with RISE. */ const plugin: JupyterFrontEndPlugin = { id: 'rise-jupyterlab:plugin', autoStart: true, - activate: (app: JupyterFrontEnd) => { - console.log('rise-jupyterlab extension activated'); + requires: [ITranslator], + optional: [INotebookTracker, ICommandPalette], + activate: ( + app: JupyterFrontEnd, + translator: ITranslator, + notebookTracker: INotebookTracker | null, + palette: ICommandPalette | null + ) => { + if (!notebookTracker) { + return; + } + + const { commands, shell } = app; + const baseUrl = PageConfig.getBaseUrl(); + const trans = translator.load('rise'); + + commands.addCommand(CommandIDs.openRise, { + label: args => + !!args.toolbar ? '' : trans.__('Open as Reveal Slideshow'), + caption: trans.__('Open the current notebook as an RevealJS slideshow.'), + icon: RISEIcon, + execute: () => { + const current = notebookTracker.currentWidget; + if (!current) { + return; + } + window.open(`${baseUrl}rise/${current.context.path}`); + }, + isEnabled: () => + notebookTracker.currentWidget !== null && + notebookTracker.currentWidget === shell.currentWidget + }); + + notebookTracker.widgetAdded.connect( + async (sender: INotebookTracker, panel: NotebookPanel) => { + panel.toolbar.insertBefore( + 'kernelName', + 'RISE-button', + new CommandToolbarButton({ + commands, + id: CommandIDs.openRise, + args: { toolbar: true } + }) + ); + await panel.context.ready; + commands.notifyCommandChanged(); + } + ); + + if (palette) { + palette.addItem({ command: CommandIDs.openRise, category: 'Other' }); + } } }; diff --git a/lab/packages/extension/src/svg.d.ts b/lab/packages/extension/src/svg.d.ts new file mode 100644 index 00000000..1ee6c9cc --- /dev/null +++ b/lab/packages/extension/src/svg.d.ts @@ -0,0 +1,13 @@ +// Copyright (c) Jupyter Development Team. +// Distributed under the terms of the Modified BSD License. + +// including this file in a package allows for the use of import statements +// with svg files. Example: `import xSvg from 'path/xSvg.svg'` + +// for use with raw-loader in Webpack. +// The svg will be imported as a raw string + +declare module '*.svg' { + const value: string; + export default value; +} diff --git a/lab/packages/extension/style/rise.svg b/lab/packages/extension/style/rise.svg new file mode 100644 index 00000000..b7466ccd --- /dev/null +++ b/lab/packages/extension/style/rise.svg @@ -0,0 +1,5 @@ + + + + \ No newline at end of file diff --git a/lab/rise/__init__.py b/lab/rise/__init__.py index 87ca37c5..b0700a75 100644 --- a/lab/rise/__init__.py +++ b/lab/rise/__init__.py @@ -15,8 +15,8 @@ def _jupyter_server_extension_points(): return [{"module": "rise", "app": RiseApp}] -# def _jupyter_labextension_paths(): -# return [{ -# 'src': 'labextension', -# 'dest': '@retrolab/lab-extension' -# }] +def _jupyter_labextension_paths(): + return [{ + 'src': 'labextension', + 'dest': 'rise-jupyterlab' + }] diff --git a/lab/setup.py b/lab/setup.py index afac1f6e..c5cbe792 100644 --- a/lab/setup.py +++ b/lab/setup.py @@ -22,15 +22,10 @@ labext_name = "rise-jupyterlab" -# data_files_spec = [ -# ("share/jupyter/labextensions/%s" % labext_name, str(lab_path.relative_to(HERE)), "**"), -# ("share/jupyter/labextensions/%s" % labext_name, str("."), "install.json"), -# ("etc/jupyter/jupyter_server_config.d", -# "jupyter-config/server-config", "rise_jupyterlab.json"), -# # For backward compatibility with notebook server -# ("etc/jupyter/jupyter_notebook_config.d", -# "jupyter-config/nb-config", "rise_jupyterlab.json"), -# ] +data_files_spec = [ + ("share/jupyter/labextensions/%s" % labext_name, str(lab_path.relative_to(HERE)), "**"), + ("share/jupyter/labextensions/%s" % labext_name, str("."), "install.json"), +] long_description = (HERE / "README.md").read_text() diff --git a/lab/yarn.lock b/lab/yarn.lock index f85f2743..105b040d 100644 --- a/lab/yarn.lock +++ b/lab/yarn.lock @@ -1131,7 +1131,7 @@ "@lumino/signaling" "^1.4.3" "@lumino/widgets" "^1.19.0" -"@jupyterlab/mainmenu@^3.2.3": +"@jupyterlab/mainmenu@^3.2.0", "@jupyterlab/mainmenu@^3.2.3": version "3.2.3" resolved "https://registry.yarnpkg.com/@jupyterlab/mainmenu/-/mainmenu-3.2.3.tgz#621eb93ad2131332cd531a6f4fb95389ee82aca8" integrity sha512-OvbqhnX2OVabSoQAwlhar63EwTsLT5MkwGnlHXpuLTk58Ihrb1QNnzvI8Nhoau7OnGazsJNjevD7taviyY2nNw== @@ -1443,7 +1443,7 @@ "@jupyterlab/settingregistry" "^3.2.3" "@jupyterlab/translation" "^3.2.3" -"@jupyterlab/translation@^3.2.3": +"@jupyterlab/translation@^3.2.0", "@jupyterlab/translation@^3.2.3": version "3.2.3" resolved "https://registry.yarnpkg.com/@jupyterlab/translation/-/translation-3.2.3.tgz#d50c97eb3c5dd9c4896b46158669f8fbc958d007" integrity sha512-1pjLSbKhfAK0pZwd0iSCpMgJO4RB7wvrbpw8RC3vwhXYoRV5YTmqwIt4e3n/O1FUzG8UxD+XWeZqlBCbpAsQ3Q== @@ -1453,7 +1453,7 @@ "@jupyterlab/statedb" "^3.2.3" "@lumino/coreutils" "^1.5.3" -"@jupyterlab/ui-components@^3.2.3": +"@jupyterlab/ui-components@^3.2.0", "@jupyterlab/ui-components@^3.2.3": version "3.2.3" resolved "https://registry.yarnpkg.com/@jupyterlab/ui-components/-/ui-components-3.2.3.tgz#2af6d66466dd72f4f0c2ada6b0e66cae94ffd367" integrity sha512-DWS/kasCoWzE9tK/GJtIO3F9nZGkZOCAA+YiZwJbHqwZhHcpVP/RrzSYFQdQSOpTd2yPumprDhjID4Wcsgk6Fw== @@ -2190,7 +2190,7 @@ dependencies: "@lumino/algorithm" "^1.9.1" -"@lumino/commands@^1.12.0", "@lumino/commands@^1.17.0", "@lumino/commands@^1.19.0": +"@lumino/commands@^1.12.0", "@lumino/commands@^1.15.0", "@lumino/commands@^1.17.0", "@lumino/commands@^1.19.0": version "1.19.0" resolved "https://registry.yarnpkg.com/@lumino/commands/-/commands-1.19.0.tgz#9349c34b900653ac9d654e47831e7204e0c3476f" integrity sha512-DMX5TTvgmRAIhQpsSRgctYrnTNpIWgwmvmEjX37L+uKwUgZpBQUrprjfVblqv3kpwUugY2bQWy9Uza/P4muo1Q== @@ -2208,7 +2208,7 @@ resolved "https://registry.yarnpkg.com/@lumino/coreutils/-/coreutils-1.11.1.tgz#6d89c6325d7adb5f2179dfe3660f0aec8f3c4546" integrity sha512-TbXeYnUChSMN8SmuOwT+bADS3kMhsVaQC0sZie0ZeGaLYxVqvd7NEDRZATDtjdw7QGHK0TwH5+XzuSdNkAXpFw== -"@lumino/disposable@^1.10.1", "@lumino/disposable@^1.4.3": +"@lumino/disposable@^1.10.1", "@lumino/disposable@^1.4.3", "@lumino/disposable@^1.7.0": version "1.10.1" resolved "https://registry.yarnpkg.com/@lumino/disposable/-/disposable-1.10.1.tgz#58fddc619cf89335802d168564b76ff5315d5a84" integrity sha512-mZQILc8sVGZC7mJNOGVmehDRO9/u3sIRdjZ+pCYjDgXKcINLd6HoPhZDquKCWiRBfHTL1B3tOHjnBhahBc2N/Q== From 643638b13c0aa41de02b109c9b7b61734941ead4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Collonval?= Date: Mon, 15 Nov 2021 15:37:47 +0100 Subject: [PATCH 09/48] Fix webpack shared scope --- lab/app/package.json | 12 ++++++------ lab/app/webpack.config.js | 11 +++++++++++ 2 files changed, 17 insertions(+), 6 deletions(-) diff --git a/lab/app/package.json b/lab/app/package.json index d2b0f428..b09cc5fc 100644 --- a/lab/app/package.json +++ b/lab/app/package.json @@ -22,6 +22,7 @@ "@jupyterlab/json-extension": "^3.2.0", "@jupyterlab/mathjax2-extension": "^3.2.0", "@jupyterlab/notebook-extension": "^3.2.0", + "@jupyterlab/outputarea": "^3.2.0", "@jupyterlab/pdf-extension": "^3.2.0", "@jupyterlab/rendermime-extension": "^3.2.0", "@jupyterlab/shortcuts-extension": "^3.2.0", @@ -29,6 +30,11 @@ "@jupyterlab/theme-light-extension": "^3.2.0", "@jupyterlab/translation-extension": "^3.2.0", "@jupyterlab/vega5-extension": "^3.2.0", + "@lumino/application": "^1.25.0", + "@lumino/domutils": "^1.7.0", + "@lumino/dragdrop": "^1.12.0", + "@lumino/properties": "^1.7.0", + "@lumino/virtualdom": "^1.13.0", "rise-application": "~0.1.0", "react": "~17.0.2", "react-dom": "~17.0.2", @@ -103,10 +109,7 @@ "singletonPackages": [ "@jupyterlab/application", "@jupyterlab/apputils", - "@jupyterlab/celltags", "@jupyterlab/codeeditor", - "@jupyterlab/completer", - "@jupyterlab/console", "@jupyterlab/coreutils", "@jupyterlab/docmanager", "@jupyterlab/docprovider", @@ -120,11 +123,8 @@ "@jupyterlab/rendermime-interfaces", "@jupyterlab/services", "@jupyterlab/settingregistry", - "@jupyterlab/shared-models", "@jupyterlab/statedb", "@jupyterlab/statusbar", - "@jupyterlab/terminal", - "@jupyterlab/tooltip", "@jupyterlab/translation", "@jupyterlab/ui-components", "@lumino/algorithm", diff --git a/lab/app/webpack.config.js b/lab/app/webpack.config.js index 89f9d527..08d477b6 100644 --- a/lab/app/webpack.config.js +++ b/lab/app/webpack.config.js @@ -131,13 +131,24 @@ function createShared(packageData) { } } + const missingPkgs = []; // Add singleton package information for (let pkg of packageData.jupyterlab.singletonPackages) { if (shared[pkg]) { shared[pkg].singleton = true; + } else { + missingPkgs.push(pkg); } } + if (missingPkgs.length > 0) { + // If a package is set as singleton but absent of the shared list, + // recommend adding it to resolution and fail. + throw new Error( + `Singleton packages must have a resolved version number; these do not: ${missingPkgs.join(', ')} Please add them to packages.json#resolutions section.` + ); + } + return shared; } From 436116054353205b822f299641e15a0a42e96740 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Collonval?= Date: Mon, 15 Nov 2021 15:58:02 +0100 Subject: [PATCH 10/48] Rename classic to nbextension --- classic/MANIFEST.in | 14 +++++++------- classic/package.json | 8 ++++---- classic/rise/__init__.py | 2 +- classic/rise/{static => nbextension}/README.md | 0 classic/rise/{static => nbextension}/main.js | 0 classic/rise/{static => nbextension}/rise.png | Bin classic/rise/{static => nbextension}/rise.yaml | 0 classic/setup.py | 2 +- 8 files changed, 13 insertions(+), 13 deletions(-) rename classic/rise/{static => nbextension}/README.md (100%) rename classic/rise/{static => nbextension}/main.js (100%) rename classic/rise/{static => nbextension}/rise.png (100%) rename classic/rise/{static => nbextension}/rise.yaml (100%) diff --git a/classic/MANIFEST.in b/classic/MANIFEST.in index ac4e8831..d11bb4ea 100644 --- a/classic/MANIFEST.in +++ b/classic/MANIFEST.in @@ -1,11 +1,11 @@ include LICENSE.md include README.md include package.json -include rise/static/main.js -include rise/static/main.css -include rise/static/rise.png -include rise/static/rise.yaml -include rise/static/README.md +include rise/nbextension/main.js +include rise/nbextension/main.css +include rise/nbextension/rise.png +include rise/nbextension/rise.yaml +include rise/nbextension/README.md recursive-include jupyter-config *.json -recursive-include rise/static/reveal.js * -recursive-include rise/static/reveal.js-chalkboard * +recursive-include rise/nbextension/reveal.js * +recursive-include rise/nbextension/reveal.js-chalkboard * diff --git a/classic/package.json b/classic/package.json index c65d8f9c..c594fe33 100644 --- a/classic/package.json +++ b/classic/package.json @@ -27,13 +27,13 @@ "bugs": { "url": "https://github.com/damianavila/RISE/issues" }, - "main": "rise/static/main.js", + "main": "rise/nbextension/main.js", "scripts": { "build": "for target in less install-rise-reveal; do npm run $target; done", - "less": "PATH=./node_modules/.bin:$PATH lessc --autoprefix src/less/main.less rise/static/main.css", + "less": "PATH=./node_modules/.bin:$PATH lessc --autoprefix src/less/main.less rise/nbextension/main.css", "watch-less": "./node_modules/.bin/watch 'npm run less' src/less", - "install-rise-reveal": "cp -r node_modules/rise-reveal/export/ rise/static/", - "clean": "rm -rf rise/static/main.css node_modules rise/static/reveal.js*" + "install-rise-reveal": "cp -r node_modules/rise-reveal/export/* rise/nbextension/", + "clean": "rm -rf rise/nbextension/main.css node_modules rise/nbextension/reveal.js*" }, "devDependencies": { "less": "~2.7.2", diff --git a/classic/rise/__init__.py b/classic/rise/__init__.py index 908b6b82..cb9d47a7 100644 --- a/classic/rise/__init__.py +++ b/classic/rise/__init__.py @@ -5,6 +5,6 @@ def _jupyter_nbextension_paths(): return [dict(section="notebook", - src="static", + src="nbextension", dest="rise", require="rise/main")] diff --git a/classic/rise/static/README.md b/classic/rise/nbextension/README.md similarity index 100% rename from classic/rise/static/README.md rename to classic/rise/nbextension/README.md diff --git a/classic/rise/static/main.js b/classic/rise/nbextension/main.js similarity index 100% rename from classic/rise/static/main.js rename to classic/rise/nbextension/main.js diff --git a/classic/rise/static/rise.png b/classic/rise/nbextension/rise.png similarity index 100% rename from classic/rise/static/rise.png rename to classic/rise/nbextension/rise.png diff --git a/classic/rise/static/rise.yaml b/classic/rise/nbextension/rise.yaml similarity index 100% rename from classic/rise/static/rise.yaml rename to classic/rise/nbextension/rise.yaml diff --git a/classic/setup.py b/classic/setup.py index cf2fbe75..0f45cda6 100755 --- a/classic/setup.py +++ b/classic/setup.py @@ -35,7 +35,7 @@ # More precisely, everything in the rise/static directory and its # subdirectories should be installed nbext = ["share", "jupyter", "nbextensions", NAME] -for (path, dirs, files) in os.walk(os.path.join("rise", "static")): +for (path, dirs, files) in os.walk(os.path.join("rise", "nbextension")): # Files to install srcfiles = [os.path.join(path, f) for f in files] # Installation path components, removing rise/static from "path" From cd75d28ab27e0f2ce35eceddc741efb5d8ff926e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Collonval?= Date: Mon, 15 Nov 2021 16:40:45 +0100 Subject: [PATCH 11/48] Restructure the repo as one python pkg --- lab/.eslintignore => .eslintignore | 0 lab/.eslintrc.js => .eslintrc.js | 0 .gitignore | 16 +- lab/.prettierignore => .prettierignore | 0 lab/.prettierrc => .prettierrc | 0 lab/MANIFEST.in => MANIFEST.in | 14 +- {lab/app => app}/index.js | 0 {lab/app => app}/package.json | 0 {lab/app => app}/publicpath.js | 0 {lab/app => app}/style.js | 0 {lab/app => app}/webpack.config.js | 0 binder/environment.yml | 6 +- binder/postBuild | 50 +- classic/LICENSE.md | 12 - classic/MANIFEST.in | 11 - classic/README.md | 60 - classic/rise/__init__.py | 10 - doc/dev/develop.md | 59 +- .../nbconfig/notebook.d/rise.json | 0 lab/jupyter.png => jupyter.png | Bin lab/LICENSE.md | 1 - lab/README.md | 1 - lab/rise/_version.py | 1 - lab/test.ipynb | 86 - lab/setup.py => lab_setup.py | 0 lab/lerna.json => lerna.json | 0 lab/package.json => package.json | 6 +- .../application/package.json | 2 +- .../application/src/app/index.ts | 0 .../application/src/index.ts | 0 .../application/src/plugins/index.ts | 0 .../application/src/rise-reveal.d.ts | 0 .../application/style/base.css | 0 .../application/style/index.css | 0 .../application/style/index.js | 0 .../application/tsconfig.json | 0 {classic => packages/classic}/package.json | 6 +- .../classic}/src/less/main.less | 0 .../extension => packages/lab}/package.json | 0 .../lab}/schema/plugin.json | 0 .../extension => packages/lab}/src/icons.ts | 0 .../extension => packages/lab}/src/index.ts | 0 .../extension => packages/lab}/src/svg.d.ts | 0 .../extension => packages/lab}/style/base.css | 0 .../lab}/style/index.css | 0 .../extension => packages/lab}/style/index.js | 0 .../extension => packages/lab}/style/rise.svg | 0 .../extension => packages/lab}/tsconfig.json | 0 .../rise-reveal}/README.md | 0 .../rise-reveal}/package.json | 4 +- .../rise-reveal}/patch-chalkboard.sh | 0 .../rise-reveal}/patch-notes-plugin.sh | 0 .../rise-reveal}/patch-reveal-themes.sh | 0 {lab/rise => rise}/__init__.py | 10 + {lab/rise => rise}/__main__.py | 0 rise/_version.py | 4 + {lab/rise => rise}/app.py | 0 {classic/rise => rise}/nbextension/README.md | 0 {classic/rise => rise}/nbextension/main.js | 0 {classic/rise => rise}/nbextension/rise.png | Bin {classic/rise => rise}/nbextension/rise.yaml | 0 {lab/rise => rise}/serverextension.py | 0 {lab/rise => rise}/templates/error.html | 0 {lab/rise => rise}/templates/index.html | 0 classic/setup.cfg => setup.cfg | 0 classic/setup.py => setup.py | 62 +- ...config.eslint.json => tsconfig.eslint.json | 0 lab/tsconfigbase.json => tsconfigbase.json | 0 lab/yarn.lock => yarn.lock | 1518 +++++++++++++++-- 69 files changed, 1588 insertions(+), 351 deletions(-) rename lab/.eslintignore => .eslintignore (100%) rename lab/.eslintrc.js => .eslintrc.js (100%) rename lab/.prettierignore => .prettierignore (100%) rename lab/.prettierrc => .prettierrc (100%) rename lab/MANIFEST.in => MANIFEST.in (76%) rename {lab/app => app}/index.js (100%) rename {lab/app => app}/package.json (100%) rename {lab/app => app}/publicpath.js (100%) rename {lab/app => app}/style.js (100%) rename {lab/app => app}/webpack.config.js (100%) delete mode 100644 classic/LICENSE.md delete mode 100644 classic/MANIFEST.in delete mode 100644 classic/README.md delete mode 100644 classic/rise/__init__.py rename {classic/jupyter-config => jupyter-config}/nbconfig/notebook.d/rise.json (100%) rename lab/jupyter.png => jupyter.png (100%) delete mode 120000 lab/LICENSE.md delete mode 120000 lab/README.md delete mode 100644 lab/rise/_version.py delete mode 100644 lab/test.ipynb rename lab/setup.py => lab_setup.py (100%) rename lab/lerna.json => lerna.json (100%) rename lab/package.json => package.json (93%) rename {lab/packages => packages}/application/package.json (97%) rename {lab/packages => packages}/application/src/app/index.ts (100%) rename {lab/packages => packages}/application/src/index.ts (100%) rename {lab/packages => packages}/application/src/plugins/index.ts (100%) rename {lab/packages => packages}/application/src/rise-reveal.d.ts (100%) rename {lab/packages => packages}/application/style/base.css (100%) rename {lab/packages => packages}/application/style/index.css (100%) rename {lab/packages => packages}/application/style/index.js (100%) rename {lab/packages => packages}/application/tsconfig.json (100%) rename {classic => packages/classic}/package.json (83%) rename {classic => packages/classic}/src/less/main.less (100%) rename {lab/packages/extension => packages/lab}/package.json (100%) rename {lab/packages/extension => packages/lab}/schema/plugin.json (100%) rename {lab/packages/extension => packages/lab}/src/icons.ts (100%) rename {lab/packages/extension => packages/lab}/src/index.ts (100%) rename {lab/packages/extension => packages/lab}/src/svg.d.ts (100%) rename {lab/packages/extension => packages/lab}/style/base.css (100%) rename {lab/packages/extension => packages/lab}/style/index.css (100%) rename {lab/packages/extension => packages/lab}/style/index.js (100%) rename {lab/packages/extension => packages/lab}/style/rise.svg (100%) rename {lab/packages/extension => packages/lab}/tsconfig.json (100%) rename {rise-reveal => packages/rise-reveal}/README.md (100%) rename {rise-reveal => packages/rise-reveal}/package.json (83%) rename {rise-reveal => packages/rise-reveal}/patch-chalkboard.sh (100%) rename {rise-reveal => packages/rise-reveal}/patch-notes-plugin.sh (100%) rename {rise-reveal => packages/rise-reveal}/patch-reveal-themes.sh (100%) rename {lab/rise => rise}/__init__.py (68%) rename {lab/rise => rise}/__main__.py (100%) create mode 100644 rise/_version.py rename {lab/rise => rise}/app.py (100%) rename {classic/rise => rise}/nbextension/README.md (100%) rename {classic/rise => rise}/nbextension/main.js (100%) rename {classic/rise => rise}/nbextension/rise.png (100%) rename {classic/rise => rise}/nbextension/rise.yaml (100%) rename {lab/rise => rise}/serverextension.py (100%) rename {lab/rise => rise}/templates/error.html (100%) rename {lab/rise => rise}/templates/index.html (100%) rename classic/setup.cfg => setup.cfg (100%) rename classic/setup.py => setup.py (56%) rename lab/tsconfig.eslint.json => tsconfig.eslint.json (100%) rename lab/tsconfigbase.json => tsconfigbase.json (100%) rename lab/yarn.lock => yarn.lock (91%) diff --git a/lab/.eslintignore b/.eslintignore similarity index 100% rename from lab/.eslintignore rename to .eslintignore diff --git a/lab/.eslintrc.js b/.eslintrc.js similarity index 100% rename from lab/.eslintrc.js rename to .eslintrc.js diff --git a/.gitignore b/.gitignore index 6a8e840f..73838a32 100644 --- a/.gitignore +++ b/.gitignore @@ -1,10 +1,12 @@ -classic/rise/static/ -rise-reveal/export/ doc/_build/ -lab/rise/labextension/ -lab/rise/schemas/ -lab/rise/static/* -lab/rise/static/favicons +rise/labextension/ +rise/nbextension/main.css +rise/nbextension/reveal* +rise/schemas/ +rise/static/* +rise/static/favicons +packages/rise-reveal/export/ +packages/rise-reveal/package-lock.json *.bundle.* lib/ @@ -117,5 +119,3 @@ dmypy.json # OSX files .DS_Store -rise-reveal/yarn.lock -classic/package-lock.json diff --git a/lab/.prettierignore b/.prettierignore similarity index 100% rename from lab/.prettierignore rename to .prettierignore diff --git a/lab/.prettierrc b/.prettierrc similarity index 100% rename from lab/.prettierrc rename to .prettierrc diff --git a/lab/MANIFEST.in b/MANIFEST.in similarity index 76% rename from lab/MANIFEST.in rename to MANIFEST.in index 1e25f8bb..49549cd7 100644 --- a/lab/MANIFEST.in +++ b/MANIFEST.in @@ -1,17 +1,19 @@ -include *.md +include LICENSE.md +include README.md include pyproject.toml -recursive-include jupyter-config *.json - include package.json include install.json include ts*.json include yarn.lock -graft rise_jupyterlab/labextension +recursive-include jupyter-config *.json + +graft rise/labextension +graft rise/nbextension # Javascript files -graft src -graft style +graft app +graft packages prune **/node_modules prune lib prune binder diff --git a/lab/app/index.js b/app/index.js similarity index 100% rename from lab/app/index.js rename to app/index.js diff --git a/lab/app/package.json b/app/package.json similarity index 100% rename from lab/app/package.json rename to app/package.json diff --git a/lab/app/publicpath.js b/app/publicpath.js similarity index 100% rename from lab/app/publicpath.js rename to app/publicpath.js diff --git a/lab/app/style.js b/app/style.js similarity index 100% rename from lab/app/style.js rename to app/style.js diff --git a/lab/app/webpack.config.js b/app/webpack.config.js similarity index 100% rename from lab/app/webpack.config.js rename to app/webpack.config.js diff --git a/binder/environment.yml b/binder/environment.yml index 16d50c54..443d011b 100644 --- a/binder/environment.yml +++ b/binder/environment.yml @@ -6,6 +6,10 @@ dependencies: - matplotlib - pandas - bokeh - - rise + # - rise + - notebook + - jupyterlab + - nodejs + - yarn - pip: - jupyter-contrib-nbextensions diff --git a/binder/postBuild b/binder/postBuild index 17be8c88..5725ba68 100755 --- a/binder/postBuild +++ b/binder/postBuild @@ -1,2 +1,48 @@ -jupyter contrib nbextension install --user -jupyter nbextension enable splitcell/splitcell +#!/usr/bin/env python3 +""" perform a development install of {{ cookiecutter.python_name }} + On Binder, this will run _after_ the environment has been fully created from + the environment.yml in this directory. + This script should also run locally on Linux/MacOS/Windows: + python3 binder/postBuild +""" +import subprocess +import sys +from pathlib import Path + + +ROOT = Path.cwd() + +def _(*args, **kwargs): + """ Run a command, echoing the args + fails hard if something goes wrong + """ + print("\n\t", " ".join(args), "\n") + return_code = subprocess.call(args, **kwargs) + if return_code != 0: + print("\nERROR", return_code, " ".join(args)) + sys.exit(return_code) + +# verify the environment is self-consistent before even starting +_(sys.executable, "-m", "pip", "check") + +# install the extension +# TODO call automatically +_("yarn", "install") +_("yarn", "run", "build") +_(sys.executable, "-m", "pip", "install", "-e", ".") +_(sys.executable, "-m", "jupyter", "labextension", "develop", "--overwrite", ".") +_(sys.executable, "-m", "jupyter", "nbextension", "install", "rise", "--py", "--sys-prefix", "--symlink") +_(sys.executable, "-m", "jupyter", "nbextension", "enable", "rise", "--py", "--sys-prefix") + +# verify the environment the extension didn't break anything +_(sys.executable, "-m", "pip", "check") + +# list the extensions +_("jupyter", "server", "extension", "list") + +# initially list installed extensions to determine if there are any surprises +_("jupyter", "labextension", "list") +_("jupyter", "nbextension", "list") + +_("jupyter", "contrib", "nbextension", "install", "--user") +_("jupyter", "nbextension", "enable", "splitcell/splitcell") diff --git a/classic/LICENSE.md b/classic/LICENSE.md deleted file mode 100644 index e406ab46..00000000 --- a/classic/LICENSE.md +++ /dev/null @@ -1,12 +0,0 @@ -Copyright (c) 2013-2016, Damián Avila and contributors -All rights reserved. - -Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: - -1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. - -2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. - -3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/classic/MANIFEST.in b/classic/MANIFEST.in deleted file mode 100644 index d11bb4ea..00000000 --- a/classic/MANIFEST.in +++ /dev/null @@ -1,11 +0,0 @@ -include LICENSE.md -include README.md -include package.json -include rise/nbextension/main.js -include rise/nbextension/main.css -include rise/nbextension/rise.png -include rise/nbextension/rise.yaml -include rise/nbextension/README.md -recursive-include jupyter-config *.json -recursive-include rise/nbextension/reveal.js * -recursive-include rise/nbextension/reveal.js-chalkboard * diff --git a/classic/README.md b/classic/README.md deleted file mode 100644 index 20dc95c9..00000000 --- a/classic/README.md +++ /dev/null @@ -1,60 +0,0 @@ -# RISE - -RISE allows you to instantly turn your Jupyter Notebooks into a -slideshow. No out-of-band conversion is needed, switch from jupyter -notebook to a live *reveal.js*-based slideshow in a single keystroke, -and back. - -![Basic usage](https://media.giphy.com/media/3oxHQtTxAaZwMOHr9u/giphy.gif) - -## Resources - -RISE stands for ***Reveal.js - Jupyter/IPython Slideshow Extension***: - -* Demo notebook (no installation required) - * [![](https://mybinder.org/badge.svg)](https://mybinder.org/v2/gh/damianavila/RISE/master?filepath=examples%2FREADME.ipynb) - -* Source code is on github - * [![Issues](http://img.shields.io/github/issues/damianavila/RISE.svg)](https://github.com/damianavila/RISE/issues) - -* Documentation is hosted on readthedocs - * [![doc status](https://readthedocs.org/projects/rise/badge)](http://rise.readthedocs.io/) - -* Chat room on gitter - * [![Gitter chat](https://badges.gitter.im/damianavila/RISE.png)](https://gitter.im/damianavila/RISE) - -* Videos on youtube - * basic usage (4'30'') - - - - -## Installation - -You essentially have 2 options: - -### Option 1 - Using conda: - -``` -conda install -c conda-forge rise -``` - -### Option 2 - Using pip: - -``` -pip install RISE -``` - -## Development - -To install RISE in development mode, see the -[Developer section](https://rise.readthedocs.io/en/stable/dev/index.html) of the RISE -documentation. - -## Feedback - -If you have any feedback, or find any bugs, please let us know just opening an issue. - -## Support us - -Please visit this page for more information: https://rise.readthedocs.io/en/stable/support.html diff --git a/classic/rise/__init__.py b/classic/rise/__init__.py deleted file mode 100644 index cb9d47a7..00000000 --- a/classic/rise/__init__.py +++ /dev/null @@ -1,10 +0,0 @@ -import pkg_resources - -__version__ = pkg_resources.require("rise")[0].version -version_info = pkg_resources.parse_version(__version__) - -def _jupyter_nbextension_paths(): - return [dict(section="notebook", - src="nbextension", - dest="rise", - require="rise/main")] diff --git a/doc/dev/develop.md b/doc/dev/develop.md index cbdc7190..e9dcf262 100644 --- a/doc/dev/develop.md +++ b/doc/dev/develop.md @@ -1,14 +1,15 @@ ## Development -**** +--- -***Note*** this page is up-to-date for 5.7 that has a new directory layout; +**_Note_** this page is up-to-date for 5.7 that has a new directory layout; in a nutshell, 5.7 comes with a clear separation between -* what is inherited from `reveal.js` with our minor adaptations (the `rise-reveal` subdir), -* the RISE extension for the classic notebook (the `classic` subdir), -* opening the space for a future `jlab` subdir that will host the jupyterlab extension. -**** +- what is inherited from `reveal.js` with our minor adaptations (the `rise-reveal` subdir), +- the RISE extension for the classic notebook (the `classic` subdir), +- opening the space for a future `jlab` subdir that will host the jupyterlab extension. + +--- You can install RISE in development mode in this way: @@ -17,10 +18,10 @@ You can install RISE in development mode in this way: Use your usual package manager to install the required build tools. Essentially you will need: -* `git`, -* `npm` and `nodejs`, -* and of course `jupyter`, -* finally `sphinx` comes in handy to produce the documentation. +- `git`, +- `yarn` and `nodejs`, +- and of course `jupyter`, +- finally `sphinx` comes in handy to produce the documentation. ### Clone the git repo @@ -28,30 +29,26 @@ Essentially you will need: cd RISE ROOT=$(pwd) -### build `rise-reveal` - -fetch and patch the source code for `reveal.js` - - cd $ROOT/rise-reveal - npm install - npm run build +### Build frontend extensions -### build the clasic extension + yarn install + yarn run build -among others, here we pull the code for `reveal.js` from `rise-reveal` -into the static folder +Internally this will - cd $ROOT/classic - npm install - npm run build +1. fetch and patch the source code for `reveal.js` +2. pull the code for `reveal.js` from `rise-reveal` for the notebook extension +3. Generate the notebook extension assets +4. Generate the JupyterLab extension assets +5. Generate the stand-alone application assets **Notes**: -* this is all that is needed at that stage -* later on you might want to take a look at `package.json` that has finer-grained targets, +- this is all that is needed at that stage +- later on you might want to take a look at `package.json` that has finer-grained targets, that the `build` target groups for your convenience -* in particular, if you only need to redo css, you can do `npm run build-css` -* also note that you can remove `reveal.js` from the static folder with `npm run clean-reveal`. +- in particular, if you only need to redo css, you can do `npm run build-css` +- also note that you can remove `reveal.js` from the static folder with `npm run clean-reveal`. ### Install RISE in developer mode @@ -63,14 +60,14 @@ Second, let's install RISE in a editable form: **Notes**: -* the `--symlink` argument is meant to allow you to modify the +- the `--symlink` argument is meant to allow you to modify the JavaScript code in-place. This feature however is probably not available in Win. -* If you cannot use this *symlink* trick, you will need to +- If you cannot use this _symlink_ trick, you will need to "re-install" the nbextension to actually see any changes you made on th JS files. -* Also please make sure to properly and thoroughly reload your page in the browser; - using *Shift* when reloading is generally a good idea. +- Also please make sure to properly and thoroughly reload your page in the browser; + using _Shift_ when reloading is generally a good idea. ### Convenience diff --git a/classic/jupyter-config/nbconfig/notebook.d/rise.json b/jupyter-config/nbconfig/notebook.d/rise.json similarity index 100% rename from classic/jupyter-config/nbconfig/notebook.d/rise.json rename to jupyter-config/nbconfig/notebook.d/rise.json diff --git a/lab/jupyter.png b/jupyter.png similarity index 100% rename from lab/jupyter.png rename to jupyter.png diff --git a/lab/LICENSE.md b/lab/LICENSE.md deleted file mode 120000 index 3d409849..00000000 --- a/lab/LICENSE.md +++ /dev/null @@ -1 +0,0 @@ -../classic/LICENSE.md \ No newline at end of file diff --git a/lab/README.md b/lab/README.md deleted file mode 120000 index dbd3d5a4..00000000 --- a/lab/README.md +++ /dev/null @@ -1 +0,0 @@ -../classic/README.md \ No newline at end of file diff --git a/lab/rise/_version.py b/lab/rise/_version.py deleted file mode 100644 index 3dc1f76b..00000000 --- a/lab/rise/_version.py +++ /dev/null @@ -1 +0,0 @@ -__version__ = "0.1.0" diff --git a/lab/test.ipynb b/lab/test.ipynb deleted file mode 100644 index d9f0a9a7..00000000 --- a/lab/test.ipynb +++ /dev/null @@ -1,86 +0,0 @@ -{ - "cells": [ - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "slide" - } - }, - "source": [ - "# RISE-jupyterlab (prototype!!!) in JupyterLab 2.2.9!" - ] - }, - { - "cell_type": "code", - "execution_count": 3, - "metadata": { - "slideshow": { - "slide_type": "slide" - } - }, - "outputs": [ - { - "name": "stdout", - "output_type": "stream", - "text": [ - "I am a WIP PoC again!\n" - ] - } - ], - "source": [ - "print(\"I am a WIP PoC again!\")" - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "slide" - } - }, - "source": [ - "# Let's ride the wave..." - ] - }, - { - "cell_type": "markdown", - "metadata": { - "slideshow": { - "slide_type": "slide" - } - }, - "source": [ - "![commits](commits.png)" - ] - }, - { - "cell_type": "markdown", - "metadata": {}, - "source": [ - "# Thank you!" - ] - } - ], - "metadata": { - "kernelspec": { - "display_name": "Python 3 (ipykernel)", - "language": "python", - "name": "python3" - }, - "language_info": { - "codemirror_mode": { - "name": "ipython", - "version": 3 - }, - "file_extension": ".py", - "mimetype": "text/x-python", - "name": "python", - "nbconvert_exporter": "python", - "pygments_lexer": "ipython3", - "version": "3.9.7" - } - }, - "nbformat": 4, - "nbformat_minor": 4 -} diff --git a/lab/setup.py b/lab_setup.py similarity index 100% rename from lab/setup.py rename to lab_setup.py diff --git a/lab/lerna.json b/lerna.json similarity index 100% rename from lab/lerna.json rename to lerna.json diff --git a/lab/package.json b/package.json similarity index 93% rename from lab/package.json rename to package.json index 9079eac2..13c9342b 100644 --- a/lab/package.json +++ b/package.json @@ -8,8 +8,7 @@ "workspaces": { "packages": [ "app", - "packages/application", - "packages/extension" + "packages/*" ] }, "author": { @@ -29,15 +28,14 @@ "scripts": { "build": "lerna run build", "build:prod": "lerna run build:prod", - "build:test": "lerna run build:test", "clean": "lerna run clean", "eslint": "eslint . --ext .ts,.tsx --fix", "eslint:check": "eslint . --ext .ts,.tsx", "develop": "jupyter labextension develop . --overwrite", + "preinstall": "cd packages/rise-reveal && npm run build", "install": "lerna bootstrap", "prettier": "prettier --write \"**/*{.ts,.tsx,.js,.jsx,.css,.json,.md}\"", "prettier:check": "prettier --list-different \"**/*{.ts,.tsx,.js,.jsx,.css,.json,.md}\"", - "test": "lerna run test", "update:dependency": "node ./node_modules/@jupyterlab/buildutils/lib/update-dependency.js --lerna" }, "husky": { diff --git a/lab/packages/application/package.json b/packages/application/package.json similarity index 97% rename from lab/packages/application/package.json rename to packages/application/package.json index c17a0040..cd5cd82f 100644 --- a/lab/packages/application/package.json +++ b/packages/application/package.json @@ -47,7 +47,7 @@ "@lumino/signaling": "^1.9.0", "@lumino/messaging": "^1.9.0", "@lumino/widgets": "^1.28.0", - "rise-reveal": "file:../../../rise-reveal/export/reveal.js" + "rise-reveal": "file:../rise-reveal/export/reveal.js" }, "devDependencies": { "@jupyterlab/builder": "^3.1.0", diff --git a/lab/packages/application/src/app/index.ts b/packages/application/src/app/index.ts similarity index 100% rename from lab/packages/application/src/app/index.ts rename to packages/application/src/app/index.ts diff --git a/lab/packages/application/src/index.ts b/packages/application/src/index.ts similarity index 100% rename from lab/packages/application/src/index.ts rename to packages/application/src/index.ts diff --git a/lab/packages/application/src/plugins/index.ts b/packages/application/src/plugins/index.ts similarity index 100% rename from lab/packages/application/src/plugins/index.ts rename to packages/application/src/plugins/index.ts diff --git a/lab/packages/application/src/rise-reveal.d.ts b/packages/application/src/rise-reveal.d.ts similarity index 100% rename from lab/packages/application/src/rise-reveal.d.ts rename to packages/application/src/rise-reveal.d.ts diff --git a/lab/packages/application/style/base.css b/packages/application/style/base.css similarity index 100% rename from lab/packages/application/style/base.css rename to packages/application/style/base.css diff --git a/lab/packages/application/style/index.css b/packages/application/style/index.css similarity index 100% rename from lab/packages/application/style/index.css rename to packages/application/style/index.css diff --git a/lab/packages/application/style/index.js b/packages/application/style/index.js similarity index 100% rename from lab/packages/application/style/index.js rename to packages/application/style/index.js diff --git a/lab/packages/application/tsconfig.json b/packages/application/tsconfig.json similarity index 100% rename from lab/packages/application/tsconfig.json rename to packages/application/tsconfig.json diff --git a/classic/package.json b/packages/classic/package.json similarity index 83% rename from classic/package.json rename to packages/classic/package.json index c594fe33..5f2c53ba 100644 --- a/classic/package.json +++ b/packages/classic/package.json @@ -30,10 +30,10 @@ "main": "rise/nbextension/main.js", "scripts": { "build": "for target in less install-rise-reveal; do npm run $target; done", - "less": "PATH=./node_modules/.bin:$PATH lessc --autoprefix src/less/main.less rise/nbextension/main.css", + "less": "PATH=./node_modules/.bin:$PATH lessc --autoprefix src/less/main.less ../../rise/nbextension/main.css", "watch-less": "./node_modules/.bin/watch 'npm run less' src/less", - "install-rise-reveal": "cp -r node_modules/rise-reveal/export/* rise/nbextension/", - "clean": "rm -rf rise/nbextension/main.css node_modules rise/nbextension/reveal.js*" + "install-rise-reveal": "cp -r ../../node_modules/rise-reveal/export/* ../../rise/nbextension/", + "clean": "rm -rf ../../rise/nbextension/main.css ../../rise/nbextension/reveal.js*" }, "devDependencies": { "less": "~2.7.2", diff --git a/classic/src/less/main.less b/packages/classic/src/less/main.less similarity index 100% rename from classic/src/less/main.less rename to packages/classic/src/less/main.less diff --git a/lab/packages/extension/package.json b/packages/lab/package.json similarity index 100% rename from lab/packages/extension/package.json rename to packages/lab/package.json diff --git a/lab/packages/extension/schema/plugin.json b/packages/lab/schema/plugin.json similarity index 100% rename from lab/packages/extension/schema/plugin.json rename to packages/lab/schema/plugin.json diff --git a/lab/packages/extension/src/icons.ts b/packages/lab/src/icons.ts similarity index 100% rename from lab/packages/extension/src/icons.ts rename to packages/lab/src/icons.ts diff --git a/lab/packages/extension/src/index.ts b/packages/lab/src/index.ts similarity index 100% rename from lab/packages/extension/src/index.ts rename to packages/lab/src/index.ts diff --git a/lab/packages/extension/src/svg.d.ts b/packages/lab/src/svg.d.ts similarity index 100% rename from lab/packages/extension/src/svg.d.ts rename to packages/lab/src/svg.d.ts diff --git a/lab/packages/extension/style/base.css b/packages/lab/style/base.css similarity index 100% rename from lab/packages/extension/style/base.css rename to packages/lab/style/base.css diff --git a/lab/packages/extension/style/index.css b/packages/lab/style/index.css similarity index 100% rename from lab/packages/extension/style/index.css rename to packages/lab/style/index.css diff --git a/lab/packages/extension/style/index.js b/packages/lab/style/index.js similarity index 100% rename from lab/packages/extension/style/index.js rename to packages/lab/style/index.js diff --git a/lab/packages/extension/style/rise.svg b/packages/lab/style/rise.svg similarity index 100% rename from lab/packages/extension/style/rise.svg rename to packages/lab/style/rise.svg diff --git a/lab/packages/extension/tsconfig.json b/packages/lab/tsconfig.json similarity index 100% rename from lab/packages/extension/tsconfig.json rename to packages/lab/tsconfig.json diff --git a/rise-reveal/README.md b/packages/rise-reveal/README.md similarity index 100% rename from rise-reveal/README.md rename to packages/rise-reveal/README.md diff --git a/rise-reveal/package.json b/packages/rise-reveal/package.json similarity index 83% rename from rise-reveal/package.json rename to packages/rise-reveal/package.json index 700d1d6f..cb6b4037 100644 --- a/rise-reveal/package.json +++ b/packages/rise-reveal/package.json @@ -32,8 +32,8 @@ "export/reveal.js-chalkboard" ], "scripts": { - "build": "for target in copy patch; do npm run $target; done", - "copy": "mkdir -p export; cp -r ./node_modules/reveal.js/ ./export/reveal.js/; cp -r ./node_modules/reveal.js-plugins/chalkboard ./export/reveal.js-chalkboard/", + "build": "npm run clean && npm install && for target in copy patch; do npm run $target; done", + "copy": "mkdir -p export; cp -r node_modules/reveal.js/ ./export/reveal.js/; cp -r node_modules/reveal.js-plugins/chalkboard ./export/reveal.js-chalkboard/", "patch": "for target in patch-reveal-css patch-notes patch-themes patch-chalkboard ; do npm run $target; done", "patch-reveal-css": "sed -i.upstream '11 s_^_/*_' export/reveal.js/css/reveal.css", "patch-notes": "bash patch-notes-plugin.sh", diff --git a/rise-reveal/patch-chalkboard.sh b/packages/rise-reveal/patch-chalkboard.sh similarity index 100% rename from rise-reveal/patch-chalkboard.sh rename to packages/rise-reveal/patch-chalkboard.sh diff --git a/rise-reveal/patch-notes-plugin.sh b/packages/rise-reveal/patch-notes-plugin.sh similarity index 100% rename from rise-reveal/patch-notes-plugin.sh rename to packages/rise-reveal/patch-notes-plugin.sh diff --git a/rise-reveal/patch-reveal-themes.sh b/packages/rise-reveal/patch-reveal-themes.sh similarity index 100% rename from rise-reveal/patch-reveal-themes.sh rename to packages/rise-reveal/patch-reveal-themes.sh diff --git a/lab/rise/__init__.py b/rise/__init__.py similarity index 68% rename from lab/rise/__init__.py rename to rise/__init__.py index b0700a75..49d7090f 100644 --- a/lab/rise/__init__.py +++ b/rise/__init__.py @@ -2,6 +2,16 @@ from .app import RiseApp from .serverextension import load_jupyter_server_extension +def _jupyter_nbextension_paths(): + return [ + dict( + section="notebook", + src="nbextension", + dest="rise", + require="rise/main" + ) + ] + def _jupyter_server_extension_paths(): return [ diff --git a/lab/rise/__main__.py b/rise/__main__.py similarity index 100% rename from lab/rise/__main__.py rename to rise/__main__.py diff --git a/rise/_version.py b/rise/_version.py new file mode 100644 index 00000000..5397fbae --- /dev/null +++ b/rise/_version.py @@ -0,0 +1,4 @@ +import pkg_resources + +__version__ = pkg_resources.require("rise")[0].version +version_info = pkg_resources.parse_version(__version__) diff --git a/lab/rise/app.py b/rise/app.py similarity index 100% rename from lab/rise/app.py rename to rise/app.py diff --git a/classic/rise/nbextension/README.md b/rise/nbextension/README.md similarity index 100% rename from classic/rise/nbextension/README.md rename to rise/nbextension/README.md diff --git a/classic/rise/nbextension/main.js b/rise/nbextension/main.js similarity index 100% rename from classic/rise/nbextension/main.js rename to rise/nbextension/main.js diff --git a/classic/rise/nbextension/rise.png b/rise/nbextension/rise.png similarity index 100% rename from classic/rise/nbextension/rise.png rename to rise/nbextension/rise.png diff --git a/classic/rise/nbextension/rise.yaml b/rise/nbextension/rise.yaml similarity index 100% rename from classic/rise/nbextension/rise.yaml rename to rise/nbextension/rise.yaml diff --git a/lab/rise/serverextension.py b/rise/serverextension.py similarity index 100% rename from lab/rise/serverextension.py rename to rise/serverextension.py diff --git a/lab/rise/templates/error.html b/rise/templates/error.html similarity index 100% rename from lab/rise/templates/error.html rename to rise/templates/error.html diff --git a/lab/rise/templates/index.html b/rise/templates/index.html similarity index 100% rename from lab/rise/templates/index.html rename to rise/templates/index.html diff --git a/classic/setup.cfg b/setup.cfg similarity index 100% rename from classic/setup.cfg rename to setup.cfg diff --git a/classic/setup.py b/setup.py similarity index 56% rename from classic/setup.py rename to setup.py index 0f45cda6..34e8df3d 100755 --- a/classic/setup.py +++ b/setup.py @@ -13,12 +13,27 @@ # http://jupyter-notebook.readthedocs.io/en/stable/examples/Notebook/Distributing%20Jupyter%20Extensions%20as%20Python%20Packages.html#Example---Server-extension-and-nbextension import os +from pathlib import Path + from setuptools import setup, find_packages -NAME = "rise" +HERE = Path(__file__).parent.resolve() + +name = "rise" + +lab_path = (HERE / name.replace("-", "_") / "labextension") + +# Representative files that should exist after a successful build +ensured_targets = [ + str(lab_path / "package.json"), + str(lab_path / "static/style.js") +] + +labext_name = "rise-jupyterlab" INSTALL_REQUIRES = [ - 'notebook>=6.0', + "jupyter_server>=1.6,<2" + "jupyterlab>=3,<4" ] with open('README.md') as readme: @@ -29,12 +44,14 @@ ("etc/jupyter/nbconfig/notebook.d", [ "jupyter-config/nbconfig/notebook.d/rise.json" ]), + ("share/jupyter/labextensions/%s" % labext_name, str(lab_path.relative_to(HERE)), "**"), + ("share/jupyter/labextensions/%s" % labext_name, str("."), "install.json"), ] # Install the nbextension (like jupyter nbextension install --sys-prefix). # More precisely, everything in the rise/static directory and its # subdirectories should be installed -nbext = ["share", "jupyter", "nbextensions", NAME] +nbext = ["share", "jupyter", "nbextensions", name] for (path, dirs, files) in os.walk(os.path.join("rise", "nbextension")): # Files to install srcfiles = [os.path.join(path, f) for f in files] @@ -52,13 +69,13 @@ version = version.replace("-dev", ".dev") setup_args = dict( - name=NAME, + name=name, version=version, packages=find_packages(), data_files=DATA_FILES, include_package_data=True, install_requires=INSTALL_REQUIRES, - python_requires='>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, <4', + python_requires='>=3.6, <4', description="Reveal.js - Jupyter/IPython Slideshow Extension", long_description=README, long_description_content_type='text/markdown', @@ -78,15 +95,38 @@ 'Intended Audience :: Science/Research', 'License :: OSI Approved :: BSD License', 'Programming Language :: Python', - 'Programming Language :: Python :: 2', - 'Programming Language :: Python :: 2.7', - 'Programming Language :: Python :: 3', - 'Programming Language :: Python :: 3.4', - 'Programming Language :: Python :: 3.5', - 'Programming Language :: Python :: 3.6', + "Programming Language :: Python :: 3", + "Programming Language :: Python :: 3.6", + "Programming Language :: Python :: 3.7", + "Programming Language :: Python :: 3.8", + "Programming Language :: Python :: 3.9", + "Framework :: Jupyter", + "Framework :: Jupyter :: JupyterLab", + "Framework :: Jupyter :: JupyterLab :: 3", + "Framework :: Jupyter :: JupyterLab :: Extensions", + "Framework :: Jupyter :: JupyterLab :: Extensions :: Prebuilt", ], zip_safe=False, ) +# FIXME & add pyproject.toml +# try: +# from jupyter_packaging import ( +# wrap_installers, +# npm_builder, +# get_data_files +# ) +# post_develop = npm_builder( +# build_cmd="install:extension", source_dir="src", build_dir=lab_path +# ) +# setup_args["cmdclass"] = wrap_installers(post_develop=post_develop, ensured_targets=ensured_targets) +# setup_args["data_files"] = get_data_files(data_files_spec) +# except ImportError as e: +# import logging +# logging.basicConfig(format="%(levelname)s: %(message)s") +# logging.warning("Build tool `jupyter-packaging` is missing. Install it with pip or conda.") +# if not ("--name" in sys.argv or "--version" in sys.argv): +# raise e + if __name__ == '__main__': setup(**setup_args) diff --git a/lab/tsconfig.eslint.json b/tsconfig.eslint.json similarity index 100% rename from lab/tsconfig.eslint.json rename to tsconfig.eslint.json diff --git a/lab/tsconfigbase.json b/tsconfigbase.json similarity index 100% rename from lab/tsconfigbase.json rename to tsconfigbase.json diff --git a/lab/yarn.lock b/yarn.lock similarity index 91% rename from lab/yarn.lock rename to yarn.lock index 105b040d..7c4bec5b 100644 --- a/lab/yarn.lock +++ b/yarn.lock @@ -483,6 +483,15 @@ gud "^1.0.0" warning "^4.0.3" +"@iarna/cli@^1.2.0": + version "1.2.0" + resolved "https://registry.yarnpkg.com/@iarna/cli/-/cli-1.2.0.tgz#0f7af5e851afe895104583c4ca07377a8094d641" + integrity sha512-ukITQAqVs2n9HGmn3car/Ir7d3ta650iXhrG7pjr3EWdFmJuuOVWgYsu7ftsSe5VifEFFhjxVuX9+8F7L8hwcA== + dependencies: + signal-exit "^3.0.2" + update-notifier "^2.2.0" + yargs "^8.0.2" + "@istanbuljs/load-nyc-config@^1.0.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz#fd3db1d59ecf7cf121e80650bb86712f9b55eced" @@ -2978,7 +2987,7 @@ mkdirp-promise "^5.0.1" mz "^2.5.0" -JSONStream@1.3.5, JSONStream@^1.0.4, JSONStream@^1.3.4: +JSONStream@1.3.5, JSONStream@^1.0.4, JSONStream@^1.3.4, JSONStream@^1.3.5: version "1.3.5" resolved "https://registry.yarnpkg.com/JSONStream/-/JSONStream-1.3.5.tgz#3208c1f08d3a4d99261ab64f92302bc15e111ca0" integrity sha512-E+iruNOY8VV9s4JEbe1aNEm6MiszPRr/UfcHMz0TQh1BXSxHK+ASV1R6W4HpjBhSeS+54PIsAMCBmwD06LLsqQ== @@ -2991,7 +3000,7 @@ abab@^2.0.0, abab@^2.0.3, abab@^2.0.5: resolved "https://registry.yarnpkg.com/abab/-/abab-2.0.5.tgz#c0b678fb32d60fc1219c784d6a826fe385aeb79a" integrity sha512-9IK9EadsbHo6jLWIpxpR6pL0sazTXV6+SQv25ZB+F7Bj9mJNaOc4nCRabwd5M/JwmUa8idz6Eci6eKfJryPs6Q== -abbrev@1: +abbrev@1, abbrev@~1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== @@ -3128,6 +3137,14 @@ ajv-keywords@^3.1.0, ajv-keywords@^3.5.2: resolved "https://registry.yarnpkg.com/ajv-keywords/-/ajv-keywords-3.5.2.tgz#31f29da5ab6e00d1c2d329acf7b5929614d5014d" integrity sha512-5p6WTN0DdTGVQk6VjcEju19IgaHudalcfabD7yhDGeA6bcQnmL+CpveLJq/3hvfwd1aof6L386Ougkx6RfyMIQ== +ajv@^4.9.1: + version "4.11.8" + resolved "https://registry.yarnpkg.com/ajv/-/ajv-4.11.8.tgz#82ffb02b29e662ae53bdc20af15947706739c536" + integrity sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY= + dependencies: + co "^4.6.0" + json-stable-stringify "^1.0.1" + ajv@^6.1.0, ajv@^6.10.0, ajv@^6.12.3, ajv@^6.12.4, ajv@^6.12.5: version "6.12.6" resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.6.tgz#baf5a62e802b07d977034586f8c3baf5adf26df4" @@ -3148,6 +3165,18 @@ ajv@^8.0.1: require-from-string "^2.0.2" uri-js "^4.2.2" +amdefine@>=0.0.4: + version "1.0.1" + resolved "https://registry.yarnpkg.com/amdefine/-/amdefine-1.0.1.tgz#4a5282ac164729e93619bcfd3ad151f817ce91f5" + integrity sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU= + +ansi-align@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/ansi-align/-/ansi-align-2.0.0.tgz#c36aeccba563b89ceb556f3690f0b1d9e3547f7f" + integrity sha1-w2rsy6VjuJzrVW82kPCx2eNUf38= + dependencies: + string-width "^2.0.0" + ansi-colors@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348" @@ -3199,6 +3228,16 @@ ansi-styles@^4.0.0, ansi-styles@^4.1.0: dependencies: color-convert "^2.0.1" +ansicolors@~0.3.2: + version "0.3.2" + resolved "https://registry.yarnpkg.com/ansicolors/-/ansicolors-0.3.2.tgz#665597de86a9ffe3aa9bfbe6cae5c6ea426b4979" + integrity sha1-ZlWX3oap/+Oqm/vmyuXG6kJrSXk= + +ansistyles@~0.1.3: + version "0.1.3" + resolved "https://registry.yarnpkg.com/ansistyles/-/ansistyles-0.1.3.tgz#5de60415bda071bb37127854c864f41b23254539" + integrity sha1-XeYEFb2gcbs3EnhUyGT0GyMlRTk= + any-promise@^1.0.0: version "1.3.0" resolved "https://registry.yarnpkg.com/any-promise/-/any-promise-1.3.0.tgz#abc6afeedcea52e809cdc0376aed3ce39635d17f" @@ -3225,16 +3264,21 @@ apache-md5@1.1.2: resolved "https://registry.yarnpkg.com/apache-md5/-/apache-md5-1.1.2.tgz#ee49736b639b4f108b6e9e626c6da99306b41692" integrity sha1-7klza2ObTxCLbp5ibG2pkwa0FpI= -aproba@^1.0.3, aproba@^1.1.1: +aproba@^1.0.3, aproba@^1.1.1, aproba@^1.1.2: version "1.2.0" resolved "https://registry.yarnpkg.com/aproba/-/aproba-1.2.0.tgz#6802e6264efd18c790a1b0d517f0f2627bf2c94a" integrity sha512-Y9J6ZjXtoYh8RnXVCMOU/ttDmk1aBjunq9vO0ta5x85WDQiQfUF9sIPBITdbiiIVcBo03Hi3jMxigBtsddlXRw== -aproba@^2.0.0: +"aproba@^1.1.2 || 2", aproba@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/aproba/-/aproba-2.0.0.tgz#52520b8ae5b569215b354efc0caa3fe1e45a8adc" integrity sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ== +archy@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/archy/-/archy-1.0.0.tgz#f9c8c13757cc1dd7bc379ac77b2c62a5c2868c40" + integrity sha1-+cjBN1fMHde8N5rHeyxipcKGjEA= + are-we-there-yet@~1.1.2: version "1.1.7" resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz#b15474a932adab4ff8a50d9adfa7e4e926f21146" @@ -3347,7 +3391,7 @@ arrify@^1.0.1: resolved "https://registry.yarnpkg.com/arrify/-/arrify-1.0.1.tgz#898508da2226f380df904728456849c1501a4b0d" integrity sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0= -asap@^2.0.0: +asap@^2.0.0, asap@~2.0.3: version "2.0.6" resolved "https://registry.yarnpkg.com/asap/-/asap-2.0.6.tgz#e50347611d7e690943208bbdafebcbc2fb866d46" integrity sha1-5QNHYR1+aQlDIIu9r+vLwvuGbUY= @@ -3364,6 +3408,11 @@ assert-plus@1.0.0, assert-plus@^1.0.0: resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-1.0.0.tgz#f12e0f3c5d77b0b1cdd9146942e4e96c1e4dd525" integrity sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU= +assert-plus@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/assert-plus/-/assert-plus-0.2.0.tgz#d74e1b87e7affc0db8aadb7021f3fe48101ab234" + integrity sha1-104bh+ev/A24qttwIfP+SBAasjQ= + assign-symbols@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/assign-symbols/-/assign-symbols-1.0.0.tgz#59667f41fadd4f20ccbc2bb96b8d4f7f78ec0367" @@ -3414,12 +3463,27 @@ atomic-sleep@^1.0.0: resolved "https://registry.yarnpkg.com/atomic-sleep/-/atomic-sleep-1.0.0.tgz#eb85b77a601fc932cfe432c5acd364a9e2c9075b" integrity sha512-kNOjDqAh7px0XWNI+4QbzoiR/nTkHAWNud2uvnJquD1/x5a7EQZMJT0AczqK0Qn67oY/TTQ1LbUKajZpp3I9tQ== +autoprefixer-core@^5.0.0: + version "5.2.1" + resolved "https://registry.yarnpkg.com/autoprefixer-core/-/autoprefixer-core-5.2.1.tgz#e640c414ae419aae21c1ad43c8ea0f3db82a566d" + integrity sha1-5kDEFK5Bmq4hwa1DyOoPPbgqVm0= + dependencies: + browserslist "~0.4.0" + caniuse-db "^1.0.30000214" + num2fraction "^1.1.0" + postcss "~4.1.12" + +aws-sign2@~0.6.0: + version "0.6.0" + resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.6.0.tgz#14342dd38dbcc94d0e5b87d763cd63612c0e794f" + integrity sha1-FDQt0428yU0OW4fXY81jYSwOeU8= + aws-sign2@~0.7.0: version "0.7.0" resolved "https://registry.yarnpkg.com/aws-sign2/-/aws-sign2-0.7.0.tgz#b46e890934a9591f2d2f6f86d7e6a9f1b3fe76a8" integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg= -aws4@^1.8.0: +aws4@^1.2.1, aws4@^1.8.0: version "1.11.0" resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.11.0.tgz#d61f46d83b2519250e2784daf5b09479a8b41c59" integrity sha512-xh1Rl34h6Fi1DC2WWKfxUTVqRsNnr6LsKz2+hfwDxQJWmrx8+c7ylaqBMcHfl1U1r2dsifOvKX3LQuLNZ+XSvA== @@ -3535,6 +3599,18 @@ big.js@^5.2.2: resolved "https://registry.yarnpkg.com/big.js/-/big.js-5.2.2.tgz#65f0af382f578bcdc742bd9c281e9cb2d7768328" integrity sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ== +bin-links@^1.1.2, bin-links@^1.1.8: + version "1.1.8" + resolved "https://registry.yarnpkg.com/bin-links/-/bin-links-1.1.8.tgz#bd39aadab5dc4bdac222a07df5baf1af745b2228" + integrity sha512-KgmVfx+QqggqP9dA3iIc5pA4T1qEEEL+hOhOhNPaUm77OTrJoOXE/C05SJLNJe6m/2wUK7F1tDSou7n5TfCDzQ== + dependencies: + bluebird "^3.5.3" + cmd-shim "^3.0.0" + gentle-fs "^2.3.0" + graceful-fs "^4.1.15" + npm-normalize-package-bin "^1.0.0" + write-file-atomic "^2.3.0" + blacklist@^1.1.4: version "1.1.4" resolved "https://registry.yarnpkg.com/blacklist/-/blacklist-1.1.4.tgz#b2dd09d6177625b2caa69835a37b28995fa9a2f2" @@ -3561,6 +3637,26 @@ body-parser@1.19.0: raw-body "2.4.0" type-is "~1.6.17" +boom@2.x.x: + version "2.10.1" + resolved "https://registry.yarnpkg.com/boom/-/boom-2.10.1.tgz#39c8918ceff5799f83f9492a848f625add0c766f" + integrity sha1-OciRjO/1eZ+D+UkqhI9iWt0Mdm8= + dependencies: + hoek "2.x.x" + +boxen@^1.2.1: + version "1.3.0" + resolved "https://registry.yarnpkg.com/boxen/-/boxen-1.3.0.tgz#55c6c39a8ba58d9c61ad22cd877532deb665a20b" + integrity sha512-TNPjfTr432qx7yOjQyaXm3dSR0MH9vXp7eT1BFSl/C51g+EFnOR9hTg1IreahGBmDNCehscshe45f+C1TBZbLw== + dependencies: + ansi-align "^2.0.0" + camelcase "^4.0.0" + chalk "^2.0.1" + cli-boxes "^1.0.0" + string-width "^2.0.0" + term-size "^1.2.0" + widest-line "^2.0.0" + brace-expansion@^1.1.7: version "1.1.11" resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.11.tgz#3c7fcbf529d87226f3d2f52b966ff5271eb441dd" @@ -3608,6 +3704,13 @@ browserslist@^4.14.5, browserslist@^4.17.5: node-releases "^2.0.1" picocolors "^1.0.0" +browserslist@~0.4.0: + version "0.4.0" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-0.4.0.tgz#3bd4ab9199dc1b9150d4d6dba4d9d3aabbc86dd4" + integrity sha1-O9SrkZncG5FQ1NbbpNnTqrvIbdQ= + dependencies: + caniuse-db "^1.0.30000153" + bser@2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/bser/-/bser-2.1.1.tgz#e6787da20ece9d07998533cfd9de6f5c38f4bc05" @@ -3668,7 +3771,7 @@ bytes@3.1.0: resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.0.tgz#f6cf7933a360e0588fa9fde85651cdc7f805d1f6" integrity sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg== -cacache@^12.0.0, cacache@^12.0.3: +cacache@^12.0.0, cacache@^12.0.2, cacache@^12.0.3: version "12.0.4" resolved "https://registry.yarnpkg.com/cacache/-/cacache-12.0.4.tgz#668bcbd105aeb5f1d92fe25570ec9525c8faa40c" integrity sha512-a0tMB40oefvuInr4Cwb3GerbL9xTj1D5yg0T5xrjGCGyfvbxseIXX7BAO/u/hIXdafzOI5JC3wDwHyf24buOAQ== @@ -3749,6 +3852,11 @@ call-bind@^1.0.0, call-bind@^1.0.2: function-bind "^1.1.1" get-intrinsic "^1.0.2" +call-limit@^1.1.1: + version "1.1.1" + resolved "https://registry.yarnpkg.com/call-limit/-/call-limit-1.1.1.tgz#ef15f2670db3f1992557e2d965abc459e6e358d4" + integrity sha512-5twvci5b9eRBw2wCfPtN0GmlR2/gadZqyFpPhOK6CvMFoFgA+USnZ6Jpu1lhG9h85pQ3Ouil3PfXWRD4EUaRiQ== + call-me-maybe@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/call-me-maybe/-/call-me-maybe-1.0.1.tgz#26d208ea89e37b5cbde60250a15f031c16a4d66b" @@ -3809,7 +3917,7 @@ camelcase@^2.0.0: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-2.1.1.tgz#7c1d16d679a1bbe59ca02cacecfb011e201f5a1f" integrity sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8= -camelcase@^4.1.0: +camelcase@^4.0.0, camelcase@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-4.1.0.tgz#d545635be1e33c542649c69173e5de6acfae34dd" integrity sha1-1UVjW+HjPFQmScaRc+Xeas+uNN0= @@ -3824,6 +3932,11 @@ camelcase@^6.0.0, camelcase@^6.2.0: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-6.2.0.tgz#924af881c9d525ac9d87f40d964e5cea982a1809" integrity sha512-c7wVvbw3f37nuobQNtgsgG9POC9qMbNuMQmTCqZv23b6MIz0fcYpBiOlv9gEN/hdLdnZTDQhg6e9Dq5M1vKvfg== +caniuse-db@^1.0.30000153, caniuse-db@^1.0.30000214: + version "1.0.30001280" + resolved "https://registry.yarnpkg.com/caniuse-db/-/caniuse-db-1.0.30001280.tgz#e3a26cfb089933bd702e0a2f18d5e1b9f940ace4" + integrity sha512-b22HvM+u7BBIIG2O1K7dZC2UGVfgnQEM27tDqHRJCaDW5mkQ5/dW+DPRJAmt9xF8fryLN8fEjk6UygMohzzWYA== + caniuse-lite@^1.0.30001274: version "1.0.30001280" resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001280.tgz#066a506046ba4be34cde5f74a08db7a396718fb7" @@ -3836,12 +3949,17 @@ capture-exit@^2.0.0: dependencies: rsvp "^4.8.4" +capture-stack-trace@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/capture-stack-trace/-/capture-stack-trace-1.0.1.tgz#a6c0bbe1f38f3aa0b92238ecb6ff42c344d4135d" + integrity sha512-mYQLZnx5Qt1JgB1WEiMCf2647plpGeQ2NMR/5L0HNZzGQo4fuSPnK+wjfPnKZV0aiJDgzmWqqkV/g7JD+DW0qw== + caseless@~0.12.0: version "0.12.0" resolved "https://registry.yarnpkg.com/caseless/-/caseless-0.12.0.tgz#1b681c21ff84033c826543090689420d187151dc" integrity sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw= -chalk@^2.0.0, chalk@^2.3.0, chalk@^2.3.1, chalk@^2.4.1, chalk@^2.4.2: +chalk@^2.0.0, chalk@^2.0.1, chalk@^2.3.0, chalk@^2.3.1, chalk@^2.4.1, chalk@^2.4.2: version "2.4.2" resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== @@ -3888,11 +4006,23 @@ chrome-trace-event@^1.0.2: resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz#1015eced4741e15d06664a957dbbf50d041e26ac" integrity sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg== +ci-info@^1.5.0: + version "1.6.0" + resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-1.6.0.tgz#2ca20dbb9ceb32d4524a683303313f0304b1e497" + integrity sha512-vsGdkwSCDpWmP80ncATX7iea5DWQemg1UgCW5J8tqjU3lYw4FBYuj89J0CTVomA7BEfvSZd84GmHko+MxFQU2A== + ci-info@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/ci-info/-/ci-info-2.0.0.tgz#67a9e964be31a51e15e5010d58e6f12834002f46" integrity sha512-5tK7EtrZ0N+OLFMthtqOj4fI2Jeb88C4CAZPu25LDVUgXJ0A3Js4PMGqrn0JU1W0Mh1/Z8wZzYPxqUrXeBboCQ== +cidr-regex@^2.0.10: + version "2.0.10" + resolved "https://registry.yarnpkg.com/cidr-regex/-/cidr-regex-2.0.10.tgz#af13878bd4ad704de77d6dc800799358b3afa70d" + integrity sha512-sB3ogMQXWvreNPbJUZMRApxuRYd+KoIo4RGQ81VatjmMW6WJPo+IJZ2846FGItr9VzKo5w7DXzijPLGtSd0N3Q== + dependencies: + ip-regex "^2.1.0" + cjs-module-lexer@^0.6.0: version "0.6.0" resolved "https://registry.yarnpkg.com/cjs-module-lexer/-/cjs-module-lexer-0.6.0.tgz#4186fcca0eae175970aee870b9fe2d6cf8d5655f" @@ -3913,11 +4043,32 @@ classnames@^2.2: resolved "https://registry.yarnpkg.com/classnames/-/classnames-2.3.1.tgz#dfcfa3891e306ec1dad105d0e88f4417b8535e8e" integrity sha512-OlQdbZ7gLfGarSqxesMesDa5uz7KFbID8Kpq/SxIoNGDqY8lSYs0D+hhtBXhcdB3rcbXArFr7vlHheLk1voeNA== +clean-css@^3.0.1: + version "3.4.28" + resolved "https://registry.yarnpkg.com/clean-css/-/clean-css-3.4.28.tgz#bf1945e82fc808f55695e6ddeaec01400efd03ff" + integrity sha1-vxlF6C/ICPVWlebd6uwBQA79A/8= + dependencies: + commander "2.8.x" + source-map "0.4.x" + clean-stack@^2.0.0: version "2.2.0" resolved "https://registry.yarnpkg.com/clean-stack/-/clean-stack-2.2.0.tgz#ee8472dbb129e727b31e8a10a427dee9dfe4008b" integrity sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A== +cli-boxes@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/cli-boxes/-/cli-boxes-1.0.0.tgz#4fa917c3e59c94a004cd61f8ee509da651687143" + integrity sha1-T6kXw+WclKAEzWH47lCdplFocUM= + +cli-columns@^3.1.2: + version "3.1.2" + resolved "https://registry.yarnpkg.com/cli-columns/-/cli-columns-3.1.2.tgz#6732d972979efc2ae444a1f08e08fa139c96a18e" + integrity sha1-ZzLZcpee/CrkRKHwjgj6E5yWoY4= + dependencies: + string-width "^2.0.0" + strip-ansi "^3.0.1" + cli-cursor@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/cli-cursor/-/cli-cursor-2.1.0.tgz#b35dac376479facc3e94747d41d0d0f5238ffcb5" @@ -3932,6 +4083,16 @@ cli-cursor@^3.1.0: dependencies: restore-cursor "^3.1.0" +cli-table3@^0.5.0, cli-table3@^0.5.1: + version "0.5.1" + resolved "https://registry.yarnpkg.com/cli-table3/-/cli-table3-0.5.1.tgz#0252372d94dfc40dbd8df06005f48f31f656f202" + integrity sha512-7Qg2Jrep1S/+Q3EceiZtQcDPWxhAvBw+ERf1162v4sikJrvojMHFqXt8QIVha8UlH9rgU0BeWPytZ9/TzYqlUw== + dependencies: + object-assign "^4.1.0" + string-width "^2.1.1" + optionalDependencies: + colors "^1.1.2" + cli-truncate@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/cli-truncate/-/cli-truncate-2.1.0.tgz#c39e28bf05edcde5be3b98992a22deed5a2b93c7" @@ -3957,6 +4118,15 @@ clipanion@3.1.0: dependencies: typanion "^3.3.1" +cliui@^3.2.0: + version "3.2.0" + resolved "https://registry.yarnpkg.com/cliui/-/cliui-3.2.0.tgz#120601537a916d29940f934da3b48d585a39213d" + integrity sha1-EgYBU3qRbSmUD5NNo7SNWFo5IT0= + dependencies: + string-width "^1.0.1" + strip-ansi "^3.0.1" + wrap-ansi "^2.0.0" + cliui@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/cliui/-/cliui-5.0.0.tgz#deefcfdb2e800784aa34f46fa08e06851c7bbbc5" @@ -4010,6 +4180,14 @@ clone@^2.1.2, clone@~2.1.2: resolved "https://registry.yarnpkg.com/clone/-/clone-2.1.2.tgz#1b7f4b9f591f1e8f83670401600345a02887435f" integrity sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18= +cmd-shim@^3.0.0, cmd-shim@^3.0.3: + version "3.0.3" + resolved "https://registry.yarnpkg.com/cmd-shim/-/cmd-shim-3.0.3.tgz#2c35238d3df37d98ecdd7d5f6b8dc6b21cadc7cb" + integrity sha512-DtGg+0xiFhQIntSBRzL2fRQBnmtAVwXIDo4Qq46HPpObYquxMaZS4sb82U9nH91qJrlosC1wa9gwr0QyL/HypA== + dependencies: + graceful-fs "^4.1.2" + mkdirp "~0.5.0" + co@^4.6.0: version "4.6.0" resolved "https://registry.yarnpkg.com/co/-/co-4.6.0.tgz#6ea6bdf3d853ae54ccb8e47bfa0bf3f9031fb184" @@ -4083,7 +4261,12 @@ colorette@^2.0.14, colorette@^2.0.16: resolved "https://registry.yarnpkg.com/colorette/-/colorette-2.0.16.tgz#713b9af84fdb000139f04546bd4a93f62a5085da" integrity sha512-hUewv7oMjCp+wkBv5Rm0v87eJhq4woh5rSR+42YSQJKecCqgIqNkZ6lAlQms/BwHPJA5NKMRlpxPRv0n8HQW6g== -columnify@^1.5.4: +colors@^1.1.2: + version "1.4.0" + resolved "https://registry.yarnpkg.com/colors/-/colors-1.4.0.tgz#c50491479d4c1bdaed2c9ced32cf7c7dc2360f78" + integrity sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA== + +columnify@^1.5.4, columnify@~1.5.4: version "1.5.4" resolved "https://registry.yarnpkg.com/columnify/-/columnify-1.5.4.tgz#4737ddf1c7b69a8a7c340570782e947eec8e78bb" integrity sha1-Rzfd8ce2mop8NAVweC6UfuyOeLs= @@ -4091,7 +4274,7 @@ columnify@^1.5.4: strip-ansi "^3.0.0" wcwidth "^1.0.0" -combined-stream@^1.0.6, combined-stream@^1.0.8, combined-stream@~1.0.6: +combined-stream@^1.0.5, combined-stream@^1.0.6, combined-stream@^1.0.8, combined-stream@~1.0.5, combined-stream@~1.0.6: version "1.0.8" resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f" integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg== @@ -4103,6 +4286,13 @@ commander@2, commander@^2.20.0: resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== +commander@2.8.x: + version "2.8.1" + resolved "https://registry.yarnpkg.com/commander/-/commander-2.8.1.tgz#06be367febfda0c330aa1e2a072d3dc9762425d4" + integrity sha1-Br42f+v9oMMwqh4qBy09yXYkJdQ= + dependencies: + graceful-readlink ">= 1.0.0" + commander@^6.2.0: version "6.2.1" resolved "https://registry.yarnpkg.com/commander/-/commander-6.2.1.tgz#0792eb682dfbc325999bb2b84fddddba110ac73c" @@ -4186,7 +4376,7 @@ concat-stream@^2.0.0: readable-stream "^3.0.2" typedarray "^0.0.6" -config-chain@^1.1.11: +config-chain@^1.1.11, config-chain@^1.1.12: version "1.1.13" resolved "https://registry.yarnpkg.com/config-chain/-/config-chain-1.1.13.tgz#fad0795aa6a6cdaff9ed1b68e9dff94372c232f4" integrity sha512-qj+f8APARXHrM0hraqXYb2/bOVSV4PvJQlNZ/DVj0QrmNM2q2euizkeuVckQ57J+W0mRH6Hvi+k50M4Jul2VRQ== @@ -4194,7 +4384,19 @@ config-chain@^1.1.11: ini "^1.3.4" proto-list "~1.2.1" -console-control-strings@^1.0.0, console-control-strings@~1.1.0: +configstore@^3.0.0: + version "3.1.5" + resolved "https://registry.yarnpkg.com/configstore/-/configstore-3.1.5.tgz#e9af331fadc14dabd544d3e7e76dc446a09a530f" + integrity sha512-nlOhI4+fdzoK5xmJ+NY+1gZK56bwEaWZr8fYuXohZ9Vkc1o3a4T/R3M+yE/w7x/ZVJ1zF8c+oaOvF0dztdUgmA== + dependencies: + dot-prop "^4.2.1" + graceful-fs "^4.1.2" + make-dir "^1.0.0" + unique-string "^1.0.0" + write-file-atomic "^2.0.0" + xdg-basedir "^3.0.0" + +console-control-strings@^1.0.0, console-control-strings@^1.1.0, console-control-strings@~1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" integrity sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4= @@ -4374,6 +4576,13 @@ cosmiconfig@^7.0.0: path-type "^4.0.0" yaml "^1.10.0" +create-error-class@^3.0.0: + version "3.0.2" + resolved "https://registry.yarnpkg.com/create-error-class/-/create-error-class-3.0.2.tgz#06be7abef947a3f14a30fd610671d401bca8b7b6" + integrity sha1-Br56vvlHo/FKMP1hBnHUAbyot7Y= + dependencies: + capture-stack-trace "^1.0.0" + create-react-class@^15.6.2: version "15.7.0" resolved "https://registry.yarnpkg.com/create-react-class/-/create-react-class-15.7.0.tgz#7499d7ca2e69bb51d13faf59bd04f0c65a1d6c1e" @@ -4382,6 +4591,15 @@ create-react-class@^15.6.2: loose-envify "^1.3.1" object-assign "^4.1.1" +cross-spawn@^5.0.1: + version "5.1.0" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-5.1.0.tgz#e8bd0efee58fcff6f8f94510a0a554bbfa235449" + integrity sha1-6L0O/uWPz/b4+UUQoKVUu/ojVEk= + dependencies: + lru-cache "^4.0.1" + shebang-command "^1.2.0" + which "^1.2.9" + cross-spawn@^6.0.0, cross-spawn@^6.0.5: version "6.0.5" resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-6.0.5.tgz#4a5ec7c64dfae22c3a14124dbacdee846d80cbc4" @@ -4402,6 +4620,18 @@ cross-spawn@^7.0.0, cross-spawn@^7.0.2, cross-spawn@^7.0.3: shebang-command "^2.0.0" which "^2.0.1" +cryptiles@2.x.x: + version "2.0.5" + resolved "https://registry.yarnpkg.com/cryptiles/-/cryptiles-2.0.5.tgz#3bdfecdc608147c1c67202fa291e7dca59eaa3b8" + integrity sha1-O9/s3GCBR8HGcgL6KR59ylnqo7g= + dependencies: + boom "2.x.x" + +crypto-random-string@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/crypto-random-string/-/crypto-random-string-1.0.0.tgz#a230f64f568310e1498009940790ec99545bca7e" + integrity sha1-ojD2T1aDEOFJgAmUB5DsmVRbyn4= + crypto@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/crypto/-/crypto-1.0.1.tgz#2af1b7cad8175d24c8a1b0778255794a21803037" @@ -4706,7 +4936,7 @@ decamelize-keys@^1.0.0, decamelize-keys@^1.1.0: decamelize "^1.1.0" map-obj "^1.0.0" -decamelize@^1.1.0, decamelize@^1.1.2, decamelize@^1.2.0: +decamelize@^1.1.0, decamelize@^1.1.1, decamelize@^1.1.2, decamelize@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" integrity sha1-9lNNFRSCabIDUue+4m9QH5oZEpA= @@ -4849,7 +5079,7 @@ destroy@~1.0.4: resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.0.4.tgz#978857442c44749e4206613e37946205826abd80" integrity sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA= -detect-indent@^5.0.0: +detect-indent@^5.0.0, detect-indent@~5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/detect-indent/-/detect-indent-5.0.0.tgz#3871cc0a6a002e8c3e5b3cf7f336264675f06b9d" integrity sha1-OHHMCmoALow+Wzz38zYmRnXwa50= @@ -4864,7 +5094,12 @@ detect-newline@3.1.0, detect-newline@^3.0.0: resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-3.1.0.tgz#576f5dfc63ae1a192ff192d8ad3af6308991b651" integrity sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA== -dezalgo@^1.0.0: +detect-newline@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/detect-newline/-/detect-newline-2.1.0.tgz#f41f1c10be4b00e87b5f13da680759f2c5bfd3e2" + integrity sha1-9B8cEL5LAOh7XxPaaAdZ8sW/0+I= + +dezalgo@^1.0.0, dezalgo@~1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/dezalgo/-/dezalgo-1.0.3.tgz#7f742de066fc748bc8db820569dddce49bf0d456" integrity sha1-f3Qt4Gb8dIvI24IFad3c5Jvw1FY= @@ -4966,7 +5201,7 @@ domutils@^2.5.2: domelementtype "^2.2.0" domhandler "^4.2.0" -dot-prop@^4.2.0: +dot-prop@^4.2.0, dot-prop@^4.2.1: version "4.2.1" resolved "https://registry.yarnpkg.com/dot-prop/-/dot-prop-4.2.1.tgz#45884194a71fc2cda71cbb4bceb3a4dd2f433ba4" integrity sha512-l0p4+mIuJIua0mhxGoh4a+iNL9bmeK5DvnSVQa6T0OhrVmaEa1XScX5Etc673FePCJOArq/4Pa2cLGODUWTPOQ== @@ -4980,6 +5215,11 @@ dot-prop@^5.1.0: dependencies: is-obj "^2.0.0" +dotenv@^5.0.1: + version "5.0.1" + resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-5.0.1.tgz#a5317459bd3d79ab88cff6e44057a6a3fbb1fcef" + integrity sha512-4As8uPrjfwb7VXC+WnLCbXK7y+Ueb2B3zgNCePYfhxS1PYeaO1YTeplffTEcbfLhvFNGLAz90VvJs9yomG7bow== + duplexer3@^0.1.4: version "0.1.4" resolved "https://registry.yarnpkg.com/duplexer3/-/duplexer3-0.1.4.tgz#ee01dd1cac0ed3cbc7fdbea37dc0a8f1ce002ce2" @@ -5025,6 +5265,11 @@ ecdsa-sig-formatter@1.0.11: dependencies: safe-buffer "^5.0.1" +editor@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/editor/-/editor-1.0.0.tgz#60c7f87bd62bcc6a894fa8ccd6afb7823a24f742" + integrity sha1-YMf4e9YrzGqJT6jM1q+3gjok90I= + ee-first@1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" @@ -5119,7 +5364,7 @@ err-code@^1.0.0: resolved "https://registry.yarnpkg.com/err-code/-/err-code-1.1.2.tgz#06e0116d3028f6aef4806849eb0ea6a748ae6960" integrity sha1-BuARbTAo9q70gGhJ6w6mp0iuaWA= -errno@~0.1.1: +errno@^0.1.1, errno@~0.1.1, errno@~0.1.7: version "0.1.8" resolved "https://registry.yarnpkg.com/errno/-/errno-0.1.8.tgz#8bb3e9c7d463be4976ff888f76b4809ebc2e811f" integrity sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A== @@ -5196,6 +5441,11 @@ es6-promise@^4.0.3, es6-promise@~4.2.8: resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-4.2.8.tgz#4eb21594c972bc40553d276e510539143db53e0a" integrity sha512-HJDGx5daxeIvxdBxvG2cb9g4tEvwIk3i8+nhX0yGrYmZUzbkdg8QbDevheDB8gd0//uPj4c1EQua8Q+MViT0/w== +es6-promise@~2.3.0: + version "2.3.0" + resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-2.3.0.tgz#96edb9f2fdb01995822b263dd8aadab6748181bc" + integrity sha1-lu258v2wGZWCKyY92KratnSBgbw= + es6-promisify@^5.0.0: version "5.0.0" resolved "https://registry.yarnpkg.com/es6-promisify/-/es6-promisify-5.0.0.tgz#5109d62f3e56ea967c4b63505aef08291c8a5203" @@ -5475,6 +5725,19 @@ exec-sh@^0.3.2: resolved "https://registry.yarnpkg.com/exec-sh/-/exec-sh-0.3.6.tgz#ff264f9e325519a60cb5e273692943483cca63bc" integrity sha512-nQn+hI3yp+oD0huYhKwvYI32+JFeq+XkNcD1GAo3Y/MjxsfVGmrrzrnzjWiNY6f+pUCP440fThsFh5gZrRAU/w== +execa@^0.7.0: + version "0.7.0" + resolved "https://registry.yarnpkg.com/execa/-/execa-0.7.0.tgz#944becd34cc41ee32a63a9faf27ad5a65fc59777" + integrity sha1-lEvs00zEHuMqY6n68nrVpl/Fl3c= + dependencies: + cross-spawn "^5.0.1" + get-stream "^3.0.0" + is-stream "^1.1.0" + npm-run-path "^2.0.0" + p-finally "^1.0.0" + signal-exit "^3.0.0" + strip-eof "^1.0.0" + execa@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/execa/-/execa-1.0.0.tgz#c6236a5bb4df6d6f15e88e7f017798216749ddd8" @@ -5606,7 +5869,7 @@ extend-shallow@^3.0.0, extend-shallow@^3.0.2: assign-symbols "^1.0.0" is-extendable "^1.0.1" -extend@~3.0.2: +extend@~3.0.0, extend@~3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/extend/-/extend-3.0.2.tgz#f8b1136b4071fbd8eb140aff858b1019ec2915fa" integrity sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g== @@ -5840,6 +6103,11 @@ find-cache-dir@^3.3.1: make-dir "^3.0.2" pkg-dir "^4.1.0" +find-npm-prefix@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/find-npm-prefix/-/find-npm-prefix-1.0.2.tgz#8d8ce2c78b3b4b9e66c8acc6a37c231eb841cfdf" + integrity sha512-KEftzJ+H90x6pcKtdXZEPsQse8/y/UnvzRKrOSQFprnrGaFuJ62fVkP34Iu2IYuMvyauCyoLTNkJZgrrGA2wkA== + find-root@^1.0.0: version "1.1.0" resolved "https://registry.yarnpkg.com/find-root/-/find-root-1.1.0.tgz#abcfc8ba76f708c42a97b3d685b7e9450bfb9ce4" @@ -5920,6 +6188,15 @@ form-data@^3.0.0: combined-stream "^1.0.8" mime-types "^2.1.12" +form-data@~2.1.1: + version "2.1.4" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.1.4.tgz#33c183acf193276ecaa98143a69e94bfee1750d1" + integrity sha1-M8GDrPGTJ27KqYFDpp6Uv+4XUNE= + dependencies: + asynckit "^0.4.0" + combined-stream "^1.0.5" + mime-types "^2.1.12" + form-data@~2.3.2: version "2.3.3" resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.3.3.tgz#dcce52c05f644f298c6a7ab936bd724ceffbf3a6" @@ -5951,6 +6228,14 @@ fresh@0.5.2: resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" integrity sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac= +from2@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/from2/-/from2-1.3.0.tgz#88413baaa5f9a597cfde9221d86986cd3c061dfd" + integrity sha1-iEE7qqX5pZfP3pIh2GmGzTwGHf0= + dependencies: + inherits "~2.0.1" + readable-stream "~1.1.10" + from2@^2.1.0: version "2.3.0" resolved "https://registry.yarnpkg.com/from2/-/from2-2.3.0.tgz#8bfb5502bde4a4d36cfdeea007fcca21d7e382af" @@ -5992,7 +6277,16 @@ fs-minipass@^2.0.0: dependencies: minipass "^3.0.0" -fs-write-stream-atomic@^1.0.8: +fs-vacuum@^1.2.10, fs-vacuum@~1.2.10: + version "1.2.10" + resolved "https://registry.yarnpkg.com/fs-vacuum/-/fs-vacuum-1.2.10.tgz#b7629bec07a4031a2548fdf99f5ecf1cc8b31e36" + integrity sha1-t2Kb7AekAxolSP35n17PHMizHjY= + dependencies: + graceful-fs "^4.1.2" + path-is-inside "^1.0.1" + rimraf "^2.5.2" + +fs-write-stream-atomic@^1.0.8, fs-write-stream-atomic@~1.0.10: version "1.0.10" resolved "https://registry.yarnpkg.com/fs-write-stream-atomic/-/fs-write-stream-atomic-1.0.10.tgz#b47df53493ef911df75731e70a9ded0189db40c9" integrity sha1-tH31NJPvkR33VzHnCp3tAYnbQMk= @@ -6046,6 +6340,28 @@ gensync@^1.0.0-beta.2: resolved "https://registry.yarnpkg.com/gensync/-/gensync-1.0.0-beta.2.tgz#32a6ee76c3d7f52d46b2b1ae5d93fea8580a25e0" integrity sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg== +gentle-fs@^2.3.0, gentle-fs@^2.3.1: + version "2.3.1" + resolved "https://registry.yarnpkg.com/gentle-fs/-/gentle-fs-2.3.1.tgz#11201bf66c18f930ddca72cf69460bdfa05727b1" + integrity sha512-OlwBBwqCFPcjm33rF2BjW+Pr6/ll2741l+xooiwTCeaX2CA1ZuclavyMBe0/KlR21/XGsgY6hzEQZ15BdNa13Q== + dependencies: + aproba "^1.1.2" + chownr "^1.1.2" + cmd-shim "^3.0.3" + fs-vacuum "^1.2.10" + graceful-fs "^4.1.11" + iferr "^0.1.5" + infer-owner "^1.0.4" + mkdirp "^0.5.1" + path-is-inside "^1.0.2" + read-cmd-shim "^1.0.1" + slide "^1.1.6" + +get-caller-file@^1.0.1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-1.0.3.tgz#f978fa4c90d1dfe7ff2d6beda2a515e713bdcf4a" + integrity sha512-3t6rVToeoZfYSGd8YoLFR2DJkiQrIiUrGcjvFX2mDw3bn6k2OtwHN0TNCLbBO+w8qTvimhDkv+LSscbJY1vE6w== + get-caller-file@^2.0.1, get-caller-file@^2.0.5: version "2.0.5" resolved "https://registry.yarnpkg.com/get-caller-file/-/get-caller-file-2.0.5.tgz#4f94412a82db32f36e3b0b9741f8a97feb031f7e" @@ -6101,6 +6417,11 @@ get-stdin@^7.0.0: resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-7.0.0.tgz#8d5de98f15171a125c5e516643c7a6d0ea8a96f6" integrity sha512-zRKcywvrXlXsA0v0i9Io4KDRaAw7+a1ZpjRwl9Wox8PFlVCCHra7E9c4kqXCoCM9nR5tBkaTTZRBoCm60bFqTQ== +get-stream@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14" + integrity sha1-jpQ9E1jcN1VQVOy+LtsFqhdO3hQ= + get-stream@^4.0.0, get-stream@^4.1.0: version "4.1.0" resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-4.1.0.tgz#c1b255575f3dc21d59bfc79cd3d2b46b1c3a54b5" @@ -6230,7 +6551,7 @@ glob@^6.0.1: once "^1.3.0" path-is-absolute "^1.0.0" -glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4: +glob@^7.1.1, glob@^7.1.2, glob@^7.1.3, glob@^7.1.4, glob@^7.1.6: version "7.2.0" resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.0.tgz#d15535af7732e02e948f4c41628bd910293f6023" integrity sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q== @@ -6254,6 +6575,13 @@ glob@~7.1.6: once "^1.3.0" path-is-absolute "^1.0.0" +global-dirs@^0.1.0: + version "0.1.1" + resolved "https://registry.yarnpkg.com/global-dirs/-/global-dirs-0.1.1.tgz#b319c0dd4607f353f3be9cca4c72fc148c49f445" + integrity sha1-sxnA3UYH81PzvpzKTHL8FIxJ9EU= + dependencies: + ini "^1.3.4" + globals@^11.1.0: version "11.12.0" resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" @@ -6306,6 +6634,23 @@ globby@^9.2.0: pify "^4.0.1" slash "^2.0.0" +got@^6.7.1: + version "6.7.1" + resolved "https://registry.yarnpkg.com/got/-/got-6.7.1.tgz#240cd05785a9a18e561dc1b44b41c763ef1e8db0" + integrity sha1-JAzQV4WpoY5WHcG0S0HHY+8ejbA= + dependencies: + create-error-class "^3.0.0" + duplexer3 "^0.1.4" + get-stream "^3.0.0" + is-redirect "^1.0.0" + is-retry-allowed "^1.0.0" + is-stream "^1.0.0" + lowercase-keys "^1.0.0" + safe-buffer "^5.0.1" + timed-out "^4.0.0" + unzip-response "^2.0.1" + url-parse-lax "^1.0.0" + got@^9.6.0: version "9.6.0" resolved "https://registry.yarnpkg.com/got/-/got-9.6.0.tgz#edf45e7d67f99545705de1f7bbeeeb121765ed85" @@ -6328,6 +6673,11 @@ graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.3 resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.8.tgz#e412b8d33f5e006593cbd3cee6df9f2cebbe802a" integrity sha512-qkIilPUYcNhJpd33n0GBXTB1MMPp14TxEsEs0pTrsSVucApsYzW5V+Q8Qxhik6KU3evy+qkAAowTByymK0avdg== +"graceful-readlink@>= 1.0.0": + version "1.0.1" + resolved "https://registry.yarnpkg.com/graceful-readlink/-/graceful-readlink-1.0.1.tgz#4cafad76bc62f02fa039b2f94e9a3dd3a391a725" + integrity sha1-TK+tdrxi8C+gObL5Tpo906ORpyU= + growly@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/growly/-/growly-1.3.0.tgz#f10748cbe76af964b7c96c93c6bcc28af120c081" @@ -6357,11 +6707,24 @@ handlebars@4.7.7, handlebars@^4.7.6: optionalDependencies: uglify-js "^3.1.4" +har-schema@^1.0.5: + version "1.0.5" + resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-1.0.5.tgz#d263135f43307c02c602afc8fe95970c0151369e" + integrity sha1-0mMTX0MwfALGAq/I/pWXDAFRNp4= + har-schema@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92" integrity sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI= +har-validator@~4.2.1: + version "4.2.1" + resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-4.2.1.tgz#33481d0f1bbff600dd203d75812a6a5fba002e2a" + integrity sha1-M0gdDxu/9gDdID11gSpqX7oALio= + dependencies: + ajv "^4.9.1" + har-schema "^1.0.5" + har-validator@~5.1.0, har-validator@~5.1.3: version "5.1.5" resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.1.5.tgz#1f0803b9f8cb20c0fa13822df1ecddb36bde1efd" @@ -6402,7 +6765,7 @@ has-tostringtag@^1.0.0: dependencies: has-symbols "^1.0.2" -has-unicode@^2.0.0, has-unicode@^2.0.1: +has-unicode@^2.0.0, has-unicode@^2.0.1, has-unicode@~2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9" integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk= @@ -6445,7 +6808,22 @@ has@^1.0.3: dependencies: function-bind "^1.1.1" -hosted-git-info@^2.1.4, hosted-git-info@^2.7.1: +hawk@~3.1.3: + version "3.1.3" + resolved "https://registry.yarnpkg.com/hawk/-/hawk-3.1.3.tgz#078444bd7c1640b0fe540d2c9b73d59678e8e1c4" + integrity sha1-B4REvXwWQLD+VA0sm3PVlnjo4cQ= + dependencies: + boom "2.x.x" + cryptiles "2.x.x" + hoek "2.x.x" + sntp "1.x.x" + +hoek@2.x.x: + version "2.16.3" + resolved "https://registry.yarnpkg.com/hoek/-/hoek-2.16.3.tgz#20bb7403d3cea398e91dc4710a8ff1b8274a25ed" + integrity sha1-ILt0A9POo5jpHcRxCo/xuCdKJe0= + +hosted-git-info@^2.1.4, hosted-git-info@^2.7.1, hosted-git-info@^2.8.9: version "2.8.9" resolved "https://registry.yarnpkg.com/hosted-git-info/-/hosted-git-info-2.8.9.tgz#dffc0bf9a21c02209090f2aa69429e1414daf3f9" integrity sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw== @@ -6546,6 +6924,15 @@ http-proxy-agent@^4.0.1: agent-base "6" debug "4" +http-signature@~1.1.0: + version "1.1.1" + resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.1.1.tgz#df72e267066cd0ac67fb76adf8e134a8fbcf91bf" + integrity sha1-33LiZwZs0Kxn+3at+OE0qPvPkb8= + dependencies: + assert-plus "^0.2.0" + jsprim "^1.2.2" + sshpk "^1.7.0" + http-signature@~1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/http-signature/-/http-signature-1.2.0.tgz#9aecd925114772f3d95b65a60abb8f7c18fbace1" @@ -6639,6 +7026,11 @@ iferr@^0.1.5: resolved "https://registry.yarnpkg.com/iferr/-/iferr-0.1.5.tgz#c60eed69e6d8fdb6b3104a1fcbca1c192dc5b501" integrity sha1-xg7taebY/bazEEofy8ocGS3FtQE= +iferr@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/iferr/-/iferr-1.0.2.tgz#e9fde49a9da06dc4a4194c6c9ed6d08305037a6d" + integrity sha512-9AfeLfji44r5TKInjhz3W9DyZI1zR1JAf2hVBMGhddAKPqBsupb89jGfbCTHIGZd6fGZl9WlHdn4AObygyMKwg== + ignore-walk@^3.0.1: version "3.0.4" resolved "https://registry.yarnpkg.com/ignore-walk/-/ignore-walk-3.0.4.tgz#c9a09f69b7c7b479a5d74ac1a3c0d4236d2a6335" @@ -6656,6 +7048,11 @@ ignore@^5.1.1, ignore@^5.1.4, ignore@^5.1.8: resolved "https://registry.yarnpkg.com/ignore/-/ignore-5.1.9.tgz#9ec1a5cbe8e1446ec60d4420060d43aa6e7382fb" integrity sha512-2zeMQpbKz5dhZ9IwL0gbxSW5w0NK/MSAMtNuhgIHEPmaU3vPdKPL0UdvUCXs5SS4JAwsBxysK5sFMW8ocFiVjQ== +image-size@~0.5.0: + version "0.5.5" + resolved "https://registry.yarnpkg.com/image-size/-/image-size-0.5.5.tgz#09dfd4ab9d20e29eb1c3e80b8990378df9e3cb9c" + integrity sha1-Cd/Uq50g4p6xw+gLiZA3jfnjy5w= + immediate@^3.2.3: version "3.3.0" resolved "https://registry.yarnpkg.com/immediate/-/immediate-3.3.0.tgz#1aef225517836bcdf7f2a2de2600c79ff0269266" @@ -6677,6 +7074,11 @@ import-fresh@^3.0.0, import-fresh@^3.2.1: parent-module "^1.0.0" resolve-from "^4.0.0" +import-lazy@^2.1.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/import-lazy/-/import-lazy-2.1.0.tgz#05698e3d45c88e8d7e9d92cb0584e77f096f3e43" + integrity sha1-BWmOPUXIjo1+nZLLBYTnfwlvPkM= + import-local@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/import-local/-/import-local-2.0.0.tgz#55070be38a5993cf18ef6db7e961f5bee5c5a09d" @@ -6720,7 +7122,7 @@ infer-owner@^1.0.3, infer-owner@^1.0.4: resolved "https://registry.yarnpkg.com/infer-owner/-/infer-owner-1.0.4.tgz#c4cefcaa8e51051c2a40ba2ce8a3d27295af9467" integrity sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A== -inflight@^1.0.4: +inflight@^1.0.4, inflight@~1.0.6: version "1.0.6" resolved "https://registry.yarnpkg.com/inflight/-/inflight-1.0.6.tgz#49bd6331d7d02d0c09bc910a1075ba8165b56df9" integrity sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk= @@ -6728,7 +7130,7 @@ inflight@^1.0.4: once "^1.3.0" wrappy "1" -inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.3: +inherits@2, inherits@2.0.4, inherits@^2.0.1, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@~2.0.3: version "2.0.4" resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c" integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ== @@ -6738,7 +7140,7 @@ inherits@2.0.3: resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de" integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4= -ini@^1.3.2, ini@^1.3.4, ini@~1.3.0: +ini@^1.3.2, ini@^1.3.4, ini@^1.3.5, ini@^1.3.8, ini@~1.3.0: version "1.3.8" resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.8.tgz#a29da425b48806f34767a4efce397269af28432c" integrity sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew== @@ -6814,6 +7216,11 @@ interpret@^2.2.0: resolved "https://registry.yarnpkg.com/interpret/-/interpret-2.2.0.tgz#1a78a0b5965c40a5416d007ad6f50ad27c417df9" integrity sha512-Ju0Bz/cEia55xDwUWEa8+olFpCiQoypjnQySseKtmjNrnps3P+xfpUmGr90T7yjlVJmOtybRvPXhKMbHr+fWnw== +invert-kv@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/invert-kv/-/invert-kv-1.0.0.tgz#104a8e4aaca6d3d8cd157a8ef8bfab2d7a3ffdb6" + integrity sha1-EEqOSqym09jNFXqO+L+rLXo//bY= + ip-regex@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/ip-regex/-/ip-regex-2.1.0.tgz#fa78bf5d2e6913c911ce9f819ee5146bb6d844e9" @@ -6886,6 +7293,13 @@ is-callable@^1.1.4, is-callable@^1.2.4: resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.2.4.tgz#47301d58dd0259407865547853df6d61fe471945" integrity sha512-nsuwtxZfMX67Oryl9LCQ+upnC0Z0BgpwntpS89m1H/TLF0zNfzfLMV/9Wa/6MZsj0acpEjAO0KF1xT6ZdLl95w== +is-ci@^1.0.10: + version "1.2.1" + resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-1.2.1.tgz#e3779c8ee17fccf428488f6e281187f2e632841c" + integrity sha512-s6tfsaQaQi3JNciBH6shVqEDvhGut0SUXr31ag8Pd8BBbVVlcGfWhpPmEOoM6RJ5TFhbypvf5yyRw/VXW1IiWg== + dependencies: + ci-info "^1.5.0" + is-ci@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/is-ci/-/is-ci-2.0.0.tgz#6bc6334181810e04b5c22b3d589fdca55026404c" @@ -6893,6 +7307,13 @@ is-ci@^2.0.0: dependencies: ci-info "^2.0.0" +is-cidr@^3.0.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/is-cidr/-/is-cidr-3.1.1.tgz#e92ef121bdec2782271a77ce487a8b8df3718ab7" + integrity sha512-Gx+oErgq1j2jAKCR2Kbq0b3wbH0vQKqZ0wOlHxm0o56nq51Cs/DZA8oz9dMDhbHyHEGgJ86eTeVudtgMMOx3Mw== + dependencies: + cidr-regex "^2.0.10" + is-core-module@^2.2.0, is-core-module@^2.5.0: version "2.8.0" resolved "https://registry.yarnpkg.com/is-core-module/-/is-core-module-2.8.0.tgz#0321336c3d0925e497fd97f5d95cb114a5ccd548" @@ -7007,11 +7428,24 @@ is-glob@^4.0.0, is-glob@^4.0.1: dependencies: is-extglob "^2.1.1" +is-installed-globally@^0.1.0: + version "0.1.0" + resolved "https://registry.yarnpkg.com/is-installed-globally/-/is-installed-globally-0.1.0.tgz#0dfd98f5a9111716dd535dda6492f67bf3d25a80" + integrity sha1-Df2Y9akRFxbdU13aZJL2e/PSWoA= + dependencies: + global-dirs "^0.1.0" + is-path-inside "^1.0.0" + is-negative-zero@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/is-negative-zero/-/is-negative-zero-2.0.1.tgz#3de746c18dda2319241a53675908d8f766f11c24" integrity sha512-2z6JzQvZRa9A2Y7xC6dQQm4FSTSTNWjKIYYTt4246eMTJmIo0Q+ZyOsU66X8lxK1AbB92dFeglPLrhwpeRKO6w== +is-npm@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-npm/-/is-npm-1.0.0.tgz#f2fb63a65e4905b406c86072765a1a4dc793b9f4" + integrity sha1-8vtjpl5JBbQGyGBydloaTceTufQ= + is-number-object@^1.0.4: version "1.0.6" resolved "https://registry.yarnpkg.com/is-number-object/-/is-number-object-1.0.6.tgz#6a7aaf838c7f0686a50b4553f7e54a96494e89f0" @@ -7041,6 +7475,13 @@ is-obj@^2.0.0: resolved "https://registry.yarnpkg.com/is-obj/-/is-obj-2.0.0.tgz#473fb05d973705e3fd9620545018ca8e22ef4982" integrity sha512-drqDG3cbczxxEJRoOXcOjtdp1J/lyp1mNn0xaznRs8+muBhgQcrnbspox5X5fOw0HnMnbfDzvnEMEtqDEJEo8w== +is-path-inside@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/is-path-inside/-/is-path-inside-1.0.1.tgz#8ef5b7de50437a3fdca6b4e865ef7aa55cb48036" + integrity sha1-jvW33lBDej/cprToZe96pVy0gDY= + dependencies: + path-is-inside "^1.0.1" + is-plain-obj@2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/is-plain-obj/-/is-plain-obj-2.1.0.tgz#45e42e37fccf1f40da8e5f76ee21515840c09287" @@ -7073,6 +7514,11 @@ is-promise@^2.1.0, is-promise@^2.2.2: resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-2.2.2.tgz#39ab959ccbf9a774cf079f7b40c7a26f763135f1" integrity sha512-+lP4/6lKUBfQjZ2pdxThZvLUAafmZb8OAxFb8XXtiQmS35INgr85hdOGoEs124ez1FCnZJt6jau/T+alh58QFQ== +is-redirect@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/is-redirect/-/is-redirect-1.0.0.tgz#1d03dded53bd8db0f30c26e4f95d36fc7c87dc24" + integrity sha1-HQPd7VO9jbDzDCbk+V02/HyH3CQ= + is-regex@^1.0.4, is-regex@^1.1.4: version "1.1.4" resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.1.4.tgz#eef5663cd59fa4c0ae339505323df6854bb15958" @@ -7086,6 +7532,11 @@ is-regexp@^1.0.0: resolved "https://registry.yarnpkg.com/is-regexp/-/is-regexp-1.0.0.tgz#fd2d883545c46bac5a633e7b9a09e87fa2cb5069" integrity sha1-/S2INUXEa6xaYz57mgnof6LLUGk= +is-retry-allowed@^1.0.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/is-retry-allowed/-/is-retry-allowed-1.2.0.tgz#d778488bd0a4666a3be8a1482b9f2baafedea8b4" + integrity sha512-RUbUeKwvm3XG2VYamhJL1xFktgjvPzL0Hq8C+6yrWIswDy3BIXGqCxhxkc30N9jqK311gVU137K8Ei55/zVJRg== + is-shared-array-buffer@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.1.tgz#97b0c85fbdacb59c9c446fe653b82cf2b5b7cfe6" @@ -7098,7 +7549,7 @@ is-ssh@^1.3.0: dependencies: protocols "^1.1.0" -is-stream@^1.1.0: +is-stream@^1.0.0, is-stream@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-1.1.0.tgz#12d4a3dd4e68e0b79ceb8dbc84173ae80d91ca44" integrity sha1-EtSj3U5o4Lec6428hBc66A2RykQ= @@ -7163,6 +7614,11 @@ is-wsl@^2.2.0: dependencies: is-docker "^2.0.0" +isarray@0.0.1: + version "0.0.1" + resolved "https://registry.yarnpkg.com/isarray/-/isarray-0.0.1.tgz#8a18acfca9a8f4177e09abfc6038939b05d1eedf" + integrity sha1-ihis/Kmo9Bd+Cav8YDiTmwXR7t8= + isarray@1.0.0, isarray@~1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11" @@ -7656,6 +8112,11 @@ jpeg-js@^0.4.2: resolved "https://registry.yarnpkg.com/jpeg-js/-/jpeg-js-0.4.3.tgz#6158e09f1983ad773813704be80680550eff977b" integrity sha512-ru1HWKek8octvUHFHvE5ZzQ1yAsJmIvRdGWvSoKV52XKyuyYA437QWDttXT8eZXDSbuMpHlLzPDZUPd6idIz+Q== +js-base64@~2.1.8: + version "2.1.9" + resolved "https://registry.yarnpkg.com/js-base64/-/js-base64-2.1.9.tgz#f0e80ae039a4bd654b5f281fc93f04a914a7fcce" + integrity sha1-8OgK4DmkvWVLXygfyT8EqRSn/M4= + "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" @@ -7786,6 +8247,13 @@ json-stable-stringify-without-jsonify@^1.0.1: resolved "https://registry.yarnpkg.com/json-stable-stringify-without-jsonify/-/json-stable-stringify-without-jsonify-1.0.1.tgz#9db7b59496ad3f3cfef30a75142d2d930ad72651" integrity sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE= +json-stable-stringify@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz#9a759d39c5f2ff503fd5300646ed445f88c4f9af" + integrity sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8= + dependencies: + jsonify "~0.0.0" + json-stringify-pretty-compact@^3.0.0, json-stringify-pretty-compact@~3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/json-stringify-pretty-compact/-/json-stringify-pretty-compact-3.0.0.tgz#f71ef9d82ef16483a407869556588e91b681d9ab" @@ -7826,6 +8294,11 @@ jsonfile@^6.0.1: optionalDependencies: graceful-fs "^4.1.6" +jsonify@~0.0.0: + version "0.0.0" + resolved "https://registry.yarnpkg.com/jsonify/-/jsonify-0.0.0.tgz#2c74b6ee41d93ca51b7b5aaee8f503631d252a73" + integrity sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM= + jsonparse@^1.2.0: version "1.3.1" resolved "https://registry.yarnpkg.com/jsonparse/-/jsonparse-1.3.1.tgz#3f4dae4a91fac315f71062f8521cc239f1366280" @@ -7935,6 +8408,25 @@ klona@^2.0.3: resolved "https://registry.yarnpkg.com/klona/-/klona-2.0.5.tgz#d166574d90076395d9963aa7a928fabb8d76afbc" integrity sha512-pJiBpiXMbt7dkzXe8Ghj/u4FfXOOa98fPW+bihOJ4SjnoijweJrNThJfd3ifXpXhREjpoF2mZVH1GfS9LV3kHQ== +latest-version@^3.0.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/latest-version/-/latest-version-3.1.0.tgz#a205383fea322b33b5ae3b18abee0dc2f356ee15" + integrity sha1-ogU4P+oyKzO1rjsYq+4NwvNW7hU= + dependencies: + package-json "^4.0.0" + +lazy-property@~1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/lazy-property/-/lazy-property-1.0.0.tgz#84ddc4b370679ba8bd4cdcfa4c06b43d57111147" + integrity sha1-hN3Es3Bnm6i9TNz6TAa0PVcREUc= + +lcid@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/lcid/-/lcid-1.0.0.tgz#308accafa0bc483a3867b4b6f2b9506251d1b835" + integrity sha1-MIrMr6C8SDo4Z7S28rlQYlHRuDU= + dependencies: + invert-kv "^1.0.0" + lerna@^3.22.1: version "3.22.1" resolved "https://registry.yarnpkg.com/lerna/-/lerna-3.22.1.tgz#82027ac3da9c627fd8bf02ccfeff806a98e65b62" @@ -7959,6 +8451,35 @@ lerna@^3.22.1: import-local "^2.0.0" npmlog "^4.1.2" +less-plugin-autoprefix@~1.4.2: + version "1.4.2" + resolved "https://registry.yarnpkg.com/less-plugin-autoprefix/-/less-plugin-autoprefix-1.4.2.tgz#aa41e432c85587a62e1f958318d349a2e6b6d59b" + integrity sha1-qkHkMshVh6YuH5WDGNNJoua21Zs= + dependencies: + autoprefixer-core "^5.0.0" + postcss "^4.1.11" + +less-plugin-clean-css@~1.5.0: + version "1.5.1" + resolved "https://registry.yarnpkg.com/less-plugin-clean-css/-/less-plugin-clean-css-1.5.1.tgz#cc57af7aa3398957e56decebe63cb60c23429703" + integrity sha1-zFeveqM5iVflbezr5jy2DCNClwM= + dependencies: + clean-css "^3.0.1" + +less@~2.7.2: + version "2.7.3" + resolved "https://registry.yarnpkg.com/less/-/less-2.7.3.tgz#cc1260f51c900a9ec0d91fb6998139e02507b63b" + integrity sha512-KPdIJKWcEAb02TuJtaLrhue0krtRLoRoo7x6BNJIBelO00t/CCdJQUnHW5V34OnHMWzIktSalJxRO+FvytQlCQ== + optionalDependencies: + errno "^0.1.1" + graceful-fs "^4.1.2" + image-size "~0.5.0" + mime "^1.2.11" + mkdirp "^0.5.0" + promise "^7.1.1" + request "2.81.0" + source-map "^0.5.3" + level-codec@^9.0.0: version "9.0.2" resolved "https://registry.yarnpkg.com/level-codec/-/level-codec-9.0.2.tgz#fd60df8c64786a80d44e63423096ffead63d8cbc" @@ -8069,42 +8590,176 @@ lib0@^0.2.31, lib0@^0.2.42: dependencies: isomorphic.js "^0.2.4" -license-webpack-plugin@^2.3.14: - version "2.3.21" - resolved "https://registry.yarnpkg.com/license-webpack-plugin/-/license-webpack-plugin-2.3.21.tgz#152f5e82d5f51f8bab78905731f2b8042aa5691b" - integrity sha512-rVaYU9TddZN3ao8M/0PrRSCdTp2EW6VQymlgsuScld1vef0Ou7fALx3ePe83KLP3xAEDcPK5fkqUVqGBnbz1zQ== +libcipm@^4.0.8: + version "4.0.8" + resolved "https://registry.yarnpkg.com/libcipm/-/libcipm-4.0.8.tgz#dcea4919e10dfbce420327e63901613b9141bc89" + integrity sha512-IN3hh2yDJQtZZ5paSV4fbvJg4aHxCCg5tcZID/dSVlTuUiWktsgaldVljJv6Z5OUlYspx6xQkbR0efNodnIrOA== dependencies: - "@types/webpack-sources" "^0.1.5" - webpack-sources "^1.2.0" - -lines-and-columns@^1.1.6: - version "1.1.6" - resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.1.6.tgz#1c00c743b433cd0a4e80758f7b64a57440d9ff00" - integrity sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA= + bin-links "^1.1.2" + bluebird "^3.5.1" + figgy-pudding "^3.5.1" + find-npm-prefix "^1.0.2" + graceful-fs "^4.1.11" + ini "^1.3.5" + lock-verify "^2.1.0" + mkdirp "^0.5.1" + npm-lifecycle "^3.0.0" + npm-logical-tree "^1.2.1" + npm-package-arg "^6.1.0" + pacote "^9.1.0" + read-package-json "^2.0.13" + rimraf "^2.6.2" + worker-farm "^1.6.0" -lint-staged@^10.4.0: - version "10.5.4" - resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-10.5.4.tgz#cd153b5f0987d2371fc1d2847a409a2fe705b665" - integrity sha512-EechC3DdFic/TdOPgj/RB3FicqE6932LTHCUm0Y2fsD9KGlLB+RwJl2q1IYBIvEsKzDOgn0D4gll+YxG5RsrKg== +libnpm@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/libnpm/-/libnpm-3.0.1.tgz#0be11b4c9dd4d1ffd7d95c786e92e55d65be77a2" + integrity sha512-d7jU5ZcMiTfBqTUJVZ3xid44fE5ERBm9vBnmhp2ECD2Ls+FNXWxHSkO7gtvrnbLO78gwPdNPz1HpsF3W4rjkBQ== dependencies: - chalk "^4.1.0" - cli-truncate "^2.1.0" - commander "^6.2.0" - cosmiconfig "^7.0.0" - debug "^4.2.0" - dedent "^0.7.0" - enquirer "^2.3.6" - execa "^4.1.0" - listr2 "^3.2.2" - log-symbols "^4.0.0" - micromatch "^4.0.2" - normalize-path "^3.0.0" - please-upgrade-node "^3.2.0" - string-argv "0.3.1" - stringify-object "^3.3.0" + bin-links "^1.1.2" + bluebird "^3.5.3" + find-npm-prefix "^1.0.2" + libnpmaccess "^3.0.2" + libnpmconfig "^1.2.1" + libnpmhook "^5.0.3" + libnpmorg "^1.0.1" + libnpmpublish "^1.1.2" + libnpmsearch "^2.0.2" + libnpmteam "^1.0.2" + lock-verify "^2.0.2" + npm-lifecycle "^3.0.0" + npm-logical-tree "^1.2.1" + npm-package-arg "^6.1.0" + npm-profile "^4.0.2" + npm-registry-fetch "^4.0.0" + npmlog "^4.1.2" + pacote "^9.5.3" + read-package-json "^2.0.13" + stringify-package "^1.0.0" -listr2@^3.2.2: - version "3.13.3" +libnpmaccess@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/libnpmaccess/-/libnpmaccess-3.0.2.tgz#8b2d72345ba3bef90d3b4f694edd5c0417f58923" + integrity sha512-01512AK7MqByrI2mfC7h5j8N9V4I7MHJuk9buo8Gv+5QgThpOgpjB7sQBDDkeZqRteFb1QM/6YNdHfG7cDvfAQ== + dependencies: + aproba "^2.0.0" + get-stream "^4.0.0" + npm-package-arg "^6.1.0" + npm-registry-fetch "^4.0.0" + +libnpmconfig@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/libnpmconfig/-/libnpmconfig-1.2.1.tgz#c0c2f793a74e67d4825e5039e7a02a0044dfcbc0" + integrity sha512-9esX8rTQAHqarx6qeZqmGQKBNZR5OIbl/Ayr0qQDy3oXja2iFVQQI81R6GZ2a02bSNZ9p3YOGX1O6HHCb1X7kA== + dependencies: + figgy-pudding "^3.5.1" + find-up "^3.0.0" + ini "^1.3.5" + +libnpmhook@^5.0.3: + version "5.0.3" + resolved "https://registry.yarnpkg.com/libnpmhook/-/libnpmhook-5.0.3.tgz#4020c0f5edbf08ebe395325caa5ea01885b928f7" + integrity sha512-UdNLMuefVZra/wbnBXECZPefHMGsVDTq5zaM/LgKNE9Keyl5YXQTnGAzEo+nFOpdRqTWI9LYi4ApqF9uVCCtuA== + dependencies: + aproba "^2.0.0" + figgy-pudding "^3.4.1" + get-stream "^4.0.0" + npm-registry-fetch "^4.0.0" + +libnpmorg@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/libnpmorg/-/libnpmorg-1.0.1.tgz#5d2503f6ceb57f33dbdcc718e6698fea6d5ad087" + integrity sha512-0sRUXLh+PLBgZmARvthhYXQAWn0fOsa6T5l3JSe2n9vKG/lCVK4nuG7pDsa7uMq+uTt2epdPK+a2g6btcY11Ww== + dependencies: + aproba "^2.0.0" + figgy-pudding "^3.4.1" + get-stream "^4.0.0" + npm-registry-fetch "^4.0.0" + +libnpmpublish@^1.1.2: + version "1.1.3" + resolved "https://registry.yarnpkg.com/libnpmpublish/-/libnpmpublish-1.1.3.tgz#e3782796722d79eef1a0a22944c117e0c4ca4280" + integrity sha512-/3LsYqVc52cHXBmu26+J8Ed7sLs/hgGVFMH1mwYpL7Qaynb9RenpKqIKu0sJ130FB9PMkpMlWjlbtU8A4m7CQw== + dependencies: + aproba "^2.0.0" + figgy-pudding "^3.5.1" + get-stream "^4.0.0" + lodash.clonedeep "^4.5.0" + normalize-package-data "^2.4.0" + npm-package-arg "^6.1.0" + npm-registry-fetch "^4.0.0" + semver "^5.5.1" + ssri "^6.0.1" + +libnpmsearch@^2.0.2: + version "2.0.2" + resolved "https://registry.yarnpkg.com/libnpmsearch/-/libnpmsearch-2.0.2.tgz#9a4f059102d38e3dd44085bdbfe5095f2a5044cf" + integrity sha512-VTBbV55Q6fRzTdzziYCr64+f8AopQ1YZ+BdPOv16UegIEaE8C0Kch01wo4s3kRTFV64P121WZJwgmBwrq68zYg== + dependencies: + figgy-pudding "^3.5.1" + get-stream "^4.0.0" + npm-registry-fetch "^4.0.0" + +libnpmteam@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/libnpmteam/-/libnpmteam-1.0.2.tgz#8b48bcbb6ce70dd8150c950fcbdbf3feb6eec820" + integrity sha512-p420vM28Us04NAcg1rzgGW63LMM6rwe+6rtZpfDxCcXxM0zUTLl7nPFEnRF3JfFBF5skF/yuZDUthTsHgde8QA== + dependencies: + aproba "^2.0.0" + figgy-pudding "^3.4.1" + get-stream "^4.0.0" + npm-registry-fetch "^4.0.0" + +libnpx@^10.2.4: + version "10.2.4" + resolved "https://registry.yarnpkg.com/libnpx/-/libnpx-10.2.4.tgz#ef0e3258e29aef2ec7ee3276115e20e67f67d4ee" + integrity sha512-BPc0D1cOjBeS8VIBKUu5F80s6njm0wbVt7CsGMrIcJ+SI7pi7V0uVPGpEMH9H5L8csOcclTxAXFE2VAsJXUhfA== + dependencies: + dotenv "^5.0.1" + npm-package-arg "^6.0.0" + rimraf "^2.6.2" + safe-buffer "^5.1.0" + update-notifier "^2.3.0" + which "^1.3.0" + y18n "^4.0.0" + yargs "^14.2.3" + +license-webpack-plugin@^2.3.14: + version "2.3.21" + resolved "https://registry.yarnpkg.com/license-webpack-plugin/-/license-webpack-plugin-2.3.21.tgz#152f5e82d5f51f8bab78905731f2b8042aa5691b" + integrity sha512-rVaYU9TddZN3ao8M/0PrRSCdTp2EW6VQymlgsuScld1vef0Ou7fALx3ePe83KLP3xAEDcPK5fkqUVqGBnbz1zQ== + dependencies: + "@types/webpack-sources" "^0.1.5" + webpack-sources "^1.2.0" + +lines-and-columns@^1.1.6: + version "1.1.6" + resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.1.6.tgz#1c00c743b433cd0a4e80758f7b64a57440d9ff00" + integrity sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA= + +lint-staged@^10.4.0: + version "10.5.4" + resolved "https://registry.yarnpkg.com/lint-staged/-/lint-staged-10.5.4.tgz#cd153b5f0987d2371fc1d2847a409a2fe705b665" + integrity sha512-EechC3DdFic/TdOPgj/RB3FicqE6932LTHCUm0Y2fsD9KGlLB+RwJl2q1IYBIvEsKzDOgn0D4gll+YxG5RsrKg== + dependencies: + chalk "^4.1.0" + cli-truncate "^2.1.0" + commander "^6.2.0" + cosmiconfig "^7.0.0" + debug "^4.2.0" + dedent "^0.7.0" + enquirer "^2.3.6" + execa "^4.1.0" + listr2 "^3.2.2" + log-symbols "^4.0.0" + micromatch "^4.0.2" + normalize-path "^3.0.0" + please-upgrade-node "^3.2.0" + string-argv "0.3.1" + stringify-object "^3.3.0" + +listr2@^3.2.2: + version "3.13.3" resolved "https://registry.yarnpkg.com/listr2/-/listr2-3.13.3.tgz#d8f6095c9371b382c9b1c2bc33c5941d8e177f11" integrity sha512-VqAgN+XVfyaEjSaFewGPcDs5/3hBbWVaX1VgWv2f52MF7US45JuARlArULctiB44IIcEk3JF7GtoFCLqEdeuPA== dependencies: @@ -8128,6 +8783,16 @@ load-json-file@^1.0.0: pinkie-promise "^2.0.0" strip-bom "^2.0.0" +load-json-file@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-2.0.0.tgz#7947e42149af80d696cbf797bcaabcfe1fe29ca8" + integrity sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg= + dependencies: + graceful-fs "^4.1.2" + parse-json "^2.2.0" + pify "^2.0.0" + strip-bom "^3.0.0" + load-json-file@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/load-json-file/-/load-json-file-4.0.0.tgz#2f5f45ab91e33216234fd53adab668eb4ec0993b" @@ -8195,19 +8860,46 @@ locate-path@^5.0.0: dependencies: p-locate "^4.1.0" -lockfile@1.0.4: +lock-verify@^2.0.2, lock-verify@^2.1.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/lock-verify/-/lock-verify-2.2.1.tgz#81107948c51ed16f97b96ff8b60675affb243fc1" + integrity sha512-n0Zw2DVupKfZMazy/HIFVNohJ1z8fIoZ77WBnyyBGG6ixw83uJNyrbiJvvHWe1QKkGiBCjj8RCPlymltliqEww== + dependencies: + "@iarna/cli" "^1.2.0" + npm-package-arg "^6.1.0" + semver "^5.4.1" + +lockfile@1.0.4, lockfile@^1.0.4: version "1.0.4" resolved "https://registry.yarnpkg.com/lockfile/-/lockfile-1.0.4.tgz#07f819d25ae48f87e538e6578b6964a4981a5609" integrity sha512-cvbTwETRfsFh4nHsL1eGWapU1XFi5Ot9E85sWAwia7Y7EgB7vfqcZhTKZ+l7hCGxSPoushMv5GKhT5PdLv03WA== dependencies: signal-exit "^3.0.2" +lodash._baseuniq@~4.6.0: + version "4.6.0" + resolved "https://registry.yarnpkg.com/lodash._baseuniq/-/lodash._baseuniq-4.6.0.tgz#0ebb44e456814af7905c6212fa2c9b2d51b841e8" + integrity sha1-DrtE5FaBSveQXGIS+iybLVG4Qeg= + dependencies: + lodash._createset "~4.0.0" + lodash._root "~3.0.0" + +lodash._createset@~4.0.0: + version "4.0.3" + resolved "https://registry.yarnpkg.com/lodash._createset/-/lodash._createset-4.0.3.tgz#0f4659fbb09d75194fa9e2b88a6644d363c9fe26" + integrity sha1-D0ZZ+7CddRlPqeK4imZE02PJ/iY= + lodash._reinterpolate@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/lodash._reinterpolate/-/lodash._reinterpolate-3.0.0.tgz#0ccf2d89166af03b3663c796538b75ac6e114d9d" integrity sha1-DM8tiRZq8Ds2Y8eWU4t1rG4RTZ0= -lodash.clonedeep@^4.5.0: +lodash._root@~3.0.0: + version "3.0.1" + resolved "https://registry.yarnpkg.com/lodash._root/-/lodash._root-3.0.1.tgz#fba1c4524c19ee9a5f8136b4609f017cf4ded692" + integrity sha1-+6HEUkwZ7ppfgTa0YJ8BfPTe1pI= + +lodash.clonedeep@^4.5.0, lodash.clonedeep@~4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz#e23f3f9c4f8fbdde872529c1071857a086e5ccef" integrity sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8= @@ -8307,11 +8999,21 @@ lodash.truncate@^4.4.2: resolved "https://registry.yarnpkg.com/lodash.truncate/-/lodash.truncate-4.4.2.tgz#5a350da0b1113b837ecfffd5812cbe58d6eae193" integrity sha1-WjUNoLERO4N+z//VgSy+WNbq4ZM= -lodash.uniq@^4.5.0: +lodash.union@~4.6.0: + version "4.6.0" + resolved "https://registry.yarnpkg.com/lodash.union/-/lodash.union-4.6.0.tgz#48bb5088409f16f1821666641c44dd1aaae3cd88" + integrity sha1-SLtQiECfFvGCFmZkHETdGqrjzYg= + +lodash.uniq@^4.5.0, lodash.uniq@~4.5.0: version "4.5.0" resolved "https://registry.yarnpkg.com/lodash.uniq/-/lodash.uniq-4.5.0.tgz#d0225373aeb652adc1bc82e4945339a842754773" integrity sha1-0CJTc662Uq3BvILklFM5qEJ1R3M= +lodash.without@~4.4.0: + version "4.4.0" + resolved "https://registry.yarnpkg.com/lodash.without/-/lodash.without-4.4.0.tgz#3cd4574a00b67bae373a94b748772640507b7aac" + integrity sha1-PNRXSgC2e643OpS3SHcmQFB7eqw= + lodash@4, lodash@4.17.21, lodash@^4.17.12, lodash@^4.17.15, lodash@^4.17.19, lodash@^4.17.20, lodash@^4.17.4, lodash@^4.2.1, lodash@^4.7.0: version "4.17.21" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" @@ -8378,6 +9080,14 @@ lru-cache@6.0.0, lru-cache@^6.0.0: dependencies: yallist "^4.0.0" +lru-cache@^4.0.1: + version "4.1.5" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-4.1.5.tgz#8bbe50ea85bed59bc9e33dcab8235ee9bcf443cd" + integrity sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g== + dependencies: + pseudomap "^1.0.2" + yallist "^2.1.2" + lru-cache@^5.1.1: version "5.1.1" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-5.1.1.tgz#1da27e6710271947695daf6848e847f01d84b920" @@ -8492,11 +9202,23 @@ marked@2.1.3, marked@^2.0.0, marked@^2.0.1: resolved "https://registry.yarnpkg.com/marked/-/marked-2.1.3.tgz#bd017cef6431724fd4b27e0657f5ceb14bff3753" integrity sha512-/Q+7MGzaETqifOMWYEA7HVMaZb4XbcRfaOzcSsHZEith83KGlvaSG33u0SKu89Mj5h+T8V2hM+8O45Qc5XTgwA== +meant@^1.0.2: + version "1.0.3" + resolved "https://registry.yarnpkg.com/meant/-/meant-1.0.3.tgz#67769af9de1d158773e928ae82c456114903554c" + integrity sha512-88ZRGcNxAq4EH38cQ4D85PM57pikCwS8Z99EWHODxN7KBY+UuPiqzRTtZzS8KTXO/ywSWbdjjJST2Hly/EQxLw== + media-typer@0.3.0: version "0.3.0" resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" integrity sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g= +mem@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/mem/-/mem-1.1.0.tgz#5edd52b485ca1d900fe64895505399a0dfa45f76" + integrity sha1-Xt1StIXKHZAP5kiVUFOZoN+kX3Y= + dependencies: + mimic-fn "^1.0.0" + memoizee@0.4.15: version "0.4.15" resolved "https://registry.yarnpkg.com/memoizee/-/memoizee-0.4.15.tgz#e6f3d2da863f318d02225391829a6c5956555b72" @@ -8621,14 +9343,14 @@ mime-db@1.51.0, "mime-db@>= 1.43.0 < 2": resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.51.0.tgz#d9ff62451859b18342d960850dc3cfb77e63fb0c" integrity sha512-5y8A56jg7XVQx2mbv1lu49NR4dokRnhZYTtL+KGfaa27uq4pSTXkwQkFJl4pkRMyNFz/EtYDSkiiEHx3F7UN6g== -mime-types@^2.1.12, mime-types@^2.1.27, mime-types@~2.1.19, mime-types@~2.1.24: +mime-types@^2.1.12, mime-types@^2.1.27, mime-types@~2.1.19, mime-types@~2.1.24, mime-types@~2.1.7: version "2.1.34" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.34.tgz#5a712f9ec1503511a945803640fafe09d3793c24" integrity sha512-6cP692WwGIs9XXdOO4++N+7qjqv0rqxxVvJ3VHPh/Sc9mVZcQP+ZGhkKiTvWMQRr2tbHkJP/Yn7Y0npb3ZBs4A== dependencies: mime-db "1.51.0" -mime@1.6.0: +mime@1.6.0, mime@^1.2.11: version "1.6.0" resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== @@ -8701,7 +9423,7 @@ minimist-options@^3.0.1: arrify "^1.0.1" is-plain-obj "^1.1.0" -minimist@^1.1.1, minimist@^1.1.3, minimist@^1.2.0, minimist@^1.2.5, minimist@~1.2.0: +minimist@^1.1.0, minimist@^1.1.1, minimist@^1.1.3, minimist@^1.2.0, minimist@^1.2.5, minimist@~1.2.0: version "1.2.5" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.5.tgz#67d66014b66a6a8aaa0c083c5fd58df4e4e97602" integrity sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw== @@ -8793,7 +9515,7 @@ mkdirp@*, mkdirp@1.0.4, mkdirp@^1.0.3, mkdirp@^1.0.4: resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== -mkdirp@^0.5.1, mkdirp@^0.5.5, mkdirp@~0.5.1: +mkdirp@^0.5.0, mkdirp@^0.5.1, mkdirp@^0.5.5, mkdirp@~0.5.0, mkdirp@~0.5.1: version "0.5.5" resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.5.tgz#d91cefd62d1436ca0f41620e251288d420099def" integrity sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ== @@ -8968,7 +9690,7 @@ node-gyp-build@~4.1.0: resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.1.1.tgz#d7270b5d86717068d114cc57fff352f96d745feb" integrity sha512-dSq1xmcPDKPZ2EED2S6zw/b9NKsqzXRE6dVr8TVQnI3FJOTteUMuqF3Qqs6LZg+mLGYJWqQzMbIjMtJqTv87nQ== -node-gyp@^5.0.2: +node-gyp@^5.0.2, node-gyp@^5.1.0: version "5.1.1" resolved "https://registry.yarnpkg.com/node-gyp/-/node-gyp-5.1.1.tgz#eb915f7b631c937d282e33aed44cb7a025f62a3e" integrity sha512-WH0WKGi+a4i4DUt2mHnvocex/xPLp9pYt5R6M2JdFB7pJ7Z34hveZ4nDTGTiLXCkitA9T8HFZjhinBCiVHYcWw== @@ -9012,7 +9734,7 @@ node-releases@^2.0.1: resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.1.tgz#3d1d395f204f1f2f29a54358b9fb678765ad2fc5" integrity sha512-CqyzN6z7Q6aMeF/ktcMVTzhAHCEpf8SOarwpzpf8pNBY2k5/oM34UHldUwp8VKI7uxct2HxSRdJjBaZeESzcxA== -nopt@^4.0.1: +nopt@^4.0.1, nopt@^4.0.3: version "4.0.3" resolved "https://registry.yarnpkg.com/nopt/-/nopt-4.0.3.tgz#a375cad9d02fd921278d954c2254d5aa57e15e48" integrity sha512-CvaGwVMztSMJLOeXPrez7fyfObdZqNUK1cPAEzLHrTybIua9pMdmmPR5YwtfNftIOMv3DPUhFaxsZMNTQO20Kg== @@ -9077,6 +9799,14 @@ normalize.css@^8.0.1: resolved "https://registry.yarnpkg.com/normalize.css/-/normalize.css-8.0.1.tgz#9b98a208738b9cc2634caacbc42d131c97487bf3" integrity sha512-qizSNPO93t1YUuUhP22btGOo3chcvDFqFaj2TRybP0DMxkHOCTYwp3n34fel4a31ORXy4m1Xq0Gyqpb5m33qIg== +npm-audit-report@^1.3.3: + version "1.3.3" + resolved "https://registry.yarnpkg.com/npm-audit-report/-/npm-audit-report-1.3.3.tgz#8226deeb253b55176ed147592a3995442f2179ed" + integrity sha512-8nH/JjsFfAWMvn474HB9mpmMjrnKb1Hx/oTAdjv4PT9iZBvBxiZ+wtDUapHCJwLqYGQVPaAfs+vL5+5k9QndXw== + dependencies: + cli-table3 "^0.5.0" + console-control-strings "^1.1.0" + npm-bundled@^1.0.1: version "1.1.2" resolved "https://registry.yarnpkg.com/npm-bundled/-/npm-bundled-1.1.2.tgz#944c78789bd739035b70baa2ca5cc32b8d860bc1" @@ -9084,7 +9814,19 @@ npm-bundled@^1.0.1: dependencies: npm-normalize-package-bin "^1.0.1" -npm-lifecycle@^3.1.2: +npm-cache-filename@~1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/npm-cache-filename/-/npm-cache-filename-1.0.2.tgz#ded306c5b0bfc870a9e9faf823bc5f283e05ae11" + integrity sha1-3tMGxbC/yHCp6fr4I7xfKD4FrhE= + +npm-install-checks@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/npm-install-checks/-/npm-install-checks-3.0.2.tgz#ab2e32ad27baa46720706908e5b14c1852de44d9" + integrity sha512-E4kzkyZDIWoin6uT5howP8VDvkM+E8IQDcHAycaAxMbwkqhIg5eEYALnXOl3Hq9MrkdQB/2/g1xwBINXdKSRkg== + dependencies: + semver "^2.3.0 || 3.x || 4 || 5" + +npm-lifecycle@^3.0.0, npm-lifecycle@^3.1.2, npm-lifecycle@^3.1.5: version "3.1.5" resolved "https://registry.yarnpkg.com/npm-lifecycle/-/npm-lifecycle-3.1.5.tgz#9882d3642b8c82c815782a12e6a1bfeed0026309" integrity sha512-lDLVkjfZmvmfvpvBzA4vzee9cn+Me4orq0QF8glbswJVEbIcSNWib7qGOffolysc3teCqbbPZZkzbr3GQZTL1g== @@ -9098,12 +9840,17 @@ npm-lifecycle@^3.1.2: umask "^1.1.0" which "^1.3.1" +npm-logical-tree@^1.2.1: + version "1.2.1" + resolved "https://registry.yarnpkg.com/npm-logical-tree/-/npm-logical-tree-1.2.1.tgz#44610141ca24664cad35d1e607176193fd8f5b88" + integrity sha512-AJI/qxDB2PWI4LG1CYN579AY1vCiNyWfkiquCsJWqntRu/WwimVrC8yXeILBFHDwxfOejxewlmnvW9XXjMlYIg== + npm-normalize-package-bin@^1.0.0, npm-normalize-package-bin@^1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/npm-normalize-package-bin/-/npm-normalize-package-bin-1.0.1.tgz#6e79a41f23fd235c0623218228da7d9c23b8f6e2" integrity sha512-EPfafl6JL5/rU+ot6P3gRSCpPDW5VmIzX959Ob1+ySFUuuYHWHekXpwdUZcKP5C+DS4GEtdJluwBjnsNDl+fSA== -"npm-package-arg@^4.0.0 || ^5.0.0 || ^6.0.0", npm-package-arg@^6.0.0, npm-package-arg@^6.1.0: +"npm-package-arg@^4.0.0 || ^5.0.0 || ^6.0.0", npm-package-arg@^6.0.0, npm-package-arg@^6.1.0, npm-package-arg@^6.1.1: version "6.1.1" resolved "https://registry.yarnpkg.com/npm-package-arg/-/npm-package-arg-6.1.1.tgz#02168cb0a49a2b75bf988a28698de7b529df5cb7" integrity sha512-qBpssaL3IOZWi5vEKUKW0cO7kzLeT+EQO9W8RsLOZf76KF9E/K9+wH0C7t06HXPpaH8WH5xF1MExLuCwbTqRUg== @@ -9113,7 +9860,7 @@ npm-normalize-package-bin@^1.0.0, npm-normalize-package-bin@^1.0.1: semver "^5.6.0" validate-npm-package-name "^3.0.0" -npm-packlist@^1.4.4: +npm-packlist@^1.1.12, npm-packlist@^1.4.4, npm-packlist@^1.4.8: version "1.4.8" resolved "https://registry.yarnpkg.com/npm-packlist/-/npm-packlist-1.4.8.tgz#56ee6cc135b9f98ad3d51c1c95da22bbb9b2ef3e" integrity sha512-5+AZgwru5IevF5ZdnFglB5wNlHG1AOOuw28WhUq8/8emhBmLv6jX5by4WJCh7lW0uSYZYS6DXqIsyZVIXRZU9A== @@ -9122,7 +9869,7 @@ npm-packlist@^1.4.4: npm-bundled "^1.0.1" npm-normalize-package-bin "^1.0.1" -npm-pick-manifest@^3.0.0: +npm-pick-manifest@^3.0.0, npm-pick-manifest@^3.0.2: version "3.0.2" resolved "https://registry.yarnpkg.com/npm-pick-manifest/-/npm-pick-manifest-3.0.2.tgz#f4d9e5fd4be2153e5f4e5f9b7be8dc419a99abb7" integrity sha512-wNprTNg+X5nf+tDi+hbjdHhM4bX+mKqv6XmPh7B5eG+QY9VARfQPfCEH013H5GqfNj6ee8Ij2fg8yk0mzps1Vw== @@ -9131,6 +9878,28 @@ npm-pick-manifest@^3.0.0: npm-package-arg "^6.0.0" semver "^5.4.1" +npm-profile@^4.0.2, npm-profile@^4.0.4: + version "4.0.4" + resolved "https://registry.yarnpkg.com/npm-profile/-/npm-profile-4.0.4.tgz#28ee94390e936df6d084263ee2061336a6a1581b" + integrity sha512-Ta8xq8TLMpqssF0H60BXS1A90iMoM6GeKwsmravJ6wYjWwSzcYBTdyWa3DZCYqPutacBMEm7cxiOkiIeCUAHDQ== + dependencies: + aproba "^1.1.2 || 2" + figgy-pudding "^3.4.1" + npm-registry-fetch "^4.0.0" + +npm-registry-fetch@^4.0.0, npm-registry-fetch@^4.0.7: + version "4.0.7" + resolved "https://registry.yarnpkg.com/npm-registry-fetch/-/npm-registry-fetch-4.0.7.tgz#57951bf6541e0246b34c9f9a38ab73607c9449d7" + integrity sha512-cny9v0+Mq6Tjz+e0erFAB+RYJ/AVGzkjnISiobqP8OWj9c9FLoZZu8/SPSKJWE17F1tk4018wfjV+ZbIbqC7fQ== + dependencies: + JSONStream "^1.3.4" + bluebird "^3.5.1" + figgy-pudding "^3.4.1" + lru-cache "^5.1.1" + make-fetch-happen "^5.0.0" + npm-package-arg "^6.1.0" + safe-buffer "^5.2.0" + npm-run-all@^4.1.5: version "4.1.5" resolved "https://registry.yarnpkg.com/npm-run-all/-/npm-run-all-4.1.5.tgz#04476202a15ee0e2e214080861bff12a51d98fba" @@ -9160,7 +9929,133 @@ npm-run-path@^4.0.0, npm-run-path@^4.0.1: dependencies: path-key "^3.0.0" -npmlog@^4.1.2: +npm-user-validate@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/npm-user-validate/-/npm-user-validate-1.0.1.tgz#31428fc5475fe8416023f178c0ab47935ad8c561" + integrity sha512-uQwcd/tY+h1jnEaze6cdX/LrhWhoBxfSknxentoqmIuStxUExxjWd3ULMLFPiFUrZKbOVMowH6Jq2FRWfmhcEw== + +npm@^6.13.4: + version "6.14.15" + resolved "https://registry.yarnpkg.com/npm/-/npm-6.14.15.tgz#97dd51af5b5d6225b611b40c5cb4d31da1d467fe" + integrity sha512-dkcQc4n+DiJAMYG2haNAMyJbmuvevjXz+WC9dCUzodw8EovwTIc6CATSsTEplCY6c0jG4OshxFGFJsrnKJguWA== + dependencies: + JSONStream "^1.3.5" + abbrev "~1.1.1" + ansicolors "~0.3.2" + ansistyles "~0.1.3" + aproba "^2.0.0" + archy "~1.0.0" + bin-links "^1.1.8" + bluebird "^3.5.5" + byte-size "^5.0.1" + cacache "^12.0.3" + call-limit "^1.1.1" + chownr "^1.1.4" + ci-info "^2.0.0" + cli-columns "^3.1.2" + cli-table3 "^0.5.1" + cmd-shim "^3.0.3" + columnify "~1.5.4" + config-chain "^1.1.12" + detect-indent "~5.0.0" + detect-newline "^2.1.0" + dezalgo "~1.0.3" + editor "~1.0.0" + figgy-pudding "^3.5.1" + find-npm-prefix "^1.0.2" + fs-vacuum "~1.2.10" + fs-write-stream-atomic "~1.0.10" + gentle-fs "^2.3.1" + glob "^7.1.6" + graceful-fs "^4.2.4" + has-unicode "~2.0.1" + hosted-git-info "^2.8.9" + iferr "^1.0.2" + infer-owner "^1.0.4" + inflight "~1.0.6" + inherits "^2.0.4" + ini "^1.3.8" + init-package-json "^1.10.3" + is-cidr "^3.0.0" + json-parse-better-errors "^1.0.2" + lazy-property "~1.0.0" + libcipm "^4.0.8" + libnpm "^3.0.1" + libnpmaccess "^3.0.2" + libnpmhook "^5.0.3" + libnpmorg "^1.0.1" + libnpmsearch "^2.0.2" + libnpmteam "^1.0.2" + libnpx "^10.2.4" + lock-verify "^2.1.0" + lockfile "^1.0.4" + lodash._baseuniq "~4.6.0" + lodash.clonedeep "~4.5.0" + lodash.union "~4.6.0" + lodash.uniq "~4.5.0" + lodash.without "~4.4.0" + lru-cache "^5.1.1" + meant "^1.0.2" + mississippi "^3.0.0" + mkdirp "^0.5.5" + move-concurrently "^1.0.1" + node-gyp "^5.1.0" + nopt "^4.0.3" + normalize-package-data "^2.5.0" + npm-audit-report "^1.3.3" + npm-cache-filename "~1.0.2" + npm-install-checks "^3.0.2" + npm-lifecycle "^3.1.5" + npm-package-arg "^6.1.1" + npm-packlist "^1.4.8" + npm-pick-manifest "^3.0.2" + npm-profile "^4.0.4" + npm-registry-fetch "^4.0.7" + npm-user-validate "^1.0.1" + npmlog "~4.1.2" + once "~1.4.0" + opener "^1.5.2" + osenv "^0.1.5" + pacote "^9.5.12" + path-is-inside "~1.0.2" + promise-inflight "~1.0.1" + qrcode-terminal "^0.12.0" + query-string "^6.8.2" + qw "~1.0.1" + read "~1.0.7" + read-cmd-shim "^1.0.5" + read-installed "~4.0.3" + read-package-json "^2.1.1" + read-package-tree "^5.3.1" + readable-stream "^3.6.0" + readdir-scoped-modules "^1.1.0" + request "^2.88.0" + retry "^0.12.0" + rimraf "^2.7.1" + safe-buffer "^5.1.2" + semver "^5.7.1" + sha "^3.0.0" + slide "~1.1.6" + sorted-object "~2.0.1" + sorted-union-stream "~2.1.3" + ssri "^6.0.2" + stringify-package "^1.0.1" + tar "^4.4.19" + text-table "~0.2.0" + tiny-relative-date "^1.3.0" + uid-number "0.0.6" + umask "~1.1.0" + unique-filename "^1.1.1" + unpipe "~1.0.0" + update-notifier "^2.5.0" + uuid "^3.3.3" + validate-npm-package-license "^3.0.4" + validate-npm-package-name "~3.0.0" + which "^1.3.1" + worker-farm "^1.7.0" + write-file-atomic "^2.4.3" + +npmlog@^4.1.2, npmlog@~4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-4.1.2.tgz#08a7f2a8bf734604779a9efa4ad5cc717abb954b" integrity sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg== @@ -9170,6 +10065,11 @@ npmlog@^4.1.2: gauge "~2.7.3" set-blocking "~2.0.0" +num2fraction@^1.1.0: + version "1.2.2" + resolved "https://registry.yarnpkg.com/num2fraction/-/num2fraction-1.2.2.tgz#6f682b6a027a4e9ddfa4564cd2589d1d4e669ede" + integrity sha1-b2gragJ6Tp3fpFZM0lidHU5mnt4= + number-is-nan@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/number-is-nan/-/number-is-nan-1.0.1.tgz#097b602b53422a522c1afb8790318336941a011d" @@ -9180,6 +10080,11 @@ nwsapi@^2.2.0: resolved "https://registry.yarnpkg.com/nwsapi/-/nwsapi-2.2.0.tgz#204879a9e3d068ff2a55139c2c772780681a38b7" integrity sha512-h2AatdwYH+JHiZpv7pt/gSX1XoRGb7L/qSIeuqA6GwYoF9w1vP1cw42TO0aI2pNyshRK5893hNSl+1//vHK7hQ== +oauth-sign@~0.8.1: + version "0.8.2" + resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.8.2.tgz#46a6ab7f0aead8deae9ec0565780b7d4efeb9d43" + integrity sha1-Rqarfwrq2N6unsBWV4C31O/rnUM= + oauth-sign@~0.9.0: version "0.9.0" resolved "https://registry.yarnpkg.com/oauth-sign/-/oauth-sign-0.9.0.tgz#47a7b016baa68b5fa0ecf3dee08a85c679ac6455" @@ -9302,7 +10207,7 @@ on-headers@~1.0.2: resolved "https://registry.yarnpkg.com/on-headers/-/on-headers-1.0.2.tgz#772b0ae6aaa525c399e489adfad90c403eb3c28f" integrity sha512-pZAE+FJLoyITytdqK0U5s+FIpjN0JP3OzFi/u8Rx+EV5/W+JTWGXG8xFzevE7AjBfDqHv/8vL8qQsIhHnqRkrA== -once@^1.3.0, once@^1.3.1, once@^1.4.0: +once@^1.3.0, once@^1.3.1, once@^1.4.0, once@~1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1" integrity sha1-WDsap3WWHUsROsF9nFC6753Xa9E= @@ -9362,6 +10267,15 @@ os-homedir@^1.0.0: resolved "https://registry.yarnpkg.com/os-homedir/-/os-homedir-1.0.2.tgz#ffbc4988336e0e833de0c168c7ef152121aa7fb3" integrity sha1-/7xJiDNuDoM94MFox+8VISGqf7M= +os-locale@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/os-locale/-/os-locale-2.1.0.tgz#42bc2900a6b5b8bd17376c8e882b65afccf24bf2" + integrity sha512-3sslG3zJbEYcaC4YVAvDorjGxc7tv6KVATnLPZONiljsUncvihe9BQoVCEs0RZ1kmf4Hk9OBqlZfJZWI4GanKA== + dependencies: + execa "^0.7.0" + lcid "^1.0.0" + mem "^1.1.0" + os-name@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/os-name/-/os-name-3.1.0.tgz#dec19d966296e1cd62d701a5a66ee1ddeae70801" @@ -9498,6 +10412,16 @@ p-waterfall@^1.0.0: dependencies: p-reduce "^1.0.0" +package-json@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/package-json/-/package-json-4.0.1.tgz#8869a0401253661c4c4ca3da6c2121ed555f5eed" + integrity sha1-iGmgQBJTZhxMTKPabCEh7VVfXu0= + dependencies: + got "^6.7.1" + registry-auth-token "^3.0.1" + registry-url "^3.0.3" + semver "^5.1.0" + package-json@^6.5.0: version "6.5.0" resolved "https://registry.yarnpkg.com/package-json/-/package-json-6.5.0.tgz#6feedaca35e75725876d0b0e64974697fed145b0" @@ -9508,6 +10432,42 @@ package-json@^6.5.0: registry-url "^5.0.0" semver "^6.2.0" +pacote@^9.1.0, pacote@^9.5.12, pacote@^9.5.3: + version "9.5.12" + resolved "https://registry.yarnpkg.com/pacote/-/pacote-9.5.12.tgz#1e11dd7a8d736bcc36b375a9804d41bb0377bf66" + integrity sha512-BUIj/4kKbwWg4RtnBncXPJd15piFSVNpTzY0rysSr3VnMowTYgkGKcaHrbReepAkjTr8lH2CVWRi58Spg2CicQ== + dependencies: + bluebird "^3.5.3" + cacache "^12.0.2" + chownr "^1.1.2" + figgy-pudding "^3.5.1" + get-stream "^4.1.0" + glob "^7.1.3" + infer-owner "^1.0.4" + lru-cache "^5.1.1" + make-fetch-happen "^5.0.0" + minimatch "^3.0.4" + minipass "^2.3.5" + mississippi "^3.0.0" + mkdirp "^0.5.1" + normalize-package-data "^2.4.0" + npm-normalize-package-bin "^1.0.0" + npm-package-arg "^6.1.0" + npm-packlist "^1.1.12" + npm-pick-manifest "^3.0.0" + npm-registry-fetch "^4.0.0" + osenv "^0.1.5" + promise-inflight "^1.0.1" + promise-retry "^1.1.1" + protoduck "^5.0.1" + rimraf "^2.6.2" + safe-buffer "^5.1.2" + semver "^5.6.0" + ssri "^6.0.1" + tar "^4.4.10" + unique-filename "^1.1.1" + which "^1.3.1" + parallel-transform@^1.1.0: version "1.2.0" resolved "https://registry.yarnpkg.com/parallel-transform/-/parallel-transform-1.2.0.tgz#9049ca37d6cb2182c3b1d2c720be94d14a5814fc" @@ -9636,6 +10596,11 @@ path-is-absolute@^1.0.0: resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" integrity sha1-F0uSaHNVNP+8es5r9TpanhtcX18= +path-is-inside@^1.0.1, path-is-inside@^1.0.2, path-is-inside@~1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/path-is-inside/-/path-is-inside-1.0.2.tgz#365417dede44430d1c11af61027facf074bdfc53" + integrity sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM= + path-key@^2.0.0, path-key@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/path-key/-/path-key-2.0.1.tgz#411cadb574c5a140d3a4b1910d40d80cc9f40b40" @@ -9665,6 +10630,13 @@ path-type@^1.0.0: pify "^2.0.0" pinkie-promise "^2.0.0" +path-type@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/path-type/-/path-type-2.0.0.tgz#f012ccb8415b7096fc2daa1054c3d72389594c73" + integrity sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM= + dependencies: + pify "^2.0.0" + path-type@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/path-type/-/path-type-3.0.0.tgz#cef31dc8e0a1a3bb0d105c0cd97cf3bf47f4e36f" @@ -9682,6 +10654,11 @@ pend@~1.2.0: resolved "https://registry.yarnpkg.com/pend/-/pend-1.2.0.tgz#7a57eb550a6783f9115331fcf4663d5c8e007a50" integrity sha1-elfrVQpng/kRUzH89GY9XI4AelA= +performance-now@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-0.2.0.tgz#33ef30c5c77d4ea21c5a53869d91b56d8f2555e5" + integrity sha1-M+8wxcd9TqIcWlOGnZG1bY8lVeU= + performance-now@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" @@ -9870,6 +10847,15 @@ postcss-value-parser@^4.1.0: resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.1.0.tgz#443f6a20ced6481a2bda4fa8532a6e55d789a2cb" integrity sha512-97DXOFbQJhk71ne5/Mt6cOu6yxsSfM0QGQyl0L25Gca4yGWEGJaig7l7gbCX623VqTBNGLRLaVUCnNkcedlRSQ== +postcss@^4.1.11, postcss@~4.1.12: + version "4.1.16" + resolved "https://registry.yarnpkg.com/postcss/-/postcss-4.1.16.tgz#4c449b4c8af9df3caf6d37f8e1e575d0361758dc" + integrity sha1-TESbTIr53zyvbTf44eV10DYXWNw= + dependencies: + es6-promise "~2.3.0" + js-base64 "~2.1.8" + source-map "~0.4.2" + postcss@^8.0.2, postcss@^8.2.15, postcss@^8.2.4: version "8.3.11" resolved "https://registry.yarnpkg.com/postcss/-/postcss-8.3.11.tgz#c3beca7ea811cd5e1c4a3ec6d2e7599ef1f8f858" @@ -9889,7 +10875,7 @@ prelude-ls@~1.1.2: resolved "https://registry.yarnpkg.com/prelude-ls/-/prelude-ls-1.1.2.tgz#21932a549f5e52ffd9a827f570e04be62a97da54" integrity sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ= -prepend-http@^1.0.0: +prepend-http@^1.0.0, prepend-http@^1.0.1: version "1.0.4" resolved "https://registry.yarnpkg.com/prepend-http/-/prepend-http-1.0.4.tgz#d4f4562b0ce3696e41ac52d0e002e57a635dc6dc" integrity sha1-1PRWKwzjaW5BrFLQ4ALlemNdxtw= @@ -9958,7 +10944,7 @@ progress@^2.0.0, progress@^2.0.3: resolved "https://registry.yarnpkg.com/progress/-/progress-2.0.3.tgz#7e8cf8d8f5b8f239c1bc68beb4eb78567d572ef8" integrity sha512-7PiHtLll5LdnKIMw100I+8xJXR5gW2QwWYkT6iJva0bXitZKa/XMrSbdmg3r2Xnaidz9Qumd0VPaMrZlF9V9sA== -promise-inflight@^1.0.1: +promise-inflight@^1.0.1, promise-inflight@~1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/promise-inflight/-/promise-inflight-1.0.1.tgz#98472870bf228132fcbdd868129bad12c3c029e3" integrity sha1-mEcocL8igTL8vdhoEputEsPAKeM= @@ -9971,6 +10957,13 @@ promise-retry@^1.1.1: err-code "^1.0.0" retry "^0.10.0" +promise@^7.1.1: + version "7.3.1" + resolved "https://registry.yarnpkg.com/promise/-/promise-7.3.1.tgz#064b72602b18f90f29192b8b1bc418ffd1ebd3bf" + integrity sha512-nolQXZ/4L+bP/UGlkfaIujX9BKxGwmQ9OT4mOt5yvy8iK1h3wqTEJCijzGANTCCl9nWjY41juyAn2K3Q1hLLTg== + dependencies: + asap "~2.0.3" + prompts@^2.0.1: version "2.4.2" resolved "https://registry.yarnpkg.com/prompts/-/prompts-2.4.2.tgz#7b57e73b3a48029ad10ebd44f74b01722a4cb069" @@ -10039,6 +11032,11 @@ prr@~1.0.1: resolved "https://registry.yarnpkg.com/prr/-/prr-1.0.1.tgz#d3fc114ba06995a45ec6893f484ceb1d78f5f476" integrity sha1-0/wRS6BplaRexok/SEzrHXj19HY= +pseudomap@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/pseudomap/-/pseudomap-1.0.2.tgz#f052a28da70e618917ef0a8ac34c1ae5a68286b3" + integrity sha1-8FKijacOYYkX7wqKw0wa5aaChrM= + psl@^1.1.24, psl@^1.1.28, psl@^1.1.33: version "1.8.0" resolved "https://registry.yarnpkg.com/psl/-/psl-1.8.0.tgz#9326f8bcfb013adcc005fdff056acce020e51c24" @@ -10089,6 +11087,11 @@ q@^1.5.1: resolved "https://registry.yarnpkg.com/q/-/q-1.5.1.tgz#7e32f75b41381291d04611f1bf14109ac00651d7" integrity sha1-fjL3W0E4EpHQRhHxvxQQmsAGUdc= +qrcode-terminal@^0.12.0: + version "0.12.0" + resolved "https://registry.yarnpkg.com/qrcode-terminal/-/qrcode-terminal-0.12.0.tgz#bb5b699ef7f9f0505092a3748be4464fe71b5819" + integrity sha512-EXtzRZmC+YGmGlDFbXKxQiMZNwCLEO6BANKXG4iCtSIM0yqc/pappSx3RIKr4r0uh5JsBckOXeKrB3Iz7mdQpQ== + qs@6.7.0: version "6.7.0" resolved "https://registry.yarnpkg.com/qs/-/qs-6.7.0.tgz#41dc1a015e3d581f1621776be31afb2876a9b1bc" @@ -10101,6 +11104,11 @@ qs@^6.9.4: dependencies: side-channel "^1.0.4" +qs@~6.4.0: + version "6.4.0" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.4.0.tgz#13e26d28ad6b0ffaa91312cd3bf708ed351e7233" + integrity sha1-E+JtKK1rD/qpExLNO/cI7TUecjM= + qs@~6.5.2: version "6.5.2" resolved "https://registry.yarnpkg.com/qs/-/qs-6.5.2.tgz#cb3ae806e8740444584ef154ce8ee98d403f3e36" @@ -10114,7 +11122,7 @@ query-string@^4.1.0: object-assign "^4.1.0" strict-uri-encode "^1.0.0" -query-string@^6.13.8: +query-string@^6.13.8, query-string@^6.8.2: version "6.14.1" resolved "https://registry.yarnpkg.com/query-string/-/query-string-6.14.1.tgz#7ac2dca46da7f309449ba0f86b1fd28255b0c86a" integrity sha512-XDxAeVmpfu1/6IjyT/gXHOl+S0vQ9owggJ30hhWKdHAsNPOcasn5o9BW0eejZqL2e4vMjhAxoW3jVHcD6mbcYw== @@ -10154,6 +11162,11 @@ quick-lru@^4.0.1: resolved "https://registry.yarnpkg.com/quick-lru/-/quick-lru-4.0.1.tgz#5b8878f113a58217848c6482026c73e1ba57727f" integrity sha512-ARhCpm70fzdcvNQfPoy49IaanKkTlRWF2JMzqhcJbhSFRZv7nPTvZJdcY7301IPmvW+/p0RgIWnQDLJxifsQ7g== +qw@~1.0.1: + version "1.0.2" + resolved "https://registry.yarnpkg.com/qw/-/qw-1.0.2.tgz#0c31a6f810320a91c58b05198679427103b03c4a" + integrity sha512-1PhZ/iLKwlVNq45dnerTMKFjMof49uqli7/0QsvPNbX5OJ3IZ8msa9lUpvPheVdP+IYYPrf6cOaVil7S35joVA== + randombytes@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/randombytes/-/randombytes-2.1.0.tgz#df6f84372f0270dc65cdf6291349ab7a473d4f2a" @@ -10184,7 +11197,7 @@ raw-loader@~4.0.0: loader-utils "^2.0.0" schema-utils "^3.0.0" -rc@^1.2.8: +rc@^1.0.1, rc@^1.1.6, rc@^1.2.8: version "1.2.8" resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" integrity sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw== @@ -10280,14 +11293,28 @@ react@^17.0.1: loose-envify "^1.1.0" object-assign "^4.1.1" -read-cmd-shim@^1.0.1: +read-cmd-shim@^1.0.1, read-cmd-shim@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/read-cmd-shim/-/read-cmd-shim-1.0.5.tgz#87e43eba50098ba5a32d0ceb583ab8e43b961c16" integrity sha512-v5yCqQ/7okKoZZkBQUAfTsQ3sVJtXdNfbPnI5cceppoxEVLYA3k+VtV2omkeo8MS94JCy4fSiUwlRBAwCVRPUA== dependencies: graceful-fs "^4.1.2" -"read-package-json@1 || 2", read-package-json@^2.0.0, read-package-json@^2.0.13: +read-installed@~4.0.3: + version "4.0.3" + resolved "https://registry.yarnpkg.com/read-installed/-/read-installed-4.0.3.tgz#ff9b8b67f187d1e4c29b9feb31f6b223acd19067" + integrity sha1-/5uLZ/GH0eTCm5/rMfayI6zRkGc= + dependencies: + debuglog "^1.0.1" + read-package-json "^2.0.0" + readdir-scoped-modules "^1.0.0" + semver "2 || 3 || 4 || 5" + slide "~1.1.3" + util-extend "^1.0.1" + optionalDependencies: + graceful-fs "^4.1.2" + +"read-package-json@1 || 2", read-package-json@^2.0.0, read-package-json@^2.0.13, read-package-json@^2.1.1: version "2.1.2" resolved "https://registry.yarnpkg.com/read-package-json/-/read-package-json-2.1.2.tgz#6992b2b66c7177259feb8eaac73c3acd28b9222a" integrity sha512-D1KmuLQr6ZSJS0tW8hf3WGpRlwszJOXZ3E8Yd/DNRaM5d+1wVRZdHlpGBLAuovjr28LbWvjpWkBHMxpRGGjzNA== @@ -10297,7 +11324,7 @@ read-cmd-shim@^1.0.1: normalize-package-data "^2.0.0" npm-normalize-package-bin "^1.0.0" -read-package-tree@^5.1.6: +read-package-tree@^5.1.6, read-package-tree@^5.3.1: version "5.3.1" resolved "https://registry.yarnpkg.com/read-package-tree/-/read-package-tree-5.3.1.tgz#a32cb64c7f31eb8a6f31ef06f9cedf74068fe636" integrity sha512-mLUDsD5JVtlZxjSlPPx1RETkNjjvQYuweKwNVt1Sn8kP5Jh44pvYuUHCp6xSVDZWbNxVxG5lyZJ921aJH61sTw== @@ -10314,6 +11341,14 @@ read-pkg-up@^1.0.1: find-up "^1.0.0" read-pkg "^1.0.0" +read-pkg-up@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-2.0.0.tgz#6b72a8048984e0c41e79510fd5e9fa99b3b549be" + integrity sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4= + dependencies: + find-up "^2.0.0" + read-pkg "^2.0.0" + read-pkg-up@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/read-pkg-up/-/read-pkg-up-3.0.0.tgz#3ed496685dba0f8fe118d0691dc51f4a1ff96f07" @@ -10340,6 +11375,15 @@ read-pkg@^1.0.0: normalize-package-data "^2.3.2" path-type "^1.0.0" +read-pkg@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-2.0.0.tgz#8ef1c0623c6a6db0dc6713c4bfac46332b2368f8" + integrity sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg= + dependencies: + load-json-file "^2.0.0" + normalize-package-data "^2.3.2" + path-type "^2.0.0" + read-pkg@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/read-pkg/-/read-pkg-3.0.0.tgz#9cbc686978fee65d16c00e2b19c237fcf6e38389" @@ -10359,7 +11403,7 @@ read-pkg@^5.2.0: parse-json "^5.0.0" type-fest "^0.6.0" -read@1, read@~1.0.1: +read@1, read@~1.0.1, read@~1.0.7: version "1.0.7" resolved "https://registry.yarnpkg.com/read/-/read-1.0.7.tgz#b3da19bd052431a97671d44a42634adf710b40c4" integrity sha1-s9oZvQUkMal2cdRKQmNK33ELQMQ= @@ -10379,7 +11423,7 @@ read@1, read@~1.0.1: string_decoder "~1.1.1" util-deprecate "~1.0.1" -"readable-stream@2 || 3", readable-stream@3, readable-stream@^3.0.0, readable-stream@^3.0.2, readable-stream@^3.4.0: +"readable-stream@2 || 3", readable-stream@3, readable-stream@^3.0.0, readable-stream@^3.0.2, readable-stream@^3.4.0, readable-stream@^3.6.0: version "3.6.0" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-3.6.0.tgz#337bbda3adc0706bd3e024426a286d4b4b2c9198" integrity sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA== @@ -10388,7 +11432,17 @@ read@1, read@~1.0.1: string_decoder "^1.1.1" util-deprecate "^1.0.1" -readdir-scoped-modules@^1.0.0: +readable-stream@~1.1.10: + version "1.1.14" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-1.1.14.tgz#7cf4c54ef648e3813084c636dd2079e166c081d9" + integrity sha1-fPTFTvZI44EwhMY23SB54WbAgdk= + dependencies: + core-util-is "~1.0.0" + inherits "~2.0.1" + isarray "0.0.1" + string_decoder "~0.10.x" + +readdir-scoped-modules@^1.0.0, readdir-scoped-modules@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/readdir-scoped-modules/-/readdir-scoped-modules-1.1.0.tgz#8d45407b4f870a0dcaebc0e28670d18e74514309" integrity sha512-asaikDeqAQg7JifRsZn1NJZXo9E+VwlyCfbkZhwyISinqk5zNS6266HS5kah6P0SaQKGF6SkNnZVHUzHFYxYDw== @@ -10455,6 +11509,14 @@ regexpp@^3.1.0: resolved "https://registry.yarnpkg.com/regexpp/-/regexpp-3.2.0.tgz#0425a2768d8f23bad70ca4b90461fa2f1213e1b2" integrity sha512-pq2bWo9mVD43nbts2wGv17XLiNLya+GklZ8kaDLV2Z08gDCsGpnKn9BFMepvWuHCbyVvY7J5o5+BVvoQbmlJLg== +registry-auth-token@^3.0.1: + version "3.4.0" + resolved "https://registry.yarnpkg.com/registry-auth-token/-/registry-auth-token-3.4.0.tgz#d7446815433f5d5ed6431cd5dca21048f66b397e" + integrity sha512-4LM6Fw8eBQdwMYcES4yTnn2TqIasbXuwDx3um+QRs7S55aMKCBKBxvPXl2RiUjHwuJLTyYfxSpmfSAjQpcuP+A== + dependencies: + rc "^1.1.6" + safe-buffer "^5.0.1" + registry-auth-token@^4.0.0: version "4.2.1" resolved "https://registry.yarnpkg.com/registry-auth-token/-/registry-auth-token-4.2.1.tgz#6d7b4006441918972ccd5fedcd41dc322c79b250" @@ -10462,6 +11524,13 @@ registry-auth-token@^4.0.0: dependencies: rc "^1.2.8" +registry-url@^3.0.3: + version "3.1.0" + resolved "https://registry.yarnpkg.com/registry-url/-/registry-url-3.1.0.tgz#3d4ef870f73dde1d77f0cf9a381432444e174942" + integrity sha1-PU74cPc93h138M+aOBQyRE4XSUI= + dependencies: + rc "^1.0.1" + registry-url@^5.0.0: version "5.1.0" resolved "https://registry.yarnpkg.com/registry-url/-/registry-url-5.1.0.tgz#e98334b50d5434b81136b44ec638d9c2009c5009" @@ -10507,6 +11576,34 @@ request-promise-native@^1.0.7: stealthy-require "^1.1.1" tough-cookie "^2.3.3" +request@2.81.0: + version "2.81.0" + resolved "https://registry.yarnpkg.com/request/-/request-2.81.0.tgz#c6928946a0e06c5f8d6f8a9333469ffda46298a0" + integrity sha1-xpKJRqDgbF+Nb4qTM0af/aRimKA= + dependencies: + aws-sign2 "~0.6.0" + aws4 "^1.2.1" + caseless "~0.12.0" + combined-stream "~1.0.5" + extend "~3.0.0" + forever-agent "~0.6.1" + form-data "~2.1.1" + har-validator "~4.2.1" + hawk "~3.1.3" + http-signature "~1.1.0" + is-typedarray "~1.0.0" + isstream "~0.1.2" + json-stringify-safe "~5.0.1" + mime-types "~2.1.7" + oauth-sign "~0.8.1" + performance-now "^0.2.0" + qs "~6.4.0" + safe-buffer "^5.0.1" + stringstream "~0.0.4" + tough-cookie "~2.3.0" + tunnel-agent "^0.6.0" + uuid "^3.0.0" + request@2.88.0: version "2.88.0" resolved "https://registry.yarnpkg.com/request/-/request-2.88.0.tgz#9c2fca4f7d35b592efe57c7f0a55e81052124fef" @@ -10569,6 +11666,11 @@ require-from-string@^2.0.2: resolved "https://registry.yarnpkg.com/require-from-string/-/require-from-string-2.0.2.tgz#89a7fdd938261267318eafe14f9c32e598c36909" integrity sha512-Xf0nWe6RseziFMu+Ap9biiUbmplq6S9/p+7w7YXP/JBHhrUDDUhwa+vANyubuqfZWTveU//DYVGsDG7RKL/vEw== +require-main-filename@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-1.0.1.tgz#97f717b69d48784f5f526a6c5aa8ffdda055a4d1" + integrity sha1-l/cXtp1IeE9fUmpsWqj/3aBVpNE= + require-main-filename@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/require-main-filename/-/require-main-filename-2.0.0.tgz#d0b329ecc7cc0f61649f62215be69af54aa8989b" @@ -10677,7 +11779,18 @@ reusify@^1.0.4: resolved "https://registry.yarnpkg.com/reusify/-/reusify-1.0.4.tgz#90da382b1e126efc02146e90845a88db12925d76" integrity sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw== -rimraf@^2.5.4, rimraf@^2.6.2, rimraf@^2.6.3: +reveal.js-plugins@rajgoel/reveal.js-plugins#3.9.0: + version "1.0.0" + resolved "https://codeload.github.com/rajgoel/reveal.js-plugins/tar.gz/9c128365704334085986d160a45402cfe718223a" + dependencies: + npm "^6.13.4" + +reveal.js@~3.9.2: + version "3.9.2" + resolved "https://registry.yarnpkg.com/reveal.js/-/reveal.js-3.9.2.tgz#7f63d3dfec338b6c313dcabdf006e8cf80e0b358" + integrity sha512-Dvv2oA9FrtOHE2DWj5js8pMRfwq++Wmvsn1EyAdYLC80lBjTphns+tPsB652Bnvep9AVviuVS/b4XoVY9rXHLA== + +rimraf@^2.5.2, rimraf@^2.5.4, rimraf@^2.6.2, rimraf@^2.6.3, rimraf@^2.7.1: version "2.7.1" resolved "https://registry.yarnpkg.com/rimraf/-/rimraf-2.7.1.tgz#35797f13a7fdadc566142c29d4f07ccad483e3ec" integrity sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w== @@ -10698,7 +11811,13 @@ rimraf@~2.4.0: dependencies: glob "^6.0.1" -"rise-reveal@file:../rise-reveal/export/reveal.js": +"rise-reveal@file:packages/rise-reveal": + version "390.0.1" + dependencies: + reveal.js "~3.9.2" + reveal.js-plugins rajgoel/reveal.js-plugins#3.9.0 + +"rise-reveal@file:packages/rise-reveal/export/reveal.js": version "3.9.2" rsvp@^4.8.4: @@ -10861,7 +11980,14 @@ semver-compare@^1.0.0: resolved "https://registry.yarnpkg.com/semver-compare/-/semver-compare-1.0.0.tgz#0dee216a1c941ab37e9efb1788f6afc5ff5537fc" integrity sha1-De4hahyUGrN+nvsXiPavxf9VN/w= -"semver@2 || 3 || 4 || 5", "semver@2.x || 3.x || 4 || 5", semver@^5.4.1, semver@^5.5.0, semver@^5.5.1, semver@^5.6.0, semver@^5.7.0, semver@^5.7.1: +semver-diff@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/semver-diff/-/semver-diff-2.1.0.tgz#4bbb8437c8d37e4b0cf1a68fd726ec6d645d6d36" + integrity sha1-S7uEN8jTfksM8aaP1ybsbWRdbTY= + dependencies: + semver "^5.0.3" + +"semver@2 || 3 || 4 || 5", "semver@2.x || 3.x || 4 || 5", "semver@^2.3.0 || 3.x || 4 || 5", semver@^5.0.3, semver@^5.1.0, semver@^5.4.1, semver@^5.5.0, semver@^5.5.1, semver@^5.6.0, semver@^5.7.0, semver@^5.7.1: version "5.7.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== @@ -10946,6 +12072,13 @@ setprototypeof@1.2.0: resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424" integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw== +sha@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/sha/-/sha-3.0.0.tgz#b2f2f90af690c16a3a839a6a6c680ea51fedd1ae" + integrity sha512-DOYnM37cNsLNSGIG/zZWch5CKIRNoLdYUQTQlcgkRkoYIUwDYjqDyye16YcDZg/OPdcbUgTKMjc4SY6TB7ZAPw== + dependencies: + graceful-fs "^4.1.2" + shallow-clone@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/shallow-clone/-/shallow-clone-3.0.1.tgz#8f2981ad92531f55035b01fb230769a40e02efa3" @@ -11050,7 +12183,7 @@ slice-ansi@^4.0.0: astral-regex "^2.0.0" is-fullwidth-code-point "^3.0.0" -slide@^1.1.6: +slide@^1.1.6, slide@~1.1.3, slide@~1.1.6: version "1.1.6" resolved "https://registry.yarnpkg.com/slide/-/slide-1.1.6.tgz#56eb027d65b4d2dce6cb2e2d32c4d4afc9e1d707" integrity sha1-VusCfWW00tzmyy4tMsTUr8nh1wc= @@ -11090,6 +12223,13 @@ snapdragon@^0.8.1: source-map-resolve "^0.5.0" use "^3.1.0" +sntp@1.x.x: + version "1.0.9" + resolved "https://registry.yarnpkg.com/sntp/-/sntp-1.0.9.tgz#6541184cc90aeea6c6e7b35e2659082443c66198" + integrity sha1-ZUEYTMkK7qbG57NeJlkIJEPGYZg= + dependencies: + hoek "2.x.x" + socks-proxy-agent@^4.0.0: version "4.0.2" resolved "https://registry.yarnpkg.com/socks-proxy-agent/-/socks-proxy-agent-4.0.2.tgz#3c8991f3145b2799e70e11bd5fbc8b1963116386" @@ -11162,6 +12302,19 @@ sort-package-json@~1.44.0: is-plain-obj "2.1.0" sort-object-keys "^1.1.3" +sorted-object@~2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/sorted-object/-/sorted-object-2.0.1.tgz#7d631f4bd3a798a24af1dffcfbfe83337a5df5fc" + integrity sha1-fWMfS9OnmKJK8d/8+/6DM3pd9fw= + +sorted-union-stream@~2.1.3: + version "2.1.3" + resolved "https://registry.yarnpkg.com/sorted-union-stream/-/sorted-union-stream-2.1.3.tgz#c7794c7e077880052ff71a8d4a2dbb4a9a638ac7" + integrity sha1-x3lMfgd4gAUv9xqNSi27Sppjisc= + dependencies: + from2 "^1.3.0" + stream-iterate "^1.1.0" + source-list-map@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/source-list-map/-/source-list-map-2.0.1.tgz#3993bd873bfc48479cca9ea3a547835c7c154b34" @@ -11196,7 +12349,14 @@ source-map-url@^0.4.0: resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.1.tgz#0af66605a745a5a2f91cf1bbf8a7afbc283dec56" integrity sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw== -source-map@^0.5.0, source-map@^0.5.6: +source-map@0.4.x, source-map@~0.4.2: + version "0.4.4" + resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.4.4.tgz#eba4f5da9c0dc999de68032d8b4f76173652036b" + integrity sha1-66T12pwNyZneaAMti092FzZSA2s= + dependencies: + amdefine ">=0.0.4" + +source-map@^0.5.0, source-map@^0.5.3, source-map@^0.5.6: version "0.5.7" resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= @@ -11290,7 +12450,7 @@ sshpk@^1.7.0: safer-buffer "^2.0.2" tweetnacl "~0.14.0" -ssri@^6.0.0, ssri@^6.0.1: +ssri@^6.0.0, ssri@^6.0.1, ssri@^6.0.2: version "6.0.2" resolved "https://registry.yarnpkg.com/ssri/-/ssri-6.0.2.tgz#157939134f20464e7301ddba3e90ffa8f7728ac5" integrity sha512-cepbSq/neFK7xB6A50KHN0xHDotYzq58wWCa5LeWqnPrHG8GzfEjO/4O8kpmcGW+oaxkvhEJCWgbgNk4/ZV93Q== @@ -11344,6 +12504,14 @@ stream-each@^1.1.0: end-of-stream "^1.1.0" stream-shift "^1.0.0" +stream-iterate@^1.1.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/stream-iterate/-/stream-iterate-1.2.0.tgz#2bd7c77296c1702a46488b8ad41f79865eecd4e1" + integrity sha1-K9fHcpbBcCpGSIuK1B95hl7s1OE= + dependencies: + readable-stream "^2.1.5" + stream-shift "^1.0.0" + stream-shift@^1.0.0: version "1.0.1" resolved "https://registry.yarnpkg.com/stream-shift/-/stream-shift-1.0.1.tgz#d7088281559ab2778424279b0877da3c392d5a3d" @@ -11390,7 +12558,7 @@ string-width@^1.0.1: is-fullwidth-code-point "^3.0.0" strip-ansi "^6.0.1" -string-width@^2.1.0: +string-width@^2.0.0, string-width@^2.1.0, string-width@^2.1.1: version "2.1.1" resolved "https://registry.yarnpkg.com/string-width/-/string-width-2.1.1.tgz#ab93f27a8dc13d28cac815c462143a6d9012ae9e" integrity sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw== @@ -11453,6 +12621,11 @@ string_decoder@^1.1.1: dependencies: safe-buffer "~5.2.0" +string_decoder@~0.10.x: + version "0.10.31" + resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94" + integrity sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ= + string_decoder@~1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.1.1.tgz#9cf1611ba62685d7030ae9e4ba34149c3af03fc8" @@ -11469,6 +12642,16 @@ stringify-object@^3.3.0: is-obj "^1.0.1" is-regexp "^1.0.0" +stringify-package@^1.0.0, stringify-package@^1.0.1: + version "1.0.1" + resolved "https://registry.yarnpkg.com/stringify-package/-/stringify-package-1.0.1.tgz#e5aa3643e7f74d0f28628b72f3dad5cecfc3ba85" + integrity sha512-sa4DUQsYciMP1xhKWGuFM04fB0LG/9DlluZoSVywUMRNvzid6XucHK0/90xGxRoHrAaROrcHK1aPKaijCtSrhg== + +stringstream@~0.0.4: + version "0.0.6" + resolved "https://registry.yarnpkg.com/stringstream/-/stringstream-0.0.6.tgz#7880225b0d4ad10e30927d167a1d6f2fd3b33a72" + integrity sha512-87GEBAkegbBcweToUrdzf3eLhWNg06FJTebl4BVJz/JgWy8CvEr9dRtX5qWphiynMSQlxxi+QqN0z5T32SLlhA== + strip-ansi@^3.0.0, strip-ansi@^3.0.1: version "3.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf" @@ -11636,7 +12819,7 @@ tapable@^2.1.1, tapable@^2.2.0: resolved "https://registry.yarnpkg.com/tapable/-/tapable-2.2.1.tgz#1967a73ef4060a82f12ab96af86d52fdb76eeca0" integrity sha512-GNzQvQTOIP6RyTfE2Qxb8ZVlNmw0n88vp1szwWRimP02mnTsx3Wtn5qRdqY9w2XduFNUgvOwhNnQsjwCp+kqaQ== -tar@^4.4.10, tar@^4.4.12, tar@^4.4.8: +tar@^4.4.10, tar@^4.4.12, tar@^4.4.19, tar@^4.4.8: version "4.4.19" resolved "https://registry.yarnpkg.com/tar/-/tar-4.4.19.tgz#2e4d7263df26f2b914dee10c825ab132123742f3" integrity sha512-a20gEsvHnWe0ygBY8JbxoM4w3SJdhc7ZAuxkLqh+nvNQN2IOt0B5lLgM490X5Hl8FF0dl0tOf2ewFYAlIFgzVA== @@ -11678,6 +12861,13 @@ temp-write@^3.4.0: temp-dir "^1.0.0" uuid "^3.0.1" +term-size@^1.2.0: + version "1.2.0" + resolved "https://registry.yarnpkg.com/term-size/-/term-size-1.2.0.tgz#458b83887f288fc56d6fffbfad262e26638efa69" + integrity sha1-RYuDiH8oj8Vtb/+/rSYuJmOO+mk= + dependencies: + execa "^0.7.0" + terminal-link@^2.0.0: version "2.1.1" resolved "https://registry.yarnpkg.com/terminal-link/-/terminal-link-2.1.1.tgz#14a64a27ab3c0df933ea546fba55f2d078edc994" @@ -11735,7 +12925,7 @@ text-extensions@^1.0.0: resolved "https://registry.yarnpkg.com/text-extensions/-/text-extensions-1.9.0.tgz#1853e45fee39c945ce6f6c36b2d659b5aabc2a26" integrity sha512-wiBrwC1EhBelW12Zy26JeOUkQ5mRu+5o8rpsJk5+2t+Y5vE7e842qtZDQ2g1NpX/29HdyFeJ4nSIhI47ENSxlQ== -text-table@^0.2.0: +text-table@^0.2.0, text-table@~0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/text-table/-/text-table-0.2.0.tgz#7f5ee823ae805207c00af2df4a84ec3fcfa570b4" integrity sha1-f17oI66AUgfACvLfSoTsP8+lcLQ= @@ -11787,6 +12977,11 @@ through@2, "through@>=2.2.7 <3", through@^2.3.4, through@^2.3.6, through@^2.3.8: resolved "https://registry.yarnpkg.com/through/-/through-2.3.8.tgz#0dd4c9ffaabc357960b1b724115d7e0e86a2e1f5" integrity sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU= +timed-out@^4.0.0: + version "4.0.1" + resolved "https://registry.yarnpkg.com/timed-out/-/timed-out-4.0.1.tgz#f32eacac5a175bea25d7fab565ab3ed8741ef56f" + integrity sha1-8y6srFoXW+ol1/q1Zas+2HQe9W8= + timers-ext@^0.1.7: version "0.1.7" resolved "https://registry.yarnpkg.com/timers-ext/-/timers-ext-0.1.7.tgz#6f57ad8578e07a3fb9f91d9387d65647555e25c6" @@ -11795,6 +12990,11 @@ timers-ext@^0.1.7: es5-ext "~0.10.46" next-tick "1" +tiny-relative-date@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/tiny-relative-date/-/tiny-relative-date-1.3.0.tgz#fa08aad501ed730f31cc043181d995c39a935e07" + integrity sha512-MOQHpzllWxDCHHaDno30hhLfbouoYlOI8YlMNtvKe1zXbjEVhbcEovQxvZrPvtiYW630GQDoMMarCnjfyfHA+A== + tmp@^0.0.33: version "0.0.33" resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.0.33.tgz#6d34335889768d21b2bcda0aa277ced3b1bfadf9" @@ -11899,6 +13099,13 @@ tough-cookie@^4.0.0: punycode "^2.1.1" universalify "^0.1.2" +tough-cookie@~2.3.0: + version "2.3.4" + resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.3.4.tgz#ec60cee38ac675063ffc97a5c18970578ee83655" + integrity sha512-TZ6TTfI5NtZnuyy/Kecv+CnoROnyXn2DN97LontgQpCwsX2XyLYCC0ENhYkehSOwAp8rTQKc/NUIF7BkQ5rKLA== + dependencies: + punycode "^1.4.1" + tough-cookie@~2.4.3: version "2.4.3" resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.4.3.tgz#53f36da3f47783b0925afa06ff9f3b165280f781" @@ -12097,7 +13304,7 @@ uid-number@0.0.6: resolved "https://registry.yarnpkg.com/uid-number/-/uid-number-0.0.6.tgz#0ea10e8035e8eb5b8e4449f06da1c730663baa81" integrity sha1-DqEOgDXo61uOREnwbaHHMGY7qoE= -umask@^1.1.0: +umask@^1.1.0, umask@~1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/umask/-/umask-1.1.0.tgz#f29cebf01df517912bb58ff9c4e50fde8e33320d" integrity sha1-8pzr8B31F5ErtY/5xOUP3o4zMg0= @@ -12136,6 +13343,13 @@ unique-slug@^2.0.0: dependencies: imurmurhash "^0.1.4" +unique-string@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/unique-string/-/unique-string-1.0.0.tgz#9e1057cca851abb93398f8b33ae187b99caec11a" + integrity sha1-nhBXzKhRq7kzmPizOuGHuZyuwRo= + dependencies: + crypto-random-string "^1.0.0" + universal-user-agent@^4.0.0: version "4.0.1" resolved "https://registry.yarnpkg.com/universal-user-agent/-/universal-user-agent-4.0.1.tgz#fd8d6cb773a679a709e967ef8288a31fcc03e557" @@ -12176,11 +13390,32 @@ unset-value@^1.0.0: has-value "^0.3.1" isobject "^3.0.0" +unzip-response@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/unzip-response/-/unzip-response-2.0.1.tgz#d2f0f737d16b0615e72a6935ed04214572d56f97" + integrity sha1-0vD3N9FrBhXnKmk17QQhRXLVb5c= + upath@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/upath/-/upath-1.2.0.tgz#8f66dbcd55a883acdae4408af8b035a5044c1894" integrity sha512-aZwGpamFO61g3OlfT7OQCHqhGnW43ieH9WZeP7QxN/G/jS4jfqUkZxoryvJgVPEcrl5NL/ggHsSmLMHuH64Lhg== +update-notifier@^2.2.0, update-notifier@^2.3.0, update-notifier@^2.5.0: + version "2.5.0" + resolved "https://registry.yarnpkg.com/update-notifier/-/update-notifier-2.5.0.tgz#d0744593e13f161e406acb1d9408b72cad08aff6" + integrity sha512-gwMdhgJHGuj/+wHJJs9e6PcCszpxR1b236igrOkUofGhqJuG+amlIKwApH1IW1WWl7ovZxsX49lMBWLxSdm5Dw== + dependencies: + boxen "^1.2.1" + chalk "^2.0.1" + configstore "^3.0.0" + import-lazy "^2.1.0" + is-ci "^1.0.10" + is-installed-globally "^0.1.0" + is-npm "^1.0.0" + latest-version "^3.0.0" + semver-diff "^2.0.0" + xdg-basedir "^3.0.0" + uri-js@^4.2.2: version "4.4.1" resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" @@ -12202,6 +13437,13 @@ url-loader@~4.1.0, url-loader@~4.1.1: mime-types "^2.1.27" schema-utils "^3.0.0" +url-parse-lax@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-1.0.0.tgz#7af8f303645e9bd79a272e7a14ac68bc0609da73" + integrity sha1-evjzA2Rem9eaJy56FKxovAYJ2nM= + dependencies: + prepend-http "^1.0.1" + url-parse-lax@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/url-parse-lax/-/url-parse-lax-3.0.0.tgz#16b5cafc07dbe3676c1b1999177823d6503acb0c" @@ -12235,6 +13477,11 @@ util-deprecate@^1.0.1, util-deprecate@^1.0.2, util-deprecate@~1.0.1: resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf" integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8= +util-extend@^1.0.1: + version "1.0.3" + resolved "https://registry.yarnpkg.com/util-extend/-/util-extend-1.0.3.tgz#a7c216d267545169637b3b6edc6ca9119e2ff93f" + integrity sha1-p8IW0mdUUWljeztu3GypEZ4v+T8= + util-promisify@^2.1.0: version "2.1.0" resolved "https://registry.yarnpkg.com/util-promisify/-/util-promisify-2.1.0.tgz#3c2236476c4d32c5ff3c47002add7c13b9a82a53" @@ -12247,7 +13494,7 @@ utils-merge@1.0.1: resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" integrity sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM= -uuid@^3.0.1, uuid@^3.3.2, uuid@^3.3.3: +uuid@^3.0.0, uuid@^3.0.1, uuid@^3.3.2, uuid@^3.3.3: version "3.4.0" resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== @@ -12271,7 +13518,7 @@ v8-to-istanbul@^7.0.0: convert-source-map "^1.6.0" source-map "^0.7.3" -validate-npm-package-license@^3.0.1, validate-npm-package-license@^3.0.3: +validate-npm-package-license@^3.0.1, validate-npm-package-license@^3.0.3, validate-npm-package-license@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz#fc91f6b9c7ba15c857f4cb2c5defeec39d4f410a" integrity sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew== @@ -12279,7 +13526,7 @@ validate-npm-package-license@^3.0.1, validate-npm-package-license@^3.0.3: spdx-correct "^3.0.0" spdx-expression-parse "^3.0.0" -validate-npm-package-name@^3.0.0: +validate-npm-package-name@^3.0.0, validate-npm-package-name@~3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/validate-npm-package-name/-/validate-npm-package-name-3.0.0.tgz#5fa912d81eb7d0c74afc140de7317f0ca7df437e" integrity sha1-X6kS2B630MdK/BQN5zF/DKffQ34= @@ -12793,6 +14040,14 @@ warning@^4.0.2, warning@^4.0.3: dependencies: loose-envify "^1.0.0" +watch@~0.16.0: + version "0.16.0" + resolved "https://registry.yarnpkg.com/watch/-/watch-0.16.0.tgz#972f98eabae5610c116f6432450eea91df68ab71" + integrity sha1-ly+Y6rrlYQwRb2QyRQ7qkd9oq3E= + dependencies: + exec-sh "^0.2.0" + minimist "^1.1.0" + watch@~1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/watch/-/watch-1.0.2.tgz#340a717bde765726fa0aa07d721e0147a551df0c" @@ -12979,7 +14234,7 @@ which-module@^2.0.0: resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= -which@^1.2.9, which@^1.3.1: +which@^1.2.9, which@^1.3.0, which@^1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" integrity sha512-HxJdYWq1MTIQbJ3nw0cqssHoTNU267KlrDuGZ1WYlxDStUtKUhOaJmh112/TZmHxxUfuJqPXSOm7tDyas0OSIQ== @@ -13000,6 +14255,13 @@ wide-align@^1.1.0: dependencies: string-width "^1.0.2 || 2 || 3 || 4" +widest-line@^2.0.0: + version "2.0.1" + resolved "https://registry.yarnpkg.com/widest-line/-/widest-line-2.0.1.tgz#7438764730ec7ef4381ce4df82fb98a53142a3fc" + integrity sha512-Ba5m9/Fa4Xt9eb2ELXt77JxVDV8w7qQrH0zS/TWSJdLyAwQjWoOzpzj5lwVftDz6n/EOu3tNACS84v509qwnJA== + dependencies: + string-width "^2.1.1" + wildcard@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/wildcard/-/wildcard-2.0.0.tgz#a77d20e5200c6faaac979e4b3aadc7b3dd7f8fec" @@ -13022,6 +14284,13 @@ wordwrap@^1.0.0: resolved "https://registry.yarnpkg.com/wordwrap/-/wordwrap-1.0.0.tgz#27584810891456a4171c8d0226441ade90cbcaeb" integrity sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus= +worker-farm@^1.6.0, worker-farm@^1.7.0: + version "1.7.0" + resolved "https://registry.yarnpkg.com/worker-farm/-/worker-farm-1.7.0.tgz#26a94c5391bbca926152002f69b84a4bf772e5a8" + integrity sha512-rvw3QTZc8lAxyVrqcSGVm5yP/IJ2UcB3U0graE3LCFoZ0Yn2x4EoVSqJKdB/T5M+FLcRPjz4TDacRf3OCfNUzw== + dependencies: + errno "~0.1.7" + worker-loader@^3.0.2: version "3.0.8" resolved "https://registry.yarnpkg.com/worker-loader/-/worker-loader-3.0.8.tgz#5fc5cda4a3d3163d9c274a4e3a811ce8b60dbb37" @@ -13030,6 +14299,14 @@ worker-loader@^3.0.2: loader-utils "^2.0.0" schema-utils "^3.0.0" +wrap-ansi@^2.0.0: + version "2.1.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-2.1.0.tgz#d8fc3d284dd05794fe84973caecdd1cf824fdd85" + integrity sha1-2Pw9KE3QV5T+hJc8rs3Rz4JP3YU= + dependencies: + string-width "^1.0.1" + strip-ansi "^3.0.1" + wrap-ansi@^5.1.0: version "5.1.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-5.1.0.tgz#1fd1f67235d5b6d0fee781056001bfb694c03b09" @@ -13062,7 +14339,7 @@ wrappy@1: resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8= -write-file-atomic@^2.0.0, write-file-atomic@^2.3.0, write-file-atomic@^2.4.2: +write-file-atomic@^2.0.0, write-file-atomic@^2.3.0, write-file-atomic@^2.4.2, write-file-atomic@^2.4.3: version "2.4.3" resolved "https://registry.yarnpkg.com/write-file-atomic/-/write-file-atomic-2.4.3.tgz#1fd2e9ae1df3e75b8d8c367443c692d4ca81f481" integrity sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ== @@ -13125,6 +14402,11 @@ ws@^7.0.0, ws@^7.3.1, ws@^7.4.6: resolved "https://registry.yarnpkg.com/ws/-/ws-7.5.5.tgz#8b4bc4af518cfabd0473ae4f99144287b33eb881" integrity sha512-BAkMFcAzl8as1G/hArkxOxq3G7pjUqQ3gzYbLL0/5zNkph70e+lCoxBGnm6AW1+/aiNeV4fnKqZ8m4GZewmH2w== +xdg-basedir@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/xdg-basedir/-/xdg-basedir-3.0.0.tgz#496b2cc109eca8dbacfe2dc72b603c17c5870ad4" + integrity sha1-SWsswQnsqNus/i3HK2A8F8WHCtQ= + xml-name-validator@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/xml-name-validator/-/xml-name-validator-3.0.0.tgz#6ae73e06de4d8c6e47f9fb181f78d648ad457c6a" @@ -13179,6 +14461,11 @@ y-websocket@^1.3.15: ws "^6.2.1" y-leveldb "^0.1.0" +y18n@^3.2.1: + version "3.2.2" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.2.tgz#85c901bd6470ce71fc4bb723ad209b70f7f28696" + integrity sha512-uGZHXkHnhF0XeeAPgnKfPv1bgKAYyVvmNL1xlKsPYZPaIHxGti2hHqvOCQv71XMsLxu1QjergkqogUnms5D3YQ== + y18n@^4.0.0: version "4.0.3" resolved "https://registry.yarnpkg.com/y18n/-/y18n-4.0.3.tgz#b5f259c82cd6e336921efd7bfd8bf560de9eeedf" @@ -13189,6 +14476,11 @@ y18n@^5.0.5: resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== +yallist@^2.1.2: + version "2.1.2" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-2.1.2.tgz#1c11f9218f076089a47dd512f93c6699a6a81d52" + integrity sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI= + yallist@^3.0.0, yallist@^3.0.2, yallist@^3.1.1: version "3.1.1" resolved "https://registry.yarnpkg.com/yallist/-/yallist-3.1.1.tgz#dbb7daf9bfd8bac9ab45ebf602b8cbad0d5d08fd" @@ -13225,7 +14517,14 @@ yargs-parser@^20.2.2, yargs-parser@^20.2.3: resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-20.2.9.tgz#2eb7dc3b0289718fc295f362753845c41a0c94ee" integrity sha512-y11nGElTIV+CT3Zv9t7VKl+Q3hTQoT9a1Qzezhhl6Rp21gJ/IVTW7Z3y9EWXhuUBC2Shnf+DX0antecpAwSP8w== -yargs@^14.2.2: +yargs-parser@^7.0.0: + version "7.0.0" + resolved "https://registry.yarnpkg.com/yargs-parser/-/yargs-parser-7.0.0.tgz#8d0ac42f16ea55debd332caf4c4038b3e3f5dfd9" + integrity sha1-jQrELxbqVd69MyyvTEA4s+P139k= + dependencies: + camelcase "^4.1.0" + +yargs@^14.2.2, yargs@^14.2.3: version "14.2.3" resolved "https://registry.yarnpkg.com/yargs/-/yargs-14.2.3.tgz#1a1c3edced1afb2a2fea33604bc6d1d8d688a414" integrity sha512-ZbotRWhF+lkjijC/VhmOT9wSgyBQ7+zr13+YLkhfsSiTriYsMzkTUFP18pFhWwBeMa5gUc1MzbhrO6/VB7c9Xg== @@ -13259,6 +14558,25 @@ yargs@^15.4.1: y18n "^4.0.0" yargs-parser "^18.1.2" +yargs@^8.0.2: + version "8.0.2" + resolved "https://registry.yarnpkg.com/yargs/-/yargs-8.0.2.tgz#6299a9055b1cefc969ff7e79c1d918dceb22c360" + integrity sha1-YpmpBVsc78lp/355wdkY3Osiw2A= + dependencies: + camelcase "^4.1.0" + cliui "^3.2.0" + decamelize "^1.1.1" + get-caller-file "^1.0.1" + os-locale "^2.0.0" + read-pkg-up "^2.0.0" + require-directory "^2.1.1" + require-main-filename "^1.0.1" + set-blocking "^2.0.0" + string-width "^2.0.0" + which-module "^2.0.0" + y18n "^3.2.1" + yargs-parser "^7.0.0" + yargs@~17.1.1: version "17.1.1" resolved "https://registry.yarnpkg.com/yargs/-/yargs-17.1.1.tgz#c2a8091564bdb196f7c0a67c1d12e5b85b8067ba" From c5a4a452b31617d870dbf9e712d4d4e8f4dda8ab Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Collonval?= Date: Mon, 15 Nov 2021 16:46:42 +0100 Subject: [PATCH 12/48] Remove symlink --- LICENSE.md | 1 - LICENSE_.md | 12 +++++++++++ README.md | 1 - README_.md | 60 +++++++++++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 72 insertions(+), 2 deletions(-) delete mode 120000 LICENSE.md create mode 100644 LICENSE_.md delete mode 120000 README.md create mode 100644 README_.md diff --git a/LICENSE.md b/LICENSE.md deleted file mode 120000 index 91004a74..00000000 --- a/LICENSE.md +++ /dev/null @@ -1 +0,0 @@ -classic/LICENSE.md \ No newline at end of file diff --git a/LICENSE_.md b/LICENSE_.md new file mode 100644 index 00000000..e406ab46 --- /dev/null +++ b/LICENSE_.md @@ -0,0 +1,12 @@ +Copyright (c) 2013-2016, Damián Avila and contributors +All rights reserved. + +Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: + +1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. + +2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. + +3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. + +THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. diff --git a/README.md b/README.md deleted file mode 120000 index d5cdbd1c..00000000 --- a/README.md +++ /dev/null @@ -1 +0,0 @@ -classic/README.md \ No newline at end of file diff --git a/README_.md b/README_.md new file mode 100644 index 00000000..20dc95c9 --- /dev/null +++ b/README_.md @@ -0,0 +1,60 @@ +# RISE + +RISE allows you to instantly turn your Jupyter Notebooks into a +slideshow. No out-of-band conversion is needed, switch from jupyter +notebook to a live *reveal.js*-based slideshow in a single keystroke, +and back. + +![Basic usage](https://media.giphy.com/media/3oxHQtTxAaZwMOHr9u/giphy.gif) + +## Resources + +RISE stands for ***Reveal.js - Jupyter/IPython Slideshow Extension***: + +* Demo notebook (no installation required) + * [![](https://mybinder.org/badge.svg)](https://mybinder.org/v2/gh/damianavila/RISE/master?filepath=examples%2FREADME.ipynb) + +* Source code is on github + * [![Issues](http://img.shields.io/github/issues/damianavila/RISE.svg)](https://github.com/damianavila/RISE/issues) + +* Documentation is hosted on readthedocs + * [![doc status](https://readthedocs.org/projects/rise/badge)](http://rise.readthedocs.io/) + +* Chat room on gitter + * [![Gitter chat](https://badges.gitter.im/damianavila/RISE.png)](https://gitter.im/damianavila/RISE) + +* Videos on youtube + * basic usage (4'30'') + + + + +## Installation + +You essentially have 2 options: + +### Option 1 - Using conda: + +``` +conda install -c conda-forge rise +``` + +### Option 2 - Using pip: + +``` +pip install RISE +``` + +## Development + +To install RISE in development mode, see the +[Developer section](https://rise.readthedocs.io/en/stable/dev/index.html) of the RISE +documentation. + +## Feedback + +If you have any feedback, or find any bugs, please let us know just opening an issue. + +## Support us + +Please visit this page for more information: https://rise.readthedocs.io/en/stable/support.html From ee6dea940d2a1a2f420473e8e83d1f9402bb0d44 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Collonval?= Date: Mon, 15 Nov 2021 16:54:47 +0100 Subject: [PATCH 13/48] Keep License and Readme as symlink --- LICENSE.md | 1 + README.md | 1 + binder/environment.yml | 9 +++++---- LICENSE_.md => packages/LICENSE.md | 0 README_.md => packages/README.md | 0 5 files changed, 7 insertions(+), 4 deletions(-) create mode 120000 LICENSE.md create mode 120000 README.md rename LICENSE_.md => packages/LICENSE.md (100%) rename README_.md => packages/README.md (100%) diff --git a/LICENSE.md b/LICENSE.md new file mode 120000 index 00000000..4515587a --- /dev/null +++ b/LICENSE.md @@ -0,0 +1 @@ +packages/LICENSE.md \ No newline at end of file diff --git a/README.md b/README.md new file mode 120000 index 00000000..52d04d4a --- /dev/null +++ b/README.md @@ -0,0 +1 @@ +packages/README.md \ No newline at end of file diff --git a/binder/environment.yml b/binder/environment.yml index 443d011b..dd1299a9 100644 --- a/binder/environment.yml +++ b/binder/environment.yml @@ -1,15 +1,16 @@ channels: - conda-forge dependencies: - - python + - python=3.9 - numpy - matplotlib - pandas - bokeh + - ipywidgets # - rise - - notebook - - jupyterlab - - nodejs + - notebook=6 + - jupyterlab=3 + - nodejs=14 - yarn - pip: - jupyter-contrib-nbextensions diff --git a/LICENSE_.md b/packages/LICENSE.md similarity index 100% rename from LICENSE_.md rename to packages/LICENSE.md diff --git a/README_.md b/packages/README.md similarity index 100% rename from README_.md rename to packages/README.md From 62e1e6ae07ba2c3dd953bb57605cafa8efbe987b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Collonval?= Date: Mon, 15 Nov 2021 16:56:57 +0100 Subject: [PATCH 14/48] Improve binder environment --- binder/environment.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/binder/environment.yml b/binder/environment.yml index dd1299a9..382e1625 100644 --- a/binder/environment.yml +++ b/binder/environment.yml @@ -3,7 +3,7 @@ channels: dependencies: - python=3.9 - numpy - - matplotlib + - matplotlib-base - pandas - bokeh - ipywidgets From d9b9cd82fadca4fcab63741de43c0c6c634ef770 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Collonval?= Date: Mon, 15 Nov 2021 16:57:31 +0100 Subject: [PATCH 15/48] Lint code --- packages/application/src/app/index.ts | 2 +- packages/application/src/plugins/index.ts | 5 +++-- packages/lab/src/index.ts | 3 +-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/application/src/app/index.ts b/packages/application/src/app/index.ts index 7017b9cb..8839ef7b 100644 --- a/packages/application/src/app/index.ts +++ b/packages/application/src/app/index.ts @@ -93,7 +93,7 @@ export class RiseShell extends Widget implements JupyterFrontEnd.IShell { */ protected onUpdateRequest(msg: Message): void { super.onUpdateRequest(msg); - this._updated.emit() + this._updated.emit(); } private _currentWidget: Widget | null; diff --git a/packages/application/src/plugins/index.ts b/packages/application/src/plugins/index.ts index 84ff58fc..c119b6dc 100644 --- a/packages/application/src/plugins/index.ts +++ b/packages/application/src/plugins/index.ts @@ -61,8 +61,9 @@ function startReveal(panel: NotebookPanel): void { const notebook = panel.content; markupSlides(notebook); - const panel_container = - document.getElementsByClassName('jp-NotebookPanel')[0]; + const panel_container = document.getElementsByClassName( + 'jp-NotebookPanel' + )[0]; panel_container.classList.add('reveal'); //console.log("panel_container"); diff --git a/packages/lab/src/index.ts b/packages/lab/src/index.ts index b8dba36d..9cea5997 100644 --- a/packages/lab/src/index.ts +++ b/packages/lab/src/index.ts @@ -43,8 +43,7 @@ const plugin: JupyterFrontEndPlugin = { const trans = translator.load('rise'); commands.addCommand(CommandIDs.openRise, { - label: args => - !!args.toolbar ? '' : trans.__('Open as Reveal Slideshow'), + label: args => (args.toolbar ? '' : trans.__('Open as Reveal Slideshow')), caption: trans.__('Open the current notebook as an RevealJS slideshow.'), icon: RISEIcon, execute: () => { From 646b7e3ab1b8480985ba8cc7563a496f0a790013 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Collonval?= Date: Mon, 15 Nov 2021 17:11:20 +0100 Subject: [PATCH 16/48] Fix python sdist bdist --- install.json | 5 +++++ package.json | 2 +- packages/application/package.json | 1 + packages/classic/package.json | 1 + packages/rise-reveal/package.json | 1 + rise/nbextension/README.md | 1 - setup.py | 11 +++++++++-- 7 files changed, 18 insertions(+), 4 deletions(-) create mode 100644 install.json delete mode 120000 rise/nbextension/README.md diff --git a/install.json b/install.json new file mode 100644 index 00000000..d8b15260 --- /dev/null +++ b/install.json @@ -0,0 +1,5 @@ +{ + "packageManager": "python", + "packageName": "rise", + "uninstallInstructions": "Use your Python package manager (pip, conda, etc.) to uninstall the package rise" +} diff --git a/package.json b/package.json index 13c9342b..dd8128df 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "rise-jupyterlab-root", "description": "Edit and Present Revealjs-based LIVE slides in the Jupyter Notebook", - "version": "0.1.0", + "version": "5.8.0", "license": "BSD-3-Clause", "homepage": "https://github.com/damianavila/RISE", "private": true, diff --git a/packages/application/package.json b/packages/application/package.json index cd5cd82f..e378a919 100644 --- a/packages/application/package.json +++ b/packages/application/package.json @@ -2,6 +2,7 @@ "name": "rise-application", "version": "0.1.0", "description": "Rise Application based on JupyterLab modules.", + "private": true, "keywords": [ "jupyter", "jupyterlab", diff --git a/packages/classic/package.json b/packages/classic/package.json index 5f2c53ba..c39d89ca 100644 --- a/packages/classic/package.json +++ b/packages/classic/package.json @@ -2,6 +2,7 @@ "name": "rise", "description": "Edit and Present Revealjs-based LIVE slides in the Jupyter Notebook", "license": "BSD-3-Clause", + "private": true, "keywords": [ "reveal.js", "RISE", diff --git a/packages/rise-reveal/package.json b/packages/rise-reveal/package.json index cb6b4037..d5929df1 100644 --- a/packages/rise-reveal/package.json +++ b/packages/rise-reveal/package.json @@ -2,6 +2,7 @@ "name": "rise-reveal", "description": "original reveal.js patched for use within the RISE Jupyter extension", "license": "MIT", + "private": true, "keywords": [ "reveal.js", "RISE", diff --git a/rise/nbextension/README.md b/rise/nbextension/README.md deleted file mode 120000 index fe840054..00000000 --- a/rise/nbextension/README.md +++ /dev/null @@ -1 +0,0 @@ -../../README.md \ No newline at end of file diff --git a/setup.py b/setup.py index 34e8df3d..9bf61e65 100755 --- a/setup.py +++ b/setup.py @@ -44,8 +44,7 @@ ("etc/jupyter/nbconfig/notebook.d", [ "jupyter-config/nbconfig/notebook.d/rise.json" ]), - ("share/jupyter/labextensions/%s" % labext_name, str(lab_path.relative_to(HERE)), "**"), - ("share/jupyter/labextensions/%s" % labext_name, str("."), "install.json"), + ("share/jupyter/labextensions/%s" % labext_name, ["install.json"]), ] # Install the nbextension (like jupyter nbextension install --sys-prefix). @@ -59,6 +58,14 @@ dst = nbext + path.split(os.sep)[2:] DATA_FILES.append((os.path.join(*dst), srcfiles)) +labext = ["share", "jupyter", "labextensions", labext_name] +for (path, dirs, files) in os.walk(os.path.join("rise", "labextension")): + # Files to install + srcfiles = [os.path.join(path, f) for f in files] + # Installation path components, removing rise/static from "path" + dst = labext + path.split(os.sep)[2:] + DATA_FILES.append((os.path.join(*dst), srcfiles)) + # version string is extracted from toplevel package.json import json with open('package.json') as package_json: From 77d9cdea2999d7551651078a8769a35fe64fc617 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Collonval?= Date: Mon, 15 Nov 2021 17:28:42 +0100 Subject: [PATCH 17/48] Pin package to JLab 3.0 --- app/package.json | 74 +++++++++++++++---------------- packages/application/package.json | 21 ++++----- 2 files changed, 48 insertions(+), 47 deletions(-) diff --git a/app/package.json b/app/package.json index b09cc5fc..14a00367 100644 --- a/app/package.json +++ b/app/package.json @@ -12,24 +12,24 @@ "watch": "webpack --config ./webpack.config.watch.js" }, "resolutions": { - "@jupyterlab/application-extension": "^3.2.0", - "@jupyterlab/apputils-extension": "^3.2.0", - "@jupyterlab/codemirror-extension": "^3.2.0", - "@jupyterlab/coreutils": "~5.2.0", - "@jupyterlab/docmanager-extension": "^3.2.0", - "@jupyterlab/docprovider-extension": "^3.2.0", - "@jupyterlab/javascript-extension": "^3.2.0", - "@jupyterlab/json-extension": "^3.2.0", - "@jupyterlab/mathjax2-extension": "^3.2.0", - "@jupyterlab/notebook-extension": "^3.2.0", - "@jupyterlab/outputarea": "^3.2.0", - "@jupyterlab/pdf-extension": "^3.2.0", - "@jupyterlab/rendermime-extension": "^3.2.0", - "@jupyterlab/shortcuts-extension": "^3.2.0", - "@jupyterlab/theme-dark-extension": "^3.2.0", - "@jupyterlab/theme-light-extension": "^3.2.0", - "@jupyterlab/translation-extension": "^3.2.0", - "@jupyterlab/vega5-extension": "^3.2.0", + "@jupyterlab/application-extension": "^3.0.0", + "@jupyterlab/apputils-extension": "^3.0.0", + "@jupyterlab/codemirror-extension": "^3.0.0", + "@jupyterlab/coreutils": "^5.0.0", + "@jupyterlab/docmanager-extension": "^3.0.0", + "@jupyterlab/docprovider-extension": "^3.0.0", + "@jupyterlab/javascript-extension": "^3.0.0", + "@jupyterlab/json-extension": "^3.0.0", + "@jupyterlab/mathjax2-extension": "^3.0.0", + "@jupyterlab/notebook-extension": "^3.0.0", + "@jupyterlab/outputarea": "^3.0.0", + "@jupyterlab/pdf-extension": "^3.0.0", + "@jupyterlab/rendermime-extension": "^3.0.0", + "@jupyterlab/shortcuts-extension": "^3.0.0", + "@jupyterlab/theme-dark-extension": "^3.0.0", + "@jupyterlab/theme-light-extension": "^3.0.0", + "@jupyterlab/translation-extension": "^3.0.0", + "@jupyterlab/vega5-extension": "^3.0.0", "@lumino/application": "^1.25.0", "@lumino/domutils": "^1.7.0", "@lumino/dragdrop": "^1.12.0", @@ -41,28 +41,28 @@ "yjs": "~13.5.10" }, "dependencies": { - "@jupyterlab/application-extension": "^3.2.0", - "@jupyterlab/apputils-extension": "^3.2.0", - "@jupyterlab/codemirror-extension": "^3.2.0", - "@jupyterlab/coreutils": "~5.2.0", - "@jupyterlab/docmanager-extension": "^3.2.0", - "@jupyterlab/docprovider-extension": "^3.2.0", - "@jupyterlab/javascript-extension": "^3.2.0", - "@jupyterlab/json-extension": "^3.2.0", - "@jupyterlab/mathjax2-extension": "^3.2.0", - "@jupyterlab/notebook-extension": "^3.2.0", - "@jupyterlab/pdf-extension": "^3.2.0", - "@jupyterlab/rendermime-extension": "^3.2.0", - "@jupyterlab/shortcuts-extension": "^3.2.0", - "@jupyterlab/theme-dark-extension": "^3.2.0", - "@jupyterlab/theme-light-extension": "^3.2.0", - "@jupyterlab/translation-extension": "^3.2.0", - "@jupyterlab/vega5-extension": "^3.2.0", + "@jupyterlab/application-extension": "^3.0.0", + "@jupyterlab/apputils-extension": "^3.0.0", + "@jupyterlab/codemirror-extension": "^3.0.0", + "@jupyterlab/coreutils": "~5.0.0", + "@jupyterlab/docmanager-extension": "^3.0.0", + "@jupyterlab/docprovider-extension": "^3.0.0", + "@jupyterlab/javascript-extension": "^3.0.0", + "@jupyterlab/json-extension": "^3.0.0", + "@jupyterlab/mathjax2-extension": "^3.0.0", + "@jupyterlab/notebook-extension": "^3.0.0", + "@jupyterlab/pdf-extension": "^3.0.0", + "@jupyterlab/rendermime-extension": "^3.0.0", + "@jupyterlab/shortcuts-extension": "^3.0.0", + "@jupyterlab/theme-dark-extension": "^3.0.0", + "@jupyterlab/theme-light-extension": "^3.0.0", + "@jupyterlab/translation-extension": "^3.0.0", + "@jupyterlab/vega5-extension": "^3.0.0", "rise-application": "~0.1.0" }, "devDependencies": { - "@jupyterlab/builder": "^3.2.0", - "@jupyterlab/buildutils": "^3.2.0", + "@jupyterlab/builder": "^3.0.0", + "@jupyterlab/buildutils": "^3.0.0", "@types/rimraf": "^3.0.0", "css-loader": "~5.0.1", "file-loader": "~5.0.2", diff --git a/packages/application/package.json b/packages/application/package.json index e378a919..267c886f 100644 --- a/packages/application/package.json +++ b/packages/application/package.json @@ -35,15 +35,16 @@ "watch": "tsc -b --watch" }, "dependencies": { - "@jupyterlab/application": "^3.2.0", - "@jupyterlab/apputils": "^3.2.0", - "@jupyterlab/coreutils": "^5.2.0", - "@jupyterlab/docmanager": "^3.2.0", - "@jupyterlab/docregistry": "^3.2.0", - "@jupyterlab/mathjax2": "^3.2.0", - "@jupyterlab/notebook": "^3.2.0", - "@jupyterlab/rendermime-interfaces": "^3.2.0", - "@jupyterlab/services": "^6.2.0", + "@jupyterlab/application": "^3.0.0", + "@jupyterlab/apputils": "^3.0.0", + "@jupyterlab/cells": "^3.0.0", + "@jupyterlab/coreutils": "^5.0.0", + "@jupyterlab/docmanager": "^3.0.0", + "@jupyterlab/docregistry": "^3.0.0", + "@jupyterlab/mathjax2": "^3.0.0", + "@jupyterlab/notebook": "^3.0.0", + "@jupyterlab/rendermime-interfaces": "^3.0.0", + "@jupyterlab/services": "^6.0.0", "@lumino/commands": "^1.17.0", "@lumino/signaling": "^1.9.0", "@lumino/messaging": "^1.9.0", @@ -51,7 +52,7 @@ "rise-reveal": "file:../rise-reveal/export/reveal.js" }, "devDependencies": { - "@jupyterlab/builder": "^3.1.0", + "@jupyterlab/builder": "^3.0.0", "@types/reveal": "^3.0.0", "@typescript-eslint/eslint-plugin": "^4.8.1", "@typescript-eslint/parser": "^4.8.1", From 42a9d9aa501894ee2d02782c08d364c287d9a5f9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Collonval?= Date: Tue, 16 Nov 2021 09:47:35 +0100 Subject: [PATCH 18/48] Fix for binder --- binder/postBuild | 3 + doc/dev/develop.md | 2 + jupyter-config/nbconfig/rise.json | 7 + jupyter-config/server_config/rise.json | 7 + packages/application/src/plugins/index.ts | 177 +++++++++++++--------- packages/lab/src/index.ts | 2 - 6 files changed, 121 insertions(+), 77 deletions(-) create mode 100644 jupyter-config/nbconfig/rise.json create mode 100644 jupyter-config/server_config/rise.json diff --git a/binder/postBuild b/binder/postBuild index 5725ba68..451fbe68 100755 --- a/binder/postBuild +++ b/binder/postBuild @@ -30,6 +30,8 @@ _(sys.executable, "-m", "pip", "check") _("yarn", "install") _("yarn", "run", "build") _(sys.executable, "-m", "pip", "install", "-e", ".") +_(sys.executable, "-m", "jupyter", "server", "extension", "enable", "rise") +_(sys.executable, "-m", "jupyter", "serverextension", "enable", "rise") _(sys.executable, "-m", "jupyter", "labextension", "develop", "--overwrite", ".") _(sys.executable, "-m", "jupyter", "nbextension", "install", "rise", "--py", "--sys-prefix", "--symlink") _(sys.executable, "-m", "jupyter", "nbextension", "enable", "rise", "--py", "--sys-prefix") @@ -39,6 +41,7 @@ _(sys.executable, "-m", "pip", "check") # list the extensions _("jupyter", "server", "extension", "list") +_("jupyter", "serverextension", "list") # initially list installed extensions to determine if there are any surprises _("jupyter", "labextension", "list") diff --git a/doc/dev/develop.md b/doc/dev/develop.md index e9dcf262..593b9e69 100644 --- a/doc/dev/develop.md +++ b/doc/dev/develop.md @@ -55,6 +55,8 @@ Internally this will Second, let's install RISE in a editable form: pip install -e . + jupyter serverextension enable rise + jupyter labextension develop --overwrite . jupyter-nbextension install rise --py --sys-prefix --symlink jupyter-nbextension enable rise --py --sys-prefix diff --git a/jupyter-config/nbconfig/rise.json b/jupyter-config/nbconfig/rise.json new file mode 100644 index 00000000..c4e8eb95 --- /dev/null +++ b/jupyter-config/nbconfig/rise.json @@ -0,0 +1,7 @@ +{ + "NotebookApp": { + "nbserver_extensions": { + "rise": true + } + } +} diff --git a/jupyter-config/server_config/rise.json b/jupyter-config/server_config/rise.json new file mode 100644 index 00000000..88f133d6 --- /dev/null +++ b/jupyter-config/server_config/rise.json @@ -0,0 +1,7 @@ +{ + "ServerApp": { + "jpserver_extensions": { + "rise": true + } + } +} diff --git a/packages/application/src/plugins/index.ts b/packages/application/src/plugins/index.ts index c119b6dc..9cf15b85 100644 --- a/packages/application/src/plugins/index.ts +++ b/packages/application/src/plugins/index.ts @@ -1,89 +1,18 @@ +/* eslint-disable no-inner-declarations */ import { JupyterFrontEnd, JupyterFrontEndPlugin } from '@jupyterlab/application'; +import { ICellModel } from '@jupyterlab/cells'; import { IChangedArgs, PageConfig } from '@jupyterlab/coreutils'; import { IDocumentManager } from '@jupyterlab/docmanager'; -import { INotebookModel, NotebookPanel } from '@jupyterlab/notebook'; +import { INotebookModel, Notebook, NotebookPanel } from '@jupyterlab/notebook'; import { Signal } from '@lumino/signaling'; import Reveal from 'rise-reveal'; import { RiseApp, RiseShell } from '../app'; // TODO should we define our own factory? -function startReveal(panel: NotebookPanel): void { - function get_slide_type(cell: any) { - const slideshow = cell.metadata.get('slideshow') || {}; - const slide_type = (slideshow as any)['slide_type']; - //console.log(slide_type); - return slide_type === undefined || slide_type === '-' ? '' : slide_type; - } - - // function is_slide(cell: any) {return get_slide_type(cell) == 'slide';} - // function is_subslide(cell: any) {return get_slide_type(cell) == 'subslide';} - // function is_fragment(cell: any) {return get_slide_type(cell) == 'fragment';} - // function is_regular(cell: any) {return get_slide_type(cell) == ''; - - function markupSlides(container: any) { - let slide_section; - let slide_counter = 0; - const cells = container.model.cells; - - for (let i = 0; i < cells.length; i++) { - const cell = cells.get(i); - const slide_type = get_slide_type(cell); - - const cell_node = container.node.children[slide_counter]; - const prev_slide_section = slide_section; - - if (slide_type === 'slide') { - // Start new slide - slide_section = document.createElement('section'); - slide_section.appendChild(cell_node); - if (i === 0) { - container.node.insertBefore(slide_section, container.node.firstChild); - } else { - container.node.insertBefore( - slide_section, - prev_slide_section?.nextSibling - ); - } - slide_counter++; - console.log('Sep slide', i); - } else { - slide_section?.appendChild(cell_node); - console.log('Nop slide', i); - } - console.log(container.node); - } - } - - const notebook = panel.content; - markupSlides(notebook); - - const panel_container = document.getElementsByClassName( - 'jp-NotebookPanel' - )[0]; - panel_container.classList.add('reveal'); - //console.log("panel_container"); - - const notebook_container = document.getElementsByClassName('jp-Notebook')[0]; - notebook_container.classList.add('slides'); - //console.log("notebook_container"); - - Reveal.initialize({ - controls: true, - progress: true, - history: true, - center: true, - - transition: 'slide', // none/fade/slide/convex/concave/zoom - //make codemirror works as expected - minScale: 1.0, - maxScale: 1.0 - }); -} - /** * Open the notebook with RISE. */ @@ -104,7 +33,7 @@ const opener: JupyterFrontEndPlugin = { ) => { if (change.name === 'dirty' && change.newValue === false) { notebookPanel.model?.stateChanged.disconnect(initializeReveal, this); - startReveal(notebookPanel); + RevealUtils.startReveal(notebookPanel); Signal.disconnectAll(this); (app.shell as RiseShell).updated.connect(() => { @@ -133,3 +62,101 @@ const paths: JupyterFrontEndPlugin = { }; export default [opener, paths]; + +namespace RevealUtils { + function get_slide_type(cell: ICellModel): string { + const slideshow = cell.metadata.get('slideshow') || {}; + const slide_type = (slideshow as any)['slide_type']; + //console.log(slide_type); + return slide_type === undefined || slide_type === '-' ? '' : slide_type; + } + + /* + function is_slide(cell: ICellModel): boolean { + return get_slide_type(cell) === 'slide'; + } + function is_subslide(cell: ICellModel): boolean { + return get_slide_type(cell) === 'subslide'; + } + function is_fragment(cell: ICellModel): boolean { + return get_slide_type(cell) === 'fragment'; + } + function is_skip(cell: ICellModel): boolean { + return get_slide_type(cell) === 'skip'; + } + function is_notes(cell: ICellModel): boolean { + return get_slide_type(cell) === 'notes'; + } + */ + + /* Use the slideshow metadata to rearrange cell DOM elements into the + * structure expected by reveal.js + * + * in the process, each cell receives a 'smart_exec' tag that says + * how to behave when the cell gets executed with Shift-Enter + * this tag can be either + * 'smart_exec_slide' : just do exec, which is what RISE did on all cells at first + this is for the last cell on a (sub)slide + i.e. if next cell is slide or subslide + * 'smart_exec_fragment' : do exec + show next fragment + if next cell is a fragment + * 'smart_exec_next' : do the usual exec + select next like in classic notebook + */ + function markupSlides(container: Notebook) { + if (!container.model) { + // Bail early if the model is not valid + return; + } + + let slide_section: HTMLElement | null = null; + let slide_counter = 0; + const cells = container.model.cells; + + for (let i = 0; i < cells.length; i++) { + const cell = cells.get(i); + const slide_type = get_slide_type(cell); + + const cell_node = container.node.children[slide_counter]; + const prev_slide_section = slide_section; + + if (slide_type === 'slide') { + // Start new slide + slide_section = document.createElement('section'); + slide_section.appendChild(cell_node); + if (i === 0) { + container.node.insertBefore(slide_section, container.node.firstChild); + } else { + if (prev_slide_section) { + container.node.insertBefore( + slide_section, + prev_slide_section.nextSibling + ); + } + } + slide_counter++; + } else { + slide_section?.appendChild(cell_node); + } + } + } + + export function startReveal(panel: NotebookPanel): void { + const notebook = panel.content; + panel.addClass('reveal'); + notebook.addClass('slides'); + + markupSlides(notebook); + + Reveal.initialize({ + controls: true, + progress: true, + history: true, + center: true, + + transition: 'slide', // none/fade/slide/convex/concave/zoom + //make codemirror works as expected + minScale: 1.0, + maxScale: 1.0 + }); + } +} diff --git a/packages/lab/src/index.ts b/packages/lab/src/index.ts index 9cea5997..3d9faa0d 100644 --- a/packages/lab/src/index.ts +++ b/packages/lab/src/index.ts @@ -69,8 +69,6 @@ const plugin: JupyterFrontEndPlugin = { args: { toolbar: true } }) ); - await panel.context.ready; - commands.notifyCommandChanged(); } ); From 9bd084bc1c69f0264e4b48e4cbbe37690622e8eb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Collonval?= Date: Wed, 17 Nov 2021 17:55:00 +0100 Subject: [PATCH 19/48] Add folder structure description --- doc/dev/develop.md | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/doc/dev/develop.md b/doc/dev/develop.md index 593b9e69..f7ef83a2 100644 --- a/doc/dev/develop.md +++ b/doc/dev/develop.md @@ -55,6 +55,7 @@ Internally this will Second, let's install RISE in a editable form: pip install -e . + jupyter server extension enable rise jupyter serverextension enable rise jupyter labextension develop --overwrite . jupyter-nbextension install rise --py --sys-prefix --symlink @@ -93,3 +94,22 @@ npm publish ``` Finally, you need to update the main package.json file at the root directory to grab the new version you just published. + +### Folder structure + +The package is now an unique Python package `rise` (at the folder root) that will distribute the frontend for the +classical notebook (in `rise/nbextension`) and JupyterLab (in `rise/labextension`). + +The development of the frontend code is mainly in packages (development version that needs to be transpiled before +being distributed within the Python package): + +- *Classical notebook* extension: + - Javascript file is `rise/nbextension/main.js` + - CSS file is `packages/classic/src/less/main.less` + It will be transpiled to `rise/nbextension/main.css` +- *JupyterLab* extension - i.e. notebook toolbar button: + - This is the folder `packages/lab` +- *Standalone application* (based on JupyterLab) - the place where Reveal is used to modify the DOM: + - Definition of the application (what needs to be brought from JupyterLab base packages) is in the folder `app` + - Customization of the application for RISE is in the folder `packages/application` + - In particular the entry point for opening the notebook with Reveal is in `packages/application/src/plugins/index.ts#opener`. And in particular the conversion of the notebook is done by `RevealUtils.startReveal`. From 34136086bfaba1ae90a5d6634fce0d4403f27d19 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Collonval?= Date: Sat, 20 Nov 2021 11:22:10 +0100 Subject: [PATCH 20/48] Correct git pre-commit hook --- .eslintignore | 10 ++++++++++ .eslintrc.js | 13 ++++++++----- .prettierignore | 5 ++++- app/publicpath.js | 2 +- lint-staged.config.js | 27 +++++++++++++++++++++++++++ package.json | 2 +- 6 files changed, 51 insertions(+), 8 deletions(-) create mode 100644 lint-staged.config.js diff --git a/.eslintignore b/.eslintignore index 5c99ba78..b59052cd 100644 --- a/.eslintignore +++ b/.eslintignore @@ -3,3 +3,13 @@ dist coverage **/*.d.ts tests + +node_modules +**/build +**/lib +**/node_modules +**/static +packages/rise-reveal/export + +.eslintrc.js +lint-staged.config.js diff --git a/.eslintrc.js b/.eslintrc.js index df50b4eb..e9caf98c 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -11,15 +11,18 @@ module.exports = { sourceType: 'module' }, plugins: ['@typescript-eslint'], + globals: { + document: 'readonly' + }, rules: { '@typescript-eslint/naming-convention': [ 'error', { - 'selector': 'interface', - 'format': ['PascalCase'], - 'custom': { - 'regex': '^I[A-Z]', - 'match': true + selector: 'interface', + format: ['PascalCase'], + custom: { + regex: '^I[A-Z]', + match: true } } ], diff --git a/.prettierignore b/.prettierignore index 52c00891..7aff7844 100644 --- a/.prettierignore +++ b/.prettierignore @@ -2,4 +2,7 @@ node_modules **/node_modules **/lib **/package.json -rise_jupyterlab +rise/ +app/webpack.config.js +packages/rise-reveal/export +examples diff --git a/app/publicpath.js b/app/publicpath.js index 4434ffed..751281fe 100644 --- a/app/publicpath.js +++ b/app/publicpath.js @@ -20,7 +20,7 @@ * configuration as valid JSON. In order to support the classic Notebook, * we fall back on checking for `body` data of the given `name`. */ - function getOption(name) { +function getOption(name) { let configData = Object.create(null); // Use script tag if available. if (typeof document !== 'undefined' && document) { diff --git a/lint-staged.config.js b/lint-staged.config.js new file mode 100644 index 00000000..1ddb2924 --- /dev/null +++ b/lint-staged.config.js @@ -0,0 +1,27 @@ +const escape = require('shell-quote').quote; +const fs = require('fs'); +const isWin = process.platform === 'win32'; + +const escapeFileNames = filenames => + filenames + .filter(filename => fs.existsSync(filename)) + .map(filename => `"${isWin ? filename : escape([filename])}"`) + .join(' '); + +module.exports = { + '**/*{.css,.json,.md}': filenames => { + const escapedFileNames = escapeFileNames(filenames); + return [ + `prettier --write ${escapedFileNames}`, + `git add -f ${escapedFileNames}` + ]; + }, + '**/*{.ts,.tsx,.js,.jsx}': filenames => { + const escapedFileNames = escapeFileNames(filenames); + return [ + `prettier --write ${escapedFileNames}`, + `eslint --fix ${escapedFileNames}`, + `git add -f ${escapedFileNames}` + ]; + } +}; diff --git a/package.json b/package.json index dd8128df..3e393e81 100644 --- a/package.json +++ b/package.json @@ -53,7 +53,7 @@ "eslint-plugin-prettier": "^3.1.4", "eslint-plugin-react": "^7.21.5", "extra-watch-webpack-plugin": "^1.0.3", - "husky": "^3", + "husky": "^4.2.5", "jest": "^26.4.2", "jest-junit": "^11.1.0", "jest-raw-loader": "^1.0.1", From f564c90de959399c9dfb755ee94c4f99a6b56865 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Collonval?= Date: Sat, 20 Nov 2021 11:22:25 +0100 Subject: [PATCH 21/48] Lint code --- doc/README.md | 1 - doc/customize.md | 157 ++++++++++++---------------- doc/dev/develop.md | 8 +- doc/dev/release.md | 18 ++-- doc/exportpdf.md | 66 ++++++------ doc/resources.md | 33 +++--- doc/support.md | 4 +- doc/usage.md | 47 ++++----- packages/README.md | 30 +++--- packages/application/style/base.css | 2 - packages/rise-reveal/README.md | 8 +- tests/themes/aa-readme.md | 8 +- 12 files changed, 182 insertions(+), 200 deletions(-) diff --git a/doc/README.md b/doc/README.md index f4af15c7..1963679b 100644 --- a/doc/README.md +++ b/doc/README.md @@ -9,4 +9,3 @@ make html ``` but you need to install `make`, `sphinx` and `recommonmark`. - diff --git a/doc/customize.md b/doc/customize.md index 6d050132..28f359aa 100644 --- a/doc/customize.md +++ b/doc/customize.md @@ -1,25 +1,23 @@ # Customizing RISE - - ## What to configure Here's a list of things that can be customized. [See below for more details](#how-to-customize) on how to implement those settings. -* [presentation theme](#choosing-a-theme) -* [transiton between slides ](#choosing-a-transition) -* [auto-launch presentation mode](#automatically-launch-rise) -* [where to start the presentation](#choosing-where-the-slideshow-begins) -* [automatic selection of cells](#select-cells-based-on-the-current-slide) -* [slide sizes](#change-the-width-and-height-of-slides) -* [decoration (header/footer/background)](#decorating-all-slides) -* [vertical scrollbar](#enable-a-right-scroll-bar) -* [chalkboard capabilities](#enable-chalkboard-capabilities) -* [using a leap motion controller](#usage-with-leap-motion) -* [native `reveal.js` settings](#reveal-js-configuration-options) -* [custom CSS](#adding-custom-css) -* [keyboard shortcuts](#keyboard-shortcuts-and-jupyter-actions) +- [presentation theme](#choosing-a-theme) +- [transiton between slides ](#choosing-a-transition) +- [auto-launch presentation mode](#automatically-launch-rise) +- [where to start the presentation](#choosing-where-the-slideshow-begins) +- [automatic selection of cells](#select-cells-based-on-the-current-slide) +- [slide sizes](#change-the-width-and-height-of-slides) +- [decoration (header/footer/background)](#decorating-all-slides) +- [vertical scrollbar](#enable-a-right-scroll-bar) +- [chalkboard capabilities](#enable-chalkboard-capabilities) +- [using a leap motion controller](#usage-with-leap-motion) +- [native `reveal.js` settings](#reveal-js-configuration-options) +- [custom CSS](#adding-custom-css) +- [keyboard shortcuts](#keyboard-shortcuts-and-jupyter-actions) ### Choosing a theme @@ -47,13 +45,11 @@ view using the `autolaunch` config option. This typically is very helpful if you plan on publishing slideshows through something like `mybinder.org`: - { ... "rise": {"autolaunch": true} } - ### Choosing where the slideshow begins The following configuration changes where the slides begin. By default, RISE @@ -83,9 +79,9 @@ behaves, here are their default values: `auto_select` can be any of: -- `code` (the first code cell is auto-selected) -- `none` (no auto-selection) -- `first` (the first cell is auto-selected) +- `code` (the first code cell is auto-selected) +- `none` (no auto-selection) +- `first` (the first cell is auto-selected) `auto_select_fragment` is a boolean that states whether auto-selection should select cells based on the current slide as a whole (when set to @@ -115,34 +111,33 @@ configuration: **Notes** -* remember that you can always use your browser's shortcuts to zoom -in/out (`Cmd/Ctrl +` and `Cmd/Ctrl -`), and this way adjust the slide -content to your screen/projector size. +- remember that you can always use your browser's shortcuts to zoom + in/out (`Cmd/Ctrl +` and `Cmd/Ctrl -`), and this way adjust the slide + content to your screen/projector size. -* this method is *often preferable* than setting sizes. In particular +- this method is _often preferable_ than setting sizes. In particular it is dangerous to set sizes in pixels, as most often you cannot rehearse with the actual projector. We recommend setting relative sizes (in percents) rather than absolute ones (in `px` or `cm`). -* in any case you may want to increase the slide height to ensure that -cell outputs fit within a single slide; keep in mind that cell -contents tend to take more space as you run your code. +- in any case you may want to increase the slide height to ensure that + cell outputs fit within a single slide; keep in mind that cell + contents tend to take more space as you run your code. ### Decorating all slides RISE offers two levels for inserting a static background. You can either -* define `overlay`, in which case you take full control, -* **or** you can define `header`, `footer` and `backimage`. +- define `overlay`, in which case you take full control, +- **or** you can define `header`, `footer` and `backimage`. So if you define `overlay`, the 3 latter options will be ignored. - #### `overlay` It is possible to add the config option `overlay` to build a constant -background. It is wrapped in a`
`, so it can be text or html. In -this case, the user is entirely responsible for styling. For example: +background. It is wrapped in a`
`, so it can be text or html. In +this case, the user is entirely responsible for styling. For example: { ... @@ -174,7 +169,6 @@ or in binder respectively [![](https://mybinder.org/badge.svg)](https://mybinder.org/v2/gh/damianavila/RISE/master?filepath=examples%2Foverlay.ipynb) [![](https://mybinder.org/badge.svg)](https://mybinder.org/v2/gh/damianavila/RISE/master?filepath=examples%2Fheader-footer.ipynb) - ### Enable a right scroll bar To enable a right scroll bar when your content exceeds the slide vertical height, @@ -200,12 +194,12 @@ The first one provides you with a black board. The second one allows you to draw **on top** of the current slide. It also reacts to the following additional keyboard commands: -* `[` to turn the whole space into an empty chalkboard -* `]` to start adding free drawings to the current slide -* `\` to download chalkboard drawing -* `=` to reset chalkboard drawing on the current slide -* `-` to clear the chalkboard +- `[` to turn the whole space into an empty chalkboard +- `]` to start adding free drawings to the current slide +- `\` to download chalkboard drawing +- `=` to reset chalkboard drawing on the current slide +- `-` to clear the chalkboard ### Usage with Leap Motion @@ -240,30 +234,30 @@ To disable it: `reveal.js`'s documentation](https://github.com/hakimel/reveal.js). Out of this category, RISE will pass through the following settings: -* `controls` to enable or disable the lower right navigation arrows +- `controls` to enable or disable the lower right navigation arrows -* `progress` to enable or disable the thin progress bar at the bottom +- `progress` to enable or disable the thin progress bar at the bottom of the slideshow -* `slideNumber` that allows you to turn off, or customize, slide +- `slideNumber` that allows you to turn off, or customize, slide numbers. Set to boolean `false` to turn off, [see `reveal.js`'s doc for more details](https://github.com/hakimel/reveal.js#slide-number) -* as well as `history`. +- as well as `history`. ### Adding custom CSS RISE looks for two css files to apply CSS changes on top of the slideshow view: -* First, it attemps to load `rise.css`, and hence this will be -applied to all notebooks in the current directory; +- First, it attemps to load `rise.css`, and hence this will be + applied to all notebooks in the current directory; -* Second, it attempts to load `the_notebook_name.css` and so this will -hence be only applied to `the_notebook_name.ipynb`. +- Second, it attempts to load `the_notebook_name.css` and so this will + hence be only applied to `the_notebook_name.ipynb`. Both files need to be placed alongside with the notebook of interest, -i.e. in the same directory. You can see some examples using this +i.e. in the same directory. You can see some examples using this customization with `RISE/examples/showflow.ipynb`. **NOTE.** The implementation of this feature is rather rough, both css @@ -273,11 +267,10 @@ about `No such file or directory`. These messages can be safely ignored. See also about this. -*** +--- ## How to customize - RISE can be customized in a lot of ways. As of RISE version 5.3, you can: 1. use `nbextensions_configurator`; this tool offers an interactive @@ -314,7 +307,6 @@ depicted below. Settings are stored in JSON format, typically in ![](../examples/configurator.png) - ### Using python As an alternative way, you can tweak your local user's settings with a @@ -340,22 +332,20 @@ cm.update( **Notes:** -* the `config_dir` parameter should point at where the `nbconfig` is +- the `config_dir` parameter should point at where the `nbconfig` is located. This will vary depending on your setup, and specifically on where you "installed" and "enabled" the nbextension. -* running the example above would result in the creation (or +- running the example above would result in the creation (or modification) of a file named `~/.jupyter/rise.json`, which is generally the right place to store user preferences, -* to adjust this path to your own setup, you can use `jupyter - --paths`, and specifically the `config` section, to see the path +- to adjust this path to your own setup, you can use `jupyter --paths`, and specifically the `config` section, to see the path locations that are applicable. -* for more information, see these docs: - * - * . - +- for more information, see these docs: + - + - . ### Notebook metadata @@ -373,6 +363,7 @@ this: }, ... } + You can edit notebook metadata as follows ![](../examples/metadata.png) @@ -397,14 +388,14 @@ You are encouraged to always use the `rise` naming as much as possible. The order of precedence between these 3 sources of configuration is as follows: -* a setting defined in the notebook's metadata is always valid; among +- a setting defined in the notebook's metadata is always valid; among these, as described above, settings in the `rise` category will override those defined in `livereveal` if both entries apply; -* if still undefined, a setting defined in the configurator will be valid; -Finally, the following priorities apply: +- if still undefined, a setting defined in the configurator will be valid; + Finally, the following priorities apply: -* if still undefined, a setting defined in any of the JSON files +- if still undefined, a setting defined in any of the JSON files considered by your jupyter server will be taken into account. Here again, `rise.json` supersedes `livereveal.json` in case of an overlap. @@ -413,25 +404,20 @@ various channels (configurator, JSON and metadata) is identical, so it is possible to use the configurator as some sort of an online reference manual, as it describes each and every setting. - ### Local setting vs hosted infrastructure At this point you need to be aware that: -* settings changed through the configurator or JSON files - are stored +- settings changed through the configurator or JSON files - are stored on your own file system, typically in your home directory, and so are only be applicable to people using this notebook server; generally it is used for user preferences or such. -* *a contrario* settings embedded in a specific notebook's metadata - will be applicable to all users that get their hands on that notebook, - even if they end up in a mybinder instance via github. - - - - -**** +- _a contrario_ settings embedded in a specific notebook's metadata + will be applicable to all users that get their hands on that notebook, + even if they end up in a mybinder instance via github. +--- ## Keyboard shortcuts and Jupyter actions @@ -478,39 +464,34 @@ typically your `~/.jupyter/custom/custom.js`. Here is an example that will attach one of these actions to a custom keyboard shortcut: ```javascript - define( - ['base/js/namespace'], - function(Jupyter) { +define(['base/js/namespace'], function(Jupyter) { + let command_shortcuts = Jupyter.keyboard_manager.command_shortcuts; - let command_shortcuts = Jupyter.keyboard_manager.command_shortcuts; - - // set / unset the 'Slide' tag in slideshow metadata - command_shortcuts.set_shortcut( - 'alt-a', 'RISE:slideshow'); - }) + // set / unset the 'Slide' tag in slideshow metadata + command_shortcuts.set_shortcut('alt-a', 'RISE:slideshow'); +}); ``` Note that with this approach, you will end up with the `RISE:slideshow` action bound to **both** `Alt-R` and `Alt-A`. - ### Keyboard shortcut editors The actions exposed to Jupyter are also present in Jupyter's mainstream keyboard shortcuts editor, that you can use to (un)define your custom shortcuts. -### Native keyboard shortcuts for reveal.js and reveal.js plug-ins +### Native keyboard shortcuts for reveal.js and reveal.js plug-ins -Some custom keyboard shortcuts may be defined in RISE to override the default +Some custom keyboard shortcuts may be defined in RISE to override the default keyboard shortcuts of `reveal.js` and/or its plug-ins. -The key bindings can be defined via the `nbextensions_configurator` or directly +The key bindings can be defined via the `nbextensions_configurator` or directly in JSON. The table below shows the avaialble key bindings: - module action default key behaviour + module action default key behaviour --------------------------------------------------------- main firstSlide home jump to first slide main lastSlide end jump to last slide @@ -523,7 +504,7 @@ The table below shows the avaialble key bindings: chalkboard toggleNotesCanvas ] toggle notes (slide-local) chalkboard download \ download recorded chalkboard drawing -In JSON the native reveal.js keyboard shortcuts can be defined as shown in the +In JSON the native reveal.js keyboard shortcuts can be defined as shown in the example below: { @@ -538,5 +519,3 @@ example below: } } } - - diff --git a/doc/dev/develop.md b/doc/dev/develop.md index f7ef83a2..22665ddb 100644 --- a/doc/dev/develop.md +++ b/doc/dev/develop.md @@ -97,19 +97,19 @@ Finally, you need to update the main package.json file at the root directory to ### Folder structure -The package is now an unique Python package `rise` (at the folder root) that will distribute the frontend for the +The package is now an unique Python package `rise` (at the folder root) that will distribute the frontend for the classical notebook (in `rise/nbextension`) and JupyterLab (in `rise/labextension`). The development of the frontend code is mainly in packages (development version that needs to be transpiled before being distributed within the Python package): -- *Classical notebook* extension: +- _Classical notebook_ extension: - Javascript file is `rise/nbextension/main.js` - CSS file is `packages/classic/src/less/main.less` It will be transpiled to `rise/nbextension/main.css` -- *JupyterLab* extension - i.e. notebook toolbar button: +- _JupyterLab_ extension - i.e. notebook toolbar button: - This is the folder `packages/lab` -- *Standalone application* (based on JupyterLab) - the place where Reveal is used to modify the DOM: +- _Standalone application_ (based on JupyterLab) - the place where Reveal is used to modify the DOM: - Definition of the application (what needs to be brought from JupyterLab base packages) is in the folder `app` - Customization of the application for RISE is in the folder `packages/application` - In particular the entry point for opening the notebook with Reveal is in `packages/application/src/plugins/index.ts#opener`. And in particular the conversion of the notebook is done by `RevealUtils.startReveal`. diff --git a/doc/dev/release.md b/doc/dev/release.md index 6b8159ac..58357afd 100644 --- a/doc/dev/release.md +++ b/doc/dev/release.md @@ -23,6 +23,7 @@ $ROOT/classic/package.json ``` **Step 2.** Build rise-reveal (new step in release 5.7) + ```bash cd $ROOT/rise-reveal npm install @@ -54,7 +55,7 @@ python setup.py sdist python setup.py bdist_wheel ``` -**Step 6.** Upload *sdist* and *wheels* to PyPI: +**Step 6.** Upload _sdist_ and _wheels_ to PyPI: ```bash cd $ROOT/classic @@ -62,6 +63,7 @@ twine upload dist/* ``` **NOTE** when checking the RISE packaging, it can come in handy to publish onto `test.pypi.org` so as to not pollute the official index; for that purpose do + ```bash # to publish on test.pypi.org twine upload --repository-url https://test.pypi.org/legacy/ dist/* @@ -75,11 +77,11 @@ pip install --index https://test.pypi.org/simple --upgrade --pre rise The conda recipe to build the RISE package is maintained in a separate github repo at https://github.com/conda-forge/rise-feedstock. -* First read this section: https://github.com/conda-forge/rise-feedstock#updating-rise-feedstock -* You need to update the version number here: https://github.com/conda-forge/rise-feedstock/blob/master/recipe/meta.yaml#L1 -* You need to update the sha number here: https://github.com/conda-forge/rise-feedstock/blob/master/recipe/meta.yaml#L9 -* (Optional) You need to update any dependencies if you have new ones or remove old ones. -* (Optional) You may want to update the recipe, for instance, eventually, we will get rid of the post-link steps (see, https://github.com/damianavila/RISE/pull/444). -* (Optional) You may need to rerender the feedstock, eventually. +- First read this section: https://github.com/conda-forge/rise-feedstock#updating-rise-feedstock +- You need to update the version number here: https://github.com/conda-forge/rise-feedstock/blob/master/recipe/meta.yaml#L1 +- You need to update the sha number here: https://github.com/conda-forge/rise-feedstock/blob/master/recipe/meta.yaml#L9 +- (Optional) You need to update any dependencies if you have new ones or remove old ones. +- (Optional) You may want to update the recipe, for instance, eventually, we will get rid of the post-link steps (see, https://github.com/damianavila/RISE/pull/444). +- (Optional) You may need to rerender the feedstock, eventually. -Open a PR with those changes and when the PR is merged, several CI runs will be triggered and the packages will be generated and uploaded to https://anaconda.org/conda-forge/rise/files. \ No newline at end of file +Open a PR with those changes and when the PR is merged, several CI runs will be triggered and the packages will be generated and uploaded to https://anaconda.org/conda-forge/rise/files. diff --git a/doc/exportpdf.md b/doc/exportpdf.md index f0d3640d..c196c51b 100644 --- a/doc/exportpdf.md +++ b/doc/exportpdf.md @@ -6,63 +6,61 @@ You can export your RISE presentation to PDF using the following procedures: 1. Generate the slides and serve them using nbconvert: - `jupyter nbconvert --to slides your_talk.ipynb --post serve` + `jupyter nbconvert --to slides your_talk.ipynb --post serve` - It opens up a webpage in the browser at http://127.0.0.1:8000/your_talk.slides.html#/ + It opens up a webpage in the browser at http://127.0.0.1:8000/your_talk.slides.html#/ -1. Add ``?print-pdf`` to the query string as http://127.0.0.1:8000/your_talk.slides.html?print-pdf +1. Add `?print-pdf` to the query string as http://127.0.0.1:8000/your_talk.slides.html?print-pdf - Note that you need to remove the ``#`` at the end. The page will render the slides vertically. + Note that you need to remove the `#` at the end. The page will render the slides vertically. 1. Save to PDF in Chrome using the print option - + Open the in-browser print dialog (Cmd/Ctrl + P). - + Change the Destination setting to Save as PDF. - + Change the Layout to Landscape. - + Change the Margins to None. - + Enable the Background graphics option. - + Click Save. +- Open the in-browser print dialog (Cmd/Ctrl + P). +- Change the Destination setting to Save as PDF. +- Change the Layout to Landscape. +- Change the Margins to None. +- Enable the Background graphics option. +- Click Save. ### Note about Javascript dependencies - that if you are using JavaScript-based packages [like e.g. - bokeh](http://bokeh.pydata.org) in your slides, you will need to ensure that - any cells that define JS code used by other cells are *not* skipped by RISE. - For instance, Bokeh plots will only be visible in the PDF output if you include - the cell containing ``output_notebook()`` (or ``hv.extension()`` if using Bokeh - [via HoloViews](http://holoviews.org)), even if the live RISE presentation - works fine when skipping those cells. You can use the `Notes` slide type for - that cell if you want it to be omitted from the RISE slideshow but included in - HTML or PDF output. +that if you are using JavaScript-based packages [like e.g. +bokeh](http://bokeh.pydata.org) in your slides, you will need to ensure that +any cells that define JS code used by other cells are _not_ skipped by RISE. +For instance, Bokeh plots will only be visible in the PDF output if you include +the cell containing `output_notebook()` (or `hv.extension()` if using Bokeh +[via HoloViews](http://holoviews.org)), even if the live RISE presentation +works fine when skipping those cells. You can use the `Notes` slide type for +that cell if you want it to be omitted from the RISE slideshow but included in +HTML or PDF output. ### Historical note These instructions should work fine with an up-to-date version of `nbconvert`. If you use a version [prior to the merge of PR -748](https://github.com/jupyter/nbconvert/pull/748), and you want syntax +748](https://github.com/jupyter/nbconvert/pull/748), and you want syntax highlighting in your printed slideshow, you need to follow these (or similar) instructions: https://github.com/jupyter/notebook/issues/840#issuecomment-365176083 - - ## Using decktape 1. Install decktape with: - `npm install decktape` + `npm install decktape` 1. Start the jupyter-notebook server (you don't have to start the RISE presentation, you don't even have to open any notebook at all): - `jupyter notebook` + `jupyter notebook` **NOTE**: Make sure `autoLaunch` option is disabled, otherwise the decktape plugin - will exit from the slideshow view before printing the slides. Discussion about - this behavior lives at . + will exit from the slideshow view before printing the slides. Discussion about + this behavior lives at . 1. Run decktape with: - `$(npm bin)/decktape rise ` + `$(npm bin)/decktape rise ` More concretely, it looks something like the following: @@ -73,18 +71,18 @@ https://github.com/jupyter/notebook/issues/840#issuecomment-365176083 You can run into some problems using this approach: 1. If you run `decktape.js` with wrong token first, or some other things first, -it could fail. Restarting the jupyter-notebook server helped. + it could fail. Restarting the jupyter-notebook server helped. -1. If you have changed the default presentation size/width/height using the notebook metadata, you might have to adapt the call to include the ``-s x`` parameter: +1. If you have changed the default presentation size/width/height using the notebook metadata, you might have to adapt the call to include the `-s x` parameter: - `$(npm bin)/decktape rise -s 1500x900 https://localhost:8888/...` + `$(npm bin)/decktape rise -s 1500x900 https://localhost:8888/...` 1. If you experience issues when rendering svg files, please post your fix at - + 1. Math rendering problems: just try to rerender (issue posted at ) 1. Fragments don't show up at all. The current decktape rise plugin puts `fragments: false`, -see https://github.com/astefanutti/decktape/blob/master/plugins/rise.js#L40 which should render everything together but it is not working. -When changing the above line to `fragments: true`, every fragment is rendered as a single slide which is a very efficient work around for the moment -as you can simply delete the unwanted slides afterwards. + see https://github.com/astefanutti/decktape/blob/master/plugins/rise.js#L40 which should render everything together but it is not working. + When changing the above line to `fragments: true`, every fragment is rendered as a single slide which is a very efficient work around for the moment + as you can simply delete the unwanted slides afterwards. diff --git a/doc/resources.md b/doc/resources.md index fcb5c021..7e79b246 100644 --- a/doc/resources.md +++ b/doc/resources.md @@ -4,30 +4,35 @@ The following places are assets in the RISE development landscape: -* Demo notebook (no installation required) - * [![Binder](https://mybinder.org/badge.svg)](https://mybinder.org/v2/gh/damianavila/RISE/master?filepath=examples%2FREADME.ipynb) +- Demo notebook (no installation required) -* Source code is on github - * [![Issues](http://img.shields.io/github/issues/damianavila/RISE.svg)](https://github.com/damianavila/RISE/issues) + - [![Binder](https://mybinder.org/badge.svg)](https://mybinder.org/v2/gh/damianavila/RISE/master?filepath=examples%2FREADME.ipynb) -* Documentation is hosted on readthedocs - * [![doc status](https://readthedocs.org/projects/rise/badge)](http://rise.readthedocs.io/) - * *Historical note*: please note that older location for the RISE documentation here: has been phased out and is no longer updated. +- Source code is on github -* Chat room on gitter - * [![Gitter chat](https://badges.gitter.im/damianavila/RISE.png)](https://gitter.im/damianavila/RISE "Gitter chat") + - [![Issues](http://img.shields.io/github/issues/damianavila/RISE.svg)](https://github.com/damianavila/RISE/issues) -* Videos on youtube - * basic usage (4'30'') +- Documentation is hosted on readthedocs + + - [![doc status](https://readthedocs.org/projects/rise/badge)](http://rise.readthedocs.io/) + - _Historical note_: please note that older location for the RISE documentation here: has been phased out and is no longer updated. + +- Chat room on gitter + + - [![Gitter chat](https://badges.gitter.im/damianavila/RISE.png)](https://gitter.im/damianavila/RISE 'Gitter chat') + +- Videos on youtube + + - basic usage (4'30'') - * see also below the talk from *SciPy 2014* (21') - + - see also below the talk from _SciPy 2014_ (21') + ## Talks -My old talk about **RISE** at *SciPy 2014* (click on the image to see it): +My old talk about **RISE** at _SciPy 2014_ (click on the image to see it): [![RJSE/RISE video - 21'](http://img.youtube.com/vi/sZBKruEh0jI/0.jpg)](https://www.youtube.com/watch?v=sZBKruEh0jI) diff --git a/doc/support.md b/doc/support.md index 7e7df3b1..42f060f6 100644 --- a/doc/support.md +++ b/doc/support.md @@ -8,8 +8,8 @@ Basically, you have 2-3 ways to fund **RISE** support and development: At [https://ko-fi.com/damianavila](https://ko-fi.com/damianavila) you can either: -* Buy Damian's some stars as general support (and you will be listed on his blog support page) -* Buy a "commission" to support the accomplishment of diverse **RISE**-related goals (see each specific **RISE**-related commission for more details) +- Buy Damian's some stars as general support (and you will be listed on his blog support page) +- Buy a "commission" to support the accomplishment of diverse **RISE**-related goals (see each specific **RISE**-related commission for more details) We **highly** encourage you to choose one of the **RISE**-related available commissions. diff --git a/doc/usage.md b/doc/usage.md index c23e38b1..277d3a88 100644 --- a/doc/usage.md +++ b/doc/usage.md @@ -1,5 +1,4 @@ -Usage -===== +# Usage You can see [in this youtube video](https://youtu.be/sXyFa_r1nxA) a very short session on how to use RISE to create and run a slideshow. @@ -8,28 +7,28 @@ Let us emphasize the key points here. ## Creating a slideshow -In the notebook menu, the *"View"* option contains a *"Cell Toolbar"* +In the notebook menu, the _"View"_ option contains a _"Cell Toolbar"_ sub-menu that gives you access to the metadata for each cell. If you -select the *"Slideshow"* preset, you will see in the right corner of each +select the _"Slideshow"_ preset, you will see in the right corner of each cell a little box where you can select the cell type. You can choose between the following types: -* **slide**: this cell is the beginning of a new slide +- **slide**: this cell is the beginning of a new slide -* **subslide**: this cell is the beginning of a new subslide; that is - to say, a new slide, but that `reveal.js` will display *below* the +- **subslide**: this cell is the beginning of a new subslide; that is + to say, a new slide, but that `reveal.js` will display _below_ the previous one instead of on the right; -* **fragment**: this is to split the contents of one slide into +- **fragment**: this is to split the contents of one slide into pieces; a cell marked as a fragment will create a break inside the slide; it will not show up right away, you will need to press Space one more time to see it. -* **skip**: this cell is ignored altogether in *reveal* mode, -it will not appear either in the main view, nor in the speaker view. +- **skip**: this cell is ignored altogether in _reveal_ mode, + it will not appear either in the main view, nor in the speaker view. -* **notes**: similarly, this cell is marked to be discarded from +- **notes**: similarly, this cell is marked to be discarded from the main view, but is meant to appear in the speaker view. **Keyboard shortcuts** @@ -40,10 +39,10 @@ the keyboard shortcut editor from the notebook UI. We have defined 4 main shortcuts by default that you can change according to your needs: -- `Alt-r`, \"Enter/Exit Live Reveal Slideshow\" -- `Shift-i`, Toggle slide -- `Shift-b`, Toggle subslide -- `Shift-g`, Toggle fragment +- `Alt-r`, \"Enter/Exit Live Reveal Slideshow\" +- `Shift-i`, Toggle slide +- `Shift-b`, Toggle subslide +- `Shift-g`, Toggle fragment ## Running a slideshow @@ -57,7 +56,7 @@ icon on the upper right corner of each slide. ### Navigation -It is *highly recommended* to use mainly **`SpaceBar`** to go forward, +It is _highly recommended_ to use mainly **`SpaceBar`** to go forward, and **`Shift-SpaceBar`** to go backward (or the visual controller in the slideshow right bottom corner). This will follow the course of the presentation no matter what the detailed structure is (slides, @@ -83,17 +82,17 @@ as appropriate. ### Other notes -* In presentation mode, you can know more about the reveal-specific -shortcuts just pressing the help button at the slideshow left bottom -corner. +- In presentation mode, you can know more about the reveal-specific + shortcuts just pressing the help button at the slideshow left bottom + corner. -* Darkish themes have css conflict with the notebook css, so it need -customization to make them work (not provided by default). +- Darkish themes have css conflict with the notebook css, so it need + customization to make them work (not provided by default). -* Markdown Images get left aligned by default. Enclose the image like -`
` to center it. +- Markdown Images get left aligned by default. Enclose the image like + `
` to center it. -### Shift-Enter behaviour (historical note) +### Shift-Enter behaviour (historical note) Starting version 5.1.0: We have developed a `smart exec` functionality which essentially it is bound to the Shift-Enter keyboard shortcut and diff --git a/packages/README.md b/packages/README.md index 20dc95c9..d16f88d5 100644 --- a/packages/README.md +++ b/packages/README.md @@ -2,32 +2,36 @@ RISE allows you to instantly turn your Jupyter Notebooks into a slideshow. No out-of-band conversion is needed, switch from jupyter -notebook to a live *reveal.js*-based slideshow in a single keystroke, +notebook to a live _reveal.js_-based slideshow in a single keystroke, and back. ![Basic usage](https://media.giphy.com/media/3oxHQtTxAaZwMOHr9u/giphy.gif) ## Resources -RISE stands for ***Reveal.js - Jupyter/IPython Slideshow Extension***: +RISE stands for **_Reveal.js - Jupyter/IPython Slideshow Extension_**: -* Demo notebook (no installation required) - * [![](https://mybinder.org/badge.svg)](https://mybinder.org/v2/gh/damianavila/RISE/master?filepath=examples%2FREADME.ipynb) +- Demo notebook (no installation required) -* Source code is on github - * [![Issues](http://img.shields.io/github/issues/damianavila/RISE.svg)](https://github.com/damianavila/RISE/issues) + - [![](https://mybinder.org/badge.svg)](https://mybinder.org/v2/gh/damianavila/RISE/master?filepath=examples%2FREADME.ipynb) -* Documentation is hosted on readthedocs - * [![doc status](https://readthedocs.org/projects/rise/badge)](http://rise.readthedocs.io/) +- Source code is on github -* Chat room on gitter - * [![Gitter chat](https://badges.gitter.im/damianavila/RISE.png)](https://gitter.im/damianavila/RISE) + - [![Issues](http://img.shields.io/github/issues/damianavila/RISE.svg)](https://github.com/damianavila/RISE/issues) -* Videos on youtube - * basic usage (4'30'') +- Documentation is hosted on readthedocs - + - [![doc status](https://readthedocs.org/projects/rise/badge)](http://rise.readthedocs.io/) + +- Chat room on gitter + + - [![Gitter chat](https://badges.gitter.im/damianavila/RISE.png)](https://gitter.im/damianavila/RISE) +- Videos on youtube + + - basic usage (4'30'') + + ## Installation diff --git a/packages/application/style/base.css b/packages/application/style/base.css index fa6d69e3..28612710 100644 --- a/packages/application/style/base.css +++ b/packages/application/style/base.css @@ -8,5 +8,3 @@ right: 0; bottom: 0; } - - diff --git a/packages/rise-reveal/README.md b/packages/rise-reveal/README.md index 31edfe96..fe013739 100644 --- a/packages/rise-reveal/README.md +++ b/packages/rise-reveal/README.md @@ -10,8 +10,6 @@ For starters we target the classic notebook, in a next phase we plan on addressi What is currently handled here is -* main `reveal.css` -* themes-dependant CSS files -* the notes plugin - - +- main `reveal.css` +- themes-dependant CSS files +- the notes plugin diff --git a/tests/themes/aa-readme.md b/tests/themes/aa-readme.md index c2b9efc8..71c067a1 100644 --- a/tests/themes/aa-readme.md +++ b/tests/themes/aa-readme.md @@ -2,24 +2,24 @@ this is a rustic test for generating one slideshow per theme for all the builtin themes in reveal.js -it is on purpose in a separate dir - and **NOT** in `examples/` for example - so that no customisation is in place - +it is on purpose in a separate dir - and **NOT** in `examples/` for example - so that no customisation is in place ## master change `master.ipynb` as needed; make sure to keep the `rise` key in metadata ## generate + ``` ./redo-all.sh ``` ## visual test -open all theme files +open all theme files ``` macnb-open theme-*nb ``` -or whatever notebook-opener you have in place \ No newline at end of file +or whatever notebook-opener you have in place From 4091fec5209eb6620f2a562743e75bf79ddd9e18 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Collonval?= Date: Sat, 20 Nov 2021 11:26:28 +0100 Subject: [PATCH 22/48] Upgrade yarn.lock --- packages/lab/package.json | 1 - yarn.lock | 1150 ++++++++++++++++++++----------------- 2 files changed, 636 insertions(+), 515 deletions(-) diff --git a/packages/lab/package.json b/packages/lab/package.json index aa74fd5c..023d8378 100644 --- a/packages/lab/package.json +++ b/packages/lab/package.json @@ -51,7 +51,6 @@ "@jupyterlab/ui-components": "^3.2.0", "@lumino/commands": "^1.15.0", "@lumino/disposable": "^1.7.0" - }, "devDependencies": { "@jupyterlab/builder": "^3.2.0", diff --git a/yarn.lock b/yarn.lock index 7c4bec5b..ad9e48f3 100644 --- a/yarn.lock +++ b/yarn.lock @@ -679,40 +679,40 @@ "@types/yargs" "^15.0.0" chalk "^4.0.0" -"@jupyterlab/application-extension@^3.2.0": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/application-extension/-/application-extension-3.2.3.tgz#8cb1a20dbd13928879cc874b50da154ad5a37b67" - integrity sha512-XlhkENcP9st/FD9LXre9EzTB3XyX6r2ohKCq95rktbQ0vlYYeYHpCxnd+a5lX+lzQ1OIhxZL1ouQ+B5bT8As6Q== - dependencies: - "@jupyterlab/application" "^3.2.3" - "@jupyterlab/apputils" "^3.2.3" - "@jupyterlab/coreutils" "^5.2.3" - "@jupyterlab/property-inspector" "^3.2.3" - "@jupyterlab/settingregistry" "^3.2.3" - "@jupyterlab/statedb" "^3.2.3" - "@jupyterlab/translation" "^3.2.3" - "@jupyterlab/ui-components" "^3.2.3" +"@jupyterlab/application-extension@^3.0.0": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/application-extension/-/application-extension-3.2.4.tgz#71ac98860a3a89de9b0f35bcc223786257b196c7" + integrity sha512-n9gidLwklcSbIAEegeRpe33FxWIo3xaWS+wqp/q6lQHaISb8SM+qxX2fiE29ofc70S0/lufHhl7w2LpsxdGw9g== + dependencies: + "@jupyterlab/application" "^3.2.4" + "@jupyterlab/apputils" "^3.2.4" + "@jupyterlab/coreutils" "^5.2.4" + "@jupyterlab/property-inspector" "^3.2.4" + "@jupyterlab/settingregistry" "^3.2.4" + "@jupyterlab/statedb" "^3.2.4" + "@jupyterlab/translation" "^3.2.4" + "@jupyterlab/ui-components" "^3.2.4" "@lumino/algorithm" "^1.3.3" "@lumino/coreutils" "^1.5.3" "@lumino/disposable" "^1.4.3" "@lumino/widgets" "^1.19.0" react "^17.0.1" -"@jupyterlab/application@^3.2.0", "@jupyterlab/application@^3.2.3": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/application/-/application-3.2.3.tgz#5a19de7a73fbde29c6adb994068193f7e6061b3b" - integrity sha512-YcgxgRiYHOaUMbxevcUQn8QP0WN2JsCg4Q7Qtl1JOypLTsvoC66yqTzXcWsR/xtPUB4Ox0ka/EBGRHrH5aHA/g== +"@jupyterlab/application@^3.0.0", "@jupyterlab/application@^3.2.0", "@jupyterlab/application@^3.2.4": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/application/-/application-3.2.4.tgz#3372febf790bbbbeca6700222ab590392b550767" + integrity sha512-/2RwT5UC6asT5YiCqIIXDk4bffrOP1NK1RInMuK/dvuGkiTX8EWw2+5VYM2hRG46lEqco/0IdS71WNvnN5SsIw== dependencies: "@fortawesome/fontawesome-free" "^5.12.0" - "@jupyterlab/apputils" "^3.2.3" - "@jupyterlab/coreutils" "^5.2.3" - "@jupyterlab/docregistry" "^3.2.3" - "@jupyterlab/rendermime" "^3.2.3" - "@jupyterlab/rendermime-interfaces" "^3.2.3" - "@jupyterlab/services" "^6.2.3" - "@jupyterlab/statedb" "^3.2.3" - "@jupyterlab/translation" "^3.2.3" - "@jupyterlab/ui-components" "^3.2.3" + "@jupyterlab/apputils" "^3.2.4" + "@jupyterlab/coreutils" "^5.2.4" + "@jupyterlab/docregistry" "^3.2.4" + "@jupyterlab/rendermime" "^3.2.4" + "@jupyterlab/rendermime-interfaces" "^3.2.4" + "@jupyterlab/services" "^6.2.4" + "@jupyterlab/statedb" "^3.2.4" + "@jupyterlab/translation" "^3.2.4" + "@jupyterlab/ui-components" "^3.2.4" "@lumino/algorithm" "^1.3.3" "@lumino/application" "^1.16.0" "@lumino/commands" "^1.12.0" @@ -724,22 +724,22 @@ "@lumino/signaling" "^1.4.3" "@lumino/widgets" "^1.19.0" -"@jupyterlab/apputils-extension@^3.2.0": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/apputils-extension/-/apputils-extension-3.2.3.tgz#963cf69d3ef92e04a3dda41abb3d5aca4088ca1a" - integrity sha512-3IsyG9NCYW2wtDMZq0YTSXf0Phm1ISkrc390cdy0+eFwA7DxkTRSB74v1zAB4eGpPl76rpWX+tnfGJISoPNJdQ== - dependencies: - "@jupyterlab/application" "^3.2.3" - "@jupyterlab/apputils" "^3.2.3" - "@jupyterlab/coreutils" "^5.2.3" - "@jupyterlab/docregistry" "^3.2.3" - "@jupyterlab/filebrowser" "^3.2.3" - "@jupyterlab/mainmenu" "^3.2.3" - "@jupyterlab/services" "^6.2.3" - "@jupyterlab/settingregistry" "^3.2.3" - "@jupyterlab/statedb" "^3.2.3" - "@jupyterlab/translation" "^3.2.3" - "@jupyterlab/ui-components" "^3.2.3" +"@jupyterlab/apputils-extension@^3.0.0": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/apputils-extension/-/apputils-extension-3.2.4.tgz#f1e60c4af844a24f4a3071de681d4483be621529" + integrity sha512-5TIa5EJI7riVFo2aD+fdhVWl8KOt5Hb59wdqTsNHlpK5vxN8kONFYbnJcCvWXR/LR22RO1Z8Qu580GBp/mKKKg== + dependencies: + "@jupyterlab/application" "^3.2.4" + "@jupyterlab/apputils" "^3.2.4" + "@jupyterlab/coreutils" "^5.2.4" + "@jupyterlab/docregistry" "^3.2.4" + "@jupyterlab/filebrowser" "^3.2.4" + "@jupyterlab/mainmenu" "^3.2.4" + "@jupyterlab/services" "^6.2.4" + "@jupyterlab/settingregistry" "^3.2.4" + "@jupyterlab/statedb" "^3.2.4" + "@jupyterlab/translation" "^3.2.4" + "@jupyterlab/ui-components" "^3.2.4" "@lumino/algorithm" "^1.3.3" "@lumino/commands" "^1.12.0" "@lumino/coreutils" "^1.5.3" @@ -748,17 +748,17 @@ "@lumino/widgets" "^1.19.0" es6-promise "~4.2.8" -"@jupyterlab/apputils@^3.2.0", "@jupyterlab/apputils@^3.2.3": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/apputils/-/apputils-3.2.3.tgz#e4732ab6058d492c9dda83452c32d9e6415d370b" - integrity sha512-Mar07EgmCqS+Y1xPeAaUOZshEaLCNrIXilcBWyCGYfspvZv7W1ERGYsomy9ZMhlHmEaOcT1n4Y8T/iE6l/0gLQ== - dependencies: - "@jupyterlab/coreutils" "^5.2.3" - "@jupyterlab/services" "^6.2.3" - "@jupyterlab/settingregistry" "^3.2.3" - "@jupyterlab/statedb" "^3.2.3" - "@jupyterlab/translation" "^3.2.3" - "@jupyterlab/ui-components" "^3.2.3" +"@jupyterlab/apputils@^3.0.0", "@jupyterlab/apputils@^3.2.0", "@jupyterlab/apputils@^3.2.4": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/apputils/-/apputils-3.2.4.tgz#b6e786ebd217530c5d9aa489fbc8a5b4dc957a9e" + integrity sha512-x+lWYhmwR4nLHSiODtMidr//AoYhr7G/qSK16aV/shn5mgp7FWFViPpTGcCT//TQkuj+82N+azbMOIysZ2wOEw== + dependencies: + "@jupyterlab/coreutils" "^5.2.4" + "@jupyterlab/services" "^6.2.4" + "@jupyterlab/settingregistry" "^3.2.4" + "@jupyterlab/statedb" "^3.2.4" + "@jupyterlab/translation" "^3.2.4" + "@jupyterlab/ui-components" "^3.2.4" "@lumino/algorithm" "^1.3.3" "@lumino/commands" "^1.12.0" "@lumino/coreutils" "^1.5.3" @@ -776,24 +776,24 @@ sanitize-html "~2.3.3" url "^0.11.0" -"@jupyterlab/attachments@^3.2.3": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/attachments/-/attachments-3.2.3.tgz#3ec896c4666f3687c9d5c46b576704ce3f60abcb" - integrity sha512-K8CyeeeppvEibZAyR0b/svZ1ZM4JA2gb6AdqpGQBXQuYlIjsq3A6qfdQkSNE6A1iR3uP8URVH/Ty4J7jmjvkGw== +"@jupyterlab/attachments@^3.2.4": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/attachments/-/attachments-3.2.4.tgz#53ffc7e06b1cc8f6ba4c0ae965db23738ab1a032" + integrity sha512-ZNzlhgSBeoYbWzIzzI+yPxJY744RrkGS3EvYNW4SZBFUGP+S0xaTD0PKC75JQu0laCubagEaiRhovoCkfS+dLA== dependencies: - "@jupyterlab/nbformat" "^3.2.3" - "@jupyterlab/observables" "^4.2.3" - "@jupyterlab/rendermime" "^3.2.3" - "@jupyterlab/rendermime-interfaces" "^3.2.3" + "@jupyterlab/nbformat" "^3.2.4" + "@jupyterlab/observables" "^4.2.4" + "@jupyterlab/rendermime" "^3.2.4" + "@jupyterlab/rendermime-interfaces" "^3.2.4" "@lumino/disposable" "^1.4.3" "@lumino/signaling" "^1.4.3" -"@jupyterlab/builder@^3.1.0", "@jupyterlab/builder@^3.2.0": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/builder/-/builder-3.2.3.tgz#0f44a40de7d0142a64749019783795df7107a641" - integrity sha512-pIzNrmXLgkhKH9CH1tTxEMg6zO1RP2TAel6NVy8GPez6fLPVVpI1bKXn7uP1SjTJaEhAednwEjln+QMzR3revQ== +"@jupyterlab/builder@^3.0.0", "@jupyterlab/builder@^3.2.0": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/builder/-/builder-3.2.4.tgz#d5572cb675a5c80ef4e620dcf0c984f29cc97d66" + integrity sha512-pW+ZwwAzlZFWq41dsUpxuV2A5ZOQ7K0q7mcJuMYPDn6vsT93dMitd/t0FZGDTqyDoG+EsxzeigF12xArCfrkNQ== dependencies: - "@jupyterlab/buildutils" "^3.2.3" + "@jupyterlab/buildutils" "^3.2.4" "@lumino/algorithm" "^1.3.3" "@lumino/application" "^1.16.0" "@lumino/commands" "^1.12.0" @@ -829,10 +829,10 @@ webpack-merge "^5.1.2" worker-loader "^3.0.2" -"@jupyterlab/buildutils@^3.2.0", "@jupyterlab/buildutils@^3.2.3": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/buildutils/-/buildutils-3.2.3.tgz#608787ee2e736b67d28e804282d088d609f0efa8" - integrity sha512-4mXEmPKsxja+1SLumcu1T9QYc+CiCQWUyjDsuGEAKBys56chnTrFERzR9XJrPXJTUnif5dzdyIIte0sptwD6Gw== +"@jupyterlab/buildutils@^3.0.0", "@jupyterlab/buildutils@^3.2.0", "@jupyterlab/buildutils@^3.2.4": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/buildutils/-/buildutils-3.2.4.tgz#ade40b14b626a099fa452e6f8cf3a826984715b0" + integrity sha512-8vOS3tEXLcfSgsWAANxk6uQif8h1eYyqNrf9GzfcrvR+3NqN493noOzEaWrZgiCJ1k8H9dJvedhrd6bsFTliDQ== dependencies: "@lumino/coreutils" "^1.5.3" "@yarnpkg/lockfile" "^1.1.0" @@ -853,24 +853,24 @@ typescript "~4.1.3" verdaccio "^5.1.1" -"@jupyterlab/cells@^3.2.3": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/cells/-/cells-3.2.3.tgz#70e054aa95a1d740de3925451615f2901b03bdb8" - integrity sha512-cONGoXwd5TnbR1K1CWRiwquwb4Q4TPVQN9pLQSPiRxoq0ti+eRDV3g5ugChF5RUmZXRTF8ypEOtLIFVr06i5Jw== - dependencies: - "@jupyterlab/apputils" "^3.2.3" - "@jupyterlab/attachments" "^3.2.3" - "@jupyterlab/codeeditor" "^3.2.3" - "@jupyterlab/codemirror" "^3.2.3" - "@jupyterlab/coreutils" "^5.2.3" - "@jupyterlab/filebrowser" "^3.2.3" - "@jupyterlab/nbformat" "^3.2.3" - "@jupyterlab/observables" "^4.2.3" - "@jupyterlab/outputarea" "^3.2.3" - "@jupyterlab/rendermime" "^3.2.3" - "@jupyterlab/services" "^6.2.3" - "@jupyterlab/shared-models" "^3.2.3" - "@jupyterlab/ui-components" "^3.2.3" +"@jupyterlab/cells@^3.0.0", "@jupyterlab/cells@^3.2.4": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/cells/-/cells-3.2.4.tgz#7104f99c79a315f9a7aeead3c5df593ca36dbfbe" + integrity sha512-ttX83P2o7Vy5Lh4ohl/qWSn+exPo/rxmsD8itbqfFdonO2gqf4eQCNd20sHkunY+6WzA6eU6tqaMy7Ze9GKmdQ== + dependencies: + "@jupyterlab/apputils" "^3.2.4" + "@jupyterlab/attachments" "^3.2.4" + "@jupyterlab/codeeditor" "^3.2.4" + "@jupyterlab/codemirror" "^3.2.4" + "@jupyterlab/coreutils" "^5.2.4" + "@jupyterlab/filebrowser" "^3.2.4" + "@jupyterlab/nbformat" "^3.2.4" + "@jupyterlab/observables" "^4.2.4" + "@jupyterlab/outputarea" "^3.2.4" + "@jupyterlab/rendermime" "^3.2.4" + "@jupyterlab/services" "^6.2.4" + "@jupyterlab/shared-models" "^3.2.4" + "@jupyterlab/ui-components" "^3.2.4" "@lumino/algorithm" "^1.3.3" "@lumino/coreutils" "^1.5.3" "@lumino/domutils" "^1.2.3" @@ -882,17 +882,17 @@ marked "^2.0.0" react "^17.0.1" -"@jupyterlab/codeeditor@^3.2.3": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/codeeditor/-/codeeditor-3.2.3.tgz#d316685a85a10183f16177ef9d3378005bb5e496" - integrity sha512-uPN6j7emO9uv777Eh4yeNHgAMUdKViDdnoK1cw0Snhf0O2wmPbqygMsCyfZ9cmDzOGPvB7NbVbsDkXLQgzoJpQ== - dependencies: - "@jupyterlab/coreutils" "^5.2.3" - "@jupyterlab/nbformat" "^3.2.3" - "@jupyterlab/observables" "^4.2.3" - "@jupyterlab/shared-models" "^3.2.3" - "@jupyterlab/translation" "^3.2.3" - "@jupyterlab/ui-components" "^3.2.3" +"@jupyterlab/codeeditor@^3.2.4": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/codeeditor/-/codeeditor-3.2.4.tgz#6190acfe08184c119273cd289eeec1bb9ebb48f3" + integrity sha512-h0PLQEuuth+y0Hz5jdj/aQSg3a4AFMnirTXIzbrP+YVLjLj7NzY12WKDukWayDd+SMQA+kHlbscO3lnWE7v89Q== + dependencies: + "@jupyterlab/coreutils" "^5.2.4" + "@jupyterlab/nbformat" "^3.2.4" + "@jupyterlab/observables" "^4.2.4" + "@jupyterlab/shared-models" "^3.2.4" + "@jupyterlab/translation" "^3.2.4" + "@jupyterlab/ui-components" "^3.2.4" "@lumino/coreutils" "^1.5.3" "@lumino/disposable" "^1.4.3" "@lumino/dragdrop" "^1.7.1" @@ -900,35 +900,35 @@ "@lumino/signaling" "^1.4.3" "@lumino/widgets" "^1.19.0" -"@jupyterlab/codemirror-extension@^3.2.0": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/codemirror-extension/-/codemirror-extension-3.2.3.tgz#ab46a5ae88639e0d1f32432f7973bdff1b192fea" - integrity sha512-mzVUZrU5d1Mz0d+44a/jSZMcaRf6vEcMVF9+6Dmke0TqRma9BRZUdcsIxmxVPty1EPQd/vAJhovZMOyKY2PSVA== - dependencies: - "@jupyterlab/application" "^3.2.3" - "@jupyterlab/codeeditor" "^3.2.3" - "@jupyterlab/codemirror" "^3.2.3" - "@jupyterlab/docregistry" "^3.2.3" - "@jupyterlab/fileeditor" "^3.2.3" - "@jupyterlab/mainmenu" "^3.2.3" - "@jupyterlab/settingregistry" "^3.2.3" - "@jupyterlab/statusbar" "^3.2.3" - "@jupyterlab/translation" "^3.2.3" +"@jupyterlab/codemirror-extension@^3.0.0": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/codemirror-extension/-/codemirror-extension-3.2.4.tgz#dd55ffac2d7eed228dbe582c60c56f4620adbace" + integrity sha512-M/7CpxjJ3Ep1fbL6t4+7yBkb4k0gFst5vv9EZdEOwWRgVY4/fZO9bL1r3hLLAOVMCaZjAIvntt7ytp3WRNetfg== + dependencies: + "@jupyterlab/application" "^3.2.4" + "@jupyterlab/codeeditor" "^3.2.4" + "@jupyterlab/codemirror" "^3.2.4" + "@jupyterlab/docregistry" "^3.2.4" + "@jupyterlab/fileeditor" "^3.2.4" + "@jupyterlab/mainmenu" "^3.2.4" + "@jupyterlab/settingregistry" "^3.2.4" + "@jupyterlab/statusbar" "^3.2.4" + "@jupyterlab/translation" "^3.2.4" codemirror "~5.61.0" -"@jupyterlab/codemirror@^3.2.3": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/codemirror/-/codemirror-3.2.3.tgz#ad0bcf887bfec2db1bafc80b8e459712512d10c3" - integrity sha512-PwsxhPINXOW4naMkkQrAxwB/S9kZYEa/2fKetEpGcoI9zX691gxw8Am4fjBo94JBYftw7JG6pNpVcUovm0Q7ZQ== - dependencies: - "@jupyterlab/apputils" "^3.2.3" - "@jupyterlab/codeeditor" "^3.2.3" - "@jupyterlab/coreutils" "^5.2.3" - "@jupyterlab/nbformat" "^3.2.3" - "@jupyterlab/observables" "^4.2.3" - "@jupyterlab/shared-models" "^3.2.3" - "@jupyterlab/statusbar" "^3.2.3" - "@jupyterlab/translation" "^3.2.3" +"@jupyterlab/codemirror@^3.2.4": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/codemirror/-/codemirror-3.2.4.tgz#732163be94911c2bcbffda600af7c7d01abbbf93" + integrity sha512-6ocnfoQtFO70KfnJhneOVCcxqTZrO+9vBF+MdoISEPKK03MPwM/9tRs0rPEvzHUE4xEN+1KjFEb/3pcHB6WZiQ== + dependencies: + "@jupyterlab/apputils" "^3.2.4" + "@jupyterlab/codeeditor" "^3.2.4" + "@jupyterlab/coreutils" "^5.2.4" + "@jupyterlab/nbformat" "^3.2.4" + "@jupyterlab/observables" "^4.2.4" + "@jupyterlab/shared-models" "^3.2.4" + "@jupyterlab/statusbar" "^3.2.4" + "@jupyterlab/translation" "^3.2.4" "@lumino/algorithm" "^1.3.3" "@lumino/commands" "^1.12.0" "@lumino/coreutils" "^1.5.3" @@ -938,12 +938,12 @@ "@lumino/widgets" "^1.19.0" codemirror "~5.61.0" react "^17.0.1" - y-codemirror "^3.0.0" + y-codemirror "^3.0.1" -"@jupyterlab/coreutils@^5.2.0", "@jupyterlab/coreutils@^5.2.3", "@jupyterlab/coreutils@~5.2.0": - version "5.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/coreutils/-/coreutils-5.2.3.tgz#4b3e55f38d223b34140fb141acfe8884148f5f14" - integrity sha512-NoxK4r8VPX1Z/Fe9q+00tGTeY73sywSS0s0HObZCp9a7OScamnpxonHZ5ptms1XXHtr93uLgwkfROpQNFOYF3w== +"@jupyterlab/coreutils@^5.0.0", "@jupyterlab/coreutils@^5.2.0", "@jupyterlab/coreutils@^5.2.4": + version "5.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/coreutils/-/coreutils-5.2.4.tgz#7cf858a35dc3076b77a7194c0abf1340564b1c39" + integrity sha512-0QXhg8R0bkb5LILhfphE/K5k4zJI8N+fNsmy/Nr4mDo8l8mB7km6OUcbSSNuJg1mYikOhEA+UxhqE0954UgxkQ== dependencies: "@lumino/coreutils" "^1.5.3" "@lumino/disposable" "^1.4.3" @@ -953,38 +953,51 @@ path-browserify "^1.0.0" url-parse "~1.5.1" -"@jupyterlab/docmanager-extension@^3.2.0": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/docmanager-extension/-/docmanager-extension-3.2.3.tgz#eb7d9e172ebd06ac4f055bb42d6f95a24025cd3b" - integrity sha512-YKcp1DuX23JMXdjM+k5LDTVhdxoGc3SEvJP/isDyGdhyRmYNMno6aGC0jvIQctgFJhzp6w3cxV0EBmqfnjkFfQ== - dependencies: - "@jupyterlab/application" "^3.2.3" - "@jupyterlab/apputils" "^3.2.3" - "@jupyterlab/coreutils" "^5.2.3" - "@jupyterlab/docmanager" "^3.2.3" - "@jupyterlab/docprovider" "^3.2.3" - "@jupyterlab/docregistry" "^3.2.3" - "@jupyterlab/services" "^6.2.3" - "@jupyterlab/settingregistry" "^3.2.3" - "@jupyterlab/statusbar" "^3.2.3" - "@jupyterlab/translation" "^3.2.3" +"@jupyterlab/coreutils@~5.0.0": + version "5.0.7" + resolved "https://registry.yarnpkg.com/@jupyterlab/coreutils/-/coreutils-5.0.7.tgz#a758d0b37f44db668f7883a30ed9096e51582253" + integrity sha512-iRGS3ltmSm5+8X7eHTm11aFn7iIvRY2tv6/SgjIXBnNU4LFcHR8At07aZK0hw+H2/gmeFqsPqipfu02vlqeypw== + dependencies: + "@lumino/coreutils" "^1.5.3" + "@lumino/disposable" "^1.4.3" + "@lumino/signaling" "^1.4.3" + minimist "~1.2.0" + moment "^2.24.0" + path-browserify "^1.0.0" + url-parse "~1.5.1" + +"@jupyterlab/docmanager-extension@^3.0.0": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/docmanager-extension/-/docmanager-extension-3.2.4.tgz#41c804828370f3b4710b81a045cb73fc5d858086" + integrity sha512-FYbS3cInACSrN24rLUzt9+p53JTQxzdwQWBUmaM6/5KgrjIEZDfBs7l4Ox7TEFFco9zxZtd5zICj4G6yVhaDPQ== + dependencies: + "@jupyterlab/application" "^3.2.4" + "@jupyterlab/apputils" "^3.2.4" + "@jupyterlab/coreutils" "^5.2.4" + "@jupyterlab/docmanager" "^3.2.4" + "@jupyterlab/docprovider" "^3.2.4" + "@jupyterlab/docregistry" "^3.2.4" + "@jupyterlab/services" "^6.2.4" + "@jupyterlab/settingregistry" "^3.2.4" + "@jupyterlab/statusbar" "^3.2.4" + "@jupyterlab/translation" "^3.2.4" "@lumino/algorithm" "^1.3.3" "@lumino/coreutils" "^1.5.3" "@lumino/disposable" "^1.4.3" "@lumino/widgets" "^1.19.0" -"@jupyterlab/docmanager@^3.2.0", "@jupyterlab/docmanager@^3.2.3": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/docmanager/-/docmanager-3.2.3.tgz#8d90313eca400d0a954487d66ed04bb50e8d3d67" - integrity sha512-uMgqjxw8XEyYEKfkrgw30qxswRPKCtjOW32JjMCr3obZo2DLbN7AVqcYeQ5DEJCzogBdsPYBcavzm35OScLi1A== - dependencies: - "@jupyterlab/apputils" "^3.2.3" - "@jupyterlab/coreutils" "^5.2.3" - "@jupyterlab/docprovider" "^3.2.3" - "@jupyterlab/docregistry" "^3.2.3" - "@jupyterlab/services" "^6.2.3" - "@jupyterlab/statusbar" "^3.2.3" - "@jupyterlab/translation" "^3.2.3" +"@jupyterlab/docmanager@^3.0.0", "@jupyterlab/docmanager@^3.2.4": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/docmanager/-/docmanager-3.2.4.tgz#860f87465cf054882f44f38fc76cf4caf08d308e" + integrity sha512-FVmwek2Bn9aO5Q9lgK9abDBxgC/3LMhjokrP9PG0bwJ+vSrGngX+MoAE3UuFOxWxMhzBQ2d7zh90ToAUVTCBrQ== + dependencies: + "@jupyterlab/apputils" "^3.2.4" + "@jupyterlab/coreutils" "^5.2.4" + "@jupyterlab/docprovider" "^3.2.4" + "@jupyterlab/docregistry" "^3.2.4" + "@jupyterlab/services" "^6.2.4" + "@jupyterlab/statusbar" "^3.2.4" + "@jupyterlab/translation" "^3.2.4" "@lumino/algorithm" "^1.3.3" "@lumino/coreutils" "^1.5.3" "@lumino/disposable" "^1.4.3" @@ -994,44 +1007,44 @@ "@lumino/widgets" "^1.19.0" react "^17.0.1" -"@jupyterlab/docprovider-extension@^3.2.0": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/docprovider-extension/-/docprovider-extension-3.2.3.tgz#a267f404f22cf0a7bba2dd6186beed591043993c" - integrity sha512-1S+0lqBCW80zdkksTYimRmbOlhIGYkZWceytRVSGarYGdCbXJRahXU4so1lKAF4TCDpXFcih0GlBO1dxp86FnA== +"@jupyterlab/docprovider-extension@^3.0.0": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/docprovider-extension/-/docprovider-extension-3.2.4.tgz#27b7549d3228e0591bc84f0cb081a6f740ef7cb6" + integrity sha512-70kikF9msWNWHcCpUAroUu3qOw06LhQAaHny5Jbk/CKqCad8Ya6y6FWHx1OhwNzEY12WdYq5BCsAxLDVhzVM9A== dependencies: - "@jupyterlab/application" "^3.2.3" - "@jupyterlab/coreutils" "^5.2.3" - "@jupyterlab/docprovider" "^3.2.3" - "@jupyterlab/services" "^6.2.3" + "@jupyterlab/application" "^3.2.4" + "@jupyterlab/coreutils" "^5.2.4" + "@jupyterlab/docprovider" "^3.2.4" + "@jupyterlab/services" "^6.2.4" -"@jupyterlab/docprovider@^3.2.3": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/docprovider/-/docprovider-3.2.3.tgz#94c737bdc3eeb04541513bbf8ab70b172cd59c29" - integrity sha512-cqtVuSIQL3HMM1qeoasSNKmdLYAhtSFr4kO9KaTI9I0DEfD6XeI1Y5e5tsK8bpkv0QgsYPQb8lUIgNztzG+m+w== +"@jupyterlab/docprovider@^3.2.4": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/docprovider/-/docprovider-3.2.4.tgz#c9a6513f12d88ea059e14d2a7e61ad3a760e10f7" + integrity sha512-7yh9lJslZb9/kgKD4Jta8XWhBrdZXN+/g2XKbRtgpESWboJ0/YAgglhxk2O+7pLVzs9vMdZmqAMCHbwui9+ltA== dependencies: - "@jupyterlab/shared-models" "^3.2.3" + "@jupyterlab/shared-models" "^3.2.4" "@lumino/coreutils" "^1.5.3" lib0 "^0.2.42" y-websocket "^1.3.15" yjs "^13.5.17" -"@jupyterlab/docregistry@^3.2.0", "@jupyterlab/docregistry@^3.2.3": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/docregistry/-/docregistry-3.2.3.tgz#575dbf9cc4a97293bc1d9ae60263c32c8f3e4d74" - integrity sha512-wHBetaMVGsw9+ryFDm9GyroveOsTL4HO5Entpjseqa/dDkbIjS9r3f5Q2+lONdmZaCMkBFAZmIZmR4c0bCi8qg== - dependencies: - "@jupyterlab/apputils" "^3.2.3" - "@jupyterlab/codeeditor" "^3.2.3" - "@jupyterlab/codemirror" "^3.2.3" - "@jupyterlab/coreutils" "^5.2.3" - "@jupyterlab/docprovider" "^3.2.3" - "@jupyterlab/observables" "^4.2.3" - "@jupyterlab/rendermime" "^3.2.3" - "@jupyterlab/rendermime-interfaces" "^3.2.3" - "@jupyterlab/services" "^6.2.3" - "@jupyterlab/shared-models" "^3.2.3" - "@jupyterlab/translation" "^3.2.3" - "@jupyterlab/ui-components" "^3.2.3" +"@jupyterlab/docregistry@^3.0.0", "@jupyterlab/docregistry@^3.2.0", "@jupyterlab/docregistry@^3.2.4": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/docregistry/-/docregistry-3.2.4.tgz#edfccd2ff87ecb69aa8c56768fe8f43d2fb3a09a" + integrity sha512-3RVZrRgudrUqebz6FIgF8vD0nQsn7zzgy72XwB5YkYa7FBdLTf875ehUFXX4MdxqJC/uM/1th+0RPnnl8OwvaA== + dependencies: + "@jupyterlab/apputils" "^3.2.4" + "@jupyterlab/codeeditor" "^3.2.4" + "@jupyterlab/codemirror" "^3.2.4" + "@jupyterlab/coreutils" "^5.2.4" + "@jupyterlab/docprovider" "^3.2.4" + "@jupyterlab/observables" "^4.2.4" + "@jupyterlab/rendermime" "^3.2.4" + "@jupyterlab/rendermime-interfaces" "^3.2.4" + "@jupyterlab/services" "^6.2.4" + "@jupyterlab/shared-models" "^3.2.4" + "@jupyterlab/translation" "^3.2.4" + "@jupyterlab/ui-components" "^3.2.4" "@lumino/algorithm" "^1.3.3" "@lumino/coreutils" "^1.5.3" "@lumino/disposable" "^1.4.3" @@ -1040,20 +1053,20 @@ "@lumino/widgets" "^1.19.0" yjs "^13.5.17" -"@jupyterlab/filebrowser@^3.2.3": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/filebrowser/-/filebrowser-3.2.3.tgz#add868409a1c619eb53292749462897e93eaa155" - integrity sha512-ENKgCj9fYxfsdvFM5ilpdjVBdyyS48pCflcNhrQWlEwu1PLGhbxkMi96GBDhMBhB8RH/8DhWIVU+9gZ08BZLgw== - dependencies: - "@jupyterlab/apputils" "^3.2.3" - "@jupyterlab/coreutils" "^5.2.3" - "@jupyterlab/docmanager" "^3.2.3" - "@jupyterlab/docregistry" "^3.2.3" - "@jupyterlab/services" "^6.2.3" - "@jupyterlab/statedb" "^3.2.3" - "@jupyterlab/statusbar" "^3.2.3" - "@jupyterlab/translation" "^3.2.3" - "@jupyterlab/ui-components" "^3.2.3" +"@jupyterlab/filebrowser@^3.2.4": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/filebrowser/-/filebrowser-3.2.4.tgz#cb226ef6181a7a6fba31e84f20e90c50557cb676" + integrity sha512-BF6nEO+ppUCrQdJur/JEzio+jRZqgTwdqk1KARmwtFYJMcbaCVMTnaInD//xopSwhcNRLDOfOlA45T1llkH3qQ== + dependencies: + "@jupyterlab/apputils" "^3.2.4" + "@jupyterlab/coreutils" "^5.2.4" + "@jupyterlab/docmanager" "^3.2.4" + "@jupyterlab/docregistry" "^3.2.4" + "@jupyterlab/services" "^6.2.4" + "@jupyterlab/statedb" "^3.2.4" + "@jupyterlab/statusbar" "^3.2.4" + "@jupyterlab/translation" "^3.2.4" + "@jupyterlab/ui-components" "^3.2.4" "@lumino/algorithm" "^1.3.3" "@lumino/coreutils" "^1.5.3" "@lumino/disposable" "^1.4.3" @@ -1066,39 +1079,39 @@ "@lumino/widgets" "^1.19.0" react "^17.0.1" -"@jupyterlab/fileeditor@^3.2.3": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/fileeditor/-/fileeditor-3.2.3.tgz#0fa8d2454fd9cb065b03e7f21f73bf860e042b6e" - integrity sha512-8v2wUIL2Pwa0JtDODxImaSBX5adKZ3AKuQRShdY1SifYgyi5ZLVjLuCwykYsl7mHMzBlXBu3oKmkX8hfhuVDwg== - dependencies: - "@jupyterlab/apputils" "^3.2.3" - "@jupyterlab/codeeditor" "^3.2.3" - "@jupyterlab/docregistry" "^3.2.3" - "@jupyterlab/statusbar" "^3.2.3" - "@jupyterlab/translation" "^3.2.3" - "@jupyterlab/ui-components" "^3.2.3" +"@jupyterlab/fileeditor@^3.2.4": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/fileeditor/-/fileeditor-3.2.4.tgz#2854c99da0881ee2127aea24efe010b85fd49610" + integrity sha512-Jn2WuOijHGM7HxUGhaOWpwwAGGKJ+ryO1fptIB3B6oB8TfDariBgm+dA5HKVwJRcP66+Pia+sQMGNwZqAdt9iQ== + dependencies: + "@jupyterlab/apputils" "^3.2.4" + "@jupyterlab/codeeditor" "^3.2.4" + "@jupyterlab/docregistry" "^3.2.4" + "@jupyterlab/statusbar" "^3.2.4" + "@jupyterlab/translation" "^3.2.4" + "@jupyterlab/ui-components" "^3.2.4" "@lumino/coreutils" "^1.5.3" "@lumino/messaging" "^1.4.3" "@lumino/widgets" "^1.19.0" react "^17.0.1" -"@jupyterlab/javascript-extension@^3.2.0": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/javascript-extension/-/javascript-extension-3.2.3.tgz#b9c202dfd75f45361457147205dc85fc4147b126" - integrity sha512-eUrUxOClELonXQ+sAaZ01x9bWOQhZABnl1E+CbwFh0YpR84Z+BU0JEMT9zarJsLUK0EOweiniHs0qSsZaSRy7Q== +"@jupyterlab/javascript-extension@^3.0.0": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/javascript-extension/-/javascript-extension-3.2.4.tgz#f5ba77d2b561dda60c36d4a5429821b42fbc9b24" + integrity sha512-CGgoBmXVm4uSg99Z4IBoj/RJ1bT1k0J22q83GNY/hitPob10wtPqn9IFrUbvnDlbPszgEqkbv+g2SLntpt5W8A== dependencies: - "@jupyterlab/rendermime" "^3.2.3" - "@jupyterlab/rendermime-interfaces" "^3.2.3" + "@jupyterlab/rendermime" "^3.2.4" + "@jupyterlab/rendermime-interfaces" "^3.2.4" -"@jupyterlab/json-extension@^3.2.0": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/json-extension/-/json-extension-3.2.3.tgz#b78d8fc6b710193ad30bf5e6967d7d8f17f2bf62" - integrity sha512-CXWutgyyT/C57VCgU+IDSkk4nWudjdddDhQzdSJ+yT+66h1kDmcvfGaj5tFUSjsq3qxE8XXwO9GGz5BPNuCgzw== +"@jupyterlab/json-extension@^3.0.0": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/json-extension/-/json-extension-3.2.4.tgz#6a4634e11f81c2231910ec633b3c9a952a3eaf3b" + integrity sha512-UnT4tmiWZvPvFeCFyT5dfF5KtPw8vKj2+xP/BflIrLpI+wA9fshQVXyoWhAsmD5YPQIfMD8bW3AsqTC9mvB++Q== dependencies: - "@jupyterlab/apputils" "^3.2.3" - "@jupyterlab/rendermime-interfaces" "^3.2.3" - "@jupyterlab/translation" "^3.2.3" - "@jupyterlab/ui-components" "^3.2.3" + "@jupyterlab/apputils" "^3.2.4" + "@jupyterlab/rendermime-interfaces" "^3.2.4" + "@jupyterlab/translation" "^3.2.4" + "@jupyterlab/ui-components" "^3.2.4" "@lumino/coreutils" "^1.5.3" "@lumino/messaging" "^1.4.3" "@lumino/widgets" "^1.19.0" @@ -1107,14 +1120,14 @@ react-highlighter "^0.4.3" react-json-tree "^0.15.0" -"@jupyterlab/launcher@^3.2.3": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/launcher/-/launcher-3.2.3.tgz#de9e4993741ca4367980bf18237d3519c5640519" - integrity sha512-OO/NxxO0bDBn0MfwFkSh1XoyCANnhawCnvObOGsEUX/dFUjo8L5XPt+OZFbOniMoJmGNyRLbMV4Kw7JyFF/dzg== +"@jupyterlab/launcher@^3.2.4": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/launcher/-/launcher-3.2.4.tgz#c71ca18475b4cccf7db8e89e1f25b7b16751fb1b" + integrity sha512-7OctK3lvcudcwkq0O84Voj6F6H77lvnhqf1D3TP4giXKrLw4Kxe7h3chvwRi1+sGdOi6b+2PE5jNRviAbNqD1Q== dependencies: - "@jupyterlab/apputils" "^3.2.3" - "@jupyterlab/translation" "^3.2.3" - "@jupyterlab/ui-components" "^3.2.3" + "@jupyterlab/apputils" "^3.2.4" + "@jupyterlab/translation" "^3.2.4" + "@jupyterlab/ui-components" "^3.2.4" "@lumino/algorithm" "^1.3.3" "@lumino/commands" "^1.12.0" "@lumino/coreutils" "^1.5.3" @@ -1123,88 +1136,88 @@ "@lumino/widgets" "^1.19.0" react "^17.0.1" -"@jupyterlab/logconsole@^3.2.3": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/logconsole/-/logconsole-3.2.3.tgz#fd9d14ec1102bcb97b01f768cdedf1a5bf7f5239" - integrity sha512-iSP2S/UJhfl08S/MHZxbZa+r6lFfZhkl6fm8Xo5jgYw/dD7RRfsmXTyHrv4U5Rz4hTjKW9s8emjZ7GAMFDq3xQ== - dependencies: - "@jupyterlab/coreutils" "^5.2.3" - "@jupyterlab/nbformat" "^3.2.3" - "@jupyterlab/outputarea" "^3.2.3" - "@jupyterlab/rendermime" "^3.2.3" - "@jupyterlab/services" "^6.2.3" - "@jupyterlab/translation" "^3.2.3" +"@jupyterlab/logconsole@^3.2.4": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/logconsole/-/logconsole-3.2.4.tgz#16755899230a7305cbc2fd2f9d4b2022ef32e170" + integrity sha512-eGkPUbYcqEoPYnIJtdy5p4RByygTx7QE0mmLtdOfA2lJQRQ3VxPv8vhjtAiXxoRiOSqu2Lc+TrqrStFKXx1BTA== + dependencies: + "@jupyterlab/coreutils" "^5.2.4" + "@jupyterlab/nbformat" "^3.2.4" + "@jupyterlab/outputarea" "^3.2.4" + "@jupyterlab/rendermime" "^3.2.4" + "@jupyterlab/services" "^6.2.4" + "@jupyterlab/translation" "^3.2.4" "@lumino/coreutils" "^1.5.3" "@lumino/disposable" "^1.4.3" "@lumino/messaging" "^1.4.3" "@lumino/signaling" "^1.4.3" "@lumino/widgets" "^1.19.0" -"@jupyterlab/mainmenu@^3.2.0", "@jupyterlab/mainmenu@^3.2.3": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/mainmenu/-/mainmenu-3.2.3.tgz#621eb93ad2131332cd531a6f4fb95389ee82aca8" - integrity sha512-OvbqhnX2OVabSoQAwlhar63EwTsLT5MkwGnlHXpuLTk58Ihrb1QNnzvI8Nhoau7OnGazsJNjevD7taviyY2nNw== +"@jupyterlab/mainmenu@^3.2.0", "@jupyterlab/mainmenu@^3.2.4": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/mainmenu/-/mainmenu-3.2.4.tgz#bec38efdabfd7c30d8bbb52dc8c1ef6a9b1e6b36" + integrity sha512-9ditdzqmpTwjmEDTa/OwzkMVd04eS1TBlY6pCTbWlBH2Ati2w+CKxKFGFTHzU5yWu6uDCVjK6n98QC4Pcu+8og== dependencies: - "@jupyterlab/apputils" "^3.2.3" - "@jupyterlab/services" "^6.2.3" - "@jupyterlab/translation" "^3.2.3" - "@jupyterlab/ui-components" "^3.2.3" + "@jupyterlab/apputils" "^3.2.4" + "@jupyterlab/services" "^6.2.4" + "@jupyterlab/translation" "^3.2.4" + "@jupyterlab/ui-components" "^3.2.4" "@lumino/algorithm" "^1.3.3" "@lumino/commands" "^1.12.0" "@lumino/coreutils" "^1.5.3" "@lumino/widgets" "^1.19.0" -"@jupyterlab/mathjax2-extension@^3.2.0": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/mathjax2-extension/-/mathjax2-extension-3.2.3.tgz#2a5a5d9a506fe16d43ec877e8f4c35ab6666dd1a" - integrity sha512-KlAu90Hqo1C3R19cEfsziWwLLHOlG/A+ybvzsP88rWaSR6jr+5pXJdKHp74pbixYJuRAIXUt0qScPuKHxvFPWQ== +"@jupyterlab/mathjax2-extension@^3.0.0": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/mathjax2-extension/-/mathjax2-extension-3.2.4.tgz#56caa04ee94a2c7e92ecaf88d2c7c9cdf8a00d0f" + integrity sha512-GXKvbVqIV4ZmXHHKTOsjyx5hvklQvEKNxl49muj7AJ16LhI18qsRN0Hszoc/s7V8Z2ZpTI+7lwyCPkI2rSlwFA== dependencies: - "@jupyterlab/application" "^3.2.3" - "@jupyterlab/coreutils" "^5.2.3" - "@jupyterlab/mathjax2" "^3.2.3" - "@jupyterlab/rendermime" "^3.2.3" + "@jupyterlab/application" "^3.2.4" + "@jupyterlab/coreutils" "^5.2.4" + "@jupyterlab/mathjax2" "^3.2.4" + "@jupyterlab/rendermime" "^3.2.4" -"@jupyterlab/mathjax2@^3.2.0", "@jupyterlab/mathjax2@^3.2.3": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/mathjax2/-/mathjax2-3.2.3.tgz#6bf1e2b661ea44fee97c0c2a228fbd999d08ef34" - integrity sha512-ZFiLyMK6al6KJCqm0MYSqk3TuYZ/qymEvHzhSEhx/qY7F+JBOoc/ndD71vO7UMfJYKgs52bKthQ3zNz7J0VKoA== +"@jupyterlab/mathjax2@^3.0.0", "@jupyterlab/mathjax2@^3.2.4": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/mathjax2/-/mathjax2-3.2.4.tgz#813dff351989c1e7562b57993ad827167a889bd1" + integrity sha512-fDmLXBPojvFfIsfAXT4sLnLnejXqqrb3aAMdrC+uiSmkaaPdsXcqTBmDJGTuFyn2MRzpK6fMGfC/844bu8pLOw== dependencies: - "@jupyterlab/rendermime-interfaces" "^3.2.3" + "@jupyterlab/rendermime-interfaces" "^3.2.4" "@lumino/coreutils" "^1.5.3" -"@jupyterlab/nbformat@^3.2.3": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/nbformat/-/nbformat-3.2.3.tgz#2721e563eaf5f0aa097e0bea15673fc2e3513e27" - integrity sha512-ywsXaeBVrEVyvyOkFhqcWlOHge1gsSrTOnF7v8c7ENcwDf1aU73Koa+RFoNom5LopJBlgu5yzHQaSCI9Jist+g== +"@jupyterlab/nbformat@^3.2.4": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/nbformat/-/nbformat-3.2.4.tgz#dca9720804c949371d30227a8254de3b9feffc59" + integrity sha512-tEwt+vKAQEqj2smC8B5Myg693/5md3T9Nm3BM3Ix2NYqioCLlnGJ+aYQaOx1bsjyYWGLH/liW26O0NAUB3oEWg== dependencies: "@lumino/coreutils" "^1.5.3" -"@jupyterlab/notebook-extension@^3.2.0": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/notebook-extension/-/notebook-extension-3.2.3.tgz#5a7434e648148fad3a66074ea71ad9660140e2e8" - integrity sha512-HiTG6gnyDuNc88UsqU8S2h6q5W9oAsIWOAxwHVJeW3BjdC1d7dWydJWjRg8ss7vPcIcQeJJTE4h8oMwbdRZfpA== - dependencies: - "@jupyterlab/application" "^3.2.3" - "@jupyterlab/apputils" "^3.2.3" - "@jupyterlab/cells" "^3.2.3" - "@jupyterlab/codeeditor" "^3.2.3" - "@jupyterlab/coreutils" "^5.2.3" - "@jupyterlab/docmanager" "^3.2.3" - "@jupyterlab/filebrowser" "^3.2.3" - "@jupyterlab/launcher" "^3.2.3" - "@jupyterlab/logconsole" "^3.2.3" - "@jupyterlab/mainmenu" "^3.2.3" - "@jupyterlab/nbformat" "^3.2.3" - "@jupyterlab/notebook" "^3.2.3" - "@jupyterlab/observables" "^4.2.3" - "@jupyterlab/property-inspector" "^3.2.3" - "@jupyterlab/rendermime" "^3.2.3" - "@jupyterlab/services" "^6.2.3" - "@jupyterlab/settingregistry" "^3.2.3" - "@jupyterlab/statedb" "^3.2.3" - "@jupyterlab/statusbar" "^3.2.3" - "@jupyterlab/translation" "^3.2.3" - "@jupyterlab/ui-components" "^3.2.3" +"@jupyterlab/notebook-extension@^3.0.0": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/notebook-extension/-/notebook-extension-3.2.4.tgz#88c0dec7a82922e94b91de130e773364679871e8" + integrity sha512-LzTLVM6D18yEWHWfifBtDC7SR0qHU/FxJ/J+drV6z07Q+o84a/15t7XIiKSYieZV/ScI8Ie41RLQFV7FbW2lvg== + dependencies: + "@jupyterlab/application" "^3.2.4" + "@jupyterlab/apputils" "^3.2.4" + "@jupyterlab/cells" "^3.2.4" + "@jupyterlab/codeeditor" "^3.2.4" + "@jupyterlab/coreutils" "^5.2.4" + "@jupyterlab/docmanager" "^3.2.4" + "@jupyterlab/filebrowser" "^3.2.4" + "@jupyterlab/launcher" "^3.2.4" + "@jupyterlab/logconsole" "^3.2.4" + "@jupyterlab/mainmenu" "^3.2.4" + "@jupyterlab/nbformat" "^3.2.4" + "@jupyterlab/notebook" "^3.2.4" + "@jupyterlab/observables" "^4.2.4" + "@jupyterlab/property-inspector" "^3.2.4" + "@jupyterlab/rendermime" "^3.2.4" + "@jupyterlab/services" "^6.2.4" + "@jupyterlab/settingregistry" "^3.2.4" + "@jupyterlab/statedb" "^3.2.4" + "@jupyterlab/statusbar" "^3.2.4" + "@jupyterlab/translation" "^3.2.4" + "@jupyterlab/ui-components" "^3.2.4" "@lumino/algorithm" "^1.3.3" "@lumino/commands" "^1.12.0" "@lumino/coreutils" "^1.5.3" @@ -1212,24 +1225,24 @@ "@lumino/messaging" "^1.4.3" "@lumino/widgets" "^1.19.0" -"@jupyterlab/notebook@^3.2.0", "@jupyterlab/notebook@^3.2.3": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/notebook/-/notebook-3.2.3.tgz#06f9fd64f7a6f290064734a00fd2c2ec0776bff8" - integrity sha512-n9+/q72ev3at/M/e0X22HcxQ9amCdmOmRz8aFqNTTMcJ45/om4oMlkpGoVs0z4Y3gX3OXPCQ/mfuIiPKVXmEAA== - dependencies: - "@jupyterlab/apputils" "^3.2.3" - "@jupyterlab/cells" "^3.2.3" - "@jupyterlab/codeeditor" "^3.2.3" - "@jupyterlab/coreutils" "^5.2.3" - "@jupyterlab/docregistry" "^3.2.3" - "@jupyterlab/nbformat" "^3.2.3" - "@jupyterlab/observables" "^4.2.3" - "@jupyterlab/rendermime" "^3.2.3" - "@jupyterlab/services" "^6.2.3" - "@jupyterlab/shared-models" "^3.2.3" - "@jupyterlab/statusbar" "^3.2.3" - "@jupyterlab/translation" "^3.2.3" - "@jupyterlab/ui-components" "^3.2.3" +"@jupyterlab/notebook@^3.0.0", "@jupyterlab/notebook@^3.2.0", "@jupyterlab/notebook@^3.2.4": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/notebook/-/notebook-3.2.4.tgz#e3d946e601bf6df39fb00d69d3e7669eaa1fa15f" + integrity sha512-wth5JW5y90mZEhbYUY5WhWDNQ2kitNXiN6G4lPoA3V3alyAhax0N8WpRfOyd83CyCls9MtPhZM19ELWa0co4rg== + dependencies: + "@jupyterlab/apputils" "^3.2.4" + "@jupyterlab/cells" "^3.2.4" + "@jupyterlab/codeeditor" "^3.2.4" + "@jupyterlab/coreutils" "^5.2.4" + "@jupyterlab/docregistry" "^3.2.4" + "@jupyterlab/nbformat" "^3.2.4" + "@jupyterlab/observables" "^4.2.4" + "@jupyterlab/rendermime" "^3.2.4" + "@jupyterlab/services" "^6.2.4" + "@jupyterlab/shared-models" "^3.2.4" + "@jupyterlab/statusbar" "^3.2.4" + "@jupyterlab/translation" "^3.2.4" + "@jupyterlab/ui-components" "^3.2.4" "@lumino/algorithm" "^1.3.3" "@lumino/coreutils" "^1.5.3" "@lumino/domutils" "^1.2.3" @@ -1241,10 +1254,10 @@ "@lumino/widgets" "^1.19.0" react "^17.0.1" -"@jupyterlab/observables@^4.2.3": - version "4.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/observables/-/observables-4.2.3.tgz#d8f66e8f8cc4d184ed578156025739830b80f85d" - integrity sha512-0zw4+KfhFXYPAGbh9WFUp5s4h7nDoDtizWYACN/LQ67BF0E7gz70QDj/1VClc1roYA7yUEPVomZfUKQZ3sFZ9g== +"@jupyterlab/observables@^4.2.4": + version "4.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/observables/-/observables-4.2.4.tgz#77be638b9a8b660576087151e275b9e08239dd4a" + integrity sha512-9b1a2+Tmda/Jr8oLMpMhQJAEpMRgILo8unjTnpMCb9RZgOZAwMRs+vItNqrjrapa4OO1vhIFVRWWqmxa5vz/6Q== dependencies: "@lumino/algorithm" "^1.3.3" "@lumino/coreutils" "^1.5.3" @@ -1252,17 +1265,17 @@ "@lumino/messaging" "^1.4.3" "@lumino/signaling" "^1.4.3" -"@jupyterlab/outputarea@^3.2.3": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/outputarea/-/outputarea-3.2.3.tgz#1aa767bc28fceb8ca5219da0ee5971117994686b" - integrity sha512-2CSg8q9XLm/fGRaDT0tmRj/2EQxuavyjKwtK4MVTVAvYKHwc7sy8E/cURHayNtHFJjk7GMnpxUAUwWBjO2HvhA== - dependencies: - "@jupyterlab/apputils" "^3.2.3" - "@jupyterlab/nbformat" "^3.2.3" - "@jupyterlab/observables" "^4.2.3" - "@jupyterlab/rendermime" "^3.2.3" - "@jupyterlab/rendermime-interfaces" "^3.2.3" - "@jupyterlab/services" "^6.2.3" +"@jupyterlab/outputarea@^3.2.4": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/outputarea/-/outputarea-3.2.4.tgz#12e1ec4127bdbbad34326de2ac976bb914e69785" + integrity sha512-+JU3bu8SNAURf7orofVBUWiaNtC2b7SSi/Gd6KpJ/c7CnK2XaPZ1BdHD+ioMcAZsGEkymrFcmIvzXTZjpImJDQ== + dependencies: + "@jupyterlab/apputils" "^3.2.4" + "@jupyterlab/nbformat" "^3.2.4" + "@jupyterlab/observables" "^4.2.4" + "@jupyterlab/rendermime" "^3.2.4" + "@jupyterlab/rendermime-interfaces" "^3.2.4" + "@jupyterlab/services" "^6.2.4" "@lumino/algorithm" "^1.3.3" "@lumino/coreutils" "^1.5.3" "@lumino/disposable" "^1.4.3" @@ -1272,63 +1285,63 @@ "@lumino/widgets" "^1.19.0" resize-observer-polyfill "^1.5.1" -"@jupyterlab/pdf-extension@^3.2.0": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/pdf-extension/-/pdf-extension-3.2.3.tgz#942a1b575eb9db45f4f83ab8c57881bc93761b6a" - integrity sha512-8TWur3SM84JibQVLQN3XHF6CP60Dy6sICE7XOHzYgYW/fhVy5MyGf6YamXywJ2s4dIyXyGQuTLak+jm1dYZs6Q== +"@jupyterlab/pdf-extension@^3.0.0": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/pdf-extension/-/pdf-extension-3.2.4.tgz#2a79de6512d0df82341fa7258e515ae52e6db674" + integrity sha512-iCY0a/dv+l2cx/MbwVUIinjPzkYVQJ9Hg7EHn7QQXnMHBqTRgA1qLVQ7F2otN7rb7GrS7ExSWdcsVFaxz+uH8A== dependencies: - "@jupyterlab/rendermime-interfaces" "^3.2.3" + "@jupyterlab/rendermime-interfaces" "^3.2.4" "@lumino/coreutils" "^1.5.3" "@lumino/disposable" "^1.4.3" "@lumino/widgets" "^1.19.0" -"@jupyterlab/property-inspector@^3.2.3": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/property-inspector/-/property-inspector-3.2.3.tgz#00522d386b43bebc9eab3e6380ff80673713f245" - integrity sha512-DZ5lXZr2jzdIMB1430Yv5XK+PNivGGX7Qyhtg9wy75Gq2/hPUd2kqwGqAPGUFyjyKOmCmV+9E2VA3YF5lvrahA== +"@jupyterlab/property-inspector@^3.2.4": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/property-inspector/-/property-inspector-3.2.4.tgz#5f1c40a4ee7e639f5f12f97f9a809dea0c778eb8" + integrity sha512-kEH1JsZL2a5+43obAs9y5FADySQwzi1qW5plUUt9MDPsYQY07kupu+AZrvsQi9+BaQ2HXkPHWsS2RcQWlJiWOQ== dependencies: - "@jupyterlab/application" "^3.2.3" - "@jupyterlab/apputils" "^3.2.3" - "@jupyterlab/translation" "^3.2.3" + "@jupyterlab/application" "^3.2.4" + "@jupyterlab/apputils" "^3.2.4" + "@jupyterlab/translation" "^3.2.4" "@lumino/coreutils" "^1.5.3" "@lumino/disposable" "^1.4.3" "@lumino/signaling" "^1.4.3" "@lumino/widgets" "^1.19.0" react "^17.0.1" -"@jupyterlab/rendermime-extension@^3.2.0": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/rendermime-extension/-/rendermime-extension-3.2.3.tgz#9746d7a48389cd818d1e719a81208995148fbbba" - integrity sha512-vD08bH/ajV2bl2wZiPYHsiD+a/9BgSXRiVrAuBj5GniDpulgHgNPJD+0kcnmdO+SnzN6SOiRKXNHoUmNyROq5w== +"@jupyterlab/rendermime-extension@^3.0.0": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/rendermime-extension/-/rendermime-extension-3.2.4.tgz#1ac9cf41fd77235178b23e68f78ce8e6c8e50a04" + integrity sha512-I4xk5QGkiLNzP75H++kzh1dlqRgpxNZZXvoifsx+MwqLkhyLA6k9P9c1mC4NVl9Bisfl55j3MM1ierVNT03hFA== dependencies: - "@jupyterlab/application" "^3.2.3" - "@jupyterlab/apputils" "^3.2.3" - "@jupyterlab/docmanager" "^3.2.3" - "@jupyterlab/rendermime" "^3.2.3" - "@jupyterlab/translation" "^3.2.3" + "@jupyterlab/application" "^3.2.4" + "@jupyterlab/apputils" "^3.2.4" + "@jupyterlab/docmanager" "^3.2.4" + "@jupyterlab/rendermime" "^3.2.4" + "@jupyterlab/translation" "^3.2.4" -"@jupyterlab/rendermime-interfaces@^3.2.0", "@jupyterlab/rendermime-interfaces@^3.2.3": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/rendermime-interfaces/-/rendermime-interfaces-3.2.3.tgz#311bf1461470def3a7e930298e25de7fd71c867b" - integrity sha512-NQz/0Iz+E5VlbffrmtLENXZCAMU8ihZSz4PYhQRFMEkpsrpRelHLxxG+0vSeZpWG94abSuboSs5tgIUFGPNf7A== +"@jupyterlab/rendermime-interfaces@^3.0.0", "@jupyterlab/rendermime-interfaces@^3.2.4": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/rendermime-interfaces/-/rendermime-interfaces-3.2.4.tgz#671e52465fa4e8fba54faafb21642b9dffea45f5" + integrity sha512-/zVDeW2ZaRMzQW0EFj5v/hjpJNSDfhJfbx96rprYZC8d0qEvm3Bxyyda4CvsRhmaJKMTAQLW+oOEBn1kNbFTmg== dependencies: - "@jupyterlab/translation" "^3.2.3" + "@jupyterlab/translation" "^3.2.4" "@lumino/coreutils" "^1.5.3" "@lumino/widgets" "^1.19.0" -"@jupyterlab/rendermime@^3.2.3": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/rendermime/-/rendermime-3.2.3.tgz#6aea8d7c65248c4042081f6110fd67d885692eb1" - integrity sha512-/pciOXHkU3HyhkJT8EuRQgWa6Cc248D41KH6IqyiLQv5DHi/wYWkXXBZhiVPX/gDkT1owf5Wr3i5h/NbMfozEw== - dependencies: - "@jupyterlab/apputils" "^3.2.3" - "@jupyterlab/codemirror" "^3.2.3" - "@jupyterlab/coreutils" "^5.2.3" - "@jupyterlab/nbformat" "^3.2.3" - "@jupyterlab/observables" "^4.2.3" - "@jupyterlab/rendermime-interfaces" "^3.2.3" - "@jupyterlab/services" "^6.2.3" - "@jupyterlab/translation" "^3.2.3" +"@jupyterlab/rendermime@^3.2.4": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/rendermime/-/rendermime-3.2.4.tgz#b3826621eba13b280092e198dd1c896203a1c48d" + integrity sha512-G/CS2rMLM+rp5xrQ09Aq2Q2w+c3WN2XvLnEM091ELrfl7WGNytu9ms1bGSaM/ZCXw1o7FDRo1t4Yj066XtkB8A== + dependencies: + "@jupyterlab/apputils" "^3.2.4" + "@jupyterlab/codemirror" "^3.2.4" + "@jupyterlab/coreutils" "^5.2.4" + "@jupyterlab/nbformat" "^3.2.4" + "@jupyterlab/observables" "^4.2.4" + "@jupyterlab/rendermime-interfaces" "^3.2.4" + "@jupyterlab/services" "^6.2.4" + "@jupyterlab/translation" "^3.2.4" "@lumino/algorithm" "^1.3.3" "@lumino/coreutils" "^1.5.3" "@lumino/messaging" "^1.4.3" @@ -1337,16 +1350,16 @@ lodash.escape "^4.0.1" marked "^2.0.0" -"@jupyterlab/services@^6.2.0", "@jupyterlab/services@^6.2.3": - version "6.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/services/-/services-6.2.3.tgz#3ed5620d3129703bfbf6151953bcb8f9db52a6a4" - integrity sha512-ckhZfBmveQzQnsGcf9Ka6A1Rr+Lj5PSzn6yHQktMdP8PXdTag4y3IIV/6MAtNAnuKrbArwUrHGiSmUtZD7lylA== - dependencies: - "@jupyterlab/coreutils" "^5.2.3" - "@jupyterlab/nbformat" "^3.2.3" - "@jupyterlab/observables" "^4.2.3" - "@jupyterlab/settingregistry" "^3.2.3" - "@jupyterlab/statedb" "^3.2.3" +"@jupyterlab/services@^6.0.0", "@jupyterlab/services@^6.2.4": + version "6.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/services/-/services-6.2.4.tgz#bf6262f9807bbf341d02532736607c9fa085fd58" + integrity sha512-WpcKLDkwpq9jUQXUWJJn1cybxwwe8YMC8fdkVnI7RmCg5n0tGSV8+urfUv5Q8DdMdkAJnzSHEC6kIRbGoFpceQ== + dependencies: + "@jupyterlab/coreutils" "^5.2.4" + "@jupyterlab/nbformat" "^3.2.4" + "@jupyterlab/observables" "^4.2.4" + "@jupyterlab/settingregistry" "^3.2.4" + "@jupyterlab/statedb" "^3.2.4" "@lumino/algorithm" "^1.3.3" "@lumino/coreutils" "^1.5.3" "@lumino/disposable" "^1.4.3" @@ -1355,12 +1368,12 @@ node-fetch "^2.6.0" ws "^7.4.6" -"@jupyterlab/settingregistry@^3.2.3": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/settingregistry/-/settingregistry-3.2.3.tgz#9a256560475d46aa2089c1950c94c45becf47036" - integrity sha512-z+//IitEe82gD5ZTQkMiIb13/d0CACyW5TKdgp0A3CfK9TZuSFyVMd4j2YrWevWDVuisHU5n8fLuN57S/d9fRw== +"@jupyterlab/settingregistry@^3.2.4": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/settingregistry/-/settingregistry-3.2.4.tgz#6d863891702769769c4840435602206be06e84a6" + integrity sha512-kyr6y32YTD4S2XGthy17yRa6BdEQyuXqIl2hIKrn9oPdfM0OF3TDkAByB8W79KLQojsKcmGka19LvQov/N4+6A== dependencies: - "@jupyterlab/statedb" "^3.2.3" + "@jupyterlab/statedb" "^3.2.4" "@lumino/commands" "^1.12.0" "@lumino/coreutils" "^1.5.3" "@lumino/disposable" "^1.4.3" @@ -1368,34 +1381,34 @@ ajv "^6.12.3" json5 "^2.1.1" -"@jupyterlab/shared-models@^3.2.3": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/shared-models/-/shared-models-3.2.3.tgz#a9602ef2eec8e6b7bbcafa9b98b67ac75464a4e9" - integrity sha512-nNQQeQ4d2UK0DwnUyn1IPgJ1eYRsBkoz5zj/nH+WxjscWIA8ldz295l7HGQNcXlO5tvLFTQMZ7nC1XVcko76iA== +"@jupyterlab/shared-models@^3.2.4": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/shared-models/-/shared-models-3.2.4.tgz#979e000985e1cd3d3d6e96c71d010ec6aa61bb26" + integrity sha512-Jr2Yz5L0GneKhrFpomm3LW5eGDfRaxWt0c+MT/eFXWmqvVkOKW4N3qPEfP1HNIMqagcC1OoN2pvZAWkE3qQYjA== dependencies: - "@jupyterlab/nbformat" "^3.2.3" + "@jupyterlab/nbformat" "^3.2.4" "@lumino/coreutils" "^1.5.3" "@lumino/disposable" "^1.4.3" "@lumino/signaling" "^1.4.3" y-protocols "^1.0.5" yjs "^13.5.17" -"@jupyterlab/shortcuts-extension@^3.2.0": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/shortcuts-extension/-/shortcuts-extension-3.2.3.tgz#4c9e254c36cdfc70c1165edd1722142f26d5abdd" - integrity sha512-5sr3Fm2AGIMsrT7ZcUduwRJ9hF/kiO+hHhDCFalkwF76KCjAjZIyjh79cmgl6Ct6qfUZBGFViPXN8AuP9A4lIw== +"@jupyterlab/shortcuts-extension@^3.0.0": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/shortcuts-extension/-/shortcuts-extension-3.2.4.tgz#6dd59917bf517af809019509c83dfc3240469e98" + integrity sha512-emEIg1TUY4J6x/9T2QzSxkXmwU+LeROJMNSyBIo2oJzgEBNWyZfxU9+c0w3h5J3PLAdQzxclxYRp9G9iMBT+Tg== dependencies: - "@jupyterlab/application" "^3.2.3" - "@jupyterlab/settingregistry" "^3.2.3" - "@jupyterlab/translation" "^3.2.3" + "@jupyterlab/application" "^3.2.4" + "@jupyterlab/settingregistry" "^3.2.4" + "@jupyterlab/translation" "^3.2.4" "@lumino/commands" "^1.12.0" "@lumino/coreutils" "^1.5.3" "@lumino/disposable" "^1.4.3" -"@jupyterlab/statedb@^3.2.3": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/statedb/-/statedb-3.2.3.tgz#abb1680e9af467f976c621a80c52c2ec832718a8" - integrity sha512-pQmZwgaxXLQPtN7milGedOh/4t34HkxOqhJW0GjL8lWhkxuvjWdZHrnwOclj0HScp4bXj9puMn8/MDPUx32mbg== +"@jupyterlab/statedb@^3.2.4": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/statedb/-/statedb-3.2.4.tgz#6581223bf4aac29f2aa8c2fe99e6307c7b88a8a8" + integrity sha512-md9AlnrW1pzZTQiVUIJrZgijB3CsSs2J05V5cywo4/sgjwBTO1YGKQDEi6qtMAeO03gxfomGK7xLpoP+2Uaa2A== dependencies: "@lumino/commands" "^1.12.0" "@lumino/coreutils" "^1.5.3" @@ -1403,16 +1416,16 @@ "@lumino/properties" "^1.2.3" "@lumino/signaling" "^1.4.3" -"@jupyterlab/statusbar@^3.2.3": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/statusbar/-/statusbar-3.2.3.tgz#542e705cb16385017e7a927dc474933272dbc1ca" - integrity sha512-hyrVaKQ2qJiY18i+MtqU8QwWpar8CaCRXriWLoGjiqGy0V/21z72T1BJidwB/dVvCf2RcMYdM9scnNHYasT5KA== - dependencies: - "@jupyterlab/apputils" "^3.2.3" - "@jupyterlab/codeeditor" "^3.2.3" - "@jupyterlab/services" "^6.2.3" - "@jupyterlab/translation" "^3.2.3" - "@jupyterlab/ui-components" "^3.2.3" +"@jupyterlab/statusbar@^3.2.4": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/statusbar/-/statusbar-3.2.4.tgz#0d44dcdb354e199c35de5664938dd41a2b276c4f" + integrity sha512-1oxNr926SJkxJ0b+hoHEWaFOnv+LVY6MWmv0wQvVzwCVDaQ3IjLXtOYheSXx7WtP4G3NjH2G/wM4mzqMs1JDbQ== + dependencies: + "@jupyterlab/apputils" "^3.2.4" + "@jupyterlab/codeeditor" "^3.2.4" + "@jupyterlab/services" "^6.2.4" + "@jupyterlab/translation" "^3.2.4" + "@jupyterlab/ui-components" "^3.2.4" "@lumino/algorithm" "^1.3.3" "@lumino/coreutils" "^1.5.3" "@lumino/disposable" "^1.4.3" @@ -1423,53 +1436,53 @@ react "^17.0.1" typestyle "^2.0.4" -"@jupyterlab/theme-dark-extension@^3.2.0": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/theme-dark-extension/-/theme-dark-extension-3.2.3.tgz#bdaba6b5560033b162663b6f9318c18183cbe1b5" - integrity sha512-SxO4fxKmmf9ulG3oMb7rnZmmNohkbI6OmcM1+64g93WAIRtF05OTYal1SN+2XriHXC3w6AFNpVxXsRrlESN5Kw== +"@jupyterlab/theme-dark-extension@^3.0.0": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/theme-dark-extension/-/theme-dark-extension-3.2.4.tgz#a76e3166d0bdc025aa834c95bcd5bf0251ccf5ce" + integrity sha512-3PiXtsRkiOa89MycSc0kIsPGel9juj2F3IHiAHHwmdzgWxSlZSQZlCmW/YuP7e7c34640aTJFcIij5SB92WdCg== dependencies: - "@jupyterlab/application" "^3.2.3" - "@jupyterlab/apputils" "^3.2.3" - "@jupyterlab/translation" "^3.2.3" + "@jupyterlab/application" "^3.2.4" + "@jupyterlab/apputils" "^3.2.4" + "@jupyterlab/translation" "^3.2.4" -"@jupyterlab/theme-light-extension@^3.2.0": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/theme-light-extension/-/theme-light-extension-3.2.3.tgz#44796c436e045e90b49a67b03c1a664095d4f328" - integrity sha512-qpxl+bu76ydQ+qz31GecpWOB6LFwEURmjo4i/sDuhdZ2dehBzctSpfpuJyGfhfsse5DFO/mFNwX/RkqdTlts8A== +"@jupyterlab/theme-light-extension@^3.0.0": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/theme-light-extension/-/theme-light-extension-3.2.4.tgz#d3eb1c316dcf3bba1466ef19e8ca9dc36f84fca7" + integrity sha512-ajQF3bFkdOdsMQIS6EmQZvrX2+yf4ljlvyjn9brMsaiwNzJocYqVtOz/bs6f0rMtWvibjKjvOiUwvvQiuN5TPA== dependencies: - "@jupyterlab/application" "^3.2.3" - "@jupyterlab/apputils" "^3.2.3" - "@jupyterlab/translation" "^3.2.3" + "@jupyterlab/application" "^3.2.4" + "@jupyterlab/apputils" "^3.2.4" + "@jupyterlab/translation" "^3.2.4" -"@jupyterlab/translation-extension@^3.2.0": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/translation-extension/-/translation-extension-3.2.3.tgz#e9f47e5249197ed1066e908708d23d6251e03736" - integrity sha512-9PqobatAg0HMVl5g6WKf7Qkzi3U+O+3otym5HxGjSk4kWaohi8j53MvkGlFliftPgrQAU8C8DvDt2zW7UqIInA== +"@jupyterlab/translation-extension@^3.0.0": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/translation-extension/-/translation-extension-3.2.4.tgz#5462fd841fa02f127cdae2ba7a075c84601f9148" + integrity sha512-AHyzdNWWfORJSX6MkpHBF8TNwaHkTyfNn6cMSLh5h71FbzgZMnhV7EE9RrdfgCMJaS//A3WN+T6lJJRSkTaxxg== dependencies: - "@jupyterlab/application" "^3.2.3" - "@jupyterlab/apputils" "^3.2.3" - "@jupyterlab/mainmenu" "^3.2.3" - "@jupyterlab/settingregistry" "^3.2.3" - "@jupyterlab/translation" "^3.2.3" + "@jupyterlab/application" "^3.2.4" + "@jupyterlab/apputils" "^3.2.4" + "@jupyterlab/mainmenu" "^3.2.4" + "@jupyterlab/settingregistry" "^3.2.4" + "@jupyterlab/translation" "^3.2.4" -"@jupyterlab/translation@^3.2.0", "@jupyterlab/translation@^3.2.3": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/translation/-/translation-3.2.3.tgz#d50c97eb3c5dd9c4896b46158669f8fbc958d007" - integrity sha512-1pjLSbKhfAK0pZwd0iSCpMgJO4RB7wvrbpw8RC3vwhXYoRV5YTmqwIt4e3n/O1FUzG8UxD+XWeZqlBCbpAsQ3Q== +"@jupyterlab/translation@^3.2.0", "@jupyterlab/translation@^3.2.4": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/translation/-/translation-3.2.4.tgz#948c548f304c5d2d18878f2a578c8cee5ea43ef4" + integrity sha512-FTXhNw/KRmGGR/stWWyaeyyha3Y7k1jh/dVJIXMO5xlT+zzFHvquGCiMeMZR20P+xBDstrgX8Ei/LhG+gkx0yw== dependencies: - "@jupyterlab/coreutils" "^5.2.3" - "@jupyterlab/services" "^6.2.3" - "@jupyterlab/statedb" "^3.2.3" + "@jupyterlab/coreutils" "^5.2.4" + "@jupyterlab/services" "^6.2.4" + "@jupyterlab/statedb" "^3.2.4" "@lumino/coreutils" "^1.5.3" -"@jupyterlab/ui-components@^3.2.0", "@jupyterlab/ui-components@^3.2.3": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/ui-components/-/ui-components-3.2.3.tgz#2af6d66466dd72f4f0c2ada6b0e66cae94ffd367" - integrity sha512-DWS/kasCoWzE9tK/GJtIO3F9nZGkZOCAA+YiZwJbHqwZhHcpVP/RrzSYFQdQSOpTd2yPumprDhjID4Wcsgk6Fw== +"@jupyterlab/ui-components@^3.2.0", "@jupyterlab/ui-components@^3.2.4": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/ui-components/-/ui-components-3.2.4.tgz#ed31720423e6430ab0d63201b1c944cc26f4ff36" + integrity sha512-uKxv8U/6TdAMbs0kBm142oAx9R4FcPk+CK5pbsBTInq+nvCmUlSYSAFEnuTbfNLeKQlWHdj8N2Q7upLFgfEs2w== dependencies: "@blueprintjs/core" "^3.36.0" "@blueprintjs/select" "^3.15.0" - "@jupyterlab/coreutils" "^5.2.3" + "@jupyterlab/coreutils" "^5.2.4" "@lumino/algorithm" "^1.3.3" "@lumino/commands" "^1.12.0" "@lumino/coreutils" "^1.5.3" @@ -1481,12 +1494,12 @@ react-dom "^17.0.1" typestyle "^2.0.4" -"@jupyterlab/vega5-extension@^3.2.0": - version "3.2.3" - resolved "https://registry.yarnpkg.com/@jupyterlab/vega5-extension/-/vega5-extension-3.2.3.tgz#78b1df2573a1a288a986e9ff563f50a9ccd55c5a" - integrity sha512-YNRNHOOLUgsfAyAOvK63x6q2U641/CF9RBYFhVoBdcFacVL56h9hS1PGYJTBoBmztIGP+UtGVa3cr2ycyjqpHQ== +"@jupyterlab/vega5-extension@^3.0.0": + version "3.2.4" + resolved "https://registry.yarnpkg.com/@jupyterlab/vega5-extension/-/vega5-extension-3.2.4.tgz#b9c2f9d6c29fb04e49fbc8aa26062ee323a58a7f" + integrity sha512-nPrc1rJ8ObbwaNnadcByHNc2rOiEygsPGYzXBt6jQJhgiNSZM1AKQn4PVEzw0TjtJ5FJUZ87bDvh8I/84V0NMw== dependencies: - "@jupyterlab/rendermime-interfaces" "^3.2.3" + "@jupyterlab/rendermime-interfaces" "^3.2.4" "@lumino/coreutils" "^1.5.3" "@lumino/widgets" "^1.19.0" vega "^5.20.0" @@ -2551,9 +2564,9 @@ "@types/estree" "*" "@types/eslint@*": - version "7.28.2" - resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-7.28.2.tgz#0ff2947cdd305897c52d5372294e8c76f351db68" - integrity sha512-KubbADPkfoU75KgKeKLsFHXnU4ipH7wYg0TRT33NK3N3yiu7jlFAAoygIWBV+KbuHx/G+AvuGX6DllnK35gfJA== + version "8.2.0" + resolved "https://registry.yarnpkg.com/@types/eslint/-/eslint-8.2.0.tgz#afd0519223c29c347087542cbaee2fedc0873b16" + integrity sha512-74hbvsnc+7TEDa1z5YLSe4/q8hGYB3USNvCuzHUJrjPV6hXaq8IXcngCrHkuvFt0+8rFz7xYXrHgNayIX0UZvQ== dependencies: "@types/estree" "*" "@types/json-schema" "*" @@ -2617,7 +2630,12 @@ resolved "https://registry.yarnpkg.com/@types/minimist/-/minimist-1.2.2.tgz#ee771e2ba4b3dc5b372935d549fd9617bf345b8c" integrity sha512-jhuKLIRrhvCPLqwPcx6INqmKeiA5EWrsCOPhrlFSrbrmU4ZMPjj5Ul/oLCMDO98XRUIwVm78xICz4EPCektzeQ== -"@types/node@*", "@types/node@>= 8": +"@types/node@*": + version "16.11.9" + resolved "https://registry.yarnpkg.com/@types/node/-/node-16.11.9.tgz#879be3ad7af29f4c1a5c433421bf99fab7047185" + integrity sha512-MKmdASMf3LtPzwLyRrFjtFFZ48cMf8jmX5VRYrDQiJa8Ybu5VAmkqBWqKU8fdCwD8ysw4mQ9nrEHvzg6gunR7A== + +"@types/node@>= 8": version "16.11.7" resolved "https://registry.yarnpkg.com/@types/node/-/node-16.11.7.tgz#36820945061326978c42a01e56b61cd223dfdc42" integrity sha512-QB5D2sqfSjCmTuWcBWyJ+/44bcjO7VbjSbOE0ucoVbAsSNQc4Lt6QkgkVXkTDwkL4z/beecZNDvVX15D4P8Jbw== @@ -2643,9 +2661,9 @@ integrity sha512-rZ5drC/jWjrArrS8BR6SIr4cWpW09RNTYt9AMZo3Jwwif+iacXAqgVjm0B0Bv/S1jhDXKHqRVNCbACkJ89RAnQ== "@types/react@^17.0.0": - version "17.0.34" - resolved "https://registry.yarnpkg.com/@types/react/-/react-17.0.34.tgz#797b66d359b692e3f19991b6b07e4b0c706c0102" - integrity sha512-46FEGrMjc2+8XhHXILr+3+/sTe3OfzSPU9YGKILLrUYbQ1CLQC9Daqo1KzENGXAWwrFwiY0l4ZbF20gRvgpWTg== + version "17.0.35" + resolved "https://registry.yarnpkg.com/@types/react/-/react-17.0.35.tgz#217164cf830267d56cd1aec09dcf25a541eedd4c" + integrity sha512-r3C8/TJuri/SLZiiwwxQoLAoavaczARfT9up9b4Jr65+ErAUX3MIkU0oMOQnrpfgHme8zIqZLX7O5nnjm5Wayw== dependencies: "@types/prop-types" "*" "@types/scheduler" "*" @@ -3086,11 +3104,16 @@ acorn@^7.1.0, acorn@^7.1.1, acorn@^7.4.0: resolved "https://registry.yarnpkg.com/acorn/-/acorn-7.4.1.tgz#feaed255973d2e77555b83dbc08851a6c63520fa" integrity sha512-nQyp0o1/mNdbTO1PO6kHkwSrmgZ0MT/jCCpNiwbUjGoRN4dlBhqJtoQuCnEOKzgTVwg0ZWiCoQy6SxMebQVh8A== -acorn@^8.0.4, acorn@^8.2.4, acorn@^8.4.1: +acorn@^8.0.4, acorn@^8.2.4: version "8.5.0" resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.5.0.tgz#4512ccb99b3698c752591e9bb4472e38ad43cee2" integrity sha512-yXbYeFy+jUuYd3/CDcg2NkIYE991XYX/bje7LmjJigUciaeO1JR4XxXgCIV1/Zc/dRuFEyw1L0pbA+qynJkW5Q== +acorn@^8.4.1: + version "8.6.0" + resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.6.0.tgz#e3692ba0eb1a0c83eaa4f37f5fa7368dd7142895" + integrity sha512-U1riIR+lBSNi3IbxtaHOIKdH8sLFv3NYfNv8sg7ZsNhcfl4HF2++BfqqrNAxoCLQW1iiylOj76ecnaUxz+z9yw== + agent-base@4, agent-base@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-4.3.0.tgz#8165f01c436009bccad0b1d122f05ed770efc6ee" @@ -3693,7 +3716,18 @@ browser-process-hrtime@^1.0.0: resolved "https://registry.yarnpkg.com/browser-process-hrtime/-/browser-process-hrtime-1.0.0.tgz#3c9b4b7d782c8121e56f10106d84c0d0ffc94626" integrity sha512-9o5UecI3GhkpM6DrXr69PblIuWxPKk9Y0jHBRhdocZ2y7YECBFCsHm79Pr3OyR2AvjhDkabFJaDJMYRazHgsow== -browserslist@^4.14.5, browserslist@^4.17.5: +browserslist@^4.14.5: + version "4.18.1" + resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.18.1.tgz#60d3920f25b6860eb917c6c7b185576f4d8b017f" + integrity sha512-8ScCzdpPwR2wQh8IT82CA2VgDwjHyqMovPBZSNH54+tm4Jk2pCuv90gmAdH6J84OCRWi0b4gMe6O6XPXuJnjgQ== + dependencies: + caniuse-lite "^1.0.30001280" + electron-to-chromium "^1.3.896" + escalade "^3.1.1" + node-releases "^2.0.1" + picocolors "^1.0.0" + +browserslist@^4.17.5: version "4.17.6" resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.17.6.tgz#c76be33e7786b497f66cad25a73756c8b938985d" integrity sha512-uPgz3vyRTlEiCv4ee9KlsKgo2V6qPk7Jsn0KAn2OBqbqKo3iNcPEC1Ti6J4dwnz+aIRfEEEuOzC9IBk8tXUomw== @@ -3937,10 +3971,10 @@ caniuse-db@^1.0.30000153, caniuse-db@^1.0.30000214: resolved "https://registry.yarnpkg.com/caniuse-db/-/caniuse-db-1.0.30001280.tgz#e3a26cfb089933bd702e0a2f18d5e1b9f940ace4" integrity sha512-b22HvM+u7BBIIG2O1K7dZC2UGVfgnQEM27tDqHRJCaDW5mkQ5/dW+DPRJAmt9xF8fryLN8fEjk6UygMohzzWYA== -caniuse-lite@^1.0.30001274: - version "1.0.30001280" - resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001280.tgz#066a506046ba4be34cde5f74a08db7a396718fb7" - integrity sha512-kFXwYvHe5rix25uwueBxC569o53J6TpnGu0BEEn+6Lhl2vsnAumRFWEBhDft1fwyo6m1r4i+RqA4+163FpeFcA== +caniuse-lite@^1.0.30001274, caniuse-lite@^1.0.30001280: + version "1.0.30001282" + resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001282.tgz#38c781ee0a90ccfe1fe7fefd00e43f5ffdcb96fd" + integrity sha512-YhF/hG6nqBEllymSIjLtR2iWDDnChvhnVJqp+vloyt2tEHFG1yBR+ac2B/rOw0qOK0m0lEXU2dv4E/sMk5P9Kg== capture-exit@^2.0.0: version "2.0.0" @@ -4326,6 +4360,11 @@ compare-func@^2.0.0: array-ify "^1.0.0" dot-prop "^5.1.0" +compare-versions@^3.6.0: + version "3.6.0" + resolved "https://registry.yarnpkg.com/compare-versions/-/compare-versions-3.6.0.tgz#1a5689913685e5a87637b8d3ffca75514ec41d62" + integrity sha512-W6Af2Iw1z4CB7q4uU4hv646dW9GQuBM+YpC0UvUCWSD8w90SJjp+ujJuXaEMtAXBtSqGfMPuFOVn4/+FlaqfBA== + component-emitter@^1.2.1: version "1.3.0" resolved "https://registry.yarnpkg.com/component-emitter/-/component-emitter-1.3.0.tgz#16e4070fba8ae29b679f2215853ee181ab2eabc0" @@ -4555,7 +4594,7 @@ cors@2.8.5: object-assign "^4" vary "^1" -cosmiconfig@^5.1.0, cosmiconfig@^5.2.1: +cosmiconfig@^5.1.0: version "5.2.1" resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-5.2.1.tgz#040f726809c591e77a17c0a3626ca45b4f168b1a" integrity sha512-H65gsXo1SKjf8zmrJ67eJk8aIRKV5ff2D4uKZIBZShbhGSpEmsQOPW/SKMKYhSTrqR7ufy6RP69rPogdaPh/kA== @@ -4698,7 +4737,12 @@ csstype@2.6.9: resolved "https://registry.yarnpkg.com/csstype/-/csstype-2.6.9.tgz#05141d0cd557a56b8891394c1911c40c8a98d098" integrity sha512-xz39Sb4+OaTsULgUERcCk+TJj8ylkL4aSVDQiX/ksxbELSqwkgt4d4RD7fovIdgJGSuNYqwZEiVjYY5l0ask+Q== -csstype@^3.0.2, csstype@^3.0.9, csstype@~3.0.3: +csstype@^3.0.2, csstype@~3.0.3: + version "3.0.10" + resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.0.10.tgz#2ad3a7bed70f35b965707c092e5f30b327c290e5" + integrity sha512-2u44ZG2OcNUO9HDp/Jl8C07x6pU/eTR3ncV91SiK3dhG9TWvRVsCoJw14Ckx5DgWkzGA3waZWO3d7pgqpUI/XA== + +csstype@^3.0.9: version "3.0.9" resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.0.9.tgz#6410af31b26bd0520933d02cbc64fce9ce3fbf0b" integrity sha512-rpw6JPxK6Rfg1zLOYCSwle2GFOOsnjmDYDaBwEcwoOg4qlsIVCN789VkBZDJAGi4T07gI4YSutR43t9Zz4Lzuw== @@ -5275,10 +5319,10 @@ ee-first@1.1.1: resolved "https://registry.yarnpkg.com/ee-first/-/ee-first-1.1.1.tgz#590c61156b0ae2f4f0255732a158b266bc56b21d" integrity sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0= -electron-to-chromium@^1.3.886: - version "1.3.895" - resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.895.tgz#9b0f8f2e32d8283bbb200156fd5d8dfd775f31ed" - integrity sha512-9Ww3fB8CWctjqHwkOt7DQbMZMpal2x2reod+/lU4b9axO1XJEDUpPMBxs7YnjLhhqpKXIIB5SRYN/B4K0QpvyQ== +electron-to-chromium@^1.3.886, electron-to-chromium@^1.3.896: + version "1.3.904" + resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.3.904.tgz#52a353994faeb0f2a9fab3606b4e0614d1af7b58" + integrity sha512-x5uZWXcVNYkTh4JubD7KSC1VMKz0vZwJUqVwY3ihsW0bst1BXDe494Uqbg3Y0fDGVjJqA8vEeGuvO5foyH2+qw== emittery@^0.7.1: version "0.7.2" @@ -6143,6 +6187,21 @@ find-up@^4.0.0, find-up@^4.1.0: locate-path "^5.0.0" path-exists "^4.0.0" +find-up@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/find-up/-/find-up-5.0.0.tgz#4c92819ecb7083561e4f4a240a86be5198f536fc" + integrity sha512-78/PXT1wlLLDgTzDs7sjq9hzz0vXD+zn+7wypEe4fXQxCmdmqfGsEPQxmiCSQI3ajFV91bVSsvNtrJRiW6nGng== + dependencies: + locate-path "^6.0.0" + path-exists "^4.0.0" + +find-versions@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/find-versions/-/find-versions-4.0.0.tgz#3c57e573bf97769b8cb8df16934b627915da4965" + integrity sha512-wgpWy002tA+wgmO27buH/9KzyEOQnKsG/R0yrcjPT9BOFm0zRBVQbZ95nRGXWMywS8YR5knRbpohio0bcJABxQ== + dependencies: + semver-regex "^3.1.2" + flat-cache@^3.0.4: version "3.0.4" resolved "https://registry.yarnpkg.com/flat-cache/-/flat-cache-3.0.4.tgz#61b0338302b2fe9f957dcc32fc2a87f1c3048b11" @@ -6412,11 +6471,6 @@ get-stdin@^6.0.0: resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-6.0.0.tgz#9e09bf712b360ab9225e812048f71fde9c89657b" integrity sha512-jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g== -get-stdin@^7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/get-stdin/-/get-stdin-7.0.0.tgz#8d5de98f15171a125c5e516643c7a6d0ea8a96f6" - integrity sha512-zRKcywvrXlXsA0v0i9Io4KDRaAw7+a1ZpjRwl9Wox8PFlVCCHra7E9c4kqXCoCM9nR5tBkaTTZRBoCm60bFqTQ== - get-stream@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/get-stream/-/get-stream-3.0.0.tgz#8e943d1358dc37555054ecbe2edb05aa174ede14" @@ -6980,22 +7034,21 @@ humanize-ms@^1.2.1: dependencies: ms "^2.0.0" -husky@^3: - version "3.1.0" - resolved "https://registry.yarnpkg.com/husky/-/husky-3.1.0.tgz#5faad520ab860582ed94f0c1a77f0f04c90b57c0" - integrity sha512-FJkPoHHB+6s4a+jwPqBudBDvYZsoQW5/HBuMSehC8qDiCe50kpcxeqFoDSlow+9I6wg47YxBoT3WxaURlrDIIQ== +husky@^4.2.5: + version "4.3.8" + resolved "https://registry.yarnpkg.com/husky/-/husky-4.3.8.tgz#31144060be963fd6850e5cc8f019a1dfe194296d" + integrity sha512-LCqqsB0PzJQ/AlCgfrfzRe3e3+NvmefAdKQhRYpxS4u6clblBoDdzzvHi8fmxKRzvMxPY/1WZWzomPZww0Anow== dependencies: - chalk "^2.4.2" + chalk "^4.0.0" ci-info "^2.0.0" - cosmiconfig "^5.2.1" - execa "^1.0.0" - get-stdin "^7.0.0" + compare-versions "^3.6.0" + cosmiconfig "^7.0.0" + find-versions "^4.0.0" opencollective-postinstall "^2.0.2" - pkg-dir "^4.2.0" + pkg-dir "^5.0.0" please-upgrade-node "^3.2.0" - read-pkg "^5.2.0" - run-node "^1.0.0" slash "^3.0.0" + which-pm-runs "^1.0.0" iconv-lite@0.4, iconv-lite@0.4.24, iconv-lite@^0.4.24: version "0.4.24" @@ -8583,10 +8636,10 @@ levn@~0.3.0: prelude-ls "~1.1.2" type-check "~0.3.2" -lib0@^0.2.31, lib0@^0.2.42: - version "0.2.42" - resolved "https://registry.yarnpkg.com/lib0/-/lib0-0.2.42.tgz#6d8bf1fb8205dec37a953c521c5ee403fd8769b0" - integrity sha512-8BNM4MiokEKzMvSxTOC3gnCBisJH+jL67CnSnqzHv3jli3pUvGC8wz+0DQ2YvGr4wVQdb2R2uNNPw9LEpVvJ4Q== +lib0@^0.2.31, lib0@^0.2.42, lib0@^0.2.43: + version "0.2.43" + resolved "https://registry.yarnpkg.com/lib0/-/lib0-0.2.43.tgz#1c2ed1fb2e9fe136e92abef7ca56875f2ee66b07" + integrity sha512-MJ1KLoz5p3gljIUBfdjjNuL/wlWHHK6+DrcIRhzSRLvtAu1XNdRtRGATYM51KSTI0P2nxJZFQM8rwCH6ga9KUw== dependencies: isomorphic.js "^0.2.4" @@ -8860,6 +8913,13 @@ locate-path@^5.0.0: dependencies: p-locate "^4.1.0" +locate-path@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/locate-path/-/locate-path-6.0.0.tgz#55321eb309febbc59c4801d931a72452a681d286" + integrity sha512-iPZK6eYjbxRu3uB4/WZ3EsEIMJFMqAoopl3R+zuq0UjcAm/MO6KCweDgPfP3elTztoKP3KtnVHxTn2NHBSDVUw== + dependencies: + p-locate "^5.0.0" + lock-verify@^2.0.2, lock-verify@^2.1.0: version "2.2.1" resolved "https://registry.yarnpkg.com/lock-verify/-/lock-verify-2.2.1.tgz#81107948c51ed16f97b96ff8b60675affb243fc1" @@ -10359,6 +10419,13 @@ p-locate@^4.1.0: dependencies: p-limit "^2.2.0" +p-locate@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/p-locate/-/p-locate-5.0.0.tgz#83c8315c6785005e3bd021839411c9e110e6d834" + integrity sha512-LaNjtRWUBY++zB5nE/NwcaoMylSPk+S+ZHNB1TzdbMJMny6dynpAGt7X/tl/QYq3TIeE6nxHppbo2LGymrG5Pw== + dependencies: + p-limit "^3.0.2" + p-map-series@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/p-map-series/-/p-map-series-1.0.0.tgz#bf98fe575705658a9e1351befb85ae4c1f07bdca" @@ -10745,6 +10812,13 @@ pkg-dir@^4.1.0, pkg-dir@^4.2.0: dependencies: find-up "^4.0.0" +pkg-dir@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/pkg-dir/-/pkg-dir-5.0.0.tgz#a02d6aebe6ba133a928f74aec20bafdfe6b8e760" + integrity sha512-NPE8TDbzl/3YQYY7CSS228s3g2ollTFnc+Qi3tqmqJp9Vg2ovUpixcJEo2HJScN2Ez+kEaal6y70c0ehqJBJeA== + dependencies: + find-up "^5.0.0" + pkginfo@0.4.1: version "0.4.1" resolved "https://registry.yarnpkg.com/pkginfo/-/pkginfo-0.4.1.tgz#b5418ef0439de5425fc4995042dced14fb2a84ff" @@ -11830,11 +11904,6 @@ run-async@^2.2.0, run-async@^2.4.0: resolved "https://registry.yarnpkg.com/run-async/-/run-async-2.4.1.tgz#8440eccf99ea3e70bd409d49aab88e10c189a455" integrity sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ== -run-node@^1.0.0: - version "1.0.0" - resolved "https://registry.yarnpkg.com/run-node/-/run-node-1.0.0.tgz#46b50b946a2aa2d4947ae1d886e9856fd9cabe5e" - integrity sha512-kc120TBlQ3mih1LSzdAJXo4xn/GWS2ec0l3S+syHDXP9uRr0JAT8Qd3mdMuyjqCzeZktgP3try92cEgf9Nks8A== - run-parallel@^1.1.9: version "1.2.0" resolved "https://registry.yarnpkg.com/run-parallel/-/run-parallel-1.2.0.tgz#66d1368da7bdf921eb9d95bd1a9229e7f21a43ee" @@ -11987,6 +12056,11 @@ semver-diff@^2.0.0: dependencies: semver "^5.0.3" +semver-regex@^3.1.2: + version "3.1.3" + resolved "https://registry.yarnpkg.com/semver-regex/-/semver-regex-3.1.3.tgz#b2bcc6f97f63269f286994e297e229b6245d0dc3" + integrity sha512-Aqi54Mk9uYTjVexLnR67rTyBusmwd04cLkHy9hNvk3+G3nT2Oyg7E0l4XVbOaNwIvQ3hHeYxGcyEy+mKreyBFQ== + "semver@2 || 3 || 4 || 5", "semver@2.x || 3.x || 4 || 5", "semver@^2.3.0 || 3.x || 4 || 5", semver@^5.0.3, semver@^5.1.0, semver@^5.4.1, semver@^5.5.0, semver@^5.5.1, semver@^5.6.0, semver@^5.7.0, semver@^5.7.1: version "5.7.1" resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" @@ -12129,11 +12203,16 @@ side-channel@^1.0.4: get-intrinsic "^1.0.2" object-inspect "^1.9.0" -signal-exit@^3.0.0, signal-exit@^3.0.2, signal-exit@^3.0.3: +signal-exit@^3.0.0: version "3.0.5" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.5.tgz#9e3e8cc0c75a99472b44321033a7702e7738252f" integrity sha512-KWcOiKeQj6ZyXx7zq4YxSMgHRlod4czeBQZrPb8OKcohcqAXShm7E20kEMle9WBt26hFcAf0qLOcp5zmY7kOqQ== +signal-exit@^3.0.2, signal-exit@^3.0.3: + version "3.0.6" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.6.tgz#24e630c4b0f03fea446a2bd299e62b4a6ca8d0af" + integrity sha512-sDl4qMFpijcGw22U5w63KmD3cZJfBuFlVNbVMKje2keoKML7X2UzWbc4XrmEbDwg0NXJc3yv4/ox7b+JWb57kQ== + simple-swizzle@^0.2.2: version "0.2.2" resolved "https://registry.yarnpkg.com/simple-swizzle/-/simple-swizzle-0.2.2.tgz#a4da6b635ffcccca33f70d17cb92592de95e557a" @@ -12336,7 +12415,7 @@ source-map-resolve@^0.5.0: source-map-url "^0.4.0" urix "^0.1.0" -source-map-support@^0.5.6, source-map-support@~0.5.20: +source-map-support@^0.5.6: version "0.5.20" resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.20.tgz#12166089f8f5e5e8c56926b377633392dd2cb6c9" integrity sha512-n1lZZ8Ve4ksRqizaBQgxXDgKwttHDhyfQjA6YZZn8+AroHbsIz+JjwxQDxbp+7y5OYCI8t1Yk7etjD9CRd2hIw== @@ -12344,6 +12423,14 @@ source-map-support@^0.5.6, source-map-support@~0.5.20: buffer-from "^1.0.0" source-map "^0.6.0" +source-map-support@~0.5.20: + version "0.5.21" + resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f" + integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w== + dependencies: + buffer-from "^1.0.0" + source-map "^0.6.0" + source-map-url@^0.4.0: version "0.4.1" resolved "https://registry.yarnpkg.com/source-map-url/-/source-map-url-0.4.1.tgz#0af66605a745a5a2f91cf1bbf8a7afbc283dec56" @@ -12903,9 +12990,9 @@ terser-webpack-plugin@^5.1.3: terser "^5.7.2" terser@^5.3.4, terser@^5.7.2: - version "5.9.0" - resolved "https://registry.yarnpkg.com/terser/-/terser-5.9.0.tgz#47d6e629a522963240f2b55fcaa3c99083d2c351" - integrity sha512-h5hxa23sCdpzcye/7b8YqbE5OwKca/ni0RQz1uRX3tGh8haaGHqcuSqbGRybuAKNdntZ0mDgFNXPJ48xQ2RXKQ== + version "5.10.0" + resolved "https://registry.yarnpkg.com/terser/-/terser-5.10.0.tgz#b86390809c0389105eb0a0b62397563096ddafcc" + integrity sha512-AMmF99DMfEDiRJfxfY5jj5wNH/bYO09cniSqhfoyxc8sFoYIgkJy86G04UoZU5VjlpnplVu0K6Tx6E9b5+DlHA== dependencies: commander "^2.20.0" source-map "~0.7.2" @@ -13287,9 +13374,9 @@ typescript@~4.1.3: integrity sha512-pxnwLxeb/Z5SP80JDRzVjh58KsM6jZHRAOtTpS7sXLS4ogXNKC9ANxHHZqLLeVHZN35jCtI4JdmLLbLiC1kBow== typestyle@^2.0.4: - version "2.1.0" - resolved "https://registry.yarnpkg.com/typestyle/-/typestyle-2.1.0.tgz#7c5cc567de72cd8bfb686813150b92791aaa7636" - integrity sha512-6uCYPdG4xWLeEcl9O0GtNFnNGhami+irKiLsXSuvWHC/aTS7wdj49WeikWAKN+xHN3b1hm+9v0svwwgSBhCsNA== + version "2.2.0" + resolved "https://registry.yarnpkg.com/typestyle/-/typestyle-2.2.0.tgz#0b89231c405dda47e5acdcc2c33143ec7257134a" + integrity sha512-2lfoH6Wp0B2fhEwy+aXzRxAaLEz/JLKUKmlttYT2yYSZhoyI2MEgv5iQjvtIBu5q/EwyqTNuYcoL1Mioqv7dsA== dependencies: csstype "2.6.9" free-style "3.1.0" @@ -14140,12 +14227,42 @@ webpack-sources@^1.1.0, webpack-sources@^1.2.0, webpack-sources@^1.4.3: source-list-map "^2.0.0" source-map "~0.6.1" -webpack-sources@^3.2.0: - version "3.2.1" - resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-3.2.1.tgz#251a7d9720d75ada1469ca07dbb62f3641a05b6d" - integrity sha512-t6BMVLQ0AkjBOoRTZgqrWm7xbXMBzD+XDq2EZ96+vMfn3qKgsvdXZhbPZ4ElUOpdv4u+iiGe+w3+J75iy/bYGA== +webpack-sources@^3.2.0, webpack-sources@^3.2.2: + version "3.2.2" + resolved "https://registry.yarnpkg.com/webpack-sources/-/webpack-sources-3.2.2.tgz#d88e3741833efec57c4c789b6010db9977545260" + integrity sha512-cp5qdmHnu5T8wRg2G3vZZHoJPN14aqQ89SyQ11NpGH5zEMDCclt49rzo+MaRazk7/UeILhAI+/sEtcM+7Fr0nw== + +webpack@^5.41.1: + version "5.64.1" + resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.64.1.tgz#fd59840c16f04fe315f2b2598a85026f12dfa1bb" + integrity sha512-b4FHmRgaaAjP+aVOVz41a9Qa5SmkUPQ+u8FntTQ1roPHahSComB6rXnLwc976VhUY4CqTaLu5mCswuHiNhOfVw== + dependencies: + "@types/eslint-scope" "^3.7.0" + "@types/estree" "^0.0.50" + "@webassemblyjs/ast" "1.11.1" + "@webassemblyjs/wasm-edit" "1.11.1" + "@webassemblyjs/wasm-parser" "1.11.1" + acorn "^8.4.1" + acorn-import-assertions "^1.7.6" + browserslist "^4.14.5" + chrome-trace-event "^1.0.2" + enhanced-resolve "^5.8.3" + es-module-lexer "^0.9.0" + 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.1.0" + tapable "^2.1.1" + terser-webpack-plugin "^5.1.3" + watchpack "^2.2.0" + webpack-sources "^3.2.2" -webpack@^5.41.1, webpack@^5.7.0: +webpack@^5.7.0: version "5.64.0" resolved "https://registry.yarnpkg.com/webpack/-/webpack-5.64.0.tgz#db3e12546f755930ccc9e0e21ba660871940c615" integrity sha512-UclnN24m054HaPC45nmDEosX6yXWD+UGC12YtUs5i356DleAUGMDC9LBAw37xRRfgPKYIdCYjGA7RZ1AA+ZnGg== @@ -14234,6 +14351,11 @@ which-module@^2.0.0: resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.0.tgz#d9ef07dce77b9902b8a3a8fa4b31c3e3f7e6e87a" integrity sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho= +which-pm-runs@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/which-pm-runs/-/which-pm-runs-1.0.0.tgz#670b3afbc552e0b55df6b7780ca74615f23ad1cb" + integrity sha1-Zws6+8VS4LVd9rd4DKdGFfI60cs= + which@^1.2.9, which@^1.3.0, which@^1.3.1: version "1.3.1" resolved "https://registry.yarnpkg.com/which/-/which-1.3.1.tgz#a45043d54f5805316da8d62f9f50918d3da70b0a" @@ -14427,10 +14549,10 @@ xtend@^4.0.2, xtend@~4.0.0, xtend@~4.0.1: resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54" integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== -y-codemirror@^3.0.0: - version "3.0.0" - resolved "https://registry.yarnpkg.com/y-codemirror/-/y-codemirror-3.0.0.tgz#ca54f9d931c493dbe90f9b5bdc70d7b5ba1a5c20" - integrity sha512-fCcEhk6s08gqi2aoV5v39njc4n7iq5HufsZijwNFTmMiUv99D2NxnG+Ln168ssxIKJjmnDKQeUNaCdf6nuL+9A== +y-codemirror@^3.0.1: + version "3.0.1" + resolved "https://registry.yarnpkg.com/y-codemirror/-/y-codemirror-3.0.1.tgz#d8a4e43cf46b5b557e0f03b7bbb65773ff436278" + integrity sha512-TsLSoouAZxkxOKbmTj7qdwZNS0lZMVqIdp7/j9EgUUqYj0remZYDGl6VBABrmp9UX1QvX6RoXXqzbNhftgfCbA== dependencies: lib0 "^0.2.42" @@ -14606,11 +14728,11 @@ yazl@^2.5.1: buffer-crc32 "~0.2.3" yjs@^13.5.17: - version "13.5.20" - resolved "https://registry.yarnpkg.com/yjs/-/yjs-13.5.20.tgz#e9e551929813f111c543501cbb3b267319accc0f" - integrity sha512-VZuxhu0V6ILtAHi+7JmCxhkzvffLzpH70Nso4zTGj3qeq1ZuqZhLRjQZwBbFHlBTZD0PvpsFk20BlG5XDScr/w== + version "13.5.22" + resolved "https://registry.yarnpkg.com/yjs/-/yjs-13.5.22.tgz#576a92ff2705736317a8b7a6b18d34fc8e6103f0" + integrity sha512-qxsVlu/E2dLUUtJyhDbwkhrw1gWbdE+UWzVI2VEeY6G1M8TYI51VvXSoPC/4QQMNIyEdsCOW2cWxPUyoCH43gw== dependencies: - lib0 "^0.2.42" + lib0 "^0.2.43" yocto-queue@^0.1.0: version "0.1.0" From 105449d544a2d3ba7af20b32e3e2a42afbeb4370 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Collonval?= Date: Sat, 20 Nov 2021 15:12:21 +0100 Subject: [PATCH 23/48] - Remove toolbar - Wait for the notebook to be fully rendered before converting it to slideshow - Start supporting settings --- packages/application/package.json | 3 +- packages/application/src/plugins/index.ts | 189 +++++++++++++++++++--- packages/lab/schema/plugin.json | 85 +++++++++- yarn.lock | 2 +- 4 files changed, 257 insertions(+), 22 deletions(-) diff --git a/packages/application/package.json b/packages/application/package.json index 267c886f..8a0f9b4e 100644 --- a/packages/application/package.json +++ b/packages/application/package.json @@ -45,9 +45,10 @@ "@jupyterlab/notebook": "^3.0.0", "@jupyterlab/rendermime-interfaces": "^3.0.0", "@jupyterlab/services": "^6.0.0", + "@jupyterlab/settingregistry": "^3.0.0", "@lumino/commands": "^1.17.0", - "@lumino/signaling": "^1.9.0", "@lumino/messaging": "^1.9.0", + "@lumino/signaling": "^1.9.0", "@lumino/widgets": "^1.28.0", "rise-reveal": "file:../rise-reveal/export/reveal.js" }, diff --git a/packages/application/src/plugins/index.ts b/packages/application/src/plugins/index.ts index 9cf15b85..044fd6ae 100644 --- a/packages/application/src/plugins/index.ts +++ b/packages/application/src/plugins/index.ts @@ -6,7 +6,8 @@ import { import { ICellModel } from '@jupyterlab/cells'; import { IChangedArgs, PageConfig } from '@jupyterlab/coreutils'; import { IDocumentManager } from '@jupyterlab/docmanager'; -import { INotebookModel, Notebook, NotebookPanel } from '@jupyterlab/notebook'; +import { Notebook, NotebookPanel } from '@jupyterlab/notebook'; +import { ISettingRegistry } from '@jupyterlab/settingregistry'; import { Signal } from '@lumino/signaling'; import Reveal from 'rise-reveal'; import { RiseApp, RiseShell } from '../app'; @@ -20,20 +21,35 @@ const opener: JupyterFrontEndPlugin = { id: 'rise-extension:opener', autoStart: true, requires: [IDocumentManager], - activate: (app: JupyterFrontEnd, documentManager: IDocumentManager) => { - Promise.all([app.started, app.restored]).then(() => { + optional: [ISettingRegistry], + activate: ( + app: JupyterFrontEnd, + documentManager: IDocumentManager, + settingRegistry: ISettingRegistry + ) => { + Promise.all([ + // Load settings of the JupyterLab extension - so the settings can be edited in JLab. + settingRegistry?.load('rise-jupyterlab:plugin') ?? Promise.resolve(null), + app.started, + app.restored + ]).then(([settings]) => { + let rendered: boolean | null = null; const notebookPath = PageConfig.getOption('notebookPath'); const notebookPanel = documentManager.open(notebookPath) as NotebookPanel; - app.shell.add(notebookPanel); - const initializeReveal = ( - _: INotebookModel, + _: any, change: IChangedArgs ) => { - if (change.name === 'dirty' && change.newValue === false) { + if ( + change.name === 'dirty' && + change.newValue === false && + // rendered = null || true + !!rendered + ) { + notebookPanel.content.fullyRendered.disconnect(setRendered, this); notebookPanel.model?.stateChanged.disconnect(initializeReveal, this); - RevealUtils.startReveal(notebookPanel); + RevealUtils.startReveal(notebookPanel, settings); Signal.disconnectAll(this); (app.shell as RiseShell).updated.connect(() => { @@ -41,7 +57,27 @@ const opener: JupyterFrontEndPlugin = { }); } }; + + const setRendered = (notebook: Notebook, fullyRendered: boolean) => { + rendered = fullyRendered; + if (rendered) { + initializeReveal(null, { + name: 'dirty', + newValue: notebook.model?.dirty ?? true, + oldValue: true + }); + } + }; + + // Deal with virtual rendering + notebookPanel.content.fullyRendered.connect(setRendered, this); + notebookPanel.model?.stateChanged.connect(initializeReveal, this); + + // Remove the toolbar + notebookPanel.toolbar.dispose(); + + app.shell.add(notebookPanel); }); } }; @@ -64,6 +100,121 @@ const paths: JupyterFrontEndPlugin = { export default [opener, paths]; namespace RevealUtils { + interface IConfig { + // behaviour + autolaunch: boolean; + start_slideshow_at: string; + auto_select: string; + auto_select_fragment: boolean; + show_buttons_on_startup: boolean; + + // aspect + header?: string; + footer?: string; + backimage?: string; + overlay?: string; + + // timeouts + // wait for that amont before calling ensure_focused on the + // selected cell + restore_timeout: number; + // wait for that amount before actually selected auto-selected fragment + // when going too short, like 250, size of selected cell get odd + auto_select_timeout: number; + // wait for that amount before calling sync() again + // this is a workaround that fixes #504 + sync_timeout: number; + + // reveal native settings passed as-is + // see also the 'inherited' variable below in Revealer + theme: string; + transition: string; + // xxx there might be a need to tweak this one when set + // by the configurator, as e.g. 'false' or 'true' will result + // in a string and not a boolean + slideNumber: boolean | string; + width: string; + height: string; + controls: boolean; + progress: boolean; + history: boolean; + scroll: boolean; + center: boolean; + margin: number; + minScale: number; // we need this for codemirror to work right + // turn off reveal's help overlay that is by default bound to question mark / ? + help: boolean; + + // plugins + enable_chalkboard: boolean; + enable_leap_motion: boolean; + } + + // see packages/lab/schema/plugin.json + const HARDWIRED_CONFIG: IConfig = { + // behaviour + autolaunch: false, + start_slideshow_at: 'selected', + auto_select: 'code', + auto_select_fragment: true, + show_buttons_on_startup: true, + + // aspect + header: undefined, + footer: undefined, + backimage: undefined, + overlay: undefined, + + // timeouts + // wait for that amont before calling ensure_focused on the + // selected cell + restore_timeout: 500, + // wait for that amount before actually selected auto-selected fragment + // when going too short, like 250, size of selected cell get odd + auto_select_timeout: 450, + // wait for that amount before calling sync() again + // this is a workaround that fixes #504 + sync_timeout: 250, + + // UI - TODO + // toolbar_icon: 'fa-bar-chart', + // shortcuts: { + // slideshow: 'alt-r', + // 'toggle-slide': 'shift-i', + // 'toggle-subslide': 'shift-b', + // 'toggle-fragment': 'shift-g', + // // this can be helpful + // 'rise-nbconfigurator': 'shift-c', + // // unassigned by default + // 'toggle-notes': '', + // 'toggle-skip': '' + // }, + + // reveal native settings passed as-is + // see also the 'inherited' variable below in Revealer + theme: 'simple', + transition: 'linear', + // xxx there might be a need to tweak this one when set + // by the configurator, as e.g. 'false' or 'true' will result + // in a string and not a boolean + slideNumber: true, + width: '100%', + height: '100%', + controls: true, + progress: true, + history: true, + scroll: false, + center: true, + margin: 0.1, + minScale: 1.0, // we need this for codemirror to work right + // turn off reveal's help overlay that is by default bound to question mark / ? + help: false, + + // plugins + enable_chalkboard: false, + enable_leap_motion: false + }; + function get_slide_type(cell: ICellModel): string { const slideshow = cell.metadata.get('slideshow') || {}; const slide_type = (slideshow as any)['slide_type']; @@ -140,23 +291,23 @@ namespace RevealUtils { } } - export function startReveal(panel: NotebookPanel): void { + export function startReveal( + panel: NotebookPanel, + settings: ISettingRegistry.ISettings | null + ): void { const notebook = panel.content; panel.addClass('reveal'); notebook.addClass('slides'); markupSlides(notebook); - Reveal.initialize({ - controls: true, - progress: true, - history: true, - center: true, + const applicationSettings = settings?.composite ?? {}; - transition: 'slide', // none/fade/slide/convex/concave/zoom - //make codemirror works as expected - minScale: 1.0, - maxScale: 1.0 - }); + const finalSettings = { + ...HARDWIRED_CONFIG, + ...applicationSettings + } as IConfig; + + Reveal.initialize(finalSettings); } } diff --git a/packages/lab/schema/plugin.json b/packages/lab/schema/plugin.json index 22459830..128144c5 100644 --- a/packages/lab/schema/plugin.json +++ b/packages/lab/schema/plugin.json @@ -17,5 +17,88 @@ ] }, "type": "object", - "additionalProperties": false + "additionalProperties": false, + "properties": { + "theme": { + "title": "Reveal Theme", + "description": "This setting, like the ones below, is passed directly to [`reveal.js` see this doc](https://github.com/hakimel/reveal.js).\ntheme: [see a list of reveal's available native themes](https://github.com/hakimel/reveal.js#theming). Note that dark themes from reveal do not work well with RISE, at least not without additional and manual tweaks.", + "enum": [ + "black", + "white", + "league", + "beige", + "sky", + "night", + "serif", + "simple", + "solarized", + "blood", + "moon" + ], + "default": "simple" + }, + "transition": { + "title": "Reveal Transition", + "description": "at least available: none - fade - slide - convex - concave - zoom - cube - linear; see also `reveal.js`.", + "enum": [ + "none", + "fade", + "slide", + "convex", + "concave", + "zoom", + "cube", + "linear" + ], + "default": "linear" + }, + "slideNumber": { + "title": "Reveal Slide Number", + "description": "A string to specify if and how to number slides; [see reveal's explanations](https://github.com/hakimel/reveal.js#slide-number).", + "oneOf": [{"type": "boolean"}, {"enum": ["h.v", "h/v", "c", "c/t"]}], + "default": false + }, + "width": { + "title": "Reveal Width", + "description": "A css width attribute, like `1920px` or `10cm` or `100%`. **Remember that you can always zoom in and out** with you browser's native keyboard shortcuts like typically `Command +` or `Command -`.", + "type": "string", + "default": "100%" + }, + "height": { + "title": "Reveal Height", + "description": "ditto for slide height.", + "type": "string", + "default": "100%" + }, + "controls": { + "title": "Reveal Controls", + "description": "Add buttons to exit and get help", + "type": "boolean", + "default": true + }, + "progress": { + "title": "Reveal Progress", + "description": "Show progress as a line at the bottom", + "type": "boolean", + "default": true + }, + "history": { + "title": "Reveal History", + "description": "Push each slide change to the browser history", + "type": "boolean", + "default": true + }, + "scroll": { + "title": "Reveal Scroll", + "description": "See reveal documentation", + "type": "boolean", + "default": false + }, + "center": { + "title": "Reveal center", + "description": "See reveal documentation", + "type": "boolean", + "default": true + } + } } diff --git a/yarn.lock b/yarn.lock index ad9e48f3..eb12d5c8 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1368,7 +1368,7 @@ node-fetch "^2.6.0" ws "^7.4.6" -"@jupyterlab/settingregistry@^3.2.4": +"@jupyterlab/settingregistry@^3.0.0", "@jupyterlab/settingregistry@^3.2.4": version "3.2.4" resolved "https://registry.yarnpkg.com/@jupyterlab/settingregistry/-/settingregistry-3.2.4.tgz#6d863891702769769c4840435602206be06e84a6" integrity sha512-kyr6y32YTD4S2XGthy17yRa6BdEQyuXqIl2hIKrn9oPdfM0OF3TDkAByB8W79KLQojsKcmGka19LvQov/N4+6A== From 5203b1fa36441f170ded94bd81cceff40949e463 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Collonval?= Date: Sat, 20 Nov 2021 17:25:40 +0100 Subject: [PATCH 24/48] Preview side-by-side in JLab --- packages/lab/package.json | 5 +- packages/lab/schema/plugin.json | 3 + packages/lab/src/index.ts | 149 ++++++++++++++-- packages/lab/src/preview.ts | 290 ++++++++++++++++++++++++++++++++ yarn.lock | 2 +- 5 files changed, 430 insertions(+), 19 deletions(-) create mode 100644 packages/lab/src/preview.ts diff --git a/packages/lab/package.json b/packages/lab/package.json index 023d8378..9500f5b7 100644 --- a/packages/lab/package.json +++ b/packages/lab/package.json @@ -50,7 +50,10 @@ "@jupyterlab/translation": "^3.2.0", "@jupyterlab/ui-components": "^3.2.0", "@lumino/commands": "^1.15.0", - "@lumino/disposable": "^1.7.0" + "@lumino/coreutils": "^1.11.0", + "@lumino/disposable": "^1.7.0", + "@lumino/messaging": "^1.10.1", + "@lumino/widgets": "^1.19.0" }, "devDependencies": { "@jupyterlab/builder": "^3.2.0", diff --git a/packages/lab/schema/plugin.json b/packages/lab/schema/plugin.json index 128144c5..4edf8dd1 100644 --- a/packages/lab/schema/plugin.json +++ b/packages/lab/schema/plugin.json @@ -8,6 +8,9 @@ "id": "jp-mainmenu-view", "items": [ { "type": "separator" }, + { + "command": "rise-jupyterlab:preview" + }, { "command": "rise-jupyterlab:open" }, diff --git a/packages/lab/src/index.ts b/packages/lab/src/index.ts index 3d9faa0d..64d80df0 100644 --- a/packages/lab/src/index.ts +++ b/packages/lab/src/index.ts @@ -1,61 +1,171 @@ import { + ILayoutRestorer, JupyterFrontEnd, JupyterFrontEndPlugin } from '@jupyterlab/application'; -import { CommandToolbarButton, ICommandPalette } from '@jupyterlab/apputils'; +import { + CommandToolbarButton, + ICommandPalette, + WidgetTracker +} from '@jupyterlab/apputils'; import { PageConfig } from '@jupyterlab/coreutils'; +import { DocumentRegistry } from '@jupyterlab/docregistry'; -import { INotebookTracker, NotebookPanel } from '@jupyterlab/notebook'; +import { + INotebookModel, + INotebookTracker, + NotebookPanel +} from '@jupyterlab/notebook'; import { ITranslator } from '@jupyterlab/translation'; +import { ReadonlyPartialJSONObject } from '@lumino/coreutils'; + import { RISEIcon } from './icons'; +import { + RisePreview, + IRisePreviewTracker, + RisePreviewFactory +} from './preview'; + +export { IRisePreviewTracker } from './preview'; + /** * Command IDs namespace for JupyterLab RISE extension */ namespace CommandIDs { + /** + * Open the current notebook in a new browser tab + */ export const openRise = 'rise-jupyterlab:open'; + /** + * Open the current notebook in a IFrame within JupyterLab + */ + export const risePreview = 'rise-jupyterlab:preview'; } /** * Open the notebook with RISE. */ -const plugin: JupyterFrontEndPlugin = { +const plugin: JupyterFrontEndPlugin = { id: 'rise-jupyterlab:plugin', autoStart: true, requires: [ITranslator], - optional: [INotebookTracker, ICommandPalette], + optional: [INotebookTracker, ICommandPalette, ILayoutRestorer], + provides: IRisePreviewTracker, activate: ( app: JupyterFrontEnd, translator: ITranslator, notebookTracker: INotebookTracker | null, - palette: ICommandPalette | null - ) => { + palette: ICommandPalette | null, + restorer: ILayoutRestorer | null + ): IRisePreviewTracker => { + // Create a widget tracker for Rise Previews. + const tracker = new WidgetTracker({ + namespace: 'rise' + }); + if (!notebookTracker) { - return; + return tracker; } - const { commands, shell } = app; - const baseUrl = PageConfig.getBaseUrl(); + const { commands, docRegistry, shell } = app; const trans = translator.load('rise'); + const factory = new RisePreviewFactory(getRiseUrl, commands, { + name: 'rise', + fileTypes: ['notebook'], + modelName: 'notebook' + }); + + if (restorer) { + restorer.restore(tracker, { + command: 'docmanager:open', + args: panel => ({ + path: panel.context.path, + factory: factory.name + }), + name: panel => panel.context.path, + when: app.serviceManager.ready + }); + } + + docRegistry.addWidgetFactory(factory); + + function getCurrent(args: ReadonlyPartialJSONObject): NotebookPanel | null { + const widget = notebookTracker?.currentWidget ?? null; + const activate = args['activate'] !== false; + + if (activate && widget) { + shell.activateById(widget.id); + } + + return widget; + } + + function isEnabled(): boolean { + return ( + notebookTracker?.currentWidget !== null && + notebookTracker?.currentWidget === shell.currentWidget + ); + } + + function getRiseUrl(path: string): string { + const baseUrl = PageConfig.getBaseUrl(); + return `${baseUrl}rise/${path}`; + } + + factory.widgetCreated.connect((sender, widget) => { + // Notify the widget tracker if restore data needs to update. + widget.context.pathChanged.connect(() => { + void tracker.save(widget); + }); + // Add the notebook panel to the tracker. + void tracker.add(widget); + }); + commands.addCommand(CommandIDs.openRise, { label: args => (args.toolbar ? '' : trans.__('Open as Reveal Slideshow')), - caption: trans.__('Open the current notebook as an RevealJS slideshow.'), + caption: trans.__( + 'Open the current notebook in a new browser tab as an RevealJS slideshow.' + ), icon: RISEIcon, - execute: () => { + execute: async () => { const current = notebookTracker.currentWidget; if (!current) { return; } - window.open(`${baseUrl}rise/${current.context.path}`); + await current.context.save(); + window.open(getRiseUrl(current.context.path)); }, - isEnabled: () => - notebookTracker.currentWidget !== null && - notebookTracker.currentWidget === shell.currentWidget + isEnabled + }); + + commands.addCommand(CommandIDs.risePreview, { + label: args => + args.toolbar ? '' : trans.__('Render as Reveal Slideshow'), + caption: trans.__('Render the current notebook as Reveal Slideshow'), + icon: RISEIcon, + execute: async args => { + const current = getCurrent(args); + let context: DocumentRegistry.IContext; + if (current) { + context = current.context; + await context.save(); + + commands.execute('docmanager:open', { + path: context.path, + factory: 'rise', + options: { + mode: 'split-right' + } + }); + } + }, + isEnabled }); notebookTracker.widgetAdded.connect( @@ -65,7 +175,7 @@ const plugin: JupyterFrontEndPlugin = { 'RISE-button', new CommandToolbarButton({ commands, - id: CommandIDs.openRise, + id: CommandIDs.risePreview, args: { toolbar: true } }) ); @@ -73,8 +183,13 @@ const plugin: JupyterFrontEndPlugin = { ); if (palette) { - palette.addItem({ command: CommandIDs.openRise, category: 'Other' }); + const category = 'Notebook Operations'; + [CommandIDs.openRise, CommandIDs.risePreview].forEach(command => { + palette.addItem({ command, category }); + }); } + + return tracker; } }; diff --git a/packages/lab/src/preview.ts b/packages/lab/src/preview.ts new file mode 100644 index 00000000..1886b99b --- /dev/null +++ b/packages/lab/src/preview.ts @@ -0,0 +1,290 @@ +import { + IFrame, + ToolbarButton, + IWidgetTracker, + Toolbar +} from '@jupyterlab/apputils'; + +import { + ABCWidgetFactory, + DocumentRegistry, + DocumentWidget +} from '@jupyterlab/docregistry'; + +import { INotebookModel } from '@jupyterlab/notebook'; + +import { refreshIcon } from '@jupyterlab/ui-components'; + +import { CommandRegistry } from '@lumino/commands'; + +import { Token } from '@lumino/coreutils'; + +import { Message } from '@lumino/messaging'; + +import { Signal } from '@lumino/signaling'; + +import { Widget } from '@lumino/widgets'; + +import { RISEIcon } from './icons'; + +/** + * A class that tracks Rise Preview widgets. + */ +// eslint-disable-next-line @typescript-eslint/no-empty-interface +export interface IRisePreviewTracker extends IWidgetTracker {} + +/** + * The Rise Preview tracker token. + */ +export const IRisePreviewTracker = new Token( + 'rise-jupyterlab:IRisePreviewTracker' +); + +/** + * A DocumentWidget that shows a Rise preview in an IFrame. + */ +export class RisePreview extends DocumentWidget { + /** + * Instantiate a new RisePreview. + * @param options The RisePreview instantiation options. + */ + constructor(options: RisePreview.IOptions) { + super({ + ...options, + content: new IFrame({ + sandbox: [ + 'allow-same-origin', + 'allow-scripts', + 'allow-downloads', + 'allow-modals', + 'allow-popups' + ] + }) + }); + + window.onmessage = (event: any) => { + switch (event.data?.level) { + case 'debug': + console.debug(...event.data?.msg); + break; + + case 'info': + console.info(...event.data?.msg); + break; + + case 'warn': + console.warn(...event.data?.msg); + break; + + case 'error': + console.error(...event.data?.msg); + break; + + default: + console.log(event); + break; + } + }; + + const { getRiseUrl, context, renderOnSave } = options; + + this.content.url = getRiseUrl(context.path); + this.content.title.icon = RISEIcon; + + this._renderOnSave = renderOnSave ?? false; + + context.pathChanged.connect(() => { + this.content.url = getRiseUrl(context.path); + }); + + const reloadButton = new ToolbarButton({ + icon: refreshIcon, + tooltip: 'Reload Preview', + onClick: () => { + this.reload(); + } + }); + + const renderOnSaveCheckbox = new Private.CheckBox({ + checked: this._renderOnSave, + onChange: (event: Event) => { + this._renderOnSave = (event.target as any)?.checked ?? false; + } + }); + + this.toolbar.addItem( + 'open', + new ToolbarButton({ + icon: RISEIcon, + tooltip: 'Open in a new browser tab', + onClick: () => { + options.commands.execute('rise-jupyterlab:open'); + } + }) + ); + + if (context) { + this.toolbar.addItem('renderOnSave', renderOnSaveCheckbox); + void context.ready.then(() => { + context.fileChanged.connect(() => { + if (this.renderOnSave) { + this.reload(); + } + }); + }); + } + + this.toolbar.addItem('spacer', Toolbar.createSpacerItem()); + + this.toolbar.addItem('reload', reloadButton); + } + + /** + * Dispose the preview widget. + */ + dispose(): void { + if (this.isDisposed) { + return; + } + super.dispose(); + Signal.clearData(this); + } + + /** + * Reload the preview. + */ + reload(): void { + const iframe = this.content.node.querySelector('iframe')!; + if (iframe.contentWindow) { + iframe.contentWindow.location.reload(); + } + } + + /** + * Whether the preview reloads when the context is saved. + */ + get renderOnSave(): boolean { + return this._renderOnSave; + } + + private _renderOnSave: boolean; +} + +/** + * A namespace for RisePreview statics. + */ +export namespace RisePreview { + /** + * Instantiation options for `RisePreview`. + */ + export interface IOptions + extends DocumentWidget.IOptionsOptionalContent { + /** + * Application commands registry + */ + commands: CommandRegistry; + /** + * The Rise URL function. + */ + getRiseUrl: (path: string) => string; + + /** + * Whether to reload the preview on context saved. + */ + renderOnSave?: boolean; + } +} + +export class RisePreviewFactory extends ABCWidgetFactory< + RisePreview, + INotebookModel +> { + defaultRenderOnSave = false; + + constructor( + private getRiseUrl: (path: string) => string, + private commands: CommandRegistry, + options: DocumentRegistry.IWidgetFactoryOptions + ) { + super(options); + } + + protected createNewWidget( + context: DocumentRegistry.IContext + ): RisePreview { + return new RisePreview({ + context, + commands: this.commands, + getRiseUrl: this.getRiseUrl, + renderOnSave: this.defaultRenderOnSave + }); + } +} + +namespace Private { + /** + * Namespace for the checkbox widget + */ + export namespace CheckBox { + /** + * Constructor options for the checkbox + */ + export interface IOptions { + /** + * Checkbox initial value + */ + checked?: boolean; + /** + * Callback on checked status changes + */ + onChange?: (ev: Event) => void; + } + } + + /** + * Simple checkbox + */ + export class CheckBox extends Widget { + constructor(options: CheckBox.IOptions = {}) { + const node = document.createElement('label'); + node.insertAdjacentHTML( + 'afterbegin', + 'Render on Save' + ); + super({ node }); + this.input = node.childNodes.item(0) as HTMLInputElement; + this.checked = options.checked ?? false; + const noOp = () => { + // no-op + }; + this.onChange = options.onChange ?? noOp; + } + + /** + * Checkbox status + */ + get checked(): boolean { + return this.input.checked; + } + set checked(v: boolean) { + this.input.checked = v; + } + + /** + * Checkbox status callback + */ + protected onChange: (event: Event) => void; + + protected onAfterAttach(msg: Message): void { + super.onAfterAttach(msg); + this.input.addEventListener('change', this.onChange); + } + + protected onBeforeDetach(msg: Message): void { + this.input.removeEventListener('change', this.onChange); + super.onBeforeDetach(msg); + } + + protected input: HTMLInputElement; + } +} diff --git a/yarn.lock b/yarn.lock index eb12d5c8..511cf6eb 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2225,7 +2225,7 @@ "@lumino/signaling" "^1.10.1" "@lumino/virtualdom" "^1.14.1" -"@lumino/coreutils@^1.11.1", "@lumino/coreutils@^1.5.3": +"@lumino/coreutils@^1.11.0", "@lumino/coreutils@^1.11.1", "@lumino/coreutils@^1.5.3": version "1.11.1" resolved "https://registry.yarnpkg.com/@lumino/coreutils/-/coreutils-1.11.1.tgz#6d89c6325d7adb5f2179dfe3660f0aec8f3c4546" integrity sha512-TbXeYnUChSMN8SmuOwT+bADS3kMhsVaQC0sZie0ZeGaLYxVqvd7NEDRZATDtjdw7QGHK0TwH5+XzuSdNkAXpFw== From fb8048ef62ce2d52e298e138a5db438e74b56a73 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Collonval?= Date: Sun, 21 Nov 2021 11:04:16 +0100 Subject: [PATCH 25/48] Fix `watch` script --- app/webpack.config.watch.js | 17 +++++++++++++++++ package.json | 5 ++++- packages/application/package.json | 2 +- packages/application/src/plugins/index.ts | 3 ++- packages/classic/package.json | 1 + packages/rise-reveal/package.json | 5 +++-- 6 files changed, 28 insertions(+), 5 deletions(-) create mode 100644 app/webpack.config.watch.js diff --git a/app/webpack.config.watch.js b/app/webpack.config.watch.js new file mode 100644 index 00000000..d2d9b953 --- /dev/null +++ b/app/webpack.config.watch.js @@ -0,0 +1,17 @@ +const base = require('./webpack.config'); +const ExtraWatchWebpackPlugin = require('extra-watch-webpack-plugin'); + +module.exports = [ + { + ...base[0], + bail: false, + watch: true, + plugins: [ + ...base[0].plugins, + new ExtraWatchWebpackPlugin({ + files: ['../packages/application/tsconfig.tsbuildinfo'] + }) + ] + }, + ...base.slice(1) +]; diff --git a/package.json b/package.json index 3e393e81..34c71868 100644 --- a/package.json +++ b/package.json @@ -36,7 +36,10 @@ "install": "lerna bootstrap", "prettier": "prettier --write \"**/*{.ts,.tsx,.js,.jsx,.css,.json,.md}\"", "prettier:check": "prettier --list-different \"**/*{.ts,.tsx,.js,.jsx,.css,.json,.md}\"", - "update:dependency": "node ./node_modules/@jupyterlab/buildutils/lib/update-dependency.js --lerna" + "update:dependency": "node ./node_modules/@jupyterlab/buildutils/lib/update-dependency.js --lerna", + "watch": "run-p watch:lib watch:app", + "watch:app": "lerna exec --stream --scope \"rise-app\" yarn watch", + "watch:lib": "lerna exec --stream --scope rise --scope \"rise-application\" --scope \"rise-jupyterlab\" yarn watch" }, "husky": { "hooks": { diff --git a/packages/application/package.json b/packages/application/package.json index 8a0f9b4e..01af6982 100644 --- a/packages/application/package.json +++ b/packages/application/package.json @@ -32,7 +32,7 @@ "build:prod": "tsc -b", "build:test": "tsc --build tsconfig.test.json", "clean": "rimraf lib tsconfig.tsbuildinfo", - "watch": "tsc -b --watch" + "watch": "tsc -b --watch --preserveWatchOutput" }, "dependencies": { "@jupyterlab/application": "^3.0.0", diff --git a/packages/application/src/plugins/index.ts b/packages/application/src/plugins/index.ts index 044fd6ae..b6cf1d3c 100644 --- a/packages/application/src/plugins/index.ts +++ b/packages/application/src/plugins/index.ts @@ -44,9 +44,10 @@ const opener: JupyterFrontEndPlugin = { if ( change.name === 'dirty' && change.newValue === false && - // rendered = null || true + // if rendered = null || true !!rendered ) { + console.log(`Convert notebook ${notebookPath} to slideshow.`); notebookPanel.content.fullyRendered.disconnect(setRendered, this); notebookPanel.model?.stateChanged.disconnect(initializeReveal, this); RevealUtils.startReveal(notebookPanel, settings); diff --git a/packages/classic/package.json b/packages/classic/package.json index c39d89ca..bc119bd9 100644 --- a/packages/classic/package.json +++ b/packages/classic/package.json @@ -32,6 +32,7 @@ "scripts": { "build": "for target in less install-rise-reveal; do npm run $target; done", "less": "PATH=./node_modules/.bin:$PATH lessc --autoprefix src/less/main.less ../../rise/nbextension/main.css", + "watch": "npm run watch-less", "watch-less": "./node_modules/.bin/watch 'npm run less' src/less", "install-rise-reveal": "cp -r ../../node_modules/rise-reveal/export/* ../../rise/nbextension/", "clean": "rm -rf ../../rise/nbextension/main.css ../../rise/nbextension/reveal.js*" diff --git a/packages/rise-reveal/package.json b/packages/rise-reveal/package.json index d5929df1..418c2fdd 100644 --- a/packages/rise-reveal/package.json +++ b/packages/rise-reveal/package.json @@ -33,14 +33,15 @@ "export/reveal.js-chalkboard" ], "scripts": { - "build": "npm run clean && npm install && for target in copy patch; do npm run $target; done", + "build": "[ ! -d \"export\" ] && npm install && for target in copy patch; do npm run $target; done || echo Patched rise-reveal exists - skipping build", "copy": "mkdir -p export; cp -r node_modules/reveal.js/ ./export/reveal.js/; cp -r node_modules/reveal.js-plugins/chalkboard ./export/reveal.js-chalkboard/", "patch": "for target in patch-reveal-css patch-notes patch-themes patch-chalkboard ; do npm run $target; done", "patch-reveal-css": "sed -i.upstream '11 s_^_/*_' export/reveal.js/css/reveal.css", "patch-notes": "bash patch-notes-plugin.sh", "patch-themes": "bash patch-reveal-themes.sh", "patch-chalkboard": "bash patch-chalkboard.sh", - "clean": "rm -rf node_modules export" + "clean": "rm -rf node_modules export", + "watch": "echo Nothing to watch" }, "dependencies": { "reveal.js": "~3.9.2", From c53a7970931c4194d97c084580469df8a8b2791e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fr=C3=A9d=C3=A9ric=20Collonval?= Date: Sun, 21 Nov 2021 11:10:30 +0100 Subject: [PATCH 26/48] Add note about `watch` script and update folder structure --- doc/dev/develop.md | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/doc/dev/develop.md b/doc/dev/develop.md index 22665ddb..cd36b606 100644 --- a/doc/dev/develop.md +++ b/doc/dev/develop.md @@ -74,12 +74,13 @@ Second, let's install RISE in a editable form: ### Convenience -If you change the `less` source often, it can be convenient to enable -per-save automatic building of CSS, and for that you can use: +If you change the JupyterLab extension, the stand alone application or +the `less` source often, it can be convenient to enable +post-save automatic building of frontend assets, and for that you can use (in the root folder): - npm run watch-less + yarn run watch -which will update the `css` code from `less` each time a change +which will update the `css` and `javascript` code each time a change happens on the disk. Kill with Control-C when you are done. ### Plugins development @@ -103,13 +104,15 @@ classical notebook (in `rise/nbextension`) and JupyterLab (in `rise/labextension The development of the frontend code is mainly in packages (development version that needs to be transpiled before being distributed within the Python package): -- _Classical notebook_ extension: +- _Classical notebook_ extension: It contains the extension for the classical notebook. - Javascript file is `rise/nbextension/main.js` - CSS file is `packages/classic/src/less/main.less` It will be transpiled to `rise/nbextension/main.css` -- _JupyterLab_ extension - i.e. notebook toolbar button: +- _JupyterLab_ extension: It contains the extension for JupyterLab (settings, keyboard shortcuts, toolbar button and preview panel) - This is the folder `packages/lab` - _Standalone application_ (based on JupyterLab) - the place where Reveal is used to modify the DOM: - - Definition of the application (what needs to be brought from JupyterLab base packages) is in the folder `app` + - Definition of the application (what and how to load JupyterLab base packages) is in the folder `app` - Customization of the application for RISE is in the folder `packages/application` - In particular the entry point for opening the notebook with Reveal is in `packages/application/src/plugins/index.ts#opener`. And in particular the conversion of the notebook is done by `RevealUtils.startReveal`. + - The other important file is `packages/application/src/app/index.ts`in which the main application object + (including the shell) is defined. From 823c24fa5793fd69e7e12d66da601f04e789bee8 Mon Sep 17 00:00:00 2001 From: Thierry Parmentelat Date: Sat, 20 Nov 2021 11:33:00 +0100 Subject: [PATCH 27/48] develop doc: remove obsolete intro, and reformat --- doc/dev/develop.md | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/doc/dev/develop.md b/doc/dev/develop.md index cd36b606..c013d9c9 100644 --- a/doc/dev/develop.md +++ b/doc/dev/develop.md @@ -2,12 +2,8 @@ --- -**_Note_** this page is up-to-date for 5.7 that has a new directory layout; -in a nutshell, 5.7 comes with a clear separation between - -- what is inherited from `reveal.js` with our minor adaptations (the `rise-reveal` subdir), -- the RISE extension for the classic notebook (the `classic` subdir), -- opening the space for a future `jlab` subdir that will host the jupyterlab extension. +**_Note_** this page is up-to-date for the jlab3 branch that has a new directory +layout; see the _Folder structure_ section below --- @@ -67,7 +63,7 @@ Second, let's install RISE in a editable form: JavaScript code in-place. This feature however is probably not available in Win. - If you cannot use this _symlink_ trick, you will need to - "re-install" the nbextension to actually see any changes you made on th JS files. + "re-install" the nbextension to actually see any changes you made on the JS files. - Also please make sure to properly and thoroughly reload your page in the browser; using _Shift_ when reloading is generally a good idea. @@ -85,8 +81,10 @@ happens on the disk. Kill with Control-C when you are done. ### Plugins development -We currently have a custom plugin for the notes: `notes_rise` -If you need to modify this part of the codebase, after you are happy with your changes, you need to login to npm and push the package containing your changes (the package will be build and upload by the `npm publish` command): +We currently have a custom plugin for the notes: `notes_rise` If you need to +modify this part of the codebase, after you are happy with your changes, you +need to login to npm and push the package containing your changes (the package +will be build and upload by the `npm publish` command): ``` cd /plugin/notes/ @@ -94,15 +92,17 @@ npm login npm publish ``` -Finally, you need to update the main package.json file at the root directory to grab the new version you just published. +Finally, you need to update the main package.json file at the root directory to +grab the new version you just published. ### Folder structure -The package is now an unique Python package `rise` (at the folder root) that will distribute the frontend for the -classical notebook (in `rise/nbextension`) and JupyterLab (in `rise/labextension`). +The package is now a unique Python package `rise` (at the folder root) that +will distribute the frontend for the classical notebook (in `rise/nbextension`) +and JupyterLab (in `rise/labextension`). -The development of the frontend code is mainly in packages (development version that needs to be transpiled before -being distributed within the Python package): +The development of the frontend code is mainly in packages (development version +that needs to be transpiled before being distributed within the Python package): - _Classical notebook_ extension: It contains the extension for the classical notebook. - Javascript file is `rise/nbextension/main.js` From a95f20dbcc85b5725d9e7b915a7e5ea2c26a4f59 Mon Sep 17 00:00:00 2001 From: Thierry Parmentelat Date: Sat, 20 Nov 2021 11:28:59 +0100 Subject: [PATCH 28/48] a test notebook --- examples/TESTME-lab.ipynb | 419 ++++++++++++++++++++++++++++++++++++++ 1 file changed, 419 insertions(+) create mode 100644 examples/TESTME-lab.ipynb diff --git a/examples/TESTME-lab.ipynb b/examples/TESTME-lab.ipynb new file mode 100644 index 00000000..6155622e --- /dev/null +++ b/examples/TESTME-lab.ipynb @@ -0,0 +1,419 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "## Some test cases for jupyter-lab" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "a few samples for features that are broken, fragile, or being worked on, with jlab" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": { + "collapsed": true + }, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Requirement already satisfied: numpy in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (1.21.4)\n", + "Requirement already satisfied: matplotlib in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (3.5.0)\n", + "Requirement already satisfied: ipywidgets in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (7.6.5)\n", + "Requirement already satisfied: cycler>=0.10 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from matplotlib) (0.11.0)\n", + "Requirement already satisfied: packaging>=20.0 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from matplotlib) (21.2)\n", + "Requirement already satisfied: fonttools>=4.22.0 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from matplotlib) (4.28.1)\n", + "Requirement already satisfied: pyparsing>=2.2.1 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from matplotlib) (2.4.7)\n", + "Requirement already satisfied: python-dateutil>=2.7 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from matplotlib) (2.8.2)\n", + "Requirement already satisfied: setuptools-scm>=4 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from matplotlib) (6.3.2)\n", + "Requirement already satisfied: pillow>=6.2.0 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from matplotlib) (8.4.0)\n", + "Requirement already satisfied: kiwisolver>=1.0.1 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from matplotlib) (1.3.2)\n", + "Requirement already satisfied: ipython-genutils~=0.2.0 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from ipywidgets) (0.2.0)\n", + "Requirement already satisfied: nbformat>=4.2.0 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from ipywidgets) (5.1.3)\n", + "Requirement already satisfied: ipykernel>=4.5.1 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from ipywidgets) (6.5.0)\n", + "Requirement already satisfied: widgetsnbextension~=3.5.0 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from ipywidgets) (3.5.2)\n", + "Requirement already satisfied: jupyterlab-widgets>=1.0.0 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from ipywidgets) (1.0.2)\n", + "Requirement already satisfied: traitlets>=4.3.1 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from ipywidgets) (5.1.1)\n", + "Requirement already satisfied: ipython>=4.0.0 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from ipywidgets) (7.29.0)\n", + "Requirement already satisfied: appnope in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from ipykernel>=4.5.1->ipywidgets) (0.1.2)\n", + "Requirement already satisfied: jupyter-client<8.0 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from ipykernel>=4.5.1->ipywidgets) (7.0.6)\n", + "Requirement already satisfied: matplotlib-inline<0.2.0,>=0.1.0 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from ipykernel>=4.5.1->ipywidgets) (0.1.3)\n", + "Requirement already satisfied: debugpy<2.0,>=1.0.0 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from ipykernel>=4.5.1->ipywidgets) (1.5.1)\n", + "Requirement already satisfied: tornado<7.0,>=4.2 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from ipykernel>=4.5.1->ipywidgets) (6.1)\n", + "Requirement already satisfied: decorator in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from ipython>=4.0.0->ipywidgets) (5.1.0)\n", + "Requirement already satisfied: pexpect>4.3 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from ipython>=4.0.0->ipywidgets) (4.8.0)\n", + "Requirement already satisfied: jedi>=0.16 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from ipython>=4.0.0->ipywidgets) (0.18.0)\n", + "Requirement already satisfied: pickleshare in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from ipython>=4.0.0->ipywidgets) (0.7.5)\n", + "Requirement already satisfied: pygments in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from ipython>=4.0.0->ipywidgets) (2.10.0)\n", + "Requirement already satisfied: prompt-toolkit!=3.0.0,!=3.0.1,<3.1.0,>=2.0.0 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from ipython>=4.0.0->ipywidgets) (3.0.22)\n", + "Requirement already satisfied: setuptools>=18.5 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from ipython>=4.0.0->ipywidgets) (58.0.4)\n", + "Requirement already satisfied: backcall in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from ipython>=4.0.0->ipywidgets) (0.2.0)\n", + "Requirement already satisfied: parso<0.9.0,>=0.8.0 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from jedi>=0.16->ipython>=4.0.0->ipywidgets) (0.8.2)\n", + "Requirement already satisfied: jupyter-core>=4.6.0 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from jupyter-client<8.0->ipykernel>=4.5.1->ipywidgets) (4.9.1)\n", + "Requirement already satisfied: entrypoints in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from jupyter-client<8.0->ipykernel>=4.5.1->ipywidgets) (0.3)\n", + "Requirement already satisfied: pyzmq>=13 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from jupyter-client<8.0->ipykernel>=4.5.1->ipywidgets) (22.3.0)\n", + "Requirement already satisfied: nest-asyncio>=1.5 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from jupyter-client<8.0->ipykernel>=4.5.1->ipywidgets) (1.5.1)\n", + "Requirement already satisfied: jsonschema!=2.5.0,>=2.4 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from nbformat>=4.2.0->ipywidgets) (4.2.1)\n", + "Requirement already satisfied: attrs>=17.4.0 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from jsonschema!=2.5.0,>=2.4->nbformat>=4.2.0->ipywidgets) (21.2.0)\n", + "Requirement already satisfied: pyrsistent!=0.17.0,!=0.17.1,!=0.17.2,>=0.14.0 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from jsonschema!=2.5.0,>=2.4->nbformat>=4.2.0->ipywidgets) (0.18.0)\n", + "Requirement already satisfied: ptyprocess>=0.5 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from pexpect>4.3->ipython>=4.0.0->ipywidgets) (0.7.0)\n", + "Requirement already satisfied: wcwidth in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from prompt-toolkit!=3.0.0,!=3.0.1,<3.1.0,>=2.0.0->ipython>=4.0.0->ipywidgets) (0.2.5)\n", + "Requirement already satisfied: six>=1.5 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from python-dateutil>=2.7->matplotlib) (1.16.0)\n", + "Requirement already satisfied: tomli>=1.0.0 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from setuptools-scm>=4->matplotlib) (1.2.2)\n", + "Requirement already satisfied: notebook>=4.4.1 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from widgetsnbextension~=3.5.0->ipywidgets) (6.4.5)\n", + "Requirement already satisfied: Send2Trash>=1.5.0 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from notebook>=4.4.1->widgetsnbextension~=3.5.0->ipywidgets) (1.8.0)\n", + "Requirement already satisfied: terminado>=0.8.3 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from notebook>=4.4.1->widgetsnbextension~=3.5.0->ipywidgets) (0.12.1)\n", + "Requirement already satisfied: nbconvert in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from notebook>=4.4.1->widgetsnbextension~=3.5.0->ipywidgets) (6.3.0)\n", + "Requirement already satisfied: jinja2 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from notebook>=4.4.1->widgetsnbextension~=3.5.0->ipywidgets) (3.0.3)\n", + "Requirement already satisfied: argon2-cffi in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from notebook>=4.4.1->widgetsnbextension~=3.5.0->ipywidgets) (21.1.0)\n", + "Requirement already satisfied: prometheus-client in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from notebook>=4.4.1->widgetsnbextension~=3.5.0->ipywidgets) (0.12.0)\n", + "Requirement already satisfied: cffi>=1.0.0 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from argon2-cffi->notebook>=4.4.1->widgetsnbextension~=3.5.0->ipywidgets) (1.15.0)\n", + "Requirement already satisfied: pycparser in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from cffi>=1.0.0->argon2-cffi->notebook>=4.4.1->widgetsnbextension~=3.5.0->ipywidgets) (2.21)\n", + "Requirement already satisfied: MarkupSafe>=2.0 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from jinja2->notebook>=4.4.1->widgetsnbextension~=3.5.0->ipywidgets) (2.0.1)\n" + ] + }, + { + "name": "stdout", + "output_type": "stream", + "text": [ + "Requirement already satisfied: mistune<2,>=0.8.1 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from nbconvert->notebook>=4.4.1->widgetsnbextension~=3.5.0->ipywidgets) (0.8.4)\n", + "Requirement already satisfied: bleach in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from nbconvert->notebook>=4.4.1->widgetsnbextension~=3.5.0->ipywidgets) (4.1.0)\n", + "Requirement already satisfied: testpath in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from nbconvert->notebook>=4.4.1->widgetsnbextension~=3.5.0->ipywidgets) (0.5.0)\n", + "Requirement already satisfied: nbclient<0.6.0,>=0.5.0 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from nbconvert->notebook>=4.4.1->widgetsnbextension~=3.5.0->ipywidgets) (0.5.8)\n", + "Requirement already satisfied: jupyterlab-pygments in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from nbconvert->notebook>=4.4.1->widgetsnbextension~=3.5.0->ipywidgets) (0.1.2)\n", + "Requirement already satisfied: pandocfilters>=1.4.1 in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from nbconvert->notebook>=4.4.1->widgetsnbextension~=3.5.0->ipywidgets) (1.5.0)\n", + "Requirement already satisfied: defusedxml in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from nbconvert->notebook>=4.4.1->widgetsnbextension~=3.5.0->ipywidgets) (0.7.1)\n", + "Requirement already satisfied: webencodings in /Users/tparment/miniconda3/envs/rise/lib/python3.9/site-packages (from bleach->nbconvert->notebook>=4.4.1->widgetsnbextension~=3.5.0->ipywidgets) (0.5.1)\n", + "Note: you may need to restart the kernel to use updated packages.\n" + ] + } + ], + "source": [ + "%pip install numpy matplotlib ipywidgets" + ] + }, + { + "cell_type": "code", + "execution_count": 7, + "metadata": { + "cell_style": "center", + "slideshow": { + "slide_type": "fragment" + } + }, + "outputs": [ + { + "data": { + "text/plain": [ + "'Hello world'" + ] + }, + "execution_count": 7, + "metadata": {}, + "output_type": "execute_result" + } + ], + "source": [ + "# this is where you press Shift-Enter\n", + "import numpy as np\n", + "import matplotlib.pyplot as plt\n", + "plt.ion()\n", + "\n", + "\"Hello world\"" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "You're in a browser, so remember that you can always use smaller / larger fonts with keyboard shortcuts like `Alt +` and `Alt -` or similar (it could be `Ctrl` instead of `Alt` depending on the platform you are on)." + ] + }, + { + "cell_type": "code", + "execution_count": 8, + "metadata": { + "cell_style": "center", + "slideshow": { + "slide_type": "" + } + }, + "outputs": [ + { + "data": { + "image/png": "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\n", + "text/plain": [ + "
" + ] + }, + "metadata": { + "needs_background": "light" + }, + "output_type": "display_data" + } + ], + "source": [ + "# xxx todo : get the equivalent of split-cell to work here\n", + "# for now we show one figure per slide\n", + "\n", + "def polynom(x):\n", + " return 2 * x**2 - 20 * x + 2\n", + "\n", + "X = np.linspace(-10, 10)\n", + "Y = polynom(X)\n", + "plt.plot(X, Y);" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": { + "cell_style": "center", + "slideshow": { + "slide_type": "slide" + } + }, + "outputs": [ + { + "data": { + "application/vnd.jupyter.widget-view+json": { + "model_id": "b6b784c27f624c529e23da5a81200079", + "version_major": 2, + "version_minor": 0 + }, + "text/plain": [ + "interactive(children=(FloatSlider(value=0.0, description='offset', max=10.0, min=-10.0, step=0.25), Output()),…" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "# xxx testing interact()\n", + "\n", + "# an animation to illustrate \n", + "# translation by variable change\n", + "from ipywidgets import interact, FloatSlider\n", + "\n", + "def parabolic(offset):\n", + " X = np.linspace(-10, 10)\n", + " Y = polynom(X-offset)\n", + " # use same y scale for all offsets\n", + " plt.gca().set_ylim([-100, 500])\n", + " plt.plot(X, Y);\n", + " \n", + "interact(parabolic, \n", + " offset=FloatSlider(min=-10., max=10.,\n", + " step=0.25));" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "# subslides" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "The underlying tool is [reveal.js](https://revealjs.com/), and it supports a lot of cool features." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "For example you can organize your show into:\n", + "\n", + "* slides (left to right)\n", + "* subslides (top to bottom)\n", + "* fragments (stops inside a slide)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "You do not need to worry, just press `Space` to proceed along the main line." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "subslide" + } + }, + "source": [ + "For example this is a subslide; observe the cursor in the bottom right corner." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "If you press `Shift-Space` - here or anywhere else - you will go backwards, so here it would be up." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "# Speaker notes" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "If you now press `t` you should see a second window open, with a presenter view, that shows *Notes* cells - that won't show up in the main slides." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "notes" + } + }, + "source": [ + "This is an example of a *Notes* cell." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "" + } + }, + "source": [ + "Next, we'll cover how to tag cells as *Slide*, *SubSlide*, *Fragment* or *Notes*." + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "# Chalkboard" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "As an option, you can turn on the *chalkboard* reveal plugin, that manifests itself with 2 extra buttons in the lower left area, that let you add free drawings on your slides." + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "This option is turned on, in the notebook metadata again, with:\n", + "\n", + "```javascript\n", + " ...\n", + " \"rise\": {\n", + " \"enable_chalkboard\": true\n", + " }\n", + " ...\n", + "```" + ] + }, + { + "cell_type": "markdown", + "metadata": { + "slideshow": { + "slide_type": "slide" + } + }, + "source": [ + "# Notes" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "* last mile module that actually talks to reveal is this: \n", + " `packages/applicatino/src/plugins/index.ts`\n", + "* and the main entry point is startReveal\n", + "* the INotebookModel class is documented at \n", + "* and the index is one step up at " + ] + } + ], + "metadata": { + "celltoolbar": "Slideshow", + "jupytext": { + "formats": "ipynb" + }, + "kernelspec": { + "display_name": "Python 3 (ipykernel)", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.9.7" + }, + "rise": { + "autolaunch": true, + "enable_chalkboard": true + }, + "toc": { + "base_numbering": 1, + "nav_menu": {}, + "number_sections": false, + "sideBar": true, + "skip_h1_title": false, + "title_cell": "Table of Contents", + "title_sidebar": "Contents", + "toc_cell": false, + "toc_position": {}, + "toc_section_display": true, + "toc_window_display": false + } + }, + "nbformat": 4, + "nbformat_minor": 4 +} From b21f23152eb299fd0b5610da008d02e982b32cb1 Mon Sep 17 00:00:00 2001 From: Thierry Parmentelat Date: Sun, 21 Nov 2021 18:49:26 +0100 Subject: [PATCH 29/48] an attempt at re-implementing the logic for all 5 slide types --- packages/application/src/plugins/index.ts | 97 +++++++++++++++++------ 1 file changed, 73 insertions(+), 24 deletions(-) diff --git a/packages/application/src/plugins/index.ts b/packages/application/src/plugins/index.ts index b6cf1d3c..6ee91a0f 100644 --- a/packages/application/src/plugins/index.ts +++ b/packages/application/src/plugins/index.ts @@ -254,40 +254,89 @@ namespace RevealUtils { if next cell is a fragment * 'smart_exec_next' : do the usual exec + select next like in classic notebook */ - function markupSlides(container: Notebook) { - if (!container.model) { + function markupSlides(notebook: Notebook) { + if (!notebook.model) { // Bail early if the model is not valid return; } - let slide_section: HTMLElement | null = null; - let slide_counter = 0; - const cells = container.model.cells; + let slide_counter = -1; + let subslide_counter = -1; + + function new_slide(prev_slide_section: HTMLElement | null): HTMLElement { + slide_counter++; + subslide_counter = -1; + const new_section = document.createElement('section'); + // first slide + if (!prev_slide_section) { + notebook.node.insertBefore(new_section, notebook.node.firstChild); + } else { + notebook.node.insertBefore(new_section, prev_slide_section.nextSibling); + } + return new_section; + } + + function new_subslide(slide_section: HTMLElement): HTMLElement { + subslide_counter++; + const new_section = document.createElement('section'); + new_section.id = `slide-${slide_counter}-${subslide_counter}`; + slide_section.appendChild(new_section); + return new_section; + } + + function new_fragment(subslide_section: HTMLElement): HTMLElement { + const new_fragment = document.createElement('div'); + new_fragment.classList.add('fragment'); + subslide_section.appendChild(new_fragment); + return new_fragment; + } + + let slide_section = new_slide(null); + let subslide_section = new_subslide(slide_section); + let current_fragment = subslide_section; + + let content_on_slide1 = false; + + const cells = notebook.model.cells; for (let i = 0; i < cells.length; i++) { const cell = cells.get(i); const slide_type = get_slide_type(cell); - - const cell_node = container.node.children[slide_counter]; - const prev_slide_section = slide_section; - - if (slide_type === 'slide') { - // Start new slide - slide_section = document.createElement('section'); - slide_section.appendChild(cell_node); - if (i === 0) { - container.node.insertBefore(slide_section, container.node.firstChild); - } else { - if (prev_slide_section) { - container.node.insertBefore( - slide_section, - prev_slide_section.nextSibling - ); - } + // we already have one section inserted here on startup + const cell_node = notebook.node.children[slide_counter + 1]; + + if (content_on_slide1) { + if (slide_type === 'slide') { + // Start new slide + slide_section = new_slide(slide_section); + // In each subslide, we insert cells directly into the + //
until we reach a fragment, when we create a div. + current_fragment = subslide_section = new_subslide(slide_section); + } else if (slide_type === 'subslide') { + // Start new subslide + current_fragment = subslide_section = new_subslide(slide_section); + } else if (slide_type === 'fragment') { + // record the
element corresponding + // to each fragment cell in the 'fragment_div' attribute + current_fragment = new_fragment(subslide_section); } - slide_counter++; + } else if (slide_type !== 'notes' && slide_type !== 'skip') { + // Subsequent cells should be able to start new slides + content_on_slide1 = true; + } + + if (slide_type === 'notes') { + // Notes are wrapped in an