From 179ee42efbc3e20d0541c5d89e81fa95764653fb Mon Sep 17 00:00:00 2001 From: Heiko Hotz Date: Tue, 31 Dec 2024 17:20:27 +0000 Subject: [PATCH 01/18] added Gemini Multimodal Live API Developer Guide --- .../.gitignore | 175 ++++++ .../CONTRIBUTING.md | 36 ++ .../LICENSE | 202 +++++++ .../README.md | 120 ++++ .../assets/audio-client.png | Bin 0 -> 280191 bytes .../assets/audio-to-audio-websocket.png | Bin 0 -> 473527 bytes .../assets/hero-image.webp | Bin 0 -> 12042 bytes .../assets/mm_live_api.jpg | Bin 0 -> 70976 bytes .../assets/project_pastra.png | Bin 0 -> 979723 bytes .../part_1_intro/README.md | 35 ++ .../part_1_intro/chapter_01/audio.wav | Bin 0 -> 124844 bytes .../chapter_01/sdk-intro-veretxai.ipynb | 206 +++++++ .../part_1_intro/chapter_01/sdk-intro.ipynb | 212 ++++++++ .../part_1_intro/chapter_02/README.md | 153 ++++++ .../part_1_intro/chapter_02/audio-to-audio.py | 97 ++++ .../part_2_dev_api/README.md | 78 +++ .../part_2_dev_api/chapter_03/README.md | 125 +++++ .../part_2_dev_api/chapter_03/index.html | 131 +++++ .../part_2_dev_api/chapter_04/README.md | 131 +++++ .../part_2_dev_api/chapter_04/index.html | 304 +++++++++++ .../part_2_dev_api/chapter_05/README.md | 353 ++++++++++++ .../part_2_dev_api/chapter_05/index.html | 200 +++++++ .../part_2_dev_api/chapter_06/README.md | 118 ++++ .../part_2_dev_api/chapter_06/index.html | 273 ++++++++++ .../part_2_dev_api/chapter_06/style.css | 27 + .../part_2_dev_api/chapter_07/README.md | 94 ++++ .../part_2_dev_api/chapter_07/index.html | 438 +++++++++++++++ .../part_2_dev_api/chapter_07/style.css | 58 ++ .../chapter_07/system-instructions.txt | 13 + .../part_2_dev_api/chapter_08/Dockerfile | 18 + .../part_2_dev_api/chapter_08/README.md | 105 ++++ .../part_2_dev_api/chapter_08/index.html | 483 ++++++++++++++++ .../chapter_08/shared/audio-recorder.js | 116 ++++ .../shared/audio-recording-worklet.js | 69 +++ .../chapter_08/shared/audio-streamer.js | 184 +++++++ .../shared/audioworklet-registry.js | 29 + .../chapter_08/shared/gemini-live-api.js | 200 +++++++ .../chapter_08/shared/media-handler.js | 134 +++++ .../chapter_08/shared/style.css | 58 ++ .../chapter_08/shared/tools/stock-api.js | 58 ++ .../chapter_08/shared/tools/weather-api.js | 65 +++ .../part_2_dev_api/chapter_08/shared/utils.js | 35 ++ .../chapter_08/status-handler.js | 82 +++ .../part_2_dev_api/chapter_08/style.css | 104 ++++ .../chapter_08/system-instructions.txt | 13 + .../part_3_vertex_api/README.md | 118 ++++ .../part_3_vertex_api/chapter_09/README.md | 29 + .../part_3_vertex_api/chapter_09/index.html | 220 ++++++++ .../part_3_vertex_api/chapter_09/style.css | 12 + .../part_3_vertex_api/chapter_10/README.md | 28 + .../part_3_vertex_api/chapter_10/index.html | 295 ++++++++++ .../part_3_vertex_api/chapter_10/style.css | 27 + .../part_3_vertex_api/chapter_11/README.md | 28 + .../part_3_vertex_api/chapter_11/index.html | 370 +++++++++++++ .../part_3_vertex_api/chapter_11/style.css | 44 ++ .../chapter_11/system-instructions.txt | 11 + .../part_3_vertex_api/chapter_12/Dockerfile | 50 ++ .../part_3_vertex_api/chapter_12/README.md | 62 +++ .../part_3_vertex_api/chapter_12/index.html | 514 ++++++++++++++++++ .../chapter_12/proxy/proxy.py | 267 +++++++++ .../chapter_12/proxy/requirements.txt | 4 + .../chapter_12/shared/audio-recorder.js | 116 ++++ .../shared/audio-recording-worklet.js | 69 +++ .../chapter_12/shared/audio-streamer.js | 184 +++++++ .../shared/audioworklet-registry.js | 29 + .../chapter_12/shared/gemini-live-api.js | 200 +++++++ .../chapter_12/shared/media-handler.js | 134 +++++ .../chapter_12/shared/style.css | 58 ++ .../chapter_12/shared/system-instructions.txt | 7 + .../chapter_12/shared/utils.js | 35 ++ .../chapter_12/shared/weather-api.js | 65 +++ .../chapter_12/status-handler.js | 64 +++ .../part_3_vertex_api/chapter_12/style.css | 103 ++++ .../part_3_vertex_api/proxy/proxy.py | 266 +++++++++ .../part_3_vertex_api/proxy/requirements.txt | 4 + .../server.py | 44 ++ .../shared/audio-recorder.js | 116 ++++ .../shared/audio-recording-worklet.js | 69 +++ .../shared/audio-streamer.js | 184 +++++++ .../shared/audioworklet-registry.js | 29 + .../shared/gemini-live-api.js | 200 +++++++ .../shared/media-handler.js | 134 +++++ .../shared/style.css | 58 ++ .../shared/tools/stock-api.js | 58 ++ .../shared/tools/weather-api.js | 65 +++ .../shared/utils.js | 35 ++ 86 files changed, 9737 insertions(+) create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/.gitignore create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/CONTRIBUTING.md create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/LICENSE create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/README.md create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/assets/audio-client.png create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/assets/audio-to-audio-websocket.png create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/assets/hero-image.webp create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/assets/mm_live_api.jpg create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/assets/project_pastra.png create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_1_intro/README.md create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_1_intro/chapter_01/audio.wav create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_1_intro/chapter_01/sdk-intro-veretxai.ipynb create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_1_intro/chapter_01/sdk-intro.ipynb create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_1_intro/chapter_02/README.md create mode 100755 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_1_intro/chapter_02/audio-to-audio.py create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/README.md create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_03/README.md create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_03/index.html create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_04/README.md create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_04/index.html create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_05/README.md create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_05/index.html create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_06/README.md create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_06/index.html create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_06/style.css create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_07/README.md create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_07/index.html create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_07/style.css create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_07/system-instructions.txt create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_08/Dockerfile create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_08/README.md create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_08/index.html create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_08/shared/audio-recorder.js create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_08/shared/audio-recording-worklet.js create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_08/shared/audio-streamer.js create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_08/shared/audioworklet-registry.js create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_08/shared/gemini-live-api.js create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_08/shared/media-handler.js create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_08/shared/style.css create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_08/shared/tools/stock-api.js create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_08/shared/tools/weather-api.js create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_08/shared/utils.js create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_08/status-handler.js create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_08/style.css create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_08/system-instructions.txt create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_3_vertex_api/README.md create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_3_vertex_api/chapter_09/README.md create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_3_vertex_api/chapter_09/index.html create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_3_vertex_api/chapter_09/style.css create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_3_vertex_api/chapter_10/README.md create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_3_vertex_api/chapter_10/index.html create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_3_vertex_api/chapter_10/style.css create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_3_vertex_api/chapter_11/README.md create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_3_vertex_api/chapter_11/index.html create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_3_vertex_api/chapter_11/style.css create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_3_vertex_api/chapter_11/system-instructions.txt create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_3_vertex_api/chapter_12/Dockerfile create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_3_vertex_api/chapter_12/README.md create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_3_vertex_api/chapter_12/index.html create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_3_vertex_api/chapter_12/proxy/proxy.py create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_3_vertex_api/chapter_12/proxy/requirements.txt create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_3_vertex_api/chapter_12/shared/audio-recorder.js create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_3_vertex_api/chapter_12/shared/audio-recording-worklet.js create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_3_vertex_api/chapter_12/shared/audio-streamer.js create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_3_vertex_api/chapter_12/shared/audioworklet-registry.js create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_3_vertex_api/chapter_12/shared/gemini-live-api.js create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_3_vertex_api/chapter_12/shared/media-handler.js create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_3_vertex_api/chapter_12/shared/style.css create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_3_vertex_api/chapter_12/shared/system-instructions.txt create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_3_vertex_api/chapter_12/shared/utils.js create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_3_vertex_api/chapter_12/shared/weather-api.js create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_3_vertex_api/chapter_12/status-handler.js create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_3_vertex_api/chapter_12/style.css create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_3_vertex_api/proxy/proxy.py create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_3_vertex_api/proxy/requirements.txt create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/server.py create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/shared/audio-recorder.js create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/shared/audio-recording-worklet.js create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/shared/audio-streamer.js create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/shared/audioworklet-registry.js create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/shared/gemini-live-api.js create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/shared/media-handler.js create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/shared/style.css create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/shared/tools/stock-api.js create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/shared/tools/weather-api.js create mode 100644 genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/shared/utils.js diff --git a/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/.gitignore b/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/.gitignore new file mode 100644 index 00000000..2163aca3 --- /dev/null +++ b/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/.gitignore @@ -0,0 +1,175 @@ +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] +*$py.class + +# C extensions +*.so + +# Distribution / packaging +.Python +build/ +develop-eggs/ +dist/ +downloads/ +eggs/ +.eggs/ +lib/ +lib64/ +parts/ +sdist/ +var/ +wheels/ +share/python-wheels/ +*.egg-info/ +.installed.cfg +*.egg +MANIFEST + +# PyInstaller +# Usually these files are written by a python script from a template +# before PyInstaller builds the exe, so as to inject date/other infos into it. +*.manifest +*.spec + +# Installer logs +pip-log.txt +pip-delete-this-directory.txt + +# Unit test / coverage reports +htmlcov/ +.tox/ +.nox/ +.coverage +.coverage.* +.cache +nosetests.xml +coverage.xml +*.cover +*.py,cover +.hypothesis/ +.pytest_cache/ +cover/ + +# Translations +*.mo +*.pot + +# Django stuff: +*.log +local_settings.py +db.sqlite3 +db.sqlite3-journal + +# Flask stuff: +instance/ +.webassets-cache + +# Scrapy stuff: +.scrapy + +# Sphinx documentation +docs/_build/ + +# PyBuilder +.pybuilder/ +target/ + +# Jupyter Notebook +.ipynb_checkpoints + +# IPython +profile_default/ +ipython_config.py + +# pyenv +# For a library or package, you might want to ignore these files since the code is +# intended to run in multiple environments; otherwise, check them in: +# .python-version + +# pipenv +# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control. +# However, in case of collaboration, if having platform-specific dependencies or dependencies +# having no cross-platform support, pipenv may install dependencies that don't work, or not +# install all needed dependencies. +#Pipfile.lock + +# UV +# Similar to Pipfile.lock, it is generally recommended to include uv.lock in version control. +# This is especially recommended for binary packages to ensure reproducibility, and is more +# commonly ignored for libraries. +#uv.lock + +# poetry +# Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control. +# This is especially recommended for binary packages to ensure reproducibility, and is more +# commonly ignored for libraries. +# https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control +#poetry.lock + +# pdm +# Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control. +#pdm.lock +# pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it +# in version control. +# https://pdm.fming.dev/latest/usage/project/#working-with-version-control +.pdm.toml +.pdm-python +.pdm-build/ + +# PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm +__pypackages__/ + +# Celery stuff +celerybeat-schedule +celerybeat.pid + +# SageMath parsed files +*.sage.py + +# Environments +.env +.venv +env/ +venv/ +ENV/ +env.bak/ +venv.bak/ + +# Spyder project settings +.spyderproject +.spyproject + +# Rope project settings +.ropeproject + +# mkdocs documentation +/site + +# mypy +.mypy_cache/ +.dmypy.json +dmypy.json + +# Pyre type checker +.pyre/ + +# pytype static type analyzer +.pytype/ + +# Cython debug symbols +cython_debug/ + +# PyCharm +# JetBrains specific template is maintained in a separate JetBrains.gitignore that can +# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore +# and can be added to the global gitignore or merged into this file. For a more nuclear +# option (not recommended) you can uncomment the following to ignore the entire idea folder. +#.idea/ + +# PyPI configuration file +.pypirc + +.DS_Store + +_*.html \ No newline at end of file diff --git a/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/CONTRIBUTING.md b/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/CONTRIBUTING.md new file mode 100644 index 00000000..5d09f58d --- /dev/null +++ b/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/CONTRIBUTING.md @@ -0,0 +1,36 @@ +# How to Contribute + +At this time, we're not looking to take contributions to this project. + +## Before you begin + +### Sign our Contributor License Agreement + +Contributions to this project must be accompanied by a +[Contributor License Agreement](https://cla.developers.google.com/about) (CLA). +You (or your employer) retain the copyright to your contribution; this simply +gives us permission to use and redistribute your contributions as part of the +project. + +If you or your current employer have already signed the Google CLA (even if it +was for a different project), you probably don't need to do it again. + +Visit to see your current agreements or to +sign a new one. + +### Review our Community Guidelines + +This project follows [Google's Open Source Community +Guidelines](https://opensource.google/conduct/). + +## Contribution process + +At this time, we're not looking to take contributions to this project. +In the future, we look forward to your patches and contributions to this project. + +### Code Reviews + +All submissions, including submissions by project members, require review. We +use GitHub pull requests for this purpose. Consult +[GitHub Help](https://help.github.com/articles/about-pull-requests/) for more +information on using pull requests. \ No newline at end of file diff --git a/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/LICENSE b/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/LICENSE new file mode 100644 index 00000000..7a4a3ea2 --- /dev/null +++ b/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/LICENSE @@ -0,0 +1,202 @@ + + Apache License + Version 2.0, January 2004 + http://www.apache.org/licenses/ + + TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION + + 1. Definitions. + + "License" shall mean the terms and conditions for use, reproduction, + and distribution as defined by Sections 1 through 9 of this document. + + "Licensor" shall mean the copyright owner or entity authorized by + the copyright owner that is granting the License. + + "Legal Entity" shall mean the union of the acting entity and all + other entities that control, are controlled by, or are under common + control with that entity. For the purposes of this definition, + "control" means (i) the power, direct or indirect, to cause the + direction or management of such entity, whether by contract or + otherwise, or (ii) ownership of fifty percent (50%) or more of the + outstanding shares, or (iii) beneficial ownership of such entity. + + "You" (or "Your") shall mean an individual or Legal Entity + exercising permissions granted by this License. + + "Source" form shall mean the preferred form for making modifications, + including but not limited to software source code, documentation + source, and configuration files. + + "Object" form shall mean any form resulting from mechanical + transformation or translation of a Source form, including but + not limited to compiled object code, generated documentation, + and conversions to other media types. + + "Work" shall mean the work of authorship, whether in Source or + Object form, made available under the License, as indicated by a + copyright notice that is included in or attached to the work + (an example is provided in the Appendix below). + + "Derivative Works" shall mean any work, whether in Source or Object + form, that is based on (or derived from) the Work and for which the + editorial revisions, annotations, elaborations, or other modifications + represent, as a whole, an original work of authorship. For the purposes + of this License, Derivative Works shall not include works that remain + separable from, or merely link (or bind by name) to the interfaces of, + the Work and Derivative Works thereof. + + "Contribution" shall mean any work of authorship, including + the original version of the Work and any modifications or additions + to that Work or Derivative Works thereof, that is intentionally + submitted to Licensor for inclusion in the Work by the copyright owner + or by an individual or Legal Entity authorized to submit on behalf of + the copyright owner. For the purposes of this definition, "submitted" + means any form of electronic, verbal, or written communication sent + to the Licensor or its representatives, including but not limited to + communication on electronic mailing lists, source code control systems, + and issue tracking systems that are managed by, or on behalf of, the + Licensor for the purpose of discussing and improving the Work, but + excluding communication that is conspicuously marked or otherwise + designated in writing by the copyright owner as "Not a Contribution." + + "Contributor" shall mean Licensor and any individual or Legal Entity + on behalf of whom a Contribution has been received by Licensor and + subsequently incorporated within the Work. + + 2. Grant of Copyright License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + copyright license to reproduce, prepare Derivative Works of, + publicly display, publicly perform, sublicense, and distribute the + Work and such Derivative Works in Source or Object form. + + 3. Grant of Patent License. Subject to the terms and conditions of + this License, each Contributor hereby grants to You a perpetual, + worldwide, non-exclusive, no-charge, royalty-free, irrevocable + (except as stated in this section) patent license to make, have made, + use, offer to sell, sell, import, and otherwise transfer the Work, + where such license applies only to those patent claims licensable + by such Contributor that are necessarily infringed by their + Contribution(s) alone or by combination of their Contribution(s) + with the Work to which such Contribution(s) was submitted. If You + institute patent litigation against any entity (including a + cross-claim or counterclaim in a lawsuit) alleging that the Work + or a Contribution incorporated within the Work constitutes direct + or contributory patent infringement, then any patent licenses + granted to You under this License for that Work shall terminate + as of the date such litigation is filed. + + 4. Redistribution. You may reproduce and distribute copies of the + Work or Derivative Works thereof in any medium, with or without + modifications, and in Source or Object form, provided that You + meet the following conditions: + + (a) You must give any other recipients of the Work or + Derivative Works a copy of this License; and + + (b) You must cause any modified files to carry prominent notices + stating that You changed the files; and + + (c) You must retain, in the Source form of any Derivative Works + that You distribute, all copyright, patent, trademark, and + attribution notices from the Source form of the Work, + excluding those notices that do not pertain to any part of + the Derivative Works; and + + (d) If the Work includes a "NOTICE" text file as part of its + distribution, then any Derivative Works that You distribute must + include a readable copy of the attribution notices contained + within such NOTICE file, excluding those notices that do not + pertain to any part of the Derivative Works, in at least one + of the following places: within a NOTICE text file distributed + as part of the Derivative Works; within the Source form or + documentation, if provided along with the Derivative Works; or, + within a display generated by the Derivative Works, if and + wherever such third-party notices normally appear. The contents + of the NOTICE file are for informational purposes only and + do not modify the License. You may add Your own attribution + notices within Derivative Works that You distribute, alongside + or as an addendum to the NOTICE text from the Work, provided + that such additional attribution notices cannot be construed + as modifying the License. + + You may add Your own copyright statement to Your modifications and + may provide additional or different license terms and conditions + for use, reproduction, or distribution of Your modifications, or + for any such Derivative Works as a whole, provided Your use, + reproduction, and distribution of the Work otherwise complies with + the conditions stated in this License. + + 5. Submission of Contributions. Unless You explicitly state otherwise, + any Contribution intentionally submitted for inclusion in the Work + by You to the Licensor shall be under the terms and conditions of + this License, without any additional terms or conditions. + Notwithstanding the above, nothing herein shall supersede or modify + the terms of any separate license agreement you may have executed + with Licensor regarding such Contributions. + + 6. Trademarks. This License does not grant permission to use the trade + names, trademarks, service marks, or product names of the Licensor, + except as required for reasonable and customary use in describing the + origin of the Work and reproducing the content of the NOTICE file. + + 7. Disclaimer of Warranty. Unless required by applicable law or + agreed to in writing, Licensor provides the Work (and each + Contributor provides its Contributions) on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied, including, without limitation, any warranties or conditions + of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A + PARTICULAR PURPOSE. You are solely responsible for determining the + appropriateness of using or redistributing the Work and assume any + risks associated with Your exercise of permissions under this License. + + 8. Limitation of Liability. In no event and under no legal theory, + whether in tort (including negligence), contract, or otherwise, + unless required by applicable law (such as deliberate and grossly + negligent acts) or agreed to in writing, shall any Contributor be + liable to You for damages, including any direct, indirect, special, + incidental, or consequential damages of any character arising as a + result of this License or out of the use or inability to use the + Work (including but not limited to damages for loss of goodwill, + work stoppage, computer failure or malfunction, or any and all + other commercial damages or losses), even if such Contributor + has been advised of the possibility of such damages. + + 9. Accepting Warranty or Additional Liability. While redistributing + the Work or Derivative Works thereof, You may choose to offer, + and charge a fee for, acceptance of support, warranty, indemnity, + or other liability obligations and/or rights consistent with this + License. However, in accepting such obligations, You may act only + on Your own behalf and on Your sole responsibility, not on behalf + of any other Contributor, and only if You agree to indemnify, + defend, and hold each Contributor harmless for any liability + incurred by, or claims asserted against, such Contributor by reason + of your accepting any such warranty or additional liability. + + END OF TERMS AND CONDITIONS + + APPENDIX: How to apply the Apache License to your work. + + To apply the Apache License to your work, attach the following + boilerplate notice, with the fields enclosed by brackets "[]" + replaced with your own identifying information. (Don't include + the brackets!) The text should be enclosed in the appropriate + comment syntax for the file format. We also recommend that a + file or class name and description of purpose be included on the + same "printed page" as the copyright notice for easier + identification within third-party archives. + + Copyright [yyyy] [name of copyright owner] + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. \ No newline at end of file diff --git a/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/README.md b/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/README.md new file mode 100644 index 00000000..79aac0b8 --- /dev/null +++ b/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/README.md @@ -0,0 +1,120 @@ +# Project Pastra - A Gemini Multimodal Live API Developer Guide + +![Project Pastra](assets/project_pastra.png) + +This repository serves as a comprehensive developer guide for [Google's Gemini Multimodal Live API](https://developers.googleblog.com/en/gemini-2-0-level-up-your-apps-with-real-time-multimodal-interactions/). Through a structured, hands-on approach, you'll learn how to build sophisticated real-time applications that can see, hear, and interact naturally using Gemini's multimodal capabilities. + +## What You'll Learn + +By following this guide, you'll be able to: +- Build real-time audio chat applications with Gemini +- Implement live video interactions through webcam and screen sharing +- Create multimodal experiences combining audio and video +- Deploy production-ready AI assistants +- Choose between Development API and Vertex AI implementations + +The guide progresses from basic concepts to advanced implementations, culminating in a [Project Astra](https://deepmind.google/technologies/project-astra/)-inspired AI assistant that demonstrates the full potential of the Gemini Multimodal Live API. + +## Key Concepts Covered + +- **Real-time Communication:** + - WebSocket-based streaming + - Bidirectional audio chat + - Live video processing + - Turn-taking and interruption handling + +- **Audio Processing:** + - Microphone input capture + - Audio chunking and streaming + - Voice Activity Detection (VAD) + - Real-time audio playback + +- **Video Integration:** + - Webcam and screen capture + - Frame processing and encoding + - Simultaneous audio-video streaming + - Efficient media handling + +- **Production Features:** + - Function calling capabilities + - System instructions + - Mobile-first UI design + - Cloud deployment + - Enterprise security + +## Guide Structure + +### [Part 1](part_1_intro): Introduction to Gemini's Multimodal Live API +Basic concepts and SDK usage: +- SDK setup and authentication +- Text and audio interactions +- Real-time audio chat implementation + +### [Part 2](part_2_dev_api): WebSocket Development with [Gemini Developer API](https://ai.google.dev/api/multimodal-live) +Direct WebSocket implementation, building towards Project Pastra - a production-ready multimodal AI assistant inspired by Project Astra: +- Low-level WebSocket communication +- Audio and video streaming +- Function calling and system instructions +- Mobile-first deployment + +### [Part 3](part_3_vertex_api): WebSocket Development with [Vertex AI API](https://cloud.google.com/vertex-ai/generative-ai/docs/model-reference/multimodal-live) +Enterprise-grade implementation using Vertex AI, mirroring Part 2's journey with production-focused architecture: +- Proxy-based authentication +- Service account integration +- Cloud deployment architecture +- Enterprise security considerations + +## Feature Implementation Guide + +Below is a comprehensive overview of where each feature is implemented across the Development API and Vertex AI versions: + +| Feature | Part 2 - Dev API Chapter | Part 3 - Vertex AI Chapter | +|---------|----------------|-------------------| +| Basic WebSocket Setup | [Chapter 3](part_2_dev_api/chapter_03) | - | +| Text-to-Speech | [Chapter 4](part_2_dev_api/chapter_04) | - | +| Real-time Audio Chat | [Chapter 5](part_2_dev_api/chapter_05) | [Chapter 9](part_3_vertex_api/chapter_09) | +| Multimodal (Audio + Video) | [Chapter 6](part_2_dev_api/chapter_06) | [Chapter 10](part_3_vertex_api/chapter_10) | +| Function Calling & Instructions | [Chapter 7](part_2_dev_api/chapter_07) | [Chapter 11](part_3_vertex_api/chapter_11) | +| Production Deployment (Project Pastra)| [Chapter 8](part_2_dev_api/chapter_08) | [Chapter 12](part_3_vertex_api/chapter_12) | + +Note: Vertex AI implementation starts directly with advanced features, skipping basic WebSocket and text-to-speech examples. + +## Prerequisites + +- Google Cloud Project (for Vertex AI) +- [AI Studio API key](https://aistudio.google.com/app/apikey) (for Gemini Developer API) +- OpenWeather API key (if you want to use the weather tool) +- Python 3.9 or higher +- Modern web browser +- Basic understanding of: + - JavaScript and HTML + - WebSocket communication + - Audio/video processing concepts + +## Key Differences Between Dev API and Vertex AI + +### Development API (Part 2) +- Simple API key authentication +- Direct WebSocket connection +- All tools available simultaneously +- Single-service deployment +- Ideal for prototyping and learning + +### Vertex AI (Part 3) +- Service account authentication +- Proxy-based architecture +- Single tool limitation +- Two-service deployment (app + proxy) +- Suited for enterprise deployment + +## Getting Started + +1. Start with Part 1 to understand basic SDK concepts +2. Choose your implementation path: + - For quick prototyping: Follow Part 2 (Dev API) + - For enterprise deployment: Skip to Part 3 (Vertex AI) + +## License + +This project is licensed under the Apache License. + diff --git a/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/assets/audio-client.png b/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/assets/audio-client.png new file mode 100644 index 0000000000000000000000000000000000000000..5bfdaf217c44a383dea2f53ebd515ff2c29249cf GIT binary patch literal 280191 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

9J)R04Izkv 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 z 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�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 literal 0 HcmV?d00001 diff --git a/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/assets/hero-image.webp b/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/assets/hero-image.webp new file mode 100644 index 0000000000000000000000000000000000000000..cbab2c419685df1f40b408bb0f306aeb8cf3a90f GIT binary patch literal 12042 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 literal 0 HcmV?d00001 diff --git a/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/assets/mm_live_api.jpg b/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/assets/mm_live_api.jpg new file mode 100644 index 0000000000000000000000000000000000000000..078ad5b1d5dca18e5eee9c4ebb35ebacf6855358 GIT binary patch literal 70976 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 literal 0 HcmV?d00001 diff --git a/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/assets/project_pastra.png b/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/assets/project_pastra.png new file mode 100644 index 0000000000000000000000000000000000000000..c4e58b672c0753d67c756d07d532f3fdf237f22c GIT binary patch literal 979723 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
^QM+0<9*P{-U+x93*FXfELVJQ6R7`tk8Mt%) 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:mlZ(8_!d??lTjkH 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

6L#sD?3iNW*8;5 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

xu?IvbvM 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 z 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\"\n", + "LOCATION = \"us-central1\"" + ] + }, + { + "cell_type": "code", + "execution_count": 9, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "> Hello? Gemini, are you there? \n", + "\n", + "Yes\n", + ", I am here. What would you like to talk about?\n", + "\n", + "None\n" + ] + } + ], + "source": [ + "model_id = \"gemini-2.0-flash-exp\"\n", + "\n", + "client = genai.Client(vertexai=True, location=LOCATION, project=PROJECT_ID)\n", + "config = {\"response_modalities\": [\"TEXT\"]}\n", + "\n", + "async with client.aio.live.connect(model=model_id, config=config) as session:\n", + " message = \"Hello? Gemini, are you there?\"\n", + " print(\"> \", message, \"\\n\")\n", + " await session.send(message, end_of_turn=True)\n", + "\n", + " async for response in session.receive():\n", + " print(response.text)" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Audio Generation Example\n", + "\n", + "Now we'll see how to generate audio responses from Gemini. This section:\n", + "1. Creates a wave file handler to save the audio\n", + "2. Configures the model for audio output\n", + "3. Sends a text prompt and receives audio data\n", + "4. Saves the audio chunks and plays them in the notebook\n", + "\n", + "Note: Make sure your browser's audio is enabled to hear the responses." + ] + }, + { + "cell_type": "code", + "execution_count": 11, + "metadata": {}, + "outputs": [], + "source": [ + "import contextlib\n", + "import wave\n", + "\n", + "\n", + "@contextlib.contextmanager\n", + "def wave_file(filename, channels=1, rate=24000, sample_width=2):\n", + " with wave.open(filename, \"wb\") as wf:\n", + " wf.setnchannels(channels)\n", + " wf.setsampwidth(sample_width)\n", + " wf.setframerate(rate)\n", + " yield wf" + ] + }, + { + "cell_type": "code", + "execution_count": 12, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "> Hello? Gemini are you there? \n", + "\n", + "audio/pcm\n", + "................................" + ] + }, + { + "data": { + "text/html": [ + "\n", + " \n", + " " + ], + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "from IPython.display import display, Audio\n", + "\n", + "config={\n", + " \"generation_config\": {\"response_modalities\": [\"AUDIO\"]}}\n", + "\n", + "async with client.aio.live.connect(model=model_id, config=config) as session:\n", + " file_name = 'audio.wav'\n", + " with wave_file(file_name) as wav:\n", + " message = \"Hello? Gemini are you there?\"\n", + " print(\"> \", message, \"\\n\")\n", + " await session.send(message, end_of_turn=True)\n", + "\n", + " first = True\n", + " async for response in session.receive():\n", + " if response.data is not None:\n", + " model_turn = response.server_content.model_turn\n", + " if first:\n", + " print(model_turn.parts[0].inline_data.mime_type)\n", + " first = False\n", + " print('.', end='.')\n", + " wav.writeframes(response.data)\n", + "\n", + "\n", + "display(Audio(file_name, autoplay=True))" + ] + } + ], + "metadata": { + "kernelspec": { + "display_name": ".venv", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.11.9" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_1_intro/chapter_01/sdk-intro.ipynb b/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_1_intro/chapter_01/sdk-intro.ipynb new file mode 100644 index 00000000..6d8795f7 --- /dev/null +++ b/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_1_intro/chapter_01/sdk-intro.ipynb @@ -0,0 +1,212 @@ +{ + "cells": [ + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "# Google Gemini SDK Introduction\n", + "\n", + "This notebook demonstrates how to use the Google Gemini AI SDK to interact with the Gemini model in both text and audio modes.\n", + "\n", + "## Setup\n", + "First, we'll install the required package and initialize the client with our API key." + ] + }, + { + "cell_type": "code", + "execution_count": 1, + "metadata": {}, + "outputs": [], + "source": [ + "!pip install -U -q google-genai" + ] + }, + { + "cell_type": "code", + "execution_count": 2, + "metadata": {}, + "outputs": [], + "source": [ + "from google import genai\n", + "client = genai.Client(vertexai=False, http_options= {'api_version': 'v1alpha'}, api_key='')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Text Interaction Example\n", + "\n", + "Below we'll demonstrate how to have a text conversation with Gemini. The code:\n", + "1. Sets up a configuration for text responses\n", + "2. Opens an async connection to the model\n", + "3. Sends a message and receives the response in chunks\n", + "4. Prints each chunk of the response as it arrives" + ] + }, + { + "cell_type": "code", + "execution_count": 3, + "metadata": {}, + "outputs": [], + "source": [ + "MODEL = \"gemini-2.0-flash-exp\"" + ] + }, + { + "cell_type": "code", + "execution_count": 4, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "> Hello? Gemini are you there? \n", + "\n", + "- Yes, I'\n", + "- m here! How can I help you today?\n", + "\n" + ] + } + ], + "source": [ + "config={\n", + " \"generation_config\": {\"response_modalities\": [\"TEXT\"]}}\n", + "\n", + "async with client.aio.live.connect(model=MODEL, config=config) as session:\n", + " message = \"Hello? Gemini are you there?\"\n", + " print(\"> \", message, \"\\n\")\n", + " await session.send(message, end_of_turn=True)\n", + "\n", + " # For text responses, When the model's turn is complete it breaks out of the loop.\n", + " turn = session.receive()\n", + " async for chunk in turn:\n", + " if chunk.text is not None:\n", + " print(f'- {chunk.text}')" + ] + }, + { + "cell_type": "markdown", + "metadata": {}, + "source": [ + "## Audio Generation Example\n", + "\n", + "Now we'll see how to generate audio responses from Gemini. This section:\n", + "1. Creates a wave file handler to save the audio\n", + "2. Configures the model for audio output\n", + "3. Sends a text prompt and receives audio data\n", + "4. Saves the audio chunks and plays them in the notebook\n", + "\n", + "Note: Make sure your browser's audio is enabled to hear the responses." + ] + }, + { + "cell_type": "code", + "execution_count": 5, + "metadata": {}, + "outputs": [], + "source": [ + "import contextlib\n", + "import wave\n", + "\n", + "\n", + "@contextlib.contextmanager\n", + "def wave_file(filename, channels=1, rate=24000, sample_width=2):\n", + " with wave.open(filename, \"wb\") as wf:\n", + " wf.setnchannels(channels)\n", + " wf.setsampwidth(sample_width)\n", + " wf.setframerate(rate)\n", + " yield wf" + ] + }, + { + "cell_type": "code", + "execution_count": 6, + "metadata": {}, + "outputs": [ + { + "name": "stdout", + "output_type": "stream", + "text": [ + "> Hello? Gemini are you there? \n", + "\n", + "audio/pcm;rate=24000\n", + ".............................." + ] + }, + { + "data": { + "text/html": [ + "\n", + " \n", + " " + ], + "text/plain": [ + "" + ] + }, + "metadata": {}, + "output_type": "display_data" + } + ], + "source": [ + "from IPython.display import display, Audio\n", + "\n", + "config={\n", + " \"generation_config\": {\"response_modalities\": [\"AUDIO\"]}}\n", + "\n", + "async with client.aio.live.connect(model=MODEL, config=config) as session:\n", + " file_name = 'audio.wav'\n", + " with wave_file(file_name) as wav:\n", + " message = \"Hello? Gemini are you there?\"\n", + " print(\"> \", message, \"\\n\")\n", + " await session.send(message, end_of_turn=True)\n", + "\n", + " first = True\n", + " async for response in session.receive():\n", + " if response.data is not None:\n", + " model_turn = response.server_content.model_turn\n", + " if first:\n", + " print(model_turn.parts[0].inline_data.mime_type)\n", + " first = False\n", + " print('.', end='.')\n", + " wav.writeframes(response.data)\n", + "\n", + "\n", + "display(Audio(file_name, autoplay=True))" + ] + }, + { + "cell_type": "code", + "execution_count": null, + "metadata": {}, + "outputs": [], + "source": [] + } + ], + "metadata": { + "kernelspec": { + "display_name": ".venv", + "language": "python", + "name": "python3" + }, + "language_info": { + "codemirror_mode": { + "name": "ipython", + "version": 3 + }, + "file_extension": ".py", + "mimetype": "text/x-python", + "name": "python", + "nbconvert_exporter": "python", + "pygments_lexer": "ipython3", + "version": "3.13.1" + } + }, + "nbformat": 4, + "nbformat_minor": 2 +} diff --git a/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_1_intro/chapter_02/README.md b/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_1_intro/chapter_02/README.md new file mode 100644 index 00000000..1080e479 --- /dev/null +++ b/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_1_intro/chapter_02/README.md @@ -0,0 +1,153 @@ +# Gemini Live Audio Chat + +This project enables real-time, two-way audio communication with a Gemini language model. The application captures audio input from the user's microphone, sends it to the Gemini API for processing, receives the model's audio response, and plays it back through the user's speakers. This creates an interactive and conversational experience, similar to talking to a voice assistant. + +The core of the application lies in its ability to manage the continuous flow of audio data between the user and the model. It uses asynchronous programming to handle audio input and output concurrently, ensuring smooth and responsive interaction. The application utilizes the `pyaudio` library to interface with the user's audio hardware, capturing microphone input and playing audio output. The `google-genai` library facilitates communication with the Gemini API, sending audio data for processing and receiving the model's responses. + +## How it works + +### System Architecture + +![Audio Client Diagram](/assets/audio-client.png) + +The application's functionality can be broken down into several key components: + +### Audio Input and Output + +The `pyaudio` library is used to create input and output streams that interface with the user's audio hardware. + +* **Input Stream:** An input stream is initialized to capture audio data from the user's microphone. The stream is configured with parameters such as format, channels, sample rate, and chunk size. The `SEND_SAMPLE_RATE` is set to 16000 Hz, which is a common sample rate for speech recognition. The `CHUNK_SIZE` determines the number of audio frames read from the microphone at a time. The `exception_on_overflow` parameter is set to `False` to prevent the stream from raising an exception if the buffer overflows. +* **Output Stream:** An output stream is initialized to play audio data through the user's speakers. Similar to the input stream, it is configured with appropriate parameters. The `RECEIVE_SAMPLE_RATE` is set to 24000 Hz, which is suitable for high-quality audio playback. + +### Communication with Gemini API + +The `google-genai` library provides the necessary tools to connect to the Gemini API and establish a communication session. + +* **Client Initialization:** A `genai.Client` is created to interact with the API. The `http_options` parameter is used to specify the API version, which is set to `'v1alpha'` in this case. +* **Session Configuration:** A configuration object `CONFIG` is defined to customize the interaction with the model. This includes: + * `generation_config`: Specifies the response modality as "AUDIO" and configures the "speech_config" to "Puck". + * `system_instruction`: Sets a system instruction to always start the model's sentences with "mate". +* **Live Connection:** The `client.aio.live.connect` method establishes a live connection to the Gemini model specified by `MODEL`, which is set to `"models/gemini-2.0-flash-exp"`. + +### Asynchronous Audio Handling + +The `asyncio` library is used to manage the asynchronous operations involved in audio processing and communication. + +* **Audio Queue:** An `asyncio.Queue` is created to store audio data temporarily. This queue is not used in the current implementation but is defined for potential future use. +* **Task Group:** An `asyncio.TaskGroup` is used to manage two concurrent tasks: `listen_and_send` and `receive_and_play`. +* **`listen_and_send` Task:** This task continuously reads audio data from the input stream in chunks and sends it to the Gemini API. It checks if the model is currently speaking (`model_speaking` flag) and only sends data if the model is not speaking. The chunking is performed using the `pyaudio` library's `read()` method, which is called with a specific `CHUNK_SIZE` (number of audio frames per chunk). Here's how it's done in the code: + + ```python + while True: + if not model_speaking: + try: + data = await asyncio.to_thread(input_stream.read, CHUNK_SIZE, exception_on_overflow=False) + # ... send data to API ... + except OSError as e: + # ... handle error ... + ``` + + In this code, `input_stream.read(CHUNK_SIZE)` reads a chunk of audio frames from the microphone's input buffer. Each chunk is then sent to the API along with the `end_of_turn=True` flag. +* **`receive_and_play` Task:** This task continuously receives responses from the Gemini API and plays the audio data through the output stream. It sets the `model_speaking` flag to `True` when the model starts speaking and to `False` when the turn is complete. It then iterates through the parts of the response and writes the audio data to the output stream. + +### Audio Chunking and Real-time Interaction + +A crucial aspect of the application's real-time audio processing is how the continuous audio stream from the microphone is divided into smaller chunks before being sent to the Gemini API. This chunking is performed in the `listen_and_send` task using the `pyaudio` library. + +**Chunking Process:** + +The `input_stream.read(CHUNK_SIZE)` method is called repeatedly to read a fixed number of audio frames (defined by `CHUNK_SIZE`) from the microphone's buffer. Each chunk represents a small segment of the audio stream. The current implementation uses a `CHUNK_SIZE` of 512 frames. + +**Calculating Chunk Duration:** + +The duration of each audio chunk can be calculated using the following formula: + +`Chunk Duration (seconds) = (Number of Frames) / (Sample Rate)` + +In this case, with a `CHUNK_SIZE` of 512 frames and a `SEND_SAMPLE_RATE` of 16000 Hz, the chunk duration is: + +`Chunk Duration = 512 frames / 16000 Hz = 0.032 seconds = 32 milliseconds` + + +Therefore, each chunk represents 32 milliseconds of audio. + +**Real-time Interaction Flow:** + +To understand how chunking enables a smooth, real-time conversation, let's trace the steps involved when you speak to the model: + +1. **User Speaks:** You start speaking into the microphone. +2. **Audio Capture:** The `listen_and_send` task continuously captures audio data from the microphone. +3. **Chunking (Fast):** Every time 512 frames (32 milliseconds of audio) are captured, a chunk is created. +4. **Send to API (Frequent):** This small chunk is immediately sent to the Gemini API, along with `end_of_turn=True`. +5. **API Processing (Starts Early):** The API receives the chunk and its Voice Activity Detection (VAD) starts analyzing it. Because the chunks are small and frequent, the API can begin processing the audio very quickly, even while the user is still speaking. +6. **Model Response (Begins Quickly):** Once the API's VAD detects a pause that it interprets as the end of a user's turn (even if it's a short pause between phrases), the Gemini model starts generating a response based on the audio it has received so far. +7. **Audio Output (Low Latency):** The response audio is sent back to the client in chunks. The `receive_and_play` task starts playing the response audio as soon as it arrives, minimizing the delay. + +**Impact of `CHUNK_SIZE`:** + +The `CHUNK_SIZE` is a configurable parameter that affects the latency and responsiveness of the system. Smaller chunks can potentially reduce latency, as they allow the API to start processing and responding sooner. However, very small chunks might increase processing overhead. Larger chunks, on the other hand, would introduce noticeable delays in the conversation, making it feel sluggish and less interactive. The choice of 512 frames strikes a good balance between low latency and manageable processing overhead for a real-time chat application. + +**Why `end_of_turn=True` with Each Chunk?** + +Each chunk is sent to the API with the `end_of_turn=True` flag. While this might seem like it would interrupt the flow of the conversation, the Gemini API uses its Voice Activity Detection (VAD) to determine the actual turn boundaries based on longer pauses in the audio stream, not solely on the `end_of_turn` flag from each chunk. This allows for a relatively smooth conversation flow despite the frequent `end_of_turn` signals. + +### Input/Output and Turn-Taking + +The application distinguishes between user input and model output through a combination of the `model_speaking` flag, the `end_of_turn=True` signal sent with each audio chunk, and the Gemini API's Voice Activity Detection (VAD). + +**Distinguishing Input from Output:** + +* **`model_speaking` Flag:** This boolean flag serves as a primary mechanism to differentiate between when the user is providing input and when the model is generating output. + * When `model_speaking` is `False`, the application assumes it's the user's turn to speak. The `listen_and_send` task reads audio data from the microphone and sends it to the API. + * When `model_speaking` is `True`, the application understands that the model is currently generating an audio response. The `listen_and_send` task pauses, preventing user input from being sent to the API while the model is "speaking." The `receive_and_play` task is active during this time, receiving and playing the model's audio output. + +**How Audio Chunks are Sent:** + +* **`end_of_turn=True` with Each Chunk:** The `listen_and_send` task sends each chunk of audio data (determined by `CHUNK_SIZE`) with `end_of_turn=True` in the message payload: `await session.send({"data": data, "mime_type": "audio/pcm"}, end_of_turn=True)`. This might seem like it would constantly interrupt the conversation flow. However, the API handles this gracefully. +* **API-Side Buffering and VAD:** The Gemini API likely buffers the incoming audio chunks on its end. Even though each chunk is marked as the end of a turn with `end_of_turn=True`, the API's Voice Activity Detection (VAD) analyzes the buffered audio to identify longer pauses or periods of silence that more accurately represent the actual end of the user's speech. The API can group several chunks into what it considers a single user turn based on its VAD analysis, rather than strictly treating each chunk as a separate turn. +* **Low-Latency Processing:** The API is designed for low-latency interaction. It starts processing the received audio chunks as soon as possible. Even if `end_of_turn=True` is sent with each chunk, the API can begin generating a response while still receiving more audio from the user, as long as it hasn't detected a significant enough pause to finalize the user's turn based on its VAD. + +**Determining End of Model Turn:** + +* **`turn_complete` Field:** The `receive_and_play` task continuously listens for responses from the API. Each response includes a `server_content` object, which contains a `turn_complete` field. + * When `turn_complete` is `True`, it signifies that the model has finished generating its response for the current turn. + * Upon receiving a `turn_complete: True` signal, the `receive_and_play` task sets the `model_speaking` flag to `False`. This signals that the model's turn is over, and the application is ready to accept new user input. + +**Turn-Taking Flow:** + +1. Initially, `model_speaking` is `False`, indicating it's the user's turn. +2. The `listen_and_send` task captures audio chunks from the microphone and sends each chunk to the API with `end_of_turn=True`. +3. The API buffers the audio and its VAD determines the actual end of the user's speech based on longer pauses, not just the `end_of_turn` signal from each chunk. +4. The model processes the input and starts generating a response. +5. The `receive_and_play` task receives the response, sets `model_speaking` to `True`, and plays the audio. +6. When the model finishes, it sends `turn_complete: True`. +7. The `receive_and_play` task sets `model_speaking` to `False`, switching back to the user's turn. + +In essence, although `end_of_turn=True` is sent with each audio chunk, the API's VAD plays a more significant role in determining the actual turn boundaries. The `end_of_turn=True` in this implementation might act more as a hint or a nudge to the API to process the audio, rather than a definitive end-of-turn marker. This approach allows for a relatively smooth conversation flow despite the frequent `end_of_turn` signals, thanks to the API's buffering, VAD, and low-latency processing. + +### Why Always Set `end_of_turn=True`? + +Setting `end_of_turn=True` with each audio chunk, even when the user hasn't finished speaking, might seem counterintuitive. Here are some reasons for this design choice: + +1. **Simplicity and Reduced Client-Side Complexity:** Implementing robust Voice Activity Detection (VAD) on the client-side can be complex. By always setting `end_of_turn=True`, the developers might have opted for a simpler client-side implementation that offloads the more complex VAD task to the Gemini API. +2. **Lower Latency:** Sending smaller chunks with `end_of_turn=True` might allow the API to start processing the audio sooner. However, this potential latency benefit depends heavily on how the API is designed. +3. **Emphasis on API-Side Control:** By sending `end_of_turn=True` frequently, the client cedes more control over turn-taking to the API. The API's VAD becomes the primary mechanism for determining turn boundaries. + +**It's important to note:** While this approach can work, it's not necessarily the most optimal or efficient way to handle turn-taking in a voice conversation system. Ideally, you would want to send `end_of_turn=True` only when the user has actually finished speaking, which would typically involve implementing client-side VAD. + +### Main Loop + +The `audio_loop` function orchestrates the entire process. + +1. **Initialization:** It initializes variables, including the audio queue, `model_speaking` flag, and session object. +2. **Connection and Task Creation:** It establishes a live connection to the Gemini API and creates the `listen_and_send` and `receive_and_play` tasks within a task group. +3. **Error Handling:** It includes a `try...except` block to catch any exceptions that occur during the process and prints the traceback. + +### Execution + +The `if __name__ == "__main__":` block ensures that the `audio_loop` function is executed only when the script is run directly. The `asyncio.run` function starts the asynchronous event loop and runs the `audio_loop` function, enabling the real-time audio chat. + +## Limitations + +The current implementation does not support user interruption of the model's speech. + diff --git a/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_1_intro/chapter_02/audio-to-audio.py b/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_1_intro/chapter_02/audio-to-audio.py new file mode 100755 index 00000000..7a956eb1 --- /dev/null +++ b/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_1_intro/chapter_02/audio-to-audio.py @@ -0,0 +1,97 @@ +# Copyright 2024 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import asyncio +import traceback +import pyaudio + +from google import genai + +FORMAT = pyaudio.paInt16 +CHANNELS = 1 +SEND_SAMPLE_RATE = 16000 +RECEIVE_SAMPLE_RATE = 24000 +CHUNK_SIZE = 512 + +MODEL = "models/gemini-2.0-flash-exp" + +client = genai.Client(http_options={'api_version': 'v1alpha'}) + +CONFIG = { + "generation_config": {"response_modalities": ["AUDIO"], "speech_config": "Puck"}, + "system_instruction": "Always start your sentence with 'mate'." +} + +async def audio_loop(): + audio_queue = asyncio.Queue() + model_speaking = False + session = None + + pya = pyaudio.PyAudio() + mic_info = pya.get_default_input_device_info() + + try: + async with ( + client.aio.live.connect(model=MODEL, config=CONFIG) as session, + asyncio.TaskGroup() as tg, + ): + input_stream = await asyncio.to_thread( + pya.open, + format=FORMAT, + channels=CHANNELS, + rate=SEND_SAMPLE_RATE, + input=True, + input_device_index=mic_info["index"], + frames_per_buffer=CHUNK_SIZE, + ) + output_stream = await asyncio.to_thread( + pya.open, format=FORMAT, channels=CHANNELS, rate=RECEIVE_SAMPLE_RATE, output=True + ) + + async def listen_and_send(): + nonlocal model_speaking + while True: + if not model_speaking: + try: + data = await asyncio.to_thread(input_stream.read, CHUNK_SIZE, exception_on_overflow=False) + await session.send({"data": data, "mime_type": "audio/pcm"}, end_of_turn=True) + except OSError as e: + print(f"Audio input error: {e}") + await asyncio.sleep(0.1) + else: + await asyncio.sleep(0.1) + + async def receive_and_play(): + nonlocal model_speaking + while True: + async for response in session.receive(): + server_content = response.server_content + if server_content and server_content.model_turn: + model_speaking = True + for part in server_content.model_turn.parts: + if part.inline_data: + await asyncio.to_thread(output_stream.write, part.inline_data.data) + + if server_content and server_content.turn_complete: + print("Turn complete") + model_speaking = False + + tg.create_task(listen_and_send()) + tg.create_task(receive_and_play()) + + except Exception as e: + traceback.print_exception(None, e, e.__traceback__) + +if __name__ == "__main__": + asyncio.run(audio_loop(), debug=True) \ No newline at end of file diff --git a/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/README.md b/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/README.md new file mode 100644 index 00000000..57b8152a --- /dev/null +++ b/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/README.md @@ -0,0 +1,78 @@ +# Part 2: WebSocket Development with Gemini API + +This section demonstrates how to work directly with the Gemini API using WebSockets, progressively building towards Project Pastra - a production-ready multimodal AI assistant inspired by Google DeepMind's Project Astra. Through a series of chapters, we evolve from basic implementations to a sophisticated, mobile-first application that showcases the full potential of the Gemini API. + +## Journey to Project Pastra +Starting with fundamental WebSocket concepts, each chapter adds new capabilities, ultimately culminating in Project Pastra - our implementation of a universal AI assistant that can see, hear, and interact in real-time. Like Project Astra (Google DeepMind's research prototype), our application demonstrates how to create an AI assistant that can engage in natural, multimodal interactions while maintaining production-grade reliability. + +## Contents + +### Chapter 3: Basic WebSocket Communication +- Single exchange example with the Gemini API +- Core WebSocket setup and communication +- Understanding the API's message formats +- Handling the mandatory setup phase + +### Chapter 4: Text-to-Speech Implementation +- Converting text input to audio responses +- Real-time audio playback in the browser +- Audio chunk management and streaming +- WebSocket and AudioContext integration + +### Chapter 5: Real-time Audio Chat +- Bidirectional audio communication +- Live microphone input processing +- Voice activity detection and turn management +- Advanced audio streaming techniques + +### Chapter 6: Multimodal Interactions +- Adding video capabilities (webcam and screen sharing) +- Frame capture and processing +- Simultaneous audio and video streaming +- Enhanced user interface controls + +### Chapter 7: Advanced Features +- Function calling capabilities +- System instructions integration +- External API integrations (weather, search) +- Code execution functionality + +### Chapter 8: Project Pastra +- Mobile-first UI design inspired by Project Astra +- Cloud Run deployment setup +- Production-grade error handling +- Scalable architecture implementation + +## Key Features +- Direct WebSocket communication with Gemini API +- Real-time audio and video processing +- Browser-based implementation +- Mobile and desktop support +- Production deployment guidance + +## Prerequisites +- Basic understanding of WebSockets +- Familiarity with JavaScript and HTML5 +- Google Gemini API access +- Modern web browser with WebSocket support + +## Getting Started + +This guide uses a simple development server to: +- Serve the HTML/JavaScript files for each chapter +- Provide access to shared components (audio processing, media handling, etc.) used across chapters +- Enable proper loading of JavaScript modules and assets +- Avoid CORS issues when accessing local files + +1. Start the development server: + ```bash + python server.py + ``` + This will serve both the chapter files and shared components at http://localhost:8000 + +2. Navigate to the specific chapter you want to work with: + - Chapter 3: http://localhost:8000/chapter_03/ + - Chapter 4: http://localhost:8000/chapter_04/ + And so on... + +3. Begin with Chapter 3 to understand the fundamentals of WebSocket communication with Gemini. Each subsequent chapter builds upon previous concepts, gradually introducing more complex features and capabilities. By Chapter 8, you'll have transformed the development prototype into Project Pastra - a production-ready AI assistant that demonstrates the future of human-AI interaction. \ No newline at end of file diff --git a/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_03/README.md b/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_03/README.md new file mode 100644 index 00000000..83e2f824 --- /dev/null +++ b/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_03/README.md @@ -0,0 +1,125 @@ +# Gemini WebSocket Test - Single Exchange Example + +This HTML file demonstrates a **single exchange** with the Gemini language model using WebSockets, illustrating the fundamental principles of interacting with the API at a low level, **without using an SDK**. The application establishes a WebSocket connection, sends a hardcoded user message, and displays the model's response in the browser. + +**This example is primarily for educational purposes**, showcasing how to use the browser's built-in WebSocket API to communicate with the Gemini API directly. It is not intended to be a full-fledged chat application but rather a simplified demonstration of the underlying communication mechanism. + +## How it works + +The application's functionality can be broken down into several key components: + +### 1. Establishing a WebSocket Connection + +* **API Endpoint:** The application connects to the Gemini API using a specific WebSocket endpoint URL: + ``` + wss://generativelanguage.googleapis.com/ws/google.ai.generativelanguage.v1alpha.GenerativeService.BidiGenerateContent?key=${apiKey} + ``` + This URL includes the API host, the service path, and an API key for authentication. Replace `${apiKey}` with your actual API key. +* **WebSocket Object:** A new `WebSocket` object is created in JavaScript, initiating the connection: + ```javascript + const ws = new WebSocket(endpoint); + ``` +* **Event Handlers:** Event handlers are defined to manage the connection's lifecycle and handle incoming messages: + * `onopen`: Triggered when the connection is successfully opened. + * `onmessage`: Triggered when a message is received from the server. + * `onerror`: Triggered if an error occurs during the connection. + * `onclose`: Triggered when the connection is closed. + +### 2. Sending a Setup Message (Mandatory First Step) + +* **API Requirement:** The Gemini API requires a setup message to be sent as the **very first message** after the WebSocket connection is established. This is crucial for configuring the session. +* **`onopen` Handler:** The `onopen` event handler, which is triggered when the connection is open, is responsible for sending this setup message. +* **Setup Message Structure:** The setup message is a JSON object that conforms to the `BidiGenerateContentSetup` format as defined in the API documentation: + ```javascript + const setupMessage = { + setup: { + model: "models/gemini-2.0-flash-exp", + generation_config: { + response_modalities: ["text"] + } + } + }; + ``` + * `model`: Specifies the Gemini model to use (`"models/gemini-2.0-flash-exp"` in this case). + * `generation_config`: Configures the generation parameters, such as the `response_modalities` (set to `"text"` for text-based output). You can also specify other parameters like `temperature`, `top_p`, `top_k`, etc., within `generation_config` as needed. +* **Sending the Message:** The setup message is stringified and sent to the server using `ws.send()`: + ```javascript + ws.send(JSON.stringify(setupMessage)); + ``` + +### 3. Receiving and Processing Messages + +* **`onmessage` Handler:** The `onmessage` event handler receives messages from the server. +* **Data Handling:** The code handles potential `Blob` data using `new Response(event.data).text()`, but in this text-only example, it directly parses the message as JSON. +* **Response Parsing:** The received message is parsed as a JSON object using `JSON.parse()`. +* **Message Types:** The code specifically checks for a `BidiGenerateContentSetupComplete` message type, indicated by the `setupComplete` field in the response. + +### 4. Confirming Setup Completion Before Proceeding + +* **`setupComplete` Check:** The code includes a conditional check to ensure that a `setupComplete` message is received before sending any user content: + ```javascript + if (response.setupComplete) { + // ... Send user message ... + } + ``` +* **Why This Is Important:** This check is essential because the API will not process user content messages until the setup is complete. Sending content before receiving confirmation that the setup is complete will likely result in an error or unexpected behavior. The API might close the connection if messages other than the initial setup message are sent before the setup is completed. + +### 5. Sending a Hardcoded User Message + +* **Triggered by `setupComplete`:** Only after the `setupComplete` message is received and processed does the application send a user message to the model. +* **User Message Structure:** The user message is a JSON object conforming to the `BidiGenerateContentClientContent` format: + ```javascript + const contentMessage = { + client_content: { + turns: [{ + role: "user", + parts: [{ text: "Hello! Are you there?" }] + }], + turn_complete: true + } + }; + ``` + * `client_content`: Contains the conversation content. + * `turns`: An array representing the conversation turns. + * `role`: Indicates the role of the speaker ("user" in this case). + * `parts`: An array of content parts (in this case, a single text part). + * `text`: The actual user message (hardcoded to "Hello! Are you there?"). + * `turn_complete`: Set to `true` to signal the end of the user's turn. +* **Sending the Message:** The content message is stringified and sent to the server using `ws.send()`. + +### 6. Displaying the Model's Response + +* **`serverContent` Handling:** When a `serverContent` message is received (which contains the model's response), the application extracts the response text. +* **Response Extraction:** The model's response is accessed using `response.serverContent.modelTurn.parts[0]?.text`. +* **Displaying the Response:** The `logMessage()` function displays the model's response in the `output` div on the HTML page. + +### 7. Error Handling and Connection Closure + +* **`onerror` Handler:** The `onerror` event handler logs any WebSocket errors to the console and displays an error message on the page. +* **`onclose` Handler:** The `onclose` event handler logs information about the connection closure, including the reason and status code. + +### 8. Logging Messages + +* **`logMessage()` Function:** This utility function creates a new paragraph element (`

`) and appends it to the `output` div, displaying the provided message on the page. + +## Educational Purpose + +This example focuses on demonstrating the **low-level interaction with the Gemini API using WebSockets**. It highlights the importance of the **setup phase** and demonstrates how to: + +1. **Establish a raw WebSocket connection** without relying on an SDK. +2. **Send a properly formatted `BidiGenerateContentSetup` message** as the first message to configure the session. +3. **Wait for and verify the `setupComplete` message** before sending any user content. +4. **Send properly formatted `BidiGenerateContentClientContent` messages** containing user input. +5. **Parse and interpret the JSON responses** from the API, including `BidiGenerateContentSetupComplete` and `BidiGenerateContentServerContent` messages. +6. **Handle basic events** like `onopen`, `onmessage`, `onerror`, and `onclose`. + +By examining this code, you can gain a deeper understanding of the underlying communication protocol and message formats used by the Gemini API, particularly the **mandatory setup phase**. This knowledge can be valuable for debugging, troubleshooting, or building custom integrations that require more control than an SDK might offer. + +**Note:** This is a simplified example for educational purposes. A real-world chat application would involve more complex features like: + +* Dynamic user input. +* Handling multiple conversation turns. +* Maintaining conversation history. +* Potentially integrating audio or video. + +This example provides a solid foundation for understanding the basic principles involved in interacting with the Gemini API at a low level using WebSockets, especially the crucial setup process. \ No newline at end of file diff --git a/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_03/index.html b/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_03/index.html new file mode 100644 index 00000000..fda55344 --- /dev/null +++ b/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_03/index.html @@ -0,0 +1,131 @@ + + + + + + Gemini WebSocket Test + + + +

+

Gemini WebSocket Test

+

This is a simple demonstration of WebSocket communication with the Gemini API, showing a single exchange between user and model. It illustrates the fundamental principles of interacting with the API at a low level, without using an SDK.

+
+ +
+ + + + \ No newline at end of file diff --git a/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_04/README.md b/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_04/README.md new file mode 100644 index 00000000..9655e8eb --- /dev/null +++ b/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_04/README.md @@ -0,0 +1,131 @@ +# Gemini Text-to-Speech with WebSockets + +This HTML file demonstrates a text-to-speech application using the Gemini API and WebSockets. It allows you to type a text message into an input field, send it to the Gemini model, and receive an audio response that is played back in the browser. The application uses the browser's built-in `WebSocket` and `AudioContext` APIs to handle real-time communication and audio playback. + +This example focuses on demonstrating: + +1. **Low-level interaction with the Gemini API using WebSockets.** +2. **Handling audio responses** from the API and playing them back in the browser. +3. **Managing user input** and displaying messages. +4. **Implementing audio chunk queuing and playback** with `AudioContext`. + +## How it works + +The application's functionality can be broken down into several key components: + +### 1. Establishing a WebSocket Connection + +* **API Endpoint:** The application connects to the Gemini API using a specific WebSocket endpoint URL: + ``` + wss://generativelanguage.googleapis.com/ws/google.ai.generativelanguage.v1alpha.GenerativeService.BidiGenerateContent?key=${apiKey} + ``` + This URL includes the API host, the service path, and an API key for authentication. Remember to replace `${apiKey}` with your actual API key. +* **WebSocket Object:** A new `WebSocket` object is created in JavaScript, initiating the connection: + ```javascript + const ws = new WebSocket(endpoint); + ``` +* **Event Handlers:** Event handlers are defined to manage the connection's lifecycle and handle incoming messages: + * `onopen`: Triggered when the connection is successfully opened. + * `onmessage`: Triggered when a message is received from the server. + * `onerror`: Triggered if an error occurs during the connection. + * `onclose`: Triggered when the connection is closed. + +### 2. Sending a Setup Message + +* **`onopen` Handler:** When the `onopen` event is triggered, the application sends a setup message to the API. +* **Setup Message Structure:** The setup message is a JSON object that configures the interaction: + ```javascript + const setupMessage = { + setup: { + model: "models/gemini-2.0-flash-exp", + generation_config: { + response_modalities: ["AUDIO"] + } + } + }; + ``` + * `model`: Specifies the Gemini model to use (`"models/gemini-2.0-flash-exp"` in this case). + * `generation_config`: Configures the generation parameters. Here, `response_modalities` is set to `["AUDIO"]` to request audio output. +* **Sending the Message:** The setup message is stringified and sent to the server using `ws.send()`. +* **Input Disabled:** Initially, the user input field and send button are disabled. They are only enabled after the setup is complete. + +### 3. Receiving and Processing Messages + +* **`onmessage` Handler:** The `onmessage` event handler receives messages from the server. +* **Handling Different Response Types:** The code handles either `Blob` or `JSON` data. It converts `Blob` data to text and parses the text as JSON. +* **Response Parsing:** The received message is parsed as a JSON object using `JSON.parse()`. +* **Message Types:** The code checks for two types of messages: + * **`setupComplete`:** Indicates that the setup process is finished. + * **`serverContent`:** Contains the model's response, which in this case will be audio data. + +### 4. Sending User Messages + +* **Enabling Input:** When a `setupComplete` message is received, the application enables the user input field and the send button. +* **`sendUserMessage()` Function:** This function is called when the user clicks the "Send" button or presses Enter in the input field. +* **User Message Structure:** The user message is a JSON object: + ```javascript + const contentMessage = { + client_content: { + turns: [{ + role: "user", + parts: [{ text: message }] + }], + turn_complete: true + } + }; + ``` + * `client_content`: Contains the conversation content. + * `turns`: An array representing the conversation turns. + * `role`: Indicates the role of the speaker ("user" in this case). + * `parts`: An array of content parts (in this case, a single text part containing the user's message). + * `turn_complete`: Set to `true` to signal the end of the user's turn. +* **Sending the Message:** The content message is stringified and sent to the server using `ws.send()`. +* **Clearing Input:** The input field is cleared after the message is sent. + +### 5. Handling Audio Responses + +* **`serverContent` with Audio:** When a `serverContent` message containing audio data is received, the application extracts the base64-encoded audio data. +* **`inlineData`:** The audio data is found in `response.serverContent.modelTurn.parts[0].inlineData.data`. +* **`playAudioChunk()`:** This function is called to handle the audio chunk. +* **Audio Queue:** Audio is pushed into an `audioQueue` array for processing. +* **Audio Playback Management:** `isPlayingAudio` flag ensures that chunks are played sequentially, one after the other. + +### 6. Audio Playback with `AudioContext` + +* **`ensureAudioInitialized()`:** This function initializes the `AudioContext` when the first audio chunk is received. This is done lazily to comply with browser autoplay policies. It sets a sample rate of 24000. + * **Lazy Initialization:** The `AudioContext` is only created when the first audio chunk is received. This is because some browsers restrict audio playback unless it's initiated by a user action. + * **Sample Rate:** The sample rate is set to 24000 Hz, which is a common sample rate for speech audio. +* **`playAudioChunk()`:** This function adds an audio chunk to a queue (`audioQueue`) and initiates audio playback if it's not already playing. +* **`processAudioQueue()`:** This function is responsible for processing and playing audio chunks from the queue. + * **Chunk Handling:** It retrieves an audio chunk from the queue. + * **Base64 Decoding:** The base64-encoded audio chunk is decoded to an `ArrayBuffer` using `base64ToArrayBuffer()`. + * **PCM to Float32 Conversion:** The raw PCM16LE (16-bit little-endian Pulse Code Modulation) audio data is converted to Float32 format using `convertPCM16LEToFloat32()`. This is necessary because `AudioContext` works with floating-point audio data. + * **Creating an `AudioBuffer`:** An `AudioBuffer` is created with a single channel, the appropriate length, and a sample rate of 24000 Hz. The Float32 audio data is then copied into the `AudioBuffer`. + * **Creating an `AudioBufferSourceNode`:** An `AudioBufferSourceNode` is created, which acts as a source for the audio data. The `AudioBuffer` is assigned to the source node. + * **Connecting to Destination:** The source node is connected to the `AudioContext`'s destination (the speakers). + * **Starting Playback:** `source.start(0)` starts the playback of the audio chunk immediately. + * **`onended` Event:** A promise is used with the `onended` event of the source node to ensure that the next chunk in the queue is only played after the current chunk has finished playing. This is crucial for maintaining the correct order and avoiding overlapping audio. + +### 7. Helper Functions + +* **`base64ToArrayBuffer()`:** Converts a base64-encoded string to an `ArrayBuffer`. +* **`convertPCM16LEToFloat32()`:** Converts PCM16LE audio data to Float32 format. +* **`logMessage()`:** Appends a message to the `output` div on the HTML page. + +### 8. Error Handling and Connection Closure + +* **`onerror` Handler:** Logs WebSocket errors to the console and displays an error message on the page. +* **`onclose` Handler:** Logs information about the connection closure. + +## Summary + +This example demonstrates a basic text-to-speech application using the Gemini API with WebSockets. It showcases: + +* Establishing a WebSocket connection and sending a setup message. +* Handling user input and sending text messages to the API. +* Receiving audio responses in base64-encoded chunks. +* Decoding and converting audio data to a format suitable for playback. +* Using `AudioContext` to play the audio in the browser sequentially, one chunk after the other. +* Implementing basic error handling and connection closure. + +This example provides a starting point for building more sophisticated applications that can generate audio responses from the Gemini model and play them back in real time, all within the browser environment using low-level WebSockets and `AudioContext` for audio management. \ No newline at end of file diff --git a/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_04/index.html b/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_04/index.html new file mode 100644 index 00000000..3789347a --- /dev/null +++ b/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_04/index.html @@ -0,0 +1,304 @@ + + + + + + Gemini Text-to-Speech WebSocket Test + + + +
+

Gemini Text-to-Speech with WebSockets

+

This application demonstrates real-time text-to-speech using the Gemini API. Type a message and receive an audio response that plays automatically in your browser. The app uses WebSockets for communication and AudioContext for handling audio playback.

+
+ +
+ + +
+
+ + + + \ No newline at end of file diff --git a/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_05/README.md b/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_05/README.md new file mode 100644 index 00000000..a3b9da60 --- /dev/null +++ b/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_05/README.md @@ -0,0 +1,353 @@ +# Chapter 5: Gemini Live Audio Chat - Real-time Audio-to-Audio with WebSockets + +This chapter presents a real-time audio-to-audio chat application that interacts with the Gemini Multimodal Live API using WebSockets and the Web Audio API. It demonstrates a browser-based implementation that captures live microphone input, sends it to the Gemini API, and plays back the model's audio response in real time. + +**This chapter builds upon the concepts introduced in previous chapters but introduces significantly more complexity** due to the use of raw WebSockets for bidirectional communication and advanced audio processing techniques for handling live audio streams. + +**How This Chapter Differs from Previous Chapters:** + +* **Chapter 2 (Live Audio Chat with Gemini):** Utilized the Python SDK for simplifying the audio streaming, but didn't run in the browser. It handled audio-to-audio but with the assistance of the SDK's higher-level abstractions. **Importantly, Chapter 2 used a `model_speaking` flag on the client-side to prevent the model's output from being treated as input.** This chapter achieves a similar outcome through a different mechanism, relying on the API's turn management. +* **Chapter 3 (Low-Level WebSocket Interaction - Single Exchange Example):** Introduced low level WebSocket interaction but only for sending a single text query to the model. +* **Chapter 4 (Text-to-Speech with WebSockets):** Focused on text-to-speech, sending text to the API and playing back the received audio. It introduced basic audio handling but did not involve live microphone input or complex audio stream management. + +**Chapter 5, in contrast, combines the real-time nature of Chapter 2 with the low-level WebSocket approach of Chapters 3 and 4 but implements a full audio-to-audio chat entirely within the browser.** This requires handling: + +* **Live Microphone Input:** Capturing and processing a continuous stream of audio data from the user's microphone. +* **Bidirectional Audio Streaming:** Sending audio chunks to the API while simultaneously receiving and playing back audio responses in real time. +* **Advanced Audio Processing:** Converting between audio formats, managing audio buffers, and ensuring smooth playback using the Web Audio API. +* **Complex State Management:** Handling interruptions, turn-taking, and potential errors in a real-time audio stream. + +**Why the Increased Complexity?** + +The jump in complexity comes from the need to manage real-time, bidirectional audio streams directly within the browser using low-level APIs. This involves: + +* **No SDK Abstraction:** We're working directly with WebSockets and handling the raw message formats defined by the Gemini API, including setup and control messages. +* **Manual Audio Handling:** We must manually capture, chunk, encode, decode, process, and play audio data, without the convenience of an SDK's built-in methods. +* **Real-time Constraints:** We need to ensure that audio is processed and played back with minimal latency to maintain a natural conversational flow. +* **Asynchronous Operations:** We rely heavily on asynchronous JavaScript and Promises to manage the non-blocking nature of WebSockets and audio processing. + +## Project Structure + +This chapter's application consists of the following files: + +* **`index.html`:** The main HTML file that sets up the user interface (a microphone button and an output area for messages) and includes the core JavaScript logic for WebSocket communication and overall application flow. +* **`audio-recorder.js`:** Contains the `AudioRecorder` class, which handles capturing audio from the microphone, converting it to the required format, and emitting chunks of audio data using an `EventEmitter3` interface. +* **`audio-streamer.js`:** Contains the `AudioStreamer` class, which manages audio playback using the Web Audio API. It handles queuing, buffering, and playing audio chunks received from the API, ensuring smooth and continuous playback. +* **`audio-recording-worklet.js`:** Defines an `AudioWorkletProcessor` that runs in a separate thread and performs the low-level audio processing, including float32 to int16 conversion and chunking. +* **`audioworklet-registry.js`:** A utility to help register and manage `AudioWorklet`s, preventing duplicate registration. +* **`utils.js`:** Provides utility functions like `audioContext` (for creating an `AudioContext`) and `base64ToArrayBuffer` (for decoding base64 audio data). +* **`style.css`:** Contains basic CSS styles for the user interface. + +## System Architecture + +![Audio Client Diagram](../../assets/audio-to-audio-websocket.png) + +## Detailed Explanation of Audio Processing + +The audio processing pipeline in this application is crucial for real-time performance. Let's break down the components, design choices, and address the specific questions raised: + +**1. Microphone Input and `AudioRecorder`:** + +* **`AudioRecorder` Class:** This class encapsulates the logic for capturing audio from the user's microphone using the browser's `MediaDevices` API (`navigator.mediaDevices.getUserMedia`). +* **`AudioWorklet`:** It utilises an `AudioWorklet` to perform audio processing in a separate thread, preventing the main thread from being blocked by computationally intensive audio operations, which is essential for maintaining a smooth user experience. +* **`audio-recording-worklet.js`:** This file defines the `AudioProcessingWorklet` class, which extends `AudioWorkletProcessor`. It performs the following: + * **Float32 to Int16 Conversion:** Converts the raw audio data from Float32 format (used by the Web Audio API) to Int16 format (required by the Gemini API for PCM audio). The conversion involves scaling the Float32 values (ranging from -1.0 to 1.0) to the Int16 range (-32768 to 32767). + ```javascript + // convert float32 -1 to 1 to int16 -32768 to 32767 + const int16Value = float32Array[i] * 32768; + ``` + * **Chunking:** Buffers audio samples and sends them in chunks. This is where the frequency of audio transmission is determined. The `buffer` has a fixed length of **2048 samples**. When the `bufferWriteIndex` reaches the end of the buffer, the `sendAndClearBuffer` function is called. The buffer is sent via `postMessage` and then cleared, ready for new data. + ```javascript + // send and clear buffer every 2048 samples, + buffer = new Int16Array(2048); + + // ... + + if(this.bufferWriteIndex >= this.buffer.length) { + this.sendAndClearBuffer(); + } + + // ... + + sendAndClearBuffer() { + this.port.postMessage({ + event: "chunk", + data: { + int16arrayBuffer: this.buffer.slice(0, this.bufferWriteIndex).buffer, + }, + }); + this.bufferWriteIndex = 0; + } + ``` + **At the input sample rate of 16000 Hz, a chunk of 2048 samples is created and sent approximately every 128 milliseconds (2048 / 16000 = 0.128 seconds).** +* **EventEmitter3:** The `AudioRecorder` class extends `EventEmitter3`, allowing it to emit events. Specifically, it emits a `data` event whenever a chunk of audio data is ready to be sent. Other parts of the application can listen for this event to receive the audio data. +* **`start()` and `stop()` Methods:** These methods control the recording process, starting and stopping the microphone capture and managing the associated resources. + +**2. WebSocket Communication (`index.html`)** + +* **`ws.onopen`:** Sends the initial `setup` message to the Gemini API, specifying the model, audio output as the response modality, and the desired voice. +* **`ws.onmessage`:** Handles incoming messages from the API: + * **`setupComplete`:** Enables the microphone button, indicating that the connection is ready. + * **`serverContent`:** Processes audio data, handles interruptions, and sends continuation signals as needed. +* **`sendAudioChunk()`:** This function is triggered by the `data` event emitted by the `AudioRecorder`. It takes a chunk of audio data (which has already been converted to Int16 and then to base64 in the `AudioRecorder`), constructs a `realtime_input` message, and sends it to the API via `ws.send()`. The message format adheres to the `BidiGenerateContentRealtimeInput` structure defined in the API documentation. +* **`sendEndMessage()` and `sendContinueSignal()`:** These are crucial for managing the conversation flow. + * **`sendEndMessage()`:** Sends a message with `turn_complete: true` when the user stops recording (by clicking the "Stop Mic" button). This signals to the API that the user's turn is finished. + ```javascript + const message = { + client_content: { + turns: [{ + role: "user", + parts: [] // no more audio for this turn + }], + turn_complete: true // end of turn + } + }; + ``` + * **`sendContinueSignal()`:** Sends a message with `turn_complete: false` immediately after receiving an audio chunk from the model, *unless* the model indicates `turnComplete: true`. This serves as a keep-alive, letting the API know that the client is still listening and ready for more audio data. This is important for the low-latency, real-time nature of the interaction. + ```javascript + const message = { + client_content: { + turns: [{ + role: "user", + parts: [] // no more audio for this turn + }], + turn_complete: false // not the end of turn, keep going + } + }; + ``` +* **`toggleMicrophone()`:** Starts and stops the recording process, calling the appropriate methods in `AudioRecorder`. + +**3. Audio Playback and `AudioStreamer`:** + +* **`AudioStreamer` Class:** This class manages the playback of audio chunks received from the Gemini API. +* **`AudioContext`:** It utilizes the Web Audio API's `AudioContext` for handling audio playback. The `AudioContext` is initialized only when the first audio chunk is received to comply with browser autoplay policies. It sets a sample rate of 24000 Hz. + * **Lazy Initialization:** The `AudioContext` is only created when the first audio chunk is received. This is because some browsers restrict audio playback unless it's initiated by a user action. + * **Sample Rate:** The sample rate is set to 24000 Hz, which is a common sample rate for speech audio. +* **`addPCM16()`:** This method receives PCM16 audio chunks, converts them back to Float32, creates `AudioBuffer` objects, and adds them to an internal queue (`audioQueue`). +* **`playNextBuffer()`:** This method retrieves audio buffers from the queue and plays them using an `AudioBufferSourceNode`. It ensures that chunks are played sequentially, one after the other, using the `onended` event of the source node and a small delay. +* **`isPlaying` Flag:** This flag tracks whether audio is currently being played, preventing overlapping playback. +* **`stop()` and `resume()`:** These methods provide control over stopping and resuming audio playback. +* **`complete()`:** This method is called to signal the end of an audio stream, allowing any remaining buffers in the queue to be played out. +* **Stall Detection:** Implements a mechanism to detect and recover from playback stalls, ensuring continuous audio flow. The `checkPlaybackStatus()` function periodically checks if audio playback has stalled (by comparing the current time with the last playback time). If a stall is detected and there are still buffers in the queue, it attempts to restart playback by calling `playNextBuffer()`. This is a safety net to handle situations where the `onended` event might not fire reliably or if there are unexpected delays in audio processing. + ```javascript + checkPlaybackStatus() { + // Clear any existing timeout + if (this.playbackTimeout) { + clearTimeout(this.playbackTimeout); + } + + // Set a new timeout to check playback status + this.playbackTimeout = setTimeout(() => { + const now = this.context.currentTime; + const timeSinceLastPlayback = now - this.lastPlaybackTime; + + // If more than 1 second has passed since last playback and we have buffers to play + if (timeSinceLastPlayback > 1 && this.audioQueue.length > 0 && this.isPlaying) { + console.log('Playback appears to have stalled, restarting...'); + this.playNextBuffer(); + } + + // Continue checking if we're still playing + if (this.isPlaying) { + this.checkPlaybackStatus(); + } + }, 1000); + } + ``` + +**4. Interruption Handling:** + +* **Detection:** The API signals an interruption by sending a `serverContent` message with the `interrupted` flag set to `true`. This typically happens when the API's VAD detects speech from the user while the model is still speaking. + ```javascript + if (wsResponse.serverContent.interrupted) { + logMessage('Gemini: Interrupted'); + isInterrupted = true; + audioStreamer.stop(); + return; + } + ``` +* **Client-Side Handling:** When the `interrupted` flag is received: + 1. The `isInterrupted` flag is set to `true`. + 2. The `AudioStreamer`'s `stop()` method is called to immediately halt any ongoing audio playback. This ensures that the interrupted audio is not played. +* **Latency:** The latency for interruption detection is primarily determined by the API's VAD and the network latency. The client-side processing adds minimal delay. On a fast connection, the interruption should feel near-instantaneous. +* **No Specific Parameter:** There is no specific parameter in this code to tune the interruption sensitivity, as that is primarily controlled by the API's VAD. +* **Effects of Changing VAD (if possible):** If the API provided a way to adjust VAD sensitivity (which it currently doesn't for the Multimodal Live API), the effects would be: + * **More Sensitive VAD:** Interruptions would be triggered more easily, potentially leading to a more responsive but also more "jumpy" conversation. + * **Less Sensitive VAD:** The model would be more likely to finish its turn, but it might feel less responsive to user interruptions. + +**5. Preventing Feedback Loop (No Echo):** +In Chapter 2 with the Python SDK we introduced a `model_speaking` flag to prevent to model from listening to itself. In this chapter, we achieve this without an explicit flag on the client-side, **relying on the API's built-in turn management capabilities.** Here's how it works: + +* **Turn Detection:** The Gemini API uses its Voice Activity Detection (VAD) to determine when a user's turn begins and ends. When the user starts speaking, the VAD detects this as the start of a turn. When the user stops speaking for a certain duration (a pause), the VAD determines that the user's turn has ended. + +* **`turn_complete` Signal:** The `turn_complete: true` signal sent in the `sendEndMessage()` function after the user stops speaking explicitly tells the API that the user's turn is over. This is important for the API to properly segment the conversation. The sending of this signal is directly tied to the user clicking the "Stop Mic" button, which in turn is only clickable when the user is speaking. This means the user has control when a turn ends. + +* **API-Side Management:** The API manages the conversation flow internally, ensuring that the model only processes audio input that is considered part of the user's turn. The model does not start generating its response until the user's turn is deemed complete (either by `turn_complete: true` or by the VAD detecting a sufficiently long pause). + +* **`sendContinueSignal()`:** The `sendContinueSignal()` function sends `turn_complete: false` after model audio is received unless the model indicated `turn_complete: true`. This is important. Without that the model would not continue to speak if the generated audio takes longer than the VAD's pause detection. + +Essentially, the API is designed to handle the "listen while speaking" scenario gracefully. It's not simply feeding the output audio back into the input. The VAD and turn management logic ensure that the model only processes audio it considers as user input. + +**6. Audio Streaming and Context Window:** + +* **Continuous Streaming:** As long as the microphone is active and the user is speaking, audio data is continuously sent to the Gemini API in chunks. This is necessary for real-time interaction. +* **Chunk Size and Data Rate:** + * Each chunk contains 2048 samples of 16-bit PCM audio. + * Each sample is 2 bytes (16 bits = 2 bytes). + * Therefore, each chunk is 2048 samples * 2 bytes/sample = 4096 bytes. + * Chunks are sent roughly every 128 milliseconds. + * This translates to a data rate of approximately 4096 bytes / 0.128 seconds = 32 KB/s (kilobytes per second). + * **VAD and Turn Boundaries:** The API's VAD plays a crucial role in determining the boundaries of a turn. When VAD detects a significant enough pause in the user's speech, it considers the turn to be over, and the model generates a response based on that segment of audio. + * **Practical Implications:** For a natural conversational flow, it's generally a good practice to keep your utterances relatively concise and allow for turn-taking. This helps the API process the audio effectively and generate relevant responses. + +**7. User Interface (`index.html`)** + +* **"Start Mic"/"Stop Mic" Button:** This button controls the microphone recording. Its text toggles between "Start Mic" and "Stop Mic" depending on the recording state. +* **Output Area:** The `div` with the ID `output` is used to display messages to the user, such as "Recording started...", "Recording stopped...", "Gemini: Speaking...", and "Gemini: Finished speaking". +* **Visual Feedback:** The UI provides basic visual feedback about the state of the application (recording, playing audio, etc.). +* **Initial State:** When the page loads, the microphone button is disabled. It is only enabled after the WebSocket connection is successfully established and the setup message exchange is complete. + +**8. Debugging** + +* **Browser Developer Tools:** The primary tool for debugging this application is your browser's developer tools (usually accessed by pressing F12). + * **Console:** Use the console to view `console.log` messages, errors, and warnings. The code includes numerous `console.log` statements to help you track the flow of execution and the data being processed. + * **Network Tab:** Use the Network tab to monitor WebSocket traffic. You can inspect the individual messages being sent and received, including their contents and timing. This is invaluable for understanding the communication with the API. + * **Debugger:** Use the JavaScript debugger to set breakpoints, step through the code, inspect variables, and analyze the call stack. +* **`logMessage()` Function:** This function provides a simple way to display messages in the `output` div on the page, providing visual feedback within the application itself. + +**9. Further Considerations** + +* **Error Handling:** The code includes basic error handling, but it could be made more robust by handling specific error codes or messages from the API and providing more informative feedback to the user. +* **Security:** The API key is currently hardcoded in the HTML file. For production, you should **never** expose your API key directly in client-side code. Instead, use a secure backend server to handle authentication and proxy requests to the API. +* **Scalability:** This example is designed for a single user. For a multi-user scenario, you would need to manage multiple WebSocket connections and potentially use a server-side component to handle user sessions and routing. +* **Audio Quality:** The audio quality depends on the microphone, network conditions, and the API's processing. You can experiment with different sample rates and chunk sizes, but these values are often constrained by the API's requirements and the need to balance latency and bandwidth. +* **Network Latency:** Network latency can significantly impact the real-time performance of the application. There's no single solution to mitigate network latency, but using a server closer to the user's location and optimizing the audio processing pipeline can help. +* **Audio Level:** There is a `gainNode` to allow for controlling the volume of the output audio in the `AudioStreamer`. This is not used yet but could be exposed to the user through the UI if needed. + +## Web Audio API + +The Web Audio API is a high-level JavaScript API for processing and synthesizing audio in web applications. It provides a powerful and flexible system for manipulating audio within the browser. It is based on the idea of an **audio graph**, where different **audio nodes** are connected to process an audio stream. + +**Key Concepts:** + +* **`AudioContext`:** The primary interface for working with the Web Audio API. It represents an audio-processing graph built from audio nodes. You can only have one `AudioContext` per document. Think of it as the container or the manager for all audio operations. +* **Audio Nodes:** Building blocks of the audio graph. They perform specific audio processing tasks. Examples include: + * **`AudioBufferSourceNode`:** Represents an audio source consisting of in-memory audio data stored in an `AudioBuffer`. Used here to play the audio chunks received from the API. + * **`MediaStreamAudioSourceNode`:** Represents an audio source consisting of a `MediaStream` (e.g., from a microphone). Used here to capture audio from the microphone. + * **`GainNode`:** Controls the volume (gain) of the audio signal. Used here for potential volume adjustments. + * **`AudioWorkletNode`:** A special type of node that allows you to run custom audio processing JavaScript code in a separate thread (the audio rendering thread). This is essential for real-time audio processing as it prevents blocking the main thread and causing glitches. Used here (`audio-recording-worklet.js`) to handle audio chunking and format conversion in a separate thread. +* **`AudioBuffer`:** Represents a short audio asset residing in memory. Used to hold the audio data of each chunk. +* **`AudioParam`:** Represents a parameter of an audio node (e.g., the gain of a `GainNode`). Can be automated over time. +* **`AudioWorklet`:** Enables developers to write custom audio processing scripts that run in a separate thread. This is crucial for performance-sensitive audio applications, as it ensures that audio processing doesn't block the main thread and cause glitches or delays. `AudioWorklet`s are defined in separate JavaScript files (like `audio-recording-worklet.js`) and are added to the `AudioContext` using `audioContext.audioWorklet.addModule()`. + +**How This Application Uses the Web Audio API:** + +* **`AudioContext`:** An `AudioContext` is created to manage the entire audio graph. It's initialized with a sample rate of 24000 Hz, matching the API's output sample rate. +* **`AudioWorkletNode`:** An `AudioWorkletNode` is used to run the `AudioProcessingWorklet` defined in `audio-recording-worklet.js`. This handles the real-time processing of microphone input, converting it to Int16 format and dividing it into chunks. +* **`AudioBufferSourceNode`:** An `AudioBufferSourceNode` is created for each audio chunk received from the API. The audio data is decoded, converted to Float32, and then used to create an `AudioBuffer` that is assigned to the source node. +* **`MediaStreamAudioSourceNode`:** A `MediaStreamAudioSourceNode` is created to capture the audio stream from the user's microphone. +* **`GainNode`:** A `GainNode` is connected to the output for potential volume control. +* **Connections:** The nodes are connected: `MediaStreamAudioSourceNode` -> `AudioWorkletNode` (for input processing), and `AudioBufferSourceNode` -> `GainNode` -> `AudioContext.destination` (for output). + +**Audio Queueing and Buffering:** + +* **`audioQueue`:** This array in `AudioStreamer` acts as a queue for incoming audio chunks. Chunks are added to the queue as they are received from the API. +* **`playNextBuffer()`:** This function retrieves and plays buffers from the queue sequentially. It uses the `onended` event of the `AudioBufferSourceNode` to trigger the playback of the next chunk, ensuring a continuous stream. +* **Buffering:** The Web Audio API internally handles some buffering, but the `audioQueue` provides an additional layer of buffering to smooth out any irregularities in the arrival of audio chunks. + +**Batched Sending:** + +* The term "batching" isn't explicitly used in the code, but the concept is present in how audio chunks are created and sent. The `AudioWorklet` buffers 2048 samples before sending a chunk. This can be considered a form of batching, as it sends data in discrete units rather than a continuous stream of individual samples. This approach balances the need for real-time responsiveness with the efficiency of sending data in larger packets. + +## Configuration and Parameters + +The following parameters and values are used in this application and can be customized: + +* **`model`:** `"models/gemini-2.0-flash-exp"` (specifies the Gemini model). +* **`response_modalities`:** `["audio"]` (requests audio output from the API). +* **`speech_config`:** + * **`voice_config`**: + * **`prebuilt_voice_config`**: + * **`voice_name`**: `Aoede` (specifies which voice to use). + Possible values: `Aoede`, `Charon`, `Fenrir`, `Kore`, `Puck` +* **`sampleRate`:** + The sample rate is set to 16000 Hz for the input and 24000 Hz for the output. This is dictated by the API's requirements. + * **Input (Microphone):** 16000 Hz (set in `audio-recorder.js`). This is a common sample rate for speech recognition. + * **Why 16000 Hz for input?** 16000 Hz is a standard sample rate for speech processing and is often used in speech recognition systems because it captures most of the relevant frequency information in human speech while keeping computational costs manageable. Using a higher sample rate for input might not provide significant improvements in speech recognition accuracy for this application. + * **Output (API):** 24000 Hz (specified in the API documentation and when creating the `AudioContext`). This is a higher sample rate, providing better audio quality for playback. + * **Why 24000 Hz for output?** 24000 Hz is chosen because it's the sample rate at which the API provides audio output. Using this rate ensures that the audio is played back at the correct speed and pitch. +* **`CHUNK_SIZE` (in `audio-recording-worklet.js`):** 2048 samples. This determines the size of the audio chunks sent to the API. It represents a good balance between latency and processing overhead. + * **Calculation:** With a sample rate of 16000 Hz, a 2048-sample chunk corresponds to 2048 / 16000 = 0.128 seconds, or 128 milliseconds. + * **Why 2048 samples per chunk?** This value is chosen to balance the need for low latency with the overhead of sending frequent messages. Smaller chunks would result in lower latency but would increase the number of messages sent to the API, potentially leading to higher processing overhead and network congestion. Larger chunks would reduce the frequency of messages but increase latency. + * **Effects of Changing `CHUNK_SIZE`:** + * **Smaller `CHUNK_SIZE` (e.g., 1024 samples):** + * **Pros:** Lower latency (around 64 milliseconds per chunk). The application would feel more responsive. + * **Cons:** Increased processing overhead on both the client and server sides due to more frequent message sending and handling. Increased network traffic. The audio might also start to sound choppy and distorted due to potential buffer underruns. + * **Larger `CHUNK_SIZE` (e.g., 4096 samples):** + * **Pros:** Reduced processing overhead and network traffic. + * **Cons:** Higher latency (around 256 milliseconds per chunk). The application would feel less responsive, and the conversation might feel sluggish. +* **Audio Format:** + * **Input:** The microphone provides audio data in Float32 format. + * **API Input:** The API expects audio data in 16-bit linear PCM (Int16) format, little-endian. + * **API Output:** The API provides audio data in base64-encoded 16-bit linear PCM (Int16) format, little-endian. + * **Output:** The `AudioContext` works with Float32 audio data. + +## Lessons Learned and Best Practices + +Through the development of this real-time audio streaming application, several important lessons were learned, and best practices were discovered: + +### Audio Context Setup + +* **Lazy Initialization:** Initialize the `AudioContext` only when needed, typically in response to a user interaction, to comply with browser autoplay policies. + +### Audio Buffer Management + +* **Avoid Fixed Buffer Sizes:** Instead of using fixed buffer sizes and trying to manage partial buffers, adapt to the natural chunk sizes provided by the API. Process each chunk as it arrives. This simplifies buffer management and improves playback smoothness. +* **Don't Overcomplicate:** Simple sequential playback using the `onended` event is often more effective and easier to manage than complex scheduling logic. + +### PCM16 Data Handling + +* **Correct Conversion:** Ensure that PCM16 data is correctly interpreted and converted to Float32 format for the Web Audio API. The conversion involves normalizing the 16-bit integer values to the range [-1, 1]. + +### Playback Timing and Scheduling + +* **Sequential Playback:** Use the `onended` event of `AudioBufferSourceNode` to trigger the playback of the next audio chunk. This ensures that chunks are played sequentially without overlap. +* **Avoid Aggressive Scheduling:** Do not schedule buffers too far in advance. This can lead to memory issues and make it difficult to handle interruptions. + +### Interruption Handling + +* **Immediate Stop:** When an interruption is detected (using the `interrupted` flag from the API), stop the current audio playback immediately using `audioStreamer.stop()`. +* **State Reset:** Reset the `isInterrupted` flag and any other relevant state variables to prepare for new audio input. +* **Clear Buffers:** Ensure that any pending audio buffers are cleared to prevent stale audio from playing. + +### Protocol Management + +* **Setup Message:** Send the `setup` message as the very first message after establishing the WebSocket connection. This configures the session with the API. +* **Voice Selection:** In the setup message, select a voice in the speech config, which determines the voice of the audio response. +* **Continue Signals:** Send `client_content` messages with `turn_complete: false` to maintain the streaming connection and signal that the client is ready for more audio data. Send these signals immediately after receiving and processing an audio chunk from the model. +* **Turn Completion:** Send a `client_content` message with `turn_complete: true` to indicate the end of the user's turn. + +### State Management + +* **Track Essential States:** Keep track of states like `isRecording`, `initialized`, and `isInterrupted` to manage the application flow correctly. +* **Reset States Appropriately:** Reset these states at the appropriate times, such as when starting a new recording or after an interruption. + +### Technical Requirements and Best Practices + +* **`AudioContext` Sample Rate:** Always initialize the `AudioContext` with a sample rate of 24000 Hz for compatibility with the Gemini API. +* **WebSocket Configuration:** Ensure the WebSocket connection is properly configured with the correct API endpoint and API key. +* **Event Handling:** Implement proper event handling for all relevant audio and WebSocket events, including `onopen`, `onmessage`, `onerror`, `onclose`, `onended`, and custom events like the `data` event from `AudioRecorder`. +* **State Management:** Implement robust state management to track the recording state, initialization state, interruption state, and other relevant flags. + +### Common Pitfalls to Avoid + +* **Overly Complex Buffer Management:** Avoid using fixed buffer sizes or complex buffering logic when a simpler sequential approach is sufficient. +* **Aggressive Buffer Scheduling:** Don't schedule audio buffers too far in advance, as this can lead to memory issues and complicate interruption handling. +* **Incorrect PCM16 Handling:** Ensure that PCM16 data is correctly converted to Float32 format, and that the sample rate is properly considered. +* **Ignoring `turn_complete`:** Always handle the `turn_complete` signal from the API to properly manage turn-taking. +* **Neglecting State Management:** Failing to properly manage and reset state variables can lead to unexpected behavior and bugs. +* **Forgetting Continue Signals:** Remember to send continue signals to maintain the streaming connection, especially during long audio generation. + +## Summary + +This chapter provides a real-world example of building a real-time, audio-to-audio chat application with the Gemini Multimodal Live API using WebSockets and the Web Audio API. It demonstrates the complexities of handling live audio streams, managing bidirectional communication, and performing necessary audio format conversions, all within a browser environment. It also highlights common pitfalls and best practices discovered during the development process. diff --git a/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_05/index.html b/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_05/index.html new file mode 100644 index 00000000..81d94098 --- /dev/null +++ b/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_05/index.html @@ -0,0 +1,200 @@ + + + + + + Gemini Audio-to-Audio WebSocket Demo (Dev API) + + + + +
+

Gemini Live Audio Chat (Dev API)

+

This application demonstrates real-time audio-to-audio chat using the Gemini API and WebSockets. Speak into your microphone and receive audio responses in real time. The app uses the Web Audio API for capturing microphone input and playing back responses, with support for natural conversation flow and interruptions.

+
+ +
+ +
+
+ + + + + + + + + + + \ No newline at end of file diff --git a/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_06/README.md b/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_06/README.md new file mode 100644 index 00000000..7017a463 --- /dev/null +++ b/genai-on-vertex-ai/gemini_2_0/gemini-multimodal-live-api-dev-guide/part_2_dev_api/chapter_06/README.md @@ -0,0 +1,118 @@ +# Chapter 6: Gemini Live Chat - Real-time Multimodal Interaction with WebSockets + +This chapter takes the real-time audio chat application from **Chapter 5** and significantly enhances it by incorporating **live video input** from the user's webcam or screen. This creates a truly **multimodal** interaction with the Gemini API, demonstrating a more sophisticated and engaging use case. We'll be building upon the existing WebSocket communication and Web Audio API infrastructure to handle both audio and video streams simultaneously. + +**Building Upon Previous Chapters:** + +Chapter 6 leverages the foundational concepts and components established in earlier chapters: + +* **Chapter 2 (Live Audio Chat with Gemini):** Provided the basis for real-time audio interaction, which we extend here. +* **Chapter 3 (Low-Level WebSocket Interaction):** Introduced the core WebSocket communication principles that are essential for this chapter. +* **Chapter 4 (Text-to-Speech with WebSockets):** Demonstrated basic audio handling with WebSockets, which we build upon for live audio streaming. +* **Chapter 5 (Real-time Audio-to-Audio):** Established the foundation for real-time audio streaming using WebSockets and the Web Audio API. Chapter 6 extends this by adding video capabilities. We'll reuse the `AudioRecorder`, `AudioStreamer`, and WebSocket communication logic from this chapter. + +**New Functionalities in Chapter 6:** + +This chapter introduces the following key additions: + +1. **Video Capture and Management:** + * **`MediaHandler` Class:** A new `MediaHandler` class is introduced to manage user media, specifically for webcam and screen capture. It's responsible for: + * Requesting access to the user's webcam or screen using `navigator.mediaDevices.getUserMedia()` and `navigator.mediaDevices.getDisplayMedia()`. + * Starting and stopping video streams. + * Capturing individual frames from the video stream. + * Managing the active state of the webcam and screen sharing (using `isWebcamActive` and `isScreenActive` flags). + * **Webcam and Screen Sharing Toggle:** The UI now includes two new buttons with material symbol icons: + * **Webcam Button:** Toggles the webcam on and off. + * **Screen Sharing Button:** Toggles screen sharing on and off. + * **Video Preview:** A `
Please [sponsor Ajv development](https://github.com/sponsors/epoberezkin) + +Since I asked to support Ajv development 40 people and 6 organizations contributed via GitHub and OpenCollective - this support helped receiving the MOSS grant! + +Your continuing support is very important - the funds will be used to develop and maintain Ajv once the next major version is released. + +Please sponsor Ajv via: + +- [GitHub sponsors page](https://github.com/sponsors/epoberezkin) (GitHub will match it) +- [Ajv Open Collective](https://opencollective.com/ajv) + +Thank you. + +#### Open Collective sponsors + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +## Performance + +Ajv generates code to turn JSON Schemas into super-fast validation functions that are efficient for v8 optimization. + +Currently Ajv is the fastest and the most standard compliant validator according to these benchmarks: + +- [json-schema-benchmark](https://github.com/ebdrup/json-schema-benchmark) - 50% faster than the second place +- [jsck benchmark](https://github.com/pandastrike/jsck#benchmarks) - 20-190% faster +- [z-schema benchmark](https://rawgit.com/zaggino/z-schema/master/benchmark/results.html) +- [themis benchmark](https://cdn.rawgit.com/playlyfe/themis/master/benchmark/results.html) + +Performance of different validators by [json-schema-benchmark](https://github.com/ebdrup/json-schema-benchmark): + +[![performance](https://chart.googleapis.com/chart?chxt=x,y&cht=bhs&chco=76A4FB&chls=2.0&chbh=62,4,1&chs=600x416&chxl=-1:|ajv|@exodus/schemasafe|is-my-json-valid|djv|@cfworker/json-schema|jsonschema/=t:100,69.2,51.5,13.1,5.1,1.2)](https://github.com/ebdrup/json-schema-benchmark/blob/master/README.md#performance) + +## Features + +- Ajv implements JSON Schema [draft-06/07/2019-09/2020-12](http://json-schema.org/) standards (draft-04 is supported in v6): + - all validation keywords (see [JSON Schema validation keywords](https://ajv.js.org/json-schema.html)) + - [OpenAPI](https://github.com/OAI/OpenAPI-Specification/blob/master/versions/3.0.3.md) extensions: + - NEW: keyword [discriminator](https://ajv.js.org/json-schema.html#discriminator). + - keyword [nullable](https://ajv.js.org/json-schema.html#nullable). + - full support of remote references (remote schemas have to be added with `addSchema` or compiled to be available) + - support of recursive references between schemas + - correct string lengths for strings with unicode pairs + - JSON Schema [formats](https://ajv.js.org/guide/formats.html) (with [ajv-formats](https://github.com/ajv-validator/ajv-formats) plugin). + - [validates schemas against meta-schema](https://ajv.js.org/api.html#api-validateschema) +- NEW: supports [JSON Type Definition](https://datatracker.ietf.org/doc/rfc8927/): + - all keywords (see [JSON Type Definition schema forms](https://ajv.js.org/json-type-definition.html)) + - meta-schema for JTD schemas + - "union" keyword and user-defined keywords (can be used inside "metadata" member of the schema) +- supports [browsers](https://ajv.js.org/guide/environments.html#browsers) and Node.js 10.x - current +- [asynchronous loading](https://ajv.js.org/guide/managing-schemas.html#asynchronous-schema-loading) of referenced schemas during compilation +- "All errors" validation mode with [option allErrors](https://ajv.js.org/options.html#allerrors) +- [error messages with parameters](https://ajv.js.org/api.html#validation-errors) describing error reasons to allow error message generation +- i18n error messages support with [ajv-i18n](https://github.com/ajv-validator/ajv-i18n) package +- [removing-additional-properties](https://ajv.js.org/guide/modifying-data.html#removing-additional-properties) +- [assigning defaults](https://ajv.js.org/guide/modifying-data.html#assigning-defaults) to missing properties and items +- [coercing data](https://ajv.js.org/guide/modifying-data.html#coercing-data-types) to the types specified in `type` keywords +- [user-defined keywords](https://ajv.js.org/guide/user-keywords.html) +- additional extension keywords with [ajv-keywords](https://github.com/ajv-validator/ajv-keywords) package +- [\$data reference](https://ajv.js.org/guide/combining-schemas.html#data-reference) to use values from the validated data as values for the schema keywords +- [asynchronous validation](https://ajv.js.org/guide/async-validation.html) of user-defined formats and keywords + +## Install + +To install version 8: + +``` +npm install ajv +``` + +## Getting started + +Try it in the Node.js REPL: https://runkit.com/npm/ajv + +In JavaScript: + +```javascript +// or ESM/TypeScript import +import Ajv from "ajv" +// Node.js require: +const Ajv = require("ajv") + +const ajv = new Ajv() // options can be passed, e.g. {allErrors: true} + +const schema = { + type: "object", + properties: { + foo: {type: "integer"}, + bar: {type: "string"}, + }, + required: ["foo"], + additionalProperties: false, +} + +const data = { + foo: 1, + bar: "abc", +} + +const validate = ajv.compile(schema) +const valid = validate(data) +if (!valid) console.log(validate.errors) +``` + +Learn how to use Ajv and see more examples in the [Guide: getting started](https://ajv.js.org/guide/getting-started.html) + +## Changes history + +See [https://github.com/ajv-validator/ajv/releases](https://github.com/ajv-validator/ajv/releases) + +**Please note**: [Changes in version 8.0.0](https://github.com/ajv-validator/ajv/releases/tag/v8.0.0) + +[Version 7.0.0](https://github.com/ajv-validator/ajv/releases/tag/v7.0.0) + +[Version 6.0.0](https://github.com/ajv-validator/ajv/releases/tag/v6.0.0). + +## Code of conduct + +Please review and follow the [Code of conduct](./CODE_OF_CONDUCT.md). + +Please report any unacceptable behaviour to ajv.validator@gmail.com - it will be reviewed by the project team. + +## Security contact + +To report a security vulnerability, please use the +[Tidelift security contact](https://tidelift.com/security). +Tidelift will coordinate the fix and disclosure. Please do NOT report security vulnerabilities via GitHub issues. + +## Open-source software support + +Ajv is a part of [Tidelift subscription](https://tidelift.com/subscription/pkg/npm-ajv?utm_source=npm-ajv&utm_medium=referral&utm_campaign=readme) - it provides a centralised support to open-source software users, in addition to the support provided by software maintainers. + +## License + +[MIT](./LICENSE) diff --git a/node_modules/ajv/package.json b/node_modules/ajv/package.json new file mode 100644 index 00000000..17df7b14 --- /dev/null +++ b/node_modules/ajv/package.json @@ -0,0 +1,126 @@ +{ + "name": "ajv", + "version": "8.17.1", + "description": "Another JSON Schema Validator", + "main": "dist/ajv.js", + "types": "dist/ajv.d.ts", + "files": [ + "lib/", + "dist/", + ".runkit_example.js" + ], + "scripts": { + "eslint": "eslint \"lib/**/*.ts\" \"spec/**/*.*s\" --ignore-pattern spec/JSON-Schema-Test-Suite", + "prettier:write": "prettier --write \"./**/*.{json,yaml,js,ts}\"", + "prettier:check": "prettier --list-different \"./**/*.{json,yaml,js,ts}\"", + "test-spec": "cross-env TS_NODE_PROJECT=spec/tsconfig.json mocha -r ts-node/register \"spec/**/*.spec.{ts,js}\" -R dot", + "test-codegen": "nyc cross-env TS_NODE_PROJECT=spec/tsconfig.json mocha -r ts-node/register 'spec/codegen.spec.ts' -R spec", + "test-debug": "npm run test-spec -- --inspect-brk", + "test-cov": "nyc npm run test-spec", + "rollup": "rm -rf bundle && rollup -c", + "bundle": "rm -rf bundle && node ./scripts/bundle.js ajv ajv7 ajv7 && node ./scripts/bundle.js 2019 ajv2019 ajv2019 && node ./scripts/bundle.js 2020 ajv2020 ajv2020 && node ./scripts/bundle.js jtd ajvJTD ajvJTD", + "build": "rm -rf dist && tsc && cp -r lib/refs dist && rm dist/refs/json-schema-2019-09/index.ts && rm dist/refs/json-schema-2020-12/index.ts && rm dist/refs/jtd-schema.ts", + "json-tests": "rm -rf spec/_json/*.js && node scripts/jsontests", + "test-karma": "karma start", + "test-browser": "rm -rf .browser && npm run bundle && scripts/prepare-tests && karma start", + "test-all": "npm run test-cov && if-node-version 12 npm run test-browser", + "test": "npm run json-tests && npm run prettier:check && npm run eslint && npm link && npm link --legacy-peer-deps ajv && npm run test-cov", + "test-ci": "AJV_FULL_TEST=true npm test", + "prepublish": "npm run build", + "benchmark": "npm i && npm run build && npm link && cd ./benchmark && npm link --legacy-peer-deps ajv && npm i && node ./jtd", + "docs:dev": "./scripts/prepare-site && vuepress dev docs", + "docs:build": "./scripts/prepare-site && vuepress build docs" + }, + "nyc": { + "exclude": [ + "**/spec/**", + "node_modules" + ], + "reporter": [ + "lcov", + "text-summary" + ] + }, + "repository": "ajv-validator/ajv", + "keywords": [ + "JSON", + "schema", + "validator", + "validation", + "jsonschema", + "json-schema", + "json-schema-validator", + "json-schema-validation" + ], + "author": "Evgeny Poberezkin", + "license": "MIT", + "bugs": "https://github.com/ajv-validator/ajv/issues", + "homepage": "https://ajv.js.org", + "runkitExampleFilename": ".runkit_example.js", + "dependencies": { + "fast-deep-equal": "^3.1.3", + "fast-uri": "^3.0.1", + "json-schema-traverse": "^1.0.0", + "require-from-string": "^2.0.2" + }, + "devDependencies": { + "@ajv-validator/config": "^0.5.0", + "@rollup/plugin-commonjs": "^25.0.7", + "@rollup/plugin-json": "^6.1.0", + "@rollup/plugin-node-resolve": "^15.2.3", + "@rollup/plugin-typescript": "^11.1.6", + "@types/chai": "^4.3.11", + "@types/mocha": "^10.0.6", + "@types/node": "^20.11.30", + "@types/require-from-string": "^1.2.3", + "@typescript-eslint/eslint-plugin": "^7.3.1", + "@typescript-eslint/parser": "^7.3.1", + "ajv-formats": "^3.0.1", + "browserify": "^17.0.0", + "chai": "^4.4.1", + "cross-env": "^7.0.3", + "dayjs": "^1.11.10", + "dayjs-plugin-utc": "^0.1.2", + "eslint": "^8.57.0", + "eslint-config-prettier": "^9.1.0", + "glob": "^10.3.10", + "husky": "^9.0.11", + "if-node-version": "^1.1.1", + "jimp": "^0.22.10", + "js-beautify": "^1.15.1", + "json-schema-test": "^2.0.0", + "karma": "^6.4.2", + "karma-chrome-launcher": "^3.2.0", + "karma-mocha": "^2.0.1", + "lint-staged": "^15.2.2", + "mocha": "^10.3.0", + "module-from-string": "^3.3.0", + "node-fetch": "^3.3.2", + "nyc": "^15.1.0", + "prettier": "3.0.3", + "re2": "^1.20.9", + "rollup": "^2.79.1", + "rollup-plugin-terser": "^7.0.2", + "ts-node": "^10.9.2", + "tsify": "^5.0.4", + "typescript": "5.3.3", + "uri-js": "^4.4.1" + }, + "collective": { + "type": "opencollective", + "url": "https://opencollective.com/ajv" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + }, + "prettier": "@ajv-validator/config/prettierrc.json", + "husky": { + "hooks": { + "pre-commit": "lint-staged && npm test" + } + }, + "lint-staged": { + "*.{json,yaml,js,ts}": "prettier --write" + } +} diff --git a/node_modules/ansi-regex/index.d.ts b/node_modules/ansi-regex/index.d.ts new file mode 100644 index 00000000..2dbf6af2 --- /dev/null +++ b/node_modules/ansi-regex/index.d.ts @@ -0,0 +1,37 @@ +declare namespace ansiRegex { + interface Options { + /** + Match only the first ANSI escape. + + @default false + */ + onlyFirst: boolean; + } +} + +/** +Regular expression for matching ANSI escape codes. + +@example +``` +import ansiRegex = require('ansi-regex'); + +ansiRegex().test('\u001B[4mcake\u001B[0m'); +//=> true + +ansiRegex().test('cake'); +//=> false + +'\u001B[4mcake\u001B[0m'.match(ansiRegex()); +//=> ['\u001B[4m', '\u001B[0m'] + +'\u001B[4mcake\u001B[0m'.match(ansiRegex({onlyFirst: true})); +//=> ['\u001B[4m'] + +'\u001B]8;;https://github.com\u0007click\u001B]8;;\u0007'.match(ansiRegex()); +//=> ['\u001B]8;;https://github.com\u0007', '\u001B]8;;\u0007'] +``` +*/ +declare function ansiRegex(options?: ansiRegex.Options): RegExp; + +export = ansiRegex; diff --git a/node_modules/ansi-regex/index.js b/node_modules/ansi-regex/index.js new file mode 100644 index 00000000..616ff837 --- /dev/null +++ b/node_modules/ansi-regex/index.js @@ -0,0 +1,10 @@ +'use strict'; + +module.exports = ({onlyFirst = false} = {}) => { + const pattern = [ + '[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?\\u0007)', + '(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-ntqry=><~]))' + ].join('|'); + + return new RegExp(pattern, onlyFirst ? undefined : 'g'); +}; diff --git a/node_modules/ansi-regex/license b/node_modules/ansi-regex/license new file mode 100644 index 00000000..e7af2f77 --- /dev/null +++ b/node_modules/ansi-regex/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/node_modules/ansi-regex/package.json b/node_modules/ansi-regex/package.json new file mode 100644 index 00000000..017f5311 --- /dev/null +++ b/node_modules/ansi-regex/package.json @@ -0,0 +1,55 @@ +{ + "name": "ansi-regex", + "version": "5.0.1", + "description": "Regular expression for matching ANSI escape codes", + "license": "MIT", + "repository": "chalk/ansi-regex", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "sindresorhus.com" + }, + "engines": { + "node": ">=8" + }, + "scripts": { + "test": "xo && ava && tsd", + "view-supported": "node fixtures/view-codes.js" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "keywords": [ + "ansi", + "styles", + "color", + "colour", + "colors", + "terminal", + "console", + "cli", + "string", + "tty", + "escape", + "formatting", + "rgb", + "256", + "shell", + "xterm", + "command-line", + "text", + "regex", + "regexp", + "re", + "match", + "test", + "find", + "pattern" + ], + "devDependencies": { + "ava": "^2.4.0", + "tsd": "^0.9.0", + "xo": "^0.25.3" + } +} diff --git a/node_modules/ansi-regex/readme.md b/node_modules/ansi-regex/readme.md new file mode 100644 index 00000000..4d848bc3 --- /dev/null +++ b/node_modules/ansi-regex/readme.md @@ -0,0 +1,78 @@ +# ansi-regex + +> Regular expression for matching [ANSI escape codes](https://en.wikipedia.org/wiki/ANSI_escape_code) + + +## Install + +``` +$ npm install ansi-regex +``` + + +## Usage + +```js +const ansiRegex = require('ansi-regex'); + +ansiRegex().test('\u001B[4mcake\u001B[0m'); +//=> true + +ansiRegex().test('cake'); +//=> false + +'\u001B[4mcake\u001B[0m'.match(ansiRegex()); +//=> ['\u001B[4m', '\u001B[0m'] + +'\u001B[4mcake\u001B[0m'.match(ansiRegex({onlyFirst: true})); +//=> ['\u001B[4m'] + +'\u001B]8;;https://github.com\u0007click\u001B]8;;\u0007'.match(ansiRegex()); +//=> ['\u001B]8;;https://github.com\u0007', '\u001B]8;;\u0007'] +``` + + +## API + +### ansiRegex(options?) + +Returns a regex for matching ANSI escape codes. + +#### options + +Type: `object` + +##### onlyFirst + +Type: `boolean`
+Default: `false` *(Matches any ANSI escape codes in a string)* + +Match only the first ANSI escape. + + +## FAQ + +### Why do you test for codes not in the ECMA 48 standard? + +Some of the codes we run as a test are codes that we acquired finding various lists of non-standard or manufacturer specific codes. We test for both standard and non-standard codes, as most of them follow the same or similar format and can be safely matched in strings without the risk of removing actual string content. There are a few non-standard control codes that do not follow the traditional format (i.e. they end in numbers) thus forcing us to exclude them from the test because we cannot reliably match them. + +On the historical side, those ECMA standards were established in the early 90's whereas the VT100, for example, was designed in the mid/late 70's. At that point in time, control codes were still pretty ungoverned and engineers used them for a multitude of things, namely to activate hardware ports that may have been proprietary. Somewhere else you see a similar 'anarchy' of codes is in the x86 architecture for processors; there are a ton of "interrupts" that can mean different things on certain brands of processors, most of which have been phased out. + + +## Maintainers + +- [Sindre Sorhus](https://github.com/sindresorhus) +- [Josh Junon](https://github.com/qix-) + + +--- + +
+ + Get professional support for this package with a Tidelift subscription + +
+ + Tidelift helps make open source sustainable for maintainers while giving companies
assurances about security, maintenance, and licensing for their dependencies. +
+
diff --git a/node_modules/ansi-styles/index.d.ts b/node_modules/ansi-styles/index.d.ts new file mode 100644 index 00000000..44a907e5 --- /dev/null +++ b/node_modules/ansi-styles/index.d.ts @@ -0,0 +1,345 @@ +declare type CSSColor = + | 'aliceblue' + | 'antiquewhite' + | 'aqua' + | 'aquamarine' + | 'azure' + | 'beige' + | 'bisque' + | 'black' + | 'blanchedalmond' + | 'blue' + | 'blueviolet' + | 'brown' + | 'burlywood' + | 'cadetblue' + | 'chartreuse' + | 'chocolate' + | 'coral' + | 'cornflowerblue' + | 'cornsilk' + | 'crimson' + | 'cyan' + | 'darkblue' + | 'darkcyan' + | 'darkgoldenrod' + | 'darkgray' + | 'darkgreen' + | 'darkgrey' + | 'darkkhaki' + | 'darkmagenta' + | 'darkolivegreen' + | 'darkorange' + | 'darkorchid' + | 'darkred' + | 'darksalmon' + | 'darkseagreen' + | 'darkslateblue' + | 'darkslategray' + | 'darkslategrey' + | 'darkturquoise' + | 'darkviolet' + | 'deeppink' + | 'deepskyblue' + | 'dimgray' + | 'dimgrey' + | 'dodgerblue' + | 'firebrick' + | 'floralwhite' + | 'forestgreen' + | 'fuchsia' + | 'gainsboro' + | 'ghostwhite' + | 'gold' + | 'goldenrod' + | 'gray' + | 'green' + | 'greenyellow' + | 'grey' + | 'honeydew' + | 'hotpink' + | 'indianred' + | 'indigo' + | 'ivory' + | 'khaki' + | 'lavender' + | 'lavenderblush' + | 'lawngreen' + | 'lemonchiffon' + | 'lightblue' + | 'lightcoral' + | 'lightcyan' + | 'lightgoldenrodyellow' + | 'lightgray' + | 'lightgreen' + | 'lightgrey' + | 'lightpink' + | 'lightsalmon' + | 'lightseagreen' + | 'lightskyblue' + | 'lightslategray' + | 'lightslategrey' + | 'lightsteelblue' + | 'lightyellow' + | 'lime' + | 'limegreen' + | 'linen' + | 'magenta' + | 'maroon' + | 'mediumaquamarine' + | 'mediumblue' + | 'mediumorchid' + | 'mediumpurple' + | 'mediumseagreen' + | 'mediumslateblue' + | 'mediumspringgreen' + | 'mediumturquoise' + | 'mediumvioletred' + | 'midnightblue' + | 'mintcream' + | 'mistyrose' + | 'moccasin' + | 'navajowhite' + | 'navy' + | 'oldlace' + | 'olive' + | 'olivedrab' + | 'orange' + | 'orangered' + | 'orchid' + | 'palegoldenrod' + | 'palegreen' + | 'paleturquoise' + | 'palevioletred' + | 'papayawhip' + | 'peachpuff' + | 'peru' + | 'pink' + | 'plum' + | 'powderblue' + | 'purple' + | 'rebeccapurple' + | 'red' + | 'rosybrown' + | 'royalblue' + | 'saddlebrown' + | 'salmon' + | 'sandybrown' + | 'seagreen' + | 'seashell' + | 'sienna' + | 'silver' + | 'skyblue' + | 'slateblue' + | 'slategray' + | 'slategrey' + | 'snow' + | 'springgreen' + | 'steelblue' + | 'tan' + | 'teal' + | 'thistle' + | 'tomato' + | 'turquoise' + | 'violet' + | 'wheat' + | 'white' + | 'whitesmoke' + | 'yellow' + | 'yellowgreen'; + +declare namespace ansiStyles { + interface ColorConvert { + /** + The RGB color space. + + @param red - (`0`-`255`) + @param green - (`0`-`255`) + @param blue - (`0`-`255`) + */ + rgb(red: number, green: number, blue: number): string; + + /** + The RGB HEX color space. + + @param hex - A hexadecimal string containing RGB data. + */ + hex(hex: string): string; + + /** + @param keyword - A CSS color name. + */ + keyword(keyword: CSSColor): string; + + /** + The HSL color space. + + @param hue - (`0`-`360`) + @param saturation - (`0`-`100`) + @param lightness - (`0`-`100`) + */ + hsl(hue: number, saturation: number, lightness: number): string; + + /** + The HSV color space. + + @param hue - (`0`-`360`) + @param saturation - (`0`-`100`) + @param value - (`0`-`100`) + */ + hsv(hue: number, saturation: number, value: number): string; + + /** + The HSV color space. + + @param hue - (`0`-`360`) + @param whiteness - (`0`-`100`) + @param blackness - (`0`-`100`) + */ + hwb(hue: number, whiteness: number, blackness: number): string; + + /** + Use a [4-bit unsigned number](https://en.wikipedia.org/wiki/ANSI_escape_code#3/4-bit) to set text color. + */ + ansi(ansi: number): string; + + /** + Use an [8-bit unsigned number](https://en.wikipedia.org/wiki/ANSI_escape_code#8-bit) to set text color. + */ + ansi256(ansi: number): string; + } + + interface CSPair { + /** + The ANSI terminal control sequence for starting this style. + */ + readonly open: string; + + /** + The ANSI terminal control sequence for ending this style. + */ + readonly close: string; + } + + interface ColorBase { + readonly ansi: ColorConvert; + readonly ansi256: ColorConvert; + readonly ansi16m: ColorConvert; + + /** + The ANSI terminal control sequence for ending this color. + */ + readonly close: string; + } + + interface Modifier { + /** + Resets the current color chain. + */ + readonly reset: CSPair; + + /** + Make text bold. + */ + readonly bold: CSPair; + + /** + Emitting only a small amount of light. + */ + readonly dim: CSPair; + + /** + Make text italic. (Not widely supported) + */ + readonly italic: CSPair; + + /** + Make text underline. (Not widely supported) + */ + readonly underline: CSPair; + + /** + Inverse background and foreground colors. + */ + readonly inverse: CSPair; + + /** + Prints the text, but makes it invisible. + */ + readonly hidden: CSPair; + + /** + Puts a horizontal line through the center of the text. (Not widely supported) + */ + readonly strikethrough: CSPair; + } + + interface ForegroundColor { + readonly black: CSPair; + readonly red: CSPair; + readonly green: CSPair; + readonly yellow: CSPair; + readonly blue: CSPair; + readonly cyan: CSPair; + readonly magenta: CSPair; + readonly white: CSPair; + + /** + Alias for `blackBright`. + */ + readonly gray: CSPair; + + /** + Alias for `blackBright`. + */ + readonly grey: CSPair; + + readonly blackBright: CSPair; + readonly redBright: CSPair; + readonly greenBright: CSPair; + readonly yellowBright: CSPair; + readonly blueBright: CSPair; + readonly cyanBright: CSPair; + readonly magentaBright: CSPair; + readonly whiteBright: CSPair; + } + + interface BackgroundColor { + readonly bgBlack: CSPair; + readonly bgRed: CSPair; + readonly bgGreen: CSPair; + readonly bgYellow: CSPair; + readonly bgBlue: CSPair; + readonly bgCyan: CSPair; + readonly bgMagenta: CSPair; + readonly bgWhite: CSPair; + + /** + Alias for `bgBlackBright`. + */ + readonly bgGray: CSPair; + + /** + Alias for `bgBlackBright`. + */ + readonly bgGrey: CSPair; + + readonly bgBlackBright: CSPair; + readonly bgRedBright: CSPair; + readonly bgGreenBright: CSPair; + readonly bgYellowBright: CSPair; + readonly bgBlueBright: CSPair; + readonly bgCyanBright: CSPair; + readonly bgMagentaBright: CSPair; + readonly bgWhiteBright: CSPair; + } +} + +declare const ansiStyles: { + readonly modifier: ansiStyles.Modifier; + readonly color: ansiStyles.ForegroundColor & ansiStyles.ColorBase; + readonly bgColor: ansiStyles.BackgroundColor & ansiStyles.ColorBase; + readonly codes: ReadonlyMap; +} & ansiStyles.BackgroundColor & ansiStyles.ForegroundColor & ansiStyles.Modifier; + +export = ansiStyles; diff --git a/node_modules/ansi-styles/index.js b/node_modules/ansi-styles/index.js new file mode 100644 index 00000000..5d82581a --- /dev/null +++ b/node_modules/ansi-styles/index.js @@ -0,0 +1,163 @@ +'use strict'; + +const wrapAnsi16 = (fn, offset) => (...args) => { + const code = fn(...args); + return `\u001B[${code + offset}m`; +}; + +const wrapAnsi256 = (fn, offset) => (...args) => { + const code = fn(...args); + return `\u001B[${38 + offset};5;${code}m`; +}; + +const wrapAnsi16m = (fn, offset) => (...args) => { + const rgb = fn(...args); + return `\u001B[${38 + offset};2;${rgb[0]};${rgb[1]};${rgb[2]}m`; +}; + +const ansi2ansi = n => n; +const rgb2rgb = (r, g, b) => [r, g, b]; + +const setLazyProperty = (object, property, get) => { + Object.defineProperty(object, property, { + get: () => { + const value = get(); + + Object.defineProperty(object, property, { + value, + enumerable: true, + configurable: true + }); + + return value; + }, + enumerable: true, + configurable: true + }); +}; + +/** @type {typeof import('color-convert')} */ +let colorConvert; +const makeDynamicStyles = (wrap, targetSpace, identity, isBackground) => { + if (colorConvert === undefined) { + colorConvert = require('color-convert'); + } + + const offset = isBackground ? 10 : 0; + const styles = {}; + + for (const [sourceSpace, suite] of Object.entries(colorConvert)) { + const name = sourceSpace === 'ansi16' ? 'ansi' : sourceSpace; + if (sourceSpace === targetSpace) { + styles[name] = wrap(identity, offset); + } else if (typeof suite === 'object') { + styles[name] = wrap(suite[targetSpace], offset); + } + } + + return styles; +}; + +function assembleStyles() { + const codes = new Map(); + const styles = { + modifier: { + reset: [0, 0], + // 21 isn't widely supported and 22 does the same thing + bold: [1, 22], + dim: [2, 22], + italic: [3, 23], + underline: [4, 24], + inverse: [7, 27], + hidden: [8, 28], + strikethrough: [9, 29] + }, + color: { + black: [30, 39], + red: [31, 39], + green: [32, 39], + yellow: [33, 39], + blue: [34, 39], + magenta: [35, 39], + cyan: [36, 39], + white: [37, 39], + + // Bright color + blackBright: [90, 39], + redBright: [91, 39], + greenBright: [92, 39], + yellowBright: [93, 39], + blueBright: [94, 39], + magentaBright: [95, 39], + cyanBright: [96, 39], + whiteBright: [97, 39] + }, + bgColor: { + bgBlack: [40, 49], + bgRed: [41, 49], + bgGreen: [42, 49], + bgYellow: [43, 49], + bgBlue: [44, 49], + bgMagenta: [45, 49], + bgCyan: [46, 49], + bgWhite: [47, 49], + + // Bright color + bgBlackBright: [100, 49], + bgRedBright: [101, 49], + bgGreenBright: [102, 49], + bgYellowBright: [103, 49], + bgBlueBright: [104, 49], + bgMagentaBright: [105, 49], + bgCyanBright: [106, 49], + bgWhiteBright: [107, 49] + } + }; + + // Alias bright black as gray (and grey) + styles.color.gray = styles.color.blackBright; + styles.bgColor.bgGray = styles.bgColor.bgBlackBright; + styles.color.grey = styles.color.blackBright; + styles.bgColor.bgGrey = styles.bgColor.bgBlackBright; + + for (const [groupName, group] of Object.entries(styles)) { + for (const [styleName, style] of Object.entries(group)) { + styles[styleName] = { + open: `\u001B[${style[0]}m`, + close: `\u001B[${style[1]}m` + }; + + group[styleName] = styles[styleName]; + + codes.set(style[0], style[1]); + } + + Object.defineProperty(styles, groupName, { + value: group, + enumerable: false + }); + } + + Object.defineProperty(styles, 'codes', { + value: codes, + enumerable: false + }); + + styles.color.close = '\u001B[39m'; + styles.bgColor.close = '\u001B[49m'; + + setLazyProperty(styles.color, 'ansi', () => makeDynamicStyles(wrapAnsi16, 'ansi16', ansi2ansi, false)); + setLazyProperty(styles.color, 'ansi256', () => makeDynamicStyles(wrapAnsi256, 'ansi256', ansi2ansi, false)); + setLazyProperty(styles.color, 'ansi16m', () => makeDynamicStyles(wrapAnsi16m, 'rgb', rgb2rgb, false)); + setLazyProperty(styles.bgColor, 'ansi', () => makeDynamicStyles(wrapAnsi16, 'ansi16', ansi2ansi, true)); + setLazyProperty(styles.bgColor, 'ansi256', () => makeDynamicStyles(wrapAnsi256, 'ansi256', ansi2ansi, true)); + setLazyProperty(styles.bgColor, 'ansi16m', () => makeDynamicStyles(wrapAnsi16m, 'rgb', rgb2rgb, true)); + + return styles; +} + +// Make the export immutable +Object.defineProperty(module, 'exports', { + enumerable: true, + get: assembleStyles +}); diff --git a/node_modules/ansi-styles/license b/node_modules/ansi-styles/license new file mode 100644 index 00000000..e7af2f77 --- /dev/null +++ b/node_modules/ansi-styles/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/node_modules/ansi-styles/package.json b/node_modules/ansi-styles/package.json new file mode 100644 index 00000000..75393284 --- /dev/null +++ b/node_modules/ansi-styles/package.json @@ -0,0 +1,56 @@ +{ + "name": "ansi-styles", + "version": "4.3.0", + "description": "ANSI escape codes for styling strings in the terminal", + "license": "MIT", + "repository": "chalk/ansi-styles", + "funding": "https://github.com/chalk/ansi-styles?sponsor=1", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "sindresorhus.com" + }, + "engines": { + "node": ">=8" + }, + "scripts": { + "test": "xo && ava && tsd", + "screenshot": "svg-term --command='node screenshot' --out=screenshot.svg --padding=3 --width=55 --height=3 --at=1000 --no-cursor" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "keywords": [ + "ansi", + "styles", + "color", + "colour", + "colors", + "terminal", + "console", + "cli", + "string", + "tty", + "escape", + "formatting", + "rgb", + "256", + "shell", + "xterm", + "log", + "logging", + "command-line", + "text" + ], + "dependencies": { + "color-convert": "^2.0.1" + }, + "devDependencies": { + "@types/color-convert": "^1.9.0", + "ava": "^2.3.0", + "svg-term-cli": "^2.1.1", + "tsd": "^0.11.0", + "xo": "^0.25.3" + } +} diff --git a/node_modules/ansi-styles/readme.md b/node_modules/ansi-styles/readme.md new file mode 100644 index 00000000..24883de8 --- /dev/null +++ b/node_modules/ansi-styles/readme.md @@ -0,0 +1,152 @@ +# ansi-styles [![Build Status](https://travis-ci.org/chalk/ansi-styles.svg?branch=master)](https://travis-ci.org/chalk/ansi-styles) + +> [ANSI escape codes](https://en.wikipedia.org/wiki/ANSI_escape_code#Colors_and_Styles) for styling strings in the terminal + +You probably want the higher-level [chalk](https://github.com/chalk/chalk) module for styling your strings. + + + +## Install + +``` +$ npm install ansi-styles +``` + +## Usage + +```js +const style = require('ansi-styles'); + +console.log(`${style.green.open}Hello world!${style.green.close}`); + + +// Color conversion between 16/256/truecolor +// NOTE: If conversion goes to 16 colors or 256 colors, the original color +// may be degraded to fit that color palette. This means terminals +// that do not support 16 million colors will best-match the +// original color. +console.log(style.bgColor.ansi.hsl(120, 80, 72) + 'Hello world!' + style.bgColor.close); +console.log(style.color.ansi256.rgb(199, 20, 250) + 'Hello world!' + style.color.close); +console.log(style.color.ansi16m.hex('#abcdef') + 'Hello world!' + style.color.close); +``` + +## API + +Each style has an `open` and `close` property. + +## Styles + +### Modifiers + +- `reset` +- `bold` +- `dim` +- `italic` *(Not widely supported)* +- `underline` +- `inverse` +- `hidden` +- `strikethrough` *(Not widely supported)* + +### Colors + +- `black` +- `red` +- `green` +- `yellow` +- `blue` +- `magenta` +- `cyan` +- `white` +- `blackBright` (alias: `gray`, `grey`) +- `redBright` +- `greenBright` +- `yellowBright` +- `blueBright` +- `magentaBright` +- `cyanBright` +- `whiteBright` + +### Background colors + +- `bgBlack` +- `bgRed` +- `bgGreen` +- `bgYellow` +- `bgBlue` +- `bgMagenta` +- `bgCyan` +- `bgWhite` +- `bgBlackBright` (alias: `bgGray`, `bgGrey`) +- `bgRedBright` +- `bgGreenBright` +- `bgYellowBright` +- `bgBlueBright` +- `bgMagentaBright` +- `bgCyanBright` +- `bgWhiteBright` + +## Advanced usage + +By default, you get a map of styles, but the styles are also available as groups. They are non-enumerable so they don't show up unless you access them explicitly. This makes it easier to expose only a subset in a higher-level module. + +- `style.modifier` +- `style.color` +- `style.bgColor` + +###### Example + +```js +console.log(style.color.green.open); +``` + +Raw escape codes (i.e. without the CSI escape prefix `\u001B[` and render mode postfix `m`) are available under `style.codes`, which returns a `Map` with the open codes as keys and close codes as values. + +###### Example + +```js +console.log(style.codes.get(36)); +//=> 39 +``` + +## [256 / 16 million (TrueColor) support](https://gist.github.com/XVilka/8346728) + +`ansi-styles` uses the [`color-convert`](https://github.com/Qix-/color-convert) package to allow for converting between various colors and ANSI escapes, with support for 256 and 16 million colors. + +The following color spaces from `color-convert` are supported: + +- `rgb` +- `hex` +- `keyword` +- `hsl` +- `hsv` +- `hwb` +- `ansi` +- `ansi256` + +To use these, call the associated conversion function with the intended output, for example: + +```js +style.color.ansi.rgb(100, 200, 15); // RGB to 16 color ansi foreground code +style.bgColor.ansi.rgb(100, 200, 15); // RGB to 16 color ansi background code + +style.color.ansi256.hsl(120, 100, 60); // HSL to 256 color ansi foreground code +style.bgColor.ansi256.hsl(120, 100, 60); // HSL to 256 color ansi foreground code + +style.color.ansi16m.hex('#C0FFEE'); // Hex (RGB) to 16 million color foreground code +style.bgColor.ansi16m.hex('#C0FFEE'); // Hex (RGB) to 16 million color background code +``` + +## Related + +- [ansi-escapes](https://github.com/sindresorhus/ansi-escapes) - ANSI escape codes for manipulating the terminal + +## Maintainers + +- [Sindre Sorhus](https://github.com/sindresorhus) +- [Josh Junon](https://github.com/qix-) + +## For enterprise + +Available as part of the Tidelift Subscription. + +The maintainers of `ansi-styles` and thousands of other packages are working with Tidelift to deliver commercial support and maintenance for the open source dependencies you use to build your applications. Save time, reduce risk, and improve code health, while paying the maintainers of the exact dependencies you use. [Learn more.](https://tidelift.com/subscription/pkg/npm-ansi-styles?utm_source=npm-ansi-styles&utm_medium=referral&utm_campaign=enterprise&utm_term=repo) diff --git a/node_modules/argparse/CHANGELOG.md b/node_modules/argparse/CHANGELOG.md new file mode 100644 index 00000000..dc39ed69 --- /dev/null +++ b/node_modules/argparse/CHANGELOG.md @@ -0,0 +1,216 @@ +# Changelog + +All notable changes to this project will be documented in this file. + +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), +and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). + + +## [2.0.1] - 2020-08-29 +### Fixed +- Fix issue with `process.argv` when used with interpreters (`coffee`, `ts-node`, etc.), #150. + + +## [2.0.0] - 2020-08-14 +### Changed +- Full rewrite. Now port from python 3.9.0 & more precise following. + See [doc](./doc) for difference and migration info. +- node.js 10+ required +- Removed most of local docs in favour of original ones. + + +## [1.0.10] - 2018-02-15 +### Fixed +- Use .concat instead of + for arrays, #122. + + +## [1.0.9] - 2016-09-29 +### Changed +- Rerelease after 1.0.8 - deps cleanup. + + +## [1.0.8] - 2016-09-29 +### Changed +- Maintenance (deps bump, fix node 6.5+ tests, coverage report). + + +## [1.0.7] - 2016-03-17 +### Changed +- Teach `addArgument` to accept string arg names. #97, @tomxtobin. + + +## [1.0.6] - 2016-02-06 +### Changed +- Maintenance: moved to eslint & updated CS. + + +## [1.0.5] - 2016-02-05 +### Changed +- Removed lodash dependency to significantly reduce install size. + Thanks to @mourner. + + +## [1.0.4] - 2016-01-17 +### Changed +- Maintenance: lodash update to 4.0.0. + + +## [1.0.3] - 2015-10-27 +### Fixed +- Fix parse `=` in args: `--examplepath="C:\myfolder\env=x64"`. #84, @CatWithApple. + + +## [1.0.2] - 2015-03-22 +### Changed +- Relaxed lodash version dependency. + + +## [1.0.1] - 2015-02-20 +### Changed +- Changed dependencies to be compatible with ancient nodejs. + + +## [1.0.0] - 2015-02-19 +### Changed +- Maintenance release. +- Replaced `underscore` with `lodash`. +- Bumped version to 1.0.0 to better reflect semver meaning. +- HISTORY.md -> CHANGELOG.md + + +## [0.1.16] - 2013-12-01 +### Changed +- Maintenance release. Updated dependencies and docs. + + +## [0.1.15] - 2013-05-13 +### Fixed +- Fixed #55, @trebor89 + + +## [0.1.14] - 2013-05-12 +### Fixed +- Fixed #62, @maxtaco + + +## [0.1.13] - 2013-04-08 +### Changed +- Added `.npmignore` to reduce package size + + +## [0.1.12] - 2013-02-10 +### Fixed +- Fixed conflictHandler (#46), @hpaulj + + +## [0.1.11] - 2013-02-07 +### Added +- Added 70+ tests (ported from python), @hpaulj +- Added conflictHandler, @applepicke +- Added fromfilePrefixChar, @hpaulj + +### Fixed +- Multiple bugfixes, @hpaulj + + +## [0.1.10] - 2012-12-30 +### Added +- Added [mutual exclusion](http://docs.python.org/dev/library/argparse.html#mutual-exclusion) + support, thanks to @hpaulj + +### Fixed +- Fixed options check for `storeConst` & `appendConst` actions, thanks to @hpaulj + + +## [0.1.9] - 2012-12-27 +### Fixed +- Fixed option dest interferens with other options (issue #23), thanks to @hpaulj +- Fixed default value behavior with `*` positionals, thanks to @hpaulj +- Improve `getDefault()` behavior, thanks to @hpaulj +- Improve negative argument parsing, thanks to @hpaulj + + +## [0.1.8] - 2012-12-01 +### Fixed +- Fixed parser parents (issue #19), thanks to @hpaulj +- Fixed negative argument parse (issue #20), thanks to @hpaulj + + +## [0.1.7] - 2012-10-14 +### Fixed +- Fixed 'choices' argument parse (issue #16) +- Fixed stderr output (issue #15) + + +## [0.1.6] - 2012-09-09 +### Fixed +- Fixed check for conflict of options (thanks to @tomxtobin) + + +## [0.1.5] - 2012-09-03 +### Fixed +- Fix parser #setDefaults method (thanks to @tomxtobin) + + +## [0.1.4] - 2012-07-30 +### Fixed +- Fixed pseudo-argument support (thanks to @CGamesPlay) +- Fixed addHelp default (should be true), if not set (thanks to @benblank) + + +## [0.1.3] - 2012-06-27 +### Fixed +- Fixed formatter api name: Formatter -> HelpFormatter + + +## [0.1.2] - 2012-05-29 +### Fixed +- Removed excess whitespace in help +- Fixed error reporting, when parcer with subcommands + called with empty arguments + +### Added +- Added basic tests + + +## [0.1.1] - 2012-05-23 +### Fixed +- Fixed line wrapping in help formatter +- Added better error reporting on invalid arguments + + +## [0.1.0] - 2012-05-16 +### Added +- First release. + + +[2.0.1]: https://github.com/nodeca/argparse/compare/2.0.0...2.0.1 +[2.0.0]: https://github.com/nodeca/argparse/compare/1.0.10...2.0.0 +[1.0.10]: https://github.com/nodeca/argparse/compare/1.0.9...1.0.10 +[1.0.9]: https://github.com/nodeca/argparse/compare/1.0.8...1.0.9 +[1.0.8]: https://github.com/nodeca/argparse/compare/1.0.7...1.0.8 +[1.0.7]: https://github.com/nodeca/argparse/compare/1.0.6...1.0.7 +[1.0.6]: https://github.com/nodeca/argparse/compare/1.0.5...1.0.6 +[1.0.5]: https://github.com/nodeca/argparse/compare/1.0.4...1.0.5 +[1.0.4]: https://github.com/nodeca/argparse/compare/1.0.3...1.0.4 +[1.0.3]: https://github.com/nodeca/argparse/compare/1.0.2...1.0.3 +[1.0.2]: https://github.com/nodeca/argparse/compare/1.0.1...1.0.2 +[1.0.1]: https://github.com/nodeca/argparse/compare/1.0.0...1.0.1 +[1.0.0]: https://github.com/nodeca/argparse/compare/0.1.16...1.0.0 +[0.1.16]: https://github.com/nodeca/argparse/compare/0.1.15...0.1.16 +[0.1.15]: https://github.com/nodeca/argparse/compare/0.1.14...0.1.15 +[0.1.14]: https://github.com/nodeca/argparse/compare/0.1.13...0.1.14 +[0.1.13]: https://github.com/nodeca/argparse/compare/0.1.12...0.1.13 +[0.1.12]: https://github.com/nodeca/argparse/compare/0.1.11...0.1.12 +[0.1.11]: https://github.com/nodeca/argparse/compare/0.1.10...0.1.11 +[0.1.10]: https://github.com/nodeca/argparse/compare/0.1.9...0.1.10 +[0.1.9]: https://github.com/nodeca/argparse/compare/0.1.8...0.1.9 +[0.1.8]: https://github.com/nodeca/argparse/compare/0.1.7...0.1.8 +[0.1.7]: https://github.com/nodeca/argparse/compare/0.1.6...0.1.7 +[0.1.6]: https://github.com/nodeca/argparse/compare/0.1.5...0.1.6 +[0.1.5]: https://github.com/nodeca/argparse/compare/0.1.4...0.1.5 +[0.1.4]: https://github.com/nodeca/argparse/compare/0.1.3...0.1.4 +[0.1.3]: https://github.com/nodeca/argparse/compare/0.1.2...0.1.3 +[0.1.2]: https://github.com/nodeca/argparse/compare/0.1.1...0.1.2 +[0.1.1]: https://github.com/nodeca/argparse/compare/0.1.0...0.1.1 +[0.1.0]: https://github.com/nodeca/argparse/releases/tag/0.1.0 diff --git a/node_modules/argparse/LICENSE b/node_modules/argparse/LICENSE new file mode 100644 index 00000000..66a3ac80 --- /dev/null +++ b/node_modules/argparse/LICENSE @@ -0,0 +1,254 @@ +A. HISTORY OF THE SOFTWARE +========================== + +Python was created in the early 1990s by Guido van Rossum at Stichting +Mathematisch Centrum (CWI, see http://www.cwi.nl) in the Netherlands +as a successor of a language called ABC. Guido remains Python's +principal author, although it includes many contributions from others. + +In 1995, Guido continued his work on Python at the Corporation for +National Research Initiatives (CNRI, see http://www.cnri.reston.va.us) +in Reston, Virginia where he released several versions of the +software. + +In May 2000, Guido and the Python core development team moved to +BeOpen.com to form the BeOpen PythonLabs team. In October of the same +year, the PythonLabs team moved to Digital Creations, which became +Zope Corporation. In 2001, the Python Software Foundation (PSF, see +https://www.python.org/psf/) was formed, a non-profit organization +created specifically to own Python-related Intellectual Property. +Zope Corporation was a sponsoring member of the PSF. + +All Python releases are Open Source (see http://www.opensource.org for +the Open Source Definition). Historically, most, but not all, Python +releases have also been GPL-compatible; the table below summarizes +the various releases. + + Release Derived Year Owner GPL- + from compatible? (1) + + 0.9.0 thru 1.2 1991-1995 CWI yes + 1.3 thru 1.5.2 1.2 1995-1999 CNRI yes + 1.6 1.5.2 2000 CNRI no + 2.0 1.6 2000 BeOpen.com no + 1.6.1 1.6 2001 CNRI yes (2) + 2.1 2.0+1.6.1 2001 PSF no + 2.0.1 2.0+1.6.1 2001 PSF yes + 2.1.1 2.1+2.0.1 2001 PSF yes + 2.1.2 2.1.1 2002 PSF yes + 2.1.3 2.1.2 2002 PSF yes + 2.2 and above 2.1.1 2001-now PSF yes + +Footnotes: + +(1) GPL-compatible doesn't mean that we're distributing Python under + the GPL. All Python licenses, unlike the GPL, let you distribute + a modified version without making your changes open source. The + GPL-compatible licenses make it possible to combine Python with + other software that is released under the GPL; the others don't. + +(2) According to Richard Stallman, 1.6.1 is not GPL-compatible, + because its license has a choice of law clause. According to + CNRI, however, Stallman's lawyer has told CNRI's lawyer that 1.6.1 + is "not incompatible" with the GPL. + +Thanks to the many outside volunteers who have worked under Guido's +direction to make these releases possible. + + +B. TERMS AND CONDITIONS FOR ACCESSING OR OTHERWISE USING PYTHON +=============================================================== + +PYTHON SOFTWARE FOUNDATION LICENSE VERSION 2 +-------------------------------------------- + +1. This LICENSE AGREEMENT is between the Python Software Foundation +("PSF"), and the Individual or Organization ("Licensee") accessing and +otherwise using this software ("Python") in source or binary form and +its associated documentation. + +2. Subject to the terms and conditions of this License Agreement, PSF hereby +grants Licensee a nonexclusive, royalty-free, world-wide license to reproduce, +analyze, test, perform and/or display publicly, prepare derivative works, +distribute, and otherwise use Python alone or in any derivative version, +provided, however, that PSF's License Agreement and PSF's notice of copyright, +i.e., "Copyright (c) 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, +2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Python Software Foundation; +All Rights Reserved" are retained in Python alone or in any derivative version +prepared by Licensee. + +3. In the event Licensee prepares a derivative work that is based on +or incorporates Python or any part thereof, and wants to make +the derivative work available to others as provided herein, then +Licensee hereby agrees to include in any such work a brief summary of +the changes made to Python. + +4. PSF is making Python available to Licensee on an "AS IS" +basis. PSF MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR +IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, PSF MAKES NO AND +DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS +FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF PYTHON WILL NOT +INFRINGE ANY THIRD PARTY RIGHTS. + +5. PSF SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF PYTHON +FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS +A RESULT OF MODIFYING, DISTRIBUTING, OR OTHERWISE USING PYTHON, +OR ANY DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF. + +6. This License Agreement will automatically terminate upon a material +breach of its terms and conditions. + +7. Nothing in this License Agreement shall be deemed to create any +relationship of agency, partnership, or joint venture between PSF and +Licensee. This License Agreement does not grant permission to use PSF +trademarks or trade name in a trademark sense to endorse or promote +products or services of Licensee, or any third party. + +8. By copying, installing or otherwise using Python, Licensee +agrees to be bound by the terms and conditions of this License +Agreement. + + +BEOPEN.COM LICENSE AGREEMENT FOR PYTHON 2.0 +------------------------------------------- + +BEOPEN PYTHON OPEN SOURCE LICENSE AGREEMENT VERSION 1 + +1. This LICENSE AGREEMENT is between BeOpen.com ("BeOpen"), having an +office at 160 Saratoga Avenue, Santa Clara, CA 95051, and the +Individual or Organization ("Licensee") accessing and otherwise using +this software in source or binary form and its associated +documentation ("the Software"). + +2. Subject to the terms and conditions of this BeOpen Python License +Agreement, BeOpen hereby grants Licensee a non-exclusive, +royalty-free, world-wide license to reproduce, analyze, test, perform +and/or display publicly, prepare derivative works, distribute, and +otherwise use the Software alone or in any derivative version, +provided, however, that the BeOpen Python License is retained in the +Software, alone or in any derivative version prepared by Licensee. + +3. BeOpen is making the Software available to Licensee on an "AS IS" +basis. BEOPEN MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR +IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, BEOPEN MAKES NO AND +DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS +FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF THE SOFTWARE WILL NOT +INFRINGE ANY THIRD PARTY RIGHTS. + +4. BEOPEN SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF THE +SOFTWARE FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS +AS A RESULT OF USING, MODIFYING OR DISTRIBUTING THE SOFTWARE, OR ANY +DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF. + +5. This License Agreement will automatically terminate upon a material +breach of its terms and conditions. + +6. This License Agreement shall be governed by and interpreted in all +respects by the law of the State of California, excluding conflict of +law provisions. Nothing in this License Agreement shall be deemed to +create any relationship of agency, partnership, or joint venture +between BeOpen and Licensee. This License Agreement does not grant +permission to use BeOpen trademarks or trade names in a trademark +sense to endorse or promote products or services of Licensee, or any +third party. As an exception, the "BeOpen Python" logos available at +http://www.pythonlabs.com/logos.html may be used according to the +permissions granted on that web page. + +7. By copying, installing or otherwise using the software, Licensee +agrees to be bound by the terms and conditions of this License +Agreement. + + +CNRI LICENSE AGREEMENT FOR PYTHON 1.6.1 +--------------------------------------- + +1. This LICENSE AGREEMENT is between the Corporation for National +Research Initiatives, having an office at 1895 Preston White Drive, +Reston, VA 20191 ("CNRI"), and the Individual or Organization +("Licensee") accessing and otherwise using Python 1.6.1 software in +source or binary form and its associated documentation. + +2. Subject to the terms and conditions of this License Agreement, CNRI +hereby grants Licensee a nonexclusive, royalty-free, world-wide +license to reproduce, analyze, test, perform and/or display publicly, +prepare derivative works, distribute, and otherwise use Python 1.6.1 +alone or in any derivative version, provided, however, that CNRI's +License Agreement and CNRI's notice of copyright, i.e., "Copyright (c) +1995-2001 Corporation for National Research Initiatives; All Rights +Reserved" are retained in Python 1.6.1 alone or in any derivative +version prepared by Licensee. Alternately, in lieu of CNRI's License +Agreement, Licensee may substitute the following text (omitting the +quotes): "Python 1.6.1 is made available subject to the terms and +conditions in CNRI's License Agreement. This Agreement together with +Python 1.6.1 may be located on the Internet using the following +unique, persistent identifier (known as a handle): 1895.22/1013. This +Agreement may also be obtained from a proxy server on the Internet +using the following URL: http://hdl.handle.net/1895.22/1013". + +3. In the event Licensee prepares a derivative work that is based on +or incorporates Python 1.6.1 or any part thereof, and wants to make +the derivative work available to others as provided herein, then +Licensee hereby agrees to include in any such work a brief summary of +the changes made to Python 1.6.1. + +4. CNRI is making Python 1.6.1 available to Licensee on an "AS IS" +basis. CNRI MAKES NO REPRESENTATIONS OR WARRANTIES, EXPRESS OR +IMPLIED. BY WAY OF EXAMPLE, BUT NOT LIMITATION, CNRI MAKES NO AND +DISCLAIMS ANY REPRESENTATION OR WARRANTY OF MERCHANTABILITY OR FITNESS +FOR ANY PARTICULAR PURPOSE OR THAT THE USE OF PYTHON 1.6.1 WILL NOT +INFRINGE ANY THIRD PARTY RIGHTS. + +5. CNRI SHALL NOT BE LIABLE TO LICENSEE OR ANY OTHER USERS OF PYTHON +1.6.1 FOR ANY INCIDENTAL, SPECIAL, OR CONSEQUENTIAL DAMAGES OR LOSS AS +A RESULT OF MODIFYING, DISTRIBUTING, OR OTHERWISE USING PYTHON 1.6.1, +OR ANY DERIVATIVE THEREOF, EVEN IF ADVISED OF THE POSSIBILITY THEREOF. + +6. This License Agreement will automatically terminate upon a material +breach of its terms and conditions. + +7. This License Agreement shall be governed by the federal +intellectual property law of the United States, including without +limitation the federal copyright law, and, to the extent such +U.S. federal law does not apply, by the law of the Commonwealth of +Virginia, excluding Virginia's conflict of law provisions. +Notwithstanding the foregoing, with regard to derivative works based +on Python 1.6.1 that incorporate non-separable material that was +previously distributed under the GNU General Public License (GPL), the +law of the Commonwealth of Virginia shall govern this License +Agreement only as to issues arising under or with respect to +Paragraphs 4, 5, and 7 of this License Agreement. Nothing in this +License Agreement shall be deemed to create any relationship of +agency, partnership, or joint venture between CNRI and Licensee. This +License Agreement does not grant permission to use CNRI trademarks or +trade name in a trademark sense to endorse or promote products or +services of Licensee, or any third party. + +8. By clicking on the "ACCEPT" button where indicated, or by copying, +installing or otherwise using Python 1.6.1, Licensee agrees to be +bound by the terms and conditions of this License Agreement. + + ACCEPT + + +CWI LICENSE AGREEMENT FOR PYTHON 0.9.0 THROUGH 1.2 +-------------------------------------------------- + +Copyright (c) 1991 - 1995, Stichting Mathematisch Centrum Amsterdam, +The Netherlands. All rights reserved. + +Permission to use, copy, modify, and distribute this software and its +documentation for any purpose and without fee is hereby granted, +provided that the above copyright notice appear in all copies and that +both that copyright notice and this permission notice appear in +supporting documentation, and that the name of Stichting Mathematisch +Centrum or CWI not be used in advertising or publicity pertaining to +distribution of the software without specific, written prior +permission. + +STICHTING MATHEMATISCH CENTRUM DISCLAIMS ALL WARRANTIES WITH REGARD TO +THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND +FITNESS, IN NO EVENT SHALL STICHTING MATHEMATISCH CENTRUM BE LIABLE +FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES +WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN +ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT +OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. diff --git a/node_modules/argparse/README.md b/node_modules/argparse/README.md new file mode 100644 index 00000000..550b5c9b --- /dev/null +++ b/node_modules/argparse/README.md @@ -0,0 +1,84 @@ +argparse +======== + +[![Build Status](https://secure.travis-ci.org/nodeca/argparse.svg?branch=master)](http://travis-ci.org/nodeca/argparse) +[![NPM version](https://img.shields.io/npm/v/argparse.svg)](https://www.npmjs.org/package/argparse) + +CLI arguments parser for node.js, with [sub-commands](https://docs.python.org/3.9/library/argparse.html#sub-commands) support. Port of python's [argparse](http://docs.python.org/dev/library/argparse.html) (version [3.9.0](https://github.com/python/cpython/blob/v3.9.0rc1/Lib/argparse.py)). + +**Difference with original.** + +- JS has no keyword arguments support. + - Pass options instead: `new ArgumentParser({ description: 'example', add_help: true })`. +- JS has no python's types `int`, `float`, ... + - Use string-typed names: `.add_argument('-b', { type: 'int', help: 'help' })`. +- `%r` format specifier uses `require('util').inspect()`. + +More details in [doc](./doc). + + +Example +------- + +`test.js` file: + +```javascript +#!/usr/bin/env node +'use strict'; + +const { ArgumentParser } = require('argparse'); +const { version } = require('./package.json'); + +const parser = new ArgumentParser({ + description: 'Argparse example' +}); + +parser.add_argument('-v', '--version', { action: 'version', version }); +parser.add_argument('-f', '--foo', { help: 'foo bar' }); +parser.add_argument('-b', '--bar', { help: 'bar foo' }); +parser.add_argument('--baz', { help: 'baz bar' }); + +console.dir(parser.parse_args()); +``` + +Display help: + +``` +$ ./test.js -h +usage: test.js [-h] [-v] [-f FOO] [-b BAR] [--baz BAZ] + +Argparse example + +optional arguments: + -h, --help show this help message and exit + -v, --version show program's version number and exit + -f FOO, --foo FOO foo bar + -b BAR, --bar BAR bar foo + --baz BAZ baz bar +``` + +Parse arguments: + +``` +$ ./test.js -f=3 --bar=4 --baz 5 +{ foo: '3', bar: '4', baz: '5' } +``` + + +API docs +-------- + +Since this is a port with minimal divergence, there's no separate documentation. +Use original one instead, with notes about difference. + +1. [Original doc](https://docs.python.org/3.9/library/argparse.html). +2. [Original tutorial](https://docs.python.org/3.9/howto/argparse.html). +3. [Difference with python](./doc). + + +argparse for enterprise +----------------------- + +Available as part of the Tidelift Subscription + +The maintainers of argparse and thousands of other packages are working with Tidelift to deliver commercial support and maintenance for the open source dependencies you use to build your applications. Save time, reduce risk, and improve code health, while paying the maintainers of the exact dependencies you use. [Learn more.](https://tidelift.com/subscription/pkg/npm-argparse?utm_source=npm-argparse&utm_medium=referral&utm_campaign=enterprise&utm_term=repo) diff --git a/node_modules/argparse/argparse.js b/node_modules/argparse/argparse.js new file mode 100644 index 00000000..2b8c8c63 --- /dev/null +++ b/node_modules/argparse/argparse.js @@ -0,0 +1,3707 @@ +// Port of python's argparse module, version 3.9.0: +// https://github.com/python/cpython/blob/v3.9.0rc1/Lib/argparse.py + +'use strict' + +// Copyright (C) 2010-2020 Python Software Foundation. +// Copyright (C) 2020 argparse.js authors + +/* + * Command-line parsing library + * + * This module is an optparse-inspired command-line parsing library that: + * + * - handles both optional and positional arguments + * - produces highly informative usage messages + * - supports parsers that dispatch to sub-parsers + * + * The following is a simple usage example that sums integers from the + * command-line and writes the result to a file:: + * + * parser = argparse.ArgumentParser( + * description='sum the integers at the command line') + * parser.add_argument( + * 'integers', metavar='int', nargs='+', type=int, + * help='an integer to be summed') + * parser.add_argument( + * '--log', default=sys.stdout, type=argparse.FileType('w'), + * help='the file where the sum should be written') + * args = parser.parse_args() + * args.log.write('%s' % sum(args.integers)) + * args.log.close() + * + * The module contains the following public classes: + * + * - ArgumentParser -- The main entry point for command-line parsing. As the + * example above shows, the add_argument() method is used to populate + * the parser with actions for optional and positional arguments. Then + * the parse_args() method is invoked to convert the args at the + * command-line into an object with attributes. + * + * - ArgumentError -- The exception raised by ArgumentParser objects when + * there are errors with the parser's actions. Errors raised while + * parsing the command-line are caught by ArgumentParser and emitted + * as command-line messages. + * + * - FileType -- A factory for defining types of files to be created. As the + * example above shows, instances of FileType are typically passed as + * the type= argument of add_argument() calls. + * + * - Action -- The base class for parser actions. Typically actions are + * selected by passing strings like 'store_true' or 'append_const' to + * the action= argument of add_argument(). However, for greater + * customization of ArgumentParser actions, subclasses of Action may + * be defined and passed as the action= argument. + * + * - HelpFormatter, RawDescriptionHelpFormatter, RawTextHelpFormatter, + * ArgumentDefaultsHelpFormatter -- Formatter classes which + * may be passed as the formatter_class= argument to the + * ArgumentParser constructor. HelpFormatter is the default, + * RawDescriptionHelpFormatter and RawTextHelpFormatter tell the parser + * not to change the formatting for help text, and + * ArgumentDefaultsHelpFormatter adds information about argument defaults + * to the help. + * + * All other classes in this module are considered implementation details. + * (Also note that HelpFormatter and RawDescriptionHelpFormatter are only + * considered public as object names -- the API of the formatter objects is + * still considered an implementation detail.) + */ + +const SUPPRESS = '==SUPPRESS==' + +const OPTIONAL = '?' +const ZERO_OR_MORE = '*' +const ONE_OR_MORE = '+' +const PARSER = 'A...' +const REMAINDER = '...' +const _UNRECOGNIZED_ARGS_ATTR = '_unrecognized_args' + + +// ================================== +// Utility functions used for porting +// ================================== +const assert = require('assert') +const util = require('util') +const fs = require('fs') +const sub = require('./lib/sub') +const path = require('path') +const repr = util.inspect + +function get_argv() { + // omit first argument (which is assumed to be interpreter - `node`, `coffee`, `ts-node`, etc.) + return process.argv.slice(1) +} + +function get_terminal_size() { + return { + columns: +process.env.COLUMNS || process.stdout.columns || 80 + } +} + +function hasattr(object, name) { + return Object.prototype.hasOwnProperty.call(object, name) +} + +function getattr(object, name, value) { + return hasattr(object, name) ? object[name] : value +} + +function setattr(object, name, value) { + object[name] = value +} + +function setdefault(object, name, value) { + if (!hasattr(object, name)) object[name] = value + return object[name] +} + +function delattr(object, name) { + delete object[name] +} + +function range(from, to, step=1) { + // range(10) is equivalent to range(0, 10) + if (arguments.length === 1) [ to, from ] = [ from, 0 ] + if (typeof from !== 'number' || typeof to !== 'number' || typeof step !== 'number') { + throw new TypeError('argument cannot be interpreted as an integer') + } + if (step === 0) throw new TypeError('range() arg 3 must not be zero') + + let result = [] + if (step > 0) { + for (let i = from; i < to; i += step) result.push(i) + } else { + for (let i = from; i > to; i += step) result.push(i) + } + return result +} + +function splitlines(str, keepends = false) { + let result + if (!keepends) { + result = str.split(/\r\n|[\n\r\v\f\x1c\x1d\x1e\x85\u2028\u2029]/) + } else { + result = [] + let parts = str.split(/(\r\n|[\n\r\v\f\x1c\x1d\x1e\x85\u2028\u2029])/) + for (let i = 0; i < parts.length; i += 2) { + result.push(parts[i] + (i + 1 < parts.length ? parts[i + 1] : '')) + } + } + if (!result[result.length - 1]) result.pop() + return result +} + +function _string_lstrip(string, prefix_chars) { + let idx = 0 + while (idx < string.length && prefix_chars.includes(string[idx])) idx++ + return idx ? string.slice(idx) : string +} + +function _string_split(string, sep, maxsplit) { + let result = string.split(sep) + if (result.length > maxsplit) { + result = result.slice(0, maxsplit).concat([ result.slice(maxsplit).join(sep) ]) + } + return result +} + +function _array_equal(array1, array2) { + if (array1.length !== array2.length) return false + for (let i = 0; i < array1.length; i++) { + if (array1[i] !== array2[i]) return false + } + return true +} + +function _array_remove(array, item) { + let idx = array.indexOf(item) + if (idx === -1) throw new TypeError(sub('%r not in list', item)) + array.splice(idx, 1) +} + +// normalize choices to array; +// this isn't required in python because `in` and `map` operators work with anything, +// but in js dealing with multiple types here is too clunky +function _choices_to_array(choices) { + if (choices === undefined) { + return [] + } else if (Array.isArray(choices)) { + return choices + } else if (choices !== null && typeof choices[Symbol.iterator] === 'function') { + return Array.from(choices) + } else if (typeof choices === 'object' && choices !== null) { + return Object.keys(choices) + } else { + throw new Error(sub('invalid choices value: %r', choices)) + } +} + +// decorator that allows a class to be called without new +function _callable(cls) { + let result = { // object is needed for inferred class name + [cls.name]: function (...args) { + let this_class = new.target === result || !new.target + return Reflect.construct(cls, args, this_class ? cls : new.target) + } + } + result[cls.name].prototype = cls.prototype + // fix default tag for toString, e.g. [object Action] instead of [object Object] + cls.prototype[Symbol.toStringTag] = cls.name + return result[cls.name] +} + +function _alias(object, from, to) { + try { + let name = object.constructor.name + Object.defineProperty(object, from, { + value: util.deprecate(object[to], sub('%s.%s() is renamed to %s.%s()', + name, from, name, to)), + enumerable: false + }) + } catch {} +} + +// decorator that allows snake_case class methods to be called with camelCase and vice versa +function _camelcase_alias(_class) { + for (let name of Object.getOwnPropertyNames(_class.prototype)) { + let camelcase = name.replace(/\w_[a-z]/g, s => s[0] + s[2].toUpperCase()) + if (camelcase !== name) _alias(_class.prototype, camelcase, name) + } + return _class +} + +function _to_legacy_name(key) { + key = key.replace(/\w_[a-z]/g, s => s[0] + s[2].toUpperCase()) + if (key === 'default') key = 'defaultValue' + if (key === 'const') key = 'constant' + return key +} + +function _to_new_name(key) { + if (key === 'defaultValue') key = 'default' + if (key === 'constant') key = 'const' + key = key.replace(/[A-Z]/g, c => '_' + c.toLowerCase()) + return key +} + +// parse options +let no_default = Symbol('no_default_value') +function _parse_opts(args, descriptor) { + function get_name() { + let stack = new Error().stack.split('\n') + .map(x => x.match(/^ at (.*) \(.*\)$/)) + .filter(Boolean) + .map(m => m[1]) + .map(fn => fn.match(/[^ .]*$/)[0]) + + if (stack.length && stack[0] === get_name.name) stack.shift() + if (stack.length && stack[0] === _parse_opts.name) stack.shift() + return stack.length ? stack[0] : '' + } + + args = Array.from(args) + let kwargs = {} + let result = [] + let last_opt = args.length && args[args.length - 1] + + if (typeof last_opt === 'object' && last_opt !== null && !Array.isArray(last_opt) && + (!last_opt.constructor || last_opt.constructor.name === 'Object')) { + kwargs = Object.assign({}, args.pop()) + } + + // LEGACY (v1 compatibility): camelcase + let renames = [] + for (let key of Object.keys(descriptor)) { + let old_name = _to_legacy_name(key) + if (old_name !== key && (old_name in kwargs)) { + if (key in kwargs) { + // default and defaultValue specified at the same time, happens often in old tests + //throw new TypeError(sub('%s() got multiple values for argument %r', get_name(), key)) + } else { + kwargs[key] = kwargs[old_name] + } + renames.push([ old_name, key ]) + delete kwargs[old_name] + } + } + if (renames.length) { + let name = get_name() + deprecate('camelcase_' + name, sub('%s(): following options are renamed: %s', + name, renames.map(([ a, b ]) => sub('%r -> %r', a, b)))) + } + // end + + let missing_positionals = [] + let positional_count = args.length + + for (let [ key, def ] of Object.entries(descriptor)) { + if (key[0] === '*') { + if (key.length > 0 && key[1] === '*') { + // LEGACY (v1 compatibility): camelcase + let renames = [] + for (let key of Object.keys(kwargs)) { + let new_name = _to_new_name(key) + if (new_name !== key && (key in kwargs)) { + if (new_name in kwargs) { + // default and defaultValue specified at the same time, happens often in old tests + //throw new TypeError(sub('%s() got multiple values for argument %r', get_name(), new_name)) + } else { + kwargs[new_name] = kwargs[key] + } + renames.push([ key, new_name ]) + delete kwargs[key] + } + } + if (renames.length) { + let name = get_name() + deprecate('camelcase_' + name, sub('%s(): following options are renamed: %s', + name, renames.map(([ a, b ]) => sub('%r -> %r', a, b)))) + } + // end + result.push(kwargs) + kwargs = {} + } else { + result.push(args) + args = [] + } + } else if (key in kwargs && args.length > 0) { + throw new TypeError(sub('%s() got multiple values for argument %r', get_name(), key)) + } else if (key in kwargs) { + result.push(kwargs[key]) + delete kwargs[key] + } else if (args.length > 0) { + result.push(args.shift()) + } else if (def !== no_default) { + result.push(def) + } else { + missing_positionals.push(key) + } + } + + if (Object.keys(kwargs).length) { + throw new TypeError(sub('%s() got an unexpected keyword argument %r', + get_name(), Object.keys(kwargs)[0])) + } + + if (args.length) { + let from = Object.entries(descriptor).filter(([ k, v ]) => k[0] !== '*' && v !== no_default).length + let to = Object.entries(descriptor).filter(([ k ]) => k[0] !== '*').length + throw new TypeError(sub('%s() takes %s positional argument%s but %s %s given', + get_name(), + from === to ? sub('from %s to %s', from, to) : to, + from === to && to === 1 ? '' : 's', + positional_count, + positional_count === 1 ? 'was' : 'were')) + } + + if (missing_positionals.length) { + let strs = missing_positionals.map(repr) + if (strs.length > 1) strs[strs.length - 1] = 'and ' + strs[strs.length - 1] + let str_joined = strs.join(strs.length === 2 ? '' : ', ') + throw new TypeError(sub('%s() missing %i required positional argument%s: %s', + get_name(), strs.length, strs.length === 1 ? '' : 's', str_joined)) + } + + return result +} + +let _deprecations = {} +function deprecate(id, string) { + _deprecations[id] = _deprecations[id] || util.deprecate(() => {}, string) + _deprecations[id]() +} + + +// ============================= +// Utility functions and classes +// ============================= +function _AttributeHolder(cls = Object) { + /* + * Abstract base class that provides __repr__. + * + * The __repr__ method returns a string in the format:: + * ClassName(attr=name, attr=name, ...) + * The attributes are determined either by a class-level attribute, + * '_kwarg_names', or by inspecting the instance __dict__. + */ + + return class _AttributeHolder extends cls { + [util.inspect.custom]() { + let type_name = this.constructor.name + let arg_strings = [] + let star_args = {} + for (let arg of this._get_args()) { + arg_strings.push(repr(arg)) + } + for (let [ name, value ] of this._get_kwargs()) { + if (/^[a-z_][a-z0-9_$]*$/i.test(name)) { + arg_strings.push(sub('%s=%r', name, value)) + } else { + star_args[name] = value + } + } + if (Object.keys(star_args).length) { + arg_strings.push(sub('**%s', repr(star_args))) + } + return sub('%s(%s)', type_name, arg_strings.join(', ')) + } + + toString() { + return this[util.inspect.custom]() + } + + _get_kwargs() { + return Object.entries(this) + } + + _get_args() { + return [] + } + } +} + + +function _copy_items(items) { + if (items === undefined) { + return [] + } + return items.slice(0) +} + + +// =============== +// Formatting Help +// =============== +const HelpFormatter = _camelcase_alias(_callable(class HelpFormatter { + /* + * Formatter for generating usage messages and argument help strings. + * + * Only the name of this class is considered a public API. All the methods + * provided by the class are considered an implementation detail. + */ + + constructor() { + let [ + prog, + indent_increment, + max_help_position, + width + ] = _parse_opts(arguments, { + prog: no_default, + indent_increment: 2, + max_help_position: 24, + width: undefined + }) + + // default setting for width + if (width === undefined) { + width = get_terminal_size().columns + width -= 2 + } + + this._prog = prog + this._indent_increment = indent_increment + this._max_help_position = Math.min(max_help_position, + Math.max(width - 20, indent_increment * 2)) + this._width = width + + this._current_indent = 0 + this._level = 0 + this._action_max_length = 0 + + this._root_section = this._Section(this, undefined) + this._current_section = this._root_section + + this._whitespace_matcher = /[ \t\n\r\f\v]+/g // equivalent to python /\s+/ with ASCII flag + this._long_break_matcher = /\n\n\n+/g + } + + // =============================== + // Section and indentation methods + // =============================== + _indent() { + this._current_indent += this._indent_increment + this._level += 1 + } + + _dedent() { + this._current_indent -= this._indent_increment + assert(this._current_indent >= 0, 'Indent decreased below 0.') + this._level -= 1 + } + + _add_item(func, args) { + this._current_section.items.push([ func, args ]) + } + + // ======================== + // Message building methods + // ======================== + start_section(heading) { + this._indent() + let section = this._Section(this, this._current_section, heading) + this._add_item(section.format_help.bind(section), []) + this._current_section = section + } + + end_section() { + this._current_section = this._current_section.parent + this._dedent() + } + + add_text(text) { + if (text !== SUPPRESS && text !== undefined) { + this._add_item(this._format_text.bind(this), [text]) + } + } + + add_usage(usage, actions, groups, prefix = undefined) { + if (usage !== SUPPRESS) { + let args = [ usage, actions, groups, prefix ] + this._add_item(this._format_usage.bind(this), args) + } + } + + add_argument(action) { + if (action.help !== SUPPRESS) { + + // find all invocations + let invocations = [this._format_action_invocation(action)] + for (let subaction of this._iter_indented_subactions(action)) { + invocations.push(this._format_action_invocation(subaction)) + } + + // update the maximum item length + let invocation_length = Math.max(...invocations.map(invocation => invocation.length)) + let action_length = invocation_length + this._current_indent + this._action_max_length = Math.max(this._action_max_length, + action_length) + + // add the item to the list + this._add_item(this._format_action.bind(this), [action]) + } + } + + add_arguments(actions) { + for (let action of actions) { + this.add_argument(action) + } + } + + // ======================= + // Help-formatting methods + // ======================= + format_help() { + let help = this._root_section.format_help() + if (help) { + help = help.replace(this._long_break_matcher, '\n\n') + help = help.replace(/^\n+|\n+$/g, '') + '\n' + } + return help + } + + _join_parts(part_strings) { + return part_strings.filter(part => part && part !== SUPPRESS).join('') + } + + _format_usage(usage, actions, groups, prefix) { + if (prefix === undefined) { + prefix = 'usage: ' + } + + // if usage is specified, use that + if (usage !== undefined) { + usage = sub(usage, { prog: this._prog }) + + // if no optionals or positionals are available, usage is just prog + } else if (usage === undefined && !actions.length) { + usage = sub('%(prog)s', { prog: this._prog }) + + // if optionals and positionals are available, calculate usage + } else if (usage === undefined) { + let prog = sub('%(prog)s', { prog: this._prog }) + + // split optionals from positionals + let optionals = [] + let positionals = [] + for (let action of actions) { + if (action.option_strings.length) { + optionals.push(action) + } else { + positionals.push(action) + } + } + + // build full usage string + let action_usage = this._format_actions_usage([].concat(optionals).concat(positionals), groups) + usage = [ prog, action_usage ].map(String).join(' ') + + // wrap the usage parts if it's too long + let text_width = this._width - this._current_indent + if (prefix.length + usage.length > text_width) { + + // break usage into wrappable parts + let part_regexp = /\(.*?\)+(?=\s|$)|\[.*?\]+(?=\s|$)|\S+/g + let opt_usage = this._format_actions_usage(optionals, groups) + let pos_usage = this._format_actions_usage(positionals, groups) + let opt_parts = opt_usage.match(part_regexp) || [] + let pos_parts = pos_usage.match(part_regexp) || [] + assert(opt_parts.join(' ') === opt_usage) + assert(pos_parts.join(' ') === pos_usage) + + // helper for wrapping lines + let get_lines = (parts, indent, prefix = undefined) => { + let lines = [] + let line = [] + let line_len + if (prefix !== undefined) { + line_len = prefix.length - 1 + } else { + line_len = indent.length - 1 + } + for (let part of parts) { + if (line_len + 1 + part.length > text_width && line) { + lines.push(indent + line.join(' ')) + line = [] + line_len = indent.length - 1 + } + line.push(part) + line_len += part.length + 1 + } + if (line.length) { + lines.push(indent + line.join(' ')) + } + if (prefix !== undefined) { + lines[0] = lines[0].slice(indent.length) + } + return lines + } + + let lines + + // if prog is short, follow it with optionals or positionals + if (prefix.length + prog.length <= 0.75 * text_width) { + let indent = ' '.repeat(prefix.length + prog.length + 1) + if (opt_parts.length) { + lines = get_lines([prog].concat(opt_parts), indent, prefix) + lines = lines.concat(get_lines(pos_parts, indent)) + } else if (pos_parts.length) { + lines = get_lines([prog].concat(pos_parts), indent, prefix) + } else { + lines = [prog] + } + + // if prog is long, put it on its own line + } else { + let indent = ' '.repeat(prefix.length) + let parts = [].concat(opt_parts).concat(pos_parts) + lines = get_lines(parts, indent) + if (lines.length > 1) { + lines = [] + lines = lines.concat(get_lines(opt_parts, indent)) + lines = lines.concat(get_lines(pos_parts, indent)) + } + lines = [prog].concat(lines) + } + + // join lines into usage + usage = lines.join('\n') + } + } + + // prefix with 'usage:' + return sub('%s%s\n\n', prefix, usage) + } + + _format_actions_usage(actions, groups) { + // find group indices and identify actions in groups + let group_actions = new Set() + let inserts = {} + for (let group of groups) { + let start = actions.indexOf(group._group_actions[0]) + if (start === -1) { + continue + } else { + let end = start + group._group_actions.length + if (_array_equal(actions.slice(start, end), group._group_actions)) { + for (let action of group._group_actions) { + group_actions.add(action) + } + if (!group.required) { + if (start in inserts) { + inserts[start] += ' [' + } else { + inserts[start] = '[' + } + if (end in inserts) { + inserts[end] += ']' + } else { + inserts[end] = ']' + } + } else { + if (start in inserts) { + inserts[start] += ' (' + } else { + inserts[start] = '(' + } + if (end in inserts) { + inserts[end] += ')' + } else { + inserts[end] = ')' + } + } + for (let i of range(start + 1, end)) { + inserts[i] = '|' + } + } + } + } + + // collect all actions format strings + let parts = [] + for (let [ i, action ] of Object.entries(actions)) { + + // suppressed arguments are marked with None + // remove | separators for suppressed arguments + if (action.help === SUPPRESS) { + parts.push(undefined) + if (inserts[+i] === '|') { + delete inserts[+i] + } else if (inserts[+i + 1] === '|') { + delete inserts[+i + 1] + } + + // produce all arg strings + } else if (!action.option_strings.length) { + let default_value = this._get_default_metavar_for_positional(action) + let part = this._format_args(action, default_value) + + // if it's in a group, strip the outer [] + if (group_actions.has(action)) { + if (part[0] === '[' && part[part.length - 1] === ']') { + part = part.slice(1, -1) + } + } + + // add the action string to the list + parts.push(part) + + // produce the first way to invoke the option in brackets + } else { + let option_string = action.option_strings[0] + let part + + // if the Optional doesn't take a value, format is: + // -s or --long + if (action.nargs === 0) { + part = action.format_usage() + + // if the Optional takes a value, format is: + // -s ARGS or --long ARGS + } else { + let default_value = this._get_default_metavar_for_optional(action) + let args_string = this._format_args(action, default_value) + part = sub('%s %s', option_string, args_string) + } + + // make it look optional if it's not required or in a group + if (!action.required && !group_actions.has(action)) { + part = sub('[%s]', part) + } + + // add the action string to the list + parts.push(part) + } + } + + // insert things at the necessary indices + for (let i of Object.keys(inserts).map(Number).sort((a, b) => b - a)) { + parts.splice(+i, 0, inserts[+i]) + } + + // join all the action items with spaces + let text = parts.filter(Boolean).join(' ') + + // clean up separators for mutually exclusive groups + text = text.replace(/([\[(]) /g, '$1') + text = text.replace(/ ([\])])/g, '$1') + text = text.replace(/[\[(] *[\])]/g, '') + text = text.replace(/\(([^|]*)\)/g, '$1', text) + text = text.trim() + + // return the text + return text + } + + _format_text(text) { + if (text.includes('%(prog)')) { + text = sub(text, { prog: this._prog }) + } + let text_width = Math.max(this._width - this._current_indent, 11) + let indent = ' '.repeat(this._current_indent) + return this._fill_text(text, text_width, indent) + '\n\n' + } + + _format_action(action) { + // determine the required width and the entry label + let help_position = Math.min(this._action_max_length + 2, + this._max_help_position) + let help_width = Math.max(this._width - help_position, 11) + let action_width = help_position - this._current_indent - 2 + let action_header = this._format_action_invocation(action) + let indent_first + + // no help; start on same line and add a final newline + if (!action.help) { + let tup = [ this._current_indent, '', action_header ] + action_header = sub('%*s%s\n', ...tup) + + // short action name; start on the same line and pad two spaces + } else if (action_header.length <= action_width) { + let tup = [ this._current_indent, '', action_width, action_header ] + action_header = sub('%*s%-*s ', ...tup) + indent_first = 0 + + // long action name; start on the next line + } else { + let tup = [ this._current_indent, '', action_header ] + action_header = sub('%*s%s\n', ...tup) + indent_first = help_position + } + + // collect the pieces of the action help + let parts = [action_header] + + // if there was help for the action, add lines of help text + if (action.help) { + let help_text = this._expand_help(action) + let help_lines = this._split_lines(help_text, help_width) + parts.push(sub('%*s%s\n', indent_first, '', help_lines[0])) + for (let line of help_lines.slice(1)) { + parts.push(sub('%*s%s\n', help_position, '', line)) + } + + // or add a newline if the description doesn't end with one + } else if (!action_header.endsWith('\n')) { + parts.push('\n') + } + + // if there are any sub-actions, add their help as well + for (let subaction of this._iter_indented_subactions(action)) { + parts.push(this._format_action(subaction)) + } + + // return a single string + return this._join_parts(parts) + } + + _format_action_invocation(action) { + if (!action.option_strings.length) { + let default_value = this._get_default_metavar_for_positional(action) + let metavar = this._metavar_formatter(action, default_value)(1)[0] + return metavar + + } else { + let parts = [] + + // if the Optional doesn't take a value, format is: + // -s, --long + if (action.nargs === 0) { + parts = parts.concat(action.option_strings) + + // if the Optional takes a value, format is: + // -s ARGS, --long ARGS + } else { + let default_value = this._get_default_metavar_for_optional(action) + let args_string = this._format_args(action, default_value) + for (let option_string of action.option_strings) { + parts.push(sub('%s %s', option_string, args_string)) + } + } + + return parts.join(', ') + } + } + + _metavar_formatter(action, default_metavar) { + let result + if (action.metavar !== undefined) { + result = action.metavar + } else if (action.choices !== undefined) { + let choice_strs = _choices_to_array(action.choices).map(String) + result = sub('{%s}', choice_strs.join(',')) + } else { + result = default_metavar + } + + function format(tuple_size) { + if (Array.isArray(result)) { + return result + } else { + return Array(tuple_size).fill(result) + } + } + return format + } + + _format_args(action, default_metavar) { + let get_metavar = this._metavar_formatter(action, default_metavar) + let result + if (action.nargs === undefined) { + result = sub('%s', ...get_metavar(1)) + } else if (action.nargs === OPTIONAL) { + result = sub('[%s]', ...get_metavar(1)) + } else if (action.nargs === ZERO_OR_MORE) { + let metavar = get_metavar(1) + if (metavar.length === 2) { + result = sub('[%s [%s ...]]', ...metavar) + } else { + result = sub('[%s ...]', ...metavar) + } + } else if (action.nargs === ONE_OR_MORE) { + result = sub('%s [%s ...]', ...get_metavar(2)) + } else if (action.nargs === REMAINDER) { + result = '...' + } else if (action.nargs === PARSER) { + result = sub('%s ...', ...get_metavar(1)) + } else if (action.nargs === SUPPRESS) { + result = '' + } else { + let formats + try { + formats = range(action.nargs).map(() => '%s') + } catch (err) { + throw new TypeError('invalid nargs value') + } + result = sub(formats.join(' '), ...get_metavar(action.nargs)) + } + return result + } + + _expand_help(action) { + let params = Object.assign({ prog: this._prog }, action) + for (let name of Object.keys(params)) { + if (params[name] === SUPPRESS) { + delete params[name] + } + } + for (let name of Object.keys(params)) { + if (params[name] && params[name].name) { + params[name] = params[name].name + } + } + if (params.choices !== undefined) { + let choices_str = _choices_to_array(params.choices).map(String).join(', ') + params.choices = choices_str + } + // LEGACY (v1 compatibility): camelcase + for (let key of Object.keys(params)) { + let old_name = _to_legacy_name(key) + if (old_name !== key) { + params[old_name] = params[key] + } + } + // end + return sub(this._get_help_string(action), params) + } + + * _iter_indented_subactions(action) { + if (typeof action._get_subactions === 'function') { + this._indent() + yield* action._get_subactions() + this._dedent() + } + } + + _split_lines(text, width) { + text = text.replace(this._whitespace_matcher, ' ').trim() + // The textwrap module is used only for formatting help. + // Delay its import for speeding up the common usage of argparse. + let textwrap = require('./lib/textwrap') + return textwrap.wrap(text, { width }) + } + + _fill_text(text, width, indent) { + text = text.replace(this._whitespace_matcher, ' ').trim() + let textwrap = require('./lib/textwrap') + return textwrap.fill(text, { width, + initial_indent: indent, + subsequent_indent: indent }) + } + + _get_help_string(action) { + return action.help + } + + _get_default_metavar_for_optional(action) { + return action.dest.toUpperCase() + } + + _get_default_metavar_for_positional(action) { + return action.dest + } +})) + +HelpFormatter.prototype._Section = _callable(class _Section { + + constructor(formatter, parent, heading = undefined) { + this.formatter = formatter + this.parent = parent + this.heading = heading + this.items = [] + } + + format_help() { + // format the indented section + if (this.parent !== undefined) { + this.formatter._indent() + } + let item_help = this.formatter._join_parts(this.items.map(([ func, args ]) => func.apply(null, args))) + if (this.parent !== undefined) { + this.formatter._dedent() + } + + // return nothing if the section was empty + if (!item_help) { + return '' + } + + // add the heading if the section was non-empty + let heading + if (this.heading !== SUPPRESS && this.heading !== undefined) { + let current_indent = this.formatter._current_indent + heading = sub('%*s%s:\n', current_indent, '', this.heading) + } else { + heading = '' + } + + // join the section-initial newline, the heading and the help + return this.formatter._join_parts(['\n', heading, item_help, '\n']) + } +}) + + +const RawDescriptionHelpFormatter = _camelcase_alias(_callable(class RawDescriptionHelpFormatter extends HelpFormatter { + /* + * Help message formatter which retains any formatting in descriptions. + * + * Only the name of this class is considered a public API. All the methods + * provided by the class are considered an implementation detail. + */ + + _fill_text(text, width, indent) { + return splitlines(text, true).map(line => indent + line).join('') + } +})) + + +const RawTextHelpFormatter = _camelcase_alias(_callable(class RawTextHelpFormatter extends RawDescriptionHelpFormatter { + /* + * Help message formatter which retains formatting of all help text. + * + * Only the name of this class is considered a public API. All the methods + * provided by the class are considered an implementation detail. + */ + + _split_lines(text/*, width*/) { + return splitlines(text) + } +})) + + +const ArgumentDefaultsHelpFormatter = _camelcase_alias(_callable(class ArgumentDefaultsHelpFormatter extends HelpFormatter { + /* + * Help message formatter which adds default values to argument help. + * + * Only the name of this class is considered a public API. All the methods + * provided by the class are considered an implementation detail. + */ + + _get_help_string(action) { + let help = action.help + // LEGACY (v1 compatibility): additional check for defaultValue needed + if (!action.help.includes('%(default)') && !action.help.includes('%(defaultValue)')) { + if (action.default !== SUPPRESS) { + let defaulting_nargs = [OPTIONAL, ZERO_OR_MORE] + if (action.option_strings.length || defaulting_nargs.includes(action.nargs)) { + help += ' (default: %(default)s)' + } + } + } + return help + } +})) + + +const MetavarTypeHelpFormatter = _camelcase_alias(_callable(class MetavarTypeHelpFormatter extends HelpFormatter { + /* + * Help message formatter which uses the argument 'type' as the default + * metavar value (instead of the argument 'dest') + * + * Only the name of this class is considered a public API. All the methods + * provided by the class are considered an implementation detail. + */ + + _get_default_metavar_for_optional(action) { + return typeof action.type === 'function' ? action.type.name : action.type + } + + _get_default_metavar_for_positional(action) { + return typeof action.type === 'function' ? action.type.name : action.type + } +})) + + +// ===================== +// Options and Arguments +// ===================== +function _get_action_name(argument) { + if (argument === undefined) { + return undefined + } else if (argument.option_strings.length) { + return argument.option_strings.join('/') + } else if (![ undefined, SUPPRESS ].includes(argument.metavar)) { + return argument.metavar + } else if (![ undefined, SUPPRESS ].includes(argument.dest)) { + return argument.dest + } else { + return undefined + } +} + + +const ArgumentError = _callable(class ArgumentError extends Error { + /* + * An error from creating or using an argument (optional or positional). + * + * The string value of this exception is the message, augmented with + * information about the argument that caused it. + */ + + constructor(argument, message) { + super() + this.name = 'ArgumentError' + this._argument_name = _get_action_name(argument) + this._message = message + this.message = this.str() + } + + str() { + let format + if (this._argument_name === undefined) { + format = '%(message)s' + } else { + format = 'argument %(argument_name)s: %(message)s' + } + return sub(format, { message: this._message, + argument_name: this._argument_name }) + } +}) + + +const ArgumentTypeError = _callable(class ArgumentTypeError extends Error { + /* + * An error from trying to convert a command line string to a type. + */ + + constructor(message) { + super(message) + this.name = 'ArgumentTypeError' + } +}) + + +// ============== +// Action classes +// ============== +const Action = _camelcase_alias(_callable(class Action extends _AttributeHolder(Function) { + /* + * Information about how to convert command line strings to Python objects. + * + * Action objects are used by an ArgumentParser to represent the information + * needed to parse a single argument from one or more strings from the + * command line. The keyword arguments to the Action constructor are also + * all attributes of Action instances. + * + * Keyword Arguments: + * + * - option_strings -- A list of command-line option strings which + * should be associated with this action. + * + * - dest -- The name of the attribute to hold the created object(s) + * + * - nargs -- The number of command-line arguments that should be + * consumed. By default, one argument will be consumed and a single + * value will be produced. Other values include: + * - N (an integer) consumes N arguments (and produces a list) + * - '?' consumes zero or one arguments + * - '*' consumes zero or more arguments (and produces a list) + * - '+' consumes one or more arguments (and produces a list) + * Note that the difference between the default and nargs=1 is that + * with the default, a single value will be produced, while with + * nargs=1, a list containing a single value will be produced. + * + * - const -- The value to be produced if the option is specified and the + * option uses an action that takes no values. + * + * - default -- The value to be produced if the option is not specified. + * + * - type -- A callable that accepts a single string argument, and + * returns the converted value. The standard Python types str, int, + * float, and complex are useful examples of such callables. If None, + * str is used. + * + * - choices -- A container of values that should be allowed. If not None, + * after a command-line argument has been converted to the appropriate + * type, an exception will be raised if it is not a member of this + * collection. + * + * - required -- True if the action must always be specified at the + * command line. This is only meaningful for optional command-line + * arguments. + * + * - help -- The help string describing the argument. + * + * - metavar -- The name to be used for the option's argument with the + * help string. If None, the 'dest' value will be used as the name. + */ + + constructor() { + let [ + option_strings, + dest, + nargs, + const_value, + default_value, + type, + choices, + required, + help, + metavar + ] = _parse_opts(arguments, { + option_strings: no_default, + dest: no_default, + nargs: undefined, + const: undefined, + default: undefined, + type: undefined, + choices: undefined, + required: false, + help: undefined, + metavar: undefined + }) + + // when this class is called as a function, redirect it to .call() method of itself + super('return arguments.callee.call.apply(arguments.callee, arguments)') + + this.option_strings = option_strings + this.dest = dest + this.nargs = nargs + this.const = const_value + this.default = default_value + this.type = type + this.choices = choices + this.required = required + this.help = help + this.metavar = metavar + } + + _get_kwargs() { + let names = [ + 'option_strings', + 'dest', + 'nargs', + 'const', + 'default', + 'type', + 'choices', + 'help', + 'metavar' + ] + return names.map(name => [ name, getattr(this, name) ]) + } + + format_usage() { + return this.option_strings[0] + } + + call(/*parser, namespace, values, option_string = undefined*/) { + throw new Error('.call() not defined') + } +})) + + +const BooleanOptionalAction = _camelcase_alias(_callable(class BooleanOptionalAction extends Action { + + constructor() { + let [ + option_strings, + dest, + default_value, + type, + choices, + required, + help, + metavar + ] = _parse_opts(arguments, { + option_strings: no_default, + dest: no_default, + default: undefined, + type: undefined, + choices: undefined, + required: false, + help: undefined, + metavar: undefined + }) + + let _option_strings = [] + for (let option_string of option_strings) { + _option_strings.push(option_string) + + if (option_string.startsWith('--')) { + option_string = '--no-' + option_string.slice(2) + _option_strings.push(option_string) + } + } + + if (help !== undefined && default_value !== undefined) { + help += ` (default: ${default_value})` + } + + super({ + option_strings: _option_strings, + dest, + nargs: 0, + default: default_value, + type, + choices, + required, + help, + metavar + }) + } + + call(parser, namespace, values, option_string = undefined) { + if (this.option_strings.includes(option_string)) { + setattr(namespace, this.dest, !option_string.startsWith('--no-')) + } + } + + format_usage() { + return this.option_strings.join(' | ') + } +})) + + +const _StoreAction = _callable(class _StoreAction extends Action { + + constructor() { + let [ + option_strings, + dest, + nargs, + const_value, + default_value, + type, + choices, + required, + help, + metavar + ] = _parse_opts(arguments, { + option_strings: no_default, + dest: no_default, + nargs: undefined, + const: undefined, + default: undefined, + type: undefined, + choices: undefined, + required: false, + help: undefined, + metavar: undefined + }) + + if (nargs === 0) { + throw new TypeError('nargs for store actions must be != 0; if you ' + + 'have nothing to store, actions such as store ' + + 'true or store const may be more appropriate') + } + if (const_value !== undefined && nargs !== OPTIONAL) { + throw new TypeError(sub('nargs must be %r to supply const', OPTIONAL)) + } + super({ + option_strings, + dest, + nargs, + const: const_value, + default: default_value, + type, + choices, + required, + help, + metavar + }) + } + + call(parser, namespace, values/*, option_string = undefined*/) { + setattr(namespace, this.dest, values) + } +}) + + +const _StoreConstAction = _callable(class _StoreConstAction extends Action { + + constructor() { + let [ + option_strings, + dest, + const_value, + default_value, + required, + help + //, metavar + ] = _parse_opts(arguments, { + option_strings: no_default, + dest: no_default, + const: no_default, + default: undefined, + required: false, + help: undefined, + metavar: undefined + }) + + super({ + option_strings, + dest, + nargs: 0, + const: const_value, + default: default_value, + required, + help + }) + } + + call(parser, namespace/*, values, option_string = undefined*/) { + setattr(namespace, this.dest, this.const) + } +}) + + +const _StoreTrueAction = _callable(class _StoreTrueAction extends _StoreConstAction { + + constructor() { + let [ + option_strings, + dest, + default_value, + required, + help + ] = _parse_opts(arguments, { + option_strings: no_default, + dest: no_default, + default: false, + required: false, + help: undefined + }) + + super({ + option_strings, + dest, + const: true, + default: default_value, + required, + help + }) + } +}) + + +const _StoreFalseAction = _callable(class _StoreFalseAction extends _StoreConstAction { + + constructor() { + let [ + option_strings, + dest, + default_value, + required, + help + ] = _parse_opts(arguments, { + option_strings: no_default, + dest: no_default, + default: true, + required: false, + help: undefined + }) + + super({ + option_strings, + dest, + const: false, + default: default_value, + required, + help + }) + } +}) + + +const _AppendAction = _callable(class _AppendAction extends Action { + + constructor() { + let [ + option_strings, + dest, + nargs, + const_value, + default_value, + type, + choices, + required, + help, + metavar + ] = _parse_opts(arguments, { + option_strings: no_default, + dest: no_default, + nargs: undefined, + const: undefined, + default: undefined, + type: undefined, + choices: undefined, + required: false, + help: undefined, + metavar: undefined + }) + + if (nargs === 0) { + throw new TypeError('nargs for append actions must be != 0; if arg ' + + 'strings are not supplying the value to append, ' + + 'the append const action may be more appropriate') + } + if (const_value !== undefined && nargs !== OPTIONAL) { + throw new TypeError(sub('nargs must be %r to supply const', OPTIONAL)) + } + super({ + option_strings, + dest, + nargs, + const: const_value, + default: default_value, + type, + choices, + required, + help, + metavar + }) + } + + call(parser, namespace, values/*, option_string = undefined*/) { + let items = getattr(namespace, this.dest, undefined) + items = _copy_items(items) + items.push(values) + setattr(namespace, this.dest, items) + } +}) + + +const _AppendConstAction = _callable(class _AppendConstAction extends Action { + + constructor() { + let [ + option_strings, + dest, + const_value, + default_value, + required, + help, + metavar + ] = _parse_opts(arguments, { + option_strings: no_default, + dest: no_default, + const: no_default, + default: undefined, + required: false, + help: undefined, + metavar: undefined + }) + + super({ + option_strings, + dest, + nargs: 0, + const: const_value, + default: default_value, + required, + help, + metavar + }) + } + + call(parser, namespace/*, values, option_string = undefined*/) { + let items = getattr(namespace, this.dest, undefined) + items = _copy_items(items) + items.push(this.const) + setattr(namespace, this.dest, items) + } +}) + + +const _CountAction = _callable(class _CountAction extends Action { + + constructor() { + let [ + option_strings, + dest, + default_value, + required, + help + ] = _parse_opts(arguments, { + option_strings: no_default, + dest: no_default, + default: undefined, + required: false, + help: undefined + }) + + super({ + option_strings, + dest, + nargs: 0, + default: default_value, + required, + help + }) + } + + call(parser, namespace/*, values, option_string = undefined*/) { + let count = getattr(namespace, this.dest, undefined) + if (count === undefined) { + count = 0 + } + setattr(namespace, this.dest, count + 1) + } +}) + + +const _HelpAction = _callable(class _HelpAction extends Action { + + constructor() { + let [ + option_strings, + dest, + default_value, + help + ] = _parse_opts(arguments, { + option_strings: no_default, + dest: SUPPRESS, + default: SUPPRESS, + help: undefined + }) + + super({ + option_strings, + dest, + default: default_value, + nargs: 0, + help + }) + } + + call(parser/*, namespace, values, option_string = undefined*/) { + parser.print_help() + parser.exit() + } +}) + + +const _VersionAction = _callable(class _VersionAction extends Action { + + constructor() { + let [ + option_strings, + version, + dest, + default_value, + help + ] = _parse_opts(arguments, { + option_strings: no_default, + version: undefined, + dest: SUPPRESS, + default: SUPPRESS, + help: "show program's version number and exit" + }) + + super({ + option_strings, + dest, + default: default_value, + nargs: 0, + help + }) + this.version = version + } + + call(parser/*, namespace, values, option_string = undefined*/) { + let version = this.version + if (version === undefined) { + version = parser.version + } + let formatter = parser._get_formatter() + formatter.add_text(version) + parser._print_message(formatter.format_help(), process.stdout) + parser.exit() + } +}) + + +const _SubParsersAction = _camelcase_alias(_callable(class _SubParsersAction extends Action { + + constructor() { + let [ + option_strings, + prog, + parser_class, + dest, + required, + help, + metavar + ] = _parse_opts(arguments, { + option_strings: no_default, + prog: no_default, + parser_class: no_default, + dest: SUPPRESS, + required: false, + help: undefined, + metavar: undefined + }) + + let name_parser_map = {} + + super({ + option_strings, + dest, + nargs: PARSER, + choices: name_parser_map, + required, + help, + metavar + }) + + this._prog_prefix = prog + this._parser_class = parser_class + this._name_parser_map = name_parser_map + this._choices_actions = [] + } + + add_parser() { + let [ + name, + kwargs + ] = _parse_opts(arguments, { + name: no_default, + '**kwargs': no_default + }) + + // set prog from the existing prefix + if (kwargs.prog === undefined) { + kwargs.prog = sub('%s %s', this._prog_prefix, name) + } + + let aliases = getattr(kwargs, 'aliases', []) + delete kwargs.aliases + + // create a pseudo-action to hold the choice help + if ('help' in kwargs) { + let help = kwargs.help + delete kwargs.help + let choice_action = this._ChoicesPseudoAction(name, aliases, help) + this._choices_actions.push(choice_action) + } + + // create the parser and add it to the map + let parser = new this._parser_class(kwargs) + this._name_parser_map[name] = parser + + // make parser available under aliases also + for (let alias of aliases) { + this._name_parser_map[alias] = parser + } + + return parser + } + + _get_subactions() { + return this._choices_actions + } + + call(parser, namespace, values/*, option_string = undefined*/) { + let parser_name = values[0] + let arg_strings = values.slice(1) + + // set the parser name if requested + if (this.dest !== SUPPRESS) { + setattr(namespace, this.dest, parser_name) + } + + // select the parser + if (hasattr(this._name_parser_map, parser_name)) { + parser = this._name_parser_map[parser_name] + } else { + let args = {parser_name, + choices: this._name_parser_map.join(', ')} + let msg = sub('unknown parser %(parser_name)r (choices: %(choices)s)', args) + throw new ArgumentError(this, msg) + } + + // parse all the remaining options into the namespace + // store any unrecognized options on the object, so that the top + // level parser can decide what to do with them + + // In case this subparser defines new defaults, we parse them + // in a new namespace object and then update the original + // namespace for the relevant parts. + let subnamespace + [ subnamespace, arg_strings ] = parser.parse_known_args(arg_strings, undefined) + for (let [ key, value ] of Object.entries(subnamespace)) { + setattr(namespace, key, value) + } + + if (arg_strings.length) { + setdefault(namespace, _UNRECOGNIZED_ARGS_ATTR, []) + getattr(namespace, _UNRECOGNIZED_ARGS_ATTR).push(...arg_strings) + } + } +})) + + +_SubParsersAction.prototype._ChoicesPseudoAction = _callable(class _ChoicesPseudoAction extends Action { + constructor(name, aliases, help) { + let metavar = name, dest = name + if (aliases.length) { + metavar += sub(' (%s)', aliases.join(', ')) + } + super({ option_strings: [], dest, help, metavar }) + } +}) + + +const _ExtendAction = _callable(class _ExtendAction extends _AppendAction { + call(parser, namespace, values/*, option_string = undefined*/) { + let items = getattr(namespace, this.dest, undefined) + items = _copy_items(items) + items = items.concat(values) + setattr(namespace, this.dest, items) + } +}) + + +// ============== +// Type classes +// ============== +const FileType = _callable(class FileType extends Function { + /* + * Factory for creating file object types + * + * Instances of FileType are typically passed as type= arguments to the + * ArgumentParser add_argument() method. + * + * Keyword Arguments: + * - mode -- A string indicating how the file is to be opened. Accepts the + * same values as the builtin open() function. + * - bufsize -- The file's desired buffer size. Accepts the same values as + * the builtin open() function. + * - encoding -- The file's encoding. Accepts the same values as the + * builtin open() function. + * - errors -- A string indicating how encoding and decoding errors are to + * be handled. Accepts the same value as the builtin open() function. + */ + + constructor() { + let [ + flags, + encoding, + mode, + autoClose, + emitClose, + start, + end, + highWaterMark, + fs + ] = _parse_opts(arguments, { + flags: 'r', + encoding: undefined, + mode: undefined, // 0o666 + autoClose: undefined, // true + emitClose: undefined, // false + start: undefined, // 0 + end: undefined, // Infinity + highWaterMark: undefined, // 64 * 1024 + fs: undefined + }) + + // when this class is called as a function, redirect it to .call() method of itself + super('return arguments.callee.call.apply(arguments.callee, arguments)') + + Object.defineProperty(this, 'name', { + get() { + return sub('FileType(%r)', flags) + } + }) + this._flags = flags + this._options = {} + if (encoding !== undefined) this._options.encoding = encoding + if (mode !== undefined) this._options.mode = mode + if (autoClose !== undefined) this._options.autoClose = autoClose + if (emitClose !== undefined) this._options.emitClose = emitClose + if (start !== undefined) this._options.start = start + if (end !== undefined) this._options.end = end + if (highWaterMark !== undefined) this._options.highWaterMark = highWaterMark + if (fs !== undefined) this._options.fs = fs + } + + call(string) { + // the special argument "-" means sys.std{in,out} + if (string === '-') { + if (this._flags.includes('r')) { + return process.stdin + } else if (this._flags.includes('w')) { + return process.stdout + } else { + let msg = sub('argument "-" with mode %r', this._flags) + throw new TypeError(msg) + } + } + + // all other arguments are used as file names + let fd + try { + fd = fs.openSync(string, this._flags, this._options.mode) + } catch (e) { + let args = { filename: string, error: e.message } + let message = "can't open '%(filename)s': %(error)s" + throw new ArgumentTypeError(sub(message, args)) + } + + let options = Object.assign({ fd, flags: this._flags }, this._options) + if (this._flags.includes('r')) { + return fs.createReadStream(undefined, options) + } else if (this._flags.includes('w')) { + return fs.createWriteStream(undefined, options) + } else { + let msg = sub('argument "%s" with mode %r', string, this._flags) + throw new TypeError(msg) + } + } + + [util.inspect.custom]() { + let args = [ this._flags ] + let kwargs = Object.entries(this._options).map(([ k, v ]) => { + if (k === 'mode') v = { value: v, [util.inspect.custom]() { return '0o' + this.value.toString(8) } } + return [ k, v ] + }) + let args_str = [] + .concat(args.filter(arg => arg !== -1).map(repr)) + .concat(kwargs.filter(([/*kw*/, arg]) => arg !== undefined) + .map(([kw, arg]) => sub('%s=%r', kw, arg))) + .join(', ') + return sub('%s(%s)', this.constructor.name, args_str) + } + + toString() { + return this[util.inspect.custom]() + } +}) + +// =========================== +// Optional and Positional Parsing +// =========================== +const Namespace = _callable(class Namespace extends _AttributeHolder() { + /* + * Simple object for storing attributes. + * + * Implements equality by attribute names and values, and provides a simple + * string representation. + */ + + constructor(options = {}) { + super() + Object.assign(this, options) + } +}) + +// unset string tag to mimic plain object +Namespace.prototype[Symbol.toStringTag] = undefined + + +const _ActionsContainer = _camelcase_alias(_callable(class _ActionsContainer { + + constructor() { + let [ + description, + prefix_chars, + argument_default, + conflict_handler + ] = _parse_opts(arguments, { + description: no_default, + prefix_chars: no_default, + argument_default: no_default, + conflict_handler: no_default + }) + + this.description = description + this.argument_default = argument_default + this.prefix_chars = prefix_chars + this.conflict_handler = conflict_handler + + // set up registries + this._registries = {} + + // register actions + this.register('action', undefined, _StoreAction) + this.register('action', 'store', _StoreAction) + this.register('action', 'store_const', _StoreConstAction) + this.register('action', 'store_true', _StoreTrueAction) + this.register('action', 'store_false', _StoreFalseAction) + this.register('action', 'append', _AppendAction) + this.register('action', 'append_const', _AppendConstAction) + this.register('action', 'count', _CountAction) + this.register('action', 'help', _HelpAction) + this.register('action', 'version', _VersionAction) + this.register('action', 'parsers', _SubParsersAction) + this.register('action', 'extend', _ExtendAction) + // LEGACY (v1 compatibility): camelcase variants + ;[ 'storeConst', 'storeTrue', 'storeFalse', 'appendConst' ].forEach(old_name => { + let new_name = _to_new_name(old_name) + this.register('action', old_name, util.deprecate(this._registry_get('action', new_name), + sub('{action: "%s"} is renamed to {action: "%s"}', old_name, new_name))) + }) + // end + + // raise an exception if the conflict handler is invalid + this._get_handler() + + // action storage + this._actions = [] + this._option_string_actions = {} + + // groups + this._action_groups = [] + this._mutually_exclusive_groups = [] + + // defaults storage + this._defaults = {} + + // determines whether an "option" looks like a negative number + this._negative_number_matcher = /^-\d+$|^-\d*\.\d+$/ + + // whether or not there are any optionals that look like negative + // numbers -- uses a list so it can be shared and edited + this._has_negative_number_optionals = [] + } + + // ==================== + // Registration methods + // ==================== + register(registry_name, value, object) { + let registry = setdefault(this._registries, registry_name, {}) + registry[value] = object + } + + _registry_get(registry_name, value, default_value = undefined) { + return getattr(this._registries[registry_name], value, default_value) + } + + // ================================== + // Namespace default accessor methods + // ================================== + set_defaults(kwargs) { + Object.assign(this._defaults, kwargs) + + // if these defaults match any existing arguments, replace + // the previous default on the object with the new one + for (let action of this._actions) { + if (action.dest in kwargs) { + action.default = kwargs[action.dest] + } + } + } + + get_default(dest) { + for (let action of this._actions) { + if (action.dest === dest && action.default !== undefined) { + return action.default + } + } + return this._defaults[dest] + } + + + // ======================= + // Adding argument actions + // ======================= + add_argument() { + /* + * add_argument(dest, ..., name=value, ...) + * add_argument(option_string, option_string, ..., name=value, ...) + */ + let [ + args, + kwargs + ] = _parse_opts(arguments, { + '*args': no_default, + '**kwargs': no_default + }) + // LEGACY (v1 compatibility), old-style add_argument([ args ], { options }) + if (args.length === 1 && Array.isArray(args[0])) { + args = args[0] + deprecate('argument-array', + sub('use add_argument(%(args)s, {...}) instead of add_argument([ %(args)s ], { ... })', { + args: args.map(repr).join(', ') + })) + } + // end + + // if no positional args are supplied or only one is supplied and + // it doesn't look like an option string, parse a positional + // argument + let chars = this.prefix_chars + if (!args.length || args.length === 1 && !chars.includes(args[0][0])) { + if (args.length && 'dest' in kwargs) { + throw new TypeError('dest supplied twice for positional argument') + } + kwargs = this._get_positional_kwargs(...args, kwargs) + + // otherwise, we're adding an optional argument + } else { + kwargs = this._get_optional_kwargs(...args, kwargs) + } + + // if no default was supplied, use the parser-level default + if (!('default' in kwargs)) { + let dest = kwargs.dest + if (dest in this._defaults) { + kwargs.default = this._defaults[dest] + } else if (this.argument_default !== undefined) { + kwargs.default = this.argument_default + } + } + + // create the action object, and add it to the parser + let action_class = this._pop_action_class(kwargs) + if (typeof action_class !== 'function') { + throw new TypeError(sub('unknown action "%s"', action_class)) + } + // eslint-disable-next-line new-cap + let action = new action_class(kwargs) + + // raise an error if the action type is not callable + let type_func = this._registry_get('type', action.type, action.type) + if (typeof type_func !== 'function') { + throw new TypeError(sub('%r is not callable', type_func)) + } + + if (type_func === FileType) { + throw new TypeError(sub('%r is a FileType class object, instance of it' + + ' must be passed', type_func)) + } + + // raise an error if the metavar does not match the type + if ('_get_formatter' in this) { + try { + this._get_formatter()._format_args(action, undefined) + } catch (err) { + // check for 'invalid nargs value' is an artifact of TypeError and ValueError in js being the same + if (err instanceof TypeError && err.message !== 'invalid nargs value') { + throw new TypeError('length of metavar tuple does not match nargs') + } else { + throw err + } + } + } + + return this._add_action(action) + } + + add_argument_group() { + let group = _ArgumentGroup(this, ...arguments) + this._action_groups.push(group) + return group + } + + add_mutually_exclusive_group() { + // eslint-disable-next-line no-use-before-define + let group = _MutuallyExclusiveGroup(this, ...arguments) + this._mutually_exclusive_groups.push(group) + return group + } + + _add_action(action) { + // resolve any conflicts + this._check_conflict(action) + + // add to actions list + this._actions.push(action) + action.container = this + + // index the action by any option strings it has + for (let option_string of action.option_strings) { + this._option_string_actions[option_string] = action + } + + // set the flag if any option strings look like negative numbers + for (let option_string of action.option_strings) { + if (this._negative_number_matcher.test(option_string)) { + if (!this._has_negative_number_optionals.length) { + this._has_negative_number_optionals.push(true) + } + } + } + + // return the created action + return action + } + + _remove_action(action) { + _array_remove(this._actions, action) + } + + _add_container_actions(container) { + // collect groups by titles + let title_group_map = {} + for (let group of this._action_groups) { + if (group.title in title_group_map) { + let msg = 'cannot merge actions - two groups are named %r' + throw new TypeError(sub(msg, group.title)) + } + title_group_map[group.title] = group + } + + // map each action to its group + let group_map = new Map() + for (let group of container._action_groups) { + + // if a group with the title exists, use that, otherwise + // create a new group matching the container's group + if (!(group.title in title_group_map)) { + title_group_map[group.title] = this.add_argument_group({ + title: group.title, + description: group.description, + conflict_handler: group.conflict_handler + }) + } + + // map the actions to their new group + for (let action of group._group_actions) { + group_map.set(action, title_group_map[group.title]) + } + } + + // add container's mutually exclusive groups + // NOTE: if add_mutually_exclusive_group ever gains title= and + // description= then this code will need to be expanded as above + for (let group of container._mutually_exclusive_groups) { + let mutex_group = this.add_mutually_exclusive_group({ + required: group.required + }) + + // map the actions to their new mutex group + for (let action of group._group_actions) { + group_map.set(action, mutex_group) + } + } + + // add all actions to this container or their group + for (let action of container._actions) { + group_map.get(action)._add_action(action) + } + } + + _get_positional_kwargs() { + let [ + dest, + kwargs + ] = _parse_opts(arguments, { + dest: no_default, + '**kwargs': no_default + }) + + // make sure required is not specified + if ('required' in kwargs) { + let msg = "'required' is an invalid argument for positionals" + throw new TypeError(msg) + } + + // mark positional arguments as required if at least one is + // always required + if (![OPTIONAL, ZERO_OR_MORE].includes(kwargs.nargs)) { + kwargs.required = true + } + if (kwargs.nargs === ZERO_OR_MORE && !('default' in kwargs)) { + kwargs.required = true + } + + // return the keyword arguments with no option strings + return Object.assign(kwargs, { dest, option_strings: [] }) + } + + _get_optional_kwargs() { + let [ + args, + kwargs + ] = _parse_opts(arguments, { + '*args': no_default, + '**kwargs': no_default + }) + + // determine short and long option strings + let option_strings = [] + let long_option_strings = [] + let option_string + for (option_string of args) { + // error on strings that don't start with an appropriate prefix + if (!this.prefix_chars.includes(option_string[0])) { + let args = {option: option_string, + prefix_chars: this.prefix_chars} + let msg = 'invalid option string %(option)r: ' + + 'must start with a character %(prefix_chars)r' + throw new TypeError(sub(msg, args)) + } + + // strings starting with two prefix characters are long options + option_strings.push(option_string) + if (option_string.length > 1 && this.prefix_chars.includes(option_string[1])) { + long_option_strings.push(option_string) + } + } + + // infer destination, '--foo-bar' -> 'foo_bar' and '-x' -> 'x' + let dest = kwargs.dest + delete kwargs.dest + if (dest === undefined) { + let dest_option_string + if (long_option_strings.length) { + dest_option_string = long_option_strings[0] + } else { + dest_option_string = option_strings[0] + } + dest = _string_lstrip(dest_option_string, this.prefix_chars) + if (!dest) { + let msg = 'dest= is required for options like %r' + throw new TypeError(sub(msg, option_string)) + } + dest = dest.replace(/-/g, '_') + } + + // return the updated keyword arguments + return Object.assign(kwargs, { dest, option_strings }) + } + + _pop_action_class(kwargs, default_value = undefined) { + let action = getattr(kwargs, 'action', default_value) + delete kwargs.action + return this._registry_get('action', action, action) + } + + _get_handler() { + // determine function from conflict handler string + let handler_func_name = sub('_handle_conflict_%s', this.conflict_handler) + if (typeof this[handler_func_name] === 'function') { + return this[handler_func_name] + } else { + let msg = 'invalid conflict_resolution value: %r' + throw new TypeError(sub(msg, this.conflict_handler)) + } + } + + _check_conflict(action) { + + // find all options that conflict with this option + let confl_optionals = [] + for (let option_string of action.option_strings) { + if (hasattr(this._option_string_actions, option_string)) { + let confl_optional = this._option_string_actions[option_string] + confl_optionals.push([ option_string, confl_optional ]) + } + } + + // resolve any conflicts + if (confl_optionals.length) { + let conflict_handler = this._get_handler() + conflict_handler.call(this, action, confl_optionals) + } + } + + _handle_conflict_error(action, conflicting_actions) { + let message = conflicting_actions.length === 1 ? + 'conflicting option string: %s' : + 'conflicting option strings: %s' + let conflict_string = conflicting_actions.map(([ option_string/*, action*/ ]) => option_string).join(', ') + throw new ArgumentError(action, sub(message, conflict_string)) + } + + _handle_conflict_resolve(action, conflicting_actions) { + + // remove all conflicting options + for (let [ option_string, action ] of conflicting_actions) { + + // remove the conflicting option + _array_remove(action.option_strings, option_string) + delete this._option_string_actions[option_string] + + // if the option now has no option string, remove it from the + // container holding it + if (!action.option_strings.length) { + action.container._remove_action(action) + } + } + } +})) + + +const _ArgumentGroup = _callable(class _ArgumentGroup extends _ActionsContainer { + + constructor() { + let [ + container, + title, + description, + kwargs + ] = _parse_opts(arguments, { + container: no_default, + title: undefined, + description: undefined, + '**kwargs': no_default + }) + + // add any missing keyword arguments by checking the container + setdefault(kwargs, 'conflict_handler', container.conflict_handler) + setdefault(kwargs, 'prefix_chars', container.prefix_chars) + setdefault(kwargs, 'argument_default', container.argument_default) + super(Object.assign({ description }, kwargs)) + + // group attributes + this.title = title + this._group_actions = [] + + // share most attributes with the container + this._registries = container._registries + this._actions = container._actions + this._option_string_actions = container._option_string_actions + this._defaults = container._defaults + this._has_negative_number_optionals = + container._has_negative_number_optionals + this._mutually_exclusive_groups = container._mutually_exclusive_groups + } + + _add_action(action) { + action = super._add_action(action) + this._group_actions.push(action) + return action + } + + _remove_action(action) { + super._remove_action(action) + _array_remove(this._group_actions, action) + } +}) + + +const _MutuallyExclusiveGroup = _callable(class _MutuallyExclusiveGroup extends _ArgumentGroup { + + constructor() { + let [ + container, + required + ] = _parse_opts(arguments, { + container: no_default, + required: false + }) + + super(container) + this.required = required + this._container = container + } + + _add_action(action) { + if (action.required) { + let msg = 'mutually exclusive arguments must be optional' + throw new TypeError(msg) + } + action = this._container._add_action(action) + this._group_actions.push(action) + return action + } + + _remove_action(action) { + this._container._remove_action(action) + _array_remove(this._group_actions, action) + } +}) + + +const ArgumentParser = _camelcase_alias(_callable(class ArgumentParser extends _AttributeHolder(_ActionsContainer) { + /* + * Object for parsing command line strings into Python objects. + * + * Keyword Arguments: + * - prog -- The name of the program (default: sys.argv[0]) + * - usage -- A usage message (default: auto-generated from arguments) + * - description -- A description of what the program does + * - epilog -- Text following the argument descriptions + * - parents -- Parsers whose arguments should be copied into this one + * - formatter_class -- HelpFormatter class for printing help messages + * - prefix_chars -- Characters that prefix optional arguments + * - fromfile_prefix_chars -- Characters that prefix files containing + * additional arguments + * - argument_default -- The default value for all arguments + * - conflict_handler -- String indicating how to handle conflicts + * - add_help -- Add a -h/-help option + * - allow_abbrev -- Allow long options to be abbreviated unambiguously + * - exit_on_error -- Determines whether or not ArgumentParser exits with + * error info when an error occurs + */ + + constructor() { + let [ + prog, + usage, + description, + epilog, + parents, + formatter_class, + prefix_chars, + fromfile_prefix_chars, + argument_default, + conflict_handler, + add_help, + allow_abbrev, + exit_on_error, + debug, // LEGACY (v1 compatibility), debug mode + version // LEGACY (v1 compatibility), version + ] = _parse_opts(arguments, { + prog: undefined, + usage: undefined, + description: undefined, + epilog: undefined, + parents: [], + formatter_class: HelpFormatter, + prefix_chars: '-', + fromfile_prefix_chars: undefined, + argument_default: undefined, + conflict_handler: 'error', + add_help: true, + allow_abbrev: true, + exit_on_error: true, + debug: undefined, // LEGACY (v1 compatibility), debug mode + version: undefined // LEGACY (v1 compatibility), version + }) + + // LEGACY (v1 compatibility) + if (debug !== undefined) { + deprecate('debug', + 'The "debug" argument to ArgumentParser is deprecated. Please ' + + 'override ArgumentParser.exit function instead.' + ) + } + + if (version !== undefined) { + deprecate('version', + 'The "version" argument to ArgumentParser is deprecated. Please use ' + + "add_argument(..., { action: 'version', version: 'N', ... }) instead." + ) + } + // end + + super({ + description, + prefix_chars, + argument_default, + conflict_handler + }) + + // default setting for prog + if (prog === undefined) { + prog = path.basename(get_argv()[0] || '') + } + + this.prog = prog + this.usage = usage + this.epilog = epilog + this.formatter_class = formatter_class + this.fromfile_prefix_chars = fromfile_prefix_chars + this.add_help = add_help + this.allow_abbrev = allow_abbrev + this.exit_on_error = exit_on_error + // LEGACY (v1 compatibility), debug mode + this.debug = debug + // end + + this._positionals = this.add_argument_group('positional arguments') + this._optionals = this.add_argument_group('optional arguments') + this._subparsers = undefined + + // register types + function identity(string) { + return string + } + this.register('type', undefined, identity) + this.register('type', null, identity) + this.register('type', 'auto', identity) + this.register('type', 'int', function (x) { + let result = Number(x) + if (!Number.isInteger(result)) { + throw new TypeError(sub('could not convert string to int: %r', x)) + } + return result + }) + this.register('type', 'float', function (x) { + let result = Number(x) + if (isNaN(result)) { + throw new TypeError(sub('could not convert string to float: %r', x)) + } + return result + }) + this.register('type', 'str', String) + // LEGACY (v1 compatibility): custom types + this.register('type', 'string', + util.deprecate(String, 'use {type:"str"} or {type:String} instead of {type:"string"}')) + // end + + // add help argument if necessary + // (using explicit default to override global argument_default) + let default_prefix = prefix_chars.includes('-') ? '-' : prefix_chars[0] + if (this.add_help) { + this.add_argument( + default_prefix + 'h', + default_prefix.repeat(2) + 'help', + { + action: 'help', + default: SUPPRESS, + help: 'show this help message and exit' + } + ) + } + // LEGACY (v1 compatibility), version + if (version) { + this.add_argument( + default_prefix + 'v', + default_prefix.repeat(2) + 'version', + { + action: 'version', + default: SUPPRESS, + version: this.version, + help: "show program's version number and exit" + } + ) + } + // end + + // add parent arguments and defaults + for (let parent of parents) { + this._add_container_actions(parent) + Object.assign(this._defaults, parent._defaults) + } + } + + // ======================= + // Pretty __repr__ methods + // ======================= + _get_kwargs() { + let names = [ + 'prog', + 'usage', + 'description', + 'formatter_class', + 'conflict_handler', + 'add_help' + ] + return names.map(name => [ name, getattr(this, name) ]) + } + + // ================================== + // Optional/Positional adding methods + // ================================== + add_subparsers() { + let [ + kwargs + ] = _parse_opts(arguments, { + '**kwargs': no_default + }) + + if (this._subparsers !== undefined) { + this.error('cannot have multiple subparser arguments') + } + + // add the parser class to the arguments if it's not present + setdefault(kwargs, 'parser_class', this.constructor) + + if ('title' in kwargs || 'description' in kwargs) { + let title = getattr(kwargs, 'title', 'subcommands') + let description = getattr(kwargs, 'description', undefined) + delete kwargs.title + delete kwargs.description + this._subparsers = this.add_argument_group(title, description) + } else { + this._subparsers = this._positionals + } + + // prog defaults to the usage message of this parser, skipping + // optional arguments and with no "usage:" prefix + if (kwargs.prog === undefined) { + let formatter = this._get_formatter() + let positionals = this._get_positional_actions() + let groups = this._mutually_exclusive_groups + formatter.add_usage(this.usage, positionals, groups, '') + kwargs.prog = formatter.format_help().trim() + } + + // create the parsers action and add it to the positionals list + let parsers_class = this._pop_action_class(kwargs, 'parsers') + // eslint-disable-next-line new-cap + let action = new parsers_class(Object.assign({ option_strings: [] }, kwargs)) + this._subparsers._add_action(action) + + // return the created parsers action + return action + } + + _add_action(action) { + if (action.option_strings.length) { + this._optionals._add_action(action) + } else { + this._positionals._add_action(action) + } + return action + } + + _get_optional_actions() { + return this._actions.filter(action => action.option_strings.length) + } + + _get_positional_actions() { + return this._actions.filter(action => !action.option_strings.length) + } + + // ===================================== + // Command line argument parsing methods + // ===================================== + parse_args(args = undefined, namespace = undefined) { + let argv + [ args, argv ] = this.parse_known_args(args, namespace) + if (argv && argv.length > 0) { + let msg = 'unrecognized arguments: %s' + this.error(sub(msg, argv.join(' '))) + } + return args + } + + parse_known_args(args = undefined, namespace = undefined) { + if (args === undefined) { + args = get_argv().slice(1) + } + + // default Namespace built from parser defaults + if (namespace === undefined) { + namespace = new Namespace() + } + + // add any action defaults that aren't present + for (let action of this._actions) { + if (action.dest !== SUPPRESS) { + if (!hasattr(namespace, action.dest)) { + if (action.default !== SUPPRESS) { + setattr(namespace, action.dest, action.default) + } + } + } + } + + // add any parser defaults that aren't present + for (let dest of Object.keys(this._defaults)) { + if (!hasattr(namespace, dest)) { + setattr(namespace, dest, this._defaults[dest]) + } + } + + // parse the arguments and exit if there are any errors + if (this.exit_on_error) { + try { + [ namespace, args ] = this._parse_known_args(args, namespace) + } catch (err) { + if (err instanceof ArgumentError) { + this.error(err.message) + } else { + throw err + } + } + } else { + [ namespace, args ] = this._parse_known_args(args, namespace) + } + + if (hasattr(namespace, _UNRECOGNIZED_ARGS_ATTR)) { + args = args.concat(getattr(namespace, _UNRECOGNIZED_ARGS_ATTR)) + delattr(namespace, _UNRECOGNIZED_ARGS_ATTR) + } + + return [ namespace, args ] + } + + _parse_known_args(arg_strings, namespace) { + // replace arg strings that are file references + if (this.fromfile_prefix_chars !== undefined) { + arg_strings = this._read_args_from_files(arg_strings) + } + + // map all mutually exclusive arguments to the other arguments + // they can't occur with + let action_conflicts = new Map() + for (let mutex_group of this._mutually_exclusive_groups) { + let group_actions = mutex_group._group_actions + for (let [ i, mutex_action ] of Object.entries(mutex_group._group_actions)) { + let conflicts = action_conflicts.get(mutex_action) || [] + conflicts = conflicts.concat(group_actions.slice(0, +i)) + conflicts = conflicts.concat(group_actions.slice(+i + 1)) + action_conflicts.set(mutex_action, conflicts) + } + } + + // find all option indices, and determine the arg_string_pattern + // which has an 'O' if there is an option at an index, + // an 'A' if there is an argument, or a '-' if there is a '--' + let option_string_indices = {} + let arg_string_pattern_parts = [] + let arg_strings_iter = Object.entries(arg_strings)[Symbol.iterator]() + for (let [ i, arg_string ] of arg_strings_iter) { + + // all args after -- are non-options + if (arg_string === '--') { + arg_string_pattern_parts.push('-') + for ([ i, arg_string ] of arg_strings_iter) { + arg_string_pattern_parts.push('A') + } + + // otherwise, add the arg to the arg strings + // and note the index if it was an option + } else { + let option_tuple = this._parse_optional(arg_string) + let pattern + if (option_tuple === undefined) { + pattern = 'A' + } else { + option_string_indices[i] = option_tuple + pattern = 'O' + } + arg_string_pattern_parts.push(pattern) + } + } + + // join the pieces together to form the pattern + let arg_strings_pattern = arg_string_pattern_parts.join('') + + // converts arg strings to the appropriate and then takes the action + let seen_actions = new Set() + let seen_non_default_actions = new Set() + let extras + + let take_action = (action, argument_strings, option_string = undefined) => { + seen_actions.add(action) + let argument_values = this._get_values(action, argument_strings) + + // error if this argument is not allowed with other previously + // seen arguments, assuming that actions that use the default + // value don't really count as "present" + if (argument_values !== action.default) { + seen_non_default_actions.add(action) + for (let conflict_action of action_conflicts.get(action) || []) { + if (seen_non_default_actions.has(conflict_action)) { + let msg = 'not allowed with argument %s' + let action_name = _get_action_name(conflict_action) + throw new ArgumentError(action, sub(msg, action_name)) + } + } + } + + // take the action if we didn't receive a SUPPRESS value + // (e.g. from a default) + if (argument_values !== SUPPRESS) { + action(this, namespace, argument_values, option_string) + } + } + + // function to convert arg_strings into an optional action + let consume_optional = start_index => { + + // get the optional identified at this index + let option_tuple = option_string_indices[start_index] + let [ action, option_string, explicit_arg ] = option_tuple + + // identify additional optionals in the same arg string + // (e.g. -xyz is the same as -x -y -z if no args are required) + let action_tuples = [] + let stop + for (;;) { + + // if we found no optional action, skip it + if (action === undefined) { + extras.push(arg_strings[start_index]) + return start_index + 1 + } + + // if there is an explicit argument, try to match the + // optional's string arguments to only this + if (explicit_arg !== undefined) { + let arg_count = this._match_argument(action, 'A') + + // if the action is a single-dash option and takes no + // arguments, try to parse more single-dash options out + // of the tail of the option string + let chars = this.prefix_chars + if (arg_count === 0 && !chars.includes(option_string[1])) { + action_tuples.push([ action, [], option_string ]) + let char = option_string[0] + option_string = char + explicit_arg[0] + let new_explicit_arg = explicit_arg.slice(1) || undefined + let optionals_map = this._option_string_actions + if (hasattr(optionals_map, option_string)) { + action = optionals_map[option_string] + explicit_arg = new_explicit_arg + } else { + let msg = 'ignored explicit argument %r' + throw new ArgumentError(action, sub(msg, explicit_arg)) + } + + // if the action expect exactly one argument, we've + // successfully matched the option; exit the loop + } else if (arg_count === 1) { + stop = start_index + 1 + let args = [ explicit_arg ] + action_tuples.push([ action, args, option_string ]) + break + + // error if a double-dash option did not use the + // explicit argument + } else { + let msg = 'ignored explicit argument %r' + throw new ArgumentError(action, sub(msg, explicit_arg)) + } + + // if there is no explicit argument, try to match the + // optional's string arguments with the following strings + // if successful, exit the loop + } else { + let start = start_index + 1 + let selected_patterns = arg_strings_pattern.slice(start) + let arg_count = this._match_argument(action, selected_patterns) + stop = start + arg_count + let args = arg_strings.slice(start, stop) + action_tuples.push([ action, args, option_string ]) + break + } + } + + // add the Optional to the list and return the index at which + // the Optional's string args stopped + assert(action_tuples.length) + for (let [ action, args, option_string ] of action_tuples) { + take_action(action, args, option_string) + } + return stop + } + + // the list of Positionals left to be parsed; this is modified + // by consume_positionals() + let positionals = this._get_positional_actions() + + // function to convert arg_strings into positional actions + let consume_positionals = start_index => { + // match as many Positionals as possible + let selected_pattern = arg_strings_pattern.slice(start_index) + let arg_counts = this._match_arguments_partial(positionals, selected_pattern) + + // slice off the appropriate arg strings for each Positional + // and add the Positional and its args to the list + for (let i = 0; i < positionals.length && i < arg_counts.length; i++) { + let action = positionals[i] + let arg_count = arg_counts[i] + let args = arg_strings.slice(start_index, start_index + arg_count) + start_index += arg_count + take_action(action, args) + } + + // slice off the Positionals that we just parsed and return the + // index at which the Positionals' string args stopped + positionals = positionals.slice(arg_counts.length) + return start_index + } + + // consume Positionals and Optionals alternately, until we have + // passed the last option string + extras = [] + let start_index = 0 + let max_option_string_index = Math.max(-1, ...Object.keys(option_string_indices).map(Number)) + while (start_index <= max_option_string_index) { + + // consume any Positionals preceding the next option + let next_option_string_index = Math.min( + // eslint-disable-next-line no-loop-func + ...Object.keys(option_string_indices).map(Number).filter(index => index >= start_index) + ) + if (start_index !== next_option_string_index) { + let positionals_end_index = consume_positionals(start_index) + + // only try to parse the next optional if we didn't consume + // the option string during the positionals parsing + if (positionals_end_index > start_index) { + start_index = positionals_end_index + continue + } else { + start_index = positionals_end_index + } + } + + // if we consumed all the positionals we could and we're not + // at the index of an option string, there were extra arguments + if (!(start_index in option_string_indices)) { + let strings = arg_strings.slice(start_index, next_option_string_index) + extras = extras.concat(strings) + start_index = next_option_string_index + } + + // consume the next optional and any arguments for it + start_index = consume_optional(start_index) + } + + // consume any positionals following the last Optional + let stop_index = consume_positionals(start_index) + + // if we didn't consume all the argument strings, there were extras + extras = extras.concat(arg_strings.slice(stop_index)) + + // make sure all required actions were present and also convert + // action defaults which were not given as arguments + let required_actions = [] + for (let action of this._actions) { + if (!seen_actions.has(action)) { + if (action.required) { + required_actions.push(_get_action_name(action)) + } else { + // Convert action default now instead of doing it before + // parsing arguments to avoid calling convert functions + // twice (which may fail) if the argument was given, but + // only if it was defined already in the namespace + if (action.default !== undefined && + typeof action.default === 'string' && + hasattr(namespace, action.dest) && + action.default === getattr(namespace, action.dest)) { + setattr(namespace, action.dest, + this._get_value(action, action.default)) + } + } + } + } + + if (required_actions.length) { + this.error(sub('the following arguments are required: %s', + required_actions.join(', '))) + } + + // make sure all required groups had one option present + for (let group of this._mutually_exclusive_groups) { + if (group.required) { + let no_actions_used = true + for (let action of group._group_actions) { + if (seen_non_default_actions.has(action)) { + no_actions_used = false + break + } + } + + // if no actions were used, report the error + if (no_actions_used) { + let names = group._group_actions + .filter(action => action.help !== SUPPRESS) + .map(action => _get_action_name(action)) + let msg = 'one of the arguments %s is required' + this.error(sub(msg, names.join(' '))) + } + } + } + + // return the updated namespace and the extra arguments + return [ namespace, extras ] + } + + _read_args_from_files(arg_strings) { + // expand arguments referencing files + let new_arg_strings = [] + for (let arg_string of arg_strings) { + + // for regular arguments, just add them back into the list + if (!arg_string || !this.fromfile_prefix_chars.includes(arg_string[0])) { + new_arg_strings.push(arg_string) + + // replace arguments referencing files with the file content + } else { + try { + let args_file = fs.readFileSync(arg_string.slice(1), 'utf8') + let arg_strings = [] + for (let arg_line of splitlines(args_file)) { + for (let arg of this.convert_arg_line_to_args(arg_line)) { + arg_strings.push(arg) + } + } + arg_strings = this._read_args_from_files(arg_strings) + new_arg_strings = new_arg_strings.concat(arg_strings) + } catch (err) { + this.error(err.message) + } + } + } + + // return the modified argument list + return new_arg_strings + } + + convert_arg_line_to_args(arg_line) { + return [arg_line] + } + + _match_argument(action, arg_strings_pattern) { + // match the pattern for this action to the arg strings + let nargs_pattern = this._get_nargs_pattern(action) + let match = arg_strings_pattern.match(new RegExp('^' + nargs_pattern)) + + // raise an exception if we weren't able to find a match + if (match === null) { + let nargs_errors = { + undefined: 'expected one argument', + [OPTIONAL]: 'expected at most one argument', + [ONE_OR_MORE]: 'expected at least one argument' + } + let msg = nargs_errors[action.nargs] + if (msg === undefined) { + msg = sub(action.nargs === 1 ? 'expected %s argument' : 'expected %s arguments', action.nargs) + } + throw new ArgumentError(action, msg) + } + + // return the number of arguments matched + return match[1].length + } + + _match_arguments_partial(actions, arg_strings_pattern) { + // progressively shorten the actions list by slicing off the + // final actions until we find a match + let result = [] + for (let i of range(actions.length, 0, -1)) { + let actions_slice = actions.slice(0, i) + let pattern = actions_slice.map(action => this._get_nargs_pattern(action)).join('') + let match = arg_strings_pattern.match(new RegExp('^' + pattern)) + if (match !== null) { + result = result.concat(match.slice(1).map(string => string.length)) + break + } + } + + // return the list of arg string counts + return result + } + + _parse_optional(arg_string) { + // if it's an empty string, it was meant to be a positional + if (!arg_string) { + return undefined + } + + // if it doesn't start with a prefix, it was meant to be positional + if (!this.prefix_chars.includes(arg_string[0])) { + return undefined + } + + // if the option string is present in the parser, return the action + if (arg_string in this._option_string_actions) { + let action = this._option_string_actions[arg_string] + return [ action, arg_string, undefined ] + } + + // if it's just a single character, it was meant to be positional + if (arg_string.length === 1) { + return undefined + } + + // if the option string before the "=" is present, return the action + if (arg_string.includes('=')) { + let [ option_string, explicit_arg ] = _string_split(arg_string, '=', 1) + if (option_string in this._option_string_actions) { + let action = this._option_string_actions[option_string] + return [ action, option_string, explicit_arg ] + } + } + + // search through all possible prefixes of the option string + // and all actions in the parser for possible interpretations + let option_tuples = this._get_option_tuples(arg_string) + + // if multiple actions match, the option string was ambiguous + if (option_tuples.length > 1) { + let options = option_tuples.map(([ /*action*/, option_string/*, explicit_arg*/ ]) => option_string).join(', ') + let args = {option: arg_string, matches: options} + let msg = 'ambiguous option: %(option)s could match %(matches)s' + this.error(sub(msg, args)) + + // if exactly one action matched, this segmentation is good, + // so return the parsed action + } else if (option_tuples.length === 1) { + let [ option_tuple ] = option_tuples + return option_tuple + } + + // if it was not found as an option, but it looks like a negative + // number, it was meant to be positional + // unless there are negative-number-like options + if (this._negative_number_matcher.test(arg_string)) { + if (!this._has_negative_number_optionals.length) { + return undefined + } + } + + // if it contains a space, it was meant to be a positional + if (arg_string.includes(' ')) { + return undefined + } + + // it was meant to be an optional but there is no such option + // in this parser (though it might be a valid option in a subparser) + return [ undefined, arg_string, undefined ] + } + + _get_option_tuples(option_string) { + let result = [] + + // option strings starting with two prefix characters are only + // split at the '=' + let chars = this.prefix_chars + if (chars.includes(option_string[0]) && chars.includes(option_string[1])) { + if (this.allow_abbrev) { + let option_prefix, explicit_arg + if (option_string.includes('=')) { + [ option_prefix, explicit_arg ] = _string_split(option_string, '=', 1) + } else { + option_prefix = option_string + explicit_arg = undefined + } + for (let option_string of Object.keys(this._option_string_actions)) { + if (option_string.startsWith(option_prefix)) { + let action = this._option_string_actions[option_string] + let tup = [ action, option_string, explicit_arg ] + result.push(tup) + } + } + } + + // single character options can be concatenated with their arguments + // but multiple character options always have to have their argument + // separate + } else if (chars.includes(option_string[0]) && !chars.includes(option_string[1])) { + let option_prefix = option_string + let explicit_arg = undefined + let short_option_prefix = option_string.slice(0, 2) + let short_explicit_arg = option_string.slice(2) + + for (let option_string of Object.keys(this._option_string_actions)) { + if (option_string === short_option_prefix) { + let action = this._option_string_actions[option_string] + let tup = [ action, option_string, short_explicit_arg ] + result.push(tup) + } else if (option_string.startsWith(option_prefix)) { + let action = this._option_string_actions[option_string] + let tup = [ action, option_string, explicit_arg ] + result.push(tup) + } + } + + // shouldn't ever get here + } else { + this.error(sub('unexpected option string: %s', option_string)) + } + + // return the collected option tuples + return result + } + + _get_nargs_pattern(action) { + // in all examples below, we have to allow for '--' args + // which are represented as '-' in the pattern + let nargs = action.nargs + let nargs_pattern + + // the default (None) is assumed to be a single argument + if (nargs === undefined) { + nargs_pattern = '(-*A-*)' + + // allow zero or one arguments + } else if (nargs === OPTIONAL) { + nargs_pattern = '(-*A?-*)' + + // allow zero or more arguments + } else if (nargs === ZERO_OR_MORE) { + nargs_pattern = '(-*[A-]*)' + + // allow one or more arguments + } else if (nargs === ONE_OR_MORE) { + nargs_pattern = '(-*A[A-]*)' + + // allow any number of options or arguments + } else if (nargs === REMAINDER) { + nargs_pattern = '([-AO]*)' + + // allow one argument followed by any number of options or arguments + } else if (nargs === PARSER) { + nargs_pattern = '(-*A[-AO]*)' + + // suppress action, like nargs=0 + } else if (nargs === SUPPRESS) { + nargs_pattern = '(-*-*)' + + // all others should be integers + } else { + nargs_pattern = sub('(-*%s-*)', 'A'.repeat(nargs).split('').join('-*')) + } + + // if this is an optional action, -- is not allowed + if (action.option_strings.length) { + nargs_pattern = nargs_pattern.replace(/-\*/g, '') + nargs_pattern = nargs_pattern.replace(/-/g, '') + } + + // return the pattern + return nargs_pattern + } + + // ======================== + // Alt command line argument parsing, allowing free intermix + // ======================== + + parse_intermixed_args(args = undefined, namespace = undefined) { + let argv + [ args, argv ] = this.parse_known_intermixed_args(args, namespace) + if (argv.length) { + let msg = 'unrecognized arguments: %s' + this.error(sub(msg, argv.join(' '))) + } + return args + } + + parse_known_intermixed_args(args = undefined, namespace = undefined) { + // returns a namespace and list of extras + // + // positional can be freely intermixed with optionals. optionals are + // first parsed with all positional arguments deactivated. The 'extras' + // are then parsed. If the parser definition is incompatible with the + // intermixed assumptions (e.g. use of REMAINDER, subparsers) a + // TypeError is raised. + // + // positionals are 'deactivated' by setting nargs and default to + // SUPPRESS. This blocks the addition of that positional to the + // namespace + + let extras + let positionals = this._get_positional_actions() + let a = positionals.filter(action => [ PARSER, REMAINDER ].includes(action.nargs)) + if (a.length) { + throw new TypeError(sub('parse_intermixed_args: positional arg' + + ' with nargs=%s', a[0].nargs)) + } + + for (let group of this._mutually_exclusive_groups) { + for (let action of group._group_actions) { + if (positionals.includes(action)) { + throw new TypeError('parse_intermixed_args: positional in' + + ' mutuallyExclusiveGroup') + } + } + } + + let save_usage + try { + save_usage = this.usage + let remaining_args + try { + if (this.usage === undefined) { + // capture the full usage for use in error messages + this.usage = this.format_usage().slice(7) + } + for (let action of positionals) { + // deactivate positionals + action.save_nargs = action.nargs + // action.nargs = 0 + action.nargs = SUPPRESS + action.save_default = action.default + action.default = SUPPRESS + } + [ namespace, remaining_args ] = this.parse_known_args(args, + namespace) + for (let action of positionals) { + // remove the empty positional values from namespace + let attr = getattr(namespace, action.dest) + if (Array.isArray(attr) && attr.length === 0) { + // eslint-disable-next-line no-console + console.warn(sub('Do not expect %s in %s', action.dest, namespace)) + delattr(namespace, action.dest) + } + } + } finally { + // restore nargs and usage before exiting + for (let action of positionals) { + action.nargs = action.save_nargs + action.default = action.save_default + } + } + let optionals = this._get_optional_actions() + try { + // parse positionals. optionals aren't normally required, but + // they could be, so make sure they aren't. + for (let action of optionals) { + action.save_required = action.required + action.required = false + } + for (let group of this._mutually_exclusive_groups) { + group.save_required = group.required + group.required = false + } + [ namespace, extras ] = this.parse_known_args(remaining_args, + namespace) + } finally { + // restore parser values before exiting + for (let action of optionals) { + action.required = action.save_required + } + for (let group of this._mutually_exclusive_groups) { + group.required = group.save_required + } + } + } finally { + this.usage = save_usage + } + return [ namespace, extras ] + } + + // ======================== + // Value conversion methods + // ======================== + _get_values(action, arg_strings) { + // for everything but PARSER, REMAINDER args, strip out first '--' + if (![PARSER, REMAINDER].includes(action.nargs)) { + try { + _array_remove(arg_strings, '--') + } catch (err) {} + } + + let value + // optional argument produces a default when not present + if (!arg_strings.length && action.nargs === OPTIONAL) { + if (action.option_strings.length) { + value = action.const + } else { + value = action.default + } + if (typeof value === 'string') { + value = this._get_value(action, value) + this._check_value(action, value) + } + + // when nargs='*' on a positional, if there were no command-line + // args, use the default if it is anything other than None + } else if (!arg_strings.length && action.nargs === ZERO_OR_MORE && + !action.option_strings.length) { + if (action.default !== undefined) { + value = action.default + } else { + value = arg_strings + } + this._check_value(action, value) + + // single argument or optional argument produces a single value + } else if (arg_strings.length === 1 && [undefined, OPTIONAL].includes(action.nargs)) { + let arg_string = arg_strings[0] + value = this._get_value(action, arg_string) + this._check_value(action, value) + + // REMAINDER arguments convert all values, checking none + } else if (action.nargs === REMAINDER) { + value = arg_strings.map(v => this._get_value(action, v)) + + // PARSER arguments convert all values, but check only the first + } else if (action.nargs === PARSER) { + value = arg_strings.map(v => this._get_value(action, v)) + this._check_value(action, value[0]) + + // SUPPRESS argument does not put anything in the namespace + } else if (action.nargs === SUPPRESS) { + value = SUPPRESS + + // all other types of nargs produce a list + } else { + value = arg_strings.map(v => this._get_value(action, v)) + for (let v of value) { + this._check_value(action, v) + } + } + + // return the converted value + return value + } + + _get_value(action, arg_string) { + let type_func = this._registry_get('type', action.type, action.type) + if (typeof type_func !== 'function') { + let msg = '%r is not callable' + throw new ArgumentError(action, sub(msg, type_func)) + } + + // convert the value to the appropriate type + let result + try { + try { + result = type_func(arg_string) + } catch (err) { + // Dear TC39, why would you ever consider making es6 classes not callable? + // We had one universal interface, [[Call]], which worked for anything + // (with familiar this-instanceof guard for classes). Now we have two. + if (err instanceof TypeError && + /Class constructor .* cannot be invoked without 'new'/.test(err.message)) { + // eslint-disable-next-line new-cap + result = new type_func(arg_string) + } else { + throw err + } + } + + } catch (err) { + // ArgumentTypeErrors indicate errors + if (err instanceof ArgumentTypeError) { + //let name = getattr(action.type, 'name', repr(action.type)) + let msg = err.message + throw new ArgumentError(action, msg) + + // TypeErrors or ValueErrors also indicate errors + } else if (err instanceof TypeError) { + let name = getattr(action.type, 'name', repr(action.type)) + let args = {type: name, value: arg_string} + let msg = 'invalid %(type)s value: %(value)r' + throw new ArgumentError(action, sub(msg, args)) + } else { + throw err + } + } + + // return the converted value + return result + } + + _check_value(action, value) { + // converted value must be one of the choices (if specified) + if (action.choices !== undefined && !_choices_to_array(action.choices).includes(value)) { + let args = {value, + choices: _choices_to_array(action.choices).map(repr).join(', ')} + let msg = 'invalid choice: %(value)r (choose from %(choices)s)' + throw new ArgumentError(action, sub(msg, args)) + } + } + + // ======================= + // Help-formatting methods + // ======================= + format_usage() { + let formatter = this._get_formatter() + formatter.add_usage(this.usage, this._actions, + this._mutually_exclusive_groups) + return formatter.format_help() + } + + format_help() { + let formatter = this._get_formatter() + + // usage + formatter.add_usage(this.usage, this._actions, + this._mutually_exclusive_groups) + + // description + formatter.add_text(this.description) + + // positionals, optionals and user-defined groups + for (let action_group of this._action_groups) { + formatter.start_section(action_group.title) + formatter.add_text(action_group.description) + formatter.add_arguments(action_group._group_actions) + formatter.end_section() + } + + // epilog + formatter.add_text(this.epilog) + + // determine help from format above + return formatter.format_help() + } + + _get_formatter() { + // eslint-disable-next-line new-cap + return new this.formatter_class({ prog: this.prog }) + } + + // ===================== + // Help-printing methods + // ===================== + print_usage(file = undefined) { + if (file === undefined) file = process.stdout + this._print_message(this.format_usage(), file) + } + + print_help(file = undefined) { + if (file === undefined) file = process.stdout + this._print_message(this.format_help(), file) + } + + _print_message(message, file = undefined) { + if (message) { + if (file === undefined) file = process.stderr + file.write(message) + } + } + + // =============== + // Exiting methods + // =============== + exit(status = 0, message = undefined) { + if (message) { + this._print_message(message, process.stderr) + } + process.exit(status) + } + + error(message) { + /* + * error(message: string) + * + * Prints a usage message incorporating the message to stderr and + * exits. + * + * If you override this in a subclass, it should not return -- it + * should either exit or raise an exception. + */ + + // LEGACY (v1 compatibility), debug mode + if (this.debug === true) throw new Error(message) + // end + this.print_usage(process.stderr) + let args = {prog: this.prog, message: message} + this.exit(2, sub('%(prog)s: error: %(message)s\n', args)) + } +})) + + +module.exports = { + ArgumentParser, + ArgumentError, + ArgumentTypeError, + BooleanOptionalAction, + FileType, + HelpFormatter, + ArgumentDefaultsHelpFormatter, + RawDescriptionHelpFormatter, + RawTextHelpFormatter, + MetavarTypeHelpFormatter, + Namespace, + Action, + ONE_OR_MORE, + OPTIONAL, + PARSER, + REMAINDER, + SUPPRESS, + ZERO_OR_MORE +} + +// LEGACY (v1 compatibility), Const alias +Object.defineProperty(module.exports, 'Const', { + get() { + let result = {} + Object.entries({ ONE_OR_MORE, OPTIONAL, PARSER, REMAINDER, SUPPRESS, ZERO_OR_MORE }).forEach(([ n, v ]) => { + Object.defineProperty(result, n, { + get() { + deprecate(n, sub('use argparse.%s instead of argparse.Const.%s', n, n)) + return v + } + }) + }) + Object.entries({ _UNRECOGNIZED_ARGS_ATTR }).forEach(([ n, v ]) => { + Object.defineProperty(result, n, { + get() { + deprecate(n, sub('argparse.Const.%s is an internal symbol and will no longer be available', n)) + return v + } + }) + }) + return result + }, + enumerable: false +}) +// end diff --git a/node_modules/argparse/package.json b/node_modules/argparse/package.json new file mode 100644 index 00000000..647d2aff --- /dev/null +++ b/node_modules/argparse/package.json @@ -0,0 +1,31 @@ +{ + "name": "argparse", + "description": "CLI arguments parser. Native port of python's argparse.", + "version": "2.0.1", + "keywords": [ + "cli", + "parser", + "argparse", + "option", + "args" + ], + "main": "argparse.js", + "files": [ + "argparse.js", + "lib/" + ], + "license": "Python-2.0", + "repository": "nodeca/argparse", + "scripts": { + "lint": "eslint .", + "test": "npm run lint && nyc mocha", + "coverage": "npm run test && nyc report --reporter html" + }, + "devDependencies": { + "@babel/eslint-parser": "^7.11.0", + "@babel/plugin-syntax-class-properties": "^7.10.4", + "eslint": "^7.5.0", + "mocha": "^8.0.1", + "nyc": "^15.1.0" + } +} diff --git a/node_modules/array-union/index.d.ts b/node_modules/array-union/index.d.ts new file mode 100644 index 00000000..379fc1d2 --- /dev/null +++ b/node_modules/array-union/index.d.ts @@ -0,0 +1,25 @@ +/** +Create an array of unique values, in order, from the input arrays. + +@example +``` +import arrayUnion = require('array-union'); + +arrayUnion([1, 1, 2, 3], [2, 3]); +//=> [1, 2, 3] + +arrayUnion(['foo', 'foo', 'bar']); +//=> ['foo', 'bar'] + +arrayUnion(['🐱', '🦄', '🐻'], ['🦄', '🌈']); +//=> ['🐱', '🦄', '🐻', '🌈'] + +arrayUnion(['🐱', '🦄'], ['🐻', '🦄'], ['🐶', '🌈', '🌈']); +//=> ['🐱', '🦄', '🐻', '🐶', '🌈'] +``` +*/ +declare function arrayUnion( + ...arguments: readonly ArgumentsType[] +): ArgumentsType; + +export = arrayUnion; diff --git a/node_modules/array-union/index.js b/node_modules/array-union/index.js new file mode 100644 index 00000000..7f85d3d1 --- /dev/null +++ b/node_modules/array-union/index.js @@ -0,0 +1,5 @@ +'use strict'; + +module.exports = (...arguments_) => { + return [...new Set([].concat(...arguments_))]; +}; diff --git a/node_modules/array-union/license b/node_modules/array-union/license new file mode 100644 index 00000000..e7af2f77 --- /dev/null +++ b/node_modules/array-union/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/node_modules/array-union/package.json b/node_modules/array-union/package.json new file mode 100644 index 00000000..5ad5afa7 --- /dev/null +++ b/node_modules/array-union/package.json @@ -0,0 +1,38 @@ +{ + "name": "array-union", + "version": "2.1.0", + "description": "Create an array of unique values, in order, from the input arrays", + "license": "MIT", + "repository": "sindresorhus/array-union", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "sindresorhus.com" + }, + "engines": { + "node": ">=8" + }, + "scripts": { + "test": "xo && ava && tsd" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "keywords": [ + "array", + "set", + "uniq", + "unique", + "duplicate", + "remove", + "union", + "combine", + "merge" + ], + "devDependencies": { + "ava": "^1.4.1", + "tsd": "^0.7.2", + "xo": "^0.24.0" + } +} diff --git a/node_modules/array-union/readme.md b/node_modules/array-union/readme.md new file mode 100644 index 00000000..2474a1ae --- /dev/null +++ b/node_modules/array-union/readme.md @@ -0,0 +1,34 @@ +# array-union [![Build Status](https://travis-ci.org/sindresorhus/array-union.svg?branch=master)](https://travis-ci.org/sindresorhus/array-union) + +> Create an array of unique values, in order, from the input arrays + + +## Install + +``` +$ npm install array-union +``` + + +## Usage + +```js +const arrayUnion = require('array-union'); + +arrayUnion([1, 1, 2, 3], [2, 3]); +//=> [1, 2, 3] + +arrayUnion(['foo', 'foo', 'bar']); +//=> ['foo', 'bar'] + +arrayUnion(['🐱', '🦄', '🐻'], ['🦄', '🌈']); +//=> ['🐱', '🦄', '🐻', '🌈'] + +arrayUnion(['🐱', '🦄'], ['🐻', '🦄'], ['🐶', '🌈', '🌈']); +//=> ['🐱', '🦄', '🐻', '🐶', '🌈'] +``` + + +## License + +MIT © [Sindre Sorhus](https://sindresorhus.com) diff --git a/node_modules/astral-regex/index.d.ts b/node_modules/astral-regex/index.d.ts new file mode 100644 index 00000000..e81ac315 --- /dev/null +++ b/node_modules/astral-regex/index.d.ts @@ -0,0 +1,28 @@ +declare namespace astralRegex { + interface Options { + /** + Only match an exact string. Useful with `RegExp#test()` to check if a string is a astral symbol. Default: `false` _(Matches any astral symbols in a string)_ + */ + readonly exact?: boolean; + } +} + +/** +Regular expression for matching [astral symbols](https://everything2.com/title/astral+plane). + +@returns A `RegExp` for matching astral symbols. + +@example +``` +import astralRegex = require('astral-regex'); + +astralRegex({exact: true}).test('🦄'); +//=> true + +'foo 🦄 💩 bar'.match(astralRegex()); +//=> ['🦄', '💩'] +``` +*/ +declare function astralRegex(options?: astralRegex.Options): RegExp; + +export = astralRegex; diff --git a/node_modules/astral-regex/index.js b/node_modules/astral-regex/index.js new file mode 100644 index 00000000..651177d4 --- /dev/null +++ b/node_modules/astral-regex/index.js @@ -0,0 +1,6 @@ +'use strict'; +const regex = '[\uD800-\uDBFF][\uDC00-\uDFFF]'; + +const astralRegex = options => options && options.exact ? new RegExp(`^${regex}$`) : new RegExp(regex, 'g'); + +module.exports = astralRegex; diff --git a/node_modules/astral-regex/license b/node_modules/astral-regex/license new file mode 100644 index 00000000..db6bc32c --- /dev/null +++ b/node_modules/astral-regex/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Kevin Mårtensson (github.com/kevva) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/node_modules/astral-regex/package.json b/node_modules/astral-regex/package.json new file mode 100644 index 00000000..d1ceea7f --- /dev/null +++ b/node_modules/astral-regex/package.json @@ -0,0 +1,33 @@ +{ + "name": "astral-regex", + "version": "2.0.0", + "description": "Regular expression for matching astral symbols", + "license": "MIT", + "repository": "kevva/astral-regex", + "author": { + "name": "Kevin Mårtensson", + "email": "kevinmartensson@gmail.com", + "url": "github.com/kevva" + }, + "engines": { + "node": ">=8" + }, + "scripts": { + "test": "xo && ava && tsd" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "keywords": [ + "astral", + "emoji", + "regex", + "surrogate" + ], + "devDependencies": { + "ava": "^1.4.1", + "tsd": "^0.7.2", + "xo": "^0.24.0" + } +} diff --git a/node_modules/astral-regex/readme.md b/node_modules/astral-regex/readme.md new file mode 100644 index 00000000..89d6659a --- /dev/null +++ b/node_modules/astral-regex/readme.md @@ -0,0 +1,46 @@ +# astral-regex [![Build Status](https://travis-ci.org/kevva/astral-regex.svg?branch=master)](https://travis-ci.org/kevva/astral-regex) + +> Regular expression for matching [astral symbols](https://everything2.com/title/astral+plane) + + +## Install + +``` +$ npm install astral-regex +``` + + +## Usage + +```js +const astralRegex = require('astral-regex'); + +astralRegex({exact: true}).test('🦄'); +//=> true + +'foo 🦄 💩 bar'.match(astralRegex()); +//=> ['🦄', '💩'] +``` + + +## API + +### astralRegex([options]) + +Returns a `RegExp` for matching astral symbols. + +#### options + +Type: `Object` + +##### exact + +Type: `boolean`
+Default: `false` *(Matches any astral symbols in a string)* + +Only match an exact string. Useful with `RegExp#test()` to check if a string is a astral symbol. + + +## License + +MIT © [Kevin Mårtensson](https://github.com/kevva) diff --git a/node_modules/balanced-match/.github/FUNDING.yml b/node_modules/balanced-match/.github/FUNDING.yml new file mode 100644 index 00000000..1c904eb2 --- /dev/null +++ b/node_modules/balanced-match/.github/FUNDING.yml @@ -0,0 +1,2 @@ +tidelift: 'npm/balanced-match' +patreon: juliangruber diff --git a/node_modules/balanced-match/LICENSE.md b/node_modules/balanced-match/LICENSE.md new file mode 100644 index 00000000..2cdc8e41 --- /dev/null +++ b/node_modules/balanced-match/LICENSE.md @@ -0,0 +1,21 @@ +(MIT) + +Copyright (c) 2013 Julian Gruber <julian@juliangruber.com> + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/node_modules/balanced-match/README.md b/node_modules/balanced-match/README.md new file mode 100644 index 00000000..a7ccfec3 --- /dev/null +++ b/node_modules/balanced-match/README.md @@ -0,0 +1,97 @@ +# balanced-match + +Match balanced string pairs, like `{` and `}` or `` and ``. Supports regular expressions as well! + +[![build status](https://secure.travis-ci.org/juliangruber/balanced-match.svg)](http://travis-ci.org/juliangruber/balanced-match) +[![downloads](https://img.shields.io/npm/dm/balanced-match.svg)](https://www.npmjs.org/package/balanced-match) + +[![testling badge](https://ci.testling.com/juliangruber/balanced-match.png)](https://ci.testling.com/juliangruber/balanced-match) + +## Example + +Get the first matching pair of braces: + +```js +var balanced = require('balanced-match') + +console.log(balanced('{', '}', 'pre{in{nested}}post')) +console.log(balanced('{', '}', 'pre{first}between{second}post')) +console.log(balanced(/\s+\{\s+/, /\s+\}\s+/, 'pre { in{nest} } post')) +``` + +The matches are: + +```bash +$ node example.js +{ start: 3, end: 14, pre: 'pre', body: 'in{nested}', post: 'post' } +{ start: 3, + end: 9, + pre: 'pre', + body: 'first', + post: 'between{second}post' } +{ start: 3, end: 17, pre: 'pre', body: 'in{nest}', post: 'post' } +``` + +## API + +### var m = balanced(a, b, str) + +For the first non-nested matching pair of `a` and `b` in `str`, return an +object with those keys: + +- **start** the index of the first match of `a` +- **end** the index of the matching `b` +- **pre** the preamble, `a` and `b` not included +- **body** the match, `a` and `b` not included +- **post** the postscript, `a` and `b` not included + +If there's no match, `undefined` will be returned. + +If the `str` contains more `a` than `b` / there are unmatched pairs, the first match that was closed will be used. For example, `{{a}` will match `['{', 'a', '']` and `{a}}` will match `['', 'a', '}']`. + +### var r = balanced.range(a, b, str) + +For the first non-nested matching pair of `a` and `b` in `str`, return an +array with indexes: `[ , ]`. + +If there's no match, `undefined` will be returned. + +If the `str` contains more `a` than `b` / there are unmatched pairs, the first match that was closed will be used. For example, `{{a}` will match `[ 1, 3 ]` and `{a}}` will match `[0, 2]`. + +## Installation + +With [npm](https://npmjs.org) do: + +```bash +npm install balanced-match +``` + +## Security contact information + +To report a security vulnerability, please use the +[Tidelift security contact](https://tidelift.com/security). +Tidelift will coordinate the fix and disclosure. + +## License + +(MIT) + +Copyright (c) 2013 Julian Gruber <julian@juliangruber.com> + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +of the Software, and to permit persons to whom the Software is furnished to do +so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/node_modules/balanced-match/index.js b/node_modules/balanced-match/index.js new file mode 100644 index 00000000..7c3266ff --- /dev/null +++ b/node_modules/balanced-match/index.js @@ -0,0 +1,64 @@ +'use strict' +module.exports = balanced +function balanced (a, b, str) { + if (a instanceof RegExp) a = maybeMatch(a, str) + if (b instanceof RegExp) b = maybeMatch(b, str) + + const r = range(a, b, str) + + return ( + r && { + start: r[0], + end: r[1], + pre: str.slice(0, r[0]), + body: str.slice(r[0] + a.length, r[1]), + post: str.slice(r[1] + b.length) + } + ) +} + +function maybeMatch (reg, str) { + const m = str.match(reg) + return m ? m[0] : null +} + +balanced.range = range +function range (a, b, str) { + let begs, beg, left, right, result + let ai = str.indexOf(a) + let bi = str.indexOf(b, ai + 1) + let i = ai + + if (ai >= 0 && bi > 0) { + if (a === b) { + return [ai, bi] + } + begs = [] + left = str.length + + while (i >= 0 && !result) { + if (i === ai) { + begs.push(i) + ai = str.indexOf(a, i + 1) + } else if (begs.length === 1) { + result = [begs.pop(), bi] + } else { + beg = begs.pop() + if (beg < left) { + left = beg + right = bi + } + + bi = str.indexOf(b, i + 1) + } + + i = ai < bi && ai >= 0 ? ai : bi + } + + if (begs.length) { + result = [left, right] + } + } + + return result +} diff --git a/node_modules/balanced-match/package.json b/node_modules/balanced-match/package.json new file mode 100644 index 00000000..c304ecff --- /dev/null +++ b/node_modules/balanced-match/package.json @@ -0,0 +1,52 @@ +{ + "name": "balanced-match", + "description": "Match balanced character pairs, like \"{\" and \"}\"", + "version": "2.0.0", + "repository": { + "type": "git", + "url": "git://github.com/juliangruber/balanced-match.git" + }, + "homepage": "https://github.com/juliangruber/balanced-match", + "main": "index.js", + "scripts": { + "test": "prettier-standard && standard && tape test/test.js", + "bench": "matcha test/bench.js", + "release": "np" + }, + "devDependencies": { + "@c4312/matcha": "^1.3.1", + "np": "^7.4.0", + "prettier-standard": "^16.4.1", + "standard": "^16.0.3", + "tape": "^4.6.0" + }, + "keywords": [ + "match", + "regexp", + "test", + "balanced", + "parse" + ], + "author": { + "name": "Julian Gruber", + "email": "mail@juliangruber.com", + "url": "http://juliangruber.com" + }, + "license": "MIT", + "testling": { + "files": "test/*.js", + "browsers": [ + "ie/8..latest", + "firefox/20..latest", + "firefox/nightly", + "chrome/25..latest", + "chrome/canary", + "opera/12..latest", + "opera/next", + "safari/5.1..latest", + "ipad/6.0..latest", + "iphone/6.0..latest", + "android-browser/4.2..latest" + ] + } +} diff --git a/node_modules/braces/LICENSE b/node_modules/braces/LICENSE new file mode 100644 index 00000000..9af4a67d --- /dev/null +++ b/node_modules/braces/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2014-present, Jon Schlinkert. + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/node_modules/braces/README.md b/node_modules/braces/README.md new file mode 100644 index 00000000..f59dd604 --- /dev/null +++ b/node_modules/braces/README.md @@ -0,0 +1,586 @@ +# braces [![Donate](https://img.shields.io/badge/Donate-PayPal-green.svg)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=W8YFZ425KND68) [![NPM version](https://img.shields.io/npm/v/braces.svg?style=flat)](https://www.npmjs.com/package/braces) [![NPM monthly downloads](https://img.shields.io/npm/dm/braces.svg?style=flat)](https://npmjs.org/package/braces) [![NPM total downloads](https://img.shields.io/npm/dt/braces.svg?style=flat)](https://npmjs.org/package/braces) [![Linux Build Status](https://img.shields.io/travis/micromatch/braces.svg?style=flat&label=Travis)](https://travis-ci.org/micromatch/braces) + +> Bash-like brace expansion, implemented in JavaScript. Safer than other brace expansion libs, with complete support for the Bash 4.3 braces specification, without sacrificing speed. + +Please consider following this project's author, [Jon Schlinkert](https://github.com/jonschlinkert), and consider starring the project to show your :heart: and support. + +## Install + +Install with [npm](https://www.npmjs.com/): + +```sh +$ npm install --save braces +``` + +## v3.0.0 Released!! + +See the [changelog](CHANGELOG.md) for details. + +## Why use braces? + +Brace patterns make globs more powerful by adding the ability to match specific ranges and sequences of characters. + +- **Accurate** - complete support for the [Bash 4.3 Brace Expansion](www.gnu.org/software/bash/) specification (passes all of the Bash braces tests) +- **[fast and performant](#benchmarks)** - Starts fast, runs fast and [scales well](#performance) as patterns increase in complexity. +- **Organized code base** - The parser and compiler are easy to maintain and update when edge cases crop up. +- **Well-tested** - Thousands of test assertions, and passes all of the Bash, minimatch, and [brace-expansion](https://github.com/juliangruber/brace-expansion) unit tests (as of the date this was written). +- **Safer** - You shouldn't have to worry about users defining aggressive or malicious brace patterns that can break your application. Braces takes measures to prevent malicious regex that can be used for DDoS attacks (see [catastrophic backtracking](https://www.regular-expressions.info/catastrophic.html)). +- [Supports lists](#lists) - (aka "sets") `a/{b,c}/d` => `['a/b/d', 'a/c/d']` +- [Supports sequences](#sequences) - (aka "ranges") `{01..03}` => `['01', '02', '03']` +- [Supports steps](#steps) - (aka "increments") `{2..10..2}` => `['2', '4', '6', '8', '10']` +- [Supports escaping](#escaping) - To prevent evaluation of special characters. + +## Usage + +The main export is a function that takes one or more brace `patterns` and `options`. + +```js +const braces = require('braces'); +// braces(patterns[, options]); + +console.log(braces(['{01..05}', '{a..e}'])); +//=> ['(0[1-5])', '([a-e])'] + +console.log(braces(['{01..05}', '{a..e}'], { expand: true })); +//=> ['01', '02', '03', '04', '05', 'a', 'b', 'c', 'd', 'e'] +``` + +### Brace Expansion vs. Compilation + +By default, brace patterns are compiled into strings that are optimized for creating regular expressions and matching. + +**Compiled** + +```js +console.log(braces('a/{x,y,z}/b')); +//=> ['a/(x|y|z)/b'] +console.log(braces(['a/{01..20}/b', 'a/{1..5}/b'])); +//=> [ 'a/(0[1-9]|1[0-9]|20)/b', 'a/([1-5])/b' ] +``` + +**Expanded** + +Enable brace expansion by setting the `expand` option to true, or by using [braces.expand()](#expand) (returns an array similar to what you'd expect from Bash, or `echo {1..5}`, or [minimatch](https://github.com/isaacs/minimatch)): + +```js +console.log(braces('a/{x,y,z}/b', { expand: true })); +//=> ['a/x/b', 'a/y/b', 'a/z/b'] + +console.log(braces.expand('{01..10}')); +//=> ['01','02','03','04','05','06','07','08','09','10'] +``` + +### Lists + +Expand lists (like Bash "sets"): + +```js +console.log(braces('a/{foo,bar,baz}/*.js')); +//=> ['a/(foo|bar|baz)/*.js'] + +console.log(braces.expand('a/{foo,bar,baz}/*.js')); +//=> ['a/foo/*.js', 'a/bar/*.js', 'a/baz/*.js'] +``` + +### Sequences + +Expand ranges of characters (like Bash "sequences"): + +```js +console.log(braces.expand('{1..3}')); // ['1', '2', '3'] +console.log(braces.expand('a/{1..3}/b')); // ['a/1/b', 'a/2/b', 'a/3/b'] +console.log(braces('{a..c}', { expand: true })); // ['a', 'b', 'c'] +console.log(braces('foo/{a..c}', { expand: true })); // ['foo/a', 'foo/b', 'foo/c'] + +// supports zero-padded ranges +console.log(braces('a/{01..03}/b')); //=> ['a/(0[1-3])/b'] +console.log(braces('a/{001..300}/b')); //=> ['a/(0{2}[1-9]|0[1-9][0-9]|[12][0-9]{2}|300)/b'] +``` + +See [fill-range](https://github.com/jonschlinkert/fill-range) for all available range-expansion options. + +### Steppped ranges + +Steps, or increments, may be used with ranges: + +```js +console.log(braces.expand('{2..10..2}')); +//=> ['2', '4', '6', '8', '10'] + +console.log(braces('{2..10..2}')); +//=> ['(2|4|6|8|10)'] +``` + +When the [.optimize](#optimize) method is used, or [options.optimize](#optionsoptimize) is set to true, sequences are passed to [to-regex-range](https://github.com/jonschlinkert/to-regex-range) for expansion. + +### Nesting + +Brace patterns may be nested. The results of each expanded string are not sorted, and left to right order is preserved. + +**"Expanded" braces** + +```js +console.log(braces.expand('a{b,c,/{x,y}}/e')); +//=> ['ab/e', 'ac/e', 'a/x/e', 'a/y/e'] + +console.log(braces.expand('a/{x,{1..5},y}/c')); +//=> ['a/x/c', 'a/1/c', 'a/2/c', 'a/3/c', 'a/4/c', 'a/5/c', 'a/y/c'] +``` + +**"Optimized" braces** + +```js +console.log(braces('a{b,c,/{x,y}}/e')); +//=> ['a(b|c|/(x|y))/e'] + +console.log(braces('a/{x,{1..5},y}/c')); +//=> ['a/(x|([1-5])|y)/c'] +``` + +### Escaping + +**Escaping braces** + +A brace pattern will not be expanded or evaluted if _either the opening or closing brace is escaped_: + +```js +console.log(braces.expand('a\\{d,c,b}e')); +//=> ['a{d,c,b}e'] + +console.log(braces.expand('a{d,c,b\\}e')); +//=> ['a{d,c,b}e'] +``` + +**Escaping commas** + +Commas inside braces may also be escaped: + +```js +console.log(braces.expand('a{b\\,c}d')); +//=> ['a{b,c}d'] + +console.log(braces.expand('a{d\\,c,b}e')); +//=> ['ad,ce', 'abe'] +``` + +**Single items** + +Following bash conventions, a brace pattern is also not expanded when it contains a single character: + +```js +console.log(braces.expand('a{b}c')); +//=> ['a{b}c'] +``` + +## Options + +### options.maxLength + +**Type**: `Number` + +**Default**: `10,000` + +**Description**: Limit the length of the input string. Useful when the input string is generated or your application allows users to pass a string, et cetera. + +```js +console.log(braces('a/{b,c}/d', { maxLength: 3 })); //=> throws an error +``` + +### options.expand + +**Type**: `Boolean` + +**Default**: `undefined` + +**Description**: Generate an "expanded" brace pattern (alternatively you can use the `braces.expand()` method, which does the same thing). + +```js +console.log(braces('a/{b,c}/d', { expand: true })); +//=> [ 'a/b/d', 'a/c/d' ] +``` + +### options.nodupes + +**Type**: `Boolean` + +**Default**: `undefined` + +**Description**: Remove duplicates from the returned array. + +### options.rangeLimit + +**Type**: `Number` + +**Default**: `1000` + +**Description**: To prevent malicious patterns from being passed by users, an error is thrown when `braces.expand()` is used or `options.expand` is true and the generated range will exceed the `rangeLimit`. + +You can customize `options.rangeLimit` or set it to `Inifinity` to disable this altogether. + +**Examples** + +```js +// pattern exceeds the "rangeLimit", so it's optimized automatically +console.log(braces.expand('{1..1000}')); +//=> ['([1-9]|[1-9][0-9]{1,2}|1000)'] + +// pattern does not exceed "rangeLimit", so it's NOT optimized +console.log(braces.expand('{1..100}')); +//=> ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10', '11', '12', '13', '14', '15', '16', '17', '18', '19', '20', '21', '22', '23', '24', '25', '26', '27', '28', '29', '30', '31', '32', '33', '34', '35', '36', '37', '38', '39', '40', '41', '42', '43', '44', '45', '46', '47', '48', '49', '50', '51', '52', '53', '54', '55', '56', '57', '58', '59', '60', '61', '62', '63', '64', '65', '66', '67', '68', '69', '70', '71', '72', '73', '74', '75', '76', '77', '78', '79', '80', '81', '82', '83', '84', '85', '86', '87', '88', '89', '90', '91', '92', '93', '94', '95', '96', '97', '98', '99', '100'] +``` + +### options.transform + +**Type**: `Function` + +**Default**: `undefined` + +**Description**: Customize range expansion. + +**Example: Transforming non-numeric values** + +```js +const alpha = braces.expand('x/{a..e}/y', { + transform(value, index) { + // When non-numeric values are passed, "value" is a character code. + return 'foo/' + String.fromCharCode(value) + '-' + index; + }, +}); +console.log(alpha); +//=> [ 'x/foo/a-0/y', 'x/foo/b-1/y', 'x/foo/c-2/y', 'x/foo/d-3/y', 'x/foo/e-4/y' ] +``` + +**Example: Transforming numeric values** + +```js +const numeric = braces.expand('{1..5}', { + transform(value) { + // when numeric values are passed, "value" is a number + return 'foo/' + value * 2; + }, +}); +console.log(numeric); +//=> [ 'foo/2', 'foo/4', 'foo/6', 'foo/8', 'foo/10' ] +``` + +### options.quantifiers + +**Type**: `Boolean` + +**Default**: `undefined` + +**Description**: In regular expressions, quanitifiers can be used to specify how many times a token can be repeated. For example, `a{1,3}` will match the letter `a` one to three times. + +Unfortunately, regex quantifiers happen to share the same syntax as [Bash lists](#lists) + +The `quantifiers` option tells braces to detect when [regex quantifiers](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp#quantifiers) are defined in the given pattern, and not to try to expand them as lists. + +**Examples** + +```js +const braces = require('braces'); +console.log(braces('a/b{1,3}/{x,y,z}')); +//=> [ 'a/b(1|3)/(x|y|z)' ] +console.log(braces('a/b{1,3}/{x,y,z}', { quantifiers: true })); +//=> [ 'a/b{1,3}/(x|y|z)' ] +console.log(braces('a/b{1,3}/{x,y,z}', { quantifiers: true, expand: true })); +//=> [ 'a/b{1,3}/x', 'a/b{1,3}/y', 'a/b{1,3}/z' ] +``` + +### options.keepEscaping + +**Type**: `Boolean` + +**Default**: `undefined` + +**Description**: Do not strip backslashes that were used for escaping from the result. + +## What is "brace expansion"? + +Brace expansion is a type of parameter expansion that was made popular by unix shells for generating lists of strings, as well as regex-like matching when used alongside wildcards (globs). + +In addition to "expansion", braces are also used for matching. In other words: + +- [brace expansion](#brace-expansion) is for generating new lists +- [brace matching](#brace-matching) is for filtering existing lists + +
+More about brace expansion (click to expand) + +There are two main types of brace expansion: + +1. **lists**: which are defined using comma-separated values inside curly braces: `{a,b,c}` +2. **sequences**: which are defined using a starting value and an ending value, separated by two dots: `a{1..3}b`. Optionally, a third argument may be passed to define a "step" or increment to use: `a{1..100..10}b`. These are also sometimes referred to as "ranges". + +Here are some example brace patterns to illustrate how they work: + +**Sets** + +``` +{a,b,c} => a b c +{a,b,c}{1,2} => a1 a2 b1 b2 c1 c2 +``` + +**Sequences** + +``` +{1..9} => 1 2 3 4 5 6 7 8 9 +{4..-4} => 4 3 2 1 0 -1 -2 -3 -4 +{1..20..3} => 1 4 7 10 13 16 19 +{a..j} => a b c d e f g h i j +{j..a} => j i h g f e d c b a +{a..z..3} => a d g j m p s v y +``` + +**Combination** + +Sets and sequences can be mixed together or used along with any other strings. + +``` +{a,b,c}{1..3} => a1 a2 a3 b1 b2 b3 c1 c2 c3 +foo/{a,b,c}/bar => foo/a/bar foo/b/bar foo/c/bar +``` + +The fact that braces can be "expanded" from relatively simple patterns makes them ideal for quickly generating test fixtures, file paths, and similar use cases. + +## Brace matching + +In addition to _expansion_, brace patterns are also useful for performing regular-expression-like matching. + +For example, the pattern `foo/{1..3}/bar` would match any of following strings: + +``` +foo/1/bar +foo/2/bar +foo/3/bar +``` + +But not: + +``` +baz/1/qux +baz/2/qux +baz/3/qux +``` + +Braces can also be combined with [glob patterns](https://github.com/jonschlinkert/micromatch) to perform more advanced wildcard matching. For example, the pattern `*/{1..3}/*` would match any of following strings: + +``` +foo/1/bar +foo/2/bar +foo/3/bar +baz/1/qux +baz/2/qux +baz/3/qux +``` + +## Brace matching pitfalls + +Although brace patterns offer a user-friendly way of matching ranges or sets of strings, there are also some major disadvantages and potential risks you should be aware of. + +### tldr + +**"brace bombs"** + +- brace expansion can eat up a huge amount of processing resources +- as brace patterns increase _linearly in size_, the system resources required to expand the pattern increase exponentially +- users can accidentally (or intentially) exhaust your system's resources resulting in the equivalent of a DoS attack (bonus: no programming knowledge is required!) + +For a more detailed explanation with examples, see the [geometric complexity](#geometric-complexity) section. + +### The solution + +Jump to the [performance section](#performance) to see how Braces solves this problem in comparison to other libraries. + +### Geometric complexity + +At minimum, brace patterns with sets limited to two elements have quadradic or `O(n^2)` complexity. But the complexity of the algorithm increases exponentially as the number of sets, _and elements per set_, increases, which is `O(n^c)`. + +For example, the following sets demonstrate quadratic (`O(n^2)`) complexity: + +``` +{1,2}{3,4} => (2X2) => 13 14 23 24 +{1,2}{3,4}{5,6} => (2X2X2) => 135 136 145 146 235 236 245 246 +``` + +But add an element to a set, and we get a n-fold Cartesian product with `O(n^c)` complexity: + +``` +{1,2,3}{4,5,6}{7,8,9} => (3X3X3) => 147 148 149 157 158 159 167 168 169 247 248 + 249 257 258 259 267 268 269 347 348 349 357 + 358 359 367 368 369 +``` + +Now, imagine how this complexity grows given that each element is a n-tuple: + +``` +{1..100}{1..100} => (100X100) => 10,000 elements (38.4 kB) +{1..100}{1..100}{1..100} => (100X100X100) => 1,000,000 elements (5.76 MB) +``` + +Although these examples are clearly contrived, they demonstrate how brace patterns can quickly grow out of control. + +**More information** + +Interested in learning more about brace expansion? + +- [linuxjournal/bash-brace-expansion](http://www.linuxjournal.com/content/bash-brace-expansion) +- [rosettacode/Brace_expansion](https://rosettacode.org/wiki/Brace_expansion) +- [cartesian product](https://en.wikipedia.org/wiki/Cartesian_product) + +
+ +## Performance + +Braces is not only screaming fast, it's also more accurate the other brace expansion libraries. + +### Better algorithms + +Fortunately there is a solution to the ["brace bomb" problem](#brace-matching-pitfalls): _don't expand brace patterns into an array when they're used for matching_. + +Instead, convert the pattern into an optimized regular expression. This is easier said than done, and braces is the only library that does this currently. + +**The proof is in the numbers** + +Minimatch gets exponentially slower as patterns increase in complexity, braces does not. The following results were generated using `braces()` and `minimatch.braceExpand()`, respectively. + +| **Pattern** | **braces** | **[minimatch][]** | +| --------------------------- | ------------------- | ---------------------------- | +| `{1..9007199254740991}`[^1] | `298 B` (5ms 459μs) | N/A (freezes) | +| `{1..1000000000000000}` | `41 B` (1ms 15μs) | N/A (freezes) | +| `{1..100000000000000}` | `40 B` (890μs) | N/A (freezes) | +| `{1..10000000000000}` | `39 B` (2ms 49μs) | N/A (freezes) | +| `{1..1000000000000}` | `38 B` (608μs) | N/A (freezes) | +| `{1..100000000000}` | `37 B` (397μs) | N/A (freezes) | +| `{1..10000000000}` | `35 B` (983μs) | N/A (freezes) | +| `{1..1000000000}` | `34 B` (798μs) | N/A (freezes) | +| `{1..100000000}` | `33 B` (733μs) | N/A (freezes) | +| `{1..10000000}` | `32 B` (5ms 632μs) | `78.89 MB` (16s 388ms 569μs) | +| `{1..1000000}` | `31 B` (1ms 381μs) | `6.89 MB` (1s 496ms 887μs) | +| `{1..100000}` | `30 B` (950μs) | `588.89 kB` (146ms 921μs) | +| `{1..10000}` | `29 B` (1ms 114μs) | `48.89 kB` (14ms 187μs) | +| `{1..1000}` | `28 B` (760μs) | `3.89 kB` (1ms 453μs) | +| `{1..100}` | `22 B` (345μs) | `291 B` (196μs) | +| `{1..10}` | `10 B` (533μs) | `20 B` (37μs) | +| `{1..3}` | `7 B` (190μs) | `5 B` (27μs) | + +### Faster algorithms + +When you need expansion, braces is still much faster. + +_(the following results were generated using `braces.expand()` and `minimatch.braceExpand()`, respectively)_ + +| **Pattern** | **braces** | **[minimatch][]** | +| --------------- | --------------------------- | ---------------------------- | +| `{1..10000000}` | `78.89 MB` (2s 698ms 642μs) | `78.89 MB` (18s 601ms 974μs) | +| `{1..1000000}` | `6.89 MB` (458ms 576μs) | `6.89 MB` (1s 491ms 621μs) | +| `{1..100000}` | `588.89 kB` (20ms 728μs) | `588.89 kB` (156ms 919μs) | +| `{1..10000}` | `48.89 kB` (2ms 202μs) | `48.89 kB` (13ms 641μs) | +| `{1..1000}` | `3.89 kB` (1ms 796μs) | `3.89 kB` (1ms 958μs) | +| `{1..100}` | `291 B` (424μs) | `291 B` (211μs) | +| `{1..10}` | `20 B` (487μs) | `20 B` (72μs) | +| `{1..3}` | `5 B` (166μs) | `5 B` (27μs) | + +If you'd like to run these comparisons yourself, see [test/support/generate.js](test/support/generate.js). + +## Benchmarks + +### Running benchmarks + +Install dev dependencies: + +```bash +npm i -d && npm benchmark +``` + +### Latest results + +Braces is more accurate, without sacrificing performance. + +```bash +● expand - range (expanded) + braces x 53,167 ops/sec ±0.12% (102 runs sampled) + minimatch x 11,378 ops/sec ±0.10% (102 runs sampled) +● expand - range (optimized for regex) + braces x 373,442 ops/sec ±0.04% (100 runs sampled) + minimatch x 3,262 ops/sec ±0.18% (100 runs sampled) +● expand - nested ranges (expanded) + braces x 33,921 ops/sec ±0.09% (99 runs sampled) + minimatch x 10,855 ops/sec ±0.28% (100 runs sampled) +● expand - nested ranges (optimized for regex) + braces x 287,479 ops/sec ±0.52% (98 runs sampled) + minimatch x 3,219 ops/sec ±0.28% (101 runs sampled) +● expand - set (expanded) + braces x 238,243 ops/sec ±0.19% (97 runs sampled) + minimatch x 538,268 ops/sec ±0.31% (96 runs sampled) +● expand - set (optimized for regex) + braces x 321,844 ops/sec ±0.10% (97 runs sampled) + minimatch x 140,600 ops/sec ±0.15% (100 runs sampled) +● expand - nested sets (expanded) + braces x 165,371 ops/sec ±0.42% (96 runs sampled) + minimatch x 337,720 ops/sec ±0.28% (100 runs sampled) +● expand - nested sets (optimized for regex) + braces x 242,948 ops/sec ±0.12% (99 runs sampled) + minimatch x 87,403 ops/sec ±0.79% (96 runs sampled) +``` + +## About + +
+Contributing + +Pull requests and stars are always welcome. For bugs and feature requests, [please create an issue](../../issues/new). + +
+ +
+Running Tests + +Running and reviewing unit tests is a great way to get familiarized with a library and its API. You can install dependencies and run tests with the following command: + +```sh +$ npm install && npm test +``` + +
+ +
+Building docs + +_(This project's readme.md is generated by [verb](https://github.com/verbose/verb-generate-readme), please don't edit the readme directly. Any changes to the readme must be made in the [.verb.md](.verb.md) readme template.)_ + +To generate the readme, run the following command: + +```sh +$ npm install -g verbose/verb#dev verb-generate-readme && verb +``` + +
+ +### Contributors + +| **Commits** | **Contributor** | +| ----------- | ------------------------------------------------------------- | +| 197 | [jonschlinkert](https://github.com/jonschlinkert) | +| 4 | [doowb](https://github.com/doowb) | +| 1 | [es128](https://github.com/es128) | +| 1 | [eush77](https://github.com/eush77) | +| 1 | [hemanth](https://github.com/hemanth) | +| 1 | [wtgtybhertgeghgtwtg](https://github.com/wtgtybhertgeghgtwtg) | + +### Author + +**Jon Schlinkert** + +- [GitHub Profile](https://github.com/jonschlinkert) +- [Twitter Profile](https://twitter.com/jonschlinkert) +- [LinkedIn Profile](https://linkedin.com/in/jonschlinkert) + +### License + +Copyright © 2019, [Jon Schlinkert](https://github.com/jonschlinkert). +Released under the [MIT License](LICENSE). + +--- + +_This file was generated by [verb-generate-readme](https://github.com/verbose/verb-generate-readme), v0.8.0, on April 08, 2019._ diff --git a/node_modules/braces/index.js b/node_modules/braces/index.js new file mode 100644 index 00000000..d222c13b --- /dev/null +++ b/node_modules/braces/index.js @@ -0,0 +1,170 @@ +'use strict'; + +const stringify = require('./lib/stringify'); +const compile = require('./lib/compile'); +const expand = require('./lib/expand'); +const parse = require('./lib/parse'); + +/** + * Expand the given pattern or create a regex-compatible string. + * + * ```js + * const braces = require('braces'); + * console.log(braces('{a,b,c}', { compile: true })); //=> ['(a|b|c)'] + * console.log(braces('{a,b,c}')); //=> ['a', 'b', 'c'] + * ``` + * @param {String} `str` + * @param {Object} `options` + * @return {String} + * @api public + */ + +const braces = (input, options = {}) => { + let output = []; + + if (Array.isArray(input)) { + for (const pattern of input) { + const result = braces.create(pattern, options); + if (Array.isArray(result)) { + output.push(...result); + } else { + output.push(result); + } + } + } else { + output = [].concat(braces.create(input, options)); + } + + if (options && options.expand === true && options.nodupes === true) { + output = [...new Set(output)]; + } + return output; +}; + +/** + * Parse the given `str` with the given `options`. + * + * ```js + * // braces.parse(pattern, [, options]); + * const ast = braces.parse('a/{b,c}/d'); + * console.log(ast); + * ``` + * @param {String} pattern Brace pattern to parse + * @param {Object} options + * @return {Object} Returns an AST + * @api public + */ + +braces.parse = (input, options = {}) => parse(input, options); + +/** + * Creates a braces string from an AST, or an AST node. + * + * ```js + * const braces = require('braces'); + * let ast = braces.parse('foo/{a,b}/bar'); + * console.log(stringify(ast.nodes[2])); //=> '{a,b}' + * ``` + * @param {String} `input` Brace pattern or AST. + * @param {Object} `options` + * @return {Array} Returns an array of expanded values. + * @api public + */ + +braces.stringify = (input, options = {}) => { + if (typeof input === 'string') { + return stringify(braces.parse(input, options), options); + } + return stringify(input, options); +}; + +/** + * Compiles a brace pattern into a regex-compatible, optimized string. + * This method is called by the main [braces](#braces) function by default. + * + * ```js + * const braces = require('braces'); + * console.log(braces.compile('a/{b,c}/d')); + * //=> ['a/(b|c)/d'] + * ``` + * @param {String} `input` Brace pattern or AST. + * @param {Object} `options` + * @return {Array} Returns an array of expanded values. + * @api public + */ + +braces.compile = (input, options = {}) => { + if (typeof input === 'string') { + input = braces.parse(input, options); + } + return compile(input, options); +}; + +/** + * Expands a brace pattern into an array. This method is called by the + * main [braces](#braces) function when `options.expand` is true. Before + * using this method it's recommended that you read the [performance notes](#performance)) + * and advantages of using [.compile](#compile) instead. + * + * ```js + * const braces = require('braces'); + * console.log(braces.expand('a/{b,c}/d')); + * //=> ['a/b/d', 'a/c/d']; + * ``` + * @param {String} `pattern` Brace pattern + * @param {Object} `options` + * @return {Array} Returns an array of expanded values. + * @api public + */ + +braces.expand = (input, options = {}) => { + if (typeof input === 'string') { + input = braces.parse(input, options); + } + + let result = expand(input, options); + + // filter out empty strings if specified + if (options.noempty === true) { + result = result.filter(Boolean); + } + + // filter out duplicates if specified + if (options.nodupes === true) { + result = [...new Set(result)]; + } + + return result; +}; + +/** + * Processes a brace pattern and returns either an expanded array + * (if `options.expand` is true), a highly optimized regex-compatible string. + * This method is called by the main [braces](#braces) function. + * + * ```js + * const braces = require('braces'); + * console.log(braces.create('user-{200..300}/project-{a,b,c}-{1..10}')) + * //=> 'user-(20[0-9]|2[1-9][0-9]|300)/project-(a|b|c)-([1-9]|10)' + * ``` + * @param {String} `pattern` Brace pattern + * @param {Object} `options` + * @return {Array} Returns an array of expanded values. + * @api public + */ + +braces.create = (input, options = {}) => { + if (input === '' || input.length < 3) { + return [input]; + } + + return options.expand !== true + ? braces.compile(input, options) + : braces.expand(input, options); +}; + +/** + * Expose "braces" + */ + +module.exports = braces; diff --git a/node_modules/braces/package.json b/node_modules/braces/package.json new file mode 100644 index 00000000..c3c056e4 --- /dev/null +++ b/node_modules/braces/package.json @@ -0,0 +1,77 @@ +{ + "name": "braces", + "description": "Bash-like brace expansion, implemented in JavaScript. Safer than other brace expansion libs, with complete support for the Bash 4.3 braces specification, without sacrificing speed.", + "version": "3.0.3", + "homepage": "https://github.com/micromatch/braces", + "author": "Jon Schlinkert (https://github.com/jonschlinkert)", + "contributors": [ + "Brian Woodward (https://twitter.com/doowb)", + "Elan Shanker (https://github.com/es128)", + "Eugene Sharygin (https://github.com/eush77)", + "hemanth.hm (http://h3manth.com)", + "Jon Schlinkert (http://twitter.com/jonschlinkert)" + ], + "repository": "micromatch/braces", + "bugs": { + "url": "https://github.com/micromatch/braces/issues" + }, + "license": "MIT", + "files": [ + "index.js", + "lib" + ], + "main": "index.js", + "engines": { + "node": ">=8" + }, + "scripts": { + "test": "mocha", + "benchmark": "node benchmark" + }, + "dependencies": { + "fill-range": "^7.1.1" + }, + "devDependencies": { + "ansi-colors": "^3.2.4", + "bash-path": "^2.0.1", + "gulp-format-md": "^2.0.0", + "mocha": "^6.1.1" + }, + "keywords": [ + "alpha", + "alphabetical", + "bash", + "brace", + "braces", + "expand", + "expansion", + "filepath", + "fill", + "fs", + "glob", + "globbing", + "letter", + "match", + "matches", + "matching", + "number", + "numerical", + "path", + "range", + "ranges", + "sh" + ], + "verb": { + "toc": false, + "layout": "default", + "tasks": [ + "readme" + ], + "lint": { + "reflinks": true + }, + "plugins": [ + "gulp-format-md" + ] + } +} diff --git a/node_modules/callsites/index.d.ts b/node_modules/callsites/index.d.ts new file mode 100644 index 00000000..61f597cf --- /dev/null +++ b/node_modules/callsites/index.d.ts @@ -0,0 +1,96 @@ +declare namespace callsites { + interface CallSite { + /** + Returns the value of `this`. + */ + getThis(): unknown | undefined; + + /** + Returns the type of `this` as a string. This is the name of the function stored in the constructor field of `this`, if available, otherwise the object's `[[Class]]` internal property. + */ + getTypeName(): string | null; + + /** + Returns the current function. + */ + getFunction(): Function | undefined; + + /** + Returns the name of the current function, typically its `name` property. If a name property is not available an attempt will be made to try to infer a name from the function's context. + */ + getFunctionName(): string | null; + + /** + Returns the name of the property of `this` or one of its prototypes that holds the current function. + */ + getMethodName(): string | undefined; + + /** + Returns the name of the script if this function was defined in a script. + */ + getFileName(): string | null; + + /** + Returns the current line number if this function was defined in a script. + */ + getLineNumber(): number | null; + + /** + Returns the current column number if this function was defined in a script. + */ + getColumnNumber(): number | null; + + /** + Returns a string representing the location where `eval` was called if this function was created using a call to `eval`. + */ + getEvalOrigin(): string | undefined; + + /** + Returns `true` if this is a top-level invocation, that is, if it's a global object. + */ + isToplevel(): boolean; + + /** + Returns `true` if this call takes place in code defined by a call to `eval`. + */ + isEval(): boolean; + + /** + Returns `true` if this call is in native V8 code. + */ + isNative(): boolean; + + /** + Returns `true` if this is a constructor call. + */ + isConstructor(): boolean; + } +} + +declare const callsites: { + /** + Get callsites from the V8 stack trace API. + + @returns An array of `CallSite` objects. + + @example + ``` + import callsites = require('callsites'); + + function unicorn() { + console.log(callsites()[0].getFileName()); + //=> '/Users/sindresorhus/dev/callsites/test.js' + } + + unicorn(); + ``` + */ + (): callsites.CallSite[]; + + // TODO: Remove this for the next major release, refactor the whole definition to: + // declare function callsites(): callsites.CallSite[]; + // export = callsites; + default: typeof callsites; +}; + +export = callsites; diff --git a/node_modules/callsites/index.js b/node_modules/callsites/index.js new file mode 100644 index 00000000..486c2410 --- /dev/null +++ b/node_modules/callsites/index.js @@ -0,0 +1,13 @@ +'use strict'; + +const callsites = () => { + const _prepareStackTrace = Error.prepareStackTrace; + Error.prepareStackTrace = (_, stack) => stack; + const stack = new Error().stack.slice(1); + Error.prepareStackTrace = _prepareStackTrace; + return stack; +}; + +module.exports = callsites; +// TODO: Remove this for the next major release +module.exports.default = callsites; diff --git a/node_modules/callsites/license b/node_modules/callsites/license new file mode 100644 index 00000000..e7af2f77 --- /dev/null +++ b/node_modules/callsites/license @@ -0,0 +1,9 @@ +MIT License + +Copyright (c) Sindre Sorhus (sindresorhus.com) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/node_modules/callsites/package.json b/node_modules/callsites/package.json new file mode 100644 index 00000000..93463c34 --- /dev/null +++ b/node_modules/callsites/package.json @@ -0,0 +1,39 @@ +{ + "name": "callsites", + "version": "3.1.0", + "description": "Get callsites from the V8 stack trace API", + "license": "MIT", + "repository": "sindresorhus/callsites", + "author": { + "name": "Sindre Sorhus", + "email": "sindresorhus@gmail.com", + "url": "sindresorhus.com" + }, + "engines": { + "node": ">=6" + }, + "scripts": { + "test": "xo && ava && tsd" + }, + "files": [ + "index.js", + "index.d.ts" + ], + "keywords": [ + "stacktrace", + "v8", + "callsite", + "callsites", + "stack", + "trace", + "function", + "file", + "line", + "debug" + ], + "devDependencies": { + "ava": "^1.4.1", + "tsd": "^0.7.2", + "xo": "^0.24.0" + } +} diff --git a/node_modules/callsites/readme.md b/node_modules/callsites/readme.md new file mode 100644 index 00000000..fc846138 --- /dev/null +++ b/node_modules/callsites/readme.md @@ -0,0 +1,48 @@ +# callsites [![Build Status](https://travis-ci.org/sindresorhus/callsites.svg?branch=master)](https://travis-ci.org/sindresorhus/callsites) + +> Get callsites from the [V8 stack trace API](https://v8.dev/docs/stack-trace-api) + + +## Install + +``` +$ npm install callsites +``` + + +## Usage + +```js +const callsites = require('callsites'); + +function unicorn() { + console.log(callsites()[0].getFileName()); + //=> '/Users/sindresorhus/dev/callsites/test.js' +} + +unicorn(); +``` + + +## API + +Returns an array of callsite objects with the following methods: + +- `getThis`: returns the value of `this`. +- `getTypeName`: returns the type of `this` as a string. This is the name of the function stored in the constructor field of `this`, if available, otherwise the object's `[[Class]]` internal property. +- `getFunction`: returns the current function. +- `getFunctionName`: returns the name of the current function, typically its `name` property. If a name property is not available an attempt will be made to try to infer a name from the function's context. +- `getMethodName`: returns the name of the property of `this` or one of its prototypes that holds the current function. +- `getFileName`: if this function was defined in a script returns the name of the script. +- `getLineNumber`: if this function was defined in a script returns the current line number. +- `getColumnNumber`: if this function was defined in a script returns the current column number +- `getEvalOrigin`: if this function was created using a call to `eval` returns a string representing the location where `eval` was called. +- `isToplevel`: is this a top-level invocation, that is, is this the global object? +- `isEval`: does this call take place in code defined by a call to `eval`? +- `isNative`: is this call in native V8 code? +- `isConstructor`: is this a constructor call? + + +## License + +MIT © [Sindre Sorhus](https://sindresorhus.com) diff --git a/node_modules/color-convert/CHANGELOG.md b/node_modules/color-convert/CHANGELOG.md new file mode 100644 index 00000000..0a7bce4f --- /dev/null +++ b/node_modules/color-convert/CHANGELOG.md @@ -0,0 +1,54 @@ +# 1.0.0 - 2016-01-07 + +- Removed: unused speed test +- Added: Automatic routing between previously unsupported conversions +([#27](https://github.com/Qix-/color-convert/pull/27)) +- Removed: `xxx2xxx()` and `xxx2xxxRaw()` functions +([#27](https://github.com/Qix-/color-convert/pull/27)) +- Removed: `convert()` class +([#27](https://github.com/Qix-/color-convert/pull/27)) +- Changed: all functions to lookup dictionary +([#27](https://github.com/Qix-/color-convert/pull/27)) +- Changed: `ansi` to `ansi256` +([#27](https://github.com/Qix-/color-convert/pull/27)) +- Fixed: argument grouping for functions requiring only one argument +([#27](https://github.com/Qix-/color-convert/pull/27)) + +# 0.6.0 - 2015-07-23 + +- Added: methods to handle +[ANSI](https://en.wikipedia.org/wiki/ANSI_escape_code#Colors) 16/256 colors: + - rgb2ansi16 + - rgb2ansi + - hsl2ansi16 + - hsl2ansi + - hsv2ansi16 + - hsv2ansi + - hwb2ansi16 + - hwb2ansi + - cmyk2ansi16 + - cmyk2ansi + - keyword2ansi16 + - keyword2ansi + - ansi162rgb + - ansi162hsl + - ansi162hsv + - ansi162hwb + - ansi162cmyk + - ansi162keyword + - ansi2rgb + - ansi2hsl + - ansi2hsv + - ansi2hwb + - ansi2cmyk + - ansi2keyword +([#18](https://github.com/harthur/color-convert/pull/18)) + +# 0.5.3 - 2015-06-02 + +- Fixed: hsl2hsv does not return `NaN` anymore when using `[0,0,0]` +([#15](https://github.com/harthur/color-convert/issues/15)) + +--- + +Check out commit logs for older releases diff --git a/node_modules/color-convert/LICENSE b/node_modules/color-convert/LICENSE new file mode 100644 index 00000000..5b4c386f --- /dev/null +++ b/node_modules/color-convert/LICENSE @@ -0,0 +1,21 @@ +Copyright (c) 2011-2016 Heather Arthur + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + diff --git a/node_modules/color-convert/README.md b/node_modules/color-convert/README.md new file mode 100644 index 00000000..d4b08fc3 --- /dev/null +++ b/node_modules/color-convert/README.md @@ -0,0 +1,68 @@ +# color-convert + +[![Build Status](https://travis-ci.org/Qix-/color-convert.svg?branch=master)](https://travis-ci.org/Qix-/color-convert) + +Color-convert is a color conversion library for JavaScript and node. +It converts all ways between `rgb`, `hsl`, `hsv`, `hwb`, `cmyk`, `ansi`, `ansi16`, `hex` strings, and CSS `keyword`s (will round to closest): + +```js +var convert = require('color-convert'); + +convert.rgb.hsl(140, 200, 100); // [96, 48, 59] +convert.keyword.rgb('blue'); // [0, 0, 255] + +var rgbChannels = convert.rgb.channels; // 3 +var cmykChannels = convert.cmyk.channels; // 4 +var ansiChannels = convert.ansi16.channels; // 1 +``` + +# Install + +```console +$ npm install color-convert +``` + +# API + +Simply get the property of the _from_ and _to_ conversion that you're looking for. + +All functions have a rounded and unrounded variant. By default, return values are rounded. To get the unrounded (raw) results, simply tack on `.raw` to the function. + +All 'from' functions have a hidden property called `.channels` that indicates the number of channels the function expects (not including alpha). + +```js +var convert = require('color-convert'); + +// Hex to LAB +convert.hex.lab('DEADBF'); // [ 76, 21, -2 ] +convert.hex.lab.raw('DEADBF'); // [ 75.56213190997677, 20.653827952644754, -2.290532499330533 ] + +// RGB to CMYK +convert.rgb.cmyk(167, 255, 4); // [ 35, 0, 98, 0 ] +convert.rgb.cmyk.raw(167, 255, 4); // [ 34.509803921568626, 0, 98.43137254901961, 0 ] +``` + +### Arrays +All functions that accept multiple arguments also support passing an array. + +Note that this does **not** apply to functions that convert from a color that only requires one value (e.g. `keyword`, `ansi256`, `hex`, etc.) + +```js +var convert = require('color-convert'); + +convert.rgb.hex(123, 45, 67); // '7B2D43' +convert.rgb.hex([123, 45, 67]); // '7B2D43' +``` + +## Routing + +Conversions that don't have an _explicitly_ defined conversion (in [conversions.js](conversions.js)), but can be converted by means of sub-conversions (e.g. XYZ -> **RGB** -> CMYK), are automatically routed together. This allows just about any color model supported by `color-convert` to be converted to any other model, so long as a sub-conversion path exists. This is also true for conversions requiring more than one step in between (e.g. LCH -> **LAB** -> **XYZ** -> **RGB** -> Hex). + +Keep in mind that extensive conversions _may_ result in a loss of precision, and exist only to be complete. For a list of "direct" (single-step) conversions, see [conversions.js](conversions.js). + +# Contribute + +If there is a new model you would like to support, or want to add a direct conversion between two existing models, please send us a pull request. + +# License +Copyright © 2011-2016, Heather Arthur and Josh Junon. Licensed under the [MIT License](LICENSE). diff --git a/node_modules/color-convert/conversions.js b/node_modules/color-convert/conversions.js new file mode 100644 index 00000000..2657f265 --- /dev/null +++ b/node_modules/color-convert/conversions.js @@ -0,0 +1,839 @@ +/* MIT license */ +/* eslint-disable no-mixed-operators */ +const cssKeywords = require('color-name'); + +// NOTE: conversions should only return primitive values (i.e. arrays, or +// values that give correct `typeof` results). +// do not use box values types (i.e. Number(), String(), etc.) + +const reverseKeywords = {}; +for (const key of Object.keys(cssKeywords)) { + reverseKeywords[cssKeywords[key]] = key; +} + +const convert = { + rgb: {channels: 3, labels: 'rgb'}, + hsl: {channels: 3, labels: 'hsl'}, + hsv: {channels: 3, labels: 'hsv'}, + hwb: {channels: 3, labels: 'hwb'}, + cmyk: {channels: 4, labels: 'cmyk'}, + xyz: {channels: 3, labels: 'xyz'}, + lab: {channels: 3, labels: 'lab'}, + lch: {channels: 3, labels: 'lch'}, + hex: {channels: 1, labels: ['hex']}, + keyword: {channels: 1, labels: ['keyword']}, + ansi16: {channels: 1, labels: ['ansi16']}, + ansi256: {channels: 1, labels: ['ansi256']}, + hcg: {channels: 3, labels: ['h', 'c', 'g']}, + apple: {channels: 3, labels: ['r16', 'g16', 'b16']}, + gray: {channels: 1, labels: ['gray']} +}; + +module.exports = convert; + +// Hide .channels and .labels properties +for (const model of Object.keys(convert)) { + if (!('channels' in convert[model])) { + throw new Error('missing channels property: ' + model); + } + + if (!('labels' in convert[model])) { + throw new Error('missing channel labels property: ' + model); + } + + if (convert[model].labels.length !== convert[model].channels) { + throw new Error('channel and label counts mismatch: ' + model); + } + + const {channels, labels} = convert[model]; + delete convert[model].channels; + delete convert[model].labels; + Object.defineProperty(convert[model], 'channels', {value: channels}); + Object.defineProperty(convert[model], 'labels', {value: labels}); +} + +convert.rgb.hsl = function (rgb) { + const r = rgb[0] / 255; + const g = rgb[1] / 255; + const b = rgb[2] / 255; + const min = Math.min(r, g, b); + const max = Math.max(r, g, b); + const delta = max - min; + let h; + let s; + + if (max === min) { + h = 0; + } else if (r === max) { + h = (g - b) / delta; + } else if (g === max) { + h = 2 + (b - r) / delta; + } else if (b === max) { + h = 4 + (r - g) / delta; + } + + h = Math.min(h * 60, 360); + + if (h < 0) { + h += 360; + } + + const l = (min + max) / 2; + + if (max === min) { + s = 0; + } else if (l <= 0.5) { + s = delta / (max + min); + } else { + s = delta / (2 - max - min); + } + + return [h, s * 100, l * 100]; +}; + +convert.rgb.hsv = function (rgb) { + let rdif; + let gdif; + let bdif; + let h; + let s; + + const r = rgb[0] / 255; + const g = rgb[1] / 255; + const b = rgb[2] / 255; + const v = Math.max(r, g, b); + const diff = v - Math.min(r, g, b); + const diffc = function (c) { + return (v - c) / 6 / diff + 1 / 2; + }; + + if (diff === 0) { + h = 0; + s = 0; + } else { + s = diff / v; + rdif = diffc(r); + gdif = diffc(g); + bdif = diffc(b); + + if (r === v) { + h = bdif - gdif; + } else if (g === v) { + h = (1 / 3) + rdif - bdif; + } else if (b === v) { + h = (2 / 3) + gdif - rdif; + } + + if (h < 0) { + h += 1; + } else if (h > 1) { + h -= 1; + } + } + + return [ + h * 360, + s * 100, + v * 100 + ]; +}; + +convert.rgb.hwb = function (rgb) { + const r = rgb[0]; + const g = rgb[1]; + let b = rgb[2]; + const h = convert.rgb.hsl(rgb)[0]; + const w = 1 / 255 * Math.min(r, Math.min(g, b)); + + b = 1 - 1 / 255 * Math.max(r, Math.max(g, b)); + + return [h, w * 100, b * 100]; +}; + +convert.rgb.cmyk = function (rgb) { + const r = rgb[0] / 255; + const g = rgb[1] / 255; + const b = rgb[2] / 255; + + const k = Math.min(1 - r, 1 - g, 1 - b); + const c = (1 - r - k) / (1 - k) || 0; + const m = (1 - g - k) / (1 - k) || 0; + const y = (1 - b - k) / (1 - k) || 0; + + return [c * 100, m * 100, y * 100, k * 100]; +}; + +function comparativeDistance(x, y) { + /* + See https://en.m.wikipedia.org/wiki/Euclidean_distance#Squared_Euclidean_distance + */ + return ( + ((x[0] - y[0]) ** 2) + + ((x[1] - y[1]) ** 2) + + ((x[2] - y[2]) ** 2) + ); +} + +convert.rgb.keyword = function (rgb) { + const reversed = reverseKeywords[rgb]; + if (reversed) { + return reversed; + } + + let currentClosestDistance = Infinity; + let currentClosestKeyword; + + for (const keyword of Object.keys(cssKeywords)) { + const value = cssKeywords[keyword]; + + // Compute comparative distance + const distance = comparativeDistance(rgb, value); + + // Check if its less, if so set as closest + if (distance < currentClosestDistance) { + currentClosestDistance = distance; + currentClosestKeyword = keyword; + } + } + + return currentClosestKeyword; +}; + +convert.keyword.rgb = function (keyword) { + return cssKeywords[keyword]; +}; + +convert.rgb.xyz = function (rgb) { + let r = rgb[0] / 255; + let g = rgb[1] / 255; + let b = rgb[2] / 255; + + // Assume sRGB + r = r > 0.04045 ? (((r + 0.055) / 1.055) ** 2.4) : (r / 12.92); + g = g > 0.04045 ? (((g + 0.055) / 1.055) ** 2.4) : (g / 12.92); + b = b > 0.04045 ? (((b + 0.055) / 1.055) ** 2.4) : (b / 12.92); + + const x = (r * 0.4124) + (g * 0.3576) + (b * 0.1805); + const y = (r * 0.2126) + (g * 0.7152) + (b * 0.0722); + const z = (r * 0.0193) + (g * 0.1192) + (b * 0.9505); + + return [x * 100, y * 100, z * 100]; +}; + +convert.rgb.lab = function (rgb) { + const xyz = convert.rgb.xyz(rgb); + let x = xyz[0]; + let y = xyz[1]; + let z = xyz[2]; + + x /= 95.047; + y /= 100; + z /= 108.883; + + x = x > 0.008856 ? (x ** (1 / 3)) : (7.787 * x) + (16 / 116); + y = y > 0.008856 ? (y ** (1 / 3)) : (7.787 * y) + (16 / 116); + z = z > 0.008856 ? (z ** (1 / 3)) : (7.787 * z) + (16 / 116); + + const l = (116 * y) - 16; + const a = 500 * (x - y); + const b = 200 * (y - z); + + return [l, a, b]; +}; + +convert.hsl.rgb = function (hsl) { + const h = hsl[0] / 360; + const s = hsl[1] / 100; + const l = hsl[2] / 100; + let t2; + let t3; + let val; + + if (s === 0) { + val = l * 255; + return [val, val, val]; + } + + if (l < 0.5) { + t2 = l * (1 + s); + } else { + t2 = l + s - l * s; + } + + const t1 = 2 * l - t2; + + const rgb = [0, 0, 0]; + for (let i = 0; i < 3; i++) { + t3 = h + 1 / 3 * -(i - 1); + if (t3 < 0) { + t3++; + } + + if (t3 > 1) { + t3--; + } + + if (6 * t3 < 1) { + val = t1 + (t2 - t1) * 6 * t3; + } else if (2 * t3 < 1) { + val = t2; + } else if (3 * t3 < 2) { + val = t1 + (t2 - t1) * (2 / 3 - t3) * 6; + } else { + val = t1; + } + + rgb[i] = val * 255; + } + + return rgb; +}; + +convert.hsl.hsv = function (hsl) { + const h = hsl[0]; + let s = hsl[1] / 100; + let l = hsl[2] / 100; + let smin = s; + const lmin = Math.max(l, 0.01); + + l *= 2; + s *= (l <= 1) ? l : 2 - l; + smin *= lmin <= 1 ? lmin : 2 - lmin; + const v = (l + s) / 2; + const sv = l === 0 ? (2 * smin) / (lmin + smin) : (2 * s) / (l + s); + + return [h, sv * 100, v * 100]; +}; + +convert.hsv.rgb = function (hsv) { + const h = hsv[0] / 60; + const s = hsv[1] / 100; + let v = hsv[2] / 100; + const hi = Math.floor(h) % 6; + + const f = h - Math.floor(h); + const p = 255 * v * (1 - s); + const q = 255 * v * (1 - (s * f)); + const t = 255 * v * (1 - (s * (1 - f))); + v *= 255; + + switch (hi) { + case 0: + return [v, t, p]; + case 1: + return [q, v, p]; + case 2: + return [p, v, t]; + case 3: + return [p, q, v]; + case 4: + return [t, p, v]; + case 5: + return [v, p, q]; + } +}; + +convert.hsv.hsl = function (hsv) { + const h = hsv[0]; + const s = hsv[1] / 100; + const v = hsv[2] / 100; + const vmin = Math.max(v, 0.01); + let sl; + let l; + + l = (2 - s) * v; + const lmin = (2 - s) * vmin; + sl = s * vmin; + sl /= (lmin <= 1) ? lmin : 2 - lmin; + sl = sl || 0; + l /= 2; + + return [h, sl * 100, l * 100]; +}; + +// http://dev.w3.org/csswg/css-color/#hwb-to-rgb +convert.hwb.rgb = function (hwb) { + const h = hwb[0] / 360; + let wh = hwb[1] / 100; + let bl = hwb[2] / 100; + const ratio = wh + bl; + let f; + + // Wh + bl cant be > 1 + if (ratio > 1) { + wh /= ratio; + bl /= ratio; + } + + const i = Math.floor(6 * h); + const v = 1 - bl; + f = 6 * h - i; + + if ((i & 0x01) !== 0) { + f = 1 - f; + } + + const n = wh + f * (v - wh); // Linear interpolation + + let r; + let g; + let b; + /* eslint-disable max-statements-per-line,no-multi-spaces */ + switch (i) { + default: + case 6: + case 0: r = v; g = n; b = wh; break; + case 1: r = n; g = v; b = wh; break; + case 2: r = wh; g = v; b = n; break; + case 3: r = wh; g = n; b = v; break; + case 4: r = n; g = wh; b = v; break; + case 5: r = v; g = wh; b = n; break; + } + /* eslint-enable max-statements-per-line,no-multi-spaces */ + + return [r * 255, g * 255, b * 255]; +}; + +convert.cmyk.rgb = function (cmyk) { + const c = cmyk[0] / 100; + const m = cmyk[1] / 100; + const y = cmyk[2] / 100; + const k = cmyk[3] / 100; + + const r = 1 - Math.min(1, c * (1 - k) + k); + const g = 1 - Math.min(1, m * (1 - k) + k); + const b = 1 - Math.min(1, y * (1 - k) + k); + + return [r * 255, g * 255, b * 255]; +}; + +convert.xyz.rgb = function (xyz) { + const x = xyz[0] / 100; + const y = xyz[1] / 100; + const z = xyz[2] / 100; + let r; + let g; + let b; + + r = (x * 3.2406) + (y * -1.5372) + (z * -0.4986); + g = (x * -0.9689) + (y * 1.8758) + (z * 0.0415); + b = (x * 0.0557) + (y * -0.2040) + (z * 1.0570); + + // Assume sRGB + r = r > 0.0031308 + ? ((1.055 * (r ** (1.0 / 2.4))) - 0.055) + : r * 12.92; + + g = g > 0.0031308 + ? ((1.055 * (g ** (1.0 / 2.4))) - 0.055) + : g * 12.92; + + b = b > 0.0031308 + ? ((1.055 * (b ** (1.0 / 2.4))) - 0.055) + : b * 12.92; + + r = Math.min(Math.max(0, r), 1); + g = Math.min(Math.max(0, g), 1); + b = Math.min(Math.max(0, b), 1); + + return [r * 255, g * 255, b * 255]; +}; + +convert.xyz.lab = function (xyz) { + let x = xyz[0]; + let y = xyz[1]; + let z = xyz[2]; + + x /= 95.047; + y /= 100; + z /= 108.883; + + x = x > 0.008856 ? (x ** (1 / 3)) : (7.787 * x) + (16 / 116); + y = y > 0.008856 ? (y ** (1 / 3)) : (7.787 * y) + (16 / 116); + z = z > 0.008856 ? (z ** (1 / 3)) : (7.787 * z) + (16 / 116); + + const l = (116 * y) - 16; + const a = 500 * (x - y); + const b = 200 * (y - z); + + return [l, a, b]; +}; + +convert.lab.xyz = function (lab) { + const l = lab[0]; + const a = lab[1]; + const b = lab[2]; + let x; + let y; + let z; + + y = (l + 16) / 116; + x = a / 500 + y; + z = y - b / 200; + + const y2 = y ** 3; + const x2 = x ** 3; + const z2 = z ** 3; + y = y2 > 0.008856 ? y2 : (y - 16 / 116) / 7.787; + x = x2 > 0.008856 ? x2 : (x - 16 / 116) / 7.787; + z = z2 > 0.008856 ? z2 : (z - 16 / 116) / 7.787; + + x *= 95.047; + y *= 100; + z *= 108.883; + + return [x, y, z]; +}; + +convert.lab.lch = function (lab) { + const l = lab[0]; + const a = lab[1]; + const b = lab[2]; + let h; + + const hr = Math.atan2(b, a); + h = hr * 360 / 2 / Math.PI; + + if (h < 0) { + h += 360; + } + + const c = Math.sqrt(a * a + b * b); + + return [l, c, h]; +}; + +convert.lch.lab = function (lch) { + const l = lch[0]; + const c = lch[1]; + const h = lch[2]; + + const hr = h / 360 * 2 * Math.PI; + const a = c * Math.cos(hr); + const b = c * Math.sin(hr); + + return [l, a, b]; +}; + +convert.rgb.ansi16 = function (args, saturation = null) { + const [r, g, b] = args; + let value = saturation === null ? convert.rgb.hsv(args)[2] : saturation; // Hsv -> ansi16 optimization + + value = Math.round(value / 50); + + if (value === 0) { + return 30; + } + + let ansi = 30 + + ((Math.round(b / 255) << 2) + | (Math.round(g / 255) << 1) + | Math.round(r / 255)); + + if (value === 2) { + ansi += 60; + } + + return ansi; +}; + +convert.hsv.ansi16 = function (args) { + // Optimization here; we already know the value and don't need to get + // it converted for us. + return convert.rgb.ansi16(convert.hsv.rgb(args), args[2]); +}; + +convert.rgb.ansi256 = function (args) { + const r = args[0]; + const g = args[1]; + const b = args[2]; + + // We use the extended greyscale palette here, with the exception of + // black and white. normal palette only has 4 greyscale shades. + if (r === g && g === b) { + if (r < 8) { + return 16; + } + + if (r > 248) { + return 231; + } + + return Math.round(((r - 8) / 247) * 24) + 232; + } + + const ansi = 16 + + (36 * Math.round(r / 255 * 5)) + + (6 * Math.round(g / 255 * 5)) + + Math.round(b / 255 * 5); + + return ansi; +}; + +convert.ansi16.rgb = function (args) { + let color = args % 10; + + // Handle greyscale + if (color === 0 || color === 7) { + if (args > 50) { + color += 3.5; + } + + color = color / 10.5 * 255; + + return [color, color, color]; + } + + const mult = (~~(args > 50) + 1) * 0.5; + const r = ((color & 1) * mult) * 255; + const g = (((color >> 1) & 1) * mult) * 255; + const b = (((color >> 2) & 1) * mult) * 255; + + return [r, g, b]; +}; + +convert.ansi256.rgb = function (args) { + // Handle greyscale + if (args >= 232) { + const c = (args - 232) * 10 + 8; + return [c, c, c]; + } + + args -= 16; + + let rem; + const r = Math.floor(args / 36) / 5 * 255; + const g = Math.floor((rem = args % 36) / 6) / 5 * 255; + const b = (rem % 6) / 5 * 255; + + return [r, g, b]; +}; + +convert.rgb.hex = function (args) { + const integer = ((Math.round(args[0]) & 0xFF) << 16) + + ((Math.round(args[1]) & 0xFF) << 8) + + (Math.round(args[2]) & 0xFF); + + const string = integer.toString(16).toUpperCase(); + return '000000'.substring(string.length) + string; +}; + +convert.hex.rgb = function (args) { + const match = args.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i); + if (!match) { + return [0, 0, 0]; + } + + let colorString = match[0]; + + if (match[0].length === 3) { + colorString = colorString.split('').map(char => { + return char + char; + }).join(''); + } + + const integer = parseInt(colorString, 16); + const r = (integer >> 16) & 0xFF; + const g = (integer >> 8) & 0xFF; + const b = integer & 0xFF; + + return [r, g, b]; +}; + +convert.rgb.hcg = function (rgb) { + const r = rgb[0] / 255; + const g = rgb[1] / 255; + const b = rgb[2] / 255; + const max = Math.max(Math.max(r, g), b); + const min = Math.min(Math.min(r, g), b); + const chroma = (max - min); + let grayscale; + let hue; + + if (chroma < 1) { + grayscale = min / (1 - chroma); + } else { + grayscale = 0; + } + + if (chroma <= 0) { + hue = 0; + } else + if (max === r) { + hue = ((g - b) / chroma) % 6; + } else + if (max === g) { + hue = 2 + (b - r) / chroma; + } else { + hue = 4 + (r - g) / chroma; + } + + hue /= 6; + hue %= 1; + + return [hue * 360, chroma * 100, grayscale * 100]; +}; + +convert.hsl.hcg = function (hsl) { + const s = hsl[1] / 100; + const l = hsl[2] / 100; + + const c = l < 0.5 ? (2.0 * s * l) : (2.0 * s * (1.0 - l)); + + let f = 0; + if (c < 1.0) { + f = (l - 0.5 * c) / (1.0 - c); + } + + return [hsl[0], c * 100, f * 100]; +}; + +convert.hsv.hcg = function (hsv) { + const s = hsv[1] / 100; + const v = hsv[2] / 100; + + const c = s * v; + let f = 0; + + if (c < 1.0) { + f = (v - c) / (1 - c); + } + + return [hsv[0], c * 100, f * 100]; +}; + +convert.hcg.rgb = function (hcg) { + const h = hcg[0] / 360; + const c = hcg[1] / 100; + const g = hcg[2] / 100; + + if (c === 0.0) { + return [g * 255, g * 255, g * 255]; + } + + const pure = [0, 0, 0]; + const hi = (h % 1) * 6; + const v = hi % 1; + const w = 1 - v; + let mg = 0; + + /* eslint-disable max-statements-per-line */ + switch (Math.floor(hi)) { + case 0: + pure[0] = 1; pure[1] = v; pure[2] = 0; break; + case 1: + pure[0] = w; pure[1] = 1; pure[2] = 0; break; + case 2: + pure[0] = 0; pure[1] = 1; pure[2] = v; break; + case 3: + pure[0] = 0; pure[1] = w; pure[2] = 1; break; + case 4: + pure[0] = v; pure[1] = 0; pure[2] = 1; break; + default: + pure[0] = 1; pure[1] = 0; pure[2] = w; + } + /* eslint-enable max-statements-per-line */ + + mg = (1.0 - c) * g; + + return [ + (c * pure[0] + mg) * 255, + (c * pure[1] + mg) * 255, + (c * pure[2] + mg) * 255 + ]; +}; + +convert.hcg.hsv = function (hcg) { + const c = hcg[1] / 100; + const g = hcg[2] / 100; + + const v = c + g * (1.0 - c); + let f = 0; + + if (v > 0.0) { + f = c / v; + } + + return [hcg[0], f * 100, v * 100]; +}; + +convert.hcg.hsl = function (hcg) { + const c = hcg[1] / 100; + const g = hcg[2] / 100; + + const l = g * (1.0 - c) + 0.5 * c; + let s = 0; + + if (l > 0.0 && l < 0.5) { + s = c / (2 * l); + } else + if (l >= 0.5 && l < 1.0) { + s = c / (2 * (1 - l)); + } + + return [hcg[0], s * 100, l * 100]; +}; + +convert.hcg.hwb = function (hcg) { + const c = hcg[1] / 100; + const g = hcg[2] / 100; + const v = c + g * (1.0 - c); + return [hcg[0], (v - c) * 100, (1 - v) * 100]; +}; + +convert.hwb.hcg = function (hwb) { + const w = hwb[1] / 100; + const b = hwb[2] / 100; + const v = 1 - b; + const c = v - w; + let g = 0; + + if (c < 1) { + g = (v - c) / (1 - c); + } + + return [hwb[0], c * 100, g * 100]; +}; + +convert.apple.rgb = function (apple) { + return [(apple[0] / 65535) * 255, (apple[1] / 65535) * 255, (apple[2] / 65535) * 255]; +}; + +convert.rgb.apple = function (rgb) { + return [(rgb[0] / 255) * 65535, (rgb[1] / 255) * 65535, (rgb[2] / 255) * 65535]; +}; + +convert.gray.rgb = function (args) { + return [args[0] / 100 * 255, args[0] / 100 * 255, args[0] / 100 * 255]; +}; + +convert.gray.hsl = function (args) { + return [0, 0, args[0]]; +}; + +convert.gray.hsv = convert.gray.hsl; + +convert.gray.hwb = function (gray) { + return [0, 100, gray[0]]; +}; + +convert.gray.cmyk = function (gray) { + return [0, 0, 0, gray[0]]; +}; + +convert.gray.lab = function (gray) { + return [gray[0], 0, 0]; +}; + +convert.gray.hex = function (gray) { + const val = Math.round(gray[0] / 100 * 255) & 0xFF; + const integer = (val << 16) + (val << 8) + val; + + const string = integer.toString(16).toUpperCase(); + return '000000'.substring(string.length) + string; +}; + +convert.rgb.gray = function (rgb) { + const val = (rgb[0] + rgb[1] + rgb[2]) / 3; + return [val / 255 * 100]; +}; diff --git a/node_modules/color-convert/index.js b/node_modules/color-convert/index.js new file mode 100644 index 00000000..b648e573 --- /dev/null +++ b/node_modules/color-convert/index.js @@ -0,0 +1,81 @@ +const conversions = require('./conversions'); +const route = require('./route'); + +const convert = {}; + +const models = Object.keys(conversions); + +function wrapRaw(fn) { + const wrappedFn = function (...args) { + const arg0 = args[0]; + if (arg0 === undefined || arg0 === null) { + return arg0; + } + + if (arg0.length > 1) { + args = arg0; + } + + return fn(args); + }; + + // Preserve .conversion property if there is one + if ('conversion' in fn) { + wrappedFn.conversion = fn.conversion; + } + + return wrappedFn; +} + +function wrapRounded(fn) { + const wrappedFn = function (...args) { + const arg0 = args[0]; + + if (arg0 === undefined || arg0 === null) { + return arg0; + } + + if (arg0.length > 1) { + args = arg0; + } + + const result = fn(args); + + // We're assuming the result is an array here. + // see notice in conversions.js; don't use box types + // in conversion functions. + if (typeof result === 'object') { + for (let len = result.length, i = 0; i < len; i++) { + result[i] = Math.round(result[i]); + } + } + + return result; + }; + + // Preserve .conversion property if there is one + if ('conversion' in fn) { + wrappedFn.conversion = fn.conversion; + } + + return wrappedFn; +} + +models.forEach(fromModel => { + convert[fromModel] = {}; + + Object.defineProperty(convert[fromModel], 'channels', {value: conversions[fromModel].channels}); + Object.defineProperty(convert[fromModel], 'labels', {value: conversions[fromModel].labels}); + + const routes = route(fromModel); + const routeModels = Object.keys(routes); + + routeModels.forEach(toModel => { + const fn = routes[toModel]; + + convert[fromModel][toModel] = wrapRounded(fn); + convert[fromModel][toModel].raw = wrapRaw(fn); + }); +}); + +module.exports = convert; diff --git a/node_modules/color-convert/package.json b/node_modules/color-convert/package.json new file mode 100644 index 00000000..6e48000c --- /dev/null +++ b/node_modules/color-convert/package.json @@ -0,0 +1,48 @@ +{ + "name": "color-convert", + "description": "Plain color conversion functions", + "version": "2.0.1", + "author": "Heather Arthur ", + "license": "MIT", + "repository": "Qix-/color-convert", + "scripts": { + "pretest": "xo", + "test": "node test/basic.js" + }, + "engines": { + "node": ">=7.0.0" + }, + "keywords": [ + "color", + "colour", + "convert", + "converter", + "conversion", + "rgb", + "hsl", + "hsv", + "hwb", + "cmyk", + "ansi", + "ansi16" + ], + "files": [ + "index.js", + "conversions.js", + "route.js" + ], + "xo": { + "rules": { + "default-case": 0, + "no-inline-comments": 0, + "operator-linebreak": 0 + } + }, + "devDependencies": { + "chalk": "^2.4.2", + "xo": "^0.24.0" + }, + "dependencies": { + "color-name": "~1.1.4" + } +} diff --git a/node_modules/color-convert/route.js b/node_modules/color-convert/route.js new file mode 100644 index 00000000..1a08521b --- /dev/null +++ b/node_modules/color-convert/route.js @@ -0,0 +1,97 @@ +const conversions = require('./conversions'); + +/* + This function routes a model to all other models. + + all functions that are routed have a property `.conversion` attached + to the returned synthetic function. This property is an array + of strings, each with the steps in between the 'from' and 'to' + color models (inclusive). + + conversions that are not possible simply are not included. +*/ + +function buildGraph() { + const graph = {}; + // https://jsperf.com/object-keys-vs-for-in-with-closure/3 + const models = Object.keys(conversions); + + for (let len = models.length, i = 0; i < len; i++) { + graph[models[i]] = { + // http://jsperf.com/1-vs-infinity + // micro-opt, but this is simple. + distance: -1, + parent: null + }; + } + + return graph; +} + +// https://en.wikipedia.org/wiki/Breadth-first_search +function deriveBFS(fromModel) { + const graph = buildGraph(); + const queue = [fromModel]; // Unshift -> queue -> pop + + graph[fromModel].distance = 0; + + while (queue.length) { + const current = queue.pop(); + const adjacents = Object.keys(conversions[current]); + + for (let len = adjacents.length, i = 0; i < len; i++) { + const adjacent = adjacents[i]; + const node = graph[adjacent]; + + if (node.distance === -1) { + node.distance = graph[current].distance + 1; + node.parent = current; + queue.unshift(adjacent); + } + } + } + + return graph; +} + +function link(from, to) { + return function (args) { + return to(from(args)); + }; +} + +function wrapConversion(toModel, graph) { + const path = [graph[toModel].parent, toModel]; + let fn = conversions[graph[toModel].parent][toModel]; + + let cur = graph[toModel].parent; + while (graph[cur].parent) { + path.unshift(graph[cur].parent); + fn = link(conversions[graph[cur].parent][cur], fn); + cur = graph[cur].parent; + } + + fn.conversion = path; + return fn; +} + +module.exports = function (fromModel) { + const graph = deriveBFS(fromModel); + const conversion = {}; + + const models = Object.keys(graph); + for (let len = models.length, i = 0; i < len; i++) { + const toModel = models[i]; + const node = graph[toModel]; + + if (node.parent === null) { + // No possible conversion, or this node is the source model. + continue; + } + + conversion[toModel] = wrapConversion(toModel, graph); + } + + return conversion; +}; + diff --git a/node_modules/color-name/LICENSE b/node_modules/color-name/LICENSE new file mode 100644 index 00000000..c6b10012 --- /dev/null +++ b/node_modules/color-name/LICENSE @@ -0,0 +1,8 @@ +The MIT License (MIT) +Copyright (c) 2015 Dmitry Ivanov + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. \ No newline at end of file diff --git a/node_modules/color-name/README.md b/node_modules/color-name/README.md new file mode 100644 index 00000000..932b9791 --- /dev/null +++ b/node_modules/color-name/README.md @@ -0,0 +1,11 @@ +A JSON with color names and its values. Based on http://dev.w3.org/csswg/css-color/#named-colors. + +[![NPM](https://nodei.co/npm/color-name.png?mini=true)](https://nodei.co/npm/color-name/) + + +```js +var colors = require('color-name'); +colors.red //[255,0,0] +``` + +
diff --git a/node_modules/color-name/index.js b/node_modules/color-name/index.js new file mode 100644 index 00000000..b7c198a6 --- /dev/null +++ b/node_modules/color-name/index.js @@ -0,0 +1,152 @@ +'use strict' + +module.exports = { + "aliceblue": [240, 248, 255], + "antiquewhite": [250, 235, 215], + "aqua": [0, 255, 255], + "aquamarine": [127, 255, 212], + "azure": [240, 255, 255], + "beige": [245, 245, 220], + "bisque": [255, 228, 196], + "black": [0, 0, 0], + "blanchedalmond": [255, 235, 205], + "blue": [0, 0, 255], + "blueviolet": [138, 43, 226], + "brown": [165, 42, 42], + "burlywood": [222, 184, 135], + "cadetblue": [95, 158, 160], + "chartreuse": [127, 255, 0], + "chocolate": [210, 105, 30], + "coral": [255, 127, 80], + "cornflowerblue": [100, 149, 237], + "cornsilk": [255, 248, 220], + "crimson": [220, 20, 60], + "cyan": [0, 255, 255], + "darkblue": [0, 0, 139], + "darkcyan": [0, 139, 139], + "darkgoldenrod": [184, 134, 11], + "darkgray": [169, 169, 169], + "darkgreen": [0, 100, 0], + "darkgrey": [169, 169, 169], + "darkkhaki": [189, 183, 107], + "darkmagenta": [139, 0, 139], + "darkolivegreen": [85, 107, 47], + "darkorange": [255, 140, 0], + "darkorchid": [153, 50, 204], + "darkred": [139, 0, 0], + "darksalmon": [233, 150, 122], + "darkseagreen": [143, 188, 143], + "darkslateblue": [72, 61, 139], + "darkslategray": [47, 79, 79], + "darkslategrey": [47, 79, 79], + "darkturquoise": [0, 206, 209], + "darkviolet": [148, 0, 211], + "deeppink": [255, 20, 147], + "deepskyblue": [0, 191, 255], + "dimgray": [105, 105, 105], + "dimgrey": [105, 105, 105], + "dodgerblue": [30, 144, 255], + "firebrick": [178, 34, 34], + "floralwhite": [255, 250, 240], + "forestgreen": [34, 139, 34], + "fuchsia": [255, 0, 255], + "gainsboro": [220, 220, 220], + "ghostwhite": [248, 248, 255], + "gold": [255, 215, 0], + "goldenrod": [218, 165, 32], + "gray": [128, 128, 128], + "green": [0, 128, 0], + "greenyellow": [173, 255, 47], + "grey": [128, 128, 128], + "honeydew": [240, 255, 240], + "hotpink": [255, 105, 180], + "indianred": [205, 92, 92], + "indigo": [75, 0, 130], + "ivory": [255, 255, 240], + "khaki": [240, 230, 140], + "lavender": [230, 230, 250], + "lavenderblush": [255, 240, 245], + "lawngreen": [124, 252, 0], + "lemonchiffon": [255, 250, 205], + "lightblue": [173, 216, 230], + "lightcoral": [240, 128, 128], + "lightcyan": [224, 255, 255], + "lightgoldenrodyellow": [250, 250, 210], + "lightgray": [211, 211, 211], + "lightgreen": [144, 238, 144], + "lightgrey": [211, 211, 211], + "lightpink": [255, 182, 193], + "lightsalmon": [255, 160, 122], + "lightseagreen": [32, 178, 170], + "lightskyblue": [135, 206, 250], + "lightslategray": [119, 136, 153], + "lightslategrey": [119, 136, 153], + "lightsteelblue": [176, 196, 222], + "lightyellow": [255, 255, 224], + "lime": [0, 255, 0], + "limegreen": [50, 205, 50], + "linen": [250, 240, 230], + "magenta": [255, 0, 255], + "maroon": [128, 0, 0], + "mediumaquamarine": [102, 205, 170], + "mediumblue": [0, 0, 205], + "mediumorchid": [186, 85, 211], + "mediumpurple": [147, 112, 219], + "mediumseagreen": [60, 179, 113], + "mediumslateblue": [123, 104, 238], + "mediumspringgreen": [0, 250, 154], + "mediumturquoise": [72, 209, 204], + "mediumvioletred": [199, 21, 133], + "midnightblue": [25, 25, 112], + "mintcream": [245, 255, 250], + "mistyrose": [255, 228, 225], + "moccasin": [255, 228, 181], + "navajowhite": [255, 222, 173], + "navy": [0, 0, 128], + "oldlace": [253, 245, 230], + "olive": [128, 128, 0], + "olivedrab": [107, 142, 35], + "orange": [255, 165, 0], + "orangered": [255, 69, 0], + "orchid": [218, 112, 214], + "palegoldenrod": [238, 232, 170], + "palegreen": [152, 251, 152], + "paleturquoise": [175, 238, 238], + "palevioletred": [219, 112, 147], + "papayawhip": [255, 239, 213], + "peachpuff": [255, 218, 185], + "peru": [205, 133, 63], + "pink": [255, 192, 203], + "plum": [221, 160, 221], + "powderblue": [176, 224, 230], + "purple": [128, 0, 128], + "rebeccapurple": [102, 51, 153], + "red": [255, 0, 0], + "rosybrown": [188, 143, 143], + "royalblue": [65, 105, 225], + "saddlebrown": [139, 69, 19], + "salmon": [250, 128, 114], + "sandybrown": [244, 164, 96], + "seagreen": [46, 139, 87], + "seashell": [255, 245, 238], + "sienna": [160, 82, 45], + "silver": [192, 192, 192], + "skyblue": [135, 206, 235], + "slateblue": [106, 90, 205], + "slategray": [112, 128, 144], + "slategrey": [112, 128, 144], + "snow": [255, 250, 250], + "springgreen": [0, 255, 127], + "steelblue": [70, 130, 180], + "tan": [210, 180, 140], + "teal": [0, 128, 128], + "thistle": [216, 191, 216], + "tomato": [255, 99, 71], + "turquoise": [64, 224, 208], + "violet": [238, 130, 238], + "wheat": [245, 222, 179], + "white": [255, 255, 255], + "whitesmoke": [245, 245, 245], + "yellow": [255, 255, 0], + "yellowgreen": [154, 205, 50] +}; diff --git a/node_modules/color-name/package.json b/node_modules/color-name/package.json new file mode 100644 index 00000000..782dd828 --- /dev/null +++ b/node_modules/color-name/package.json @@ -0,0 +1,28 @@ +{ + "name": "color-name", + "version": "1.1.4", + "description": "A list of color names and its values", + "main": "index.js", + "files": [ + "index.js" + ], + "scripts": { + "test": "node test.js" + }, + "repository": { + "type": "git", + "url": "git@github.com:colorjs/color-name.git" + }, + "keywords": [ + "color-name", + "color", + "color-keyword", + "keyword" + ], + "author": "DY ", + "license": "MIT", + "bugs": { + "url": "https://github.com/colorjs/color-name/issues" + }, + "homepage": "https://github.com/colorjs/color-name" +} diff --git a/node_modules/colord/CHANGELOG.md b/node_modules/colord/CHANGELOG.md new file mode 100644 index 00000000..315acfbd --- /dev/null +++ b/node_modules/colord/CHANGELOG.md @@ -0,0 +1,188 @@ +### 2.9.3 + +- Fix types export for TypeScript 4.7 ❤️ [@pkishorez](https://github.com/pkishorez) + +### 2.9.2 + +- Fix: Add "package.json" to exports map + +### 2.9.1 + +- Fix: Make minification lossless +- Fix: Minify to name only if color is opaque + +### 2.9.0 + +- New plugin: Color string minification 🗜 + +### 2.8.0 + +- New `delta` method to calculate the perceived color difference between two colors ❤️ [@EricRovell](https://github.com/EricRovell) + +### 2.7.0 + +- Improve `mix` plugin by adding new `tints`, `tones` and `shades` methods ❤️ [@EricRovell](https://github.com/EricRovell) + +### 2.6.0 + +- Support "double split complementary" color harmony generation ❤️ [@EricRovell](https://github.com/EricRovell) & [@lbragile](https://github.com/lbragile) + +### 2.5.0 + +- New `closest` option of `toName` method allows you to find the closest color if there is no exact match + +### 2.4.0 + +- New plugin: Color harmonies generator ❤️ [@EricRovell](https://github.com/EricRovell) + +### 2.3.0 + +- Add new `isEqual` method ❤️ [@EricRovell](https://github.com/EricRovell) + +### 2.2.0 + +- New plugin: CMYK color space ❤️ [@EricRovell](https://github.com/EricRovell) + +### 2.1.0 + +- Add new `hue` and `rotate` methods + +### 2.0.1 + +- Improve the precision of alpha values + +### 2.0.0 + +- Strict string color parsing conforming to the CSS Color Level specifications + +### 1.7.2 + +- Simplify package "exports" field to improve different environments support + +### 1.7.1 + +- Parse a color name disregarding the case + +### 1.7.0 + +- New `getFormat` utility +- Support HWB color strings (CSS functional notation) +- Clamp LAB values as defined in CSS Color Level 4 specs + +### 1.6.0 + +- Improvement: You can now use every angle unit supported by CSS (`deg`, `rad`, `grad`, `turn`) + +### 1.5.0 + +- New utility: Random color generation + +### 1.4.1 + +- Mix colors through CIE LAB color space + +### 1.4.0 + +- New plugin: Color mixing +- Adjust XYZ, LAB and LCH conversions to the D50 white point ([according to the latest CSS specs](https://drafts.csswg.org/css-color-5/#color-spaces)). + +### 1.3.1 + +- Support modern CSS notations of RGB, HSL and LCH color functions + +### 1.3.0 + +- New plugin: CIE LCH color space + +### 1.2.1 + +- Fix: Do not treat 7-digit hex as a valid color ❤️ [@subzey](https://github.com/subzey) +- Parser update: Turn NaN input values into valid numbers ❤️ [@subzey](https://github.com/subzey) + +### 1.2.0 + +- New plugin: CIE LAB color space + +### 1.1.1 + +- Make bundle 1% lighter + +### 1.1.0 + +- Add `isValid` method + +### 1.0 + +- An official production-ready release + +### 0.10.2 + +- Sort named colors dictionary for better compression ❤️ [@subzey](https://github.com/subzey) + +### 0.10.1 + +- Ignore `null` input in the parsers + +### 0.10 + +- Shorten conversion method names (`toRgba` to `toRgb`, etc) + +### 0.9.3 + +- New plugin: HWB color model +- More accurate HSL and HSV conversions + +### 0.9.2 + +- Names plugin: Support "transparent" keyword + +### 0.9.1 + +- Improve package exports + +### 0.9 + +- Add CommonJS exports + +### 0.8 + +- New plugin: a11y (Accessibility) + +### 0.7 + +- New plugin: CIE XYZ color space + +### 0.6.2 + +- 20% speed improvement ❤️ [@jeetiss](https://github.com/jeetiss) + +### 0.6.1 + +- 100% code coverage + +### 0.6 + +- Make plugin available in Parcel which doesn't support exports map yet +- Fix names plugin TS declarations export +- Documentation + +### 0.5 + +- New plugin: CSS color names + +### 0.4 + +- Make the library ESM-first +- Add code coverage reports + +### 0.3 + +- Implement Plugin API + +### 0.2 + +- Support 4 and 8 digit Hex + +### 0.1 + +- Basic API diff --git a/node_modules/colord/LICENSE.md b/node_modules/colord/LICENSE.md new file mode 100644 index 00000000..e4370037 --- /dev/null +++ b/node_modules/colord/LICENSE.md @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2020 Vlad Shilov omgovich@ya.ru + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/node_modules/colord/README.md b/node_modules/colord/README.md new file mode 100644 index 00000000..db36c6aa --- /dev/null +++ b/node_modules/colord/README.md @@ -0,0 +1,1053 @@ + + + + +
+ Colord is a tiny yet powerful tool for high-performance color manipulations and conversions. +
+ +## Features + +- 📦 **Small**: Just **1.7 KB** gzipped ([3x+ lighter](#benchmarks) than **color** and **tinycolor2**) +- 🚀 **Fast**: [3x+ faster](#benchmarks) than **color** and **tinycolor2** +- 😍 **Simple**: Chainable API and familiar patterns +- 💪 **Immutable**: No need to worry about data mutations +- 🛡 **Bulletproof**: Written in strict TypeScript and has 100% test coverage +- 🗂 **Typed**: Ships with [types included](#types) +- 🏗 **Extendable**: Built-in [plugin system](#plugins) to add new functionality +- 📚 **CSS-compliant**: Strictly follows CSS Color Level specifications +- 👫 **Works everywhere**: Supports all browsers and Node.js +- 💨 **Dependency-free** + +
---
+ +## Benchmarks + +| Library | Operations/sec | Size
(minified) | Size
(gzipped) | Dependencies | Type declarations | +| ----------------------------- | ----------------------------- | --------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------------------------------- | +| colord 👑 | 3,524,989 | [![](https://badgen.net/bundlephobia/min/colord?color=6ead0a&label=)](https://bundlephobia.com/result?p=colord) | [![](https://badgen.net/bundlephobia/minzip/colord?color=6ead0a&label=)](https://bundlephobia.com/result?p=colord) | [![](https://badgen.net/bundlephobia/dependency-count/colord?color=6ead0a&label=)](https://bundlephobia.com/result?p=colord) | [![](https://badgen.net/npm/types/colord?color=6ead0a&label=)](https://bundlephobia.com/result?p=colord) | +| color | 744,263 | [![](https://badgen.net/bundlephobia/min/color?color=red&label=)](https://bundlephobia.com/result?p=color) | [![](https://badgen.net/bundlephobia/minzip/color?color=red&label=)](https://bundlephobia.com/result?p=color) | [![](https://badgen.net/bundlephobia/dependency-count/color?color=red&label=)](https://bundlephobia.com/result?p=color) | [![](https://badgen.net/npm/types/color?color=e6591d&label=)](https://bundlephobia.com/result?p=color) | +| tinycolor2 | 971,312 | [![](https://badgen.net/bundlephobia/min/tinycolor2?color=red&label=)](https://bundlephobia.com/result?p=tinycolor2) | [![](https://badgen.net/bundlephobia/minzip/tinycolor2?color=red&label=)](https://bundlephobia.com/result?p=tinycolor2) | [![](https://badgen.net/bundlephobia/dependency-count/tinycolor2?color=6ead0a&label=)](https://bundlephobia.com/result?p=tinycolor2) | [![](https://badgen.net/npm/types/tinycolor2?color=e6591d&label=)](https://bundlephobia.com/result?p=tinycolor2) | +| ac-colors | 660,722 | [![](https://badgen.net/bundlephobia/min/ac-colors?color=e6591d&label=)](https://bundlephobia.com/result?p=ac-colors) | [![](https://badgen.net/bundlephobia/minzip/ac-colors?color=e6591d&label=)](https://bundlephobia.com/result?p=ac-colors) | [![](https://badgen.net/bundlephobia/dependency-count/ac-colors?color=6ead0a&label=)](https://bundlephobia.com/result?p=ac-colors) | [![](https://badgen.net/npm/types/ac-colors?color=red&label=)](https://bundlephobia.com/result?p=ac-colors) | +| chroma-js | 962,967 | [![](https://badgen.net/bundlephobia/min/chroma-js?color=red&label=)](https://bundlephobia.com/result?p=chroma-js) | [![](https://badgen.net/bundlephobia/minzip/chroma-js?color=red&label=)](https://bundlephobia.com/result?p=chroma-js) | [![](https://badgen.net/bundlephobia/dependency-count/chroma-js?color=red&label=)](https://bundlephobia.com/result?p=chroma-js) | [![](https://badgen.net/npm/types/chroma-js?color=e6591d&label=)](https://bundlephobia.com/result?p=chroma-js) | + +The performance results were generated on a MBP 2019, 2,6 GHz Intel Core i7 by running `npm run benchmark` in the library folder. See [tests/benchmark.ts](https://github.com/omgovich/colord/blob/master/tests/benchmark.ts). + +
---
+ +## Getting Started + +``` +npm i colord +``` + +```js +import { colord } from "colord"; + +colord("#ff0000").grayscale().alpha(0.25).toRgbString(); // "rgba(128, 128, 128, 0.25)" +colord("rgb(192, 192, 192)").isLight(); // true +colord("hsl(0, 50%, 50%)").darken(0.25).toHex(); // "#602020" +``` + +
---
+ +## Supported Color Models + +- Hexadecimal strings (including 3, 4 and 8 digit notations) +- RGB strings and objects +- HSL strings and objects +- HSV objects +- Color names ([via plugin](#plugins)) +- HWB objects and strings ([via plugin](#plugins)) +- CMYK objects and strings ([via plugin](#plugins)) +- LCH objects and strings ([via plugin](#plugins)) +- LAB objects ([via plugin](#plugins)) +- XYZ objects ([via plugin](#plugins)) + +
---
+ +## API + +### Color parsing + +
+ colord(input) + +Parses the given input and creates a new Colord instance. String parsing strictly conforms to [CSS Color Level Specifications](https://www.w3.org/TR/css-color-4/#color-type). + +```js +import { colord } from "colord"; + +// String input examples +colord("#FFF"); +colord("#ffffff"); +colord("#ffffffff"); +colord("rgb(255, 255, 255)"); +colord("rgba(255, 255, 255, 0.5)"); +colord("rgba(100% 100% 100% / 50%)"); +colord("hsl(90, 100%, 100%)"); +colord("hsla(90, 100%, 100%, 0.5)"); +colord("hsla(90deg 100% 100% / 50%)"); +colord("tomato"); // requires "names" plugin + +// Object input examples +colord({ r: 255, g: 255, b: 255 }); +colord({ r: 255, g: 255, b: 255, a: 1 }); +colord({ h: 360, s: 100, l: 100 }); +colord({ h: 360, s: 100, l: 100, a: 1 }); +colord({ h: 360, s: 100, v: 100 }); +colord({ h: 360, s: 100, v: 100, a: 1 }); +``` + +Check out the ["Plugins"](#plugins) section for more input format examples. + +
+ +
+ getFormat(input) + +Returns a color model name for the input passed to the function. Uses the same parsing system as `colord` function. + +```js +import { getFormat } from "colord"; + +getFormat("#aabbcc"); // "hex" +getFormat({ r: 13, g: 237, b: 162, a: 0.5 }); // "rgb" +getFormat("hsl(180deg, 50%, 50%)"); // "hsl" +getFormat("WUT?"); // undefined +``` + +
+ +### Color conversion + +
+ .toHex() + +Returns the [hexadecimal representation](https://developer.mozilla.org/en-US/docs/Web/CSS/color_value#rgb_colors) of a color. When the alpha channel value of the color is less than 1, it outputs `#rrggbbaa` format instead of `#rrggbb`. + +```js +colord("rgb(0, 255, 0)").toHex(); // "#00ff00" +colord({ h: 300, s: 100, l: 50 }).toHex(); // "#ff00ff" +colord({ r: 255, g: 255, b: 255, a: 0 }).toHex(); // "#ffffff00" +``` + +
+ +
+ .toRgb() + +```js +colord("#ff0000").toRgb(); // { r: 255, g: 0, b: 0, a: 1 } +colord({ h: 180, s: 100, l: 50, a: 0.5 }).toRgb(); // { r: 0, g: 255, b: 255, a: 0.5 } +``` + +
+ +
+ .toRgbString() + +```js +colord("#ff0000").toRgbString(); // "rgb(255, 0, 0)" +colord({ h: 180, s: 100, l: 50, a: 0.5 }).toRgbString(); // "rgba(0, 255, 255, 0.5)" +``` + +
+ +
+ .toHsl() + +Converts a color to [HSL color space](https://en.wikipedia.org/wiki/HSL_and_HSV) and returns an object. + +```js +colord("#ffff00").toHsl(); // { h: 60, s: 100, l: 50, a: 1 } +colord("rgba(0, 0, 255, 0.5) ").toHsl(); // { h: 240, s: 100, l: 50, a: 0.5 } +``` + +
+ +
+ .toHslString() + +Converts a color to [HSL color space](https://en.wikipedia.org/wiki/HSL_and_HSV) and expresses it through the [functional notation](https://developer.mozilla.org/en-US/docs/Web/CSS/color_value#hsl_colors). + +```js +colord("#ffff00").toHslString(); // "hsl(60, 100%, 50%)" +colord("rgba(0, 0, 255, 0.5)").toHslString(); // "hsla(240, 100%, 50%, 0.5)" +``` + +
+ +
+ .toHsv() + +Converts a color to [HSV color space](https://en.wikipedia.org/wiki/HSL_and_HSV) and returns an object. + +```js +colord("#ffff00").toHsv(); // { h: 60, s: 100, v: 100, a: 1 } +colord("rgba(0, 255, 255, 0.5) ").toHsv(); // { h: 180, s: 100, v: 100, a: 1 } +``` + +
+ +
+ .toName(options?) (names plugin) + +Converts a color to a [CSS keyword](https://developer.mozilla.org/en-US/docs/Web/CSS/color_value#color_keywords). Returns `undefined` if the color is not specified in the specs. + +```js +import { colord, extend } from "colord"; +import namesPlugin from "colord/plugins/names"; + +extend([namesPlugin]); + +colord("#ff6347").toName(); // "tomato" +colord("#00ffff").toName(); // "cyan" +colord("rgba(0, 0, 0, 0)").toName(); // "transparent" + +colord("#fe0000").toName(); // undefined (the color is not specified in CSS specs) +colord("#fe0000").toName({ closest: true }); // "red" (closest color available) +``` + +
+ +
+ .toCmyk() (cmyk plugin) + +Converts a color to [CMYK](https://en.wikipedia.org/wiki/CMYK_color_model) color space. + +```js +import { colord, extend } from "colord"; +import cmykPlugin from "colord/plugins/cmyk"; + +extend([cmykPlugin]); + +colord("#ffffff").toCmyk(); // { c: 0, m: 0, y: 0, k: 0, a: 1 } +colord("#555aaa").toCmyk(); // { c: 50, m: 47, y: 0, k: 33, a: 1 } +``` + +
+ +
+ .toCmykString() (cmyk plugin) + +Converts a color to color space. + +Converts a color to [CMYK](https://en.wikipedia.org/wiki/CMYK_color_model) color space and expresses it through the [functional notation](https://www.w3.org/TR/css-color-4/#device-cmyk) + +```js +import { colord, extend } from "colord"; +import cmykPlugin from "colord/plugins/cmyk"; + +extend([cmykPlugin]); + +colord("#99ffff").toCmykString(); // "device-cmyk(40% 0% 0% 0%)" +colord("#00336680").toCmykString(); // "device-cmyk(100% 50% 0% 60% / 0.5)" +``` + +
+ +
+ .toHwb() (hwb plugin) + +Converts a color to [HWB (Hue-Whiteness-Blackness)](https://en.wikipedia.org/wiki/HWB_color_model) color space. + +```js +import { colord, extend } from "colord"; +import hwbPlugin from "colord/plugins/hwb"; + +extend([hwbPlugin]); + +colord("#ffffff").toHwb(); // { h: 0, w: 100, b: 0, a: 1 } +colord("#555aaa").toHwb(); // { h: 236, w: 33, b: 33, a: 1 } +``` + +
+ +
+ .toHwbString() (hwb plugin) + +Converts a color to [HWB (Hue-Whiteness-Blackness)](https://en.wikipedia.org/wiki/HWB_color_model) color space and expresses it through the [functional notation](https://www.w3.org/TR/css-color-4/#the-hwb-notation). + +```js +import { colord, extend } from "colord"; +import hwbPlugin from "colord/plugins/hwb"; + +extend([hwbPlugin]); + +colord("#999966").toHwbString(); // "hwb(60 40% 40%)" +colord("#99ffff").toHwbString(); // "hwb(180 60% 0%)" +colord("#003366").alpha(0.5).toHwbString(); // "hwb(210 0% 60% / 0.5)" +``` + +
+ +
+ .toLab() (lab plugin) + +Converts a color to [CIE LAB](https://en.wikipedia.org/wiki/CIELAB_color_space) color space. The conversion logic is ported from [CSS Color Module Level 4 Specification](https://www.w3.org/TR/css-color-4/#color-conversion-code). + +```js +import { colord, extend } from "colord"; +import labPlugin from "colord/plugins/lab"; + +extend([labPlugin]); + +colord("#ffffff").toLab(); // { l: 100, a: 0, b: 0, alpha: 1 } +colord("#33221180").toLab(); // { l: 14.89, a: 5.77, b: 14.41, alpha: 0.5 } +``` + +
+ +
+ .toLch() (lch plugin) + +Converts a color to [CIE LCH](https://lea.verou.me/2020/04/lch-colors-in-css-what-why-and-how/) color space. The conversion logic is ported from [CSS Color Module Level 4 Specification](https://www.w3.org/TR/css-color-4/#color-conversion-code). + +```js +import { colord, extend } from "colord"; +import lchPlugin from "colord/plugins/lch"; + +extend([lchPlugin]); + +colord("#ffffff").toLch(); // { l: 100, c: 0, h: 0, a: 1 } +colord("#213b0b").toLch(); // { l: 21.85, c: 31.95, h: 127.77, a: 1 } +``` + +
+ +
+ .toLchString() (lch plugin) + +Converts a color to [CIE LCH](https://lea.verou.me/2020/04/lch-colors-in-css-what-why-and-how/) color space and expresses it through the [functional notation](https://www.w3.org/TR/css-color-4/#specifying-lab-lch). + +```js +import { colord, extend } from "colord"; +import lchPlugin from "colord/plugins/lch"; + +extend([lchPlugin]); + +colord("#ffffff").toLchString(); // "lch(100% 0 0)" +colord("#213b0b").alpha(0.5).toLchString(); // "lch(21.85% 31.95 127.77 / 0.5)" +``` + +
+ +
+ .toXyz() (xyz plugin) + +Converts a color to [CIE XYZ](https://www.sttmedia.com/colormodel-xyz) color space. The conversion logic is ported from [CSS Color Module Level 4 Specification](https://www.w3.org/TR/css-color-4/#color-conversion-code). + +```js +import { colord, extend } from "colord"; +import xyzPlugin from "colord/plugins/xyz"; + +extend([xyzPlugin]); + +colord("#ffffff").toXyz(); // { x: 95.047, y: 100, z: 108.883, a: 1 } +``` + +
+ +### Color manipulation + +
+ .alpha(value) + +Changes the alpha channel value and returns a new `Colord` instance. + +```js +colord("rgb(0, 0, 0)").alpha(0.5).toRgbString(); // "rgba(0, 0, 0, 0.5)" +``` + +
+ +
+ .invert() + +Creates a new `Colord` instance containing an inverted (opposite) version of the color. + +```js +colord("#ffffff").invert().toHex(); // "#000000" +colord("#aabbcc").invert().toHex(); // "#554433" +``` + +
+ +
+ .saturate(amount = 0.1) + +Increases the [HSL saturation](https://en.wikipedia.org/wiki/HSL_and_HSV) of a color by the given amount. + +```js +colord("#bf4040").saturate(0.25).toHex(); // "#df2020" +colord("hsl(0, 50%, 50%)").saturate(0.5).toHslString(); // "hsl(0, 100%, 50%)" +``` + +
+ +
+ .desaturate(amount = 0.1) + +Decreases the [HSL saturation](https://en.wikipedia.org/wiki/HSL_and_HSV) of a color by the given amount. + +```js +colord("#df2020").saturate(0.25).toHex(); // "#bf4040" +colord("hsl(0, 100%, 50%)").saturate(0.5).toHslString(); // "hsl(0, 50%, 50%)" +``` + +
+ +
+ .grayscale() + +Makes a gray color with the same lightness as a source color. Same as calling `desaturate(1)`. + +```js +colord("#bf4040").grayscale().toHex(); // "#808080" +colord("hsl(0, 100%, 50%)").grayscale().toHslString(); // "hsl(0, 0%, 50%)" +``` + +
+ +
+ .lighten(amount = 0.1) + +Increases the [HSL lightness](https://en.wikipedia.org/wiki/HSL_and_HSV) of a color by the given amount. + +```js +colord("#000000").lighten(0.5).toHex(); // "#808080" +colord("#223344").lighten(0.3).toHex(); // "#5580aa" +colord("hsl(0, 50%, 50%)").lighten(0.5).toHslString(); // "hsl(0, 50%, 100%)" +``` + +
+ +
+ .darken(amount = 0.1) + +Decreases the [HSL lightness](https://en.wikipedia.org/wiki/HSL_and_HSV) of a color by the given amount. + +```js +colord("#ffffff").darken(0.5).toHex(); // "#808080" +colord("#5580aa").darken(0.3).toHex(); // "#223344" +colord("hsl(0, 50%, 100%)").lighten(0.5).toHslString(); // "hsl(0, 50%, 50%)" +``` + +
+ +
+ .hue(value) + +Changes the hue value and returns a new `Colord` instance. + +```js +colord("hsl(90, 50%, 50%)").hue(180).toHslString(); // "hsl(180, 50%, 50%)" +colord("hsl(90, 50%, 50%)").hue(370).toHslString(); // "hsl(10, 50%, 50%)" +``` + +
+ +
+ .rotate(amount = 15) + +Increases the [HSL](https://en.wikipedia.org/wiki/HSL_and_HSV) hue value of a color by the given amount. + +```js +colord("hsl(90, 50%, 50%)").rotate(90).toHslString(); // "hsl(180, 50%, 50%)" +colord("hsl(90, 50%, 50%)").rotate(-180).toHslString(); // "hsl(270, 50%, 50%)" +``` + +
+ +
+ .mix(color2, ratio = 0.5) (mix plugin) + +Produces a mixture of two colors and returns the result of mixing them (new Colord instance). + +In contrast to other libraries that perform RGB values mixing, Colord mixes colors through [LAB color space](https://en.wikipedia.org/wiki/CIELAB_color_space). This approach produces better results and doesn't have the drawbacks the legacy way has. + +→ [Online demo](https://3cg7o.csb.app/) + +```js +import { colord, extend } from "colord"; +import mixPlugin from "colord/plugins/mix"; + +extend([mixPlugin]); + +colord("#ffffff").mix("#000000").toHex(); // "#777777" +colord("#800080").mix("#dda0dd").toHex(); // "#af5cae" +colord("#cd853f").mix("#eee8aa", 0.6).toHex(); // "#e3c07e" +colord("#008080").mix("#808000", 0.35).toHex(); // "#50805d" +``` + +
+ +
+ .tints(count = 5) (mix plugin) + +Provides functionality to generate [tints](https://en.wikipedia.org/wiki/Tints_and_shades) of a color. Returns an array of `Colord` instances, including the original color. + +```js +import { colord, extend } from "colord"; +import mixPlugin from "colord/plugins/mix"; + +extend([mixPlugin]); + +const color = colord("#ff0000"); +color.tints(3).map((c) => c.toHex()); // ["#ff0000", "#ff9f80", "#ffffff"]; +``` + +
+ +
+ .shades(count = 5) (mix plugin) + +Provides functionality to generate [shades](https://en.wikipedia.org/wiki/Tints_and_shades) of a color. Returns an array of `Colord` instances, including the original color. + +```js +import { colord, extend } from "colord"; +import mixPlugin from "colord/plugins/mix"; + +extend([mixPlugin]); + +const color = colord("#ff0000"); +color.shades(3).map((c) => c.toHex()); // ["#ff0000", "#7a1b0b", "#000000"]; +``` + +
+ +
+ .tones(count = 5) (mix plugin) + +Provides functionality to generate [tones](https://en.wikipedia.org/wiki/Tints_and_shades) of a color. Returns an array of `Colord` instances, including the original color. + +```js +import { colord, extend } from "colord"; +import mixPlugin from "colord/plugins/mix"; + +extend([mixPlugin]); + +const color = colord("#ff0000"); +color.tones(3).map((c) => c.toHex()); // ["#ff0000", "#c86147", "#808080"]; +``` + +
+ +
+ .harmonies(type = "complementary") (harmonies plugin) + +Provides functionality to generate [harmony colors](). Returns an array of `Colord` instances. + +```js +import { colord, extend } from "colord"; +import harmoniesPlugin from "colord/plugins/harmonies"; + +extend([harmoniesPlugin]); + +const color = colord("#ff0000"); +color.harmonies("analogous").map((c) => c.toHex()); // ["#ff0080", "#ff0000", "#ff8000"] +color.harmonies("complementary").map((c) => c.toHex()); // ["#ff0000", "#00ffff"] +color.harmonies("double-split-complementary").map((c) => c.toHex()); // ["#ff0080", "#ff0000", "#ff8000", "#00ff80", "#0080ff"] +color.harmonies("rectangle").map((c) => c.toHex()); // ["#ff0000", "#ffff00", "#00ffff", "#0000ff"] +color.harmonies("split-complementary").map((c) => c.toHex()); // ["#ff0000", "#00ff80", "#0080ff"] +color.harmonies("tetradic").map((c) => c.toHex()); // ["#ff0000", "#80ff00", "#00ffff", "#8000ff"] +color.harmonies("triadic").map((c) => c.toHex()); // ["#ff0000", "#00ff00", "#0000ff"] +``` + +
+ +### Color analysis + +
+ .isValid() + +Returns a boolean indicating whether or not an input has been parsed successfully. +Note: If parsing is unsuccessful, Colord defaults to black (does not throws an error). + +```js +colord("#ffffff").isValid(); // true +colord("#wwuutt").isValid(); // false +colord("abracadabra").isValid(); // false +colord({ r: 0, g: 0, b: 0 }).isValid(); // true +colord({ r: 0, g: 0, v: 0 }).isValid(); // false +``` + +
+ +
+ .isEqual(color2) + +Determines whether two values are the same color. + +```js +colord("#000000").isEqual("rgb(0, 0, 0)"); // true +colord("#000000").isEqual("rgb(255, 255, 255)"); // false +``` + +
+ +
+ .alpha() + +```js +colord("#ffffff").alpha(); // 1 +colord("rgba(50, 100, 150, 0.5)").alpha(); // 0.5 +``` + +
+ +
+ .hue() + +```js +colord("hsl(90, 50%, 50%)").hue(); // 90 +colord("hsl(-10, 50%, 50%)").hue(); // 350 +``` + +
+ +
+ .brightness() + +Returns the brightness of a color (from 0 to 1). The calculation logic is modified from [Web Content Accessibility Guidelines](https://www.w3.org/TR/AERT/#color-contrast). + +```js +colord("#000000").brightness(); // 0 +colord("#808080").brightness(); // 0.5 +colord("#ffffff").brightness(); // 1 +``` + +
+ +
+ .isLight() + +Same as calling `brightness() >= 0.5`. + +```js +colord("#111111").isLight(); // false +colord("#aabbcc").isLight(); // true +colord("#ffffff").isLight(); // true +``` + +
+ +
+ .isDark() + +Same as calling `brightness() < 0.5`. + +```js +colord("#111111").isDark(); // true +colord("#aabbcc").isDark(); // false +colord("#ffffff").isDark(); // false +``` + +
+ +
+ .luminance() (a11y plugin) + +Returns the relative luminance of a color, normalized to 0 for darkest black and 1 for lightest white as defined by [WCAG 2.0](https://www.w3.org/TR/WCAG20/#relativeluminancedef). + +```js +colord("#000000").luminance(); // 0 +colord("#808080").luminance(); // 0.22 +colord("#ccddee").luminance(); // 0.71 +colord("#ffffff").luminance(); // 1 +``` + +
+ +
+ .contrast(color2 = "#FFF") (a11y plugin) + +Calculates a contrast ratio for a color pair. This luminance difference is expressed as a ratio ranging from 1 (e.g. white on white) to 21 (e.g., black on a white). [WCAG Accessibility Level AA requires](https://webaim.org/articles/contrast/) a ratio of at least 4.5 for normal text and 3 for large text. + +```js +colord("#000000").contrast(); // 21 (black on white) +colord("#ffffff").contrast("#000000"); // 21 (white on black) +colord("#777777").contrast(); // 4.47 (gray on white) +colord("#ff0000").contrast(); // 3.99 (red on white) +colord("#0000ff").contrast("#ff000"); // 2.14 (blue on red) +``` + +
+ +
+ .isReadable(color2 = "#FFF", options?) (a11y plugin) + +Checks that a background and text color pair is readable according to [WCAG 2.0 Contrast and Color Requirements](https://webaim.org/articles/contrast/). + +```js +colord("#000000").isReadable(); // true (normal black text on white bg conforms to WCAG AA) +colord("#777777").isReadable(); // false (normal gray text on white bg conforms to WCAG AA) +colord("#ffffff").isReadable("#000000"); // true (normal white text on black bg conforms to WCAG AA) +colord("#e60000").isReadable("#ffff47"); // true (normal red text on yellow bg conforms to WCAG AA) +colord("#e60000").isReadable("#ffff47", { level: "AAA" }); // false (normal red text on yellow bg does not conform to WCAG AAA) +colord("#e60000").isReadable("#ffff47", { level: "AAA", size: "large" }); // true (large red text on yellow bg conforms to WCAG AAA) +``` + +
+ +
+ .delta(color2 = "#FFF") (lab plugin) + +Calculates the perceived color difference between two colors. +The difference calculated according to [Delta E2000](https://en.wikipedia.org/wiki/Color_difference#CIEDE2000). +The return value is `0` if the colors are equal, `1` if they are entirely different. + +```js +colord("#3296fa").delta("#197dc8"); // 0.099 +colord("#faf0c8").delta("#ffffff"); // 0.148 +colord("#afafaf").delta("#b4b4b4"); // 0.014 +colord("#000000").delta("#ffffff"); // 1 +``` + +
+ +### Color utilities + +
+ random() + +Returns a new Colord instance with a random color value inside. + +```js +import { random } from "colord"; + +random().toHex(); // "#01c8ec" +random().alpha(0.5).toRgb(); // { r: 13, g: 237, b: 162, a: 0.5 } +``` + +
+ +
+ .minify(options?) + +Converts a color to its shortest string representation. + +```js +import { colord, extend } from "colord"; +import minifyPlugin from "colord/plugins/minify"; + +extend([minifyPlugin]); + +colord("black").minify(); // "#000" +colord("#112233").minify(); // "#123" +colord("darkgray").minify(); // "#a9a9a9" +colord("rgba(170,170,170,0.4)").minify(); // "hsla(0,0%,67%,.4)" +colord("rgba(170,170,170,0.4)").minify({ alphaHex: true }); // "#aaa6" +``` + +| Option | Default | Description | +| ------------- | ------- | ------------------------------------------------------------ | +| `hex` | `true` | Enable `#rrggbb` and `#rgb` notations | +| `alphaHex` | `false` | Enable `#rrggbbaa` and `#rgba` notations | +| `rgb` | `true` | Enable `rgb()` and `rgba()` functional notations | +| `hsl` | `true` | Enable `hsl()` and `hsla()` functional notations | +| `name` | `false` | Enable CSS color keywords. Requires `names` plugin installed | +| `transparent` | `false` | Enable `"transparent"` color keyword | + +
+ +
---
+ +## Plugins + +**Colord** has a built-in plugin system that allows new features and functionality to be easily added. + +
+ a11y (Accessibility) 0.38 KB + +Adds accessibility and color contrast utilities working according to [Web Content Accessibility Guidelines 2.0](https://www.w3.org/TR/WCAG20/). + +```js +import { colord, extend } from "colord"; +import a11yPlugin from "colord/plugins/a11y"; + +extend([a11yPlugin]); + +colord("#000000").luminance(); // 0 +colord("#ccddee").luminance(); // 0.71 +colord("#ffffff").luminance(); // 1 + +colord("#000000").contrast(); // 21 (black on white) +colord("#ffffff").contrast("#000000"); // 21 (white on black) +colord("#0000ff").contrast("#ff000"); // 2.14 (blue on red) + +colord("#000000").isReadable(); // true (black on white) +colord("#ffffff").isReadable("#000000"); // true (white on black) +colord("#777777").isReadable(); // false (gray on white) +colord("#e60000").isReadable("#ffff47"); // true (normal red text on yellow bg conforms to WCAG AA) +colord("#e60000").isReadable("#ffff47", { level: "AAA" }); // false (normal red text on yellow bg does not conform to WCAG AAA) +colord("#e60000").isReadable("#ffff47", { level: "AAA", size: "large" }); // true (large red text on yellow bg conforms to WCAG AAA) +``` + +
+ +
+ cmyk (CMYK color space) 0.6 KB + +Adds support of [CMYK](https://www.sttmedia.com/colormodel-cmyk) color model. + +```js +import { colord, extend } from "colord"; +import cmykPlugin from "colord/plugins/cmyk"; + +extend([cmykPlugin]); + +colord("#ffffff").toCmyk(); // { c: 0, m: 0, y: 0, k: 0, a: 1 } +colord("#999966").toCmykString(); // "device-cmyk(0% 0% 33% 40%)" +colord({ c: 0, m: 0, y: 0, k: 100, a: 1 }).toHex(); // "#000000" +colord("device-cmyk(0% 61% 72% 0% / 50%)").toHex(); // "#ff634780" +``` + +
+ +
+ harmonies (Color harmonies) 0.15 KB + +Provides functionality to generate [harmony colors](). + +```js +import { colord, extend } from "colord"; +import harmonies from "colord/plugins/harmonies"; + +extend([harmonies]); + +const color = colord("#ff0000"); +color.harmonies("analogous").map((c) => c.toHex()); // ["#ff0080", "#ff0000", "#ff8000"] +color.harmonies("complementary").map((c) => c.toHex()); // ["#ff0000", "#00ffff"] +color.harmonies("double-split-complementary").map((c) => c.toHex()); // ["#ff0080", "#ff0000", "#ff8000", "#00ff80", "#0080ff"] +color.harmonies("rectangle").map((c) => c.toHex()); // ["#ff0000", "#ffff00", "#00ffff", "#0000ff"] +color.harmonies("split-complementary").map((c) => c.toHex()); // ["#ff0000", "#00ff80", "#0080ff"] +color.harmonies("tetradic").map((c) => c.toHex()); // ["#ff0000", "#80ff00", "#00ffff", "#8000ff"] +color.harmonies("triadic").map((c) => c.toHex()); // ["#ff0000", "#00ff00", "#0000ff"] +``` + +
+ +
+ hwb (HWB color model) 0.8 KB + +Adds support of [Hue-Whiteness-Blackness](https://en.wikipedia.org/wiki/HWB_color_model) color model. + +```js +import { colord, extend } from "colord"; +import hwbPlugin from "colord/plugins/hwb"; + +extend([hwbPlugin]); + +colord("#999966").toHwb(); // { h: 60, w: 40, b: 40, a: 1 } +colord("#003366").toHwbString(); // "hwb(210 0% 60%)" + +colord({ h: 60, w: 40, b: 40 }).toHex(); // "#999966" +colord("hwb(210 0% 60% / 50%)").toHex(); // "#00336680" +``` + +
+ +
+ lab (CIE LAB color space) 1.4 KB + +Adds support of [CIE LAB](https://en.wikipedia.org/wiki/CIELAB_color_space) color model. The conversion logic is ported from [CSS Color Module Level 4 Specification](https://www.w3.org/TR/css-color-4/#color-conversion-code). + +Also plugin provides `.delta` method for [perceived color difference calculations](https://en.wikipedia.org/wiki/Color_difference#CIEDE2000). + +```js +import { colord, extend } from "colord"; +import labPlugin from "colord/plugins/lab"; + +extend([labPlugin]); + +colord({ l: 53.24, a: 80.09, b: 67.2 }).toHex(); // "#ff0000" +colord("#ffffff").toLab(); // { l: 100, a: 0, b: 0, alpha: 1 } + +colord("#afafaf").delta("#b4b4b4"); // 0.014 +colord("#000000").delta("#ffffff"); // 1 +``` + +
+ +
+ lch (CIE LCH color space) 1.3 KB + +Adds support of [CIE LCH](https://lea.verou.me/2020/04/lch-colors-in-css-what-why-and-how/) color space. The conversion logic is ported from [CSS Color Module Level 4 Specification](https://www.w3.org/TR/css-color-4/#color-conversion-code). + +```js +import { colord, extend } from "colord"; +import lchPlugin from "colord/plugins/lch"; + +extend([lchPlugin]); + +colord({ l: 100, c: 0, h: 0 }).toHex(); // "#ffffff" +colord("lch(48.25% 30.07 196.38)").toHex(); // "#008080" + +colord("#646464").toLch(); // { l: 42.37, c: 0, h: 0, a: 1 } +colord("#646464").alpha(0.5).toLchString(); // "lch(42.37% 0 0 / 0.5)" +``` + +
+ +
+ minify (Color string minification) 0.5 KB + +A plugin adding color string minification utilities. + +```js +import { colord, extend } from "colord"; +import minifyPlugin from "colord/plugins/minify"; + +extend([minifyPlugin]); + +colord("black").minify(); // "#000" +colord("#112233").minify(); // "#123" +colord("darkgray").minify(); // "#a9a9a9" +colord("rgba(170,170,170,0.4)").minify(); // "hsla(0,0%,67%,.4)" +colord("rgba(170,170,170,0.4)").minify({ alphaHex: true }); // "#aaa6" +``` + +
+ +
+ mix (Color mixing) 0.96 KB + +A plugin adding color mixing utilities. + +In contrast to other libraries that perform RGB values mixing, Colord mixes colors through [LAB color space](https://en.wikipedia.org/wiki/CIELAB_color_space). This approach produces better results and doesn't have the drawbacks the legacy way has. + +→ [Online demo](https://3cg7o.csb.app/) + +```js +import { colord, extend } from "colord"; +import mixPlugin from "colord/plugins/mix"; + +extend([mixPlugin]); + +colord("#ffffff").mix("#000000").toHex(); // "#777777" +colord("#800080").mix("#dda0dd").toHex(); // "#af5cae" +colord("#cd853f").mix("#eee8aa", 0.6).toHex(); // "#e3c07e" +colord("#008080").mix("#808000", 0.35).toHex(); // "#50805d" +``` + +Also, the plugin provides special mixtures such as [tints, shades, and tones](https://en.wikipedia.org/wiki/Tints_and_shades): + +
+tints, shades, and tones mixtures +
+ +```js +const color = colord("#ff0000"); +color.tints(3).map((c) => c.toHex()); // ["#ff0000", "#ff9f80", "#ffffff"]; +color.shades(3).map((c) => c.toHex()); // ["#ff0000", "#7a1b0b", "#000000"]; +color.tones(3).map((c) => c.toHex()); // ["#ff0000", "#c86147", "#808080"]; +``` + +
+ +
+ names (CSS color keywords) 1.45 KB + +Provides options to convert a color into a [CSS color keyword](https://developer.mozilla.org/en-US/docs/Web/CSS/color_value#color_keywords) and vice versa. + +```js +import { colord, extend } from "colord"; +import namesPlugin from "colord/plugins/names"; + +extend([namesPlugin]); + +colord("tomato").toHex(); // "#ff6347" +colord("#00ffff").toName(); // "cyan" +colord("rgba(0, 0, 0, 0)").toName(); // "transparent" +colord("#fe0000").toName(); // undefined (the color is not specified in CSS specs) +colord("#fe0000").toName({ closest: true }); // "red" (closest color) +``` + +
+ +
+ xyz (CIE XYZ color space) 0.7 KB + +Adds support of [CIE XYZ](https://www.sttmedia.com/colormodel-xyz) color model. The conversion logic is ported from [CSS Color Module Level 4 Specification](https://www.w3.org/TR/css-color-4/#color-conversion-code). + +```js +import { colord, extend } from "colord"; +import xyzPlugin from "colord/plugins/xyz"; + +extend([xyzPlugin]); + +colord("#ffffff").toXyz(); // { x: 95.047, y: 100, z: 108.883, a: 1 } +colord({ x: 0, y: 0, z: 0 }).toHex(); // "#000000" +``` + +
+ +
---
+ +## Types + +**Colord** is written in strict TypeScript and ships with types in the library itself — no need for any other install. We provide everything you need in one tiny package. + +While not only typing its own functions and variables, **Colord** can also help you type yours. Depending on the color space you are using, you can also import and use the type that is associated with it. + +```ts +import { RgbColor, RgbaColor, HslColor, HslaColor, HsvColor, HsvaColor } from "colord"; + +const foo: HslColor = { h: 0, s: 0, l: 0 }; +const bar: RgbColor = { r: 0, g: 0, v: 0 }; // ERROR +``` + +
---
+ +## Projects using Colord + +- [cssnano](https://github.com/cssnano/cssnano) — the most popular CSS minification tool +- [Resume.io](https://resume.io/) — online resume builder with over 12,000,000 users worldwide +- [Leva](https://github.com/pmndrs/leva) — open source extensible GUI panel made for React +- [Qui Max](https://github.com/Qvant-lab/qui-max) — Vue.js design system and component library +- and [thousands more](https://github.com/omgovich/colord/network/dependents)... + +
---
+ +## Roadmap + +- [x] Parse and convert Hex, RGB(A), HSL(A), HSV(A) +- [x] Saturate, desaturate, grayscale +- [x] Trim an input value +- [x] Clamp input numbers to resolve edge cases (e.g. `rgb(256, -1, 999, 2)`) +- [x] `brightness`, `isDark`, `isLight` +- [x] Set and get `alpha` +- [x] Plugin API +- [x] 4 and 8 digit Hex +- [x] `lighten`, `darken` +- [x] `invert` +- [x] CSS color names (via plugin) +- [x] A11y and contrast utils (via plugin) +- [x] XYZ color space (via plugin) +- [x] [HWB](https://drafts.csswg.org/css-color/#the-hwb-notation) color space (via plugin) +- [x] [LAB](https://www.w3.org/TR/css-color-4/#resolving-lab-lch-values) color space (via plugin) +- [x] [LCH](https://lea.verou.me/2020/04/lch-colors-in-css-what-why-and-how/) color space (via plugin) +- [x] Mix colors (via plugin) +- [x] CMYK color space (via plugin) diff --git a/node_modules/colord/colord.d.ts b/node_modules/colord/colord.d.ts new file mode 100644 index 00000000..3013b1ff --- /dev/null +++ b/node_modules/colord/colord.d.ts @@ -0,0 +1,103 @@ +import { AnyColor, RgbaColor, HslaColor, HsvaColor } from "./types"; +export declare class Colord { + private readonly parsed; + readonly rgba: RgbaColor; + constructor(input: AnyColor); + /** + * Returns a boolean indicating whether or not an input has been parsed successfully. + * Note: If parsing is unsuccessful, Colord defaults to black (does not throws an error). + */ + isValid(): boolean; + /** + * Returns the brightness of a color (from 0 to 1). + * The calculation logic is modified from WCAG. + * https://www.w3.org/TR/AERT/#color-contrast + */ + brightness(): number; + /** + * Same as calling `brightness() < 0.5`. + */ + isDark(): boolean; + /** + * Same as calling `brightness() >= 0.5`. + * */ + isLight(): boolean; + /** + * Returns the hexadecimal representation of a color. + * When the alpha channel value of the color is less than 1, + * it outputs #rrggbbaa format instead of #rrggbb. + */ + toHex(): string; + /** + * Converts a color to RGB color space and returns an object. + * Always includes an alpha value from 0 to 1. + */ + toRgb(): RgbaColor; + /** + * Converts a color to RGB color space and returns a string representation. + * Outputs an alpha value only if it is less than 1. + */ + toRgbString(): string; + /** + * Converts a color to HSL color space and returns an object. + * Always includes an alpha value from 0 to 1. + */ + toHsl(): HslaColor; + /** + * Converts a color to HSL color space and returns a string representation. + * Always includes an alpha value from 0 to 1. + */ + toHslString(): string; + /** + * Converts a color to HSV color space and returns an object. + * Always includes an alpha value from 0 to 1. + */ + toHsv(): HsvaColor; + /** + * Creates a new instance containing an inverted (opposite) version of the color. + */ + invert(): Colord; + /** + * Increases the HSL saturation of a color by the given amount. + */ + saturate(amount?: number): Colord; + /** + * Decreases the HSL saturation of a color by the given amount. + */ + desaturate(amount?: number): Colord; + /** + * Makes a gray color with the same lightness as a source color. + */ + grayscale(): Colord; + /** + * Increases the HSL lightness of a color by the given amount. + */ + lighten(amount?: number): Colord; + /** + * Increases the HSL lightness of a color by the given amount. + */ + darken(amount?: number): Colord; + /** + * Changes the HSL hue of a color by the given amount. + */ + rotate(amount?: number): Colord; + /** + * Allows to get or change an alpha channel value. + */ + alpha(): number; + alpha(value: number): Colord; + /** + * Allows to get or change a hue value. + */ + hue(): number; + hue(value: number): Colord; + /** + * Determines whether two values are the same color. + */ + isEqual(color: AnyColor | Colord): boolean; +} +/** + * Parses the given input color and creates a new `Colord` instance. + * See accepted input formats: https://github.com/omgovich/colord#color-parsing + */ +export declare const colord: (input: AnyColor | Colord) => Colord; diff --git a/node_modules/colord/constants.d.ts b/node_modules/colord/constants.d.ts new file mode 100644 index 00000000..554b3a69 --- /dev/null +++ b/node_modules/colord/constants.d.ts @@ -0,0 +1,10 @@ +/** + * We used to work with 2 digits after the decimal point, but it wasn't accurate enough, + * so the library produced colors that were perceived differently. + */ +export declare const ALPHA_PRECISION = 3; +/** + * Valid CSS units. + * https://developer.mozilla.org/en-US/docs/Web/CSS/angle + */ +export declare const ANGLE_UNITS: Record; diff --git a/node_modules/colord/extend.d.ts b/node_modules/colord/extend.d.ts new file mode 100644 index 00000000..015b89f3 --- /dev/null +++ b/node_modules/colord/extend.d.ts @@ -0,0 +1,4 @@ +import { Colord } from "./colord"; +import { Parsers } from "./types"; +export declare type Plugin = (ColordClass: typeof Colord, parsers: Parsers) => void; +export declare const extend: (plugins: Plugin[]) => void; diff --git a/node_modules/colord/helpers.d.ts b/node_modules/colord/helpers.d.ts new file mode 100644 index 00000000..64eb369b --- /dev/null +++ b/node_modules/colord/helpers.d.ts @@ -0,0 +1,20 @@ +export declare const isPresent: (value: unknown) => boolean; +export declare const round: (number: number, digits?: number, base?: number) => number; +export declare const floor: (number: number, digits?: number, base?: number) => number; +/** + * Clamps a value between an upper and lower bound. + * We use ternary operators because it makes the minified code + * is 2 times shorter then `Math.min(Math.max(a,b),c)` + * NaN is clamped to the lower bound + */ +export declare const clamp: (number: number, min?: number, max?: number) => number; +/** + * Processes and clamps a degree (angle) value properly. + * Any `NaN` or `Infinity` will be converted to `0`. + * Examples: -1 => 359, 361 => 1 + */ +export declare const clampHue: (degrees: number) => number; +/** + * Converts a hue value to degrees from 0 to 360 inclusive. + */ +export declare const parseHue: (value: string, unit?: string) => number; diff --git a/node_modules/colord/index.d.ts b/node_modules/colord/index.d.ts new file mode 100644 index 00000000..e298876c --- /dev/null +++ b/node_modules/colord/index.d.ts @@ -0,0 +1,5 @@ +export { colord, Colord } from "./colord"; +export { extend, Plugin } from "./extend"; +export { getFormat } from "./parse"; +export { random } from "./random"; +export { HslColor, HslaColor, HsvColor, HsvaColor, HwbColor, HwbaColor, LabColor, LabaColor, LchColor, LchaColor, RgbColor, RgbaColor, XyzColor, XyzaColor, AnyColor, } from "./types"; diff --git a/node_modules/colord/index.js b/node_modules/colord/index.js new file mode 100644 index 00000000..f7a26ef8 --- /dev/null +++ b/node_modules/colord/index.js @@ -0,0 +1 @@ +Object.defineProperty(exports,"__esModule",{value:!0});var r={grad:.9,turn:360,rad:360/(2*Math.PI)},t=function(r){return"string"==typeof r?r.length>0:"number"==typeof r},n=function(r,t,n){return void 0===t&&(t=0),void 0===n&&(n=Math.pow(10,t)),Math.round(n*r)/n+0},e=function(r,t,n){return void 0===t&&(t=0),void 0===n&&(n=1),r>n?n:r>t?r:t},u=function(r){return(r=isFinite(r)?r%360:0)>0?r:r+360},o=function(r){return{r:e(r.r,0,255),g:e(r.g,0,255),b:e(r.b,0,255),a:e(r.a)}},a=function(r){return{r:n(r.r),g:n(r.g),b:n(r.b),a:n(r.a,3)}},s=/^#([0-9a-f]{3,8})$/i,i=function(r){var t=r.toString(16);return t.length<2?"0"+t:t},h=function(r){var t=r.r,n=r.g,e=r.b,u=r.a,o=Math.max(t,n,e),a=o-Math.min(t,n,e),s=a?o===t?(n-e)/a:o===n?2+(e-t)/a:4+(t-n)/a:0;return{h:60*(s<0?s+6:s),s:o?a/o*100:0,v:o/255*100,a:u}},b=function(r){var t=r.h,n=r.s,e=r.v,u=r.a;t=t/360*6,n/=100,e/=100;var o=Math.floor(t),a=e*(1-n),s=e*(1-(t-o)*n),i=e*(1-(1-t+o)*n),h=o%6;return{r:255*[e,s,a,a,i,e][h],g:255*[i,e,e,s,a,a][h],b:255*[a,a,i,e,e,s][h],a:u}},d=function(r){return{h:u(r.h),s:e(r.s,0,100),l:e(r.l,0,100),a:e(r.a)}},g=function(r){return{h:n(r.h),s:n(r.s),l:n(r.l),a:n(r.a,3)}},f=function(r){return b((n=(t=r).s,{h:t.h,s:(n*=((e=t.l)<50?e:100-e)/100)>0?2*n/(e+n)*100:0,v:e+n,a:t.a}));var t,n,e},p=function(r){return{h:(t=h(r)).h,s:(u=(200-(n=t.s))*(e=t.v)/100)>0&&u<200?n*e/100/(u<=100?u:200-u)*100:0,l:u/2,a:t.a};var t,n,e,u},l=/^hsla?\(\s*([+-]?\d*\.?\d+)(deg|rad|grad|turn)?\s*,\s*([+-]?\d*\.?\d+)%\s*,\s*([+-]?\d*\.?\d+)%\s*(?:,\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,c=/^hsla?\(\s*([+-]?\d*\.?\d+)(deg|rad|grad|turn)?\s+([+-]?\d*\.?\d+)%\s+([+-]?\d*\.?\d+)%\s*(?:\/\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,v=/^rgba?\(\s*([+-]?\d*\.?\d+)(%)?\s*,\s*([+-]?\d*\.?\d+)(%)?\s*,\s*([+-]?\d*\.?\d+)(%)?\s*(?:,\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,m=/^rgba?\(\s*([+-]?\d*\.?\d+)(%)?\s+([+-]?\d*\.?\d+)(%)?\s+([+-]?\d*\.?\d+)(%)?\s*(?:\/\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,y={string:[[function(r){var t=s.exec(r);return t?(r=t[1]).length<=4?{r:parseInt(r[0]+r[0],16),g:parseInt(r[1]+r[1],16),b:parseInt(r[2]+r[2],16),a:4===r.length?n(parseInt(r[3]+r[3],16)/255,2):1}:6===r.length||8===r.length?{r:parseInt(r.substr(0,2),16),g:parseInt(r.substr(2,2),16),b:parseInt(r.substr(4,2),16),a:8===r.length?n(parseInt(r.substr(6,2),16)/255,2):1}:null:null},"hex"],[function(r){var t=v.exec(r)||m.exec(r);return t?t[2]!==t[4]||t[4]!==t[6]?null:o({r:Number(t[1])/(t[2]?100/255:1),g:Number(t[3])/(t[4]?100/255:1),b:Number(t[5])/(t[6]?100/255:1),a:void 0===t[7]?1:Number(t[7])/(t[8]?100:1)}):null},"rgb"],[function(t){var n=l.exec(t)||c.exec(t);if(!n)return null;var e,u,o=d({h:(e=n[1],u=n[2],void 0===u&&(u="deg"),Number(e)*(r[u]||1)),s:Number(n[3]),l:Number(n[4]),a:void 0===n[5]?1:Number(n[5])/(n[6]?100:1)});return f(o)},"hsl"]],object:[[function(r){var n=r.r,e=r.g,u=r.b,a=r.a,s=void 0===a?1:a;return t(n)&&t(e)&&t(u)?o({r:Number(n),g:Number(e),b:Number(u),a:Number(s)}):null},"rgb"],[function(r){var n=r.h,e=r.s,u=r.l,o=r.a,a=void 0===o?1:o;if(!t(n)||!t(e)||!t(u))return null;var s=d({h:Number(n),s:Number(e),l:Number(u),a:Number(a)});return f(s)},"hsl"],[function(r){var n=r.h,o=r.s,a=r.v,s=r.a,i=void 0===s?1:s;if(!t(n)||!t(o)||!t(a))return null;var h=function(r){return{h:u(r.h),s:e(r.s,0,100),v:e(r.v,0,100),a:e(r.a)}}({h:Number(n),s:Number(o),v:Number(a),a:Number(i)});return b(h)},"hsv"]]},N=function(r,t){for(var n=0;n=.5},r.prototype.toHex=function(){return r=a(this.rgba),t=r.r,e=r.g,u=r.b,s=(o=r.a)<1?i(n(255*o)):"","#"+i(t)+i(e)+i(u)+s;var r,t,e,u,o,s},r.prototype.toRgb=function(){return a(this.rgba)},r.prototype.toRgbString=function(){return r=a(this.rgba),t=r.r,n=r.g,e=r.b,(u=r.a)<1?"rgba("+t+", "+n+", "+e+", "+u+")":"rgb("+t+", "+n+", "+e+")";var r,t,n,e,u},r.prototype.toHsl=function(){return g(p(this.rgba))},r.prototype.toHslString=function(){return r=g(p(this.rgba)),t=r.h,n=r.s,e=r.l,(u=r.a)<1?"hsla("+t+", "+n+"%, "+e+"%, "+u+")":"hsl("+t+", "+n+"%, "+e+"%)";var r,t,n,e,u},r.prototype.toHsv=function(){return r=h(this.rgba),{h:n(r.h),s:n(r.s),v:n(r.v),a:n(r.a,3)};var r},r.prototype.invert=function(){return j({r:255-(r=this.rgba).r,g:255-r.g,b:255-r.b,a:r.a});var r},r.prototype.saturate=function(r){return void 0===r&&(r=.1),j(M(this.rgba,r))},r.prototype.desaturate=function(r){return void 0===r&&(r=.1),j(M(this.rgba,-r))},r.prototype.grayscale=function(){return j(M(this.rgba,-1))},r.prototype.lighten=function(r){return void 0===r&&(r=.1),j(H(this.rgba,r))},r.prototype.darken=function(r){return void 0===r&&(r=.1),j(H(this.rgba,-r))},r.prototype.rotate=function(r){return void 0===r&&(r=15),this.hue(this.hue()+r)},r.prototype.alpha=function(r){return"number"==typeof r?j({r:(t=this.rgba).r,g:t.g,b:t.b,a:r}):n(this.rgba.a,3);var t},r.prototype.hue=function(r){var t=p(this.rgba);return"number"==typeof r?j({h:r,s:t.s,l:t.l,a:t.a}):n(t.h)},r.prototype.isEqual=function(r){return this.toHex()===j(r).toHex()},r}(),j=function(r){return r instanceof $?r:new $(r)},w=[];exports.Colord=$,exports.colord=j,exports.extend=function(r){r.forEach(function(r){w.indexOf(r)<0&&(r($,y),w.push(r))})},exports.getFormat=function(r){return x(r)[1]},exports.random=function(){return new $({r:255*Math.random(),g:255*Math.random(),b:255*Math.random()})}; diff --git a/node_modules/colord/index.mjs b/node_modules/colord/index.mjs new file mode 100644 index 00000000..73b6deef --- /dev/null +++ b/node_modules/colord/index.mjs @@ -0,0 +1 @@ +var r={grad:.9,turn:360,rad:360/(2*Math.PI)},t=function(r){return"string"==typeof r?r.length>0:"number"==typeof r},n=function(r,t,n){return void 0===t&&(t=0),void 0===n&&(n=Math.pow(10,t)),Math.round(n*r)/n+0},e=function(r,t,n){return void 0===t&&(t=0),void 0===n&&(n=1),r>n?n:r>t?r:t},u=function(r){return(r=isFinite(r)?r%360:0)>0?r:r+360},a=function(r){return{r:e(r.r,0,255),g:e(r.g,0,255),b:e(r.b,0,255),a:e(r.a)}},o=function(r){return{r:n(r.r),g:n(r.g),b:n(r.b),a:n(r.a,3)}},i=/^#([0-9a-f]{3,8})$/i,s=function(r){var t=r.toString(16);return t.length<2?"0"+t:t},h=function(r){var t=r.r,n=r.g,e=r.b,u=r.a,a=Math.max(t,n,e),o=a-Math.min(t,n,e),i=o?a===t?(n-e)/o:a===n?2+(e-t)/o:4+(t-n)/o:0;return{h:60*(i<0?i+6:i),s:a?o/a*100:0,v:a/255*100,a:u}},b=function(r){var t=r.h,n=r.s,e=r.v,u=r.a;t=t/360*6,n/=100,e/=100;var a=Math.floor(t),o=e*(1-n),i=e*(1-(t-a)*n),s=e*(1-(1-t+a)*n),h=a%6;return{r:255*[e,i,o,o,s,e][h],g:255*[s,e,e,i,o,o][h],b:255*[o,o,s,e,e,i][h],a:u}},g=function(r){return{h:u(r.h),s:e(r.s,0,100),l:e(r.l,0,100),a:e(r.a)}},d=function(r){return{h:n(r.h),s:n(r.s),l:n(r.l),a:n(r.a,3)}},f=function(r){return b((n=(t=r).s,{h:t.h,s:(n*=((e=t.l)<50?e:100-e)/100)>0?2*n/(e+n)*100:0,v:e+n,a:t.a}));var t,n,e},c=function(r){return{h:(t=h(r)).h,s:(u=(200-(n=t.s))*(e=t.v)/100)>0&&u<200?n*e/100/(u<=100?u:200-u)*100:0,l:u/2,a:t.a};var t,n,e,u},l=/^hsla?\(\s*([+-]?\d*\.?\d+)(deg|rad|grad|turn)?\s*,\s*([+-]?\d*\.?\d+)%\s*,\s*([+-]?\d*\.?\d+)%\s*(?:,\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,p=/^hsla?\(\s*([+-]?\d*\.?\d+)(deg|rad|grad|turn)?\s+([+-]?\d*\.?\d+)%\s+([+-]?\d*\.?\d+)%\s*(?:\/\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,v=/^rgba?\(\s*([+-]?\d*\.?\d+)(%)?\s*,\s*([+-]?\d*\.?\d+)(%)?\s*,\s*([+-]?\d*\.?\d+)(%)?\s*(?:,\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,m=/^rgba?\(\s*([+-]?\d*\.?\d+)(%)?\s+([+-]?\d*\.?\d+)(%)?\s+([+-]?\d*\.?\d+)(%)?\s*(?:\/\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,y={string:[[function(r){var t=i.exec(r);return t?(r=t[1]).length<=4?{r:parseInt(r[0]+r[0],16),g:parseInt(r[1]+r[1],16),b:parseInt(r[2]+r[2],16),a:4===r.length?n(parseInt(r[3]+r[3],16)/255,2):1}:6===r.length||8===r.length?{r:parseInt(r.substr(0,2),16),g:parseInt(r.substr(2,2),16),b:parseInt(r.substr(4,2),16),a:8===r.length?n(parseInt(r.substr(6,2),16)/255,2):1}:null:null},"hex"],[function(r){var t=v.exec(r)||m.exec(r);return t?t[2]!==t[4]||t[4]!==t[6]?null:a({r:Number(t[1])/(t[2]?100/255:1),g:Number(t[3])/(t[4]?100/255:1),b:Number(t[5])/(t[6]?100/255:1),a:void 0===t[7]?1:Number(t[7])/(t[8]?100:1)}):null},"rgb"],[function(t){var n=l.exec(t)||p.exec(t);if(!n)return null;var e,u,a=g({h:(e=n[1],u=n[2],void 0===u&&(u="deg"),Number(e)*(r[u]||1)),s:Number(n[3]),l:Number(n[4]),a:void 0===n[5]?1:Number(n[5])/(n[6]?100:1)});return f(a)},"hsl"]],object:[[function(r){var n=r.r,e=r.g,u=r.b,o=r.a,i=void 0===o?1:o;return t(n)&&t(e)&&t(u)?a({r:Number(n),g:Number(e),b:Number(u),a:Number(i)}):null},"rgb"],[function(r){var n=r.h,e=r.s,u=r.l,a=r.a,o=void 0===a?1:a;if(!t(n)||!t(e)||!t(u))return null;var i=g({h:Number(n),s:Number(e),l:Number(u),a:Number(o)});return f(i)},"hsl"],[function(r){var n=r.h,a=r.s,o=r.v,i=r.a,s=void 0===i?1:i;if(!t(n)||!t(a)||!t(o))return null;var h=function(r){return{h:u(r.h),s:e(r.s,0,100),v:e(r.v,0,100),a:e(r.a)}}({h:Number(n),s:Number(a),v:Number(o),a:Number(s)});return b(h)},"hsv"]]},N=function(r,t){for(var n=0;n=.5},r.prototype.toHex=function(){return r=o(this.rgba),t=r.r,e=r.g,u=r.b,i=(a=r.a)<1?s(n(255*a)):"","#"+s(t)+s(e)+s(u)+i;var r,t,e,u,a,i},r.prototype.toRgb=function(){return o(this.rgba)},r.prototype.toRgbString=function(){return r=o(this.rgba),t=r.r,n=r.g,e=r.b,(u=r.a)<1?"rgba("+t+", "+n+", "+e+", "+u+")":"rgb("+t+", "+n+", "+e+")";var r,t,n,e,u},r.prototype.toHsl=function(){return d(c(this.rgba))},r.prototype.toHslString=function(){return r=d(c(this.rgba)),t=r.h,n=r.s,e=r.l,(u=r.a)<1?"hsla("+t+", "+n+"%, "+e+"%, "+u+")":"hsl("+t+", "+n+"%, "+e+"%)";var r,t,n,e,u},r.prototype.toHsv=function(){return r=h(this.rgba),{h:n(r.h),s:n(r.s),v:n(r.v),a:n(r.a,3)};var r},r.prototype.invert=function(){return w({r:255-(r=this.rgba).r,g:255-r.g,b:255-r.b,a:r.a});var r},r.prototype.saturate=function(r){return void 0===r&&(r=.1),w(M(this.rgba,r))},r.prototype.desaturate=function(r){return void 0===r&&(r=.1),w(M(this.rgba,-r))},r.prototype.grayscale=function(){return w(M(this.rgba,-1))},r.prototype.lighten=function(r){return void 0===r&&(r=.1),w($(this.rgba,r))},r.prototype.darken=function(r){return void 0===r&&(r=.1),w($(this.rgba,-r))},r.prototype.rotate=function(r){return void 0===r&&(r=15),this.hue(this.hue()+r)},r.prototype.alpha=function(r){return"number"==typeof r?w({r:(t=this.rgba).r,g:t.g,b:t.b,a:r}):n(this.rgba.a,3);var t},r.prototype.hue=function(r){var t=c(this.rgba);return"number"==typeof r?w({h:r,s:t.s,l:t.l,a:t.a}):n(t.h)},r.prototype.isEqual=function(r){return this.toHex()===w(r).toHex()},r}(),w=function(r){return r instanceof j?r:new j(r)},S=[],k=function(r){r.forEach(function(r){S.indexOf(r)<0&&(r(j,y),S.push(r))})},E=function(){return new j({r:255*Math.random(),g:255*Math.random(),b:255*Math.random()})};export{j as Colord,w as colord,k as extend,I as getFormat,E as random}; diff --git a/node_modules/colord/package.json b/node_modules/colord/package.json new file mode 100644 index 00000000..7e2d9992 --- /dev/null +++ b/node_modules/colord/package.json @@ -0,0 +1,210 @@ +{ + "name": "colord", + "version": "2.9.3", + "description": "👑 A tiny yet powerful tool for high-performance color manipulations and conversions", + "keywords": [ + "color", + "parser", + "convert", + "tiny", + "hex", + "rgb", + "hsl", + "hsv", + "hwb", + "lab", + "lch", + "xyz", + "css", + "color-names", + "a11y", + "cmyk", + "mix", + "minify", + "harmonies" + ], + "repository": "omgovich/colord", + "author": "Vlad Shilov ", + "license": "MIT", + "sideEffects": false, + "main": "./index.js", + "module": "./index.mjs", + "exports": { + ".": { + "types": "./index.d.ts", + "import": "./index.mjs", + "require": "./index.js", + "default": "./index.mjs" + }, + "./plugins/a11y": { + "types": "./plugins/a11y.d.ts", + "import": "./plugins/a11y.mjs", + "require": "./plugins/a11y.js", + "default": "./plugins/a11y.mjs" + }, + "./plugins/cmyk": { + "types": "./plugins/cmyk.d.ts", + "import": "./plugins/cmyk.mjs", + "require": "./plugins/cmyk.js", + "default": "./plugins/cmyk.mjs" + }, + "./plugins/harmonies": { + "types": "./plugins/harmonies.d.ts", + "import": "./plugins/harmonies.mjs", + "require": "./plugins/harmonies.js", + "default": "./plugins/harmonies.mjs" + }, + "./plugins/hwb": { + "types": "./plugins/hwb.d.ts", + "import": "./plugins/hwb.mjs", + "require": "./plugins/hwb.js", + "default": "./plugins/hwb.mjs" + }, + "./plugins/lab": { + "types": "./plugins/lab.d.ts", + "import": "./plugins/lab.mjs", + "require": "./plugins/lab.js", + "default": "./plugins/lab.mjs" + }, + "./plugins/lch": { + "types": "./plugins/lch.d.ts", + "import": "./plugins/lch.mjs", + "require": "./plugins/lch.js", + "default": "./plugins/lch.mjs" + }, + "./plugins/minify": { + "types": "./plugins/minify.d.ts", + "import": "./plugins/minify.mjs", + "require": "./plugins/minify.js", + "default": "./plugins/minify.mjs" + }, + "./plugins/mix": { + "types": "./plugins/mix.d.ts", + "import": "./plugins/mix.mjs", + "require": "./plugins/mix.js", + "default": "./plugins/mix.mjs" + }, + "./plugins/names": { + "types": "./plugins/names.d.ts", + "import": "./plugins/names.mjs", + "require": "./plugins/names.js", + "default": "./plugins/names.mjs" + }, + "./plugins/xyz": { + "types": "./plugins/xyz.d.ts", + "import": "./plugins/xyz.mjs", + "require": "./plugins/xyz.js", + "default": "./plugins/xyz.mjs" + }, + "./package.json": "./package.json" + }, + "files": [ + "*.{js,mjs,ts,map}", + "plugins/*.{js,mjs,ts,map}" + ], + "types": "index.d.ts", + "scripts": { + "lint": "eslint src/**/*.ts", + "size": "npm run build && size-limit", + "check-types": "tsc --noEmit true", + "test": "jest tests --coverage", + "benchmark": "tsc --outDir bench --skipLibCheck --esModuleInterop ./tests/benchmark.ts && node ./bench/tests/benchmark.js && rm -rf ./bench", + "build": "rm -rf ./dist/* && rollup --config", + "release": "npm run build && cp *.json dist && cp *.md dist && npm publish dist", + "check-release": "npm run release -- --dry-run" + }, + "dependencies": {}, + "devDependencies": { + "@size-limit/preset-small-lib": "^4.10.1", + "@types/jest": "^26.0.22", + "@typescript-eslint/eslint-plugin": "^4.19.0", + "@typescript-eslint/parser": "^4.19.0", + "ac-colors": "^1.4.2", + "benny": "^3.6.15", + "chroma-js": "^2.1.1", + "color": "^3.1.3", + "eslint": "^7.14.0", + "eslint-config-prettier": "^6.15.0", + "eslint-plugin-prettier": "^3.1.4", + "glob": "^7.1.6", + "jest": "^26.6.3", + "prettier": "^2.2.0", + "rollup": "^2.43.1", + "rollup-plugin-terser": "^7.0.2", + "rollup-plugin-typescript2": "^0.30.0", + "size-limit": "^4.10.1", + "tinycolor2": "^1.4.2", + "ts-jest": "^26.5.4", + "ts-node": "^9.1.1", + "tslib": "^2.1.0", + "typescript": "^4.2.3" + }, + "jest": { + "verbose": true, + "transform": { + "^.+\\.ts$": "ts-jest" + } + }, + "eslintConfig": { + "plugins": [ + "prettier" + ], + "extends": [ + "eslint:recommended", + "plugin:@typescript-eslint/eslint-recommended", + "plugin:@typescript-eslint/recommended", + "plugin:prettier/recommended", + "prettier/@typescript-eslint" + ] + }, + "prettier": { + "printWidth": 100 + }, + "size-limit": [ + { + "path": "dist/index.mjs", + "import": "{ colord }", + "limit": "2 KB" + }, + { + "path": "dist/plugins/a11y.mjs", + "limit": "0.5 KB" + }, + { + "path": "dist/plugins/cmyk.mjs", + "limit": "1 KB" + }, + { + "path": "dist/plugins/harmonies.mjs", + "limit": "0.5 KB" + }, + { + "path": "dist/plugins/hwb.mjs", + "limit": "1 KB" + }, + { + "path": "dist/plugins/lab.mjs", + "limit": "1.5 KB" + }, + { + "path": "dist/plugins/lch.mjs", + "limit": "1.5 KB" + }, + { + "path": "dist/plugins/minify.mjs", + "limit": "0.6 KB" + }, + { + "path": "dist/plugins/mix.mjs", + "limit": "1 KB" + }, + { + "path": "dist/plugins/names.mjs", + "limit": "1.5 KB" + }, + { + "path": "dist/plugins/xyz.mjs", + "limit": "1 KB" + } + ] +} diff --git a/node_modules/colord/parse.d.ts b/node_modules/colord/parse.d.ts new file mode 100644 index 00000000..0901dfeb --- /dev/null +++ b/node_modules/colord/parse.d.ts @@ -0,0 +1,8 @@ +import { Parsers, ParseResult, Input, Format } from "./types"; +export declare const parsers: Parsers; +/** Tries to convert an incoming value into RGBA color by going through all color model parsers */ +export declare const parse: (input: Input) => ParseResult | [null, undefined]; +/** + * Returns a color model name for the input passed to the function. + */ +export declare const getFormat: (input: Input) => Format | undefined; diff --git a/node_modules/colord/plugins/a11y.d.ts b/node_modules/colord/plugins/a11y.d.ts new file mode 100644 index 00000000..69a10cb1 --- /dev/null +++ b/node_modules/colord/plugins/a11y.d.ts @@ -0,0 +1,38 @@ +import { AnyColor } from "../types"; +import { Plugin } from "../extend"; +interface ReadabilityOptions { + level?: "AA" | "AAA"; + size?: "normal" | "large"; +} +declare module "../colord" { + interface Colord { + /** + * Returns the relative luminance of a color, + * normalized to 0 for darkest black and 1 for lightest white. + * https://www.w3.org/TR/WCAG20/#relativeluminancedef + * https://developer.mozilla.org/en-US/docs/Web/Accessibility/Understanding_Colors_and_Luminance + */ + luminance(): number; + /** + * Calculates a contrast ratio for a color pair. + * This luminance difference is expressed as a ratio ranging + * from 1 (e.g. white on white) to 21 (e.g., black on a white). + * WCAG requires a ratio of at least 4.5 for normal text and 3 for large text. + * https://www.w3.org/TR/UNDERSTANDING-WCAG20/visual-audio-contrast-contrast.html + * https://webaim.org/articles/contrast/ + */ + contrast(color2?: AnyColor | Colord): number; + /** + * Checks that a background and text color pair conforms to WCAG 2.0 requirements. + * https://www.w3.org/TR/UNDERSTANDING-WCAG20/visual-audio-contrast-contrast.html + */ + isReadable(color2?: AnyColor | Colord, options?: ReadabilityOptions): boolean; + } +} +/** + * A plugin adding accessibility and color contrast utilities. + * Follows Web Content Accessibility Guidelines 2.0. + * https://www.w3.org/TR/WCAG20/ + */ +declare const a11yPlugin: Plugin; +export default a11yPlugin; diff --git a/node_modules/colord/plugins/a11y.js b/node_modules/colord/plugins/a11y.js new file mode 100644 index 00000000..d59f207f --- /dev/null +++ b/node_modules/colord/plugins/a11y.js @@ -0,0 +1 @@ +var o=function(o){var t=o/255;return t<.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)},t=function(t){return.2126*o(t.r)+.7152*o(t.g)+.0722*o(t.b)};module.exports=function(o){o.prototype.luminance=function(){return o=t(this.rgba),void 0===(r=2)&&(r=0),void 0===n&&(n=Math.pow(10,r)),Math.round(n*o)/n+0;var o,r,n},o.prototype.contrast=function(r){void 0===r&&(r="#FFF");var n,i,a,e,v,u,d,c=r instanceof o?r:new o(r);return e=this.rgba,v=c.toRgb(),u=t(e),d=t(v),n=u>d?(u+.05)/(d+.05):(d+.05)/(u+.05),void 0===(i=2)&&(i=0),void 0===a&&(a=Math.pow(10,i)),Math.floor(a*n)/a+0},o.prototype.isReadable=function(o,t){return void 0===o&&(o="#FFF"),void 0===t&&(t={}),this.contrast(o)>=(e=void 0===(a=(r=t).size)?"normal":a,"AAA"===(i=void 0===(n=r.level)?"AA":n)&&"normal"===e?7:"AA"===i&&"large"===e?3:4.5);var r,n,i,a,e}}; diff --git a/node_modules/colord/plugins/a11y.mjs b/node_modules/colord/plugins/a11y.mjs new file mode 100644 index 00000000..eef95c5e --- /dev/null +++ b/node_modules/colord/plugins/a11y.mjs @@ -0,0 +1 @@ +var o=function(o){var t=o/255;return t<.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)},t=function(t){return.2126*o(t.r)+.7152*o(t.g)+.0722*o(t.b)};export default function(o){o.prototype.luminance=function(){return o=t(this.rgba),void 0===(r=2)&&(r=0),void 0===n&&(n=Math.pow(10,r)),Math.round(n*o)/n+0;var o,r,n},o.prototype.contrast=function(r){void 0===r&&(r="#FFF");var n,a,i,e,v,u,d,c=r instanceof o?r:new o(r);return e=this.rgba,v=c.toRgb(),u=t(e),d=t(v),n=u>d?(u+.05)/(d+.05):(d+.05)/(u+.05),void 0===(a=2)&&(a=0),void 0===i&&(i=Math.pow(10,a)),Math.floor(i*n)/i+0},o.prototype.isReadable=function(o,t){return void 0===o&&(o="#FFF"),void 0===t&&(t={}),this.contrast(o)>=(e=void 0===(i=(r=t).size)?"normal":i,"AAA"===(a=void 0===(n=r.level)?"AA":n)&&"normal"===e?7:"AA"===a&&"large"===e?3:4.5);var r,n,a,i,e}} diff --git a/node_modules/colord/plugins/cmyk.d.ts b/node_modules/colord/plugins/cmyk.d.ts new file mode 100644 index 00000000..36c302a9 --- /dev/null +++ b/node_modules/colord/plugins/cmyk.d.ts @@ -0,0 +1,24 @@ +import { CmykaColor } from "../types"; +import { Plugin } from "../extend"; +declare module "../colord" { + interface Colord { + /** + * Converts a color to CMYK color space and returns an object. + * https://drafts.csswg.org/css-color/#cmyk-colors + * https://lea.verou.me/2009/03/cmyk-colors-in-css-useful-or-useless/ + */ + toCmyk(): CmykaColor; + /** + * Converts a color to CMYK color space and returns a string. + * https://developer.mozilla.org/en-US/docs/Web/CSS/color_value/device-cmyk() + */ + toCmykString(): string; + } +} +/** + * A plugin adding support for CMYK color space. + * https://lea.verou.me/2009/03/cmyk-colors-in-css-useful-or-useless/ + * https://en.wikipedia.org/wiki/CMYK_color_model + */ +declare const cmykPlugin: Plugin; +export default cmykPlugin; diff --git a/node_modules/colord/plugins/cmyk.js b/node_modules/colord/plugins/cmyk.js new file mode 100644 index 00000000..eb89c7b8 --- /dev/null +++ b/node_modules/colord/plugins/cmyk.js @@ -0,0 +1 @@ +var r=function(r){return"string"==typeof r?r.length>0:"number"==typeof r},n=function(r,n,t){return void 0===n&&(n=0),void 0===t&&(t=Math.pow(10,n)),Math.round(t*r)/t+0},t=function(r,n,t){return void 0===n&&(n=0),void 0===t&&(t=1),r>t?t:r>n?r:n},u=function(r){return{c:t(r.c,0,100),m:t(r.m,0,100),y:t(r.y,0,100),k:t(r.k,0,100),a:t(r.a)}},e=function(r){return{c:n(r.c,2),m:n(r.m,2),y:n(r.y,2),k:n(r.k,2),a:n(r.a,3)}};function c(r){return{r:n(255*(1-r.c/100)*(1-r.k/100)),g:n(255*(1-r.m/100)*(1-r.k/100)),b:n(255*(1-r.y/100)*(1-r.k/100)),a:r.a}}function o(r){var t=1-Math.max(r.r/255,r.g/255,r.b/255),u=(1-r.r/255-t)/(1-t),e=(1-r.g/255-t)/(1-t),c=(1-r.b/255-t)/(1-t);return{c:isNaN(u)?0:n(100*u),m:isNaN(e)?0:n(100*e),y:isNaN(c)?0:n(100*c),k:n(100*t),a:r.a}}function i(n){var t=n.c,e=n.m,o=n.y,i=n.k,m=n.a,a=void 0===m?1:m;return r(t)&&r(e)&&r(o)&&r(i)?c(u({c:Number(t),m:Number(e),y:Number(o),k:Number(i),a:Number(a)})):null}var m=/^device-cmyk\(\s*([+-]?\d*\.?\d+)(%)?\s+([+-]?\d*\.?\d+)(%)?\s+([+-]?\d*\.?\d+)(%)?\s+([+-]?\d*\.?\d+)(%)?\s*(?:\/\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,a=function(r){var n=m.exec(r);return n?c(u({c:Number(n[1])*(n[2]?1:100),m:Number(n[3])*(n[4]?1:100),y:Number(n[5])*(n[6]?1:100),k:Number(n[7])*(n[8]?1:100),a:void 0===n[9]?1:Number(n[9])/(n[10]?100:1)})):null};module.exports=function(r,n){r.prototype.toCmyk=function(){return e(o(this.rgba))},r.prototype.toCmykString=function(){return r=e(o(this.rgba)),n=r.c,t=r.m,u=r.y,c=r.k,(i=r.a)<1?"device-cmyk("+n+"% "+t+"% "+u+"% "+c+"% / "+i+")":"device-cmyk("+n+"% "+t+"% "+u+"% "+c+"%)";var r,n,t,u,c,i},n.object.push([i,"cmyk"]),n.string.push([a,"cmyk"])}; diff --git a/node_modules/colord/plugins/cmyk.mjs b/node_modules/colord/plugins/cmyk.mjs new file mode 100644 index 00000000..febf50e2 --- /dev/null +++ b/node_modules/colord/plugins/cmyk.mjs @@ -0,0 +1 @@ +var r=function(r){return"string"==typeof r?r.length>0:"number"==typeof r},n=function(r,n,t){return void 0===n&&(n=0),void 0===t&&(t=Math.pow(10,n)),Math.round(t*r)/t+0},t=function(r,n,t){return void 0===n&&(n=0),void 0===t&&(t=1),r>t?t:r>n?r:n},u=function(r){return{c:t(r.c,0,100),m:t(r.m,0,100),y:t(r.y,0,100),k:t(r.k,0,100),a:t(r.a)}},e=function(r){return{c:n(r.c,2),m:n(r.m,2),y:n(r.y,2),k:n(r.k,2),a:n(r.a,3)}};function c(r){return{r:n(255*(1-r.c/100)*(1-r.k/100)),g:n(255*(1-r.m/100)*(1-r.k/100)),b:n(255*(1-r.y/100)*(1-r.k/100)),a:r.a}}function i(r){var t=1-Math.max(r.r/255,r.g/255,r.b/255),u=(1-r.r/255-t)/(1-t),e=(1-r.g/255-t)/(1-t),c=(1-r.b/255-t)/(1-t);return{c:isNaN(u)?0:n(100*u),m:isNaN(e)?0:n(100*e),y:isNaN(c)?0:n(100*c),k:n(100*t),a:r.a}}function o(n){var t=n.c,e=n.m,i=n.y,o=n.k,m=n.a,a=void 0===m?1:m;return r(t)&&r(e)&&r(i)&&r(o)?c(u({c:Number(t),m:Number(e),y:Number(i),k:Number(o),a:Number(a)})):null}var m=/^device-cmyk\(\s*([+-]?\d*\.?\d+)(%)?\s+([+-]?\d*\.?\d+)(%)?\s+([+-]?\d*\.?\d+)(%)?\s+([+-]?\d*\.?\d+)(%)?\s*(?:\/\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,a=function(r){var n=m.exec(r);return n?c(u({c:Number(n[1])*(n[2]?1:100),m:Number(n[3])*(n[4]?1:100),y:Number(n[5])*(n[6]?1:100),k:Number(n[7])*(n[8]?1:100),a:void 0===n[9]?1:Number(n[9])/(n[10]?100:1)})):null};export default function(r,n){r.prototype.toCmyk=function(){return e(i(this.rgba))},r.prototype.toCmykString=function(){return r=e(i(this.rgba)),n=r.c,t=r.m,u=r.y,c=r.k,(o=r.a)<1?"device-cmyk("+n+"% "+t+"% "+u+"% "+c+"% / "+o+")":"device-cmyk("+n+"% "+t+"% "+u+"% "+c+"%)";var r,n,t,u,c,o},n.object.push([o,"cmyk"]),n.string.push([a,"cmyk"])} diff --git a/node_modules/colord/plugins/harmonies.d.ts b/node_modules/colord/plugins/harmonies.d.ts new file mode 100644 index 00000000..718992b0 --- /dev/null +++ b/node_modules/colord/plugins/harmonies.d.ts @@ -0,0 +1,16 @@ +import { Plugin } from "../extend"; +export declare type HarmonyType = "analogous" | "complementary" | "double-split-complementary" | "rectangle" | "split-complementary" | "tetradic" | "triadic"; +declare module "../colord" { + interface Colord { + /** + * Returns an array of harmony colors as `Colord` instances. + */ + harmonies(type?: HarmonyType): Colord[]; + } +} +/** + * A plugin adding functionality to generate harmony colors. + * https://en.wikipedia.org/wiki/Harmony_(color) + */ +declare const harmoniesPlugin: Plugin; +export default harmoniesPlugin; diff --git a/node_modules/colord/plugins/harmonies.js b/node_modules/colord/plugins/harmonies.js new file mode 100644 index 00000000..4087b16d --- /dev/null +++ b/node_modules/colord/plugins/harmonies.js @@ -0,0 +1 @@ +module.exports=function(t){var e={analogous:[-30,0,30],complementary:[0,180],"double-split-complementary":[-30,0,30,150,210],rectangle:[0,60,180,240],tetradic:[0,90,180,270],triadic:[0,120,240],"split-complementary":[0,150,210]};t.prototype.harmonies=function(t){var o=this;return void 0===t&&(t="complementary"),e[t].map(function(t){return o.rotate(t)})}}; diff --git a/node_modules/colord/plugins/harmonies.mjs b/node_modules/colord/plugins/harmonies.mjs new file mode 100644 index 00000000..c9fe6121 --- /dev/null +++ b/node_modules/colord/plugins/harmonies.mjs @@ -0,0 +1 @@ +export default function(t){var e={analogous:[-30,0,30],complementary:[0,180],"double-split-complementary":[-30,0,30,150,210],rectangle:[0,60,180,240],tetradic:[0,90,180,270],triadic:[0,120,240],"split-complementary":[0,150,210]};t.prototype.harmonies=function(t){var r=this;return void 0===t&&(t="complementary"),e[t].map(function(t){return r.rotate(t)})}} diff --git a/node_modules/colord/plugins/hwb.d.ts b/node_modules/colord/plugins/hwb.d.ts new file mode 100644 index 00000000..709fde3d --- /dev/null +++ b/node_modules/colord/plugins/hwb.d.ts @@ -0,0 +1,23 @@ +import { HwbaColor } from "../types"; +import { Plugin } from "../extend"; +declare module "../colord" { + interface Colord { + /** + * Converts a color to HWB (Hue-Whiteness-Blackness) color space and returns an object. + * https://en.wikipedia.org/wiki/HWB_color_model + */ + toHwb(): HwbaColor; + /** + * Converts a color to HWB (Hue-Whiteness-Blackness) color space and returns a string. + * https://www.w3.org/TR/css-color-4/#the-hwb-notation + */ + toHwbString(): string; + } +} +/** + * A plugin adding support for HWB (Hue-Whiteness-Blackness) color model. + * https://en.wikipedia.org/wiki/HWB_color_model + * https://www.w3.org/TR/css-color-4/#the-hwb-notation + */ +declare const hwbPlugin: Plugin; +export default hwbPlugin; diff --git a/node_modules/colord/plugins/hwb.js b/node_modules/colord/plugins/hwb.js new file mode 100644 index 00000000..90d65293 --- /dev/null +++ b/node_modules/colord/plugins/hwb.js @@ -0,0 +1 @@ +var r={grad:.9,turn:360,rad:360/(2*Math.PI)},n=function(r){return"string"==typeof r?r.length>0:"number"==typeof r},t=function(r,n,t){return void 0===n&&(n=0),void 0===t&&(t=Math.pow(10,n)),Math.round(t*r)/t+0},u=function(r,n,t){return void 0===n&&(n=0),void 0===t&&(t=1),r>t?t:r>n?r:n},a=function(r){return{h:(n=r.h,(n=isFinite(n)?n%360:0)>0?n:n+360),w:u(r.w,0,100),b:u(r.b,0,100),a:u(r.a)};var n},e=function(r){return{h:t(r.h),w:t(r.w),b:t(r.b),a:t(r.a,3)}},o=function(r){return{h:function(r){var n=r.r,t=r.g,u=r.b,a=r.a,e=Math.max(n,t,u),o=e-Math.min(n,t,u),b=o?e===n?(t-u)/o:e===t?2+(u-n)/o:4+(n-t)/o:0;return{h:60*(b<0?b+6:b),s:e?o/e*100:0,v:e/255*100,a:a}}(r).h,w:Math.min(r.r,r.g,r.b)/255*100,b:100-Math.max(r.r,r.g,r.b)/255*100,a:r.a}},b=function(r){return function(r){var n=r.h,t=r.s,u=r.v,a=r.a;n=n/360*6,t/=100,u/=100;var e=Math.floor(n),o=u*(1-t),b=u*(1-(n-e)*t),i=u*(1-(1-n+e)*t),h=e%6;return{r:255*[u,b,o,o,i,u][h],g:255*[i,u,u,b,o,o][h],b:255*[o,o,i,u,u,b][h],a:a}}({h:r.h,s:100===r.b?0:100-r.w/(100-r.b)*100,v:100-r.b,a:r.a})},i=function(r){var t=r.h,u=r.w,e=r.b,o=r.a,i=void 0===o?1:o;if(!n(t)||!n(u)||!n(e))return null;var h=a({h:Number(t),w:Number(u),b:Number(e),a:Number(i)});return b(h)},h=/^hwb\(\s*([+-]?\d*\.?\d+)(deg|rad|grad|turn)?\s+([+-]?\d*\.?\d+)%\s+([+-]?\d*\.?\d+)%\s*(?:\/\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,d=function(n){var t=h.exec(n);if(!t)return null;var u,e,o=a({h:(u=t[1],e=t[2],void 0===e&&(e="deg"),Number(u)*(r[e]||1)),w:Number(t[3]),b:Number(t[4]),a:void 0===t[5]?1:Number(t[5])/(t[6]?100:1)});return b(o)};module.exports=function(r,n){r.prototype.toHwb=function(){return e(o(this.rgba))},r.prototype.toHwbString=function(){return r=e(o(this.rgba)),n=r.h,t=r.w,u=r.b,(a=r.a)<1?"hwb("+n+" "+t+"% "+u+"% / "+a+")":"hwb("+n+" "+t+"% "+u+"%)";var r,n,t,u,a},n.string.push([d,"hwb"]),n.object.push([i,"hwb"])}; diff --git a/node_modules/colord/plugins/hwb.mjs b/node_modules/colord/plugins/hwb.mjs new file mode 100644 index 00000000..292bd9f0 --- /dev/null +++ b/node_modules/colord/plugins/hwb.mjs @@ -0,0 +1 @@ +var r={grad:.9,turn:360,rad:360/(2*Math.PI)},t=function(r){return"string"==typeof r?r.length>0:"number"==typeof r},n=function(r,t,n){return void 0===t&&(t=0),void 0===n&&(n=Math.pow(10,t)),Math.round(n*r)/n+0},u=function(r,t,n){return void 0===t&&(t=0),void 0===n&&(n=1),r>n?n:r>t?r:t},a=function(r){return{h:(t=r.h,(t=isFinite(t)?t%360:0)>0?t:t+360),w:u(r.w,0,100),b:u(r.b,0,100),a:u(r.a)};var t},e=function(r){return{h:n(r.h),w:n(r.w),b:n(r.b),a:n(r.a,3)}},b=function(r){return{h:function(r){var t=r.r,n=r.g,u=r.b,a=r.a,e=Math.max(t,n,u),b=e-Math.min(t,n,u),o=b?e===t?(n-u)/b:e===n?2+(u-t)/b:4+(t-n)/b:0;return{h:60*(o<0?o+6:o),s:e?b/e*100:0,v:e/255*100,a:a}}(r).h,w:Math.min(r.r,r.g,r.b)/255*100,b:100-Math.max(r.r,r.g,r.b)/255*100,a:r.a}},o=function(r){return function(r){var t=r.h,n=r.s,u=r.v,a=r.a;t=t/360*6,n/=100,u/=100;var e=Math.floor(t),b=u*(1-n),o=u*(1-(t-e)*n),i=u*(1-(1-t+e)*n),h=e%6;return{r:255*[u,o,b,b,i,u][h],g:255*[i,u,u,o,b,b][h],b:255*[b,b,i,u,u,o][h],a:a}}({h:r.h,s:100===r.b?0:100-r.w/(100-r.b)*100,v:100-r.b,a:r.a})},i=function(r){var n=r.h,u=r.w,e=r.b,b=r.a,i=void 0===b?1:b;if(!t(n)||!t(u)||!t(e))return null;var h=a({h:Number(n),w:Number(u),b:Number(e),a:Number(i)});return o(h)},h=/^hwb\(\s*([+-]?\d*\.?\d+)(deg|rad|grad|turn)?\s+([+-]?\d*\.?\d+)%\s+([+-]?\d*\.?\d+)%\s*(?:\/\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,d=function(t){var n=h.exec(t);if(!n)return null;var u,e,b=a({h:(u=n[1],e=n[2],void 0===e&&(e="deg"),Number(u)*(r[e]||1)),w:Number(n[3]),b:Number(n[4]),a:void 0===n[5]?1:Number(n[5])/(n[6]?100:1)});return o(b)};export default function(r,t){r.prototype.toHwb=function(){return e(b(this.rgba))},r.prototype.toHwbString=function(){return r=e(b(this.rgba)),t=r.h,n=r.w,u=r.b,(a=r.a)<1?"hwb("+t+" "+n+"% "+u+"% / "+a+")":"hwb("+t+" "+n+"% "+u+"%)";var r,t,n,u,a},t.string.push([d,"hwb"]),t.object.push([i,"hwb"])} diff --git a/node_modules/colord/plugins/lab.d.ts b/node_modules/colord/plugins/lab.d.ts new file mode 100644 index 00000000..5b86ce88 --- /dev/null +++ b/node_modules/colord/plugins/lab.d.ts @@ -0,0 +1,23 @@ +import { LabaColor, AnyColor } from "../types"; +import { Plugin } from "../extend"; +declare module "../colord" { + interface Colord { + /** + * Converts a color to CIELAB color space and returns an object. + * The object always includes `alpha` value [0, 1]. + */ + toLab(): LabaColor; + /** + * Calculates the perceived color difference for two colors according to + * [Delta E2000](https://en.wikipedia.org/wiki/Color_difference#CIEDE2000). + * Returns a value in [0, 1] range. + */ + delta(color?: AnyColor | Colord): number; + } +} +/** + * A plugin adding support for CIELAB color space. + * https://en.wikipedia.org/wiki/CIELAB_color_space + */ +declare const labPlugin: Plugin; +export default labPlugin; diff --git a/node_modules/colord/plugins/lab.js b/node_modules/colord/plugins/lab.js new file mode 100644 index 00000000..267e6e0b --- /dev/null +++ b/node_modules/colord/plugins/lab.js @@ -0,0 +1 @@ +var a=function(a){return"string"==typeof a?a.length>0:"number"==typeof a},t=function(a,t,o){return void 0===t&&(t=0),void 0===o&&(o=Math.pow(10,t)),Math.round(o*a)/o+0},o=function(a,t,o){return void 0===t&&(t=0),void 0===o&&(o=1),a>o?o:a>t?a:t},r=function(a){var t=a/255;return t<.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)},h=function(a){return 255*(a>.0031308?1.055*Math.pow(a,1/2.4)-.055:12.92*a)},n=96.422,p=100,M=82.521,u=function(a){var t,r,n={x:.9555766*(t=a).x+-.0230393*t.y+.0631636*t.z,y:-.0282895*t.x+1.0099416*t.y+.0210077*t.z,z:.0122982*t.x+-.020483*t.y+1.3299098*t.z};return r={r:h(.032404542*n.x-.015371385*n.y-.004985314*n.z),g:h(-.00969266*n.x+.018760108*n.y+41556e-8*n.z),b:h(556434e-9*n.x-.002040259*n.y+.010572252*n.z),a:a.a},{r:o(r.r,0,255),g:o(r.g,0,255),b:o(r.b,0,255),a:o(r.a)}},e=function(a){var t=r(a.r),h=r(a.g),u=r(a.b);return function(a){return{x:o(a.x,0,n),y:o(a.y,0,p),z:o(a.z,0,M),a:o(a.a)}}(function(a){return{x:1.0478112*a.x+.0228866*a.y+-.050127*a.z,y:.0295424*a.x+.9904844*a.y+-.0170491*a.z,z:-.0092345*a.x+.0150436*a.y+.7521316*a.z,a:a.a}}({x:100*(.4124564*t+.3575761*h+.1804375*u),y:100*(.2126729*t+.7151522*h+.072175*u),z:100*(.0193339*t+.119192*h+.9503041*u),a:a.a}))},w=216/24389,b=24389/27,i=function(t){var r=t.l,h=t.a,n=t.b,p=t.alpha,M=void 0===p?1:p;if(!a(r)||!a(h)||!a(n))return null;var u=function(a){return{l:o(a.l,0,400),a:a.a,b:a.b,alpha:o(a.alpha)}}({l:Number(r),a:Number(h),b:Number(n),alpha:Number(M)});return l(u)},l=function(a){var t=(a.l+16)/116,o=a.a/500+t,r=t-a.b/200;return u({x:(Math.pow(o,3)>w?Math.pow(o,3):(116*o-16)/b)*n,y:(a.l>8?Math.pow((a.l+16)/116,3):a.l/b)*p,z:(Math.pow(r,3)>w?Math.pow(r,3):(116*r-16)/b)*M,a:a.alpha})};module.exports=function(a,r){a.prototype.toLab=function(){return o=e(this.rgba),h=o.y/p,u=o.z/M,r=(r=o.x/n)>w?Math.cbrt(r):(b*r+16)/116,a={l:116*(h=h>w?Math.cbrt(h):(b*h+16)/116)-16,a:500*(r-h),b:200*(h-(u=u>w?Math.cbrt(u):(b*u+16)/116)),alpha:o.a},{l:t(a.l,2),a:t(a.a,2),b:t(a.b,2),alpha:t(a.alpha,3)};var a,o,r,h,u},a.prototype.delta=function(r){void 0===r&&(r="#FFF");var h=r instanceof a?r:new a(r),n=function(a,t){var o=a.l,r=a.a,h=a.b,n=t.l,p=t.a,M=t.b,u=180/Math.PI,e=Math.PI/180,w=Math.pow(Math.pow(r,2)+Math.pow(h,2),.5),b=Math.pow(Math.pow(p,2)+Math.pow(M,2),.5),i=(o+n)/2,l=Math.pow((w+b)/2,7),c=.5*(1-Math.pow(l/(l+Math.pow(25,7)),.5)),f=r*(1+c),y=p*(1+c),v=Math.pow(Math.pow(f,2)+Math.pow(h,2),.5),x=Math.pow(Math.pow(y,2)+Math.pow(M,2),.5),z=(v+x)/2,s=0===f&&0===h?0:Math.atan2(h,f)*u,d=0===y&&0===M?0:Math.atan2(M,y)*u;s<0&&(s+=360),d<0&&(d+=360);var g=d-s,m=Math.abs(d-s);m>180&&d<=s?g+=360:m>180&&d>s&&(g-=360);var N=s+d;m<=180?N/=2:N=(s+d<360?N+360:N-360)/2;var F=1-.17*Math.cos(e*(N-30))+.24*Math.cos(2*e*N)+.32*Math.cos(e*(3*N+6))-.2*Math.cos(e*(4*N-63)),L=n-o,I=x-v,P=2*Math.sin(e*g/2)*Math.pow(v*x,.5),j=1+.015*Math.pow(i-50,2)/Math.pow(20+Math.pow(i-50,2),.5),k=1+.045*z,q=1+.015*z*F,A=30*Math.exp(-1*Math.pow((N-275)/25,2)),B=-2*Math.pow(l/(l+Math.pow(25,7)),.5)*Math.sin(2*e*A);return Math.pow(Math.pow(L/1/j,2)+Math.pow(I/1/k,2)+Math.pow(P/1/q,2)+B*I*P/(1*k*1*q),.5)}(this.toLab(),h.toLab())/100;return o(t(n,3))},r.object.push([i,"lab"])}; diff --git a/node_modules/colord/plugins/lab.mjs b/node_modules/colord/plugins/lab.mjs new file mode 100644 index 00000000..a852df36 --- /dev/null +++ b/node_modules/colord/plugins/lab.mjs @@ -0,0 +1 @@ +var a=function(a){return"string"==typeof a?a.length>0:"number"==typeof a},t=function(a,t,o){return void 0===t&&(t=0),void 0===o&&(o=Math.pow(10,t)),Math.round(o*a)/o+0},o=function(a,t,o){return void 0===t&&(t=0),void 0===o&&(o=1),a>o?o:a>t?a:t},r=function(a){var t=a/255;return t<.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)},h=function(a){return 255*(a>.0031308?1.055*Math.pow(a,1/2.4)-.055:12.92*a)},n=96.422,p=100,M=82.521,u=function(a){var t,r,n={x:.9555766*(t=a).x+-.0230393*t.y+.0631636*t.z,y:-.0282895*t.x+1.0099416*t.y+.0210077*t.z,z:.0122982*t.x+-.020483*t.y+1.3299098*t.z};return r={r:h(.032404542*n.x-.015371385*n.y-.004985314*n.z),g:h(-.00969266*n.x+.018760108*n.y+41556e-8*n.z),b:h(556434e-9*n.x-.002040259*n.y+.010572252*n.z),a:a.a},{r:o(r.r,0,255),g:o(r.g,0,255),b:o(r.b,0,255),a:o(r.a)}},e=function(a){var t=r(a.r),h=r(a.g),u=r(a.b);return function(a){return{x:o(a.x,0,n),y:o(a.y,0,p),z:o(a.z,0,M),a:o(a.a)}}(function(a){return{x:1.0478112*a.x+.0228866*a.y+-.050127*a.z,y:.0295424*a.x+.9904844*a.y+-.0170491*a.z,z:-.0092345*a.x+.0150436*a.y+.7521316*a.z,a:a.a}}({x:100*(.4124564*t+.3575761*h+.1804375*u),y:100*(.2126729*t+.7151522*h+.072175*u),z:100*(.0193339*t+.119192*h+.9503041*u),a:a.a}))},w=216/24389,b=24389/27,i=function(t){var r=t.l,h=t.a,n=t.b,p=t.alpha,M=void 0===p?1:p;if(!a(r)||!a(h)||!a(n))return null;var u=function(a){return{l:o(a.l,0,400),a:a.a,b:a.b,alpha:o(a.alpha)}}({l:Number(r),a:Number(h),b:Number(n),alpha:Number(M)});return l(u)},l=function(a){var t=(a.l+16)/116,o=a.a/500+t,r=t-a.b/200;return u({x:(Math.pow(o,3)>w?Math.pow(o,3):(116*o-16)/b)*n,y:(a.l>8?Math.pow((a.l+16)/116,3):a.l/b)*p,z:(Math.pow(r,3)>w?Math.pow(r,3):(116*r-16)/b)*M,a:a.alpha})};export default function(a,r){a.prototype.toLab=function(){return o=e(this.rgba),h=o.y/p,u=o.z/M,r=(r=o.x/n)>w?Math.cbrt(r):(b*r+16)/116,a={l:116*(h=h>w?Math.cbrt(h):(b*h+16)/116)-16,a:500*(r-h),b:200*(h-(u=u>w?Math.cbrt(u):(b*u+16)/116)),alpha:o.a},{l:t(a.l,2),a:t(a.a,2),b:t(a.b,2),alpha:t(a.alpha,3)};var a,o,r,h,u},a.prototype.delta=function(r){void 0===r&&(r="#FFF");var h=r instanceof a?r:new a(r),n=function(a,t){var o=a.l,r=a.a,h=a.b,n=t.l,p=t.a,M=t.b,u=180/Math.PI,e=Math.PI/180,w=Math.pow(Math.pow(r,2)+Math.pow(h,2),.5),b=Math.pow(Math.pow(p,2)+Math.pow(M,2),.5),i=(o+n)/2,l=Math.pow((w+b)/2,7),c=.5*(1-Math.pow(l/(l+Math.pow(25,7)),.5)),f=r*(1+c),y=p*(1+c),v=Math.pow(Math.pow(f,2)+Math.pow(h,2),.5),x=Math.pow(Math.pow(y,2)+Math.pow(M,2),.5),z=(v+x)/2,s=0===f&&0===h?0:Math.atan2(h,f)*u,d=0===y&&0===M?0:Math.atan2(M,y)*u;s<0&&(s+=360),d<0&&(d+=360);var g=d-s,m=Math.abs(d-s);m>180&&d<=s?g+=360:m>180&&d>s&&(g-=360);var N=s+d;m<=180?N/=2:N=(s+d<360?N+360:N-360)/2;var F=1-.17*Math.cos(e*(N-30))+.24*Math.cos(2*e*N)+.32*Math.cos(e*(3*N+6))-.2*Math.cos(e*(4*N-63)),L=n-o,I=x-v,P=2*Math.sin(e*g/2)*Math.pow(v*x,.5),j=1+.015*Math.pow(i-50,2)/Math.pow(20+Math.pow(i-50,2),.5),k=1+.045*z,q=1+.015*z*F,A=30*Math.exp(-1*Math.pow((N-275)/25,2)),B=-2*Math.pow(l/(l+Math.pow(25,7)),.5)*Math.sin(2*e*A);return Math.pow(Math.pow(L/1/j,2)+Math.pow(I/1/k,2)+Math.pow(P/1/q,2)+B*I*P/(1*k*1*q),.5)}(this.toLab(),h.toLab())/100;return o(t(n,3))},r.object.push([i,"lab"])} diff --git a/node_modules/colord/plugins/lch.d.ts b/node_modules/colord/plugins/lch.d.ts new file mode 100644 index 00000000..7ce0a4b2 --- /dev/null +++ b/node_modules/colord/plugins/lch.d.ts @@ -0,0 +1,24 @@ +import { LchaColor } from "../types"; +import { Plugin } from "../extend"; +declare module "../colord" { + interface Colord { + /** + * Converts a color to CIELCH (Lightness-Chroma-Hue) color space and returns an object. + * https://lea.verou.me/2020/04/lch-colors-in-css-what-why-and-how/ + * https://en.wikipedia.org/wiki/CIELAB_color_space#Cylindrical_model + */ + toLch(): LchaColor; + /** + * Converts a color to CIELCH (Lightness-Chroma-Hue) color space and returns a string. + * https://developer.mozilla.org/en-US/docs/Web/CSS/color_value/lch() + */ + toLchString(): string; + } +} +/** + * A plugin adding support for CIELCH color space. + * https://lea.verou.me/2020/04/lch-colors-in-css-what-why-and-how/ + * https://en.wikipedia.org/wiki/CIELAB_color_space#Cylindrical_model + */ +declare const lchPlugin: Plugin; +export default lchPlugin; diff --git a/node_modules/colord/plugins/lch.js b/node_modules/colord/plugins/lch.js new file mode 100644 index 00000000..955a5968 --- /dev/null +++ b/node_modules/colord/plugins/lch.js @@ -0,0 +1 @@ +var r={grad:.9,turn:360,rad:360/(2*Math.PI)},t=function(r){return"string"==typeof r?r.length>0:"number"==typeof r},a=function(r,t,a){return void 0===t&&(t=0),void 0===a&&(a=Math.pow(10,t)),Math.round(a*r)/a+0},n=function(r,t,a){return void 0===t&&(t=0),void 0===a&&(a=1),r>a?a:r>t?r:t},u=function(r){var t=r/255;return t<.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)},h=function(r){return 255*(r>.0031308?1.055*Math.pow(r,1/2.4)-.055:12.92*r)},o=96.422,e=100,c=82.521,i=function(r){var t,a,u={x:.9555766*(t=r).x+-.0230393*t.y+.0631636*t.z,y:-.0282895*t.x+1.0099416*t.y+.0210077*t.z,z:.0122982*t.x+-.020483*t.y+1.3299098*t.z};return a={r:h(.032404542*u.x-.015371385*u.y-.004985314*u.z),g:h(-.00969266*u.x+.018760108*u.y+41556e-8*u.z),b:h(556434e-9*u.x-.002040259*u.y+.010572252*u.z),a:r.a},{r:n(a.r,0,255),g:n(a.g,0,255),b:n(a.b,0,255),a:n(a.a)}},l=function(r){var t=u(r.r),a=u(r.g),h=u(r.b);return function(r){return{x:n(r.x,0,o),y:n(r.y,0,e),z:n(r.z,0,c),a:n(r.a)}}(function(r){return{x:1.0478112*r.x+.0228866*r.y+-.050127*r.z,y:.0295424*r.x+.9904844*r.y+-.0170491*r.z,z:-.0092345*r.x+.0150436*r.y+.7521316*r.z,a:r.a}}({x:100*(.4124564*t+.3575761*a+.1804375*h),y:100*(.2126729*t+.7151522*a+.072175*h),z:100*(.0193339*t+.119192*a+.9503041*h),a:r.a}))},b=216/24389,d=24389/27,f=function(r){return{l:n(r.l,0,100),c:r.c,h:(t=r.h,(t=isFinite(t)?t%360:0)>0?t:t+360),a:r.a};var t},p=function(r){return{l:a(r.l,2),c:a(r.c,2),h:a(r.h,2),a:a(r.a,3)}},v=function(r){var a=r.l,n=r.c,u=r.h,h=r.a,o=void 0===h?1:h;if(!t(a)||!t(n)||!t(u))return null;var e=f({l:Number(a),c:Number(n),h:Number(u),a:Number(o)});return M(e)},y=function(r){var t=function(r){var t=l(r),a=t.x/o,n=t.y/e,u=t.z/c;return a=a>b?Math.cbrt(a):(d*a+16)/116,{l:116*(n=n>b?Math.cbrt(n):(d*n+16)/116)-16,a:500*(a-n),b:200*(n-(u=u>b?Math.cbrt(u):(d*u+16)/116)),alpha:t.a}}(r),n=a(t.a,3),u=a(t.b,3),h=Math.atan2(u,n)/Math.PI*180;return{l:t.l,c:Math.sqrt(n*n+u*u),h:h<0?h+360:h,a:t.alpha}},M=function(r){return t={l:r.l,a:r.c*Math.cos(r.h*Math.PI/180),b:r.c*Math.sin(r.h*Math.PI/180),alpha:r.a},n=t.a/500+(a=(t.l+16)/116),u=a-t.b/200,i({x:(Math.pow(n,3)>b?Math.pow(n,3):(116*n-16)/d)*o,y:(t.l>8?Math.pow((t.l+16)/116,3):t.l/d)*e,z:(Math.pow(u,3)>b?Math.pow(u,3):(116*u-16)/d)*c,a:t.alpha});var t,a,n,u},x=/^lch\(\s*([+-]?\d*\.?\d+)%\s+([+-]?\d*\.?\d+)\s+([+-]?\d*\.?\d+)(deg|rad|grad|turn)?\s*(?:\/\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,s=function(t){var a=x.exec(t);if(!a)return null;var n,u,h=f({l:Number(a[1]),c:Number(a[2]),h:(n=a[3],u=a[4],void 0===u&&(u="deg"),Number(n)*(r[u]||1)),a:void 0===a[5]?1:Number(a[5])/(a[6]?100:1)});return M(h)};module.exports=function(r,t){r.prototype.toLch=function(){return p(y(this.rgba))},r.prototype.toLchString=function(){return r=p(y(this.rgba)),t=r.l,a=r.c,n=r.h,(u=r.a)<1?"lch("+t+"% "+a+" "+n+" / "+u+")":"lch("+t+"% "+a+" "+n+")";var r,t,a,n,u},t.string.push([s,"lch"]),t.object.push([v,"lch"])}; diff --git a/node_modules/colord/plugins/lch.mjs b/node_modules/colord/plugins/lch.mjs new file mode 100644 index 00000000..cd7624a2 --- /dev/null +++ b/node_modules/colord/plugins/lch.mjs @@ -0,0 +1 @@ +var r={grad:.9,turn:360,rad:360/(2*Math.PI)},t=function(r){return"string"==typeof r?r.length>0:"number"==typeof r},a=function(r,t,a){return void 0===t&&(t=0),void 0===a&&(a=Math.pow(10,t)),Math.round(a*r)/a+0},n=function(r,t,a){return void 0===t&&(t=0),void 0===a&&(a=1),r>a?a:r>t?r:t},u=function(r){var t=r/255;return t<.04045?t/12.92:Math.pow((t+.055)/1.055,2.4)},h=function(r){return 255*(r>.0031308?1.055*Math.pow(r,1/2.4)-.055:12.92*r)},o=96.422,e=100,c=82.521,i=function(r){var t,a,u={x:.9555766*(t=r).x+-.0230393*t.y+.0631636*t.z,y:-.0282895*t.x+1.0099416*t.y+.0210077*t.z,z:.0122982*t.x+-.020483*t.y+1.3299098*t.z};return a={r:h(.032404542*u.x-.015371385*u.y-.004985314*u.z),g:h(-.00969266*u.x+.018760108*u.y+41556e-8*u.z),b:h(556434e-9*u.x-.002040259*u.y+.010572252*u.z),a:r.a},{r:n(a.r,0,255),g:n(a.g,0,255),b:n(a.b,0,255),a:n(a.a)}},l=function(r){var t=u(r.r),a=u(r.g),h=u(r.b);return function(r){return{x:n(r.x,0,o),y:n(r.y,0,e),z:n(r.z,0,c),a:n(r.a)}}(function(r){return{x:1.0478112*r.x+.0228866*r.y+-.050127*r.z,y:.0295424*r.x+.9904844*r.y+-.0170491*r.z,z:-.0092345*r.x+.0150436*r.y+.7521316*r.z,a:r.a}}({x:100*(.4124564*t+.3575761*a+.1804375*h),y:100*(.2126729*t+.7151522*a+.072175*h),z:100*(.0193339*t+.119192*a+.9503041*h),a:r.a}))},f=216/24389,b=24389/27,d=function(r){return{l:n(r.l,0,100),c:r.c,h:(t=r.h,(t=isFinite(t)?t%360:0)>0?t:t+360),a:r.a};var t},p=function(r){return{l:a(r.l,2),c:a(r.c,2),h:a(r.h,2),a:a(r.a,3)}},v=function(r){var a=r.l,n=r.c,u=r.h,h=r.a,o=void 0===h?1:h;if(!t(a)||!t(n)||!t(u))return null;var e=d({l:Number(a),c:Number(n),h:Number(u),a:Number(o)});return M(e)},y=function(r){var t=function(r){var t=l(r),a=t.x/o,n=t.y/e,u=t.z/c;return a=a>f?Math.cbrt(a):(b*a+16)/116,{l:116*(n=n>f?Math.cbrt(n):(b*n+16)/116)-16,a:500*(a-n),b:200*(n-(u=u>f?Math.cbrt(u):(b*u+16)/116)),alpha:t.a}}(r),n=a(t.a,3),u=a(t.b,3),h=Math.atan2(u,n)/Math.PI*180;return{l:t.l,c:Math.sqrt(n*n+u*u),h:h<0?h+360:h,a:t.alpha}},M=function(r){return t={l:r.l,a:r.c*Math.cos(r.h*Math.PI/180),b:r.c*Math.sin(r.h*Math.PI/180),alpha:r.a},n=t.a/500+(a=(t.l+16)/116),u=a-t.b/200,i({x:(Math.pow(n,3)>f?Math.pow(n,3):(116*n-16)/b)*o,y:(t.l>8?Math.pow((t.l+16)/116,3):t.l/b)*e,z:(Math.pow(u,3)>f?Math.pow(u,3):(116*u-16)/b)*c,a:t.alpha});var t,a,n,u},x=/^lch\(\s*([+-]?\d*\.?\d+)%\s+([+-]?\d*\.?\d+)\s+([+-]?\d*\.?\d+)(deg|rad|grad|turn)?\s*(?:\/\s*([+-]?\d*\.?\d+)(%)?\s*)?\)$/i,s=function(t){var a=x.exec(t);if(!a)return null;var n,u,h=d({l:Number(a[1]),c:Number(a[2]),h:(n=a[3],u=a[4],void 0===u&&(u="deg"),Number(n)*(r[u]||1)),a:void 0===a[5]?1:Number(a[5])/(a[6]?100:1)});return M(h)};export default function(r,t){r.prototype.toLch=function(){return p(y(this.rgba))},r.prototype.toLchString=function(){return r=p(y(this.rgba)),t=r.l,a=r.c,n=r.h,(u=r.a)<1?"lch("+t+"% "+a+" "+n+" / "+u+")":"lch("+t+"% "+a+" "+n+")";var r,t,a,n,u},t.string.push([s,"lch"]),t.object.push([v,"lch"])} diff --git a/node_modules/colord/plugins/minify.d.ts b/node_modules/colord/plugins/minify.d.ts new file mode 100644 index 00000000..a072f41d --- /dev/null +++ b/node_modules/colord/plugins/minify.d.ts @@ -0,0 +1,20 @@ +import { Plugin } from "../extend"; +interface MinificationOptions { + hex?: boolean; + alphaHex?: boolean; + rgb?: boolean; + hsl?: boolean; + name?: boolean; + transparent?: boolean; +} +declare module "../colord" { + interface Colord { + /** Returns the shortest string representation of the color */ + minify(options?: MinificationOptions): string; + } +} +/** + * A plugin adding a color minification utilities. + */ +declare const minifyPlugin: Plugin; +export default minifyPlugin; diff --git a/node_modules/colord/plugins/minify.js b/node_modules/colord/plugins/minify.js new file mode 100644 index 00000000..30dfdec8 --- /dev/null +++ b/node_modules/colord/plugins/minify.js @@ -0,0 +1 @@ +module.exports=function(t){var r=function(t){var r,n,e,i=t.toHex(),a=t.alpha(),h=i.split(""),s=h[1],o=h[2],u=h[3],l=h[4],p=h[5],f=h[6],g=h[7],v=h[8];if(a>0&&a<1&&(r=parseInt(g+v,16)/255,void 0===(n=2)&&(n=0),void 0===e&&(e=Math.pow(10,n)),Math.round(e*r)/e+0!==a))return null;if(s===o&&u===l&&p===f){if(1===a)return"#"+s+u+p;if(g===v)return"#"+s+u+p+g}return i},n=function(t){return t>0&&t<1?t.toString().replace("0.","."):t};t.prototype.minify=function(t){void 0===t&&(t={});var e=this.toRgb(),i=n(e.r),a=n(e.g),h=n(e.b),s=this.toHsl(),o=n(s.h),u=n(s.s),l=n(s.l),p=n(this.alpha()),f=Object.assign({hex:!0,rgb:!0,hsl:!0},t),g=[];if(f.hex&&(1===p||f.alphaHex)){var v=r(this);v&&g.push(v)}if(f.rgb&&g.push(1===p?"rgb("+i+","+a+","+h+")":"rgba("+i+","+a+","+h+","+p+")"),f.hsl&&g.push(1===p?"hsl("+o+","+u+"%,"+l+"%)":"hsla("+o+","+u+"%,"+l+"%,"+p+")"),f.transparent&&0===i&&0===a&&0===h&&0===p)g.push("transparent");else if(1===p&&f.name&&"function"==typeof this.toName){var c=this.toName();c&&g.push(c)}return function(t){for(var r=t[0],n=1;n0&&i<1&&(r=parseInt(g+v,16)/255,void 0===(n=2)&&(n=0),void 0===e&&(e=Math.pow(10,n)),Math.round(e*r)/e+0!==i))return null;if(s===o&&u===l&&p===f){if(1===i)return"#"+s+u+p;if(g===v)return"#"+s+u+p+g}return a},n=function(t){return t>0&&t<1?t.toString().replace("0.","."):t};t.prototype.minify=function(t){void 0===t&&(t={});var e=this.toRgb(),a=n(e.r),i=n(e.g),h=n(e.b),s=this.toHsl(),o=n(s.h),u=n(s.s),l=n(s.l),p=n(this.alpha()),f=Object.assign({hex:!0,rgb:!0,hsl:!0},t),g=[];if(f.hex&&(1===p||f.alphaHex)){var v=r(this);v&&g.push(v)}if(f.rgb&&g.push(1===p?"rgb("+a+","+i+","+h+")":"rgba("+a+","+i+","+h+","+p+")"),f.hsl&&g.push(1===p?"hsl("+o+","+u+"%,"+l+"%)":"hsla("+o+","+u+"%,"+l+"%,"+p+")"),f.transparent&&0===a&&0===i&&0===h&&0===p)g.push("transparent");else if(1===p&&f.name&&"function"==typeof this.toName){var c=this.toName();c&&g.push(c)}return function(t){for(var r=t[0],n=1;nn?n:t>a?t:a},a=function(t){var a=t/255;return a<.04045?a/12.92:Math.pow((a+.055)/1.055,2.4)},n=function(t){return 255*(t>.0031308?1.055*Math.pow(t,1/2.4)-.055:12.92*t)},r=96.422,o=100,u=82.521,e=function(a){var r,o,u={x:.9555766*(r=a).x+-.0230393*r.y+.0631636*r.z,y:-.0282895*r.x+1.0099416*r.y+.0210077*r.z,z:.0122982*r.x+-.020483*r.y+1.3299098*r.z};return o={r:n(.032404542*u.x-.015371385*u.y-.004985314*u.z),g:n(-.00969266*u.x+.018760108*u.y+41556e-8*u.z),b:n(556434e-9*u.x-.002040259*u.y+.010572252*u.z),a:a.a},{r:t(o.r,0,255),g:t(o.g,0,255),b:t(o.b,0,255),a:t(o.a)}},i=function(n){var e=a(n.r),i=a(n.g),p=a(n.b);return function(a){return{x:t(a.x,0,r),y:t(a.y,0,o),z:t(a.z,0,u),a:t(a.a)}}(function(t){return{x:1.0478112*t.x+.0228866*t.y+-.050127*t.z,y:.0295424*t.x+.9904844*t.y+-.0170491*t.z,z:-.0092345*t.x+.0150436*t.y+.7521316*t.z,a:t.a}}({x:100*(.4124564*e+.3575761*i+.1804375*p),y:100*(.2126729*e+.7151522*i+.072175*p),z:100*(.0193339*e+.119192*i+.9503041*p),a:n.a}))},p=216/24389,h=24389/27,f=function(t){var a=i(t),n=a.x/r,e=a.y/o,f=a.z/u;return n=n>p?Math.cbrt(n):(h*n+16)/116,{l:116*(e=e>p?Math.cbrt(e):(h*e+16)/116)-16,a:500*(n-e),b:200*(e-(f=f>p?Math.cbrt(f):(h*f+16)/116)),alpha:a.a}},c=function(a,n,i){var c,y=f(a),x=f(n);return function(t){var a=(t.l+16)/116,n=t.a/500+a,i=a-t.b/200;return e({x:(Math.pow(n,3)>p?Math.pow(n,3):(116*n-16)/h)*r,y:(t.l>8?Math.pow((t.l+16)/116,3):t.l/h)*o,z:(Math.pow(i,3)>p?Math.pow(i,3):(116*i-16)/h)*u,a:t.alpha})}({l:t((c={l:y.l*(1-i)+x.l*i,a:y.a*(1-i)+x.a*i,b:y.b*(1-i)+x.b*i,alpha:y.alpha*(1-i)+x.alpha*i}).l,0,400),a:c.a,b:c.b,alpha:t(c.alpha)})};module.exports=function(t){function a(t,a,n){void 0===n&&(n=5);for(var r=[],o=1/(n-1),u=0;u<=n-1;u++)r.push(t.mix(a,o*u));return r}t.prototype.mix=function(a,n){void 0===n&&(n=.5);var r=a instanceof t?a:new t(a),o=c(this.toRgb(),r.toRgb(),n);return new t(o)},t.prototype.tints=function(t){return a(this,"#fff",t)},t.prototype.shades=function(t){return a(this,"#000",t)},t.prototype.tones=function(t){return a(this,"#808080",t)}}; diff --git a/node_modules/colord/plugins/mix.mjs b/node_modules/colord/plugins/mix.mjs new file mode 100644 index 00000000..d8841ccb --- /dev/null +++ b/node_modules/colord/plugins/mix.mjs @@ -0,0 +1 @@ +var t=function(t,a,n){return void 0===a&&(a=0),void 0===n&&(n=1),t>n?n:t>a?t:a},a=function(t){var a=t/255;return a<.04045?a/12.92:Math.pow((a+.055)/1.055,2.4)},n=function(t){return 255*(t>.0031308?1.055*Math.pow(t,1/2.4)-.055:12.92*t)},r=96.422,o=100,u=82.521,e=function(a){var r,o,u={x:.9555766*(r=a).x+-.0230393*r.y+.0631636*r.z,y:-.0282895*r.x+1.0099416*r.y+.0210077*r.z,z:.0122982*r.x+-.020483*r.y+1.3299098*r.z};return o={r:n(.032404542*u.x-.015371385*u.y-.004985314*u.z),g:n(-.00969266*u.x+.018760108*u.y+41556e-8*u.z),b:n(556434e-9*u.x-.002040259*u.y+.010572252*u.z),a:a.a},{r:t(o.r,0,255),g:t(o.g,0,255),b:t(o.b,0,255),a:t(o.a)}},i=function(n){var e=a(n.r),i=a(n.g),p=a(n.b);return function(a){return{x:t(a.x,0,r),y:t(a.y,0,o),z:t(a.z,0,u),a:t(a.a)}}(function(t){return{x:1.0478112*t.x+.0228866*t.y+-.050127*t.z,y:.0295424*t.x+.9904844*t.y+-.0170491*t.z,z:-.0092345*t.x+.0150436*t.y+.7521316*t.z,a:t.a}}({x:100*(.4124564*e+.3575761*i+.1804375*p),y:100*(.2126729*e+.7151522*i+.072175*p),z:100*(.0193339*e+.119192*i+.9503041*p),a:n.a}))},p=216/24389,h=24389/27,f=function(t){var a=i(t),n=a.x/r,e=a.y/o,f=a.z/u;return n=n>p?Math.cbrt(n):(h*n+16)/116,{l:116*(e=e>p?Math.cbrt(e):(h*e+16)/116)-16,a:500*(n-e),b:200*(e-(f=f>p?Math.cbrt(f):(h*f+16)/116)),alpha:a.a}},c=function(a,n,i){var c,y=f(a),x=f(n);return function(t){var a=(t.l+16)/116,n=t.a/500+a,i=a-t.b/200;return e({x:(Math.pow(n,3)>p?Math.pow(n,3):(116*n-16)/h)*r,y:(t.l>8?Math.pow((t.l+16)/116,3):t.l/h)*o,z:(Math.pow(i,3)>p?Math.pow(i,3):(116*i-16)/h)*u,a:t.alpha})}({l:t((c={l:y.l*(1-i)+x.l*i,a:y.a*(1-i)+x.a*i,b:y.b*(1-i)+x.b*i,alpha:y.alpha*(1-i)+x.alpha*i}).l,0,400),a:c.a,b:c.b,alpha:t(c.alpha)})};export default function(t){function a(t,a,n){void 0===n&&(n=5);for(var r=[],o=1/(n-1),u=0;u<=n-1;u++)r.push(t.mix(a,o*u));return r}t.prototype.mix=function(a,n){void 0===n&&(n=.5);var r=a instanceof t?a:new t(a),o=c(this.toRgb(),r.toRgb(),n);return new t(o)},t.prototype.tints=function(t){return a(this,"#fff",t)},t.prototype.shades=function(t){return a(this,"#000",t)},t.prototype.tones=function(t){return a(this,"#808080",t)}} diff --git a/node_modules/colord/plugins/names.d.ts b/node_modules/colord/plugins/names.d.ts new file mode 100644 index 00000000..57eb3dba --- /dev/null +++ b/node_modules/colord/plugins/names.d.ts @@ -0,0 +1,19 @@ +import { Plugin } from "../extend"; +interface ConvertOptions { + closest?: boolean; +} +declare module "../colord" { + interface Colord { + /** Finds CSS color keyword that matches with the color value */ + toName(options?: ConvertOptions): string | undefined; + } +} +/** + * Plugin to work with named colors. + * Adds a parser to read CSS color names and `toName` method. + * See https://www.w3.org/TR/css-color-4/#named-colors + * Supports 'transparent' string as defined in + * https://drafts.csswg.org/css-color/#transparent-color + */ +declare const namesPlugin: Plugin; +export default namesPlugin; diff --git a/node_modules/colord/plugins/names.js b/node_modules/colord/plugins/names.js new file mode 100644 index 00000000..673b122e --- /dev/null +++ b/node_modules/colord/plugins/names.js @@ -0,0 +1 @@ +module.exports=function(e,f){var a={white:"#ffffff",bisque:"#ffe4c4",blue:"#0000ff",cadetblue:"#5f9ea0",chartreuse:"#7fff00",chocolate:"#d2691e",coral:"#ff7f50",antiquewhite:"#faebd7",aqua:"#00ffff",azure:"#f0ffff",whitesmoke:"#f5f5f5",papayawhip:"#ffefd5",plum:"#dda0dd",blanchedalmond:"#ffebcd",black:"#000000",gold:"#ffd700",goldenrod:"#daa520",gainsboro:"#dcdcdc",cornsilk:"#fff8dc",cornflowerblue:"#6495ed",burlywood:"#deb887",aquamarine:"#7fffd4",beige:"#f5f5dc",crimson:"#dc143c",cyan:"#00ffff",darkblue:"#00008b",darkcyan:"#008b8b",darkgoldenrod:"#b8860b",darkkhaki:"#bdb76b",darkgray:"#a9a9a9",darkgreen:"#006400",darkgrey:"#a9a9a9",peachpuff:"#ffdab9",darkmagenta:"#8b008b",darkred:"#8b0000",darkorchid:"#9932cc",darkorange:"#ff8c00",darkslateblue:"#483d8b",gray:"#808080",darkslategray:"#2f4f4f",darkslategrey:"#2f4f4f",deeppink:"#ff1493",deepskyblue:"#00bfff",wheat:"#f5deb3",firebrick:"#b22222",floralwhite:"#fffaf0",ghostwhite:"#f8f8ff",darkviolet:"#9400d3",magenta:"#ff00ff",green:"#008000",dodgerblue:"#1e90ff",grey:"#808080",honeydew:"#f0fff0",hotpink:"#ff69b4",blueviolet:"#8a2be2",forestgreen:"#228b22",lawngreen:"#7cfc00",indianred:"#cd5c5c",indigo:"#4b0082",fuchsia:"#ff00ff",brown:"#a52a2a",maroon:"#800000",mediumblue:"#0000cd",lightcoral:"#f08080",darkturquoise:"#00ced1",lightcyan:"#e0ffff",ivory:"#fffff0",lightyellow:"#ffffe0",lightsalmon:"#ffa07a",lightseagreen:"#20b2aa",linen:"#faf0e6",mediumaquamarine:"#66cdaa",lemonchiffon:"#fffacd",lime:"#00ff00",khaki:"#f0e68c",mediumseagreen:"#3cb371",limegreen:"#32cd32",mediumspringgreen:"#00fa9a",lightskyblue:"#87cefa",lightblue:"#add8e6",midnightblue:"#191970",lightpink:"#ffb6c1",mistyrose:"#ffe4e1",moccasin:"#ffe4b5",mintcream:"#f5fffa",lightslategray:"#778899",lightslategrey:"#778899",navajowhite:"#ffdead",navy:"#000080",mediumvioletred:"#c71585",powderblue:"#b0e0e6",palegoldenrod:"#eee8aa",oldlace:"#fdf5e6",paleturquoise:"#afeeee",mediumturquoise:"#48d1cc",mediumorchid:"#ba55d3",rebeccapurple:"#663399",lightsteelblue:"#b0c4de",mediumslateblue:"#7b68ee",thistle:"#d8bfd8",tan:"#d2b48c",orchid:"#da70d6",mediumpurple:"#9370db",purple:"#800080",pink:"#ffc0cb",skyblue:"#87ceeb",springgreen:"#00ff7f",palegreen:"#98fb98",red:"#ff0000",yellow:"#ffff00",slateblue:"#6a5acd",lavenderblush:"#fff0f5",peru:"#cd853f",palevioletred:"#db7093",violet:"#ee82ee",teal:"#008080",slategray:"#708090",slategrey:"#708090",aliceblue:"#f0f8ff",darkseagreen:"#8fbc8f",darkolivegreen:"#556b2f",greenyellow:"#adff2f",seagreen:"#2e8b57",seashell:"#fff5ee",tomato:"#ff6347",silver:"#c0c0c0",sienna:"#a0522d",lavender:"#e6e6fa",lightgreen:"#90ee90",orange:"#ffa500",orangered:"#ff4500",steelblue:"#4682b4",royalblue:"#4169e1",turquoise:"#40e0d0",yellowgreen:"#9acd32",salmon:"#fa8072",saddlebrown:"#8b4513",sandybrown:"#f4a460",rosybrown:"#bc8f8f",darksalmon:"#e9967a",lightgoldenrodyellow:"#fafad2",snow:"#fffafa",lightgrey:"#d3d3d3",lightgray:"#d3d3d3",dimgray:"#696969",dimgrey:"#696969",olivedrab:"#6b8e23",olive:"#808000"},r={};for(var d in a)r[a[d]]=d;var l={};e.prototype.toName=function(f){if(!(this.rgba.a||this.rgba.r||this.rgba.g||this.rgba.b))return"transparent";var d,i,o=r[this.toHex()];if(o)return o;if(null==f?void 0:f.closest){var n=this.toRgb(),t=1/0,b="black";if(!l.length)for(var c in a)l[c]=new e(a[c]).toRgb();for(var g in a){var u=(d=n,i=l[g],Math.pow(d.r-i.r,2)+Math.pow(d.g-i.g,2)+Math.pow(d.b-i.b,2));u0:"number"==typeof r},n=function(r,n,t){return void 0===n&&(n=0),void 0===t&&(t=Math.pow(10,n)),Math.round(t*r)/t+0},t=function(r,n,t){return void 0===n&&(n=0),void 0===t&&(t=1),r>t?t:r>n?r:n},u=function(r){var n=r/255;return n<.04045?n/12.92:Math.pow((n+.055)/1.055,2.4)},o=function(r){return 255*(r>.0031308?1.055*Math.pow(r,1/2.4)-.055:12.92*r)},a=96.422,e=100,y=82.521,x=function(r){return{x:t(r.x,0,a),y:t(r.y,0,e),z:t(r.z,0,y),a:t(r.a)}},z=function(n){var t=n.x,u=n.y,o=n.z,a=n.a,e=void 0===a?1:a;if(!r(t)||!r(u)||!r(o))return null;var y=x({x:Number(t),y:Number(u),z:Number(o),a:Number(e)});return i(y)},i=function(r){var n,u,a={x:.9555766*(n=r).x+-.0230393*n.y+.0631636*n.z,y:-.0282895*n.x+1.0099416*n.y+.0210077*n.z,z:.0122982*n.x+-.020483*n.y+1.3299098*n.z};return u={r:o(.032404542*a.x-.015371385*a.y-.004985314*a.z),g:o(-.00969266*a.x+.018760108*a.y+41556e-8*a.z),b:o(556434e-9*a.x-.002040259*a.y+.010572252*a.z),a:r.a},{r:t(u.r,0,255),g:t(u.g,0,255),b:t(u.b,0,255),a:t(u.a)}};module.exports=function(r,t){r.prototype.toXyz=function(){return function(r){return{x:n(r.x,2),y:n(r.y,2),z:n(r.z,2),a:n(r.a,3)}}((t=u((r=this.rgba).r),o=u(r.g),a=u(r.b),x({x:1.0478112*(e={x:100*(.4124564*t+.3575761*o+.1804375*a),y:100*(.2126729*t+.7151522*o+.072175*a),z:100*(.0193339*t+.119192*o+.9503041*a),a:r.a}).x+.0228866*e.y+-.050127*e.z,y:.0295424*e.x+.9904844*e.y+-.0170491*e.z,z:-.0092345*e.x+.0150436*e.y+.7521316*e.z,a:e.a})));var r,t,o,a,e},t.object.push([z,"xyz"])}; diff --git a/node_modules/colord/plugins/xyz.mjs b/node_modules/colord/plugins/xyz.mjs new file mode 100644 index 00000000..0c60d651 --- /dev/null +++ b/node_modules/colord/plugins/xyz.mjs @@ -0,0 +1 @@ +var r=function(r){return"string"==typeof r?r.length>0:"number"==typeof r},n=function(r,n,t){return void 0===n&&(n=0),void 0===t&&(t=Math.pow(10,n)),Math.round(t*r)/t+0},t=function(r,n,t){return void 0===n&&(n=0),void 0===t&&(t=1),r>t?t:r>n?r:n},u=function(r){var n=r/255;return n<.04045?n/12.92:Math.pow((n+.055)/1.055,2.4)},o=function(r){return 255*(r>.0031308?1.055*Math.pow(r,1/2.4)-.055:12.92*r)},a=96.422,e=100,y=82.521,x=function(r){return{x:t(r.x,0,a),y:t(r.y,0,e),z:t(r.z,0,y),a:t(r.a)}},z=function(n){var t=n.x,u=n.y,o=n.z,a=n.a,e=void 0===a?1:a;if(!r(t)||!r(u)||!r(o))return null;var y=x({x:Number(t),y:Number(u),z:Number(o),a:Number(e)});return i(y)},i=function(r){var n,u,a={x:.9555766*(n=r).x+-.0230393*n.y+.0631636*n.z,y:-.0282895*n.x+1.0099416*n.y+.0210077*n.z,z:.0122982*n.x+-.020483*n.y+1.3299098*n.z};return u={r:o(.032404542*a.x-.015371385*a.y-.004985314*a.z),g:o(-.00969266*a.x+.018760108*a.y+41556e-8*a.z),b:o(556434e-9*a.x-.002040259*a.y+.010572252*a.z),a:r.a},{r:t(u.r,0,255),g:t(u.g,0,255),b:t(u.b,0,255),a:t(u.a)}};export default function(r,t){r.prototype.toXyz=function(){return function(r){return{x:n(r.x,2),y:n(r.y,2),z:n(r.z,2),a:n(r.a,3)}}((t=u((r=this.rgba).r),o=u(r.g),a=u(r.b),x({x:1.0478112*(e={x:100*(.4124564*t+.3575761*o+.1804375*a),y:100*(.2126729*t+.7151522*o+.072175*a),z:100*(.0193339*t+.119192*o+.9503041*a),a:r.a}).x+.0228866*e.y+-.050127*e.z,y:.0295424*e.x+.9904844*e.y+-.0170491*e.z,z:-.0092345*e.x+.0150436*e.y+.7521316*e.z,a:e.a})));var r,t,o,a,e},t.object.push([z,"xyz"])} diff --git a/node_modules/colord/random.d.ts b/node_modules/colord/random.d.ts new file mode 100644 index 00000000..76178a6d --- /dev/null +++ b/node_modules/colord/random.d.ts @@ -0,0 +1,2 @@ +import { Colord } from "./colord"; +export declare const random: () => Colord; diff --git a/node_modules/colord/types.d.ts b/node_modules/colord/types.d.ts new file mode 100644 index 00000000..02c10ff2 --- /dev/null +++ b/node_modules/colord/types.d.ts @@ -0,0 +1,67 @@ +export declare type RgbColor = { + r: number; + g: number; + b: number; +}; +export declare type HslColor = { + h: number; + s: number; + l: number; +}; +export declare type HsvColor = { + h: number; + s: number; + v: number; +}; +export declare type HwbColor = { + h: number; + w: number; + b: number; +}; +export interface XyzColor { + x: number; + y: number; + z: number; +} +export interface LabColor { + l: number; + a: number; + b: number; +} +export interface LchColor { + l: number; + c: number; + h: number; +} +export interface CmykColor { + c: number; + m: number; + y: number; + k: number; +} +declare type WithAlpha = O & { + a: number; +}; +export declare type RgbaColor = WithAlpha; +export declare type HslaColor = WithAlpha; +export declare type HsvaColor = WithAlpha; +export declare type HwbaColor = WithAlpha; +export declare type XyzaColor = WithAlpha; +export declare type LabaColor = LabColor & { + alpha: number; +}; +export declare type LchaColor = WithAlpha; +export declare type CmykaColor = WithAlpha; +export declare type ObjectColor = RgbColor | RgbaColor | HslColor | HslaColor | HsvColor | HsvaColor | HwbColor | HwbaColor | XyzColor | XyzaColor | LabColor | LabaColor | LchColor | LchaColor | CmykColor | CmykaColor; +export declare type AnyColor = string | ObjectColor; +export declare type InputObject = Record; +export declare type Format = "name" | "hex" | "rgb" | "hsl" | "hsv" | "hwb" | "xyz" | "lab" | "lch" | "cmyk"; +export declare type Input = string | InputObject; +export declare type ParseResult = [RgbaColor, Format]; +export declare type ParseFunction = (input: I) => RgbaColor | null; +export declare type Parser = [ParseFunction, Format]; +export declare type Parsers = { + string: Array>; + object: Array>; +}; +export {}; diff --git a/node_modules/cosmiconfig/LICENSE b/node_modules/cosmiconfig/LICENSE new file mode 100644 index 00000000..6d347c06 --- /dev/null +++ b/node_modules/cosmiconfig/LICENSE @@ -0,0 +1,22 @@ +The MIT License (MIT) + +Copyright (c) 2015 David Clark + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + diff --git a/node_modules/cosmiconfig/README.md b/node_modules/cosmiconfig/README.md new file mode 100644 index 00000000..59b09d07 --- /dev/null +++ b/node_modules/cosmiconfig/README.md @@ -0,0 +1,782 @@ +# cosmiconfig + +[![codecov](https://codecov.io/gh/cosmiconfig/cosmiconfig/branch/main/graph/badge.svg)](https://codecov.io/gh/cosmiconfig/cosmiconfig) + +Cosmiconfig searches for and loads configuration for your program. + +It features smart defaults based on conventional expectations in the JavaScript ecosystem. +But it's also flexible enough to search wherever you'd like to search, and load whatever you'd like to load. + +By default, Cosmiconfig will check the current directory for the following: + +- a `package.json` property +- a JSON or YAML, extensionless "rc file" +- an "rc file" with the extensions `.json`, `.yaml`, `.yml`, `.js`, `.ts`, `.mjs`, or `.cjs` +- any of the above two inside a `.config` subdirectory +- a `.config.js`, `.config.ts`, `.config.mjs`, or `.config.cjs` file + +For example, if your module's name is "myapp", cosmiconfig will search up the directory tree for configuration in the following places: + +- a `myapp` property in `package.json` +- a `.myapprc` file in JSON or YAML format +- a `.myapprc.json`, `.myapprc.yaml`, `.myapprc.yml`, `.myapprc.js`, `.myapprc.ts`, `.myapprc.mjs`, or `.myapprc.cjs` file +- a `myapprc`, `myapprc.json`, `myapprc.yaml`, `myapprc.yml`, `myapprc.js`, `myapprc.ts`, `myapprc.mjs`, or `myapprc.cjs` file inside a `.config` subdirectory +- a `myapp.config.js`, `myapp.config.ts`, `myapp.config.mjs`, or `myapp.config.cjs` file + +Optionally, you can tell it to search up the directory tree using [search strategies], +checking each of these places in each directory, until it finds some acceptable configuration (or hits the home directory). + +## Table of contents + +- [Installation](#installation) +- [Usage for tooling developers](#usage-for-tooling-developers) +- [Result](#result) +- [Asynchronous API](#asynchronous-api) + - [cosmiconfig()](#cosmiconfig-1) + - [explorer.search()](#explorersearch) + - [explorer.load()](#explorerload) + - [explorer.clearLoadCache()](#explorerclearloadcache) + - [explorer.clearSearchCache()](#explorerclearsearchcache) + - [explorer.clearCaches()](#explorerclearcaches) +- [Synchronous API](#synchronous-api) + - [cosmiconfigSync()](#cosmiconfigsync) + - [explorerSync.search()](#explorersyncsearch) + - [explorerSync.load()](#explorersyncload) + - [explorerSync.clearLoadCache()](#explorersyncclearloadcache) + - [explorerSync.clearSearchCache()](#explorersyncclearsearchcache) + - [explorerSync.clearCaches()](#explorersyncclearcaches) +- [cosmiconfigOptions](#cosmiconfigoptions) + - [searchStrategy](#searchstrategy) + - [searchPlaces](#searchplaces) + - [loaders](#loaders) + - [packageProp](#packageprop) + - [stopDir](#stopdir) + - [cache](#cache) + - [transform](#transform) + - [ignoreEmptySearchPlaces](#ignoreemptysearchplaces) +- [Loading JS modules](#loading-js-modules) +- [Caching](#caching) +- [Differences from rc](#differences-from-rc) +- [Usage for end users](#usage-for-end-users) + - [Imports](#imports) +- [Contributing & Development](#contributing--development) + +## Installation + +``` +npm install cosmiconfig +``` + +Tested in Node 14+. + +## Usage for tooling developers + +*If you are an end user (i.e. a user of a tool that uses cosmiconfig, like `prettier` or `stylelint`), +you can skip down to [the end user section](#usage-for-end-users).* + +Create a Cosmiconfig explorer, then either `search` for or directly `load` a configuration file. + +```js +const { cosmiconfig, cosmiconfigSync } = require('cosmiconfig'); +// ... +const explorer = cosmiconfig(moduleName); + +// Search for a configuration by walking up directories. +// See documentation for search, below. +explorer.search() + .then((result) => { + // result.config is the parsed configuration object. + // result.filepath is the path to the config file that was found. + // result.isEmpty is true if there was nothing to parse in the config file. + }) + .catch((error) => { + // Do something constructive. + }); + +// Load a configuration directly when you know where it should be. +// The result object is the same as for search. +// See documentation for load, below. +explorer.load(pathToConfig).then(/* ... */); + +// You can also search and load synchronously. +const explorerSync = cosmiconfigSync(moduleName); + +const searchedFor = explorerSync.search(); +const loaded = explorerSync.load(pathToConfig); +``` + +## Result + +The result object you get from `search` or `load` has the following properties: + +- **config:** The parsed configuration object. `undefined` if the file is empty. +- **filepath:** The path to the configuration file that was found. +- **isEmpty:** `true` if the configuration file is empty. This property will not be present if the configuration file is not empty. + +## Asynchronous API + +### cosmiconfig() + +```js +const { cosmiconfig } = require('cosmiconfig'); +const explorer = cosmiconfig(moduleName, /* optional */ cosmiconfigOptions) +``` + +Creates a cosmiconfig instance ("explorer") configured according to the arguments, and initializes its caches. + +#### moduleName + +Type: `string`. **Required.** + +Your module name. This is used to create the default [`searchPlaces`] and [`packageProp`]. + +If your [`searchPlaces`] value will include files, as it does by default (e.g. `${moduleName}rc`), your `moduleName` must consist of characters allowed in filenames. That means you should not copy scoped package names, such as `@my-org/my-package`, directly into `moduleName`. + +**[`cosmiconfigOptions`] are documented below.** +You may not need them, and should first read about the functions you'll use. + +### explorer.search() + +```js +explorer.search([searchFrom]).then(result => { /* ... */ }) +``` + +Searches for a configuration file. Returns a Promise that resolves with a [result] or with `null`, if no configuration file is found. + +You can do the same thing synchronously with [`explorerSync.search()`]. + +Let's say your module name is `goldengrahams` so you initialized with `const explorer = cosmiconfig('goldengrahams');`. +Here's how your default [`search()`] will work: + +- Starting from `process.cwd()` (or some other directory defined by the `searchFrom` argument to [`search()`]), look for configuration objects in the following places: + 1. A `goldengrahams` property in a `package.json` file. + 2. A `.goldengrahamsrc` file with JSON or YAML syntax. + 3. A `.goldengrahamsrc.json`, `.goldengrahamsrc.yaml`, `.goldengrahamsrc.yml`, `.goldengrahamsrc.js`, `.goldengrahamsrc.ts`, `.goldengrahamsrc.mjs`, or `.goldengrahamsrc.cjs` file. (To learn more about how JS files are loaded, see ["Loading JS modules"].) + 4. A `goldengrahamsrc`, `goldengrahamsrc.json`, `goldengrahamsrc.yaml`, `goldengrahamsrc.yml`, `goldengrahamsrc.js`, `goldengrahamsrc.ts`, `goldengrahamsrc.mjs`, or `goldengrahamsrc.cjs` file in the `.config` subdirectory. + 5. A `goldengrahams.config.js`, `goldengrahams.config.ts`, `goldengrahams.config.mjs`, or `goldengrahams.config.cjs` file. (To learn more about how JS files are loaded, see ["Loading JS modules"].) +- If none of those searches reveal a configuration object, continue depending on the current search strategy: + - If it's `none` (which is the default if you don't specify a [`stopDir`] option), stop here and return/resolve with `null`. + - If it's `global` (which is the default if you specify a [`stopDir`] option), move up one directory level and try again, + recursing until arriving at the configured [`stopDir`] option, which defaults to the user's home directory. + - After arriving at the [`stopDir`], the global configuration directory (as defined by [`env-paths`] without prefix) is also checked, + looking at the files `config`, `config.json`, `config.yaml`, `config.yml`, `config.js`, `config.ts`, `config.cjs`, and `config.mjs` + in the directory `~/.config/goldengrahams/` (on Linux; see [`env-paths`] documentation for other OSs). + - If it's `project`, check whether a `package.json` file is present in the current directory, and if not, + move up one directory level and try again, recursing until there is one. +- If at any point a parsable configuration is found, the [`search()`] Promise resolves with its [result] \(or, with [`explorerSync.search()`], the [result] is returned). +- If no configuration object is found, the [`search()`] Promise resolves with `null` (or, with [`explorerSync.search()`], `null` is returned). +- If a configuration object is found *but is malformed* (causing a parsing error), the [`search()`] Promise rejects with that error (so you should `.catch()` it). (Or, with [`explorerSync.search()`], the error is thrown.) + +**If you know exactly where your configuration file should be, you can use [`load()`], instead.** + +**The search process is highly customizable.** +Use the cosmiconfig options [`searchPlaces`] and [`loaders`] to precisely define where you want to look for configurations and how you want to load them. + +#### searchFrom + +Type: `string`. +Default: `process.cwd()`. + +A filename. +[`search()`] will start its search here. + +If the value is a directory, that's where the search starts. +If it's a file, the search starts in that file's directory. + +### explorer.load() + +```js +explorer.load(loadPath).then(result => { /* ... */ }) +``` + +Loads a configuration file. Returns a Promise that resolves with a [result] or rejects with an error (if the file does not exist or cannot be loaded). + +Use `load` if you already know where the configuration file is and you just need to load it. + +```js +explorer.load('load/this/file.json'); // Tries to load load/this/file.json. +``` + +If you load a `package.json` file, the result will be derived from whatever property is specified as your [`packageProp`]. +`package.yaml` will work as well if you specify these file names in your [`searchPlaces`]. + +You can do the same thing synchronously with [`explorerSync.load()`]. + +### explorer.clearLoadCache() + +Clears the cache used in [`load()`]. + +### explorer.clearSearchCache() + +Clears the cache used in [`search()`]. + +### explorer.clearCaches() + +Performs both [`clearLoadCache()`] and [`clearSearchCache()`]. + +## Synchronous API + +### cosmiconfigSync() + +```js +const { cosmiconfigSync } = require('cosmiconfig'); +const explorerSync = cosmiconfigSync(moduleName, /* optional */ cosmiconfigOptions) +``` + +Creates a *synchronous* cosmiconfig instance ("explorerSync") configured according to the arguments, and initializes its caches. + +See [`cosmiconfig()`](#cosmiconfig-1). + +### explorerSync.search() + +```js +const result = explorerSync.search([searchFrom]); +``` + +Synchronous version of [`explorer.search()`]. + +Returns a [result] or `null`. + +### explorerSync.load() + +```js +const result = explorerSync.load(loadPath); +``` + +Synchronous version of [`explorer.load()`]. + +Returns a [result]. + +### explorerSync.clearLoadCache() + +Clears the cache used in [`load()`]. + +### explorerSync.clearSearchCache() + +Clears the cache used in [`search()`]. + +### explorerSync.clearCaches() + +Performs both [`clearLoadCache()`] and [`clearSearchCache()`]. + +## cosmiconfigOptions + +Type: `Object`. + +Possible options are documented below. + +### searchStrategy + +Type: `string` +Default: `global` if [`stopDir`] is specified, `none` otherwise. + +The strategy that should be used to determine which directories to check for configuration files. + +- `none`: Only checks in the current working directory. +- `project`: Starts in the current working directory, traversing upwards until a `package.{json,yaml}` file is found. +- `global`: Starts in the current working directory, traversing upwards until the configured [`stopDir`] + (or the current user's home directory if none is given). Then, if no configuration is found, also look in the + operating system's default configuration directory (according to [`env-paths`] without prefix), + where a different set of file names is checked: + +```js +[ + `config`, + `config.json`, + `config.yaml`, + `config.yml`, + `config.js`, + `config.ts`, + `config.cjs`, + `config.mjs` +] +``` + +### searchPlaces + +Type: `Array`. +Default: See below. + +An array of places that [`search()`] will check in each directory as it moves up the directory tree. +Each place is relative to the directory being searched, and the places are checked in the specified order. + +**Default `searchPlaces`:** + +For the [asynchronous API](#asynchronous-api), these are the default `searchPlaces`: + +```js +[ + 'package.json', + `.${moduleName}rc`, + `.${moduleName}rc.json`, + `.${moduleName}rc.yaml`, + `.${moduleName}rc.yml`, + `.${moduleName}rc.js`, + `.${moduleName}rc.ts`, + `.${moduleName}rc.mjs`, + `.${moduleName}rc.cjs`, + `.config/${moduleName}rc`, + `.config/${moduleName}rc.json`, + `.config/${moduleName}rc.yaml`, + `.config/${moduleName}rc.yml`, + `.config/${moduleName}rc.js`, + `.config/${moduleName}rc.ts`, + `.config/${moduleName}rc.mjs`, + `.config/${moduleName}rc.cjs`, + `${moduleName}.config.js`, + `${moduleName}.config.ts`, + `${moduleName}.config.mjs`, + `${moduleName}.config.cjs`, +]; +``` + +For the [synchronous API](#synchronous-api), the only difference is that `.mjs` files are not included. See ["Loading JS modules"] for more information. + +Create your own array to search more, fewer, or altogether different places. + +Every item in `searchPlaces` needs to have a loader in [`loaders`] that corresponds to its extension. +(Common extensions are covered by default loaders.) +Read more about [`loaders`] below. + +`package.json` is a special value: When it is included in `searchPlaces`, Cosmiconfig will always parse it as JSON and load a property within it, not the whole file. +That property is defined with the [`packageProp`] option, and defaults to your module name. + +`package.yaml` (used by pnpm) works the same way. + +Examples, with a module named `porgy`: + +```js +// Disallow extensions on rc files: +['package.json', '.porgyrc', 'porgy.config.js'] +``` + +```js +// Limit the options dramatically: +['package.json', '.porgyrc'] +``` + +```js +// Maybe you want to look for a wide variety of JS flavors: +[ + 'porgy.config.js', + 'porgy.config.mjs', + 'porgy.config.ts', + 'porgy.config.coffee' +] +// ^^ You will need to designate a custom loader to tell +// Cosmiconfig how to handle `.coffee` files. +``` + +```js +// Look within a .config/ subdirectory of every searched directory: +[ + 'package.json', + '.porgyrc', + '.config/.porgyrc', + '.porgyrc.json', + '.config/.porgyrc.json' +] +``` + +### loaders + +Type: `Object`. +Default: See below. + +An object that maps extensions to the loader functions responsible for loading and parsing files with those extensions. + +Cosmiconfig exposes its default loaders on the named export `defaultLoaders` and `defaultLoadersSync`. + +**Default `loaders`:** + +```js +const { defaultLoaders, defaultLoadersSync } = require('cosmiconfig'); + +console.log(Object.entries(defaultLoaders)); +// [ +// [ '.mjs', [Function: loadJs] ], +// [ '.cjs', [Function: loadJs] ], +// [ '.js', [Function: loadJs] ], +// [ '.ts', [Function: loadTs] ], +// [ '.json', [Function: loadJson] ], +// [ '.yaml', [Function: loadYaml] ], +// [ '.yml', [Function: loadYaml] ], +// [ 'noExt', [Function: loadYaml] ] +// ] + +console.log(Object.entries(defaultLoadersSync)); +// [ +// [ '.cjs', [Function: loadJsSync] ], +// [ '.js', [Function: loadJsSync] ], +// [ '.ts', [Function: loadTsSync] ], +// [ '.json', [Function: loadJson] ], +// [ '.yaml', [Function: loadYaml] ], +// [ '.yml', [Function: loadYaml] ], +// [ 'noExt', [Function: loadYaml] ] +// ] +``` + +(YAML is a superset of JSON; which means YAML parsers can parse JSON; which is how extensionless files can be either YAML *or* JSON with only one parser.) + +**If you provide a `loaders` object, your object will be *merged* with the defaults.** +So you can override one or two without having to override them all. + +**Keys in `loaders`** are extensions (starting with a period), or `noExt` to specify the loader for files *without* extensions, like `.myapprc`. + +**Values in `loaders`** are a loader function (described below) whose values are loader functions. + +**The most common use case for custom loaders value is to load extensionless `rc` files as strict JSON**, instead of JSON *or* YAML (the default). +To accomplish that, provide the following `loaders` value: + +```js +{ + noExt: defaultLoaders['.json']; +} +``` + +If you want to load files that are not handled by the loader functions Cosmiconfig exposes, you can write a custom loader function or use one from NPM if it exists. + +**Use cases for custom loader function:** + +- Allow configuration syntaxes that aren't handled by Cosmiconfig's defaults, like JSON5, INI, or XML. +- Parse JS files with Babel before deriving the configuration. + +**Custom loader functions** have the following signature: + +```ts +// Sync +type SyncLoader = (filepath: string, content: string) => Object | null + +// Async +type AsyncLoader = (filepath: string, content: string) => Object | null | Promise +``` + +Cosmiconfig reads the file when it checks whether the file exists, so it will provide you with both the file's path and its content. +Do whatever you need to, and return either a configuration object or `null` (or, for async-only loaders, a Promise that resolves with one of those). +`null` indicates that no real configuration was found and the search should continue. + +A few things to note: + +- If you use a custom loader, be aware of whether it's sync or async: you cannot use async customer loaders with the sync API ([`cosmiconfigSync()`]). +- **Special JS syntax can also be handled by using a `require` hook**, because `defaultLoaders['.js']` just uses `require`. + Whether you use custom loaders or a `require` hook is up to you. + +Examples: + +```js +// Allow JSON5 syntax: +cosmiconfig('foo', { + loaders: { + '.json': json5Loader + } +}); + +// Allow a special configuration syntax of your own creation: +cosmiconfig('foo', { + loaders: { + '.special': specialLoader + } +}); + +// Allow many flavors of JS, using custom loaders: +cosmiconfig('foo', { + loaders: { + '.coffee': coffeeScriptLoader + } +}); + +// Allow many flavors of JS but rely on require hooks: +cosmiconfig('foo', { + loaders: { + '.coffee': defaultLoaders['.js'] + } +}); +``` + +### packageProp + +Type: `string | Array`. +Default: `` `${moduleName}` ``. + +Name of the property in `package.json` (or `package.yaml`) to look for. + +Use a period-delimited string or an array of strings to describe a path to nested properties. + +For example, the value `'configs.myPackage'` or `['configs', 'myPackage']` will get you the `"myPackage"` value in a `package.json` like this: + +```json +{ + "configs": { + "myPackage": {"option": "value"} + } +} +``` + +If nested property names within the path include periods, you need to use an array of strings. For example, the value `['configs', 'foo.bar', 'baz']` will get you the `"baz"` value in a `package.json` like this: + +```json +{ + "configs": { + "foo.bar": { + "baz": {"option": "value"} + } + } +} +``` + +If a string includes period but corresponds to a top-level property name, it will not be interpreted as a period-delimited path. For example, the value `'one.two'` will get you the `"three"` value in a `package.json` like this: + +```json +{ + "one.two": "three", + "one": { + "two": "four" + } +} +``` + +### stopDir + +Type: `string`. +Default: Absolute path to your home directory. + +Directory where the search will stop. + +### cache + +Type: `boolean`. +Default: `true`. + +If `false`, no caches will be used. +Read more about ["Caching"](#caching) below. + +### transform + +Type: `(Result) => Promise | Result`. + +A function that transforms the parsed configuration. Receives the [result]. + +If using [`search()`] or [`load()`] \(which are async), the transform function can return the transformed result or return a Promise that resolves with the transformed result. +If using `cosmiconfigSync`, [`search()`] or [`load()`], the function must be synchronous and return the transformed result. + +The reason you might use this option — instead of simply applying your transform function some other way — is that *the transformed result will be cached*. If your transformation involves additional filesystem I/O or other potentially slow processing, you can use this option to avoid repeating those steps every time a given configuration is searched or loaded. + +### ignoreEmptySearchPlaces + +Type: `boolean`. +Default: `true`. + +By default, if [`search()`] encounters an empty file (containing nothing but whitespace) in one of the [`searchPlaces`], it will ignore the empty file and move on. +If you'd like to load empty configuration files, instead, set this option to `false`. + +Why might you want to load empty configuration files? +If you want to throw an error, or if an empty configuration file means something to your program. + +## Loading JS modules + +Your end users can provide JS configuration files as ECMAScript modules (ESM) under the following conditions: + +- You (the cosmiconfig user) use cosmiconfig's [asynchronous API](#asynchronous-api). +- Your end user runs a version of Node that supports ESM ([>=12.17.0](https://nodejs.org/en/blog/release/v12.17.0/), or earlier with the `--experimental-modules` flag). +- Your end user provides an `.mjs` configuration file, or a `.js` file whose nearest parent `package.json` file contains `"type": "module"`. (See [Node's method for determining a file's module system](https://nodejs.org/api/packages.html#packages_determining_module_system).) + +With cosmiconfig's [asynchronous API](#asynchronous-api), the default [`searchPlaces`] include `.js`, `.ts`, `.mjs`, and `.cjs` files. Cosmiconfig loads all these file types with the [dynamic `import` function](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/import#dynamic_imports). + +With the [synchronous API](#synchronous-api), JS configuration files are always treated as CommonJS, and `.mjs` files are ignored, because there is no synchronous API for the dynamic `import` function. + +## Caching + +As of v2, cosmiconfig uses caching to reduce the need for repetitious reading of the filesystem or expensive transforms. Every new cosmiconfig instance (created with `cosmiconfig()`) has its own caches. + +To avoid or work around caching, you can do the following: + +- Set the `cosmiconfig` option [`cache`] to `false`. +- Use the cache-clearing methods [`clearLoadCache()`], [`clearSearchCache()`], and [`clearCaches()`]. +- Create separate instances of cosmiconfig (separate "explorers"). + +## Differences from [rc](https://github.com/dominictarr/rc) + +[rc](https://github.com/dominictarr/rc) serves its focused purpose well. cosmiconfig differs in a few key ways — making it more useful for some projects, less useful for others: + +- Looks for configuration in some different places: in a `package.json` property, an rc file, a `.config.js` file, and rc files with extensions. +- Built-in support for JSON, YAML, and CommonJS formats. +- Stops at the first configuration found, instead of finding all that can be found up the directory tree and merging them automatically. +- Options. +- Asynchronous by default (though can be run synchronously). + +## Usage for end users + +When configuring a tool, you can use multiple file formats and put these in multiple places. + +Usually, a tool would mention this in its own README file, +but by default, these are the following places, where `{NAME}` represents the name of the tool: + +``` +package.json +.{NAME}rc +.{NAME}rc.json +.{NAME}rc.yaml +.{NAME}rc.yml +.{NAME}rc.js +.{NAME}rc.ts +.{NAME}rc.cjs +.config/{NAME}rc +.config/{NAME}rc.json +.config/{NAME}rc.yaml +.config/{NAME}rc.yml +.config/{NAME}rc.js +.config/{NAME}rc.ts +.config/{NAME}rc.mjs +.config/{NAME}rc.cjs +{NAME}.config.js +{NAME}.config.ts +{NAME}.config.mjs +{NAME}.config.cjs +``` + +The contents of these files are defined by the tool. +For example, you can configure prettier to enforce semicolons at the end of the line +using a file named `.config/prettierrc.yml`: + +```yaml +semi: true +``` + +Additionally, you have the option to put a property named after the tool in your `package.json` file, +with the contents of that property being the same as the file contents. To use the same example as above: + +```json +{ + "name": "your-project", + "dependencies": {}, + "prettier": { + "semi": true + } +} +``` + +This has the advantage that you can put the configuration of all tools +(at least the ones that use cosmiconfig) in one file. + +You can also add a `cosmiconfig` key within your `package.json` file or create one of the following files +to configure `cosmiconfig` itself: + +``` +.config/config.json +.config/config.yaml +.config/config.yml +.config/config.js +.config/config.ts +.config/config.cjs +``` + +The following properties are currently actively supported in these places: + +```yaml +cosmiconfig: + # adds places where configuration files are being searched + searchPlaces: + - .config/{name}.yml + # to enforce a custom naming convention and format, don't merge the above with the tool-defined search places + # (`true` is the default setting) + mergeSearchPlaces: false +``` + +> **Note:** technically, you can overwrite all options described in [cosmiconfigOptions](#cosmiconfigoptions) here, +> but everything not listed above should be used at your own risk, as it has not been tested explicitly. +> The only exceptions to this are the `loaders` property, which is explicitly not supported at this time, +> and the `searchStrategy` property, which is intentionally disallowed. + +You can also add more root properties outside the `cosmiconfig` property +to configure your tools, entirely eliminating the need to look for additional configuration files: + +```yaml +cosmiconfig: + searchPlaces: [] + +prettier: + semi: true +``` + +### Imports + +Wherever you put your configuration (the package.json file, a root config file or a package-specific config file), +you can use the special `$import` key to import another file as a base. + +For example, you can import from an npm package (in this example, `@foocorp/config`). + +`.prettierrc.base.yml` in said npm package could define some company-wide defaults: + +```yaml +printWidth: 120 +semi: true +tabWidth: 2 +``` + +And then, the `.prettierrc.yml` file in the project itself would just reference that file, +optionally overriding the defaults with project-specific settings: + +```yaml +$import: node_modules/@foocorp/config/.prettierrc.base.yml +# we want more space! +printWidth: 200 +``` + +It is possible to import multiple base files by specifying an array of paths, +which will be processed in declaration order; +that means that the last entry will win if there are conflicting properties. + +It is also possible to import file formats other than the importing format +as long as they are supported by the loaders specified by the developer of the tool you're configuring. + +```yaml +$import: [first.yml, second.json, third.config.js] +``` + +## Contributing & Development + +Please note that this project is released with a [Contributor Code of Conduct](CODE_OF_CONDUCT.md). By participating in this project you agree to abide by its terms. + +And please do participate! + +[result]: #result + +[`load()`]: #explorerload + +[`search()`]: #explorersearch + +[`clearloadcache()`]: #explorerclearloadcache + +[`clearsearchcache()`]: #explorerclearsearchcache + +[`cosmiconfig()`]: #cosmiconfig + +[`cosmiconfigSync()`]: #cosmiconfigsync + +[`clearcaches()`]: #explorerclearcaches + +[`packageprop`]: #packageprop + +[`cache`]: #cache + +[`stopdir`]: #stopdir + +[`searchplaces`]: #searchplaces + +[`loaders`]: #loaders + +[`cosmiconfigoptions`]: #cosmiconfigoptions + +[`explorerSync.search()`]: #explorersyncsearch + +[`explorerSync.load()`]: #explorersyncload + +[`explorer.search()`]: #explorersearch + +[`explorer.load()`]: #explorerload + +["Loading JS modules"]: #loading-js-modules + +[`env-paths`]: https://github.com/sindresorhus/env-paths + +[search strategies]: #searchstrategy diff --git a/node_modules/cosmiconfig/package.json b/node_modules/cosmiconfig/package.json new file mode 100644 index 00000000..a3de7f15 --- /dev/null +++ b/node_modules/cosmiconfig/package.json @@ -0,0 +1,102 @@ +{ + "name": "cosmiconfig", + "version": "9.0.0", + "description": "Find and load configuration from a package.json property, rc file, TypeScript module, and more!", + "main": "dist/index.js", + "types": "dist/index.d.ts", + "files": [ + "dist" + ], + "scripts": { + "clean": "git clean -Xdf -e '!node_modules' .", + "build": "npm run build:tsc", + "build:tsc": "cross-env NODE_ENV=production tsc -b", + "dev": "npm run build:tsc -- --watch", + "lint": "eslint --ext .js,.ts .", + "lint:fix": "eslint --ext .js,.ts . --fix", + "lint:md": "remark-preset-davidtheclark", + "format": "prettier \"**/*.{js,ts,json,yml,yaml}\" --write", + "format:md": "remark-preset-davidtheclark --format", + "format:check": "prettier \"**/*.{js,ts,json,yml,yaml}\" --check", + "test": "vitest run --coverage", + "test:watch": "vitest", + "check:all": "npm run test && npm run lint && npm run format:check", + "prepublishOnly": "npm run check:all && npm run build", + "prepare": "husky install" + }, + "lint-staged": { + "*.{js,ts}": [ + "eslint --fix", + "prettier --write" + ], + "*.{json,yml,yaml}": [ + "prettier --write" + ], + "*.md": [ + "remark-preset-davidtheclark", + "remark-preset-davidtheclark --format" + ] + }, + "repository": { + "type": "git", + "url": "git+https://github.com/cosmiconfig/cosmiconfig.git" + }, + "keywords": [ + "load", + "configuration", + "config" + ], + "author": "Daniel Fischer ", + "contributors": [ + "Randolf J ", + "David Clark ", + "Bogdan Chadkin ", + "Suhas Karanth " + ], + "funding": "https://github.com/sponsors/d-fischer", + "license": "MIT", + "bugs": { + "url": "https://github.com/cosmiconfig/cosmiconfig/issues" + }, + "homepage": "https://github.com/cosmiconfig/cosmiconfig#readme", + "peerDependencies": { + "typescript": ">=4.9.5" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + }, + "dependencies": { + "env-paths": "^2.2.1", + "import-fresh": "^3.3.0", + "js-yaml": "^4.1.0", + "parse-json": "^5.2.0" + }, + "devDependencies": { + "@types/js-yaml": "^4.0.5", + "@types/node": "^14", + "@types/parse-json": "^4.0.0", + "@typescript-eslint/eslint-plugin": "^6.5.0", + "@typescript-eslint/parser": "^6.5.0", + "@vitest/coverage-istanbul": "^0.34.3", + "cross-env": "^7.0.3", + "eslint": "^8.48.0", + "eslint-config-davidtheclark-node": "^0.2.2", + "eslint-config-prettier": "^9.0.0", + "eslint-import-resolver-typescript": "^3.6.0", + "eslint-plugin-import": "^2.28.1", + "eslint-plugin-node": "^11.1.0", + "eslint-plugin-vitest": "^0.2.8", + "husky": "^8.0.3", + "lint-staged": "^14.0.1", + "parent-module": "^3.0.0", + "prettier": "^3.0.3", + "remark-preset-davidtheclark": "^0.12.0", + "typescript": "^5.2.2", + "vitest": "^0.34.3" + }, + "engines": { + "node": ">=14" + } +} diff --git a/node_modules/css-functions-list/CHANGELOG.md b/node_modules/css-functions-list/CHANGELOG.md new file mode 100644 index 00000000..2c843066 --- /dev/null +++ b/node_modules/css-functions-list/CHANGELOG.md @@ -0,0 +1,71 @@ +# Changelog + +## [Unreleased][] + +## [3.2.3][] - 2024-10-09 + +- Add `calc-size` and `shape` function +- Filter invalid functions + +## [3.2.2][] - 2024-04-22 + +- Add additional function references + +## [3.2.1][] - 2023-10-15 + +### Changed + +- Add additional function references + +## [3.2.0][] - 2023-07-10 + +### Changed + +- Update with latest function definitions +- Keep functions that end with `X|Y|Z`, like `rotatex` or `rotatey` (`rotateX` + or `rotateY`) ([#4](https://github.com/niksy/css-functions-list/pull/5)) + +## [3.1.0][] - 2022-06-03 + +### Added + +- Add OKLCH and OKLab functions + ([#4](https://github.com/niksy/css-functions-list/pull/4)) + +## [3.0.1][] - 2022-02-14 + +### Fixed + +- Use `fileURLToPath` for location resolve + +### Added + +- Windows to CI matrix + +## [3.0.0][] - 2022-02-03 + +### Changed + +- **Breaking**: Only Node >= 12.22 is supported + +### Added + +- New additions to list + +## [2.0.0][] - 2021-09-02 + +### Added + +- Initial implementation + + + +[2.0.0]: https://github.com/niksy/css-functions-list/tree/v2.0.0 +[3.0.0]: https://github.com/niksy/css-functions-list/tree/v3.0.0 +[3.0.1]: https://github.com/niksy/css-functions-list/tree/v3.0.1 +[3.1.0]: https://github.com/niksy/css-functions-list/tree/v3.1.0 +[Unreleased]: https://github.com/niksy/css-functions-list/compare/v3.2.3...HEAD +[3.2.3]: https://github.com/niksy/css-functions-list/compare/v3.2.2...v3.2.3 +[3.2.2]: https://github.com/niksy/css-functions-list/compare/v3.2.1...v3.2.2 +[3.2.1]: https://github.com/niksy/css-functions-list/compare/v3.2.0...v3.2.1 +[3.2.0]: https://github.com/niksy/css-functions-list/tree/v3.2.0 diff --git a/node_modules/css-functions-list/LICENSE.md b/node_modules/css-functions-list/LICENSE.md new file mode 100644 index 00000000..bd762d0c --- /dev/null +++ b/node_modules/css-functions-list/LICENSE.md @@ -0,0 +1,18 @@ +Copyright (c) Ivan Nikolić + +Permission is hereby granted, free of charge, to any person obtaining a copy of +this software and associated documentation files (the "Software"), to deal in +the Software without restriction, including without limitation the rights to +use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of +the Software, and to permit persons to whom the Software is furnished to do so, +subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS +FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR +COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER +IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN +CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/node_modules/css-functions-list/README.md b/node_modules/css-functions-list/README.md new file mode 100644 index 00000000..f0f23973 --- /dev/null +++ b/node_modules/css-functions-list/README.md @@ -0,0 +1,69 @@ +# css-functions-list + +[![Build Status][ci-img]][ci] + +List of standard and +[browser specific](<(https://developer.mozilla.org/en-US/docs/Glossary/Vendor_Prefix)>) +CSS functions. + +Data sources are: + +- MDN reference on + [CSS functions](https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Functions) +- MDN reference on + [general CSS features](https://developer.mozilla.org/en-US/docs/Web/CSS/Reference). +- MDN + [browser compatibility data for CSS functions](https://github.com/mdn/browser-compat-data/tree/main/css/types) +- Manually maintained experimental, legacy and removed functions + +## Install + +```sh +npm install css-functions-list --save +``` + +## Usage + +```js +import { promises as fs } from 'fs'; +import functionsListPath from 'css-functions-list'; + +(async () => { + const functionsList = JSON.parse( + await fs.readFile(functionsListPath, 'utf8') + ); + console.log(functionsList); + /* [ + 'abs', + 'acos', + 'annotation', + 'asin', + 'atan', + 'atan2', + 'attr', + 'blur', + 'brightness', + 'calc' + // … + ]; */ +})(); +``` + +## API + +### functionsListPath + +Type: `string` + +Path to CSS functions list JSON file. + +## License + +MIT © [Ivan Nikolić](http://ivannikolic.com) + + + +[ci]: https://github.com/niksy/css-functions-list/actions?query=workflow%3ACI +[ci-img]: https://github.com/niksy/css-functions-list/workflows/CI/badge.svg?branch=master + + diff --git a/node_modules/css-functions-list/cjs/index.d.ts b/node_modules/css-functions-list/cjs/index.d.ts new file mode 100644 index 00000000..c417c4bd --- /dev/null +++ b/node_modules/css-functions-list/cjs/index.d.ts @@ -0,0 +1,6 @@ +export default location; +/** + * Path to CSS functions list JSON file. + */ +declare const location: string; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/node_modules/css-functions-list/cjs/index.d.ts.map b/node_modules/css-functions-list/cjs/index.d.ts.map new file mode 100644 index 00000000..a31c32c0 --- /dev/null +++ b/node_modules/css-functions-list/cjs/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.js"],"names":[],"mappings":";AAEA;;GAEG;AACH,+BAAuE"} \ No newline at end of file diff --git a/node_modules/css-functions-list/cjs/index.js b/node_modules/css-functions-list/cjs/index.js new file mode 100644 index 00000000..4eab34a7 --- /dev/null +++ b/node_modules/css-functions-list/cjs/index.js @@ -0,0 +1,11 @@ +'use strict'; + +var url = require('url'); + +/** + * Path to CSS functions list JSON file. + */ +const location = url.fileURLToPath(new url.URL('index.json', (typeof document === 'undefined' ? new (require('u' + 'rl').URL)('file:' + __filename).href : (document.currentScript && document.currentScript.src || new URL('index.js', document.baseURI).href)))); + +module.exports = location; +//# sourceMappingURL=index.js.map diff --git a/node_modules/css-functions-list/cjs/index.js.map b/node_modules/css-functions-list/cjs/index.js.map new file mode 100644 index 00000000..36447d90 --- /dev/null +++ b/node_modules/css-functions-list/cjs/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sources":["../index.js"],"sourcesContent":["import { URL, fileURLToPath } from 'url';\n\n/**\n * Path to CSS functions list JSON file.\n */\nconst location = fileURLToPath(new URL('index.json', import.meta.url));\n\nexport default location;\n"],"names":["fileURLToPath","URL"],"mappings":";;;;AAEA;AACA;AACA;AACK,MAAC,QAAQ,GAAGA,iBAAa,CAAC,IAAIC,OAAG,CAAC,YAAY,EAAE,mMAAe,CAAC;;;;"} \ No newline at end of file diff --git a/node_modules/css-functions-list/cjs/index.json b/node_modules/css-functions-list/cjs/index.json new file mode 100644 index 00000000..bbd96f09 --- /dev/null +++ b/node_modules/css-functions-list/cjs/index.json @@ -0,0 +1,687 @@ +[ + "abs", + "acos", + "anchor", + "anchor-size", + "annotation", + "asin", + "atan", + "atan2", + "attr", + "blur", + "brightness", + "calc", + "calc-size", + "character-variant", + "circle", + "clamp", + "color", + "color-contrast", + "color-mix", + "color-stop", + "conic-gradient", + "contrast", + "cos", + "counter", + "counters", + "cross-fade", + "cubic-bezier", + "device-cmyk", + "drop-shadow", + "element", + "ellipse", + "env", + "exp", + "fit-content", + "format", + "from", + "gradient", + "grayscale", + "hsl", + "hsla", + "hue-rotate", + "hwb", + "hypot", + "image", + "image-rect", + "image-set", + "inset", + "invert", + "lab", + "layer", + "lch", + "leader", + "light-dark", + "linear", + "linear-gradient", + "local", + "log", + "matrix", + "matrix3d", + "max", + "min", + "minmax", + "mod", + "oklab", + "oklch", + "opacity", + "ornaments", + "paint", + "palette-mix", + "path", + "perspective", + "polygon", + "pow", + "radial-gradient", + "ray", + "rect", + "rem", + "repeat", + "repeating-conic-gradient", + "repeating-linear-gradient", + "repeating-radial-gradient", + "reversed", + "rgb", + "rgba", + "rotate", + "rotate3d", + "rotateX", + "rotateY", + "rotateZ", + "rotatex", + "rotatey", + "rotatez", + "round", + "saturate", + "scale", + "scale3d", + "scaleX", + "scaleY", + "scaleZ", + "scalex", + "scaley", + "scalez", + "scroll", + "selector", + "sepia", + "shape", + "sign", + "sin", + "skew", + "skewX", + "skewY", + "skewx", + "skewy", + "sqrt", + "steps", + "styleset", + "stylistic", + "swash", + "symbols", + "tan", + "target-counter", + "target-counters", + "target-text", + "to", + "translate", + "translate3d", + "translateX", + "translateY", + "translateZ", + "translatex", + "translatey", + "translatez", + "type", + "url", + "var", + "view", + "xywh", + "-webkit-abs", + "-webkit-acos", + "-webkit-anchor", + "-webkit-anchor-size", + "-webkit-annotation", + "-webkit-asin", + "-webkit-atan", + "-webkit-atan2", + "-webkit-attr", + "-webkit-blur", + "-webkit-brightness", + "-webkit-calc", + "-webkit-calc-size", + "-webkit-character-variant", + "-webkit-circle", + "-webkit-clamp", + "-webkit-color", + "-webkit-color-contrast", + "-webkit-color-mix", + "-webkit-color-stop", + "-webkit-conic-gradient", + "-webkit-contrast", + "-webkit-cos", + "-webkit-counter", + "-webkit-counters", + "-webkit-cross-fade", + "-webkit-cubic-bezier", + "-webkit-device-cmyk", + "-webkit-drop-shadow", + "-webkit-element", + "-webkit-ellipse", + "-webkit-env", + "-webkit-exp", + "-webkit-fit-content", + "-webkit-format", + "-webkit-from", + "-webkit-gradient", + "-webkit-grayscale", + "-webkit-hsl", + "-webkit-hsla", + "-webkit-hue-rotate", + "-webkit-hwb", + "-webkit-hypot", + "-webkit-image", + "-webkit-image-rect", + "-webkit-image-set", + "-webkit-inset", + "-webkit-invert", + "-webkit-lab", + "-webkit-layer", + "-webkit-lch", + "-webkit-leader", + "-webkit-light-dark", + "-webkit-linear", + "-webkit-linear-gradient", + "-webkit-local", + "-webkit-log", + "-webkit-matrix", + "-webkit-matrix3d", + "-webkit-max", + "-webkit-min", + "-webkit-minmax", + "-webkit-mod", + "-webkit-oklab", + "-webkit-oklch", + "-webkit-opacity", + "-webkit-ornaments", + "-webkit-paint", + "-webkit-palette-mix", + "-webkit-path", + "-webkit-perspective", + "-webkit-polygon", + "-webkit-pow", + "-webkit-radial-gradient", + "-webkit-ray", + "-webkit-rect", + "-webkit-rem", + "-webkit-repeat", + "-webkit-repeating-conic-gradient", + "-webkit-repeating-linear-gradient", + "-webkit-repeating-radial-gradient", + "-webkit-reversed", + "-webkit-rgb", + "-webkit-rgba", + "-webkit-rotate", + "-webkit-rotate3d", + "-webkit-rotateX", + "-webkit-rotateY", + "-webkit-rotateZ", + "-webkit-rotatex", + "-webkit-rotatey", + "-webkit-rotatez", + "-webkit-round", + "-webkit-saturate", + "-webkit-scale", + "-webkit-scale3d", + "-webkit-scaleX", + "-webkit-scaleY", + "-webkit-scaleZ", + "-webkit-scalex", + "-webkit-scaley", + "-webkit-scalez", + "-webkit-scroll", + "-webkit-selector", + "-webkit-sepia", + "-webkit-shape", + "-webkit-sign", + "-webkit-sin", + "-webkit-skew", + "-webkit-skewX", + "-webkit-skewY", + "-webkit-skewx", + "-webkit-skewy", + "-webkit-sqrt", + "-webkit-steps", + "-webkit-styleset", + "-webkit-stylistic", + "-webkit-swash", + "-webkit-symbols", + "-webkit-tan", + "-webkit-target-counter", + "-webkit-target-counters", + "-webkit-target-text", + "-webkit-to", + "-webkit-translate", + "-webkit-translate3d", + "-webkit-translateX", + "-webkit-translateY", + "-webkit-translateZ", + "-webkit-translatex", + "-webkit-translatey", + "-webkit-translatez", + "-webkit-type", + "-webkit-url", + "-webkit-var", + "-webkit-view", + "-webkit-xywh", + "-moz-abs", + "-moz-acos", + "-moz-anchor", + "-moz-anchor-size", + "-moz-annotation", + "-moz-asin", + "-moz-atan", + "-moz-atan2", + "-moz-attr", + "-moz-blur", + "-moz-brightness", + "-moz-calc", + "-moz-calc-size", + "-moz-character-variant", + "-moz-circle", + "-moz-clamp", + "-moz-color", + "-moz-color-contrast", + "-moz-color-mix", + "-moz-color-stop", + "-moz-conic-gradient", + "-moz-contrast", + "-moz-cos", + "-moz-counter", + "-moz-counters", + "-moz-cross-fade", + "-moz-cubic-bezier", + "-moz-device-cmyk", + "-moz-drop-shadow", + "-moz-element", + "-moz-ellipse", + "-moz-env", + "-moz-exp", + "-moz-fit-content", + "-moz-format", + "-moz-from", + "-moz-gradient", + "-moz-grayscale", + "-moz-hsl", + "-moz-hsla", + "-moz-hue-rotate", + "-moz-hwb", + "-moz-hypot", + "-moz-image", + "-moz-image-rect", + "-moz-image-set", + "-moz-inset", + "-moz-invert", + "-moz-lab", + "-moz-layer", + "-moz-lch", + "-moz-leader", + "-moz-light-dark", + "-moz-linear", + "-moz-linear-gradient", + "-moz-local", + "-moz-log", + "-moz-matrix", + "-moz-matrix3d", + "-moz-max", + "-moz-min", + "-moz-minmax", + "-moz-mod", + "-moz-oklab", + "-moz-oklch", + "-moz-opacity", + "-moz-ornaments", + "-moz-paint", + "-moz-palette-mix", + "-moz-path", + "-moz-perspective", + "-moz-polygon", + "-moz-pow", + "-moz-radial-gradient", + "-moz-ray", + "-moz-rect", + "-moz-rem", + "-moz-repeat", + "-moz-repeating-conic-gradient", + "-moz-repeating-linear-gradient", + "-moz-repeating-radial-gradient", + "-moz-reversed", + "-moz-rgb", + "-moz-rgba", + "-moz-rotate", + "-moz-rotate3d", + "-moz-rotateX", + "-moz-rotateY", + "-moz-rotateZ", + "-moz-rotatex", + "-moz-rotatey", + "-moz-rotatez", + "-moz-round", + "-moz-saturate", + "-moz-scale", + "-moz-scale3d", + "-moz-scaleX", + "-moz-scaleY", + "-moz-scaleZ", + "-moz-scalex", + "-moz-scaley", + "-moz-scalez", + "-moz-scroll", + "-moz-selector", + "-moz-sepia", + "-moz-shape", + "-moz-sign", + "-moz-sin", + "-moz-skew", + "-moz-skewX", + "-moz-skewY", + "-moz-skewx", + "-moz-skewy", + "-moz-sqrt", + "-moz-steps", + "-moz-styleset", + "-moz-stylistic", + "-moz-swash", + "-moz-symbols", + "-moz-tan", + "-moz-target-counter", + "-moz-target-counters", + "-moz-target-text", + "-moz-to", + "-moz-translate", + "-moz-translate3d", + "-moz-translateX", + "-moz-translateY", + "-moz-translateZ", + "-moz-translatex", + "-moz-translatey", + "-moz-translatez", + "-moz-type", + "-moz-url", + "-moz-var", + "-moz-view", + "-moz-xywh", + "-o-abs", + "-o-acos", + "-o-anchor", + "-o-anchor-size", + "-o-annotation", + "-o-asin", + "-o-atan", + "-o-atan2", + "-o-attr", + "-o-blur", + "-o-brightness", + "-o-calc", + "-o-calc-size", + "-o-character-variant", + "-o-circle", + "-o-clamp", + "-o-color", + "-o-color-contrast", + "-o-color-mix", + "-o-color-stop", + "-o-conic-gradient", + "-o-contrast", + "-o-cos", + "-o-counter", + "-o-counters", + "-o-cross-fade", + "-o-cubic-bezier", + "-o-device-cmyk", + "-o-drop-shadow", + "-o-element", + "-o-ellipse", + "-o-env", + "-o-exp", + "-o-fit-content", + "-o-format", + "-o-from", + "-o-gradient", + "-o-grayscale", + "-o-hsl", + "-o-hsla", + "-o-hue-rotate", + "-o-hwb", + "-o-hypot", + "-o-image", + "-o-image-rect", + "-o-image-set", + "-o-inset", + "-o-invert", + "-o-lab", + "-o-layer", + "-o-lch", + "-o-leader", + "-o-light-dark", + "-o-linear", + "-o-linear-gradient", + "-o-local", + "-o-log", + "-o-matrix", + "-o-matrix3d", + "-o-max", + "-o-min", + "-o-minmax", + "-o-mod", + "-o-oklab", + "-o-oklch", + "-o-opacity", + "-o-ornaments", + "-o-paint", + "-o-palette-mix", + "-o-path", + "-o-perspective", + "-o-polygon", + "-o-pow", + "-o-radial-gradient", + "-o-ray", + "-o-rect", + "-o-rem", + "-o-repeat", + "-o-repeating-conic-gradient", + "-o-repeating-linear-gradient", + "-o-repeating-radial-gradient", + "-o-reversed", + "-o-rgb", + "-o-rgba", + "-o-rotate", + "-o-rotate3d", + "-o-rotateX", + "-o-rotateY", + "-o-rotateZ", + "-o-rotatex", + "-o-rotatey", + "-o-rotatez", + "-o-round", + "-o-saturate", + "-o-scale", + "-o-scale3d", + "-o-scaleX", + "-o-scaleY", + "-o-scaleZ", + "-o-scalex", + "-o-scaley", + "-o-scalez", + "-o-scroll", + "-o-selector", + "-o-sepia", + "-o-shape", + "-o-sign", + "-o-sin", + "-o-skew", + "-o-skewX", + "-o-skewY", + "-o-skewx", + "-o-skewy", + "-o-sqrt", + "-o-steps", + "-o-styleset", + "-o-stylistic", + "-o-swash", + "-o-symbols", + "-o-tan", + "-o-target-counter", + "-o-target-counters", + "-o-target-text", + "-o-to", + "-o-translate", + "-o-translate3d", + "-o-translateX", + "-o-translateY", + "-o-translateZ", + "-o-translatex", + "-o-translatey", + "-o-translatez", + "-o-type", + "-o-url", + "-o-var", + "-o-view", + "-o-xywh", + "-ms-abs", + "-ms-acos", + "-ms-anchor", + "-ms-anchor-size", + "-ms-annotation", + "-ms-asin", + "-ms-atan", + "-ms-atan2", + "-ms-attr", + "-ms-blur", + "-ms-brightness", + "-ms-calc", + "-ms-calc-size", + "-ms-character-variant", + "-ms-circle", + "-ms-clamp", + "-ms-color", + "-ms-color-contrast", + "-ms-color-mix", + "-ms-color-stop", + "-ms-conic-gradient", + "-ms-contrast", + "-ms-cos", + "-ms-counter", + "-ms-counters", + "-ms-cross-fade", + "-ms-cubic-bezier", + "-ms-device-cmyk", + "-ms-drop-shadow", + "-ms-element", + "-ms-ellipse", + "-ms-env", + "-ms-exp", + "-ms-fit-content", + "-ms-format", + "-ms-from", + "-ms-gradient", + "-ms-grayscale", + "-ms-hsl", + "-ms-hsla", + "-ms-hue-rotate", + "-ms-hwb", + "-ms-hypot", + "-ms-image", + "-ms-image-rect", + "-ms-image-set", + "-ms-inset", + "-ms-invert", + "-ms-lab", + "-ms-layer", + "-ms-lch", + "-ms-leader", + "-ms-light-dark", + "-ms-linear", + "-ms-linear-gradient", + "-ms-local", + "-ms-log", + "-ms-matrix", + "-ms-matrix3d", + "-ms-max", + "-ms-min", + "-ms-minmax", + "-ms-mod", + "-ms-oklab", + "-ms-oklch", + "-ms-opacity", + "-ms-ornaments", + "-ms-paint", + "-ms-palette-mix", + "-ms-path", + "-ms-perspective", + "-ms-polygon", + "-ms-pow", + "-ms-radial-gradient", + "-ms-ray", + "-ms-rect", + "-ms-rem", + "-ms-repeat", + "-ms-repeating-conic-gradient", + "-ms-repeating-linear-gradient", + "-ms-repeating-radial-gradient", + "-ms-reversed", + "-ms-rgb", + "-ms-rgba", + "-ms-rotate", + "-ms-rotate3d", + "-ms-rotateX", + "-ms-rotateY", + "-ms-rotateZ", + "-ms-rotatex", + "-ms-rotatey", + "-ms-rotatez", + "-ms-round", + "-ms-saturate", + "-ms-scale", + "-ms-scale3d", + "-ms-scaleX", + "-ms-scaleY", + "-ms-scaleZ", + "-ms-scalex", + "-ms-scaley", + "-ms-scalez", + "-ms-scroll", + "-ms-selector", + "-ms-sepia", + "-ms-shape", + "-ms-sign", + "-ms-sin", + "-ms-skew", + "-ms-skewX", + "-ms-skewY", + "-ms-skewx", + "-ms-skewy", + "-ms-sqrt", + "-ms-steps", + "-ms-styleset", + "-ms-stylistic", + "-ms-swash", + "-ms-symbols", + "-ms-tan", + "-ms-target-counter", + "-ms-target-counters", + "-ms-target-text", + "-ms-to", + "-ms-translate", + "-ms-translate3d", + "-ms-translateX", + "-ms-translateY", + "-ms-translateZ", + "-ms-translatex", + "-ms-translatey", + "-ms-translatez", + "-ms-type", + "-ms-url", + "-ms-var", + "-ms-view", + "-ms-xywh" +] diff --git a/node_modules/css-functions-list/cjs/package.json b/node_modules/css-functions-list/cjs/package.json new file mode 100644 index 00000000..0292b995 --- /dev/null +++ b/node_modules/css-functions-list/cjs/package.json @@ -0,0 +1 @@ +{"type":"commonjs"} \ No newline at end of file diff --git a/node_modules/css-functions-list/esm/index.d.ts b/node_modules/css-functions-list/esm/index.d.ts new file mode 100644 index 00000000..c417c4bd --- /dev/null +++ b/node_modules/css-functions-list/esm/index.d.ts @@ -0,0 +1,6 @@ +export default location; +/** + * Path to CSS functions list JSON file. + */ +declare const location: string; +//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/node_modules/css-functions-list/esm/index.d.ts.map b/node_modules/css-functions-list/esm/index.d.ts.map new file mode 100644 index 00000000..a31c32c0 --- /dev/null +++ b/node_modules/css-functions-list/esm/index.d.ts.map @@ -0,0 +1 @@ +{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.js"],"names":[],"mappings":";AAEA;;GAEG;AACH,+BAAuE"} \ No newline at end of file diff --git a/node_modules/css-functions-list/esm/index.js b/node_modules/css-functions-list/esm/index.js new file mode 100644 index 00000000..0dcc67a5 --- /dev/null +++ b/node_modules/css-functions-list/esm/index.js @@ -0,0 +1,9 @@ +import { fileURLToPath, URL } from 'url'; + +/** + * Path to CSS functions list JSON file. + */ +const location = fileURLToPath(new URL('index.json', import.meta.url)); + +export { location as default }; +//# sourceMappingURL=index.js.map diff --git a/node_modules/css-functions-list/esm/index.js.map b/node_modules/css-functions-list/esm/index.js.map new file mode 100644 index 00000000..3a4e8cf1 --- /dev/null +++ b/node_modules/css-functions-list/esm/index.js.map @@ -0,0 +1 @@ +{"version":3,"file":"index.js","sources":["../index.js"],"sourcesContent":["import { URL, fileURLToPath } from 'url';\n\n/**\n * Path to CSS functions list JSON file.\n */\nconst location = fileURLToPath(new URL('index.json', import.meta.url));\n\nexport default location;\n"],"names":[],"mappings":";;AAEA;AACA;AACA;AACK,MAAC,QAAQ,GAAG,aAAa,CAAC,IAAI,GAAG,CAAC,YAAY,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;;;;"} \ No newline at end of file diff --git a/node_modules/css-functions-list/esm/index.json b/node_modules/css-functions-list/esm/index.json new file mode 100644 index 00000000..bbd96f09 --- /dev/null +++ b/node_modules/css-functions-list/esm/index.json @@ -0,0 +1,687 @@ +[ + "abs", + "acos", + "anchor", + "anchor-size", + "annotation", + "asin", + "atan", + "atan2", + "attr", + "blur", + "brightness", + "calc", + "calc-size", + "character-variant", + "circle", + "clamp", + "color", + "color-contrast", + "color-mix", + "color-stop", + "conic-gradient", + "contrast", + "cos", + "counter", + "counters", + "cross-fade", + "cubic-bezier", + "device-cmyk", + "drop-shadow", + "element", + "ellipse", + "env", + "exp", + "fit-content", + "format", + "from", + "gradient", + "grayscale", + "hsl", + "hsla", + "hue-rotate", + "hwb", + "hypot", + "image", + "image-rect", + "image-set", + "inset", + "invert", + "lab", + "layer", + "lch", + "leader", + "light-dark", + "linear", + "linear-gradient", + "local", + "log", + "matrix", + "matrix3d", + "max", + "min", + "minmax", + "mod", + "oklab", + "oklch", + "opacity", + "ornaments", + "paint", + "palette-mix", + "path", + "perspective", + "polygon", + "pow", + "radial-gradient", + "ray", + "rect", + "rem", + "repeat", + "repeating-conic-gradient", + "repeating-linear-gradient", + "repeating-radial-gradient", + "reversed", + "rgb", + "rgba", + "rotate", + "rotate3d", + "rotateX", + "rotateY", + "rotateZ", + "rotatex", + "rotatey", + "rotatez", + "round", + "saturate", + "scale", + "scale3d", + "scaleX", + "scaleY", + "scaleZ", + "scalex", + "scaley", + "scalez", + "scroll", + "selector", + "sepia", + "shape", + "sign", + "sin", + "skew", + "skewX", + "skewY", + "skewx", + "skewy", + "sqrt", + "steps", + "styleset", + "stylistic", + "swash", + "symbols", + "tan", + "target-counter", + "target-counters", + "target-text", + "to", + "translate", + "translate3d", + "translateX", + "translateY", + "translateZ", + "translatex", + "translatey", + "translatez", + "type", + "url", + "var", + "view", + "xywh", + "-webkit-abs", + "-webkit-acos", + "-webkit-anchor", + "-webkit-anchor-size", + "-webkit-annotation", + "-webkit-asin", + "-webkit-atan", + "-webkit-atan2", + "-webkit-attr", + "-webkit-blur", + "-webkit-brightness", + "-webkit-calc", + "-webkit-calc-size", + "-webkit-character-variant", + "-webkit-circle", + "-webkit-clamp", + "-webkit-color", + "-webkit-color-contrast", + "-webkit-color-mix", + "-webkit-color-stop", + "-webkit-conic-gradient", + "-webkit-contrast", + "-webkit-cos", + "-webkit-counter", + "-webkit-counters", + "-webkit-cross-fade", + "-webkit-cubic-bezier", + "-webkit-device-cmyk", + "-webkit-drop-shadow", + "-webkit-element", + "-webkit-ellipse", + "-webkit-env", + "-webkit-exp", + "-webkit-fit-content", + "-webkit-format", + "-webkit-from", + "-webkit-gradient", + "-webkit-grayscale", + "-webkit-hsl", + "-webkit-hsla", + "-webkit-hue-rotate", + "-webkit-hwb", + "-webkit-hypot", + "-webkit-image", + "-webkit-image-rect", + "-webkit-image-set", + "-webkit-inset", + "-webkit-invert", + "-webkit-lab", + "-webkit-layer", + "-webkit-lch", + "-webkit-leader", + "-webkit-light-dark", + "-webkit-linear", + "-webkit-linear-gradient", + "-webkit-local", + "-webkit-log", + "-webkit-matrix", + "-webkit-matrix3d", + "-webkit-max", + "-webkit-min", + "-webkit-minmax", + "-webkit-mod", + "-webkit-oklab", + "-webkit-oklch", + "-webkit-opacity", + "-webkit-ornaments", + "-webkit-paint", + "-webkit-palette-mix", + "-webkit-path", + "-webkit-perspective", + "-webkit-polygon", + "-webkit-pow", + "-webkit-radial-gradient", + "-webkit-ray", + "-webkit-rect", + "-webkit-rem", + "-webkit-repeat", + "-webkit-repeating-conic-gradient", + "-webkit-repeating-linear-gradient", + "-webkit-repeating-radial-gradient", + "-webkit-reversed", + "-webkit-rgb", + "-webkit-rgba", + "-webkit-rotate", + "-webkit-rotate3d", + "-webkit-rotateX", + "-webkit-rotateY", + "-webkit-rotateZ", + "-webkit-rotatex", + "-webkit-rotatey", + "-webkit-rotatez", + "-webkit-round", + "-webkit-saturate", + "-webkit-scale", + "-webkit-scale3d", + "-webkit-scaleX", + "-webkit-scaleY", + "-webkit-scaleZ", + "-webkit-scalex", + "-webkit-scaley", + "-webkit-scalez", + "-webkit-scroll", + "-webkit-selector", + "-webkit-sepia", + "-webkit-shape", + "-webkit-sign", + "-webkit-sin", + "-webkit-skew", + "-webkit-skewX", + "-webkit-skewY", + "-webkit-skewx", + "-webkit-skewy", + "-webkit-sqrt", + "-webkit-steps", + "-webkit-styleset", + "-webkit-stylistic", + "-webkit-swash", + "-webkit-symbols", + "-webkit-tan", + "-webkit-target-counter", + "-webkit-target-counters", + "-webkit-target-text", + "-webkit-to", + "-webkit-translate", + "-webkit-translate3d", + "-webkit-translateX", + "-webkit-translateY", + "-webkit-translateZ", + "-webkit-translatex", + "-webkit-translatey", + "-webkit-translatez", + "-webkit-type", + "-webkit-url", + "-webkit-var", + "-webkit-view", + "-webkit-xywh", + "-moz-abs", + "-moz-acos", + "-moz-anchor", + "-moz-anchor-size", + "-moz-annotation", + "-moz-asin", + "-moz-atan", + "-moz-atan2", + "-moz-attr", + "-moz-blur", + "-moz-brightness", + "-moz-calc", + "-moz-calc-size", + "-moz-character-variant", + "-moz-circle", + "-moz-clamp", + "-moz-color", + "-moz-color-contrast", + "-moz-color-mix", + "-moz-color-stop", + "-moz-conic-gradient", + "-moz-contrast", + "-moz-cos", + "-moz-counter", + "-moz-counters", + "-moz-cross-fade", + "-moz-cubic-bezier", + "-moz-device-cmyk", + "-moz-drop-shadow", + "-moz-element", + "-moz-ellipse", + "-moz-env", + "-moz-exp", + "-moz-fit-content", + "-moz-format", + "-moz-from", + "-moz-gradient", + "-moz-grayscale", + "-moz-hsl", + "-moz-hsla", + "-moz-hue-rotate", + "-moz-hwb", + "-moz-hypot", + "-moz-image", + "-moz-image-rect", + "-moz-image-set", + "-moz-inset", + "-moz-invert", + "-moz-lab", + "-moz-layer", + "-moz-lch", + "-moz-leader", + "-moz-light-dark", + "-moz-linear", + "-moz-linear-gradient", + "-moz-local", + "-moz-log", + "-moz-matrix", + "-moz-matrix3d", + "-moz-max", + "-moz-min", + "-moz-minmax", + "-moz-mod", + "-moz-oklab", + "-moz-oklch", + "-moz-opacity", + "-moz-ornaments", + "-moz-paint", + "-moz-palette-mix", + "-moz-path", + "-moz-perspective", + "-moz-polygon", + "-moz-pow", + "-moz-radial-gradient", + "-moz-ray", + "-moz-rect", + "-moz-rem", + "-moz-repeat", + "-moz-repeating-conic-gradient", + "-moz-repeating-linear-gradient", + "-moz-repeating-radial-gradient", + "-moz-reversed", + "-moz-rgb", + "-moz-rgba", + "-moz-rotate", + "-moz-rotate3d", + "-moz-rotateX", + "-moz-rotateY", + "-moz-rotateZ", + "-moz-rotatex", + "-moz-rotatey", + "-moz-rotatez", + "-moz-round", + "-moz-saturate", + "-moz-scale", + "-moz-scale3d", + "-moz-scaleX", + "-moz-scaleY", + "-moz-scaleZ", + "-moz-scalex", + "-moz-scaley", + "-moz-scalez", + "-moz-scroll", + "-moz-selector", + "-moz-sepia", + "-moz-shape", + "-moz-sign", + "-moz-sin", + "-moz-skew", + "-moz-skewX", + "-moz-skewY", + "-moz-skewx", + "-moz-skewy", + "-moz-sqrt", + "-moz-steps", + "-moz-styleset", + "-moz-stylistic", + "-moz-swash", + "-moz-symbols", + "-moz-tan", + "-moz-target-counter", + "-moz-target-counters", + "-moz-target-text", + "-moz-to", + "-moz-translate", + "-moz-translate3d", + "-moz-translateX", + "-moz-translateY", + "-moz-translateZ", + "-moz-translatex", + "-moz-translatey", + "-moz-translatez", + "-moz-type", + "-moz-url", + "-moz-var", + "-moz-view", + "-moz-xywh", + "-o-abs", + "-o-acos", + "-o-anchor", + "-o-anchor-size", + "-o-annotation", + "-o-asin", + "-o-atan", + "-o-atan2", + "-o-attr", + "-o-blur", + "-o-brightness", + "-o-calc", + "-o-calc-size", + "-o-character-variant", + "-o-circle", + "-o-clamp", + "-o-color", + "-o-color-contrast", + "-o-color-mix", + "-o-color-stop", + "-o-conic-gradient", + "-o-contrast", + "-o-cos", + "-o-counter", + "-o-counters", + "-o-cross-fade", + "-o-cubic-bezier", + "-o-device-cmyk", + "-o-drop-shadow", + "-o-element", + "-o-ellipse", + "-o-env", + "-o-exp", + "-o-fit-content", + "-o-format", + "-o-from", + "-o-gradient", + "-o-grayscale", + "-o-hsl", + "-o-hsla", + "-o-hue-rotate", + "-o-hwb", + "-o-hypot", + "-o-image", + "-o-image-rect", + "-o-image-set", + "-o-inset", + "-o-invert", + "-o-lab", + "-o-layer", + "-o-lch", + "-o-leader", + "-o-light-dark", + "-o-linear", + "-o-linear-gradient", + "-o-local", + "-o-log", + "-o-matrix", + "-o-matrix3d", + "-o-max", + "-o-min", + "-o-minmax", + "-o-mod", + "-o-oklab", + "-o-oklch", + "-o-opacity", + "-o-ornaments", + "-o-paint", + "-o-palette-mix", + "-o-path", + "-o-perspective", + "-o-polygon", + "-o-pow", + "-o-radial-gradient", + "-o-ray", + "-o-rect", + "-o-rem", + "-o-repeat", + "-o-repeating-conic-gradient", + "-o-repeating-linear-gradient", + "-o-repeating-radial-gradient", + "-o-reversed", + "-o-rgb", + "-o-rgba", + "-o-rotate", + "-o-rotate3d", + "-o-rotateX", + "-o-rotateY", + "-o-rotateZ", + "-o-rotatex", + "-o-rotatey", + "-o-rotatez", + "-o-round", + "-o-saturate", + "-o-scale", + "-o-scale3d", + "-o-scaleX", + "-o-scaleY", + "-o-scaleZ", + "-o-scalex", + "-o-scaley", + "-o-scalez", + "-o-scroll", + "-o-selector", + "-o-sepia", + "-o-shape", + "-o-sign", + "-o-sin", + "-o-skew", + "-o-skewX", + "-o-skewY", + "-o-skewx", + "-o-skewy", + "-o-sqrt", + "-o-steps", + "-o-styleset", + "-o-stylistic", + "-o-swash", + "-o-symbols", + "-o-tan", + "-o-target-counter", + "-o-target-counters", + "-o-target-text", + "-o-to", + "-o-translate", + "-o-translate3d", + "-o-translateX", + "-o-translateY", + "-o-translateZ", + "-o-translatex", + "-o-translatey", + "-o-translatez", + "-o-type", + "-o-url", + "-o-var", + "-o-view", + "-o-xywh", + "-ms-abs", + "-ms-acos", + "-ms-anchor", + "-ms-anchor-size", + "-ms-annotation", + "-ms-asin", + "-ms-atan", + "-ms-atan2", + "-ms-attr", + "-ms-blur", + "-ms-brightness", + "-ms-calc", + "-ms-calc-size", + "-ms-character-variant", + "-ms-circle", + "-ms-clamp", + "-ms-color", + "-ms-color-contrast", + "-ms-color-mix", + "-ms-color-stop", + "-ms-conic-gradient", + "-ms-contrast", + "-ms-cos", + "-ms-counter", + "-ms-counters", + "-ms-cross-fade", + "-ms-cubic-bezier", + "-ms-device-cmyk", + "-ms-drop-shadow", + "-ms-element", + "-ms-ellipse", + "-ms-env", + "-ms-exp", + "-ms-fit-content", + "-ms-format", + "-ms-from", + "-ms-gradient", + "-ms-grayscale", + "-ms-hsl", + "-ms-hsla", + "-ms-hue-rotate", + "-ms-hwb", + "-ms-hypot", + "-ms-image", + "-ms-image-rect", + "-ms-image-set", + "-ms-inset", + "-ms-invert", + "-ms-lab", + "-ms-layer", + "-ms-lch", + "-ms-leader", + "-ms-light-dark", + "-ms-linear", + "-ms-linear-gradient", + "-ms-local", + "-ms-log", + "-ms-matrix", + "-ms-matrix3d", + "-ms-max", + "-ms-min", + "-ms-minmax", + "-ms-mod", + "-ms-oklab", + "-ms-oklch", + "-ms-opacity", + "-ms-ornaments", + "-ms-paint", + "-ms-palette-mix", + "-ms-path", + "-ms-perspective", + "-ms-polygon", + "-ms-pow", + "-ms-radial-gradient", + "-ms-ray", + "-ms-rect", + "-ms-rem", + "-ms-repeat", + "-ms-repeating-conic-gradient", + "-ms-repeating-linear-gradient", + "-ms-repeating-radial-gradient", + "-ms-reversed", + "-ms-rgb", + "-ms-rgba", + "-ms-rotate", + "-ms-rotate3d", + "-ms-rotateX", + "-ms-rotateY", + "-ms-rotateZ", + "-ms-rotatex", + "-ms-rotatey", + "-ms-rotatez", + "-ms-round", + "-ms-saturate", + "-ms-scale", + "-ms-scale3d", + "-ms-scaleX", + "-ms-scaleY", + "-ms-scaleZ", + "-ms-scalex", + "-ms-scaley", + "-ms-scalez", + "-ms-scroll", + "-ms-selector", + "-ms-sepia", + "-ms-shape", + "-ms-sign", + "-ms-sin", + "-ms-skew", + "-ms-skewX", + "-ms-skewY", + "-ms-skewx", + "-ms-skewy", + "-ms-sqrt", + "-ms-steps", + "-ms-styleset", + "-ms-stylistic", + "-ms-swash", + "-ms-symbols", + "-ms-tan", + "-ms-target-counter", + "-ms-target-counters", + "-ms-target-text", + "-ms-to", + "-ms-translate", + "-ms-translate3d", + "-ms-translateX", + "-ms-translateY", + "-ms-translateZ", + "-ms-translatex", + "-ms-translatey", + "-ms-translatez", + "-ms-type", + "-ms-url", + "-ms-var", + "-ms-view", + "-ms-xywh" +] diff --git a/node_modules/css-functions-list/esm/package.json b/node_modules/css-functions-list/esm/package.json new file mode 100644 index 00000000..7c34deb5 --- /dev/null +++ b/node_modules/css-functions-list/esm/package.json @@ -0,0 +1 @@ +{"type":"module"} \ No newline at end of file diff --git a/node_modules/css-functions-list/package.json b/node_modules/css-functions-list/package.json new file mode 100644 index 00000000..468e64b3 --- /dev/null +++ b/node_modules/css-functions-list/package.json @@ -0,0 +1,88 @@ +{ + "name": "css-functions-list", + "version": "3.2.3", + "description": "List of standard and browser specific CSS functions.", + "license": "MIT", + "author": "Ivan Nikolić (http://ivannikolic.com)", + "sideEffects": false, + "type": "module", + "exports": { + ".": { + "import": "./esm/index.js", + "require": "./cjs/index.js" + }, + "./index.json": { + "import": "./esm/index.json", + "require": "./cjs/index.json" + }, + "./package.json": "./package.json" + }, + "main": "cjs/index.js", + "module": "esm/index.js", + "types": "esm/index.d.ts", + "directories": { + "test": "test" + }, + "files": [ + "cjs/", + "esm/", + "CHANGELOG.md", + "LICENSE.md", + "README.md" + ], + "scripts": { + "generate-list": "node generate-list.js", + "release": "np --no-release-draft", + "version": "if [ $(git rev-parse --abbrev-ref HEAD) == 'master' ]; then sed -i '' '/\\[unreleased\\]:/d' CHANGELOG.md && version-changelog CHANGELOG.md && changelog-verify CHANGELOG.md && git add CHANGELOG.md; else echo; fi", + "postpublish": "GITHUB_TOKEN=$GITHUB_RELEASE_TOKEN github-release-from-changelog", + "lint": "eslint '{index,lib/**/*,test/**/*,generate-list}.js'", + "test": "mocha 'test/**/*.js'", + "test:watch": "npm test -- --watch", + "build": "rollup --config rollup.config.js", + "module-check": "node -e 'require(\"css-functions-list\");' && node --input-type=module -e 'import \"css-functions-list\";'", + "prepublishOnly": "npm run build", + "lint:types": "tsc", + "prerelease": "npm run lint && npm run lint:types && npm run build && npm run module-check" + }, + "devDependencies": { + "@types/jsdom": "^16.2.13", + "@types/mocha": "^9.0.0", + "@types/node": "^16.3.0", + "@types/node-fetch": "^2.5.12", + "changelog-verify": "^1.1.2", + "cpy": "^8.1.2", + "eslint": "^8.5.0", + "eslint-config-nitpick": "^11.1.0", + "eslint-config-prettier": "^8.3.0", + "eslint-plugin-prettier": "^4.0.0", + "execa": "^5.1.1", + "github-release-from-changelog": "^2.1.1", + "husky": "^4.3.0", + "isomorphic-unfetch": "^3.1.0", + "jsdom": "^17.0.0", + "lint-staged": "^10.4.2", + "mocha": "^10.2.0", + "np": "^7.6.0", + "prettier": "^2.4.0", + "rollup": "^2.32.1", + "typescript": "^4.3.5", + "version-changelog": "^3.1.1", + "write-json-file": "^4.3.0" + }, + "engines": { + "node": ">=12 || >=16" + }, + "keywords": [ + "css", + "functions", + "list" + ], + "repository": { + "type": "git", + "url": "git+https://github.com/niksy/css-functions-list.git" + }, + "bugs": { + "url": "https://github.com/niksy/css-functions-list/issues" + }, + "homepage": "https://github.com/niksy/css-functions-list#readme" +} diff --git a/node_modules/css-tree/LICENSE b/node_modules/css-tree/LICENSE new file mode 100644 index 00000000..c627ec09 --- /dev/null +++ b/node_modules/css-tree/LICENSE @@ -0,0 +1,19 @@ +Copyright (C) 2016-2024 by Roman Dvornov + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. diff --git a/node_modules/css-tree/README.md b/node_modules/css-tree/README.md new file mode 100644 index 00000000..92e6f15c --- /dev/null +++ b/node_modules/css-tree/README.md @@ -0,0 +1,192 @@ +CSSTree logo + +# CSSTree + +[![NPM version](https://img.shields.io/npm/v/css-tree.svg)](https://www.npmjs.com/package/css-tree) +[![Build Status](https://github.com/csstree/csstree/actions/workflows/build.yml/badge.svg)](https://github.com/csstree/csstree/actions/workflows/build.yml) +[![Coverage Status](https://coveralls.io/repos/github/csstree/csstree/badge.svg?branch=master)](https://coveralls.io/github/csstree/csstree?branch=master) +[![NPM Downloads](https://img.shields.io/npm/dm/css-tree.svg)](https://www.npmjs.com/package/css-tree) +[![Twitter](https://img.shields.io/badge/Twitter-@csstree-blue.svg)](https://twitter.com/csstree) + +CSSTree is a tool set for CSS: [fast](https://github.com/postcss/benchmark) detailed parser (CSS → AST), walker (AST traversal), generator (AST → CSS) and lexer (validation and matching) based on specs and browser implementations. The main goal is to be efficient and W3C spec compliant, with focus on CSS analyzing and source-to-source transforming tasks. + +## Features + +- **Detailed parsing with an adjustable level of detail** + + By default CSSTree parses CSS as detailed as possible, i.e. each single logical part is representing with its own AST node (see [AST format](docs/ast.md) for all possible node types). The parsing detail level can be changed through [parser options](docs/parsing.md#parsesource-options), for example, you can disable parsing of selectors or declaration values for component parts. + +- **Tolerant to errors by design** + + Parser behaves as [spec says](https://www.w3.org/TR/css-syntax-3/#error-handling): "When errors occur in CSS, the parser attempts to recover gracefully, throwing away only the minimum amount of content before returning to parsing as normal". The only thing the parser departs from the specification is that it doesn't throw away bad content, but wraps it in a special node type (`Raw`) that allows processing it later. + +- **Fast and efficient** + + CSSTree is created with focus on performance and effective memory consumption. Therefore it's [one of the fastest CSS parsers](https://github.com/postcss/benchmark) at the moment. + +- **Syntax validation** + + The built-in lexer can test CSS against syntaxes defined by W3C. CSSTree uses [mdn/data](https://github.com/mdn/data/) as a basis for lexer's dictionaries and extends it with vendor specific and legacy syntaxes. Lexer can only check the declaration values and at-rules currently, but this feature will be extended to other parts of the CSS in the future. + +## Projects using CSSTree + +- [Svelte](https://github.com/sveltejs/svelte) – Cybernetically enhanced web apps +- [SVGO](https://github.com/svg/svgo) – Node.js tool for optimizing SVG files +- [CSSO](https://github.com/css/csso) – CSS minifier with structural optimizations +- [NativeScript](https://github.com/NativeScript/NativeScript) – NativeScript empowers you to access native APIs from JavaScript directly +- [react-native-svg](https://github.com/react-native-svg/react-native-svg) – SVG library for React Native, React Native Web, and plain React web projects +- [penthouse](https://github.com/pocketjoso/penthouse) – Critical Path CSS Generator +- [Bit](https://github.com/teambit/bit) – Bit is the platform for collaborating on components +- and more... + +## Documentation + +- [AST format](docs/ast.md) +- [Parsing CSS → AST](docs/parsing.md) + - [parse(source[, options])](docs/parsing.md#parsesource-options) +- [Serialization AST → CSS](docs/generate.md) + - [generate(ast[, options])](docs/generate.md#generateast-options) +- [AST traversal](docs/traversal.md) + - [walk(ast, options)](docs/traversal.md#walkast-options) + - [find(ast, fn)](docs/traversal.md#findast-fn) + - [findLast(ast, fn)](docs/traversal.md#findlastast-fn) + - [findAll(ast, fn)](docs/traversal.md#findallast-fn) +- [Util functions](docs/utils.md) + - Value encoding & decoding + - [property(name)](docs/utils.md#propertyname) + - [keyword(name)](docs/utils.md#keywordname) + - [ident](docs/utils.md#ident) + - [string](docs/utils.md#string) + - [url](docs/utils.md#url) + - [List class](docs/list.md) + - AST transforming + - [clone(ast)](docs/utils.md#cloneast) + - [fromPlainObject(object)](docs/utils.md#fromplainobjectobject) + - [toPlainObject(ast)](docs/utils.md#toplainobjectast) +- [Value Definition Syntax](docs/definition-syntax.md) + - [parse(source)](docs/definition-syntax.md#parsesource) + - [walk(node, options, context)](docs/definition-syntax.md#walknode-options-context) + - [generate(node, options)](docs/definition-syntax.md#generatenode-options) + - [AST format](docs/definition-syntax.md#ast-format) + +## Tools + +* [AST Explorer](https://astexplorer.net/#/gist/244e2fb4da940df52bf0f4b94277db44/e79aff44611020b22cfd9708f3a99ce09b7d67a8) – explore CSSTree AST format with zero setup +* [CSS syntax reference](https://csstree.github.io/docs/syntax.html) +* [CSS syntax validator](https://csstree.github.io/docs/validator.html) + +## Related projects + +* [csstree-validator](https://github.com/csstree/validator) – NPM package to validate CSS +* [stylelint-csstree-validator](https://github.com/csstree/stylelint-validator) – plugin for stylelint to validate CSS +* [Grunt plugin](https://github.com/sergejmueller/grunt-csstree-validator) +* [Gulp plugin](https://github.com/csstree/gulp-csstree) +* [Sublime plugin](https://github.com/csstree/SublimeLinter-contrib-csstree) +* [VS Code plugin](https://github.com/csstree/vscode-plugin) +* [Atom plugin](https://github.com/csstree/atom-plugin) + +## Usage + +Install with npm: + +``` +npm install css-tree +``` + +Basic usage: + +```js +import * as csstree from 'css-tree'; + +// parse CSS to AST +const ast = csstree.parse('.example { world: "!" }'); + +// traverse AST and modify it +csstree.walk(ast, (node) => { + if (node.type === 'ClassSelector' && node.name === 'example') { + node.name = 'hello'; + } +}); + +// generate CSS from AST +console.log(csstree.generate(ast)); +// .hello{world:"!"} +``` + +Syntax matching: + +```js +// parse CSS to AST as a declaration value +const ast = csstree.parse('red 1px solid', { context: 'value' }); + +// match to syntax of `border` property +const matchResult = csstree.lexer.matchProperty('border', ast); + +// check first value node is a +console.log(matchResult.isType(ast.children.first, 'color')); +// true + +// get a type list matched to a node +console.log(matchResult.getTrace(ast.children.first)); +// [ { type: 'Property', name: 'border' }, +// { type: 'Type', name: 'color' }, +// { type: 'Type', name: 'named-color' }, +// { type: 'Keyword', name: 'red' } ] +``` + +### Exports + +Is it possible to import just a needed part of library like a parser or a walker. That's might useful for loading time or bundle size optimisations. + +```js +import * as tokenizer from 'css-tree/tokenizer'; +import * as parser from 'css-tree/parser'; +import * as walker from 'css-tree/walker'; +import * as lexer from 'css-tree/lexer'; +import * as definitionSyntax from 'css-tree/definition-syntax'; +import * as data from 'css-tree/definition-syntax-data'; +import * as dataPatch from 'css-tree/definition-syntax-data-patch'; +import * as utils from 'css-tree/utils'; +``` + +### Using in a browser + +Bundles are available for use in a browser: + +- `dist/csstree.js` – minified IIFE with `csstree` as global +```html + + +``` + +- `dist/csstree.esm.js` – minified ES module +```html + +``` + +One of CDN services like `unpkg` or `jsDelivr` can be used. By default (for short path) a ESM version is exposing. For IIFE version a full path to a bundle should be specified: + +```html + + + + + + +``` + +## Top level API + +![API map](https://cdn.rawgit.com/csstree/csstree/aaf327e/docs/api-map.svg) + +## License + +MIT diff --git a/node_modules/css-tree/cjs/convertor/create.cjs b/node_modules/css-tree/cjs/convertor/create.cjs new file mode 100644 index 00000000..55c655b2 --- /dev/null +++ b/node_modules/css-tree/cjs/convertor/create.cjs @@ -0,0 +1,32 @@ +'use strict'; + +const List = require('../utils/List.cjs'); + +function createConvertor(walk) { + return { + fromPlainObject(ast) { + walk(ast, { + enter(node) { + if (node.children && node.children instanceof List.List === false) { + node.children = new List.List().fromArray(node.children); + } + } + }); + + return ast; + }, + toPlainObject(ast) { + walk(ast, { + leave(node) { + if (node.children && node.children instanceof List.List) { + node.children = node.children.toArray(); + } + } + }); + + return ast; + } + }; +} + +exports.createConvertor = createConvertor; diff --git a/node_modules/css-tree/cjs/convertor/index.cjs b/node_modules/css-tree/cjs/convertor/index.cjs new file mode 100644 index 00000000..66542785 --- /dev/null +++ b/node_modules/css-tree/cjs/convertor/index.cjs @@ -0,0 +1,8 @@ +'use strict'; + +const create = require('./create.cjs'); +const index$1 = require('../walker/index.cjs'); + +const index = create.createConvertor(index$1); + +module.exports = index; diff --git a/node_modules/css-tree/cjs/data-patch.cjs b/node_modules/css-tree/cjs/data-patch.cjs new file mode 100644 index 00000000..9103ea4c --- /dev/null +++ b/node_modules/css-tree/cjs/data-patch.cjs @@ -0,0 +1,7 @@ +'use strict'; + +const patch = require('../data/patch.json'); + +const patch$1 = patch; + +module.exports = patch$1; diff --git a/node_modules/css-tree/cjs/data.cjs b/node_modules/css-tree/cjs/data.cjs new file mode 100644 index 00000000..258ac6a3 --- /dev/null +++ b/node_modules/css-tree/cjs/data.cjs @@ -0,0 +1,120 @@ +'use strict'; + +const dataPatch = require('./data-patch.cjs'); + +const mdnAtrules = require('mdn-data/css/at-rules.json'); +const mdnProperties = require('mdn-data/css/properties.json'); +const mdnSyntaxes = require('mdn-data/css/syntaxes.json'); + +const hasOwn = Object.hasOwn || ((object, property) => Object.prototype.hasOwnProperty.call(object, property)); +const extendSyntax = /^\s*\|\s*/; + +function preprocessAtrules(dict) { + const result = Object.create(null); + + for (const [atruleName, atrule] of Object.entries(dict)) { + let descriptors = null; + + if (atrule.descriptors) { + descriptors = Object.create(null); + + for (const [name, descriptor] of Object.entries(atrule.descriptors)) { + descriptors[name] = descriptor.syntax; + } + } + + result[atruleName.substr(1)] = { + prelude: atrule.syntax.trim().replace(/\{(.|\s)+\}/, '').match(/^@\S+\s+([^;\{]*)/)[1].trim() || null, + descriptors + }; + } + + return result; +} + +function patchDictionary(dict, patchDict) { + const result = Object.create(null); + + // copy all syntaxes for an original dict + for (const [key, value] of Object.entries(dict)) { + if (value) { + result[key] = value.syntax || value; + } + } + + // apply a patch + for (const key of Object.keys(patchDict)) { + if (hasOwn(dict, key)) { + if (patchDict[key].syntax) { + result[key] = extendSyntax.test(patchDict[key].syntax) + ? result[key] + ' ' + patchDict[key].syntax.trim() + : patchDict[key].syntax; + } else { + delete result[key]; + } + } else { + if (patchDict[key].syntax) { + result[key] = patchDict[key].syntax.replace(extendSyntax, ''); + } + } + } + + return result; +} + +function preprocessPatchAtrulesDescritors(declarations) { + const result = {}; + + for (const [key, value] of Object.entries(declarations || {})) { + result[key] = typeof value === 'string' + ? { syntax: value } + : value; + } + + return result; +} + +function patchAtrules(dict, patchDict) { + const result = {}; + + // copy all syntaxes for an original dict + for (const key in dict) { + if (patchDict[key] === null) { + continue; + } + + const atrulePatch = patchDict[key] || {}; + + result[key] = { + prelude: key in patchDict && 'prelude' in atrulePatch + ? atrulePatch.prelude + : dict[key].prelude || null, + descriptors: patchDictionary( + dict[key].descriptors || {}, + preprocessPatchAtrulesDescritors(atrulePatch.descriptors) + ) + }; + } + + // apply a patch + for (const [key, atrulePatch] of Object.entries(patchDict)) { + if (atrulePatch && !hasOwn(dict, key)) { + result[key] = { + prelude: atrulePatch.prelude || null, + descriptors: atrulePatch.descriptors + ? patchDictionary({}, preprocessPatchAtrulesDescritors(atrulePatch.descriptors)) + : null + }; + } + } + + return result; +} + +const definitions = { + types: patchDictionary(mdnSyntaxes, dataPatch.types), + atrules: patchAtrules(preprocessAtrules(mdnAtrules), dataPatch.atrules), + properties: patchDictionary(mdnProperties, dataPatch.properties) +}; + +module.exports = definitions; diff --git a/node_modules/css-tree/cjs/definition-syntax/SyntaxError.cjs b/node_modules/css-tree/cjs/definition-syntax/SyntaxError.cjs new file mode 100644 index 00000000..d24e7ced --- /dev/null +++ b/node_modules/css-tree/cjs/definition-syntax/SyntaxError.cjs @@ -0,0 +1,16 @@ +'use strict'; + +const createCustomError = require('../utils/create-custom-error.cjs'); + +function SyntaxError(message, input, offset) { + return Object.assign(createCustomError.createCustomError('SyntaxError', message), { + input, + offset, + rawMessage: message, + message: message + '\n' + + ' ' + input + '\n' + + '--' + new Array((offset || input.length) + 1).join('-') + '^' + }); +} + +exports.SyntaxError = SyntaxError; diff --git a/node_modules/css-tree/cjs/definition-syntax/generate.cjs b/node_modules/css-tree/cjs/definition-syntax/generate.cjs new file mode 100644 index 00000000..ff9f0ad4 --- /dev/null +++ b/node_modules/css-tree/cjs/definition-syntax/generate.cjs @@ -0,0 +1,139 @@ +'use strict'; + +function noop(value) { + return value; +} + +function generateMultiplier(multiplier) { + const { min, max, comma } = multiplier; + + if (min === 0 && max === 0) { + return comma ? '#?' : '*'; + } + + if (min === 0 && max === 1) { + return '?'; + } + + if (min === 1 && max === 0) { + return comma ? '#' : '+'; + } + + if (min === 1 && max === 1) { + return ''; + } + + return ( + (comma ? '#' : '') + + (min === max + ? '{' + min + '}' + : '{' + min + ',' + (max !== 0 ? max : '') + '}' + ) + ); +} + +function generateTypeOpts(node) { + switch (node.type) { + case 'Range': + return ( + ' [' + + (node.min === null ? '-∞' : node.min) + + ',' + + (node.max === null ? '∞' : node.max) + + ']' + ); + + default: + throw new Error('Unknown node type `' + node.type + '`'); + } +} + +function generateSequence(node, decorate, forceBraces, compact) { + const combinator = node.combinator === ' ' || compact ? node.combinator : ' ' + node.combinator + ' '; + const result = node.terms + .map(term => internalGenerate(term, decorate, forceBraces, compact)) + .join(combinator); + + if (node.explicit || forceBraces) { + return (compact || result[0] === ',' ? '[' : '[ ') + result + (compact ? ']' : ' ]'); + } + + return result; +} + +function internalGenerate(node, decorate, forceBraces, compact) { + let result; + + switch (node.type) { + case 'Group': + result = + generateSequence(node, decorate, forceBraces, compact) + + (node.disallowEmpty ? '!' : ''); + break; + + case 'Multiplier': + // return since node is a composition + return ( + internalGenerate(node.term, decorate, forceBraces, compact) + + decorate(generateMultiplier(node), node) + ); + + case 'Boolean': + result = ''; + break; + + case 'Type': + result = '<' + node.name + (node.opts ? decorate(generateTypeOpts(node.opts), node.opts) : '') + '>'; + break; + + case 'Property': + result = '<\'' + node.name + '\'>'; + break; + + case 'Keyword': + result = node.name; + break; + + case 'AtKeyword': + result = '@' + node.name; + break; + + case 'Function': + result = node.name + '('; + break; + + case 'String': + case 'Token': + result = node.value; + break; + + case 'Comma': + result = ','; + break; + + default: + throw new Error('Unknown node type `' + node.type + '`'); + } + + return decorate(result, node); +} + +function generate(node, options) { + let decorate = noop; + let forceBraces = false; + let compact = false; + + if (typeof options === 'function') { + decorate = options; + } else if (options) { + forceBraces = Boolean(options.forceBraces); + compact = Boolean(options.compact); + if (typeof options.decorate === 'function') { + decorate = options.decorate; + } + } + + return internalGenerate(node, decorate, forceBraces, compact); +} + +exports.generate = generate; diff --git a/node_modules/css-tree/cjs/definition-syntax/index.cjs b/node_modules/css-tree/cjs/definition-syntax/index.cjs new file mode 100644 index 00000000..0afb505c --- /dev/null +++ b/node_modules/css-tree/cjs/definition-syntax/index.cjs @@ -0,0 +1,13 @@ +'use strict'; + +const SyntaxError = require('./SyntaxError.cjs'); +const generate = require('./generate.cjs'); +const parse = require('./parse.cjs'); +const walk = require('./walk.cjs'); + + + +exports.SyntaxError = SyntaxError.SyntaxError; +exports.generate = generate.generate; +exports.parse = parse.parse; +exports.walk = walk.walk; diff --git a/node_modules/css-tree/cjs/definition-syntax/parse.cjs b/node_modules/css-tree/cjs/definition-syntax/parse.cjs new file mode 100644 index 00000000..b17b2679 --- /dev/null +++ b/node_modules/css-tree/cjs/definition-syntax/parse.cjs @@ -0,0 +1,556 @@ +'use strict'; + +const scanner = require('./scanner.cjs'); + +const TAB = 9; +const N = 10; +const F = 12; +const R = 13; +const SPACE = 32; +const EXCLAMATIONMARK = 33; // ! +const NUMBERSIGN = 35; // # +const AMPERSAND = 38; // & +const APOSTROPHE = 39; // ' +const LEFTPARENTHESIS = 40; // ( +const RIGHTPARENTHESIS = 41; // ) +const ASTERISK = 42; // * +const PLUSSIGN = 43; // + +const COMMA = 44; // , +const HYPERMINUS = 45; // - +const LESSTHANSIGN = 60; // < +const GREATERTHANSIGN = 62; // > +const QUESTIONMARK = 63; // ? +const COMMERCIALAT = 64; // @ +const LEFTSQUAREBRACKET = 91; // [ +const RIGHTSQUAREBRACKET = 93; // ] +const LEFTCURLYBRACKET = 123; // { +const VERTICALLINE = 124; // | +const RIGHTCURLYBRACKET = 125; // } +const INFINITY = 8734; // ∞ +const COMBINATOR_PRECEDENCE = { + ' ': 1, + '&&': 2, + '||': 3, + '|': 4 +}; + +function readMultiplierRange(scanner) { + let min = null; + let max = null; + + scanner.eat(LEFTCURLYBRACKET); + scanner.skipWs(); + + min = scanner.scanNumber(scanner); + scanner.skipWs(); + + if (scanner.charCode() === COMMA) { + scanner.pos++; + scanner.skipWs(); + + if (scanner.charCode() !== RIGHTCURLYBRACKET) { + max = scanner.scanNumber(scanner); + scanner.skipWs(); + } + } else { + max = min; + } + + scanner.eat(RIGHTCURLYBRACKET); + + return { + min: Number(min), + max: max ? Number(max) : 0 + }; +} + +function readMultiplier(scanner) { + let range = null; + let comma = false; + + switch (scanner.charCode()) { + case ASTERISK: + scanner.pos++; + + range = { + min: 0, + max: 0 + }; + + break; + + case PLUSSIGN: + scanner.pos++; + + range = { + min: 1, + max: 0 + }; + + break; + + case QUESTIONMARK: + scanner.pos++; + + range = { + min: 0, + max: 1 + }; + + break; + + case NUMBERSIGN: + scanner.pos++; + + comma = true; + + if (scanner.charCode() === LEFTCURLYBRACKET) { + range = readMultiplierRange(scanner); + } else if (scanner.charCode() === QUESTIONMARK) { + // https://www.w3.org/TR/css-values-4/#component-multipliers + // > the # and ? multipliers may be stacked as #? + // In this case just treat "#?" as a single multiplier + // { min: 0, max: 0, comma: true } + scanner.pos++; + range = { + min: 0, + max: 0 + }; + } else { + range = { + min: 1, + max: 0 + }; + } + + break; + + case LEFTCURLYBRACKET: + range = readMultiplierRange(scanner); + break; + + default: + return null; + } + + return { + type: 'Multiplier', + comma, + min: range.min, + max: range.max, + term: null + }; +} + +function maybeMultiplied(scanner, node) { + const multiplier = readMultiplier(scanner); + + if (multiplier !== null) { + multiplier.term = node; + + // https://www.w3.org/TR/css-values-4/#component-multipliers + // > The + and # multipliers may be stacked as +#; + // Represent "+#" as nested multipliers: + // { ..., + // term: { + // ..., + // term: node + // } + // } + if (scanner.charCode() === NUMBERSIGN && + scanner.charCodeAt(scanner.pos - 1) === PLUSSIGN) { + return maybeMultiplied(scanner, multiplier); + } + + return multiplier; + } + + return node; +} + +function maybeToken(scanner) { + const ch = scanner.peek(); + + if (ch === '') { + return null; + } + + return maybeMultiplied(scanner, { + type: 'Token', + value: ch + }); +} + +function readProperty(scanner) { + let name; + + scanner.eat(LESSTHANSIGN); + scanner.eat(APOSTROPHE); + + name = scanner.scanWord(); + + scanner.eat(APOSTROPHE); + scanner.eat(GREATERTHANSIGN); + + return maybeMultiplied(scanner, { + type: 'Property', + name + }); +} + +// https://drafts.csswg.org/css-values-3/#numeric-ranges +// 4.1. Range Restrictions and Range Definition Notation +// +// Range restrictions can be annotated in the numeric type notation using CSS bracketed +// range notation—[min,max]—within the angle brackets, after the identifying keyword, +// indicating a closed range between (and including) min and max. +// For example, indicates an integer between 0 and 10, inclusive. +function readTypeRange(scanner) { + // use null for Infinity to make AST format JSON serializable/deserializable + let min = null; // -Infinity + let max = null; // Infinity + let sign = 1; + + scanner.eat(LEFTSQUAREBRACKET); + + if (scanner.charCode() === HYPERMINUS) { + scanner.peek(); + sign = -1; + } + + if (sign == -1 && scanner.charCode() === INFINITY) { + scanner.peek(); + } else { + min = sign * Number(scanner.scanNumber(scanner)); + + if (scanner.isNameCharCode()) { + min += scanner.scanWord(); + } + } + + scanner.skipWs(); + scanner.eat(COMMA); + scanner.skipWs(); + + if (scanner.charCode() === INFINITY) { + scanner.peek(); + } else { + sign = 1; + + if (scanner.charCode() === HYPERMINUS) { + scanner.peek(); + sign = -1; + } + + max = sign * Number(scanner.scanNumber(scanner)); + + if (scanner.isNameCharCode()) { + max += scanner.scanWord(); + } + } + + scanner.eat(RIGHTSQUAREBRACKET); + + return { + type: 'Range', + min, + max + }; +} + +function readType(scanner) { + let name; + let opts = null; + + scanner.eat(LESSTHANSIGN); + name = scanner.scanWord(); + + // https://drafts.csswg.org/css-values-5/#boolean + if (name === 'boolean-expr') { + scanner.eat(LEFTSQUAREBRACKET); + + const implicitGroup = readImplicitGroup(scanner, RIGHTSQUAREBRACKET); + + scanner.eat(RIGHTSQUAREBRACKET); + scanner.eat(GREATERTHANSIGN); + + return maybeMultiplied(scanner, { + type: 'Boolean', + term: implicitGroup.terms.length === 1 + ? implicitGroup.terms[0] + : implicitGroup + }); + } + + if (scanner.charCode() === LEFTPARENTHESIS && + scanner.nextCharCode() === RIGHTPARENTHESIS) { + scanner.pos += 2; + name += '()'; + } + + if (scanner.charCodeAt(scanner.findWsEnd(scanner.pos)) === LEFTSQUAREBRACKET) { + scanner.skipWs(); + opts = readTypeRange(scanner); + } + + scanner.eat(GREATERTHANSIGN); + + return maybeMultiplied(scanner, { + type: 'Type', + name, + opts + }); +} + +function readKeywordOrFunction(scanner) { + const name = scanner.scanWord(); + + if (scanner.charCode() === LEFTPARENTHESIS) { + scanner.pos++; + + return { + type: 'Function', + name + }; + } + + return maybeMultiplied(scanner, { + type: 'Keyword', + name + }); +} + +function regroupTerms(terms, combinators) { + function createGroup(terms, combinator) { + return { + type: 'Group', + terms, + combinator, + disallowEmpty: false, + explicit: false + }; + } + + let combinator; + + combinators = Object.keys(combinators) + .sort((a, b) => COMBINATOR_PRECEDENCE[a] - COMBINATOR_PRECEDENCE[b]); + + while (combinators.length > 0) { + combinator = combinators.shift(); + + let i = 0; + let subgroupStart = 0; + + for (; i < terms.length; i++) { + const term = terms[i]; + + if (term.type === 'Combinator') { + if (term.value === combinator) { + if (subgroupStart === -1) { + subgroupStart = i - 1; + } + terms.splice(i, 1); + i--; + } else { + if (subgroupStart !== -1 && i - subgroupStart > 1) { + terms.splice( + subgroupStart, + i - subgroupStart, + createGroup(terms.slice(subgroupStart, i), combinator) + ); + i = subgroupStart + 1; + } + subgroupStart = -1; + } + } + } + + if (subgroupStart !== -1 && combinators.length) { + terms.splice( + subgroupStart, + i - subgroupStart, + createGroup(terms.slice(subgroupStart, i), combinator) + ); + } + } + + return combinator; +} + +function readImplicitGroup(scanner, stopCharCode) { + const combinators = Object.create(null); + const terms = []; + let token; + let prevToken = null; + let prevTokenPos = scanner.pos; + + while (scanner.charCode() !== stopCharCode && (token = peek(scanner, stopCharCode))) { + if (token.type !== 'Spaces') { + if (token.type === 'Combinator') { + // check for combinator in group beginning and double combinator sequence + if (prevToken === null || prevToken.type === 'Combinator') { + scanner.pos = prevTokenPos; + scanner.error('Unexpected combinator'); + } + + combinators[token.value] = true; + } else if (prevToken !== null && prevToken.type !== 'Combinator') { + combinators[' '] = true; // a b + terms.push({ + type: 'Combinator', + value: ' ' + }); + } + + terms.push(token); + prevToken = token; + prevTokenPos = scanner.pos; + } + } + + // check for combinator in group ending + if (prevToken !== null && prevToken.type === 'Combinator') { + scanner.pos -= prevTokenPos; + scanner.error('Unexpected combinator'); + } + + return { + type: 'Group', + terms, + combinator: regroupTerms(terms, combinators) || ' ', + disallowEmpty: false, + explicit: false + }; +} + +function readGroup(scanner, stopCharCode) { + let result; + + scanner.eat(LEFTSQUAREBRACKET); + result = readImplicitGroup(scanner, stopCharCode); + scanner.eat(RIGHTSQUAREBRACKET); + + result.explicit = true; + + if (scanner.charCode() === EXCLAMATIONMARK) { + scanner.pos++; + result.disallowEmpty = true; + } + + return result; +} + +function peek(scanner, stopCharCode) { + let code = scanner.charCode(); + + switch (code) { + case RIGHTSQUAREBRACKET: + // don't eat, stop scan a group + break; + + case LEFTSQUAREBRACKET: + return maybeMultiplied(scanner, readGroup(scanner, stopCharCode)); + + case LESSTHANSIGN: + return scanner.nextCharCode() === APOSTROPHE + ? readProperty(scanner) + : readType(scanner); + + case VERTICALLINE: + return { + type: 'Combinator', + value: scanner.substringToPos( + scanner.pos + (scanner.nextCharCode() === VERTICALLINE ? 2 : 1) + ) + }; + + case AMPERSAND: + scanner.pos++; + scanner.eat(AMPERSAND); + + return { + type: 'Combinator', + value: '&&' + }; + + case COMMA: + scanner.pos++; + return { + type: 'Comma' + }; + + case APOSTROPHE: + return maybeMultiplied(scanner, { + type: 'String', + value: scanner.scanString() + }); + + case SPACE: + case TAB: + case N: + case R: + case F: + return { + type: 'Spaces', + value: scanner.scanSpaces() + }; + + case COMMERCIALAT: + code = scanner.nextCharCode(); + + if (scanner.isNameCharCode(code)) { + scanner.pos++; + return { + type: 'AtKeyword', + name: scanner.scanWord() + }; + } + + return maybeToken(scanner); + + case ASTERISK: + case PLUSSIGN: + case QUESTIONMARK: + case NUMBERSIGN: + case EXCLAMATIONMARK: + // prohibited tokens (used as a multiplier start) + break; + + case LEFTCURLYBRACKET: + // LEFTCURLYBRACKET is allowed since mdn/data uses it w/o quoting + // check next char isn't a number, because it's likely a disjoined multiplier + code = scanner.nextCharCode(); + + if (code < 48 || code > 57) { + return maybeToken(scanner); + } + + break; + + default: + if (scanner.isNameCharCode(code)) { + return readKeywordOrFunction(scanner); + } + + return maybeToken(scanner); + } +} + +function parse(source) { + const scanner$1 = new scanner.Scanner(source); + const result = readImplicitGroup(scanner$1); + + if (scanner$1.pos !== source.length) { + scanner$1.error('Unexpected input'); + } + + // reduce redundant groups with single group term + if (result.terms.length === 1 && result.terms[0].type === 'Group') { + return result.terms[0]; + } + + return result; +} + +exports.parse = parse; diff --git a/node_modules/css-tree/cjs/definition-syntax/scanner.cjs b/node_modules/css-tree/cjs/definition-syntax/scanner.cjs new file mode 100644 index 00000000..0bad36a4 --- /dev/null +++ b/node_modules/css-tree/cjs/definition-syntax/scanner.cjs @@ -0,0 +1,113 @@ +'use strict'; + +const SyntaxError = require('./SyntaxError.cjs'); + +const TAB = 9; +const N = 10; +const F = 12; +const R = 13; +const SPACE = 32; +const NAME_CHAR = new Uint8Array(128).map((_, idx) => + /[a-zA-Z0-9\-]/.test(String.fromCharCode(idx)) ? 1 : 0 +); + +class Scanner { + constructor(str) { + this.str = str; + this.pos = 0; + } + + charCodeAt(pos) { + return pos < this.str.length ? this.str.charCodeAt(pos) : 0; + } + charCode() { + return this.charCodeAt(this.pos); + } + isNameCharCode(code = this.charCode()) { + return code < 128 && NAME_CHAR[code] === 1; + } + nextCharCode() { + return this.charCodeAt(this.pos + 1); + } + nextNonWsCode(pos) { + return this.charCodeAt(this.findWsEnd(pos)); + } + skipWs() { + this.pos = this.findWsEnd(this.pos); + } + findWsEnd(pos) { + for (; pos < this.str.length; pos++) { + const code = this.str.charCodeAt(pos); + if (code !== R && code !== N && code !== F && code !== SPACE && code !== TAB) { + break; + } + } + + return pos; + } + substringToPos(end) { + return this.str.substring(this.pos, this.pos = end); + } + eat(code) { + if (this.charCode() !== code) { + this.error('Expect `' + String.fromCharCode(code) + '`'); + } + + this.pos++; + } + peek() { + return this.pos < this.str.length ? this.str.charAt(this.pos++) : ''; + } + error(message) { + throw new SyntaxError.SyntaxError(message, this.str, this.pos); + } + + scanSpaces() { + return this.substringToPos(this.findWsEnd(this.pos)); + } + scanWord() { + let end = this.pos; + + for (; end < this.str.length; end++) { + const code = this.str.charCodeAt(end); + if (code >= 128 || NAME_CHAR[code] === 0) { + break; + } + } + + if (this.pos === end) { + this.error('Expect a keyword'); + } + + return this.substringToPos(end); + } + scanNumber() { + let end = this.pos; + + for (; end < this.str.length; end++) { + const code = this.str.charCodeAt(end); + + if (code < 48 || code > 57) { + break; + } + } + + if (this.pos === end) { + this.error('Expect a number'); + } + + return this.substringToPos(end); + } + scanString() { + const end = this.str.indexOf('\'', this.pos + 1); + + if (end === -1) { + this.pos = this.str.length; + this.error('Expect an apostrophe'); + } + + return this.substringToPos(end + 1); + } +} + +exports.Scanner = Scanner; diff --git a/node_modules/css-tree/cjs/definition-syntax/tokenizer.cjs b/node_modules/css-tree/cjs/definition-syntax/tokenizer.cjs new file mode 100644 index 00000000..2b934bd9 --- /dev/null +++ b/node_modules/css-tree/cjs/definition-syntax/tokenizer.cjs @@ -0,0 +1,59 @@ +'use strict'; + +const SyntaxError = require('./SyntaxError.cjs'); + +const TAB = 9; +const N = 10; +const F = 12; +const R = 13; +const SPACE = 32; + +class Tokenizer { + constructor(str) { + this.str = str; + this.pos = 0; + } + charCodeAt(pos) { + return pos < this.str.length ? this.str.charCodeAt(pos) : 0; + } + charCode() { + return this.charCodeAt(this.pos); + } + nextCharCode() { + return this.charCodeAt(this.pos + 1); + } + nextNonWsCode(pos) { + return this.charCodeAt(this.findWsEnd(pos)); + } + skipWs() { + this.pos = this.findWsEnd(this.pos); + } + findWsEnd(pos) { + for (; pos < this.str.length; pos++) { + const code = this.str.charCodeAt(pos); + if (code !== R && code !== N && code !== F && code !== SPACE && code !== TAB) { + break; + } + } + + return pos; + } + substringToPos(end) { + return this.str.substring(this.pos, this.pos = end); + } + eat(code) { + if (this.charCode() !== code) { + this.error('Expect `' + String.fromCharCode(code) + '`'); + } + + this.pos++; + } + peek() { + return this.pos < this.str.length ? this.str.charAt(this.pos++) : ''; + } + error(message) { + throw new SyntaxError.SyntaxError(message, this.str, this.pos); + } +} + +exports.Tokenizer = Tokenizer; diff --git a/node_modules/css-tree/cjs/definition-syntax/walk.cjs b/node_modules/css-tree/cjs/definition-syntax/walk.cjs new file mode 100644 index 00000000..fdba0657 --- /dev/null +++ b/node_modules/css-tree/cjs/definition-syntax/walk.cjs @@ -0,0 +1,57 @@ +'use strict'; + +const noop = function() {}; + +function ensureFunction(value) { + return typeof value === 'function' ? value : noop; +} + +function walk(node, options, context) { + function walk(node) { + enter.call(context, node); + + switch (node.type) { + case 'Group': + node.terms.forEach(walk); + break; + + case 'Multiplier': + case 'Boolean': + walk(node.term); + break; + + case 'Type': + case 'Property': + case 'Keyword': + case 'AtKeyword': + case 'Function': + case 'String': + case 'Token': + case 'Comma': + break; + + default: + throw new Error('Unknown type: ' + node.type); + } + + leave.call(context, node); + } + + let enter = noop; + let leave = noop; + + if (typeof options === 'function') { + enter = options; + } else if (options) { + enter = ensureFunction(options.enter); + leave = ensureFunction(options.leave); + } + + if (enter === noop && leave === noop) { + throw new Error('Neither `enter` nor `leave` walker handler is set or both aren\'t a function'); + } + + walk(node); +} + +exports.walk = walk; diff --git a/node_modules/css-tree/cjs/generator/create.cjs b/node_modules/css-tree/cjs/generator/create.cjs new file mode 100644 index 00000000..87a54b23 --- /dev/null +++ b/node_modules/css-tree/cjs/generator/create.cjs @@ -0,0 +1,102 @@ +'use strict'; + +const index = require('../tokenizer/index.cjs'); +const sourceMap = require('./sourceMap.cjs'); +const tokenBefore = require('./token-before.cjs'); +const types = require('../tokenizer/types.cjs'); + +const REVERSESOLIDUS = 0x005c; // U+005C REVERSE SOLIDUS (\) + +function processChildren(node, delimeter) { + if (typeof delimeter === 'function') { + let prev = null; + + node.children.forEach(node => { + if (prev !== null) { + delimeter.call(this, prev); + } + + this.node(node); + prev = node; + }); + + return; + } + + node.children.forEach(this.node, this); +} + +function processChunk(chunk) { + index.tokenize(chunk, (type, start, end) => { + this.token(type, chunk.slice(start, end)); + }); +} + +function createGenerator(config) { + const types$1 = new Map(); + + for (let [name, item] of Object.entries(config.node)) { + const fn = item.generate || item; + + if (typeof fn === 'function') { + types$1.set(name, item.generate || item); + } + } + + return function(node, options) { + let buffer = ''; + let prevCode = 0; + let handlers = { + node(node) { + if (types$1.has(node.type)) { + types$1.get(node.type).call(publicApi, node); + } else { + throw new Error('Unknown node type: ' + node.type); + } + }, + tokenBefore: tokenBefore.safe, + token(type, value) { + prevCode = this.tokenBefore(prevCode, type, value); + + this.emit(value, type, false); + + if (type === types.Delim && value.charCodeAt(0) === REVERSESOLIDUS) { + this.emit('\n', types.WhiteSpace, true); + } + }, + emit(value) { + buffer += value; + }, + result() { + return buffer; + } + }; + + if (options) { + if (typeof options.decorator === 'function') { + handlers = options.decorator(handlers); + } + + if (options.sourceMap) { + handlers = sourceMap.generateSourceMap(handlers); + } + + if (options.mode in tokenBefore) { + handlers.tokenBefore = tokenBefore[options.mode]; + } + } + + const publicApi = { + node: (node) => handlers.node(node), + children: processChildren, + token: (type, value) => handlers.token(type, value), + tokenize: processChunk + }; + + handlers.node(node); + + return handlers.result(); + }; +} + +exports.createGenerator = createGenerator; diff --git a/node_modules/css-tree/cjs/generator/index.cjs b/node_modules/css-tree/cjs/generator/index.cjs new file mode 100644 index 00000000..5c87cd34 --- /dev/null +++ b/node_modules/css-tree/cjs/generator/index.cjs @@ -0,0 +1,8 @@ +'use strict'; + +const create = require('./create.cjs'); +const generator = require('../syntax/config/generator.cjs'); + +const index = create.createGenerator(generator); + +module.exports = index; diff --git a/node_modules/css-tree/cjs/generator/sourceMap.cjs b/node_modules/css-tree/cjs/generator/sourceMap.cjs new file mode 100644 index 00000000..efbc5b9e --- /dev/null +++ b/node_modules/css-tree/cjs/generator/sourceMap.cjs @@ -0,0 +1,96 @@ +'use strict'; + +const sourceMapGenerator_js = require('source-map-js/lib/source-map-generator.js'); + +const trackNodes = new Set(['Atrule', 'Selector', 'Declaration']); + +function generateSourceMap(handlers) { + const map = new sourceMapGenerator_js.SourceMapGenerator(); + const generated = { + line: 1, + column: 0 + }; + const original = { + line: 0, // should be zero to add first mapping + column: 0 + }; + const activatedGenerated = { + line: 1, + column: 0 + }; + const activatedMapping = { + generated: activatedGenerated + }; + let line = 1; + let column = 0; + let sourceMappingActive = false; + + const origHandlersNode = handlers.node; + handlers.node = function(node) { + if (node.loc && node.loc.start && trackNodes.has(node.type)) { + const nodeLine = node.loc.start.line; + const nodeColumn = node.loc.start.column - 1; + + if (original.line !== nodeLine || + original.column !== nodeColumn) { + original.line = nodeLine; + original.column = nodeColumn; + + generated.line = line; + generated.column = column; + + if (sourceMappingActive) { + sourceMappingActive = false; + if (generated.line !== activatedGenerated.line || + generated.column !== activatedGenerated.column) { + map.addMapping(activatedMapping); + } + } + + sourceMappingActive = true; + map.addMapping({ + source: node.loc.source, + original, + generated + }); + } + } + + origHandlersNode.call(this, node); + + if (sourceMappingActive && trackNodes.has(node.type)) { + activatedGenerated.line = line; + activatedGenerated.column = column; + } + }; + + const origHandlersEmit = handlers.emit; + handlers.emit = function(value, type, auto) { + for (let i = 0; i < value.length; i++) { + if (value.charCodeAt(i) === 10) { // \n + line++; + column = 0; + } else { + column++; + } + } + + origHandlersEmit(value, type, auto); + }; + + const origHandlersResult = handlers.result; + handlers.result = function() { + if (sourceMappingActive) { + map.addMapping(activatedMapping); + } + + return { + css: origHandlersResult(), + map + }; + }; + + return handlers; +} + +exports.generateSourceMap = generateSourceMap; diff --git a/node_modules/css-tree/cjs/generator/token-before.cjs b/node_modules/css-tree/cjs/generator/token-before.cjs new file mode 100644 index 00000000..87bf4a3e --- /dev/null +++ b/node_modules/css-tree/cjs/generator/token-before.cjs @@ -0,0 +1,170 @@ +'use strict'; + +const types = require('../tokenizer/types.cjs'); + +const PLUSSIGN = 0x002B; // U+002B PLUS SIGN (+) +const HYPHENMINUS = 0x002D; // U+002D HYPHEN-MINUS (-) + +const code = (type, value) => { + if (type === types.Delim) { + type = value; + } + + if (typeof type === 'string') { + const charCode = type.charCodeAt(0); + return charCode > 0x7F ? 0x8000 : charCode << 8; + } + + return type; +}; + +// https://www.w3.org/TR/css-syntax-3/#serialization +// The only requirement for serialization is that it must "round-trip" with parsing, +// that is, parsing the stylesheet must produce the same data structures as parsing, +// serializing, and parsing again, except for consecutive s, +// which may be collapsed into a single token. + +const specPairs = [ + [types.Ident, types.Ident], + [types.Ident, types.Function], + [types.Ident, types.Url], + [types.Ident, types.BadUrl], + [types.Ident, '-'], + [types.Ident, types.Number], + [types.Ident, types.Percentage], + [types.Ident, types.Dimension], + [types.Ident, types.CDC], + [types.Ident, types.LeftParenthesis], + + [types.AtKeyword, types.Ident], + [types.AtKeyword, types.Function], + [types.AtKeyword, types.Url], + [types.AtKeyword, types.BadUrl], + [types.AtKeyword, '-'], + [types.AtKeyword, types.Number], + [types.AtKeyword, types.Percentage], + [types.AtKeyword, types.Dimension], + [types.AtKeyword, types.CDC], + + [types.Hash, types.Ident], + [types.Hash, types.Function], + [types.Hash, types.Url], + [types.Hash, types.BadUrl], + [types.Hash, '-'], + [types.Hash, types.Number], + [types.Hash, types.Percentage], + [types.Hash, types.Dimension], + [types.Hash, types.CDC], + + [types.Dimension, types.Ident], + [types.Dimension, types.Function], + [types.Dimension, types.Url], + [types.Dimension, types.BadUrl], + [types.Dimension, '-'], + [types.Dimension, types.Number], + [types.Dimension, types.Percentage], + [types.Dimension, types.Dimension], + [types.Dimension, types.CDC], + + ['#', types.Ident], + ['#', types.Function], + ['#', types.Url], + ['#', types.BadUrl], + ['#', '-'], + ['#', types.Number], + ['#', types.Percentage], + ['#', types.Dimension], + ['#', types.CDC], // https://github.com/w3c/csswg-drafts/pull/6874 + + ['-', types.Ident], + ['-', types.Function], + ['-', types.Url], + ['-', types.BadUrl], + ['-', '-'], + ['-', types.Number], + ['-', types.Percentage], + ['-', types.Dimension], + ['-', types.CDC], // https://github.com/w3c/csswg-drafts/pull/6874 + + [types.Number, types.Ident], + [types.Number, types.Function], + [types.Number, types.Url], + [types.Number, types.BadUrl], + [types.Number, types.Number], + [types.Number, types.Percentage], + [types.Number, types.Dimension], + [types.Number, '%'], + [types.Number, types.CDC], // https://github.com/w3c/csswg-drafts/pull/6874 + + ['@', types.Ident], + ['@', types.Function], + ['@', types.Url], + ['@', types.BadUrl], + ['@', '-'], + ['@', types.CDC], // https://github.com/w3c/csswg-drafts/pull/6874 + + ['.', types.Number], + ['.', types.Percentage], + ['.', types.Dimension], + + ['+', types.Number], + ['+', types.Percentage], + ['+', types.Dimension], + + ['/', '*'] +]; +// validate with scripts/generate-safe +const safePairs = specPairs.concat([ + [types.Ident, types.Hash], + + [types.Dimension, types.Hash], + + [types.Hash, types.Hash], + + [types.AtKeyword, types.LeftParenthesis], + [types.AtKeyword, types.String], + [types.AtKeyword, types.Colon], + + [types.Percentage, types.Percentage], + [types.Percentage, types.Dimension], + [types.Percentage, types.Function], + [types.Percentage, '-'], + + [types.RightParenthesis, types.Ident], + [types.RightParenthesis, types.Function], + [types.RightParenthesis, types.Percentage], + [types.RightParenthesis, types.Dimension], + [types.RightParenthesis, types.Hash], + [types.RightParenthesis, '-'] +]); + +function createMap(pairs) { + const isWhiteSpaceRequired = new Set( + pairs.map(([prev, next]) => (code(prev) << 16 | code(next))) + ); + + return function(prevCode, type, value) { + const nextCode = code(type, value); + const nextCharCode = value.charCodeAt(0); + const emitWs = + (nextCharCode === HYPHENMINUS && + type !== types.Ident && + type !== types.Function && + type !== types.CDC) || + (nextCharCode === PLUSSIGN) + ? isWhiteSpaceRequired.has(prevCode << 16 | nextCharCode << 8) + : isWhiteSpaceRequired.has(prevCode << 16 | nextCode); + + if (emitWs) { + this.emit(' ', types.WhiteSpace, true); + } + + return nextCode; + }; +} + +const spec = createMap(specPairs); +const safe = createMap(safePairs); + +exports.safe = safe; +exports.spec = spec; diff --git a/node_modules/css-tree/cjs/index.cjs b/node_modules/css-tree/cjs/index.cjs new file mode 100644 index 00000000..cc611378 --- /dev/null +++ b/node_modules/css-tree/cjs/index.cjs @@ -0,0 +1,65 @@ +'use strict'; + +const index$1 = require('./syntax/index.cjs'); +const version = require('./version.cjs'); +const create = require('./syntax/create.cjs'); +const List = require('./utils/List.cjs'); +const Lexer = require('./lexer/Lexer.cjs'); +const index = require('./definition-syntax/index.cjs'); +const clone = require('./utils/clone.cjs'); +const names$1 = require('./utils/names.cjs'); +const ident = require('./utils/ident.cjs'); +const string = require('./utils/string.cjs'); +const url = require('./utils/url.cjs'); +const types = require('./tokenizer/types.cjs'); +const names = require('./tokenizer/names.cjs'); +const TokenStream = require('./tokenizer/TokenStream.cjs'); +const OffsetToLocation = require('./tokenizer/OffsetToLocation.cjs'); + +const { + tokenize, + parse, + generate, + lexer, + createLexer, + + walk, + find, + findLast, + findAll, + + toPlainObject, + fromPlainObject, + + fork +} = index$1; + +exports.version = version.version; +exports.createSyntax = create; +exports.List = List.List; +exports.Lexer = Lexer.Lexer; +exports.definitionSyntax = index; +exports.clone = clone.clone; +exports.isCustomProperty = names$1.isCustomProperty; +exports.keyword = names$1.keyword; +exports.property = names$1.property; +exports.vendorPrefix = names$1.vendorPrefix; +exports.ident = ident; +exports.string = string; +exports.url = url; +exports.tokenTypes = types; +exports.tokenNames = names; +exports.TokenStream = TokenStream.TokenStream; +exports.OffsetToLocation = OffsetToLocation.OffsetToLocation; +exports.createLexer = createLexer; +exports.find = find; +exports.findAll = findAll; +exports.findLast = findLast; +exports.fork = fork; +exports.fromPlainObject = fromPlainObject; +exports.generate = generate; +exports.lexer = lexer; +exports.parse = parse; +exports.toPlainObject = toPlainObject; +exports.tokenize = tokenize; +exports.walk = walk; diff --git a/node_modules/css-tree/cjs/lexer/Lexer.cjs b/node_modules/css-tree/cjs/lexer/Lexer.cjs new file mode 100644 index 00000000..a6d1fcb6 --- /dev/null +++ b/node_modules/css-tree/cjs/lexer/Lexer.cjs @@ -0,0 +1,517 @@ +'use strict'; + +const error = require('./error.cjs'); +const names = require('../utils/names.cjs'); +const genericConst = require('./generic-const.cjs'); +const generic = require('./generic.cjs'); +const units = require('./units.cjs'); +const prepareTokens = require('./prepare-tokens.cjs'); +const matchGraph = require('./match-graph.cjs'); +const match = require('./match.cjs'); +const trace = require('./trace.cjs'); +const search = require('./search.cjs'); +const structure = require('./structure.cjs'); +const parse = require('../definition-syntax/parse.cjs'); +const generate = require('../definition-syntax/generate.cjs'); +const walk = require('../definition-syntax/walk.cjs'); + +function dumpMapSyntax(map, compact, syntaxAsAst) { + const result = {}; + + for (const name in map) { + if (map[name].syntax) { + result[name] = syntaxAsAst + ? map[name].syntax + : generate.generate(map[name].syntax, { compact }); + } + } + + return result; +} + +function dumpAtruleMapSyntax(map, compact, syntaxAsAst) { + const result = {}; + + for (const [name, atrule] of Object.entries(map)) { + result[name] = { + prelude: atrule.prelude && ( + syntaxAsAst + ? atrule.prelude.syntax + : generate.generate(atrule.prelude.syntax, { compact }) + ), + descriptors: atrule.descriptors && dumpMapSyntax(atrule.descriptors, compact, syntaxAsAst) + }; + } + + return result; +} + +function valueHasVar(tokens) { + for (let i = 0; i < tokens.length; i++) { + if (tokens[i].value.toLowerCase() === 'var(') { + return true; + } + } + + return false; +} + +function syntaxHasTopLevelCommaMultiplier(syntax) { + const singleTerm = syntax.terms[0]; + + return ( + syntax.explicit === false && + syntax.terms.length === 1 && + singleTerm.type === 'Multiplier' && + singleTerm.comma === true + ); +} + +function buildMatchResult(matched, error, iterations) { + return { + matched, + iterations, + error, + ...trace + }; +} + +function matchSyntax(lexer, syntax, value, useCssWideKeywords) { + const tokens = prepareTokens(value, lexer.syntax); + let result; + + if (valueHasVar(tokens)) { + return buildMatchResult(null, new Error('Matching for a tree with var() is not supported')); + } + + if (useCssWideKeywords) { + result = match.matchAsTree(tokens, lexer.cssWideKeywordsSyntax, lexer); + } + + if (!useCssWideKeywords || !result.match) { + result = match.matchAsTree(tokens, syntax.match, lexer); + if (!result.match) { + return buildMatchResult( + null, + new error.SyntaxMatchError(result.reason, syntax.syntax, value, result), + result.iterations + ); + } + } + + return buildMatchResult(result.match, null, result.iterations); +} + +class Lexer { + constructor(config, syntax, structure$1) { + this.cssWideKeywords = genericConst.cssWideKeywords; + this.syntax = syntax; + this.generic = false; + this.units = { ...units }; + this.atrules = Object.create(null); + this.properties = Object.create(null); + this.types = Object.create(null); + this.structure = structure$1 || structure.getStructureFromConfig(config); + + if (config) { + if (config.cssWideKeywords) { + this.cssWideKeywords = config.cssWideKeywords; + } + + if (config.units) { + for (const group of Object.keys(units)) { + if (Array.isArray(config.units[group])) { + this.units[group] = config.units[group]; + } + } + } + + if (config.types) { + for (const [name, type] of Object.entries(config.types)) { + this.addType_(name, type); + } + } + + if (config.generic) { + this.generic = true; + for (const [name, value] of Object.entries(generic.createGenericTypes(this.units))) { + this.addType_(name, value); + } + } + + if (config.atrules) { + for (const [name, atrule] of Object.entries(config.atrules)) { + this.addAtrule_(name, atrule); + } + } + + if (config.properties) { + for (const [name, property] of Object.entries(config.properties)) { + this.addProperty_(name, property); + } + } + } + + this.cssWideKeywordsSyntax = matchGraph.buildMatchGraph(this.cssWideKeywords.join(' | ')); + } + + checkStructure(ast) { + function collectWarning(node, message) { + warns.push({ node, message }); + } + + const structure = this.structure; + const warns = []; + + this.syntax.walk(ast, function(node) { + if (structure.hasOwnProperty(node.type)) { + structure[node.type].check(node, collectWarning); + } else { + collectWarning(node, 'Unknown node type `' + node.type + '`'); + } + }); + + return warns.length ? warns : false; + } + + createDescriptor(syntax, type, name, parent = null) { + const ref = { + type, + name + }; + const descriptor = { + type, + name, + parent, + serializable: typeof syntax === 'string' || (syntax && typeof syntax.type === 'string'), + syntax: null, + match: null, + matchRef: null // used for properties when a syntax referenced as <'property'> in other syntax definitions + }; + + if (typeof syntax === 'function') { + descriptor.match = matchGraph.buildMatchGraph(syntax, ref); + } else { + if (typeof syntax === 'string') { + // lazy parsing on first access + Object.defineProperty(descriptor, 'syntax', { + get() { + Object.defineProperty(descriptor, 'syntax', { + value: parse.parse(syntax) + }); + + return descriptor.syntax; + } + }); + } else { + descriptor.syntax = syntax; + } + + // lazy graph build on first access + Object.defineProperty(descriptor, 'match', { + get() { + Object.defineProperty(descriptor, 'match', { + value: matchGraph.buildMatchGraph(descriptor.syntax, ref) + }); + + return descriptor.match; + } + }); + + if (type === 'Property') { + Object.defineProperty(descriptor, 'matchRef', { + get() { + const syntax = descriptor.syntax; + const value = syntaxHasTopLevelCommaMultiplier(syntax) + ? matchGraph.buildMatchGraph({ + ...syntax, + terms: [syntax.terms[0].term] + }, ref) + : null; + + Object.defineProperty(descriptor, 'matchRef', { + value + }); + + return value; + } + }); + } + } + + return descriptor; + } + addAtrule_(name, syntax) { + if (!syntax) { + return; + } + + this.atrules[name] = { + type: 'Atrule', + name: name, + prelude: syntax.prelude ? this.createDescriptor(syntax.prelude, 'AtrulePrelude', name) : null, + descriptors: syntax.descriptors + ? Object.keys(syntax.descriptors).reduce( + (map, descName) => { + map[descName] = this.createDescriptor(syntax.descriptors[descName], 'AtruleDescriptor', descName, name); + return map; + }, + Object.create(null) + ) + : null + }; + } + addProperty_(name, syntax) { + if (!syntax) { + return; + } + + this.properties[name] = this.createDescriptor(syntax, 'Property', name); + } + addType_(name, syntax) { + if (!syntax) { + return; + } + + this.types[name] = this.createDescriptor(syntax, 'Type', name); + } + + checkAtruleName(atruleName) { + if (!this.getAtrule(atruleName)) { + return new error.SyntaxReferenceError('Unknown at-rule', '@' + atruleName); + } + } + checkAtrulePrelude(atruleName, prelude) { + const error = this.checkAtruleName(atruleName); + + if (error) { + return error; + } + + const atrule = this.getAtrule(atruleName); + + if (!atrule.prelude && prelude) { + return new SyntaxError('At-rule `@' + atruleName + '` should not contain a prelude'); + } + + if (atrule.prelude && !prelude) { + if (!matchSyntax(this, atrule.prelude, '', false).matched) { + return new SyntaxError('At-rule `@' + atruleName + '` should contain a prelude'); + } + } + } + checkAtruleDescriptorName(atruleName, descriptorName) { + const error$1 = this.checkAtruleName(atruleName); + + if (error$1) { + return error$1; + } + + const atrule = this.getAtrule(atruleName); + const descriptor = names.keyword(descriptorName); + + if (!atrule.descriptors) { + return new SyntaxError('At-rule `@' + atruleName + '` has no known descriptors'); + } + + if (!atrule.descriptors[descriptor.name] && + !atrule.descriptors[descriptor.basename]) { + return new error.SyntaxReferenceError('Unknown at-rule descriptor', descriptorName); + } + } + checkPropertyName(propertyName) { + if (!this.getProperty(propertyName)) { + return new error.SyntaxReferenceError('Unknown property', propertyName); + } + } + + matchAtrulePrelude(atruleName, prelude) { + const error = this.checkAtrulePrelude(atruleName, prelude); + + if (error) { + return buildMatchResult(null, error); + } + + const atrule = this.getAtrule(atruleName); + + if (!atrule.prelude) { + return buildMatchResult(null, null); + } + + return matchSyntax(this, atrule.prelude, prelude || '', false); + } + matchAtruleDescriptor(atruleName, descriptorName, value) { + const error = this.checkAtruleDescriptorName(atruleName, descriptorName); + + if (error) { + return buildMatchResult(null, error); + } + + const atrule = this.getAtrule(atruleName); + const descriptor = names.keyword(descriptorName); + + return matchSyntax(this, atrule.descriptors[descriptor.name] || atrule.descriptors[descriptor.basename], value, false); + } + matchDeclaration(node) { + if (node.type !== 'Declaration') { + return buildMatchResult(null, new Error('Not a Declaration node')); + } + + return this.matchProperty(node.property, node.value); + } + matchProperty(propertyName, value) { + // don't match syntax for a custom property at the moment + if (names.property(propertyName).custom) { + return buildMatchResult(null, new Error('Lexer matching doesn\'t applicable for custom properties')); + } + + const error = this.checkPropertyName(propertyName); + + if (error) { + return buildMatchResult(null, error); + } + + return matchSyntax(this, this.getProperty(propertyName), value, true); + } + matchType(typeName, value) { + const typeSyntax = this.getType(typeName); + + if (!typeSyntax) { + return buildMatchResult(null, new error.SyntaxReferenceError('Unknown type', typeName)); + } + + return matchSyntax(this, typeSyntax, value, false); + } + match(syntax, value) { + if (typeof syntax !== 'string' && (!syntax || !syntax.type)) { + return buildMatchResult(null, new error.SyntaxReferenceError('Bad syntax')); + } + + if (typeof syntax === 'string' || !syntax.match) { + syntax = this.createDescriptor(syntax, 'Type', 'anonymous'); + } + + return matchSyntax(this, syntax, value, false); + } + + findValueFragments(propertyName, value, type, name) { + return search.matchFragments(this, value, this.matchProperty(propertyName, value), type, name); + } + findDeclarationValueFragments(declaration, type, name) { + return search.matchFragments(this, declaration.value, this.matchDeclaration(declaration), type, name); + } + findAllFragments(ast, type, name) { + const result = []; + + this.syntax.walk(ast, { + visit: 'Declaration', + enter: (declaration) => { + result.push.apply(result, this.findDeclarationValueFragments(declaration, type, name)); + } + }); + + return result; + } + + getAtrule(atruleName, fallbackBasename = true) { + const atrule = names.keyword(atruleName); + const atruleEntry = atrule.vendor && fallbackBasename + ? this.atrules[atrule.name] || this.atrules[atrule.basename] + : this.atrules[atrule.name]; + + return atruleEntry || null; + } + getAtrulePrelude(atruleName, fallbackBasename = true) { + const atrule = this.getAtrule(atruleName, fallbackBasename); + + return atrule && atrule.prelude || null; + } + getAtruleDescriptor(atruleName, name) { + return this.atrules.hasOwnProperty(atruleName) && this.atrules.declarators + ? this.atrules[atruleName].declarators[name] || null + : null; + } + getProperty(propertyName, fallbackBasename = true) { + const property = names.property(propertyName); + const propertyEntry = property.vendor && fallbackBasename + ? this.properties[property.name] || this.properties[property.basename] + : this.properties[property.name]; + + return propertyEntry || null; + } + getType(name) { + return hasOwnProperty.call(this.types, name) ? this.types[name] : null; + } + + validate() { + function syntaxRef(name, isType) { + return isType ? `<${name}>` : `<'${name}'>`; + } + + function validate(syntax, name, broken, descriptor) { + if (broken.has(name)) { + return broken.get(name); + } + + broken.set(name, false); + if (descriptor.syntax !== null) { + walk.walk(descriptor.syntax, function(node) { + if (node.type !== 'Type' && node.type !== 'Property') { + return; + } + + const map = node.type === 'Type' ? syntax.types : syntax.properties; + const brokenMap = node.type === 'Type' ? brokenTypes : brokenProperties; + + if (!hasOwnProperty.call(map, node.name)) { + errors.push(`${syntaxRef(name, broken === brokenTypes)} used missed syntax definition ${syntaxRef(node.name, node.type === 'Type')}`); + broken.set(name, true); + } else if (validate(syntax, node.name, brokenMap, map[node.name])) { + errors.push(`${syntaxRef(name, broken === brokenTypes)} used broken syntax definition ${syntaxRef(node.name, node.type === 'Type')}`); + broken.set(name, true); + } + }, this); + } + } + + const errors = []; + let brokenTypes = new Map(); + let brokenProperties = new Map(); + + for (const key in this.types) { + validate(this, key, brokenTypes, this.types[key]); + } + + for (const key in this.properties) { + validate(this, key, brokenProperties, this.properties[key]); + } + + const brokenTypesArray = [...brokenTypes.keys()].filter(name => brokenTypes.get(name)); + const brokenPropertiesArray = [...brokenProperties.keys()].filter(name => brokenProperties.get(name)); + + if (brokenTypesArray.length || brokenPropertiesArray.length) { + return { + errors, + types: brokenTypesArray, + properties: brokenPropertiesArray + }; + } + + return null; + } + dump(syntaxAsAst, pretty) { + return { + generic: this.generic, + cssWideKeywords: this.cssWideKeywords, + units: this.units, + types: dumpMapSyntax(this.types, !pretty, syntaxAsAst), + properties: dumpMapSyntax(this.properties, !pretty, syntaxAsAst), + atrules: dumpAtruleMapSyntax(this.atrules, !pretty, syntaxAsAst) + }; + } + toString() { + return JSON.stringify(this.dump()); + } +} + +exports.Lexer = Lexer; diff --git a/node_modules/css-tree/cjs/lexer/error.cjs b/node_modules/css-tree/cjs/lexer/error.cjs new file mode 100644 index 00000000..8d252eeb --- /dev/null +++ b/node_modules/css-tree/cjs/lexer/error.cjs @@ -0,0 +1,128 @@ +'use strict'; + +const createCustomError = require('../utils/create-custom-error.cjs'); +const generate = require('../definition-syntax/generate.cjs'); + +const defaultLoc = { offset: 0, line: 1, column: 1 }; + +function locateMismatch(matchResult, node) { + const tokens = matchResult.tokens; + const longestMatch = matchResult.longestMatch; + const mismatchNode = longestMatch < tokens.length ? tokens[longestMatch].node || null : null; + const badNode = mismatchNode !== node ? mismatchNode : null; + let mismatchOffset = 0; + let mismatchLength = 0; + let entries = 0; + let css = ''; + let start; + let end; + + for (let i = 0; i < tokens.length; i++) { + const token = tokens[i].value; + + if (i === longestMatch) { + mismatchLength = token.length; + mismatchOffset = css.length; + } + + if (badNode !== null && tokens[i].node === badNode) { + if (i <= longestMatch) { + entries++; + } else { + entries = 0; + } + } + + css += token; + } + + if (longestMatch === tokens.length || entries > 1) { // last + start = fromLoc(badNode || node, 'end') || buildLoc(defaultLoc, css); + end = buildLoc(start); + } else { + start = fromLoc(badNode, 'start') || + buildLoc(fromLoc(node, 'start') || defaultLoc, css.slice(0, mismatchOffset)); + end = fromLoc(badNode, 'end') || + buildLoc(start, css.substr(mismatchOffset, mismatchLength)); + } + + return { + css, + mismatchOffset, + mismatchLength, + start, + end + }; +} + +function fromLoc(node, point) { + const value = node && node.loc && node.loc[point]; + + if (value) { + return 'line' in value ? buildLoc(value) : value; + } + + return null; +} + +function buildLoc({ offset, line, column }, extra) { + const loc = { + offset, + line, + column + }; + + if (extra) { + const lines = extra.split(/\n|\r\n?|\f/); + + loc.offset += extra.length; + loc.line += lines.length - 1; + loc.column = lines.length === 1 ? loc.column + extra.length : lines.pop().length + 1; + } + + return loc; +} + +const SyntaxReferenceError = function(type, referenceName) { + const error = createCustomError.createCustomError( + 'SyntaxReferenceError', + type + (referenceName ? ' `' + referenceName + '`' : '') + ); + + error.reference = referenceName; + + return error; +}; + +const SyntaxMatchError = function(message, syntax, node, matchResult) { + const error = createCustomError.createCustomError('SyntaxMatchError', message); + const { + css, + mismatchOffset, + mismatchLength, + start, + end + } = locateMismatch(matchResult, node); + + error.rawMessage = message; + error.syntax = syntax ? generate.generate(syntax) : ''; + error.css = css; + error.mismatchOffset = mismatchOffset; + error.mismatchLength = mismatchLength; + error.message = message + '\n' + + ' syntax: ' + error.syntax + '\n' + + ' value: ' + (css || '') + '\n' + + ' --------' + new Array(error.mismatchOffset + 1).join('-') + '^'; + + Object.assign(error, start); + error.loc = { + source: (node && node.loc && node.loc.source) || '', + start, + end + }; + + return error; +}; + +exports.SyntaxMatchError = SyntaxMatchError; +exports.SyntaxReferenceError = SyntaxReferenceError; diff --git a/node_modules/css-tree/cjs/lexer/generic-an-plus-b.cjs b/node_modules/css-tree/cjs/lexer/generic-an-plus-b.cjs new file mode 100644 index 00000000..a5dfba3e --- /dev/null +++ b/node_modules/css-tree/cjs/lexer/generic-an-plus-b.cjs @@ -0,0 +1,235 @@ +'use strict'; + +const charCodeDefinitions = require('../tokenizer/char-code-definitions.cjs'); +const types = require('../tokenizer/types.cjs'); +const utils = require('../tokenizer/utils.cjs'); + +const PLUSSIGN = 0x002B; // U+002B PLUS SIGN (+) +const HYPHENMINUS = 0x002D; // U+002D HYPHEN-MINUS (-) +const N = 0x006E; // U+006E LATIN SMALL LETTER N (n) +const DISALLOW_SIGN = true; +const ALLOW_SIGN = false; + +function isDelim(token, code) { + return token !== null && token.type === types.Delim && token.value.charCodeAt(0) === code; +} + +function skipSC(token, offset, getNextToken) { + while (token !== null && (token.type === types.WhiteSpace || token.type === types.Comment)) { + token = getNextToken(++offset); + } + + return offset; +} + +function checkInteger(token, valueOffset, disallowSign, offset) { + if (!token) { + return 0; + } + + const code = token.value.charCodeAt(valueOffset); + + if (code === PLUSSIGN || code === HYPHENMINUS) { + if (disallowSign) { + // Number sign is not allowed + return 0; + } + valueOffset++; + } + + for (; valueOffset < token.value.length; valueOffset++) { + if (!charCodeDefinitions.isDigit(token.value.charCodeAt(valueOffset))) { + // Integer is expected + return 0; + } + } + + return offset + 1; +} + +// ... +// ... ['+' | '-'] +function consumeB(token, offset_, getNextToken) { + let sign = false; + let offset = skipSC(token, offset_, getNextToken); + + token = getNextToken(offset); + + if (token === null) { + return offset_; + } + + if (token.type !== types.Number) { + if (isDelim(token, PLUSSIGN) || isDelim(token, HYPHENMINUS)) { + sign = true; + offset = skipSC(getNextToken(++offset), offset, getNextToken); + token = getNextToken(offset); + + if (token === null || token.type !== types.Number) { + return 0; + } + } else { + return offset_; + } + } + + if (!sign) { + const code = token.value.charCodeAt(0); + if (code !== PLUSSIGN && code !== HYPHENMINUS) { + // Number sign is expected + return 0; + } + } + + return checkInteger(token, sign ? 0 : 1, sign, offset); +} + +// An+B microsyntax https://www.w3.org/TR/css-syntax-3/#anb +function anPlusB(token, getNextToken) { + /* eslint-disable brace-style*/ + let offset = 0; + + if (!token) { + return 0; + } + + // + if (token.type === types.Number) { + return checkInteger(token, 0, ALLOW_SIGN, offset); // b + } + + // -n + // -n + // -n ['+' | '-'] + // -n- + // + else if (token.type === types.Ident && token.value.charCodeAt(0) === HYPHENMINUS) { + // expect 1st char is N + if (!utils.cmpChar(token.value, 1, N)) { + return 0; + } + + switch (token.value.length) { + // -n + // -n + // -n ['+' | '-'] + case 2: + return consumeB(getNextToken(++offset), offset, getNextToken); + + // -n- + case 3: + if (token.value.charCodeAt(2) !== HYPHENMINUS) { + return 0; + } + + offset = skipSC(getNextToken(++offset), offset, getNextToken); + token = getNextToken(offset); + + return checkInteger(token, 0, DISALLOW_SIGN, offset); + + // + default: + if (token.value.charCodeAt(2) !== HYPHENMINUS) { + return 0; + } + + return checkInteger(token, 3, DISALLOW_SIGN, offset); + } + } + + // '+'? n + // '+'? n + // '+'? n ['+' | '-'] + // '+'? n- + // '+'? + else if (token.type === types.Ident || (isDelim(token, PLUSSIGN) && getNextToken(offset + 1).type === types.Ident)) { + // just ignore a plus + if (token.type !== types.Ident) { + token = getNextToken(++offset); + } + + if (token === null || !utils.cmpChar(token.value, 0, N)) { + return 0; + } + + switch (token.value.length) { + // '+'? n + // '+'? n + // '+'? n ['+' | '-'] + case 1: + return consumeB(getNextToken(++offset), offset, getNextToken); + + // '+'? n- + case 2: + if (token.value.charCodeAt(1) !== HYPHENMINUS) { + return 0; + } + + offset = skipSC(getNextToken(++offset), offset, getNextToken); + token = getNextToken(offset); + + return checkInteger(token, 0, DISALLOW_SIGN, offset); + + // '+'? + default: + if (token.value.charCodeAt(1) !== HYPHENMINUS) { + return 0; + } + + return checkInteger(token, 2, DISALLOW_SIGN, offset); + } + } + + // + // + // + // + // ['+' | '-'] + else if (token.type === types.Dimension) { + let code = token.value.charCodeAt(0); + let sign = code === PLUSSIGN || code === HYPHENMINUS ? 1 : 0; + let i = sign; + + for (; i < token.value.length; i++) { + if (!charCodeDefinitions.isDigit(token.value.charCodeAt(i))) { + break; + } + } + + if (i === sign) { + // Integer is expected + return 0; + } + + if (!utils.cmpChar(token.value, i, N)) { + return 0; + } + + // + // + // ['+' | '-'] + if (i + 1 === token.value.length) { + return consumeB(getNextToken(++offset), offset, getNextToken); + } else { + if (token.value.charCodeAt(i + 1) !== HYPHENMINUS) { + return 0; + } + + // + if (i + 2 === token.value.length) { + offset = skipSC(getNextToken(++offset), offset, getNextToken); + token = getNextToken(offset); + + return checkInteger(token, 0, DISALLOW_SIGN, offset); + } + // + else { + return checkInteger(token, i + 2, DISALLOW_SIGN, offset); + } + } + } + + return 0; +} + +module.exports = anPlusB; diff --git a/node_modules/css-tree/cjs/lexer/generic-const.cjs b/node_modules/css-tree/cjs/lexer/generic-const.cjs new file mode 100644 index 00000000..9b9f6157 --- /dev/null +++ b/node_modules/css-tree/cjs/lexer/generic-const.cjs @@ -0,0 +1,12 @@ +'use strict'; + +// https://drafts.csswg.org/css-cascade-5/ +const cssWideKeywords = [ + 'initial', + 'inherit', + 'unset', + 'revert', + 'revert-layer' +]; + +exports.cssWideKeywords = cssWideKeywords; diff --git a/node_modules/css-tree/cjs/lexer/generic-urange.cjs b/node_modules/css-tree/cjs/lexer/generic-urange.cjs new file mode 100644 index 00000000..ce167bb1 --- /dev/null +++ b/node_modules/css-tree/cjs/lexer/generic-urange.cjs @@ -0,0 +1,149 @@ +'use strict'; + +const charCodeDefinitions = require('../tokenizer/char-code-definitions.cjs'); +const types = require('../tokenizer/types.cjs'); +const utils = require('../tokenizer/utils.cjs'); + +const PLUSSIGN = 0x002B; // U+002B PLUS SIGN (+) +const HYPHENMINUS = 0x002D; // U+002D HYPHEN-MINUS (-) +const QUESTIONMARK = 0x003F; // U+003F QUESTION MARK (?) +const U = 0x0075; // U+0075 LATIN SMALL LETTER U (u) + +function isDelim(token, code) { + return token !== null && token.type === types.Delim && token.value.charCodeAt(0) === code; +} + +function startsWith(token, code) { + return token.value.charCodeAt(0) === code; +} + +function hexSequence(token, offset, allowDash) { + let hexlen = 0; + + for (let pos = offset; pos < token.value.length; pos++) { + const code = token.value.charCodeAt(pos); + + if (code === HYPHENMINUS && allowDash && hexlen !== 0) { + hexSequence(token, offset + hexlen + 1, false); + return 6; // dissallow following question marks + } + + if (!charCodeDefinitions.isHexDigit(code)) { + return 0; // not a hex digit + } + + if (++hexlen > 6) { + return 0; // too many hex digits + } } + + return hexlen; +} + +function withQuestionMarkSequence(consumed, length, getNextToken) { + if (!consumed) { + return 0; // nothing consumed + } + + while (isDelim(getNextToken(length), QUESTIONMARK)) { + if (++consumed > 6) { + return 0; // too many question marks + } + + length++; + } + + return length; +} + +// https://drafts.csswg.org/css-syntax/#urange +// Informally, the production has three forms: +// U+0001 +// Defines a range consisting of a single code point, in this case the code point "1". +// U+0001-00ff +// Defines a range of codepoints between the first and the second value, in this case +// the range between "1" and "ff" (255 in decimal) inclusive. +// U+00?? +// Defines a range of codepoints where the "?" characters range over all hex digits, +// in this case defining the same as the value U+0000-00ff. +// In each form, a maximum of 6 digits is allowed for each hexadecimal number (if you treat "?" as a hexadecimal digit). +// +// = +// u '+' '?'* | +// u '?'* | +// u '?'* | +// u | +// u | +// u '+' '?'+ +function urange(token, getNextToken) { + let length = 0; + + // should start with `u` or `U` + if (token === null || token.type !== types.Ident || !utils.cmpChar(token.value, 0, U)) { + return 0; + } + + token = getNextToken(++length); + if (token === null) { + return 0; + } + + // u '+' '?'* + // u '+' '?'+ + if (isDelim(token, PLUSSIGN)) { + token = getNextToken(++length); + if (token === null) { + return 0; + } + + if (token.type === types.Ident) { + // u '+' '?'* + return withQuestionMarkSequence(hexSequence(token, 0, true), ++length, getNextToken); + } + + if (isDelim(token, QUESTIONMARK)) { + // u '+' '?'+ + return withQuestionMarkSequence(1, ++length, getNextToken); + } + + // Hex digit or question mark is expected + return 0; + } + + // u '?'* + // u + // u + if (token.type === types.Number) { + const consumedHexLength = hexSequence(token, 1, true); + if (consumedHexLength === 0) { + return 0; + } + + token = getNextToken(++length); + if (token === null) { + // u + return length; + } + + if (token.type === types.Dimension || token.type === types.Number) { + // u + // u + if (!startsWith(token, HYPHENMINUS) || !hexSequence(token, 1, false)) { + return 0; + } + + return length + 1; + } + + // u '?'* + return withQuestionMarkSequence(consumedHexLength, length, getNextToken); + } + + // u '?'* + if (token.type === types.Dimension) { + return withQuestionMarkSequence(hexSequence(token, 1, true), ++length, getNextToken); + } + + return 0; +} + +module.exports = urange; diff --git a/node_modules/css-tree/cjs/lexer/generic.cjs b/node_modules/css-tree/cjs/lexer/generic.cjs new file mode 100644 index 00000000..84899113 --- /dev/null +++ b/node_modules/css-tree/cjs/lexer/generic.cjs @@ -0,0 +1,589 @@ +'use strict'; + +const genericConst = require('./generic-const.cjs'); +const genericAnPlusB = require('./generic-an-plus-b.cjs'); +const genericUrange = require('./generic-urange.cjs'); +const charCodeDefinitions = require('../tokenizer/char-code-definitions.cjs'); +const types = require('../tokenizer/types.cjs'); +const utils = require('../tokenizer/utils.cjs'); + +const calcFunctionNames = ['calc(', '-moz-calc(', '-webkit-calc(']; +const balancePair = new Map([ + [types.Function, types.RightParenthesis], + [types.LeftParenthesis, types.RightParenthesis], + [types.LeftSquareBracket, types.RightSquareBracket], + [types.LeftCurlyBracket, types.RightCurlyBracket] +]); + +// safe char code getter +function charCodeAt(str, index) { + return index < str.length ? str.charCodeAt(index) : 0; +} + +function eqStr(actual, expected) { + return utils.cmpStr(actual, 0, actual.length, expected); +} + +function eqStrAny(actual, expected) { + for (let i = 0; i < expected.length; i++) { + if (eqStr(actual, expected[i])) { + return true; + } + } + + return false; +} + +// IE postfix hack, i.e. 123\0 or 123px\9 +function isPostfixIeHack(str, offset) { + if (offset !== str.length - 2) { + return false; + } + + return ( + charCodeAt(str, offset) === 0x005C && // U+005C REVERSE SOLIDUS (\) + charCodeDefinitions.isDigit(charCodeAt(str, offset + 1)) + ); +} + +function outOfRange(opts, value, numEnd) { + if (opts && opts.type === 'Range') { + const num = Number( + numEnd !== undefined && numEnd !== value.length + ? value.substr(0, numEnd) + : value + ); + + if (isNaN(num)) { + return true; + } + + // FIXME: when opts.min is a string it's a dimension, skip a range validation + // for now since it requires a type covertation which is not implmented yet + if (opts.min !== null && num < opts.min && typeof opts.min !== 'string') { + return true; + } + + // FIXME: when opts.max is a string it's a dimension, skip a range validation + // for now since it requires a type covertation which is not implmented yet + if (opts.max !== null && num > opts.max && typeof opts.max !== 'string') { + return true; + } + } + + return false; +} + +function consumeFunction(token, getNextToken) { + let balanceCloseType = 0; + let balanceStash = []; + let length = 0; + + // balanced token consuming + scan: + do { + switch (token.type) { + case types.RightCurlyBracket: + case types.RightParenthesis: + case types.RightSquareBracket: + if (token.type !== balanceCloseType) { + break scan; + } + + balanceCloseType = balanceStash.pop(); + + if (balanceStash.length === 0) { + length++; + break scan; + } + + break; + + case types.Function: + case types.LeftParenthesis: + case types.LeftSquareBracket: + case types.LeftCurlyBracket: + balanceStash.push(balanceCloseType); + balanceCloseType = balancePair.get(token.type); + break; + } + + length++; + } while (token = getNextToken(length)); + + return length; +} + +// TODO: implement +// can be used wherever , , ,

;UMt4;t3d@Q&tOgAM^b$CgXw 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 z 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 z