@pyscript/core 0.5.4 → 0.5.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/{codemirror-BBnQ0LtX.js → codemirror-jVwF0Nvq.js} +2 -2
- package/dist/{codemirror-BBnQ0LtX.js.map → codemirror-jVwF0Nvq.js.map} +1 -1
- package/dist/{codemirror_commands-CaIwHoAf.js → codemirror_commands-DbitAX-b.js} +2 -2
- package/dist/{codemirror_commands-CaIwHoAf.js.map → codemirror_commands-DbitAX-b.js.map} +1 -1
- package/dist/{codemirror_lang-python-2HrDgj8s.js → codemirror_lang-python-BFQ6m-eH.js} +2 -2
- package/dist/{codemirror_lang-python-2HrDgj8s.js.map → codemirror_lang-python-BFQ6m-eH.js.map} +1 -1
- package/dist/{codemirror_language-DVNAhaKA.js → codemirror_language-DADyF0Bo.js} +2 -2
- package/dist/{codemirror_language-DVNAhaKA.js.map → codemirror_language-DADyF0Bo.js.map} +1 -1
- package/dist/codemirror_view-Dlz0Kbbt.js +2 -0
- package/dist/codemirror_view-Dlz0Kbbt.js.map +1 -0
- package/dist/{core-DgBZe1hs.js → core-CTEtvlA4.js} +2 -2
- package/dist/{core-DgBZe1hs.js.map → core-CTEtvlA4.js.map} +1 -1
- package/dist/core.js +1 -1
- package/dist/{deprecations-manager-DAjcp9Ks.js → deprecations-manager-CM6Wb8Rc.js} +2 -2
- package/dist/{deprecations-manager-DAjcp9Ks.js.map → deprecations-manager-CM6Wb8Rc.js.map} +1 -1
- package/dist/{error-BufXjGgq.js → error-l5R-P7f3.js} +2 -2
- package/dist/{error-BufXjGgq.js.map → error-l5R-P7f3.js.map} +1 -1
- package/dist/{index-BZvYCKeH.js → index-B4WHjyIA.js} +2 -2
- package/dist/{index-BZvYCKeH.js.map → index-B4WHjyIA.js.map} +1 -1
- package/dist/{mpy-BiOv4Pgw.js → mpy-BNvtf9__.js} +2 -2
- package/dist/{mpy-BiOv4Pgw.js.map → mpy-BNvtf9__.js.map} +1 -1
- package/dist/{py-B48qHSuV.js → py-BAQCFqly.js} +2 -2
- package/dist/{py-B48qHSuV.js.map → py-BAQCFqly.js.map} +1 -1
- package/dist/{py-editor-CyZA5xXK.js → py-editor-DGWcFYn9.js} +2 -2
- package/dist/{py-editor-CyZA5xXK.js.map → py-editor-DGWcFYn9.js.map} +1 -1
- package/dist/{py-terminal-CyYWBE4G.js → py-terminal-C7Chu5Tz.js} +2 -2
- package/dist/{py-terminal-CyYWBE4G.js.map → py-terminal-C7Chu5Tz.js.map} +1 -1
- package/env/bin/Activate.ps1 +247 -0
- package/env/bin/activate +70 -0
- package/env/bin/activate.csh +27 -0
- package/env/bin/activate.fish +69 -0
- package/env/bin/pip +8 -0
- package/env/bin/pip3 +8 -0
- package/env/bin/pip3.12 +8 -0
- package/env/bin/pyminify +8 -0
- package/env/lib/python3.12/site-packages/_distutils_hack/__init__.py +240 -0
- package/env/lib/python3.12/site-packages/_distutils_hack/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/_distutils_hack/__pycache__/override.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/_distutils_hack/override.py +1 -0
- package/env/lib/python3.12/site-packages/distutils-precedence.pth +1 -0
- package/env/lib/python3.12/site-packages/pip/__init__.py +13 -0
- package/env/lib/python3.12/site-packages/pip/__main__.py +24 -0
- package/env/lib/python3.12/site-packages/pip/__pip-runner__.py +50 -0
- package/env/lib/python3.12/site-packages/pip/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/__pycache__/__main__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/__pycache__/__pip-runner__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/__init__.py +18 -0
- package/env/lib/python3.12/site-packages/pip/_internal/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/__pycache__/build_env.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/__pycache__/cache.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/__pycache__/configuration.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/__pycache__/exceptions.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/__pycache__/main.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/__pycache__/pyproject.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/__pycache__/self_outdated_check.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/__pycache__/wheel_builder.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/build_env.py +315 -0
- package/env/lib/python3.12/site-packages/pip/_internal/cache.py +290 -0
- package/env/lib/python3.12/site-packages/pip/_internal/cli/__init__.py +4 -0
- package/env/lib/python3.12/site-packages/pip/_internal/cli/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/cli/__pycache__/autocompletion.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/cli/__pycache__/base_command.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/cli/__pycache__/cmdoptions.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/cli/__pycache__/command_context.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/cli/__pycache__/index_command.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/cli/__pycache__/main.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/cli/__pycache__/main_parser.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/cli/__pycache__/parser.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/cli/__pycache__/progress_bars.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/cli/__pycache__/req_command.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/cli/__pycache__/spinners.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/cli/__pycache__/status_codes.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/cli/autocompletion.py +176 -0
- package/env/lib/python3.12/site-packages/pip/_internal/cli/base_command.py +231 -0
- package/env/lib/python3.12/site-packages/pip/_internal/cli/cmdoptions.py +1075 -0
- package/env/lib/python3.12/site-packages/pip/_internal/cli/command_context.py +27 -0
- package/env/lib/python3.12/site-packages/pip/_internal/cli/index_command.py +170 -0
- package/env/lib/python3.12/site-packages/pip/_internal/cli/main.py +80 -0
- package/env/lib/python3.12/site-packages/pip/_internal/cli/main_parser.py +134 -0
- package/env/lib/python3.12/site-packages/pip/_internal/cli/parser.py +294 -0
- package/env/lib/python3.12/site-packages/pip/_internal/cli/progress_bars.py +94 -0
- package/env/lib/python3.12/site-packages/pip/_internal/cli/req_command.py +329 -0
- package/env/lib/python3.12/site-packages/pip/_internal/cli/spinners.py +159 -0
- package/env/lib/python3.12/site-packages/pip/_internal/cli/status_codes.py +6 -0
- package/env/lib/python3.12/site-packages/pip/_internal/commands/__init__.py +132 -0
- package/env/lib/python3.12/site-packages/pip/_internal/commands/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/commands/__pycache__/cache.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/commands/__pycache__/check.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/commands/__pycache__/completion.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/commands/__pycache__/configuration.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/commands/__pycache__/debug.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/commands/__pycache__/download.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/commands/__pycache__/freeze.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/commands/__pycache__/hash.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/commands/__pycache__/help.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/commands/__pycache__/index.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/commands/__pycache__/inspect.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/commands/__pycache__/install.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/commands/__pycache__/list.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/commands/__pycache__/search.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/commands/__pycache__/show.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/commands/__pycache__/uninstall.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/commands/__pycache__/wheel.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/commands/cache.py +225 -0
- package/env/lib/python3.12/site-packages/pip/_internal/commands/check.py +67 -0
- package/env/lib/python3.12/site-packages/pip/_internal/commands/completion.py +130 -0
- package/env/lib/python3.12/site-packages/pip/_internal/commands/configuration.py +280 -0
- package/env/lib/python3.12/site-packages/pip/_internal/commands/debug.py +201 -0
- package/env/lib/python3.12/site-packages/pip/_internal/commands/download.py +146 -0
- package/env/lib/python3.12/site-packages/pip/_internal/commands/freeze.py +109 -0
- package/env/lib/python3.12/site-packages/pip/_internal/commands/hash.py +59 -0
- package/env/lib/python3.12/site-packages/pip/_internal/commands/help.py +41 -0
- package/env/lib/python3.12/site-packages/pip/_internal/commands/index.py +139 -0
- package/env/lib/python3.12/site-packages/pip/_internal/commands/inspect.py +92 -0
- package/env/lib/python3.12/site-packages/pip/_internal/commands/install.py +783 -0
- package/env/lib/python3.12/site-packages/pip/_internal/commands/list.py +375 -0
- package/env/lib/python3.12/site-packages/pip/_internal/commands/search.py +172 -0
- package/env/lib/python3.12/site-packages/pip/_internal/commands/show.py +217 -0
- package/env/lib/python3.12/site-packages/pip/_internal/commands/uninstall.py +114 -0
- package/env/lib/python3.12/site-packages/pip/_internal/commands/wheel.py +182 -0
- package/env/lib/python3.12/site-packages/pip/_internal/configuration.py +383 -0
- package/env/lib/python3.12/site-packages/pip/_internal/distributions/__init__.py +21 -0
- package/env/lib/python3.12/site-packages/pip/_internal/distributions/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/distributions/__pycache__/base.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/distributions/__pycache__/installed.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/distributions/__pycache__/sdist.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/distributions/__pycache__/wheel.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/distributions/base.py +53 -0
- package/env/lib/python3.12/site-packages/pip/_internal/distributions/installed.py +29 -0
- package/env/lib/python3.12/site-packages/pip/_internal/distributions/sdist.py +158 -0
- package/env/lib/python3.12/site-packages/pip/_internal/distributions/wheel.py +42 -0
- package/env/lib/python3.12/site-packages/pip/_internal/exceptions.py +777 -0
- package/env/lib/python3.12/site-packages/pip/_internal/index/__init__.py +2 -0
- package/env/lib/python3.12/site-packages/pip/_internal/index/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/index/__pycache__/collector.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/index/__pycache__/package_finder.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/index/__pycache__/sources.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/index/collector.py +494 -0
- package/env/lib/python3.12/site-packages/pip/_internal/index/package_finder.py +1020 -0
- package/env/lib/python3.12/site-packages/pip/_internal/index/sources.py +285 -0
- package/env/lib/python3.12/site-packages/pip/_internal/locations/__init__.py +456 -0
- package/env/lib/python3.12/site-packages/pip/_internal/locations/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/locations/__pycache__/_distutils.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/locations/__pycache__/_sysconfig.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/locations/__pycache__/base.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/locations/_distutils.py +172 -0
- package/env/lib/python3.12/site-packages/pip/_internal/locations/_sysconfig.py +214 -0
- package/env/lib/python3.12/site-packages/pip/_internal/locations/base.py +81 -0
- package/env/lib/python3.12/site-packages/pip/_internal/main.py +12 -0
- package/env/lib/python3.12/site-packages/pip/_internal/metadata/__init__.py +128 -0
- package/env/lib/python3.12/site-packages/pip/_internal/metadata/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/metadata/__pycache__/_json.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/metadata/__pycache__/base.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/metadata/__pycache__/pkg_resources.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/metadata/_json.py +84 -0
- package/env/lib/python3.12/site-packages/pip/_internal/metadata/base.py +688 -0
- package/env/lib/python3.12/site-packages/pip/_internal/metadata/importlib/__init__.py +6 -0
- package/env/lib/python3.12/site-packages/pip/_internal/metadata/importlib/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/metadata/importlib/__pycache__/_compat.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/metadata/importlib/__pycache__/_dists.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/metadata/importlib/__pycache__/_envs.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/metadata/importlib/_compat.py +85 -0
- package/env/lib/python3.12/site-packages/pip/_internal/metadata/importlib/_dists.py +221 -0
- package/env/lib/python3.12/site-packages/pip/_internal/metadata/importlib/_envs.py +189 -0
- package/env/lib/python3.12/site-packages/pip/_internal/metadata/pkg_resources.py +301 -0
- package/env/lib/python3.12/site-packages/pip/_internal/models/__init__.py +2 -0
- package/env/lib/python3.12/site-packages/pip/_internal/models/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/models/__pycache__/candidate.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/models/__pycache__/direct_url.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/models/__pycache__/format_control.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/models/__pycache__/index.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/models/__pycache__/installation_report.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/models/__pycache__/link.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/models/__pycache__/scheme.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/models/__pycache__/search_scope.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/models/__pycache__/selection_prefs.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/models/__pycache__/target_python.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/models/__pycache__/wheel.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/models/candidate.py +25 -0
- package/env/lib/python3.12/site-packages/pip/_internal/models/direct_url.py +224 -0
- package/env/lib/python3.12/site-packages/pip/_internal/models/format_control.py +78 -0
- package/env/lib/python3.12/site-packages/pip/_internal/models/index.py +28 -0
- package/env/lib/python3.12/site-packages/pip/_internal/models/installation_report.py +56 -0
- package/env/lib/python3.12/site-packages/pip/_internal/models/link.py +590 -0
- package/env/lib/python3.12/site-packages/pip/_internal/models/scheme.py +25 -0
- package/env/lib/python3.12/site-packages/pip/_internal/models/search_scope.py +127 -0
- package/env/lib/python3.12/site-packages/pip/_internal/models/selection_prefs.py +53 -0
- package/env/lib/python3.12/site-packages/pip/_internal/models/target_python.py +121 -0
- package/env/lib/python3.12/site-packages/pip/_internal/models/wheel.py +93 -0
- package/env/lib/python3.12/site-packages/pip/_internal/network/__init__.py +2 -0
- package/env/lib/python3.12/site-packages/pip/_internal/network/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/network/__pycache__/auth.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/network/__pycache__/cache.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/network/__pycache__/download.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/network/__pycache__/lazy_wheel.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/network/__pycache__/session.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/network/__pycache__/utils.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/network/__pycache__/xmlrpc.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/network/auth.py +566 -0
- package/env/lib/python3.12/site-packages/pip/_internal/network/cache.py +106 -0
- package/env/lib/python3.12/site-packages/pip/_internal/network/download.py +187 -0
- package/env/lib/python3.12/site-packages/pip/_internal/network/lazy_wheel.py +210 -0
- package/env/lib/python3.12/site-packages/pip/_internal/network/session.py +522 -0
- package/env/lib/python3.12/site-packages/pip/_internal/network/utils.py +98 -0
- package/env/lib/python3.12/site-packages/pip/_internal/network/xmlrpc.py +62 -0
- package/env/lib/python3.12/site-packages/pip/_internal/operations/__init__.py +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/operations/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/operations/__pycache__/check.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/operations/__pycache__/freeze.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/operations/__pycache__/prepare.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/operations/build/__init__.py +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/operations/build/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/operations/build/__pycache__/build_tracker.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/operations/build/__pycache__/metadata.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/operations/build/__pycache__/metadata_editable.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/operations/build/__pycache__/metadata_legacy.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/operations/build/__pycache__/wheel.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/operations/build/__pycache__/wheel_editable.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/operations/build/__pycache__/wheel_legacy.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/operations/build/build_tracker.py +138 -0
- package/env/lib/python3.12/site-packages/pip/_internal/operations/build/metadata.py +39 -0
- package/env/lib/python3.12/site-packages/pip/_internal/operations/build/metadata_editable.py +41 -0
- package/env/lib/python3.12/site-packages/pip/_internal/operations/build/metadata_legacy.py +74 -0
- package/env/lib/python3.12/site-packages/pip/_internal/operations/build/wheel.py +37 -0
- package/env/lib/python3.12/site-packages/pip/_internal/operations/build/wheel_editable.py +46 -0
- package/env/lib/python3.12/site-packages/pip/_internal/operations/build/wheel_legacy.py +102 -0
- package/env/lib/python3.12/site-packages/pip/_internal/operations/check.py +181 -0
- package/env/lib/python3.12/site-packages/pip/_internal/operations/freeze.py +258 -0
- package/env/lib/python3.12/site-packages/pip/_internal/operations/install/__init__.py +2 -0
- package/env/lib/python3.12/site-packages/pip/_internal/operations/install/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/operations/install/__pycache__/editable_legacy.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/operations/install/__pycache__/wheel.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/operations/install/editable_legacy.py +47 -0
- package/env/lib/python3.12/site-packages/pip/_internal/operations/install/wheel.py +741 -0
- package/env/lib/python3.12/site-packages/pip/_internal/operations/prepare.py +732 -0
- package/env/lib/python3.12/site-packages/pip/_internal/pyproject.py +185 -0
- package/env/lib/python3.12/site-packages/pip/_internal/req/__init__.py +90 -0
- package/env/lib/python3.12/site-packages/pip/_internal/req/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/req/__pycache__/constructors.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/req/__pycache__/req_file.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/req/__pycache__/req_install.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/req/__pycache__/req_set.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/req/__pycache__/req_uninstall.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/req/constructors.py +560 -0
- package/env/lib/python3.12/site-packages/pip/_internal/req/req_file.py +551 -0
- package/env/lib/python3.12/site-packages/pip/_internal/req/req_install.py +934 -0
- package/env/lib/python3.12/site-packages/pip/_internal/req/req_set.py +82 -0
- package/env/lib/python3.12/site-packages/pip/_internal/req/req_uninstall.py +633 -0
- package/env/lib/python3.12/site-packages/pip/_internal/resolution/__init__.py +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/resolution/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/resolution/__pycache__/base.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/resolution/base.py +20 -0
- package/env/lib/python3.12/site-packages/pip/_internal/resolution/legacy/__init__.py +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/resolution/legacy/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/resolution/legacy/__pycache__/resolver.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/resolution/legacy/resolver.py +597 -0
- package/env/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/__init__.py +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/__pycache__/base.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/__pycache__/candidates.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/__pycache__/factory.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/__pycache__/found_candidates.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/__pycache__/provider.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/__pycache__/reporter.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/__pycache__/requirements.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/__pycache__/resolver.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/base.py +139 -0
- package/env/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/candidates.py +569 -0
- package/env/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/factory.py +817 -0
- package/env/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/found_candidates.py +174 -0
- package/env/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/provider.py +258 -0
- package/env/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/reporter.py +81 -0
- package/env/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/requirements.py +245 -0
- package/env/lib/python3.12/site-packages/pip/_internal/resolution/resolvelib/resolver.py +317 -0
- package/env/lib/python3.12/site-packages/pip/_internal/self_outdated_check.py +244 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/__init__.py +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/_jaraco_text.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/_log.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/appdirs.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/compat.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/compatibility_tags.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/datetime.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/deprecation.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/direct_url_helpers.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/egg_link.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/encoding.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/entrypoints.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/filesystem.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/filetypes.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/glibc.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/hashes.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/logging.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/misc.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/packaging.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/retry.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/setuptools_build.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/subprocess.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/temp_dir.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/unpacking.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/urls.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/virtualenv.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/__pycache__/wheel.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/_jaraco_text.py +109 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/_log.py +38 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/appdirs.py +52 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/compat.py +79 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/compatibility_tags.py +165 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/datetime.py +11 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/deprecation.py +124 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/direct_url_helpers.py +87 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/egg_link.py +80 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/encoding.py +36 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/entrypoints.py +84 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/filesystem.py +149 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/filetypes.py +27 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/glibc.py +101 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/hashes.py +147 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/logging.py +347 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/misc.py +777 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/packaging.py +57 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/retry.py +42 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/setuptools_build.py +146 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/subprocess.py +245 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/temp_dir.py +296 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/unpacking.py +337 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/urls.py +55 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/virtualenv.py +104 -0
- package/env/lib/python3.12/site-packages/pip/_internal/utils/wheel.py +134 -0
- package/env/lib/python3.12/site-packages/pip/_internal/vcs/__init__.py +15 -0
- package/env/lib/python3.12/site-packages/pip/_internal/vcs/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/vcs/__pycache__/bazaar.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/vcs/__pycache__/git.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/vcs/__pycache__/mercurial.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/vcs/__pycache__/subversion.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/vcs/__pycache__/versioncontrol.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_internal/vcs/bazaar.py +112 -0
- package/env/lib/python3.12/site-packages/pip/_internal/vcs/git.py +527 -0
- package/env/lib/python3.12/site-packages/pip/_internal/vcs/mercurial.py +163 -0
- package/env/lib/python3.12/site-packages/pip/_internal/vcs/subversion.py +324 -0
- package/env/lib/python3.12/site-packages/pip/_internal/vcs/versioncontrol.py +688 -0
- package/env/lib/python3.12/site-packages/pip/_internal/wheel_builder.py +354 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/__init__.py +116 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/__pycache__/typing_extensions.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/cachecontrol/__init__.py +28 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/cachecontrol/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/cachecontrol/__pycache__/_cmd.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/cachecontrol/__pycache__/adapter.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/cachecontrol/__pycache__/cache.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/cachecontrol/__pycache__/controller.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/cachecontrol/__pycache__/filewrapper.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/cachecontrol/__pycache__/heuristics.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/cachecontrol/__pycache__/serialize.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/cachecontrol/__pycache__/wrapper.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/cachecontrol/_cmd.py +70 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/cachecontrol/adapter.py +161 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/cachecontrol/cache.py +74 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/cachecontrol/caches/__init__.py +8 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/cachecontrol/caches/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/cachecontrol/caches/__pycache__/file_cache.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/cachecontrol/caches/__pycache__/redis_cache.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/cachecontrol/caches/file_cache.py +182 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/cachecontrol/caches/redis_cache.py +48 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/cachecontrol/controller.py +499 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/cachecontrol/filewrapper.py +119 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/cachecontrol/heuristics.py +154 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/cachecontrol/py.typed +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/cachecontrol/serialize.py +146 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/cachecontrol/wrapper.py +43 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/certifi/__init__.py +4 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/certifi/__main__.py +12 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/certifi/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/certifi/__pycache__/__main__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/certifi/__pycache__/core.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/certifi/cacert.pem +4798 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/certifi/core.py +114 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/certifi/py.typed +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/distlib/__init__.py +33 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/distlib/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/distlib/__pycache__/compat.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/distlib/__pycache__/database.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/distlib/__pycache__/index.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/distlib/__pycache__/locators.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/distlib/__pycache__/manifest.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/distlib/__pycache__/markers.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/distlib/__pycache__/metadata.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/distlib/__pycache__/resources.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/distlib/__pycache__/scripts.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/distlib/__pycache__/util.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/distlib/__pycache__/version.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/distlib/__pycache__/wheel.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/distlib/compat.py +1138 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/distlib/database.py +1359 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/distlib/index.py +508 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/distlib/locators.py +1303 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/distlib/manifest.py +384 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/distlib/markers.py +167 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/distlib/metadata.py +1068 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/distlib/resources.py +358 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/distlib/scripts.py +466 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/distlib/t32.exe +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/distlib/t64-arm.exe +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/distlib/t64.exe +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/distlib/util.py +2025 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/distlib/version.py +751 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/distlib/w32.exe +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/distlib/w64-arm.exe +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/distlib/w64.exe +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/distlib/wheel.py +1099 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/distro/__init__.py +54 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/distro/__main__.py +4 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/distro/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/distro/__pycache__/__main__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/distro/__pycache__/distro.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/distro/distro.py +1403 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/distro/py.typed +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/idna/__init__.py +44 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/idna/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/idna/__pycache__/codec.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/idna/__pycache__/compat.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/idna/__pycache__/core.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/idna/__pycache__/idnadata.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/idna/__pycache__/intranges.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/idna/__pycache__/package_data.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/idna/__pycache__/uts46data.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/idna/codec.py +118 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/idna/compat.py +13 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/idna/core.py +395 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/idna/idnadata.py +4245 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/idna/intranges.py +54 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/idna/package_data.py +2 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/idna/py.typed +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/idna/uts46data.py +8598 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/msgpack/__init__.py +55 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/msgpack/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/msgpack/__pycache__/exceptions.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/msgpack/__pycache__/ext.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/msgpack/__pycache__/fallback.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/msgpack/exceptions.py +48 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/msgpack/ext.py +168 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/msgpack/fallback.py +951 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/packaging/__init__.py +15 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/packaging/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/packaging/__pycache__/_elffile.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/packaging/__pycache__/_manylinux.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/packaging/__pycache__/_musllinux.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/packaging/__pycache__/_parser.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/packaging/__pycache__/_structures.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/packaging/__pycache__/_tokenizer.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/packaging/__pycache__/markers.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/packaging/__pycache__/metadata.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/packaging/__pycache__/requirements.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/packaging/__pycache__/specifiers.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/packaging/__pycache__/tags.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/packaging/__pycache__/utils.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/packaging/__pycache__/version.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/packaging/_elffile.py +110 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/packaging/_manylinux.py +262 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/packaging/_musllinux.py +85 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/packaging/_parser.py +354 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/packaging/_structures.py +61 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/packaging/_tokenizer.py +194 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/packaging/markers.py +325 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/packaging/metadata.py +804 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/packaging/py.typed +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/packaging/requirements.py +91 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/packaging/specifiers.py +1009 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/packaging/tags.py +568 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/packaging/utils.py +174 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/packaging/version.py +563 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pkg_resources/__init__.py +3676 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pkg_resources/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/platformdirs/__init__.py +627 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/platformdirs/__main__.py +55 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/platformdirs/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/platformdirs/__pycache__/__main__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/platformdirs/__pycache__/android.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/platformdirs/__pycache__/api.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/platformdirs/__pycache__/macos.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/platformdirs/__pycache__/unix.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/platformdirs/__pycache__/version.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/platformdirs/__pycache__/windows.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/platformdirs/android.py +249 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/platformdirs/api.py +292 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/platformdirs/macos.py +130 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/platformdirs/py.typed +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/platformdirs/unix.py +275 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/platformdirs/version.py +16 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/platformdirs/windows.py +272 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/__init__.py +82 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/__main__.py +17 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/__pycache__/__main__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/__pycache__/cmdline.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/__pycache__/console.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/__pycache__/filter.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/__pycache__/formatter.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/__pycache__/lexer.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/__pycache__/modeline.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/__pycache__/plugin.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/__pycache__/regexopt.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/__pycache__/scanner.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/__pycache__/sphinxext.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/__pycache__/style.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/__pycache__/token.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/__pycache__/unistring.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/__pycache__/util.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/cmdline.py +668 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/console.py +70 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/filter.py +70 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/filters/__init__.py +940 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/filters/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/formatter.py +129 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/__init__.py +157 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/__pycache__/_mapping.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/__pycache__/bbcode.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/__pycache__/groff.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/__pycache__/html.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/__pycache__/img.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/__pycache__/irc.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/__pycache__/latex.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/__pycache__/other.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/__pycache__/pangomarkup.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/__pycache__/rtf.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/__pycache__/svg.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/__pycache__/terminal.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/__pycache__/terminal256.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/_mapping.py +23 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/bbcode.py +108 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/groff.py +170 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/html.py +987 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/img.py +685 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/irc.py +154 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/latex.py +518 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/other.py +160 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/pangomarkup.py +83 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/rtf.py +349 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/svg.py +185 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/terminal.py +127 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/formatters/terminal256.py +338 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/lexer.py +963 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/lexers/__init__.py +362 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/lexers/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/lexers/__pycache__/_mapping.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/lexers/__pycache__/python.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/lexers/_mapping.py +589 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/lexers/python.py +1198 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/modeline.py +43 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/plugin.py +72 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/regexopt.py +91 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/scanner.py +104 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/sphinxext.py +247 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/style.py +203 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/styles/__init__.py +61 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/styles/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/styles/__pycache__/_mapping.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/styles/_mapping.py +54 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/token.py +214 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/unistring.py +153 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pygments/util.py +324 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/__init__.py +23 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/__pycache__/_compat.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/__pycache__/_impl.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_compat.py +8 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_impl.py +330 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/__init__.py +18 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/__pycache__/_in_process.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py +353 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/requests/__init__.py +179 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/requests/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/requests/__pycache__/__version__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/requests/__pycache__/_internal_utils.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/requests/__pycache__/adapters.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/requests/__pycache__/api.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/requests/__pycache__/auth.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/requests/__pycache__/certs.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/requests/__pycache__/compat.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/requests/__pycache__/cookies.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/requests/__pycache__/exceptions.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/requests/__pycache__/help.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/requests/__pycache__/hooks.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/requests/__pycache__/models.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/requests/__pycache__/packages.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/requests/__pycache__/sessions.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/requests/__pycache__/status_codes.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/requests/__pycache__/structures.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/requests/__pycache__/utils.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/requests/__version__.py +14 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/requests/_internal_utils.py +50 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/requests/adapters.py +719 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/requests/api.py +157 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/requests/auth.py +314 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/requests/certs.py +24 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/requests/compat.py +78 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/requests/cookies.py +561 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/requests/exceptions.py +151 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/requests/help.py +127 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/requests/hooks.py +33 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/requests/models.py +1037 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/requests/packages.py +25 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/requests/sessions.py +831 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/requests/status_codes.py +128 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/requests/structures.py +99 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/requests/utils.py +1096 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/resolvelib/__init__.py +26 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/resolvelib/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/resolvelib/__pycache__/providers.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/resolvelib/__pycache__/reporters.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/resolvelib/__pycache__/resolvers.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/resolvelib/__pycache__/structs.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/resolvelib/compat/__init__.py +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/resolvelib/compat/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/resolvelib/compat/__pycache__/collections_abc.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/resolvelib/compat/collections_abc.py +6 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/resolvelib/providers.py +133 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/resolvelib/py.typed +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/resolvelib/reporters.py +43 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/resolvelib/resolvers.py +547 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/resolvelib/structs.py +170 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__init__.py +177 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__main__.py +273 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/__main__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/_cell_widths.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/_emoji_codes.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/_emoji_replace.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/_export_format.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/_extension.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/_fileno.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/_inspect.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/_log_render.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/_loop.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/_null_file.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/_palettes.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/_pick.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/_ratio.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/_spinners.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/_stack.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/_timer.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/_win32_console.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/_windows.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/_windows_renderer.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/_wrap.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/abc.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/align.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/ansi.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/bar.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/box.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/cells.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/color.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/color_triplet.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/columns.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/console.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/constrain.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/containers.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/control.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/default_styles.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/diagnose.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/emoji.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/errors.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/file_proxy.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/filesize.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/highlighter.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/json.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/jupyter.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/layout.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/live.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/live_render.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/logging.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/markup.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/measure.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/padding.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/pager.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/palette.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/panel.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/pretty.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/progress.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/progress_bar.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/prompt.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/protocol.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/region.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/repr.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/rule.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/scope.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/screen.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/segment.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/spinner.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/status.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/style.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/styled.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/syntax.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/table.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/terminal_theme.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/text.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/theme.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/themes.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/traceback.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/__pycache__/tree.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/_cell_widths.py +454 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/_emoji_codes.py +3610 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/_emoji_replace.py +32 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/_export_format.py +76 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/_extension.py +10 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/_fileno.py +24 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/_inspect.py +270 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/_log_render.py +94 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/_loop.py +43 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/_null_file.py +69 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/_palettes.py +309 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/_pick.py +17 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/_ratio.py +159 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/_spinners.py +482 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/_stack.py +16 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/_timer.py +19 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/_win32_console.py +662 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/_windows.py +71 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/_windows_renderer.py +56 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/_wrap.py +93 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/abc.py +33 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/align.py +311 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/ansi.py +240 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/bar.py +93 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/box.py +480 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/cells.py +167 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/color.py +621 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/color_triplet.py +38 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/columns.py +187 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/console.py +2633 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/constrain.py +37 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/containers.py +167 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/control.py +225 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/default_styles.py +190 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/diagnose.py +37 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/emoji.py +96 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/errors.py +34 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/file_proxy.py +57 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/filesize.py +89 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/highlighter.py +232 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/json.py +139 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/jupyter.py +101 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/layout.py +442 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/live.py +375 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/live_render.py +112 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/logging.py +289 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/markup.py +251 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/measure.py +151 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/padding.py +141 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/pager.py +34 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/palette.py +100 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/panel.py +312 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/pretty.py +995 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/progress.py +1699 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/progress_bar.py +223 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/prompt.py +375 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/protocol.py +42 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/py.typed +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/region.py +10 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/repr.py +149 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/rule.py +130 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/scope.py +86 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/screen.py +54 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/segment.py +738 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/spinner.py +137 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/status.py +131 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/style.py +796 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/styled.py +42 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/syntax.py +958 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/table.py +1000 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/terminal_theme.py +153 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/text.py +1357 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/theme.py +115 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/themes.py +5 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/traceback.py +753 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/rich/tree.py +249 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/tomli/__init__.py +11 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/tomli/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/tomli/__pycache__/_parser.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/tomli/__pycache__/_re.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/tomli/__pycache__/_types.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/tomli/_parser.py +691 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/tomli/_re.py +107 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/tomli/_types.py +10 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/tomli/py.typed +1 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/truststore/__init__.py +13 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/truststore/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/truststore/__pycache__/_api.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/truststore/__pycache__/_macos.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/truststore/__pycache__/_openssl.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/truststore/__pycache__/_ssl_constants.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/truststore/__pycache__/_windows.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/truststore/_api.py +313 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/truststore/_macos.py +499 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/truststore/_openssl.py +66 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/truststore/_ssl_constants.py +31 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/truststore/_windows.py +564 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/truststore/py.typed +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/typing_extensions.py +3641 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/__init__.py +102 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/__pycache__/_collections.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/__pycache__/_version.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/__pycache__/connection.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/__pycache__/connectionpool.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/__pycache__/exceptions.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/__pycache__/fields.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/__pycache__/filepost.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/__pycache__/poolmanager.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/__pycache__/request.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/__pycache__/response.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/_collections.py +355 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/_version.py +2 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/connection.py +572 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/connectionpool.py +1137 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/__init__.py +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/__pycache__/_appengine_environ.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/__pycache__/appengine.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/__pycache__/ntlmpool.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/__pycache__/pyopenssl.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/__pycache__/securetransport.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/__pycache__/socks.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/_appengine_environ.py +36 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/_securetransport/__init__.py +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/_securetransport/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/_securetransport/__pycache__/bindings.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/_securetransport/__pycache__/low_level.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/_securetransport/bindings.py +519 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/_securetransport/low_level.py +397 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/appengine.py +314 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/ntlmpool.py +130 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/pyopenssl.py +518 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/securetransport.py +920 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/contrib/socks.py +216 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/exceptions.py +323 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/fields.py +274 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/filepost.py +98 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/packages/__init__.py +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/packages/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/packages/__pycache__/six.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/packages/backports/__init__.py +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/packages/backports/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/packages/backports/__pycache__/makefile.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/packages/backports/__pycache__/weakref_finalize.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/packages/backports/makefile.py +51 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/packages/backports/weakref_finalize.py +155 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/packages/six.py +1076 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/poolmanager.py +540 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/request.py +191 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/response.py +879 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/util/__init__.py +49 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/util/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/util/__pycache__/connection.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/util/__pycache__/proxy.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/util/__pycache__/queue.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/util/__pycache__/request.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/util/__pycache__/response.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/util/__pycache__/retry.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/util/__pycache__/ssl_.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/util/__pycache__/ssl_match_hostname.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/util/__pycache__/ssltransport.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/util/__pycache__/timeout.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/util/__pycache__/url.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/util/__pycache__/wait.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/util/connection.py +149 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/util/proxy.py +57 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/util/queue.py +22 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/util/request.py +137 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/util/response.py +107 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/util/retry.py +620 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/util/ssl_.py +495 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/util/ssl_match_hostname.py +159 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/util/ssltransport.py +221 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/util/timeout.py +271 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/util/url.py +435 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/urllib3/util/wait.py +152 -0
- package/env/lib/python3.12/site-packages/pip/_vendor/vendor.txt +18 -0
- package/env/lib/python3.12/site-packages/pip/py.typed +4 -0
- package/env/lib/python3.12/site-packages/pip-24.2.dist-info/AUTHORS.txt +796 -0
- package/env/lib/python3.12/site-packages/pip-24.2.dist-info/INSTALLER +1 -0
- package/env/lib/python3.12/site-packages/pip-24.2.dist-info/LICENSE.txt +20 -0
- package/env/lib/python3.12/site-packages/pip-24.2.dist-info/METADATA +89 -0
- package/env/lib/python3.12/site-packages/pip-24.2.dist-info/RECORD +853 -0
- package/env/lib/python3.12/site-packages/pip-24.2.dist-info/REQUESTED +0 -0
- package/env/lib/python3.12/site-packages/pip-24.2.dist-info/WHEEL +5 -0
- package/env/lib/python3.12/site-packages/pip-24.2.dist-info/entry_points.txt +3 -0
- package/env/lib/python3.12/site-packages/pip-24.2.dist-info/top_level.txt +1 -0
- package/env/lib/python3.12/site-packages/pkg_resources/__init__.py +3709 -0
- package/env/lib/python3.12/site-packages/pkg_resources/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/pkg_resources/api_tests.txt +424 -0
- package/env/lib/python3.12/site-packages/pkg_resources/py.typed +0 -0
- package/env/lib/python3.12/site-packages/python_minifier/__init__.py +231 -0
- package/env/lib/python3.12/site-packages/python_minifier/__init__.pyi +34 -0
- package/env/lib/python3.12/site-packages/python_minifier/__main__.py +262 -0
- package/env/lib/python3.12/site-packages/python_minifier/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/python_minifier/__pycache__/__main__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/python_minifier/__pycache__/ast_compare.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/python_minifier/__pycache__/expression_printer.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/python_minifier/__pycache__/f_string.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/python_minifier/__pycache__/ministring.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/python_minifier/__pycache__/module_printer.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/python_minifier/__pycache__/token_printer.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/python_minifier/__pycache__/util.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/python_minifier/ast_compare.py +104 -0
- package/env/lib/python3.12/site-packages/python_minifier/expression_printer.py +748 -0
- package/env/lib/python3.12/site-packages/python_minifier/f_string.py +426 -0
- package/env/lib/python3.12/site-packages/python_minifier/ministring.py +175 -0
- package/env/lib/python3.12/site-packages/python_minifier/module_printer.py +794 -0
- package/env/lib/python3.12/site-packages/python_minifier/py.typed +0 -0
- package/env/lib/python3.12/site-packages/python_minifier/rename/__init__.py +6 -0
- package/env/lib/python3.12/site-packages/python_minifier/rename/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/python_minifier/rename/__pycache__/bind_names.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/python_minifier/rename/__pycache__/binding.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/python_minifier/rename/__pycache__/mapper.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/python_minifier/rename/__pycache__/name_generator.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/python_minifier/rename/__pycache__/rename_literals.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/python_minifier/rename/__pycache__/renamer.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/python_minifier/rename/__pycache__/resolve_names.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/python_minifier/rename/__pycache__/util.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/python_minifier/rename/bind_names.py +174 -0
- package/env/lib/python3.12/site-packages/python_minifier/rename/binding.py +450 -0
- package/env/lib/python3.12/site-packages/python_minifier/rename/mapper.py +160 -0
- package/env/lib/python3.12/site-packages/python_minifier/rename/name_generator.py +51 -0
- package/env/lib/python3.12/site-packages/python_minifier/rename/rename_literals.py +234 -0
- package/env/lib/python3.12/site-packages/python_minifier/rename/renamer.py +230 -0
- package/env/lib/python3.12/site-packages/python_minifier/rename/resolve_names.py +88 -0
- package/env/lib/python3.12/site-packages/python_minifier/rename/util.py +193 -0
- package/env/lib/python3.12/site-packages/python_minifier/token_printer.py +297 -0
- package/env/lib/python3.12/site-packages/python_minifier/transforms/__init__.py +0 -0
- package/env/lib/python3.12/site-packages/python_minifier/transforms/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/python_minifier/transforms/__pycache__/combine_imports.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/python_minifier/transforms/__pycache__/remove_annotations.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/python_minifier/transforms/__pycache__/remove_asserts.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/python_minifier/transforms/__pycache__/remove_debug.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/python_minifier/transforms/__pycache__/remove_explicit_return_none.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/python_minifier/transforms/__pycache__/remove_literal_statements.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/python_minifier/transforms/__pycache__/remove_object_base.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/python_minifier/transforms/__pycache__/remove_pass.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/python_minifier/transforms/__pycache__/remove_posargs.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/python_minifier/transforms/__pycache__/suite_transformer.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/python_minifier/transforms/combine_imports.py +73 -0
- package/env/lib/python3.12/site-packages/python_minifier/transforms/remove_annotations.py +110 -0
- package/env/lib/python3.12/site-packages/python_minifier/transforms/remove_asserts.py +26 -0
- package/env/lib/python3.12/site-packages/python_minifier/transforms/remove_debug.py +53 -0
- package/env/lib/python3.12/site-packages/python_minifier/transforms/remove_explicit_return_none.py +38 -0
- package/env/lib/python3.12/site-packages/python_minifier/transforms/remove_literal_statements.py +61 -0
- package/env/lib/python3.12/site-packages/python_minifier/transforms/remove_object_base.py +21 -0
- package/env/lib/python3.12/site-packages/python_minifier/transforms/remove_pass.py +26 -0
- package/env/lib/python3.12/site-packages/python_minifier/transforms/remove_posargs.py +13 -0
- package/env/lib/python3.12/site-packages/python_minifier/transforms/suite_transformer.py +193 -0
- package/env/lib/python3.12/site-packages/python_minifier/util.py +48 -0
- package/env/lib/python3.12/site-packages/python_minifier-2.9.0.dist-info/INSTALLER +1 -0
- package/env/lib/python3.12/site-packages/python_minifier-2.9.0.dist-info/LICENSE +21 -0
- package/env/lib/python3.12/site-packages/python_minifier-2.9.0.dist-info/METADATA +169 -0
- package/env/lib/python3.12/site-packages/python_minifier-2.9.0.dist-info/RECORD +70 -0
- package/env/lib/python3.12/site-packages/python_minifier-2.9.0.dist-info/REQUESTED +0 -0
- package/env/lib/python3.12/site-packages/python_minifier-2.9.0.dist-info/WHEEL +6 -0
- package/env/lib/python3.12/site-packages/python_minifier-2.9.0.dist-info/entry_points.txt +2 -0
- package/env/lib/python3.12/site-packages/python_minifier-2.9.0.dist-info/top_level.txt +1 -0
- package/env/lib/python3.12/site-packages/python_minifier-2.9.0.dist-info/zip-safe +1 -0
- package/env/lib/python3.12/site-packages/setuptools/__init__.py +282 -0
- package/env/lib/python3.12/site-packages/setuptools/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/__pycache__/_core_metadata.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/__pycache__/_entry_points.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/__pycache__/_imp.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/__pycache__/_importlib.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/__pycache__/_itertools.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/__pycache__/_normalization.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/__pycache__/_path.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/__pycache__/_reqs.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/__pycache__/archive_util.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/__pycache__/build_meta.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/__pycache__/depends.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/__pycache__/discovery.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/__pycache__/dist.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/__pycache__/errors.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/__pycache__/extension.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/__pycache__/glob.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/__pycache__/installer.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/__pycache__/launch.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/__pycache__/logging.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/__pycache__/modified.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/__pycache__/monkey.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/__pycache__/msvc.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/__pycache__/namespaces.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/__pycache__/package_index.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/__pycache__/sandbox.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/__pycache__/unicode_utils.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/__pycache__/version.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/__pycache__/warnings.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/__pycache__/wheel.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/__pycache__/windows_support.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_core_metadata.py +286 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/__init__.py +14 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/__pycache__/_collections.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/__pycache__/_functools.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/__pycache__/_itertools.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/__pycache__/_log.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/__pycache__/_macos_compat.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/__pycache__/_modified.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/__pycache__/_msvccompiler.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/__pycache__/archive_util.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/__pycache__/bcppcompiler.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/__pycache__/ccompiler.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/__pycache__/cmd.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/__pycache__/config.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/__pycache__/core.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/__pycache__/cygwinccompiler.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/__pycache__/debug.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/__pycache__/dep_util.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/__pycache__/dir_util.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/__pycache__/dist.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/__pycache__/errors.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/__pycache__/extension.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/__pycache__/fancy_getopt.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/__pycache__/file_util.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/__pycache__/filelist.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/__pycache__/log.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/__pycache__/msvc9compiler.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/__pycache__/msvccompiler.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/__pycache__/spawn.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/__pycache__/sysconfig.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/__pycache__/text_file.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/__pycache__/unixccompiler.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/__pycache__/util.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/__pycache__/version.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/__pycache__/versionpredicate.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/__pycache__/zosccompiler.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_collections.py +58 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_functools.py +73 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_itertools.py +52 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_log.py +3 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_macos_compat.py +12 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_modified.py +72 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_msvccompiler.py +568 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_vendor/__init__.py +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_vendor/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_vendor/packaging/__init__.py +15 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_vendor/packaging/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_vendor/packaging/__pycache__/_elffile.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_vendor/packaging/__pycache__/_manylinux.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_vendor/packaging/__pycache__/_musllinux.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_vendor/packaging/__pycache__/_parser.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_vendor/packaging/__pycache__/_structures.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_vendor/packaging/__pycache__/_tokenizer.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_vendor/packaging/__pycache__/markers.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_vendor/packaging/__pycache__/metadata.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_vendor/packaging/__pycache__/requirements.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_vendor/packaging/__pycache__/specifiers.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_vendor/packaging/__pycache__/tags.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_vendor/packaging/__pycache__/utils.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_vendor/packaging/__pycache__/version.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_vendor/packaging/_elffile.py +108 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_vendor/packaging/_manylinux.py +260 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_vendor/packaging/_musllinux.py +83 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_vendor/packaging/_parser.py +356 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_vendor/packaging/_structures.py +61 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_vendor/packaging/_tokenizer.py +192 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_vendor/packaging/markers.py +252 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_vendor/packaging/metadata.py +825 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_vendor/packaging/py.typed +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_vendor/packaging/requirements.py +90 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_vendor/packaging/specifiers.py +1017 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_vendor/packaging/tags.py +571 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_vendor/packaging/utils.py +172 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_vendor/packaging/version.py +563 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_vendor/packaging-24.0.dist-info/LICENSE +3 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_vendor/packaging-24.0.dist-info/LICENSE.APACHE +177 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/_vendor/packaging-24.0.dist-info/LICENSE.BSD +23 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/archive_util.py +283 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/bcppcompiler.py +396 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/ccompiler.py +1255 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/cmd.py +439 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/__init__.py +25 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/__pycache__/_framework_compat.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/__pycache__/bdist.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/__pycache__/bdist_dumb.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/__pycache__/bdist_rpm.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/__pycache__/build.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/__pycache__/build_clib.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/__pycache__/build_ext.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/__pycache__/build_py.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/__pycache__/build_scripts.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/__pycache__/check.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/__pycache__/clean.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/__pycache__/config.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/__pycache__/install.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/__pycache__/install_data.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/__pycache__/install_egg_info.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/__pycache__/install_headers.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/__pycache__/install_lib.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/__pycache__/install_scripts.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/__pycache__/register.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/__pycache__/sdist.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/__pycache__/upload.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/_framework_compat.py +54 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/bdist.py +155 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/bdist_dumb.py +140 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/bdist_rpm.py +597 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/build.py +156 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/build_clib.py +208 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/build_ext.py +797 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/build_py.py +406 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/build_scripts.py +170 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/check.py +154 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/clean.py +76 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/config.py +369 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/install.py +810 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/install_data.py +94 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/install_egg_info.py +92 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/install_headers.py +44 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/install_lib.py +234 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/install_scripts.py +61 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/register.py +322 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/sdist.py +527 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/upload.py +208 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/wininst-10.0-amd64.exe +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/wininst-10.0.exe +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/wininst-14.0-amd64.exe +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/wininst-14.0.exe +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/wininst-6.0.exe +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/wininst-7.1.exe +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/wininst-8.0.exe +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/wininst-9.0-amd64.exe +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/command/wininst-9.0.exe +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/compat/__init__.py +15 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/compat/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/compat/__pycache__/py38.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/compat/__pycache__/py39.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/compat/py38.py +34 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/compat/py39.py +66 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/config.py +151 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/core.py +287 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/cygwinccompiler.py +334 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/debug.py +5 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/dep_util.py +14 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/dir_util.py +238 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/dist.py +1298 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/errors.py +127 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/extension.py +247 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/fancy_getopt.py +469 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/file_util.py +235 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/filelist.py +369 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/log.py +56 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/msvc9compiler.py +822 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/msvccompiler.py +687 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/spawn.py +117 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/sysconfig.py +582 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/text_file.py +286 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/unixccompiler.py +402 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/util.py +504 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/version.py +349 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/versionpredicate.py +175 -0
- package/env/lib/python3.12/site-packages/setuptools/_distutils/zosccompiler.py +229 -0
- package/env/lib/python3.12/site-packages/setuptools/_entry_points.py +90 -0
- package/env/lib/python3.12/site-packages/setuptools/_imp.py +87 -0
- package/env/lib/python3.12/site-packages/setuptools/_importlib.py +12 -0
- package/env/lib/python3.12/site-packages/setuptools/_itertools.py +23 -0
- package/env/lib/python3.12/site-packages/setuptools/_normalization.py +144 -0
- package/env/lib/python3.12/site-packages/setuptools/_path.py +87 -0
- package/env/lib/python3.12/site-packages/setuptools/_reqs.py +43 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/__pycache__/typing_extensions.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/autocommand/__init__.py +27 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/autocommand/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/autocommand/__pycache__/autoasync.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/autocommand/__pycache__/autocommand.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/autocommand/__pycache__/automain.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/autocommand/__pycache__/autoparse.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/autocommand/__pycache__/errors.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/autocommand/autoasync.py +142 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/autocommand/autocommand.py +70 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/autocommand/automain.py +59 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/autocommand/autoparse.py +333 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/autocommand/errors.py +23 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/autocommand-2.2.2.dist-info/INSTALLER +1 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/autocommand-2.2.2.dist-info/LICENSE +166 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/autocommand-2.2.2.dist-info/METADATA +420 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/autocommand-2.2.2.dist-info/RECORD +18 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/autocommand-2.2.2.dist-info/WHEEL +5 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/autocommand-2.2.2.dist-info/top_level.txt +1 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/backports/__init__.py +1 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/backports/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/backports/tarfile/__init__.py +2937 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/backports/tarfile/__main__.py +5 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/backports/tarfile/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/backports/tarfile/__pycache__/__main__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/backports/tarfile/compat/__init__.py +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/backports/tarfile/compat/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/backports/tarfile/compat/__pycache__/py38.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/backports/tarfile/compat/py38.py +24 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/backports.tarfile-1.2.0.dist-info/INSTALLER +1 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/backports.tarfile-1.2.0.dist-info/LICENSE +17 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/backports.tarfile-1.2.0.dist-info/METADATA +46 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/backports.tarfile-1.2.0.dist-info/RECORD +17 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/backports.tarfile-1.2.0.dist-info/REQUESTED +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/backports.tarfile-1.2.0.dist-info/WHEEL +5 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/backports.tarfile-1.2.0.dist-info/top_level.txt +1 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_metadata/__init__.py +1083 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_metadata/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_metadata/__pycache__/_adapters.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_metadata/__pycache__/_collections.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_metadata/__pycache__/_compat.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_metadata/__pycache__/_functools.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_metadata/__pycache__/_itertools.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_metadata/__pycache__/_meta.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_metadata/__pycache__/_text.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_metadata/__pycache__/diagnose.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_metadata/_adapters.py +83 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_metadata/_collections.py +30 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_metadata/_compat.py +57 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_metadata/_functools.py +104 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_metadata/_itertools.py +73 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_metadata/_meta.py +67 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_metadata/_text.py +99 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_metadata/compat/__init__.py +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_metadata/compat/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_metadata/compat/__pycache__/py311.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_metadata/compat/__pycache__/py39.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_metadata/compat/py311.py +22 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_metadata/compat/py39.py +36 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_metadata/diagnose.py +21 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_metadata/py.typed +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_metadata-8.0.0.dist-info/INSTALLER +1 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_metadata-8.0.0.dist-info/LICENSE +202 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_metadata-8.0.0.dist-info/METADATA +129 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_metadata-8.0.0.dist-info/RECORD +32 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_metadata-8.0.0.dist-info/REQUESTED +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_metadata-8.0.0.dist-info/WHEEL +5 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_metadata-8.0.0.dist-info/top_level.txt +1 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_resources/__init__.py +36 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_resources/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_resources/__pycache__/_adapters.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_resources/__pycache__/_common.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_resources/__pycache__/_itertools.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_resources/__pycache__/abc.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_resources/__pycache__/functional.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_resources/__pycache__/readers.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_resources/__pycache__/simple.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_resources/_adapters.py +168 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_resources/_common.py +210 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_resources/_itertools.py +38 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_resources/abc.py +171 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_resources/compat/__init__.py +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_resources/compat/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_resources/compat/__pycache__/py38.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_resources/compat/__pycache__/py39.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_resources/compat/py38.py +11 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_resources/compat/py39.py +10 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_resources/functional.py +81 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_resources/future/__init__.py +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_resources/future/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_resources/future/__pycache__/adapters.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_resources/future/adapters.py +95 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_resources/py.typed +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_resources/readers.py +194 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_resources/simple.py +106 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_resources-6.4.0.dist-info/INSTALLER +1 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_resources-6.4.0.dist-info/LICENSE +202 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_resources-6.4.0.dist-info/METADATA +100 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_resources-6.4.0.dist-info/RECORD +89 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_resources-6.4.0.dist-info/REQUESTED +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_resources-6.4.0.dist-info/WHEEL +5 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/importlib_resources-6.4.0.dist-info/top_level.txt +1 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/inflect/__init__.py +3986 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/inflect/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/inflect/compat/__init__.py +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/inflect/compat/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/inflect/compat/__pycache__/py38.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/inflect/compat/py38.py +7 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/inflect/py.typed +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/inflect-7.3.1.dist-info/INSTALLER +1 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/inflect-7.3.1.dist-info/LICENSE +17 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/inflect-7.3.1.dist-info/METADATA +591 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/inflect-7.3.1.dist-info/RECORD +13 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/inflect-7.3.1.dist-info/WHEEL +5 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/inflect-7.3.1.dist-info/top_level.txt +1 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/jaraco/__pycache__/context.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/jaraco/context.py +361 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/jaraco/functools/__init__.py +633 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/jaraco/functools/__init__.pyi +125 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/jaraco/functools/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/jaraco/functools/py.typed +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/jaraco/text/Lorem ipsum.txt +2 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/jaraco/text/__init__.py +624 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/jaraco/text/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/jaraco/text/__pycache__/layouts.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/jaraco/text/__pycache__/show-newlines.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/jaraco/text/__pycache__/strip-prefix.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/jaraco/text/__pycache__/to-dvorak.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/jaraco/text/__pycache__/to-qwerty.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/jaraco/text/layouts.py +25 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/jaraco/text/show-newlines.py +33 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/jaraco/text/strip-prefix.py +21 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/jaraco/text/to-dvorak.py +6 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/jaraco/text/to-qwerty.py +6 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/jaraco.context-5.3.0.dist-info/INSTALLER +1 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/jaraco.context-5.3.0.dist-info/LICENSE +17 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/jaraco.context-5.3.0.dist-info/METADATA +75 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/jaraco.context-5.3.0.dist-info/RECORD +8 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/jaraco.context-5.3.0.dist-info/WHEEL +5 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/jaraco.context-5.3.0.dist-info/top_level.txt +1 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/jaraco.functools-4.0.1.dist-info/INSTALLER +1 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/jaraco.functools-4.0.1.dist-info/LICENSE +17 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/jaraco.functools-4.0.1.dist-info/METADATA +64 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/jaraco.functools-4.0.1.dist-info/RECORD +10 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/jaraco.functools-4.0.1.dist-info/WHEEL +5 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/jaraco.functools-4.0.1.dist-info/top_level.txt +1 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/jaraco.text-3.12.1.dist-info/INSTALLER +1 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/jaraco.text-3.12.1.dist-info/LICENSE +17 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/jaraco.text-3.12.1.dist-info/METADATA +95 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/jaraco.text-3.12.1.dist-info/RECORD +20 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/jaraco.text-3.12.1.dist-info/REQUESTED +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/jaraco.text-3.12.1.dist-info/WHEEL +5 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/jaraco.text-3.12.1.dist-info/top_level.txt +1 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/more_itertools/__init__.py +6 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/more_itertools/__init__.pyi +2 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/more_itertools/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/more_itertools/__pycache__/more.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/more_itertools/__pycache__/recipes.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/more_itertools/more.py +4806 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/more_itertools/more.pyi +709 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/more_itertools/py.typed +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/more_itertools/recipes.py +1046 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/more_itertools/recipes.pyi +136 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/more_itertools-10.3.0.dist-info/INSTALLER +1 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/more_itertools-10.3.0.dist-info/LICENSE +19 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/more_itertools-10.3.0.dist-info/METADATA +266 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/more_itertools-10.3.0.dist-info/RECORD +16 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/more_itertools-10.3.0.dist-info/REQUESTED +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/more_itertools-10.3.0.dist-info/WHEEL +4 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/packaging/__init__.py +15 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/packaging/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/packaging/__pycache__/_elffile.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/packaging/__pycache__/_manylinux.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/packaging/__pycache__/_musllinux.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/packaging/__pycache__/_parser.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/packaging/__pycache__/_structures.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/packaging/__pycache__/_tokenizer.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/packaging/__pycache__/markers.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/packaging/__pycache__/metadata.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/packaging/__pycache__/requirements.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/packaging/__pycache__/specifiers.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/packaging/__pycache__/tags.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/packaging/__pycache__/utils.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/packaging/__pycache__/version.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/packaging/_elffile.py +110 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/packaging/_manylinux.py +262 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/packaging/_musllinux.py +85 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/packaging/_parser.py +354 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/packaging/_structures.py +61 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/packaging/_tokenizer.py +194 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/packaging/markers.py +325 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/packaging/metadata.py +804 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/packaging/py.typed +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/packaging/requirements.py +91 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/packaging/specifiers.py +1009 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/packaging/tags.py +568 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/packaging/utils.py +174 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/packaging/version.py +563 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/packaging-24.1.dist-info/INSTALLER +1 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/packaging-24.1.dist-info/LICENSE +3 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/packaging-24.1.dist-info/LICENSE.APACHE +177 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/packaging-24.1.dist-info/LICENSE.BSD +23 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/packaging-24.1.dist-info/METADATA +102 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/packaging-24.1.dist-info/RECORD +37 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/packaging-24.1.dist-info/REQUESTED +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/packaging-24.1.dist-info/WHEEL +4 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/platformdirs/__init__.py +627 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/platformdirs/__main__.py +55 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/platformdirs/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/platformdirs/__pycache__/__main__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/platformdirs/__pycache__/android.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/platformdirs/__pycache__/api.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/platformdirs/__pycache__/macos.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/platformdirs/__pycache__/unix.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/platformdirs/__pycache__/version.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/platformdirs/__pycache__/windows.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/platformdirs/android.py +249 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/platformdirs/api.py +292 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/platformdirs/macos.py +130 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/platformdirs/py.typed +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/platformdirs/unix.py +275 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/platformdirs/version.py +16 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/platformdirs/windows.py +272 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/platformdirs-4.2.2.dist-info/INSTALLER +1 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/platformdirs-4.2.2.dist-info/METADATA +319 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/platformdirs-4.2.2.dist-info/RECORD +23 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/platformdirs-4.2.2.dist-info/REQUESTED +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/platformdirs-4.2.2.dist-info/WHEEL +4 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/platformdirs-4.2.2.dist-info/licenses/LICENSE +21 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/ruff.toml +1 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/tomli/__init__.py +11 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/tomli/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/tomli/__pycache__/_parser.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/tomli/__pycache__/_re.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/tomli/__pycache__/_types.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/tomli/_parser.py +691 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/tomli/_re.py +107 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/tomli/_types.py +10 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/tomli/py.typed +1 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/tomli-2.0.1.dist-info/INSTALLER +1 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/tomli-2.0.1.dist-info/LICENSE +21 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/tomli-2.0.1.dist-info/METADATA +206 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/tomli-2.0.1.dist-info/RECORD +15 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/tomli-2.0.1.dist-info/REQUESTED +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/tomli-2.0.1.dist-info/WHEEL +4 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/typeguard/__init__.py +48 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/typeguard/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/typeguard/__pycache__/_checkers.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/typeguard/__pycache__/_config.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/typeguard/__pycache__/_decorators.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/typeguard/__pycache__/_exceptions.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/typeguard/__pycache__/_functions.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/typeguard/__pycache__/_importhook.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/typeguard/__pycache__/_memo.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/typeguard/__pycache__/_pytest_plugin.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/typeguard/__pycache__/_suppression.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/typeguard/__pycache__/_transformer.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/typeguard/__pycache__/_union_transformer.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/typeguard/__pycache__/_utils.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/typeguard/_checkers.py +993 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/typeguard/_config.py +108 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/typeguard/_decorators.py +235 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/typeguard/_exceptions.py +42 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/typeguard/_functions.py +308 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/typeguard/_importhook.py +213 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/typeguard/_memo.py +48 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/typeguard/_pytest_plugin.py +127 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/typeguard/_suppression.py +86 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/typeguard/_transformer.py +1229 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/typeguard/_union_transformer.py +55 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/typeguard/_utils.py +173 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/typeguard/py.typed +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/typeguard-4.3.0.dist-info/INSTALLER +1 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/typeguard-4.3.0.dist-info/LICENSE +19 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/typeguard-4.3.0.dist-info/METADATA +81 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/typeguard-4.3.0.dist-info/RECORD +34 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/typeguard-4.3.0.dist-info/WHEEL +5 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/typeguard-4.3.0.dist-info/entry_points.txt +2 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/typeguard-4.3.0.dist-info/top_level.txt +1 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/typing_extensions-4.12.2.dist-info/INSTALLER +1 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/typing_extensions-4.12.2.dist-info/LICENSE +279 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/typing_extensions-4.12.2.dist-info/METADATA +67 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/typing_extensions-4.12.2.dist-info/RECORD +7 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/typing_extensions-4.12.2.dist-info/WHEEL +4 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/typing_extensions.py +3641 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/__init__.py +3 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/__main__.py +23 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/__pycache__/__main__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/__pycache__/_setuptools_logging.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/__pycache__/bdist_wheel.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/__pycache__/macosx_libfile.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/__pycache__/metadata.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/__pycache__/util.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/__pycache__/wheelfile.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/_setuptools_logging.py +26 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/bdist_wheel.py +595 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/cli/__init__.py +155 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/cli/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/cli/__pycache__/convert.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/cli/__pycache__/pack.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/cli/__pycache__/tags.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/cli/__pycache__/unpack.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/cli/convert.py +273 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/cli/pack.py +85 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/cli/tags.py +139 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/cli/unpack.py +30 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/macosx_libfile.py +469 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/metadata.py +180 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/util.py +26 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/vendored/__init__.py +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/vendored/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/vendored/packaging/__init__.py +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/vendored/packaging/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/vendored/packaging/__pycache__/_elffile.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/vendored/packaging/__pycache__/_manylinux.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/vendored/packaging/__pycache__/_musllinux.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/vendored/packaging/__pycache__/_parser.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/vendored/packaging/__pycache__/_structures.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/vendored/packaging/__pycache__/_tokenizer.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/vendored/packaging/__pycache__/markers.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/vendored/packaging/__pycache__/requirements.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/vendored/packaging/__pycache__/specifiers.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/vendored/packaging/__pycache__/tags.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/vendored/packaging/__pycache__/utils.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/vendored/packaging/__pycache__/version.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/vendored/packaging/_elffile.py +108 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/vendored/packaging/_manylinux.py +260 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/vendored/packaging/_musllinux.py +83 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/vendored/packaging/_parser.py +356 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/vendored/packaging/_structures.py +61 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/vendored/packaging/_tokenizer.py +192 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/vendored/packaging/markers.py +253 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/vendored/packaging/requirements.py +90 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/vendored/packaging/specifiers.py +1011 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/vendored/packaging/tags.py +571 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/vendored/packaging/utils.py +172 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/vendored/packaging/version.py +561 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/vendored/vendor.txt +1 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel/wheelfile.py +196 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel-0.43.0.dist-info/INSTALLER +1 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel-0.43.0.dist-info/LICENSE.txt +21 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel-0.43.0.dist-info/METADATA +61 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel-0.43.0.dist-info/RECORD +63 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel-0.43.0.dist-info/REQUESTED +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel-0.43.0.dist-info/WHEEL +4 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/wheel-0.43.0.dist-info/entry_points.txt +6 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/zipp/__init__.py +501 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/zipp/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/zipp/__pycache__/glob.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/zipp/compat/__init__.py +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/zipp/compat/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/zipp/compat/__pycache__/py310.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/zipp/compat/py310.py +11 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/zipp/glob.py +106 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/zipp-3.19.2.dist-info/INSTALLER +1 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/zipp-3.19.2.dist-info/LICENSE +17 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/zipp-3.19.2.dist-info/METADATA +102 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/zipp-3.19.2.dist-info/RECORD +15 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/zipp-3.19.2.dist-info/REQUESTED +0 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/zipp-3.19.2.dist-info/WHEEL +5 -0
- package/env/lib/python3.12/site-packages/setuptools/_vendor/zipp-3.19.2.dist-info/top_level.txt +1 -0
- package/env/lib/python3.12/site-packages/setuptools/archive_util.py +217 -0
- package/env/lib/python3.12/site-packages/setuptools/build_meta.py +529 -0
- package/env/lib/python3.12/site-packages/setuptools/cli-32.exe +0 -0
- package/env/lib/python3.12/site-packages/setuptools/cli-64.exe +0 -0
- package/env/lib/python3.12/site-packages/setuptools/cli-arm64.exe +0 -0
- package/env/lib/python3.12/site-packages/setuptools/cli.exe +0 -0
- package/env/lib/python3.12/site-packages/setuptools/command/__init__.py +13 -0
- package/env/lib/python3.12/site-packages/setuptools/command/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/command/__pycache__/_requirestxt.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/command/__pycache__/alias.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/command/__pycache__/bdist_egg.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/command/__pycache__/bdist_rpm.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/command/__pycache__/bdist_wheel.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/command/__pycache__/build.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/command/__pycache__/build_clib.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/command/__pycache__/build_ext.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/command/__pycache__/build_py.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/command/__pycache__/develop.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/command/__pycache__/dist_info.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/command/__pycache__/easy_install.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/command/__pycache__/editable_wheel.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/command/__pycache__/egg_info.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/command/__pycache__/install.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/command/__pycache__/install_egg_info.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/command/__pycache__/install_lib.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/command/__pycache__/install_scripts.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/command/__pycache__/register.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/command/__pycache__/rotate.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/command/__pycache__/saveopts.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/command/__pycache__/sdist.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/command/__pycache__/setopt.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/command/__pycache__/test.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/command/__pycache__/upload.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/command/__pycache__/upload_docs.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/command/_requirestxt.py +131 -0
- package/env/lib/python3.12/site-packages/setuptools/command/alias.py +78 -0
- package/env/lib/python3.12/site-packages/setuptools/command/bdist_egg.py +465 -0
- package/env/lib/python3.12/site-packages/setuptools/command/bdist_rpm.py +42 -0
- package/env/lib/python3.12/site-packages/setuptools/command/bdist_wheel.py +621 -0
- package/env/lib/python3.12/site-packages/setuptools/command/build.py +129 -0
- package/env/lib/python3.12/site-packages/setuptools/command/build_clib.py +108 -0
- package/env/lib/python3.12/site-packages/setuptools/command/build_ext.py +462 -0
- package/env/lib/python3.12/site-packages/setuptools/command/build_py.py +404 -0
- package/env/lib/python3.12/site-packages/setuptools/command/develop.py +195 -0
- package/env/lib/python3.12/site-packages/setuptools/command/dist_info.py +107 -0
- package/env/lib/python3.12/site-packages/setuptools/command/easy_install.py +2364 -0
- package/env/lib/python3.12/site-packages/setuptools/command/editable_wheel.py +899 -0
- package/env/lib/python3.12/site-packages/setuptools/command/egg_info.py +727 -0
- package/env/lib/python3.12/site-packages/setuptools/command/install.py +165 -0
- package/env/lib/python3.12/site-packages/setuptools/command/install_egg_info.py +58 -0
- package/env/lib/python3.12/site-packages/setuptools/command/install_lib.py +134 -0
- package/env/lib/python3.12/site-packages/setuptools/command/install_scripts.py +73 -0
- package/env/lib/python3.12/site-packages/setuptools/command/launcher manifest.xml +15 -0
- package/env/lib/python3.12/site-packages/setuptools/command/register.py +22 -0
- package/env/lib/python3.12/site-packages/setuptools/command/rotate.py +65 -0
- package/env/lib/python3.12/site-packages/setuptools/command/saveopts.py +21 -0
- package/env/lib/python3.12/site-packages/setuptools/command/sdist.py +207 -0
- package/env/lib/python3.12/site-packages/setuptools/command/setopt.py +141 -0
- package/env/lib/python3.12/site-packages/setuptools/command/test.py +42 -0
- package/env/lib/python3.12/site-packages/setuptools/command/upload.py +20 -0
- package/env/lib/python3.12/site-packages/setuptools/command/upload_docs.py +221 -0
- package/env/lib/python3.12/site-packages/setuptools/compat/__init__.py +0 -0
- package/env/lib/python3.12/site-packages/setuptools/compat/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/compat/__pycache__/py310.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/compat/__pycache__/py311.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/compat/__pycache__/py39.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/compat/py310.py +9 -0
- package/env/lib/python3.12/site-packages/setuptools/compat/py311.py +27 -0
- package/env/lib/python3.12/site-packages/setuptools/compat/py39.py +9 -0
- package/env/lib/python3.12/site-packages/setuptools/config/NOTICE +10 -0
- package/env/lib/python3.12/site-packages/setuptools/config/__init__.py +43 -0
- package/env/lib/python3.12/site-packages/setuptools/config/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/config/__pycache__/_apply_pyprojecttoml.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/config/__pycache__/expand.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/config/__pycache__/pyprojecttoml.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/config/__pycache__/setupcfg.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/config/_apply_pyprojecttoml.py +439 -0
- package/env/lib/python3.12/site-packages/setuptools/config/_validate_pyproject/NOTICE +438 -0
- package/env/lib/python3.12/site-packages/setuptools/config/_validate_pyproject/__init__.py +34 -0
- package/env/lib/python3.12/site-packages/setuptools/config/_validate_pyproject/__pycache__/__init__.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/config/_validate_pyproject/__pycache__/error_reporting.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/config/_validate_pyproject/__pycache__/extra_validations.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/config/_validate_pyproject/__pycache__/fastjsonschema_exceptions.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/config/_validate_pyproject/__pycache__/fastjsonschema_validations.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/config/_validate_pyproject/__pycache__/formats.cpython-312.pyc +0 -0
- package/env/lib/python3.12/site-packages/setuptools/config/_validate_pyproject/error_reporting.py +336 -0
- package/env/lib/python3.12/site-packages/setuptools/config/_validate_pyproject/extra_validations.py +52 -0
- package/env/lib/python3.12/site-packages/setuptools/config/_validate_pyproject/fastjsonschema_exceptions.py +51 -0
- package/env/lib/python3.12/site-packages/setuptools/config/_validate_pyproject/fastjsonschema_validations.py +1104 -0
- package/env/lib/python3.12/site-packages/setuptools/config/_validate_pyproject/formats.py +375 -0
- package/env/lib/python3.12/site-packages/setuptools/config/distutils.schema.json +26 -0
- package/env/lib/python3.12/site-packages/setuptools/config/expand.py +436 -0
- package/env/lib/python3.12/site-packages/setuptools/config/pyprojecttoml.py +453 -0
- package/env/lib/python3.12/site-packages/setuptools/config/setupcfg.py +777 -0
- package/env/lib/python3.12/site-packages/setuptools/config/setuptools.schema.json +352 -0
- package/env/lib/python3.12/site-packages/setuptools/depends.py +166 -0
- package/env/lib/python3.12/site-packages/setuptools/discovery.py +607 -0
- package/env/lib/python3.12/site-packages/setuptools/dist.py +953 -0
- package/env/lib/python3.12/site-packages/setuptools/errors.py +65 -0
- package/env/lib/python3.12/site-packages/setuptools/extension.py +163 -0
- package/env/lib/python3.12/site-packages/setuptools/glob.py +165 -0
- package/env/lib/python3.12/site-packages/setuptools/gui-32.exe +0 -0
- package/env/lib/python3.12/site-packages/setuptools/gui-64.exe +0 -0
- package/env/lib/python3.12/site-packages/setuptools/gui-arm64.exe +0 -0
- package/env/lib/python3.12/site-packages/setuptools/gui.exe +0 -0
- package/env/lib/python3.12/site-packages/setuptools/installer.py +145 -0
- package/env/lib/python3.12/site-packages/setuptools/launch.py +36 -0
- package/env/lib/python3.12/site-packages/setuptools/logging.py +40 -0
- package/env/lib/python3.12/site-packages/setuptools/modified.py +8 -0
- package/env/lib/python3.12/site-packages/setuptools/monkey.py +156 -0
- package/env/lib/python3.12/site-packages/setuptools/msvc.py +1748 -0
- package/env/lib/python3.12/site-packages/setuptools/namespaces.py +105 -0
- package/env/lib/python3.12/site-packages/setuptools/package_index.py +1148 -0
- package/env/lib/python3.12/site-packages/setuptools/sandbox.py +514 -0
- package/env/lib/python3.12/site-packages/setuptools/script (dev).tmpl +6 -0
- package/env/lib/python3.12/site-packages/setuptools/script.tmpl +3 -0
- package/env/lib/python3.12/site-packages/setuptools/unicode_utils.py +102 -0
- package/env/lib/python3.12/site-packages/setuptools/version.py +6 -0
- package/env/lib/python3.12/site-packages/setuptools/warnings.py +107 -0
- package/env/lib/python3.12/site-packages/setuptools/wheel.py +236 -0
- package/env/lib/python3.12/site-packages/setuptools/windows_support.py +30 -0
- package/env/lib/python3.12/site-packages/setuptools-73.0.1.dist-info/INSTALLER +1 -0
- package/env/lib/python3.12/site-packages/setuptools-73.0.1.dist-info/LICENSE +17 -0
- package/env/lib/python3.12/site-packages/setuptools-73.0.1.dist-info/METADATA +136 -0
- package/env/lib/python3.12/site-packages/setuptools-73.0.1.dist-info/RECORD +1007 -0
- package/env/lib/python3.12/site-packages/setuptools-73.0.1.dist-info/REQUESTED +0 -0
- package/env/lib/python3.12/site-packages/setuptools-73.0.1.dist-info/WHEEL +5 -0
- package/env/lib/python3.12/site-packages/setuptools-73.0.1.dist-info/entry_points.txt +52 -0
- package/env/lib/python3.12/site-packages/setuptools-73.0.1.dist-info/top_level.txt +3 -0
- package/env/pyvenv.cfg +5 -0
- package/package.json +9 -8
- package/src/stdlib/pyscript/websocket.py +4 -1
- package/src/stdlib/pyscript.js +5 -5
- package/dist/codemirror_view-CT67V3cG.js +0 -2
- package/dist/codemirror_view-CT67V3cG.js.map +0 -1
- package/pyscript-core-0.5.3-rc1.tgz +0 -0
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index-BZvYCKeH.js","sources":["../node_modules/@codemirror/autocomplete/dist/index.js"],"sourcesContent":["import { Annotation, StateEffect, EditorSelection, codePointAt, codePointSize, fromCodePoint, Facet, combineConfig, StateField, Prec, Text, Transaction, MapMode, RangeValue, RangeSet, CharCategory } from '@codemirror/state';\nimport { Direction, logException, showTooltip, EditorView, ViewPlugin, getTooltip, Decoration, WidgetType, keymap } from '@codemirror/view';\nimport { syntaxTree, indentUnit } from '@codemirror/language';\n\n/**\nAn instance of this is passed to completion source functions.\n*/\nclass CompletionContext {\n /**\n Create a new completion context. (Mostly useful for testing\n completion sources—in the editor, the extension will create\n these for you.)\n */\n constructor(\n /**\n The editor state that the completion happens in.\n */\n state, \n /**\n The position at which the completion is happening.\n */\n pos, \n /**\n Indicates whether completion was activated explicitly, or\n implicitly by typing. The usual way to respond to this is to\n only return completions when either there is part of a\n completable entity before the cursor, or `explicit` is true.\n */\n explicit, \n /**\n The editor view. May be undefined if the context was created\n in a situation where there is no such view available, such as\n in synchronous updates via\n [`CompletionResult.update`](https://codemirror.net/6/docs/ref/#autocomplete.CompletionResult.update)\n or when called by test code.\n */\n view) {\n this.state = state;\n this.pos = pos;\n this.explicit = explicit;\n this.view = view;\n /**\n @internal\n */\n this.abortListeners = [];\n /**\n @internal\n */\n this.abortOnDocChange = false;\n }\n /**\n Get the extent, content, and (if there is a token) type of the\n token before `this.pos`.\n */\n tokenBefore(types) {\n let token = syntaxTree(this.state).resolveInner(this.pos, -1);\n while (token && types.indexOf(token.name) < 0)\n token = token.parent;\n return token ? { from: token.from, to: this.pos,\n text: this.state.sliceDoc(token.from, this.pos),\n type: token.type } : null;\n }\n /**\n Get the match of the given expression directly before the\n cursor.\n */\n matchBefore(expr) {\n let line = this.state.doc.lineAt(this.pos);\n let start = Math.max(line.from, this.pos - 250);\n let str = line.text.slice(start - line.from, this.pos - line.from);\n let found = str.search(ensureAnchor(expr, false));\n return found < 0 ? null : { from: start + found, to: this.pos, text: str.slice(found) };\n }\n /**\n Yields true when the query has been aborted. Can be useful in\n asynchronous queries to avoid doing work that will be ignored.\n */\n get aborted() { return this.abortListeners == null; }\n /**\n Allows you to register abort handlers, which will be called when\n the query is\n [aborted](https://codemirror.net/6/docs/ref/#autocomplete.CompletionContext.aborted).\n \n By default, running queries will not be aborted for regular\n typing or backspacing, on the assumption that they are likely to\n return a result with a\n [`validFor`](https://codemirror.net/6/docs/ref/#autocomplete.CompletionResult.validFor) field that\n allows the result to be used after all. Passing `onDocChange:\n true` will cause this query to be aborted for any document\n change.\n */\n addEventListener(type, listener, options) {\n if (type == \"abort\" && this.abortListeners) {\n this.abortListeners.push(listener);\n if (options && options.onDocChange)\n this.abortOnDocChange = true;\n }\n }\n}\nfunction toSet(chars) {\n let flat = Object.keys(chars).join(\"\");\n let words = /\\w/.test(flat);\n if (words)\n flat = flat.replace(/\\w/g, \"\");\n return `[${words ? \"\\\\w\" : \"\"}${flat.replace(/[^\\w\\s]/g, \"\\\\$&\")}]`;\n}\nfunction prefixMatch(options) {\n let first = Object.create(null), rest = Object.create(null);\n for (let { label } of options) {\n first[label[0]] = true;\n for (let i = 1; i < label.length; i++)\n rest[label[i]] = true;\n }\n let source = toSet(first) + toSet(rest) + \"*$\";\n return [new RegExp(\"^\" + source), new RegExp(source)];\n}\n/**\nGiven a a fixed array of options, return an autocompleter that\ncompletes them.\n*/\nfunction completeFromList(list) {\n let options = list.map(o => typeof o == \"string\" ? { label: o } : o);\n let [validFor, match] = options.every(o => /^\\w+$/.test(o.label)) ? [/\\w*$/, /\\w+$/] : prefixMatch(options);\n return (context) => {\n let token = context.matchBefore(match);\n return token || context.explicit ? { from: token ? token.from : context.pos, options, validFor } : null;\n };\n}\n/**\nWrap the given completion source so that it will only fire when the\ncursor is in a syntax node with one of the given names.\n*/\nfunction ifIn(nodes, source) {\n return (context) => {\n for (let pos = syntaxTree(context.state).resolveInner(context.pos, -1); pos; pos = pos.parent) {\n if (nodes.indexOf(pos.name) > -1)\n return source(context);\n if (pos.type.isTop)\n break;\n }\n return null;\n };\n}\n/**\nWrap the given completion source so that it will not fire when the\ncursor is in a syntax node with one of the given names.\n*/\nfunction ifNotIn(nodes, source) {\n return (context) => {\n for (let pos = syntaxTree(context.state).resolveInner(context.pos, -1); pos; pos = pos.parent) {\n if (nodes.indexOf(pos.name) > -1)\n return null;\n if (pos.type.isTop)\n break;\n }\n return source(context);\n };\n}\nclass Option {\n constructor(completion, source, match, score) {\n this.completion = completion;\n this.source = source;\n this.match = match;\n this.score = score;\n }\n}\nfunction cur(state) { return state.selection.main.from; }\n// Make sure the given regexp has a $ at its end and, if `start` is\n// true, a ^ at its start.\nfunction ensureAnchor(expr, start) {\n var _a;\n let { source } = expr;\n let addStart = start && source[0] != \"^\", addEnd = source[source.length - 1] != \"$\";\n if (!addStart && !addEnd)\n return expr;\n return new RegExp(`${addStart ? \"^\" : \"\"}(?:${source})${addEnd ? \"$\" : \"\"}`, (_a = expr.flags) !== null && _a !== void 0 ? _a : (expr.ignoreCase ? \"i\" : \"\"));\n}\n/**\nThis annotation is added to transactions that are produced by\npicking a completion.\n*/\nconst pickedCompletion = /*@__PURE__*/Annotation.define();\n/**\nHelper function that returns a transaction spec which inserts a\ncompletion's text in the main selection range, and any other\nselection range that has the same text in front of it.\n*/\nfunction insertCompletionText(state, text, from, to) {\n let { main } = state.selection, fromOff = from - main.from, toOff = to - main.from;\n return Object.assign(Object.assign({}, state.changeByRange(range => {\n if (range != main && from != to &&\n state.sliceDoc(range.from + fromOff, range.from + toOff) != state.sliceDoc(from, to))\n return { range };\n return {\n changes: { from: range.from + fromOff, to: to == main.from ? range.to : range.from + toOff, insert: text },\n range: EditorSelection.cursor(range.from + fromOff + text.length)\n };\n })), { scrollIntoView: true, userEvent: \"input.complete\" });\n}\nconst SourceCache = /*@__PURE__*/new WeakMap();\nfunction asSource(source) {\n if (!Array.isArray(source))\n return source;\n let known = SourceCache.get(source);\n if (!known)\n SourceCache.set(source, known = completeFromList(source));\n return known;\n}\nconst startCompletionEffect = /*@__PURE__*/StateEffect.define();\nconst closeCompletionEffect = /*@__PURE__*/StateEffect.define();\n\n// A pattern matcher for fuzzy completion matching. Create an instance\n// once for a pattern, and then use that to match any number of\n// completions.\nclass FuzzyMatcher {\n constructor(pattern) {\n this.pattern = pattern;\n this.chars = [];\n this.folded = [];\n // Buffers reused by calls to `match` to track matched character\n // positions.\n this.any = [];\n this.precise = [];\n this.byWord = [];\n this.score = 0;\n this.matched = [];\n for (let p = 0; p < pattern.length;) {\n let char = codePointAt(pattern, p), size = codePointSize(char);\n this.chars.push(char);\n let part = pattern.slice(p, p + size), upper = part.toUpperCase();\n this.folded.push(codePointAt(upper == part ? part.toLowerCase() : upper, 0));\n p += size;\n }\n this.astral = pattern.length != this.chars.length;\n }\n ret(score, matched) {\n this.score = score;\n this.matched = matched;\n return this;\n }\n // Matches a given word (completion) against the pattern (input).\n // Will return a boolean indicating whether there was a match and,\n // on success, set `this.score` to the score, `this.matched` to an\n // array of `from, to` pairs indicating the matched parts of `word`.\n //\n // The score is a number that is more negative the worse the match\n // is. See `Penalty` above.\n match(word) {\n if (this.pattern.length == 0)\n return this.ret(-100 /* Penalty.NotFull */, []);\n if (word.length < this.pattern.length)\n return null;\n let { chars, folded, any, precise, byWord } = this;\n // For single-character queries, only match when they occur right\n // at the start\n if (chars.length == 1) {\n let first = codePointAt(word, 0), firstSize = codePointSize(first);\n let score = firstSize == word.length ? 0 : -100 /* Penalty.NotFull */;\n if (first == chars[0]) ;\n else if (first == folded[0])\n score += -200 /* Penalty.CaseFold */;\n else\n return null;\n return this.ret(score, [0, firstSize]);\n }\n let direct = word.indexOf(this.pattern);\n if (direct == 0)\n return this.ret(word.length == this.pattern.length ? 0 : -100 /* Penalty.NotFull */, [0, this.pattern.length]);\n let len = chars.length, anyTo = 0;\n if (direct < 0) {\n for (let i = 0, e = Math.min(word.length, 200); i < e && anyTo < len;) {\n let next = codePointAt(word, i);\n if (next == chars[anyTo] || next == folded[anyTo])\n any[anyTo++] = i;\n i += codePointSize(next);\n }\n // No match, exit immediately\n if (anyTo < len)\n return null;\n }\n // This tracks the extent of the precise (non-folded, not\n // necessarily adjacent) match\n let preciseTo = 0;\n // Tracks whether there is a match that hits only characters that\n // appear to be starting words. `byWordFolded` is set to true when\n // a case folded character is encountered in such a match\n let byWordTo = 0, byWordFolded = false;\n // If we've found a partial adjacent match, these track its state\n let adjacentTo = 0, adjacentStart = -1, adjacentEnd = -1;\n let hasLower = /[a-z]/.test(word), wordAdjacent = true;\n // Go over the option's text, scanning for the various kinds of matches\n for (let i = 0, e = Math.min(word.length, 200), prevType = 0 /* Tp.NonWord */; i < e && byWordTo < len;) {\n let next = codePointAt(word, i);\n if (direct < 0) {\n if (preciseTo < len && next == chars[preciseTo])\n precise[preciseTo++] = i;\n if (adjacentTo < len) {\n if (next == chars[adjacentTo] || next == folded[adjacentTo]) {\n if (adjacentTo == 0)\n adjacentStart = i;\n adjacentEnd = i + 1;\n adjacentTo++;\n }\n else {\n adjacentTo = 0;\n }\n }\n }\n let ch, type = next < 0xff\n ? (next >= 48 && next <= 57 || next >= 97 && next <= 122 ? 2 /* Tp.Lower */ : next >= 65 && next <= 90 ? 1 /* Tp.Upper */ : 0 /* Tp.NonWord */)\n : ((ch = fromCodePoint(next)) != ch.toLowerCase() ? 1 /* Tp.Upper */ : ch != ch.toUpperCase() ? 2 /* Tp.Lower */ : 0 /* Tp.NonWord */);\n if (!i || type == 1 /* Tp.Upper */ && hasLower || prevType == 0 /* Tp.NonWord */ && type != 0 /* Tp.NonWord */) {\n if (chars[byWordTo] == next || (folded[byWordTo] == next && (byWordFolded = true)))\n byWord[byWordTo++] = i;\n else if (byWord.length)\n wordAdjacent = false;\n }\n prevType = type;\n i += codePointSize(next);\n }\n if (byWordTo == len && byWord[0] == 0 && wordAdjacent)\n return this.result(-100 /* Penalty.ByWord */ + (byWordFolded ? -200 /* Penalty.CaseFold */ : 0), byWord, word);\n if (adjacentTo == len && adjacentStart == 0)\n return this.ret(-200 /* Penalty.CaseFold */ - word.length + (adjacentEnd == word.length ? 0 : -100 /* Penalty.NotFull */), [0, adjacentEnd]);\n if (direct > -1)\n return this.ret(-700 /* Penalty.NotStart */ - word.length, [direct, direct + this.pattern.length]);\n if (adjacentTo == len)\n return this.ret(-200 /* Penalty.CaseFold */ + -700 /* Penalty.NotStart */ - word.length, [adjacentStart, adjacentEnd]);\n if (byWordTo == len)\n return this.result(-100 /* Penalty.ByWord */ + (byWordFolded ? -200 /* Penalty.CaseFold */ : 0) + -700 /* Penalty.NotStart */ +\n (wordAdjacent ? 0 : -1100 /* Penalty.Gap */), byWord, word);\n return chars.length == 2 ? null\n : this.result((any[0] ? -700 /* Penalty.NotStart */ : 0) + -200 /* Penalty.CaseFold */ + -1100 /* Penalty.Gap */, any, word);\n }\n result(score, positions, word) {\n let result = [], i = 0;\n for (let pos of positions) {\n let to = pos + (this.astral ? codePointSize(codePointAt(word, pos)) : 1);\n if (i && result[i - 1] == pos)\n result[i - 1] = to;\n else {\n result[i++] = pos;\n result[i++] = to;\n }\n }\n return this.ret(score - word.length, result);\n }\n}\nclass StrictMatcher {\n constructor(pattern) {\n this.pattern = pattern;\n this.matched = [];\n this.score = 0;\n this.folded = pattern.toLowerCase();\n }\n match(word) {\n if (word.length < this.pattern.length)\n return null;\n let start = word.slice(0, this.pattern.length);\n let match = start == this.pattern ? 0 : start.toLowerCase() == this.folded ? -200 /* Penalty.CaseFold */ : null;\n if (match == null)\n return null;\n this.matched = [0, start.length];\n this.score = match + (word.length == this.pattern.length ? 0 : -100 /* Penalty.NotFull */);\n return this;\n }\n}\n\nconst completionConfig = /*@__PURE__*/Facet.define({\n combine(configs) {\n return combineConfig(configs, {\n activateOnTyping: true,\n activateOnCompletion: () => false,\n activateOnTypingDelay: 100,\n selectOnOpen: true,\n override: null,\n closeOnBlur: true,\n maxRenderedOptions: 100,\n defaultKeymap: true,\n tooltipClass: () => \"\",\n optionClass: () => \"\",\n aboveCursor: false,\n icons: true,\n addToOptions: [],\n positionInfo: defaultPositionInfo,\n filterStrict: false,\n compareCompletions: (a, b) => a.label.localeCompare(b.label),\n interactionDelay: 75,\n updateSyncTime: 100\n }, {\n defaultKeymap: (a, b) => a && b,\n closeOnBlur: (a, b) => a && b,\n icons: (a, b) => a && b,\n tooltipClass: (a, b) => c => joinClass(a(c), b(c)),\n optionClass: (a, b) => c => joinClass(a(c), b(c)),\n addToOptions: (a, b) => a.concat(b),\n filterStrict: (a, b) => a || b,\n });\n }\n});\nfunction joinClass(a, b) {\n return a ? b ? a + \" \" + b : a : b;\n}\nfunction defaultPositionInfo(view, list, option, info, space, tooltip) {\n let rtl = view.textDirection == Direction.RTL, left = rtl, narrow = false;\n let side = \"top\", offset, maxWidth;\n let spaceLeft = list.left - space.left, spaceRight = space.right - list.right;\n let infoWidth = info.right - info.left, infoHeight = info.bottom - info.top;\n if (left && spaceLeft < Math.min(infoWidth, spaceRight))\n left = false;\n else if (!left && spaceRight < Math.min(infoWidth, spaceLeft))\n left = true;\n if (infoWidth <= (left ? spaceLeft : spaceRight)) {\n offset = Math.max(space.top, Math.min(option.top, space.bottom - infoHeight)) - list.top;\n maxWidth = Math.min(400 /* Info.Width */, left ? spaceLeft : spaceRight);\n }\n else {\n narrow = true;\n maxWidth = Math.min(400 /* Info.Width */, (rtl ? list.right : space.right - list.left) - 30 /* Info.Margin */);\n let spaceBelow = space.bottom - list.bottom;\n if (spaceBelow >= infoHeight || spaceBelow > list.top) { // Below the completion\n offset = option.bottom - list.top;\n }\n else { // Above it\n side = \"bottom\";\n offset = list.bottom - option.top;\n }\n }\n let scaleY = (list.bottom - list.top) / tooltip.offsetHeight;\n let scaleX = (list.right - list.left) / tooltip.offsetWidth;\n return {\n style: `${side}: ${offset / scaleY}px; max-width: ${maxWidth / scaleX}px`,\n class: \"cm-completionInfo-\" + (narrow ? (rtl ? \"left-narrow\" : \"right-narrow\") : left ? \"left\" : \"right\")\n };\n}\n\nfunction optionContent(config) {\n let content = config.addToOptions.slice();\n if (config.icons)\n content.push({\n render(completion) {\n let icon = document.createElement(\"div\");\n icon.classList.add(\"cm-completionIcon\");\n if (completion.type)\n icon.classList.add(...completion.type.split(/\\s+/g).map(cls => \"cm-completionIcon-\" + cls));\n icon.setAttribute(\"aria-hidden\", \"true\");\n return icon;\n },\n position: 20\n });\n content.push({\n render(completion, _s, _v, match) {\n let labelElt = document.createElement(\"span\");\n labelElt.className = \"cm-completionLabel\";\n let label = completion.displayLabel || completion.label, off = 0;\n for (let j = 0; j < match.length;) {\n let from = match[j++], to = match[j++];\n if (from > off)\n labelElt.appendChild(document.createTextNode(label.slice(off, from)));\n let span = labelElt.appendChild(document.createElement(\"span\"));\n span.appendChild(document.createTextNode(label.slice(from, to)));\n span.className = \"cm-completionMatchedText\";\n off = to;\n }\n if (off < label.length)\n labelElt.appendChild(document.createTextNode(label.slice(off)));\n return labelElt;\n },\n position: 50\n }, {\n render(completion) {\n if (!completion.detail)\n return null;\n let detailElt = document.createElement(\"span\");\n detailElt.className = \"cm-completionDetail\";\n detailElt.textContent = completion.detail;\n return detailElt;\n },\n position: 80\n });\n return content.sort((a, b) => a.position - b.position).map(a => a.render);\n}\nfunction rangeAroundSelected(total, selected, max) {\n if (total <= max)\n return { from: 0, to: total };\n if (selected < 0)\n selected = 0;\n if (selected <= (total >> 1)) {\n let off = Math.floor(selected / max);\n return { from: off * max, to: (off + 1) * max };\n }\n let off = Math.floor((total - selected) / max);\n return { from: total - (off + 1) * max, to: total - off * max };\n}\nclass CompletionTooltip {\n constructor(view, stateField, applyCompletion) {\n this.view = view;\n this.stateField = stateField;\n this.applyCompletion = applyCompletion;\n this.info = null;\n this.infoDestroy = null;\n this.placeInfoReq = {\n read: () => this.measureInfo(),\n write: (pos) => this.placeInfo(pos),\n key: this\n };\n this.space = null;\n this.currentClass = \"\";\n let cState = view.state.field(stateField);\n let { options, selected } = cState.open;\n let config = view.state.facet(completionConfig);\n this.optionContent = optionContent(config);\n this.optionClass = config.optionClass;\n this.tooltipClass = config.tooltipClass;\n this.range = rangeAroundSelected(options.length, selected, config.maxRenderedOptions);\n this.dom = document.createElement(\"div\");\n this.dom.className = \"cm-tooltip-autocomplete\";\n this.updateTooltipClass(view.state);\n this.dom.addEventListener(\"mousedown\", (e) => {\n let { options } = view.state.field(stateField).open;\n for (let dom = e.target, match; dom && dom != this.dom; dom = dom.parentNode) {\n if (dom.nodeName == \"LI\" && (match = /-(\\d+)$/.exec(dom.id)) && +match[1] < options.length) {\n this.applyCompletion(view, options[+match[1]]);\n e.preventDefault();\n return;\n }\n }\n });\n this.dom.addEventListener(\"focusout\", (e) => {\n let state = view.state.field(this.stateField, false);\n if (state && state.tooltip && view.state.facet(completionConfig).closeOnBlur &&\n e.relatedTarget != view.contentDOM)\n view.dispatch({ effects: closeCompletionEffect.of(null) });\n });\n this.showOptions(options, cState.id);\n }\n mount() { this.updateSel(); }\n showOptions(options, id) {\n if (this.list)\n this.list.remove();\n this.list = this.dom.appendChild(this.createListBox(options, id, this.range));\n this.list.addEventListener(\"scroll\", () => {\n if (this.info)\n this.view.requestMeasure(this.placeInfoReq);\n });\n }\n update(update) {\n var _a;\n let cState = update.state.field(this.stateField);\n let prevState = update.startState.field(this.stateField);\n this.updateTooltipClass(update.state);\n if (cState != prevState) {\n let { options, selected, disabled } = cState.open;\n if (!prevState.open || prevState.open.options != options) {\n this.range = rangeAroundSelected(options.length, selected, update.state.facet(completionConfig).maxRenderedOptions);\n this.showOptions(options, cState.id);\n }\n this.updateSel();\n if (disabled != ((_a = prevState.open) === null || _a === void 0 ? void 0 : _a.disabled))\n this.dom.classList.toggle(\"cm-tooltip-autocomplete-disabled\", !!disabled);\n }\n }\n updateTooltipClass(state) {\n let cls = this.tooltipClass(state);\n if (cls != this.currentClass) {\n for (let c of this.currentClass.split(\" \"))\n if (c)\n this.dom.classList.remove(c);\n for (let c of cls.split(\" \"))\n if (c)\n this.dom.classList.add(c);\n this.currentClass = cls;\n }\n }\n positioned(space) {\n this.space = space;\n if (this.info)\n this.view.requestMeasure(this.placeInfoReq);\n }\n updateSel() {\n let cState = this.view.state.field(this.stateField), open = cState.open;\n if (open.selected > -1 && open.selected < this.range.from || open.selected >= this.range.to) {\n this.range = rangeAroundSelected(open.options.length, open.selected, this.view.state.facet(completionConfig).maxRenderedOptions);\n this.showOptions(open.options, cState.id);\n }\n if (this.updateSelectedOption(open.selected)) {\n this.destroyInfo();\n let { completion } = open.options[open.selected];\n let { info } = completion;\n if (!info)\n return;\n let infoResult = typeof info === \"string\" ? document.createTextNode(info) : info(completion);\n if (!infoResult)\n return;\n if (\"then\" in infoResult) {\n infoResult.then(obj => {\n if (obj && this.view.state.field(this.stateField, false) == cState)\n this.addInfoPane(obj, completion);\n }).catch(e => logException(this.view.state, e, \"completion info\"));\n }\n else {\n this.addInfoPane(infoResult, completion);\n }\n }\n }\n addInfoPane(content, completion) {\n this.destroyInfo();\n let wrap = this.info = document.createElement(\"div\");\n wrap.className = \"cm-tooltip cm-completionInfo\";\n if (content.nodeType != null) {\n wrap.appendChild(content);\n this.infoDestroy = null;\n }\n else {\n let { dom, destroy } = content;\n wrap.appendChild(dom);\n this.infoDestroy = destroy || null;\n }\n this.dom.appendChild(wrap);\n this.view.requestMeasure(this.placeInfoReq);\n }\n updateSelectedOption(selected) {\n let set = null;\n for (let opt = this.list.firstChild, i = this.range.from; opt; opt = opt.nextSibling, i++) {\n if (opt.nodeName != \"LI\" || !opt.id) {\n i--; // A section header\n }\n else if (i == selected) {\n if (!opt.hasAttribute(\"aria-selected\")) {\n opt.setAttribute(\"aria-selected\", \"true\");\n set = opt;\n }\n }\n else {\n if (opt.hasAttribute(\"aria-selected\"))\n opt.removeAttribute(\"aria-selected\");\n }\n }\n if (set)\n scrollIntoView(this.list, set);\n return set;\n }\n measureInfo() {\n let sel = this.dom.querySelector(\"[aria-selected]\");\n if (!sel || !this.info)\n return null;\n let listRect = this.dom.getBoundingClientRect();\n let infoRect = this.info.getBoundingClientRect();\n let selRect = sel.getBoundingClientRect();\n let space = this.space;\n if (!space) {\n let win = this.dom.ownerDocument.defaultView || window;\n space = { left: 0, top: 0, right: win.innerWidth, bottom: win.innerHeight };\n }\n if (selRect.top > Math.min(space.bottom, listRect.bottom) - 10 ||\n selRect.bottom < Math.max(space.top, listRect.top) + 10)\n return null;\n return this.view.state.facet(completionConfig).positionInfo(this.view, listRect, selRect, infoRect, space, this.dom);\n }\n placeInfo(pos) {\n if (this.info) {\n if (pos) {\n if (pos.style)\n this.info.style.cssText = pos.style;\n this.info.className = \"cm-tooltip cm-completionInfo \" + (pos.class || \"\");\n }\n else {\n this.info.style.cssText = \"top: -1e6px\";\n }\n }\n }\n createListBox(options, id, range) {\n const ul = document.createElement(\"ul\");\n ul.id = id;\n ul.setAttribute(\"role\", \"listbox\");\n ul.setAttribute(\"aria-expanded\", \"true\");\n ul.setAttribute(\"aria-label\", this.view.state.phrase(\"Completions\"));\n let curSection = null;\n for (let i = range.from; i < range.to; i++) {\n let { completion, match } = options[i], { section } = completion;\n if (section) {\n let name = typeof section == \"string\" ? section : section.name;\n if (name != curSection && (i > range.from || range.from == 0)) {\n curSection = name;\n if (typeof section != \"string\" && section.header) {\n ul.appendChild(section.header(section));\n }\n else {\n let header = ul.appendChild(document.createElement(\"completion-section\"));\n header.textContent = name;\n }\n }\n }\n const li = ul.appendChild(document.createElement(\"li\"));\n li.id = id + \"-\" + i;\n li.setAttribute(\"role\", \"option\");\n let cls = this.optionClass(completion);\n if (cls)\n li.className = cls;\n for (let source of this.optionContent) {\n let node = source(completion, this.view.state, this.view, match);\n if (node)\n li.appendChild(node);\n }\n }\n if (range.from)\n ul.classList.add(\"cm-completionListIncompleteTop\");\n if (range.to < options.length)\n ul.classList.add(\"cm-completionListIncompleteBottom\");\n return ul;\n }\n destroyInfo() {\n if (this.info) {\n if (this.infoDestroy)\n this.infoDestroy();\n this.info.remove();\n this.info = null;\n }\n }\n destroy() {\n this.destroyInfo();\n }\n}\nfunction completionTooltip(stateField, applyCompletion) {\n return (view) => new CompletionTooltip(view, stateField, applyCompletion);\n}\nfunction scrollIntoView(container, element) {\n let parent = container.getBoundingClientRect();\n let self = element.getBoundingClientRect();\n let scaleY = parent.height / container.offsetHeight;\n if (self.top < parent.top)\n container.scrollTop -= (parent.top - self.top) / scaleY;\n else if (self.bottom > parent.bottom)\n container.scrollTop += (self.bottom - parent.bottom) / scaleY;\n}\n\n// Used to pick a preferred option when two options with the same\n// label occur in the result.\nfunction score(option) {\n return (option.boost || 0) * 100 + (option.apply ? 10 : 0) + (option.info ? 5 : 0) +\n (option.type ? 1 : 0);\n}\nfunction sortOptions(active, state) {\n let options = [];\n let sections = null;\n let addOption = (option) => {\n options.push(option);\n let { section } = option.completion;\n if (section) {\n if (!sections)\n sections = [];\n let name = typeof section == \"string\" ? section : section.name;\n if (!sections.some(s => s.name == name))\n sections.push(typeof section == \"string\" ? { name } : section);\n }\n };\n let conf = state.facet(completionConfig);\n for (let a of active)\n if (a.hasResult()) {\n let getMatch = a.result.getMatch;\n if (a.result.filter === false) {\n for (let option of a.result.options) {\n addOption(new Option(option, a.source, getMatch ? getMatch(option) : [], 1e9 - options.length));\n }\n }\n else {\n let pattern = state.sliceDoc(a.from, a.to), match;\n let matcher = conf.filterStrict ? new StrictMatcher(pattern) : new FuzzyMatcher(pattern);\n for (let option of a.result.options)\n if (match = matcher.match(option.label)) {\n let matched = !option.displayLabel ? match.matched : getMatch ? getMatch(option, match.matched) : [];\n addOption(new Option(option, a.source, matched, match.score + (option.boost || 0)));\n }\n }\n }\n if (sections) {\n let sectionOrder = Object.create(null), pos = 0;\n let cmp = (a, b) => { var _a, _b; return ((_a = a.rank) !== null && _a !== void 0 ? _a : 1e9) - ((_b = b.rank) !== null && _b !== void 0 ? _b : 1e9) || (a.name < b.name ? -1 : 1); };\n for (let s of sections.sort(cmp)) {\n pos -= 1e5;\n sectionOrder[s.name] = pos;\n }\n for (let option of options) {\n let { section } = option.completion;\n if (section)\n option.score += sectionOrder[typeof section == \"string\" ? section : section.name];\n }\n }\n let result = [], prev = null;\n let compare = conf.compareCompletions;\n for (let opt of options.sort((a, b) => (b.score - a.score) || compare(a.completion, b.completion))) {\n let cur = opt.completion;\n if (!prev || prev.label != cur.label || prev.detail != cur.detail ||\n (prev.type != null && cur.type != null && prev.type != cur.type) ||\n prev.apply != cur.apply || prev.boost != cur.boost)\n result.push(opt);\n else if (score(opt.completion) > score(prev))\n result[result.length - 1] = opt;\n prev = opt.completion;\n }\n return result;\n}\nclass CompletionDialog {\n constructor(options, attrs, tooltip, timestamp, selected, disabled) {\n this.options = options;\n this.attrs = attrs;\n this.tooltip = tooltip;\n this.timestamp = timestamp;\n this.selected = selected;\n this.disabled = disabled;\n }\n setSelected(selected, id) {\n return selected == this.selected || selected >= this.options.length ? this\n : new CompletionDialog(this.options, makeAttrs(id, selected), this.tooltip, this.timestamp, selected, this.disabled);\n }\n static build(active, state, id, prev, conf) {\n let options = sortOptions(active, state);\n if (!options.length) {\n return prev && active.some(a => a.state == 1 /* State.Pending */) ?\n new CompletionDialog(prev.options, prev.attrs, prev.tooltip, prev.timestamp, prev.selected, true) : null;\n }\n let selected = state.facet(completionConfig).selectOnOpen ? 0 : -1;\n if (prev && prev.selected != selected && prev.selected != -1) {\n let selectedValue = prev.options[prev.selected].completion;\n for (let i = 0; i < options.length; i++)\n if (options[i].completion == selectedValue) {\n selected = i;\n break;\n }\n }\n return new CompletionDialog(options, makeAttrs(id, selected), {\n pos: active.reduce((a, b) => b.hasResult() ? Math.min(a, b.from) : a, 1e8),\n create: createTooltip,\n above: conf.aboveCursor,\n }, prev ? prev.timestamp : Date.now(), selected, false);\n }\n map(changes) {\n return new CompletionDialog(this.options, this.attrs, Object.assign(Object.assign({}, this.tooltip), { pos: changes.mapPos(this.tooltip.pos) }), this.timestamp, this.selected, this.disabled);\n }\n}\nclass CompletionState {\n constructor(active, id, open) {\n this.active = active;\n this.id = id;\n this.open = open;\n }\n static start() {\n return new CompletionState(none, \"cm-ac-\" + Math.floor(Math.random() * 2e6).toString(36), null);\n }\n update(tr) {\n let { state } = tr, conf = state.facet(completionConfig);\n let sources = conf.override ||\n state.languageDataAt(\"autocomplete\", cur(state)).map(asSource);\n let active = sources.map(source => {\n let value = this.active.find(s => s.source == source) ||\n new ActiveSource(source, this.active.some(a => a.state != 0 /* State.Inactive */) ? 1 /* State.Pending */ : 0 /* State.Inactive */);\n return value.update(tr, conf);\n });\n if (active.length == this.active.length && active.every((a, i) => a == this.active[i]))\n active = this.active;\n let open = this.open;\n if (open && tr.docChanged)\n open = open.map(tr.changes);\n if (tr.selection || active.some(a => a.hasResult() && tr.changes.touchesRange(a.from, a.to)) ||\n !sameResults(active, this.active))\n open = CompletionDialog.build(active, state, this.id, open, conf);\n else if (open && open.disabled && !active.some(a => a.state == 1 /* State.Pending */))\n open = null;\n if (!open && active.every(a => a.state != 1 /* State.Pending */) && active.some(a => a.hasResult()))\n active = active.map(a => a.hasResult() ? new ActiveSource(a.source, 0 /* State.Inactive */) : a);\n for (let effect of tr.effects)\n if (effect.is(setSelectedEffect))\n open = open && open.setSelected(effect.value, this.id);\n return active == this.active && open == this.open ? this : new CompletionState(active, this.id, open);\n }\n get tooltip() { return this.open ? this.open.tooltip : null; }\n get attrs() { return this.open ? this.open.attrs : this.active.length ? baseAttrs : noAttrs; }\n}\nfunction sameResults(a, b) {\n if (a == b)\n return true;\n for (let iA = 0, iB = 0;;) {\n while (iA < a.length && !a[iA].hasResult)\n iA++;\n while (iB < b.length && !b[iB].hasResult)\n iB++;\n let endA = iA == a.length, endB = iB == b.length;\n if (endA || endB)\n return endA == endB;\n if (a[iA++].result != b[iB++].result)\n return false;\n }\n}\nconst baseAttrs = {\n \"aria-autocomplete\": \"list\"\n};\nconst noAttrs = {};\nfunction makeAttrs(id, selected) {\n let result = {\n \"aria-autocomplete\": \"list\",\n \"aria-haspopup\": \"listbox\",\n \"aria-controls\": id\n };\n if (selected > -1)\n result[\"aria-activedescendant\"] = id + \"-\" + selected;\n return result;\n}\nconst none = [];\nfunction getUpdateType(tr, conf) {\n if (tr.isUserEvent(\"input.complete\")) {\n let completion = tr.annotation(pickedCompletion);\n if (completion && conf.activateOnCompletion(completion))\n return 4 /* UpdateType.Activate */ | 8 /* UpdateType.Reset */;\n }\n let typing = tr.isUserEvent(\"input.type\");\n return typing && conf.activateOnTyping ? 4 /* UpdateType.Activate */ | 1 /* UpdateType.Typing */\n : typing ? 1 /* UpdateType.Typing */\n : tr.isUserEvent(\"delete.backward\") ? 2 /* UpdateType.Backspacing */\n : tr.selection ? 8 /* UpdateType.Reset */\n : tr.docChanged ? 16 /* UpdateType.ResetIfTouching */ : 0 /* UpdateType.None */;\n}\nclass ActiveSource {\n constructor(source, state, explicitPos = -1) {\n this.source = source;\n this.state = state;\n this.explicitPos = explicitPos;\n }\n hasResult() { return false; }\n update(tr, conf) {\n let type = getUpdateType(tr, conf), value = this;\n if ((type & 8 /* UpdateType.Reset */) || (type & 16 /* UpdateType.ResetIfTouching */) && this.touches(tr))\n value = new ActiveSource(value.source, 0 /* State.Inactive */);\n if ((type & 4 /* UpdateType.Activate */) && value.state == 0 /* State.Inactive */)\n value = new ActiveSource(this.source, 1 /* State.Pending */);\n value = value.updateFor(tr, type);\n for (let effect of tr.effects) {\n if (effect.is(startCompletionEffect))\n value = new ActiveSource(value.source, 1 /* State.Pending */, effect.value ? cur(tr.state) : -1);\n else if (effect.is(closeCompletionEffect))\n value = new ActiveSource(value.source, 0 /* State.Inactive */);\n else if (effect.is(setActiveEffect))\n for (let active of effect.value)\n if (active.source == value.source)\n value = active;\n }\n return value;\n }\n updateFor(tr, type) { return this.map(tr.changes); }\n map(changes) {\n return changes.empty || this.explicitPos < 0 ? this : new ActiveSource(this.source, this.state, changes.mapPos(this.explicitPos));\n }\n touches(tr) {\n return tr.changes.touchesRange(cur(tr.state));\n }\n}\nclass ActiveResult extends ActiveSource {\n constructor(source, explicitPos, result, from, to) {\n super(source, 2 /* State.Result */, explicitPos);\n this.result = result;\n this.from = from;\n this.to = to;\n }\n hasResult() { return true; }\n updateFor(tr, type) {\n var _a;\n if (!(type & 3 /* UpdateType.SimpleInteraction */))\n return this.map(tr.changes);\n let result = this.result;\n if (result.map && !tr.changes.empty)\n result = result.map(result, tr.changes);\n let from = tr.changes.mapPos(this.from), to = tr.changes.mapPos(this.to, 1);\n let pos = cur(tr.state);\n if ((this.explicitPos < 0 ? pos <= from : pos < this.from) ||\n pos > to || !result ||\n (type & 2 /* UpdateType.Backspacing */) && cur(tr.startState) == this.from)\n return new ActiveSource(this.source, type & 4 /* UpdateType.Activate */ ? 1 /* State.Pending */ : 0 /* State.Inactive */);\n let explicitPos = this.explicitPos < 0 ? -1 : tr.changes.mapPos(this.explicitPos);\n if (checkValid(result.validFor, tr.state, from, to))\n return new ActiveResult(this.source, explicitPos, result, from, to);\n if (result.update &&\n (result = result.update(result, from, to, new CompletionContext(tr.state, pos, explicitPos >= 0))))\n return new ActiveResult(this.source, explicitPos, result, result.from, (_a = result.to) !== null && _a !== void 0 ? _a : cur(tr.state));\n return new ActiveSource(this.source, 1 /* State.Pending */, explicitPos);\n }\n map(mapping) {\n if (mapping.empty)\n return this;\n let result = this.result.map ? this.result.map(this.result, mapping) : this.result;\n if (!result)\n return new ActiveSource(this.source, 0 /* State.Inactive */);\n return new ActiveResult(this.source, this.explicitPos < 0 ? -1 : mapping.mapPos(this.explicitPos), this.result, mapping.mapPos(this.from), mapping.mapPos(this.to, 1));\n }\n touches(tr) {\n return tr.changes.touchesRange(this.from, this.to);\n }\n}\nfunction checkValid(validFor, state, from, to) {\n if (!validFor)\n return false;\n let text = state.sliceDoc(from, to);\n return typeof validFor == \"function\" ? validFor(text, from, to, state) : ensureAnchor(validFor, true).test(text);\n}\nconst setActiveEffect = /*@__PURE__*/StateEffect.define({\n map(sources, mapping) { return sources.map(s => s.map(mapping)); }\n});\nconst setSelectedEffect = /*@__PURE__*/StateEffect.define();\nconst completionState = /*@__PURE__*/StateField.define({\n create() { return CompletionState.start(); },\n update(value, tr) { return value.update(tr); },\n provide: f => [\n showTooltip.from(f, val => val.tooltip),\n EditorView.contentAttributes.from(f, state => state.attrs)\n ]\n});\nfunction applyCompletion(view, option) {\n const apply = option.completion.apply || option.completion.label;\n let result = view.state.field(completionState).active.find(a => a.source == option.source);\n if (!(result instanceof ActiveResult))\n return false;\n if (typeof apply == \"string\")\n view.dispatch(Object.assign(Object.assign({}, insertCompletionText(view.state, apply, result.from, result.to)), { annotations: pickedCompletion.of(option.completion) }));\n else\n apply(view, option.completion, result.from, result.to);\n return true;\n}\nconst createTooltip = /*@__PURE__*/completionTooltip(completionState, applyCompletion);\n\n/**\nReturns a command that moves the completion selection forward or\nbackward by the given amount.\n*/\nfunction moveCompletionSelection(forward, by = \"option\") {\n return (view) => {\n let cState = view.state.field(completionState, false);\n if (!cState || !cState.open || cState.open.disabled ||\n Date.now() - cState.open.timestamp < view.state.facet(completionConfig).interactionDelay)\n return false;\n let step = 1, tooltip;\n if (by == \"page\" && (tooltip = getTooltip(view, cState.open.tooltip)))\n step = Math.max(2, Math.floor(tooltip.dom.offsetHeight /\n tooltip.dom.querySelector(\"li\").offsetHeight) - 1);\n let { length } = cState.open.options;\n let selected = cState.open.selected > -1 ? cState.open.selected + step * (forward ? 1 : -1) : forward ? 0 : length - 1;\n if (selected < 0)\n selected = by == \"page\" ? 0 : length - 1;\n else if (selected >= length)\n selected = by == \"page\" ? length - 1 : 0;\n view.dispatch({ effects: setSelectedEffect.of(selected) });\n return true;\n };\n}\n/**\nAccept the current completion.\n*/\nconst acceptCompletion = (view) => {\n let cState = view.state.field(completionState, false);\n if (view.state.readOnly || !cState || !cState.open || cState.open.selected < 0 || cState.open.disabled ||\n Date.now() - cState.open.timestamp < view.state.facet(completionConfig).interactionDelay)\n return false;\n return applyCompletion(view, cState.open.options[cState.open.selected]);\n};\n/**\nExplicitly start autocompletion.\n*/\nconst startCompletion = (view) => {\n let cState = view.state.field(completionState, false);\n if (!cState)\n return false;\n view.dispatch({ effects: startCompletionEffect.of(true) });\n return true;\n};\n/**\nClose the currently active completion.\n*/\nconst closeCompletion = (view) => {\n let cState = view.state.field(completionState, false);\n if (!cState || !cState.active.some(a => a.state != 0 /* State.Inactive */))\n return false;\n view.dispatch({ effects: closeCompletionEffect.of(null) });\n return true;\n};\nclass RunningQuery {\n constructor(active, context) {\n this.active = active;\n this.context = context;\n this.time = Date.now();\n this.updates = [];\n // Note that 'undefined' means 'not done yet', whereas 'null' means\n // 'query returned null'.\n this.done = undefined;\n }\n}\nconst MaxUpdateCount = 50, MinAbortTime = 1000;\nconst completionPlugin = /*@__PURE__*/ViewPlugin.fromClass(class {\n constructor(view) {\n this.view = view;\n this.debounceUpdate = -1;\n this.running = [];\n this.debounceAccept = -1;\n this.pendingStart = false;\n this.composing = 0 /* CompositionState.None */;\n for (let active of view.state.field(completionState).active)\n if (active.state == 1 /* State.Pending */)\n this.startQuery(active);\n }\n update(update) {\n let cState = update.state.field(completionState);\n let conf = update.state.facet(completionConfig);\n if (!update.selectionSet && !update.docChanged && update.startState.field(completionState) == cState)\n return;\n let doesReset = update.transactions.some(tr => {\n let type = getUpdateType(tr, conf);\n return (type & 8 /* UpdateType.Reset */) || (tr.selection || tr.docChanged) && !(type & 3 /* UpdateType.SimpleInteraction */);\n });\n for (let i = 0; i < this.running.length; i++) {\n let query = this.running[i];\n if (doesReset ||\n query.context.abortOnDocChange && update.docChanged ||\n query.updates.length + update.transactions.length > MaxUpdateCount && Date.now() - query.time > MinAbortTime) {\n for (let handler of query.context.abortListeners) {\n try {\n handler();\n }\n catch (e) {\n logException(this.view.state, e);\n }\n }\n query.context.abortListeners = null;\n this.running.splice(i--, 1);\n }\n else {\n query.updates.push(...update.transactions);\n }\n }\n if (this.debounceUpdate > -1)\n clearTimeout(this.debounceUpdate);\n if (update.transactions.some(tr => tr.effects.some(e => e.is(startCompletionEffect))))\n this.pendingStart = true;\n let delay = this.pendingStart ? 50 : conf.activateOnTypingDelay;\n this.debounceUpdate = cState.active.some(a => a.state == 1 /* State.Pending */ && !this.running.some(q => q.active.source == a.source))\n ? setTimeout(() => this.startUpdate(), delay) : -1;\n if (this.composing != 0 /* CompositionState.None */)\n for (let tr of update.transactions) {\n if (tr.isUserEvent(\"input.type\"))\n this.composing = 2 /* CompositionState.Changed */;\n else if (this.composing == 2 /* CompositionState.Changed */ && tr.selection)\n this.composing = 3 /* CompositionState.ChangedAndMoved */;\n }\n }\n startUpdate() {\n this.debounceUpdate = -1;\n this.pendingStart = false;\n let { state } = this.view, cState = state.field(completionState);\n for (let active of cState.active) {\n if (active.state == 1 /* State.Pending */ && !this.running.some(r => r.active.source == active.source))\n this.startQuery(active);\n }\n }\n startQuery(active) {\n let { state } = this.view, pos = cur(state);\n let context = new CompletionContext(state, pos, active.explicitPos == pos, this.view);\n let pending = new RunningQuery(active, context);\n this.running.push(pending);\n Promise.resolve(active.source(context)).then(result => {\n if (!pending.context.aborted) {\n pending.done = result || null;\n this.scheduleAccept();\n }\n }, err => {\n this.view.dispatch({ effects: closeCompletionEffect.of(null) });\n logException(this.view.state, err);\n });\n }\n scheduleAccept() {\n if (this.running.every(q => q.done !== undefined))\n this.accept();\n else if (this.debounceAccept < 0)\n this.debounceAccept = setTimeout(() => this.accept(), this.view.state.facet(completionConfig).updateSyncTime);\n }\n // For each finished query in this.running, try to create a result\n // or, if appropriate, restart the query.\n accept() {\n var _a;\n if (this.debounceAccept > -1)\n clearTimeout(this.debounceAccept);\n this.debounceAccept = -1;\n let updated = [];\n let conf = this.view.state.facet(completionConfig);\n for (let i = 0; i < this.running.length; i++) {\n let query = this.running[i];\n if (query.done === undefined)\n continue;\n this.running.splice(i--, 1);\n if (query.done) {\n let active = new ActiveResult(query.active.source, query.active.explicitPos, query.done, query.done.from, (_a = query.done.to) !== null && _a !== void 0 ? _a : cur(query.updates.length ? query.updates[0].startState : this.view.state));\n // Replay the transactions that happened since the start of\n // the request and see if that preserves the result\n for (let tr of query.updates)\n active = active.update(tr, conf);\n if (active.hasResult()) {\n updated.push(active);\n continue;\n }\n }\n let current = this.view.state.field(completionState).active.find(a => a.source == query.active.source);\n if (current && current.state == 1 /* State.Pending */) {\n if (query.done == null) {\n // Explicitly failed. Should clear the pending status if it\n // hasn't been re-set in the meantime.\n let active = new ActiveSource(query.active.source, 0 /* State.Inactive */);\n for (let tr of query.updates)\n active = active.update(tr, conf);\n if (active.state != 1 /* State.Pending */)\n updated.push(active);\n }\n else {\n // Cleared by subsequent transactions. Restart.\n this.startQuery(current);\n }\n }\n }\n if (updated.length)\n this.view.dispatch({ effects: setActiveEffect.of(updated) });\n }\n}, {\n eventHandlers: {\n blur(event) {\n let state = this.view.state.field(completionState, false);\n if (state && state.tooltip && this.view.state.facet(completionConfig).closeOnBlur) {\n let dialog = state.open && getTooltip(this.view, state.open.tooltip);\n if (!dialog || !dialog.dom.contains(event.relatedTarget))\n setTimeout(() => this.view.dispatch({ effects: closeCompletionEffect.of(null) }), 10);\n }\n },\n compositionstart() {\n this.composing = 1 /* CompositionState.Started */;\n },\n compositionend() {\n if (this.composing == 3 /* CompositionState.ChangedAndMoved */) {\n // Safari fires compositionend events synchronously, possibly\n // from inside an update, so dispatch asynchronously to avoid reentrancy\n setTimeout(() => this.view.dispatch({ effects: startCompletionEffect.of(false) }), 20);\n }\n this.composing = 0 /* CompositionState.None */;\n }\n }\n});\nconst windows = typeof navigator == \"object\" && /*@__PURE__*//Win/.test(navigator.platform);\nconst commitCharacters = /*@__PURE__*/Prec.highest(/*@__PURE__*/EditorView.domEventHandlers({\n keydown(event, view) {\n let field = view.state.field(completionState, false);\n if (!field || !field.open || field.open.disabled || field.open.selected < 0 ||\n event.key.length > 1 || event.ctrlKey && !(windows && event.altKey) || event.metaKey)\n return false;\n let option = field.open.options[field.open.selected];\n let result = field.active.find(a => a.source == option.source);\n let commitChars = option.completion.commitCharacters || result.result.commitCharacters;\n if (commitChars && commitChars.indexOf(event.key) > -1)\n applyCompletion(view, option);\n return false;\n }\n}));\n\nconst baseTheme = /*@__PURE__*/EditorView.baseTheme({\n \".cm-tooltip.cm-tooltip-autocomplete\": {\n \"& > ul\": {\n fontFamily: \"monospace\",\n whiteSpace: \"nowrap\",\n overflow: \"hidden auto\",\n maxWidth_fallback: \"700px\",\n maxWidth: \"min(700px, 95vw)\",\n minWidth: \"250px\",\n maxHeight: \"10em\",\n height: \"100%\",\n listStyle: \"none\",\n margin: 0,\n padding: 0,\n \"& > li, & > completion-section\": {\n padding: \"1px 3px\",\n lineHeight: 1.2\n },\n \"& > li\": {\n overflowX: \"hidden\",\n textOverflow: \"ellipsis\",\n cursor: \"pointer\"\n },\n \"& > completion-section\": {\n display: \"list-item\",\n borderBottom: \"1px solid silver\",\n paddingLeft: \"0.5em\",\n opacity: 0.7\n }\n }\n },\n \"&light .cm-tooltip-autocomplete ul li[aria-selected]\": {\n background: \"#17c\",\n color: \"white\",\n },\n \"&light .cm-tooltip-autocomplete-disabled ul li[aria-selected]\": {\n background: \"#777\",\n },\n \"&dark .cm-tooltip-autocomplete ul li[aria-selected]\": {\n background: \"#347\",\n color: \"white\",\n },\n \"&dark .cm-tooltip-autocomplete-disabled ul li[aria-selected]\": {\n background: \"#444\",\n },\n \".cm-completionListIncompleteTop:before, .cm-completionListIncompleteBottom:after\": {\n content: '\"···\"',\n opacity: 0.5,\n display: \"block\",\n textAlign: \"center\"\n },\n \".cm-tooltip.cm-completionInfo\": {\n position: \"absolute\",\n padding: \"3px 9px\",\n width: \"max-content\",\n maxWidth: `${400 /* Info.Width */}px`,\n boxSizing: \"border-box\",\n whiteSpace: \"pre-line\"\n },\n \".cm-completionInfo.cm-completionInfo-left\": { right: \"100%\" },\n \".cm-completionInfo.cm-completionInfo-right\": { left: \"100%\" },\n \".cm-completionInfo.cm-completionInfo-left-narrow\": { right: `${30 /* Info.Margin */}px` },\n \".cm-completionInfo.cm-completionInfo-right-narrow\": { left: `${30 /* Info.Margin */}px` },\n \"&light .cm-snippetField\": { backgroundColor: \"#00000022\" },\n \"&dark .cm-snippetField\": { backgroundColor: \"#ffffff22\" },\n \".cm-snippetFieldPosition\": {\n verticalAlign: \"text-top\",\n width: 0,\n height: \"1.15em\",\n display: \"inline-block\",\n margin: \"0 -0.7px -.7em\",\n borderLeft: \"1.4px dotted #888\"\n },\n \".cm-completionMatchedText\": {\n textDecoration: \"underline\"\n },\n \".cm-completionDetail\": {\n marginLeft: \"0.5em\",\n fontStyle: \"italic\"\n },\n \".cm-completionIcon\": {\n fontSize: \"90%\",\n width: \".8em\",\n display: \"inline-block\",\n textAlign: \"center\",\n paddingRight: \".6em\",\n opacity: \"0.6\",\n boxSizing: \"content-box\"\n },\n \".cm-completionIcon-function, .cm-completionIcon-method\": {\n \"&:after\": { content: \"'ƒ'\" }\n },\n \".cm-completionIcon-class\": {\n \"&:after\": { content: \"'○'\" }\n },\n \".cm-completionIcon-interface\": {\n \"&:after\": { content: \"'◌'\" }\n },\n \".cm-completionIcon-variable\": {\n \"&:after\": { content: \"'𝑥'\" }\n },\n \".cm-completionIcon-constant\": {\n \"&:after\": { content: \"'𝐶'\" }\n },\n \".cm-completionIcon-type\": {\n \"&:after\": { content: \"'𝑡'\" }\n },\n \".cm-completionIcon-enum\": {\n \"&:after\": { content: \"'∪'\" }\n },\n \".cm-completionIcon-property\": {\n \"&:after\": { content: \"'□'\" }\n },\n \".cm-completionIcon-keyword\": {\n \"&:after\": { content: \"'🔑\\uFE0E'\" } // Disable emoji rendering\n },\n \".cm-completionIcon-namespace\": {\n \"&:after\": { content: \"'▢'\" }\n },\n \".cm-completionIcon-text\": {\n \"&:after\": { content: \"'abc'\", fontSize: \"50%\", verticalAlign: \"middle\" }\n }\n});\n\nclass FieldPos {\n constructor(field, line, from, to) {\n this.field = field;\n this.line = line;\n this.from = from;\n this.to = to;\n }\n}\nclass FieldRange {\n constructor(field, from, to) {\n this.field = field;\n this.from = from;\n this.to = to;\n }\n map(changes) {\n let from = changes.mapPos(this.from, -1, MapMode.TrackDel);\n let to = changes.mapPos(this.to, 1, MapMode.TrackDel);\n return from == null || to == null ? null : new FieldRange(this.field, from, to);\n }\n}\nclass Snippet {\n constructor(lines, fieldPositions) {\n this.lines = lines;\n this.fieldPositions = fieldPositions;\n }\n instantiate(state, pos) {\n let text = [], lineStart = [pos];\n let lineObj = state.doc.lineAt(pos), baseIndent = /^\\s*/.exec(lineObj.text)[0];\n for (let line of this.lines) {\n if (text.length) {\n let indent = baseIndent, tabs = /^\\t*/.exec(line)[0].length;\n for (let i = 0; i < tabs; i++)\n indent += state.facet(indentUnit);\n lineStart.push(pos + indent.length - tabs);\n line = indent + line.slice(tabs);\n }\n text.push(line);\n pos += line.length + 1;\n }\n let ranges = this.fieldPositions.map(pos => new FieldRange(pos.field, lineStart[pos.line] + pos.from, lineStart[pos.line] + pos.to));\n return { text, ranges };\n }\n static parse(template) {\n let fields = [];\n let lines = [], positions = [], m;\n for (let line of template.split(/\\r\\n?|\\n/)) {\n while (m = /[#$]\\{(?:(\\d+)(?::([^}]*))?|((?:\\\\[{}]|[^}])*))\\}/.exec(line)) {\n let seq = m[1] ? +m[1] : null, rawName = m[2] || m[3] || \"\", found = -1;\n let name = rawName.replace(/\\\\[{}]/g, m => m[1]);\n for (let i = 0; i < fields.length; i++) {\n if (seq != null ? fields[i].seq == seq : name ? fields[i].name == name : false)\n found = i;\n }\n if (found < 0) {\n let i = 0;\n while (i < fields.length && (seq == null || (fields[i].seq != null && fields[i].seq < seq)))\n i++;\n fields.splice(i, 0, { seq, name });\n found = i;\n for (let pos of positions)\n if (pos.field >= found)\n pos.field++;\n }\n positions.push(new FieldPos(found, lines.length, m.index, m.index + name.length));\n line = line.slice(0, m.index) + rawName + line.slice(m.index + m[0].length);\n }\n line = line.replace(/\\\\([{}])/g, (_, brace, index) => {\n for (let pos of positions)\n if (pos.line == lines.length && pos.from > index) {\n pos.from--;\n pos.to--;\n }\n return brace;\n });\n lines.push(line);\n }\n return new Snippet(lines, positions);\n }\n}\nlet fieldMarker = /*@__PURE__*/Decoration.widget({ widget: /*@__PURE__*/new class extends WidgetType {\n toDOM() {\n let span = document.createElement(\"span\");\n span.className = \"cm-snippetFieldPosition\";\n return span;\n }\n ignoreEvent() { return false; }\n } });\nlet fieldRange = /*@__PURE__*/Decoration.mark({ class: \"cm-snippetField\" });\nclass ActiveSnippet {\n constructor(ranges, active) {\n this.ranges = ranges;\n this.active = active;\n this.deco = Decoration.set(ranges.map(r => (r.from == r.to ? fieldMarker : fieldRange).range(r.from, r.to)));\n }\n map(changes) {\n let ranges = [];\n for (let r of this.ranges) {\n let mapped = r.map(changes);\n if (!mapped)\n return null;\n ranges.push(mapped);\n }\n return new ActiveSnippet(ranges, this.active);\n }\n selectionInsideField(sel) {\n return sel.ranges.every(range => this.ranges.some(r => r.field == this.active && r.from <= range.from && r.to >= range.to));\n }\n}\nconst setActive = /*@__PURE__*/StateEffect.define({\n map(value, changes) { return value && value.map(changes); }\n});\nconst moveToField = /*@__PURE__*/StateEffect.define();\nconst snippetState = /*@__PURE__*/StateField.define({\n create() { return null; },\n update(value, tr) {\n for (let effect of tr.effects) {\n if (effect.is(setActive))\n return effect.value;\n if (effect.is(moveToField) && value)\n return new ActiveSnippet(value.ranges, effect.value);\n }\n if (value && tr.docChanged)\n value = value.map(tr.changes);\n if (value && tr.selection && !value.selectionInsideField(tr.selection))\n value = null;\n return value;\n },\n provide: f => EditorView.decorations.from(f, val => val ? val.deco : Decoration.none)\n});\nfunction fieldSelection(ranges, field) {\n return EditorSelection.create(ranges.filter(r => r.field == field).map(r => EditorSelection.range(r.from, r.to)));\n}\n/**\nConvert a snippet template to a function that can\n[apply](https://codemirror.net/6/docs/ref/#autocomplete.Completion.apply) it. Snippets are written\nusing syntax like this:\n\n \"for (let ${index} = 0; ${index} < ${end}; ${index}++) {\\n\\t${}\\n}\"\n\nEach `${}` placeholder (you may also use `#{}`) indicates a field\nthat the user can fill in. Its name, if any, will be the default\ncontent for the field.\n\nWhen the snippet is activated by calling the returned function,\nthe code is inserted at the given position. Newlines in the\ntemplate are indented by the indentation of the start line, plus\none [indent unit](https://codemirror.net/6/docs/ref/#language.indentUnit) per tab character after\nthe newline.\n\nOn activation, (all instances of) the first field are selected.\nThe user can move between fields with Tab and Shift-Tab as long as\nthe fields are active. Moving to the last field or moving the\ncursor out of the current field deactivates the fields.\n\nThe order of fields defaults to textual order, but you can add\nnumbers to placeholders (`${1}` or `${1:defaultText}`) to provide\na custom order.\n\nTo include a literal `{` or `}` in your template, put a backslash\nin front of it. This will be removed and the brace will not be\ninterpreted as indicating a placeholder.\n*/\nfunction snippet(template) {\n let snippet = Snippet.parse(template);\n return (editor, completion, from, to) => {\n let { text, ranges } = snippet.instantiate(editor.state, from);\n let spec = {\n changes: { from, to, insert: Text.of(text) },\n scrollIntoView: true,\n annotations: completion ? [pickedCompletion.of(completion), Transaction.userEvent.of(\"input.complete\")] : undefined\n };\n if (ranges.length)\n spec.selection = fieldSelection(ranges, 0);\n if (ranges.some(r => r.field > 0)) {\n let active = new ActiveSnippet(ranges, 0);\n let effects = spec.effects = [setActive.of(active)];\n if (editor.state.field(snippetState, false) === undefined)\n effects.push(StateEffect.appendConfig.of([snippetState, addSnippetKeymap, snippetPointerHandler, baseTheme]));\n }\n editor.dispatch(editor.state.update(spec));\n };\n}\nfunction moveField(dir) {\n return ({ state, dispatch }) => {\n let active = state.field(snippetState, false);\n if (!active || dir < 0 && active.active == 0)\n return false;\n let next = active.active + dir, last = dir > 0 && !active.ranges.some(r => r.field == next + dir);\n dispatch(state.update({\n selection: fieldSelection(active.ranges, next),\n effects: setActive.of(last ? null : new ActiveSnippet(active.ranges, next)),\n scrollIntoView: true\n }));\n return true;\n };\n}\n/**\nA command that clears the active snippet, if any.\n*/\nconst clearSnippet = ({ state, dispatch }) => {\n let active = state.field(snippetState, false);\n if (!active)\n return false;\n dispatch(state.update({ effects: setActive.of(null) }));\n return true;\n};\n/**\nMove to the next snippet field, if available.\n*/\nconst nextSnippetField = /*@__PURE__*/moveField(1);\n/**\nMove to the previous snippet field, if available.\n*/\nconst prevSnippetField = /*@__PURE__*/moveField(-1);\n/**\nCheck if there is an active snippet with a next field for\n`nextSnippetField` to move to.\n*/\nfunction hasNextSnippetField(state) {\n let active = state.field(snippetState, false);\n return !!(active && active.ranges.some(r => r.field == active.active + 1));\n}\n/**\nReturns true if there is an active snippet and a previous field\nfor `prevSnippetField` to move to.\n*/\nfunction hasPrevSnippetField(state) {\n let active = state.field(snippetState, false);\n return !!(active && active.active > 0);\n}\nconst defaultSnippetKeymap = [\n { key: \"Tab\", run: nextSnippetField, shift: prevSnippetField },\n { key: \"Escape\", run: clearSnippet }\n];\n/**\nA facet that can be used to configure the key bindings used by\nsnippets. The default binds Tab to\n[`nextSnippetField`](https://codemirror.net/6/docs/ref/#autocomplete.nextSnippetField), Shift-Tab to\n[`prevSnippetField`](https://codemirror.net/6/docs/ref/#autocomplete.prevSnippetField), and Escape\nto [`clearSnippet`](https://codemirror.net/6/docs/ref/#autocomplete.clearSnippet).\n*/\nconst snippetKeymap = /*@__PURE__*/Facet.define({\n combine(maps) { return maps.length ? maps[0] : defaultSnippetKeymap; }\n});\nconst addSnippetKeymap = /*@__PURE__*/Prec.highest(/*@__PURE__*/keymap.compute([snippetKeymap], state => state.facet(snippetKeymap)));\n/**\nCreate a completion from a snippet. Returns an object with the\nproperties from `completion`, plus an `apply` function that\napplies the snippet.\n*/\nfunction snippetCompletion(template, completion) {\n return Object.assign(Object.assign({}, completion), { apply: snippet(template) });\n}\nconst snippetPointerHandler = /*@__PURE__*/EditorView.domEventHandlers({\n mousedown(event, view) {\n let active = view.state.field(snippetState, false), pos;\n if (!active || (pos = view.posAtCoords({ x: event.clientX, y: event.clientY })) == null)\n return false;\n let match = active.ranges.find(r => r.from <= pos && r.to >= pos);\n if (!match || match.field == active.active)\n return false;\n view.dispatch({\n selection: fieldSelection(active.ranges, match.field),\n effects: setActive.of(active.ranges.some(r => r.field > match.field)\n ? new ActiveSnippet(active.ranges, match.field) : null),\n scrollIntoView: true\n });\n return true;\n }\n});\n\nfunction wordRE(wordChars) {\n let escaped = wordChars.replace(/[\\]\\-\\\\]/g, \"\\\\$&\");\n try {\n return new RegExp(`[\\\\p{Alphabetic}\\\\p{Number}_${escaped}]+`, \"ug\");\n }\n catch (_a) {\n return new RegExp(`[\\w${escaped}]`, \"g\");\n }\n}\nfunction mapRE(re, f) {\n return new RegExp(f(re.source), re.unicode ? \"u\" : \"\");\n}\nconst wordCaches = /*@__PURE__*/Object.create(null);\nfunction wordCache(wordChars) {\n return wordCaches[wordChars] || (wordCaches[wordChars] = new WeakMap);\n}\nfunction storeWords(doc, wordRE, result, seen, ignoreAt) {\n for (let lines = doc.iterLines(), pos = 0; !lines.next().done;) {\n let { value } = lines, m;\n wordRE.lastIndex = 0;\n while (m = wordRE.exec(value)) {\n if (!seen[m[0]] && pos + m.index != ignoreAt) {\n result.push({ type: \"text\", label: m[0] });\n seen[m[0]] = true;\n if (result.length >= 2000 /* C.MaxList */)\n return;\n }\n }\n pos += value.length + 1;\n }\n}\nfunction collectWords(doc, cache, wordRE, to, ignoreAt) {\n let big = doc.length >= 1000 /* C.MinCacheLen */;\n let cached = big && cache.get(doc);\n if (cached)\n return cached;\n let result = [], seen = Object.create(null);\n if (doc.children) {\n let pos = 0;\n for (let ch of doc.children) {\n if (ch.length >= 1000 /* C.MinCacheLen */) {\n for (let c of collectWords(ch, cache, wordRE, to - pos, ignoreAt - pos)) {\n if (!seen[c.label]) {\n seen[c.label] = true;\n result.push(c);\n }\n }\n }\n else {\n storeWords(ch, wordRE, result, seen, ignoreAt - pos);\n }\n pos += ch.length + 1;\n }\n }\n else {\n storeWords(doc, wordRE, result, seen, ignoreAt);\n }\n if (big && result.length < 2000 /* C.MaxList */)\n cache.set(doc, result);\n return result;\n}\n/**\nA completion source that will scan the document for words (using a\n[character categorizer](https://codemirror.net/6/docs/ref/#state.EditorState.charCategorizer)), and\nreturn those as completions.\n*/\nconst completeAnyWord = context => {\n let wordChars = context.state.languageDataAt(\"wordChars\", context.pos).join(\"\");\n let re = wordRE(wordChars);\n let token = context.matchBefore(mapRE(re, s => s + \"$\"));\n if (!token && !context.explicit)\n return null;\n let from = token ? token.from : context.pos;\n let options = collectWords(context.state.doc, wordCache(wordChars), re, 50000 /* C.Range */, from);\n return { from, options, validFor: mapRE(re, s => \"^\" + s) };\n};\n\nconst defaults = {\n brackets: [\"(\", \"[\", \"{\", \"'\", '\"'],\n before: \")]}:;>\",\n stringPrefixes: []\n};\nconst closeBracketEffect = /*@__PURE__*/StateEffect.define({\n map(value, mapping) {\n let mapped = mapping.mapPos(value, -1, MapMode.TrackAfter);\n return mapped == null ? undefined : mapped;\n }\n});\nconst closedBracket = /*@__PURE__*/new class extends RangeValue {\n};\nclosedBracket.startSide = 1;\nclosedBracket.endSide = -1;\nconst bracketState = /*@__PURE__*/StateField.define({\n create() { return RangeSet.empty; },\n update(value, tr) {\n value = value.map(tr.changes);\n if (tr.selection) {\n let line = tr.state.doc.lineAt(tr.selection.main.head);\n value = value.update({ filter: from => from >= line.from && from <= line.to });\n }\n for (let effect of tr.effects)\n if (effect.is(closeBracketEffect))\n value = value.update({ add: [closedBracket.range(effect.value, effect.value + 1)] });\n return value;\n }\n});\n/**\nExtension to enable bracket-closing behavior. When a closeable\nbracket is typed, its closing bracket is immediately inserted\nafter the cursor. When closing a bracket directly in front of a\nclosing bracket inserted by the extension, the cursor moves over\nthat bracket.\n*/\nfunction closeBrackets() {\n return [inputHandler, bracketState];\n}\nconst definedClosing = \"()[]{}<>\";\nfunction closing(ch) {\n for (let i = 0; i < definedClosing.length; i += 2)\n if (definedClosing.charCodeAt(i) == ch)\n return definedClosing.charAt(i + 1);\n return fromCodePoint(ch < 128 ? ch : ch + 1);\n}\nfunction config(state, pos) {\n return state.languageDataAt(\"closeBrackets\", pos)[0] || defaults;\n}\nconst android = typeof navigator == \"object\" && /*@__PURE__*//Android\\b/.test(navigator.userAgent);\nconst inputHandler = /*@__PURE__*/EditorView.inputHandler.of((view, from, to, insert) => {\n if ((android ? view.composing : view.compositionStarted) || view.state.readOnly)\n return false;\n let sel = view.state.selection.main;\n if (insert.length > 2 || insert.length == 2 && codePointSize(codePointAt(insert, 0)) == 1 ||\n from != sel.from || to != sel.to)\n return false;\n let tr = insertBracket(view.state, insert);\n if (!tr)\n return false;\n view.dispatch(tr);\n return true;\n});\n/**\nCommand that implements deleting a pair of matching brackets when\nthe cursor is between them.\n*/\nconst deleteBracketPair = ({ state, dispatch }) => {\n if (state.readOnly)\n return false;\n let conf = config(state, state.selection.main.head);\n let tokens = conf.brackets || defaults.brackets;\n let dont = null, changes = state.changeByRange(range => {\n if (range.empty) {\n let before = prevChar(state.doc, range.head);\n for (let token of tokens) {\n if (token == before && nextChar(state.doc, range.head) == closing(codePointAt(token, 0)))\n return { changes: { from: range.head - token.length, to: range.head + token.length },\n range: EditorSelection.cursor(range.head - token.length) };\n }\n }\n return { range: dont = range };\n });\n if (!dont)\n dispatch(state.update(changes, { scrollIntoView: true, userEvent: \"delete.backward\" }));\n return !dont;\n};\n/**\nClose-brackets related key bindings. Binds Backspace to\n[`deleteBracketPair`](https://codemirror.net/6/docs/ref/#autocomplete.deleteBracketPair).\n*/\nconst closeBracketsKeymap = [\n { key: \"Backspace\", run: deleteBracketPair }\n];\n/**\nImplements the extension's behavior on text insertion. If the\ngiven string counts as a bracket in the language around the\nselection, and replacing the selection with it requires custom\nbehavior (inserting a closing version or skipping past a\npreviously-closed bracket), this function returns a transaction\nrepresenting that custom behavior. (You only need this if you want\nto programmatically insert brackets—the\n[`closeBrackets`](https://codemirror.net/6/docs/ref/#autocomplete.closeBrackets) extension will\ntake care of running this for user input.)\n*/\nfunction insertBracket(state, bracket) {\n let conf = config(state, state.selection.main.head);\n let tokens = conf.brackets || defaults.brackets;\n for (let tok of tokens) {\n let closed = closing(codePointAt(tok, 0));\n if (bracket == tok)\n return closed == tok ? handleSame(state, tok, tokens.indexOf(tok + tok + tok) > -1, conf)\n : handleOpen(state, tok, closed, conf.before || defaults.before);\n if (bracket == closed && closedBracketAt(state, state.selection.main.from))\n return handleClose(state, tok, closed);\n }\n return null;\n}\nfunction closedBracketAt(state, pos) {\n let found = false;\n state.field(bracketState).between(0, state.doc.length, from => {\n if (from == pos)\n found = true;\n });\n return found;\n}\nfunction nextChar(doc, pos) {\n let next = doc.sliceString(pos, pos + 2);\n return next.slice(0, codePointSize(codePointAt(next, 0)));\n}\nfunction prevChar(doc, pos) {\n let prev = doc.sliceString(pos - 2, pos);\n return codePointSize(codePointAt(prev, 0)) == prev.length ? prev : prev.slice(1);\n}\nfunction handleOpen(state, open, close, closeBefore) {\n let dont = null, changes = state.changeByRange(range => {\n if (!range.empty)\n return { changes: [{ insert: open, from: range.from }, { insert: close, from: range.to }],\n effects: closeBracketEffect.of(range.to + open.length),\n range: EditorSelection.range(range.anchor + open.length, range.head + open.length) };\n let next = nextChar(state.doc, range.head);\n if (!next || /\\s/.test(next) || closeBefore.indexOf(next) > -1)\n return { changes: { insert: open + close, from: range.head },\n effects: closeBracketEffect.of(range.head + open.length),\n range: EditorSelection.cursor(range.head + open.length) };\n return { range: dont = range };\n });\n return dont ? null : state.update(changes, {\n scrollIntoView: true,\n userEvent: \"input.type\"\n });\n}\nfunction handleClose(state, _open, close) {\n let dont = null, changes = state.changeByRange(range => {\n if (range.empty && nextChar(state.doc, range.head) == close)\n return { changes: { from: range.head, to: range.head + close.length, insert: close },\n range: EditorSelection.cursor(range.head + close.length) };\n return dont = { range };\n });\n return dont ? null : state.update(changes, {\n scrollIntoView: true,\n userEvent: \"input.type\"\n });\n}\n// Handles cases where the open and close token are the same, and\n// possibly triple quotes (as in `\"\"\"abc\"\"\"`-style quoting).\nfunction handleSame(state, token, allowTriple, config) {\n let stringPrefixes = config.stringPrefixes || defaults.stringPrefixes;\n let dont = null, changes = state.changeByRange(range => {\n if (!range.empty)\n return { changes: [{ insert: token, from: range.from }, { insert: token, from: range.to }],\n effects: closeBracketEffect.of(range.to + token.length),\n range: EditorSelection.range(range.anchor + token.length, range.head + token.length) };\n let pos = range.head, next = nextChar(state.doc, pos), start;\n if (next == token) {\n if (nodeStart(state, pos)) {\n return { changes: { insert: token + token, from: pos },\n effects: closeBracketEffect.of(pos + token.length),\n range: EditorSelection.cursor(pos + token.length) };\n }\n else if (closedBracketAt(state, pos)) {\n let isTriple = allowTriple && state.sliceDoc(pos, pos + token.length * 3) == token + token + token;\n let content = isTriple ? token + token + token : token;\n return { changes: { from: pos, to: pos + content.length, insert: content },\n range: EditorSelection.cursor(pos + content.length) };\n }\n }\n else if (allowTriple && state.sliceDoc(pos - 2 * token.length, pos) == token + token &&\n (start = canStartStringAt(state, pos - 2 * token.length, stringPrefixes)) > -1 &&\n nodeStart(state, start)) {\n return { changes: { insert: token + token + token + token, from: pos },\n effects: closeBracketEffect.of(pos + token.length),\n range: EditorSelection.cursor(pos + token.length) };\n }\n else if (state.charCategorizer(pos)(next) != CharCategory.Word) {\n if (canStartStringAt(state, pos, stringPrefixes) > -1 && !probablyInString(state, pos, token, stringPrefixes))\n return { changes: { insert: token + token, from: pos },\n effects: closeBracketEffect.of(pos + token.length),\n range: EditorSelection.cursor(pos + token.length) };\n }\n return { range: dont = range };\n });\n return dont ? null : state.update(changes, {\n scrollIntoView: true,\n userEvent: \"input.type\"\n });\n}\nfunction nodeStart(state, pos) {\n let tree = syntaxTree(state).resolveInner(pos + 1);\n return tree.parent && tree.from == pos;\n}\nfunction probablyInString(state, pos, quoteToken, prefixes) {\n let node = syntaxTree(state).resolveInner(pos, -1);\n let maxPrefix = prefixes.reduce((m, p) => Math.max(m, p.length), 0);\n for (let i = 0; i < 5; i++) {\n let start = state.sliceDoc(node.from, Math.min(node.to, node.from + quoteToken.length + maxPrefix));\n let quotePos = start.indexOf(quoteToken);\n if (!quotePos || quotePos > -1 && prefixes.indexOf(start.slice(0, quotePos)) > -1) {\n let first = node.firstChild;\n while (first && first.from == node.from && first.to - first.from > quoteToken.length + quotePos) {\n if (state.sliceDoc(first.to - quoteToken.length, first.to) == quoteToken)\n return false;\n first = first.firstChild;\n }\n return true;\n }\n let parent = node.to == pos && node.parent;\n if (!parent)\n break;\n node = parent;\n }\n return false;\n}\nfunction canStartStringAt(state, pos, prefixes) {\n let charCat = state.charCategorizer(pos);\n if (charCat(state.sliceDoc(pos - 1, pos)) != CharCategory.Word)\n return pos;\n for (let prefix of prefixes) {\n let start = pos - prefix.length;\n if (state.sliceDoc(start, pos) == prefix && charCat(state.sliceDoc(start - 1, start)) != CharCategory.Word)\n return start;\n }\n return -1;\n}\n\n/**\nReturns an extension that enables autocompletion.\n*/\nfunction autocompletion(config = {}) {\n return [\n commitCharacters,\n completionState,\n completionConfig.of(config),\n completionPlugin,\n completionKeymapExt,\n baseTheme\n ];\n}\n/**\nBasic keybindings for autocompletion.\n\n - Ctrl-Space: [`startCompletion`](https://codemirror.net/6/docs/ref/#autocomplete.startCompletion)\n - Escape: [`closeCompletion`](https://codemirror.net/6/docs/ref/#autocomplete.closeCompletion)\n - ArrowDown: [`moveCompletionSelection`](https://codemirror.net/6/docs/ref/#autocomplete.moveCompletionSelection)`(true)`\n - ArrowUp: [`moveCompletionSelection`](https://codemirror.net/6/docs/ref/#autocomplete.moveCompletionSelection)`(false)`\n - PageDown: [`moveCompletionSelection`](https://codemirror.net/6/docs/ref/#autocomplete.moveCompletionSelection)`(true, \"page\")`\n - PageDown: [`moveCompletionSelection`](https://codemirror.net/6/docs/ref/#autocomplete.moveCompletionSelection)`(true, \"page\")`\n - Enter: [`acceptCompletion`](https://codemirror.net/6/docs/ref/#autocomplete.acceptCompletion)\n*/\nconst completionKeymap = [\n { key: \"Ctrl-Space\", run: startCompletion },\n { key: \"Escape\", run: closeCompletion },\n { key: \"ArrowDown\", run: /*@__PURE__*/moveCompletionSelection(true) },\n { key: \"ArrowUp\", run: /*@__PURE__*/moveCompletionSelection(false) },\n { key: \"PageDown\", run: /*@__PURE__*/moveCompletionSelection(true, \"page\") },\n { key: \"PageUp\", run: /*@__PURE__*/moveCompletionSelection(false, \"page\") },\n { key: \"Enter\", run: acceptCompletion }\n];\nconst completionKeymapExt = /*@__PURE__*/Prec.highest(/*@__PURE__*/keymap.computeN([completionConfig], state => state.facet(completionConfig).defaultKeymap ? [completionKeymap] : []));\n/**\nGet the current completion status. When completions are available,\nthis will return `\"active\"`. When completions are pending (in the\nprocess of being queried), this returns `\"pending\"`. Otherwise, it\nreturns `null`.\n*/\nfunction completionStatus(state) {\n let cState = state.field(completionState, false);\n return cState && cState.active.some(a => a.state == 1 /* State.Pending */) ? \"pending\"\n : cState && cState.active.some(a => a.state != 0 /* State.Inactive */) ? \"active\" : null;\n}\nconst completionArrayCache = /*@__PURE__*/new WeakMap;\n/**\nReturns the available completions as an array.\n*/\nfunction currentCompletions(state) {\n var _a;\n let open = (_a = state.field(completionState, false)) === null || _a === void 0 ? void 0 : _a.open;\n if (!open || open.disabled)\n return [];\n let completions = completionArrayCache.get(open.options);\n if (!completions)\n completionArrayCache.set(open.options, completions = open.options.map(o => o.completion));\n return completions;\n}\n/**\nReturn the currently selected completion, if any.\n*/\nfunction selectedCompletion(state) {\n var _a;\n let open = (_a = state.field(completionState, false)) === null || _a === void 0 ? void 0 : _a.open;\n return open && !open.disabled && open.selected >= 0 ? open.options[open.selected].completion : null;\n}\n/**\nReturns the currently selected position in the active completion\nlist, or null if no completions are active.\n*/\nfunction selectedCompletionIndex(state) {\n var _a;\n let open = (_a = state.field(completionState, false)) === null || _a === void 0 ? void 0 : _a.open;\n return open && !open.disabled && open.selected >= 0 ? open.selected : null;\n}\n/**\nCreate an effect that can be attached to a transaction to change\nthe currently selected completion.\n*/\nfunction setSelectedCompletion(index) {\n return setSelectedEffect.of(index);\n}\n\nexport { CompletionContext, acceptCompletion, autocompletion, clearSnippet, closeBrackets, closeBracketsKeymap, closeCompletion, completeAnyWord, completeFromList, completionKeymap, completionStatus, currentCompletions, deleteBracketPair, hasNextSnippetField, hasPrevSnippetField, ifIn, ifNotIn, insertBracket, insertCompletionText, moveCompletionSelection, nextSnippetField, pickedCompletion, prevSnippetField, selectedCompletion, selectedCompletionIndex, setSelectedCompletion, snippet, snippetCompletion, snippetKeymap, startCompletion };\n"],"names":["CompletionContext","constructor","state","pos","explicit","view","this","abortListeners","abortOnDocChange","tokenBefore","types","token","syntaxTree","resolveInner","indexOf","name","parent","from","to","text","sliceDoc","type","matchBefore","expr","line","doc","lineAt","start","Math","max","str","slice","found","search","ensureAnchor","aborted","addEventListener","listener","options","push","onDocChange","toSet","chars","flat","Object","keys","join","words","test","replace","completeFromList","list","map","o","label","validFor","match","every","first","create","rest","i","length","source","RegExp","prefixMatch","context","ifNotIn","nodes","isTop","Option","completion","score","cur","selection","main","_a","addStart","addEnd","flags","ignoreCase","pickedCompletion","Annotation","define","SourceCache","WeakMap","asSource","Array","isArray","known","get","set","startCompletionEffect","StateEffect","closeCompletionEffect","FuzzyMatcher","pattern","folded","any","precise","byWord","matched","p","char","codePointAt","size","codePointSize","part","upper","toUpperCase","toLowerCase","astral","ret","word","firstSize","direct","len","anyTo","e","min","next","preciseTo","byWordTo","byWordFolded","adjacentTo","adjacentStart","adjacentEnd","hasLower","wordAdjacent","prevType","ch","fromCodePoint","result","positions","StrictMatcher","completionConfig","Facet","combine","configs","combineConfig","activateOnTyping","activateOnCompletion","activateOnTypingDelay","selectOnOpen","override","closeOnBlur","maxRenderedOptions","defaultKeymap","tooltipClass","optionClass","aboveCursor","icons","addToOptions","positionInfo","defaultPositionInfo","filterStrict","compareCompletions","a","b","localeCompare","interactionDelay","updateSyncTime","c","joinClass","concat","option","info","space","tooltip","offset","maxWidth","rtl","textDirection","Direction","RTL","left","narrow","side","spaceLeft","spaceRight","right","infoWidth","infoHeight","bottom","top","spaceBelow","style","offsetHeight","offsetWidth","class","rangeAroundSelected","total","selected","off","floor","CompletionTooltip","stateField","applyCompletion","infoDestroy","placeInfoReq","read","measureInfo","write","placeInfo","key","currentClass","cState","field","open","config","facet","optionContent","content","render","icon","document","createElement","classList","add","split","cls","setAttribute","position","_s","_v","labelElt","className","displayLabel","j","appendChild","createTextNode","span","detail","detailElt","textContent","sort","range","dom","updateTooltipClass","target","parentNode","nodeName","exec","id","preventDefault","relatedTarget","contentDOM","dispatch","effects","of","showOptions","mount","updateSel","remove","createListBox","requestMeasure","update","prevState","startState","disabled","toggle","positioned","updateSelectedOption","destroyInfo","infoResult","then","obj","addInfoPane","catch","logException","wrap","nodeType","destroy","opt","firstChild","nextSibling","hasAttribute","removeAttribute","container","element","getBoundingClientRect","self","scaleY","height","scrollTop","scrollIntoView","sel","querySelector","listRect","infoRect","selRect","win","ownerDocument","defaultView","window","innerWidth","innerHeight","cssText","ul","phrase","curSection","section","header","li","node","completionTooltip","boost","apply","CompletionDialog","attrs","timestamp","setSelected","makeAttrs","build","active","prev","conf","sections","addOption","some","s","hasResult","getMatch","filter","matcher","sectionOrder","cmp","_b","rank","compare","sortOptions","selectedValue","reduce","createTooltip","above","Date","now","changes","assign","mapPos","CompletionState","none","random","toString","tr","languageDataAt","find","ActiveSource","docChanged","touchesRange","iA","iB","endA","endB","sameResults","effect","is","setSelectedEffect","value","baseAttrs","noAttrs","getUpdateType","isUserEvent","annotation","typing","explicitPos","touches","updateFor","setActiveEffect","empty","ActiveResult","super","checkValid","mapping","sources","completionState","StateField","provide","f","showTooltip","val","EditorView","contentAttributes","fromOff","toOff","changeByRange","insert","EditorSelection","cursor","userEvent","insertCompletionText","annotations","moveCompletionSelection","forward","by","step","getTooltip","RunningQuery","time","updates","done","undefined","completionPlugin","ViewPlugin","fromClass","debounceUpdate","running","debounceAccept","pendingStart","composing","startQuery","selectionSet","doesReset","transactions","query","handler","splice","clearTimeout","delay","q","setTimeout","startUpdate","r","pending","Promise","resolve","scheduleAccept","err","accept","updated","current","eventHandlers","blur","event","dialog","contains","compositionstart","compositionend","windows","navigator","platform","commitCharacters","Prec","highest","domEventHandlers","keydown","ctrlKey","altKey","metaKey","commitChars","baseTheme","fontFamily","whiteSpace","overflow","maxWidth_fallback","minWidth","maxHeight","listStyle","margin","padding","lineHeight","overflowX","textOverflow","display","borderBottom","paddingLeft","opacity","background","color","textAlign","width","boxSizing","backgroundColor","verticalAlign","borderLeft","textDecoration","marginLeft","fontStyle","fontSize","paddingRight","FieldPos","FieldRange","MapMode","TrackDel","Snippet","lines","fieldPositions","instantiate","lineStart","lineObj","baseIndent","indent","tabs","indentUnit","ranges","parse","template","m","fields","seq","rawName","index","_","brace","fieldMarker","Decoration","widget","WidgetType","toDOM","ignoreEvent","fieldRange","mark","ActiveSnippet","deco","mapped","selectionInsideField","setActive","moveToField","snippetState","decorations","fieldSelection","snippet","editor","spec","Text","Transaction","appendConfig","addSnippetKeymap","snippetPointerHandler","moveField","dir","last","defaultSnippetKeymap","run","shift","snippetKeymap","maps","keymap","compute","snippetCompletion","mousedown","posAtCoords","x","clientX","y","clientY","defaults","brackets","before","stringPrefixes","closeBracketEffect","TrackAfter","closedBracket","RangeValue","startSide","endSide","bracketState","RangeSet","head","closeBrackets","inputHandler","definedClosing","closing","charCodeAt","charAt","android","userAgent","compositionStarted","readOnly","bracket","tokens","tok","closed","handleSame","handleOpen","closedBracketAt","handleClose","insertBracket","closeBracketsKeymap","dont","sliceString","prevChar","nextChar","between","close","closeBefore","anchor","_open","allowTriple","nodeStart","canStartStringAt","charCategorizer","CharCategory","Word","quoteToken","prefixes","maxPrefix","quotePos","probablyInString","tree","charCat","prefix","autocompletion","completionKeymapExt","completionKeymap","computeN"],"mappings":"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","x_google_ignoreList":[0]}
|
1
|
+
{"version":3,"file":"index-B4WHjyIA.js","sources":["../node_modules/@codemirror/autocomplete/dist/index.js"],"sourcesContent":["import { Annotation, StateEffect, EditorSelection, codePointAt, codePointSize, fromCodePoint, Facet, combineConfig, StateField, Prec, Text, Transaction, MapMode, RangeValue, RangeSet, CharCategory } from '@codemirror/state';\nimport { Direction, logException, showTooltip, EditorView, ViewPlugin, getTooltip, Decoration, WidgetType, keymap } from '@codemirror/view';\nimport { syntaxTree, indentUnit } from '@codemirror/language';\n\n/**\nAn instance of this is passed to completion source functions.\n*/\nclass CompletionContext {\n /**\n Create a new completion context. (Mostly useful for testing\n completion sources—in the editor, the extension will create\n these for you.)\n */\n constructor(\n /**\n The editor state that the completion happens in.\n */\n state, \n /**\n The position at which the completion is happening.\n */\n pos, \n /**\n Indicates whether completion was activated explicitly, or\n implicitly by typing. The usual way to respond to this is to\n only return completions when either there is part of a\n completable entity before the cursor, or `explicit` is true.\n */\n explicit, \n /**\n The editor view. May be undefined if the context was created\n in a situation where there is no such view available, such as\n in synchronous updates via\n [`CompletionResult.update`](https://codemirror.net/6/docs/ref/#autocomplete.CompletionResult.update)\n or when called by test code.\n */\n view) {\n this.state = state;\n this.pos = pos;\n this.explicit = explicit;\n this.view = view;\n /**\n @internal\n */\n this.abortListeners = [];\n /**\n @internal\n */\n this.abortOnDocChange = false;\n }\n /**\n Get the extent, content, and (if there is a token) type of the\n token before `this.pos`.\n */\n tokenBefore(types) {\n let token = syntaxTree(this.state).resolveInner(this.pos, -1);\n while (token && types.indexOf(token.name) < 0)\n token = token.parent;\n return token ? { from: token.from, to: this.pos,\n text: this.state.sliceDoc(token.from, this.pos),\n type: token.type } : null;\n }\n /**\n Get the match of the given expression directly before the\n cursor.\n */\n matchBefore(expr) {\n let line = this.state.doc.lineAt(this.pos);\n let start = Math.max(line.from, this.pos - 250);\n let str = line.text.slice(start - line.from, this.pos - line.from);\n let found = str.search(ensureAnchor(expr, false));\n return found < 0 ? null : { from: start + found, to: this.pos, text: str.slice(found) };\n }\n /**\n Yields true when the query has been aborted. Can be useful in\n asynchronous queries to avoid doing work that will be ignored.\n */\n get aborted() { return this.abortListeners == null; }\n /**\n Allows you to register abort handlers, which will be called when\n the query is\n [aborted](https://codemirror.net/6/docs/ref/#autocomplete.CompletionContext.aborted).\n \n By default, running queries will not be aborted for regular\n typing or backspacing, on the assumption that they are likely to\n return a result with a\n [`validFor`](https://codemirror.net/6/docs/ref/#autocomplete.CompletionResult.validFor) field that\n allows the result to be used after all. Passing `onDocChange:\n true` will cause this query to be aborted for any document\n change.\n */\n addEventListener(type, listener, options) {\n if (type == \"abort\" && this.abortListeners) {\n this.abortListeners.push(listener);\n if (options && options.onDocChange)\n this.abortOnDocChange = true;\n }\n }\n}\nfunction toSet(chars) {\n let flat = Object.keys(chars).join(\"\");\n let words = /\\w/.test(flat);\n if (words)\n flat = flat.replace(/\\w/g, \"\");\n return `[${words ? \"\\\\w\" : \"\"}${flat.replace(/[^\\w\\s]/g, \"\\\\$&\")}]`;\n}\nfunction prefixMatch(options) {\n let first = Object.create(null), rest = Object.create(null);\n for (let { label } of options) {\n first[label[0]] = true;\n for (let i = 1; i < label.length; i++)\n rest[label[i]] = true;\n }\n let source = toSet(first) + toSet(rest) + \"*$\";\n return [new RegExp(\"^\" + source), new RegExp(source)];\n}\n/**\nGiven a a fixed array of options, return an autocompleter that\ncompletes them.\n*/\nfunction completeFromList(list) {\n let options = list.map(o => typeof o == \"string\" ? { label: o } : o);\n let [validFor, match] = options.every(o => /^\\w+$/.test(o.label)) ? [/\\w*$/, /\\w+$/] : prefixMatch(options);\n return (context) => {\n let token = context.matchBefore(match);\n return token || context.explicit ? { from: token ? token.from : context.pos, options, validFor } : null;\n };\n}\n/**\nWrap the given completion source so that it will only fire when the\ncursor is in a syntax node with one of the given names.\n*/\nfunction ifIn(nodes, source) {\n return (context) => {\n for (let pos = syntaxTree(context.state).resolveInner(context.pos, -1); pos; pos = pos.parent) {\n if (nodes.indexOf(pos.name) > -1)\n return source(context);\n if (pos.type.isTop)\n break;\n }\n return null;\n };\n}\n/**\nWrap the given completion source so that it will not fire when the\ncursor is in a syntax node with one of the given names.\n*/\nfunction ifNotIn(nodes, source) {\n return (context) => {\n for (let pos = syntaxTree(context.state).resolveInner(context.pos, -1); pos; pos = pos.parent) {\n if (nodes.indexOf(pos.name) > -1)\n return null;\n if (pos.type.isTop)\n break;\n }\n return source(context);\n };\n}\nclass Option {\n constructor(completion, source, match, score) {\n this.completion = completion;\n this.source = source;\n this.match = match;\n this.score = score;\n }\n}\nfunction cur(state) { return state.selection.main.from; }\n// Make sure the given regexp has a $ at its end and, if `start` is\n// true, a ^ at its start.\nfunction ensureAnchor(expr, start) {\n var _a;\n let { source } = expr;\n let addStart = start && source[0] != \"^\", addEnd = source[source.length - 1] != \"$\";\n if (!addStart && !addEnd)\n return expr;\n return new RegExp(`${addStart ? \"^\" : \"\"}(?:${source})${addEnd ? \"$\" : \"\"}`, (_a = expr.flags) !== null && _a !== void 0 ? _a : (expr.ignoreCase ? \"i\" : \"\"));\n}\n/**\nThis annotation is added to transactions that are produced by\npicking a completion.\n*/\nconst pickedCompletion = /*@__PURE__*/Annotation.define();\n/**\nHelper function that returns a transaction spec which inserts a\ncompletion's text in the main selection range, and any other\nselection range that has the same text in front of it.\n*/\nfunction insertCompletionText(state, text, from, to) {\n let { main } = state.selection, fromOff = from - main.from, toOff = to - main.from;\n return Object.assign(Object.assign({}, state.changeByRange(range => {\n if (range != main && from != to &&\n state.sliceDoc(range.from + fromOff, range.from + toOff) != state.sliceDoc(from, to))\n return { range };\n return {\n changes: { from: range.from + fromOff, to: to == main.from ? range.to : range.from + toOff, insert: text },\n range: EditorSelection.cursor(range.from + fromOff + text.length)\n };\n })), { scrollIntoView: true, userEvent: \"input.complete\" });\n}\nconst SourceCache = /*@__PURE__*/new WeakMap();\nfunction asSource(source) {\n if (!Array.isArray(source))\n return source;\n let known = SourceCache.get(source);\n if (!known)\n SourceCache.set(source, known = completeFromList(source));\n return known;\n}\nconst startCompletionEffect = /*@__PURE__*/StateEffect.define();\nconst closeCompletionEffect = /*@__PURE__*/StateEffect.define();\n\n// A pattern matcher for fuzzy completion matching. Create an instance\n// once for a pattern, and then use that to match any number of\n// completions.\nclass FuzzyMatcher {\n constructor(pattern) {\n this.pattern = pattern;\n this.chars = [];\n this.folded = [];\n // Buffers reused by calls to `match` to track matched character\n // positions.\n this.any = [];\n this.precise = [];\n this.byWord = [];\n this.score = 0;\n this.matched = [];\n for (let p = 0; p < pattern.length;) {\n let char = codePointAt(pattern, p), size = codePointSize(char);\n this.chars.push(char);\n let part = pattern.slice(p, p + size), upper = part.toUpperCase();\n this.folded.push(codePointAt(upper == part ? part.toLowerCase() : upper, 0));\n p += size;\n }\n this.astral = pattern.length != this.chars.length;\n }\n ret(score, matched) {\n this.score = score;\n this.matched = matched;\n return this;\n }\n // Matches a given word (completion) against the pattern (input).\n // Will return a boolean indicating whether there was a match and,\n // on success, set `this.score` to the score, `this.matched` to an\n // array of `from, to` pairs indicating the matched parts of `word`.\n //\n // The score is a number that is more negative the worse the match\n // is. See `Penalty` above.\n match(word) {\n if (this.pattern.length == 0)\n return this.ret(-100 /* Penalty.NotFull */, []);\n if (word.length < this.pattern.length)\n return null;\n let { chars, folded, any, precise, byWord } = this;\n // For single-character queries, only match when they occur right\n // at the start\n if (chars.length == 1) {\n let first = codePointAt(word, 0), firstSize = codePointSize(first);\n let score = firstSize == word.length ? 0 : -100 /* Penalty.NotFull */;\n if (first == chars[0]) ;\n else if (first == folded[0])\n score += -200 /* Penalty.CaseFold */;\n else\n return null;\n return this.ret(score, [0, firstSize]);\n }\n let direct = word.indexOf(this.pattern);\n if (direct == 0)\n return this.ret(word.length == this.pattern.length ? 0 : -100 /* Penalty.NotFull */, [0, this.pattern.length]);\n let len = chars.length, anyTo = 0;\n if (direct < 0) {\n for (let i = 0, e = Math.min(word.length, 200); i < e && anyTo < len;) {\n let next = codePointAt(word, i);\n if (next == chars[anyTo] || next == folded[anyTo])\n any[anyTo++] = i;\n i += codePointSize(next);\n }\n // No match, exit immediately\n if (anyTo < len)\n return null;\n }\n // This tracks the extent of the precise (non-folded, not\n // necessarily adjacent) match\n let preciseTo = 0;\n // Tracks whether there is a match that hits only characters that\n // appear to be starting words. `byWordFolded` is set to true when\n // a case folded character is encountered in such a match\n let byWordTo = 0, byWordFolded = false;\n // If we've found a partial adjacent match, these track its state\n let adjacentTo = 0, adjacentStart = -1, adjacentEnd = -1;\n let hasLower = /[a-z]/.test(word), wordAdjacent = true;\n // Go over the option's text, scanning for the various kinds of matches\n for (let i = 0, e = Math.min(word.length, 200), prevType = 0 /* Tp.NonWord */; i < e && byWordTo < len;) {\n let next = codePointAt(word, i);\n if (direct < 0) {\n if (preciseTo < len && next == chars[preciseTo])\n precise[preciseTo++] = i;\n if (adjacentTo < len) {\n if (next == chars[adjacentTo] || next == folded[adjacentTo]) {\n if (adjacentTo == 0)\n adjacentStart = i;\n adjacentEnd = i + 1;\n adjacentTo++;\n }\n else {\n adjacentTo = 0;\n }\n }\n }\n let ch, type = next < 0xff\n ? (next >= 48 && next <= 57 || next >= 97 && next <= 122 ? 2 /* Tp.Lower */ : next >= 65 && next <= 90 ? 1 /* Tp.Upper */ : 0 /* Tp.NonWord */)\n : ((ch = fromCodePoint(next)) != ch.toLowerCase() ? 1 /* Tp.Upper */ : ch != ch.toUpperCase() ? 2 /* Tp.Lower */ : 0 /* Tp.NonWord */);\n if (!i || type == 1 /* Tp.Upper */ && hasLower || prevType == 0 /* Tp.NonWord */ && type != 0 /* Tp.NonWord */) {\n if (chars[byWordTo] == next || (folded[byWordTo] == next && (byWordFolded = true)))\n byWord[byWordTo++] = i;\n else if (byWord.length)\n wordAdjacent = false;\n }\n prevType = type;\n i += codePointSize(next);\n }\n if (byWordTo == len && byWord[0] == 0 && wordAdjacent)\n return this.result(-100 /* Penalty.ByWord */ + (byWordFolded ? -200 /* Penalty.CaseFold */ : 0), byWord, word);\n if (adjacentTo == len && adjacentStart == 0)\n return this.ret(-200 /* Penalty.CaseFold */ - word.length + (adjacentEnd == word.length ? 0 : -100 /* Penalty.NotFull */), [0, adjacentEnd]);\n if (direct > -1)\n return this.ret(-700 /* Penalty.NotStart */ - word.length, [direct, direct + this.pattern.length]);\n if (adjacentTo == len)\n return this.ret(-200 /* Penalty.CaseFold */ + -700 /* Penalty.NotStart */ - word.length, [adjacentStart, adjacentEnd]);\n if (byWordTo == len)\n return this.result(-100 /* Penalty.ByWord */ + (byWordFolded ? -200 /* Penalty.CaseFold */ : 0) + -700 /* Penalty.NotStart */ +\n (wordAdjacent ? 0 : -1100 /* Penalty.Gap */), byWord, word);\n return chars.length == 2 ? null\n : this.result((any[0] ? -700 /* Penalty.NotStart */ : 0) + -200 /* Penalty.CaseFold */ + -1100 /* Penalty.Gap */, any, word);\n }\n result(score, positions, word) {\n let result = [], i = 0;\n for (let pos of positions) {\n let to = pos + (this.astral ? codePointSize(codePointAt(word, pos)) : 1);\n if (i && result[i - 1] == pos)\n result[i - 1] = to;\n else {\n result[i++] = pos;\n result[i++] = to;\n }\n }\n return this.ret(score - word.length, result);\n }\n}\nclass StrictMatcher {\n constructor(pattern) {\n this.pattern = pattern;\n this.matched = [];\n this.score = 0;\n this.folded = pattern.toLowerCase();\n }\n match(word) {\n if (word.length < this.pattern.length)\n return null;\n let start = word.slice(0, this.pattern.length);\n let match = start == this.pattern ? 0 : start.toLowerCase() == this.folded ? -200 /* Penalty.CaseFold */ : null;\n if (match == null)\n return null;\n this.matched = [0, start.length];\n this.score = match + (word.length == this.pattern.length ? 0 : -100 /* Penalty.NotFull */);\n return this;\n }\n}\n\nconst completionConfig = /*@__PURE__*/Facet.define({\n combine(configs) {\n return combineConfig(configs, {\n activateOnTyping: true,\n activateOnCompletion: () => false,\n activateOnTypingDelay: 100,\n selectOnOpen: true,\n override: null,\n closeOnBlur: true,\n maxRenderedOptions: 100,\n defaultKeymap: true,\n tooltipClass: () => \"\",\n optionClass: () => \"\",\n aboveCursor: false,\n icons: true,\n addToOptions: [],\n positionInfo: defaultPositionInfo,\n filterStrict: false,\n compareCompletions: (a, b) => a.label.localeCompare(b.label),\n interactionDelay: 75,\n updateSyncTime: 100\n }, {\n defaultKeymap: (a, b) => a && b,\n closeOnBlur: (a, b) => a && b,\n icons: (a, b) => a && b,\n tooltipClass: (a, b) => c => joinClass(a(c), b(c)),\n optionClass: (a, b) => c => joinClass(a(c), b(c)),\n addToOptions: (a, b) => a.concat(b),\n filterStrict: (a, b) => a || b,\n });\n }\n});\nfunction joinClass(a, b) {\n return a ? b ? a + \" \" + b : a : b;\n}\nfunction defaultPositionInfo(view, list, option, info, space, tooltip) {\n let rtl = view.textDirection == Direction.RTL, left = rtl, narrow = false;\n let side = \"top\", offset, maxWidth;\n let spaceLeft = list.left - space.left, spaceRight = space.right - list.right;\n let infoWidth = info.right - info.left, infoHeight = info.bottom - info.top;\n if (left && spaceLeft < Math.min(infoWidth, spaceRight))\n left = false;\n else if (!left && spaceRight < Math.min(infoWidth, spaceLeft))\n left = true;\n if (infoWidth <= (left ? spaceLeft : spaceRight)) {\n offset = Math.max(space.top, Math.min(option.top, space.bottom - infoHeight)) - list.top;\n maxWidth = Math.min(400 /* Info.Width */, left ? spaceLeft : spaceRight);\n }\n else {\n narrow = true;\n maxWidth = Math.min(400 /* Info.Width */, (rtl ? list.right : space.right - list.left) - 30 /* Info.Margin */);\n let spaceBelow = space.bottom - list.bottom;\n if (spaceBelow >= infoHeight || spaceBelow > list.top) { // Below the completion\n offset = option.bottom - list.top;\n }\n else { // Above it\n side = \"bottom\";\n offset = list.bottom - option.top;\n }\n }\n let scaleY = (list.bottom - list.top) / tooltip.offsetHeight;\n let scaleX = (list.right - list.left) / tooltip.offsetWidth;\n return {\n style: `${side}: ${offset / scaleY}px; max-width: ${maxWidth / scaleX}px`,\n class: \"cm-completionInfo-\" + (narrow ? (rtl ? \"left-narrow\" : \"right-narrow\") : left ? \"left\" : \"right\")\n };\n}\n\nfunction optionContent(config) {\n let content = config.addToOptions.slice();\n if (config.icons)\n content.push({\n render(completion) {\n let icon = document.createElement(\"div\");\n icon.classList.add(\"cm-completionIcon\");\n if (completion.type)\n icon.classList.add(...completion.type.split(/\\s+/g).map(cls => \"cm-completionIcon-\" + cls));\n icon.setAttribute(\"aria-hidden\", \"true\");\n return icon;\n },\n position: 20\n });\n content.push({\n render(completion, _s, _v, match) {\n let labelElt = document.createElement(\"span\");\n labelElt.className = \"cm-completionLabel\";\n let label = completion.displayLabel || completion.label, off = 0;\n for (let j = 0; j < match.length;) {\n let from = match[j++], to = match[j++];\n if (from > off)\n labelElt.appendChild(document.createTextNode(label.slice(off, from)));\n let span = labelElt.appendChild(document.createElement(\"span\"));\n span.appendChild(document.createTextNode(label.slice(from, to)));\n span.className = \"cm-completionMatchedText\";\n off = to;\n }\n if (off < label.length)\n labelElt.appendChild(document.createTextNode(label.slice(off)));\n return labelElt;\n },\n position: 50\n }, {\n render(completion) {\n if (!completion.detail)\n return null;\n let detailElt = document.createElement(\"span\");\n detailElt.className = \"cm-completionDetail\";\n detailElt.textContent = completion.detail;\n return detailElt;\n },\n position: 80\n });\n return content.sort((a, b) => a.position - b.position).map(a => a.render);\n}\nfunction rangeAroundSelected(total, selected, max) {\n if (total <= max)\n return { from: 0, to: total };\n if (selected < 0)\n selected = 0;\n if (selected <= (total >> 1)) {\n let off = Math.floor(selected / max);\n return { from: off * max, to: (off + 1) * max };\n }\n let off = Math.floor((total - selected) / max);\n return { from: total - (off + 1) * max, to: total - off * max };\n}\nclass CompletionTooltip {\n constructor(view, stateField, applyCompletion) {\n this.view = view;\n this.stateField = stateField;\n this.applyCompletion = applyCompletion;\n this.info = null;\n this.infoDestroy = null;\n this.placeInfoReq = {\n read: () => this.measureInfo(),\n write: (pos) => this.placeInfo(pos),\n key: this\n };\n this.space = null;\n this.currentClass = \"\";\n let cState = view.state.field(stateField);\n let { options, selected } = cState.open;\n let config = view.state.facet(completionConfig);\n this.optionContent = optionContent(config);\n this.optionClass = config.optionClass;\n this.tooltipClass = config.tooltipClass;\n this.range = rangeAroundSelected(options.length, selected, config.maxRenderedOptions);\n this.dom = document.createElement(\"div\");\n this.dom.className = \"cm-tooltip-autocomplete\";\n this.updateTooltipClass(view.state);\n this.dom.addEventListener(\"mousedown\", (e) => {\n let { options } = view.state.field(stateField).open;\n for (let dom = e.target, match; dom && dom != this.dom; dom = dom.parentNode) {\n if (dom.nodeName == \"LI\" && (match = /-(\\d+)$/.exec(dom.id)) && +match[1] < options.length) {\n this.applyCompletion(view, options[+match[1]]);\n e.preventDefault();\n return;\n }\n }\n });\n this.dom.addEventListener(\"focusout\", (e) => {\n let state = view.state.field(this.stateField, false);\n if (state && state.tooltip && view.state.facet(completionConfig).closeOnBlur &&\n e.relatedTarget != view.contentDOM)\n view.dispatch({ effects: closeCompletionEffect.of(null) });\n });\n this.showOptions(options, cState.id);\n }\n mount() { this.updateSel(); }\n showOptions(options, id) {\n if (this.list)\n this.list.remove();\n this.list = this.dom.appendChild(this.createListBox(options, id, this.range));\n this.list.addEventListener(\"scroll\", () => {\n if (this.info)\n this.view.requestMeasure(this.placeInfoReq);\n });\n }\n update(update) {\n var _a;\n let cState = update.state.field(this.stateField);\n let prevState = update.startState.field(this.stateField);\n this.updateTooltipClass(update.state);\n if (cState != prevState) {\n let { options, selected, disabled } = cState.open;\n if (!prevState.open || prevState.open.options != options) {\n this.range = rangeAroundSelected(options.length, selected, update.state.facet(completionConfig).maxRenderedOptions);\n this.showOptions(options, cState.id);\n }\n this.updateSel();\n if (disabled != ((_a = prevState.open) === null || _a === void 0 ? void 0 : _a.disabled))\n this.dom.classList.toggle(\"cm-tooltip-autocomplete-disabled\", !!disabled);\n }\n }\n updateTooltipClass(state) {\n let cls = this.tooltipClass(state);\n if (cls != this.currentClass) {\n for (let c of this.currentClass.split(\" \"))\n if (c)\n this.dom.classList.remove(c);\n for (let c of cls.split(\" \"))\n if (c)\n this.dom.classList.add(c);\n this.currentClass = cls;\n }\n }\n positioned(space) {\n this.space = space;\n if (this.info)\n this.view.requestMeasure(this.placeInfoReq);\n }\n updateSel() {\n let cState = this.view.state.field(this.stateField), open = cState.open;\n if (open.selected > -1 && open.selected < this.range.from || open.selected >= this.range.to) {\n this.range = rangeAroundSelected(open.options.length, open.selected, this.view.state.facet(completionConfig).maxRenderedOptions);\n this.showOptions(open.options, cState.id);\n }\n if (this.updateSelectedOption(open.selected)) {\n this.destroyInfo();\n let { completion } = open.options[open.selected];\n let { info } = completion;\n if (!info)\n return;\n let infoResult = typeof info === \"string\" ? document.createTextNode(info) : info(completion);\n if (!infoResult)\n return;\n if (\"then\" in infoResult) {\n infoResult.then(obj => {\n if (obj && this.view.state.field(this.stateField, false) == cState)\n this.addInfoPane(obj, completion);\n }).catch(e => logException(this.view.state, e, \"completion info\"));\n }\n else {\n this.addInfoPane(infoResult, completion);\n }\n }\n }\n addInfoPane(content, completion) {\n this.destroyInfo();\n let wrap = this.info = document.createElement(\"div\");\n wrap.className = \"cm-tooltip cm-completionInfo\";\n if (content.nodeType != null) {\n wrap.appendChild(content);\n this.infoDestroy = null;\n }\n else {\n let { dom, destroy } = content;\n wrap.appendChild(dom);\n this.infoDestroy = destroy || null;\n }\n this.dom.appendChild(wrap);\n this.view.requestMeasure(this.placeInfoReq);\n }\n updateSelectedOption(selected) {\n let set = null;\n for (let opt = this.list.firstChild, i = this.range.from; opt; opt = opt.nextSibling, i++) {\n if (opt.nodeName != \"LI\" || !opt.id) {\n i--; // A section header\n }\n else if (i == selected) {\n if (!opt.hasAttribute(\"aria-selected\")) {\n opt.setAttribute(\"aria-selected\", \"true\");\n set = opt;\n }\n }\n else {\n if (opt.hasAttribute(\"aria-selected\"))\n opt.removeAttribute(\"aria-selected\");\n }\n }\n if (set)\n scrollIntoView(this.list, set);\n return set;\n }\n measureInfo() {\n let sel = this.dom.querySelector(\"[aria-selected]\");\n if (!sel || !this.info)\n return null;\n let listRect = this.dom.getBoundingClientRect();\n let infoRect = this.info.getBoundingClientRect();\n let selRect = sel.getBoundingClientRect();\n let space = this.space;\n if (!space) {\n let win = this.dom.ownerDocument.defaultView || window;\n space = { left: 0, top: 0, right: win.innerWidth, bottom: win.innerHeight };\n }\n if (selRect.top > Math.min(space.bottom, listRect.bottom) - 10 ||\n selRect.bottom < Math.max(space.top, listRect.top) + 10)\n return null;\n return this.view.state.facet(completionConfig).positionInfo(this.view, listRect, selRect, infoRect, space, this.dom);\n }\n placeInfo(pos) {\n if (this.info) {\n if (pos) {\n if (pos.style)\n this.info.style.cssText = pos.style;\n this.info.className = \"cm-tooltip cm-completionInfo \" + (pos.class || \"\");\n }\n else {\n this.info.style.cssText = \"top: -1e6px\";\n }\n }\n }\n createListBox(options, id, range) {\n const ul = document.createElement(\"ul\");\n ul.id = id;\n ul.setAttribute(\"role\", \"listbox\");\n ul.setAttribute(\"aria-expanded\", \"true\");\n ul.setAttribute(\"aria-label\", this.view.state.phrase(\"Completions\"));\n let curSection = null;\n for (let i = range.from; i < range.to; i++) {\n let { completion, match } = options[i], { section } = completion;\n if (section) {\n let name = typeof section == \"string\" ? section : section.name;\n if (name != curSection && (i > range.from || range.from == 0)) {\n curSection = name;\n if (typeof section != \"string\" && section.header) {\n ul.appendChild(section.header(section));\n }\n else {\n let header = ul.appendChild(document.createElement(\"completion-section\"));\n header.textContent = name;\n }\n }\n }\n const li = ul.appendChild(document.createElement(\"li\"));\n li.id = id + \"-\" + i;\n li.setAttribute(\"role\", \"option\");\n let cls = this.optionClass(completion);\n if (cls)\n li.className = cls;\n for (let source of this.optionContent) {\n let node = source(completion, this.view.state, this.view, match);\n if (node)\n li.appendChild(node);\n }\n }\n if (range.from)\n ul.classList.add(\"cm-completionListIncompleteTop\");\n if (range.to < options.length)\n ul.classList.add(\"cm-completionListIncompleteBottom\");\n return ul;\n }\n destroyInfo() {\n if (this.info) {\n if (this.infoDestroy)\n this.infoDestroy();\n this.info.remove();\n this.info = null;\n }\n }\n destroy() {\n this.destroyInfo();\n }\n}\nfunction completionTooltip(stateField, applyCompletion) {\n return (view) => new CompletionTooltip(view, stateField, applyCompletion);\n}\nfunction scrollIntoView(container, element) {\n let parent = container.getBoundingClientRect();\n let self = element.getBoundingClientRect();\n let scaleY = parent.height / container.offsetHeight;\n if (self.top < parent.top)\n container.scrollTop -= (parent.top - self.top) / scaleY;\n else if (self.bottom > parent.bottom)\n container.scrollTop += (self.bottom - parent.bottom) / scaleY;\n}\n\n// Used to pick a preferred option when two options with the same\n// label occur in the result.\nfunction score(option) {\n return (option.boost || 0) * 100 + (option.apply ? 10 : 0) + (option.info ? 5 : 0) +\n (option.type ? 1 : 0);\n}\nfunction sortOptions(active, state) {\n let options = [];\n let sections = null;\n let addOption = (option) => {\n options.push(option);\n let { section } = option.completion;\n if (section) {\n if (!sections)\n sections = [];\n let name = typeof section == \"string\" ? section : section.name;\n if (!sections.some(s => s.name == name))\n sections.push(typeof section == \"string\" ? { name } : section);\n }\n };\n let conf = state.facet(completionConfig);\n for (let a of active)\n if (a.hasResult()) {\n let getMatch = a.result.getMatch;\n if (a.result.filter === false) {\n for (let option of a.result.options) {\n addOption(new Option(option, a.source, getMatch ? getMatch(option) : [], 1e9 - options.length));\n }\n }\n else {\n let pattern = state.sliceDoc(a.from, a.to), match;\n let matcher = conf.filterStrict ? new StrictMatcher(pattern) : new FuzzyMatcher(pattern);\n for (let option of a.result.options)\n if (match = matcher.match(option.label)) {\n let matched = !option.displayLabel ? match.matched : getMatch ? getMatch(option, match.matched) : [];\n addOption(new Option(option, a.source, matched, match.score + (option.boost || 0)));\n }\n }\n }\n if (sections) {\n let sectionOrder = Object.create(null), pos = 0;\n let cmp = (a, b) => { var _a, _b; return ((_a = a.rank) !== null && _a !== void 0 ? _a : 1e9) - ((_b = b.rank) !== null && _b !== void 0 ? _b : 1e9) || (a.name < b.name ? -1 : 1); };\n for (let s of sections.sort(cmp)) {\n pos -= 1e5;\n sectionOrder[s.name] = pos;\n }\n for (let option of options) {\n let { section } = option.completion;\n if (section)\n option.score += sectionOrder[typeof section == \"string\" ? section : section.name];\n }\n }\n let result = [], prev = null;\n let compare = conf.compareCompletions;\n for (let opt of options.sort((a, b) => (b.score - a.score) || compare(a.completion, b.completion))) {\n let cur = opt.completion;\n if (!prev || prev.label != cur.label || prev.detail != cur.detail ||\n (prev.type != null && cur.type != null && prev.type != cur.type) ||\n prev.apply != cur.apply || prev.boost != cur.boost)\n result.push(opt);\n else if (score(opt.completion) > score(prev))\n result[result.length - 1] = opt;\n prev = opt.completion;\n }\n return result;\n}\nclass CompletionDialog {\n constructor(options, attrs, tooltip, timestamp, selected, disabled) {\n this.options = options;\n this.attrs = attrs;\n this.tooltip = tooltip;\n this.timestamp = timestamp;\n this.selected = selected;\n this.disabled = disabled;\n }\n setSelected(selected, id) {\n return selected == this.selected || selected >= this.options.length ? this\n : new CompletionDialog(this.options, makeAttrs(id, selected), this.tooltip, this.timestamp, selected, this.disabled);\n }\n static build(active, state, id, prev, conf) {\n let options = sortOptions(active, state);\n if (!options.length) {\n return prev && active.some(a => a.state == 1 /* State.Pending */) ?\n new CompletionDialog(prev.options, prev.attrs, prev.tooltip, prev.timestamp, prev.selected, true) : null;\n }\n let selected = state.facet(completionConfig).selectOnOpen ? 0 : -1;\n if (prev && prev.selected != selected && prev.selected != -1) {\n let selectedValue = prev.options[prev.selected].completion;\n for (let i = 0; i < options.length; i++)\n if (options[i].completion == selectedValue) {\n selected = i;\n break;\n }\n }\n return new CompletionDialog(options, makeAttrs(id, selected), {\n pos: active.reduce((a, b) => b.hasResult() ? Math.min(a, b.from) : a, 1e8),\n create: createTooltip,\n above: conf.aboveCursor,\n }, prev ? prev.timestamp : Date.now(), selected, false);\n }\n map(changes) {\n return new CompletionDialog(this.options, this.attrs, Object.assign(Object.assign({}, this.tooltip), { pos: changes.mapPos(this.tooltip.pos) }), this.timestamp, this.selected, this.disabled);\n }\n}\nclass CompletionState {\n constructor(active, id, open) {\n this.active = active;\n this.id = id;\n this.open = open;\n }\n static start() {\n return new CompletionState(none, \"cm-ac-\" + Math.floor(Math.random() * 2e6).toString(36), null);\n }\n update(tr) {\n let { state } = tr, conf = state.facet(completionConfig);\n let sources = conf.override ||\n state.languageDataAt(\"autocomplete\", cur(state)).map(asSource);\n let active = sources.map(source => {\n let value = this.active.find(s => s.source == source) ||\n new ActiveSource(source, this.active.some(a => a.state != 0 /* State.Inactive */) ? 1 /* State.Pending */ : 0 /* State.Inactive */);\n return value.update(tr, conf);\n });\n if (active.length == this.active.length && active.every((a, i) => a == this.active[i]))\n active = this.active;\n let open = this.open;\n if (open && tr.docChanged)\n open = open.map(tr.changes);\n if (tr.selection || active.some(a => a.hasResult() && tr.changes.touchesRange(a.from, a.to)) ||\n !sameResults(active, this.active))\n open = CompletionDialog.build(active, state, this.id, open, conf);\n else if (open && open.disabled && !active.some(a => a.state == 1 /* State.Pending */))\n open = null;\n if (!open && active.every(a => a.state != 1 /* State.Pending */) && active.some(a => a.hasResult()))\n active = active.map(a => a.hasResult() ? new ActiveSource(a.source, 0 /* State.Inactive */) : a);\n for (let effect of tr.effects)\n if (effect.is(setSelectedEffect))\n open = open && open.setSelected(effect.value, this.id);\n return active == this.active && open == this.open ? this : new CompletionState(active, this.id, open);\n }\n get tooltip() { return this.open ? this.open.tooltip : null; }\n get attrs() { return this.open ? this.open.attrs : this.active.length ? baseAttrs : noAttrs; }\n}\nfunction sameResults(a, b) {\n if (a == b)\n return true;\n for (let iA = 0, iB = 0;;) {\n while (iA < a.length && !a[iA].hasResult)\n iA++;\n while (iB < b.length && !b[iB].hasResult)\n iB++;\n let endA = iA == a.length, endB = iB == b.length;\n if (endA || endB)\n return endA == endB;\n if (a[iA++].result != b[iB++].result)\n return false;\n }\n}\nconst baseAttrs = {\n \"aria-autocomplete\": \"list\"\n};\nconst noAttrs = {};\nfunction makeAttrs(id, selected) {\n let result = {\n \"aria-autocomplete\": \"list\",\n \"aria-haspopup\": \"listbox\",\n \"aria-controls\": id\n };\n if (selected > -1)\n result[\"aria-activedescendant\"] = id + \"-\" + selected;\n return result;\n}\nconst none = [];\nfunction getUpdateType(tr, conf) {\n if (tr.isUserEvent(\"input.complete\")) {\n let completion = tr.annotation(pickedCompletion);\n if (completion && conf.activateOnCompletion(completion))\n return 4 /* UpdateType.Activate */ | 8 /* UpdateType.Reset */;\n }\n let typing = tr.isUserEvent(\"input.type\");\n return typing && conf.activateOnTyping ? 4 /* UpdateType.Activate */ | 1 /* UpdateType.Typing */\n : typing ? 1 /* UpdateType.Typing */\n : tr.isUserEvent(\"delete.backward\") ? 2 /* UpdateType.Backspacing */\n : tr.selection ? 8 /* UpdateType.Reset */\n : tr.docChanged ? 16 /* UpdateType.ResetIfTouching */ : 0 /* UpdateType.None */;\n}\nclass ActiveSource {\n constructor(source, state, explicitPos = -1) {\n this.source = source;\n this.state = state;\n this.explicitPos = explicitPos;\n }\n hasResult() { return false; }\n update(tr, conf) {\n let type = getUpdateType(tr, conf), value = this;\n if ((type & 8 /* UpdateType.Reset */) || (type & 16 /* UpdateType.ResetIfTouching */) && this.touches(tr))\n value = new ActiveSource(value.source, 0 /* State.Inactive */);\n if ((type & 4 /* UpdateType.Activate */) && value.state == 0 /* State.Inactive */)\n value = new ActiveSource(this.source, 1 /* State.Pending */);\n value = value.updateFor(tr, type);\n for (let effect of tr.effects) {\n if (effect.is(startCompletionEffect))\n value = new ActiveSource(value.source, 1 /* State.Pending */, effect.value ? cur(tr.state) : -1);\n else if (effect.is(closeCompletionEffect))\n value = new ActiveSource(value.source, 0 /* State.Inactive */);\n else if (effect.is(setActiveEffect))\n for (let active of effect.value)\n if (active.source == value.source)\n value = active;\n }\n return value;\n }\n updateFor(tr, type) { return this.map(tr.changes); }\n map(changes) {\n return changes.empty || this.explicitPos < 0 ? this : new ActiveSource(this.source, this.state, changes.mapPos(this.explicitPos));\n }\n touches(tr) {\n return tr.changes.touchesRange(cur(tr.state));\n }\n}\nclass ActiveResult extends ActiveSource {\n constructor(source, explicitPos, result, from, to) {\n super(source, 2 /* State.Result */, explicitPos);\n this.result = result;\n this.from = from;\n this.to = to;\n }\n hasResult() { return true; }\n updateFor(tr, type) {\n var _a;\n if (!(type & 3 /* UpdateType.SimpleInteraction */))\n return this.map(tr.changes);\n let result = this.result;\n if (result.map && !tr.changes.empty)\n result = result.map(result, tr.changes);\n let from = tr.changes.mapPos(this.from), to = tr.changes.mapPos(this.to, 1);\n let pos = cur(tr.state);\n if ((this.explicitPos < 0 ? pos <= from : pos < this.from) ||\n pos > to || !result ||\n (type & 2 /* UpdateType.Backspacing */) && cur(tr.startState) == this.from)\n return new ActiveSource(this.source, type & 4 /* UpdateType.Activate */ ? 1 /* State.Pending */ : 0 /* State.Inactive */);\n let explicitPos = this.explicitPos < 0 ? -1 : tr.changes.mapPos(this.explicitPos);\n if (checkValid(result.validFor, tr.state, from, to))\n return new ActiveResult(this.source, explicitPos, result, from, to);\n if (result.update &&\n (result = result.update(result, from, to, new CompletionContext(tr.state, pos, explicitPos >= 0))))\n return new ActiveResult(this.source, explicitPos, result, result.from, (_a = result.to) !== null && _a !== void 0 ? _a : cur(tr.state));\n return new ActiveSource(this.source, 1 /* State.Pending */, explicitPos);\n }\n map(mapping) {\n if (mapping.empty)\n return this;\n let result = this.result.map ? this.result.map(this.result, mapping) : this.result;\n if (!result)\n return new ActiveSource(this.source, 0 /* State.Inactive */);\n return new ActiveResult(this.source, this.explicitPos < 0 ? -1 : mapping.mapPos(this.explicitPos), this.result, mapping.mapPos(this.from), mapping.mapPos(this.to, 1));\n }\n touches(tr) {\n return tr.changes.touchesRange(this.from, this.to);\n }\n}\nfunction checkValid(validFor, state, from, to) {\n if (!validFor)\n return false;\n let text = state.sliceDoc(from, to);\n return typeof validFor == \"function\" ? validFor(text, from, to, state) : ensureAnchor(validFor, true).test(text);\n}\nconst setActiveEffect = /*@__PURE__*/StateEffect.define({\n map(sources, mapping) { return sources.map(s => s.map(mapping)); }\n});\nconst setSelectedEffect = /*@__PURE__*/StateEffect.define();\nconst completionState = /*@__PURE__*/StateField.define({\n create() { return CompletionState.start(); },\n update(value, tr) { return value.update(tr); },\n provide: f => [\n showTooltip.from(f, val => val.tooltip),\n EditorView.contentAttributes.from(f, state => state.attrs)\n ]\n});\nfunction applyCompletion(view, option) {\n const apply = option.completion.apply || option.completion.label;\n let result = view.state.field(completionState).active.find(a => a.source == option.source);\n if (!(result instanceof ActiveResult))\n return false;\n if (typeof apply == \"string\")\n view.dispatch(Object.assign(Object.assign({}, insertCompletionText(view.state, apply, result.from, result.to)), { annotations: pickedCompletion.of(option.completion) }));\n else\n apply(view, option.completion, result.from, result.to);\n return true;\n}\nconst createTooltip = /*@__PURE__*/completionTooltip(completionState, applyCompletion);\n\n/**\nReturns a command that moves the completion selection forward or\nbackward by the given amount.\n*/\nfunction moveCompletionSelection(forward, by = \"option\") {\n return (view) => {\n let cState = view.state.field(completionState, false);\n if (!cState || !cState.open || cState.open.disabled ||\n Date.now() - cState.open.timestamp < view.state.facet(completionConfig).interactionDelay)\n return false;\n let step = 1, tooltip;\n if (by == \"page\" && (tooltip = getTooltip(view, cState.open.tooltip)))\n step = Math.max(2, Math.floor(tooltip.dom.offsetHeight /\n tooltip.dom.querySelector(\"li\").offsetHeight) - 1);\n let { length } = cState.open.options;\n let selected = cState.open.selected > -1 ? cState.open.selected + step * (forward ? 1 : -1) : forward ? 0 : length - 1;\n if (selected < 0)\n selected = by == \"page\" ? 0 : length - 1;\n else if (selected >= length)\n selected = by == \"page\" ? length - 1 : 0;\n view.dispatch({ effects: setSelectedEffect.of(selected) });\n return true;\n };\n}\n/**\nAccept the current completion.\n*/\nconst acceptCompletion = (view) => {\n let cState = view.state.field(completionState, false);\n if (view.state.readOnly || !cState || !cState.open || cState.open.selected < 0 || cState.open.disabled ||\n Date.now() - cState.open.timestamp < view.state.facet(completionConfig).interactionDelay)\n return false;\n return applyCompletion(view, cState.open.options[cState.open.selected]);\n};\n/**\nExplicitly start autocompletion.\n*/\nconst startCompletion = (view) => {\n let cState = view.state.field(completionState, false);\n if (!cState)\n return false;\n view.dispatch({ effects: startCompletionEffect.of(true) });\n return true;\n};\n/**\nClose the currently active completion.\n*/\nconst closeCompletion = (view) => {\n let cState = view.state.field(completionState, false);\n if (!cState || !cState.active.some(a => a.state != 0 /* State.Inactive */))\n return false;\n view.dispatch({ effects: closeCompletionEffect.of(null) });\n return true;\n};\nclass RunningQuery {\n constructor(active, context) {\n this.active = active;\n this.context = context;\n this.time = Date.now();\n this.updates = [];\n // Note that 'undefined' means 'not done yet', whereas 'null' means\n // 'query returned null'.\n this.done = undefined;\n }\n}\nconst MaxUpdateCount = 50, MinAbortTime = 1000;\nconst completionPlugin = /*@__PURE__*/ViewPlugin.fromClass(class {\n constructor(view) {\n this.view = view;\n this.debounceUpdate = -1;\n this.running = [];\n this.debounceAccept = -1;\n this.pendingStart = false;\n this.composing = 0 /* CompositionState.None */;\n for (let active of view.state.field(completionState).active)\n if (active.state == 1 /* State.Pending */)\n this.startQuery(active);\n }\n update(update) {\n let cState = update.state.field(completionState);\n let conf = update.state.facet(completionConfig);\n if (!update.selectionSet && !update.docChanged && update.startState.field(completionState) == cState)\n return;\n let doesReset = update.transactions.some(tr => {\n let type = getUpdateType(tr, conf);\n return (type & 8 /* UpdateType.Reset */) || (tr.selection || tr.docChanged) && !(type & 3 /* UpdateType.SimpleInteraction */);\n });\n for (let i = 0; i < this.running.length; i++) {\n let query = this.running[i];\n if (doesReset ||\n query.context.abortOnDocChange && update.docChanged ||\n query.updates.length + update.transactions.length > MaxUpdateCount && Date.now() - query.time > MinAbortTime) {\n for (let handler of query.context.abortListeners) {\n try {\n handler();\n }\n catch (e) {\n logException(this.view.state, e);\n }\n }\n query.context.abortListeners = null;\n this.running.splice(i--, 1);\n }\n else {\n query.updates.push(...update.transactions);\n }\n }\n if (this.debounceUpdate > -1)\n clearTimeout(this.debounceUpdate);\n if (update.transactions.some(tr => tr.effects.some(e => e.is(startCompletionEffect))))\n this.pendingStart = true;\n let delay = this.pendingStart ? 50 : conf.activateOnTypingDelay;\n this.debounceUpdate = cState.active.some(a => a.state == 1 /* State.Pending */ && !this.running.some(q => q.active.source == a.source))\n ? setTimeout(() => this.startUpdate(), delay) : -1;\n if (this.composing != 0 /* CompositionState.None */)\n for (let tr of update.transactions) {\n if (tr.isUserEvent(\"input.type\"))\n this.composing = 2 /* CompositionState.Changed */;\n else if (this.composing == 2 /* CompositionState.Changed */ && tr.selection)\n this.composing = 3 /* CompositionState.ChangedAndMoved */;\n }\n }\n startUpdate() {\n this.debounceUpdate = -1;\n this.pendingStart = false;\n let { state } = this.view, cState = state.field(completionState);\n for (let active of cState.active) {\n if (active.state == 1 /* State.Pending */ && !this.running.some(r => r.active.source == active.source))\n this.startQuery(active);\n }\n }\n startQuery(active) {\n let { state } = this.view, pos = cur(state);\n let context = new CompletionContext(state, pos, active.explicitPos == pos, this.view);\n let pending = new RunningQuery(active, context);\n this.running.push(pending);\n Promise.resolve(active.source(context)).then(result => {\n if (!pending.context.aborted) {\n pending.done = result || null;\n this.scheduleAccept();\n }\n }, err => {\n this.view.dispatch({ effects: closeCompletionEffect.of(null) });\n logException(this.view.state, err);\n });\n }\n scheduleAccept() {\n if (this.running.every(q => q.done !== undefined))\n this.accept();\n else if (this.debounceAccept < 0)\n this.debounceAccept = setTimeout(() => this.accept(), this.view.state.facet(completionConfig).updateSyncTime);\n }\n // For each finished query in this.running, try to create a result\n // or, if appropriate, restart the query.\n accept() {\n var _a;\n if (this.debounceAccept > -1)\n clearTimeout(this.debounceAccept);\n this.debounceAccept = -1;\n let updated = [];\n let conf = this.view.state.facet(completionConfig);\n for (let i = 0; i < this.running.length; i++) {\n let query = this.running[i];\n if (query.done === undefined)\n continue;\n this.running.splice(i--, 1);\n if (query.done) {\n let active = new ActiveResult(query.active.source, query.active.explicitPos, query.done, query.done.from, (_a = query.done.to) !== null && _a !== void 0 ? _a : cur(query.updates.length ? query.updates[0].startState : this.view.state));\n // Replay the transactions that happened since the start of\n // the request and see if that preserves the result\n for (let tr of query.updates)\n active = active.update(tr, conf);\n if (active.hasResult()) {\n updated.push(active);\n continue;\n }\n }\n let current = this.view.state.field(completionState).active.find(a => a.source == query.active.source);\n if (current && current.state == 1 /* State.Pending */) {\n if (query.done == null) {\n // Explicitly failed. Should clear the pending status if it\n // hasn't been re-set in the meantime.\n let active = new ActiveSource(query.active.source, 0 /* State.Inactive */);\n for (let tr of query.updates)\n active = active.update(tr, conf);\n if (active.state != 1 /* State.Pending */)\n updated.push(active);\n }\n else {\n // Cleared by subsequent transactions. Restart.\n this.startQuery(current);\n }\n }\n }\n if (updated.length)\n this.view.dispatch({ effects: setActiveEffect.of(updated) });\n }\n}, {\n eventHandlers: {\n blur(event) {\n let state = this.view.state.field(completionState, false);\n if (state && state.tooltip && this.view.state.facet(completionConfig).closeOnBlur) {\n let dialog = state.open && getTooltip(this.view, state.open.tooltip);\n if (!dialog || !dialog.dom.contains(event.relatedTarget))\n setTimeout(() => this.view.dispatch({ effects: closeCompletionEffect.of(null) }), 10);\n }\n },\n compositionstart() {\n this.composing = 1 /* CompositionState.Started */;\n },\n compositionend() {\n if (this.composing == 3 /* CompositionState.ChangedAndMoved */) {\n // Safari fires compositionend events synchronously, possibly\n // from inside an update, so dispatch asynchronously to avoid reentrancy\n setTimeout(() => this.view.dispatch({ effects: startCompletionEffect.of(false) }), 20);\n }\n this.composing = 0 /* CompositionState.None */;\n }\n }\n});\nconst windows = typeof navigator == \"object\" && /*@__PURE__*//Win/.test(navigator.platform);\nconst commitCharacters = /*@__PURE__*/Prec.highest(/*@__PURE__*/EditorView.domEventHandlers({\n keydown(event, view) {\n let field = view.state.field(completionState, false);\n if (!field || !field.open || field.open.disabled || field.open.selected < 0 ||\n event.key.length > 1 || event.ctrlKey && !(windows && event.altKey) || event.metaKey)\n return false;\n let option = field.open.options[field.open.selected];\n let result = field.active.find(a => a.source == option.source);\n let commitChars = option.completion.commitCharacters || result.result.commitCharacters;\n if (commitChars && commitChars.indexOf(event.key) > -1)\n applyCompletion(view, option);\n return false;\n }\n}));\n\nconst baseTheme = /*@__PURE__*/EditorView.baseTheme({\n \".cm-tooltip.cm-tooltip-autocomplete\": {\n \"& > ul\": {\n fontFamily: \"monospace\",\n whiteSpace: \"nowrap\",\n overflow: \"hidden auto\",\n maxWidth_fallback: \"700px\",\n maxWidth: \"min(700px, 95vw)\",\n minWidth: \"250px\",\n maxHeight: \"10em\",\n height: \"100%\",\n listStyle: \"none\",\n margin: 0,\n padding: 0,\n \"& > li, & > completion-section\": {\n padding: \"1px 3px\",\n lineHeight: 1.2\n },\n \"& > li\": {\n overflowX: \"hidden\",\n textOverflow: \"ellipsis\",\n cursor: \"pointer\"\n },\n \"& > completion-section\": {\n display: \"list-item\",\n borderBottom: \"1px solid silver\",\n paddingLeft: \"0.5em\",\n opacity: 0.7\n }\n }\n },\n \"&light .cm-tooltip-autocomplete ul li[aria-selected]\": {\n background: \"#17c\",\n color: \"white\",\n },\n \"&light .cm-tooltip-autocomplete-disabled ul li[aria-selected]\": {\n background: \"#777\",\n },\n \"&dark .cm-tooltip-autocomplete ul li[aria-selected]\": {\n background: \"#347\",\n color: \"white\",\n },\n \"&dark .cm-tooltip-autocomplete-disabled ul li[aria-selected]\": {\n background: \"#444\",\n },\n \".cm-completionListIncompleteTop:before, .cm-completionListIncompleteBottom:after\": {\n content: '\"···\"',\n opacity: 0.5,\n display: \"block\",\n textAlign: \"center\"\n },\n \".cm-tooltip.cm-completionInfo\": {\n position: \"absolute\",\n padding: \"3px 9px\",\n width: \"max-content\",\n maxWidth: `${400 /* Info.Width */}px`,\n boxSizing: \"border-box\",\n whiteSpace: \"pre-line\"\n },\n \".cm-completionInfo.cm-completionInfo-left\": { right: \"100%\" },\n \".cm-completionInfo.cm-completionInfo-right\": { left: \"100%\" },\n \".cm-completionInfo.cm-completionInfo-left-narrow\": { right: `${30 /* Info.Margin */}px` },\n \".cm-completionInfo.cm-completionInfo-right-narrow\": { left: `${30 /* Info.Margin */}px` },\n \"&light .cm-snippetField\": { backgroundColor: \"#00000022\" },\n \"&dark .cm-snippetField\": { backgroundColor: \"#ffffff22\" },\n \".cm-snippetFieldPosition\": {\n verticalAlign: \"text-top\",\n width: 0,\n height: \"1.15em\",\n display: \"inline-block\",\n margin: \"0 -0.7px -.7em\",\n borderLeft: \"1.4px dotted #888\"\n },\n \".cm-completionMatchedText\": {\n textDecoration: \"underline\"\n },\n \".cm-completionDetail\": {\n marginLeft: \"0.5em\",\n fontStyle: \"italic\"\n },\n \".cm-completionIcon\": {\n fontSize: \"90%\",\n width: \".8em\",\n display: \"inline-block\",\n textAlign: \"center\",\n paddingRight: \".6em\",\n opacity: \"0.6\",\n boxSizing: \"content-box\"\n },\n \".cm-completionIcon-function, .cm-completionIcon-method\": {\n \"&:after\": { content: \"'ƒ'\" }\n },\n \".cm-completionIcon-class\": {\n \"&:after\": { content: \"'○'\" }\n },\n \".cm-completionIcon-interface\": {\n \"&:after\": { content: \"'◌'\" }\n },\n \".cm-completionIcon-variable\": {\n \"&:after\": { content: \"'𝑥'\" }\n },\n \".cm-completionIcon-constant\": {\n \"&:after\": { content: \"'𝐶'\" }\n },\n \".cm-completionIcon-type\": {\n \"&:after\": { content: \"'𝑡'\" }\n },\n \".cm-completionIcon-enum\": {\n \"&:after\": { content: \"'∪'\" }\n },\n \".cm-completionIcon-property\": {\n \"&:after\": { content: \"'□'\" }\n },\n \".cm-completionIcon-keyword\": {\n \"&:after\": { content: \"'🔑\\uFE0E'\" } // Disable emoji rendering\n },\n \".cm-completionIcon-namespace\": {\n \"&:after\": { content: \"'▢'\" }\n },\n \".cm-completionIcon-text\": {\n \"&:after\": { content: \"'abc'\", fontSize: \"50%\", verticalAlign: \"middle\" }\n }\n});\n\nclass FieldPos {\n constructor(field, line, from, to) {\n this.field = field;\n this.line = line;\n this.from = from;\n this.to = to;\n }\n}\nclass FieldRange {\n constructor(field, from, to) {\n this.field = field;\n this.from = from;\n this.to = to;\n }\n map(changes) {\n let from = changes.mapPos(this.from, -1, MapMode.TrackDel);\n let to = changes.mapPos(this.to, 1, MapMode.TrackDel);\n return from == null || to == null ? null : new FieldRange(this.field, from, to);\n }\n}\nclass Snippet {\n constructor(lines, fieldPositions) {\n this.lines = lines;\n this.fieldPositions = fieldPositions;\n }\n instantiate(state, pos) {\n let text = [], lineStart = [pos];\n let lineObj = state.doc.lineAt(pos), baseIndent = /^\\s*/.exec(lineObj.text)[0];\n for (let line of this.lines) {\n if (text.length) {\n let indent = baseIndent, tabs = /^\\t*/.exec(line)[0].length;\n for (let i = 0; i < tabs; i++)\n indent += state.facet(indentUnit);\n lineStart.push(pos + indent.length - tabs);\n line = indent + line.slice(tabs);\n }\n text.push(line);\n pos += line.length + 1;\n }\n let ranges = this.fieldPositions.map(pos => new FieldRange(pos.field, lineStart[pos.line] + pos.from, lineStart[pos.line] + pos.to));\n return { text, ranges };\n }\n static parse(template) {\n let fields = [];\n let lines = [], positions = [], m;\n for (let line of template.split(/\\r\\n?|\\n/)) {\n while (m = /[#$]\\{(?:(\\d+)(?::([^}]*))?|((?:\\\\[{}]|[^}])*))\\}/.exec(line)) {\n let seq = m[1] ? +m[1] : null, rawName = m[2] || m[3] || \"\", found = -1;\n let name = rawName.replace(/\\\\[{}]/g, m => m[1]);\n for (let i = 0; i < fields.length; i++) {\n if (seq != null ? fields[i].seq == seq : name ? fields[i].name == name : false)\n found = i;\n }\n if (found < 0) {\n let i = 0;\n while (i < fields.length && (seq == null || (fields[i].seq != null && fields[i].seq < seq)))\n i++;\n fields.splice(i, 0, { seq, name });\n found = i;\n for (let pos of positions)\n if (pos.field >= found)\n pos.field++;\n }\n positions.push(new FieldPos(found, lines.length, m.index, m.index + name.length));\n line = line.slice(0, m.index) + rawName + line.slice(m.index + m[0].length);\n }\n line = line.replace(/\\\\([{}])/g, (_, brace, index) => {\n for (let pos of positions)\n if (pos.line == lines.length && pos.from > index) {\n pos.from--;\n pos.to--;\n }\n return brace;\n });\n lines.push(line);\n }\n return new Snippet(lines, positions);\n }\n}\nlet fieldMarker = /*@__PURE__*/Decoration.widget({ widget: /*@__PURE__*/new class extends WidgetType {\n toDOM() {\n let span = document.createElement(\"span\");\n span.className = \"cm-snippetFieldPosition\";\n return span;\n }\n ignoreEvent() { return false; }\n } });\nlet fieldRange = /*@__PURE__*/Decoration.mark({ class: \"cm-snippetField\" });\nclass ActiveSnippet {\n constructor(ranges, active) {\n this.ranges = ranges;\n this.active = active;\n this.deco = Decoration.set(ranges.map(r => (r.from == r.to ? fieldMarker : fieldRange).range(r.from, r.to)));\n }\n map(changes) {\n let ranges = [];\n for (let r of this.ranges) {\n let mapped = r.map(changes);\n if (!mapped)\n return null;\n ranges.push(mapped);\n }\n return new ActiveSnippet(ranges, this.active);\n }\n selectionInsideField(sel) {\n return sel.ranges.every(range => this.ranges.some(r => r.field == this.active && r.from <= range.from && r.to >= range.to));\n }\n}\nconst setActive = /*@__PURE__*/StateEffect.define({\n map(value, changes) { return value && value.map(changes); }\n});\nconst moveToField = /*@__PURE__*/StateEffect.define();\nconst snippetState = /*@__PURE__*/StateField.define({\n create() { return null; },\n update(value, tr) {\n for (let effect of tr.effects) {\n if (effect.is(setActive))\n return effect.value;\n if (effect.is(moveToField) && value)\n return new ActiveSnippet(value.ranges, effect.value);\n }\n if (value && tr.docChanged)\n value = value.map(tr.changes);\n if (value && tr.selection && !value.selectionInsideField(tr.selection))\n value = null;\n return value;\n },\n provide: f => EditorView.decorations.from(f, val => val ? val.deco : Decoration.none)\n});\nfunction fieldSelection(ranges, field) {\n return EditorSelection.create(ranges.filter(r => r.field == field).map(r => EditorSelection.range(r.from, r.to)));\n}\n/**\nConvert a snippet template to a function that can\n[apply](https://codemirror.net/6/docs/ref/#autocomplete.Completion.apply) it. Snippets are written\nusing syntax like this:\n\n \"for (let ${index} = 0; ${index} < ${end}; ${index}++) {\\n\\t${}\\n}\"\n\nEach `${}` placeholder (you may also use `#{}`) indicates a field\nthat the user can fill in. Its name, if any, will be the default\ncontent for the field.\n\nWhen the snippet is activated by calling the returned function,\nthe code is inserted at the given position. Newlines in the\ntemplate are indented by the indentation of the start line, plus\none [indent unit](https://codemirror.net/6/docs/ref/#language.indentUnit) per tab character after\nthe newline.\n\nOn activation, (all instances of) the first field are selected.\nThe user can move between fields with Tab and Shift-Tab as long as\nthe fields are active. Moving to the last field or moving the\ncursor out of the current field deactivates the fields.\n\nThe order of fields defaults to textual order, but you can add\nnumbers to placeholders (`${1}` or `${1:defaultText}`) to provide\na custom order.\n\nTo include a literal `{` or `}` in your template, put a backslash\nin front of it. This will be removed and the brace will not be\ninterpreted as indicating a placeholder.\n*/\nfunction snippet(template) {\n let snippet = Snippet.parse(template);\n return (editor, completion, from, to) => {\n let { text, ranges } = snippet.instantiate(editor.state, from);\n let spec = {\n changes: { from, to, insert: Text.of(text) },\n scrollIntoView: true,\n annotations: completion ? [pickedCompletion.of(completion), Transaction.userEvent.of(\"input.complete\")] : undefined\n };\n if (ranges.length)\n spec.selection = fieldSelection(ranges, 0);\n if (ranges.some(r => r.field > 0)) {\n let active = new ActiveSnippet(ranges, 0);\n let effects = spec.effects = [setActive.of(active)];\n if (editor.state.field(snippetState, false) === undefined)\n effects.push(StateEffect.appendConfig.of([snippetState, addSnippetKeymap, snippetPointerHandler, baseTheme]));\n }\n editor.dispatch(editor.state.update(spec));\n };\n}\nfunction moveField(dir) {\n return ({ state, dispatch }) => {\n let active = state.field(snippetState, false);\n if (!active || dir < 0 && active.active == 0)\n return false;\n let next = active.active + dir, last = dir > 0 && !active.ranges.some(r => r.field == next + dir);\n dispatch(state.update({\n selection: fieldSelection(active.ranges, next),\n effects: setActive.of(last ? null : new ActiveSnippet(active.ranges, next)),\n scrollIntoView: true\n }));\n return true;\n };\n}\n/**\nA command that clears the active snippet, if any.\n*/\nconst clearSnippet = ({ state, dispatch }) => {\n let active = state.field(snippetState, false);\n if (!active)\n return false;\n dispatch(state.update({ effects: setActive.of(null) }));\n return true;\n};\n/**\nMove to the next snippet field, if available.\n*/\nconst nextSnippetField = /*@__PURE__*/moveField(1);\n/**\nMove to the previous snippet field, if available.\n*/\nconst prevSnippetField = /*@__PURE__*/moveField(-1);\n/**\nCheck if there is an active snippet with a next field for\n`nextSnippetField` to move to.\n*/\nfunction hasNextSnippetField(state) {\n let active = state.field(snippetState, false);\n return !!(active && active.ranges.some(r => r.field == active.active + 1));\n}\n/**\nReturns true if there is an active snippet and a previous field\nfor `prevSnippetField` to move to.\n*/\nfunction hasPrevSnippetField(state) {\n let active = state.field(snippetState, false);\n return !!(active && active.active > 0);\n}\nconst defaultSnippetKeymap = [\n { key: \"Tab\", run: nextSnippetField, shift: prevSnippetField },\n { key: \"Escape\", run: clearSnippet }\n];\n/**\nA facet that can be used to configure the key bindings used by\nsnippets. The default binds Tab to\n[`nextSnippetField`](https://codemirror.net/6/docs/ref/#autocomplete.nextSnippetField), Shift-Tab to\n[`prevSnippetField`](https://codemirror.net/6/docs/ref/#autocomplete.prevSnippetField), and Escape\nto [`clearSnippet`](https://codemirror.net/6/docs/ref/#autocomplete.clearSnippet).\n*/\nconst snippetKeymap = /*@__PURE__*/Facet.define({\n combine(maps) { return maps.length ? maps[0] : defaultSnippetKeymap; }\n});\nconst addSnippetKeymap = /*@__PURE__*/Prec.highest(/*@__PURE__*/keymap.compute([snippetKeymap], state => state.facet(snippetKeymap)));\n/**\nCreate a completion from a snippet. Returns an object with the\nproperties from `completion`, plus an `apply` function that\napplies the snippet.\n*/\nfunction snippetCompletion(template, completion) {\n return Object.assign(Object.assign({}, completion), { apply: snippet(template) });\n}\nconst snippetPointerHandler = /*@__PURE__*/EditorView.domEventHandlers({\n mousedown(event, view) {\n let active = view.state.field(snippetState, false), pos;\n if (!active || (pos = view.posAtCoords({ x: event.clientX, y: event.clientY })) == null)\n return false;\n let match = active.ranges.find(r => r.from <= pos && r.to >= pos);\n if (!match || match.field == active.active)\n return false;\n view.dispatch({\n selection: fieldSelection(active.ranges, match.field),\n effects: setActive.of(active.ranges.some(r => r.field > match.field)\n ? new ActiveSnippet(active.ranges, match.field) : null),\n scrollIntoView: true\n });\n return true;\n }\n});\n\nfunction wordRE(wordChars) {\n let escaped = wordChars.replace(/[\\]\\-\\\\]/g, \"\\\\$&\");\n try {\n return new RegExp(`[\\\\p{Alphabetic}\\\\p{Number}_${escaped}]+`, \"ug\");\n }\n catch (_a) {\n return new RegExp(`[\\w${escaped}]`, \"g\");\n }\n}\nfunction mapRE(re, f) {\n return new RegExp(f(re.source), re.unicode ? \"u\" : \"\");\n}\nconst wordCaches = /*@__PURE__*/Object.create(null);\nfunction wordCache(wordChars) {\n return wordCaches[wordChars] || (wordCaches[wordChars] = new WeakMap);\n}\nfunction storeWords(doc, wordRE, result, seen, ignoreAt) {\n for (let lines = doc.iterLines(), pos = 0; !lines.next().done;) {\n let { value } = lines, m;\n wordRE.lastIndex = 0;\n while (m = wordRE.exec(value)) {\n if (!seen[m[0]] && pos + m.index != ignoreAt) {\n result.push({ type: \"text\", label: m[0] });\n seen[m[0]] = true;\n if (result.length >= 2000 /* C.MaxList */)\n return;\n }\n }\n pos += value.length + 1;\n }\n}\nfunction collectWords(doc, cache, wordRE, to, ignoreAt) {\n let big = doc.length >= 1000 /* C.MinCacheLen */;\n let cached = big && cache.get(doc);\n if (cached)\n return cached;\n let result = [], seen = Object.create(null);\n if (doc.children) {\n let pos = 0;\n for (let ch of doc.children) {\n if (ch.length >= 1000 /* C.MinCacheLen */) {\n for (let c of collectWords(ch, cache, wordRE, to - pos, ignoreAt - pos)) {\n if (!seen[c.label]) {\n seen[c.label] = true;\n result.push(c);\n }\n }\n }\n else {\n storeWords(ch, wordRE, result, seen, ignoreAt - pos);\n }\n pos += ch.length + 1;\n }\n }\n else {\n storeWords(doc, wordRE, result, seen, ignoreAt);\n }\n if (big && result.length < 2000 /* C.MaxList */)\n cache.set(doc, result);\n return result;\n}\n/**\nA completion source that will scan the document for words (using a\n[character categorizer](https://codemirror.net/6/docs/ref/#state.EditorState.charCategorizer)), and\nreturn those as completions.\n*/\nconst completeAnyWord = context => {\n let wordChars = context.state.languageDataAt(\"wordChars\", context.pos).join(\"\");\n let re = wordRE(wordChars);\n let token = context.matchBefore(mapRE(re, s => s + \"$\"));\n if (!token && !context.explicit)\n return null;\n let from = token ? token.from : context.pos;\n let options = collectWords(context.state.doc, wordCache(wordChars), re, 50000 /* C.Range */, from);\n return { from, options, validFor: mapRE(re, s => \"^\" + s) };\n};\n\nconst defaults = {\n brackets: [\"(\", \"[\", \"{\", \"'\", '\"'],\n before: \")]}:;>\",\n stringPrefixes: []\n};\nconst closeBracketEffect = /*@__PURE__*/StateEffect.define({\n map(value, mapping) {\n let mapped = mapping.mapPos(value, -1, MapMode.TrackAfter);\n return mapped == null ? undefined : mapped;\n }\n});\nconst closedBracket = /*@__PURE__*/new class extends RangeValue {\n};\nclosedBracket.startSide = 1;\nclosedBracket.endSide = -1;\nconst bracketState = /*@__PURE__*/StateField.define({\n create() { return RangeSet.empty; },\n update(value, tr) {\n value = value.map(tr.changes);\n if (tr.selection) {\n let line = tr.state.doc.lineAt(tr.selection.main.head);\n value = value.update({ filter: from => from >= line.from && from <= line.to });\n }\n for (let effect of tr.effects)\n if (effect.is(closeBracketEffect))\n value = value.update({ add: [closedBracket.range(effect.value, effect.value + 1)] });\n return value;\n }\n});\n/**\nExtension to enable bracket-closing behavior. When a closeable\nbracket is typed, its closing bracket is immediately inserted\nafter the cursor. When closing a bracket directly in front of a\nclosing bracket inserted by the extension, the cursor moves over\nthat bracket.\n*/\nfunction closeBrackets() {\n return [inputHandler, bracketState];\n}\nconst definedClosing = \"()[]{}<>\";\nfunction closing(ch) {\n for (let i = 0; i < definedClosing.length; i += 2)\n if (definedClosing.charCodeAt(i) == ch)\n return definedClosing.charAt(i + 1);\n return fromCodePoint(ch < 128 ? ch : ch + 1);\n}\nfunction config(state, pos) {\n return state.languageDataAt(\"closeBrackets\", pos)[0] || defaults;\n}\nconst android = typeof navigator == \"object\" && /*@__PURE__*//Android\\b/.test(navigator.userAgent);\nconst inputHandler = /*@__PURE__*/EditorView.inputHandler.of((view, from, to, insert) => {\n if ((android ? view.composing : view.compositionStarted) || view.state.readOnly)\n return false;\n let sel = view.state.selection.main;\n if (insert.length > 2 || insert.length == 2 && codePointSize(codePointAt(insert, 0)) == 1 ||\n from != sel.from || to != sel.to)\n return false;\n let tr = insertBracket(view.state, insert);\n if (!tr)\n return false;\n view.dispatch(tr);\n return true;\n});\n/**\nCommand that implements deleting a pair of matching brackets when\nthe cursor is between them.\n*/\nconst deleteBracketPair = ({ state, dispatch }) => {\n if (state.readOnly)\n return false;\n let conf = config(state, state.selection.main.head);\n let tokens = conf.brackets || defaults.brackets;\n let dont = null, changes = state.changeByRange(range => {\n if (range.empty) {\n let before = prevChar(state.doc, range.head);\n for (let token of tokens) {\n if (token == before && nextChar(state.doc, range.head) == closing(codePointAt(token, 0)))\n return { changes: { from: range.head - token.length, to: range.head + token.length },\n range: EditorSelection.cursor(range.head - token.length) };\n }\n }\n return { range: dont = range };\n });\n if (!dont)\n dispatch(state.update(changes, { scrollIntoView: true, userEvent: \"delete.backward\" }));\n return !dont;\n};\n/**\nClose-brackets related key bindings. Binds Backspace to\n[`deleteBracketPair`](https://codemirror.net/6/docs/ref/#autocomplete.deleteBracketPair).\n*/\nconst closeBracketsKeymap = [\n { key: \"Backspace\", run: deleteBracketPair }\n];\n/**\nImplements the extension's behavior on text insertion. If the\ngiven string counts as a bracket in the language around the\nselection, and replacing the selection with it requires custom\nbehavior (inserting a closing version or skipping past a\npreviously-closed bracket), this function returns a transaction\nrepresenting that custom behavior. (You only need this if you want\nto programmatically insert brackets—the\n[`closeBrackets`](https://codemirror.net/6/docs/ref/#autocomplete.closeBrackets) extension will\ntake care of running this for user input.)\n*/\nfunction insertBracket(state, bracket) {\n let conf = config(state, state.selection.main.head);\n let tokens = conf.brackets || defaults.brackets;\n for (let tok of tokens) {\n let closed = closing(codePointAt(tok, 0));\n if (bracket == tok)\n return closed == tok ? handleSame(state, tok, tokens.indexOf(tok + tok + tok) > -1, conf)\n : handleOpen(state, tok, closed, conf.before || defaults.before);\n if (bracket == closed && closedBracketAt(state, state.selection.main.from))\n return handleClose(state, tok, closed);\n }\n return null;\n}\nfunction closedBracketAt(state, pos) {\n let found = false;\n state.field(bracketState).between(0, state.doc.length, from => {\n if (from == pos)\n found = true;\n });\n return found;\n}\nfunction nextChar(doc, pos) {\n let next = doc.sliceString(pos, pos + 2);\n return next.slice(0, codePointSize(codePointAt(next, 0)));\n}\nfunction prevChar(doc, pos) {\n let prev = doc.sliceString(pos - 2, pos);\n return codePointSize(codePointAt(prev, 0)) == prev.length ? prev : prev.slice(1);\n}\nfunction handleOpen(state, open, close, closeBefore) {\n let dont = null, changes = state.changeByRange(range => {\n if (!range.empty)\n return { changes: [{ insert: open, from: range.from }, { insert: close, from: range.to }],\n effects: closeBracketEffect.of(range.to + open.length),\n range: EditorSelection.range(range.anchor + open.length, range.head + open.length) };\n let next = nextChar(state.doc, range.head);\n if (!next || /\\s/.test(next) || closeBefore.indexOf(next) > -1)\n return { changes: { insert: open + close, from: range.head },\n effects: closeBracketEffect.of(range.head + open.length),\n range: EditorSelection.cursor(range.head + open.length) };\n return { range: dont = range };\n });\n return dont ? null : state.update(changes, {\n scrollIntoView: true,\n userEvent: \"input.type\"\n });\n}\nfunction handleClose(state, _open, close) {\n let dont = null, changes = state.changeByRange(range => {\n if (range.empty && nextChar(state.doc, range.head) == close)\n return { changes: { from: range.head, to: range.head + close.length, insert: close },\n range: EditorSelection.cursor(range.head + close.length) };\n return dont = { range };\n });\n return dont ? null : state.update(changes, {\n scrollIntoView: true,\n userEvent: \"input.type\"\n });\n}\n// Handles cases where the open and close token are the same, and\n// possibly triple quotes (as in `\"\"\"abc\"\"\"`-style quoting).\nfunction handleSame(state, token, allowTriple, config) {\n let stringPrefixes = config.stringPrefixes || defaults.stringPrefixes;\n let dont = null, changes = state.changeByRange(range => {\n if (!range.empty)\n return { changes: [{ insert: token, from: range.from }, { insert: token, from: range.to }],\n effects: closeBracketEffect.of(range.to + token.length),\n range: EditorSelection.range(range.anchor + token.length, range.head + token.length) };\n let pos = range.head, next = nextChar(state.doc, pos), start;\n if (next == token) {\n if (nodeStart(state, pos)) {\n return { changes: { insert: token + token, from: pos },\n effects: closeBracketEffect.of(pos + token.length),\n range: EditorSelection.cursor(pos + token.length) };\n }\n else if (closedBracketAt(state, pos)) {\n let isTriple = allowTriple && state.sliceDoc(pos, pos + token.length * 3) == token + token + token;\n let content = isTriple ? token + token + token : token;\n return { changes: { from: pos, to: pos + content.length, insert: content },\n range: EditorSelection.cursor(pos + content.length) };\n }\n }\n else if (allowTriple && state.sliceDoc(pos - 2 * token.length, pos) == token + token &&\n (start = canStartStringAt(state, pos - 2 * token.length, stringPrefixes)) > -1 &&\n nodeStart(state, start)) {\n return { changes: { insert: token + token + token + token, from: pos },\n effects: closeBracketEffect.of(pos + token.length),\n range: EditorSelection.cursor(pos + token.length) };\n }\n else if (state.charCategorizer(pos)(next) != CharCategory.Word) {\n if (canStartStringAt(state, pos, stringPrefixes) > -1 && !probablyInString(state, pos, token, stringPrefixes))\n return { changes: { insert: token + token, from: pos },\n effects: closeBracketEffect.of(pos + token.length),\n range: EditorSelection.cursor(pos + token.length) };\n }\n return { range: dont = range };\n });\n return dont ? null : state.update(changes, {\n scrollIntoView: true,\n userEvent: \"input.type\"\n });\n}\nfunction nodeStart(state, pos) {\n let tree = syntaxTree(state).resolveInner(pos + 1);\n return tree.parent && tree.from == pos;\n}\nfunction probablyInString(state, pos, quoteToken, prefixes) {\n let node = syntaxTree(state).resolveInner(pos, -1);\n let maxPrefix = prefixes.reduce((m, p) => Math.max(m, p.length), 0);\n for (let i = 0; i < 5; i++) {\n let start = state.sliceDoc(node.from, Math.min(node.to, node.from + quoteToken.length + maxPrefix));\n let quotePos = start.indexOf(quoteToken);\n if (!quotePos || quotePos > -1 && prefixes.indexOf(start.slice(0, quotePos)) > -1) {\n let first = node.firstChild;\n while (first && first.from == node.from && first.to - first.from > quoteToken.length + quotePos) {\n if (state.sliceDoc(first.to - quoteToken.length, first.to) == quoteToken)\n return false;\n first = first.firstChild;\n }\n return true;\n }\n let parent = node.to == pos && node.parent;\n if (!parent)\n break;\n node = parent;\n }\n return false;\n}\nfunction canStartStringAt(state, pos, prefixes) {\n let charCat = state.charCategorizer(pos);\n if (charCat(state.sliceDoc(pos - 1, pos)) != CharCategory.Word)\n return pos;\n for (let prefix of prefixes) {\n let start = pos - prefix.length;\n if (state.sliceDoc(start, pos) == prefix && charCat(state.sliceDoc(start - 1, start)) != CharCategory.Word)\n return start;\n }\n return -1;\n}\n\n/**\nReturns an extension that enables autocompletion.\n*/\nfunction autocompletion(config = {}) {\n return [\n commitCharacters,\n completionState,\n completionConfig.of(config),\n completionPlugin,\n completionKeymapExt,\n baseTheme\n ];\n}\n/**\nBasic keybindings for autocompletion.\n\n - Ctrl-Space: [`startCompletion`](https://codemirror.net/6/docs/ref/#autocomplete.startCompletion)\n - Escape: [`closeCompletion`](https://codemirror.net/6/docs/ref/#autocomplete.closeCompletion)\n - ArrowDown: [`moveCompletionSelection`](https://codemirror.net/6/docs/ref/#autocomplete.moveCompletionSelection)`(true)`\n - ArrowUp: [`moveCompletionSelection`](https://codemirror.net/6/docs/ref/#autocomplete.moveCompletionSelection)`(false)`\n - PageDown: [`moveCompletionSelection`](https://codemirror.net/6/docs/ref/#autocomplete.moveCompletionSelection)`(true, \"page\")`\n - PageDown: [`moveCompletionSelection`](https://codemirror.net/6/docs/ref/#autocomplete.moveCompletionSelection)`(true, \"page\")`\n - Enter: [`acceptCompletion`](https://codemirror.net/6/docs/ref/#autocomplete.acceptCompletion)\n*/\nconst completionKeymap = [\n { key: \"Ctrl-Space\", run: startCompletion },\n { key: \"Escape\", run: closeCompletion },\n { key: \"ArrowDown\", run: /*@__PURE__*/moveCompletionSelection(true) },\n { key: \"ArrowUp\", run: /*@__PURE__*/moveCompletionSelection(false) },\n { key: \"PageDown\", run: /*@__PURE__*/moveCompletionSelection(true, \"page\") },\n { key: \"PageUp\", run: /*@__PURE__*/moveCompletionSelection(false, \"page\") },\n { key: \"Enter\", run: acceptCompletion }\n];\nconst completionKeymapExt = /*@__PURE__*/Prec.highest(/*@__PURE__*/keymap.computeN([completionConfig], state => state.facet(completionConfig).defaultKeymap ? [completionKeymap] : []));\n/**\nGet the current completion status. When completions are available,\nthis will return `\"active\"`. When completions are pending (in the\nprocess of being queried), this returns `\"pending\"`. Otherwise, it\nreturns `null`.\n*/\nfunction completionStatus(state) {\n let cState = state.field(completionState, false);\n return cState && cState.active.some(a => a.state == 1 /* State.Pending */) ? \"pending\"\n : cState && cState.active.some(a => a.state != 0 /* State.Inactive */) ? \"active\" : null;\n}\nconst completionArrayCache = /*@__PURE__*/new WeakMap;\n/**\nReturns the available completions as an array.\n*/\nfunction currentCompletions(state) {\n var _a;\n let open = (_a = state.field(completionState, false)) === null || _a === void 0 ? void 0 : _a.open;\n if (!open || open.disabled)\n return [];\n let completions = completionArrayCache.get(open.options);\n if (!completions)\n completionArrayCache.set(open.options, completions = open.options.map(o => o.completion));\n return completions;\n}\n/**\nReturn the currently selected completion, if any.\n*/\nfunction selectedCompletion(state) {\n var _a;\n let open = (_a = state.field(completionState, false)) === null || _a === void 0 ? void 0 : _a.open;\n return open && !open.disabled && open.selected >= 0 ? open.options[open.selected].completion : null;\n}\n/**\nReturns the currently selected position in the active completion\nlist, or null if no completions are active.\n*/\nfunction selectedCompletionIndex(state) {\n var _a;\n let open = (_a = state.field(completionState, false)) === null || _a === void 0 ? void 0 : _a.open;\n return open && !open.disabled && open.selected >= 0 ? open.selected : null;\n}\n/**\nCreate an effect that can be attached to a transaction to change\nthe currently selected completion.\n*/\nfunction setSelectedCompletion(index) {\n return setSelectedEffect.of(index);\n}\n\nexport { CompletionContext, acceptCompletion, autocompletion, clearSnippet, closeBrackets, closeBracketsKeymap, closeCompletion, completeAnyWord, completeFromList, completionKeymap, completionStatus, currentCompletions, deleteBracketPair, hasNextSnippetField, hasPrevSnippetField, ifIn, ifNotIn, insertBracket, insertCompletionText, moveCompletionSelection, nextSnippetField, pickedCompletion, prevSnippetField, selectedCompletion, selectedCompletionIndex, setSelectedCompletion, snippet, snippetCompletion, snippetKeymap, startCompletion };\n"],"names":["CompletionContext","constructor","state","pos","explicit","view","this","abortListeners","abortOnDocChange","tokenBefore","types","token","syntaxTree","resolveInner","indexOf","name","parent","from","to","text","sliceDoc","type","matchBefore","expr","line","doc","lineAt","start","Math","max","str","slice","found","search","ensureAnchor","aborted","addEventListener","listener","options","push","onDocChange","toSet","chars","flat","Object","keys","join","words","test","replace","completeFromList","list","map","o","label","validFor","match","every","first","create","rest","i","length","source","RegExp","prefixMatch","context","ifNotIn","nodes","isTop","Option","completion","score","cur","selection","main","_a","addStart","addEnd","flags","ignoreCase","pickedCompletion","Annotation","define","SourceCache","WeakMap","asSource","Array","isArray","known","get","set","startCompletionEffect","StateEffect","closeCompletionEffect","FuzzyMatcher","pattern","folded","any","precise","byWord","matched","p","char","codePointAt","size","codePointSize","part","upper","toUpperCase","toLowerCase","astral","ret","word","firstSize","direct","len","anyTo","e","min","next","preciseTo","byWordTo","byWordFolded","adjacentTo","adjacentStart","adjacentEnd","hasLower","wordAdjacent","prevType","ch","fromCodePoint","result","positions","StrictMatcher","completionConfig","Facet","combine","configs","combineConfig","activateOnTyping","activateOnCompletion","activateOnTypingDelay","selectOnOpen","override","closeOnBlur","maxRenderedOptions","defaultKeymap","tooltipClass","optionClass","aboveCursor","icons","addToOptions","positionInfo","defaultPositionInfo","filterStrict","compareCompletions","a","b","localeCompare","interactionDelay","updateSyncTime","c","joinClass","concat","option","info","space","tooltip","offset","maxWidth","rtl","textDirection","Direction","RTL","left","narrow","side","spaceLeft","spaceRight","right","infoWidth","infoHeight","bottom","top","spaceBelow","style","offsetHeight","offsetWidth","class","rangeAroundSelected","total","selected","off","floor","CompletionTooltip","stateField","applyCompletion","infoDestroy","placeInfoReq","read","measureInfo","write","placeInfo","key","currentClass","cState","field","open","config","facet","optionContent","content","render","icon","document","createElement","classList","add","split","cls","setAttribute","position","_s","_v","labelElt","className","displayLabel","j","appendChild","createTextNode","span","detail","detailElt","textContent","sort","range","dom","updateTooltipClass","target","parentNode","nodeName","exec","id","preventDefault","relatedTarget","contentDOM","dispatch","effects","of","showOptions","mount","updateSel","remove","createListBox","requestMeasure","update","prevState","startState","disabled","toggle","positioned","updateSelectedOption","destroyInfo","infoResult","then","obj","addInfoPane","catch","logException","wrap","nodeType","destroy","opt","firstChild","nextSibling","hasAttribute","removeAttribute","container","element","getBoundingClientRect","self","scaleY","height","scrollTop","scrollIntoView","sel","querySelector","listRect","infoRect","selRect","win","ownerDocument","defaultView","window","innerWidth","innerHeight","cssText","ul","phrase","curSection","section","header","li","node","completionTooltip","boost","apply","CompletionDialog","attrs","timestamp","setSelected","makeAttrs","build","active","prev","conf","sections","addOption","some","s","hasResult","getMatch","filter","matcher","sectionOrder","cmp","_b","rank","compare","sortOptions","selectedValue","reduce","createTooltip","above","Date","now","changes","assign","mapPos","CompletionState","none","random","toString","tr","languageDataAt","find","ActiveSource","docChanged","touchesRange","iA","iB","endA","endB","sameResults","effect","is","setSelectedEffect","value","baseAttrs","noAttrs","getUpdateType","isUserEvent","annotation","typing","explicitPos","touches","updateFor","setActiveEffect","empty","ActiveResult","super","checkValid","mapping","sources","completionState","StateField","provide","f","showTooltip","val","EditorView","contentAttributes","fromOff","toOff","changeByRange","insert","EditorSelection","cursor","userEvent","insertCompletionText","annotations","moveCompletionSelection","forward","by","step","getTooltip","RunningQuery","time","updates","done","undefined","completionPlugin","ViewPlugin","fromClass","debounceUpdate","running","debounceAccept","pendingStart","composing","startQuery","selectionSet","doesReset","transactions","query","handler","splice","clearTimeout","delay","q","setTimeout","startUpdate","r","pending","Promise","resolve","scheduleAccept","err","accept","updated","current","eventHandlers","blur","event","dialog","contains","compositionstart","compositionend","windows","navigator","platform","commitCharacters","Prec","highest","domEventHandlers","keydown","ctrlKey","altKey","metaKey","commitChars","baseTheme","fontFamily","whiteSpace","overflow","maxWidth_fallback","minWidth","maxHeight","listStyle","margin","padding","lineHeight","overflowX","textOverflow","display","borderBottom","paddingLeft","opacity","background","color","textAlign","width","boxSizing","backgroundColor","verticalAlign","borderLeft","textDecoration","marginLeft","fontStyle","fontSize","paddingRight","FieldPos","FieldRange","MapMode","TrackDel","Snippet","lines","fieldPositions","instantiate","lineStart","lineObj","baseIndent","indent","tabs","indentUnit","ranges","parse","template","m","fields","seq","rawName","index","_","brace","fieldMarker","Decoration","widget","WidgetType","toDOM","ignoreEvent","fieldRange","mark","ActiveSnippet","deco","mapped","selectionInsideField","setActive","moveToField","snippetState","decorations","fieldSelection","snippet","editor","spec","Text","Transaction","appendConfig","addSnippetKeymap","snippetPointerHandler","moveField","dir","last","defaultSnippetKeymap","run","shift","snippetKeymap","maps","keymap","compute","snippetCompletion","mousedown","posAtCoords","x","clientX","y","clientY","defaults","brackets","before","stringPrefixes","closeBracketEffect","TrackAfter","closedBracket","RangeValue","startSide","endSide","bracketState","RangeSet","head","closeBrackets","inputHandler","definedClosing","closing","charCodeAt","charAt","android","userAgent","compositionStarted","readOnly","bracket","tokens","tok","closed","handleSame","handleOpen","closedBracketAt","handleClose","insertBracket","closeBracketsKeymap","dont","sliceString","prevChar","nextChar","between","close","closeBefore","anchor","_open","allowTriple","nodeStart","canStartStringAt","charCategorizer","CharCategory","Word","quoteToken","prefixes","maxPrefix","quotePos","probablyInString","tree","charCat","prefix","autocompletion","completionKeymapExt","completionKeymap","computeN"],"mappings":"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","x_google_ignoreList":[0]}
|