├── .node-version ├── pytest.ini ├── demo ├── demo-templates │ ├── index.html │ └── base.html ├── requirements.txt ├── happy_planet_index.db ├── demo-plugins │ ├── footer.py │ └── footer.js ├── demo-metadata.yml └── hpi_cleaned.csv ├── plugins ├── hello_world.py └── datasette_nteract_data_explorer.py ├── .gitignore ├── tsconfig.json ├── docs ├── publishing.md ├── demo-datasets.md └── CONTRIBUTING.md ├── tests └── test_nteract_data_explorer.py ├── frontend-src ├── index.html ├── basicData.mocks.ts ├── datasette-data-explorer.types.ts ├── main.tsx ├── datasette-data-explorer-helpers.ts ├── FieldTypeCustomizer.tsx └── DatasetteDataExplorer.tsx ├── .github ├── ISSUE_TEMPLATE.md ├── PULL_REQUEST_TEMPLATE.md └── workflows │ ├── test.yml │ ├── build-demo.yml │ └── publish.yml ├── Makefile ├── package.json ├── setup.py ├── notes └── development-notes.md ├── datasette_nteract_data_explorer └── __init__.py ├── README.md ├── LICENSE └── yarn.lock /.node-version: -------------------------------------------------------------------------------- 1 | 16.3.0 2 | -------------------------------------------------------------------------------- /pytest.ini: -------------------------------------------------------------------------------- 1 | [pytest] 2 | asyncio_mode = strict 3 | -------------------------------------------------------------------------------- /demo/demo-templates/index.html: -------------------------------------------------------------------------------- 1 |

hello world - a custom template

2 | -------------------------------------------------------------------------------- /demo/requirements.txt: -------------------------------------------------------------------------------- 1 | pysqlite3-binary 2 | sqlite-utils>=3.2 3 | datasette>=0.64.2 4 | datasette-publish-vercel>=0.11 5 | -------------------------------------------------------------------------------- /demo/happy_planet_index.db: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/hydrosquall/datasette-nteract-data-explorer/HEAD/demo/happy_planet_index.db -------------------------------------------------------------------------------- /plugins/hello_world.py: -------------------------------------------------------------------------------- 1 | # datasette mydb.db --plugins-dir=plugins/ 2 | 3 | from datasette import hookimpl 4 | 5 | @hookimpl 6 | def prepare_connection(conn): 7 | conn.create_function('hello_world', 0, lambda: 'Hello world!') 8 | -------------------------------------------------------------------------------- /demo/demo-templates/base.html: -------------------------------------------------------------------------------- 1 | {% extends "default:base.html" %} 2 | 3 | {% block content %} 4 | {{ super() }} 5 | 8 | 9 | {% endblock %} 10 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .venv 2 | __pycache__/ 3 | *.py[cod] 4 | *$py.class 5 | venv 6 | .eggs 7 | .pytest_cache 8 | *.egg-info 9 | .DS_Store 10 | .vscode 11 | dist 12 | build 13 | .parcel-cache 14 | node_modules/ 15 | datasette_nteract_data_explorer/static/ 16 | 17 | # Build results for JS 18 | js-dist/ 19 | -------------------------------------------------------------------------------- /demo/demo-plugins/footer.py: -------------------------------------------------------------------------------- 1 | from datasette import hookimpl 2 | from os import path 3 | 4 | # Store JS in separate file to enable basic IDE hinting support 5 | script_name = path.join(path.dirname(__file__), "footer.js") 6 | SCRIPT = open(script_name).read() 7 | 8 | 9 | @hookimpl 10 | def extra_body_script(): 11 | return SCRIPT 12 | -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- 1 | { 2 | "compilerOptions": { 3 | "esModuleInterop": true, 4 | "jsx": "react", 5 | "jsxFactory": "h", 6 | "lib": [ 7 | "dom", 8 | "esnext" 9 | ], 10 | "module": "esnext", 11 | "moduleResolution": "node", 12 | "strict": true, 13 | "target": "es5" 14 | }, 15 | "include": [ 16 | "frontend-src" 17 | ] 18 | } 19 | -------------------------------------------------------------------------------- /docs/publishing.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | Build package for production: First, generate a wheel 4 | 5 | ```bash 6 | python setup.py sdist 7 | ``` 8 | 9 | Then, to test it: 10 | 11 | ``` 12 | datasette install dist/datasette-nteract-data-explorer-0.1.0.tar.gz 13 | ``` 14 | 15 | Then, run datasette 16 | 17 | ``` 18 | datasette ~/Library/Safari/History.db 19 | ``` 20 | 21 | Then check plugins 22 | 23 | ``` 24 | http://127.0.0.1:8001/-/plugins 25 | ``` 26 | -------------------------------------------------------------------------------- /tests/test_nteract_data_explorer.py: -------------------------------------------------------------------------------- 1 | from datasette.app import Datasette 2 | import pytest 3 | 4 | 5 | @pytest.mark.asyncio 6 | async def test_plugin_is_installed(): 7 | datasette = Datasette([], memory=True) 8 | response = await datasette.client.get("/-/plugins.json") 9 | assert response.status_code == 200 10 | installed_plugins = {p["name"] for p in response.json()} 11 | assert "datasette-nteract-data-explorer" in installed_plugins 12 | -------------------------------------------------------------------------------- /docs/demo-datasets.md: -------------------------------------------------------------------------------- 1 | ## Happy Planet Index 2 | 3 | Data on metrics for wellbeing for 137 countries from happy planet index: . Data cleaned by Doris Lee for the Lux project. 4 | 5 | ```bash 6 | wget https://raw.githubusercontent.com/lux-org/lux-datasets/master/data/hpi_cleaned.csv -P demo/ 7 | csvs-to-sqlite demo/hpi_cleaned.csv demo/happy_planet_index.db 8 | ``` 9 | 10 | TODO: Figure out how to get landlocked processed as either string or boolean without inference 11 | -------------------------------------------------------------------------------- /frontend-src/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | Datasette Nteract Data Explorer Demo 6 | 7 | 8 | 9 |
10 | 11 |
12 | 13 | 14 | 15 | -------------------------------------------------------------------------------- /frontend-src/basicData.mocks.ts: -------------------------------------------------------------------------------- 1 | // const basicData = { 2 | // schema: { 3 | // fields: [ 4 | // { 5 | // name: "index", 6 | // type: "integer", 7 | // }, 8 | // { 9 | // name: "param_session", 10 | // type: "object", 11 | // }, 12 | // ], 13 | // primaryKey: ["index"], 14 | // }, 15 | // data: [ 16 | // { 17 | // index: 0, 18 | // param_session: [ 19 | // { 20 | // name: "foo", 21 | // }, 22 | // { 23 | // name: "foo", 24 | // }, 25 | // ], 26 | // }, 27 | // ], 28 | // }; 29 | -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | 2 | 3 | # Templates 4 | 5 | ## Bug Report Template 6 | 7 | - What happened? 8 | - What did you expect to happen? 9 | - Anything that can help us to reproduce the bug (screenshots, error messages, sample code) 10 | - What browser / version of the plugin were you using? 11 | 12 | ## Feature Request Template 13 | 14 | - Share what you'd like to be able to do 15 | - Share why this would be useful to you 16 | - Any alternatives, workarounds, or ideas for a possible solution 17 | -------------------------------------------------------------------------------- /.github/PULL_REQUEST_TEMPLATE.md: -------------------------------------------------------------------------------- 1 | 2 | ## Motivation 3 | 4 | - What is the motivation / context for this change? (Screenshot, Github Issue, words) 5 | 6 | 7 | ## Changes 8 | 9 | 10 | 11 | 12 | | Before | After | 13 | | ------------ | ------------ | 14 | | Screenshot 1 | Screenshot 2 | 15 | 16 | ## Testing 17 | 18 | 19 | -------------------------------------------------------------------------------- /.github/workflows/test.yml: -------------------------------------------------------------------------------- 1 | name: Test 2 | 3 | on: [push] 4 | 5 | jobs: 6 | test: 7 | runs-on: ubuntu-latest 8 | strategy: 9 | matrix: 10 | python-version: ["3.7", "3.8", "3.9", "3.10"] 11 | steps: 12 | - uses: actions/checkout@v2 13 | - name: Set up Python ${{ matrix.python-version }} 14 | uses: actions/setup-python@v2 15 | with: 16 | python-version: ${{ matrix.python-version }} 17 | - uses: actions/cache@v2 18 | name: Configure pip caching 19 | with: 20 | path: ~/.cache/pip 21 | key: ${{ runner.os }}-pip-${{ hashFiles('**/setup.py') }} 22 | restore-keys: | 23 | ${{ runner.os }}-pip- 24 | - name: Install dependencies 25 | run: | 26 | pip install wheel 27 | pip install -e '.[test]' 28 | - name: Run tests 29 | run: | 30 | pytest 31 | -------------------------------------------------------------------------------- /frontend-src/datasette-data-explorer.types.ts: -------------------------------------------------------------------------------- 1 | // DatasetteExplorer 2 | // TODO... make component height configurable 3 | // NOTE: datasette explorer URL params may collide with Datasette native URl params. 4 | // Use filters with CAUTION! perhaps, may need to disable 5 | // the native URL params integration with a pull request to Data-explorer. 6 | 7 | type DatasetteRow = Record; 8 | export type DatasetteTable = DatasetteRow[]; 9 | export const FIELD_TYPES = [ 10 | "boolean", 11 | "number", 12 | "integer", 13 | "datetime", 14 | "string", 15 | ] as const; 16 | 17 | export interface FrictionlessSpecField { 18 | name: string; 19 | type: typeof FIELD_TYPES[number]; 20 | } 21 | 22 | export interface FrictionlessSpec { 23 | schema: { 24 | fields: FrictionlessSpecField[]; 25 | primaryKey: string[]; 26 | }; 27 | data: DatasetteTable; 28 | } 29 | -------------------------------------------------------------------------------- /demo/demo-metadata.yml: -------------------------------------------------------------------------------- 1 | title: 2 | Datasette Nteract Data Explorer Demo 3 | 4 | description_html: 5 | 6 | 7 | 8 |

This is a demo site for the Data Explorer plugin for Datasette, a free tool for publishing and exploring open datasets. We are using the Happy Planet Index dataset to show how this tool can help you explore your data.

9 | 10 |

For more information, please refer to the project documentation.

11 | 12 | license: "Apache License" 13 | license_url: "https://www.apache.org/licenses/LICENSE-2.0" 14 | source: Happy Planet Index 15 | source_url: "https://raw.githubusercontent.com/lux-org/lux-datasets/master/data/hpi_cleaned.csv" 16 | -------------------------------------------------------------------------------- /plugins/datasette_nteract_data_explorer.py: -------------------------------------------------------------------------------- 1 | from datasette import hookimpl 2 | import glob 3 | from os import path, pardir 4 | # from pathlib import Path 5 | 6 | # TODO: is this in-memory cache necessary? 7 | cache = {} 8 | static_dir = path.join(path.dirname(__file__), pardir, "js-dist") 9 | 10 | # cache files 11 | def cached_filepaths_for_extension(extension): 12 | pattern = path.join(static_dir, "*.{}".format(extension)) 13 | if pattern not in cache: 14 | # cache[pattern] = [ 15 | # "/-/static-plugins/datasette_nteract_data_explorer/{}".format(path.basename(g)) 16 | # for g in glob.glob(pattern) 17 | # ] 18 | cache[pattern] = [ 19 | "/assets/{}".format(path.basename(g)) 20 | for g in glob.glob(pattern) 21 | ] 22 | return cache[pattern] 23 | 24 | 25 | @hookimpl 26 | def extra_css_urls(view_name): 27 | if view_name == "table": 28 | return cached_filepaths_for_extension("css") 29 | 30 | 31 | @hookimpl 32 | def extra_js_urls(view_name): 33 | if view_name == "table": 34 | return cached_filepaths_for_extension("js") 35 | -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- 1 | 2 | .PHONY: publish-vercel, install 3 | 4 | # Flags used during local dev and in the published demo. 5 | DATASETTE_DEMO_FLAGS := \ 6 | --plugins-dir=demo/demo-plugins \ 7 | --metadata=demo/demo-metadata.yml 8 | 9 | # We didn't need to install yarn, npm packages etc 10 | # in the CI environment using the statics from PyPI, not from contents of the local repo. 11 | # We need to re-evaluate how to use locally created plugins/statics for this someday. For now, just use published assets on PyPI for simplicity. 12 | 13 | install: 14 | pip install -r demo/requirements.txt 15 | 16 | # https://github.com/simonw/datasette-publish-vercel#other-options 17 | publish-vercel: install 18 | datasette publish vercel demo/happy_planet_index.db \ 19 | --project=datasette-nteract-data-explorer \ 20 | --scope=datasette-visualization-plugin-demos \ 21 | --token=${VERCEL_TOKEN} \ 22 | --install datasette-nteract-data-explorer \ 23 | --public \ 24 | ${DATASETTE_DEMO_FLAGS} 25 | 26 | 27 | run-demo: 28 | datasette -i demo/happy_planet_index.db \ 29 | ${DATASETTE_DEMO_FLAGS} 30 | # --template-dir=demo/demo-templates 31 | -------------------------------------------------------------------------------- /demo/demo-plugins/footer.js: -------------------------------------------------------------------------------- 1 | // Append footer with the Vercel logo to every page. 2 | // TODO: Check if there a way to server-side render this someday? 3 | 4 | // Link + picture 5 | const imageElement = document.createElement("img"); 6 | imageElement.src = 7 | "https://www.datocms-assets.com/31049/1618983297-powered-by-vercel.svg"; 8 | const linkElement = document.createElement('a'); 9 | linkElement.href = 10 | "https://vercel.com/?utm_source=datasette-visualization-plugin-demos&utm_campaign=oss"; 11 | linkElement.target = "_blank"; 12 | linkElement.rel = 'noopener noreferrer'; 13 | linkElement.ariaLabel = 'Site hosted by Vercel'; 14 | 15 | // A block element so we can limit the size of the logo 16 | const buttonElement = document.createElement('div'); 17 | buttonElement.style = "width: 212px; padding-left: 1rem"; 18 | linkElement.appendChild(imageElement); 19 | buttonElement.appendChild(linkElement); 20 | 21 | // Final insertion + add to page. 22 | // A wrapper element to hold everything and supply some background coloring 23 | const sponsorContainer = document.createElement('div'); 24 | sponsorContainer.style = 'background-color: rgb(31,41,55); padding-top: 1rem; padding-bottom: 1rem;'; 25 | sponsorContainer.appendChild(buttonElement); 26 | // Attach as sibling of the official footer 27 | const footerElement = document.querySelector('footer'); 28 | footerElement.insertAdjacentHTML("afterend", sponsorContainer.outerHTML); 29 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "datasette-nteract-data-explorer", 3 | "version": "0.5.1", 4 | "description": "Automatic data visualization in datasette", 5 | "source": "frontend-src/main.tsx", 6 | "main": "dist/index.js", 7 | "targets": { 8 | "main": false 9 | }, 10 | "author": "Cameron Yick ", 11 | "license": "MIT", 12 | "private": false, 13 | "devDependencies": { 14 | "os-browserify": "^0.3.0", 15 | "parcel": "^2.4.0", 16 | "process": "^0.11.10" 17 | }, 18 | "browserslist": "> 0.5%, last 2 versions, not dead, not ios_saf < 13", 19 | "scripts": { 20 | "dev": "yarn parcel frontend-src/index.html --no-source-maps --dist-dir js-dist/", 21 | "build": "yarn parcel build frontend-src/index.html --no-source-maps --dist-dir js-dist/ && yarn run export", 22 | "export": "mkdir -p datasette_nteract_data_explorer/static && mv js-dist/*.js datasette_nteract_data_explorer/static", 23 | "clean": "rm -rf js-dist/ && rm -rf datasette_nteract_data_explorer/static/* " 24 | }, 25 | "dependencies": { 26 | "@modulz/design-system": "^0.6.2", 27 | "@nteract/data-explorer": "^8.2.12", 28 | "@swc/helpers": "^0.3.8", 29 | "jotai": "^1.7.8", 30 | "localforage": "^1.10.0", 31 | "preact": "^10.6.6", 32 | "styled-components": "^5.3.5" 33 | }, 34 | "alias": { 35 | "react": "preact/compat", 36 | "react-dom/test-utils": "preact/test-utils", 37 | "react-dom": "preact/compat", 38 | "react/jsx-runtime": "preact/jsx-runtime" 39 | } 40 | } 41 | -------------------------------------------------------------------------------- /setup.py: -------------------------------------------------------------------------------- 1 | from setuptools import setup 2 | import os 3 | 4 | VERSION = "0.5.1" 5 | ROOT = os.path.dirname(os.path.abspath(__file__)) 6 | 7 | def get_long_description(): 8 | with open( 9 | os.path.join(ROOT, "README.md"), 10 | encoding="utf8", 11 | ) as fp: 12 | return fp.read() 13 | 14 | 15 | setup( 16 | name="datasette-nteract-data-explorer", 17 | description="automatic visual data explorer for datasette", 18 | long_description=get_long_description(), 19 | long_description_content_type="text/markdown", 20 | author="Cameron Yick", 21 | url="https://github.com/hydrosquall/datasette-nteract-data-explorer", 22 | project_urls={ 23 | "Issues": "https://github.com/hydrosquall/datasette-nteract-data-explorer/issues", 24 | "CI": "https://github.com/hydrosquall/datasette-nteract-data-explorer/actions", 25 | "Changelog": "https://github.com/hydrosquall/datasette-nteract-data-explorer/releases", 26 | }, 27 | license="Apache License, Version 2.0", 28 | classifiers=[ 29 | "Framework :: Datasette", 30 | "License :: OSI Approved :: Apache Software License", 31 | ], 32 | version=VERSION, 33 | packages=["datasette_nteract_data_explorer"], 34 | entry_points={ 35 | "datasette": ["nteract_data_explorer = datasette_nteract_data_explorer"] 36 | }, 37 | install_requires=["datasette"], 38 | extras_require={"test": ["pytest", "pytest-asyncio"]}, 39 | package_data={"datasette_nteract_data_explorer": ["static/*", "templates/*"]}, 40 | python_requires=">=3.7", 41 | ) 42 | -------------------------------------------------------------------------------- /.github/workflows/build-demo.yml: -------------------------------------------------------------------------------- 1 | name: Publish demo to vercel 2 | # Based on TIL file: https://github.com/simonw/til/blob/main/.github/workflows/build.yml 3 | 4 | # Running this from here because Vercel build system seems tailored to publishing static sites, and wasn't handling a custom build function well. 5 | # in future, re-investigate using vercel to handle deployment previews. 6 | on: 7 | push: 8 | branches: 9 | - main 10 | workflow_dispatch: 11 | 12 | 13 | jobs: 14 | build: 15 | runs-on: ubuntu-latest 16 | steps: 17 | - name: Check out repo 18 | uses: actions/checkout@v2 19 | with: 20 | path: main 21 | - name: Set up Python 22 | uses: actions/setup-python@v1 23 | with: 24 | python-version: 3.9 25 | - uses: actions/cache@v2 26 | name: Configure pip caching 27 | with: 28 | path: ~/.cache/pip 29 | key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }} 30 | restore-keys: | 31 | ${{ runner.os }}-pip- 32 | - uses: actions/cache@v2 33 | with: 34 | path: ~/.npm 35 | key: ${{ runner.os }}-node- 36 | restore-keys: | 37 | ${{ runner.os }}-node- 38 | - name: Install pip version 39 | run: | 40 | python -m pip install --upgrade pip 41 | 42 | - name: Install npm dependencies 43 | run: yarn 44 | - name: Setup Node.js 45 | uses: actions/setup-node@v1 46 | with: 47 | node-version: '14.x' 48 | 49 | # note this step manages its own dependencies 50 | - name: Deploy Datasette using Vercel 51 | env: 52 | VERCEL_TOKEN: ${{ secrets.VERCEL_TOKEN }} 53 | run: |- 54 | cd main 55 | yarn 56 | yarn run build 57 | make publish-vercel 58 | -------------------------------------------------------------------------------- /docs/CONTRIBUTING.md: -------------------------------------------------------------------------------- 1 | 2 | ## Development 3 | 4 | ### Python 5 | 6 | To set up this plugin locally, first checkout the code. Then create a new virtual environment: 7 | 8 | cd datasette-nteract-data-explorer 9 | python3 -mvenv venv 10 | source venv/bin/activate 11 | 12 | Or if you are using `pipenv`: 13 | 14 | pipenv shell 15 | 16 | Or if you are using `pyenv`: 17 | 18 | pyenv virtualenv 3.9.10 datasette-nteract-data-explorer 19 | pyenv 20 | 21 | Now install the dependencies and test dependencies: 22 | 23 | pip install -e '.[test]' 24 | 25 | To run the tests: 26 | 27 | pytest 28 | 29 | ### Javascript 30 | 31 | To ensure stability when resolving 3rd party dependencies, we use the Yarn package manager. 32 | 33 | ```bash 34 | yarn install 35 | ``` 36 | 37 | To build a local test page 38 | 39 | ```bash 40 | yarn run dev 41 | ``` 42 | 43 | To build the package for production, then export the built files to where the Python package can use them 44 | 45 | ```bash 46 | yarn run build 47 | yarn run export 48 | ``` 49 | 50 | ### Releasing new versions 51 | 52 | To publish a new package to PyPI 53 | 54 | 1. Open a PR like this one: which bumps the package version 55 | 2. Tag the PR after merging locally, then push 56 | 57 | ```bash 58 | git tag 0.3.1 59 | git push --tags 60 | ``` 61 | 62 | 3. Open the [releases](https://github.com/hydrosquall/datasette-nteract-data-explorer/releases) page, and create a new release 63 | 64 | ![screenshot calling out the button for creating a new release](https://p-qkfgo2.t2.n0.cdn.getcloudapp.com/items/P8u7rZzw/2669d96b-3075-43b8-b85f-e0fe8e04ddf1.jpg?v=f2955a03fa423a7bd9aa0d7a74a1e018) 65 | 66 | 67 | Once created, the release will automatically trigger the PyPi publish [workflow](https://github.com/hydrosquall/datasette-nteract-data-explorer/actions/workflows/publish.yml) 68 | -------------------------------------------------------------------------------- /notes/development-notes.md: -------------------------------------------------------------------------------- 1 | ### Notes 2 | 3 | > this is not official documentation, and should be regarded as a "scratch pad". 4 | 5 | A test command: 6 | 7 | ```bash 8 | datasette ~/Library/Safari/History.db --plugins-dir=plugins/ 9 | ``` 10 | 11 | ```bash 12 | datasette ~/Library/Safari/History.db --plugins-dir=plugins/ --static assets:dist/ 13 | ``` 14 | 15 | --static assets:static-files/ 16 | 17 | ### Related GH Issues 18 | 19 | - 20 | - Look into fixing 21 | - Issue with parcel / SWC bundler: comments aren't stripped, code is not minified. 22 | - 23 | - Size audit: 24 | - Building for web target is not working. Needed to force it by building an HTML file. Investigate why later. 25 | - 26 | - 27 | 28 | ### Bundling 29 | 30 | Use something resembling these two commands in tandem 31 | 32 | ``` 33 | yarn run build 34 | ``` 35 | 36 | ``` 37 | python setup.py sdist && datasette install dist/datasette-nteract-data-explorer-0.1.0.tar.gz && datasette ~/Library/Safari/History.db 38 | ``` 39 | 40 | ### Sample Datasets 41 | 42 | - 43 | 44 | ### Research links 45 | 46 | - 47 | - The parcel warning messages were very helpful for realizing that the bundles were much bigger than I had hoped 48 | - At some point, we may want to revisit tree-shaking: 49 | 50 | ### Mini roadmap 51 | 52 | - The "query" view type loses this plugin, we should bring that back 53 | - Otherwise, people will lose data explorer if they want to apply a custom limit. 54 | -------------------------------------------------------------------------------- /.github/workflows/publish.yml: -------------------------------------------------------------------------------- 1 | name: Publish Python Package 2 | 3 | on: 4 | release: 5 | types: [created] 6 | 7 | jobs: 8 | test: 9 | runs-on: ubuntu-latest 10 | strategy: 11 | matrix: 12 | python-version: ["3.7", "3.8", "3.9", "3.10"] 13 | steps: 14 | - uses: actions/checkout@v2 15 | - name: Set up Python ${{ matrix.python-version }} 16 | uses: actions/setup-python@v2 17 | with: 18 | python-version: ${{ matrix.python-version }} 19 | - uses: actions/cache@v2 20 | name: Configure pip caching 21 | with: 22 | path: ~/.cache/pip 23 | key: ${{ runner.os }}-pip-${{ hashFiles('**/setup.py') }} 24 | restore-keys: | 25 | ${{ runner.os }}-pip- 26 | - name: Install dependencies 27 | run: | 28 | pip install -e '.[test]' 29 | - name: Run tests 30 | run: | 31 | pytest 32 | deploy: 33 | runs-on: ubuntu-latest 34 | needs: [test] 35 | steps: 36 | - uses: actions/checkout@v2 37 | - name: Set up Python 38 | uses: actions/setup-python@v2 39 | with: 40 | python-version: "3.10" 41 | - uses: actions/cache@v2 42 | name: Configure pip caching 43 | with: 44 | path: ~/.cache/pip 45 | key: ${{ runner.os }}-publish-pip-${{ hashFiles('**/setup.py') }} 46 | restore-keys: | 47 | ${{ runner.os }}-publish-pip- 48 | - name: Install python dependencies 49 | run: | 50 | pip install setuptools wheel twine build 51 | 52 | - name: Read .node-version 53 | run: echo ::set-output name=NODE_VERSION::$(cat .node-version) 54 | id: nodenv 55 | 56 | - name: Set up Node.js to build statics 57 | uses: actions/setup-node@v1 58 | with: 59 | node-version: "${{ steps.nodenv.outputs.NODE_VERSION }}" 60 | 61 | - name: Install NPM dependencies 62 | run: yarn 63 | 64 | - name: Build plugin static files 65 | run: yarn run build 66 | 67 | - name: Publish 68 | env: 69 | TWINE_USERNAME: __token__ 70 | TWINE_PASSWORD: ${{ secrets.PYPI_TOKEN }} 71 | run: | 72 | python -m build 73 | twine upload dist/* 74 | -------------------------------------------------------------------------------- /frontend-src/main.tsx: -------------------------------------------------------------------------------- 1 | import { render, h } from "preact"; 2 | 3 | // Modify some behaviors when running as a pluging called by Datasette from a webassembly environment 4 | // This is a temporary measure until we the Datasette Plugin API can indicate the host environment in a more direct way. 5 | const IS_DATASETTE_LITE = Boolean((window as any).__IS_DATASETTE_LITE__); 6 | 7 | function onLoad() { 8 | console.log("datasette-plugins: Registering datasette-nteract-data-explorer"); 9 | 10 | let mountElement: HTMLElement | null = null; 11 | let jsonUrl: string | null = null; 12 | 13 | const jsonEl = document.querySelector( 14 | // This is available only after datasette version 61.1 15 | // Remove this once plugin can specify which version of 16 | // datasette it requires for correct operation. 17 | // 'link[type="application/json+datasette"]' 18 | '.export-links a[href*=json]' 19 | ); 20 | 21 | if (jsonEl) { 22 | jsonUrl = jsonEl.getAttribute("href"); 23 | mountElement = document.createElement("div"); 24 | let table = document.querySelector("table.rows-and-columns"); 25 | if (table && table.parentNode) { 26 | table.parentNode.insertBefore(mountElement, table); 27 | } 28 | } 29 | 30 | if (jsonUrl) { 31 | // reshape URL to include another query parameter 32 | jsonUrl += jsonUrl.indexOf("?") > -1 ? "&" : "?"; 33 | jsonUrl += "_shape=array"; 34 | 35 | // Lazy load for code splitting 36 | import("./DatasetteDataExplorer").then(function ({ 37 | DatasetteDataExplorer, 38 | }) { 39 | if (mountElement && jsonUrl) { 40 | render( 41 | , 45 | mountElement 46 | ); 47 | } else { 48 | console.log("Couldn't find mount point"); 49 | } 50 | }); 51 | } 52 | } 53 | 54 | // Register listeners 55 | document.addEventListener("DOMContentLoaded", onLoad); 56 | 57 | // Prototype: enable dispatch via a web CustomEvent as an alternative 58 | if (IS_DATASETTE_LITE) { 59 | document.addEventListener("DatasetteLiteScriptsLoaded", onLoad); 60 | } 61 | -------------------------------------------------------------------------------- /datasette_nteract_data_explorer/__init__.py: -------------------------------------------------------------------------------- 1 | from datasette import hookimpl 2 | import glob 3 | from os import path 4 | 5 | cache = {} 6 | static_dir = path.join(path.dirname(__file__), "static") 7 | 8 | 9 | def argmin(array): 10 | array = list(array) 11 | return array.index(min(array)) 12 | 13 | 14 | def cached_filepaths_for_js_modules(): 15 | 16 | pattern = path.join(static_dir, "*.js") 17 | if pattern not in cache: 18 | # TODO: parse HTML to retrieve only the ES module version. For now, we rely on the hacky fact 19 | # that the ES6 module version gets built first. 20 | files = [path.basename(file) for file in glob.glob(pattern)] 21 | 22 | ## Hack two... we could check filesizes, and 23 | ## pick the smaller index file. 24 | ## Figure out support for older browsers once 25 | ## an MVP is working better. 26 | filesizes = [path.getsize(file) for file in glob.glob(pattern)] 27 | # print("pattern", pattern, files) 28 | 29 | smallestFileIndex = argmin(filesizes) 30 | 31 | moduleFiles = [ 32 | { 33 | "url": f"/-/static-plugins/datasette-nteract-data-explorer/{files[smallestFileIndex]}", 34 | # note modules 35 | "module": True, 36 | } 37 | ] 38 | 39 | # TODO: find a way to serve some assets 40 | # using async/defer in the script tag. 41 | 42 | return moduleFiles 43 | return cache[pattern] 44 | 45 | 46 | def cached_filepaths_for_extension(extension): 47 | pattern = path.join(static_dir, "*.{}".format(extension)) 48 | if pattern not in cache: 49 | files = [path.basename(file) for file in glob.glob(pattern)] 50 | 51 | assetPaths = [ 52 | f"/-/static-plugins/datasette-nteract-data-explorer/{file}" 53 | for file in files 54 | ] 55 | return assetPaths 56 | return cache[pattern] 57 | 58 | 59 | # Create a set with table names that should activate the plugin 60 | # for the datasette UI. 61 | # Listing: https://docs.datasette.io/en/stable/custom_templates.html#custom-templates 62 | # database view is activated by writing custom SQL 63 | PERMITTED_VIEWS = {"table", "query", "database"} 64 | 65 | 66 | # These hooks only run 67 | # for the TABLE pages. Other view choices include 68 | # database, index, etc 69 | @hookimpl 70 | def extra_css_urls(view_name): 71 | # check if the view is in the set of permitted views 72 | if view_name in PERMITTED_VIEWS: 73 | return cached_filepaths_for_extension("css") 74 | 75 | 76 | @hookimpl 77 | def extra_js_urls(view_name): 78 | print(view_name) 79 | if view_name in PERMITTED_VIEWS: 80 | return cached_filepaths_for_js_modules() 81 | -------------------------------------------------------------------------------- /frontend-src/datasette-data-explorer-helpers.ts: -------------------------------------------------------------------------------- 1 | import { 2 | DatasetteTable, 3 | FrictionlessSpec, 4 | FrictionlessSpecField, 5 | } from "./datasette-data-explorer.types"; 6 | 7 | // TODO: investigate d3 autoType 8 | export const dataFrameToFrictionlessSpec = ( 9 | table: DatasetteTable 10 | ): FrictionlessSpec | undefined => { 11 | if (table.length === 0) { 12 | return undefined; 13 | } 14 | 15 | // we assume all rows have same keys 16 | const fieldNames = Object.keys(table[0]); 17 | 18 | const detectedFields = fieldNames.map((col) => { 19 | // TODO: permit user to set datatype, e.g. calling status code 20 | // a color item. Or generation 21 | // TODO: check what columns appear across all rows 22 | // Throw warning if they don't all have same shape 23 | // Maybe parse datase 24 | // TODO: permit datetime to be processed specially 25 | // TODO: permit user specified datatype mapping 26 | // https://github.com/nteract/data-explorer/blob/3f7cd5b336ab43ff25fcd283aa62a182a801375d/src/utilities/types.ts 27 | if (table.every((r) => typeof r[col] === "number")) { 28 | if (table.every((r) => Number.isInteger(r[col]))) { 29 | return { name: col, type: "integer" as const }; 30 | } 31 | return { name: col, type: "number" as const }; 32 | } 33 | 34 | if (table.every((r) => typeof r[col] === "boolean")) { 35 | return { name: col, type: "boolean" as const }; 36 | } 37 | 38 | if (table.every((r) => typeof r[col] === "object")) { 39 | return { name: col, type: "object" as const }; 40 | } 41 | 42 | // if (col.meta.type === "datetime") { 43 | // return { name: id, type: "datetime" }; 44 | // } 45 | // Resolve upstream bug with nteract to fix table display 46 | // https://github.com/nteract/data-explorer/pull/41 47 | // if (col.kind === "string") { 48 | // return { name: id, type: "string" }; 49 | // } 50 | return { name: col, type: "string" as const }; 51 | }); 52 | 53 | // Remove object fields, they break frictionless 54 | const fields = detectedFields.filter( 55 | (f) => f.type !== "object" 56 | ) as FrictionlessSpecField[]; // hardcode the cleaning 57 | 58 | const data = { 59 | schema: { 60 | fields, 61 | primaryKey: [] as string[], 62 | }, 63 | data: table.map((r: any, i: number) => { 64 | const row: Record = {}; 65 | // FillNa - // Data integrity 66 | // We can remove this if we enforce data quality checks 67 | // higher up in the data pipeline 68 | fields.forEach((field) => { 69 | if (field.type === "string" && r[field.name] === null) { 70 | row[field.name] = ""; 71 | } else { 72 | row[field.name] = r[field.name]; 73 | } 74 | }); 75 | return row; 76 | }), 77 | }; 78 | 79 | return data; 80 | }; 81 | -------------------------------------------------------------------------------- /frontend-src/FieldTypeCustomizer.tsx: -------------------------------------------------------------------------------- 1 | import { h, FunctionComponent } from "preact"; 2 | import { useState } from "preact/hooks"; 3 | import { Button } from "@modulz/design-system"; 4 | import { 5 | FrictionlessSpecField, 6 | FIELD_TYPES 7 | } from "./datasette-data-explorer.types"; 8 | 9 | // a control panel for assigning custom frictionless types 10 | interface FieldTypeCustomizerProps { 11 | // Programmatically inferred 12 | inferredFields: FrictionlessSpecField[]; 13 | // user assigned 14 | customFields?: FrictionlessSpecField[]; 15 | onSave: (fields: FrictionlessSpecField[]) => void; 16 | } 17 | export const FieldTypeCustomizerPanel: FunctionComponent = ({ 18 | inferredFields, customFields = [], onSave, 19 | }) => { 20 | const [localCustomFields, setLocalCustomFields] = useState(customFields); 21 | return ( 22 |
23 | {/* add a save button for customFields */} 24 |
25 | 32 | 33 | 41 |
42 | 43 | 44 | {inferredFields.map((field) => { 45 | const maybeCustomField = localCustomFields.find( 46 | (f) => f.name === field.name 47 | ); 48 | 49 | const handleChange: h.JSX.GenericEventHandler = ( 50 | val 51 | ) => { 52 | if (val.target !== null) { 53 | const target = val.target as HTMLSelectElement; 54 | 55 | if (maybeCustomField) { 56 | // update existing entry 57 | const newCustomFields = localCustomFields.map((customField) => { 58 | if (customField.name === field.name) { 59 | return { 60 | ...customField, 61 | type: target.value as FrictionlessSpecField["type"], 62 | }; 63 | } 64 | return customField; 65 | }); 66 | setLocalCustomFields(newCustomFields); 67 | } else { 68 | // add new entry 69 | setLocalCustomFields([ 70 | ...localCustomFields, 71 | { 72 | ...field, 73 | type: target.value as FrictionlessSpecField["type"], 74 | }, 75 | ]); 76 | } 77 | } 78 | }; 79 | 80 | return ( 81 | 82 | 85 | 97 | 98 | ); 99 | })} 100 |
83 | 84 | 86 | 96 |
101 |
102 | ); 103 | }; 104 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # datasette-nteract-data-explorer 2 | 3 | [![PyPI](https://img.shields.io/pypi/v/datasette-nteract-data-explorer.svg)](https://pypi.org/project/datasette-nteract-data-explorer/) 4 | [![Changelog](https://img.shields.io/github/v/release/hydrosquall/datasette-nteract-data-explorer?include_prereleases&label=changelog)](https://github.com/hydrosquall/datasette-nteract-data-explorer/releases) 5 | [![Tests](https://github.com/hydrosquall/datasette-nteract-data-explorer/workflows/Test/badge.svg)](https://github.com/hydrosquall/datasette-nteract-data-explorer/actions?query=workflow%3ATest) 6 | [![License](https://img.shields.io/badge/license-Apache%202.0-blue.svg)](https://github.com/hydrosquall/datasette-nteract-data-explorer/blob/main/LICENSE) 7 | 8 | An automatic data visualization plugin for the [Datasette](https://datasette.io/) ecosystem. See your dataset from multiple views with an easy-to-use, customizable menu-based interface. 9 | 10 | ## Demo 11 | 12 | Try the [live demo](https://datasette-nteract-data-explorer.vercel.app/happy_planet_index/hpi_cleaned?_size=137) 13 | 14 | ![screenshot](https://p-qkfgo2.t2.n0.cdn.getcloudapp.com/items/yAuK9LRE/6802f849-315d-4a21-93b4-61c94d066bdc.jpg?v=f1ceee5ed70832d74e745b6508baeffb) 15 | 16 | _Running Datasette with the Happy Planet Index dataset_ 17 | 18 | ## Installation 19 | 20 | Install this plugin in the same Python environment as Datasette. 21 | 22 | ```bash 23 | datasette install datasette-nteract-data-explorer 24 | ``` 25 | 26 | ## Usage 27 | 28 | - Click "View in Data Explorer" to expand the visualization panel 29 | - Click the icons on the right side to change the visualization type. 30 | - Use the menus underneath the graphing area to configure your graph (e.g. change which columns to graph, colors to use, etc) 31 | - Use "advanced settings" mode to override the inferred column types. For example, you may want to treat a number as a "string" to be able to use it as a category. 32 | - See a [live demo](https://data-explorer.nteract.io/) of the original Nteract data-explorer component used in isolation. 33 | 34 | You can run a minimal demo after the installation step 35 | 36 | ```bash 37 | datasette -i demo/happy_planet_index.db 38 | ``` 39 | 40 | If you're interested in improving the demo site, you can run a copy of the site the extra metadata/plugins used in the [published demo](https://datasette-nteract-data-explorer.vercel.app). 41 | 42 | ```bash 43 | make run-demo 44 | ``` 45 | 46 | Thank you for reading this far! If you use the Data Explorer in your own site and would like others to find it, you can [mention it here](https://github.com/hydrosquall/datasette-nteract-data-explorer/discussions/10). 47 | 48 | ## Development 49 | 50 | See [contributing docs](./docs/CONTRIBUTING.md). 51 | 52 | ## Acknowledgements 53 | 54 | - The [Data Explorer](https://github.com/nteract/data-explorer) was designed by Elijah Meeks. I co-maintain this project as part of the [Nteract](https://nteract.io/) open-source team. You can read about the design behind this tool [here](https://blog.nteract.io/designing-the-nteract-data-explorer-f4476d53f897) 55 | - The data model is based on the [Frictionless Data Spec](https://specs.frictionlessdata.io/). 56 | - This plugin was bootstrapped by Simon Willison's [Datasette plugin template](https://simonwillison.net/2020/Jun/20/cookiecutter-plugins/) 57 | - Demo dataset from the [Happy Planet Index](https://happyplanetindex.org/) was cleaned by Doris Lee. This dataset was chosen because of its global appeal, modest size, and variety in column datatypes (numbers, low cardinality and high cardinality strings, booleans). 58 | - Hosting for the demo site is provided by Vercel. 59 | 60 | [![site hosted by vercel](https://www.datocms-assets.com/31049/1618983297-powered-by-vercel.svg)](https://vercel.com/?utm_source=datasette-visualization-plugin-demos&utm_campaign=oss) 61 | -------------------------------------------------------------------------------- /frontend-src/DatasetteDataExplorer.tsx: -------------------------------------------------------------------------------- 1 | import { h, FunctionComponent } from "preact"; 2 | import { useEffect, useState, useMemo } from "preact/hooks"; 3 | 4 | import { 5 | Accordion, 6 | AccordionContent, 7 | AccordionItem, 8 | AccordionTrigger, 9 | Button, 10 | } from "@modulz/design-system"; 11 | 12 | import DataExplorer from "@nteract/data-explorer"; 13 | import localforage from "localforage"; 14 | import { atomWithHash } from "jotai/utils"; 15 | import { useAtom } from "jotai"; 16 | 17 | import { dataFrameToFrictionlessSpec } from "./datasette-data-explorer-helpers"; 18 | import { 19 | FrictionlessSpecField, 20 | FrictionlessSpec, 21 | } from "./datasette-data-explorer.types"; 22 | import { FieldTypeCustomizerPanel } from "./FieldTypeCustomizer"; 23 | 24 | interface DatasetteDataExplorerProps { 25 | dataUrl: string; 26 | /** When true, synchronizes cmponent state to URL hash */ 27 | shouldSyncStateToUrlHash?: boolean; 28 | } 29 | 30 | export const explorerMetadataAtom = atomWithHash("dataExplorer.metadata", { dx: {}}); 31 | 32 | export const DatasetteDataExplorer: FunctionComponent< 33 | DatasetteDataExplorerProps 34 | > = (props) => { 35 | const { dataUrl, shouldSyncStateToUrlHash } = props; 36 | const [frictionlessData, setFrictionlessData] = useState(); 37 | const [customFields, setCustomFields] = useState(); 38 | 39 | const [explorerMetadata, setExplorerMetadata ] = useAtom(explorerMetadataAtom); 40 | 41 | // is settings visibile 42 | const [isSettingsVisible, setIsSettingsVisible] = useState(false); 43 | 44 | useEffect(() => { 45 | // TODO: Swap dataURL for 46 | // option that checks the columns metadata instead of just 47 | // checking the first row. 48 | fetch(props.dataUrl) 49 | .then((response) => response.json()) 50 | .then((json) => { 51 | const maybeFrictionlessDataSpec = dataFrameToFrictionlessSpec(json); 52 | setFrictionlessData(maybeFrictionlessDataSpec); 53 | }); 54 | }, [props.dataUrl]); 55 | 56 | // Combine user defined with inferred field types 57 | const combinedData = useMemo(() => { 58 | if (frictionlessData && customFields) { 59 | return { 60 | ...frictionlessData, 61 | schema: { 62 | ...frictionlessData.schema, 63 | fields: frictionlessData.schema.fields.map((field) => { 64 | const maybeCustomField = customFields.find( 65 | (f) => f.name === field.name 66 | ); 67 | return { 68 | ...field, 69 | type: maybeCustomField ? maybeCustomField.type : field.type, 70 | }; 71 | }), 72 | }, 73 | }; 74 | } 75 | return frictionlessData; 76 | }, [frictionlessData, customFields]); 77 | 78 | // Load custom field type assignments from localStorage 79 | useEffect(() => { 80 | // TODO: rethink how cache works, since it may change based 81 | // on which URL params are included in the URL 82 | localforage.getItem(dataUrl, function (err, value) { 83 | if (value) { 84 | setCustomFields(value as any); 85 | } else { 86 | console.warn(err); 87 | } 88 | }); 89 | }, []); 90 | 91 | // Handler to save custom fields to local storage 92 | const handleSave = (field: FrictionlessSpecField[]) => { 93 | localforage.setItem(dataUrl, field, function (err, value) { 94 | if (err) { 95 | console.warn(err); 96 | } 97 | }); 98 | }; 99 | 100 | return ( 101 |
102 | {combinedData && combinedData.data.length > 0 && ( 103 | 104 | 105 | 106 | 109 | 110 | 111 |
112 | 117 |
118 | 126 | 127 | {isSettingsVisible && ( 128 |
129 | 134 |
135 | )} 136 |
137 |
138 |
139 |
140 |
141 | )} 142 |
143 | ); 144 | }; 145 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Apache License 2 | Version 2.0, January 2004 3 | http://www.apache.org/licenses/ 4 | 5 | TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION 6 | 7 | 1. Definitions. 8 | 9 | "License" shall mean the terms and conditions for use, reproduction, 10 | and distribution as defined by Sections 1 through 9 of this document. 11 | 12 | "Licensor" shall mean the copyright owner or entity authorized by 13 | the copyright owner that is granting the License. 14 | 15 | "Legal Entity" shall mean the union of the acting entity and all 16 | other entities that control, are controlled by, or are under common 17 | control with that entity. For the purposes of this definition, 18 | "control" means (i) the power, direct or indirect, to cause the 19 | direction or management of such entity, whether by contract or 20 | otherwise, or (ii) ownership of fifty percent (50%) or more of the 21 | outstanding shares, or (iii) beneficial ownership of such entity. 22 | 23 | "You" (or "Your") shall mean an individual or Legal Entity 24 | exercising permissions granted by this License. 25 | 26 | "Source" form shall mean the preferred form for making modifications, 27 | including but not limited to software source code, documentation 28 | source, and configuration files. 29 | 30 | "Object" form shall mean any form resulting from mechanical 31 | transformation or translation of a Source form, including but 32 | not limited to compiled object code, generated documentation, 33 | and conversions to other media types. 34 | 35 | "Work" shall mean the work of authorship, whether in Source or 36 | Object form, made available under the License, as indicated by a 37 | copyright notice that is included in or attached to the work 38 | (an example is provided in the Appendix below). 39 | 40 | "Derivative Works" shall mean any work, whether in Source or Object 41 | form, that is based on (or derived from) the Work and for which the 42 | editorial revisions, annotations, elaborations, or other modifications 43 | represent, as a whole, an original work of authorship. For the purposes 44 | of this License, Derivative Works shall not include works that remain 45 | separable from, or merely link (or bind by name) to the interfaces of, 46 | the Work and Derivative Works thereof. 47 | 48 | "Contribution" shall mean any work of authorship, including 49 | the original version of the Work and any modifications or additions 50 | to that Work or Derivative Works thereof, that is intentionally 51 | submitted to Licensor for inclusion in the Work by the copyright owner 52 | or by an individual or Legal Entity authorized to submit on behalf of 53 | the copyright owner. For the purposes of this definition, "submitted" 54 | means any form of electronic, verbal, or written communication sent 55 | to the Licensor or its representatives, including but not limited to 56 | communication on electronic mailing lists, source code control systems, 57 | and issue tracking systems that are managed by, or on behalf of, the 58 | Licensor for the purpose of discussing and improving the Work, but 59 | excluding communication that is conspicuously marked or otherwise 60 | designated in writing by the copyright owner as "Not a Contribution." 61 | 62 | "Contributor" shall mean Licensor and any individual or Legal Entity 63 | on behalf of whom a Contribution has been received by Licensor and 64 | subsequently incorporated within the Work. 65 | 66 | 2. Grant of Copyright License. Subject to the terms and conditions of 67 | this License, each Contributor hereby grants to You a perpetual, 68 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable 69 | copyright license to reproduce, prepare Derivative Works of, 70 | publicly display, publicly perform, sublicense, and distribute the 71 | Work and such Derivative Works in Source or Object form. 72 | 73 | 3. Grant of Patent License. Subject to the terms and conditions of 74 | this License, each Contributor hereby grants to You a perpetual, 75 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable 76 | (except as stated in this section) patent license to make, have made, 77 | use, offer to sell, sell, import, and otherwise transfer the Work, 78 | where such license applies only to those patent claims licensable 79 | by such Contributor that are necessarily infringed by their 80 | Contribution(s) alone or by combination of their Contribution(s) 81 | with the Work to which such Contribution(s) was submitted. If You 82 | institute patent litigation against any entity (including a 83 | cross-claim or counterclaim in a lawsuit) alleging that the Work 84 | or a Contribution incorporated within the Work constitutes direct 85 | or contributory patent infringement, then any patent licenses 86 | granted to You under this License for that Work shall terminate 87 | as of the date such litigation is filed. 88 | 89 | 4. Redistribution. You may reproduce and distribute copies of the 90 | Work or Derivative Works thereof in any medium, with or without 91 | modifications, and in Source or Object form, provided that You 92 | meet the following conditions: 93 | 94 | (a) You must give any other recipients of the Work or 95 | Derivative Works a copy of this License; and 96 | 97 | (b) You must cause any modified files to carry prominent notices 98 | stating that You changed the files; and 99 | 100 | (c) You must retain, in the Source form of any Derivative Works 101 | that You distribute, all copyright, patent, trademark, and 102 | attribution notices from the Source form of the Work, 103 | excluding those notices that do not pertain to any part of 104 | the Derivative Works; and 105 | 106 | (d) If the Work includes a "NOTICE" text file as part of its 107 | distribution, then any Derivative Works that You distribute must 108 | include a readable copy of the attribution notices contained 109 | within such NOTICE file, excluding those notices that do not 110 | pertain to any part of the Derivative Works, in at least one 111 | of the following places: within a NOTICE text file distributed 112 | as part of the Derivative Works; within the Source form or 113 | documentation, if provided along with the Derivative Works; or, 114 | within a display generated by the Derivative Works, if and 115 | wherever such third-party notices normally appear. The contents 116 | of the NOTICE file are for informational purposes only and 117 | do not modify the License. You may add Your own attribution 118 | notices within Derivative Works that You distribute, alongside 119 | or as an addendum to the NOTICE text from the Work, provided 120 | that such additional attribution notices cannot be construed 121 | as modifying the License. 122 | 123 | You may add Your own copyright statement to Your modifications and 124 | may provide additional or different license terms and conditions 125 | for use, reproduction, or distribution of Your modifications, or 126 | for any such Derivative Works as a whole, provided Your use, 127 | reproduction, and distribution of the Work otherwise complies with 128 | the conditions stated in this License. 129 | 130 | 5. Submission of Contributions. Unless You explicitly state otherwise, 131 | any Contribution intentionally submitted for inclusion in the Work 132 | by You to the Licensor shall be under the terms and conditions of 133 | this License, without any additional terms or conditions. 134 | Notwithstanding the above, nothing herein shall supersede or modify 135 | the terms of any separate license agreement you may have executed 136 | with Licensor regarding such Contributions. 137 | 138 | 6. Trademarks. This License does not grant permission to use the trade 139 | names, trademarks, service marks, or product names of the Licensor, 140 | except as required for reasonable and customary use in describing the 141 | origin of the Work and reproducing the content of the NOTICE file. 142 | 143 | 7. Disclaimer of Warranty. Unless required by applicable law or 144 | agreed to in writing, Licensor provides the Work (and each 145 | Contributor provides its Contributions) on an "AS IS" BASIS, 146 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or 147 | implied, including, without limitation, any warranties or conditions 148 | of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A 149 | PARTICULAR PURPOSE. You are solely responsible for determining the 150 | appropriateness of using or redistributing the Work and assume any 151 | risks associated with Your exercise of permissions under this License. 152 | 153 | 8. Limitation of Liability. In no event and under no legal theory, 154 | whether in tort (including negligence), contract, or otherwise, 155 | unless required by applicable law (such as deliberate and grossly 156 | negligent acts) or agreed to in writing, shall any Contributor be 157 | liable to You for damages, including any direct, indirect, special, 158 | incidental, or consequential damages of any character arising as a 159 | result of this License or out of the use or inability to use the 160 | Work (including but not limited to damages for loss of goodwill, 161 | work stoppage, computer failure or malfunction, or any and all 162 | other commercial damages or losses), even if such Contributor 163 | has been advised of the possibility of such damages. 164 | 165 | 9. Accepting Warranty or Additional Liability. While redistributing 166 | the Work or Derivative Works thereof, You may choose to offer, 167 | and charge a fee for, acceptance of support, warranty, indemnity, 168 | or other liability obligations and/or rights consistent with this 169 | License. However, in accepting such obligations, You may act only 170 | on Your own behalf and on Your sole responsibility, not on behalf 171 | of any other Contributor, and only if You agree to indemnify, 172 | defend, and hold each Contributor harmless for any liability 173 | incurred by, or claims asserted against, such Contributor by reason 174 | of your accepting any such warranty or additional liability. 175 | 176 | END OF TERMS AND CONDITIONS 177 | 178 | APPENDIX: How to apply the Apache License to your work. 179 | 180 | To apply the Apache License to your work, attach the following 181 | boilerplate notice, with the fields enclosed by brackets "[]" 182 | replaced with your own identifying information. (Don't include 183 | the brackets!) The text should be enclosed in the appropriate 184 | comment syntax for the file format. We also recommend that a 185 | file or class name and description of purpose be included on the 186 | same "printed page" as the copyright notice for easier 187 | identification within third-party archives. 188 | 189 | Copyright [yyyy] [name of copyright owner] 190 | 191 | Licensed under the Apache License, Version 2.0 (the "License"); 192 | you may not use this file except in compliance with the License. 193 | You may obtain a copy of the License at 194 | 195 | http://www.apache.org/licenses/LICENSE-2.0 196 | 197 | Unless required by applicable law or agreed to in writing, software 198 | distributed under the License is distributed on an "AS IS" BASIS, 199 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 200 | See the License for the specific language governing permissions and 201 | limitations under the License. 202 | -------------------------------------------------------------------------------- /demo/hpi_cleaned.csv: -------------------------------------------------------------------------------- 1 | Country,Region,AvrgLifeExpectancy,AvrgWellBeing,HappyLifeYears,Footprint,Inequality,HappyPlanetIndex,GDPPerCapita,Population,G10,cca3,landlocked,NumOfficialLanguages,NumBorderingCountries,area 2 | Afghanistan,Middle East,59.7,3.8,12.4,0.8,0.43,20.2,691,29726803,False,AFG,True,3.0,6.0,652230 3 | Albania,Post-communist,77.3,5.5,34.4,2.2,0.17,36.8,4247,2900489,False,ALB,False,1.0,4.0,28748 4 | Algeria,Middle East,74.3,5.6,30.5,2.1,0.24,33.3,5584,37439427,False,DZA,False,1.0,7.0,2381741 5 | Argentina,Americas,75.9,6.5,40.2,3.1,0.16,35.2,14357,42095224,False,ARG,False,2.0,5.0,2780400 6 | Armenia,Post-communist,74.4,4.3,24.0,2.2,0.22,25.7,3566,2978339,False,ARM,True,1.0,4.0,29743 7 | Australia,Asia Pacific,82.1,7.2,53.1,9.3,0.08,21.2,67646,22728254,False,AUS,False,1.0,0.0,7692024 8 | Austria,Europe,81.0,7.4,54.4,6.1,0.07,30.5,48324,8429991,False,AUT,True,1.0,8.0,83871 9 | Bangladesh,Asia Pacific,70.8,4.7,23.3,0.7,0.27,38.4,859,155257387,False,BGD,False,1.0,2.0,147570 10 | Belarus,Post-communist,70.9,5.7,34.0,5.1,0.13,21.7,6722,9464000,False,BLR,True,2.0,5.0,207600 11 | Belgium,Europe,80.4,6.9,49.5,7.4,0.09,23.7,44731,11128246,True,BEL,False,3.0,4.0,30528 12 | Belize,Americas,69.8,6.1,34.2,2.5,0.18,33.8,4674,336707,False,BLZ,False,3.0,2.0,22966 13 | Benin,Sub Saharan Africa,59.2,3.2,9.9,1.4,0.44,13.4,808,10049792,False,BEN,False,1.0,4.0,112622 14 | Bhutan,Asia Pacific,68.7,5.6,27.4,2.3,0.27,28.6,2452,743711,False,BTN,True,1.0,2.0,38394 15 | "Bolivia, Plurinational State of",Americas,67.5,6.0,25.6,3.0,0.35,23.3,2645,10238762,False,BOL,True,4.0,5.0,1098581 16 | Bosnia and Herzegovina,Post-communist,76.2,4.8,28.6,3.1,0.19,25.3,4495,3828419,False,BIH,False,3.0,3.0,51209 17 | Botswana,Sub Saharan Africa,64.2,4.8,21.3,3.8,0.28,16.6,6936,2132822,False,BWA,True,2.0,4.0,582000 18 | Brazil,Americas,73.9,6.9,39.0,3.1,0.22,34.3,12157,202401584,False,BRA,False,1.0,10.0,8515767 19 | Bulgaria,Post-communist,73.9,4.2,24.0,3.3,0.19,20.4,7333,7305888,False,BGR,False,1.0,5.0,110879 20 | Burkina Faso,Sub Saharan Africa,58.0,4.0,12.6,1.2,0.43,17.9,673,16590813,False,BFA,True,1.0,6.0,272967 21 | Burundi,Sub Saharan Africa,55.8,3.4,9.5,0.8,0.48,15.6,244,10124572,False,BDI,True,2.0,3.0,27834 22 | Cambodia,Asia Pacific,67.5,3.9,18.2,1.2,0.28,25.6,946,14832255,False,KHM,False,1.0,3.0,181035 23 | Cameroon,Sub Saharan Africa,54.6,4.2,11.6,1.2,0.47,16.7,1222,21659488,False,CMR,False,2.0,6.0,475442 24 | Canada,Americas,81.7,7.4,53.9,8.2,0.09,23.9,52738,34751476,True,CAN,False,2.0,1.0,9984670 25 | Chad,Sub Saharan Africa,50.8,4.0,9.6,1.5,0.51,12.8,973,12715465,False,TCD,True,2.0,6.0,1284000 26 | Chile,Americas,81.1,6.6,44.7,4.4,0.14,31.7,15253,17388437,False,CHL,False,1.0,3.0,756102 27 | China,Asia Pacific,75.4,5.1,30.6,3.4,0.17,25.7,6265,1350695000,False,CHN,False,1.0,16.0,9706961 28 | Colombia,Americas,73.7,6.4,35.1,1.9,0.24,40.7,7885,46881018,False,COL,False,1.0,5.0,1141748 29 | Comoros,Sub Saharan Africa,62.6,4.0,15.4,1.0,0.36,23.1,750,733661,False,COM,False,3.0,0.0,1862 30 | Costa Rica,Americas,79.1,7.3,48.2,2.8,0.15,44.7,9733,4654148,False,CRI,False,1.0,2.0,51100 31 | Croatia,Post-communist,77.0,6.0,39.6,3.9,0.12,30.2,13236,4267558,False,HRV,False,1.0,5.0,56594 32 | Cyprus,Europe,79.8,6.2,42.3,4.2,0.12,30.7,28868,1129303,False,CYP,False,2.0,0.0,9251 33 | Denmark,Europe,79.8,7.5,54.4,5.5,0.07,32.7,57636,5591572,False,DNK,False,1.0,1.0,43094 34 | Djibouti,Sub Saharan Africa,61.3,4.4,15.1,2.2,0.42,16.4,1587,853069,False,DJI,False,2.0,3.0,23200 35 | Dominican Republic,Americas,73.1,4.8,23.7,1.5,0.3,30.3,5967,10155036,False,DOM,False,1.0,1.0,48671 36 | Ecuador,Americas,75.4,6.0,34.3,2.2,0.22,37.0,5702,15419493,False,ECU,False,1.0,2.0,276841 37 | Egypt,Middle East,70.7,4.2,21.8,2.2,0.23,23.8,3226,85660902,False,EGY,False,1.0,4.0,1002450 38 | El Salvador,Americas,72.5,5.9,32.2,2.1,0.22,35.6,3922,6072233,False,SLV,False,1.0,2.0,21041 39 | Estonia,Post-communist,76.2,5.4,35.0,6.9,0.12,17.9,17491,1322696,False,EST,False,1.0,2.0,45227 40 | Ethiopia,Sub Saharan Africa,62.8,4.6,17.8,1.0,0.36,26.7,470,92191211,False,ETH,True,1.0,6.0,1104300 41 | Finland,Europe,80.4,7.4,54.6,5.9,0.06,31.3,47416,5413971,False,FIN,False,2.0,3.0,338424 42 | France,Europe,81.8,6.6,48.1,5.1,0.09,30.4,40850,65639975,True,FRA,False,1.0,8.0,551695 43 | Gabon,Sub Saharan Africa,63.3,4.0,15.4,2.0,0.36,17.5,10642,1613489,False,GAB,False,1.0,3.0,267668 44 | Georgia,Post-communist,74.6,4.3,24.7,1.6,0.2,31.1,4143,3825000,False,GEO,False,1.0,4.0,69700 45 | Germany,Europe,80.6,6.7,48.2,5.3,0.08,29.8,44011,80425823,True,DEU,False,1.0,9.0,357114 46 | Ghana,Sub Saharan Africa,61.0,5.1,18.8,2.0,0.38,21.4,1642,25544565,False,GHA,False,1.0,3.0,238533 47 | Greece,Europe,80.5,5.1,33.3,4.4,0.16,23.6,22243,11045011,False,GRC,False,1.0,4.0,131990 48 | Guatemala,Americas,71.4,5.9,29.6,1.9,0.27,34.2,3279,15368759,False,GTM,False,1.0,4.0,108889 49 | Guinea,Sub Saharan Africa,57.7,3.7,11.8,1.4,0.42,15.9,487,11628767,False,GIN,False,1.0,6.0,245857 50 | Haiti,Americas,62.1,4.4,16.5,0.6,0.37,28.6,767,10288828,False,HTI,False,2.0,1.0,27750 51 | Honduras,Americas,72.8,4.6,22.1,1.7,0.31,27.2,2395,7736131,False,HND,False,1.0,3.0,112492 52 | Hong Kong,Asia Pacific,83.6,5.5,40.1,8.8,0.1,16.8,36708,7154600,False,HKG,False,2.0,1.0,1104 53 | Hungary,Post-communist,74.9,4.7,28.7,2.9,0.15,26.4,12820,9920362,False,HUN,True,1.0,7.0,93028 54 | Iceland,Europe,82.2,7.6,58.0,6.4,0.05,31.1,44259,320716,False,ISL,False,1.0,0.0,103000 55 | India,Asia Pacific,67.3,4.6,20.4,1.2,0.31,29.2,1450,1263589639,False,IND,False,3.0,6.0,3287590 56 | Indonesia,Asia Pacific,68.5,5.4,28.4,1.6,0.21,35.7,3701,248037853,False,IDN,False,1.0,3.0,1904569 57 | Iran,Middle East,74.8,4.6,25.4,2.8,0.23,24.0,7711,76156975,False,IRN,False,1.0,7.0,1648195 58 | Iraq,Middle East,69.0,4.7,22.8,1.9,0.27,26.5,6649,32780975,False,IRQ,False,3.0,6.0,438317 59 | Ireland,Europe,80.5,7.0,50.3,5.6,0.08,30.0,48977,4586897,False,IRL,False,2.0,1.0,70273 60 | Israel,Middle East,81.9,7.1,52.5,6.2,0.08,28.8,32819,7910500,False,ISR,False,2.0,5.0,20770 61 | Italy,Europe,82.7,5.8,41.1,4.6,0.12,28.1,34844,59539717,True,ITA,False,1.0,6.0,301336 62 | Jamaica,Americas,75.3,5.6,31.9,1.9,0.21,36.9,5446,2707805,False,JAM,False,2.0,0.0,10991 63 | Japan,Asia Pacific,83.2,6.0,44.0,5.0,0.09,28.3,46679,127561489,True,JPN,False,1.0,0.0,377930 64 | Kazakhstan,Post-communist,68.6,5.8,31.7,5.6,0.18,19.1,12120,16791425,False,KAZ,True,2.0,5.0,2724900 65 | Kenya,Sub Saharan Africa,60.3,4.5,16.2,1.0,0.38,24.2,1185,42542978,False,KEN,False,2.0,5.0,580367 66 | Kyrgyzstan,Post-communist,69.7,5.2,28.7,1.9,0.18,33.1,1178,5607200,False,KGZ,True,2.0,4.0,199951 67 | Latvia,Post-communist,73.6,5.1,31.2,6.3,0.14,17.1,13775,2034319,False,LVA,False,1.0,4.0,64559 68 | Lebanon,Middle East,78.8,4.6,28.2,3.8,0.19,21.9,9729,4440728,False,LBN,False,2.0,2.0,10452 69 | Lesotho,Sub Saharan Africa,48.9,4.9,13.4,1.7,0.42,16.7,1159,2057331,False,LSO,True,2.0,1.0,30355 70 | Liberia,Sub Saharan Africa,60.2,4.4,15.7,1.2,0.38,22.2,414,4190155,False,LBR,False,1.0,3.0,111369 71 | Lithuania,Post-communist,72.8,5.8,36.4,5.8,0.11,21.0,14343,2987773,False,LTU,False,1.0,4.0,65300 72 | Luxembourg,Europe,81.1,7.0,51.7,15.8,0.07,13.2,105447,530946,False,LUX,True,3.0,3.0,2586 73 | Macedonia,Post-communist,75.1,4.6,27.2,3.3,0.18,23.4,4710,2069270,False,MKD,True,1.0,5.0,25713 74 | Malawi,Sub Saharan Africa,60.1,4.3,13.7,0.8,0.45,22.1,270,15700436,False,MWI,True,2.0,3.0,118484 75 | Malaysia,Asia Pacific,74.4,5.9,38.3,3.7,0.1,30.3,10835,29021940,False,MYS,False,2.0,3.0,330803 76 | Malta,Europe,80.2,6.0,40.8,4.4,0.13,29.0,21176,419455,False,MLT,False,2.0,0.0,316 77 | Mauritania,Sub Saharan Africa,62.6,4.7,18.0,2.5,0.37,18.0,1283,3777067,False,MRT,False,1.0,4.0,1030700 78 | Mauritius,Sub Saharan Africa,74.0,5.5,33.1,3.5,0.17,27.4,9114,1255882,False,MUS,False,3.0,0.0,2040 79 | Mexico,Americas,76.4,7.3,44.3,2.9,0.19,40.7,9703,122070963,False,MEX,False,1.0,3.0,1964375 80 | Mongolia,Asia Pacific,68.6,4.9,25.3,6.1,0.22,14.3,4377,2808339,False,MNG,True,1.0,2.0,1564110 81 | Montenegro,Post-communist,75.8,5.2,32.1,3.8,0.16,25.1,6587,620601,False,MNE,False,1.0,5.0,13812 82 | Morocco,Middle East,73.4,5.0,26.7,1.7,0.25,32.7,2931,32984190,False,MAR,False,2.0,3.0,446550 83 | Mozambique,Sub Saharan Africa,54.3,5.0,15.0,0.9,0.43,23.7,565,25732928,False,MOZ,False,1.0,6.0,801590 84 | Myanmar,Asia Pacific,65.5,4.4,18.8,1.4,0.32,24.7,1421,52543841,False,MMR,False,1.0,5.0,676578 85 | Namibia,Sub Saharan Africa,64.0,4.7,21.3,2.5,0.26,21.6,5680,2291645,False,NAM,False,9.0,4.0,825615 86 | Nepal,Asia Pacific,68.8,4.2,20.2,1.0,0.27,30.5,685,27500515,False,NPL,True,1.0,2.0,147181 87 | Netherlands,Europe,81.2,7.5,57.0,5.3,0.04,35.3,49475,16754962,True,NLD,False,1.0,2.0,41850 88 | New Zealand,Asia Pacific,81.4,7.2,52.7,5.6,0.08,31.3,39505,4408100,False,NZL,False,3.0,0.0,270467 89 | Nicaragua,Americas,74.3,5.4,29.2,1.4,0.25,38.7,1780,5877034,False,NIC,False,1.0,2.0,130373 90 | Niger,Sub Saharan Africa,60.0,3.8,13.1,1.6,0.4,16.8,394,17635782,False,NER,True,1.0,7.0,1267000 91 | Nigeria,Sub Saharan Africa,52.1,5.5,15.5,1.2,0.44,22.2,2740,168240403,False,NGA,False,1.0,4.0,923768 92 | Norway,Europe,81.3,7.7,57.1,5.0,0.07,36.8,101564,5018573,False,NOR,False,3.0,3.0,323802 93 | Oman,Middle East,76.3,6.9,44.5,7.5,0.13,21.1,21534,3545192,False,OMN,False,1.0,3.0,309500 94 | Pakistan,Asia Pacific,65.7,5.1,19.5,0.8,0.4,31.5,1266,177392252,False,PAK,False,2.0,4.0,881912 95 | Palestine,Middle East,72.6,4.6,24.5,1.2,0.24,34.5,2783,4046901,False,PSE,False,1.0,3.0,6220 96 | Panama,Americas,77.2,6.9,42.1,2.8,0.19,39.5,10139,3743761,False,PAN,False,1.0,2.0,75417 97 | Paraguay,Americas,72.6,5.8,31.8,4.2,0.22,23.3,3858,6379162,False,PRY,True,2.0,3.0,406752 98 | Peru,Americas,74.1,5.8,32.9,2.3,0.21,34.6,6389,30158768,False,PER,False,3.0,5.0,1285216 99 | Philippines,Asia Pacific,67.9,5.0,24.1,1.1,0.26,35.0,2605,96017322,False,PHL,False,2.0,0.0,342353 100 | Poland,Post-communist,76.9,5.9,39.2,4.4,0.11,27.5,13142,38063164,False,POL,False,1.0,7.0,312679 101 | Portugal,Europe,80.3,5.0,32.3,3.9,0.16,24.8,20577,10514844,False,PRT,False,1.0,1.0,92090 102 | Romania,Post-communist,74.3,5.2,30.1,2.7,0.19,28.8,8577,20058035,False,ROU,False,1.0,5.0,238391 103 | Russian Federation,Post-communist,69.5,5.6,31.7,5.7,0.16,18.7,14079,143201676,False,RUS,False,1.0,14.0,17098242 104 | Rwanda,Sub Saharan Africa,63.1,3.3,12.4,0.9,0.37,19.6,667,10817350,False,RWA,True,3.0,4.0,26338 105 | Senegal,Sub Saharan Africa,65.4,3.7,15.5,1.2,0.33,21.9,1019,13780108,False,SEN,False,1.0,5.0,196722 106 | Serbia,Post-communist,74.5,5.2,30.3,2.7,0.19,29.0,5659,7199077,False,SRB,True,1.0,8.0,88361 107 | Sierra Leone,Sub Saharan Africa,49.8,4.5,10.8,1.2,0.5,15.3,619,6043157,False,SLE,False,1.0,2.0,71740 108 | Slovakia,Post-communist,75.9,5.9,37.9,4.1,0.13,28.2,17207,5407579,False,SVK,True,1.0,5.0,49037 109 | Slovenia,Post-communist,80.0,6.1,42.6,5.8,0.1,24.6,22478,2057159,False,SVN,False,1.0,4.0,20273 110 | South Africa,Sub Saharan Africa,56.3,5.1,18.5,3.3,0.33,15.9,7592,52341695,False,ZAF,False,11.0,6.0,1221037 111 | South Korea,Asia Pacific,81.3,6.0,42.2,5.7,0.11,24.8,24454,50004441,False,KOR,False,1.0,1.0,100210 112 | Spain,Europe,82.2,6.3,45.3,3.7,0.1,36.0,28648,46773055,False,ESP,False,1.0,5.0,505992 113 | Sri Lanka,Asia Pacific,74.6,4.2,24.9,1.3,0.17,33.8,3351,20424000,False,LKA,False,2.0,1.0,65610 114 | Suriname,Americas,70.8,6.3,35.2,4.3,0.19,25.4,9422,528535,False,SUR,False,1.0,3.0,163820 115 | Swaziland,Sub Saharan Africa,48.9,4.9,13.6,2.0,0.41,15.5,3989,1231694,False,SWZ,True,2.0,2.0,17364 116 | Sweden,Europe,81.8,7.6,57.4,7.3,0.06,28.0,57134,9519374,True,SWE,False,1.0,2.0,450295 117 | Switzerland,Europe,82.6,7.8,59.3,5.8,0.06,34.3,83209,7996861,True,CHE,True,4.0,5.0,41284 118 | Syria,Middle East,70.4,3.2,14.7,1.5,0.3,19.1,2080,21427155,False,SYR,False,1.0,5.0,185180 119 | Tajikistan,Post-communist,69.0,4.5,22.2,0.9,0.26,34.2,962,7930929,False,TJK,True,2.0,4.0,143100 120 | Tanzania,Sub Saharan Africa,63.5,4.0,16.2,1.3,0.33,22.1,828,48645709,False,TZA,False,2.0,8.0,945087 121 | Thailand,Asia Pacific,74.1,6.3,38.6,2.7,0.15,37.3,5918,67164130,False,THA,False,1.0,4.0,513120 122 | Togo,Sub Saharan Africa,58.6,2.9,9.0,1.1,0.43,13.2,580,6745581,False,TGO,False,1.0,3.0,56785 123 | Trinidad and Tobago,Americas,70.1,6.4,34.4,7.9,0.21,15.7,18322,1341579,False,TTO,False,1.0,0.0,5130 124 | Tunisia,Middle East,74.6,4.5,25.2,2.3,0.22,26.2,4188,10777500,False,TUN,False,1.0,2.0,163610 125 | Turkey,Middle East,74.7,5.3,31.2,3.3,0.19,26.4,10646,74099255,False,TUR,False,1.0,8.0,783562 126 | Turkmenistan,Post-communist,65.3,5.5,24.0,5.5,0.31,14.6,6798,5172941,False,TKM,True,2.0,4.0,488100 127 | Uganda,Sub Saharan Africa,57.1,4.3,13.8,1.2,0.41,19.4,656,35400620,False,UGA,True,2.0,5.0,241550 128 | Ukraine,Post-communist,70.3,5.0,28.3,2.8,0.17,26.4,3855,45593300,False,UKR,False,1.0,7.0,603500 129 | United Kingdom,Europe,80.4,6.9,49.1,4.9,0.09,31.9,41295,63700300,True,GBR,False,1.0,1.0,242900 130 | United States of America,Americas,78.8,7.0,46.8,8.2,0.13,20.7,51457,314112078,True,USA,False,1.0,2.0,9372610 131 | Uruguay,Americas,76.9,6.4,39.4,2.9,0.18,36.1,15128,3396753,False,URY,False,1.0,2.0,181034 132 | Uzbekistan,Post-communist,68.2,6.0,27.9,2.3,0.3,29.1,1719,29774500,False,UZB,True,2.0,5.0,447400 133 | Vanuatu,Asia Pacific,71.3,6.5,34.9,1.9,0.22,40.6,3158,247498,False,VUT,False,3.0,0.0,12189 134 | Venezuela,Americas,73.9,7.1,41.5,3.6,0.19,33.6,12772,29854238,False,VEN,False,1.0,3.0,916445 135 | Vietnam,Asia Pacific,75.5,5.5,32.8,1.7,0.19,40.3,1755,88809200,False,VNM,False,1.0,3.0,331212 136 | Yemen,Middle East,63.3,4.1,15.2,1.0,0.39,22.8,1289,24882792,False,YEM,False,1.0,2.0,527968 137 | Zambia,Sub Saharan Africa,58.4,5.0,16.7,1.0,0.41,25.2,1687,14786581,False,ZMB,True,1.0,8.0,752612 138 | Zimbabwe,Sub Saharan Africa,53.7,5.0,16.4,1.4,0.37,22.1,851,14565482,False,ZWE,True,15.0,4.0,390757 139 | -------------------------------------------------------------------------------- /yarn.lock: -------------------------------------------------------------------------------- 1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY. 2 | # yarn lockfile v1 3 | 4 | 5 | "@babel/code-frame@^7.0.0", "@babel/code-frame@^7.16.7": 6 | version "7.16.7" 7 | resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.16.7.tgz#44416b6bd7624b998f5b1af5d470856c40138789" 8 | integrity sha512-iAXqUn8IIeBTNd72xsFlgaXHkMBMt6y4HJp1tIaK465CWLT/fG1aqB7ykr95gHHmlBdGbFeWWfyB4NJJ0nmeIg== 9 | dependencies: 10 | "@babel/highlight" "^7.16.7" 11 | 12 | "@babel/generator@^7.17.3": 13 | version "7.17.7" 14 | resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.17.7.tgz#8da2599beb4a86194a3b24df6c085931d9ee45ad" 15 | integrity sha512-oLcVCTeIFadUoArDTwpluncplrYBmTCCZZgXCbgNGvOBBiSDDK3eWO4b/+eOTli5tKv1lg+a5/NAXg+nTcei1w== 16 | dependencies: 17 | "@babel/types" "^7.17.0" 18 | jsesc "^2.5.1" 19 | source-map "^0.5.0" 20 | 21 | "@babel/helper-annotate-as-pure@^7.16.0": 22 | version "7.16.7" 23 | resolved "https://registry.yarnpkg.com/@babel/helper-annotate-as-pure/-/helper-annotate-as-pure-7.16.7.tgz#bb2339a7534a9c128e3102024c60760a3a7f3862" 24 | integrity sha512-s6t2w/IPQVTAET1HitoowRGXooX8mCgtuP5195wD/QJPV6wYjpujCGF7JuMODVX2ZAJOf1GT6DT9MHEZvLOFSw== 25 | dependencies: 26 | "@babel/types" "^7.16.7" 27 | 28 | "@babel/helper-environment-visitor@^7.16.7": 29 | version "7.16.7" 30 | resolved "https://registry.yarnpkg.com/@babel/helper-environment-visitor/-/helper-environment-visitor-7.16.7.tgz#ff484094a839bde9d89cd63cba017d7aae80ecd7" 31 | integrity sha512-SLLb0AAn6PkUeAfKJCCOl9e1R53pQlGAfc4y4XuMRZfqeMYLE0dM1LMhqbGAlGQY0lfw5/ohoYWAe9V1yibRag== 32 | dependencies: 33 | "@babel/types" "^7.16.7" 34 | 35 | "@babel/helper-function-name@^7.16.7": 36 | version "7.16.7" 37 | resolved "https://registry.yarnpkg.com/@babel/helper-function-name/-/helper-function-name-7.16.7.tgz#f1ec51551fb1c8956bc8dd95f38523b6cf375f8f" 38 | integrity sha512-QfDfEnIUyyBSR3HtrtGECuZ6DAyCkYFp7GHl75vFtTnn6pjKeK0T1DB5lLkFvBea8MdaiUABx3osbgLyInoejA== 39 | dependencies: 40 | "@babel/helper-get-function-arity" "^7.16.7" 41 | "@babel/template" "^7.16.7" 42 | "@babel/types" "^7.16.7" 43 | 44 | "@babel/helper-get-function-arity@^7.16.7": 45 | version "7.16.7" 46 | resolved "https://registry.yarnpkg.com/@babel/helper-get-function-arity/-/helper-get-function-arity-7.16.7.tgz#ea08ac753117a669f1508ba06ebcc49156387419" 47 | integrity sha512-flc+RLSOBXzNzVhcLu6ujeHUrD6tANAOU5ojrRx/as+tbzf8+stUCj7+IfRRoAbEZqj/ahXEMsjhOhgeZsrnTw== 48 | dependencies: 49 | "@babel/types" "^7.16.7" 50 | 51 | "@babel/helper-hoist-variables@^7.16.7": 52 | version "7.16.7" 53 | resolved "https://registry.yarnpkg.com/@babel/helper-hoist-variables/-/helper-hoist-variables-7.16.7.tgz#86bcb19a77a509c7b77d0e22323ef588fa58c246" 54 | integrity sha512-m04d/0Op34H5v7pbZw6pSKP7weA6lsMvfiIAMeIvkY/R4xQtBSMFEigu9QTZ2qB/9l22vsxtM8a+Q8CzD255fg== 55 | dependencies: 56 | "@babel/types" "^7.16.7" 57 | 58 | "@babel/helper-module-imports@^7.0.0", "@babel/helper-module-imports@^7.16.0": 59 | version "7.16.7" 60 | resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.16.7.tgz#25612a8091a999704461c8a222d0efec5d091437" 61 | integrity sha512-LVtS6TqjJHFc+nYeITRo6VLXve70xmq7wPhWTqDJusJEgGmkAACWwMiTNrvfoQo6hEhFwAIixNkvB0jPXDL8Wg== 62 | dependencies: 63 | "@babel/types" "^7.16.7" 64 | 65 | "@babel/helper-split-export-declaration@^7.16.7": 66 | version "7.16.7" 67 | resolved "https://registry.yarnpkg.com/@babel/helper-split-export-declaration/-/helper-split-export-declaration-7.16.7.tgz#0b648c0c42da9d3920d85ad585f2778620b8726b" 68 | integrity sha512-xbWoy/PFoxSWazIToT9Sif+jJTlrMcndIsaOKvTA6u7QEo7ilkRZpjew18/W3c7nm8fXdUDXh02VXTbZ0pGDNw== 69 | dependencies: 70 | "@babel/types" "^7.16.7" 71 | 72 | "@babel/helper-validator-identifier@^7.16.7": 73 | version "7.16.7" 74 | resolved "https://registry.yarnpkg.com/@babel/helper-validator-identifier/-/helper-validator-identifier-7.16.7.tgz#e8c602438c4a8195751243da9031d1607d247cad" 75 | integrity sha512-hsEnFemeiW4D08A5gUAZxLBTXpZ39P+a+DGDsHw1yxqyQ/jzFEnxf5uTEGp+3bzAbNOxU1paTgYS4ECU/IgfDw== 76 | 77 | "@babel/highlight@^7.16.7": 78 | version "7.16.10" 79 | resolved "https://registry.yarnpkg.com/@babel/highlight/-/highlight-7.16.10.tgz#744f2eb81579d6eea753c227b0f570ad785aba88" 80 | integrity sha512-5FnTQLSLswEj6IkgVw5KusNUUFY9ZGqe/TRFnP/BKYHYgfh7tc+C7mwiy95/yNP7Dh9x580Vv8r7u7ZfTBFxdw== 81 | dependencies: 82 | "@babel/helper-validator-identifier" "^7.16.7" 83 | chalk "^2.0.0" 84 | js-tokens "^4.0.0" 85 | 86 | "@babel/parser@^7.16.7", "@babel/parser@^7.17.3": 87 | version "7.17.8" 88 | resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.17.8.tgz#2817fb9d885dd8132ea0f8eb615a6388cca1c240" 89 | integrity sha512-BoHhDJrJXqcg+ZL16Xv39H9n+AqJ4pcDrQBGZN+wHxIysrLZ3/ECwCBUch/1zUNhnsXULcONU3Ei5Hmkfk6kiQ== 90 | 91 | "@babel/runtime@^7.13.10": 92 | version "7.17.8" 93 | resolved "https://registry.yarnpkg.com/@babel/runtime/-/runtime-7.17.8.tgz#3e56e4aff81befa55ac3ac6a0967349fd1c5bca2" 94 | integrity sha512-dQpEpK0O9o6lj6oPu0gRDbbnk+4LeHlNcBpspf6Olzt3GIX4P1lWF1gS+pHLDFlaJvbR6q7jCfQ08zA4QJBnmA== 95 | dependencies: 96 | regenerator-runtime "^0.13.4" 97 | 98 | "@babel/template@^7.16.7": 99 | version "7.16.7" 100 | resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.16.7.tgz#8d126c8701fde4d66b264b3eba3d96f07666d155" 101 | integrity sha512-I8j/x8kHUrbYRTUxXrrMbfCa7jxkE7tZre39x3kjr9hvI82cK1FfqLygotcWN5kdPGWcLdWMHpSBavse5tWw3w== 102 | dependencies: 103 | "@babel/code-frame" "^7.16.7" 104 | "@babel/parser" "^7.16.7" 105 | "@babel/types" "^7.16.7" 106 | 107 | "@babel/traverse@^7.4.5": 108 | version "7.17.3" 109 | resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.17.3.tgz#0ae0f15b27d9a92ba1f2263358ea7c4e7db47b57" 110 | integrity sha512-5irClVky7TxRWIRtxlh2WPUUOLhcPN06AGgaQSB8AEwuyEBgJVuJ5imdHm5zxk8w0QS5T+tDfnDxAlhWjpb7cw== 111 | dependencies: 112 | "@babel/code-frame" "^7.16.7" 113 | "@babel/generator" "^7.17.3" 114 | "@babel/helper-environment-visitor" "^7.16.7" 115 | "@babel/helper-function-name" "^7.16.7" 116 | "@babel/helper-hoist-variables" "^7.16.7" 117 | "@babel/helper-split-export-declaration" "^7.16.7" 118 | "@babel/parser" "^7.17.3" 119 | "@babel/types" "^7.17.0" 120 | debug "^4.1.0" 121 | globals "^11.1.0" 122 | 123 | "@babel/types@^7.16.7", "@babel/types@^7.17.0": 124 | version "7.17.0" 125 | resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.17.0.tgz#a826e368bccb6b3d84acd76acad5c0d87342390b" 126 | integrity sha512-TmKSNO4D5rzhL5bjWFcVHHLETzfQ/AmbKpKPOSjlP0WoHZ6L911fgoOKY4Alp/emzG4cHJdyN49zpgkbXFEHHw== 127 | dependencies: 128 | "@babel/helper-validator-identifier" "^7.16.7" 129 | to-fast-properties "^2.0.0" 130 | 131 | "@emotion/is-prop-valid@^1.1.0": 132 | version "1.1.2" 133 | resolved "https://registry.yarnpkg.com/@emotion/is-prop-valid/-/is-prop-valid-1.1.2.tgz#34ad6e98e871aa6f7a20469b602911b8b11b3a95" 134 | integrity sha512-3QnhqeL+WW88YjYbQL5gUIkthuMw7a0NGbZ7wfFVk2kg/CK5w8w5FFa0RzWjyY1+sujN0NWbtSHH6OJmWHtJpQ== 135 | dependencies: 136 | "@emotion/memoize" "^0.7.4" 137 | 138 | "@emotion/memoize@^0.7.4": 139 | version "0.7.5" 140 | resolved "https://registry.yarnpkg.com/@emotion/memoize/-/memoize-0.7.5.tgz#2c40f81449a4e554e9fc6396910ed4843ec2be50" 141 | integrity sha512-igX9a37DR2ZPGYtV6suZ6whr8pTFtyHL3K/oLUotxpSVO2ASaprmAe2Dkq7tBo7CRY7MMDrAa9nuQP9/YG8FxQ== 142 | 143 | "@emotion/stylis@^0.8.4": 144 | version "0.8.5" 145 | resolved "https://registry.yarnpkg.com/@emotion/stylis/-/stylis-0.8.5.tgz#deacb389bd6ee77d1e7fcaccce9e16c5c7e78e04" 146 | integrity sha512-h6KtPihKFn3T9fuIrwvXXUOwlx3rfUvfZIcP5a6rh8Y7zjE3O06hT5Ss4S/YI1AYhuZ1kjaE/5EaOOI2NqSylQ== 147 | 148 | "@emotion/unitless@^0.7.4": 149 | version "0.7.5" 150 | resolved "https://registry.yarnpkg.com/@emotion/unitless/-/unitless-0.7.5.tgz#77211291c1900a700b8a78cfafda3160d76949ed" 151 | integrity sha512-OWORNpfjMsSSUBVrRBVGECkhWcULOAJz9ZW8uK9qgxD+87M7jHRcvh/A96XXNhXTLmKcoYSQtBEX7lHMO7YRwg== 152 | 153 | "@icons/material@^0.2.4": 154 | version "0.2.4" 155 | resolved "https://registry.yarnpkg.com/@icons/material/-/material-0.2.4.tgz#e90c9f71768b3736e76d7dd6783fc6c2afa88bc8" 156 | integrity sha512-QPcGmICAPbGLGb6F/yNf/KzKqvFx8z5qx3D1yFqVAjoFmXK35EgyW+cJ57Te3CNsmzblwtzakLGFqHPqrfb4Tw== 157 | 158 | "@modulz/design-system@^0.6.2": 159 | version "0.6.2" 160 | resolved "https://registry.yarnpkg.com/@modulz/design-system/-/design-system-0.6.2.tgz#c44fbd124edc34013ef3c86b14f6d9d830b2d9fc" 161 | integrity sha512-mP5Xc4m/F6N8jutWYS9YIJ5T3IKeSDlsyzM0l2yZTNKJTpy6xi6fRpLHWfqzcb6j2f2KbfCIWNKCFWQflBlu5w== 162 | dependencies: 163 | "@radix-ui/colors" "0.1.7" 164 | "@radix-ui/react-accordion" "0.1.1" 165 | "@radix-ui/react-alert-dialog" "0.1.1" 166 | "@radix-ui/react-aspect-ratio" "0.1.1" 167 | "@radix-ui/react-avatar" "0.1.1" 168 | "@radix-ui/react-checkbox" "0.1.1" 169 | "@radix-ui/react-context-menu" "0.1.1" 170 | "@radix-ui/react-dialog" "0.1.1" 171 | "@radix-ui/react-dropdown-menu" "0.1.1" 172 | "@radix-ui/react-icons" "1.0.3" 173 | "@radix-ui/react-id" "0.1.1" 174 | "@radix-ui/react-menu" "0.1.1" 175 | "@radix-ui/react-popover" "0.1.1" 176 | "@radix-ui/react-portal" "0.1.1" 177 | "@radix-ui/react-progress" "0.1.1" 178 | "@radix-ui/react-radio-group" "0.1.1" 179 | "@radix-ui/react-separator" "0.1.1" 180 | "@radix-ui/react-slider" "0.1.1" 181 | "@radix-ui/react-switch" "0.1.1" 182 | "@radix-ui/react-tabs" "0.1.1" 183 | "@radix-ui/react-toggle" "0.1.1" 184 | "@radix-ui/react-tooltip" "0.1.1" 185 | "@radix-ui/react-use-layout-effect" "0.1.0" 186 | "@stitches/react" "1.2.6" 187 | lodash.merge "^4.6.2" 188 | 189 | "@nteract/data-explorer@^8.2.12": 190 | version "8.2.12" 191 | resolved "https://registry.yarnpkg.com/@nteract/data-explorer/-/data-explorer-8.2.12.tgz#1a5ea4eaafc05374e258b393fa74791978a824ce" 192 | integrity sha512-p88YyzJ6eOgrslJ8X9ILURlSDeyRz8j3VvLbbSGrsDKMmz7mpfLDqAZBuUHRzQZTZF9QalfTnKW+ajA0DX79BA== 193 | dependencies: 194 | "@nteract/octicons" "^2.0.0" 195 | d3-collection "^1.0.7" 196 | d3-scale "^3.0.0" 197 | d3-shape "^1.2.2" 198 | numeral "^2.0.6" 199 | react-color "^2.14.1" 200 | react-table "6.11.5" 201 | react-table-hoc-fixed-columns "2.1.3" 202 | semiotic "^2.0.0-rc.8" 203 | 204 | "@nteract/octicons@^2.0.0": 205 | version "2.0.0" 206 | resolved "https://registry.yarnpkg.com/@nteract/octicons/-/octicons-2.0.0.tgz#eccd5de8bc0ef4d1bb4154b791db80f4f6bac995" 207 | integrity sha512-wQHZMgYJHnZw/ozCeG/cwfUPiQDpmkmF8G57quKpWCMbBBLEN1tUhjRzcZ9IdJyZsiu0dxenjDhOs5+m5DHYGA== 208 | 209 | "@parcel/bundler-default@2.4.0": 210 | version "2.4.0" 211 | resolved "https://registry.yarnpkg.com/@parcel/bundler-default/-/bundler-default-2.4.0.tgz#a3b88131601821514cd932b3b2ada226d7d3404d" 212 | integrity sha512-RaXlxo0M51739Ko3bsOJpDBZlJ+cqkDoBTozNeSc65jS2TMBIBWLMapm8095qmty39OrgYNhzjgPiIlKDS/LWA== 213 | dependencies: 214 | "@parcel/diagnostic" "2.4.0" 215 | "@parcel/hash" "2.4.0" 216 | "@parcel/plugin" "2.4.0" 217 | "@parcel/utils" "2.4.0" 218 | nullthrows "^1.1.1" 219 | 220 | "@parcel/cache@2.4.0": 221 | version "2.4.0" 222 | resolved "https://registry.yarnpkg.com/@parcel/cache/-/cache-2.4.0.tgz#aa83243a00ee861183c6a1ce880292c6c1175022" 223 | integrity sha512-oOudoAafrCAHQY0zkU7gVHG1pAGBUz9rht7Tx4WupTmAH0O0F5UnZs6XbjoBJaPHg+CYUXK7v9wQcrNA72E3GA== 224 | dependencies: 225 | "@parcel/fs" "2.4.0" 226 | "@parcel/logger" "2.4.0" 227 | "@parcel/utils" "2.4.0" 228 | lmdb "2.2.4" 229 | 230 | "@parcel/codeframe@2.4.0": 231 | version "2.4.0" 232 | resolved "https://registry.yarnpkg.com/@parcel/codeframe/-/codeframe-2.4.0.tgz#c9a78a558f9a5c628c162d5774e2223d236d9f20" 233 | integrity sha512-PJ3W9Z0sjoS2CANyo50c+LEr9IRZrtu0WsVPSYZ5ZYRuSXrSa/6PcAlnkyDk2+hi7Od8ncT2bmDexl0Oar3Jyg== 234 | dependencies: 235 | chalk "^4.1.0" 236 | 237 | "@parcel/compressor-raw@2.4.0": 238 | version "2.4.0" 239 | resolved "https://registry.yarnpkg.com/@parcel/compressor-raw/-/compressor-raw-2.4.0.tgz#25c701d5a3a4cea843f8d0806b9192a8b107f5d8" 240 | integrity sha512-ZErX14fTc0gKIgtnuqW7Clfln4dpXWfUaJQQIf5C3x/LkpUeEhdXeKntkvSxOddDk2JpIKDwqzAxEMZUnDo4Nw== 241 | dependencies: 242 | "@parcel/plugin" "2.4.0" 243 | 244 | "@parcel/config-default@2.4.0": 245 | version "2.4.0" 246 | resolved "https://registry.yarnpkg.com/@parcel/config-default/-/config-default-2.4.0.tgz#a9ec50b99923d6f589b44bf9fd476425879102aa" 247 | integrity sha512-pFOPBXPO6HGqNWTLkcK5i8haMOrRgUouUhcWPGWDpN9IPUYFK2E/O1E/uyMjIA1mSL3FnazI+jJwZ45NhKPpIA== 248 | dependencies: 249 | "@parcel/bundler-default" "2.4.0" 250 | "@parcel/compressor-raw" "2.4.0" 251 | "@parcel/namer-default" "2.4.0" 252 | "@parcel/optimizer-css" "2.4.0" 253 | "@parcel/optimizer-htmlnano" "2.4.0" 254 | "@parcel/optimizer-image" "2.4.0" 255 | "@parcel/optimizer-svgo" "2.4.0" 256 | "@parcel/optimizer-terser" "2.4.0" 257 | "@parcel/packager-css" "2.4.0" 258 | "@parcel/packager-html" "2.4.0" 259 | "@parcel/packager-js" "2.4.0" 260 | "@parcel/packager-raw" "2.4.0" 261 | "@parcel/packager-svg" "2.4.0" 262 | "@parcel/reporter-dev-server" "2.4.0" 263 | "@parcel/resolver-default" "2.4.0" 264 | "@parcel/runtime-browser-hmr" "2.4.0" 265 | "@parcel/runtime-js" "2.4.0" 266 | "@parcel/runtime-react-refresh" "2.4.0" 267 | "@parcel/runtime-service-worker" "2.4.0" 268 | "@parcel/transformer-babel" "2.4.0" 269 | "@parcel/transformer-css" "2.4.0" 270 | "@parcel/transformer-html" "2.4.0" 271 | "@parcel/transformer-image" "2.4.0" 272 | "@parcel/transformer-js" "2.4.0" 273 | "@parcel/transformer-json" "2.4.0" 274 | "@parcel/transformer-postcss" "2.4.0" 275 | "@parcel/transformer-posthtml" "2.4.0" 276 | "@parcel/transformer-raw" "2.4.0" 277 | "@parcel/transformer-react-refresh-wrap" "2.4.0" 278 | "@parcel/transformer-svg" "2.4.0" 279 | 280 | "@parcel/core@2.4.0": 281 | version "2.4.0" 282 | resolved "https://registry.yarnpkg.com/@parcel/core/-/core-2.4.0.tgz#c0533760f9d4f04757c69152aa9a6219828ac1ee" 283 | integrity sha512-EWZ2UWtIuwDc3fgsKyyTLpNNPoG8Yk2L117ICWF/+cqY8z/wJHm2KwLbeplDeq524shav0GJ9O4CemP3JPx0Nw== 284 | dependencies: 285 | "@parcel/cache" "2.4.0" 286 | "@parcel/diagnostic" "2.4.0" 287 | "@parcel/events" "2.4.0" 288 | "@parcel/fs" "2.4.0" 289 | "@parcel/graph" "2.4.0" 290 | "@parcel/hash" "2.4.0" 291 | "@parcel/logger" "2.4.0" 292 | "@parcel/package-manager" "2.4.0" 293 | "@parcel/plugin" "2.4.0" 294 | "@parcel/source-map" "^2.0.0" 295 | "@parcel/types" "2.4.0" 296 | "@parcel/utils" "2.4.0" 297 | "@parcel/workers" "2.4.0" 298 | abortcontroller-polyfill "^1.1.9" 299 | base-x "^3.0.8" 300 | browserslist "^4.6.6" 301 | clone "^2.1.1" 302 | dotenv "^7.0.0" 303 | dotenv-expand "^5.1.0" 304 | json-source-map "^0.6.1" 305 | json5 "^2.2.0" 306 | msgpackr "^1.5.4" 307 | nullthrows "^1.1.1" 308 | semver "^5.7.1" 309 | 310 | "@parcel/css-darwin-arm64@1.7.3": 311 | version "1.7.3" 312 | resolved "https://registry.yarnpkg.com/@parcel/css-darwin-arm64/-/css-darwin-arm64-1.7.3.tgz#dcc0286f79b17cba945ff53915a9d34a1ce62c47" 313 | integrity sha512-m3HDY+Rh8HJxmLELKAvCpF59vLS7FWtgBODHxl8G9Jl2CnGtXpXvdpyeMxNsTE+2QuPC+a5QT7IeZAKb2Gjmxg== 314 | 315 | "@parcel/css-darwin-x64@1.7.3": 316 | version "1.7.3" 317 | resolved "https://registry.yarnpkg.com/@parcel/css-darwin-x64/-/css-darwin-x64-1.7.3.tgz#fac0d5705606b2261562879ee153b65c7201c9c5" 318 | integrity sha512-LuhweXKxVwrz/hjAOm9XNRMSL+p23px20nhSCASkyUP7Higaxza948W3TSQdoL3YyR+wQxQH8Yj+R/T8Tz3E3g== 319 | 320 | "@parcel/css-linux-arm-gnueabihf@1.7.3": 321 | version "1.7.3" 322 | resolved "https://registry.yarnpkg.com/@parcel/css-linux-arm-gnueabihf/-/css-linux-arm-gnueabihf-1.7.3.tgz#43fa89d88954aba565ff2bbcd010e408d6ca6782" 323 | integrity sha512-/pd9Em18zMvt7eDZAMpNBEwF7c4VPVhAtBOZ59ClFrsXCTDNYP7mSy0cwNgtLelCRZCGAQmZNBDNQPH7vO3rew== 324 | 325 | "@parcel/css-linux-arm64-gnu@1.7.3": 326 | version "1.7.3" 327 | resolved "https://registry.yarnpkg.com/@parcel/css-linux-arm64-gnu/-/css-linux-arm64-gnu-1.7.3.tgz#8dd5d52a2cd0d2450a2b639956bf955277aa760a" 328 | integrity sha512-5aKiEhQK40riO4iVKzRqISzgYK+7Z7i3e6JTSz+/BHuQyHEUaBe/RuJ8Z0BDQtFz0HmWQlrQCd+7hd0Xgd8vYQ== 329 | 330 | "@parcel/css-linux-arm64-musl@1.7.3": 331 | version "1.7.3" 332 | resolved "https://registry.yarnpkg.com/@parcel/css-linux-arm64-musl/-/css-linux-arm64-musl-1.7.3.tgz#2a784ffacf398a7422c98345eed8410d8afff9bb" 333 | integrity sha512-Wf7/aIueDED2JqBMfZvzbBAFSaPmd3TR28bD2pmP7CI/jZnm9vHVKMdOLgt9NKSSSjdGrp+VM410CsrUM7xcOw== 334 | 335 | "@parcel/css-linux-x64-gnu@1.7.3": 336 | version "1.7.3" 337 | resolved "https://registry.yarnpkg.com/@parcel/css-linux-x64-gnu/-/css-linux-x64-gnu-1.7.3.tgz#102751d452642d078bd40a6c5c5b19d65da810ba" 338 | integrity sha512-0ZADbuFklUrHC1p2uPY4BPcN07jUTMqJzr/SSdnGN2XiXgiVZGcDCMHUj0DvC9Vwy11DDM6Rnw4QBbKHG+QGjQ== 339 | 340 | "@parcel/css-linux-x64-musl@1.7.3": 341 | version "1.7.3" 342 | resolved "https://registry.yarnpkg.com/@parcel/css-linux-x64-musl/-/css-linux-x64-musl-1.7.3.tgz#563090ba9825d7de7352700effd9e0b3a8d74cbb" 343 | integrity sha512-mFWWM8lX2OIID81YQuDDt9zTqof0B7UcEcs0huE7Zbs60uLEEQupdf8iH0yh5EOhxPt3sRcQnGXf2QTrXdjIMA== 344 | 345 | "@parcel/css-win32-x64-msvc@1.7.3": 346 | version "1.7.3" 347 | resolved "https://registry.yarnpkg.com/@parcel/css-win32-x64-msvc/-/css-win32-x64-msvc-1.7.3.tgz#d69551721b74457c92bd625d566a6d1f20b7d268" 348 | integrity sha512-KUFEMQcoP7DG3QbsN21OxhjHkfQ1BARn7D9puX75bV5N1F1kv557aaLkQZiMsgiYOL4tmJvsdQXutG7x++3j4Q== 349 | 350 | "@parcel/css@^1.7.2": 351 | version "1.7.3" 352 | resolved "https://registry.yarnpkg.com/@parcel/css/-/css-1.7.3.tgz#e8ac640888c0317fe15b329df169ce60b2fe92cb" 353 | integrity sha512-rgdRX4Uk31EvzH/mUScL0wdXtkci3U5N1W2pgam+9S10vQy4uONhWBepZ1tUCjONHLacGXr1jp3LbG/HI7LiTw== 354 | dependencies: 355 | detect-libc "^1.0.3" 356 | optionalDependencies: 357 | "@parcel/css-darwin-arm64" "1.7.3" 358 | "@parcel/css-darwin-x64" "1.7.3" 359 | "@parcel/css-linux-arm-gnueabihf" "1.7.3" 360 | "@parcel/css-linux-arm64-gnu" "1.7.3" 361 | "@parcel/css-linux-arm64-musl" "1.7.3" 362 | "@parcel/css-linux-x64-gnu" "1.7.3" 363 | "@parcel/css-linux-x64-musl" "1.7.3" 364 | "@parcel/css-win32-x64-msvc" "1.7.3" 365 | 366 | "@parcel/diagnostic@2.4.0": 367 | version "2.4.0" 368 | resolved "https://registry.yarnpkg.com/@parcel/diagnostic/-/diagnostic-2.4.0.tgz#0a94287851aee60e30f1e7f10582be274e0d1cf4" 369 | integrity sha512-TjWO/b2zMFhub5ouwGjazMm7iAUvdmXBfWmjrg4TBhUbhoQwBnyWfvMDtAYo7PcvXfxVPgPZv86Nv6Ym5H6cHQ== 370 | dependencies: 371 | json-source-map "^0.6.1" 372 | nullthrows "^1.1.1" 373 | 374 | "@parcel/events@2.4.0": 375 | version "2.4.0" 376 | resolved "https://registry.yarnpkg.com/@parcel/events/-/events-2.4.0.tgz#7526ea17dd72d97d7f4d3717285e85a36f5ead8f" 377 | integrity sha512-DEaEtFbhOhNAEmiXJ3MyF8Scq+sNDKiTyLax4lAC5/dpE5GvwfNnoD17C2+0gDuuDpdQkdHfXfvr50aYFt7jcw== 378 | 379 | "@parcel/fs-search@2.4.0": 380 | version "2.4.0" 381 | resolved "https://registry.yarnpkg.com/@parcel/fs-search/-/fs-search-2.4.0.tgz#1f278eb56ee054521ccb7e685886cd386e5efba7" 382 | integrity sha512-W/Vu6wbZk4wuB6AVdMkyymwh/S8Peed/PgJgSsApYD6lSTD315I6OuEdxZh3lWY+dqQdog/NJ7dvi/hdpH/Iqw== 383 | dependencies: 384 | detect-libc "^1.0.3" 385 | 386 | "@parcel/fs@2.4.0": 387 | version "2.4.0" 388 | resolved "https://registry.yarnpkg.com/@parcel/fs/-/fs-2.4.0.tgz#d8a34e63356ce66e3e34a958fae052d48acd2d28" 389 | integrity sha512-CnUlWGUJ52SJVQi8QnaAPPQZOADmHMV9D9aX9GLcDm5XLT3Em7vmesG4bNLdMLwzYuzAtenhcWmuRCACuYztHw== 390 | dependencies: 391 | "@parcel/fs-search" "2.4.0" 392 | "@parcel/types" "2.4.0" 393 | "@parcel/utils" "2.4.0" 394 | "@parcel/watcher" "^2.0.0" 395 | "@parcel/workers" "2.4.0" 396 | 397 | "@parcel/graph@2.4.0": 398 | version "2.4.0" 399 | resolved "https://registry.yarnpkg.com/@parcel/graph/-/graph-2.4.0.tgz#a0a94baf102f456ba7c9e4e235fb677bbe0f9286" 400 | integrity sha512-5TZIAfDITkJCzgH4j4OQhnIvjV9IFwWqNBJanRl5QQTmKvdcODS3WbnK1SOJ+ZltcLVXMB+HNXmL0bX0tVolcw== 401 | dependencies: 402 | "@parcel/utils" "2.4.0" 403 | nullthrows "^1.1.1" 404 | 405 | "@parcel/hash@2.4.0": 406 | version "2.4.0" 407 | resolved "https://registry.yarnpkg.com/@parcel/hash/-/hash-2.4.0.tgz#4f85e42d94aa3c458a7d0b484852f5466799be1b" 408 | integrity sha512-nB+wYNUhe6+G8M7vQhdeFXtpYJYwJgBHOPZ7Hd9O2jdlamWjDbw0t/u1dJbYvGJ8ZDtLDwiItawQVpuVdskQ9g== 409 | dependencies: 410 | detect-libc "^1.0.3" 411 | xxhash-wasm "^0.4.2" 412 | 413 | "@parcel/logger@2.4.0": 414 | version "2.4.0" 415 | resolved "https://registry.yarnpkg.com/@parcel/logger/-/logger-2.4.0.tgz#762b9431183557132c91419f2f7e5443837a4222" 416 | integrity sha512-DqfU0Zcs/0a7VBk+MsjJ80C66w4kM9EbkO3G12NIyEjNeG50ayW2CE9rUuJ91JaM9j0NFM1P82eyLpQPFFaVPw== 417 | dependencies: 418 | "@parcel/diagnostic" "2.4.0" 419 | "@parcel/events" "2.4.0" 420 | 421 | "@parcel/markdown-ansi@2.4.0": 422 | version "2.4.0" 423 | resolved "https://registry.yarnpkg.com/@parcel/markdown-ansi/-/markdown-ansi-2.4.0.tgz#688fa5e5f4765bde83f49fe298d8a2b416b3446f" 424 | integrity sha512-gPUP1xikxHiu2kFyPy35pfuVkFgAmcywO8YDQj7iYcB+k7l4QPpIYFYGXn2QADV4faf66ncMeTD4uYV8c0GqjQ== 425 | dependencies: 426 | chalk "^4.1.0" 427 | 428 | "@parcel/namer-default@2.4.0": 429 | version "2.4.0" 430 | resolved "https://registry.yarnpkg.com/@parcel/namer-default/-/namer-default-2.4.0.tgz#df1571f4f9104ae9bdb77887693b4b7f9d5c86a6" 431 | integrity sha512-DfL+Gx0Tyoa0vsgRpNybXjuKbWNw8MTVpy7Dk7r0btfVsn1jy3SSwlxH4USf76gb00/pK6XBsMp9zn7Z8ePREQ== 432 | dependencies: 433 | "@parcel/diagnostic" "2.4.0" 434 | "@parcel/plugin" "2.4.0" 435 | nullthrows "^1.1.1" 436 | 437 | "@parcel/node-resolver-core@2.4.0": 438 | version "2.4.0" 439 | resolved "https://registry.yarnpkg.com/@parcel/node-resolver-core/-/node-resolver-core-2.4.0.tgz#394f186fc7d431f98ac72b9d3fe140e04a21dd7d" 440 | integrity sha512-qiN97XcfW2fYNoYuVEhNKuVPEJKj5ONQl0fqr/NEMmYvWz3bVKjgiXNJwW558elZvCI08gEbdxgyThpuFFQeKQ== 441 | dependencies: 442 | "@parcel/diagnostic" "2.4.0" 443 | "@parcel/utils" "2.4.0" 444 | nullthrows "^1.1.1" 445 | 446 | "@parcel/optimizer-css@2.4.0": 447 | version "2.4.0" 448 | resolved "https://registry.yarnpkg.com/@parcel/optimizer-css/-/optimizer-css-2.4.0.tgz#50403ee54c0c165d279f7ec11aabdf3e1ed3d94d" 449 | integrity sha512-LQmjjOGsHEHKTJqfHR2eJyhWhLXvHP0uOAU+qopBttYYlB2J/vMK9RYAye5cyAb8bQmV8wAdi2mq9rnt7FMSPw== 450 | dependencies: 451 | "@parcel/css" "^1.7.2" 452 | "@parcel/diagnostic" "2.4.0" 453 | "@parcel/plugin" "2.4.0" 454 | "@parcel/source-map" "^2.0.0" 455 | "@parcel/utils" "2.4.0" 456 | browserslist "^4.6.6" 457 | nullthrows "^1.1.1" 458 | 459 | "@parcel/optimizer-htmlnano@2.4.0": 460 | version "2.4.0" 461 | resolved "https://registry.yarnpkg.com/@parcel/optimizer-htmlnano/-/optimizer-htmlnano-2.4.0.tgz#620b3e7089de97c9dc619952b22d45b461b12747" 462 | integrity sha512-02EbeElLgNOAYhGU7fFBahpoKrX5G/yzahpaoKB/ypScM4roSsAMBkGcluboR5L10YRsvfvJEpxvfGyDA3tPmw== 463 | dependencies: 464 | "@parcel/plugin" "2.4.0" 465 | htmlnano "^2.0.0" 466 | nullthrows "^1.1.1" 467 | posthtml "^0.16.5" 468 | svgo "^2.4.0" 469 | 470 | "@parcel/optimizer-image@2.4.0": 471 | version "2.4.0" 472 | resolved "https://registry.yarnpkg.com/@parcel/optimizer-image/-/optimizer-image-2.4.0.tgz#2717210bd2e0a9c58af08394011cdd2f3c1172ce" 473 | integrity sha512-Q4onaBMPkDyYxPzrb8ytBUftaQZFepj9dSUgq+ETuHDzkgia0tomDPfCqrw6ld0qvYyANzXTP5+LC4g0i5yh+A== 474 | dependencies: 475 | "@parcel/diagnostic" "2.4.0" 476 | "@parcel/plugin" "2.4.0" 477 | "@parcel/utils" "2.4.0" 478 | "@parcel/workers" "2.4.0" 479 | detect-libc "^1.0.3" 480 | 481 | "@parcel/optimizer-svgo@2.4.0": 482 | version "2.4.0" 483 | resolved "https://registry.yarnpkg.com/@parcel/optimizer-svgo/-/optimizer-svgo-2.4.0.tgz#7abfaaa3e6ba3ade4d85a85705a8b307487d2feb" 484 | integrity sha512-mwvGuCqVuNCAuMlp2maFE/Uz9ud1T1AuX0f6cCRczjFYiwZuIr/0iDdfFzSziOkVo1MRAGAZNa0dRR/UzCZtVg== 485 | dependencies: 486 | "@parcel/diagnostic" "2.4.0" 487 | "@parcel/plugin" "2.4.0" 488 | "@parcel/utils" "2.4.0" 489 | svgo "^2.4.0" 490 | 491 | "@parcel/optimizer-terser@2.4.0": 492 | version "2.4.0" 493 | resolved "https://registry.yarnpkg.com/@parcel/optimizer-terser/-/optimizer-terser-2.4.0.tgz#433965117d54c4cf113af3a6b056ff0766367468" 494 | integrity sha512-PdCgRgXNSY6R1HTV9VG2MHp1CgUbP5pslCyxvlbUmQAS6bvEpMOpn3qSd+U28o7mGE/qXIhvpDyi808sb+MEcg== 495 | dependencies: 496 | "@parcel/diagnostic" "2.4.0" 497 | "@parcel/plugin" "2.4.0" 498 | "@parcel/source-map" "^2.0.0" 499 | "@parcel/utils" "2.4.0" 500 | nullthrows "^1.1.1" 501 | terser "^5.2.0" 502 | 503 | "@parcel/package-manager@2.4.0": 504 | version "2.4.0" 505 | resolved "https://registry.yarnpkg.com/@parcel/package-manager/-/package-manager-2.4.0.tgz#ab4d7a53059355dc4f17e16c97540b6c7d70c5f6" 506 | integrity sha512-21AEfAQnZbHRVViTn7QsPGe/CiGaFaDUH5f0m8qVC7fDjjhC8LM8blkqU72goaO9FbaLMadtEf2txhzly7h/bg== 507 | dependencies: 508 | "@parcel/diagnostic" "2.4.0" 509 | "@parcel/fs" "2.4.0" 510 | "@parcel/logger" "2.4.0" 511 | "@parcel/types" "2.4.0" 512 | "@parcel/utils" "2.4.0" 513 | "@parcel/workers" "2.4.0" 514 | semver "^5.7.1" 515 | 516 | "@parcel/packager-css@2.4.0": 517 | version "2.4.0" 518 | resolved "https://registry.yarnpkg.com/@parcel/packager-css/-/packager-css-2.4.0.tgz#02198953674172c20a1c00418fdc7a1671f62fad" 519 | integrity sha512-LmPDWzkXi60Oy3WrPF0jPKQxeTwW5hmNBgrcXJMHSu+VcXdaQZNzNxVzhnZkJUbDd2z9vAUrUGzdLh8TquC8iQ== 520 | dependencies: 521 | "@parcel/plugin" "2.4.0" 522 | "@parcel/source-map" "^2.0.0" 523 | "@parcel/utils" "2.4.0" 524 | nullthrows "^1.1.1" 525 | 526 | "@parcel/packager-html@2.4.0": 527 | version "2.4.0" 528 | resolved "https://registry.yarnpkg.com/@parcel/packager-html/-/packager-html-2.4.0.tgz#a14a4e8de19dc16c5e2c611c7d0cce7b9af9aef1" 529 | integrity sha512-OPMIQ1uHYQFpRPrsmm5BqONbAyzjlhVsPRAzHlcBrglG4BTUeOR2ow4MUKblHmVVqc3QHnfZG4nHHtFkeuNQ3A== 530 | dependencies: 531 | "@parcel/plugin" "2.4.0" 532 | "@parcel/types" "2.4.0" 533 | "@parcel/utils" "2.4.0" 534 | nullthrows "^1.1.1" 535 | posthtml "^0.16.5" 536 | 537 | "@parcel/packager-js@2.4.0": 538 | version "2.4.0" 539 | resolved "https://registry.yarnpkg.com/@parcel/packager-js/-/packager-js-2.4.0.tgz#033e80a161c14793ac47b74da84a2c8a22b23b76" 540 | integrity sha512-cfslIH43CJFgBS9PmdFaSnbInMCoejsFCnxtJa2GeUpjCXSfelPRp0OPx7m8n+fap4czftPhoxBALeDUElOZGQ== 541 | dependencies: 542 | "@parcel/diagnostic" "2.4.0" 543 | "@parcel/hash" "2.4.0" 544 | "@parcel/plugin" "2.4.0" 545 | "@parcel/source-map" "^2.0.0" 546 | "@parcel/utils" "2.4.0" 547 | globals "^13.2.0" 548 | nullthrows "^1.1.1" 549 | 550 | "@parcel/packager-raw@2.4.0": 551 | version "2.4.0" 552 | resolved "https://registry.yarnpkg.com/@parcel/packager-raw/-/packager-raw-2.4.0.tgz#bdb2576f154e897947bf6331d7711d4a6258d1e8" 553 | integrity sha512-SFfw7chMFITj3J26ZVDJxbO6xwtPFcFBm1js8cwWMgzwuwS6CEc43k5+Abj+2/EqHU9kNJU9eWV5vT6lQwf3HA== 554 | dependencies: 555 | "@parcel/plugin" "2.4.0" 556 | 557 | "@parcel/packager-svg@2.4.0": 558 | version "2.4.0" 559 | resolved "https://registry.yarnpkg.com/@parcel/packager-svg/-/packager-svg-2.4.0.tgz#573653b582472aaad77beb9a9cb1421d744bd3b5" 560 | integrity sha512-DwkgrdLEQop+tu9Ocr1ZaadmpsbSgVruJPr80xq1LaB0Jiwrl9HjHStMNH1laNFueK1yydxhnj9C2JQfW28qag== 561 | dependencies: 562 | "@parcel/plugin" "2.4.0" 563 | "@parcel/types" "2.4.0" 564 | "@parcel/utils" "2.4.0" 565 | posthtml "^0.16.4" 566 | 567 | "@parcel/plugin@2.4.0": 568 | version "2.4.0" 569 | resolved "https://registry.yarnpkg.com/@parcel/plugin/-/plugin-2.4.0.tgz#fc940f4eb58dc271e53aa0043b68cc565853e390" 570 | integrity sha512-ehFUAL2+h27Lv+cYbbXA74UGy8C+eglUjcpvASOOjVRFuD6poMAMliKkKAXBhQaFx/Rvhz27A2PIPv9lL2i4UQ== 571 | dependencies: 572 | "@parcel/types" "2.4.0" 573 | 574 | "@parcel/reporter-cli@2.4.0": 575 | version "2.4.0" 576 | resolved "https://registry.yarnpkg.com/@parcel/reporter-cli/-/reporter-cli-2.4.0.tgz#37ba4e12b1999c04beeaf98cb6809cd4794acae4" 577 | integrity sha512-Q9bIFMaGvQgypCDxdMEKOwrJzIHAXScKkuFsqTHnUL6mmH3Mo2CoEGAq/wpMXuPhXRn1dPJcHgTNDwZ2fSzz0A== 578 | dependencies: 579 | "@parcel/plugin" "2.4.0" 580 | "@parcel/types" "2.4.0" 581 | "@parcel/utils" "2.4.0" 582 | chalk "^4.1.0" 583 | term-size "^2.2.1" 584 | 585 | "@parcel/reporter-dev-server@2.4.0": 586 | version "2.4.0" 587 | resolved "https://registry.yarnpkg.com/@parcel/reporter-dev-server/-/reporter-dev-server-2.4.0.tgz#233e595680aa86ae599715589865b282abdf63bd" 588 | integrity sha512-24h++wevs7XYuX4dKa4PUfLSstvn3g7udajFv6CeQoME+dR25RL/wH/2LUbhV5ilgXXab76rWIndSqp78xHxPA== 589 | dependencies: 590 | "@parcel/plugin" "2.4.0" 591 | "@parcel/utils" "2.4.0" 592 | 593 | "@parcel/resolver-default@2.4.0": 594 | version "2.4.0" 595 | resolved "https://registry.yarnpkg.com/@parcel/resolver-default/-/resolver-default-2.4.0.tgz#1f45b95443078f10d178b32782da95a1bea71eb6" 596 | integrity sha512-K7pIIFmGm1hjg/7Mzkg99i8tfCClKfBUTuc2R5j8cdr2n0mCAi4/f2mFf5svLrb5XZrnDgoQ05tHKklLEfUDUw== 597 | dependencies: 598 | "@parcel/node-resolver-core" "2.4.0" 599 | "@parcel/plugin" "2.4.0" 600 | 601 | "@parcel/runtime-browser-hmr@2.4.0": 602 | version "2.4.0" 603 | resolved "https://registry.yarnpkg.com/@parcel/runtime-browser-hmr/-/runtime-browser-hmr-2.4.0.tgz#369b688ce3ed95109c0fcff9157b678c5ee033db" 604 | integrity sha512-swPFtvxGoCA9LEjU/pHPNjxG1l0fte8447zXwRN/AaYrtjNu9Ww117OSKCyvCnE143E79jZOFStodTQGFuH+9A== 605 | dependencies: 606 | "@parcel/plugin" "2.4.0" 607 | "@parcel/utils" "2.4.0" 608 | 609 | "@parcel/runtime-js@2.4.0": 610 | version "2.4.0" 611 | resolved "https://registry.yarnpkg.com/@parcel/runtime-js/-/runtime-js-2.4.0.tgz#bcf6d540247bda286156a876efdbf9103ce03978" 612 | integrity sha512-67OOvmkDdtmgzZVP/EyAzoXhJ/Ug3LUVUt7idg9arun5rdJptqEb3Um3wmH0zjcNa9jMbJt7Kl5x1wA8dJgPYg== 613 | dependencies: 614 | "@parcel/plugin" "2.4.0" 615 | "@parcel/utils" "2.4.0" 616 | nullthrows "^1.1.1" 617 | 618 | "@parcel/runtime-react-refresh@2.4.0": 619 | version "2.4.0" 620 | resolved "https://registry.yarnpkg.com/@parcel/runtime-react-refresh/-/runtime-react-refresh-2.4.0.tgz#fe305175228c8d19d8fba9bed5542fad549723ce" 621 | integrity sha512-flnr+bf06lMZPbXZZLLaFNrPHvYpfuXTVovEghyUW46qLVpaHj33dpsU/LqZplIuHgBp2ibgrKhr/hY9ell68w== 622 | dependencies: 623 | "@parcel/plugin" "2.4.0" 624 | "@parcel/utils" "2.4.0" 625 | react-refresh "^0.9.0" 626 | 627 | "@parcel/runtime-service-worker@2.4.0": 628 | version "2.4.0" 629 | resolved "https://registry.yarnpkg.com/@parcel/runtime-service-worker/-/runtime-service-worker-2.4.0.tgz#07375693acbd9a5940e6230409099e0861362cc3" 630 | integrity sha512-RgM5QUqW22WzstW03CtV+Oih8VGVuwsf94Cc4hLouU2EAD0NUJgATWbFocZVTZIBTKELAWh2gjpSQDdnL4Ur+A== 631 | dependencies: 632 | "@parcel/plugin" "2.4.0" 633 | "@parcel/utils" "2.4.0" 634 | nullthrows "^1.1.1" 635 | 636 | "@parcel/source-map@^2.0.0": 637 | version "2.0.2" 638 | resolved "https://registry.yarnpkg.com/@parcel/source-map/-/source-map-2.0.2.tgz#9aa0b00518cee31d5634de6e9c924a5539b142c1" 639 | integrity sha512-NnUrPYLpYB6qyx2v6bcRPn/gVigmGG6M6xL8wIg/i0dP1GLkuY1nf+Hqdf63FzPTqqT7K3k6eE5yHPQVMO5jcA== 640 | dependencies: 641 | detect-libc "^1.0.3" 642 | 643 | "@parcel/transformer-babel@2.4.0": 644 | version "2.4.0" 645 | resolved "https://registry.yarnpkg.com/@parcel/transformer-babel/-/transformer-babel-2.4.0.tgz#05d1661293debbccacd11218c3729b7e5a2dfe1c" 646 | integrity sha512-iWDa7KzJTMP3HNmrYxiYq/S6redk2qminx/9MwmKIN9jzm8mgts2Lj9lOg/t66YaDGky6JAvw4DhB2qW4ni6yQ== 647 | dependencies: 648 | "@parcel/diagnostic" "2.4.0" 649 | "@parcel/plugin" "2.4.0" 650 | "@parcel/source-map" "^2.0.0" 651 | "@parcel/utils" "2.4.0" 652 | browserslist "^4.6.6" 653 | json5 "^2.2.0" 654 | nullthrows "^1.1.1" 655 | semver "^5.7.0" 656 | 657 | "@parcel/transformer-css@2.4.0": 658 | version "2.4.0" 659 | resolved "https://registry.yarnpkg.com/@parcel/transformer-css/-/transformer-css-2.4.0.tgz#7b7e35ccbe343ff0c768a330712d1756ca7f7b4c" 660 | integrity sha512-D2u48LuiQsQvbknABE0wVKFp9r6yCgWrHKEP1J6EJ31c49nXGXDHrpHJJwqq9BvAs/124eBI5mSsehTJyFEMwg== 661 | dependencies: 662 | "@parcel/css" "^1.7.2" 663 | "@parcel/diagnostic" "2.4.0" 664 | "@parcel/plugin" "2.4.0" 665 | "@parcel/source-map" "^2.0.0" 666 | "@parcel/utils" "2.4.0" 667 | browserslist "^4.6.6" 668 | nullthrows "^1.1.1" 669 | 670 | "@parcel/transformer-html@2.4.0": 671 | version "2.4.0" 672 | resolved "https://registry.yarnpkg.com/@parcel/transformer-html/-/transformer-html-2.4.0.tgz#9b342f4041d319d9759607be0aec4c1ff4ad7739" 673 | integrity sha512-2/8X/o5QaCNVPr4wkxLCUub7v/YVvVN2L5yCEcTatNeFhNg/2iz7P2ekfqOaoDCHWZEOBT1VTwPbdBt+TMM71Q== 674 | dependencies: 675 | "@parcel/diagnostic" "2.4.0" 676 | "@parcel/hash" "2.4.0" 677 | "@parcel/plugin" "2.4.0" 678 | nullthrows "^1.1.1" 679 | posthtml "^0.16.5" 680 | posthtml-parser "^0.10.1" 681 | posthtml-render "^3.0.0" 682 | semver "^5.7.1" 683 | 684 | "@parcel/transformer-image@2.4.0": 685 | version "2.4.0" 686 | resolved "https://registry.yarnpkg.com/@parcel/transformer-image/-/transformer-image-2.4.0.tgz#3ce2603343aaf045f9dba6cd1b98ee5df060450d" 687 | integrity sha512-JZkQvGGoGiD0AVKLIbAYYUWxepMmUaWZ4XXx71MmS/kA7cUDwTZ0CXq63YnSY1m+DX+ClTuTN8mBlwe2dkcGbA== 688 | dependencies: 689 | "@parcel/plugin" "2.4.0" 690 | "@parcel/workers" "2.4.0" 691 | nullthrows "^1.1.1" 692 | 693 | "@parcel/transformer-js@2.4.0": 694 | version "2.4.0" 695 | resolved "https://registry.yarnpkg.com/@parcel/transformer-js/-/transformer-js-2.4.0.tgz#e07310ef85a4c14e3d285c3c85e73c581043dfaf" 696 | integrity sha512-eeLHFwv3jT3GmIxpLC7B8EXExGK0MFaK91HXljOMh6l8a+GlQYw27MSFQVtoXr0Olx9Uq2uvjXP1+zSsq3LQUQ== 697 | dependencies: 698 | "@parcel/diagnostic" "2.4.0" 699 | "@parcel/plugin" "2.4.0" 700 | "@parcel/source-map" "^2.0.0" 701 | "@parcel/utils" "2.4.0" 702 | "@parcel/workers" "2.4.0" 703 | "@swc/helpers" "^0.3.6" 704 | browserslist "^4.6.6" 705 | detect-libc "^1.0.3" 706 | nullthrows "^1.1.1" 707 | regenerator-runtime "^0.13.7" 708 | semver "^5.7.1" 709 | 710 | "@parcel/transformer-json@2.4.0": 711 | version "2.4.0" 712 | resolved "https://registry.yarnpkg.com/@parcel/transformer-json/-/transformer-json-2.4.0.tgz#575497fb64029071cadcf1309884c0ec4e5def3c" 713 | integrity sha512-3nR+d39mbURoXIypDfVCaxpwL65qMV+h8SLD78up2uhaRGklHQfN7GuemR7L+mcVAgNrmwVvZHhyNjdgYwWqqg== 714 | dependencies: 715 | "@parcel/plugin" "2.4.0" 716 | json5 "^2.2.0" 717 | 718 | "@parcel/transformer-postcss@2.4.0": 719 | version "2.4.0" 720 | resolved "https://registry.yarnpkg.com/@parcel/transformer-postcss/-/transformer-postcss-2.4.0.tgz#8b968be108e2e0280c3ae025df29b14e83ec8c50" 721 | integrity sha512-ijIa2x+dbKnJhr7zO5WlXkvuj832fDoGksMBk2DX3u2WMrbh2rqVWPpGFsDhESx7EAy38nUoV/5KUdrNqUmCEA== 722 | dependencies: 723 | "@parcel/diagnostic" "2.4.0" 724 | "@parcel/hash" "2.4.0" 725 | "@parcel/plugin" "2.4.0" 726 | "@parcel/utils" "2.4.0" 727 | clone "^2.1.1" 728 | nullthrows "^1.1.1" 729 | postcss-value-parser "^4.2.0" 730 | semver "^5.7.1" 731 | 732 | "@parcel/transformer-posthtml@2.4.0": 733 | version "2.4.0" 734 | resolved "https://registry.yarnpkg.com/@parcel/transformer-posthtml/-/transformer-posthtml-2.4.0.tgz#89d9f2e96a69d52fe56ca9710e9a177a61097f43" 735 | integrity sha512-xoL3AzgtVeRRAo6bh0AHAYm9bt1jZ+HiH86/7oARj/uJs6Wd8kXK/DZf6fH+F87hj4e7bnjmDDc0GPVK0lPz1w== 736 | dependencies: 737 | "@parcel/plugin" "2.4.0" 738 | "@parcel/utils" "2.4.0" 739 | nullthrows "^1.1.1" 740 | posthtml "^0.16.5" 741 | posthtml-parser "^0.10.1" 742 | posthtml-render "^3.0.0" 743 | semver "^5.7.1" 744 | 745 | "@parcel/transformer-raw@2.4.0": 746 | version "2.4.0" 747 | resolved "https://registry.yarnpkg.com/@parcel/transformer-raw/-/transformer-raw-2.4.0.tgz#ee65c296073ce3876b1380be20721105e3a6d9c7" 748 | integrity sha512-fciFbNrzj0kLlDgr6OsI0PUv414rVygDWAsgbCCq4BexDkuemMs9f9FjMctx9B2VZlctE8dTT4RGkuQumTIpUg== 749 | dependencies: 750 | "@parcel/plugin" "2.4.0" 751 | 752 | "@parcel/transformer-react-refresh-wrap@2.4.0": 753 | version "2.4.0" 754 | resolved "https://registry.yarnpkg.com/@parcel/transformer-react-refresh-wrap/-/transformer-react-refresh-wrap-2.4.0.tgz#23d1a39acddbbe71802c962f88ef376548c94cf8" 755 | integrity sha512-9+f6sGOWkf0jyUQ1CuFWk+04Mq3KTOCU9kRiwCHX1YdUCv5uki6r9XUSpqiYodrV+L6w9CCwLvGMLCDHxtCxMg== 756 | dependencies: 757 | "@parcel/plugin" "2.4.0" 758 | "@parcel/utils" "2.4.0" 759 | react-refresh "^0.9.0" 760 | 761 | "@parcel/transformer-svg@2.4.0": 762 | version "2.4.0" 763 | resolved "https://registry.yarnpkg.com/@parcel/transformer-svg/-/transformer-svg-2.4.0.tgz#07f7a19e7da1ec115b2fb49e364c18cc0f445ddf" 764 | integrity sha512-D+yzVtSxtQML3d26fd/g4E/xYW68+OMbMUVLXORtoYMU42fnXQkJP6jGOdqy8Td+WORNY7EwVtQnESLwhBmolw== 765 | dependencies: 766 | "@parcel/diagnostic" "2.4.0" 767 | "@parcel/hash" "2.4.0" 768 | "@parcel/plugin" "2.4.0" 769 | nullthrows "^1.1.1" 770 | posthtml "^0.16.5" 771 | posthtml-parser "^0.10.1" 772 | posthtml-render "^3.0.0" 773 | semver "^5.7.1" 774 | 775 | "@parcel/types@2.4.0": 776 | version "2.4.0" 777 | resolved "https://registry.yarnpkg.com/@parcel/types/-/types-2.4.0.tgz#e900ba9d9c14cc8bc783724e7c66f04b87965b28" 778 | integrity sha512-nysGIbBEnp+7R+tKTysdcTFOZDTCodsiXFeAhYQa5bhiOnG1l9gzhxQnE2OsdsgvMm40IOsgKprqvM/DbdLfnQ== 779 | dependencies: 780 | "@parcel/cache" "2.4.0" 781 | "@parcel/diagnostic" "2.4.0" 782 | "@parcel/fs" "2.4.0" 783 | "@parcel/package-manager" "2.4.0" 784 | "@parcel/source-map" "^2.0.0" 785 | "@parcel/workers" "2.4.0" 786 | utility-types "^3.10.0" 787 | 788 | "@parcel/utils@2.4.0": 789 | version "2.4.0" 790 | resolved "https://registry.yarnpkg.com/@parcel/utils/-/utils-2.4.0.tgz#47f979e10f82caac160a6526db2f31c5713ca0d7" 791 | integrity sha512-sdNo+mZqDZT8LJYB6WWRKa4wFVZcK6Zb5Jh6Du76QvXXwHbPIQNZgJBb6gd/Rbk4GLOp2tW7MnBfq6zP9E9E2g== 792 | dependencies: 793 | "@parcel/codeframe" "2.4.0" 794 | "@parcel/diagnostic" "2.4.0" 795 | "@parcel/hash" "2.4.0" 796 | "@parcel/logger" "2.4.0" 797 | "@parcel/markdown-ansi" "2.4.0" 798 | "@parcel/source-map" "^2.0.0" 799 | chalk "^4.1.0" 800 | 801 | "@parcel/watcher@^2.0.0": 802 | version "2.0.5" 803 | resolved "https://registry.yarnpkg.com/@parcel/watcher/-/watcher-2.0.5.tgz#f913a54e1601b0aac972803829b0eece48de215b" 804 | integrity sha512-x0hUbjv891omnkcHD7ZOhiyyUqUUR6MNjq89JhEI3BxppeKWAm6NPQsqqRrAkCJBogdT/o/My21sXtTI9rJIsw== 805 | dependencies: 806 | node-addon-api "^3.2.1" 807 | node-gyp-build "^4.3.0" 808 | 809 | "@parcel/workers@2.4.0": 810 | version "2.4.0" 811 | resolved "https://registry.yarnpkg.com/@parcel/workers/-/workers-2.4.0.tgz#393d5fe7942220b8846f626688e341c1be2bf1fa" 812 | integrity sha512-eSFyvEoXXPgFzQfKIlpkUjpHfIbezUCRFTPKyJAKCxvU5DSXOpb1kz5vDESWQ4qTZXKnrKvxS1PPWN6bam9z0g== 813 | dependencies: 814 | "@parcel/diagnostic" "2.4.0" 815 | "@parcel/logger" "2.4.0" 816 | "@parcel/types" "2.4.0" 817 | "@parcel/utils" "2.4.0" 818 | chrome-trace-event "^1.0.2" 819 | nullthrows "^1.1.1" 820 | 821 | "@radix-ui/colors@0.1.7": 822 | version "0.1.7" 823 | resolved "https://registry.yarnpkg.com/@radix-ui/colors/-/colors-0.1.7.tgz#055cdf104f92ae58a7d6a7f1c7327c635b90747f" 824 | integrity sha512-E6+ZPQ+FFn1/NZ4c/KRvZTu9KjC/MXrbJNETYs1HKe96gyxQivPu65FkhOsRnPigvJ0YJ9ZxYGxayqDNmaC1cQ== 825 | 826 | "@radix-ui/number@0.1.0": 827 | version "0.1.0" 828 | resolved "https://registry.yarnpkg.com/@radix-ui/number/-/number-0.1.0.tgz#73ad13d5cc5f75fa5e147d72e5d5d5e50d688256" 829 | integrity sha512-rpf6QiOWLHAkM4FEMYu9i+5Jr8cKT893+R4mPpcdsy4LD7omr9JfdOqj/h/xPA5+EcVrpMMlU6rrRYpUB5UI8g== 830 | dependencies: 831 | "@babel/runtime" "^7.13.10" 832 | 833 | "@radix-ui/popper@0.1.0": 834 | version "0.1.0" 835 | resolved "https://registry.yarnpkg.com/@radix-ui/popper/-/popper-0.1.0.tgz#c387a38f31b7799e1ea0d2bb1ca0c91c2931b063" 836 | integrity sha512-uzYeElL3w7SeNMuQpXiFlBhTT+JyaNMCwDfjKkrzugEcYrf5n52PHqncNdQPUtR42hJh8V9FsqyEDbDxkeNjJQ== 837 | dependencies: 838 | "@babel/runtime" "^7.13.10" 839 | csstype "^3.0.4" 840 | 841 | "@radix-ui/primitive@0.1.0": 842 | version "0.1.0" 843 | resolved "https://registry.yarnpkg.com/@radix-ui/primitive/-/primitive-0.1.0.tgz#6206b97d379994f0d1929809db035733b337e543" 844 | integrity sha512-tqxZKybwN5Fa3VzZry4G6mXAAb9aAqKmPtnVbZpL0vsBwvOHTBwsjHVPXylocYLwEtBY9SCe665bYnNB515uoA== 845 | dependencies: 846 | "@babel/runtime" "^7.13.10" 847 | 848 | "@radix-ui/react-accordion@0.1.1": 849 | version "0.1.1" 850 | resolved "https://registry.yarnpkg.com/@radix-ui/react-accordion/-/react-accordion-0.1.1.tgz#bc57120d37f9e08ddcefae1d9ac08e4db3029bc7" 851 | integrity sha512-FGxV2QcCtQRBmcGle5TppSDcIzTgecLoXL7G5yM/YJVdcW+cw4LqPF2VnHcjIv2BGvvHi9087abp9jQxoJzUNA== 852 | dependencies: 853 | "@babel/runtime" "^7.13.10" 854 | "@radix-ui/primitive" "0.1.0" 855 | "@radix-ui/react-collapsible" "0.1.1" 856 | "@radix-ui/react-compose-refs" "0.1.0" 857 | "@radix-ui/react-context" "0.1.1" 858 | "@radix-ui/react-id" "0.1.1" 859 | "@radix-ui/react-primitive" "0.1.1" 860 | "@radix-ui/react-use-controllable-state" "0.1.0" 861 | 862 | "@radix-ui/react-alert-dialog@0.1.1": 863 | version "0.1.1" 864 | resolved "https://registry.yarnpkg.com/@radix-ui/react-alert-dialog/-/react-alert-dialog-0.1.1.tgz#979dc343bc2766b0049e4940a49867a3c4b002f8" 865 | integrity sha512-2oiBy38KK/hZZFpAsjUibxjbKv+HXwsGQUcKKXZH5/D+9BPScKcF192r7aAbQer3NNMHuPEOGuGeYKWegUEzTA== 866 | dependencies: 867 | "@babel/runtime" "^7.13.10" 868 | "@radix-ui/primitive" "0.1.0" 869 | "@radix-ui/react-compose-refs" "0.1.0" 870 | "@radix-ui/react-context" "0.1.1" 871 | "@radix-ui/react-dialog" "0.1.1" 872 | "@radix-ui/react-slot" "0.1.1" 873 | 874 | "@radix-ui/react-arrow@0.1.1": 875 | version "0.1.1" 876 | resolved "https://registry.yarnpkg.com/@radix-ui/react-arrow/-/react-arrow-0.1.1.tgz#e8e05444b37b9f71bf712a8cd4dd07dbd419e749" 877 | integrity sha512-layhfVIJE/mahiHUi9YZ/k2Of41TO20y1kEynUEq3j+KLUy/pi0mjb+jrPYRqmlznEl8/jye2jwilyGs2Uyx/g== 878 | dependencies: 879 | "@babel/runtime" "^7.13.10" 880 | "@radix-ui/react-primitive" "0.1.1" 881 | 882 | "@radix-ui/react-aspect-ratio@0.1.1": 883 | version "0.1.1" 884 | resolved "https://registry.yarnpkg.com/@radix-ui/react-aspect-ratio/-/react-aspect-ratio-0.1.1.tgz#c198819da318b88682e093f13a5d2732dc7b0e05" 885 | integrity sha512-yi/BQqbx5/RO9IoZmny0tDNM645YukytyFRo6Wj06e8aU5GA9O1pHXEQObEkXIALqhoWr+5SCxvmwcSkr/rbHw== 886 | dependencies: 887 | "@babel/runtime" "^7.13.10" 888 | "@radix-ui/react-primitive" "0.1.1" 889 | 890 | "@radix-ui/react-avatar@0.1.1": 891 | version "0.1.1" 892 | resolved "https://registry.yarnpkg.com/@radix-ui/react-avatar/-/react-avatar-0.1.1.tgz#a5e2c660f5e2564ad75fb30587bfdbba64137411" 893 | integrity sha512-yFWO2VZNmO6EkwwdKSIf5Wabd97iGFzKNrLI8aIHFYuZe+WBOnfF99SeU52wm2a18k/sdIiwTZlsxUCiSBadEw== 894 | dependencies: 895 | "@babel/runtime" "^7.13.10" 896 | "@radix-ui/react-context" "0.1.1" 897 | "@radix-ui/react-primitive" "0.1.1" 898 | "@radix-ui/react-use-callback-ref" "0.1.0" 899 | "@radix-ui/react-use-layout-effect" "0.1.0" 900 | 901 | "@radix-ui/react-checkbox@0.1.1": 902 | version "0.1.1" 903 | resolved "https://registry.yarnpkg.com/@radix-ui/react-checkbox/-/react-checkbox-0.1.1.tgz#ce551b680545fcf44bbea5da6ddaccce8b7df19a" 904 | integrity sha512-QXd3+GL9bOQaekG7J4J94FbpyjIrRkrIZow9IuEPXcko7pTFGOJMd65jaBkSN7mz4RDdNdtnDObbs/KeQvoOWw== 905 | dependencies: 906 | "@babel/runtime" "^7.13.10" 907 | "@radix-ui/primitive" "0.1.0" 908 | "@radix-ui/react-compose-refs" "0.1.0" 909 | "@radix-ui/react-context" "0.1.1" 910 | "@radix-ui/react-label" "0.1.1" 911 | "@radix-ui/react-presence" "0.1.1" 912 | "@radix-ui/react-primitive" "0.1.1" 913 | "@radix-ui/react-use-controllable-state" "0.1.0" 914 | "@radix-ui/react-use-previous" "0.1.0" 915 | "@radix-ui/react-use-size" "0.1.0" 916 | 917 | "@radix-ui/react-collapsible@0.1.1": 918 | version "0.1.1" 919 | resolved "https://registry.yarnpkg.com/@radix-ui/react-collapsible/-/react-collapsible-0.1.1.tgz#a3f257aa7ab27358ab2a16c6a5815a307a7ce474" 920 | integrity sha512-GIiCo8wYz53ZZEbp4LOkSysK8B+gZSi8/X/5NotBvyZpKntnf93i+NXPmtPPr+l0uPBr4EnEG1aZnItnrJpSEQ== 921 | dependencies: 922 | "@babel/runtime" "^7.13.10" 923 | "@radix-ui/primitive" "0.1.0" 924 | "@radix-ui/react-compose-refs" "0.1.0" 925 | "@radix-ui/react-context" "0.1.1" 926 | "@radix-ui/react-id" "0.1.1" 927 | "@radix-ui/react-presence" "0.1.1" 928 | "@radix-ui/react-primitive" "0.1.1" 929 | "@radix-ui/react-use-controllable-state" "0.1.0" 930 | "@radix-ui/react-use-layout-effect" "0.1.0" 931 | 932 | "@radix-ui/react-collection@0.1.1": 933 | version "0.1.1" 934 | resolved "https://registry.yarnpkg.com/@radix-ui/react-collection/-/react-collection-0.1.1.tgz#c03b671f56b3e7af03f50929b513526c0b71c62b" 935 | integrity sha512-WabFzfkvG1uCMHVQd8V++W6qnDqvr+QrbCAXhzzWheKbiXSrwsvA2lTthMn1L6aPn1wyXlX56Xvbzz7Z3nOJAQ== 936 | dependencies: 937 | "@babel/runtime" "^7.13.10" 938 | "@radix-ui/react-compose-refs" "0.1.0" 939 | "@radix-ui/react-context" "0.1.1" 940 | "@radix-ui/react-primitive" "0.1.1" 941 | "@radix-ui/react-slot" "0.1.1" 942 | 943 | "@radix-ui/react-compose-refs@0.1.0": 944 | version "0.1.0" 945 | resolved "https://registry.yarnpkg.com/@radix-ui/react-compose-refs/-/react-compose-refs-0.1.0.tgz#cff6e780a0f73778b976acff2c2a5b6551caab95" 946 | integrity sha512-eyclbh+b77k+69Dk72q3694OHrn9B3QsoIRx7ywX341U9RK1ThgQjMFZoPtmZNQTksXHLNEiefR8hGVeFyInGg== 947 | dependencies: 948 | "@babel/runtime" "^7.13.10" 949 | 950 | "@radix-ui/react-context-menu@0.1.1": 951 | version "0.1.1" 952 | resolved "https://registry.yarnpkg.com/@radix-ui/react-context-menu/-/react-context-menu-0.1.1.tgz#1b87478ba741a812505c87df74a7a8aabdc3e5f9" 953 | integrity sha512-pp5rMoepSl0KpBgz7z6+GTHX7ahTOUqr5NOLCTrb4O2BYjksck+xf4M0GXLcKXxZODaUPXuLvY0vNnQn0Y9V0w== 954 | dependencies: 955 | "@babel/runtime" "^7.13.10" 956 | "@radix-ui/primitive" "0.1.0" 957 | "@radix-ui/react-context" "0.1.1" 958 | "@radix-ui/react-menu" "0.1.1" 959 | "@radix-ui/react-primitive" "0.1.1" 960 | "@radix-ui/react-use-callback-ref" "0.1.0" 961 | 962 | "@radix-ui/react-context@0.1.1": 963 | version "0.1.1" 964 | resolved "https://registry.yarnpkg.com/@radix-ui/react-context/-/react-context-0.1.1.tgz#06996829ea124d9a1bc1dbe3e51f33588fab0875" 965 | integrity sha512-PkyVX1JsLBioeu0jB9WvRpDBBLtLZohVDT3BB5CTSJqActma8S8030P57mWZb4baZifMvN7KKWPAA40UmWKkQg== 966 | dependencies: 967 | "@babel/runtime" "^7.13.10" 968 | 969 | "@radix-ui/react-dialog@0.1.1": 970 | version "0.1.1" 971 | resolved "https://registry.yarnpkg.com/@radix-ui/react-dialog/-/react-dialog-0.1.1.tgz#515bcda3ab6a3a9b1cc20237eedc38b6c5921a7d" 972 | integrity sha512-+M/tY9n2/5yhpZrWankiVPJPFHkmgn4q+lXOeVRkMOFsyXQKhwhmPihYFUBk3BszsdKeV5BrZvdDpbWve3ZKKA== 973 | dependencies: 974 | "@babel/runtime" "^7.13.10" 975 | "@radix-ui/primitive" "0.1.0" 976 | "@radix-ui/react-compose-refs" "0.1.0" 977 | "@radix-ui/react-context" "0.1.1" 978 | "@radix-ui/react-dismissable-layer" "0.1.1" 979 | "@radix-ui/react-focus-guards" "0.1.0" 980 | "@radix-ui/react-focus-scope" "0.1.1" 981 | "@radix-ui/react-id" "0.1.1" 982 | "@radix-ui/react-portal" "0.1.1" 983 | "@radix-ui/react-presence" "0.1.1" 984 | "@radix-ui/react-primitive" "0.1.1" 985 | "@radix-ui/react-use-controllable-state" "0.1.0" 986 | aria-hidden "^1.1.1" 987 | react-remove-scroll "^2.4.0" 988 | 989 | "@radix-ui/react-dismissable-layer@0.1.1": 990 | version "0.1.1" 991 | resolved "https://registry.yarnpkg.com/@radix-ui/react-dismissable-layer/-/react-dismissable-layer-0.1.1.tgz#1be9d1c6945b27a69dfd6742928904a526d1d345" 992 | integrity sha512-OrwRfYE3dqX6nbCnAcIaxsTg6QrLu/HT1GwzxpX0Mbx+AxFNBvE6czBTM5/a7D1CfK8jxORNZ/WsjoOTLudY+A== 993 | dependencies: 994 | "@babel/runtime" "^7.13.10" 995 | "@radix-ui/primitive" "0.1.0" 996 | "@radix-ui/react-context" "0.1.1" 997 | "@radix-ui/react-primitive" "0.1.1" 998 | "@radix-ui/react-use-body-pointer-events" "0.1.0" 999 | "@radix-ui/react-use-callback-ref" "0.1.0" 1000 | "@radix-ui/react-use-escape-keydown" "0.1.0" 1001 | 1002 | "@radix-ui/react-dropdown-menu@0.1.1": 1003 | version "0.1.1" 1004 | resolved "https://registry.yarnpkg.com/@radix-ui/react-dropdown-menu/-/react-dropdown-menu-0.1.1.tgz#a596ff9f37e1eeb11f337bec3d7bf5763e059dfb" 1005 | integrity sha512-YxnGI/SpukCYFMzP8ZbOeaaba7tVv3YNmEOaUK8lymVm2mOb+bKpjYWgvm0DMHgkhvLAU1tcb18CDEjSaQnyfQ== 1006 | dependencies: 1007 | "@babel/runtime" "^7.13.10" 1008 | "@radix-ui/primitive" "0.1.0" 1009 | "@radix-ui/react-compose-refs" "0.1.0" 1010 | "@radix-ui/react-context" "0.1.1" 1011 | "@radix-ui/react-id" "0.1.1" 1012 | "@radix-ui/react-menu" "0.1.1" 1013 | "@radix-ui/react-primitive" "0.1.1" 1014 | "@radix-ui/react-use-controllable-state" "0.1.0" 1015 | 1016 | "@radix-ui/react-focus-guards@0.1.0": 1017 | version "0.1.0" 1018 | resolved "https://registry.yarnpkg.com/@radix-ui/react-focus-guards/-/react-focus-guards-0.1.0.tgz#ba3b6f902cba7826569f8edc21ff8223dece7def" 1019 | integrity sha512-kRx/swAjEfBpQ3ns7J3H4uxpXuWCqN7MpALiSDOXiyo2vkWv0L9sxvbpZeTulINuE3CGMzicVMuNc/VWXjFKOg== 1020 | dependencies: 1021 | "@babel/runtime" "^7.13.10" 1022 | 1023 | "@radix-ui/react-focus-scope@0.1.1": 1024 | version "0.1.1" 1025 | resolved "https://registry.yarnpkg.com/@radix-ui/react-focus-scope/-/react-focus-scope-0.1.1.tgz#2639a2abd268bc435348313cfd90026241deb58c" 1026 | integrity sha512-0b9MwvHwhuIhD46lrf4G2j53/oYzPa2hN9Ylu+4Jg0Qa0kW04/vpKCX2Gh8M8fTlI0YaGVQsN40sYc5fe8RBSA== 1027 | dependencies: 1028 | "@babel/runtime" "^7.13.10" 1029 | "@radix-ui/react-compose-refs" "0.1.0" 1030 | "@radix-ui/react-primitive" "0.1.1" 1031 | "@radix-ui/react-use-callback-ref" "0.1.0" 1032 | 1033 | "@radix-ui/react-icons@1.0.3": 1034 | version "1.0.3" 1035 | resolved "https://registry.yarnpkg.com/@radix-ui/react-icons/-/react-icons-1.0.3.tgz#4ef61f1234f44991f7a19e108f77ca37032b4be2" 1036 | integrity sha512-YbPAUZwTsvF/2H7IU35txaLUB+JNSV8GIhnswlqiFODP/P32t5op5keYUvQWsSj9TA0VLF367J24buUjIprn0w== 1037 | 1038 | "@radix-ui/react-id@0.1.1": 1039 | version "0.1.1" 1040 | resolved "https://registry.yarnpkg.com/@radix-ui/react-id/-/react-id-0.1.1.tgz#42c8f3967875e6824b2ac9d49c66317047c8d6ff" 1041 | integrity sha512-Vlg5me65+NUgxPBuA0Lk6FerNe+Mq4EuJ8xzpskGxS2t8p1puI3IkyLZ2wWtDSb1KXazoaHn8adBypagt+1P0g== 1042 | dependencies: 1043 | "@babel/runtime" "^7.13.10" 1044 | "@radix-ui/react-context" "0.1.1" 1045 | 1046 | "@radix-ui/react-label@0.1.1": 1047 | version "0.1.1" 1048 | resolved "https://registry.yarnpkg.com/@radix-ui/react-label/-/react-label-0.1.1.tgz#c2970b19214248c2b3a0425c3c0d299290b559a5" 1049 | integrity sha512-52mHm7gxDcbY1+XuFwe0zBvUHp+JP424QC5V2nloPH9JUpCsM2MfviqA/nyW4nKuoGAeF6MhedjtlrXyze8DFw== 1050 | dependencies: 1051 | "@babel/runtime" "^7.13.10" 1052 | "@radix-ui/react-compose-refs" "0.1.0" 1053 | "@radix-ui/react-context" "0.1.1" 1054 | "@radix-ui/react-id" "0.1.1" 1055 | "@radix-ui/react-primitive" "0.1.1" 1056 | 1057 | "@radix-ui/react-menu@0.1.1": 1058 | version "0.1.1" 1059 | resolved "https://registry.yarnpkg.com/@radix-ui/react-menu/-/react-menu-0.1.1.tgz#2146352813ac086df5f021d06bce10f7f56d2577" 1060 | integrity sha512-j9ptTx6aNYbuc7ygNzl8ou5z010HLXgEKZQE5EAiTrdTOCrwullDDLvQR1M0+VGYQkfRvD5Y1MnJEp6ISQDEVg== 1061 | dependencies: 1062 | "@babel/runtime" "^7.13.10" 1063 | "@radix-ui/primitive" "0.1.0" 1064 | "@radix-ui/react-collection" "0.1.1" 1065 | "@radix-ui/react-compose-refs" "0.1.0" 1066 | "@radix-ui/react-context" "0.1.1" 1067 | "@radix-ui/react-dismissable-layer" "0.1.1" 1068 | "@radix-ui/react-focus-guards" "0.1.0" 1069 | "@radix-ui/react-focus-scope" "0.1.1" 1070 | "@radix-ui/react-id" "0.1.1" 1071 | "@radix-ui/react-popper" "0.1.1" 1072 | "@radix-ui/react-portal" "0.1.1" 1073 | "@radix-ui/react-presence" "0.1.1" 1074 | "@radix-ui/react-primitive" "0.1.1" 1075 | "@radix-ui/react-roving-focus" "0.1.1" 1076 | "@radix-ui/react-use-callback-ref" "0.1.0" 1077 | "@radix-ui/react-use-direction" "0.1.0" 1078 | aria-hidden "^1.1.1" 1079 | react-remove-scroll "^2.4.0" 1080 | 1081 | "@radix-ui/react-popover@0.1.1": 1082 | version "0.1.1" 1083 | resolved "https://registry.yarnpkg.com/@radix-ui/react-popover/-/react-popover-0.1.1.tgz#99951e10d70c3855b7a7db52f7f15af684e47848" 1084 | integrity sha512-kPcuzpB72MQMbnLg24NR4NgOLRL7so5/ApukDKGQqGXs/ZBtAUBTdtNSnQIyItT4rvoRbtUOOIH0jC7072yFMg== 1085 | dependencies: 1086 | "@babel/runtime" "^7.13.10" 1087 | "@radix-ui/primitive" "0.1.0" 1088 | "@radix-ui/react-compose-refs" "0.1.0" 1089 | "@radix-ui/react-context" "0.1.1" 1090 | "@radix-ui/react-dismissable-layer" "0.1.1" 1091 | "@radix-ui/react-focus-guards" "0.1.0" 1092 | "@radix-ui/react-focus-scope" "0.1.1" 1093 | "@radix-ui/react-id" "0.1.1" 1094 | "@radix-ui/react-popper" "0.1.1" 1095 | "@radix-ui/react-portal" "0.1.1" 1096 | "@radix-ui/react-presence" "0.1.1" 1097 | "@radix-ui/react-primitive" "0.1.1" 1098 | "@radix-ui/react-use-controllable-state" "0.1.0" 1099 | aria-hidden "^1.1.1" 1100 | react-remove-scroll "^2.4.0" 1101 | 1102 | "@radix-ui/react-popper@0.1.1": 1103 | version "0.1.1" 1104 | resolved "https://registry.yarnpkg.com/@radix-ui/react-popper/-/react-popper-0.1.1.tgz#239eac72cdd7861636f14ff736f21fcb27237afd" 1105 | integrity sha512-LsjeV9MEdikDHi+uBvMpPyLHrDa7A8UlX2s7c9GPgqU9non7kjcijO4NERaoXvhEu6E7NTqApb5axhZxB23R4w== 1106 | dependencies: 1107 | "@babel/runtime" "^7.13.10" 1108 | "@radix-ui/popper" "0.1.0" 1109 | "@radix-ui/react-arrow" "0.1.1" 1110 | "@radix-ui/react-compose-refs" "0.1.0" 1111 | "@radix-ui/react-context" "0.1.1" 1112 | "@radix-ui/react-primitive" "0.1.1" 1113 | "@radix-ui/react-use-rect" "0.1.1" 1114 | "@radix-ui/react-use-size" "0.1.0" 1115 | "@radix-ui/rect" "0.1.1" 1116 | 1117 | "@radix-ui/react-portal@0.1.1": 1118 | version "0.1.1" 1119 | resolved "https://registry.yarnpkg.com/@radix-ui/react-portal/-/react-portal-0.1.1.tgz#c373f1fe7ea3b83a817240689e6885b9c115cee8" 1120 | integrity sha512-ZJFgUBsaFS4cryONfRZXuYxtv87ziRGqFu+wP91rVKF8TpkeQgvPP2QBLIfIGzotr3G1n8t7gHaNJkZtKVeXvw== 1121 | dependencies: 1122 | "@babel/runtime" "^7.13.10" 1123 | "@radix-ui/react-primitive" "0.1.1" 1124 | "@radix-ui/react-use-layout-effect" "0.1.0" 1125 | 1126 | "@radix-ui/react-presence@0.1.1": 1127 | version "0.1.1" 1128 | resolved "https://registry.yarnpkg.com/@radix-ui/react-presence/-/react-presence-0.1.1.tgz#2088dec6f4f8042f83dd2d6bf9e8ef09dadbbc15" 1129 | integrity sha512-LsL+NcWDpFUAYCmXeH02o4pgqcSLpwxP84UIjCtpIKrsPe2vLuhcp79KC/jZJeXz+of2lUpMAxpM+eCpxFZtlg== 1130 | dependencies: 1131 | "@babel/runtime" "^7.13.10" 1132 | "@radix-ui/react-compose-refs" "0.1.0" 1133 | "@radix-ui/react-use-layout-effect" "0.1.0" 1134 | 1135 | "@radix-ui/react-primitive@0.1.1": 1136 | version "0.1.1" 1137 | resolved "https://registry.yarnpkg.com/@radix-ui/react-primitive/-/react-primitive-0.1.1.tgz#98e64d9c3094df737d0f49f0e9e48ff2f44498b0" 1138 | integrity sha512-65GCHeDV/ikicXKR2rLSO6w+dyUQwSG2J1JD2qm4suK1259nTuRvPsPBrbhZpoXWQKj2drMZfhhclXVfzwW1Kw== 1139 | dependencies: 1140 | "@babel/runtime" "^7.13.10" 1141 | "@radix-ui/react-slot" "0.1.1" 1142 | 1143 | "@radix-ui/react-progress@0.1.1": 1144 | version "0.1.1" 1145 | resolved "https://registry.yarnpkg.com/@radix-ui/react-progress/-/react-progress-0.1.1.tgz#37e98cd1a933b75f456d2c3337daee744458b9bd" 1146 | integrity sha512-4iKLDUQWztCXAMrtRzafuAnl49VMBCc/6SaXJj+RvH/stYAJKSqoX+YEXXoX8f5UqPQOnTBPoGTvW9/HlQ1b4Q== 1147 | dependencies: 1148 | "@babel/runtime" "^7.13.10" 1149 | "@radix-ui/react-context" "0.1.1" 1150 | "@radix-ui/react-primitive" "0.1.1" 1151 | 1152 | "@radix-ui/react-radio-group@0.1.1": 1153 | version "0.1.1" 1154 | resolved "https://registry.yarnpkg.com/@radix-ui/react-radio-group/-/react-radio-group-0.1.1.tgz#e46861abd472f52ed57c8379e4e8301bbc503ed1" 1155 | integrity sha512-K6vrFSI62qEnF6ltlyK0pzY9w/Y/HnmheUFcHSfWpyyBU6vmoU/Vdy1ZDAejDtDfdthSrk/L8wczF1OPmIjB2w== 1156 | dependencies: 1157 | "@babel/runtime" "^7.13.10" 1158 | "@radix-ui/primitive" "0.1.0" 1159 | "@radix-ui/react-compose-refs" "0.1.0" 1160 | "@radix-ui/react-context" "0.1.1" 1161 | "@radix-ui/react-label" "0.1.1" 1162 | "@radix-ui/react-presence" "0.1.1" 1163 | "@radix-ui/react-primitive" "0.1.1" 1164 | "@radix-ui/react-roving-focus" "0.1.1" 1165 | "@radix-ui/react-use-controllable-state" "0.1.0" 1166 | "@radix-ui/react-use-previous" "0.1.0" 1167 | "@radix-ui/react-use-size" "0.1.0" 1168 | 1169 | "@radix-ui/react-roving-focus@0.1.1": 1170 | version "0.1.1" 1171 | resolved "https://registry.yarnpkg.com/@radix-ui/react-roving-focus/-/react-roving-focus-0.1.1.tgz#6a7965f6315fae91061b14d6380949a4697e87b9" 1172 | integrity sha512-JK60DVpLjn0RsvJ4DnmuKTJGHuqfBID0/xaJ9tTM5DZ9WqHHhMBtaAi+68yZLSfTfQFajXjN7vaKD3UtmAmavA== 1173 | dependencies: 1174 | "@babel/runtime" "^7.13.10" 1175 | "@radix-ui/primitive" "0.1.0" 1176 | "@radix-ui/react-collection" "0.1.1" 1177 | "@radix-ui/react-compose-refs" "0.1.0" 1178 | "@radix-ui/react-context" "0.1.1" 1179 | "@radix-ui/react-id" "0.1.1" 1180 | "@radix-ui/react-primitive" "0.1.1" 1181 | "@radix-ui/react-use-callback-ref" "0.1.0" 1182 | "@radix-ui/react-use-controllable-state" "0.1.0" 1183 | 1184 | "@radix-ui/react-separator@0.1.1": 1185 | version "0.1.1" 1186 | resolved "https://registry.yarnpkg.com/@radix-ui/react-separator/-/react-separator-0.1.1.tgz#d4253931d02e3d002f8e2e39c2af80e25a13256d" 1187 | integrity sha512-SEDV5/vD66utZVToVdET6n1LY+HBrW3mju/5dcfwyQhRu7Y0Sw+mKs/EnXH0ADh29S0wuifWaW39GDAmRhcPbQ== 1188 | dependencies: 1189 | "@babel/runtime" "^7.13.10" 1190 | "@radix-ui/react-primitive" "0.1.1" 1191 | 1192 | "@radix-ui/react-slider@0.1.1": 1193 | version "0.1.1" 1194 | resolved "https://registry.yarnpkg.com/@radix-ui/react-slider/-/react-slider-0.1.1.tgz#cbf793b7a7e23907252bffc791693f84518e16ff" 1195 | integrity sha512-4OK46wlX2BmVsYbVYw3gml6CitQSTohkOP6mJEXVVlGAAJXgRWt5GmC35cMNpQFdmmQ5vj1oqTEDEB/8dZAQEA== 1196 | dependencies: 1197 | "@babel/runtime" "^7.13.10" 1198 | "@radix-ui/number" "0.1.0" 1199 | "@radix-ui/primitive" "0.1.0" 1200 | "@radix-ui/react-collection" "0.1.1" 1201 | "@radix-ui/react-compose-refs" "0.1.0" 1202 | "@radix-ui/react-context" "0.1.1" 1203 | "@radix-ui/react-primitive" "0.1.1" 1204 | "@radix-ui/react-use-controllable-state" "0.1.0" 1205 | "@radix-ui/react-use-direction" "0.1.0" 1206 | "@radix-ui/react-use-layout-effect" "0.1.0" 1207 | "@radix-ui/react-use-previous" "0.1.0" 1208 | "@radix-ui/react-use-size" "0.1.0" 1209 | 1210 | "@radix-ui/react-slot@0.1.1": 1211 | version "0.1.1" 1212 | resolved "https://registry.yarnpkg.com/@radix-ui/react-slot/-/react-slot-0.1.1.tgz#9dbc2070ccc492847f7e43747b4847bc54786a76" 1213 | integrity sha512-deq3K7cCXQ+tWMZF2GKl3zGMcwVbyQDiMY/UcPI0Q1DDudRG2dWrEwcYbYajEelc07oOxzNyKpaXZLOpNxquuA== 1214 | dependencies: 1215 | "@babel/runtime" "^7.13.10" 1216 | "@radix-ui/react-compose-refs" "0.1.0" 1217 | 1218 | "@radix-ui/react-switch@0.1.1": 1219 | version "0.1.1" 1220 | resolved "https://registry.yarnpkg.com/@radix-ui/react-switch/-/react-switch-0.1.1.tgz#a60090a26387fc018feecb0eb8ae108e2d693472" 1221 | integrity sha512-QlLGNj7NnMUoYj+9msP4q9/X7ZtHLqVLlH5CSzEgoDxxU+wh5+65oTyBynWJLsF9QligE9pJqOwMdqo4qqnBhg== 1222 | dependencies: 1223 | "@babel/runtime" "^7.13.10" 1224 | "@radix-ui/primitive" "0.1.0" 1225 | "@radix-ui/react-compose-refs" "0.1.0" 1226 | "@radix-ui/react-context" "0.1.1" 1227 | "@radix-ui/react-label" "0.1.1" 1228 | "@radix-ui/react-primitive" "0.1.1" 1229 | "@radix-ui/react-use-controllable-state" "0.1.0" 1230 | "@radix-ui/react-use-previous" "0.1.0" 1231 | "@radix-ui/react-use-size" "0.1.0" 1232 | 1233 | "@radix-ui/react-tabs@0.1.1": 1234 | version "0.1.1" 1235 | resolved "https://registry.yarnpkg.com/@radix-ui/react-tabs/-/react-tabs-0.1.1.tgz#2aea3496f0a05e5b5d969305db1203a526f44e97" 1236 | integrity sha512-JCIquq7yBwteL1/iepc++hVyH5EnSicDXLrU4IrIkCy6W+RKi73htx6K7nRpinhaQL22MbTLDYXo9Rr9X/5bjg== 1237 | dependencies: 1238 | "@babel/runtime" "^7.13.10" 1239 | "@radix-ui/primitive" "0.1.0" 1240 | "@radix-ui/react-context" "0.1.1" 1241 | "@radix-ui/react-id" "0.1.1" 1242 | "@radix-ui/react-primitive" "0.1.1" 1243 | "@radix-ui/react-roving-focus" "0.1.1" 1244 | "@radix-ui/react-use-callback-ref" "0.1.0" 1245 | "@radix-ui/react-use-controllable-state" "0.1.0" 1246 | 1247 | "@radix-ui/react-toggle@0.1.1": 1248 | version "0.1.1" 1249 | resolved "https://registry.yarnpkg.com/@radix-ui/react-toggle/-/react-toggle-0.1.1.tgz#0ee89569e8e517593d47117a1d9c90ce05ed37ca" 1250 | integrity sha512-d19eskU1Q1NIs/OwFbzdqPhRtuvdifcF1flKS28lyrhG0m5ToIeq1AqvBib1XGcxnpCxa7X4FpFGIBsiGBtwtg== 1251 | dependencies: 1252 | "@babel/runtime" "^7.13.10" 1253 | "@radix-ui/primitive" "0.1.0" 1254 | "@radix-ui/react-primitive" "0.1.1" 1255 | "@radix-ui/react-use-controllable-state" "0.1.0" 1256 | 1257 | "@radix-ui/react-tooltip@0.1.1": 1258 | version "0.1.1" 1259 | resolved "https://registry.yarnpkg.com/@radix-ui/react-tooltip/-/react-tooltip-0.1.1.tgz#cab234fb62740626794a8008c95cd02f3bcad904" 1260 | integrity sha512-EVZoZ/268kJ/eo+iYN5iGdh5sYAkPMdqdTL51GhTdfG5pskgoeYJQFNP8peObcikKgoyKqkV+5iXGQGa9zzwYg== 1261 | dependencies: 1262 | "@babel/runtime" "^7.13.10" 1263 | "@radix-ui/primitive" "0.1.0" 1264 | "@radix-ui/react-compose-refs" "0.1.0" 1265 | "@radix-ui/react-context" "0.1.1" 1266 | "@radix-ui/react-id" "0.1.1" 1267 | "@radix-ui/react-popper" "0.1.1" 1268 | "@radix-ui/react-portal" "0.1.1" 1269 | "@radix-ui/react-presence" "0.1.1" 1270 | "@radix-ui/react-primitive" "0.1.1" 1271 | "@radix-ui/react-slot" "0.1.1" 1272 | "@radix-ui/react-use-controllable-state" "0.1.0" 1273 | "@radix-ui/react-use-escape-keydown" "0.1.0" 1274 | "@radix-ui/react-use-layout-effect" "0.1.0" 1275 | "@radix-ui/react-use-previous" "0.1.0" 1276 | "@radix-ui/react-use-rect" "0.1.1" 1277 | "@radix-ui/react-visually-hidden" "0.1.1" 1278 | 1279 | "@radix-ui/react-use-body-pointer-events@0.1.0": 1280 | version "0.1.0" 1281 | resolved "https://registry.yarnpkg.com/@radix-ui/react-use-body-pointer-events/-/react-use-body-pointer-events-0.1.0.tgz#29b211464493f8ca5149ce34b96b95abbc97d741" 1282 | integrity sha512-svPyoHCcwOq/vpWNEvdH/yD91vN9p8BtiozNQbjVmJRxQ/vS12zqk70AxTGWe+2ZKHq2sggpEQNTv1JHyVFlnQ== 1283 | dependencies: 1284 | "@babel/runtime" "^7.13.10" 1285 | "@radix-ui/react-use-layout-effect" "0.1.0" 1286 | 1287 | "@radix-ui/react-use-callback-ref@0.1.0": 1288 | version "0.1.0" 1289 | resolved "https://registry.yarnpkg.com/@radix-ui/react-use-callback-ref/-/react-use-callback-ref-0.1.0.tgz#934b6e123330f5b3a6b116460e6662cbc663493f" 1290 | integrity sha512-Va041McOFFl+aV+sejvl0BS2aeHx86ND9X/rVFmEFQKTXCp6xgUK0NGUAGcgBlIjnJSbMYPGEk1xKSSlVcN2Aw== 1291 | dependencies: 1292 | "@babel/runtime" "^7.13.10" 1293 | 1294 | "@radix-ui/react-use-controllable-state@0.1.0": 1295 | version "0.1.0" 1296 | resolved "https://registry.yarnpkg.com/@radix-ui/react-use-controllable-state/-/react-use-controllable-state-0.1.0.tgz#4fced164acfc69a4e34fb9d193afdab973a55de1" 1297 | integrity sha512-zv7CX/PgsRl46a52Tl45TwqwVJdmqnlQEQhaYMz/yBOD2sx2gCkCFSoF/z9mpnYWmS6DTLNTg5lIps3fV6EnXg== 1298 | dependencies: 1299 | "@babel/runtime" "^7.13.10" 1300 | "@radix-ui/react-use-callback-ref" "0.1.0" 1301 | 1302 | "@radix-ui/react-use-direction@0.1.0": 1303 | version "0.1.0" 1304 | resolved "https://registry.yarnpkg.com/@radix-ui/react-use-direction/-/react-use-direction-0.1.0.tgz#97ac1d52e497c974389e7988f809238ed72e7df7" 1305 | integrity sha512-NajpY/An9TCPSfOVkgWIdXJV+VuWl67PxB6kOKYmtNAFHvObzIoh8o0n9sAuwSAyFCZVq211FEf9gvVDRhOyiA== 1306 | dependencies: 1307 | "@babel/runtime" "^7.13.10" 1308 | 1309 | "@radix-ui/react-use-escape-keydown@0.1.0": 1310 | version "0.1.0" 1311 | resolved "https://registry.yarnpkg.com/@radix-ui/react-use-escape-keydown/-/react-use-escape-keydown-0.1.0.tgz#dc80cb3753e9d1bd992adbad9a149fb6ea941874" 1312 | integrity sha512-tDLZbTGFmvXaazUXXv8kYbiCcbAE8yKgng9s95d8fCO+Eundv0Jngbn/hKPhDDs4jj9ChwRX5cDDnlaN+ugYYQ== 1313 | dependencies: 1314 | "@babel/runtime" "^7.13.10" 1315 | "@radix-ui/react-use-callback-ref" "0.1.0" 1316 | 1317 | "@radix-ui/react-use-layout-effect@0.1.0": 1318 | version "0.1.0" 1319 | resolved "https://registry.yarnpkg.com/@radix-ui/react-use-layout-effect/-/react-use-layout-effect-0.1.0.tgz#ebf71bd6d2825de8f1fbb984abf2293823f0f223" 1320 | integrity sha512-+wdeS51Y+E1q1Wmd+1xSSbesZkpVj4jsg0BojCbopWvgq5iBvixw5vgemscdh58ep98BwUbsFYnrywFhV9yrVg== 1321 | dependencies: 1322 | "@babel/runtime" "^7.13.10" 1323 | 1324 | "@radix-ui/react-use-previous@0.1.0": 1325 | version "0.1.0" 1326 | resolved "https://registry.yarnpkg.com/@radix-ui/react-use-previous/-/react-use-previous-0.1.0.tgz#fed880d41187d0fdd1e19c4588402765f342777e" 1327 | integrity sha512-0fxNc33rYnCzDMPSiSnfS8YklnxQo8WqbAQXPAgIaaA1jRu2qFB916PL4qCIW+avcAAqFD38vWhqDqcVmBharA== 1328 | dependencies: 1329 | "@babel/runtime" "^7.13.10" 1330 | 1331 | "@radix-ui/react-use-rect@0.1.1": 1332 | version "0.1.1" 1333 | resolved "https://registry.yarnpkg.com/@radix-ui/react-use-rect/-/react-use-rect-0.1.1.tgz#6c15384beee59c086e75b89a7e66f3d2e583a856" 1334 | integrity sha512-kHNNXAsP3/PeszEmM/nxBBS9Jbo93sO+xuMTcRfwzXsmxT5gDXQzAiKbZQ0EecCPtJIzqvr7dlaQi/aP1PKYqQ== 1335 | dependencies: 1336 | "@babel/runtime" "^7.13.10" 1337 | "@radix-ui/rect" "0.1.1" 1338 | 1339 | "@radix-ui/react-use-size@0.1.0": 1340 | version "0.1.0" 1341 | resolved "https://registry.yarnpkg.com/@radix-ui/react-use-size/-/react-use-size-0.1.0.tgz#dc49295d646f5d3f570943dbb88bd94fc7db7daf" 1342 | integrity sha512-TcZAsR+BYI46w/RbaSFCRACl+Jh6mDqhu6GS2r0iuJpIVrj8atff7qtTjmMmfGtEDNEjhl7DxN3pr1nTS/oruQ== 1343 | dependencies: 1344 | "@babel/runtime" "^7.13.10" 1345 | 1346 | "@radix-ui/react-visually-hidden@0.1.1": 1347 | version "0.1.1" 1348 | resolved "https://registry.yarnpkg.com/@radix-ui/react-visually-hidden/-/react-visually-hidden-0.1.1.tgz#19be23414d4d731159a2c86d69a2c7319750a80f" 1349 | integrity sha512-9tH9yD5fwPOtQO4X5Xq3rv27g30bMY4S9T7Jx2SAhqdIhRfojuMnu3hUNOtGdrVwahm+/AFHwMEs2w+Dq+fdZw== 1350 | dependencies: 1351 | "@babel/runtime" "^7.13.10" 1352 | "@radix-ui/react-primitive" "0.1.1" 1353 | 1354 | "@radix-ui/rect@0.1.1": 1355 | version "0.1.1" 1356 | resolved "https://registry.yarnpkg.com/@radix-ui/rect/-/rect-0.1.1.tgz#95b5ba51f469bea6b1b841e2d427e17e37d38419" 1357 | integrity sha512-g3hnE/UcOg7REdewduRPAK88EPuLZtaq7sA9ouu8S+YEtnyFRI16jgv6GZYe3VMoQLL1T171ebmEPtDjyxWLzw== 1358 | dependencies: 1359 | "@babel/runtime" "^7.13.10" 1360 | 1361 | "@stitches/react@1.2.6": 1362 | version "1.2.6" 1363 | resolved "https://registry.yarnpkg.com/@stitches/react/-/react-1.2.6.tgz#61f2a3d1110334ecd33bcb7463650127d42470cb" 1364 | integrity sha512-gRVITYj8W4jJmoiVxWDv72yCvd12VvtUUAnTzs07EqmtvGCVgKZu3Dx0x5KVCcb0b6tfgvvNH2L84YrzdM4Mag== 1365 | 1366 | "@swc/helpers@^0.3.6", "@swc/helpers@^0.3.8": 1367 | version "0.3.8" 1368 | resolved "https://registry.yarnpkg.com/@swc/helpers/-/helpers-0.3.8.tgz#5b9ecf4ee480ca00f1ffbc2d1a5d4eed0d1afe81" 1369 | integrity sha512-aWItSZvJj4+GI6FWkjZR13xPNPctq2RRakzo+O6vN7bC2yjwdg5EFpgaSAUn95b7BGSgcflvzVDPoKmJv24IOg== 1370 | 1371 | "@trysound/sax@0.2.0": 1372 | version "0.2.0" 1373 | resolved "https://registry.yarnpkg.com/@trysound/sax/-/sax-0.2.0.tgz#cccaab758af56761eb7bf37af6f03f326dd798ad" 1374 | integrity sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA== 1375 | 1376 | "@types/parse-json@^4.0.0": 1377 | version "4.0.0" 1378 | resolved "https://registry.yarnpkg.com/@types/parse-json/-/parse-json-4.0.0.tgz#2f8bb441434d163b35fb8ffdccd7138927ffb8c0" 1379 | integrity sha512-//oorEZjL6sbPcKUaCdIGlIUeH26mgzimjBB77G6XRgnDl/L5wOnpyBGRe/Mmf5CVW3PwEBE1NjiMZ/ssFh4wA== 1380 | 1381 | "@types/prop-types@*": 1382 | version "15.7.4" 1383 | resolved "https://registry.yarnpkg.com/@types/prop-types/-/prop-types-15.7.4.tgz#fcf7205c25dff795ee79af1e30da2c9790808f11" 1384 | integrity sha512-rZ5drC/jWjrArrS8BR6SIr4cWpW09RNTYt9AMZo3Jwwif+iacXAqgVjm0B0Bv/S1jhDXKHqRVNCbACkJ89RAnQ== 1385 | 1386 | "@types/react-table@^6.8.5": 1387 | version "6.8.9" 1388 | resolved "https://registry.yarnpkg.com/@types/react-table/-/react-table-6.8.9.tgz#0925879352e4c15b9b9a7087481ac4268bf8e5ae" 1389 | integrity sha512-fVQXjy/EYDbgraScgjDONA291McKqGrw0R0NeK639fx2bS4T19TnXMjg3FjOPlkI3qYTQtFTPADlRYysaQIMpA== 1390 | dependencies: 1391 | "@types/react" "*" 1392 | 1393 | "@types/react@*": 1394 | version "17.0.43" 1395 | resolved "https://registry.yarnpkg.com/@types/react/-/react-17.0.43.tgz#4adc142887dd4a2601ce730bc56c3436fdb07a55" 1396 | integrity sha512-8Q+LNpdxf057brvPu1lMtC5Vn7J119xrP1aq4qiaefNioQUYANF/CYeK4NsKorSZyUGJ66g0IM+4bbjwx45o2A== 1397 | dependencies: 1398 | "@types/prop-types" "*" 1399 | "@types/scheduler" "*" 1400 | csstype "^3.0.2" 1401 | 1402 | "@types/scheduler@*": 1403 | version "0.16.2" 1404 | resolved "https://registry.yarnpkg.com/@types/scheduler/-/scheduler-0.16.2.tgz#1a62f89525723dde24ba1b01b092bf5df8ad4d39" 1405 | integrity sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew== 1406 | 1407 | abortcontroller-polyfill@^1.1.9: 1408 | version "1.7.3" 1409 | resolved "https://registry.yarnpkg.com/abortcontroller-polyfill/-/abortcontroller-polyfill-1.7.3.tgz#1b5b487bd6436b5b764fd52a612509702c3144b5" 1410 | integrity sha512-zetDJxd89y3X99Kvo4qFx8GKlt6GsvN3UcRZHwU6iFA/0KiOmhkTVhe8oRoTBiTVPZu09x3vCra47+w8Yz1+2Q== 1411 | 1412 | acorn@^8.5.0: 1413 | version "8.7.0" 1414 | resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.7.0.tgz#90951fde0f8f09df93549481e5fc141445b791cf" 1415 | integrity sha512-V/LGr1APy+PXIwKebEWrkZPwoeoF+w1jiOBUmuxuiUIaOHtob8Qc9BTrYo7VuI5fR8tqsy+buA2WFooR5olqvQ== 1416 | 1417 | ansi-styles@^3.2.1: 1418 | version "3.2.1" 1419 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" 1420 | integrity sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA== 1421 | dependencies: 1422 | color-convert "^1.9.0" 1423 | 1424 | ansi-styles@^4.1.0: 1425 | version "4.3.0" 1426 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" 1427 | integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== 1428 | dependencies: 1429 | color-convert "^2.0.1" 1430 | 1431 | aria-hidden@^1.1.1: 1432 | version "1.1.3" 1433 | resolved "https://registry.yarnpkg.com/aria-hidden/-/aria-hidden-1.1.3.tgz#bb48de18dc84787a3c6eee113709c473c64ec254" 1434 | integrity sha512-RhVWFtKH5BiGMycI72q2RAFMLQi8JP9bLuQXgR5a8Znp7P5KOIADSJeyfI8PCVxLEp067B2HbP5JIiI/PXIZeA== 1435 | dependencies: 1436 | tslib "^1.0.0" 1437 | 1438 | "babel-plugin-styled-components@>= 1.12.0": 1439 | version "2.0.6" 1440 | resolved "https://registry.yarnpkg.com/babel-plugin-styled-components/-/babel-plugin-styled-components-2.0.6.tgz#6f76c7f7224b7af7edc24a4910351948c691fc90" 1441 | integrity sha512-Sk+7o/oa2HfHv3Eh8sxoz75/fFvEdHsXV4grdeHufX0nauCmymlnN0rGhIvfpMQSJMvGutJ85gvCGea4iqmDpg== 1442 | dependencies: 1443 | "@babel/helper-annotate-as-pure" "^7.16.0" 1444 | "@babel/helper-module-imports" "^7.16.0" 1445 | babel-plugin-syntax-jsx "^6.18.0" 1446 | lodash "^4.17.11" 1447 | picomatch "^2.3.0" 1448 | 1449 | babel-plugin-syntax-jsx@^6.18.0: 1450 | version "6.18.0" 1451 | resolved "https://registry.yarnpkg.com/babel-plugin-syntax-jsx/-/babel-plugin-syntax-jsx-6.18.0.tgz#0af32a9a6e13ca7a3fd5069e62d7b0f58d0d8946" 1452 | integrity sha1-CvMqmm4Tyno/1QaeYtew9Y0NiUY= 1453 | 1454 | base-x@^3.0.8: 1455 | version "3.0.9" 1456 | resolved "https://registry.yarnpkg.com/base-x/-/base-x-3.0.9.tgz#6349aaabb58526332de9f60995e548a53fe21320" 1457 | integrity sha512-H7JU6iBHTal1gp56aKoaa//YUxEaAOUiydvrV/pILqIHXTtqxSkATOnDA2u+jZ/61sD+L/412+7kzXRtWukhpQ== 1458 | dependencies: 1459 | safe-buffer "^5.0.1" 1460 | 1461 | bintrees@^1.0.1: 1462 | version "1.0.2" 1463 | resolved "https://registry.yarnpkg.com/bintrees/-/bintrees-1.0.2.tgz#49f896d6e858a4a499df85c38fb399b9aff840f8" 1464 | integrity sha1-SfiW1uhYpKSZ34XDj7OZua/4QPg= 1465 | 1466 | boolbase@^1.0.0: 1467 | version "1.0.0" 1468 | resolved "https://registry.yarnpkg.com/boolbase/-/boolbase-1.0.0.tgz#68dff5fbe60c51eb37725ea9e3ed310dcc1e776e" 1469 | integrity sha1-aN/1++YMUes3cl6p4+0xDcwed24= 1470 | 1471 | browserslist@^4.6.6: 1472 | version "4.20.2" 1473 | resolved "https://registry.yarnpkg.com/browserslist/-/browserslist-4.20.2.tgz#567b41508757ecd904dab4d1c646c612cd3d4f88" 1474 | integrity sha512-CQOBCqp/9pDvDbx3xfMi+86pr4KXIf2FDkTTdeuYw8OxS9t898LA1Khq57gtufFILXpfgsSx5woNgsBgvGjpsA== 1475 | dependencies: 1476 | caniuse-lite "^1.0.30001317" 1477 | electron-to-chromium "^1.4.84" 1478 | escalade "^3.1.1" 1479 | node-releases "^2.0.2" 1480 | picocolors "^1.0.0" 1481 | 1482 | buffer-from@^1.0.0: 1483 | version "1.1.2" 1484 | resolved "https://registry.yarnpkg.com/buffer-from/-/buffer-from-1.1.2.tgz#2b146a6fd72e80b4f55d255f35ed59a3a9a41bd5" 1485 | integrity sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ== 1486 | 1487 | callsites@^3.0.0: 1488 | version "3.1.0" 1489 | resolved "https://registry.yarnpkg.com/callsites/-/callsites-3.1.0.tgz#b3630abd8943432f54b3f0519238e33cd7df2f73" 1490 | integrity sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ== 1491 | 1492 | camelize@^1.0.0: 1493 | version "1.0.0" 1494 | resolved "https://registry.yarnpkg.com/camelize/-/camelize-1.0.0.tgz#164a5483e630fa4321e5af07020e531831b2609b" 1495 | integrity sha1-FkpUg+Yw+kMh5a8HAg5TGDGyYJs= 1496 | 1497 | caniuse-lite@^1.0.30001317: 1498 | version "1.0.30001320" 1499 | resolved "https://registry.yarnpkg.com/caniuse-lite/-/caniuse-lite-1.0.30001320.tgz#8397391bec389b8ccce328636499b7284ee13285" 1500 | integrity sha512-MWPzG54AGdo3nWx7zHZTefseM5Y1ccM7hlQKHRqJkPozUaw3hNbBTMmLn16GG2FUzjR13Cr3NPfhIieX5PzXDA== 1501 | 1502 | chalk@^2.0.0: 1503 | version "2.4.2" 1504 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-2.4.2.tgz#cd42541677a54333cf541a49108c1432b44c9424" 1505 | integrity sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ== 1506 | dependencies: 1507 | ansi-styles "^3.2.1" 1508 | escape-string-regexp "^1.0.5" 1509 | supports-color "^5.3.0" 1510 | 1511 | chalk@^4.1.0: 1512 | version "4.1.2" 1513 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" 1514 | integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== 1515 | dependencies: 1516 | ansi-styles "^4.1.0" 1517 | supports-color "^7.1.0" 1518 | 1519 | chrome-trace-event@^1.0.2: 1520 | version "1.0.3" 1521 | resolved "https://registry.yarnpkg.com/chrome-trace-event/-/chrome-trace-event-1.0.3.tgz#1015eced4741e15d06664a957dbbf50d041e26ac" 1522 | integrity sha512-p3KULyQg4S7NIHixdwbGX+nFHkoBiA4YQmyWtjb8XngSKV124nJmRysgAeujbUVb15vh+RvFUfCPqU7rXk+hZg== 1523 | 1524 | classnames@^2.2.5, classnames@^2.2.6: 1525 | version "2.3.1" 1526 | resolved "https://registry.yarnpkg.com/classnames/-/classnames-2.3.1.tgz#dfcfa3891e306ec1dad105d0e88f4417b8535e8e" 1527 | integrity sha512-OlQdbZ7gLfGarSqxesMesDa5uz7KFbID8Kpq/SxIoNGDqY8lSYs0D+hhtBXhcdB3rcbXArFr7vlHheLk1voeNA== 1528 | 1529 | clone@^2.1.1: 1530 | version "2.1.2" 1531 | resolved "https://registry.yarnpkg.com/clone/-/clone-2.1.2.tgz#1b7f4b9f591f1e8f83670401600345a02887435f" 1532 | integrity sha1-G39Ln1kfHo+DZwQBYANFoCiHQ18= 1533 | 1534 | color-convert@^1.9.0: 1535 | version "1.9.3" 1536 | resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-1.9.3.tgz#bb71850690e1f136567de629d2d5471deda4c1e8" 1537 | integrity sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg== 1538 | dependencies: 1539 | color-name "1.1.3" 1540 | 1541 | color-convert@^2.0.1: 1542 | version "2.0.1" 1543 | resolved "https://registry.yarnpkg.com/color-convert/-/color-convert-2.0.1.tgz#72d3a68d598c9bdb3af2ad1e84f21d896abd4de3" 1544 | integrity sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ== 1545 | dependencies: 1546 | color-name "~1.1.4" 1547 | 1548 | color-name@1.1.3: 1549 | version "1.1.3" 1550 | resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.3.tgz#a7d0558bd89c42f795dd42328f740831ca53bc25" 1551 | integrity sha1-p9BVi9icQveV3UIyj3QIMcpTvCU= 1552 | 1553 | color-name@~1.1.4: 1554 | version "1.1.4" 1555 | resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" 1556 | integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== 1557 | 1558 | commander@^2.20.0: 1559 | version "2.20.3" 1560 | resolved "https://registry.yarnpkg.com/commander/-/commander-2.20.3.tgz#fd485e84c03eb4881c20722ba48035e8531aeb33" 1561 | integrity sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ== 1562 | 1563 | commander@^7.0.0, commander@^7.2.0: 1564 | version "7.2.0" 1565 | resolved "https://registry.yarnpkg.com/commander/-/commander-7.2.0.tgz#a36cb57d0b501ce108e4d20559a150a391d97ab7" 1566 | integrity sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw== 1567 | 1568 | cosmiconfig@^7.0.1: 1569 | version "7.0.1" 1570 | resolved "https://registry.yarnpkg.com/cosmiconfig/-/cosmiconfig-7.0.1.tgz#714d756522cace867867ccb4474c5d01bbae5d6d" 1571 | integrity sha512-a1YWNUV2HwGimB7dU2s1wUMurNKjpx60HxBB6xUM8Re+2s1g1IIfJvFR0/iCF+XHdE0GMTKTuLR32UQff4TEyQ== 1572 | dependencies: 1573 | "@types/parse-json" "^4.0.0" 1574 | import-fresh "^3.2.1" 1575 | parse-json "^5.0.0" 1576 | path-type "^4.0.0" 1577 | yaml "^1.10.0" 1578 | 1579 | css-color-keywords@^1.0.0: 1580 | version "1.0.0" 1581 | resolved "https://registry.yarnpkg.com/css-color-keywords/-/css-color-keywords-1.0.0.tgz#fea2616dc676b2962686b3af8dbdbe180b244e05" 1582 | integrity sha1-/qJhbcZ2spYmhrOvjb2+GAskTgU= 1583 | 1584 | css-select@^4.1.3: 1585 | version "4.2.1" 1586 | resolved "https://registry.yarnpkg.com/css-select/-/css-select-4.2.1.tgz#9e665d6ae4c7f9d65dbe69d0316e3221fb274cdd" 1587 | integrity sha512-/aUslKhzkTNCQUB2qTX84lVmfia9NyjP3WpDGtj/WxhwBzWBYUV3DgUpurHTme8UTPcPlAD1DJ+b0nN/t50zDQ== 1588 | dependencies: 1589 | boolbase "^1.0.0" 1590 | css-what "^5.1.0" 1591 | domhandler "^4.3.0" 1592 | domutils "^2.8.0" 1593 | nth-check "^2.0.1" 1594 | 1595 | css-to-react-native@^3.0.0: 1596 | version "3.0.0" 1597 | resolved "https://registry.yarnpkg.com/css-to-react-native/-/css-to-react-native-3.0.0.tgz#62dbe678072a824a689bcfee011fc96e02a7d756" 1598 | integrity sha512-Ro1yETZA813eoyUp2GDBhG2j+YggidUmzO1/v9eYBKR2EHVEniE2MI/NqpTQ954BMpTPZFsGNPm46qFB9dpaPQ== 1599 | dependencies: 1600 | camelize "^1.0.0" 1601 | css-color-keywords "^1.0.0" 1602 | postcss-value-parser "^4.0.2" 1603 | 1604 | css-tree@^1.1.2, css-tree@^1.1.3: 1605 | version "1.1.3" 1606 | resolved "https://registry.yarnpkg.com/css-tree/-/css-tree-1.1.3.tgz#eb4870fb6fd7707327ec95c2ff2ab09b5e8db91d" 1607 | integrity sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q== 1608 | dependencies: 1609 | mdn-data "2.0.14" 1610 | source-map "^0.6.1" 1611 | 1612 | css-what@^5.1.0: 1613 | version "5.1.0" 1614 | resolved "https://registry.yarnpkg.com/css-what/-/css-what-5.1.0.tgz#3f7b707aadf633baf62c2ceb8579b545bb40f7fe" 1615 | integrity sha512-arSMRWIIFY0hV8pIxZMEfmMI47Wj3R/aWpZDDxWYCPEiOMv6tfOrnpDtgxBYPEQD4V0Y/958+1TdC3iWTFcUPw== 1616 | 1617 | csso@^4.2.0: 1618 | version "4.2.0" 1619 | resolved "https://registry.yarnpkg.com/csso/-/csso-4.2.0.tgz#ea3a561346e8dc9f546d6febedd50187cf389529" 1620 | integrity sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA== 1621 | dependencies: 1622 | css-tree "^1.1.2" 1623 | 1624 | csstype@^3.0.2, csstype@^3.0.4: 1625 | version "3.0.11" 1626 | resolved "https://registry.yarnpkg.com/csstype/-/csstype-3.0.11.tgz#d66700c5eacfac1940deb4e3ee5642792d85cd33" 1627 | integrity sha512-sa6P2wJ+CAbgyy4KFssIb/JNMLxFvKF1pCYCSXS8ZMuqZnMsrxqI2E5sPyoTpxoPU/gVZMzr2zjOfg8GIZOMsw== 1628 | 1629 | d3-array@1, d3-array@^1.1.1, d3-array@^1.2.0, d3-array@^1.2.1: 1630 | version "1.2.4" 1631 | resolved "https://registry.yarnpkg.com/d3-array/-/d3-array-1.2.4.tgz#635ce4d5eea759f6f605863dbcfc30edc737f71f" 1632 | integrity sha512-KHW6M86R+FUPYGb3R5XiYjXPq7VzwxZ22buHhAEVG5ztoEcZZMLov530mmccaqA1GghZArjQV46fuc8kUqhhHw== 1633 | 1634 | d3-array@2, d3-array@^2.3.0: 1635 | version "2.12.1" 1636 | resolved "https://registry.yarnpkg.com/d3-array/-/d3-array-2.12.1.tgz#e20b41aafcdffdf5d50928004ececf815a465e81" 1637 | integrity sha512-B0ErZK/66mHtEsR1TkPEEkwdy+WDesimkM5gpZr5Dsg54BiTA5RXtYW5qTLIAcekaS9xfZrzBLF/OAkB3Qn1YQ== 1638 | dependencies: 1639 | internmap "^1.0.0" 1640 | 1641 | d3-brush@^2.1.0: 1642 | version "2.1.0" 1643 | resolved "https://registry.yarnpkg.com/d3-brush/-/d3-brush-2.1.0.tgz#adadfbb104e8937af142e9a6e2028326f0471065" 1644 | integrity sha512-cHLLAFatBATyIKqZOkk/mDHUbzne2B3ZwxkzMHvFTCZCmLaXDpZRihQSn8UNXTkGD/3lb/W2sQz0etAftmHMJQ== 1645 | dependencies: 1646 | d3-dispatch "1 - 2" 1647 | d3-drag "2" 1648 | d3-interpolate "1 - 2" 1649 | d3-selection "2" 1650 | d3-transition "2" 1651 | 1652 | d3-chord@^1.0.4: 1653 | version "1.0.6" 1654 | resolved "https://registry.yarnpkg.com/d3-chord/-/d3-chord-1.0.6.tgz#309157e3f2db2c752f0280fedd35f2067ccbb15f" 1655 | integrity sha512-JXA2Dro1Fxw9rJe33Uv+Ckr5IrAa74TlfDEhE/jfLOaXegMQFQTAgAw9WnZL8+HxVBRXaRGCkrNU7pJeylRIuA== 1656 | dependencies: 1657 | d3-array "1" 1658 | d3-path "1" 1659 | 1660 | d3-collection@1, d3-collection@^1.0.1, d3-collection@^1.0.4, d3-collection@^1.0.7: 1661 | version "1.0.7" 1662 | resolved "https://registry.yarnpkg.com/d3-collection/-/d3-collection-1.0.7.tgz#349bd2aa9977db071091c13144d5e4f16b5b310e" 1663 | integrity sha512-ii0/r5f4sjKNTfh84Di+DpztYwqKhEyUlKoPrzUFfeSkWxjW49xU2QzO9qrPrNkpdI0XJkfzvmTu8V2Zylln6A== 1664 | 1665 | d3-color@1: 1666 | version "1.4.1" 1667 | resolved "https://registry.yarnpkg.com/d3-color/-/d3-color-1.4.1.tgz#c52002bf8846ada4424d55d97982fef26eb3bc8a" 1668 | integrity sha512-p2sTHSLCJI2QKunbGb7ocOh7DgTAn8IrLx21QRc/BSnodXM4sv6aLQlnfpvehFMLZEfBc6g9pH9SWQccFYfJ9Q== 1669 | 1670 | "d3-color@1 - 2": 1671 | version "2.0.0" 1672 | resolved "https://registry.yarnpkg.com/d3-color/-/d3-color-2.0.0.tgz#8d625cab42ed9b8f601a1760a389f7ea9189d62e" 1673 | integrity sha512-SPXi0TSKPD4g9tw0NMZFnR95XVgUZiBH+uUTqQuDu1OsE2zomHU7ho0FISciaPvosimixwHFl3WHLGabv6dDgQ== 1674 | 1675 | d3-contour@^1.1.1: 1676 | version "1.3.2" 1677 | resolved "https://registry.yarnpkg.com/d3-contour/-/d3-contour-1.3.2.tgz#652aacd500d2264cb3423cee10db69f6f59bead3" 1678 | integrity sha512-hoPp4K/rJCu0ladiH6zmJUEz6+u3lgR+GSm/QdM2BBvDraU39Vr7YdDCicJcxP1z8i9B/2dJLgDC1NcvlF8WCg== 1679 | dependencies: 1680 | d3-array "^1.1.1" 1681 | 1682 | d3-dispatch@1: 1683 | version "1.0.6" 1684 | resolved "https://registry.yarnpkg.com/d3-dispatch/-/d3-dispatch-1.0.6.tgz#00d37bcee4dd8cd97729dd893a0ac29caaba5d58" 1685 | integrity sha512-fVjoElzjhCEy+Hbn8KygnmMS7Or0a9sI2UzGwoB7cCtvI1XpVN9GpoYlnb3xt2YV66oXYb1fLJ8GMvP4hdU1RA== 1686 | 1687 | "d3-dispatch@1 - 2": 1688 | version "2.0.0" 1689 | resolved "https://registry.yarnpkg.com/d3-dispatch/-/d3-dispatch-2.0.0.tgz#8a18e16f76dd3fcaef42163c97b926aa9b55e7cf" 1690 | integrity sha512-S/m2VsXI7gAti2pBoLClFFTMOO1HTtT0j99AuXLoGFKO6deHDdnv6ZGTxSTTUTgO1zVcv82fCOtDjYK4EECmWA== 1691 | 1692 | d3-drag@2: 1693 | version "2.0.0" 1694 | resolved "https://registry.yarnpkg.com/d3-drag/-/d3-drag-2.0.0.tgz#9eaf046ce9ed1c25c88661911c1d5a4d8eb7ea6d" 1695 | integrity sha512-g9y9WbMnF5uqB9qKqwIIa/921RYWzlUDv9Jl1/yONQwxbOfszAWTCm8u7HOTgJgRDXiRZN56cHT9pd24dmXs8w== 1696 | dependencies: 1697 | d3-dispatch "1 - 2" 1698 | d3-selection "2" 1699 | 1700 | "d3-ease@1 - 2": 1701 | version "2.0.0" 1702 | resolved "https://registry.yarnpkg.com/d3-ease/-/d3-ease-2.0.0.tgz#fd1762bfca00dae4bacea504b1d628ff290ac563" 1703 | integrity sha512-68/n9JWarxXkOWMshcT5IcjbB+agblQUaIsbnXmrzejn2O82n3p2A9R2zEB9HIEFWKFwPAEDDN8gR0VdSAyyAQ== 1704 | 1705 | d3-force@^1.0.2: 1706 | version "1.2.1" 1707 | resolved "https://registry.yarnpkg.com/d3-force/-/d3-force-1.2.1.tgz#fd29a5d1ff181c9e7f0669e4bd72bdb0e914ec0b" 1708 | integrity sha512-HHvehyaiUlVo5CxBJ0yF/xny4xoaxFxDnBXNvNcfW9adORGZfyNF1dj6DGLKyk4Yh3brP/1h3rnDzdIAwL08zg== 1709 | dependencies: 1710 | d3-collection "1" 1711 | d3-dispatch "1" 1712 | d3-quadtree "1" 1713 | d3-timer "1" 1714 | 1715 | d3-format@1: 1716 | version "1.4.5" 1717 | resolved "https://registry.yarnpkg.com/d3-format/-/d3-format-1.4.5.tgz#374f2ba1320e3717eb74a9356c67daee17a7edb4" 1718 | integrity sha512-J0piedu6Z8iB6TbIGfZgDzfXxUFN3qQRMofy2oPdXzQibYGqPB/9iMcxr/TGalU+2RsyDO+U4f33id8tbnSRMQ== 1719 | 1720 | "d3-format@1 - 2": 1721 | version "2.0.0" 1722 | resolved "https://registry.yarnpkg.com/d3-format/-/d3-format-2.0.0.tgz#a10bcc0f986c372b729ba447382413aabf5b0767" 1723 | integrity sha512-Ab3S6XuE/Q+flY96HXT0jOXcM4EAClYFnRGY5zsjRGNy6qCYrQsMffs7cV5Q9xejb35zxW5hf/guKw34kvIKsA== 1724 | 1725 | d3-glyphedge@^1.2.0: 1726 | version "1.2.0" 1727 | resolved "https://registry.yarnpkg.com/d3-glyphedge/-/d3-glyphedge-1.2.0.tgz#295367d8405f83cdbe8319171bb1f6636c60f85b" 1728 | integrity sha512-F49fyMXMLYDHvqvxSmuGZrtIWeWLZWxar82WL1CJDBDPk4z6GUGSG4wX7rdv7N7R/YazAyMMnpOL0YQcmTLlOQ== 1729 | 1730 | d3-hexbin@^0.2.2: 1731 | version "0.2.2" 1732 | resolved "https://registry.yarnpkg.com/d3-hexbin/-/d3-hexbin-0.2.2.tgz#9c5837dacfd471ab05337a9e91ef10bfc4f98831" 1733 | integrity sha1-nFg32s/UcasFM3qeke8Qv8T5iDE= 1734 | 1735 | d3-hierarchy@^1.1.3: 1736 | version "1.1.9" 1737 | resolved "https://registry.yarnpkg.com/d3-hierarchy/-/d3-hierarchy-1.1.9.tgz#2f6bee24caaea43f8dc37545fa01628559647a83" 1738 | integrity sha512-j8tPxlqh1srJHAtxfvOUwKNYJkQuBFdM1+JAUfq6xqH5eAqf93L7oG1NVqDa4CpFZNvnNKtCYEUC8KY9yEn9lQ== 1739 | 1740 | d3-interpolate@1, d3-interpolate@^1.1.5: 1741 | version "1.4.0" 1742 | resolved "https://registry.yarnpkg.com/d3-interpolate/-/d3-interpolate-1.4.0.tgz#526e79e2d80daa383f9e0c1c1c7dcc0f0583e987" 1743 | integrity sha512-V9znK0zc3jOPV4VD2zZn0sDhZU3WAE2bmlxdIwwQPPzPjvyLkd8B3JUVdS1IDUFDkWZ72c9qnv1GK2ZagTZ8EA== 1744 | dependencies: 1745 | d3-color "1" 1746 | 1747 | "d3-interpolate@1 - 2", "d3-interpolate@1.2.0 - 2": 1748 | version "2.0.1" 1749 | resolved "https://registry.yarnpkg.com/d3-interpolate/-/d3-interpolate-2.0.1.tgz#98be499cfb8a3b94d4ff616900501a64abc91163" 1750 | integrity sha512-c5UhwwTs/yybcmTpAVqwSFl6vrQ8JZJoT5F7xNFK9pymv5C0Ymcc9/LIJHtYIggg/yS9YHw8i8O8tgb9pupjeQ== 1751 | dependencies: 1752 | d3-color "1 - 2" 1753 | 1754 | d3-path@1: 1755 | version "1.0.9" 1756 | resolved "https://registry.yarnpkg.com/d3-path/-/d3-path-1.0.9.tgz#48c050bb1fe8c262493a8caf5524e3e9591701cf" 1757 | integrity sha512-VLaYcn81dtHVTjEHd8B+pbe9yHWpXKZUC87PzoFmsFrJqgFwDe/qxfp5MlfsfM1V5E/iVt0MmEbWQ7FVIXh/bg== 1758 | 1759 | d3-polygon@^1.0.5: 1760 | version "1.0.6" 1761 | resolved "https://registry.yarnpkg.com/d3-polygon/-/d3-polygon-1.0.6.tgz#0bf8cb8180a6dc107f518ddf7975e12abbfbd38e" 1762 | integrity sha512-k+RF7WvI08PC8reEoXa/w2nSg5AUMTi+peBD9cmFc+0ixHfbs4QmxxkarVal1IkVkgxVuk9JSHhJURHiyHKAuQ== 1763 | 1764 | d3-quadtree@1: 1765 | version "1.0.7" 1766 | resolved "https://registry.yarnpkg.com/d3-quadtree/-/d3-quadtree-1.0.7.tgz#ca8b84df7bb53763fe3c2f24bd435137f4e53135" 1767 | integrity sha512-RKPAeXnkC59IDGD0Wu5mANy0Q2V28L+fNe65pOCXVdVuTJS3WPKaJlFHer32Rbh9gIo9qMuJXio8ra4+YmIymA== 1768 | 1769 | d3-sankey-circular@0.25.0: 1770 | version "0.25.0" 1771 | resolved "https://registry.yarnpkg.com/d3-sankey-circular/-/d3-sankey-circular-0.25.0.tgz#9c31be18e507862fe0c9c4b80ed509c965a8f15e" 1772 | integrity sha512-maYak22afBAvmybeaopd1cVUNTIroEHhWCmh19gEQ+qgOhBkTav8YeP3Uw4OV/K4OksWaQrhhBOE4Rcxgc2JbQ== 1773 | dependencies: 1774 | d3-array "^1.2.1" 1775 | d3-collection "^1.0.4" 1776 | d3-shape "^1.2.0" 1777 | 1778 | d3-scale@^1.0.3: 1779 | version "1.0.7" 1780 | resolved "https://registry.yarnpkg.com/d3-scale/-/d3-scale-1.0.7.tgz#fa90324b3ea8a776422bd0472afab0b252a0945d" 1781 | integrity sha512-KvU92czp2/qse5tUfGms6Kjig0AhHOwkzXG0+PqIJB3ke0WUv088AHMZI0OssO9NCkXt4RP8yju9rpH8aGB7Lw== 1782 | dependencies: 1783 | d3-array "^1.2.0" 1784 | d3-collection "1" 1785 | d3-color "1" 1786 | d3-format "1" 1787 | d3-interpolate "1" 1788 | d3-time "1" 1789 | d3-time-format "2" 1790 | 1791 | d3-scale@^3.0.0: 1792 | version "3.3.0" 1793 | resolved "https://registry.yarnpkg.com/d3-scale/-/d3-scale-3.3.0.tgz#28c600b29f47e5b9cd2df9749c206727966203f3" 1794 | integrity sha512-1JGp44NQCt5d1g+Yy+GeOnZP7xHo0ii8zsQp6PGzd+C1/dl0KGsp9A7Mxwp+1D1o4unbTTxVdU/ZOIEBoeZPbQ== 1795 | dependencies: 1796 | d3-array "^2.3.0" 1797 | d3-format "1 - 2" 1798 | d3-interpolate "1.2.0 - 2" 1799 | d3-time "^2.1.1" 1800 | d3-time-format "2 - 3" 1801 | 1802 | d3-selection@2: 1803 | version "2.0.0" 1804 | resolved "https://registry.yarnpkg.com/d3-selection/-/d3-selection-2.0.0.tgz#94a11638ea2141b7565f883780dabc7ef6a61066" 1805 | integrity sha512-XoGGqhLUN/W14NmaqcO/bb1nqjDAw5WtSYb2X8wiuQWvSZUsUVYsOSkOybUrNvcBjaywBdYPy03eXHMXjk9nZA== 1806 | 1807 | d3-shape@^1.2.0, d3-shape@^1.2.2, d3-shape@^1.3.5: 1808 | version "1.3.7" 1809 | resolved "https://registry.yarnpkg.com/d3-shape/-/d3-shape-1.3.7.tgz#df63801be07bc986bc54f63789b4fe502992b5d7" 1810 | integrity sha512-EUkvKjqPFUAZyOlhY5gzCxCeI0Aep04LwIRpsZ/mLFelJiUfnK56jo5JMDSE7yyP2kLSb6LtF+S5chMk7uqPqw== 1811 | dependencies: 1812 | d3-path "1" 1813 | 1814 | d3-shape@~1.0.4: 1815 | version "1.0.6" 1816 | resolved "https://registry.yarnpkg.com/d3-shape/-/d3-shape-1.0.6.tgz#b09e305cf0c7c6b9a98c90e6b42f62dac4bcfd5b" 1817 | integrity sha1-sJ4wXPDHxrmpjJDmtC9i2sS8/Vs= 1818 | dependencies: 1819 | d3-path "1" 1820 | 1821 | d3-time-format@2: 1822 | version "2.3.0" 1823 | resolved "https://registry.yarnpkg.com/d3-time-format/-/d3-time-format-2.3.0.tgz#107bdc028667788a8924ba040faf1fbccd5a7850" 1824 | integrity sha512-guv6b2H37s2Uq/GefleCDtbe0XZAuy7Wa49VGkPVPMfLL9qObgBST3lEHJBMUp8S7NdLQAGIvr2KXk8Hc98iKQ== 1825 | dependencies: 1826 | d3-time "1" 1827 | 1828 | "d3-time-format@2 - 3": 1829 | version "3.0.0" 1830 | resolved "https://registry.yarnpkg.com/d3-time-format/-/d3-time-format-3.0.0.tgz#df8056c83659e01f20ac5da5fdeae7c08d5f1bb6" 1831 | integrity sha512-UXJh6EKsHBTjopVqZBhFysQcoXSv/5yLONZvkQ5Kk3qbwiUYkdX17Xa1PT6U1ZWXGGfB1ey5L8dKMlFq2DO0Ag== 1832 | dependencies: 1833 | d3-time "1 - 2" 1834 | 1835 | d3-time@1: 1836 | version "1.1.0" 1837 | resolved "https://registry.yarnpkg.com/d3-time/-/d3-time-1.1.0.tgz#b1e19d307dae9c900b7e5b25ffc5dcc249a8a0f1" 1838 | integrity sha512-Xh0isrZ5rPYYdqhAVk8VLnMEidhz5aP7htAADH6MfzgmmicPkTo8LhkLxci61/lCB7n7UmE3bN0leRt+qvkLxA== 1839 | 1840 | "d3-time@1 - 2", d3-time@^2.1.1: 1841 | version "2.1.1" 1842 | resolved "https://registry.yarnpkg.com/d3-time/-/d3-time-2.1.1.tgz#e9d8a8a88691f4548e68ca085e5ff956724a6682" 1843 | integrity sha512-/eIQe/eR4kCQwq7yxi7z4c6qEXf2IYGcjoWB5OOQy4Tq9Uv39/947qlDcN2TLkiTzQWzvnsuYPB9TrWaNfipKQ== 1844 | dependencies: 1845 | d3-array "2" 1846 | 1847 | d3-timer@1: 1848 | version "1.0.10" 1849 | resolved "https://registry.yarnpkg.com/d3-timer/-/d3-timer-1.0.10.tgz#dfe76b8a91748831b13b6d9c793ffbd508dd9de5" 1850 | integrity sha512-B1JDm0XDaQC+uvo4DT79H0XmBskgS3l6Ve+1SBCfxgmtIb1AVrPIoqd+nPSv+loMX8szQ0sVUhGngL7D5QPiXw== 1851 | 1852 | "d3-timer@1 - 2": 1853 | version "2.0.0" 1854 | resolved "https://registry.yarnpkg.com/d3-timer/-/d3-timer-2.0.0.tgz#055edb1d170cfe31ab2da8968deee940b56623e6" 1855 | integrity sha512-TO4VLh0/420Y/9dO3+f9abDEFYeCUr2WZRlxJvbp4HPTQcSylXNiL6yZa9FIUvV1yRiFufl1bszTCLDqv9PWNA== 1856 | 1857 | d3-transition@2: 1858 | version "2.0.0" 1859 | resolved "https://registry.yarnpkg.com/d3-transition/-/d3-transition-2.0.0.tgz#366ef70c22ef88d1e34105f507516991a291c94c" 1860 | integrity sha512-42ltAGgJesfQE3u9LuuBHNbGrI/AJjNL2OAUdclE70UE6Vy239GCBEYD38uBPoLeNsOhFStGpPI0BAOV+HMxog== 1861 | dependencies: 1862 | d3-color "1 - 2" 1863 | d3-dispatch "1 - 2" 1864 | d3-ease "1 - 2" 1865 | d3-interpolate "1 - 2" 1866 | d3-timer "1 - 2" 1867 | 1868 | d3-voronoi@^1.0.2: 1869 | version "1.1.4" 1870 | resolved "https://registry.yarnpkg.com/d3-voronoi/-/d3-voronoi-1.1.4.tgz#dd3c78d7653d2bb359284ae478645d95944c8297" 1871 | integrity sha512-dArJ32hchFsrQ8uMiTBLq256MpnZjeuBtdHpaDlYuQyjU0CVzCJl/BVW+SkszaAeH95D/8gxqAhgx0ouAWAfRg== 1872 | 1873 | debug@^4.1.0: 1874 | version "4.3.4" 1875 | resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" 1876 | integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== 1877 | dependencies: 1878 | ms "2.1.2" 1879 | 1880 | detect-libc@^1.0.3: 1881 | version "1.0.3" 1882 | resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-1.0.3.tgz#fa137c4bd698edf55cd5cd02ac559f91a4c4ba9b" 1883 | integrity sha1-+hN8S9aY7fVc1c0CrFWfkaTEups= 1884 | 1885 | detect-node-es@^1.1.0: 1886 | version "1.1.0" 1887 | resolved "https://registry.yarnpkg.com/detect-node-es/-/detect-node-es-1.1.0.tgz#163acdf643330caa0b4cd7c21e7ee7755d6fa493" 1888 | integrity sha512-ypdmJU/TbBby2Dxibuv7ZLW3Bs1QEmM7nHjEANfohJLvE0XVujisn1qPJcZxg+qDucsr+bP6fLD1rPS3AhJ7EQ== 1889 | 1890 | dom-serializer@^1.0.1: 1891 | version "1.3.2" 1892 | resolved "https://registry.yarnpkg.com/dom-serializer/-/dom-serializer-1.3.2.tgz#6206437d32ceefaec7161803230c7a20bc1b4d91" 1893 | integrity sha512-5c54Bk5Dw4qAxNOI1pFEizPSjVsx5+bpJKmL2kPn8JhBUq2q09tTCa3mjijun2NfK78NMouDYNMBkOrPZiS+ig== 1894 | dependencies: 1895 | domelementtype "^2.0.1" 1896 | domhandler "^4.2.0" 1897 | entities "^2.0.0" 1898 | 1899 | domelementtype@^2.0.1, domelementtype@^2.2.0: 1900 | version "2.2.0" 1901 | resolved "https://registry.yarnpkg.com/domelementtype/-/domelementtype-2.2.0.tgz#9a0b6c2782ed6a1c7323d42267183df9bd8b1d57" 1902 | integrity sha512-DtBMo82pv1dFtUmHyr48beiuq792Sxohr+8Hm9zoxklYPfa6n0Z3Byjj2IV7bmr2IyqClnqEQhfgHJJ5QF0R5A== 1903 | 1904 | domhandler@^4.2.0, domhandler@^4.2.2, domhandler@^4.3.0: 1905 | version "4.3.1" 1906 | resolved "https://registry.yarnpkg.com/domhandler/-/domhandler-4.3.1.tgz#8d792033416f59d68bc03a5aa7b018c1ca89279c" 1907 | integrity sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ== 1908 | dependencies: 1909 | domelementtype "^2.2.0" 1910 | 1911 | domutils@^2.8.0: 1912 | version "2.8.0" 1913 | resolved "https://registry.yarnpkg.com/domutils/-/domutils-2.8.0.tgz#4437def5db6e2d1f5d6ee859bd95ca7d02048135" 1914 | integrity sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A== 1915 | dependencies: 1916 | dom-serializer "^1.0.1" 1917 | domelementtype "^2.2.0" 1918 | domhandler "^4.2.0" 1919 | 1920 | dotenv-expand@^5.1.0: 1921 | version "5.1.0" 1922 | resolved "https://registry.yarnpkg.com/dotenv-expand/-/dotenv-expand-5.1.0.tgz#3fbaf020bfd794884072ea26b1e9791d45a629f0" 1923 | integrity sha512-YXQl1DSa4/PQyRfgrv6aoNjhasp/p4qs9FjJ4q4cQk+8m4r6k4ZSiEyytKG8f8W9gi8WsQtIObNmKd+tMzNTmA== 1924 | 1925 | dotenv@^7.0.0: 1926 | version "7.0.0" 1927 | resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-7.0.0.tgz#a2be3cd52736673206e8a85fb5210eea29628e7c" 1928 | integrity sha512-M3NhsLbV1i6HuGzBUH8vXrtxOk+tWmzWKDMbAVSUp3Zsjm7ywFeuwrUXhmhQyRK1q5B5GGy7hcXPbj3bnfZg2g== 1929 | 1930 | electron-to-chromium@^1.4.84: 1931 | version "1.4.94" 1932 | resolved "https://registry.yarnpkg.com/electron-to-chromium/-/electron-to-chromium-1.4.94.tgz#f19206c977361264a51d53a7ea7ef861a94baa10" 1933 | integrity sha512-CoOKsuACoa0PAG3hQXxbh/XDiFcjGuSyGKUi09cjMHOt6RCi7/EXgXhaFF3I+aC89Omudqmkzd0YOQKxwtf/Bg== 1934 | 1935 | entities@^2.0.0: 1936 | version "2.2.0" 1937 | resolved "https://registry.yarnpkg.com/entities/-/entities-2.2.0.tgz#098dc90ebb83d8dffa089d55256b351d34c4da55" 1938 | integrity sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A== 1939 | 1940 | entities@^3.0.1: 1941 | version "3.0.1" 1942 | resolved "https://registry.yarnpkg.com/entities/-/entities-3.0.1.tgz#2b887ca62585e96db3903482d336c1006c3001d4" 1943 | integrity sha512-WiyBqoomrwMdFG1e0kqvASYfnlb0lp8M5o5Fw2OFq1hNZxxcNk8Ik0Xm7LxzBhuidnZB/UtBqVCgUz3kBOP51Q== 1944 | 1945 | error-ex@^1.3.1: 1946 | version "1.3.2" 1947 | resolved "https://registry.yarnpkg.com/error-ex/-/error-ex-1.3.2.tgz#b4ac40648107fdcdcfae242f428bea8a14d4f1bf" 1948 | integrity sha512-7dFHNmqeFSEt2ZBsCriorKnn3Z2pj+fd9kmI6QoWw4//DL+icEBfc0U7qJCisqrTsKTjw4fNFy2pW9OqStD84g== 1949 | dependencies: 1950 | is-arrayish "^0.2.1" 1951 | 1952 | escalade@^3.1.1: 1953 | version "3.1.1" 1954 | resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40" 1955 | integrity sha512-k0er2gUkLf8O0zKJiAhmkTnJlTvINGv7ygDNPbeIsX/TJjGJZHuh9B2UxbsaEkmlEo9MfhrSzmhIlhRlI2GXnw== 1956 | 1957 | escape-string-regexp@^1.0.5: 1958 | version "1.0.5" 1959 | resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4" 1960 | integrity sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ= 1961 | 1962 | get-nonce@^1.0.0: 1963 | version "1.0.1" 1964 | resolved "https://registry.yarnpkg.com/get-nonce/-/get-nonce-1.0.1.tgz#fdf3f0278073820d2ce9426c18f07481b1e0cdf3" 1965 | integrity sha512-FJhYRoDaiatfEkUK8HKlicmu/3SGFD51q3itKDGoSTysQJBnfOcxU5GxnhE1E6soB76MbT0MBtnKJuXyAx+96Q== 1966 | 1967 | get-port@^4.2.0: 1968 | version "4.2.0" 1969 | resolved "https://registry.yarnpkg.com/get-port/-/get-port-4.2.0.tgz#e37368b1e863b7629c43c5a323625f95cf24b119" 1970 | integrity sha512-/b3jarXkH8KJoOMQc3uVGHASwGLPq3gSFJ7tgJm2diza+bydJPTGOibin2steecKeOylE8oY2JERlVWkAJO6yw== 1971 | 1972 | globals@^11.1.0: 1973 | version "11.12.0" 1974 | resolved "https://registry.yarnpkg.com/globals/-/globals-11.12.0.tgz#ab8795338868a0babd8525758018c2a7eb95c42e" 1975 | integrity sha512-WOBp/EEGUiIsJSp7wcv/y6MO+lV9UoncWqxuFfm8eBwzWNgyfBd6Gz+IeKQ9jCmyhoH99g15M3T+QaVHFjizVA== 1976 | 1977 | globals@^13.2.0: 1978 | version "13.13.0" 1979 | resolved "https://registry.yarnpkg.com/globals/-/globals-13.13.0.tgz#ac32261060d8070e2719dd6998406e27d2b5727b" 1980 | integrity sha512-EQ7Q18AJlPwp3vUDL4mKA0KXrXyNIQyWon6T6XQiBQF0XHvRsiCSrWmmeATpUzdJN2HhWZU6Pdl0a9zdep5p6A== 1981 | dependencies: 1982 | type-fest "^0.20.2" 1983 | 1984 | has-flag@^3.0.0: 1985 | version "3.0.0" 1986 | resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" 1987 | integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0= 1988 | 1989 | has-flag@^4.0.0: 1990 | version "4.0.0" 1991 | resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" 1992 | integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== 1993 | 1994 | hoist-non-react-statics@^3.0.0: 1995 | version "3.3.2" 1996 | resolved "https://registry.yarnpkg.com/hoist-non-react-statics/-/hoist-non-react-statics-3.3.2.tgz#ece0acaf71d62c2969c2ec59feff42a4b1a85b45" 1997 | integrity sha512-/gGivxi8JPKWNm/W0jSmzcMPpfpPLc3dY/6GxhX2hQ9iGj3aDfklV4ET7NjKpSinLpJ5vafa9iiGIEZg10SfBw== 1998 | dependencies: 1999 | react-is "^16.7.0" 2000 | 2001 | htmlnano@^2.0.0: 2002 | version "2.0.0" 2003 | resolved "https://registry.yarnpkg.com/htmlnano/-/htmlnano-2.0.0.tgz#07376faa064f7e1e832dfd91e1a9f606b0bc9b78" 2004 | integrity sha512-thKQfhcp2xgtsWNE27A2bliEeqVL5xjAgGn0wajyttvFFsvFWWah1ntV9aEX61gz0T6MBQ5xK/1lXuEumhJTcg== 2005 | dependencies: 2006 | cosmiconfig "^7.0.1" 2007 | posthtml "^0.16.5" 2008 | timsort "^0.3.0" 2009 | 2010 | htmlparser2@^7.1.1: 2011 | version "7.2.0" 2012 | resolved "https://registry.yarnpkg.com/htmlparser2/-/htmlparser2-7.2.0.tgz#8817cdea38bbc324392a90b1990908e81a65f5a5" 2013 | integrity sha512-H7MImA4MS6cw7nbyURtLPO1Tms7C5H602LRETv95z1MxO/7CP7rDVROehUYeYBUYEON94NXXDEPmZuq+hX4sog== 2014 | dependencies: 2015 | domelementtype "^2.0.1" 2016 | domhandler "^4.2.2" 2017 | domutils "^2.8.0" 2018 | entities "^3.0.1" 2019 | 2020 | immediate@~3.0.5: 2021 | version "3.0.6" 2022 | resolved "https://registry.yarnpkg.com/immediate/-/immediate-3.0.6.tgz#9db1dbd0faf8de6fbe0f5dd5e56bb606280de69b" 2023 | integrity sha1-nbHb0Pr43m++D13V5Wu2BigN5ps= 2024 | 2025 | import-fresh@^3.2.1: 2026 | version "3.3.0" 2027 | resolved "https://registry.yarnpkg.com/import-fresh/-/import-fresh-3.3.0.tgz#37162c25fcb9ebaa2e6e53d5b4d88ce17d9e0c2b" 2028 | integrity sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw== 2029 | dependencies: 2030 | parent-module "^1.0.0" 2031 | resolve-from "^4.0.0" 2032 | 2033 | internmap@^1.0.0: 2034 | version "1.0.1" 2035 | resolved "https://registry.yarnpkg.com/internmap/-/internmap-1.0.1.tgz#0017cc8a3b99605f0302f2b198d272e015e5df95" 2036 | integrity sha512-lDB5YccMydFBtasVtxnZ3MRBHuaoE8GKsppq+EchKL2U4nK/DmEpPHNH8MZe5HkMtpSiTSOZwfN0tzYjO/lJEw== 2037 | 2038 | invariant@^2.2.4: 2039 | version "2.2.4" 2040 | resolved "https://registry.yarnpkg.com/invariant/-/invariant-2.2.4.tgz#610f3c92c9359ce1db616e538008d23ff35158e6" 2041 | integrity sha512-phJfQVBuaJM5raOpJjSfkiD6BpbCE4Ns//LaXl6wGYtUBY83nWS6Rf9tXm2e8VaK60JEjYldbPif/A2B1C2gNA== 2042 | dependencies: 2043 | loose-envify "^1.0.0" 2044 | 2045 | is-arrayish@^0.2.1: 2046 | version "0.2.1" 2047 | resolved "https://registry.yarnpkg.com/is-arrayish/-/is-arrayish-0.2.1.tgz#77c99840527aa8ecb1a8ba697b80645a7a926a9d" 2048 | integrity sha1-d8mYQFJ6qOyxqLppe4BkWnqSap0= 2049 | 2050 | is-json@^2.0.1: 2051 | version "2.0.1" 2052 | resolved "https://registry.yarnpkg.com/is-json/-/is-json-2.0.1.tgz#6be166d144828a131d686891b983df62c39491ff" 2053 | integrity sha1-a+Fm0USCihMdaGiRuYPfYsOUkf8= 2054 | 2055 | jotai@^1.7.8: 2056 | version "1.7.8" 2057 | resolved "https://registry.yarnpkg.com/jotai/-/jotai-1.7.8.tgz#1ac4daa2731e0f8e7fab8abb96aebf94b9dfc1a3" 2058 | integrity sha512-rXwWz6uLqyZUCRzWIPiYTjI1hjskVxVpDN3lBoOHi66z6uQFkFmKwR8YhcQd+Ex4lODlReuKNIx6WwsF9aKy3g== 2059 | 2060 | "js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0: 2061 | version "4.0.0" 2062 | resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499" 2063 | integrity sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ== 2064 | 2065 | jsesc@^2.5.1: 2066 | version "2.5.2" 2067 | resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-2.5.2.tgz#80564d2e483dacf6e8ef209650a67df3f0c283a4" 2068 | integrity sha512-OYu7XEzjkCQ3C5Ps3QIZsQfNpqoJyZZA99wd9aWd05NCtC5pWOkShK2mkL6HXQR6/Cy2lbNdPlZBpuQHXE63gA== 2069 | 2070 | json-parse-even-better-errors@^2.3.0: 2071 | version "2.3.1" 2072 | resolved "https://registry.yarnpkg.com/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz#7c47805a94319928e05777405dc12e1f7a4ee02d" 2073 | integrity sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9zIZF7li91kh2w== 2074 | 2075 | json-source-map@^0.6.1: 2076 | version "0.6.1" 2077 | resolved "https://registry.yarnpkg.com/json-source-map/-/json-source-map-0.6.1.tgz#e0b1f6f4ce13a9ad57e2ae165a24d06e62c79a0f" 2078 | integrity sha512-1QoztHPsMQqhDq0hlXY5ZqcEdUzxQEIxgFkKl4WUp2pgShObl+9ovi4kRh2TfvAfxAoHOJ9vIMEqk3k4iex7tg== 2079 | 2080 | json5@^2.2.0: 2081 | version "2.2.1" 2082 | resolved "https://registry.yarnpkg.com/json5/-/json5-2.2.1.tgz#655d50ed1e6f95ad1a3caababd2b0efda10b395c" 2083 | integrity sha512-1hqLFMSrGHRHxav9q9gNjJ5EXznIxGVO09xQRrwplcS8qs28pZ8s8hupZAmqDwZUmVZ2Qb2jnyPOWcDH8m8dlA== 2084 | 2085 | labella@1.1.4: 2086 | version "1.1.4" 2087 | resolved "https://registry.yarnpkg.com/labella/-/labella-1.1.4.tgz#c6cc5a340e8df340eb335633683ea59b828c322d" 2088 | integrity sha1-xsxaNA6N80DrM1YzaD6lm4KMMi0= 2089 | 2090 | lie@3.1.1: 2091 | version "3.1.1" 2092 | resolved "https://registry.yarnpkg.com/lie/-/lie-3.1.1.tgz#9a436b2cc7746ca59de7a41fa469b3efb76bd87e" 2093 | integrity sha1-mkNrLMd0bKWd56QfpGmz77dr2H4= 2094 | dependencies: 2095 | immediate "~3.0.5" 2096 | 2097 | lines-and-columns@^1.1.6: 2098 | version "1.2.4" 2099 | resolved "https://registry.yarnpkg.com/lines-and-columns/-/lines-and-columns-1.2.4.tgz#eca284f75d2965079309dc0ad9255abb2ebc1632" 2100 | integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== 2101 | 2102 | lmdb@2.2.4: 2103 | version "2.2.4" 2104 | resolved "https://registry.yarnpkg.com/lmdb/-/lmdb-2.2.4.tgz#6494d5a1d1db152e0be759edcfa06893e4cbdb53" 2105 | integrity sha512-gto+BB2uEob8qRiTlOq+R3uX0YNHsX9mjxj9Sbdue/LIKqu6IlZjrsjKeGyOMquc/474GEqFyX2pdytpydp0rQ== 2106 | dependencies: 2107 | msgpackr "^1.5.4" 2108 | nan "^2.14.2" 2109 | node-gyp-build "^4.2.3" 2110 | ordered-binary "^1.2.4" 2111 | weak-lru-cache "^1.2.2" 2112 | 2113 | localforage@^1.10.0: 2114 | version "1.10.0" 2115 | resolved "https://registry.yarnpkg.com/localforage/-/localforage-1.10.0.tgz#5c465dc5f62b2807c3a84c0c6a1b1b3212781dd4" 2116 | integrity sha512-14/H1aX7hzBBmmh7sGPd+AOMkkIrHM3Z1PAyGgZigA1H1p5O5ANnMyWzvpAETtG68/dC4pC0ncy3+PPGzXZHPg== 2117 | dependencies: 2118 | lie "3.1.1" 2119 | 2120 | lodash-es@^4.17.15: 2121 | version "4.17.21" 2122 | resolved "https://registry.yarnpkg.com/lodash-es/-/lodash-es-4.17.21.tgz#43e626c46e6591b7750beb2b50117390c609e3ee" 2123 | integrity sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw== 2124 | 2125 | lodash.merge@^4.6.2: 2126 | version "4.6.2" 2127 | resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" 2128 | integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== 2129 | 2130 | lodash@^4.0.1, lodash@^4.17.11, lodash@^4.17.15: 2131 | version "4.17.21" 2132 | resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" 2133 | integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== 2134 | 2135 | loose-envify@^1.0.0, loose-envify@^1.4.0: 2136 | version "1.4.0" 2137 | resolved "https://registry.yarnpkg.com/loose-envify/-/loose-envify-1.4.0.tgz#71ee51fa7be4caec1a63839f7e682d8132d30caf" 2138 | integrity sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q== 2139 | dependencies: 2140 | js-tokens "^3.0.0 || ^4.0.0" 2141 | 2142 | martinez-polygon-clipping@^0.1.5: 2143 | version "0.1.5" 2144 | resolved "https://registry.yarnpkg.com/martinez-polygon-clipping/-/martinez-polygon-clipping-0.1.5.tgz#81ce3eb2867cd9188a20b90acf26f23fb4e8ee42" 2145 | integrity sha1-gc4+soZ82RiKILkKzybyP7To7kI= 2146 | dependencies: 2147 | bintrees "^1.0.1" 2148 | tinyqueue "^1.1.0" 2149 | 2150 | material-colors@^1.2.1: 2151 | version "1.2.6" 2152 | resolved "https://registry.yarnpkg.com/material-colors/-/material-colors-1.2.6.tgz#6d1958871126992ceecc72f4bcc4d8f010865f46" 2153 | integrity sha512-6qE4B9deFBIa9YSpOc9O0Sgc43zTeVYbgDT5veRKSlB2+ZuHNoVVxA1L/ckMUayV9Ay9y7Z/SZCLcGteW9i7bg== 2154 | 2155 | mdn-data@2.0.14: 2156 | version "2.0.14" 2157 | resolved "https://registry.yarnpkg.com/mdn-data/-/mdn-data-2.0.14.tgz#7113fc4281917d63ce29b43446f701e68c25ba50" 2158 | integrity sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow== 2159 | 2160 | memoize-one@^5.1.1: 2161 | version "5.2.1" 2162 | resolved "https://registry.yarnpkg.com/memoize-one/-/memoize-one-5.2.1.tgz#8337aa3c4335581839ec01c3d594090cebe8f00e" 2163 | integrity sha512-zYiwtZUcYyXKo/np96AGZAckk+FWWsUdJ3cHGGmld7+AhvcWmQyGCYUh1hc4Q/pkOhb65dQR/pqCyK0cOaHz4Q== 2164 | 2165 | ms@2.1.2: 2166 | version "2.1.2" 2167 | resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" 2168 | integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== 2169 | 2170 | msgpackr-extract@^1.0.14: 2171 | version "1.0.16" 2172 | resolved "https://registry.yarnpkg.com/msgpackr-extract/-/msgpackr-extract-1.0.16.tgz#701c4f6e6f25c100ae84557092274e8fffeefe45" 2173 | integrity sha512-fxdRfQUxPrL/TizyfYfMn09dK58e+d65bRD/fcaVH4052vj30QOzzqxcQIS7B0NsqlypEQ/6Du3QmP2DhWFfCA== 2174 | dependencies: 2175 | nan "^2.14.2" 2176 | node-gyp-build "^4.2.3" 2177 | 2178 | msgpackr@^1.5.4: 2179 | version "1.5.5" 2180 | resolved "https://registry.yarnpkg.com/msgpackr/-/msgpackr-1.5.5.tgz#c0562abc2951d7e29f75d77a8656b01f103a042c" 2181 | integrity sha512-JG0V47xRIQ9pyUnx6Hb4+3TrQoia2nA3UIdmyTldhxaxtKFkekkKpUW/N6fwHwod9o4BGuJGtouxOk+yCP5PEA== 2182 | optionalDependencies: 2183 | msgpackr-extract "^1.0.14" 2184 | 2185 | nan@^2.14.2: 2186 | version "2.15.0" 2187 | resolved "https://registry.yarnpkg.com/nan/-/nan-2.15.0.tgz#3f34a473ff18e15c1b5626b62903b5ad6e665fee" 2188 | integrity sha512-8ZtvEnA2c5aYCZYd1cvgdnU6cqwixRoYg70xPLWUws5ORTa/lnw+u4amixRS/Ac5U5mQVgp9pnlSUnbNWFaWZQ== 2189 | 2190 | node-addon-api@^3.2.1: 2191 | version "3.2.1" 2192 | resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-3.2.1.tgz#81325e0a2117789c0128dab65e7e38f07ceba161" 2193 | integrity sha512-mmcei9JghVNDYydghQmeDX8KoAm0FAiYyIcUt/N4nhyAipB17pllZQDOJD2fotxABnt4Mdz+dKTO7eftLg4d0A== 2194 | 2195 | node-gyp-build@^4.2.3, node-gyp-build@^4.3.0: 2196 | version "4.3.0" 2197 | resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.3.0.tgz#9f256b03e5826150be39c764bf51e993946d71a3" 2198 | integrity sha512-iWjXZvmboq0ja1pUGULQBexmxq8CV4xBhX7VDOTbL7ZR4FOowwY/VOtRxBN/yKxmdGoIp4j5ysNT4u3S2pDQ3Q== 2199 | 2200 | node-releases@^2.0.2: 2201 | version "2.0.2" 2202 | resolved "https://registry.yarnpkg.com/node-releases/-/node-releases-2.0.2.tgz#7139fe71e2f4f11b47d4d2986aaf8c48699e0c01" 2203 | integrity sha512-XxYDdcQ6eKqp/YjI+tb2C5WM2LgjnZrfYg4vgQt49EK268b6gYCHsBLrK2qvJo4FmCtqmKezb0WZFK4fkrZNsg== 2204 | 2205 | nth-check@^2.0.1: 2206 | version "2.0.1" 2207 | resolved "https://registry.yarnpkg.com/nth-check/-/nth-check-2.0.1.tgz#2efe162f5c3da06a28959fbd3db75dbeea9f0fc2" 2208 | integrity sha512-it1vE95zF6dTT9lBsYbxvqh0Soy4SPowchj0UBGj/V6cTPnXXtQOPUbhZ6CmGzAD/rW22LQK6E96pcdJXk4A4w== 2209 | dependencies: 2210 | boolbase "^1.0.0" 2211 | 2212 | nullthrows@^1.1.1: 2213 | version "1.1.1" 2214 | resolved "https://registry.yarnpkg.com/nullthrows/-/nullthrows-1.1.1.tgz#7818258843856ae971eae4208ad7d7eb19a431b1" 2215 | integrity sha512-2vPPEi+Z7WqML2jZYddDIfy5Dqb0r2fze2zTxNNknZaFpVHU3mFB3R+DWeJWGVx0ecvttSGlJTI+WG+8Z4cDWw== 2216 | 2217 | numeral@^2.0.6: 2218 | version "2.0.6" 2219 | resolved "https://registry.yarnpkg.com/numeral/-/numeral-2.0.6.tgz#4ad080936d443c2561aed9f2197efffe25f4e506" 2220 | integrity sha1-StCAk21EPCVhrtnyGX7//iX05QY= 2221 | 2222 | object-assign@4.1.1, object-assign@^4.1.1: 2223 | version "4.1.1" 2224 | resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" 2225 | integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM= 2226 | 2227 | ordered-binary@^1.2.4: 2228 | version "1.2.4" 2229 | resolved "https://registry.yarnpkg.com/ordered-binary/-/ordered-binary-1.2.4.tgz#51d3a03af078a0bdba6c7bc8f4fedd1f5d45d83e" 2230 | integrity sha512-A/csN0d3n+igxBPfUrjbV5GC69LWj2pjZzAAeeHXLukQ4+fytfP4T1Lg0ju7MSPSwq7KtHkGaiwO8URZN5IpLg== 2231 | 2232 | os-browserify@^0.3.0: 2233 | version "0.3.0" 2234 | resolved "https://registry.yarnpkg.com/os-browserify/-/os-browserify-0.3.0.tgz#854373c7f5c2315914fc9bfc6bd8238fdda1ec27" 2235 | integrity sha1-hUNzx/XCMVkU/Jv8a9gjj92h7Cc= 2236 | 2237 | parcel@^2.4.0: 2238 | version "2.4.0" 2239 | resolved "https://registry.yarnpkg.com/parcel/-/parcel-2.4.0.tgz#9ce7ecee5e24ffe630e14d50801e26de334e89c1" 2240 | integrity sha512-dPWpu4RnxG9HqiLvaF8COEWEnT/KrigrC6PyPaQ0zEgpBfp7/jzXZFBVaZk2N+lpvrbNEYMjN9bv5UQGJJszIw== 2241 | dependencies: 2242 | "@parcel/config-default" "2.4.0" 2243 | "@parcel/core" "2.4.0" 2244 | "@parcel/diagnostic" "2.4.0" 2245 | "@parcel/events" "2.4.0" 2246 | "@parcel/fs" "2.4.0" 2247 | "@parcel/logger" "2.4.0" 2248 | "@parcel/package-manager" "2.4.0" 2249 | "@parcel/reporter-cli" "2.4.0" 2250 | "@parcel/reporter-dev-server" "2.4.0" 2251 | "@parcel/utils" "2.4.0" 2252 | chalk "^4.1.0" 2253 | commander "^7.0.0" 2254 | get-port "^4.2.0" 2255 | v8-compile-cache "^2.0.0" 2256 | 2257 | parent-module@^1.0.0: 2258 | version "1.0.1" 2259 | resolved "https://registry.yarnpkg.com/parent-module/-/parent-module-1.0.1.tgz#691d2709e78c79fae3a156622452d00762caaaa2" 2260 | integrity sha512-GQ2EWRpQV8/o+Aw8YqtfZZPfNRWZYkbidE9k5rpl/hC3vtHHBfGm2Ifi6qWV+coDGkrUKZAxE3Lot5kcsRlh+g== 2261 | dependencies: 2262 | callsites "^3.0.0" 2263 | 2264 | parse-json@^5.0.0: 2265 | version "5.2.0" 2266 | resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-5.2.0.tgz#c76fc66dee54231c962b22bcc8a72cf2f99753cd" 2267 | integrity sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg== 2268 | dependencies: 2269 | "@babel/code-frame" "^7.0.0" 2270 | error-ex "^1.3.1" 2271 | json-parse-even-better-errors "^2.3.0" 2272 | lines-and-columns "^1.1.6" 2273 | 2274 | path-type@^4.0.0: 2275 | version "4.0.0" 2276 | resolved "https://registry.yarnpkg.com/path-type/-/path-type-4.0.0.tgz#84ed01c0a7ba380afe09d90a8c180dcd9d03043b" 2277 | integrity sha512-gDKb8aZMDeD/tZWs9P6+q0J9Mwkdl6xMV8TjnGP3qJVJ06bdMgkbBlLU8IdfOsIsFz2BW1rNVT3XuNEl8zPAvw== 2278 | 2279 | picocolors@^1.0.0: 2280 | version "1.0.0" 2281 | resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.0.0.tgz#cb5bdc74ff3f51892236eaf79d68bc44564ab81c" 2282 | integrity sha512-1fygroTLlHu66zi26VoTDv8yRgm0Fccecssto+MhsZ0D/DGW2sm8E8AjW7NU5VVTRt5GxbeZ5qBuJr+HyLYkjQ== 2283 | 2284 | picomatch@^2.3.0: 2285 | version "2.3.1" 2286 | resolved "https://registry.yarnpkg.com/picomatch/-/picomatch-2.3.1.tgz#3ba3833733646d9d3e4995946c1365a67fb07a42" 2287 | integrity sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA== 2288 | 2289 | polygon-offset@0.3.1: 2290 | version "0.3.1" 2291 | resolved "https://registry.yarnpkg.com/polygon-offset/-/polygon-offset-0.3.1.tgz#69a6565f0b27fa76b5270d5c079b0ba2c8f0bba3" 2292 | integrity sha1-aaZWXwsn+na1Jw1cB5sLosjwu6M= 2293 | dependencies: 2294 | martinez-polygon-clipping "^0.1.5" 2295 | 2296 | postcss-value-parser@^4.0.2, postcss-value-parser@^4.2.0: 2297 | version "4.2.0" 2298 | resolved "https://registry.yarnpkg.com/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz#723c09920836ba6d3e5af019f92bc0971c02e514" 2299 | integrity sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ== 2300 | 2301 | posthtml-parser@^0.10.1: 2302 | version "0.10.2" 2303 | resolved "https://registry.yarnpkg.com/posthtml-parser/-/posthtml-parser-0.10.2.tgz#df364d7b179f2a6bf0466b56be7b98fd4e97c573" 2304 | integrity sha512-PId6zZ/2lyJi9LiKfe+i2xv57oEjJgWbsHGGANwos5AvdQp98i6AtamAl8gzSVFGfQ43Glb5D614cvZf012VKg== 2305 | dependencies: 2306 | htmlparser2 "^7.1.1" 2307 | 2308 | posthtml-parser@^0.11.0: 2309 | version "0.11.0" 2310 | resolved "https://registry.yarnpkg.com/posthtml-parser/-/posthtml-parser-0.11.0.tgz#25d1c7bf811ea83559bc4c21c189a29747a24b7a" 2311 | integrity sha512-QecJtfLekJbWVo/dMAA+OSwY79wpRmbqS5TeXvXSX+f0c6pW4/SE6inzZ2qkU7oAMCPqIDkZDvd/bQsSFUnKyw== 2312 | dependencies: 2313 | htmlparser2 "^7.1.1" 2314 | 2315 | posthtml-render@^3.0.0: 2316 | version "3.0.0" 2317 | resolved "https://registry.yarnpkg.com/posthtml-render/-/posthtml-render-3.0.0.tgz#97be44931496f495b4f07b99e903cc70ad6a3205" 2318 | integrity sha512-z+16RoxK3fUPgwaIgH9NGnK1HKY9XIDpydky5eQGgAFVXTCSezalv9U2jQuNV+Z9qV1fDWNzldcw4eK0SSbqKA== 2319 | dependencies: 2320 | is-json "^2.0.1" 2321 | 2322 | posthtml@^0.16.4, posthtml@^0.16.5: 2323 | version "0.16.6" 2324 | resolved "https://registry.yarnpkg.com/posthtml/-/posthtml-0.16.6.tgz#e2fc407f67a64d2fa3567afe770409ffdadafe59" 2325 | integrity sha512-JcEmHlyLK/o0uGAlj65vgg+7LIms0xKXe60lcDOTU7oVX/3LuEuLwrQpW3VJ7de5TaFKiW4kWkaIpJL42FEgxQ== 2326 | dependencies: 2327 | posthtml-parser "^0.11.0" 2328 | posthtml-render "^3.0.0" 2329 | 2330 | preact@^10.6.6: 2331 | version "10.6.6" 2332 | resolved "https://registry.yarnpkg.com/preact/-/preact-10.6.6.tgz#f1899bc8dab7c0788b858481532cb3b5d764a520" 2333 | integrity sha512-dgxpTFV2vs4vizwKohYKkk7g7rmp1wOOcfd4Tz3IB3Wi+ivZzsn/SpeKJhRENSE+n8sUfsAl4S3HiCVT923ABw== 2334 | 2335 | process@^0.11.10: 2336 | version "0.11.10" 2337 | resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" 2338 | integrity sha1-czIwDoQBYb2j5podHZGn1LwW8YI= 2339 | 2340 | prop-types@^15, prop-types@^15.5.10: 2341 | version "15.8.1" 2342 | resolved "https://registry.yarnpkg.com/prop-types/-/prop-types-15.8.1.tgz#67d87bf1a694f48435cf332c24af10214a3140b5" 2343 | integrity sha512-oj87CgZICdulUohogVAR7AjlC0327U4el4L6eAvOqCeudMDVU0NThNaV+b9Df4dXgSP1gXMTnPdhfe/2qDH5cg== 2344 | dependencies: 2345 | loose-envify "^1.4.0" 2346 | object-assign "^4.1.1" 2347 | react-is "^16.13.1" 2348 | 2349 | react-annotation@3.0.0-beta.4: 2350 | version "3.0.0-beta.4" 2351 | resolved "https://registry.yarnpkg.com/react-annotation/-/react-annotation-3.0.0-beta.4.tgz#f16a2706bf28373fa3551b887165cca12cc84aa0" 2352 | integrity sha512-JTmsToqezUBt7pTy5PqXd19tpbvwM0H7gwWqKFA6qOyp5mJP+jN4vh/hV8Abh/TaXoaeRiKjVrNKtr0K4AyOww== 2353 | dependencies: 2354 | prop-types "^15" 2355 | viz-annotation "0.0.5" 2356 | 2357 | react-color@^2.14.1: 2358 | version "2.19.3" 2359 | resolved "https://registry.yarnpkg.com/react-color/-/react-color-2.19.3.tgz#ec6c6b4568312a3c6a18420ab0472e146aa5683d" 2360 | integrity sha512-LEeGE/ZzNLIsFWa1TMe8y5VYqr7bibneWmvJwm1pCn/eNmrabWDh659JSPn9BuaMpEfU83WTOJfnCcjDZwNQTA== 2361 | dependencies: 2362 | "@icons/material" "^0.2.4" 2363 | lodash "^4.17.15" 2364 | lodash-es "^4.17.15" 2365 | material-colors "^1.2.1" 2366 | prop-types "^15.5.10" 2367 | reactcss "^1.2.0" 2368 | tinycolor2 "^1.4.1" 2369 | 2370 | react-is@^16.13.1, react-is@^16.7.0, react-is@^16.8.1: 2371 | version "16.13.1" 2372 | resolved "https://registry.yarnpkg.com/react-is/-/react-is-16.13.1.tgz#789729a4dc36de2999dc156dd6c1d9c18cea56a4" 2373 | integrity sha512-24e6ynE2H+OKt4kqsOvNd8kBpV65zoxbA4BVsEOB3ARVWQki/DHzaUoC5KuON/BiccDaCCTZBuOcfZs70kR8bQ== 2374 | 2375 | react-refresh@^0.9.0: 2376 | version "0.9.0" 2377 | resolved "https://registry.yarnpkg.com/react-refresh/-/react-refresh-0.9.0.tgz#71863337adc3e5c2f8a6bfddd12ae3bfe32aafbf" 2378 | integrity sha512-Gvzk7OZpiqKSkxsQvO/mbTN1poglhmAV7gR/DdIrRrSMXraRQQlfikRJOr3Nb9GTMPC5kof948Zy6jJZIFtDvQ== 2379 | 2380 | react-remove-scroll-bar@^2.1.0: 2381 | version "2.2.0" 2382 | resolved "https://registry.yarnpkg.com/react-remove-scroll-bar/-/react-remove-scroll-bar-2.2.0.tgz#d4d545a7df024f75d67e151499a6ab5ac97c8cdd" 2383 | integrity sha512-UU9ZBP1wdMR8qoUs7owiVcpaPwsQxUDC2lypP6mmixaGlARZa7ZIBx1jcuObLdhMOvCsnZcvetOho0wzPa9PYg== 2384 | dependencies: 2385 | react-style-singleton "^2.1.0" 2386 | tslib "^1.0.0" 2387 | 2388 | react-remove-scroll@^2.4.0: 2389 | version "2.4.4" 2390 | resolved "https://registry.yarnpkg.com/react-remove-scroll/-/react-remove-scroll-2.4.4.tgz#2dfff377cf17efc00de39dad51c143fc7a1b9e3e" 2391 | integrity sha512-EyC5ohYhaeKbThMSQxuN2i+QC5HqV3AJvNZKEdiATITexu0gHm00+5ko0ltNS1ajYJVeDgVG2baRSCei0AUWlQ== 2392 | dependencies: 2393 | react-remove-scroll-bar "^2.1.0" 2394 | react-style-singleton "^2.1.0" 2395 | tslib "^1.0.0" 2396 | use-callback-ref "^1.2.3" 2397 | use-sidecar "^1.0.1" 2398 | 2399 | react-style-singleton@^2.1.0: 2400 | version "2.1.1" 2401 | resolved "https://registry.yarnpkg.com/react-style-singleton/-/react-style-singleton-2.1.1.tgz#ce7f90b67618be2b6b94902a30aaea152ce52e66" 2402 | integrity sha512-jNRp07Jza6CBqdRKNgGhT3u9umWvils1xsuMOjZlghBDH2MU0PL2WZor4PGYjXpnRCa9DQSlHMs/xnABWOwYbA== 2403 | dependencies: 2404 | get-nonce "^1.0.0" 2405 | invariant "^2.2.4" 2406 | tslib "^1.0.0" 2407 | 2408 | react-table-hoc-fixed-columns@2.1.3: 2409 | version "2.1.3" 2410 | resolved "https://registry.yarnpkg.com/react-table-hoc-fixed-columns/-/react-table-hoc-fixed-columns-2.1.3.tgz#a120634e27413da82ec012fcf22646e22d5c407d" 2411 | integrity sha512-37BSFVZ1INd40u9ZV/Jvb4eY3zHAaOinPvhhteiIg7u2xWPr8crLCEX6KVEZqMp8QHVKXkJAnIMuC/umGye5Yg== 2412 | dependencies: 2413 | classnames "^2.2.6" 2414 | uniqid "^5.0.3" 2415 | 2416 | react-table@6.11.5: 2417 | version "6.11.5" 2418 | resolved "https://registry.yarnpkg.com/react-table/-/react-table-6.11.5.tgz#84e52885db426a07a6c4ce2c7e942f2cd4e2aa58" 2419 | integrity sha512-LM+AS9v//7Y7lAlgTWW/cW6Sn5VOb3EsSkKQfQTzOW8FngB1FUskLLNEVkAYsTX9LjOWR3QlGjykJqCE6eXT/g== 2420 | dependencies: 2421 | "@types/react-table" "^6.8.5" 2422 | classnames "^2.2.5" 2423 | react-is "^16.8.1" 2424 | 2425 | reactcss@^1.2.0: 2426 | version "1.2.3" 2427 | resolved "https://registry.yarnpkg.com/reactcss/-/reactcss-1.2.3.tgz#c00013875e557b1cf0dfd9a368a1c3dab3b548dd" 2428 | integrity sha512-KiwVUcFu1RErkI97ywr8nvx8dNOpT03rbnma0SSalTYjkrPYaEajR4a/MRt6DZ46K6arDRbWMNHF+xH7G7n/8A== 2429 | dependencies: 2430 | lodash "^4.0.1" 2431 | 2432 | regenerator-runtime@^0.13.4, regenerator-runtime@^0.13.7: 2433 | version "0.13.9" 2434 | resolved "https://registry.yarnpkg.com/regenerator-runtime/-/regenerator-runtime-0.13.9.tgz#8925742a98ffd90814988d7566ad30ca3b263b52" 2435 | integrity sha512-p3VT+cOEgxFsRRA9X4lkI1E+k2/CtnKtU4gcxyaCUreilL/vqI6CdZ3wxVUx3UOUg+gnUOQQcRI7BmSI656MYA== 2436 | 2437 | regression@^2.0.1: 2438 | version "2.0.1" 2439 | resolved "https://registry.yarnpkg.com/regression/-/regression-2.0.1.tgz#8d29c3e8224a10850c35e337e85a8b2fac3b0c87" 2440 | integrity sha1-jSnD6CJKEIUMNeM36FqLL6w7DIc= 2441 | 2442 | resolve-from@^4.0.0: 2443 | version "4.0.0" 2444 | resolved "https://registry.yarnpkg.com/resolve-from/-/resolve-from-4.0.0.tgz#4abcd852ad32dd7baabfe9b40e00a36db5f392e6" 2445 | integrity sha512-pb/MYmXstAkysRFx8piNI1tGFNQIFA3vkE3Gq4EuA1dF6gHp/+vgZqsCGJapvy8N3Q+4o7FwvquPJcnZ7RYy4g== 2446 | 2447 | safe-buffer@^5.0.1: 2448 | version "5.2.1" 2449 | resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" 2450 | integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== 2451 | 2452 | semiotic-mark@0.5.0: 2453 | version "0.5.0" 2454 | resolved "https://registry.yarnpkg.com/semiotic-mark/-/semiotic-mark-0.5.0.tgz#074f20a28673dc630ee01d13bc032f015152b606" 2455 | integrity sha512-cLeAUR3lCeCU6XSssFJiqxthJqq+k6KbZCD7AtRvyQJg42knYM1Wvk0GPE6pyoJf9PLXkIZ5wjqDV2tcXlyPqQ== 2456 | dependencies: 2457 | d3-selection "2" 2458 | d3-transition "2" 2459 | 2460 | semiotic@^2.0.0-rc.8: 2461 | version "2.0.0-rc.22" 2462 | resolved "https://registry.yarnpkg.com/semiotic/-/semiotic-2.0.0-rc.22.tgz#c784b23ec6c1f362c5289068403df142168eb67b" 2463 | integrity sha512-mRV/F58cJeqfE8ihVHp6iIYHR/3u6hkCStGdYU7A1r7tTovWhXQXZtnTHkhNQo5RQ5O3sQTtAs3Smk5VyF+yGQ== 2464 | dependencies: 2465 | d3-array "^1.2.0" 2466 | d3-brush "^2.1.0" 2467 | d3-chord "^1.0.4" 2468 | d3-collection "^1.0.1" 2469 | d3-contour "^1.1.1" 2470 | d3-force "^1.0.2" 2471 | d3-glyphedge "^1.2.0" 2472 | d3-hexbin "^0.2.2" 2473 | d3-hierarchy "^1.1.3" 2474 | d3-interpolate "^1.1.5" 2475 | d3-polygon "^1.0.5" 2476 | d3-sankey-circular "0.25.0" 2477 | d3-scale "^1.0.3" 2478 | d3-selection "2" 2479 | d3-shape "^1.3.5" 2480 | d3-voronoi "^1.0.2" 2481 | labella "1.1.4" 2482 | memoize-one "^5.1.1" 2483 | object-assign "4.1.1" 2484 | polygon-offset "0.3.1" 2485 | react-annotation "3.0.0-beta.4" 2486 | regression "^2.0.1" 2487 | semiotic-mark "0.5.0" 2488 | svg-path-bounding-box "1.0.4" 2489 | 2490 | semver@^5.7.0, semver@^5.7.1: 2491 | version "5.7.1" 2492 | resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.1.tgz#a954f931aeba508d307bbf069eff0c01c96116f7" 2493 | integrity sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ== 2494 | 2495 | shallowequal@^1.1.0: 2496 | version "1.1.0" 2497 | resolved "https://registry.yarnpkg.com/shallowequal/-/shallowequal-1.1.0.tgz#188d521de95b9087404fd4dcb68b13df0ae4e7f8" 2498 | integrity sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ== 2499 | 2500 | source-map-support@~0.5.20: 2501 | version "0.5.21" 2502 | resolved "https://registry.yarnpkg.com/source-map-support/-/source-map-support-0.5.21.tgz#04fe7c7f9e1ed2d662233c28cb2b35b9f63f6e4f" 2503 | integrity sha512-uBHU3L3czsIyYXKX88fdrGovxdSCoTGDRZ6SYXtSRxLZUzHg5P/66Ht6uoUlHu9EZod+inXhKo3qQgwXUT/y1w== 2504 | dependencies: 2505 | buffer-from "^1.0.0" 2506 | source-map "^0.6.0" 2507 | 2508 | source-map@^0.5.0: 2509 | version "0.5.7" 2510 | resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.5.7.tgz#8a039d2d1021d22d1ea14c80d8ea468ba2ef3fcc" 2511 | integrity sha1-igOdLRAh0i0eoUyA2OpGi6LvP8w= 2512 | 2513 | source-map@^0.6.0, source-map@^0.6.1: 2514 | version "0.6.1" 2515 | resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.6.1.tgz#74722af32e9614e9c287a8d0bbde48b5e2f1a263" 2516 | integrity sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g== 2517 | 2518 | source-map@~0.7.2: 2519 | version "0.7.3" 2520 | resolved "https://registry.yarnpkg.com/source-map/-/source-map-0.7.3.tgz#5302f8169031735226544092e64981f751750383" 2521 | integrity sha512-CkCj6giN3S+n9qrYiBTX5gystlENnRW5jZeNLHpe6aue+SrHcG5VYwujhW9s4dY31mEGsxBDrHR6oI69fTXsaQ== 2522 | 2523 | stable@^0.1.8: 2524 | version "0.1.8" 2525 | resolved "https://registry.yarnpkg.com/stable/-/stable-0.1.8.tgz#836eb3c8382fe2936feaf544631017ce7d47a3cf" 2526 | integrity sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w== 2527 | 2528 | styled-components@^5.3.5: 2529 | version "5.3.5" 2530 | resolved "https://registry.yarnpkg.com/styled-components/-/styled-components-5.3.5.tgz#a750a398d01f1ca73af16a241dec3da6deae5ec4" 2531 | integrity sha512-ndETJ9RKaaL6q41B69WudeqLzOpY1A/ET/glXkNZ2T7dPjPqpPCXXQjDFYZWwNnE5co0wX+gTCqx9mfxTmSIPg== 2532 | dependencies: 2533 | "@babel/helper-module-imports" "^7.0.0" 2534 | "@babel/traverse" "^7.4.5" 2535 | "@emotion/is-prop-valid" "^1.1.0" 2536 | "@emotion/stylis" "^0.8.4" 2537 | "@emotion/unitless" "^0.7.4" 2538 | babel-plugin-styled-components ">= 1.12.0" 2539 | css-to-react-native "^3.0.0" 2540 | hoist-non-react-statics "^3.0.0" 2541 | shallowequal "^1.1.0" 2542 | supports-color "^5.5.0" 2543 | 2544 | supports-color@^5.3.0, supports-color@^5.5.0: 2545 | version "5.5.0" 2546 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-5.5.0.tgz#e2e69a44ac8772f78a1ec0b35b689df6530efc8f" 2547 | integrity sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow== 2548 | dependencies: 2549 | has-flag "^3.0.0" 2550 | 2551 | supports-color@^7.1.0: 2552 | version "7.2.0" 2553 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" 2554 | integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== 2555 | dependencies: 2556 | has-flag "^4.0.0" 2557 | 2558 | svg-path-bounding-box@1.0.4: 2559 | version "1.0.4" 2560 | resolved "https://registry.yarnpkg.com/svg-path-bounding-box/-/svg-path-bounding-box-1.0.4.tgz#ed73df383c8b47869b6508f058f5748f8833c070" 2561 | integrity sha1-7XPfODyLR4abZQjwWPV0j4gzwHA= 2562 | dependencies: 2563 | svgpath "^2.0.0" 2564 | 2565 | svgo@^2.4.0: 2566 | version "2.8.0" 2567 | resolved "https://registry.yarnpkg.com/svgo/-/svgo-2.8.0.tgz#4ff80cce6710dc2795f0c7c74101e6764cfccd24" 2568 | integrity sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg== 2569 | dependencies: 2570 | "@trysound/sax" "0.2.0" 2571 | commander "^7.2.0" 2572 | css-select "^4.1.3" 2573 | css-tree "^1.1.3" 2574 | csso "^4.2.0" 2575 | picocolors "^1.0.0" 2576 | stable "^0.1.8" 2577 | 2578 | svgpath@^2.0.0: 2579 | version "2.5.0" 2580 | resolved "https://registry.yarnpkg.com/svgpath/-/svgpath-2.5.0.tgz#d57434641d9aa9abae02a4038ebf281fa3005b10" 2581 | integrity sha512-o/vohwqjUO9nDAh4rcjE3KaW/v//At8UJu2LJMybXidf5QLQLVA4bxH0//4YCsr+1H4Gw1Wi/Jc62ynzSBYidw== 2582 | 2583 | term-size@^2.2.1: 2584 | version "2.2.1" 2585 | resolved "https://registry.yarnpkg.com/term-size/-/term-size-2.2.1.tgz#2a6a54840432c2fb6320fea0f415531e90189f54" 2586 | integrity sha512-wK0Ri4fOGjv/XPy8SBHZChl8CM7uMc5VML7SqiQ0zG7+J5Vr+RMQDoHa2CNT6KHUnTGIXH34UDMkPzAUyapBZg== 2587 | 2588 | terser@^5.2.0: 2589 | version "5.12.1" 2590 | resolved "https://registry.yarnpkg.com/terser/-/terser-5.12.1.tgz#4cf2ebed1f5bceef5c83b9f60104ac4a78b49e9c" 2591 | integrity sha512-NXbs+7nisos5E+yXwAD+y7zrcTkMqb0dEJxIGtSKPdCBzopf7ni4odPul2aechpV7EXNvOudYOX2bb5tln1jbQ== 2592 | dependencies: 2593 | acorn "^8.5.0" 2594 | commander "^2.20.0" 2595 | source-map "~0.7.2" 2596 | source-map-support "~0.5.20" 2597 | 2598 | timsort@^0.3.0: 2599 | version "0.3.0" 2600 | resolved "https://registry.yarnpkg.com/timsort/-/timsort-0.3.0.tgz#405411a8e7e6339fe64db9a234de11dc31e02bd4" 2601 | integrity sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q= 2602 | 2603 | tinycolor2@^1.4.1: 2604 | version "1.4.2" 2605 | resolved "https://registry.yarnpkg.com/tinycolor2/-/tinycolor2-1.4.2.tgz#3f6a4d1071ad07676d7fa472e1fac40a719d8803" 2606 | integrity sha512-vJhccZPs965sV/L2sU4oRQVAos0pQXwsvTLkWYdqJ+a8Q5kPFzJTuOFwy7UniPli44NKQGAglksjvOcpo95aZA== 2607 | 2608 | tinyqueue@^1.1.0: 2609 | version "1.2.3" 2610 | resolved "https://registry.yarnpkg.com/tinyqueue/-/tinyqueue-1.2.3.tgz#b6a61de23060584da29f82362e45df1ec7353f3d" 2611 | integrity sha512-Qz9RgWuO9l8lT+Y9xvbzhPT2efIUIFd69N7eF7tJ9lnQl0iLj1M7peK7IoUGZL9DJHw9XftqLreccfxcQgYLxA== 2612 | 2613 | to-fast-properties@^2.0.0: 2614 | version "2.0.0" 2615 | resolved "https://registry.yarnpkg.com/to-fast-properties/-/to-fast-properties-2.0.0.tgz#dc5e698cbd079265bc73e0377681a4e4e83f616e" 2616 | integrity sha1-3F5pjL0HkmW8c+A3doGk5Og/YW4= 2617 | 2618 | tslib@^1.0.0, tslib@^1.9.3: 2619 | version "1.14.1" 2620 | resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00" 2621 | integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg== 2622 | 2623 | type-fest@^0.20.2: 2624 | version "0.20.2" 2625 | resolved "https://registry.yarnpkg.com/type-fest/-/type-fest-0.20.2.tgz#1bf207f4b28f91583666cb5fbd327887301cd5f4" 2626 | integrity sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ== 2627 | 2628 | uniqid@^5.0.3: 2629 | version "5.4.0" 2630 | resolved "https://registry.yarnpkg.com/uniqid/-/uniqid-5.4.0.tgz#4e17bfcab66dfe33563411ae0c801f46ef964e66" 2631 | integrity sha512-38JRbJ4Fj94VmnC7G/J/5n5SC7Ab46OM5iNtSstB/ko3l1b5g7ALt4qzHFgGciFkyiRNtDXtLNb+VsxtMSE77A== 2632 | 2633 | use-callback-ref@^1.2.3: 2634 | version "1.2.5" 2635 | resolved "https://registry.yarnpkg.com/use-callback-ref/-/use-callback-ref-1.2.5.tgz#6115ed242cfbaed5915499c0a9842ca2912f38a5" 2636 | integrity sha512-gN3vgMISAgacF7sqsLPByqoePooY3n2emTH59Ur5d/M8eg4WTWu1xp8i8DHjohftIyEx0S08RiYxbffr4j8Peg== 2637 | 2638 | use-sidecar@^1.0.1: 2639 | version "1.0.5" 2640 | resolved "https://registry.yarnpkg.com/use-sidecar/-/use-sidecar-1.0.5.tgz#ffff2a17c1df42e348624b699ba6e5c220527f2b" 2641 | integrity sha512-k9jnrjYNwN6xYLj1iaGhonDghfvmeTmYjAiGvOr7clwKfPjMXJf4/HOr7oT5tJwYafgp2tG2l3eZEOfoELiMcA== 2642 | dependencies: 2643 | detect-node-es "^1.1.0" 2644 | tslib "^1.9.3" 2645 | 2646 | utility-types@^3.10.0: 2647 | version "3.10.0" 2648 | resolved "https://registry.yarnpkg.com/utility-types/-/utility-types-3.10.0.tgz#ea4148f9a741015f05ed74fd615e1d20e6bed82b" 2649 | integrity sha512-O11mqxmi7wMKCo6HKFt5AhO4BwY3VV68YU07tgxfz8zJTIxr4BpsezN49Ffwy9j3ZpwwJp4fkRwjRzq3uWE6Rg== 2650 | 2651 | v8-compile-cache@^2.0.0: 2652 | version "2.3.0" 2653 | resolved "https://registry.yarnpkg.com/v8-compile-cache/-/v8-compile-cache-2.3.0.tgz#2de19618c66dc247dcfb6f99338035d8245a2cee" 2654 | integrity sha512-l8lCEmLcLYZh4nbunNZvQCJc5pv7+RCwa8q/LdUx8u7lsWvPDKmpodJAJNwkAhJC//dFY48KuIEmjtd4RViDrA== 2655 | 2656 | viz-annotation@0.0.5: 2657 | version "0.0.5" 2658 | resolved "https://registry.yarnpkg.com/viz-annotation/-/viz-annotation-0.0.5.tgz#76af6f3538c543a283c0273bd41164c441382ac3" 2659 | integrity sha512-2l65EVx7AgGGNJQRxYdqScmpZiA5+OvwvcfGEaPZA0SBaQJfJd3dh0CR5fTcgBQoylTopFEMqEcjVEutW0CG6A== 2660 | dependencies: 2661 | d3-shape "~1.0.4" 2662 | 2663 | weak-lru-cache@^1.2.2: 2664 | version "1.2.2" 2665 | resolved "https://registry.yarnpkg.com/weak-lru-cache/-/weak-lru-cache-1.2.2.tgz#fdbb6741f36bae9540d12f480ce8254060dccd19" 2666 | integrity sha512-DEAoo25RfSYMuTGc9vPJzZcZullwIqRDSI9LOy+fkCJPi6hykCnfKaXTuPBDuXAUcqHXyOgFtHNp/kB2FjYHbw== 2667 | 2668 | xxhash-wasm@^0.4.2: 2669 | version "0.4.2" 2670 | resolved "https://registry.yarnpkg.com/xxhash-wasm/-/xxhash-wasm-0.4.2.tgz#752398c131a4dd407b5132ba62ad372029be6f79" 2671 | integrity sha512-/eyHVRJQCirEkSZ1agRSCwriMhwlyUcFkXD5TPVSLP+IPzjsqMVzZwdoczLp1SoQU0R3dxz1RpIK+4YNQbCVOA== 2672 | 2673 | yaml@^1.10.0: 2674 | version "1.10.2" 2675 | resolved "https://registry.yarnpkg.com/yaml/-/yaml-1.10.2.tgz#2301c5ffbf12b467de8da2333a459e29e7920e4b" 2676 | integrity sha512-r3vXyErRCYJ7wg28yvBY5VSoAF8ZvlcW9/BwUzEtUsjvX/DKs24dIkuwjtuprwJJHsbyUbLApepYTR1BN4uHrg== 2677 | --------------------------------------------------------------------------------