diff --git a/.github/dependabot.yml b/.github/dependabot.yml index d232a23..dd93a24 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -1,10 +1,10 @@ version: 2 updates: -- package-ecosystem: pip - directory: "/" - schedule: - interval: daily -- package-ecosystem: github-actions - directory: "/" - schedule: - interval: daily + - package-ecosystem: pip + directory: "/" + schedule: + interval: daily + - package-ecosystem: github-actions + directory: "/" + schedule: + interval: daily diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 0797f80..dcf9760 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1,147 +1,98 @@ name: CI - on: push: branches: - main pull_request: - jobs: - - lint: - runs-on: ubuntu-latest - strategy: - matrix: - lint-command: - - bandit -r . -x ./tests - - black --check --diff . - - flake8 . - - isort --check-only --diff . - - pydocstyle . - steps: - - uses: actions/checkout@v6 - - uses: actions/setup-python@v6 - with: - python-version: "3.x" - cache: 'pip' - cache-dependency-path: 'pyproject.toml' - - run: python -m pip install -e .[lint] - - run: ${{ matrix.lint-command }} - dist: runs-on: ubuntu-latest steps: - uses: actions/checkout@v6 - - uses: actions/setup-python@v6 - with: - python-version: "3.x" - - run: python -m pip install --upgrade pip build wheel twine - - run: python -m build --sdist --wheel - - run: python -m twine check dist/* + - uses: astral-sh/setup-uv@v7 + - run: uvx --from build pyproject-build --sdist --wheel + - run: uvx twine check dist/* - uses: actions/upload-artifact@v6 with: path: dist/* - pytest-python: name: PyTest - needs: - - lint strategy: matrix: python-version: - - "3.9" - "3.10" - "3.11" - "3.12" + - "3.13" + - "3.14" django-version: - - "4.2" # LTS + - "5.2" # LTS runs-on: ubuntu-latest steps: - uses: actions/checkout@v6 - - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v6 + - uses: astral-sh/setup-uv@v7 with: python-version: ${{ matrix.python-version }} - - run: python -m pip install .[test] - - run: python -m pip install django~=${{ matrix.django-version }}.0 - - run: python -m pytest + - uses: actions/setup-node@v6 + with: + node-version: "lts/*" + - run: | + cd tests + npm install + - run: uv run tests/manage.py collectstatic --noinput + - run: uv run ${{ matrix.extras }} --with django~=${{ matrix.django-version }}.0 pytest - uses: codecov/codecov-action@v5 with: flags: py${{ matrix.python-version }} token: ${{ secrets.CODECOV_TOKEN }} - pytest-django: name: PyTest - needs: - - lint strategy: matrix: python-version: - - "3.11" + - "3.12" django-version: # oldest LTS gets tested on all Python versions - "5.1" - "5.2" + - "6.0" runs-on: ubuntu-latest steps: - uses: actions/checkout@v6 - - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v6 + - uses: astral-sh/setup-uv@v7 with: python-version: ${{ matrix.python-version }} - - run: python -m pip install .[test] - - run: python -m pip install django~=${{ matrix.django-version }}.0 - - run: python -m pytest + - uses: actions/setup-node@v6 + with: + node-version: "lts/*" + - run: | + cd tests + npm install + - run: uv run tests/manage.py collectstatic --noinput + - run: uv run ${{ matrix.extras }} --with django~=${{ matrix.django-version }}.0 pytest - uses: codecov/codecov-action@v5 with: flags: dj${{ matrix.django-version }} token: ${{ secrets.CODECOV_TOKEN }} - pytest-extras: name: PyTest - needs: - - lint strategy: matrix: extras: - - "whitenoise" + - "--extra whitenoise" runs-on: ubuntu-latest steps: - uses: actions/checkout@v6 - - name: Set up Python ${{ matrix.python-version }} - uses: actions/setup-python@v6 + - uses: astral-sh/setup-uv@v7 + - uses: actions/setup-node@v6 with: - python-version: 3.x - - run: python -m pip install .[test,${{ matrix.extras }}] - - run: python -m pytest + node-version: "lts/*" + - run: | + cd tests + npm install + - run: uv run tests/manage.py collectstatic --noinput + - run: uv run ${{ matrix.extras }} pytest - uses: codecov/codecov-action@v5 with: flags: dj${{ matrix.extras }} token: ${{ secrets.CODECOV_TOKEN }} - - codeql: - name: CodeQL - needs: [ dist, pytest-python, pytest-django ] - runs-on: ubuntu-latest - permissions: - actions: read - contents: read - security-events: write - strategy: - fail-fast: false - matrix: - language: [ python ] - steps: - - name: Checkout - uses: actions/checkout@v6 - - name: Initialize CodeQL - uses: github/codeql-action/init@v4 - with: - languages: ${{ matrix.language }} - queries: +security-and-quality - - name: Autobuild - uses: github/codeql-action/autobuild@v4 - - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@v4 - with: - category: "/language:${{ matrix.language }}" diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 7eab6a7..efda819 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -1,21 +1,33 @@ name: Release - on: release: types: [published] - + workflow_dispatch: +permissions: + id-token: write jobs: - PyPi: - + release-build: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v6 - - uses: actions/setup-python@v6 - with: - python-version: "3.x" - - run: python -m pip install --upgrade pip build wheel twine - - run: python -m build --sdist --wheel - - run: python -m twine upload dist/* - env: - TWINE_USERNAME: __token__ - TWINE_PASSWORD: ${{ secrets.PYPI_TOKEN }} + - uses: actions/checkout@v6 + - uses: actions/setup-python@v6 + with: + python-version: "3.x" + - run: python -m pip install --upgrade pip build wheel + - run: python -m build --sdist --wheel + - uses: actions/upload-artifact@v6 + with: + name: release-dists + path: dist/ + pypi-publish: + runs-on: ubuntu-latest + needs: + - release-build + permissions: + id-token: write + steps: + - uses: actions/download-artifact@v7 + with: + name: release-dists + path: dist/ + - uses: pypa/gh-action-pypi-publish@release/v1 diff --git a/.gitignore b/.gitignore index 0fc5c7e..8e6f512 100644 --- a/.gitignore +++ b/.gitignore @@ -169,3 +169,6 @@ package-lock.json # Django tests/staticfiles/ + +# Node.js +node_modules/ diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml new file mode 100644 index 0000000..71a887b --- /dev/null +++ b/.pre-commit-config.yaml @@ -0,0 +1,50 @@ +# See https://pre-commit.com for more information +# See https://pre-commit.com/hooks.html for more hooks +repos: + - repo: https://github.com/pre-commit/pre-commit-hooks + rev: v6.0.0 + hooks: + - id: trailing-whitespace + - id: check-merge-conflict + - id: check-ast + - id: check-toml + - id: check-yaml + - id: debug-statements + - id: end-of-file-fixer + - id: name-tests-test + args: ["--pytest-test-first"] + exclude: ^tests\/(testapp\/|manage.py) + - id: no-commit-to-branch + args: [--branch, main] + - repo: https://github.com/asottile/pyupgrade + rev: v3.21.2 + hooks: + - id: pyupgrade + - repo: https://github.com/adamchainz/django-upgrade + rev: 1.29.1 + hooks: + - id: django-upgrade + - repo: https://github.com/hukkin/mdformat + rev: 1.0.0 + hooks: + - id: mdformat + additional_dependencies: + - mdformat-ruff + - mdformat-footnote + - mdformat-gfm + - mdformat-gfm-alerts + - repo: https://github.com/astral-sh/ruff-pre-commit + rev: v0.14.9 + hooks: + - id: ruff-check + args: [--fix, --exit-non-zero-on-fix] + - id: ruff-format + - repo: https://github.com/google/yamlfmt + rev: v0.20.0 + hooks: + - id: yamlfmt +# See https://pre-commit.ci/ +ci: + autoupdate_schedule: weekly + skip: + - no-commit-to-branch diff --git a/README.md b/README.md index 0b88d82..77de028 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,13 @@ # Django ESM +

+ + + + Django ESM: NextGen JavaScript ESM module support for Django + +

+ NextGen JavaScript ESM module support for Django. [![PyPi Version](https://img.shields.io/pypi/v/django-esm.svg)](https://pypi.python.org/pypi/django-esm/) @@ -8,11 +16,11 @@ NextGen JavaScript ESM module support for Django. ## Highlights -* easy transition -* smart cache busting -* no more bundling -* native ESM support -* local vendoring with npm +- easy transition +- smart cache busting +- no more bundling +- native ESM support +- local vendoring with npm ## Setup diff --git a/django_esm/conf.py b/django_esm/conf.py index 1203558..4bd5b10 100644 --- a/django_esm/conf.py +++ b/django_esm/conf.py @@ -11,7 +11,7 @@ def get_settings(): (), { "PACKAGE_DIR": Path(getattr(settings, "BASE_DIR", "")), - "STATIC_DIR": Path(getattr(settings, "STATIC_ROOT")) / "esm", + "STATIC_DIR": Path(settings.STATIC_ROOT) / "esm", "STATIC_PREFIX": "esm", **getattr(settings, "ESM", {}), }, diff --git a/django_esm/management/commands/collectstatic.py b/django_esm/management/commands/collectstatic.py index 9de05f5..98beae9 100644 --- a/django_esm/management/commands/collectstatic.py +++ b/django_esm/management/commands/collectstatic.py @@ -1,4 +1,4 @@ -import subprocess # nosec +import subprocess import sys from django.contrib.staticfiles.management.commands import collectstatic @@ -18,7 +18,7 @@ def add_arguments(self, parser): def handle(self, **options): if not options["no_esm"]: - subprocess.check_call( # nosec + subprocess.check_call( # noqa: S603, S607 [ "npx", "--yes", @@ -35,9 +35,9 @@ def handle(self, **options): except ImportError: pass else: - subprocess.check_call( # nosec + subprocess.check_call( # noqa: S603 [ - "python3", + sys.executable, "-m", "whitenoise.compress", get_settings().STATIC_DIR, diff --git a/django_esm/management/commands/esm.py b/django_esm/management/commands/esm.py index 715292e..a598e68 100644 --- a/django_esm/management/commands/esm.py +++ b/django_esm/management/commands/esm.py @@ -1,4 +1,4 @@ -import subprocess # nosec +import subprocess import sys from django.core.management import BaseCommand @@ -26,7 +26,7 @@ def add_arguments(self, parser): ) def handle(self, *args, **options): - subprocess.check_call( # nosec + subprocess.check_call( # noqa: S603 ( [ "npx", diff --git a/django_esm/templatetags/esm.py b/django_esm/templatetags/esm.py index 295e0fa..0cd196b 100644 --- a/django_esm/templatetags/esm.py +++ b/django_esm/templatetags/esm.py @@ -43,4 +43,4 @@ def importmap(): ).open() as f: raw_importmap = json.load(f) importmap_json = _resolve_importmap_urls(raw_importmap) - return mark_safe(importmap_json) # nosec + return mark_safe(importmap_json) # noqa: S308 diff --git a/images/logo-dark.svg b/images/logo-dark.svg new file mode 100644 index 0000000..a380f0d --- /dev/null +++ b/images/logo-dark.svg @@ -0,0 +1,16 @@ + + + + + + + + Django + + + ESM + + + NextGen JavaScript ESM module support for Django + + diff --git a/images/logo-light.svg b/images/logo-light.svg new file mode 100644 index 0000000..47b2df0 --- /dev/null +++ b/images/logo-light.svg @@ -0,0 +1,16 @@ + + + + + + + + Django + + + ESM + + + NextGen JavaScript ESM module support for Django + + diff --git a/pyproject.toml b/pyproject.toml index d9b634d..c833654 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -23,39 +23,26 @@ classifiers = [ "Programming Language :: JavaScript", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3 :: Only", - "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3.12", + "Programming Language :: Python :: 3.13", + "Programming Language :: Python :: 3.14", "Framework :: Django", "Framework :: Django :: 4.2", "Framework :: Django :: 5.1", "Framework :: Django :: 5.2", + "Framework :: Django :: 6.0", ] -requires-python = ">=3.9" +requires-python = ">=3.10" dependencies = [ - "django>=4.2.0", + "django>=4.2", ] [project.optional-dependencies] whitenoise = [ "whitenoise>=6.0", ] -csp = [ - "django-csp", -] -test = [ - "pytest", - "pytest-cov", - "pytest-django", -] -lint = [ - "bandit==1.8.6", - "black==25.11.0", - "flake8==7.3.0", - "isort==6.1.0", - "pydocstyle[toml]==6.3.0", -] [project.urls] Project-URL = "https://github.com/codingjoe/django-esm" @@ -83,14 +70,44 @@ source = ["django_esm"] show_missing = true omit = ["django_esm/_version.py", "tests/*"] -[tool.isort] -atomic = true -line_length = 88 -known_first_party = "django_esm, tests" -include_trailing_comma = true -default_section = "THIRDPARTY" -combine_as_imports = true -skip = ["django_esm/_version.py"] +[tool.ruff] +src = ["crontask", "tests"] + +[tool.ruff.lint] +select = [ + "E", # pycodestyle errors + "W", # pycodestyle warnings + "F", # pyflakes + "I", # isort + "S", # flake8-bandit + "D", # pydocstyle + "UP", # pyupgrade + "B", # flake8-bugbear + "C", # flake8-comprehensions +] + +ignore = ["B904", "D1", "E501", "S101"] -[tool.pydocstyle] -add_ignore = "D1" +[tool.ruff.lint.per-file-ignores] +"tests/**/*.py" = [ + "S", +] + +[tool.ruff.lint.isort] +combine-as-imports = true +split-on-trailing-comma = true +section-order = ["future", "standard-library", "third-party", "first-party", "local-folder"] +force-wrap-aliases = true + +[tool.ruff.lint.pydocstyle] +convention = "pep257" + +[dependency-groups] +dev = [ + { include-group = "test" }, +] +test = [ + "pytest", + "pytest-cov", + "pytest-django", +] diff --git a/setup.cfg b/setup.cfg deleted file mode 100644 index 6f60592..0000000 --- a/setup.cfg +++ /dev/null @@ -1,4 +0,0 @@ -[flake8] -max-line-length=88 -select = C,E,F,W,B,B950 -ignore = E203, E501, W503, E731 diff --git a/tests/manage.py b/tests/manage.py index b6b55fc..5bf68d8 100755 --- a/tests/manage.py +++ b/tests/manage.py @@ -1,5 +1,6 @@ #!/usr/bin/env python """Django's command-line utility for administrative tasks.""" + import os import sys diff --git a/tests/node_modules/.package-lock.json b/tests/node_modules/.package-lock.json deleted file mode 100644 index d159412..0000000 --- a/tests/node_modules/.package-lock.json +++ /dev/null @@ -1,83 +0,0 @@ -{ - "name": "django-esm", - "lockfileVersion": 3, - "requires": true, - "packages": { - "node_modules/@lit-labs/ssr-dom-shim": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@lit-labs/ssr-dom-shim/-/ssr-dom-shim-1.1.2.tgz", - "integrity": "sha512-jnOD+/+dSrfTWYfSXBXlo5l5f0q1UuJo3tkbMDCYA2lKUYq79jaxqtGEvnRoh049nt1vdo1+45RinipU6FGY2g==" - }, - "node_modules/@lit/reactive-element": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/@lit/reactive-element/-/reactive-element-2.0.2.tgz", - "integrity": "sha512-SVOwLAWUQg3Ji1egtOt1UiFe4zdDpnWHyc5qctSceJ5XIu0Uc76YmGpIjZgx9YJ0XtdW0Jm507sDvjOu+HnB8w==", - "dependencies": { - "@lit-labs/ssr-dom-shim": "^1.1.2" - } - }, - "node_modules/@types/trusted-types": { - "version": "2.0.7", - "resolved": "https://registry.npmjs.org/@types/trusted-types/-/trusted-types-2.0.7.tgz", - "integrity": "sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==" - }, - "node_modules/deep": { - "resolved": "packages/deep", - "link": true - }, - "node_modules/flat": { - "resolved": "packages/flat", - "link": true - }, - "node_modules/flat2": { - "resolved": "packages/flat2", - "link": true - }, - "node_modules/htmx.org": { - "version": "1.9.10", - "resolved": "https://registry.npmjs.org/htmx.org/-/htmx.org-1.9.10.tgz", - "integrity": "sha512-UgchasltTCrTuU2DQLom3ohHrBvwr7OqpwyAVJ9VxtNBng4XKkVsqrv0Qr3srqvM9ZNI3f1MmvVQQqK7KW/bTA==" - }, - "node_modules/list": { - "resolved": "packages/list", - "link": true - }, - "node_modules/lit": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/lit/-/lit-3.1.0.tgz", - "integrity": "sha512-rzo/hmUqX8zmOdamDAeydfjsGXbbdtAFqMhmocnh2j9aDYqbu0fjXygjCa0T99Od9VQ/2itwaGrjZz/ZELVl7w==", - "dependencies": { - "@lit/reactive-element": "^2.0.0", - "lit-element": "^4.0.0", - "lit-html": "^3.1.0" - } - }, - "node_modules/lit-element": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/lit-element/-/lit-element-4.0.2.tgz", - "integrity": "sha512-/W6WQZUa5VEXwC7H9tbtDMdSs9aWil3Ou8hU6z2cOKWbsm/tXPAcsoaHVEtrDo0zcOIE5GF6QgU55tlGL2Nihg==", - "dependencies": { - "@lit-labs/ssr-dom-shim": "^1.1.2", - "@lit/reactive-element": "^2.0.0", - "lit-html": "^3.1.0" - } - }, - "node_modules/lit-html": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/lit-html/-/lit-html-3.1.0.tgz", - "integrity": "sha512-FwAjq3iNsaO6SOZXEIpeROlJLUlrbyMkn4iuv4f4u1H40Jw8wkeR/OUXZUHUoiYabGk8Y4Y0F/rgq+R4MrOLmA==", - "dependencies": { - "@types/trusted-types": "^2.0.2" - } - }, - "node_modules/string": { - "resolved": "packages/string", - "link": true - }, - "packages/deep": {}, - "packages/flat": {}, - "packages/flat2": {}, - "packages/list": {}, - "packages/string": {} - } -} diff --git a/tests/node_modules/@lit-labs/ssr-dom-shim/README.md b/tests/node_modules/@lit-labs/ssr-dom-shim/README.md deleted file mode 100644 index ca49443..0000000 --- a/tests/node_modules/@lit-labs/ssr-dom-shim/README.md +++ /dev/null @@ -1,58 +0,0 @@ -# @lit-labs/ssr-dom-shim - -## Overview - -This package provides minimal implementations of `Element`, `HTMLElement`, -`CustomElementRegistry`, and `customElements`, designed to be used when Server -Side Rendering (SSR) web components from Node, including Lit components. - -## Usage - -### Usage from Lit - -Lit itself automatically imports these shims when running in Node, so Lit users -should typically not need to directly depend on or import from this package. - -See the [lit.dev SSR docs](https://lit.dev/docs/ssr/overview/) for general -information about server-side rendering with Lit. - -### Usage in other contexts - -Other libraries or frameworks who wish to support SSR are welcome to also depend -on these shims. (This package is planned to eventually move to -`@webcomponents/ssr-dom-shim` to better reflect this use case). There are two -main patterns for providing access to these shims to users: - -1. Assigning shims to `globalThis`, ensuring that assignment occurs before - user-code runs. - -2. Importing shims directly from the module that provides your base class, using - the `node` [export - condition](https://nodejs.org/api/packages.html#conditional-exports) to - ensure this only happens when running in Node, and not in the browser. - -Lit takes approach #2 for all of the shims except for `customElements`, so that -users who have imported `lit` are able to call `customElements.define` in their -components from Node. - -### Exports - -The main module exports the following values. Note that no globals are set by -this module. - -- [`Element`](https://developer.mozilla.org/en-US/docs/Web/API/Element) - - [`attachShadow`](https://developer.mozilla.org/en-US/docs/Web/API/Element/attachShadow) - - [`shadowRoot`](https://developer.mozilla.org/en-US/docs/Web/API/Element/shadowRoot) - - [`attributes`](https://developer.mozilla.org/en-US/docs/Web/API/Element/attributes) - - [`hasAttribute`](https://developer.mozilla.org/en-US/docs/Web/API/Element/hasAttribute) - - [`getAttribute`](https://developer.mozilla.org/en-US/docs/Web/API/Element/getAttribute) - - [`setAttribute`](https://developer.mozilla.org/en-US/docs/Web/API/Element/setAttribute) - - [`removeAttribute`](https://developer.mozilla.org/en-US/docs/Web/API/Element/removeAttribute) -- [`HTMLElement`](https://developer.mozilla.org/en-US/docs/Web/API/HTMLElement) - - (Inherits from Element) -- [`CustomElementRegistry`](https://developer.mozilla.org/en-US/docs/Web/API/CustomElementRegistry) -- [`customElements`](https://developer.mozilla.org/en-US/docs/Web/API/Window/customElements) - -## Contributing - -Please see [CONTRIBUTING.md](../../../CONTRIBUTING.md). diff --git a/tests/node_modules/@lit-labs/ssr-dom-shim/index.d.ts b/tests/node_modules/@lit-labs/ssr-dom-shim/index.d.ts deleted file mode 100644 index a01c056..0000000 --- a/tests/node_modules/@lit-labs/ssr-dom-shim/index.d.ts +++ /dev/null @@ -1,18 +0,0 @@ -export { ariaMixinAttributes, ElementInternals, HYDRATE_INTERNALS_ATTR_PREFIX, } from './lib/element-internals.js'; -declare const ElementShimWithRealType: { - new (): Element; - prototype: Element; -}; -export { ElementShimWithRealType as Element }; -declare const HTMLElementShimWithRealType: { - new (): HTMLElement; - prototype: HTMLElement; -}; -export { HTMLElementShimWithRealType as HTMLElement }; -declare const CustomElementRegistryShimWithRealType: { - new (): CustomElementRegistry; - prototype: CustomElementRegistry; -}; -export { CustomElementRegistryShimWithRealType as CustomElementRegistry }; -export declare const customElements: CustomElementRegistry; -//# sourceMappingURL=index.d.ts.map \ No newline at end of file diff --git a/tests/node_modules/@lit-labs/ssr-dom-shim/index.d.ts.map b/tests/node_modules/@lit-labs/ssr-dom-shim/index.d.ts.map deleted file mode 100644 index 9130076..0000000 --- a/tests/node_modules/@lit-labs/ssr-dom-shim/index.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":"AAOA,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,6BAA6B,GAC9B,MAAM,4BAA4B,CAAC;AA+EpC,QAAA,MAAM,uBAAuB;;;CAA0C,CAAC;AACxE,OAAO,EAAC,uBAAuB,IAAI,OAAO,EAAC,CAAC;AAG5C,QAAA,MAAM,2BAA2B;;;CACgB,CAAC;AAClD,OAAO,EAAC,2BAA2B,IAAI,WAAW,EAAC,CAAC;AAoDpD,QAAA,MAAM,qCAAqC;;;CAC0B,CAAC;AACtE,OAAO,EAAC,qCAAqC,IAAI,qBAAqB,EAAC,CAAC;AAExE,eAAO,MAAM,cAAc,uBAA8C,CAAC"} \ No newline at end of file diff --git a/tests/node_modules/@lit-labs/ssr-dom-shim/index.js b/tests/node_modules/@lit-labs/ssr-dom-shim/index.js deleted file mode 100644 index fb40fba..0000000 --- a/tests/node_modules/@lit-labs/ssr-dom-shim/index.js +++ /dev/null @@ -1,124 +0,0 @@ -/** - * @license - * Copyright 2019 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -import { ElementInternalsShim } from './lib/element-internals.js'; -export { ariaMixinAttributes, ElementInternals, HYDRATE_INTERNALS_ATTR_PREFIX, } from './lib/element-internals.js'; -const attributes = new WeakMap(); -const attributesForElement = (element) => { - let attrs = attributes.get(element); - if (attrs === undefined) { - attributes.set(element, (attrs = new Map())); - } - return attrs; -}; -// The typings around the exports below are a little funky: -// -// 1. We want the `name` of the shim classes to match the real ones at runtime, -// hence e.g. `class Element`. -// 2. We can't shadow the global types with a simple class declaration, because -// then we can't reference the global types for casting, hence e.g. -// `const ElementShim = class Element`. -// 3. We want to export the classes typed as the real ones, hence e.g. -// `const ElementShimWithRealType = ElementShim as object as typeof Element;`. -// 4. We want the exported names to match the real ones, hence e.g. -// `export {ElementShimWithRealType as Element}`. -const ElementShim = class Element { - constructor() { - this.__shadowRootMode = null; - this.__shadowRoot = null; - this.__internals = null; - } - get attributes() { - return Array.from(attributesForElement(this)).map(([name, value]) => ({ - name, - value, - })); - } - get shadowRoot() { - if (this.__shadowRootMode === 'closed') { - return null; - } - return this.__shadowRoot; - } - setAttribute(name, value) { - // Emulate browser behavior that silently casts all values to string. E.g. - // `42` becomes `"42"` and `{}` becomes `"[object Object]""`. - attributesForElement(this).set(name, String(value)); - } - removeAttribute(name) { - attributesForElement(this).delete(name); - } - hasAttribute(name) { - return attributesForElement(this).has(name); - } - attachShadow(init) { - const shadowRoot = { host: this }; - this.__shadowRootMode = init.mode; - if (init && init.mode === 'open') { - this.__shadowRoot = shadowRoot; - } - return shadowRoot; - } - attachInternals() { - if (this.__internals !== null) { - throw new Error(`Failed to execute 'attachInternals' on 'HTMLElement': ` + - `ElementInternals for the specified element was already attached.`); - } - const internals = new ElementInternalsShim(this); - this.__internals = internals; - return internals; - } - getAttribute(name) { - const value = attributesForElement(this).get(name); - return value ?? null; - } -}; -const ElementShimWithRealType = ElementShim; -export { ElementShimWithRealType as Element }; -const HTMLElementShim = class HTMLElement extends ElementShim { -}; -const HTMLElementShimWithRealType = HTMLElementShim; -export { HTMLElementShimWithRealType as HTMLElement }; -const CustomElementRegistryShim = class CustomElementRegistry { - constructor() { - this.__definitions = new Map(); - } - define(name, ctor) { - if (this.__definitions.has(name)) { - if (process.env.NODE_ENV === 'development') { - console.warn(`'CustomElementRegistry' already has "${name}" defined. ` + - `This may have been caused by live reload or hot module ` + - `replacement in which case it can be safely ignored.\n` + - `Make sure to test your application with a production build as ` + - `repeat registrations will throw in production.`); - } - else { - throw new Error(`Failed to execute 'define' on 'CustomElementRegistry': ` + - `the name "${name}" has already been used with this registry`); - } - } - this.__definitions.set(name, { - ctor, - // Note it's important we read `observedAttributes` in case it is a getter - // with side-effects, as is the case in Lit, where it triggers class - // finalization. - // - // TODO(aomarks) To be spec compliant, we should also capture the - // registration-time lifecycle methods like `connectedCallback`. For them - // to be actually accessible to e.g. the Lit SSR element renderer, though, - // we'd need to introduce a new API for accessing them (since `get` only - // returns the constructor). - observedAttributes: ctor.observedAttributes ?? [], - }); - } - get(name) { - const definition = this.__definitions.get(name); - return definition?.ctor; - } -}; -const CustomElementRegistryShimWithRealType = CustomElementRegistryShim; -export { CustomElementRegistryShimWithRealType as CustomElementRegistry }; -export const customElements = new CustomElementRegistryShimWithRealType(); -//# sourceMappingURL=index.js.map \ No newline at end of file diff --git a/tests/node_modules/@lit-labs/ssr-dom-shim/index.js.map b/tests/node_modules/@lit-labs/ssr-dom-shim/index.js.map deleted file mode 100644 index a1d17fb..0000000 --- a/tests/node_modules/@lit-labs/ssr-dom-shim/index.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"index.js","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAC,oBAAoB,EAAC,MAAM,4BAA4B,CAAC;AAEhE,OAAO,EACL,mBAAmB,EACnB,gBAAgB,EAChB,6BAA6B,GAC9B,MAAM,4BAA4B,CAAC;AAEpC,MAAM,UAAU,GAAG,IAAI,OAAO,EAG3B,CAAC;AACJ,MAAM,oBAAoB,GAAG,CAC3B,OAA6C,EAC7C,EAAE;IACF,IAAI,KAAK,GAAG,UAAU,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACpC,IAAI,KAAK,KAAK,SAAS,EAAE;QACvB,UAAU,CAAC,GAAG,CAAC,OAAO,EAAE,CAAC,KAAK,GAAG,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC;KAC9C;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,2DAA2D;AAC3D,EAAE;AACF,+EAA+E;AAC/E,iCAAiC;AACjC,+EAA+E;AAC/E,sEAAsE;AACtE,0CAA0C;AAC1C,sEAAsE;AACtE,iFAAiF;AACjF,mEAAmE;AACnE,oDAAoD;AACpD,MAAM,WAAW,GAAG,MAAM,OAAO;IAAb;QAOV,qBAAgB,GAA0B,IAAI,CAAC;QAC7C,iBAAY,GAAsB,IAAI,CAAC;QACvC,gBAAW,GAA4B,IAAI,CAAC;IA0CxD,CAAC;IAlDC,IAAI,UAAU;QACZ,OAAO,KAAK,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;YACpE,IAAI;YACJ,KAAK;SACN,CAAC,CAAC,CAAC;IACN,CAAC;IAKD,IAAI,UAAU;QACZ,IAAI,IAAI,CAAC,gBAAgB,KAAK,QAAQ,EAAE;YACtC,OAAO,IAAI,CAAC;SACb;QACD,OAAO,IAAI,CAAC,YAAY,CAAC;IAC3B,CAAC;IACD,YAAY,CAAC,IAAY,EAAE,KAAc;QACvC,0EAA0E;QAC1E,6DAA6D;QAC7D,oBAAoB,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC;IACtD,CAAC;IACD,eAAe,CAAC,IAAY;QAC1B,oBAAoB,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC;IACD,YAAY,CAAC,IAAY;QACvB,OAAO,oBAAoB,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC9C,CAAC;IACD,YAAY,CAAC,IAAoB;QAC/B,MAAM,UAAU,GAAG,EAAC,IAAI,EAAE,IAAI,EAAyB,CAAC;QACxD,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC;QAClC,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE;YAChC,IAAI,CAAC,YAAY,GAAG,UAAU,CAAC;SAChC;QACD,OAAO,UAAU,CAAC;IACpB,CAAC;IACD,eAAe;QACb,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,EAAE;YAC7B,MAAM,IAAI,KAAK,CACb,wDAAwD;gBACtD,kEAAkE,CACrE,CAAC;SACH;QACD,MAAM,SAAS,GAAG,IAAI,oBAAoB,CAAC,IAA8B,CAAC,CAAC;QAC3E,IAAI,CAAC,WAAW,GAAG,SAAS,CAAC;QAC7B,OAAO,SAA6B,CAAC;IACvC,CAAC;IACD,YAAY,CAAC,IAAY;QACvB,MAAM,KAAK,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACnD,OAAO,KAAK,IAAI,IAAI,CAAC;IACvB,CAAC;CACF,CAAC;AACF,MAAM,uBAAuB,GAAG,WAAuC,CAAC;AACxE,OAAO,EAAC,uBAAuB,IAAI,OAAO,EAAC,CAAC;AAE5C,MAAM,eAAe,GAAG,MAAM,WAAY,SAAQ,WAAW;CAAG,CAAC;AACjE,MAAM,2BAA2B,GAC/B,eAA+C,CAAC;AAClD,OAAO,EAAC,2BAA2B,IAAI,WAAW,EAAC,CAAC;AAYpD,MAAM,yBAAyB,GAAG,MAAM,qBAAqB;IAA3B;QACxB,kBAAa,GAAG,IAAI,GAAG,EAAqC,CAAC;IAsCvE,CAAC;IApCC,MAAM,CAAC,IAAY,EAAE,IAAkC;QACrD,IAAI,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YAChC,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,aAAa,EAAE;gBAC1C,OAAO,CAAC,IAAI,CACV,wCAAwC,IAAI,aAAa;oBACvD,yDAAyD;oBACzD,uDAAuD;oBACvD,gEAAgE;oBAChE,gDAAgD,CACnD,CAAC;aACH;iBAAM;gBACL,MAAM,IAAI,KAAK,CACb,yDAAyD;oBACvD,aAAa,IAAI,4CAA4C,CAChE,CAAC;aACH;SACF;QACD,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,EAAE;YAC3B,IAAI;YACJ,0EAA0E;YAC1E,oEAAoE;YACpE,gBAAgB;YAChB,EAAE;YACF,iEAAiE;YACjE,yEAAyE;YACzE,0EAA0E;YAC1E,wEAAwE;YACxE,4BAA4B;YAC5B,kBAAkB,EAAE,IAAI,CAAC,kBAAkB,IAAI,EAAE;SAClD,CAAC,CAAC;IACL,CAAC;IAED,GAAG,CAAC,IAAY;QACd,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAChD,OAAO,UAAU,EAAE,IAAI,CAAC;IAC1B,CAAC;CACF,CAAC;AACF,MAAM,qCAAqC,GACzC,yBAAmE,CAAC;AACtE,OAAO,EAAC,qCAAqC,IAAI,qBAAqB,EAAC,CAAC;AAExE,MAAM,CAAC,MAAM,cAAc,GAAG,IAAI,qCAAqC,EAAE,CAAC","sourcesContent":["/**\n * @license\n * Copyright 2019 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\nimport {ElementInternalsShim} from './lib/element-internals.js';\n\nexport {\n ariaMixinAttributes,\n ElementInternals,\n HYDRATE_INTERNALS_ATTR_PREFIX,\n} from './lib/element-internals.js';\n\nconst attributes = new WeakMap<\n InstanceType,\n Map\n>();\nconst attributesForElement = (\n element: InstanceType\n) => {\n let attrs = attributes.get(element);\n if (attrs === undefined) {\n attributes.set(element, (attrs = new Map()));\n }\n return attrs;\n};\n\n// The typings around the exports below are a little funky:\n//\n// 1. We want the `name` of the shim classes to match the real ones at runtime,\n// hence e.g. `class Element`.\n// 2. We can't shadow the global types with a simple class declaration, because\n// then we can't reference the global types for casting, hence e.g.\n// `const ElementShim = class Element`.\n// 3. We want to export the classes typed as the real ones, hence e.g.\n// `const ElementShimWithRealType = ElementShim as object as typeof Element;`.\n// 4. We want the exported names to match the real ones, hence e.g.\n// `export {ElementShimWithRealType as Element}`.\nconst ElementShim = class Element {\n get attributes() {\n return Array.from(attributesForElement(this)).map(([name, value]) => ({\n name,\n value,\n }));\n }\n private __shadowRootMode: null | ShadowRootMode = null;\n protected __shadowRoot: null | ShadowRoot = null;\n protected __internals: null | ElementInternals = null;\n\n get shadowRoot() {\n if (this.__shadowRootMode === 'closed') {\n return null;\n }\n return this.__shadowRoot;\n }\n setAttribute(name: string, value: unknown): void {\n // Emulate browser behavior that silently casts all values to string. E.g.\n // `42` becomes `\"42\"` and `{}` becomes `\"[object Object]\"\"`.\n attributesForElement(this).set(name, String(value));\n }\n removeAttribute(name: string) {\n attributesForElement(this).delete(name);\n }\n hasAttribute(name: string) {\n return attributesForElement(this).has(name);\n }\n attachShadow(init: ShadowRootInit): ShadowRoot {\n const shadowRoot = {host: this} as object as ShadowRoot;\n this.__shadowRootMode = init.mode;\n if (init && init.mode === 'open') {\n this.__shadowRoot = shadowRoot;\n }\n return shadowRoot;\n }\n attachInternals(): ElementInternals {\n if (this.__internals !== null) {\n throw new Error(\n `Failed to execute 'attachInternals' on 'HTMLElement': ` +\n `ElementInternals for the specified element was already attached.`\n );\n }\n const internals = new ElementInternalsShim(this as unknown as HTMLElement);\n this.__internals = internals;\n return internals as ElementInternals;\n }\n getAttribute(name: string) {\n const value = attributesForElement(this).get(name);\n return value ?? null;\n }\n};\nconst ElementShimWithRealType = ElementShim as object as typeof Element;\nexport {ElementShimWithRealType as Element};\n\nconst HTMLElementShim = class HTMLElement extends ElementShim {};\nconst HTMLElementShimWithRealType =\n HTMLElementShim as object as typeof HTMLElement;\nexport {HTMLElementShimWithRealType as HTMLElement};\n\ninterface CustomHTMLElementConstructor {\n new (): HTMLElement;\n observedAttributes?: string[];\n}\n\ntype CustomElementRegistration = {\n ctor: {new (): HTMLElement};\n observedAttributes: string[];\n};\n\nconst CustomElementRegistryShim = class CustomElementRegistry {\n private __definitions = new Map();\n\n define(name: string, ctor: CustomHTMLElementConstructor) {\n if (this.__definitions.has(name)) {\n if (process.env.NODE_ENV === 'development') {\n console.warn(\n `'CustomElementRegistry' already has \"${name}\" defined. ` +\n `This may have been caused by live reload or hot module ` +\n `replacement in which case it can be safely ignored.\\n` +\n `Make sure to test your application with a production build as ` +\n `repeat registrations will throw in production.`\n );\n } else {\n throw new Error(\n `Failed to execute 'define' on 'CustomElementRegistry': ` +\n `the name \"${name}\" has already been used with this registry`\n );\n }\n }\n this.__definitions.set(name, {\n ctor,\n // Note it's important we read `observedAttributes` in case it is a getter\n // with side-effects, as is the case in Lit, where it triggers class\n // finalization.\n //\n // TODO(aomarks) To be spec compliant, we should also capture the\n // registration-time lifecycle methods like `connectedCallback`. For them\n // to be actually accessible to e.g. the Lit SSR element renderer, though,\n // we'd need to introduce a new API for accessing them (since `get` only\n // returns the constructor).\n observedAttributes: ctor.observedAttributes ?? [],\n });\n }\n\n get(name: string) {\n const definition = this.__definitions.get(name);\n return definition?.ctor;\n }\n};\nconst CustomElementRegistryShimWithRealType =\n CustomElementRegistryShim as object as typeof CustomElementRegistry;\nexport {CustomElementRegistryShimWithRealType as CustomElementRegistry};\n\nexport const customElements = new CustomElementRegistryShimWithRealType();\n"]} \ No newline at end of file diff --git a/tests/node_modules/@lit-labs/ssr-dom-shim/package.json b/tests/node_modules/@lit-labs/ssr-dom-shim/package.json deleted file mode 100644 index 1c26c4b..0000000 --- a/tests/node_modules/@lit-labs/ssr-dom-shim/package.json +++ /dev/null @@ -1,53 +0,0 @@ -{ - "name": "@lit-labs/ssr-dom-shim", - "version": "1.1.2", - "publishConfig": { - "access": "public" - }, - "description": "DOM shim for Lit Server Side Rendering (SSR)", - "license": "BSD-3-Clause", - "author": "Google LLC", - "homepage": "https://github.com/lit/lit/tree/main/packages/labs/ssr-dom-shim", - "repository": { - "type": "git", - "url": "https://github.com/lit/lit.git", - "directory": "packages/labs/ssr-dom-shim" - }, - "main": "index.js", - "typings": "index.d.ts", - "type": "module", - "exports": { - ".": { - "types": "./index.d.ts", - "default": "./index.js" - } - }, - "files": [ - "index.{d.ts,d.ts.map,js,js.map}", - "lib/" - ], - "scripts": { - "build": "wireit", - "build:ts": "wireit" - }, - "wireit": { - "build": { - "dependencies": [ - "build:ts" - ] - }, - "build:ts": { - "command": "tsc --build --pretty", - "clean": "if-file-deleted", - "files": [ - "src/**/*.ts", - "tsconfig.json" - ], - "output": [ - "lib/", - "index.{d.ts,d.ts.map,js,js.map}", - "tsconfig.tsbuildinfo" - ] - } - } -} diff --git a/tests/node_modules/@lit/reactive-element/LICENSE b/tests/node_modules/@lit/reactive-element/LICENSE deleted file mode 100644 index be7a97b..0000000 --- a/tests/node_modules/@lit/reactive-element/LICENSE +++ /dev/null @@ -1,28 +0,0 @@ -BSD 3-Clause License - -Copyright (c) 2017 Google LLC. All rights reserved. - -Redistribution and use in source and binary forms, with or without -modification, are permitted provided that the following conditions are met: - -1. Redistributions of source code must retain the above copyright notice, this - list of conditions and the following disclaimer. - -2. Redistributions in binary form must reproduce the above copyright notice, - this list of conditions and the following disclaimer in the documentation - and/or other materials provided with the distribution. - -3. Neither the name of the copyright holder nor the names of its - contributors may be used to endorse or promote products derived from - this software without specific prior written permission. - -THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" -AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE -IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE -DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE -FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL -DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR -SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER -CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, -OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE -OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/README.md b/tests/node_modules/@lit/reactive-element/README.md deleted file mode 100644 index efa0030..0000000 --- a/tests/node_modules/@lit/reactive-element/README.md +++ /dev/null @@ -1,103 +0,0 @@ -# ReactiveElement 1.0 - -[![Build Status](https://github.com/lit/lit/workflows/Tests/badge.svg)](https://github.com/lit/lit/actions?query=workflow%3ATests) -[![Published on npm](https://img.shields.io/npm/v/@lit/reactive-element?logo=npm)](https://www.npmjs.com/package/@lit/reactive-element) -[![Join our Discord](https://img.shields.io/badge/discord-join%20chat-5865F2.svg?logo=discord&logoColor=fff)](https://lit.dev/discord/) -[![Mentioned in Awesome Lit](https://awesome.re/mentioned-badge.svg)](https://github.com/web-padawan/awesome-lit) - -# ReactiveElement - -A simple low level base class for creating fast, lightweight web components. - -## About this release - -This is a pre-release of Lit 3.0, the next major version of Lit. - -Lit 3.0 has very few breaking changes from Lit 2.0: - -- Drops support for IE11 -- Published as ES2021 -- Removes a couple of deprecated Lit 1.x APIs - -Lit 3.0 should require no changes to upgrade from Lit 2.0 for the vast majority of users. Once the full release is published, most apps and libraries will be able to extend their npm version ranges to include both 2.x and 3.x, like `"^2.7.0 || ^3.0.0"`. - -Lit 2.x and 3.0 are _interoperable_: templates, base classes, directives, decorators, etc., from one version of Lit will work with those from another. - -Please file any issues you find on our [issue tracker](https://github.com/lit/lit/issues). - -## Documentation - -Full documentation is available at [lit.dev](https://lit.dev/docs/api/ReactiveElement/). - -## Overview - -`ReactiveElement` is a base class for writing web components that react to changes in properties and attributes. `ReactiveElement` adds reactive properties and a batching, asynchronous update lifecycle to the standard web component APIs. Subclasses can respond to changes and update the DOM to reflect the element state. - -`ReactiveElement` doesn't include a DOM template system, but can easily be extended to add one by overriding the `update()` method to call the template library. `LitElement` is such an extension that adds `lit-html` templating. - -## Example - -```ts -import { - ReactiveElement, - html, - css, - customElement, - property, - PropertyValues, -} from '@lit/reactive-element'; - -// This decorator defines the element. -@customElement('my-element') -export class MyElement extends ReactiveElement { - // This decorator creates a property accessor that triggers rendering and - // an observed attribute. - @property() - mood = 'great'; - - static styles = css` - span { - color: green; - } - `; - - contentEl?: HTMLSpanElement; - - // One time setup of shadowRoot content. - createRenderRoot() { - const shadowRoot = super.createRenderRoot(); - shadowRoot.innerHTML = `Web Components are !`; - this.contentEl = shadowRoot.firstElementChild; - return shadowRoot; - } - - // Use a DOM rendering library of your choice or manually update the DOM. - update(changedProperties: PropertyValues) { - super.update(changedProperties); - this.contentEl.textContent = this.mood; - } -} -``` - -```html - -``` - -Note, this example uses decorators to create properties. Decorators are a proposed -standard currently available in [TypeScript](https://www.typescriptlang.org/) or [Babel](https://babeljs.io/docs/en/babel-plugin-proposal-decorators). ReactiveElement also supports a [vanilla JavaScript method](https://lit.dev/docs/components/properties/#declaring-properties-in-a-static-properties-field) of declaring reactive properties. - -## Installation - -```bash -$ npm install @lit/reactive-element -``` - -Or use from `lit`: - -```bash -$ npm install lit -``` - -## Contributing - -Please see [CONTRIBUTING.md](../../CONTRIBUTING.md). diff --git a/tests/node_modules/@lit/reactive-element/css-tag.d.ts b/tests/node_modules/@lit/reactive-element/css-tag.d.ts deleted file mode 100644 index b94d2d0..0000000 --- a/tests/node_modules/@lit/reactive-element/css-tag.d.ts +++ /dev/null @@ -1,67 +0,0 @@ -/** - * @license - * Copyright 2019 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -/** - * Whether the current browser supports `adoptedStyleSheets`. - */ -export declare const supportsAdoptingStyleSheets: boolean; -/** - * A CSSResult or native CSSStyleSheet. - * - * In browsers that support constructible CSS style sheets, CSSStyleSheet - * object can be used for styling along side CSSResult from the `css` - * template tag. - */ -export type CSSResultOrNative = CSSResult | CSSStyleSheet; -export type CSSResultArray = Array; -/** - * A single CSSResult, CSSStyleSheet, or an array or nested arrays of those. - */ -export type CSSResultGroup = CSSResultOrNative | CSSResultArray; -/** - * A container for a string of CSS text, that may be used to create a CSSStyleSheet. - * - * CSSResult is the return value of `css`-tagged template literals and - * `unsafeCSS()`. In order to ensure that CSSResults are only created via the - * `css` tag and `unsafeCSS()`, CSSResult cannot be constructed directly. - */ -export declare class CSSResult { - ['_$cssResult$']: boolean; - readonly cssText: string; - private _styleSheet?; - private _strings; - private constructor(); - get styleSheet(): CSSStyleSheet | undefined; - toString(): string; -} -/** - * Wrap a value for interpolation in a {@linkcode css} tagged template literal. - * - * This is unsafe because untrusted CSS text can be used to phone home - * or exfiltrate data to an attacker controlled site. Take care to only use - * this with trusted input. - */ -export declare const unsafeCSS: (value: unknown) => CSSResult; -/** - * A template literal tag which can be used with LitElement's - * {@linkcode LitElement.styles} property to set element styles. - * - * For security reasons, only literal string values and number may be used in - * embedded expressions. To incorporate non-literal values {@linkcode unsafeCSS} - * may be used inside an expression. - */ -export declare const css: (strings: TemplateStringsArray, ...values: (CSSResultGroup | number)[]) => CSSResult; -/** - * Applies the given styles to a `shadowRoot`. When Shadow DOM is - * available but `adoptedStyleSheets` is not, styles are appended to the - * `shadowRoot` to [mimic spec behavior](https://wicg.github.io/construct-stylesheets/#using-constructed-stylesheets). - * Note, when shimming is used, any styles that are subsequently placed into - * the shadowRoot should be placed *before* any shimmed adopted styles. This - * will match spec behavior that gives adopted sheets precedence over styles in - * shadowRoot. - */ -export declare const adoptStyles: (renderRoot: ShadowRoot, styles: Array) => void; -export declare const getCompatibleStyle: (s: CSSResultOrNative) => CSSResultOrNative; -//# sourceMappingURL=css-tag.d.ts.map \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/css-tag.d.ts.map b/tests/node_modules/@lit/reactive-element/css-tag.d.ts.map deleted file mode 100644 index 2939859..0000000 --- a/tests/node_modules/@lit/reactive-element/css-tag.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"css-tag.d.ts","sourceRoot":"","sources":["../src/css-tag.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAOH;;GAEG;AACH,eAAO,MAAM,2BAA2B,EAAE,OAIJ,CAAC;AAEvC;;;;;;GAMG;AACH,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,aAAa,CAAC;AAE1D,MAAM,MAAM,cAAc,GAAG,KAAK,CAAC,iBAAiB,GAAG,cAAc,CAAC,CAAC;AAEvE;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,iBAAiB,GAAG,cAAc,CAAC;AAMhE;;;;;;GAMG;AACH,qBAAa,SAAS;IAEpB,CAAC,cAAc,CAAC,UAAQ;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,OAAO,CAAC,WAAW,CAAC,CAAgB;IACpC,OAAO,CAAC,QAAQ,CAAmC;IAEnD,OAAO;IAgBP,IAAI,UAAU,IAAI,aAAa,GAAG,SAAS,CAoB1C;IAED,QAAQ,IAAI,MAAM;CAGnB;AAyBD;;;;;;GAMG;AACH,eAAO,MAAM,SAAS,UAAW,OAAO,cAKrC,CAAC;AAEJ;;;;;;;GAOG;AACH,eAAO,MAAM,GAAG,YACL,oBAAoB,aAClB,CAAC,cAAc,GAAG,MAAM,CAAC,EAAE,KACrC,SAaF,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,WAAW,eACV,UAAU,UACd,MAAM,iBAAiB,CAAC,SAkBjC,CAAC;AAUF,eAAO,MAAM,kBAAkB,MAGrB,iBAAiB,sBAEwC,CAAC"} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/css-tag.js b/tests/node_modules/@lit/reactive-element/css-tag.js deleted file mode 100644 index 20aee2a..0000000 --- a/tests/node_modules/@lit/reactive-element/css-tag.js +++ /dev/null @@ -1,7 +0,0 @@ -/** - * @license - * Copyright 2019 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -const t=globalThis,e=t.ShadowRoot&&(void 0===t.ShadyCSS||t.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,s=Symbol(),o=new WeakMap;class n{constructor(t,e,o){if(this._$cssResult$=!0,o!==s)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=t,this.t=e}get styleSheet(){let t=this.o;const s=this.t;if(e&&void 0===t){const e=void 0!==s&&1===s.length;e&&(t=o.get(s)),void 0===t&&((this.o=t=new CSSStyleSheet).replaceSync(this.cssText),e&&o.set(s,t))}return t}toString(){return this.cssText}}const r=t=>new n("string"==typeof t?t:t+"",void 0,s),i=(t,...e)=>{const o=1===t.length?t[0]:e.reduce(((e,s,o)=>e+(t=>{if(!0===t._$cssResult$)return t.cssText;if("number"==typeof t)return t;throw Error("Value passed to 'css' function must be a 'css' function result: "+t+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(s)+t[o+1]),t[0]);return new n(o,t,s)},S=(s,o)=>{if(e)s.adoptedStyleSheets=o.map((t=>t instanceof CSSStyleSheet?t:t.styleSheet));else for(const e of o){const o=document.createElement("style"),n=t.litNonce;void 0!==n&&o.setAttribute("nonce",n),o.textContent=e.cssText,s.appendChild(o)}},c=e?t=>t:t=>t instanceof CSSStyleSheet?(t=>{let e="";for(const s of t.cssRules)e+=s.cssText;return r(e)})(t):t;export{n as CSSResult,S as adoptStyles,i as css,c as getCompatibleStyle,e as supportsAdoptingStyleSheets,r as unsafeCSS}; -//# sourceMappingURL=css-tag.js.map diff --git a/tests/node_modules/@lit/reactive-element/css-tag.js.map b/tests/node_modules/@lit/reactive-element/css-tag.js.map deleted file mode 100644 index 327914f..0000000 --- a/tests/node_modules/@lit/reactive-element/css-tag.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"css-tag.js","sources":["src/css-tag.ts"],"sourcesContent":["/**\n * @license\n * Copyright 2019 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\nconst NODE_MODE = false;\n\n// Allows minifiers to rename references to globalThis\nconst global = globalThis;\n\n/**\n * Whether the current browser supports `adoptedStyleSheets`.\n */\nexport const supportsAdoptingStyleSheets: boolean =\n global.ShadowRoot &&\n (global.ShadyCSS === undefined || global.ShadyCSS.nativeShadow) &&\n 'adoptedStyleSheets' in Document.prototype &&\n 'replace' in CSSStyleSheet.prototype;\n\n/**\n * A CSSResult or native CSSStyleSheet.\n *\n * In browsers that support constructible CSS style sheets, CSSStyleSheet\n * object can be used for styling along side CSSResult from the `css`\n * template tag.\n */\nexport type CSSResultOrNative = CSSResult | CSSStyleSheet;\n\nexport type CSSResultArray = Array;\n\n/**\n * A single CSSResult, CSSStyleSheet, or an array or nested arrays of those.\n */\nexport type CSSResultGroup = CSSResultOrNative | CSSResultArray;\n\nconst constructionToken = Symbol();\n\nconst cssTagCache = new WeakMap();\n\n/**\n * A container for a string of CSS text, that may be used to create a CSSStyleSheet.\n *\n * CSSResult is the return value of `css`-tagged template literals and\n * `unsafeCSS()`. In order to ensure that CSSResults are only created via the\n * `css` tag and `unsafeCSS()`, CSSResult cannot be constructed directly.\n */\nexport class CSSResult {\n // This property needs to remain unminified.\n ['_$cssResult$'] = true;\n readonly cssText: string;\n private _styleSheet?: CSSStyleSheet;\n private _strings: TemplateStringsArray | undefined;\n\n private constructor(\n cssText: string,\n strings: TemplateStringsArray | undefined,\n safeToken: symbol\n ) {\n if (safeToken !== constructionToken) {\n throw new Error(\n 'CSSResult is not constructable. Use `unsafeCSS` or `css` instead.'\n );\n }\n this.cssText = cssText;\n this._strings = strings;\n }\n\n // This is a getter so that it's lazy. In practice, this means stylesheets\n // are not created until the first element instance is made.\n get styleSheet(): CSSStyleSheet | undefined {\n // If `supportsAdoptingStyleSheets` is true then we assume CSSStyleSheet is\n // constructable.\n let styleSheet = this._styleSheet;\n const strings = this._strings;\n if (supportsAdoptingStyleSheets && styleSheet === undefined) {\n const cacheable = strings !== undefined && strings.length === 1;\n if (cacheable) {\n styleSheet = cssTagCache.get(strings);\n }\n if (styleSheet === undefined) {\n (this._styleSheet = styleSheet = new CSSStyleSheet()).replaceSync(\n this.cssText\n );\n if (cacheable) {\n cssTagCache.set(strings, styleSheet);\n }\n }\n }\n return styleSheet;\n }\n\n toString(): string {\n return this.cssText;\n }\n}\n\ntype ConstructableCSSResult = CSSResult & {\n new (\n cssText: string,\n strings: TemplateStringsArray | undefined,\n safeToken: symbol\n ): CSSResult;\n};\n\nconst textFromCSSResult = (value: CSSResultGroup | number) => {\n // This property needs to remain unminified.\n if ((value as CSSResult)['_$cssResult$'] === true) {\n return (value as CSSResult).cssText;\n } else if (typeof value === 'number') {\n return value;\n } else {\n throw new Error(\n `Value passed to 'css' function must be a 'css' function result: ` +\n `${value}. Use 'unsafeCSS' to pass non-literal values, but take care ` +\n `to ensure page security.`\n );\n }\n};\n\n/**\n * Wrap a value for interpolation in a {@linkcode css} tagged template literal.\n *\n * This is unsafe because untrusted CSS text can be used to phone home\n * or exfiltrate data to an attacker controlled site. Take care to only use\n * this with trusted input.\n */\nexport const unsafeCSS = (value: unknown) =>\n new (CSSResult as ConstructableCSSResult)(\n typeof value === 'string' ? value : String(value),\n undefined,\n constructionToken\n );\n\n/**\n * A template literal tag which can be used with LitElement's\n * {@linkcode LitElement.styles} property to set element styles.\n *\n * For security reasons, only literal string values and number may be used in\n * embedded expressions. To incorporate non-literal values {@linkcode unsafeCSS}\n * may be used inside an expression.\n */\nexport const css = (\n strings: TemplateStringsArray,\n ...values: (CSSResultGroup | number)[]\n): CSSResult => {\n const cssText =\n strings.length === 1\n ? strings[0]\n : values.reduce(\n (acc, v, idx) => acc + textFromCSSResult(v) + strings[idx + 1],\n strings[0]\n );\n return new (CSSResult as ConstructableCSSResult)(\n cssText,\n strings,\n constructionToken\n );\n};\n\n/**\n * Applies the given styles to a `shadowRoot`. When Shadow DOM is\n * available but `adoptedStyleSheets` is not, styles are appended to the\n * `shadowRoot` to [mimic spec behavior](https://wicg.github.io/construct-stylesheets/#using-constructed-stylesheets).\n * Note, when shimming is used, any styles that are subsequently placed into\n * the shadowRoot should be placed *before* any shimmed adopted styles. This\n * will match spec behavior that gives adopted sheets precedence over styles in\n * shadowRoot.\n */\nexport const adoptStyles = (\n renderRoot: ShadowRoot,\n styles: Array\n) => {\n if (supportsAdoptingStyleSheets) {\n (renderRoot as ShadowRoot).adoptedStyleSheets = styles.map((s) =>\n s instanceof CSSStyleSheet ? s : s.styleSheet!\n );\n } else {\n for (const s of styles) {\n const style = document.createElement('style');\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const nonce = (global as any)['litNonce'];\n if (nonce !== undefined) {\n style.setAttribute('nonce', nonce);\n }\n style.textContent = (s as CSSResult).cssText;\n renderRoot.appendChild(style);\n }\n }\n};\n\nconst cssResultFromStyleSheet = (sheet: CSSStyleSheet) => {\n let cssText = '';\n for (const rule of sheet.cssRules) {\n cssText += rule.cssText;\n }\n return unsafeCSS(cssText);\n};\n\nexport const getCompatibleStyle =\n supportsAdoptingStyleSheets ||\n (NODE_MODE && global.CSSStyleSheet === undefined)\n ? (s: CSSResultOrNative) => s\n : (s: CSSResultOrNative) =>\n s instanceof CSSStyleSheet ? cssResultFromStyleSheet(s) : s;\n"],"names":["global","globalThis","supportsAdoptingStyleSheets","ShadowRoot","undefined","ShadyCSS","nativeShadow","Document","prototype","CSSStyleSheet","constructionToken","Symbol","cssTagCache","WeakMap","CSSResult","constructor","cssText","strings","safeToken","this","Error","_strings","styleSheet","_styleSheet","cacheable","length","get","replaceSync","set","toString","unsafeCSS","value","String","css","values","reduce","acc","v","idx","textFromCSSResult","adoptStyles","renderRoot","styles","adoptedStyleSheets","map","s","style","document","createElement","nonce","setAttribute","textContent","appendChild","getCompatibleStyle","sheet","rule","cssRules","cssResultFromStyleSheet"],"mappings":";;;;;AAMA,MAGMA,EAASC,WAKFC,EACXF,EAAOG,kBACcC,IAApBJ,EAAOK,UAA0BL,EAAOK,SAASC,eAClD,uBAAwBC,SAASC,WACjC,YAAaC,cAAcD,UAkBvBE,EAAoBC,SAEpBC,EAAc,IAAIC,cASXC,EAOX,WAAAC,CACEC,EACAC,EACAC,GAEA,GAVFC,KAAe,cAAI,EAUbD,IAAcR,EAChB,MAAUU,MACR,qEAGJD,KAAKH,QAAUA,EACfG,KAAKE,EAAWJ,CACjB,CAID,cAAIK,GAGF,IAAIA,EAAaH,KAAKI,EACtB,MAAMN,EAAUE,KAAKE,EACrB,GAAInB,QAA8CE,IAAfkB,EAA0B,CAC3D,MAAME,OAAwBpB,IAAZa,GAA4C,IAAnBA,EAAQQ,OAC/CD,IACFF,EAAaV,EAAYc,IAAIT,SAEZb,IAAfkB,KACDH,KAAKI,EAAcD,EAAa,IAAIb,eAAiBkB,YACpDR,KAAKH,SAEHQ,GACFZ,EAAYgB,IAAIX,EAASK,GAG9B,CACD,OAAOA,CACR,CAED,QAAAO,GACE,OAAOV,KAAKH,OACb,EAWH,MAsBac,EAAaC,GACxB,IAAKjB,EACc,iBAAViB,EAAqBA,EAAeA,EAAPC,QACpC5B,EACAM,GAWSuB,EAAM,CACjBhB,KACGiB,KAEH,MAAMlB,EACe,IAAnBC,EAAQQ,OACJR,EAAQ,GACRiB,EAAOC,QACL,CAACC,EAAKC,EAAGC,IAAQF,EA7CD,CAACL,IAEzB,IAA6C,IAAxCA,EAAkC,aACrC,OAAQA,EAAoBf,QACvB,GAAqB,iBAAVe,EAChB,OAAOA,EAEP,MAAUX,MACR,mEACKW,EADL,uFAIH,EAiC8BQ,CAAkBF,GAAKpB,EAAQqB,EAAM,IAC5DrB,EAAQ,IAEhB,OAAO,IAAKH,EACVE,EACAC,EACAP,EACD,EAYU8B,EAAc,CACzBC,EACAC,KAEA,GAAIxC,EACDuC,EAA0BE,mBAAqBD,EAAOE,KAAKC,GAC1DA,aAAapC,cAAgBoC,EAAIA,EAAEvB,kBAGrC,IAAK,MAAMuB,KAAKH,EAAQ,CACtB,MAAMI,EAAQC,SAASC,cAAc,SAE/BC,EAASjD,EAAyB,cAC1BI,IAAV6C,GACFH,EAAMI,aAAa,QAASD,GAE9BH,EAAMK,YAAeN,EAAgB7B,QACrCyB,EAAWW,YAAYN,EACxB,CACF,EAWUO,EACXnD,EAEK2C,GAAyBA,EACzBA,GACCA,aAAapC,cAbW,CAAC6C,IAC/B,IAAItC,EAAU,GACd,IAAK,MAAMuC,KAAQD,EAAME,SACvBxC,GAAWuC,EAAKvC,QAElB,OAAOc,EAAUd,EAAQ,EAQUyC,CAAwBZ,GAAKA"} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/decorators.d.ts b/tests/node_modules/@lit/reactive-element/decorators.d.ts deleted file mode 100644 index 8dfae5d..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators.d.ts +++ /dev/null @@ -1,15 +0,0 @@ -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -export * from './decorators/custom-element.js'; -export * from './decorators/property.js'; -export * from './decorators/state.js'; -export * from './decorators/event-options.js'; -export * from './decorators/query.js'; -export * from './decorators/query-all.js'; -export * from './decorators/query-async.js'; -export * from './decorators/query-assigned-elements.js'; -export * from './decorators/query-assigned-nodes.js'; -//# sourceMappingURL=decorators.d.ts.map \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/decorators.d.ts.map b/tests/node_modules/@lit/reactive-element/decorators.d.ts.map deleted file mode 100644 index 7390791..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"decorators.d.ts","sourceRoot":"","sources":["../src/decorators.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,cAAc,gCAAgC,CAAC;AAC/C,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,yCAAyC,CAAC;AACxD,cAAc,sCAAsC,CAAC"} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/decorators.js b/tests/node_modules/@lit/reactive-element/decorators.js deleted file mode 100644 index 2e316a0..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators.js +++ /dev/null @@ -1,2 +0,0 @@ -export{customElement}from"./decorators/custom-element.js";export{property,standardProperty}from"./decorators/property.js";export{state}from"./decorators/state.js";export{eventOptions}from"./decorators/event-options.js";export{query}from"./decorators/query.js";export{queryAll}from"./decorators/query-all.js";export{queryAsync}from"./decorators/query-async.js";export{queryAssignedElements}from"./decorators/query-assigned-elements.js";export{queryAssignedNodes}from"./decorators/query-assigned-nodes.js"; -//# sourceMappingURL=decorators.js.map diff --git a/tests/node_modules/@lit/reactive-element/decorators.js.map b/tests/node_modules/@lit/reactive-element/decorators.js.map deleted file mode 100644 index e6068f6..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"decorators.js","sources":[],"sourcesContent":[],"names":[],"mappings":""} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/decorators/base.d.ts b/tests/node_modules/@lit/reactive-element/decorators/base.d.ts deleted file mode 100644 index 0d6df5e..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators/base.d.ts +++ /dev/null @@ -1,17 +0,0 @@ -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -/** - * Generates a public interface type that removes private and protected fields. - * This allows accepting otherwise incompatible versions of the type (e.g. from - * multiple copies of the same package in `node_modules`). - */ -export type Interface = { - [K in keyof T]: T[K]; -}; -export type Constructor = { - new (...args: any[]): T; -}; -//# sourceMappingURL=base.d.ts.map \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/decorators/base.d.ts.map b/tests/node_modules/@lit/reactive-element/decorators/base.d.ts.map deleted file mode 100644 index e20abe3..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators/base.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/decorators/base.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;GAIG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,IAAI;KACxB,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI;IAE3B,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;CACzB,CAAC"} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/decorators/base.js b/tests/node_modules/@lit/reactive-element/decorators/base.js deleted file mode 100644 index 32cbc84..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators/base.js +++ /dev/null @@ -1,7 +0,0 @@ -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -const e=(e,t,c)=>(c.configurable=!0,c.enumerable=!0,Reflect.decorate&&"object"!=typeof t&&Object.defineProperty(e,t,c),c);export{e as desc}; -//# sourceMappingURL=base.js.map diff --git a/tests/node_modules/@lit/reactive-element/decorators/base.js.map b/tests/node_modules/@lit/reactive-element/decorators/base.js.map deleted file mode 100644 index 838263a..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators/base.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"base.js","sources":["../src/decorators/base.ts"],"sourcesContent":["/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n/**\n * Generates a public interface type that removes private and protected fields.\n * This allows accepting otherwise incompatible versions of the type (e.g. from\n * multiple copies of the same package in `node_modules`).\n */\nexport type Interface = {\n [K in keyof T]: T[K];\n};\n\nexport type Constructor = {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n new (...args: any[]): T;\n};\n\n/**\n * Wraps up a few best practices when returning a property descriptor from a\n * decorator.\n *\n * Marks the defined property as configurable, and enumerable, and handles\n * the case where we have a busted Reflect.decorate zombiefill (e.g. in Angular\n * apps).\n *\n * @internal\n */\nexport const desc = (\n obj: object,\n name: PropertyKey | ClassAccessorDecoratorContext,\n descriptor: PropertyDescriptor\n) => {\n // For backwards compatibility, we keep them configurable and enumerable.\n descriptor.configurable = true;\n descriptor.enumerable = true;\n if (\n // We check for Reflect.decorate each time, in case the zombiefill\n // is applied via lazy loading some Angular code.\n (Reflect as typeof Reflect & {decorate?: unknown}).decorate &&\n typeof name !== 'object'\n ) {\n // If we're called as a legacy decorator, and Reflect.decorate is present\n // then we have no guarantees that the returned descriptor will be\n // defined on the class, so we must apply it directly ourselves.\n\n Object.defineProperty(obj, name, descriptor);\n }\n return descriptor;\n};\n"],"names":["desc","obj","name","descriptor","configurable","enumerable","Reflect","decorate","Object","defineProperty"],"mappings":";;;;;AA8Ba,MAAAA,EAAO,CAClBC,EACAC,EACAC,KAGAA,EAAWC,cAAe,EAC1BD,EAAWE,YAAa,EAIrBC,QAAkDC,UACnC,iBAATL,GAMPM,OAAOC,eAAeR,EAAKC,EAAMC,GAE5BA"} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/decorators/custom-element.d.ts b/tests/node_modules/@lit/reactive-element/decorators/custom-element.d.ts deleted file mode 100644 index b73b297..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators/custom-element.d.ts +++ /dev/null @@ -1,31 +0,0 @@ -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -import type { Constructor } from './base.js'; -/** - * Allow for custom element classes with private constructors - */ -type CustomElementClass = Omit; -export type CustomElementDecorator = { - (cls: CustomElementClass): void; - (target: CustomElementClass, context: ClassDecoratorContext>): void; -}; -/** - * Class decorator factory that defines the decorated class as a custom element. - * - * ```js - * @customElement('my-element') - * class MyElement extends LitElement { - * render() { - * return html``; - * } - * } - * ``` - * @category Decorator - * @param tagName The tag name of the custom element to define. - */ -export declare const customElement: (tagName: string) => CustomElementDecorator; -export {}; -//# sourceMappingURL=custom-element.d.ts.map \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/decorators/custom-element.d.ts.map b/tests/node_modules/@lit/reactive-element/decorators/custom-element.d.ts.map deleted file mode 100644 index 853d730..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators/custom-element.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"custom-element.d.ts","sourceRoot":"","sources":["../../src/decorators/custom-element.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AASH,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,WAAW,CAAC;AAE3C;;GAEG;AACH,KAAK,kBAAkB,GAAG,IAAI,CAAC,OAAO,WAAW,EAAE,KAAK,CAAC,CAAC;AAE1D,MAAM,MAAM,sBAAsB,GAAG;IAEnC,CAAC,GAAG,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAGhC,CACE,MAAM,EAAE,kBAAkB,EAC1B,OAAO,EAAE,qBAAqB,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,GACvD,IAAI,CAAC;CACT,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,aAAa,YACd,MAAM,KAAG,sBAelB,CAAC"} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/decorators/custom-element.js b/tests/node_modules/@lit/reactive-element/decorators/custom-element.js deleted file mode 100644 index 65b2cdf..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators/custom-element.js +++ /dev/null @@ -1,7 +0,0 @@ -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -const t=t=>(e,o)=>{void 0!==o?o.addInitializer((()=>{customElements.define(t,e)})):customElements.define(t,e)};export{t as customElement}; -//# sourceMappingURL=custom-element.js.map diff --git a/tests/node_modules/@lit/reactive-element/decorators/custom-element.js.map b/tests/node_modules/@lit/reactive-element/decorators/custom-element.js.map deleted file mode 100644 index ae2319e..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators/custom-element.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"custom-element.js","sources":["../src/decorators/custom-element.ts"],"sourcesContent":["/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n/*\n * IMPORTANT: For compatibility with tsickle and the Closure JS compiler, all\n * property decorators (but not class decorators) in this file that have\n * an @ExportDecoratedItems annotation must be defined as a regular function,\n * not an arrow function.\n */\n\nimport type {Constructor} from './base.js';\n\n/**\n * Allow for custom element classes with private constructors\n */\ntype CustomElementClass = Omit;\n\nexport type CustomElementDecorator = {\n // legacy\n (cls: CustomElementClass): void;\n\n // standard\n (\n target: CustomElementClass,\n context: ClassDecoratorContext>\n ): void;\n};\n\n/**\n * Class decorator factory that defines the decorated class as a custom element.\n *\n * ```js\n * @customElement('my-element')\n * class MyElement extends LitElement {\n * render() {\n * return html``;\n * }\n * }\n * ```\n * @category Decorator\n * @param tagName The tag name of the custom element to define.\n */\nexport const customElement =\n (tagName: string): CustomElementDecorator =>\n (\n classOrTarget: CustomElementClass | Constructor,\n context?: ClassDecoratorContext>\n ) => {\n if (context !== undefined) {\n context.addInitializer(() => {\n customElements.define(\n tagName,\n classOrTarget as CustomElementConstructor\n );\n });\n } else {\n customElements.define(tagName, classOrTarget as CustomElementConstructor);\n }\n };\n"],"names":["customElement","tagName","classOrTarget","context","undefined","addInitializer","customElements","define"],"mappings":";;;;;AA6CO,MAAMA,EACVC,GACD,CACEC,EACAC,UAEgBC,IAAZD,EACFA,EAAQE,gBAAe,KACrBC,eAAeC,OACbN,EACAC,EACD,IAGHI,eAAeC,OAAON,EAASC,EAChC"} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/decorators/event-options.d.ts b/tests/node_modules/@lit/reactive-element/decorators/event-options.d.ts deleted file mode 100644 index 6cb6913..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators/event-options.d.ts +++ /dev/null @@ -1,43 +0,0 @@ -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -import type { ReactiveElement } from '../reactive-element.js'; -import type { Interface } from './base.js'; -export type EventOptionsDecorator = { - (proto: Interface, name: PropertyKey): void | any; - any>(value: V, _context: ClassMethodDecoratorContext): void; -}; -/** - * Adds event listener options to a method used as an event listener in a - * lit-html template. - * - * @param options An object that specifies event listener options as accepted by - * `EventTarget#addEventListener` and `EventTarget#removeEventListener`. - * - * Current browsers support the `capture`, `passive`, and `once` options. See: - * https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener#Parameters - * - * ```ts - * class MyElement { - * clicked = false; - * - * render() { - * return html` - *
- * - *
- * `; - * } - * - * @eventOptions({capture: true}) - * _onClick(e) { - * this.clicked = true; - * } - * } - * ``` - * @category Decorator - */ -export declare function eventOptions(options: AddEventListenerOptions): EventOptionsDecorator; -//# sourceMappingURL=event-options.d.ts.map \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/decorators/event-options.d.ts.map b/tests/node_modules/@lit/reactive-element/decorators/event-options.d.ts.map deleted file mode 100644 index 87bbc30..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators/event-options.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"event-options.d.ts","sourceRoot":"","sources":["../../src/decorators/event-options.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AASH,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,wBAAwB,CAAC;AAC5D,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,WAAW,CAAC;AAEzC,MAAM,MAAM,qBAAqB,GAAG;IAElC,CACE,KAAK,EAAE,SAAS,CAAC,eAAe,CAAC,EACjC,IAAI,EAAE,WAAW,GAGhB,IAAI,GAAG,GAAG,CAAC;IAId,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,GAAG,EAC1C,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,2BAA2B,CAAC,CAAC,EAAE,CAAC,CAAC,GAC1C,IAAI,CAAC;CACT,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,YAAY,CAC1B,OAAO,EAAE,uBAAuB,GAC/B,qBAAqB,CAYvB"} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/decorators/event-options.js b/tests/node_modules/@lit/reactive-element/decorators/event-options.js deleted file mode 100644 index 678794f..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators/event-options.js +++ /dev/null @@ -1,7 +0,0 @@ -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -function t(t){return(n,o)=>{const c="function"==typeof n?n:n[o];Object.assign(c,t)}}export{t as eventOptions}; -//# sourceMappingURL=event-options.js.map diff --git a/tests/node_modules/@lit/reactive-element/decorators/event-options.js.map b/tests/node_modules/@lit/reactive-element/decorators/event-options.js.map deleted file mode 100644 index ebf682e..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators/event-options.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"event-options.js","sources":["../src/decorators/event-options.ts"],"sourcesContent":["/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n/*\n * IMPORTANT: For compatibility with tsickle and the Closure JS compiler, all\n * property decorators (but not class decorators) in this file that have\n * an @ExportDecoratedItems annotation must be defined as a regular function,\n * not an arrow function.\n */\n\nimport type {ReactiveElement} from '../reactive-element.js';\nimport type {Interface} from './base.js';\n\nexport type EventOptionsDecorator = {\n // legacy\n (\n proto: Interface,\n name: PropertyKey\n // Note TypeScript requires the return type to be `void|any`\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ): void | any;\n\n // standard\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n any>(\n value: V,\n _context: ClassMethodDecoratorContext\n ): void;\n};\n\n/**\n * Adds event listener options to a method used as an event listener in a\n * lit-html template.\n *\n * @param options An object that specifies event listener options as accepted by\n * `EventTarget#addEventListener` and `EventTarget#removeEventListener`.\n *\n * Current browsers support the `capture`, `passive`, and `once` options. See:\n * https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener#Parameters\n *\n * ```ts\n * class MyElement {\n * clicked = false;\n *\n * render() {\n * return html`\n *
\n * \n *
\n * `;\n * }\n *\n * @eventOptions({capture: true})\n * _onClick(e) {\n * this.clicked = true;\n * }\n * }\n * ```\n * @category Decorator\n */\nexport function eventOptions(\n options: AddEventListenerOptions\n): EventOptionsDecorator {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return ( any>(\n protoOrValue: V,\n nameOrContext: PropertyKey | ClassMethodDecoratorContext\n ) => {\n const method =\n typeof protoOrValue === 'function'\n ? protoOrValue\n : protoOrValue[nameOrContext as keyof ReactiveElement];\n Object.assign(method, options);\n }) as EventOptionsDecorator;\n}\n"],"names":["eventOptions","options","protoOrValue","nameOrContext","method","Object","assign"],"mappings":";;;;;AA+DM,SAAUA,EACdC,GAGA,MAAQ,CACNC,EACAC,KAEA,MAAMC,EACoB,mBAAjBF,EACHA,EACAA,EAAaC,GACnBE,OAAOC,OAAOF,EAAQH,EACvB,CACH"} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/decorators/property.d.ts b/tests/node_modules/@lit/reactive-element/decorators/property.d.ts deleted file mode 100644 index 385a3cb..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators/property.d.ts +++ /dev/null @@ -1,55 +0,0 @@ -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -import { type PropertyDeclaration, type ReactiveElement } from '../reactive-element.js'; -import type { Interface } from './base.js'; -export type PropertyDecorator = { - , V>(target: ClassAccessorDecoratorTarget, context: ClassAccessorDecoratorContext): ClassAccessorDecoratorResult; - , V>(target: (value: V) => void, context: ClassSetterDecoratorContext): (this: C, value: V) => void; - (protoOrDescriptor: Object, name: PropertyKey, descriptor?: PropertyDescriptor): any; -}; -type StandardPropertyContext = (ClassAccessorDecoratorContext | ClassSetterDecoratorContext) & { - metadata: object; -}; -/** - * Wraps a class accessor or setter so that `requestUpdate()` is called with the - * property name and old value when the accessor is set. - */ -export declare const standardProperty: , V>(options: PropertyDeclaration | undefined, target: ClassAccessorDecoratorTarget | ((value: V) => void), context: StandardPropertyContext) => ClassAccessorDecoratorResult | ((this: C, value: V) => void); -/** - * A class field or accessor decorator which creates a reactive property that - * reflects a corresponding attribute value. When a decorated property is set - * the element will update and render. A {@linkcode PropertyDeclaration} may - * optionally be supplied to configure property features. - * - * This decorator should only be used for public fields. As public fields, - * properties should be considered as primarily settable by element users, - * either via attribute or the property itself. - * - * Generally, properties that are changed by the element should be private or - * protected fields and should use the {@linkcode state} decorator. - * - * However, sometimes element code does need to set a public property. This - * should typically only be done in response to user interaction, and an event - * should be fired informing the user; for example, a checkbox sets its - * `checked` property when clicked and fires a `changed` event. Mutating public - * properties should typically not be done for non-primitive (object or array) - * properties. In other cases when an element needs to manage state, a private - * property decorated via the {@linkcode state} decorator should be used. When - * needed, state properties can be initialized via public properties to - * facilitate complex interactions. - * - * ```ts - * class MyElement { - * @property({ type: Boolean }) - * clicked = false; - * } - * ``` - * @category Decorator - * @ExportDecoratedItems - */ -export declare function property(options?: PropertyDeclaration): PropertyDecorator; -export {}; -//# sourceMappingURL=property.d.ts.map \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/decorators/property.d.ts.map b/tests/node_modules/@lit/reactive-element/decorators/property.d.ts.map deleted file mode 100644 index a5a559a..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators/property.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"property.d.ts","sourceRoot":"","sources":["../../src/decorators/property.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AASH,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,eAAe,EAGrB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,WAAW,CAAC;AAyBzC,MAAM,MAAM,iBAAiB,GAAG;IAE9B,CAAC,CAAC,SAAS,SAAS,CAAC,eAAe,CAAC,EAAE,CAAC,EACtC,MAAM,EAAE,4BAA4B,CAAC,CAAC,EAAE,CAAC,CAAC,EAC1C,OAAO,EAAE,6BAA6B,CAAC,CAAC,EAAE,CAAC,CAAC,GAC3C,4BAA4B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAGtC,CAAC,CAAC,SAAS,SAAS,CAAC,eAAe,CAAC,EAAE,CAAC,EACtC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,EAC1B,OAAO,EAAE,2BAA2B,CAAC,CAAC,EAAE,CAAC,CAAC,GACzC,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC;IAG/B,CACE,iBAAiB,EAAE,MAAM,EACzB,IAAI,EAAE,WAAW,EACjB,UAAU,CAAC,EAAE,kBAAkB,GAE9B,GAAG,CAAC;CACR,CAAC;AAkCF,KAAK,uBAAuB,CAAC,CAAC,EAAE,CAAC,IAAI,CACjC,6BAA6B,CAAC,CAAC,EAAE,CAAC,CAAC,GACnC,2BAA2B,CAAC,CAAC,EAAE,CAAC,CAAC,CACpC,GAAG;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAC,CAAC;AAEvB;;;GAGG;AACH,eAAO,MAAM,gBAAgB,oKAEiC,IAAI,2GAEF,IAAI,CAoDnE,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAgB,QAAQ,CAAC,OAAO,CAAC,EAAE,mBAAmB,GAAG,iBAAiB,CA4BzE"} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/decorators/property.js b/tests/node_modules/@lit/reactive-element/decorators/property.js deleted file mode 100644 index 0a93e85..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators/property.js +++ /dev/null @@ -1,7 +0,0 @@ -import{defaultConverter as t,notEqual as e}from"../reactive-element.js"; -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */const o={attribute:!0,type:String,converter:t,reflect:!1,hasChanged:e},r=(t=o,e,r)=>{const{kind:n,metadata:i}=r;let s=globalThis.litPropertyMetadata.get(i);if(void 0===s&&globalThis.litPropertyMetadata.set(i,s=new Map),s.set(r.name,t),"accessor"===n){const{name:o}=r;return{set(r){const n=e.get.call(this);e.set.call(this,r),this.requestUpdate(o,n,t)},init(e){return void 0!==e&&this.C(o,void 0,t),e}}}if("setter"===n){const{name:o}=r;return function(r){const n=this[o];e.call(this,r),this.requestUpdate(o,n,t)}}throw Error("Unsupported decorator location: "+n)};function n(t){return(e,o)=>"object"==typeof o?r(t,e,o):((t,e,o)=>{const r=e.hasOwnProperty(o);return e.constructor.createProperty(o,r?{...t,wrapped:!0}:t),r?Object.getOwnPropertyDescriptor(e,o):void 0})(t,e,o)}export{n as property,r as standardProperty}; -//# sourceMappingURL=property.js.map diff --git a/tests/node_modules/@lit/reactive-element/decorators/property.js.map b/tests/node_modules/@lit/reactive-element/decorators/property.js.map deleted file mode 100644 index e862c4b..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators/property.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"property.js","sources":["../src/decorators/property.ts"],"sourcesContent":["/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n/*\n * IMPORTANT: For compatibility with tsickle and the Closure JS compiler, all\n * property decorators (but not class decorators) in this file that have\n * an @ExportDecoratedItems annotation must be defined as a regular function,\n * not an arrow function.\n */\n\nimport {\n type PropertyDeclaration,\n type ReactiveElement,\n defaultConverter,\n notEqual,\n} from '../reactive-element.js';\nimport type {Interface} from './base.js';\n\nconst DEV_MODE = true;\n\nlet issueWarning: (code: string, warning: string) => void;\n\nif (DEV_MODE) {\n // Ensure warnings are issued only 1x, even if multiple versions of Lit\n // are loaded.\n const issuedWarnings: Set =\n (globalThis.litIssuedWarnings ??= new Set());\n\n // Issue a warning, if we haven't already.\n issueWarning = (code: string, warning: string) => {\n warning += ` See https://lit.dev/msg/${code} for more information.`;\n if (!issuedWarnings.has(warning)) {\n console.warn(warning);\n issuedWarnings.add(warning);\n }\n };\n}\n\n// Overloads for property decorator so that TypeScript can infer the correct\n// return type when a decorator is used as an accessor decorator or a setter\n// decorator.\nexport type PropertyDecorator = {\n // accessor decorator signature\n , V>(\n target: ClassAccessorDecoratorTarget,\n context: ClassAccessorDecoratorContext\n ): ClassAccessorDecoratorResult;\n\n // setter decorator signature\n , V>(\n target: (value: V) => void,\n context: ClassSetterDecoratorContext\n ): (this: C, value: V) => void;\n\n // legacy decorator signature\n (\n protoOrDescriptor: Object,\n name: PropertyKey,\n descriptor?: PropertyDescriptor\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ): any;\n};\n\nconst legacyProperty = (\n options: PropertyDeclaration | undefined,\n proto: Object,\n name: PropertyKey\n) => {\n const hasOwnProperty = proto.hasOwnProperty(name);\n (proto.constructor as typeof ReactiveElement).createProperty(\n name,\n hasOwnProperty ? {...options, wrapped: true} : options\n );\n // For accessors (which have a descriptor on the prototype) we need to\n // return a descriptor, otherwise TypeScript overwrites the descriptor we\n // define in createProperty() with the original descriptor. We don't do this\n // for fields, which don't have a descriptor, because this could overwrite\n // descriptor defined by other decorators.\n return hasOwnProperty\n ? Object.getOwnPropertyDescriptor(proto, name)\n : undefined;\n};\n\n// This is duplicated from a similar variable in reactive-element.ts, but\n// actually makes sense to have this default defined with the decorator, so\n// that different decorators could have different defaults.\nconst defaultPropertyDeclaration: PropertyDeclaration = {\n attribute: true,\n type: String,\n converter: defaultConverter,\n reflect: false,\n hasChanged: notEqual,\n};\n\n// Temporary type, until google3 is on TypeScript 5.2\ntype StandardPropertyContext = (\n | ClassAccessorDecoratorContext\n | ClassSetterDecoratorContext\n) & {metadata: object};\n\n/**\n * Wraps a class accessor or setter so that `requestUpdate()` is called with the\n * property name and old value when the accessor is set.\n */\nexport const standardProperty = , V>(\n options: PropertyDeclaration = defaultPropertyDeclaration,\n target: ClassAccessorDecoratorTarget | ((value: V) => void),\n context: StandardPropertyContext\n): ClassAccessorDecoratorResult | ((this: C, value: V) => void) => {\n const {kind, metadata} = context;\n\n if (DEV_MODE && metadata == null) {\n issueWarning(\n 'missing-class-metadata',\n `The class ${target} is missing decorator metadata. This ` +\n `could mean that you're using a compiler that supports decorators ` +\n `but doesn't support decorator metadata, such as TypeScript 5.1. ` +\n `Please update your compiler.`\n );\n }\n\n // Store the property options\n let properties = globalThis.litPropertyMetadata.get(metadata);\n if (properties === undefined) {\n globalThis.litPropertyMetadata.set(metadata, (properties = new Map()));\n }\n properties.set(context.name, options);\n\n if (kind === 'accessor') {\n // Standard decorators cannot dynamically modify the class, so we can't\n // replace a field with accessors. The user must use the new `accessor`\n // keyword instead.\n const {name} = context;\n return {\n set(this: ReactiveElement, v: V) {\n const oldValue = (\n target as ClassAccessorDecoratorTarget\n ).get.call(this as unknown as C);\n (target as ClassAccessorDecoratorTarget).set.call(\n this as unknown as C,\n v\n );\n this.requestUpdate(name, oldValue, options);\n },\n init(this: ReactiveElement, v: V): V {\n if (v !== undefined) {\n this._$changeProperty(name, undefined, options);\n }\n return v;\n },\n } as unknown as ClassAccessorDecoratorResult;\n } else if (kind === 'setter') {\n const {name} = context;\n return function (this: ReactiveElement, value: V) {\n const oldValue = this[name as keyof ReactiveElement];\n (target as (value: V) => void).call(this, value);\n this.requestUpdate(name, oldValue, options);\n } as unknown as (this: C, value: V) => void;\n }\n throw new Error(`Unsupported decorator location: ${kind}`);\n};\n\n/**\n * A class field or accessor decorator which creates a reactive property that\n * reflects a corresponding attribute value. When a decorated property is set\n * the element will update and render. A {@linkcode PropertyDeclaration} may\n * optionally be supplied to configure property features.\n *\n * This decorator should only be used for public fields. As public fields,\n * properties should be considered as primarily settable by element users,\n * either via attribute or the property itself.\n *\n * Generally, properties that are changed by the element should be private or\n * protected fields and should use the {@linkcode state} decorator.\n *\n * However, sometimes element code does need to set a public property. This\n * should typically only be done in response to user interaction, and an event\n * should be fired informing the user; for example, a checkbox sets its\n * `checked` property when clicked and fires a `changed` event. Mutating public\n * properties should typically not be done for non-primitive (object or array)\n * properties. In other cases when an element needs to manage state, a private\n * property decorated via the {@linkcode state} decorator should be used. When\n * needed, state properties can be initialized via public properties to\n * facilitate complex interactions.\n *\n * ```ts\n * class MyElement {\n * @property({ type: Boolean })\n * clicked = false;\n * }\n * ```\n * @category Decorator\n * @ExportDecoratedItems\n */\nexport function property(options?: PropertyDeclaration): PropertyDecorator {\n return , V>(\n protoOrTarget:\n | object\n | ClassAccessorDecoratorTarget\n | ((value: V) => void),\n nameOrContext:\n | PropertyKey\n | ClassAccessorDecoratorContext\n | ClassSetterDecoratorContext\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ): any => {\n return (\n typeof nameOrContext === 'object'\n ? standardProperty(\n options,\n protoOrTarget as\n | ClassAccessorDecoratorTarget\n | ((value: V) => void),\n nameOrContext as StandardPropertyContext\n )\n : legacyProperty(\n options,\n protoOrTarget as Object,\n nameOrContext as PropertyKey\n )\n ) as PropertyDecorator;\n };\n}\n"],"names":["defaultPropertyDeclaration","attribute","type","String","converter","defaultConverter","reflect","hasChanged","notEqual","standardProperty","options","target","context","kind","metadata","properties","globalThis","litPropertyMetadata","get","undefined","set","Map","name","v","oldValue","call","this","requestUpdate","init","_$changeProperty","value","Error","property","protoOrTarget","nameOrContext","proto","hasOwnProperty","constructor","createProperty","wrapped","Object","getOwnPropertyDescriptor","legacyProperty"],"mappings":";;;;;GAkEA,MAuBMA,EAAkD,CACtDC,WAAW,EACXC,KAAMC,OACNC,UAAWC,EACXC,SAAS,EACTC,WAAYC,GAaDC,EAAmB,CAC9BC,EAA+BV,EAC/BW,EACAC,KAEA,MAAMC,KAACA,EAAIC,SAAEA,GAAYF,EAazB,IAAIG,EAAaC,WAAWC,oBAAoBC,IAAIJ,GAMpD,QALmBK,IAAfJ,GACFC,WAAWC,oBAAoBG,IAAIN,EAAWC,EAAa,IAAIM,KAEjEN,EAAWK,IAAIR,EAAQU,KAAMZ,GAEhB,aAATG,EAAqB,CAIvB,MAAMS,KAACA,GAAQV,EACf,MAAO,CACL,GAAAQ,CAA2BG,GACzB,MAAMC,EACJb,EACAO,IAAIO,KAAKC,MACVf,EAA8CS,IAAIK,KACjDC,KACAH,GAEFG,KAAKC,cAAcL,EAAME,EAAUd,EACpC,EACD,IAAAkB,CAA4BL,GAI1B,YAHUJ,IAANI,GACFG,KAAKG,EAAiBP,OAAMH,EAAWT,GAElCa,CACR,EAEJ,CAAM,GAAa,WAATV,EAAmB,CAC5B,MAAMS,KAACA,GAAQV,EACf,OAAO,SAAiCkB,GACtC,MAAMN,EAAWE,KAAKJ,GACrBX,EAA8Bc,KAAKC,KAAMI,GAC1CJ,KAAKC,cAAcL,EAAME,EAAUd,EACrC,CACD,CACD,MAAUqB,MAAM,mCAAmClB,EAAO,EAmCtD,SAAUmB,EAAStB,GACvB,MAAO,CACLuB,EAIAC,IAO2B,iBAAlBA,EACHzB,EACEC,EACAuB,EAGAC,GAtJW,EACrBxB,EACAyB,EACAb,KAEA,MAAMc,EAAiBD,EAAMC,eAAed,GAU5C,OATCa,EAAME,YAAuCC,eAC5ChB,EACAc,EAAiB,IAAI1B,EAAS6B,SAAS,GAAQ7B,GAO1C0B,EACHI,OAAOC,yBAAyBN,EAAOb,QACvCH,CAAS,EAuILuB,CACEhC,EACAuB,EACAC,EAIZ"} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/decorators/query-all.d.ts b/tests/node_modules/@lit/reactive-element/decorators/query-all.d.ts deleted file mode 100644 index af0fc05..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators/query-all.d.ts +++ /dev/null @@ -1,37 +0,0 @@ -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -import type { ReactiveElement } from '../reactive-element.js'; -import { type Interface } from './base.js'; -export type QueryAllDecorator = { - (proto: Interface, name: PropertyKey, descriptor?: PropertyDescriptor): void | any; - , V extends NodeList>(value: ClassAccessorDecoratorTarget, context: ClassAccessorDecoratorContext): ClassAccessorDecoratorResult; -}; -/** - * A property decorator that converts a class property into a getter - * that executes a querySelectorAll on the element's renderRoot. - * - * @param selector A DOMString containing one or more selectors to match. - * - * See: - * https://developer.mozilla.org/en-US/docs/Web/API/Document/querySelectorAll - * - * ```ts - * class MyElement { - * @queryAll('div') - * divs: NodeListOf; - * - * render() { - * return html` - *
- *
- * `; - * } - * } - * ``` - * @category Decorator - */ -export declare function queryAll(selector: string): QueryAllDecorator; -//# sourceMappingURL=query-all.d.ts.map \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/decorators/query-all.d.ts.map b/tests/node_modules/@lit/reactive-element/decorators/query-all.d.ts.map deleted file mode 100644 index f46ee6b..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators/query-all.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"query-all.d.ts","sourceRoot":"","sources":["../../src/decorators/query-all.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAQH,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAO,KAAK,SAAS,EAAC,MAAM,WAAW,CAAC;AAE/C,MAAM,MAAM,iBAAiB,GAAG;IAE9B,CACE,KAAK,EAAE,SAAS,CAAC,eAAe,CAAC,EACjC,IAAI,EAAE,WAAW,EACjB,UAAU,CAAC,EAAE,kBAAkB,GAG9B,IAAI,GAAG,GAAG,CAAC;IAGd,CAAC,CAAC,SAAS,SAAS,CAAC,eAAe,CAAC,EAAE,CAAC,SAAS,QAAQ,EACvD,KAAK,EAAE,4BAA4B,CAAC,CAAC,EAAE,CAAC,CAAC,EACzC,OAAO,EAAE,6BAA6B,CAAC,CAAC,EAAE,CAAC,CAAC,GAC3C,4BAA4B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;CACvC,CAAC;AAMF;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,iBAAiB,CAa5D"} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/decorators/query-all.js b/tests/node_modules/@lit/reactive-element/decorators/query-all.js deleted file mode 100644 index e149a9f..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators/query-all.js +++ /dev/null @@ -1,8 +0,0 @@ -import{desc as t}from"./base.js"; -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -let e;function r(r){return(n,o)=>t(n,o,{get(){return(this.renderRoot??(e??=document.createDocumentFragment())).querySelectorAll(r)}})}export{r as queryAll}; -//# sourceMappingURL=query-all.js.map diff --git a/tests/node_modules/@lit/reactive-element/decorators/query-all.js.map b/tests/node_modules/@lit/reactive-element/decorators/query-all.js.map deleted file mode 100644 index d913345..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators/query-all.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"query-all.js","sources":["../src/decorators/query-all.ts"],"sourcesContent":["/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n/*\n * IMPORTANT: For compatibility with tsickle and the Closure JS compiler, all\n * property decorators (but not class decorators) in this file that have\n * an @ExportDecoratedItems annotation must be defined as a regular function,\n * not an arrow function.\n */\nimport type {ReactiveElement} from '../reactive-element.js';\nimport {desc, type Interface} from './base.js';\n\nexport type QueryAllDecorator = {\n // legacy\n (\n proto: Interface,\n name: PropertyKey,\n descriptor?: PropertyDescriptor\n // Note TypeScript requires the return type to be `void|any`\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ): void | any;\n\n // standard\n , V extends NodeList>(\n value: ClassAccessorDecoratorTarget,\n context: ClassAccessorDecoratorContext\n ): ClassAccessorDecoratorResult;\n};\n\n// Shared fragment used to generate empty NodeLists when a render root is\n// undefined\nlet fragment: DocumentFragment;\n\n/**\n * A property decorator that converts a class property into a getter\n * that executes a querySelectorAll on the element's renderRoot.\n *\n * @param selector A DOMString containing one or more selectors to match.\n *\n * See:\n * https://developer.mozilla.org/en-US/docs/Web/API/Document/querySelectorAll\n *\n * ```ts\n * class MyElement {\n * @queryAll('div')\n * divs: NodeListOf;\n *\n * render() {\n * return html`\n *
\n *
\n * `;\n * }\n * }\n * ```\n * @category Decorator\n */\nexport function queryAll(selector: string): QueryAllDecorator {\n return ((\n obj: object,\n name: PropertyKey | ClassAccessorDecoratorContext\n ) => {\n return desc(obj, name, {\n get(this: ReactiveElement) {\n const container =\n this.renderRoot ?? (fragment ??= document.createDocumentFragment());\n return container.querySelectorAll(selector);\n },\n });\n }) as QueryAllDecorator;\n}\n"],"names":["fragment","queryAll","selector","obj","name","desc","get","this","renderRoot","document","createDocumentFragment","querySelectorAll"],"mappings":";;;;;;AAkCA,IAAIA,EA0BE,SAAUC,EAASC,GACvB,MAAQ,CACNC,EACAC,IAEOC,EAAKF,EAAKC,EAAM,CACrB,GAAAE,GAGE,OADEC,KAAKC,aAAeR,IAAaS,SAASC,2BAC3BC,iBAAiBT,EACnC,GAGP"} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/decorators/query-assigned-elements.d.ts b/tests/node_modules/@lit/reactive-element/decorators/query-assigned-elements.d.ts deleted file mode 100644 index 309cf89..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators/query-assigned-elements.d.ts +++ /dev/null @@ -1,55 +0,0 @@ -/** - * @license - * Copyright 2021 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -import type { ReactiveElement } from '../reactive-element.js'; -import type { QueryAssignedNodesOptions } from './query-assigned-nodes.js'; -import { type Interface } from './base.js'; -export type QueryAssignedElementsDecorator = { - (proto: Interface, name: PropertyKey, descriptor?: PropertyDescriptor): void | any; - , V extends Array>(value: ClassAccessorDecoratorTarget, context: ClassAccessorDecoratorContext): ClassAccessorDecoratorResult; -}; -/** - * Options for the {@linkcode queryAssignedElements} decorator. Extends the - * options that can be passed into - * [HTMLSlotElement.assignedElements](https://developer.mozilla.org/en-US/docs/Web/API/HTMLSlotElement/assignedElements). - */ -export interface QueryAssignedElementsOptions extends QueryAssignedNodesOptions { - /** - * CSS selector used to filter the elements returned. For example, a selector - * of `".item"` will only include elements with the `item` class. - */ - selector?: string; -} -/** - * A property decorator that converts a class property into a getter that - * returns the `assignedElements` of the given `slot`. Provides a declarative - * way to use - * [`HTMLSlotElement.assignedElements`](https://developer.mozilla.org/en-US/docs/Web/API/HTMLSlotElement/assignedElements). - * - * Can be passed an optional {@linkcode QueryAssignedElementsOptions} object. - * - * Example usage: - * ```ts - * class MyElement { - * @queryAssignedElements({ slot: 'list' }) - * listItems!: Array; - * @queryAssignedElements() - * unnamedSlotEls!: Array; - * - * render() { - * return html` - * - * - * `; - * } - * } - * ``` - * - * Note, the type of this property should be annotated as `Array`. - * - * @category Decorator - */ -export declare function queryAssignedElements(options?: QueryAssignedElementsOptions): QueryAssignedElementsDecorator; -//# sourceMappingURL=query-assigned-elements.d.ts.map \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/decorators/query-assigned-elements.d.ts.map b/tests/node_modules/@lit/reactive-element/decorators/query-assigned-elements.d.ts.map deleted file mode 100644 index c23e999..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators/query-assigned-elements.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"query-assigned-elements.d.ts","sourceRoot":"","sources":["../../src/decorators/query-assigned-elements.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AASH,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,wBAAwB,CAAC;AAC5D,OAAO,KAAK,EAAC,yBAAyB,EAAC,MAAM,2BAA2B,CAAC;AACzE,OAAO,EAAO,KAAK,SAAS,EAAC,MAAM,WAAW,CAAC;AAE/C,MAAM,MAAM,8BAA8B,GAAG;IAE3C,CACE,KAAK,EAAE,SAAS,CAAC,eAAe,CAAC,EACjC,IAAI,EAAE,WAAW,EACjB,UAAU,CAAC,EAAE,kBAAkB,GAG9B,IAAI,GAAG,GAAG,CAAC;IAGd,CAAC,CAAC,SAAS,SAAS,CAAC,eAAe,CAAC,EAAE,CAAC,SAAS,KAAK,CAAC,OAAO,CAAC,EAC7D,KAAK,EAAE,4BAA4B,CAAC,CAAC,EAAE,CAAC,CAAC,EACzC,OAAO,EAAE,6BAA6B,CAAC,CAAC,EAAE,CAAC,CAAC,GAC3C,4BAA4B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;CACvC,CAAC;AAEF;;;;GAIG;AACH,MAAM,WAAW,4BACf,SAAQ,yBAAyB;IACjC;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,CAAC,EAAE,4BAA4B,GACrC,8BAA8B,CAoBhC"} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/decorators/query-assigned-elements.js b/tests/node_modules/@lit/reactive-element/decorators/query-assigned-elements.js deleted file mode 100644 index ddedfa6..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators/query-assigned-elements.js +++ /dev/null @@ -1,7 +0,0 @@ -import{desc as t}from"./base.js"; -/** - * @license - * Copyright 2021 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */function o(o){return(e,n)=>{const{slot:r,selector:s}=o??{},c="slot"+(r?`[name=${r}]`:":not([name])");return t(e,n,{get(){const t=this.renderRoot?.querySelector(c),e=t?.assignedElements(o)??[];return void 0===s?e:e.filter((t=>t.matches(s)))}})}}export{o as queryAssignedElements}; -//# sourceMappingURL=query-assigned-elements.js.map diff --git a/tests/node_modules/@lit/reactive-element/decorators/query-assigned-elements.js.map b/tests/node_modules/@lit/reactive-element/decorators/query-assigned-elements.js.map deleted file mode 100644 index d7225d1..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators/query-assigned-elements.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"query-assigned-elements.js","sources":["../src/decorators/query-assigned-elements.ts"],"sourcesContent":["/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n/*\n * IMPORTANT: For compatibility with tsickle and the Closure JS compiler, all\n * property decorators (but not class decorators) in this file that have\n * an @ExportDecoratedItems annotation must be defined as a regular function,\n * not an arrow function.\n */\n\nimport type {ReactiveElement} from '../reactive-element.js';\nimport type {QueryAssignedNodesOptions} from './query-assigned-nodes.js';\nimport {desc, type Interface} from './base.js';\n\nexport type QueryAssignedElementsDecorator = {\n // legacy\n (\n proto: Interface,\n name: PropertyKey,\n descriptor?: PropertyDescriptor\n // Note TypeScript requires the return type to be `void|any`\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ): void | any;\n\n // standard\n , V extends Array>(\n value: ClassAccessorDecoratorTarget,\n context: ClassAccessorDecoratorContext\n ): ClassAccessorDecoratorResult;\n};\n\n/**\n * Options for the {@linkcode queryAssignedElements} decorator. Extends the\n * options that can be passed into\n * [HTMLSlotElement.assignedElements](https://developer.mozilla.org/en-US/docs/Web/API/HTMLSlotElement/assignedElements).\n */\nexport interface QueryAssignedElementsOptions\n extends QueryAssignedNodesOptions {\n /**\n * CSS selector used to filter the elements returned. For example, a selector\n * of `\".item\"` will only include elements with the `item` class.\n */\n selector?: string;\n}\n\n/**\n * A property decorator that converts a class property into a getter that\n * returns the `assignedElements` of the given `slot`. Provides a declarative\n * way to use\n * [`HTMLSlotElement.assignedElements`](https://developer.mozilla.org/en-US/docs/Web/API/HTMLSlotElement/assignedElements).\n *\n * Can be passed an optional {@linkcode QueryAssignedElementsOptions} object.\n *\n * Example usage:\n * ```ts\n * class MyElement {\n * @queryAssignedElements({ slot: 'list' })\n * listItems!: Array;\n * @queryAssignedElements()\n * unnamedSlotEls!: Array;\n *\n * render() {\n * return html`\n * \n * \n * `;\n * }\n * }\n * ```\n *\n * Note, the type of this property should be annotated as `Array`.\n *\n * @category Decorator\n */\nexport function queryAssignedElements(\n options?: QueryAssignedElementsOptions\n): QueryAssignedElementsDecorator {\n return (>(\n obj: object,\n name: PropertyKey | ClassAccessorDecoratorContext\n ) => {\n const {slot, selector} = options ?? {};\n const slotSelector = `slot${slot ? `[name=${slot}]` : ':not([name])'}`;\n return desc(obj, name, {\n get(this: ReactiveElement): V {\n const slotEl =\n this.renderRoot?.querySelector(slotSelector);\n const elements = slotEl?.assignedElements(options) ?? [];\n return (\n selector === undefined\n ? elements\n : elements.filter((node) => node.matches(selector))\n ) as V;\n },\n });\n }) as QueryAssignedElementsDecorator;\n}\n"],"names":["queryAssignedElements","options","obj","name","slot","selector","slotSelector","desc","get","slotEl","this","renderRoot","querySelector","elements","assignedElements","undefined","filter","node","matches"],"mappings":";;;;;GA6EM,SAAUA,EACdC,GAEA,MAAQ,CACNC,EACAC,KAEA,MAAMC,KAACA,EAAIC,SAAEA,GAAYJ,GAAW,CAAA,EAC9BK,EAAe,QAAOF,EAAO,SAASA,KAAU,gBACtD,OAAOG,EAAKL,EAAKC,EAAM,CACrB,GAAAK,GACE,MAAMC,EACJC,KAAKC,YAAYC,cAA+BN,GAC5CO,EAAWJ,GAAQK,iBAAiBb,IAAY,GACtD,YACec,IAAbV,EACIQ,EACAA,EAASG,QAAQC,GAASA,EAAKC,QAAQb,IAE9C,GAEJ,CACH"} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/decorators/query-assigned-nodes.d.ts b/tests/node_modules/@lit/reactive-element/decorators/query-assigned-nodes.d.ts deleted file mode 100644 index 7aa845e..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators/query-assigned-nodes.d.ts +++ /dev/null @@ -1,49 +0,0 @@ -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -import type { ReactiveElement } from '../reactive-element.js'; -import { type Interface } from './base.js'; -/** - * Options for the {@linkcode queryAssignedNodes} decorator. Extends the options - * that can be passed into [HTMLSlotElement.assignedNodes](https://developer.mozilla.org/en-US/docs/Web/API/HTMLSlotElement/assignedNodes). - */ -export interface QueryAssignedNodesOptions extends AssignedNodesOptions { - /** - * Name of the slot to query. Leave empty for the default slot. - */ - slot?: string; -} -export type QueryAssignedNodesDecorator = { - (proto: Interface, name: PropertyKey, descriptor?: PropertyDescriptor): void | any; - , V extends Array>(value: ClassAccessorDecoratorTarget, context: ClassAccessorDecoratorContext): ClassAccessorDecoratorResult; -}; -/** - * A property decorator that converts a class property into a getter that - * returns the `assignedNodes` of the given `slot`. - * - * Can be passed an optional {@linkcode QueryAssignedNodesOptions} object. - * - * Example usage: - * ```ts - * class MyElement { - * @queryAssignedNodes({slot: 'list', flatten: true}) - * listItems!: Array; - * - * render() { - * return html` - * - * `; - * } - * } - * ``` - * - * Note the type of this property should be annotated as `Array`. Use the - * queryAssignedElements decorator to list only elements, and optionally filter - * the element list using a CSS selector. - * - * @category Decorator - */ -export declare function queryAssignedNodes(options?: QueryAssignedNodesOptions): QueryAssignedNodesDecorator; -//# sourceMappingURL=query-assigned-nodes.d.ts.map \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/decorators/query-assigned-nodes.d.ts.map b/tests/node_modules/@lit/reactive-element/decorators/query-assigned-nodes.d.ts.map deleted file mode 100644 index 7c90b71..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators/query-assigned-nodes.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"query-assigned-nodes.d.ts","sourceRoot":"","sources":["../../src/decorators/query-assigned-nodes.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAQH,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAO,KAAK,SAAS,EAAC,MAAM,WAAW,CAAC;AAE/C;;;GAGG;AACH,MAAM,WAAW,yBAA0B,SAAQ,oBAAoB;IACrE;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,MAAM,2BAA2B,GAAG;IAExC,CACE,KAAK,EAAE,SAAS,CAAC,eAAe,CAAC,EACjC,IAAI,EAAE,WAAW,EACjB,UAAU,CAAC,EAAE,kBAAkB,GAG9B,IAAI,GAAG,GAAG,CAAC;IAGd,CAAC,CAAC,SAAS,SAAS,CAAC,eAAe,CAAC,EAAE,CAAC,SAAS,KAAK,CAAC,IAAI,CAAC,EAC1D,KAAK,EAAE,4BAA4B,CAAC,CAAC,EAAE,CAAC,CAAC,EACzC,OAAO,EAAE,6BAA6B,CAAC,CAAC,EAAE,CAAC,CAAC,GAC3C,4BAA4B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;CACvC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,CAAC,EAAE,yBAAyB,GAClC,2BAA2B,CAgB7B"} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/decorators/query-assigned-nodes.js b/tests/node_modules/@lit/reactive-element/decorators/query-assigned-nodes.js deleted file mode 100644 index 1baea67..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators/query-assigned-nodes.js +++ /dev/null @@ -1,7 +0,0 @@ -import{desc as t}from"./base.js"; -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */function n(n){return(o,r)=>{const{slot:e}=n??{},s="slot"+(e?`[name=${e}]`:":not([name])");return t(o,r,{get(){const t=this.renderRoot?.querySelector(s);return t?.assignedNodes(n)??[]}})}}export{n as queryAssignedNodes}; -//# sourceMappingURL=query-assigned-nodes.js.map diff --git a/tests/node_modules/@lit/reactive-element/decorators/query-assigned-nodes.js.map b/tests/node_modules/@lit/reactive-element/decorators/query-assigned-nodes.js.map deleted file mode 100644 index b770587..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators/query-assigned-nodes.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"query-assigned-nodes.js","sources":["../src/decorators/query-assigned-nodes.ts"],"sourcesContent":["/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n/*\n * IMPORTANT: For compatibility with tsickle and the Closure JS compiler, all\n * property decorators (but not class decorators) in this file that have\n * an @ExportDecoratedItems annotation must be defined as a regular function,\n * not an arrow function.\n */\nimport type {ReactiveElement} from '../reactive-element.js';\nimport {desc, type Interface} from './base.js';\n\n/**\n * Options for the {@linkcode queryAssignedNodes} decorator. Extends the options\n * that can be passed into [HTMLSlotElement.assignedNodes](https://developer.mozilla.org/en-US/docs/Web/API/HTMLSlotElement/assignedNodes).\n */\nexport interface QueryAssignedNodesOptions extends AssignedNodesOptions {\n /**\n * Name of the slot to query. Leave empty for the default slot.\n */\n slot?: string;\n}\n\nexport type QueryAssignedNodesDecorator = {\n // legacy\n (\n proto: Interface,\n name: PropertyKey,\n descriptor?: PropertyDescriptor\n // Note TypeScript requires the return type to be `void|any`\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ): void | any;\n\n // standard\n , V extends Array>(\n value: ClassAccessorDecoratorTarget,\n context: ClassAccessorDecoratorContext\n ): ClassAccessorDecoratorResult;\n};\n\n/**\n * A property decorator that converts a class property into a getter that\n * returns the `assignedNodes` of the given `slot`.\n *\n * Can be passed an optional {@linkcode QueryAssignedNodesOptions} object.\n *\n * Example usage:\n * ```ts\n * class MyElement {\n * @queryAssignedNodes({slot: 'list', flatten: true})\n * listItems!: Array;\n *\n * render() {\n * return html`\n * \n * `;\n * }\n * }\n * ```\n *\n * Note the type of this property should be annotated as `Array`. Use the\n * queryAssignedElements decorator to list only elements, and optionally filter\n * the element list using a CSS selector.\n *\n * @category Decorator\n */\nexport function queryAssignedNodes(\n options?: QueryAssignedNodesOptions\n): QueryAssignedNodesDecorator {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return (>(\n obj: object,\n name: PropertyKey | ClassAccessorDecoratorContext\n ) => {\n const {slot} = options ?? {};\n const slotSelector = `slot${slot ? `[name=${slot}]` : ':not([name])'}`;\n return desc(obj, name, {\n get(this: ReactiveElement): V {\n const slotEl =\n this.renderRoot?.querySelector(slotSelector);\n return (slotEl?.assignedNodes(options) ?? []) as unknown as V;\n },\n });\n }) as QueryAssignedNodesDecorator;\n}\n"],"names":["queryAssignedNodes","options","obj","name","slot","slotSelector","desc","get","slotEl","this","renderRoot","querySelector","assignedNodes"],"mappings":";;;;;GAqEM,SAAUA,EACdC,GAGA,MAAQ,CACNC,EACAC,KAEA,MAAMC,KAACA,GAAQH,GAAW,GACpBI,EAAe,QAAOD,EAAO,SAASA,KAAU,gBACtD,OAAOE,EAAKJ,EAAKC,EAAM,CACrB,GAAAI,GACE,MAAMC,EACJC,KAAKC,YAAYC,cAA+BN,GAClD,OAAQG,GAAQI,cAAcX,IAAY,EAC3C,GAEJ,CACH"} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/decorators/query-async.d.ts b/tests/node_modules/@lit/reactive-element/decorators/query-async.d.ts deleted file mode 100644 index 062fdc4..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators/query-async.d.ts +++ /dev/null @@ -1,45 +0,0 @@ -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -import type { ReactiveElement } from '../reactive-element.js'; -import { type Interface } from './base.js'; -export type QueryAsyncDecorator = { - (proto: Interface, name: PropertyKey, descriptor?: PropertyDescriptor): void | any; - , V extends Promise>(value: ClassAccessorDecoratorTarget, context: ClassAccessorDecoratorContext): ClassAccessorDecoratorResult; -}; -/** - * A property decorator that converts a class property into a getter that - * returns a promise that resolves to the result of a querySelector on the - * element's renderRoot done after the element's `updateComplete` promise - * resolves. When the queried property may change with element state, this - * decorator can be used instead of requiring users to await the - * `updateComplete` before accessing the property. - * - * @param selector A DOMString containing one or more selectors to match. - * - * See: https://developer.mozilla.org/en-US/docs/Web/API/Document/querySelector - * - * ```ts - * class MyElement { - * @queryAsync('#first') - * first: Promise; - * - * render() { - * return html` - *
- *
- * `; - * } - * } - * - * // external usage - * async doSomethingWithFirst() { - * (await aMyElement.first).doSomething(); - * } - * ``` - * @category Decorator - */ -export declare function queryAsync(selector: string): QueryAsyncDecorator; -//# sourceMappingURL=query-async.d.ts.map \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/decorators/query-async.d.ts.map b/tests/node_modules/@lit/reactive-element/decorators/query-async.d.ts.map deleted file mode 100644 index cc8a8ae..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators/query-async.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"query-async.d.ts","sourceRoot":"","sources":["../../src/decorators/query-async.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AASH,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAO,KAAK,SAAS,EAAC,MAAM,WAAW,CAAC;AAE/C,MAAM,MAAM,mBAAmB,GAAG;IAEhC,CACE,KAAK,EAAE,SAAS,CAAC,eAAe,CAAC,EACjC,IAAI,EAAE,WAAW,EACjB,UAAU,CAAC,EAAE,kBAAkB,GAG9B,IAAI,GAAG,GAAG,CAAC;IAGd,CAAC,CAAC,SAAS,SAAS,CAAC,eAAe,CAAC,EAAE,CAAC,SAAS,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,EACtE,KAAK,EAAE,4BAA4B,CAAC,CAAC,EAAE,CAAC,CAAC,EACzC,OAAO,EAAE,6BAA6B,CAAC,CAAC,EAAE,CAAC,CAAC,GAC3C,4BAA4B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;CACvC,CAAC;AAOF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,uBAY1C"} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/decorators/query-async.js b/tests/node_modules/@lit/reactive-element/decorators/query-async.js deleted file mode 100644 index 118829b..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators/query-async.js +++ /dev/null @@ -1,8 +0,0 @@ -import{desc as t}from"./base.js"; -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -function r(r){return(n,e)=>t(n,e,{async get(){return await this.updateComplete,this.renderRoot?.querySelector(r)??null}})}export{r as queryAsync}; -//# sourceMappingURL=query-async.js.map diff --git a/tests/node_modules/@lit/reactive-element/decorators/query-async.js.map b/tests/node_modules/@lit/reactive-element/decorators/query-async.js.map deleted file mode 100644 index 5746fcf..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators/query-async.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"query-async.js","sources":["../src/decorators/query-async.ts"],"sourcesContent":["/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n/*\n * IMPORTANT: For compatibility with tsickle and the Closure JS compiler, all\n * property decorators (but not class decorators) in this file that have\n * an @ExportDecoratedItems annotation must be defined as a regular function,\n * not an arrow function.\n */\n\nimport type {ReactiveElement} from '../reactive-element.js';\nimport {desc, type Interface} from './base.js';\n\nexport type QueryAsyncDecorator = {\n // legacy\n (\n proto: Interface,\n name: PropertyKey,\n descriptor?: PropertyDescriptor\n // Note TypeScript requires the return type to be `void|any`\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ): void | any;\n\n // standard\n , V extends Promise>(\n value: ClassAccessorDecoratorTarget,\n context: ClassAccessorDecoratorContext\n ): ClassAccessorDecoratorResult;\n};\n\n// Note, in the future, we may extend this decorator to support the use case\n// where the queried element may need to do work to become ready to interact\n// with (e.g. load some implementation code). If so, we might elect to\n// add a second argument defining a function that can be run to make the\n// queried element loaded/updated/ready.\n/**\n * A property decorator that converts a class property into a getter that\n * returns a promise that resolves to the result of a querySelector on the\n * element's renderRoot done after the element's `updateComplete` promise\n * resolves. When the queried property may change with element state, this\n * decorator can be used instead of requiring users to await the\n * `updateComplete` before accessing the property.\n *\n * @param selector A DOMString containing one or more selectors to match.\n *\n * See: https://developer.mozilla.org/en-US/docs/Web/API/Document/querySelector\n *\n * ```ts\n * class MyElement {\n * @queryAsync('#first')\n * first: Promise;\n *\n * render() {\n * return html`\n *
\n *
\n * `;\n * }\n * }\n *\n * // external usage\n * async doSomethingWithFirst() {\n * (await aMyElement.first).doSomething();\n * }\n * ```\n * @category Decorator\n */\nexport function queryAsync(selector: string) {\n return ((\n obj: object,\n name: PropertyKey | ClassAccessorDecoratorContext\n ) => {\n return desc(obj, name, {\n async get(this: ReactiveElement) {\n await this.updateComplete;\n return this.renderRoot?.querySelector(selector) ?? null;\n },\n });\n }) as QueryAsyncDecorator;\n}\n"],"names":["queryAsync","selector","obj","name","desc","get","this","updateComplete","renderRoot","querySelector"],"mappings":";;;;;;AAsEM,SAAUA,EAAWC,GACzB,MAAQ,CACNC,EACAC,IAEOC,EAAKF,EAAKC,EAAM,CACrB,SAAME,GAEJ,aADMC,KAAKC,eACJD,KAAKE,YAAYC,cAAcR,IAAa,IACpD,GAGP"} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/decorators/query.d.ts b/tests/node_modules/@lit/reactive-element/decorators/query.d.ts deleted file mode 100644 index 06c860c..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators/query.d.ts +++ /dev/null @@ -1,38 +0,0 @@ -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -import type { ReactiveElement } from '../reactive-element.js'; -import { type Interface } from './base.js'; -export type QueryDecorator = { - (proto: Interface, name: PropertyKey, descriptor?: PropertyDescriptor): void | any; - , V extends Element | null>(value: ClassAccessorDecoratorTarget, context: ClassAccessorDecoratorContext): ClassAccessorDecoratorResult; -}; -/** - * A property decorator that converts a class property into a getter that - * executes a querySelector on the element's renderRoot. - * - * @param selector A DOMString containing one or more selectors to match. - * @param cache An optional boolean which when true performs the DOM query only - * once and caches the result. - * - * See: https://developer.mozilla.org/en-US/docs/Web/API/Document/querySelector - * - * ```ts - * class MyElement { - * @query('#first') - * first: HTMLDivElement; - * - * render() { - * return html` - *
- *
- * `; - * } - * } - * ``` - * @category Decorator - */ -export declare function query(selector: string, cache?: boolean): QueryDecorator; -//# sourceMappingURL=query.d.ts.map \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/decorators/query.d.ts.map b/tests/node_modules/@lit/reactive-element/decorators/query.d.ts.map deleted file mode 100644 index b73e4b6..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators/query.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../src/decorators/query.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAQH,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAO,KAAK,SAAS,EAAC,MAAM,WAAW,CAAC;AAwB/C,MAAM,MAAM,cAAc,GAAG;IAE3B,CACE,KAAK,EAAE,SAAS,CAAC,eAAe,CAAC,EACjC,IAAI,EAAE,WAAW,EACjB,UAAU,CAAC,EAAE,kBAAkB,GAG9B,IAAI,GAAG,GAAG,CAAC;IAGd,CAAC,CAAC,SAAS,SAAS,CAAC,eAAe,CAAC,EAAE,CAAC,SAAS,OAAO,GAAG,IAAI,EAC7D,KAAK,EAAE,4BAA4B,CAAC,CAAC,EAAE,CAAC,CAAC,EACzC,OAAO,EAAE,6BAA6B,CAAC,CAAC,EAAE,CAAC,CAAC,GAC3C,4BAA4B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;CACvC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,cAAc,CA4EvE"} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/decorators/query.js b/tests/node_modules/@lit/reactive-element/decorators/query.js deleted file mode 100644 index 275d341..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators/query.js +++ /dev/null @@ -1,7 +0,0 @@ -import{desc as t}from"./base.js"; -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */function e(e,r){return(n,s,i)=>{const o=t=>t.renderRoot?.querySelector(e)??null;if(r){const{get:e,set:r}="object"==typeof s?n:i??(()=>{const t=Symbol();return{get(){return this[t]},set(e){this[t]=e}}})();return t(n,s,{get(){let t=e.call(this);return void 0===t&&(t=o(this),(null!==t||this.hasUpdated)&&r.call(this,t)),t}})}return t(n,s,{get(){return o(this)}})}}export{e as query}; -//# sourceMappingURL=query.js.map diff --git a/tests/node_modules/@lit/reactive-element/decorators/query.js.map b/tests/node_modules/@lit/reactive-element/decorators/query.js.map deleted file mode 100644 index 93c0ba8..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators/query.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"query.js","sources":["../src/decorators/query.ts"],"sourcesContent":["/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n/*\n * IMPORTANT: For compatibility with tsickle and the Closure JS compiler, all\n * property decorators (but not class decorators) in this file that have\n * an @ExportDecoratedItems annotation must be defined as a regular function,\n * not an arrow function.\n */\nimport type {ReactiveElement} from '../reactive-element.js';\nimport {desc, type Interface} from './base.js';\n\nconst DEV_MODE = true;\n\nlet issueWarning: (code: string, warning: string) => void;\n\nif (DEV_MODE) {\n // Ensure warnings are issued only 1x, even if multiple versions of Lit\n // are loaded.\n const issuedWarnings: Set =\n (globalThis.litIssuedWarnings ??= new Set());\n\n // Issue a warning, if we haven't already.\n issueWarning = (code: string, warning: string) => {\n warning += code\n ? ` See https://lit.dev/msg/${code} for more information.`\n : '';\n if (!issuedWarnings.has(warning)) {\n console.warn(warning);\n issuedWarnings.add(warning);\n }\n };\n}\n\nexport type QueryDecorator = {\n // legacy\n (\n proto: Interface,\n name: PropertyKey,\n descriptor?: PropertyDescriptor\n // Note TypeScript requires the return type to be `void|any`\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ): void | any;\n\n // standard\n , V extends Element | null>(\n value: ClassAccessorDecoratorTarget,\n context: ClassAccessorDecoratorContext\n ): ClassAccessorDecoratorResult;\n};\n\n/**\n * A property decorator that converts a class property into a getter that\n * executes a querySelector on the element's renderRoot.\n *\n * @param selector A DOMString containing one or more selectors to match.\n * @param cache An optional boolean which when true performs the DOM query only\n * once and caches the result.\n *\n * See: https://developer.mozilla.org/en-US/docs/Web/API/Document/querySelector\n *\n * ```ts\n * class MyElement {\n * @query('#first')\n * first: HTMLDivElement;\n *\n * render() {\n * return html`\n *
\n *
\n * `;\n * }\n * }\n * ```\n * @category Decorator\n */\nexport function query(selector: string, cache?: boolean): QueryDecorator {\n return (, V extends Element | null>(\n protoOrTarget: ClassAccessorDecoratorTarget,\n nameOrContext: PropertyKey | ClassAccessorDecoratorContext,\n descriptor?: PropertyDescriptor\n ) => {\n const doQuery = (el: Interface): V => {\n const result = (el.renderRoot?.querySelector(selector) ?? null) as V;\n if (DEV_MODE && result === null && cache && !el.hasUpdated) {\n const name =\n typeof nameOrContext === 'object'\n ? nameOrContext.name\n : nameOrContext;\n issueWarning(\n '',\n `@query'd field ${JSON.stringify(String(name))} with the 'cache' ` +\n `flag set for selector '${selector}' has been accessed before ` +\n `the first update and returned null. This is expected if the ` +\n `renderRoot tree has not been provided beforehand (e.g. via ` +\n `Declarative Shadow DOM). Therefore the value hasn't been cached.`\n );\n }\n // TODO: if we want to allow users to assert that the query will never\n // return null, we need a new option and to throw here if the result\n // is null.\n return result;\n };\n if (cache) {\n // Accessors to wrap from either:\n // 1. The decorator target, in the case of standard decorators\n // 2. The property descriptor, in the case of experimental decorators\n // on auto-accessors.\n // 3. Functions that access our own cache-key property on the instance,\n // in the case of experimental decorators on fields.\n const {get, set} =\n typeof nameOrContext === 'object'\n ? protoOrTarget\n : descriptor ??\n (() => {\n const key = DEV_MODE\n ? Symbol(`${String(nameOrContext)} (@query() cache)`)\n : Symbol();\n type WithCache = ReactiveElement & {\n [key: symbol]: Element | null;\n };\n return {\n get() {\n return (this as WithCache)[key];\n },\n set(v) {\n (this as WithCache)[key] = v;\n },\n };\n })();\n return desc(protoOrTarget, nameOrContext, {\n get(this: ReactiveElement): V {\n let result: V = get!.call(this);\n if (result === undefined) {\n result = doQuery(this);\n if (result !== null || this.hasUpdated) {\n set!.call(this, result);\n }\n }\n return result;\n },\n });\n } else {\n // This object works as the return type for both standard and\n // experimental decorators.\n return desc(protoOrTarget, nameOrContext, {\n get(this: ReactiveElement) {\n return doQuery(this);\n },\n });\n }\n }) as QueryDecorator;\n}\n"],"names":["query","selector","cache","protoOrTarget","nameOrContext","descriptor","doQuery","el","renderRoot","querySelector","get","set","key","Symbol","this","v","desc","result","call","undefined","hasUpdated"],"mappings":";;;;;GA+EgB,SAAAA,EAAMC,EAAkBC,GACtC,OACEC,EACAC,EACAC,KAEA,MAAMC,EAAWC,GACCA,EAAGC,YAAYC,cAAcR,IAAa,KAoB5D,GAAIC,EAAO,CAOT,MAAMQ,IAACA,EAAGC,IAAEA,GACe,iBAAlBP,EACHD,EACAE,GACA,MACE,MAAMO,EAEFC,SAIJ,MAAO,CACL,GAAAH,GACE,OAAQI,KAAmBF,EAC5B,EACD,GAAAD,CAAII,GACDD,KAAmBF,GAAOG,CAC5B,EAEJ,EAfD,GAgBN,OAAOC,EAAKb,EAAeC,EAAe,CACxC,GAAAM,GACE,IAAIO,EAAYP,EAAKQ,KAAKJ,MAO1B,YANeK,IAAXF,IACFA,EAASX,EAAQQ,OACF,OAAXG,GAAmBH,KAAKM,aAC1BT,EAAKO,KAAKJ,KAAMG,IAGbA,CACR,GAEJ,CAGC,OAAOD,EAAKb,EAAeC,EAAe,CACxC,GAAAM,GACE,OAAOJ,EAAQQ,KAChB,GAGN,CACH"} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/decorators/state.d.ts b/tests/node_modules/@lit/reactive-element/decorators/state.d.ts deleted file mode 100644 index e3b9841..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators/state.d.ts +++ /dev/null @@ -1,29 +0,0 @@ -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -export interface StateDeclaration { - /** - * A function that indicates if a property should be considered changed when - * it is set. The function should take the `newValue` and `oldValue` and - * return `true` if an update should be requested. - */ - hasChanged?(value: Type, oldValue: Type): boolean; -} -/** - * @deprecated use StateDeclaration - */ -export type InternalPropertyDeclaration = StateDeclaration; -/** - * Declares a private or protected reactive property that still triggers - * updates to the element when it changes. It does not reflect from the - * corresponding attribute. - * - * Properties declared this way must not be used from HTML or HTML templating - * systems, they're solely for properties internal to the element. These - * properties may be renamed by optimization tools like closure compiler. - * @category Decorator - */ -export declare function state(options?: StateDeclaration): import("./property.js").PropertyDecorator; -//# sourceMappingURL=state.d.ts.map \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/decorators/state.d.ts.map b/tests/node_modules/@lit/reactive-element/decorators/state.d.ts.map deleted file mode 100644 index 37bb756..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators/state.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../src/decorators/state.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAWH,MAAM,WAAW,gBAAgB,CAAC,IAAI,GAAG,OAAO;IAC9C;;;;OAIG;IACH,UAAU,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,GAAG,OAAO,CAAC;CACnD;AAED;;GAEG;AACH,MAAM,MAAM,2BAA2B,CAAC,IAAI,GAAG,OAAO,IACpD,gBAAgB,CAAC,IAAI,CAAC,CAAC;AAEzB;;;;;;;;;GASG;AACH,wBAAgB,KAAK,CAAC,OAAO,CAAC,EAAE,gBAAgB,6CAS/C"} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/decorators/state.js b/tests/node_modules/@lit/reactive-element/decorators/state.js deleted file mode 100644 index ca0d20e..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators/state.js +++ /dev/null @@ -1,7 +0,0 @@ -import{property as t}from"./property.js"; -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */function r(r){return t({...r,state:!0,attribute:!1})}export{r as state}; -//# sourceMappingURL=state.js.map diff --git a/tests/node_modules/@lit/reactive-element/decorators/state.js.map b/tests/node_modules/@lit/reactive-element/decorators/state.js.map deleted file mode 100644 index b1f71e9..0000000 --- a/tests/node_modules/@lit/reactive-element/decorators/state.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"state.js","sources":["../src/decorators/state.ts"],"sourcesContent":["/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n/*\n * IMPORTANT: For compatibility with tsickle and the Closure JS compiler, all\n * property decorators (but not class decorators) in this file that have\n * an @ExportDecoratedItems annotation must be defined as a regular function,\n * not an arrow function.\n */\n\nimport {property} from './property.js';\n\nexport interface StateDeclaration {\n /**\n * A function that indicates if a property should be considered changed when\n * it is set. The function should take the `newValue` and `oldValue` and\n * return `true` if an update should be requested.\n */\n hasChanged?(value: Type, oldValue: Type): boolean;\n}\n\n/**\n * @deprecated use StateDeclaration\n */\nexport type InternalPropertyDeclaration =\n StateDeclaration;\n\n/**\n * Declares a private or protected reactive property that still triggers\n * updates to the element when it changes. It does not reflect from the\n * corresponding attribute.\n *\n * Properties declared this way must not be used from HTML or HTML templating\n * systems, they're solely for properties internal to the element. These\n * properties may be renamed by optimization tools like closure compiler.\n * @category Decorator\n */\nexport function state(options?: StateDeclaration) {\n return property({\n ...options,\n // Add both `state` and `attribute` because we found a third party\n // controller that is keying off of PropertyOptions.state to determine\n // whether a field is a private internal property or not.\n state: true,\n attribute: false,\n });\n}\n"],"names":["state","options","property","attribute"],"mappings":";;;;;GAwCM,SAAUA,EAAMC,GACpB,OAAOC,EAAS,IACXD,EAIHD,OAAO,EACPG,WAAW,GAEf"} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/css-tag.d.ts b/tests/node_modules/@lit/reactive-element/development/css-tag.d.ts deleted file mode 100644 index b94d2d0..0000000 --- a/tests/node_modules/@lit/reactive-element/development/css-tag.d.ts +++ /dev/null @@ -1,67 +0,0 @@ -/** - * @license - * Copyright 2019 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -/** - * Whether the current browser supports `adoptedStyleSheets`. - */ -export declare const supportsAdoptingStyleSheets: boolean; -/** - * A CSSResult or native CSSStyleSheet. - * - * In browsers that support constructible CSS style sheets, CSSStyleSheet - * object can be used for styling along side CSSResult from the `css` - * template tag. - */ -export type CSSResultOrNative = CSSResult | CSSStyleSheet; -export type CSSResultArray = Array; -/** - * A single CSSResult, CSSStyleSheet, or an array or nested arrays of those. - */ -export type CSSResultGroup = CSSResultOrNative | CSSResultArray; -/** - * A container for a string of CSS text, that may be used to create a CSSStyleSheet. - * - * CSSResult is the return value of `css`-tagged template literals and - * `unsafeCSS()`. In order to ensure that CSSResults are only created via the - * `css` tag and `unsafeCSS()`, CSSResult cannot be constructed directly. - */ -export declare class CSSResult { - ['_$cssResult$']: boolean; - readonly cssText: string; - private _styleSheet?; - private _strings; - private constructor(); - get styleSheet(): CSSStyleSheet | undefined; - toString(): string; -} -/** - * Wrap a value for interpolation in a {@linkcode css} tagged template literal. - * - * This is unsafe because untrusted CSS text can be used to phone home - * or exfiltrate data to an attacker controlled site. Take care to only use - * this with trusted input. - */ -export declare const unsafeCSS: (value: unknown) => CSSResult; -/** - * A template literal tag which can be used with LitElement's - * {@linkcode LitElement.styles} property to set element styles. - * - * For security reasons, only literal string values and number may be used in - * embedded expressions. To incorporate non-literal values {@linkcode unsafeCSS} - * may be used inside an expression. - */ -export declare const css: (strings: TemplateStringsArray, ...values: (CSSResultGroup | number)[]) => CSSResult; -/** - * Applies the given styles to a `shadowRoot`. When Shadow DOM is - * available but `adoptedStyleSheets` is not, styles are appended to the - * `shadowRoot` to [mimic spec behavior](https://wicg.github.io/construct-stylesheets/#using-constructed-stylesheets). - * Note, when shimming is used, any styles that are subsequently placed into - * the shadowRoot should be placed *before* any shimmed adopted styles. This - * will match spec behavior that gives adopted sheets precedence over styles in - * shadowRoot. - */ -export declare const adoptStyles: (renderRoot: ShadowRoot, styles: Array) => void; -export declare const getCompatibleStyle: (s: CSSResultOrNative) => CSSResultOrNative; -//# sourceMappingURL=css-tag.d.ts.map \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/css-tag.d.ts.map b/tests/node_modules/@lit/reactive-element/development/css-tag.d.ts.map deleted file mode 100644 index 2939859..0000000 --- a/tests/node_modules/@lit/reactive-element/development/css-tag.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"css-tag.d.ts","sourceRoot":"","sources":["../src/css-tag.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAOH;;GAEG;AACH,eAAO,MAAM,2BAA2B,EAAE,OAIJ,CAAC;AAEvC;;;;;;GAMG;AACH,MAAM,MAAM,iBAAiB,GAAG,SAAS,GAAG,aAAa,CAAC;AAE1D,MAAM,MAAM,cAAc,GAAG,KAAK,CAAC,iBAAiB,GAAG,cAAc,CAAC,CAAC;AAEvE;;GAEG;AACH,MAAM,MAAM,cAAc,GAAG,iBAAiB,GAAG,cAAc,CAAC;AAMhE;;;;;;GAMG;AACH,qBAAa,SAAS;IAEpB,CAAC,cAAc,CAAC,UAAQ;IACxB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,OAAO,CAAC,WAAW,CAAC,CAAgB;IACpC,OAAO,CAAC,QAAQ,CAAmC;IAEnD,OAAO;IAgBP,IAAI,UAAU,IAAI,aAAa,GAAG,SAAS,CAoB1C;IAED,QAAQ,IAAI,MAAM;CAGnB;AAyBD;;;;;;GAMG;AACH,eAAO,MAAM,SAAS,UAAW,OAAO,cAKrC,CAAC;AAEJ;;;;;;;GAOG;AACH,eAAO,MAAM,GAAG,YACL,oBAAoB,aAClB,CAAC,cAAc,GAAG,MAAM,CAAC,EAAE,KACrC,SAaF,CAAC;AAEF;;;;;;;;GAQG;AACH,eAAO,MAAM,WAAW,eACV,UAAU,UACd,MAAM,iBAAiB,CAAC,SAkBjC,CAAC;AAUF,eAAO,MAAM,kBAAkB,MAGrB,iBAAiB,sBAEwC,CAAC"} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/css-tag.js b/tests/node_modules/@lit/reactive-element/development/css-tag.js deleted file mode 100644 index fcd2068..0000000 --- a/tests/node_modules/@lit/reactive-element/development/css-tag.js +++ /dev/null @@ -1,133 +0,0 @@ -/** - * @license - * Copyright 2019 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -const NODE_MODE = false; -// Allows minifiers to rename references to globalThis -const global = globalThis; -/** - * Whether the current browser supports `adoptedStyleSheets`. - */ -export const supportsAdoptingStyleSheets = global.ShadowRoot && - (global.ShadyCSS === undefined || global.ShadyCSS.nativeShadow) && - 'adoptedStyleSheets' in Document.prototype && - 'replace' in CSSStyleSheet.prototype; -const constructionToken = Symbol(); -const cssTagCache = new WeakMap(); -/** - * A container for a string of CSS text, that may be used to create a CSSStyleSheet. - * - * CSSResult is the return value of `css`-tagged template literals and - * `unsafeCSS()`. In order to ensure that CSSResults are only created via the - * `css` tag and `unsafeCSS()`, CSSResult cannot be constructed directly. - */ -export class CSSResult { - constructor(cssText, strings, safeToken) { - // This property needs to remain unminified. - this['_$cssResult$'] = true; - if (safeToken !== constructionToken) { - throw new Error('CSSResult is not constructable. Use `unsafeCSS` or `css` instead.'); - } - this.cssText = cssText; - this._strings = strings; - } - // This is a getter so that it's lazy. In practice, this means stylesheets - // are not created until the first element instance is made. - get styleSheet() { - // If `supportsAdoptingStyleSheets` is true then we assume CSSStyleSheet is - // constructable. - let styleSheet = this._styleSheet; - const strings = this._strings; - if (supportsAdoptingStyleSheets && styleSheet === undefined) { - const cacheable = strings !== undefined && strings.length === 1; - if (cacheable) { - styleSheet = cssTagCache.get(strings); - } - if (styleSheet === undefined) { - (this._styleSheet = styleSheet = new CSSStyleSheet()).replaceSync(this.cssText); - if (cacheable) { - cssTagCache.set(strings, styleSheet); - } - } - } - return styleSheet; - } - toString() { - return this.cssText; - } -} -const textFromCSSResult = (value) => { - // This property needs to remain unminified. - if (value['_$cssResult$'] === true) { - return value.cssText; - } - else if (typeof value === 'number') { - return value; - } - else { - throw new Error(`Value passed to 'css' function must be a 'css' function result: ` + - `${value}. Use 'unsafeCSS' to pass non-literal values, but take care ` + - `to ensure page security.`); - } -}; -/** - * Wrap a value for interpolation in a {@linkcode css} tagged template literal. - * - * This is unsafe because untrusted CSS text can be used to phone home - * or exfiltrate data to an attacker controlled site. Take care to only use - * this with trusted input. - */ -export const unsafeCSS = (value) => new CSSResult(typeof value === 'string' ? value : String(value), undefined, constructionToken); -/** - * A template literal tag which can be used with LitElement's - * {@linkcode LitElement.styles} property to set element styles. - * - * For security reasons, only literal string values and number may be used in - * embedded expressions. To incorporate non-literal values {@linkcode unsafeCSS} - * may be used inside an expression. - */ -export const css = (strings, ...values) => { - const cssText = strings.length === 1 - ? strings[0] - : values.reduce((acc, v, idx) => acc + textFromCSSResult(v) + strings[idx + 1], strings[0]); - return new CSSResult(cssText, strings, constructionToken); -}; -/** - * Applies the given styles to a `shadowRoot`. When Shadow DOM is - * available but `adoptedStyleSheets` is not, styles are appended to the - * `shadowRoot` to [mimic spec behavior](https://wicg.github.io/construct-stylesheets/#using-constructed-stylesheets). - * Note, when shimming is used, any styles that are subsequently placed into - * the shadowRoot should be placed *before* any shimmed adopted styles. This - * will match spec behavior that gives adopted sheets precedence over styles in - * shadowRoot. - */ -export const adoptStyles = (renderRoot, styles) => { - if (supportsAdoptingStyleSheets) { - renderRoot.adoptedStyleSheets = styles.map((s) => s instanceof CSSStyleSheet ? s : s.styleSheet); - } - else { - for (const s of styles) { - const style = document.createElement('style'); - // eslint-disable-next-line @typescript-eslint/no-explicit-any - const nonce = global['litNonce']; - if (nonce !== undefined) { - style.setAttribute('nonce', nonce); - } - style.textContent = s.cssText; - renderRoot.appendChild(style); - } - } -}; -const cssResultFromStyleSheet = (sheet) => { - let cssText = ''; - for (const rule of sheet.cssRules) { - cssText += rule.cssText; - } - return unsafeCSS(cssText); -}; -export const getCompatibleStyle = supportsAdoptingStyleSheets || - (NODE_MODE && global.CSSStyleSheet === undefined) - ? (s) => s - : (s) => s instanceof CSSStyleSheet ? cssResultFromStyleSheet(s) : s; -//# sourceMappingURL=css-tag.js.map \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/css-tag.js.map b/tests/node_modules/@lit/reactive-element/development/css-tag.js.map deleted file mode 100644 index b78a476..0000000 --- a/tests/node_modules/@lit/reactive-element/development/css-tag.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"css-tag.js","sourceRoot":"","sources":["../src/css-tag.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @license\n * Copyright 2019 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\nconst NODE_MODE = false;\n\n// Allows minifiers to rename references to globalThis\nconst global = globalThis;\n\n/**\n * Whether the current browser supports `adoptedStyleSheets`.\n */\nexport const supportsAdoptingStyleSheets: boolean =\n global.ShadowRoot &&\n (global.ShadyCSS === undefined || global.ShadyCSS.nativeShadow) &&\n 'adoptedStyleSheets' in Document.prototype &&\n 'replace' in CSSStyleSheet.prototype;\n\n/**\n * A CSSResult or native CSSStyleSheet.\n *\n * In browsers that support constructible CSS style sheets, CSSStyleSheet\n * object can be used for styling along side CSSResult from the `css`\n * template tag.\n */\nexport type CSSResultOrNative = CSSResult | CSSStyleSheet;\n\nexport type CSSResultArray = Array;\n\n/**\n * A single CSSResult, CSSStyleSheet, or an array or nested arrays of those.\n */\nexport type CSSResultGroup = CSSResultOrNative | CSSResultArray;\n\nconst constructionToken = Symbol();\n\nconst cssTagCache = new WeakMap();\n\n/**\n * A container for a string of CSS text, that may be used to create a CSSStyleSheet.\n *\n * CSSResult is the return value of `css`-tagged template literals and\n * `unsafeCSS()`. In order to ensure that CSSResults are only created via the\n * `css` tag and `unsafeCSS()`, CSSResult cannot be constructed directly.\n */\nexport class CSSResult {\n // This property needs to remain unminified.\n ['_$cssResult$'] = true;\n readonly cssText: string;\n private _styleSheet?: CSSStyleSheet;\n private _strings: TemplateStringsArray | undefined;\n\n private constructor(\n cssText: string,\n strings: TemplateStringsArray | undefined,\n safeToken: symbol\n ) {\n if (safeToken !== constructionToken) {\n throw new Error(\n 'CSSResult is not constructable. Use `unsafeCSS` or `css` instead.'\n );\n }\n this.cssText = cssText;\n this._strings = strings;\n }\n\n // This is a getter so that it's lazy. In practice, this means stylesheets\n // are not created until the first element instance is made.\n get styleSheet(): CSSStyleSheet | undefined {\n // If `supportsAdoptingStyleSheets` is true then we assume CSSStyleSheet is\n // constructable.\n let styleSheet = this._styleSheet;\n const strings = this._strings;\n if (supportsAdoptingStyleSheets && styleSheet === undefined) {\n const cacheable = strings !== undefined && strings.length === 1;\n if (cacheable) {\n styleSheet = cssTagCache.get(strings);\n }\n if (styleSheet === undefined) {\n (this._styleSheet = styleSheet = new CSSStyleSheet()).replaceSync(\n this.cssText\n );\n if (cacheable) {\n cssTagCache.set(strings, styleSheet);\n }\n }\n }\n return styleSheet;\n }\n\n toString(): string {\n return this.cssText;\n }\n}\n\ntype ConstructableCSSResult = CSSResult & {\n new (\n cssText: string,\n strings: TemplateStringsArray | undefined,\n safeToken: symbol\n ): CSSResult;\n};\n\nconst textFromCSSResult = (value: CSSResultGroup | number) => {\n // This property needs to remain unminified.\n if ((value as CSSResult)['_$cssResult$'] === true) {\n return (value as CSSResult).cssText;\n } else if (typeof value === 'number') {\n return value;\n } else {\n throw new Error(\n `Value passed to 'css' function must be a 'css' function result: ` +\n `${value}. Use 'unsafeCSS' to pass non-literal values, but take care ` +\n `to ensure page security.`\n );\n }\n};\n\n/**\n * Wrap a value for interpolation in a {@linkcode css} tagged template literal.\n *\n * This is unsafe because untrusted CSS text can be used to phone home\n * or exfiltrate data to an attacker controlled site. Take care to only use\n * this with trusted input.\n */\nexport const unsafeCSS = (value: unknown) =>\n new (CSSResult as ConstructableCSSResult)(\n typeof value === 'string' ? value : String(value),\n undefined,\n constructionToken\n );\n\n/**\n * A template literal tag which can be used with LitElement's\n * {@linkcode LitElement.styles} property to set element styles.\n *\n * For security reasons, only literal string values and number may be used in\n * embedded expressions. To incorporate non-literal values {@linkcode unsafeCSS}\n * may be used inside an expression.\n */\nexport const css = (\n strings: TemplateStringsArray,\n ...values: (CSSResultGroup | number)[]\n): CSSResult => {\n const cssText =\n strings.length === 1\n ? strings[0]\n : values.reduce(\n (acc, v, idx) => acc + textFromCSSResult(v) + strings[idx + 1],\n strings[0]\n );\n return new (CSSResult as ConstructableCSSResult)(\n cssText,\n strings,\n constructionToken\n );\n};\n\n/**\n * Applies the given styles to a `shadowRoot`. When Shadow DOM is\n * available but `adoptedStyleSheets` is not, styles are appended to the\n * `shadowRoot` to [mimic spec behavior](https://wicg.github.io/construct-stylesheets/#using-constructed-stylesheets).\n * Note, when shimming is used, any styles that are subsequently placed into\n * the shadowRoot should be placed *before* any shimmed adopted styles. This\n * will match spec behavior that gives adopted sheets precedence over styles in\n * shadowRoot.\n */\nexport const adoptStyles = (\n renderRoot: ShadowRoot,\n styles: Array\n) => {\n if (supportsAdoptingStyleSheets) {\n (renderRoot as ShadowRoot).adoptedStyleSheets = styles.map((s) =>\n s instanceof CSSStyleSheet ? s : s.styleSheet!\n );\n } else {\n for (const s of styles) {\n const style = document.createElement('style');\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const nonce = (global as any)['litNonce'];\n if (nonce !== undefined) {\n style.setAttribute('nonce', nonce);\n }\n style.textContent = (s as CSSResult).cssText;\n renderRoot.appendChild(style);\n }\n }\n};\n\nconst cssResultFromStyleSheet = (sheet: CSSStyleSheet) => {\n let cssText = '';\n for (const rule of sheet.cssRules) {\n cssText += rule.cssText;\n }\n return unsafeCSS(cssText);\n};\n\nexport const getCompatibleStyle =\n supportsAdoptingStyleSheets ||\n (NODE_MODE && global.CSSStyleSheet === undefined)\n ? (s: CSSResultOrNative) => s\n : (s: CSSResultOrNative) =>\n s instanceof CSSStyleSheet ? cssResultFromStyleSheet(s) : s;\n"]} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators.d.ts b/tests/node_modules/@lit/reactive-element/development/decorators.d.ts deleted file mode 100644 index 8dfae5d..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators.d.ts +++ /dev/null @@ -1,15 +0,0 @@ -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -export * from './decorators/custom-element.js'; -export * from './decorators/property.js'; -export * from './decorators/state.js'; -export * from './decorators/event-options.js'; -export * from './decorators/query.js'; -export * from './decorators/query-all.js'; -export * from './decorators/query-async.js'; -export * from './decorators/query-assigned-elements.js'; -export * from './decorators/query-assigned-nodes.js'; -//# sourceMappingURL=decorators.d.ts.map \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators.d.ts.map b/tests/node_modules/@lit/reactive-element/development/decorators.d.ts.map deleted file mode 100644 index 7390791..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"decorators.d.ts","sourceRoot":"","sources":["../src/decorators.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,cAAc,gCAAgC,CAAC;AAC/C,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,yCAAyC,CAAC;AACxD,cAAc,sCAAsC,CAAC"} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators.js b/tests/node_modules/@lit/reactive-element/development/decorators.js deleted file mode 100644 index 635edfc..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators.js +++ /dev/null @@ -1,18 +0,0 @@ -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -// This module exports decorators that are compatible both with standard -// decorators as implemented by TypeScript 5.2 and Babel, and with TypeScript's -// experimentalDecorators option. -export * from './decorators/custom-element.js'; -export * from './decorators/property.js'; -export * from './decorators/state.js'; -export * from './decorators/event-options.js'; -export * from './decorators/query.js'; -export * from './decorators/query-all.js'; -export * from './decorators/query-async.js'; -export * from './decorators/query-assigned-elements.js'; -export * from './decorators/query-assigned-nodes.js'; -//# sourceMappingURL=decorators.js.map \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators.js.map b/tests/node_modules/@lit/reactive-element/development/decorators.js.map deleted file mode 100644 index f5e44cd..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"decorators.js","sourceRoot":"","sources":["../src/decorators.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,wEAAwE;AACxE,+EAA+E;AAC/E,iCAAiC;AAEjC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,0BAA0B,CAAC;AACzC,cAAc,uBAAuB,CAAC;AACtC,cAAc,+BAA+B,CAAC;AAC9C,cAAc,uBAAuB,CAAC;AACtC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,6BAA6B,CAAC;AAC5C,cAAc,yCAAyC,CAAC;AACxD,cAAc,sCAAsC,CAAC","sourcesContent":["/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n// This module exports decorators that are compatible both with standard\n// decorators as implemented by TypeScript 5.2 and Babel, and with TypeScript's\n// experimentalDecorators option.\n\nexport * from './decorators/custom-element.js';\nexport * from './decorators/property.js';\nexport * from './decorators/state.js';\nexport * from './decorators/event-options.js';\nexport * from './decorators/query.js';\nexport * from './decorators/query-all.js';\nexport * from './decorators/query-async.js';\nexport * from './decorators/query-assigned-elements.js';\nexport * from './decorators/query-assigned-nodes.js';\n"]} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators/base.d.ts b/tests/node_modules/@lit/reactive-element/development/decorators/base.d.ts deleted file mode 100644 index 0d6df5e..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators/base.d.ts +++ /dev/null @@ -1,17 +0,0 @@ -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -/** - * Generates a public interface type that removes private and protected fields. - * This allows accepting otherwise incompatible versions of the type (e.g. from - * multiple copies of the same package in `node_modules`). - */ -export type Interface = { - [K in keyof T]: T[K]; -}; -export type Constructor = { - new (...args: any[]): T; -}; -//# sourceMappingURL=base.d.ts.map \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators/base.d.ts.map b/tests/node_modules/@lit/reactive-element/development/decorators/base.d.ts.map deleted file mode 100644 index e20abe3..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators/base.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/decorators/base.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;GAIG;AACH,MAAM,MAAM,SAAS,CAAC,CAAC,IAAI;KACxB,CAAC,IAAI,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI;IAE3B,KAAK,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;CACzB,CAAC"} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators/base.js b/tests/node_modules/@lit/reactive-element/development/decorators/base.js deleted file mode 100644 index af70d12..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators/base.js +++ /dev/null @@ -1,32 +0,0 @@ -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -/** - * Wraps up a few best practices when returning a property descriptor from a - * decorator. - * - * Marks the defined property as configurable, and enumerable, and handles - * the case where we have a busted Reflect.decorate zombiefill (e.g. in Angular - * apps). - * - * @internal - */ -export const desc = (obj, name, descriptor) => { - // For backwards compatibility, we keep them configurable and enumerable. - descriptor.configurable = true; - descriptor.enumerable = true; - if ( - // We check for Reflect.decorate each time, in case the zombiefill - // is applied via lazy loading some Angular code. - Reflect.decorate && - typeof name !== 'object') { - // If we're called as a legacy decorator, and Reflect.decorate is present - // then we have no guarantees that the returned descriptor will be - // defined on the class, so we must apply it directly ourselves. - Object.defineProperty(obj, name, descriptor); - } - return descriptor; -}; -//# sourceMappingURL=base.js.map \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators/base.js.map b/tests/node_modules/@lit/reactive-element/development/decorators/base.js.map deleted file mode 100644 index 616fc67..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators/base.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"base.js","sourceRoot":"","sources":["../../src/decorators/base.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAgBH;;;;;;;;;GASG;AACH,MAAM,CAAC,MAAM,IAAI,GAAG,CAClB,GAAW,EACX,IAAmE,EACnE,UAA8B,EAC9B,EAAE;IACF,yEAAyE;IACzE,UAAU,CAAC,YAAY,GAAG,IAAI,CAAC;IAC/B,UAAU,CAAC,UAAU,GAAG,IAAI,CAAC;IAC7B;IACE,kEAAkE;IAClE,iDAAiD;IAChD,OAAiD,CAAC,QAAQ;QAC3D,OAAO,IAAI,KAAK,QAAQ,EACxB;QACA,yEAAyE;QACzE,kEAAkE;QAClE,gEAAgE;QAEhE,MAAM,CAAC,cAAc,CAAC,GAAG,EAAE,IAAI,EAAE,UAAU,CAAC,CAAC;KAC9C;IACD,OAAO,UAAU,CAAC;AACpB,CAAC,CAAC","sourcesContent":["/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n/**\n * Generates a public interface type that removes private and protected fields.\n * This allows accepting otherwise incompatible versions of the type (e.g. from\n * multiple copies of the same package in `node_modules`).\n */\nexport type Interface = {\n [K in keyof T]: T[K];\n};\n\nexport type Constructor = {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n new (...args: any[]): T;\n};\n\n/**\n * Wraps up a few best practices when returning a property descriptor from a\n * decorator.\n *\n * Marks the defined property as configurable, and enumerable, and handles\n * the case where we have a busted Reflect.decorate zombiefill (e.g. in Angular\n * apps).\n *\n * @internal\n */\nexport const desc = (\n obj: object,\n name: PropertyKey | ClassAccessorDecoratorContext,\n descriptor: PropertyDescriptor\n) => {\n // For backwards compatibility, we keep them configurable and enumerable.\n descriptor.configurable = true;\n descriptor.enumerable = true;\n if (\n // We check for Reflect.decorate each time, in case the zombiefill\n // is applied via lazy loading some Angular code.\n (Reflect as typeof Reflect & {decorate?: unknown}).decorate &&\n typeof name !== 'object'\n ) {\n // If we're called as a legacy decorator, and Reflect.decorate is present\n // then we have no guarantees that the returned descriptor will be\n // defined on the class, so we must apply it directly ourselves.\n\n Object.defineProperty(obj, name, descriptor);\n }\n return descriptor;\n};\n"]} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators/custom-element.d.ts b/tests/node_modules/@lit/reactive-element/development/decorators/custom-element.d.ts deleted file mode 100644 index b73b297..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators/custom-element.d.ts +++ /dev/null @@ -1,31 +0,0 @@ -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -import type { Constructor } from './base.js'; -/** - * Allow for custom element classes with private constructors - */ -type CustomElementClass = Omit; -export type CustomElementDecorator = { - (cls: CustomElementClass): void; - (target: CustomElementClass, context: ClassDecoratorContext>): void; -}; -/** - * Class decorator factory that defines the decorated class as a custom element. - * - * ```js - * @customElement('my-element') - * class MyElement extends LitElement { - * render() { - * return html``; - * } - * } - * ``` - * @category Decorator - * @param tagName The tag name of the custom element to define. - */ -export declare const customElement: (tagName: string) => CustomElementDecorator; -export {}; -//# sourceMappingURL=custom-element.d.ts.map \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators/custom-element.d.ts.map b/tests/node_modules/@lit/reactive-element/development/decorators/custom-element.d.ts.map deleted file mode 100644 index 853d730..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators/custom-element.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"custom-element.d.ts","sourceRoot":"","sources":["../../src/decorators/custom-element.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AASH,OAAO,KAAK,EAAC,WAAW,EAAC,MAAM,WAAW,CAAC;AAE3C;;GAEG;AACH,KAAK,kBAAkB,GAAG,IAAI,CAAC,OAAO,WAAW,EAAE,KAAK,CAAC,CAAC;AAE1D,MAAM,MAAM,sBAAsB,GAAG;IAEnC,CAAC,GAAG,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAGhC,CACE,MAAM,EAAE,kBAAkB,EAC1B,OAAO,EAAE,qBAAqB,CAAC,WAAW,CAAC,WAAW,CAAC,CAAC,GACvD,IAAI,CAAC;CACT,CAAC;AAEF;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,aAAa,YACd,MAAM,KAAG,sBAelB,CAAC"} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators/custom-element.js b/tests/node_modules/@lit/reactive-element/development/decorators/custom-element.js deleted file mode 100644 index 4947a8c..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators/custom-element.js +++ /dev/null @@ -1,30 +0,0 @@ -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -/** - * Class decorator factory that defines the decorated class as a custom element. - * - * ```js - * @customElement('my-element') - * class MyElement extends LitElement { - * render() { - * return html``; - * } - * } - * ``` - * @category Decorator - * @param tagName The tag name of the custom element to define. - */ -export const customElement = (tagName) => (classOrTarget, context) => { - if (context !== undefined) { - context.addInitializer(() => { - customElements.define(tagName, classOrTarget); - }); - } - else { - customElements.define(tagName, classOrTarget); - } -}; -//# sourceMappingURL=custom-element.js.map \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators/custom-element.js.map b/tests/node_modules/@lit/reactive-element/development/decorators/custom-element.js.map deleted file mode 100644 index dd914b6..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators/custom-element.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"custom-element.js","sourceRoot":"","sources":["../../src/decorators/custom-element.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AA2BH;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,MAAM,aAAa,GACxB,CAAC,OAAe,EAA0B,EAAE,CAC5C,CACE,aAA4D,EAC5D,OAAyD,EACzD,EAAE;IACF,IAAI,OAAO,KAAK,SAAS,EAAE;QACzB,OAAO,CAAC,cAAc,CAAC,GAAG,EAAE;YAC1B,cAAc,CAAC,MAAM,CACnB,OAAO,EACP,aAAyC,CAC1C,CAAC;QACJ,CAAC,CAAC,CAAC;KACJ;SAAM;QACL,cAAc,CAAC,MAAM,CAAC,OAAO,EAAE,aAAyC,CAAC,CAAC;KAC3E;AACH,CAAC,CAAC","sourcesContent":["/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n/*\n * IMPORTANT: For compatibility with tsickle and the Closure JS compiler, all\n * property decorators (but not class decorators) in this file that have\n * an @ExportDecoratedItems annotation must be defined as a regular function,\n * not an arrow function.\n */\n\nimport type {Constructor} from './base.js';\n\n/**\n * Allow for custom element classes with private constructors\n */\ntype CustomElementClass = Omit;\n\nexport type CustomElementDecorator = {\n // legacy\n (cls: CustomElementClass): void;\n\n // standard\n (\n target: CustomElementClass,\n context: ClassDecoratorContext>\n ): void;\n};\n\n/**\n * Class decorator factory that defines the decorated class as a custom element.\n *\n * ```js\n * @customElement('my-element')\n * class MyElement extends LitElement {\n * render() {\n * return html``;\n * }\n * }\n * ```\n * @category Decorator\n * @param tagName The tag name of the custom element to define.\n */\nexport const customElement =\n (tagName: string): CustomElementDecorator =>\n (\n classOrTarget: CustomElementClass | Constructor,\n context?: ClassDecoratorContext>\n ) => {\n if (context !== undefined) {\n context.addInitializer(() => {\n customElements.define(\n tagName,\n classOrTarget as CustomElementConstructor\n );\n });\n } else {\n customElements.define(tagName, classOrTarget as CustomElementConstructor);\n }\n };\n"]} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators/event-options.d.ts b/tests/node_modules/@lit/reactive-element/development/decorators/event-options.d.ts deleted file mode 100644 index 6cb6913..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators/event-options.d.ts +++ /dev/null @@ -1,43 +0,0 @@ -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -import type { ReactiveElement } from '../reactive-element.js'; -import type { Interface } from './base.js'; -export type EventOptionsDecorator = { - (proto: Interface, name: PropertyKey): void | any; - any>(value: V, _context: ClassMethodDecoratorContext): void; -}; -/** - * Adds event listener options to a method used as an event listener in a - * lit-html template. - * - * @param options An object that specifies event listener options as accepted by - * `EventTarget#addEventListener` and `EventTarget#removeEventListener`. - * - * Current browsers support the `capture`, `passive`, and `once` options. See: - * https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener#Parameters - * - * ```ts - * class MyElement { - * clicked = false; - * - * render() { - * return html` - *
- * - *
- * `; - * } - * - * @eventOptions({capture: true}) - * _onClick(e) { - * this.clicked = true; - * } - * } - * ``` - * @category Decorator - */ -export declare function eventOptions(options: AddEventListenerOptions): EventOptionsDecorator; -//# sourceMappingURL=event-options.d.ts.map \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators/event-options.d.ts.map b/tests/node_modules/@lit/reactive-element/development/decorators/event-options.d.ts.map deleted file mode 100644 index 87bbc30..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators/event-options.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"event-options.d.ts","sourceRoot":"","sources":["../../src/decorators/event-options.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AASH,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,wBAAwB,CAAC;AAC5D,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,WAAW,CAAC;AAEzC,MAAM,MAAM,qBAAqB,GAAG;IAElC,CACE,KAAK,EAAE,SAAS,CAAC,eAAe,CAAC,EACjC,IAAI,EAAE,WAAW,GAGhB,IAAI,GAAG,GAAG,CAAC;IAId,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,IAAI,EAAE,GAAG,KAAK,GAAG,EAC1C,KAAK,EAAE,CAAC,EACR,QAAQ,EAAE,2BAA2B,CAAC,CAAC,EAAE,CAAC,CAAC,GAC1C,IAAI,CAAC;CACT,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,wBAAgB,YAAY,CAC1B,OAAO,EAAE,uBAAuB,GAC/B,qBAAqB,CAYvB"} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators/event-options.js b/tests/node_modules/@lit/reactive-element/development/decorators/event-options.js deleted file mode 100644 index 5117c1a..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators/event-options.js +++ /dev/null @@ -1,45 +0,0 @@ -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -/** - * Adds event listener options to a method used as an event listener in a - * lit-html template. - * - * @param options An object that specifies event listener options as accepted by - * `EventTarget#addEventListener` and `EventTarget#removeEventListener`. - * - * Current browsers support the `capture`, `passive`, and `once` options. See: - * https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener#Parameters - * - * ```ts - * class MyElement { - * clicked = false; - * - * render() { - * return html` - *
- * - *
- * `; - * } - * - * @eventOptions({capture: true}) - * _onClick(e) { - * this.clicked = true; - * } - * } - * ``` - * @category Decorator - */ -export function eventOptions(options) { - // eslint-disable-next-line @typescript-eslint/no-explicit-any - return ((protoOrValue, nameOrContext) => { - const method = typeof protoOrValue === 'function' - ? protoOrValue - : protoOrValue[nameOrContext]; - Object.assign(method, options); - }); -} -//# sourceMappingURL=event-options.js.map \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators/event-options.js.map b/tests/node_modules/@lit/reactive-element/development/decorators/event-options.js.map deleted file mode 100644 index 19c71d9..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators/event-options.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"event-options.js","sourceRoot":"","sources":["../../src/decorators/event-options.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AA6BH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,MAAM,UAAU,YAAY,CAC1B,OAAgC;IAEhC,8DAA8D;IAC9D,OAAO,CAAC,CACN,YAAe,EACf,aAA8D,EAC9D,EAAE;QACF,MAAM,MAAM,GACV,OAAO,YAAY,KAAK,UAAU;YAChC,CAAC,CAAC,YAAY;YACd,CAAC,CAAC,YAAY,CAAC,aAAsC,CAAC,CAAC;QAC3D,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACjC,CAAC,CAA0B,CAAC;AAC9B,CAAC","sourcesContent":["/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n/*\n * IMPORTANT: For compatibility with tsickle and the Closure JS compiler, all\n * property decorators (but not class decorators) in this file that have\n * an @ExportDecoratedItems annotation must be defined as a regular function,\n * not an arrow function.\n */\n\nimport type {ReactiveElement} from '../reactive-element.js';\nimport type {Interface} from './base.js';\n\nexport type EventOptionsDecorator = {\n // legacy\n (\n proto: Interface,\n name: PropertyKey\n // Note TypeScript requires the return type to be `void|any`\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ): void | any;\n\n // standard\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n any>(\n value: V,\n _context: ClassMethodDecoratorContext\n ): void;\n};\n\n/**\n * Adds event listener options to a method used as an event listener in a\n * lit-html template.\n *\n * @param options An object that specifies event listener options as accepted by\n * `EventTarget#addEventListener` and `EventTarget#removeEventListener`.\n *\n * Current browsers support the `capture`, `passive`, and `once` options. See:\n * https://developer.mozilla.org/en-US/docs/Web/API/EventTarget/addEventListener#Parameters\n *\n * ```ts\n * class MyElement {\n * clicked = false;\n *\n * render() {\n * return html`\n *
\n * \n *
\n * `;\n * }\n *\n * @eventOptions({capture: true})\n * _onClick(e) {\n * this.clicked = true;\n * }\n * }\n * ```\n * @category Decorator\n */\nexport function eventOptions(\n options: AddEventListenerOptions\n): EventOptionsDecorator {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return ( any>(\n protoOrValue: V,\n nameOrContext: PropertyKey | ClassMethodDecoratorContext\n ) => {\n const method =\n typeof protoOrValue === 'function'\n ? protoOrValue\n : protoOrValue[nameOrContext as keyof ReactiveElement];\n Object.assign(method, options);\n }) as EventOptionsDecorator;\n}\n"]} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators/property.d.ts b/tests/node_modules/@lit/reactive-element/development/decorators/property.d.ts deleted file mode 100644 index 385a3cb..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators/property.d.ts +++ /dev/null @@ -1,55 +0,0 @@ -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -import { type PropertyDeclaration, type ReactiveElement } from '../reactive-element.js'; -import type { Interface } from './base.js'; -export type PropertyDecorator = { - , V>(target: ClassAccessorDecoratorTarget, context: ClassAccessorDecoratorContext): ClassAccessorDecoratorResult; - , V>(target: (value: V) => void, context: ClassSetterDecoratorContext): (this: C, value: V) => void; - (protoOrDescriptor: Object, name: PropertyKey, descriptor?: PropertyDescriptor): any; -}; -type StandardPropertyContext = (ClassAccessorDecoratorContext | ClassSetterDecoratorContext) & { - metadata: object; -}; -/** - * Wraps a class accessor or setter so that `requestUpdate()` is called with the - * property name and old value when the accessor is set. - */ -export declare const standardProperty: , V>(options: PropertyDeclaration | undefined, target: ClassAccessorDecoratorTarget | ((value: V) => void), context: StandardPropertyContext) => ClassAccessorDecoratorResult | ((this: C, value: V) => void); -/** - * A class field or accessor decorator which creates a reactive property that - * reflects a corresponding attribute value. When a decorated property is set - * the element will update and render. A {@linkcode PropertyDeclaration} may - * optionally be supplied to configure property features. - * - * This decorator should only be used for public fields. As public fields, - * properties should be considered as primarily settable by element users, - * either via attribute or the property itself. - * - * Generally, properties that are changed by the element should be private or - * protected fields and should use the {@linkcode state} decorator. - * - * However, sometimes element code does need to set a public property. This - * should typically only be done in response to user interaction, and an event - * should be fired informing the user; for example, a checkbox sets its - * `checked` property when clicked and fires a `changed` event. Mutating public - * properties should typically not be done for non-primitive (object or array) - * properties. In other cases when an element needs to manage state, a private - * property decorated via the {@linkcode state} decorator should be used. When - * needed, state properties can be initialized via public properties to - * facilitate complex interactions. - * - * ```ts - * class MyElement { - * @property({ type: Boolean }) - * clicked = false; - * } - * ``` - * @category Decorator - * @ExportDecoratedItems - */ -export declare function property(options?: PropertyDeclaration): PropertyDecorator; -export {}; -//# sourceMappingURL=property.d.ts.map \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators/property.d.ts.map b/tests/node_modules/@lit/reactive-element/development/decorators/property.d.ts.map deleted file mode 100644 index a5a559a..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators/property.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"property.d.ts","sourceRoot":"","sources":["../../src/decorators/property.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AASH,OAAO,EACL,KAAK,mBAAmB,EACxB,KAAK,eAAe,EAGrB,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAC,SAAS,EAAC,MAAM,WAAW,CAAC;AAyBzC,MAAM,MAAM,iBAAiB,GAAG;IAE9B,CAAC,CAAC,SAAS,SAAS,CAAC,eAAe,CAAC,EAAE,CAAC,EACtC,MAAM,EAAE,4BAA4B,CAAC,CAAC,EAAE,CAAC,CAAC,EAC1C,OAAO,EAAE,6BAA6B,CAAC,CAAC,EAAE,CAAC,CAAC,GAC3C,4BAA4B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;IAGtC,CAAC,CAAC,SAAS,SAAS,CAAC,eAAe,CAAC,EAAE,CAAC,EACtC,MAAM,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,EAC1B,OAAO,EAAE,2BAA2B,CAAC,CAAC,EAAE,CAAC,CAAC,GACzC,CAAC,IAAI,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC;IAG/B,CACE,iBAAiB,EAAE,MAAM,EACzB,IAAI,EAAE,WAAW,EACjB,UAAU,CAAC,EAAE,kBAAkB,GAE9B,GAAG,CAAC;CACR,CAAC;AAkCF,KAAK,uBAAuB,CAAC,CAAC,EAAE,CAAC,IAAI,CACjC,6BAA6B,CAAC,CAAC,EAAE,CAAC,CAAC,GACnC,2BAA2B,CAAC,CAAC,EAAE,CAAC,CAAC,CACpC,GAAG;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAC,CAAC;AAEvB;;;GAGG;AACH,eAAO,MAAM,gBAAgB,oKAEiC,IAAI,2GAEF,IAAI,CAoDnE,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAgB,QAAQ,CAAC,OAAO,CAAC,EAAE,mBAAmB,GAAG,iBAAiB,CA4BzE"} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators/property.js b/tests/node_modules/@lit/reactive-element/development/decorators/property.js deleted file mode 100644 index c67da0e..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators/property.js +++ /dev/null @@ -1,138 +0,0 @@ -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -/* - * IMPORTANT: For compatibility with tsickle and the Closure JS compiler, all - * property decorators (but not class decorators) in this file that have - * an @ExportDecoratedItems annotation must be defined as a regular function, - * not an arrow function. - */ -import { defaultConverter, notEqual, } from '../reactive-element.js'; -const DEV_MODE = true; -let issueWarning; -if (DEV_MODE) { - // Ensure warnings are issued only 1x, even if multiple versions of Lit - // are loaded. - const issuedWarnings = (globalThis.litIssuedWarnings ??= new Set()); - // Issue a warning, if we haven't already. - issueWarning = (code, warning) => { - warning += ` See https://lit.dev/msg/${code} for more information.`; - if (!issuedWarnings.has(warning)) { - console.warn(warning); - issuedWarnings.add(warning); - } - }; -} -const legacyProperty = (options, proto, name) => { - const hasOwnProperty = proto.hasOwnProperty(name); - proto.constructor.createProperty(name, hasOwnProperty ? { ...options, wrapped: true } : options); - // For accessors (which have a descriptor on the prototype) we need to - // return a descriptor, otherwise TypeScript overwrites the descriptor we - // define in createProperty() with the original descriptor. We don't do this - // for fields, which don't have a descriptor, because this could overwrite - // descriptor defined by other decorators. - return hasOwnProperty - ? Object.getOwnPropertyDescriptor(proto, name) - : undefined; -}; -// This is duplicated from a similar variable in reactive-element.ts, but -// actually makes sense to have this default defined with the decorator, so -// that different decorators could have different defaults. -const defaultPropertyDeclaration = { - attribute: true, - type: String, - converter: defaultConverter, - reflect: false, - hasChanged: notEqual, -}; -/** - * Wraps a class accessor or setter so that `requestUpdate()` is called with the - * property name and old value when the accessor is set. - */ -export const standardProperty = (options = defaultPropertyDeclaration, target, context) => { - const { kind, metadata } = context; - if (DEV_MODE && metadata == null) { - issueWarning('missing-class-metadata', `The class ${target} is missing decorator metadata. This ` + - `could mean that you're using a compiler that supports decorators ` + - `but doesn't support decorator metadata, such as TypeScript 5.1. ` + - `Please update your compiler.`); - } - // Store the property options - let properties = globalThis.litPropertyMetadata.get(metadata); - if (properties === undefined) { - globalThis.litPropertyMetadata.set(metadata, (properties = new Map())); - } - properties.set(context.name, options); - if (kind === 'accessor') { - // Standard decorators cannot dynamically modify the class, so we can't - // replace a field with accessors. The user must use the new `accessor` - // keyword instead. - const { name } = context; - return { - set(v) { - const oldValue = target.get.call(this); - target.set.call(this, v); - this.requestUpdate(name, oldValue, options); - }, - init(v) { - if (v !== undefined) { - this._$changeProperty(name, undefined, options); - } - return v; - }, - }; - } - else if (kind === 'setter') { - const { name } = context; - return function (value) { - const oldValue = this[name]; - target.call(this, value); - this.requestUpdate(name, oldValue, options); - }; - } - throw new Error(`Unsupported decorator location: ${kind}`); -}; -/** - * A class field or accessor decorator which creates a reactive property that - * reflects a corresponding attribute value. When a decorated property is set - * the element will update and render. A {@linkcode PropertyDeclaration} may - * optionally be supplied to configure property features. - * - * This decorator should only be used for public fields. As public fields, - * properties should be considered as primarily settable by element users, - * either via attribute or the property itself. - * - * Generally, properties that are changed by the element should be private or - * protected fields and should use the {@linkcode state} decorator. - * - * However, sometimes element code does need to set a public property. This - * should typically only be done in response to user interaction, and an event - * should be fired informing the user; for example, a checkbox sets its - * `checked` property when clicked and fires a `changed` event. Mutating public - * properties should typically not be done for non-primitive (object or array) - * properties. In other cases when an element needs to manage state, a private - * property decorated via the {@linkcode state} decorator should be used. When - * needed, state properties can be initialized via public properties to - * facilitate complex interactions. - * - * ```ts - * class MyElement { - * @property({ type: Boolean }) - * clicked = false; - * } - * ``` - * @category Decorator - * @ExportDecoratedItems - */ -export function property(options) { - return (protoOrTarget, nameOrContext - // eslint-disable-next-line @typescript-eslint/no-explicit-any - ) => { - return (typeof nameOrContext === 'object' - ? standardProperty(options, protoOrTarget, nameOrContext) - : legacyProperty(options, protoOrTarget, nameOrContext)); - }; -} -//# sourceMappingURL=property.js.map \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators/property.js.map b/tests/node_modules/@lit/reactive-element/development/decorators/property.js.map deleted file mode 100644 index 9719a7b..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators/property.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"property.js","sourceRoot":"","sources":["../../src/decorators/property.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n/*\n * IMPORTANT: For compatibility with tsickle and the Closure JS compiler, all\n * property decorators (but not class decorators) in this file that have\n * an @ExportDecoratedItems annotation must be defined as a regular function,\n * not an arrow function.\n */\n\nimport {\n type PropertyDeclaration,\n type ReactiveElement,\n defaultConverter,\n notEqual,\n} from '../reactive-element.js';\nimport type {Interface} from './base.js';\n\nconst DEV_MODE = true;\n\nlet issueWarning: (code: string, warning: string) => void;\n\nif (DEV_MODE) {\n // Ensure warnings are issued only 1x, even if multiple versions of Lit\n // are loaded.\n const issuedWarnings: Set =\n (globalThis.litIssuedWarnings ??= new Set());\n\n // Issue a warning, if we haven't already.\n issueWarning = (code: string, warning: string) => {\n warning += ` See https://lit.dev/msg/${code} for more information.`;\n if (!issuedWarnings.has(warning)) {\n console.warn(warning);\n issuedWarnings.add(warning);\n }\n };\n}\n\n// Overloads for property decorator so that TypeScript can infer the correct\n// return type when a decorator is used as an accessor decorator or a setter\n// decorator.\nexport type PropertyDecorator = {\n // accessor decorator signature\n , V>(\n target: ClassAccessorDecoratorTarget,\n context: ClassAccessorDecoratorContext\n ): ClassAccessorDecoratorResult;\n\n // setter decorator signature\n , V>(\n target: (value: V) => void,\n context: ClassSetterDecoratorContext\n ): (this: C, value: V) => void;\n\n // legacy decorator signature\n (\n protoOrDescriptor: Object,\n name: PropertyKey,\n descriptor?: PropertyDescriptor\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ): any;\n};\n\nconst legacyProperty = (\n options: PropertyDeclaration | undefined,\n proto: Object,\n name: PropertyKey\n) => {\n const hasOwnProperty = proto.hasOwnProperty(name);\n (proto.constructor as typeof ReactiveElement).createProperty(\n name,\n hasOwnProperty ? {...options, wrapped: true} : options\n );\n // For accessors (which have a descriptor on the prototype) we need to\n // return a descriptor, otherwise TypeScript overwrites the descriptor we\n // define in createProperty() with the original descriptor. We don't do this\n // for fields, which don't have a descriptor, because this could overwrite\n // descriptor defined by other decorators.\n return hasOwnProperty\n ? Object.getOwnPropertyDescriptor(proto, name)\n : undefined;\n};\n\n// This is duplicated from a similar variable in reactive-element.ts, but\n// actually makes sense to have this default defined with the decorator, so\n// that different decorators could have different defaults.\nconst defaultPropertyDeclaration: PropertyDeclaration = {\n attribute: true,\n type: String,\n converter: defaultConverter,\n reflect: false,\n hasChanged: notEqual,\n};\n\n// Temporary type, until google3 is on TypeScript 5.2\ntype StandardPropertyContext = (\n | ClassAccessorDecoratorContext\n | ClassSetterDecoratorContext\n) & {metadata: object};\n\n/**\n * Wraps a class accessor or setter so that `requestUpdate()` is called with the\n * property name and old value when the accessor is set.\n */\nexport const standardProperty = , V>(\n options: PropertyDeclaration = defaultPropertyDeclaration,\n target: ClassAccessorDecoratorTarget | ((value: V) => void),\n context: StandardPropertyContext\n): ClassAccessorDecoratorResult | ((this: C, value: V) => void) => {\n const {kind, metadata} = context;\n\n if (DEV_MODE && metadata == null) {\n issueWarning(\n 'missing-class-metadata',\n `The class ${target} is missing decorator metadata. This ` +\n `could mean that you're using a compiler that supports decorators ` +\n `but doesn't support decorator metadata, such as TypeScript 5.1. ` +\n `Please update your compiler.`\n );\n }\n\n // Store the property options\n let properties = globalThis.litPropertyMetadata.get(metadata);\n if (properties === undefined) {\n globalThis.litPropertyMetadata.set(metadata, (properties = new Map()));\n }\n properties.set(context.name, options);\n\n if (kind === 'accessor') {\n // Standard decorators cannot dynamically modify the class, so we can't\n // replace a field with accessors. The user must use the new `accessor`\n // keyword instead.\n const {name} = context;\n return {\n set(this: ReactiveElement, v: V) {\n const oldValue = (\n target as ClassAccessorDecoratorTarget\n ).get.call(this as unknown as C);\n (target as ClassAccessorDecoratorTarget).set.call(\n this as unknown as C,\n v\n );\n this.requestUpdate(name, oldValue, options);\n },\n init(this: ReactiveElement, v: V): V {\n if (v !== undefined) {\n this._$changeProperty(name, undefined, options);\n }\n return v;\n },\n } as unknown as ClassAccessorDecoratorResult;\n } else if (kind === 'setter') {\n const {name} = context;\n return function (this: ReactiveElement, value: V) {\n const oldValue = this[name as keyof ReactiveElement];\n (target as (value: V) => void).call(this, value);\n this.requestUpdate(name, oldValue, options);\n } as unknown as (this: C, value: V) => void;\n }\n throw new Error(`Unsupported decorator location: ${kind}`);\n};\n\n/**\n * A class field or accessor decorator which creates a reactive property that\n * reflects a corresponding attribute value. When a decorated property is set\n * the element will update and render. A {@linkcode PropertyDeclaration} may\n * optionally be supplied to configure property features.\n *\n * This decorator should only be used for public fields. As public fields,\n * properties should be considered as primarily settable by element users,\n * either via attribute or the property itself.\n *\n * Generally, properties that are changed by the element should be private or\n * protected fields and should use the {@linkcode state} decorator.\n *\n * However, sometimes element code does need to set a public property. This\n * should typically only be done in response to user interaction, and an event\n * should be fired informing the user; for example, a checkbox sets its\n * `checked` property when clicked and fires a `changed` event. Mutating public\n * properties should typically not be done for non-primitive (object or array)\n * properties. In other cases when an element needs to manage state, a private\n * property decorated via the {@linkcode state} decorator should be used. When\n * needed, state properties can be initialized via public properties to\n * facilitate complex interactions.\n *\n * ```ts\n * class MyElement {\n * @property({ type: Boolean })\n * clicked = false;\n * }\n * ```\n * @category Decorator\n * @ExportDecoratedItems\n */\nexport function property(options?: PropertyDeclaration): PropertyDecorator {\n return , V>(\n protoOrTarget:\n | object\n | ClassAccessorDecoratorTarget\n | ((value: V) => void),\n nameOrContext:\n | PropertyKey\n | ClassAccessorDecoratorContext\n | ClassSetterDecoratorContext\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ): any => {\n return (\n typeof nameOrContext === 'object'\n ? standardProperty(\n options,\n protoOrTarget as\n | ClassAccessorDecoratorTarget\n | ((value: V) => void),\n nameOrContext as StandardPropertyContext\n )\n : legacyProperty(\n options,\n protoOrTarget as Object,\n nameOrContext as PropertyKey\n )\n ) as PropertyDecorator;\n };\n}\n"]} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators/query-all.d.ts b/tests/node_modules/@lit/reactive-element/development/decorators/query-all.d.ts deleted file mode 100644 index af0fc05..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators/query-all.d.ts +++ /dev/null @@ -1,37 +0,0 @@ -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -import type { ReactiveElement } from '../reactive-element.js'; -import { type Interface } from './base.js'; -export type QueryAllDecorator = { - (proto: Interface, name: PropertyKey, descriptor?: PropertyDescriptor): void | any; - , V extends NodeList>(value: ClassAccessorDecoratorTarget, context: ClassAccessorDecoratorContext): ClassAccessorDecoratorResult; -}; -/** - * A property decorator that converts a class property into a getter - * that executes a querySelectorAll on the element's renderRoot. - * - * @param selector A DOMString containing one or more selectors to match. - * - * See: - * https://developer.mozilla.org/en-US/docs/Web/API/Document/querySelectorAll - * - * ```ts - * class MyElement { - * @queryAll('div') - * divs: NodeListOf; - * - * render() { - * return html` - *
- *
- * `; - * } - * } - * ``` - * @category Decorator - */ -export declare function queryAll(selector: string): QueryAllDecorator; -//# sourceMappingURL=query-all.d.ts.map \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators/query-all.d.ts.map b/tests/node_modules/@lit/reactive-element/development/decorators/query-all.d.ts.map deleted file mode 100644 index f46ee6b..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators/query-all.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"query-all.d.ts","sourceRoot":"","sources":["../../src/decorators/query-all.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAQH,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAO,KAAK,SAAS,EAAC,MAAM,WAAW,CAAC;AAE/C,MAAM,MAAM,iBAAiB,GAAG;IAE9B,CACE,KAAK,EAAE,SAAS,CAAC,eAAe,CAAC,EACjC,IAAI,EAAE,WAAW,EACjB,UAAU,CAAC,EAAE,kBAAkB,GAG9B,IAAI,GAAG,GAAG,CAAC;IAGd,CAAC,CAAC,SAAS,SAAS,CAAC,eAAe,CAAC,EAAE,CAAC,SAAS,QAAQ,EACvD,KAAK,EAAE,4BAA4B,CAAC,CAAC,EAAE,CAAC,CAAC,EACzC,OAAO,EAAE,6BAA6B,CAAC,CAAC,EAAE,CAAC,CAAC,GAC3C,4BAA4B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;CACvC,CAAC;AAMF;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,iBAAiB,CAa5D"} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators/query-all.js b/tests/node_modules/@lit/reactive-element/development/decorators/query-all.js deleted file mode 100644 index 2152391..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators/query-all.js +++ /dev/null @@ -1,44 +0,0 @@ -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -import { desc } from './base.js'; -// Shared fragment used to generate empty NodeLists when a render root is -// undefined -let fragment; -/** - * A property decorator that converts a class property into a getter - * that executes a querySelectorAll on the element's renderRoot. - * - * @param selector A DOMString containing one or more selectors to match. - * - * See: - * https://developer.mozilla.org/en-US/docs/Web/API/Document/querySelectorAll - * - * ```ts - * class MyElement { - * @queryAll('div') - * divs: NodeListOf; - * - * render() { - * return html` - *
- *
- * `; - * } - * } - * ``` - * @category Decorator - */ -export function queryAll(selector) { - return ((obj, name) => { - return desc(obj, name, { - get() { - const container = this.renderRoot ?? (fragment ??= document.createDocumentFragment()); - return container.querySelectorAll(selector); - }, - }); - }); -} -//# sourceMappingURL=query-all.js.map \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators/query-all.js.map b/tests/node_modules/@lit/reactive-element/development/decorators/query-all.js.map deleted file mode 100644 index a5f0858..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators/query-all.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"query-all.js","sourceRoot":"","sources":["../../src/decorators/query-all.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AASH,OAAO,EAAC,IAAI,EAAiB,MAAM,WAAW,CAAC;AAmB/C,yEAAyE;AACzE,YAAY;AACZ,IAAI,QAA0B,CAAC;AAE/B;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,UAAU,QAAQ,CAAC,QAAgB;IACvC,OAAO,CAAC,CACN,GAAW,EACX,IAAmE,EACnE,EAAE;QACF,OAAO,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE;YACrB,GAAG;gBACD,MAAM,SAAS,GACb,IAAI,CAAC,UAAU,IAAI,CAAC,QAAQ,KAAK,QAAQ,CAAC,sBAAsB,EAAE,CAAC,CAAC;gBACtE,OAAO,SAAS,CAAC,gBAAgB,CAAC,QAAQ,CAAC,CAAC;YAC9C,CAAC;SACF,CAAC,CAAC;IACL,CAAC,CAAsB,CAAC;AAC1B,CAAC","sourcesContent":["/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n/*\n * IMPORTANT: For compatibility with tsickle and the Closure JS compiler, all\n * property decorators (but not class decorators) in this file that have\n * an @ExportDecoratedItems annotation must be defined as a regular function,\n * not an arrow function.\n */\nimport type {ReactiveElement} from '../reactive-element.js';\nimport {desc, type Interface} from './base.js';\n\nexport type QueryAllDecorator = {\n // legacy\n (\n proto: Interface,\n name: PropertyKey,\n descriptor?: PropertyDescriptor\n // Note TypeScript requires the return type to be `void|any`\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ): void | any;\n\n // standard\n , V extends NodeList>(\n value: ClassAccessorDecoratorTarget,\n context: ClassAccessorDecoratorContext\n ): ClassAccessorDecoratorResult;\n};\n\n// Shared fragment used to generate empty NodeLists when a render root is\n// undefined\nlet fragment: DocumentFragment;\n\n/**\n * A property decorator that converts a class property into a getter\n * that executes a querySelectorAll on the element's renderRoot.\n *\n * @param selector A DOMString containing one or more selectors to match.\n *\n * See:\n * https://developer.mozilla.org/en-US/docs/Web/API/Document/querySelectorAll\n *\n * ```ts\n * class MyElement {\n * @queryAll('div')\n * divs: NodeListOf;\n *\n * render() {\n * return html`\n *
\n *
\n * `;\n * }\n * }\n * ```\n * @category Decorator\n */\nexport function queryAll(selector: string): QueryAllDecorator {\n return ((\n obj: object,\n name: PropertyKey | ClassAccessorDecoratorContext\n ) => {\n return desc(obj, name, {\n get(this: ReactiveElement) {\n const container =\n this.renderRoot ?? (fragment ??= document.createDocumentFragment());\n return container.querySelectorAll(selector);\n },\n });\n }) as QueryAllDecorator;\n}\n"]} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators/query-assigned-elements.d.ts b/tests/node_modules/@lit/reactive-element/development/decorators/query-assigned-elements.d.ts deleted file mode 100644 index 309cf89..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators/query-assigned-elements.d.ts +++ /dev/null @@ -1,55 +0,0 @@ -/** - * @license - * Copyright 2021 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -import type { ReactiveElement } from '../reactive-element.js'; -import type { QueryAssignedNodesOptions } from './query-assigned-nodes.js'; -import { type Interface } from './base.js'; -export type QueryAssignedElementsDecorator = { - (proto: Interface, name: PropertyKey, descriptor?: PropertyDescriptor): void | any; - , V extends Array>(value: ClassAccessorDecoratorTarget, context: ClassAccessorDecoratorContext): ClassAccessorDecoratorResult; -}; -/** - * Options for the {@linkcode queryAssignedElements} decorator. Extends the - * options that can be passed into - * [HTMLSlotElement.assignedElements](https://developer.mozilla.org/en-US/docs/Web/API/HTMLSlotElement/assignedElements). - */ -export interface QueryAssignedElementsOptions extends QueryAssignedNodesOptions { - /** - * CSS selector used to filter the elements returned. For example, a selector - * of `".item"` will only include elements with the `item` class. - */ - selector?: string; -} -/** - * A property decorator that converts a class property into a getter that - * returns the `assignedElements` of the given `slot`. Provides a declarative - * way to use - * [`HTMLSlotElement.assignedElements`](https://developer.mozilla.org/en-US/docs/Web/API/HTMLSlotElement/assignedElements). - * - * Can be passed an optional {@linkcode QueryAssignedElementsOptions} object. - * - * Example usage: - * ```ts - * class MyElement { - * @queryAssignedElements({ slot: 'list' }) - * listItems!: Array; - * @queryAssignedElements() - * unnamedSlotEls!: Array; - * - * render() { - * return html` - * - * - * `; - * } - * } - * ``` - * - * Note, the type of this property should be annotated as `Array`. - * - * @category Decorator - */ -export declare function queryAssignedElements(options?: QueryAssignedElementsOptions): QueryAssignedElementsDecorator; -//# sourceMappingURL=query-assigned-elements.d.ts.map \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators/query-assigned-elements.d.ts.map b/tests/node_modules/@lit/reactive-element/development/decorators/query-assigned-elements.d.ts.map deleted file mode 100644 index c23e999..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators/query-assigned-elements.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"query-assigned-elements.d.ts","sourceRoot":"","sources":["../../src/decorators/query-assigned-elements.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AASH,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,wBAAwB,CAAC;AAC5D,OAAO,KAAK,EAAC,yBAAyB,EAAC,MAAM,2BAA2B,CAAC;AACzE,OAAO,EAAO,KAAK,SAAS,EAAC,MAAM,WAAW,CAAC;AAE/C,MAAM,MAAM,8BAA8B,GAAG;IAE3C,CACE,KAAK,EAAE,SAAS,CAAC,eAAe,CAAC,EACjC,IAAI,EAAE,WAAW,EACjB,UAAU,CAAC,EAAE,kBAAkB,GAG9B,IAAI,GAAG,GAAG,CAAC;IAGd,CAAC,CAAC,SAAS,SAAS,CAAC,eAAe,CAAC,EAAE,CAAC,SAAS,KAAK,CAAC,OAAO,CAAC,EAC7D,KAAK,EAAE,4BAA4B,CAAC,CAAC,EAAE,CAAC,CAAC,EACzC,OAAO,EAAE,6BAA6B,CAAC,CAAC,EAAE,CAAC,CAAC,GAC3C,4BAA4B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;CACvC,CAAC;AAEF;;;;GAIG;AACH,MAAM,WAAW,4BACf,SAAQ,yBAAyB;IACjC;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,CAAC,EAAE,4BAA4B,GACrC,8BAA8B,CAoBhC"} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators/query-assigned-elements.js b/tests/node_modules/@lit/reactive-element/development/decorators/query-assigned-elements.js deleted file mode 100644 index 2e6597e..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators/query-assigned-elements.js +++ /dev/null @@ -1,51 +0,0 @@ -/** - * @license - * Copyright 2021 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -import { desc } from './base.js'; -/** - * A property decorator that converts a class property into a getter that - * returns the `assignedElements` of the given `slot`. Provides a declarative - * way to use - * [`HTMLSlotElement.assignedElements`](https://developer.mozilla.org/en-US/docs/Web/API/HTMLSlotElement/assignedElements). - * - * Can be passed an optional {@linkcode QueryAssignedElementsOptions} object. - * - * Example usage: - * ```ts - * class MyElement { - * @queryAssignedElements({ slot: 'list' }) - * listItems!: Array; - * @queryAssignedElements() - * unnamedSlotEls!: Array; - * - * render() { - * return html` - * - * - * `; - * } - * } - * ``` - * - * Note, the type of this property should be annotated as `Array`. - * - * @category Decorator - */ -export function queryAssignedElements(options) { - return ((obj, name) => { - const { slot, selector } = options ?? {}; - const slotSelector = `slot${slot ? `[name=${slot}]` : ':not([name])'}`; - return desc(obj, name, { - get() { - const slotEl = this.renderRoot?.querySelector(slotSelector); - const elements = slotEl?.assignedElements(options) ?? []; - return (selector === undefined - ? elements - : elements.filter((node) => node.matches(selector))); - }, - }); - }); -} -//# sourceMappingURL=query-assigned-elements.js.map \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators/query-assigned-elements.js.map b/tests/node_modules/@lit/reactive-element/development/decorators/query-assigned-elements.js.map deleted file mode 100644 index b5b6e0a..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators/query-assigned-elements.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"query-assigned-elements.js","sourceRoot":"","sources":["../../src/decorators/query-assigned-elements.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAWH,OAAO,EAAC,IAAI,EAAiB,MAAM,WAAW,CAAC;AAiC/C;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,UAAU,qBAAqB,CACnC,OAAsC;IAEtC,OAAO,CAAC,CACN,GAAW,EACX,IAAmE,EACnE,EAAE;QACF,MAAM,EAAC,IAAI,EAAE,QAAQ,EAAC,GAAG,OAAO,IAAI,EAAE,CAAC;QACvC,MAAM,YAAY,GAAG,OAAO,IAAI,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,CAAC,CAAC,CAAC,cAAc,EAAE,CAAC;QACvE,OAAO,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE;YACrB,GAAG;gBACD,MAAM,MAAM,GACV,IAAI,CAAC,UAAU,EAAE,aAAa,CAAkB,YAAY,CAAC,CAAC;gBAChE,MAAM,QAAQ,GAAG,MAAM,EAAE,gBAAgB,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;gBACzD,OAAO,CACL,QAAQ,KAAK,SAAS;oBACpB,CAAC,CAAC,QAAQ;oBACV,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,CACjD,CAAC;YACT,CAAC;SACF,CAAC,CAAC;IACL,CAAC,CAAmC,CAAC;AACvC,CAAC","sourcesContent":["/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n/*\n * IMPORTANT: For compatibility with tsickle and the Closure JS compiler, all\n * property decorators (but not class decorators) in this file that have\n * an @ExportDecoratedItems annotation must be defined as a regular function,\n * not an arrow function.\n */\n\nimport type {ReactiveElement} from '../reactive-element.js';\nimport type {QueryAssignedNodesOptions} from './query-assigned-nodes.js';\nimport {desc, type Interface} from './base.js';\n\nexport type QueryAssignedElementsDecorator = {\n // legacy\n (\n proto: Interface,\n name: PropertyKey,\n descriptor?: PropertyDescriptor\n // Note TypeScript requires the return type to be `void|any`\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ): void | any;\n\n // standard\n , V extends Array>(\n value: ClassAccessorDecoratorTarget,\n context: ClassAccessorDecoratorContext\n ): ClassAccessorDecoratorResult;\n};\n\n/**\n * Options for the {@linkcode queryAssignedElements} decorator. Extends the\n * options that can be passed into\n * [HTMLSlotElement.assignedElements](https://developer.mozilla.org/en-US/docs/Web/API/HTMLSlotElement/assignedElements).\n */\nexport interface QueryAssignedElementsOptions\n extends QueryAssignedNodesOptions {\n /**\n * CSS selector used to filter the elements returned. For example, a selector\n * of `\".item\"` will only include elements with the `item` class.\n */\n selector?: string;\n}\n\n/**\n * A property decorator that converts a class property into a getter that\n * returns the `assignedElements` of the given `slot`. Provides a declarative\n * way to use\n * [`HTMLSlotElement.assignedElements`](https://developer.mozilla.org/en-US/docs/Web/API/HTMLSlotElement/assignedElements).\n *\n * Can be passed an optional {@linkcode QueryAssignedElementsOptions} object.\n *\n * Example usage:\n * ```ts\n * class MyElement {\n * @queryAssignedElements({ slot: 'list' })\n * listItems!: Array;\n * @queryAssignedElements()\n * unnamedSlotEls!: Array;\n *\n * render() {\n * return html`\n * \n * \n * `;\n * }\n * }\n * ```\n *\n * Note, the type of this property should be annotated as `Array`.\n *\n * @category Decorator\n */\nexport function queryAssignedElements(\n options?: QueryAssignedElementsOptions\n): QueryAssignedElementsDecorator {\n return (>(\n obj: object,\n name: PropertyKey | ClassAccessorDecoratorContext\n ) => {\n const {slot, selector} = options ?? {};\n const slotSelector = `slot${slot ? `[name=${slot}]` : ':not([name])'}`;\n return desc(obj, name, {\n get(this: ReactiveElement): V {\n const slotEl =\n this.renderRoot?.querySelector(slotSelector);\n const elements = slotEl?.assignedElements(options) ?? [];\n return (\n selector === undefined\n ? elements\n : elements.filter((node) => node.matches(selector))\n ) as V;\n },\n });\n }) as QueryAssignedElementsDecorator;\n}\n"]} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators/query-assigned-nodes.d.ts b/tests/node_modules/@lit/reactive-element/development/decorators/query-assigned-nodes.d.ts deleted file mode 100644 index 7aa845e..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators/query-assigned-nodes.d.ts +++ /dev/null @@ -1,49 +0,0 @@ -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -import type { ReactiveElement } from '../reactive-element.js'; -import { type Interface } from './base.js'; -/** - * Options for the {@linkcode queryAssignedNodes} decorator. Extends the options - * that can be passed into [HTMLSlotElement.assignedNodes](https://developer.mozilla.org/en-US/docs/Web/API/HTMLSlotElement/assignedNodes). - */ -export interface QueryAssignedNodesOptions extends AssignedNodesOptions { - /** - * Name of the slot to query. Leave empty for the default slot. - */ - slot?: string; -} -export type QueryAssignedNodesDecorator = { - (proto: Interface, name: PropertyKey, descriptor?: PropertyDescriptor): void | any; - , V extends Array>(value: ClassAccessorDecoratorTarget, context: ClassAccessorDecoratorContext): ClassAccessorDecoratorResult; -}; -/** - * A property decorator that converts a class property into a getter that - * returns the `assignedNodes` of the given `slot`. - * - * Can be passed an optional {@linkcode QueryAssignedNodesOptions} object. - * - * Example usage: - * ```ts - * class MyElement { - * @queryAssignedNodes({slot: 'list', flatten: true}) - * listItems!: Array; - * - * render() { - * return html` - * - * `; - * } - * } - * ``` - * - * Note the type of this property should be annotated as `Array`. Use the - * queryAssignedElements decorator to list only elements, and optionally filter - * the element list using a CSS selector. - * - * @category Decorator - */ -export declare function queryAssignedNodes(options?: QueryAssignedNodesOptions): QueryAssignedNodesDecorator; -//# sourceMappingURL=query-assigned-nodes.d.ts.map \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators/query-assigned-nodes.d.ts.map b/tests/node_modules/@lit/reactive-element/development/decorators/query-assigned-nodes.d.ts.map deleted file mode 100644 index 7c90b71..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators/query-assigned-nodes.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"query-assigned-nodes.d.ts","sourceRoot":"","sources":["../../src/decorators/query-assigned-nodes.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAQH,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAO,KAAK,SAAS,EAAC,MAAM,WAAW,CAAC;AAE/C;;;GAGG;AACH,MAAM,WAAW,yBAA0B,SAAQ,oBAAoB;IACrE;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,MAAM,2BAA2B,GAAG;IAExC,CACE,KAAK,EAAE,SAAS,CAAC,eAAe,CAAC,EACjC,IAAI,EAAE,WAAW,EACjB,UAAU,CAAC,EAAE,kBAAkB,GAG9B,IAAI,GAAG,GAAG,CAAC;IAGd,CAAC,CAAC,SAAS,SAAS,CAAC,eAAe,CAAC,EAAE,CAAC,SAAS,KAAK,CAAC,IAAI,CAAC,EAC1D,KAAK,EAAE,4BAA4B,CAAC,CAAC,EAAE,CAAC,CAAC,EACzC,OAAO,EAAE,6BAA6B,CAAC,CAAC,EAAE,CAAC,CAAC,GAC3C,4BAA4B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;CACvC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,CAAC,EAAE,yBAAyB,GAClC,2BAA2B,CAgB7B"} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators/query-assigned-nodes.js b/tests/node_modules/@lit/reactive-element/development/decorators/query-assigned-nodes.js deleted file mode 100644 index fd0bdd9..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators/query-assigned-nodes.js +++ /dev/null @@ -1,46 +0,0 @@ -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -import { desc } from './base.js'; -/** - * A property decorator that converts a class property into a getter that - * returns the `assignedNodes` of the given `slot`. - * - * Can be passed an optional {@linkcode QueryAssignedNodesOptions} object. - * - * Example usage: - * ```ts - * class MyElement { - * @queryAssignedNodes({slot: 'list', flatten: true}) - * listItems!: Array; - * - * render() { - * return html` - * - * `; - * } - * } - * ``` - * - * Note the type of this property should be annotated as `Array`. Use the - * queryAssignedElements decorator to list only elements, and optionally filter - * the element list using a CSS selector. - * - * @category Decorator - */ -export function queryAssignedNodes(options) { - // eslint-disable-next-line @typescript-eslint/no-explicit-any - return ((obj, name) => { - const { slot } = options ?? {}; - const slotSelector = `slot${slot ? `[name=${slot}]` : ':not([name])'}`; - return desc(obj, name, { - get() { - const slotEl = this.renderRoot?.querySelector(slotSelector); - return (slotEl?.assignedNodes(options) ?? []); - }, - }); - }); -} -//# sourceMappingURL=query-assigned-nodes.js.map \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators/query-assigned-nodes.js.map b/tests/node_modules/@lit/reactive-element/development/decorators/query-assigned-nodes.js.map deleted file mode 100644 index c46eed4..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators/query-assigned-nodes.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"query-assigned-nodes.js","sourceRoot":"","sources":["../../src/decorators/query-assigned-nodes.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AASH,OAAO,EAAC,IAAI,EAAiB,MAAM,WAAW,CAAC;AA8B/C;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,MAAM,UAAU,kBAAkB,CAChC,OAAmC;IAEnC,8DAA8D;IAC9D,OAAO,CAAC,CACN,GAAW,EACX,IAAmE,EACnE,EAAE;QACF,MAAM,EAAC,IAAI,EAAC,GAAG,OAAO,IAAI,EAAE,CAAC;QAC7B,MAAM,YAAY,GAAG,OAAO,IAAI,CAAC,CAAC,CAAC,SAAS,IAAI,GAAG,CAAC,CAAC,CAAC,cAAc,EAAE,CAAC;QACvE,OAAO,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE;YACrB,GAAG;gBACD,MAAM,MAAM,GACV,IAAI,CAAC,UAAU,EAAE,aAAa,CAAkB,YAAY,CAAC,CAAC;gBAChE,OAAO,CAAC,MAAM,EAAE,aAAa,CAAC,OAAO,CAAC,IAAI,EAAE,CAAiB,CAAC;YAChE,CAAC;SACF,CAAC,CAAC;IACL,CAAC,CAAgC,CAAC;AACpC,CAAC","sourcesContent":["/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n/*\n * IMPORTANT: For compatibility with tsickle and the Closure JS compiler, all\n * property decorators (but not class decorators) in this file that have\n * an @ExportDecoratedItems annotation must be defined as a regular function,\n * not an arrow function.\n */\nimport type {ReactiveElement} from '../reactive-element.js';\nimport {desc, type Interface} from './base.js';\n\n/**\n * Options for the {@linkcode queryAssignedNodes} decorator. Extends the options\n * that can be passed into [HTMLSlotElement.assignedNodes](https://developer.mozilla.org/en-US/docs/Web/API/HTMLSlotElement/assignedNodes).\n */\nexport interface QueryAssignedNodesOptions extends AssignedNodesOptions {\n /**\n * Name of the slot to query. Leave empty for the default slot.\n */\n slot?: string;\n}\n\nexport type QueryAssignedNodesDecorator = {\n // legacy\n (\n proto: Interface,\n name: PropertyKey,\n descriptor?: PropertyDescriptor\n // Note TypeScript requires the return type to be `void|any`\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ): void | any;\n\n // standard\n , V extends Array>(\n value: ClassAccessorDecoratorTarget,\n context: ClassAccessorDecoratorContext\n ): ClassAccessorDecoratorResult;\n};\n\n/**\n * A property decorator that converts a class property into a getter that\n * returns the `assignedNodes` of the given `slot`.\n *\n * Can be passed an optional {@linkcode QueryAssignedNodesOptions} object.\n *\n * Example usage:\n * ```ts\n * class MyElement {\n * @queryAssignedNodes({slot: 'list', flatten: true})\n * listItems!: Array;\n *\n * render() {\n * return html`\n * \n * `;\n * }\n * }\n * ```\n *\n * Note the type of this property should be annotated as `Array`. Use the\n * queryAssignedElements decorator to list only elements, and optionally filter\n * the element list using a CSS selector.\n *\n * @category Decorator\n */\nexport function queryAssignedNodes(\n options?: QueryAssignedNodesOptions\n): QueryAssignedNodesDecorator {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n return (>(\n obj: object,\n name: PropertyKey | ClassAccessorDecoratorContext\n ) => {\n const {slot} = options ?? {};\n const slotSelector = `slot${slot ? `[name=${slot}]` : ':not([name])'}`;\n return desc(obj, name, {\n get(this: ReactiveElement): V {\n const slotEl =\n this.renderRoot?.querySelector(slotSelector);\n return (slotEl?.assignedNodes(options) ?? []) as unknown as V;\n },\n });\n }) as QueryAssignedNodesDecorator;\n}\n"]} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators/query-async.d.ts b/tests/node_modules/@lit/reactive-element/development/decorators/query-async.d.ts deleted file mode 100644 index 062fdc4..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators/query-async.d.ts +++ /dev/null @@ -1,45 +0,0 @@ -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -import type { ReactiveElement } from '../reactive-element.js'; -import { type Interface } from './base.js'; -export type QueryAsyncDecorator = { - (proto: Interface, name: PropertyKey, descriptor?: PropertyDescriptor): void | any; - , V extends Promise>(value: ClassAccessorDecoratorTarget, context: ClassAccessorDecoratorContext): ClassAccessorDecoratorResult; -}; -/** - * A property decorator that converts a class property into a getter that - * returns a promise that resolves to the result of a querySelector on the - * element's renderRoot done after the element's `updateComplete` promise - * resolves. When the queried property may change with element state, this - * decorator can be used instead of requiring users to await the - * `updateComplete` before accessing the property. - * - * @param selector A DOMString containing one or more selectors to match. - * - * See: https://developer.mozilla.org/en-US/docs/Web/API/Document/querySelector - * - * ```ts - * class MyElement { - * @queryAsync('#first') - * first: Promise; - * - * render() { - * return html` - *
- *
- * `; - * } - * } - * - * // external usage - * async doSomethingWithFirst() { - * (await aMyElement.first).doSomething(); - * } - * ``` - * @category Decorator - */ -export declare function queryAsync(selector: string): QueryAsyncDecorator; -//# sourceMappingURL=query-async.d.ts.map \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators/query-async.d.ts.map b/tests/node_modules/@lit/reactive-element/development/decorators/query-async.d.ts.map deleted file mode 100644 index cc8a8ae..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators/query-async.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"query-async.d.ts","sourceRoot":"","sources":["../../src/decorators/query-async.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AASH,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAO,KAAK,SAAS,EAAC,MAAM,WAAW,CAAC;AAE/C,MAAM,MAAM,mBAAmB,GAAG;IAEhC,CACE,KAAK,EAAE,SAAS,CAAC,eAAe,CAAC,EACjC,IAAI,EAAE,WAAW,EACjB,UAAU,CAAC,EAAE,kBAAkB,GAG9B,IAAI,GAAG,GAAG,CAAC;IAGd,CAAC,CAAC,SAAS,SAAS,CAAC,eAAe,CAAC,EAAE,CAAC,SAAS,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,EACtE,KAAK,EAAE,4BAA4B,CAAC,CAAC,EAAE,CAAC,CAAC,EACzC,OAAO,EAAE,6BAA6B,CAAC,CAAC,EAAE,CAAC,CAAC,GAC3C,4BAA4B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;CACvC,CAAC;AAOF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,uBAY1C"} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators/query-async.js b/tests/node_modules/@lit/reactive-element/development/decorators/query-async.js deleted file mode 100644 index 913dd24..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators/query-async.js +++ /dev/null @@ -1,54 +0,0 @@ -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -import { desc } from './base.js'; -// Note, in the future, we may extend this decorator to support the use case -// where the queried element may need to do work to become ready to interact -// with (e.g. load some implementation code). If so, we might elect to -// add a second argument defining a function that can be run to make the -// queried element loaded/updated/ready. -/** - * A property decorator that converts a class property into a getter that - * returns a promise that resolves to the result of a querySelector on the - * element's renderRoot done after the element's `updateComplete` promise - * resolves. When the queried property may change with element state, this - * decorator can be used instead of requiring users to await the - * `updateComplete` before accessing the property. - * - * @param selector A DOMString containing one or more selectors to match. - * - * See: https://developer.mozilla.org/en-US/docs/Web/API/Document/querySelector - * - * ```ts - * class MyElement { - * @queryAsync('#first') - * first: Promise; - * - * render() { - * return html` - *
- *
- * `; - * } - * } - * - * // external usage - * async doSomethingWithFirst() { - * (await aMyElement.first).doSomething(); - * } - * ``` - * @category Decorator - */ -export function queryAsync(selector) { - return ((obj, name) => { - return desc(obj, name, { - async get() { - await this.updateComplete; - return this.renderRoot?.querySelector(selector) ?? null; - }, - }); - }); -} -//# sourceMappingURL=query-async.js.map \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators/query-async.js.map b/tests/node_modules/@lit/reactive-element/development/decorators/query-async.js.map deleted file mode 100644 index 6335754..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators/query-async.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"query-async.js","sourceRoot":"","sources":["../../src/decorators/query-async.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAUH,OAAO,EAAC,IAAI,EAAiB,MAAM,WAAW,CAAC;AAmB/C,4EAA4E;AAC5E,4EAA4E;AAC5E,sEAAsE;AACtE,wEAAwE;AACxE,wCAAwC;AACxC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,MAAM,UAAU,UAAU,CAAC,QAAgB;IACzC,OAAO,CAAC,CACN,GAAW,EACX,IAAmE,EACnE,EAAE;QACF,OAAO,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE;YACrB,KAAK,CAAC,GAAG;gBACP,MAAM,IAAI,CAAC,cAAc,CAAC;gBAC1B,OAAO,IAAI,CAAC,UAAU,EAAE,aAAa,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC;YAC1D,CAAC;SACF,CAAC,CAAC;IACL,CAAC,CAAwB,CAAC;AAC5B,CAAC","sourcesContent":["/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n/*\n * IMPORTANT: For compatibility with tsickle and the Closure JS compiler, all\n * property decorators (but not class decorators) in this file that have\n * an @ExportDecoratedItems annotation must be defined as a regular function,\n * not an arrow function.\n */\n\nimport type {ReactiveElement} from '../reactive-element.js';\nimport {desc, type Interface} from './base.js';\n\nexport type QueryAsyncDecorator = {\n // legacy\n (\n proto: Interface,\n name: PropertyKey,\n descriptor?: PropertyDescriptor\n // Note TypeScript requires the return type to be `void|any`\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ): void | any;\n\n // standard\n , V extends Promise>(\n value: ClassAccessorDecoratorTarget,\n context: ClassAccessorDecoratorContext\n ): ClassAccessorDecoratorResult;\n};\n\n// Note, in the future, we may extend this decorator to support the use case\n// where the queried element may need to do work to become ready to interact\n// with (e.g. load some implementation code). If so, we might elect to\n// add a second argument defining a function that can be run to make the\n// queried element loaded/updated/ready.\n/**\n * A property decorator that converts a class property into a getter that\n * returns a promise that resolves to the result of a querySelector on the\n * element's renderRoot done after the element's `updateComplete` promise\n * resolves. When the queried property may change with element state, this\n * decorator can be used instead of requiring users to await the\n * `updateComplete` before accessing the property.\n *\n * @param selector A DOMString containing one or more selectors to match.\n *\n * See: https://developer.mozilla.org/en-US/docs/Web/API/Document/querySelector\n *\n * ```ts\n * class MyElement {\n * @queryAsync('#first')\n * first: Promise;\n *\n * render() {\n * return html`\n *
\n *
\n * `;\n * }\n * }\n *\n * // external usage\n * async doSomethingWithFirst() {\n * (await aMyElement.first).doSomething();\n * }\n * ```\n * @category Decorator\n */\nexport function queryAsync(selector: string) {\n return ((\n obj: object,\n name: PropertyKey | ClassAccessorDecoratorContext\n ) => {\n return desc(obj, name, {\n async get(this: ReactiveElement) {\n await this.updateComplete;\n return this.renderRoot?.querySelector(selector) ?? null;\n },\n });\n }) as QueryAsyncDecorator;\n}\n"]} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators/query.d.ts b/tests/node_modules/@lit/reactive-element/development/decorators/query.d.ts deleted file mode 100644 index 06c860c..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators/query.d.ts +++ /dev/null @@ -1,38 +0,0 @@ -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -import type { ReactiveElement } from '../reactive-element.js'; -import { type Interface } from './base.js'; -export type QueryDecorator = { - (proto: Interface, name: PropertyKey, descriptor?: PropertyDescriptor): void | any; - , V extends Element | null>(value: ClassAccessorDecoratorTarget, context: ClassAccessorDecoratorContext): ClassAccessorDecoratorResult; -}; -/** - * A property decorator that converts a class property into a getter that - * executes a querySelector on the element's renderRoot. - * - * @param selector A DOMString containing one or more selectors to match. - * @param cache An optional boolean which when true performs the DOM query only - * once and caches the result. - * - * See: https://developer.mozilla.org/en-US/docs/Web/API/Document/querySelector - * - * ```ts - * class MyElement { - * @query('#first') - * first: HTMLDivElement; - * - * render() { - * return html` - *
- *
- * `; - * } - * } - * ``` - * @category Decorator - */ -export declare function query(selector: string, cache?: boolean): QueryDecorator; -//# sourceMappingURL=query.d.ts.map \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators/query.d.ts.map b/tests/node_modules/@lit/reactive-element/development/decorators/query.d.ts.map deleted file mode 100644 index b73e4b6..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators/query.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"query.d.ts","sourceRoot":"","sources":["../../src/decorators/query.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAQH,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAO,KAAK,SAAS,EAAC,MAAM,WAAW,CAAC;AAwB/C,MAAM,MAAM,cAAc,GAAG;IAE3B,CACE,KAAK,EAAE,SAAS,CAAC,eAAe,CAAC,EACjC,IAAI,EAAE,WAAW,EACjB,UAAU,CAAC,EAAE,kBAAkB,GAG9B,IAAI,GAAG,GAAG,CAAC;IAGd,CAAC,CAAC,SAAS,SAAS,CAAC,eAAe,CAAC,EAAE,CAAC,SAAS,OAAO,GAAG,IAAI,EAC7D,KAAK,EAAE,4BAA4B,CAAC,CAAC,EAAE,CAAC,CAAC,EACzC,OAAO,EAAE,6BAA6B,CAAC,CAAC,EAAE,CAAC,CAAC,GAC3C,4BAA4B,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;CACvC,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,KAAK,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO,GAAG,cAAc,CA4EvE"} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators/query.js b/tests/node_modules/@lit/reactive-element/development/decorators/query.js deleted file mode 100644 index 37381a3..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators/query.js +++ /dev/null @@ -1,115 +0,0 @@ -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -import { desc } from './base.js'; -const DEV_MODE = true; -let issueWarning; -if (DEV_MODE) { - // Ensure warnings are issued only 1x, even if multiple versions of Lit - // are loaded. - const issuedWarnings = (globalThis.litIssuedWarnings ??= new Set()); - // Issue a warning, if we haven't already. - issueWarning = (code, warning) => { - warning += code - ? ` See https://lit.dev/msg/${code} for more information.` - : ''; - if (!issuedWarnings.has(warning)) { - console.warn(warning); - issuedWarnings.add(warning); - } - }; -} -/** - * A property decorator that converts a class property into a getter that - * executes a querySelector on the element's renderRoot. - * - * @param selector A DOMString containing one or more selectors to match. - * @param cache An optional boolean which when true performs the DOM query only - * once and caches the result. - * - * See: https://developer.mozilla.org/en-US/docs/Web/API/Document/querySelector - * - * ```ts - * class MyElement { - * @query('#first') - * first: HTMLDivElement; - * - * render() { - * return html` - *
- *
- * `; - * } - * } - * ``` - * @category Decorator - */ -export function query(selector, cache) { - return ((protoOrTarget, nameOrContext, descriptor) => { - const doQuery = (el) => { - const result = (el.renderRoot?.querySelector(selector) ?? null); - if (DEV_MODE && result === null && cache && !el.hasUpdated) { - const name = typeof nameOrContext === 'object' - ? nameOrContext.name - : nameOrContext; - issueWarning('', `@query'd field ${JSON.stringify(String(name))} with the 'cache' ` + - `flag set for selector '${selector}' has been accessed before ` + - `the first update and returned null. This is expected if the ` + - `renderRoot tree has not been provided beforehand (e.g. via ` + - `Declarative Shadow DOM). Therefore the value hasn't been cached.`); - } - // TODO: if we want to allow users to assert that the query will never - // return null, we need a new option and to throw here if the result - // is null. - return result; - }; - if (cache) { - // Accessors to wrap from either: - // 1. The decorator target, in the case of standard decorators - // 2. The property descriptor, in the case of experimental decorators - // on auto-accessors. - // 3. Functions that access our own cache-key property on the instance, - // in the case of experimental decorators on fields. - const { get, set } = typeof nameOrContext === 'object' - ? protoOrTarget - : descriptor ?? - (() => { - const key = DEV_MODE - ? Symbol(`${String(nameOrContext)} (@query() cache)`) - : Symbol(); - return { - get() { - return this[key]; - }, - set(v) { - this[key] = v; - }, - }; - })(); - return desc(protoOrTarget, nameOrContext, { - get() { - let result = get.call(this); - if (result === undefined) { - result = doQuery(this); - if (result !== null || this.hasUpdated) { - set.call(this, result); - } - } - return result; - }, - }); - } - else { - // This object works as the return type for both standard and - // experimental decorators. - return desc(protoOrTarget, nameOrContext, { - get() { - return doQuery(this); - }, - }); - } - }); -} -//# sourceMappingURL=query.js.map \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators/query.js.map b/tests/node_modules/@lit/reactive-element/development/decorators/query.js.map deleted file mode 100644 index 7a0209f..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators/query.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"query.js","sourceRoot":"","sources":["../../src/decorators/query.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n/*\n * IMPORTANT: For compatibility with tsickle and the Closure JS compiler, all\n * property decorators (but not class decorators) in this file that have\n * an @ExportDecoratedItems annotation must be defined as a regular function,\n * not an arrow function.\n */\nimport type {ReactiveElement} from '../reactive-element.js';\nimport {desc, type Interface} from './base.js';\n\nconst DEV_MODE = true;\n\nlet issueWarning: (code: string, warning: string) => void;\n\nif (DEV_MODE) {\n // Ensure warnings are issued only 1x, even if multiple versions of Lit\n // are loaded.\n const issuedWarnings: Set =\n (globalThis.litIssuedWarnings ??= new Set());\n\n // Issue a warning, if we haven't already.\n issueWarning = (code: string, warning: string) => {\n warning += code\n ? ` See https://lit.dev/msg/${code} for more information.`\n : '';\n if (!issuedWarnings.has(warning)) {\n console.warn(warning);\n issuedWarnings.add(warning);\n }\n };\n}\n\nexport type QueryDecorator = {\n // legacy\n (\n proto: Interface,\n name: PropertyKey,\n descriptor?: PropertyDescriptor\n // Note TypeScript requires the return type to be `void|any`\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n ): void | any;\n\n // standard\n , V extends Element | null>(\n value: ClassAccessorDecoratorTarget,\n context: ClassAccessorDecoratorContext\n ): ClassAccessorDecoratorResult;\n};\n\n/**\n * A property decorator that converts a class property into a getter that\n * executes a querySelector on the element's renderRoot.\n *\n * @param selector A DOMString containing one or more selectors to match.\n * @param cache An optional boolean which when true performs the DOM query only\n * once and caches the result.\n *\n * See: https://developer.mozilla.org/en-US/docs/Web/API/Document/querySelector\n *\n * ```ts\n * class MyElement {\n * @query('#first')\n * first: HTMLDivElement;\n *\n * render() {\n * return html`\n *
\n *
\n * `;\n * }\n * }\n * ```\n * @category Decorator\n */\nexport function query(selector: string, cache?: boolean): QueryDecorator {\n return (, V extends Element | null>(\n protoOrTarget: ClassAccessorDecoratorTarget,\n nameOrContext: PropertyKey | ClassAccessorDecoratorContext,\n descriptor?: PropertyDescriptor\n ) => {\n const doQuery = (el: Interface): V => {\n const result = (el.renderRoot?.querySelector(selector) ?? null) as V;\n if (DEV_MODE && result === null && cache && !el.hasUpdated) {\n const name =\n typeof nameOrContext === 'object'\n ? nameOrContext.name\n : nameOrContext;\n issueWarning(\n '',\n `@query'd field ${JSON.stringify(String(name))} with the 'cache' ` +\n `flag set for selector '${selector}' has been accessed before ` +\n `the first update and returned null. This is expected if the ` +\n `renderRoot tree has not been provided beforehand (e.g. via ` +\n `Declarative Shadow DOM). Therefore the value hasn't been cached.`\n );\n }\n // TODO: if we want to allow users to assert that the query will never\n // return null, we need a new option and to throw here if the result\n // is null.\n return result;\n };\n if (cache) {\n // Accessors to wrap from either:\n // 1. The decorator target, in the case of standard decorators\n // 2. The property descriptor, in the case of experimental decorators\n // on auto-accessors.\n // 3. Functions that access our own cache-key property on the instance,\n // in the case of experimental decorators on fields.\n const {get, set} =\n typeof nameOrContext === 'object'\n ? protoOrTarget\n : descriptor ??\n (() => {\n const key = DEV_MODE\n ? Symbol(`${String(nameOrContext)} (@query() cache)`)\n : Symbol();\n type WithCache = ReactiveElement & {\n [key: symbol]: Element | null;\n };\n return {\n get() {\n return (this as WithCache)[key];\n },\n set(v) {\n (this as WithCache)[key] = v;\n },\n };\n })();\n return desc(protoOrTarget, nameOrContext, {\n get(this: ReactiveElement): V {\n let result: V = get!.call(this);\n if (result === undefined) {\n result = doQuery(this);\n if (result !== null || this.hasUpdated) {\n set!.call(this, result);\n }\n }\n return result;\n },\n });\n } else {\n // This object works as the return type for both standard and\n // experimental decorators.\n return desc(protoOrTarget, nameOrContext, {\n get(this: ReactiveElement) {\n return doQuery(this);\n },\n });\n }\n }) as QueryDecorator;\n}\n"]} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators/state.d.ts b/tests/node_modules/@lit/reactive-element/development/decorators/state.d.ts deleted file mode 100644 index e3b9841..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators/state.d.ts +++ /dev/null @@ -1,29 +0,0 @@ -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -export interface StateDeclaration { - /** - * A function that indicates if a property should be considered changed when - * it is set. The function should take the `newValue` and `oldValue` and - * return `true` if an update should be requested. - */ - hasChanged?(value: Type, oldValue: Type): boolean; -} -/** - * @deprecated use StateDeclaration - */ -export type InternalPropertyDeclaration = StateDeclaration; -/** - * Declares a private or protected reactive property that still triggers - * updates to the element when it changes. It does not reflect from the - * corresponding attribute. - * - * Properties declared this way must not be used from HTML or HTML templating - * systems, they're solely for properties internal to the element. These - * properties may be renamed by optimization tools like closure compiler. - * @category Decorator - */ -export declare function state(options?: StateDeclaration): import("./property.js").PropertyDecorator; -//# sourceMappingURL=state.d.ts.map \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators/state.d.ts.map b/tests/node_modules/@lit/reactive-element/development/decorators/state.d.ts.map deleted file mode 100644 index 37bb756..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators/state.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../src/decorators/state.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAWH,MAAM,WAAW,gBAAgB,CAAC,IAAI,GAAG,OAAO;IAC9C;;;;OAIG;IACH,UAAU,CAAC,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,GAAG,OAAO,CAAC;CACnD;AAED;;GAEG;AACH,MAAM,MAAM,2BAA2B,CAAC,IAAI,GAAG,OAAO,IACpD,gBAAgB,CAAC,IAAI,CAAC,CAAC;AAEzB;;;;;;;;;GASG;AACH,wBAAgB,KAAK,CAAC,OAAO,CAAC,EAAE,gBAAgB,6CAS/C"} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators/state.js b/tests/node_modules/@lit/reactive-element/development/decorators/state.js deleted file mode 100644 index 8ea1281..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators/state.js +++ /dev/null @@ -1,33 +0,0 @@ -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -/* - * IMPORTANT: For compatibility with tsickle and the Closure JS compiler, all - * property decorators (but not class decorators) in this file that have - * an @ExportDecoratedItems annotation must be defined as a regular function, - * not an arrow function. - */ -import { property } from './property.js'; -/** - * Declares a private or protected reactive property that still triggers - * updates to the element when it changes. It does not reflect from the - * corresponding attribute. - * - * Properties declared this way must not be used from HTML or HTML templating - * systems, they're solely for properties internal to the element. These - * properties may be renamed by optimization tools like closure compiler. - * @category Decorator - */ -export function state(options) { - return property({ - ...options, - // Add both `state` and `attribute` because we found a third party - // controller that is keying off of PropertyOptions.state to determine - // whether a field is a private internal property or not. - state: true, - attribute: false, - }); -} -//# sourceMappingURL=state.js.map \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/decorators/state.js.map b/tests/node_modules/@lit/reactive-element/development/decorators/state.js.map deleted file mode 100644 index d6602df..0000000 --- a/tests/node_modules/@lit/reactive-element/development/decorators/state.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"state.js","sourceRoot":"","sources":["../../src/decorators/state.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;;GAKG;AAEH,OAAO,EAAC,QAAQ,EAAC,MAAM,eAAe,CAAC;AAiBvC;;;;;;;;;GASG;AACH,MAAM,UAAU,KAAK,CAAC,OAA0B;IAC9C,OAAO,QAAQ,CAAC;QACd,GAAG,OAAO;QACV,kEAAkE;QAClE,sEAAsE;QACtE,yDAAyD;QACzD,KAAK,EAAE,IAAI;QACX,SAAS,EAAE,KAAK;KACjB,CAAC,CAAC;AACL,CAAC","sourcesContent":["/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n/*\n * IMPORTANT: For compatibility with tsickle and the Closure JS compiler, all\n * property decorators (but not class decorators) in this file that have\n * an @ExportDecoratedItems annotation must be defined as a regular function,\n * not an arrow function.\n */\n\nimport {property} from './property.js';\n\nexport interface StateDeclaration {\n /**\n * A function that indicates if a property should be considered changed when\n * it is set. The function should take the `newValue` and `oldValue` and\n * return `true` if an update should be requested.\n */\n hasChanged?(value: Type, oldValue: Type): boolean;\n}\n\n/**\n * @deprecated use StateDeclaration\n */\nexport type InternalPropertyDeclaration =\n StateDeclaration;\n\n/**\n * Declares a private or protected reactive property that still triggers\n * updates to the element when it changes. It does not reflect from the\n * corresponding attribute.\n *\n * Properties declared this way must not be used from HTML or HTML templating\n * systems, they're solely for properties internal to the element. These\n * properties may be renamed by optimization tools like closure compiler.\n * @category Decorator\n */\nexport function state(options?: StateDeclaration) {\n return property({\n ...options,\n // Add both `state` and `attribute` because we found a third party\n // controller that is keying off of PropertyOptions.state to determine\n // whether a field is a private internal property or not.\n state: true,\n attribute: false,\n });\n}\n"]} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/polyfill-support.d.ts b/tests/node_modules/@lit/reactive-element/development/polyfill-support.d.ts deleted file mode 100644 index f97127f..0000000 --- a/tests/node_modules/@lit/reactive-element/development/polyfill-support.d.ts +++ /dev/null @@ -1,18 +0,0 @@ -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -/** - * ReactiveElement patch to support browsers without native web components. - * - * This module should be used in addition to loading the web components - * polyfills via @webcomponents/webcomponentjs. When using those polyfills - * support for polyfilled Shadow DOM is automatic via the ShadyDOM polyfill, but - * support for Shadow DOM like css scoping is opt-in. This module uses ShadyCSS - * to scope styles defined via the `static styles` property. - * - * @packageDocumentation - */ -export {}; -//# sourceMappingURL=polyfill-support.d.ts.map \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/polyfill-support.d.ts.map b/tests/node_modules/@lit/reactive-element/development/polyfill-support.d.ts.map deleted file mode 100644 index 7af0270..0000000 --- a/tests/node_modules/@lit/reactive-element/development/polyfill-support.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"polyfill-support.d.ts","sourceRoot":"","sources":["../src/polyfill-support.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,CAAC"} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/polyfill-support.js b/tests/node_modules/@lit/reactive-element/development/polyfill-support.js deleted file mode 100644 index e7e0863..0000000 --- a/tests/node_modules/@lit/reactive-element/development/polyfill-support.js +++ /dev/null @@ -1,99 +0,0 @@ -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -var _a, _b; -var SCOPED = '__scoped'; -// Note, explicitly use `var` here so that this can be re-defined when -// bundled. -// eslint-disable-next-line no-var -var DEV_MODE = true; -var polyfillSupport = function (_a) { - var ReactiveElement = _a.ReactiveElement; - // polyfill-support is only needed if ShadyCSS or the ApplyShim is in use - // We test at the point of patching, which makes it safe to load - // webcomponentsjs and polyfill-support in either order - if (window.ShadyCSS === undefined || - (window.ShadyCSS.nativeShadow && !window.ShadyCSS.ApplyShim)) { - return; - } - // console.log( - // '%c Making ReactiveElement compatible with ShadyDOM/CSS.', - // 'color: lightgreen; font-style: italic' - // ); - var elementProto = ReactiveElement.prototype; - // In noPatch mode, patch the ReactiveElement prototype so that no - // ReactiveElements must be wrapped. - if (window.ShadyDOM && - window.ShadyDOM.inUse && - window.ShadyDOM.noPatch === true) { - window.ShadyDOM.patchElementProto(elementProto); - } - /** - * Patch to apply adoptedStyleSheets via ShadyCSS - */ - var createRenderRoot = elementProto.createRenderRoot; - elementProto.createRenderRoot = function () { - var _a, _b, _c; - // Pass the scope to render options so that it gets to lit-html for proper - // scoping via ShadyCSS. - var name = this.localName; - // If using native Shadow DOM must adoptStyles normally, - // otherwise do nothing. - if (window.ShadyCSS.nativeShadow) { - return createRenderRoot.call(this); - } - else { - if (!this.constructor.hasOwnProperty(SCOPED)) { - this.constructor[SCOPED] = - true; - // Use ShadyCSS's `prepareAdoptedCssText` to shim adoptedStyleSheets. - var css = this.constructor.elementStyles.map(function (v) { - return v instanceof CSSStyleSheet - ? Array.from(v.cssRules).reduce(function (a, r) { return (a += r.cssText); }, '') - : v.cssText; - }); - (_b = (_a = window.ShadyCSS) === null || _a === void 0 ? void 0 : _a.ScopingShim) === null || _b === void 0 ? void 0 : _b.prepareAdoptedCssText(css, name); - if (this.constructor._$handlesPrepareStyles === undefined) { - window.ShadyCSS.prepareTemplateStyles(document.createElement('template'), name); - } - } - return ((_c = this.shadowRoot) !== null && _c !== void 0 ? _c : this.attachShadow(this.constructor - .shadowRootOptions)); - } - }; - /** - * Patch connectedCallback to apply ShadyCSS custom properties shimming. - */ - var connectedCallback = elementProto.connectedCallback; - elementProto.connectedCallback = function () { - connectedCallback.call(this); - // Note, must do first update separately so that we're ensured - // that rendering has completed before calling this. - if (this.hasUpdated) { - window.ShadyCSS.styleElement(this); - } - }; - /** - * Patch update to apply ShadyCSS custom properties shimming for first - * update. - */ - var didUpdate = elementProto._$didUpdate; - elementProto._$didUpdate = function (changedProperties) { - // Note, must do first update here so rendering has completed before - // calling this and styles are correct by updated/firstUpdated. - if (!this.hasUpdated) { - window.ShadyCSS.styleElement(this); - } - didUpdate.call(this, changedProperties); - }; -}; -if (DEV_MODE) { - (_a = globalThis.reactiveElementPolyfillSupportDevMode) !== null && _a !== void 0 ? _a : (globalThis.reactiveElementPolyfillSupportDevMode = polyfillSupport); -} -else { - (_b = globalThis.reactiveElementPolyfillSupport) !== null && _b !== void 0 ? _b : (globalThis.reactiveElementPolyfillSupport = polyfillSupport); -} -export {}; -//# sourceMappingURL=polyfill-support.js.map \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/polyfill-support.js.map b/tests/node_modules/@lit/reactive-element/development/polyfill-support.js.map deleted file mode 100644 index e053280..0000000 --- a/tests/node_modules/@lit/reactive-element/development/polyfill-support.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"polyfill-support.js","sourceRoot":"","sources":["../src/polyfill-support.ts"],"names":[],"mappings":"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","sourcesContent":["/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n/**\n * ReactiveElement patch to support browsers without native web components.\n *\n * This module should be used in addition to loading the web components\n * polyfills via @webcomponents/webcomponentjs. When using those polyfills\n * support for polyfilled Shadow DOM is automatic via the ShadyDOM polyfill, but\n * support for Shadow DOM like css scoping is opt-in. This module uses ShadyCSS\n * to scope styles defined via the `static styles` property.\n *\n * @packageDocumentation\n */\n\nexport {};\n\ninterface RenderOptions {\n readonly renderBefore?: ChildNode | null;\n scope?: string;\n}\n\nconst SCOPED = '__scoped';\n\ntype CSSResults = Array<{cssText: string} | CSSStyleSheet>;\n\ninterface PatchableReactiveElementConstructor {\n [SCOPED]: boolean;\n elementStyles: CSSResults;\n shadowRootOptions: ShadowRootInit;\n _$handlesPrepareStyles?: boolean;\n}\n\ninterface PatchableReactiveElement extends HTMLElement {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any, @typescript-eslint/no-misused-new\n new (...args: any[]): PatchableReactiveElement;\n constructor: PatchableReactiveElementConstructor;\n connectedCallback(): void;\n hasUpdated: boolean;\n _$didUpdate(changedProperties: unknown): void;\n createRenderRoot(): Element | ShadowRoot;\n renderOptions: RenderOptions;\n}\n\n// Note, explicitly use `var` here so that this can be re-defined when\n// bundled.\n// eslint-disable-next-line no-var\nvar DEV_MODE = true;\n\nconst polyfillSupport = ({\n ReactiveElement,\n}: {\n ReactiveElement: PatchableReactiveElement;\n}) => {\n // polyfill-support is only needed if ShadyCSS or the ApplyShim is in use\n // We test at the point of patching, which makes it safe to load\n // webcomponentsjs and polyfill-support in either order\n if (\n window.ShadyCSS === undefined ||\n (window.ShadyCSS.nativeShadow && !window.ShadyCSS.ApplyShim)\n ) {\n return;\n }\n\n // console.log(\n // '%c Making ReactiveElement compatible with ShadyDOM/CSS.',\n // 'color: lightgreen; font-style: italic'\n // );\n\n const elementProto = ReactiveElement.prototype;\n\n // In noPatch mode, patch the ReactiveElement prototype so that no\n // ReactiveElements must be wrapped.\n if (\n window.ShadyDOM &&\n window.ShadyDOM.inUse &&\n window.ShadyDOM.noPatch === true\n ) {\n window.ShadyDOM.patchElementProto(elementProto);\n }\n\n /**\n * Patch to apply adoptedStyleSheets via ShadyCSS\n */\n const createRenderRoot = elementProto.createRenderRoot;\n elementProto.createRenderRoot = function (this: PatchableReactiveElement) {\n // Pass the scope to render options so that it gets to lit-html for proper\n // scoping via ShadyCSS.\n const name = this.localName;\n // If using native Shadow DOM must adoptStyles normally,\n // otherwise do nothing.\n if (window.ShadyCSS!.nativeShadow) {\n return createRenderRoot.call(this);\n } else {\n if (!this.constructor.hasOwnProperty(SCOPED)) {\n (this.constructor as PatchableReactiveElementConstructor)[SCOPED] =\n true;\n // Use ShadyCSS's `prepareAdoptedCssText` to shim adoptedStyleSheets.\n const css = (\n this.constructor as PatchableReactiveElementConstructor\n ).elementStyles.map((v) =>\n v instanceof CSSStyleSheet\n ? Array.from(v.cssRules).reduce(\n (a: string, r: CSSRule) => (a += r.cssText),\n ''\n )\n : v.cssText\n );\n window.ShadyCSS?.ScopingShim?.prepareAdoptedCssText(css, name);\n if (this.constructor._$handlesPrepareStyles === undefined) {\n window.ShadyCSS!.prepareTemplateStyles(\n document.createElement('template'),\n name\n );\n }\n }\n return (\n this.shadowRoot ??\n this.attachShadow(\n (this.constructor as PatchableReactiveElementConstructor)\n .shadowRootOptions\n )\n );\n }\n };\n\n /**\n * Patch connectedCallback to apply ShadyCSS custom properties shimming.\n */\n const connectedCallback = elementProto.connectedCallback;\n elementProto.connectedCallback = function (this: PatchableReactiveElement) {\n connectedCallback.call(this);\n // Note, must do first update separately so that we're ensured\n // that rendering has completed before calling this.\n if (this.hasUpdated) {\n window.ShadyCSS!.styleElement(this);\n }\n };\n\n /**\n * Patch update to apply ShadyCSS custom properties shimming for first\n * update.\n */\n const didUpdate = elementProto._$didUpdate;\n elementProto._$didUpdate = function (\n this: PatchableReactiveElement,\n changedProperties: unknown\n ) {\n // Note, must do first update here so rendering has completed before\n // calling this and styles are correct by updated/firstUpdated.\n if (!this.hasUpdated) {\n window.ShadyCSS!.styleElement(this);\n }\n didUpdate.call(this, changedProperties);\n };\n};\n\nif (DEV_MODE) {\n globalThis.reactiveElementPolyfillSupportDevMode ??= polyfillSupport;\n} else {\n globalThis.reactiveElementPolyfillSupport ??= polyfillSupport;\n}\n"]} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/reactive-controller.d.ts b/tests/node_modules/@lit/reactive-element/development/reactive-controller.d.ts deleted file mode 100644 index 3a35f10..0000000 --- a/tests/node_modules/@lit/reactive-element/development/reactive-controller.d.ts +++ /dev/null @@ -1,77 +0,0 @@ -/** - * @license - * Copyright 2021 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -/** - * An object that can host Reactive Controllers and call their lifecycle - * callbacks. - */ -export interface ReactiveControllerHost { - /** - * Adds a controller to the host, which sets up the controller's lifecycle - * methods to be called with the host's lifecycle. - */ - addController(controller: ReactiveController): void; - /** - * Removes a controller from the host. - */ - removeController(controller: ReactiveController): void; - /** - * Requests a host update which is processed asynchronously. The update can - * be waited on via the `updateComplete` property. - */ - requestUpdate(): void; - /** - * Returns a Promise that resolves when the host has completed updating. - * The Promise value is a boolean that is `true` if the element completed the - * update without triggering another update. The Promise result is `false` if - * a property was set inside `updated()`. If the Promise is rejected, an - * exception was thrown during the update. - * - * @return A promise of a boolean that indicates if the update resolved - * without triggering another update. - */ - readonly updateComplete: Promise; -} -/** - * A Reactive Controller is an object that enables sub-component code - * organization and reuse by aggregating the state, behavior, and lifecycle - * hooks related to a single feature. - * - * Controllers are added to a host component, or other object that implements - * the `ReactiveControllerHost` interface, via the `addController()` method. - * They can hook their host components's lifecycle by implementing one or more - * of the lifecycle callbacks, or initiate an update of the host component by - * calling `requestUpdate()` on the host. - */ -export interface ReactiveController { - /** - * Called when the host is connected to the component tree. For custom - * element hosts, this corresponds to the `connectedCallback()` lifecycle, - * which is only called when the component is connected to the document. - */ - hostConnected?(): void; - /** - * Called when the host is disconnected from the component tree. For custom - * element hosts, this corresponds to the `disconnectedCallback()` lifecycle, - * which is called the host or an ancestor component is disconnected from the - * document. - */ - hostDisconnected?(): void; - /** - * Called during the client-side host update, just before the host calls - * its own update. - * - * Code in `update()` can depend on the DOM as it is not called in - * server-side rendering. - */ - hostUpdate?(): void; - /** - * Called after a host update, just before the host calls firstUpdated and - * updated. It is not called in server-side rendering. - * - */ - hostUpdated?(): void; -} -//# sourceMappingURL=reactive-controller.d.ts.map \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/reactive-controller.d.ts.map b/tests/node_modules/@lit/reactive-element/development/reactive-controller.d.ts.map deleted file mode 100644 index e0560d1..0000000 --- a/tests/node_modules/@lit/reactive-element/development/reactive-controller.d.ts.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"reactive-controller.d.ts","sourceRoot":"","sources":["../src/reactive-controller.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;GAGG;AACH,MAAM,WAAW,sBAAsB;IACrC;;;OAGG;IACH,aAAa,CAAC,UAAU,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAEpD;;OAEG;IACH,gBAAgB,CAAC,UAAU,EAAE,kBAAkB,GAAG,IAAI,CAAC;IAEvD;;;OAGG;IACH,aAAa,IAAI,IAAI,CAAC;IAEtB;;;;;;;;;OASG;IACH,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAC,OAAO,CAAC,CAAC;CAC3C;AAED;;;;;;;;;;GAUG;AACH,MAAM,WAAW,kBAAkB;IACjC;;;;OAIG;IACH,aAAa,CAAC,IAAI,IAAI,CAAC;IAEvB;;;;;OAKG;IACH,gBAAgB,CAAC,IAAI,IAAI,CAAC;IAE1B;;;;;;OAMG;IACH,UAAU,CAAC,IAAI,IAAI,CAAC;IAEpB;;;;OAIG;IACH,WAAW,CAAC,IAAI,IAAI,CAAC;CACtB"} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/reactive-controller.js b/tests/node_modules/@lit/reactive-element/development/reactive-controller.js deleted file mode 100644 index 0bacd92..0000000 --- a/tests/node_modules/@lit/reactive-element/development/reactive-controller.js +++ /dev/null @@ -1,7 +0,0 @@ -/** - * @license - * Copyright 2021 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -export {}; -//# sourceMappingURL=reactive-controller.js.map \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/reactive-controller.js.map b/tests/node_modules/@lit/reactive-element/development/reactive-controller.js.map deleted file mode 100644 index 996785d..0000000 --- a/tests/node_modules/@lit/reactive-element/development/reactive-controller.js.map +++ /dev/null @@ -1 +0,0 @@ -{"version":3,"file":"reactive-controller.js","sourceRoot":"","sources":["../src/reactive-controller.ts"],"names":[],"mappings":"AAAA;;;;GAIG","sourcesContent":["/**\n * @license\n * Copyright 2021 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n/**\n * An object that can host Reactive Controllers and call their lifecycle\n * callbacks.\n */\nexport interface ReactiveControllerHost {\n /**\n * Adds a controller to the host, which sets up the controller's lifecycle\n * methods to be called with the host's lifecycle.\n */\n addController(controller: ReactiveController): void;\n\n /**\n * Removes a controller from the host.\n */\n removeController(controller: ReactiveController): void;\n\n /**\n * Requests a host update which is processed asynchronously. The update can\n * be waited on via the `updateComplete` property.\n */\n requestUpdate(): void;\n\n /**\n * Returns a Promise that resolves when the host has completed updating.\n * The Promise value is a boolean that is `true` if the element completed the\n * update without triggering another update. The Promise result is `false` if\n * a property was set inside `updated()`. If the Promise is rejected, an\n * exception was thrown during the update.\n *\n * @return A promise of a boolean that indicates if the update resolved\n * without triggering another update.\n */\n readonly updateComplete: Promise;\n}\n\n/**\n * A Reactive Controller is an object that enables sub-component code\n * organization and reuse by aggregating the state, behavior, and lifecycle\n * hooks related to a single feature.\n *\n * Controllers are added to a host component, or other object that implements\n * the `ReactiveControllerHost` interface, via the `addController()` method.\n * They can hook their host components's lifecycle by implementing one or more\n * of the lifecycle callbacks, or initiate an update of the host component by\n * calling `requestUpdate()` on the host.\n */\nexport interface ReactiveController {\n /**\n * Called when the host is connected to the component tree. For custom\n * element hosts, this corresponds to the `connectedCallback()` lifecycle,\n * which is only called when the component is connected to the document.\n */\n hostConnected?(): void;\n\n /**\n * Called when the host is disconnected from the component tree. For custom\n * element hosts, this corresponds to the `disconnectedCallback()` lifecycle,\n * which is called the host or an ancestor component is disconnected from the\n * document.\n */\n hostDisconnected?(): void;\n\n /**\n * Called during the client-side host update, just before the host calls\n * its own update.\n *\n * Code in `update()` can depend on the DOM as it is not called in\n * server-side rendering.\n */\n hostUpdate?(): void;\n\n /**\n * Called after a host update, just before the host calls firstUpdated and\n * updated. It is not called in server-side rendering.\n *\n */\n hostUpdated?(): void;\n}\n"]} \ No newline at end of file diff --git a/tests/node_modules/@lit/reactive-element/development/reactive-element.d.ts b/tests/node_modules/@lit/reactive-element/development/reactive-element.d.ts deleted file mode 100644 index 654e5d2..0000000 --- a/tests/node_modules/@lit/reactive-element/development/reactive-element.d.ts +++ /dev/null @@ -1,744 +0,0 @@ -/** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - */ -/** - * Use this module if you want to create your own base class extending - * {@link ReactiveElement}. - * @packageDocumentation - */ -import { CSSResultGroup, CSSResultOrNative } from './css-tag.js'; -import type { ReactiveController, ReactiveControllerHost } from './reactive-controller.js'; -export * from './css-tag.js'; -export type { ReactiveController, ReactiveControllerHost, } from './reactive-controller.js'; -/** - * Contains types that are part of the unstable debug API. - * - * Everything in this API is not stable and may change or be removed in the future, - * even on patch releases. - */ -export declare namespace ReactiveUnstable { - /** - * When Lit is running in dev mode and `window.emitLitDebugLogEvents` is true, - * we will emit 'lit-debug' events to window, with live details about the update and render - * lifecycle. These can be useful for writing debug tooling and visualizations. - * - * Please be aware that running with window.emitLitDebugLogEvents has performance overhead, - * making certain operations that are normally very cheap (like a no-op render) much slower, - * because we must copy data and dispatch events. - */ - namespace DebugLog { - type Entry = Update; - interface Update { - kind: 'update'; - } - } -} -/** - * Converts property values to and from attribute values. - */ -export interface ComplexAttributeConverter { - /** - * Called to convert an attribute value to a property - * value. - */ - fromAttribute?(value: string | null, type?: TypeHint): Type; - /** - * Called to convert a property value to an attribute - * value. - * - * It returns unknown instead of string, to be compatible with - * https://github.com/WICG/trusted-types (and similar efforts). - */ - toAttribute?(value: Type, type?: TypeHint): unknown; -} -type AttributeConverter = ComplexAttributeConverter | ((value: string | null, type?: TypeHint) => Type); -/** - * Defines options for a property accessor. - */ -export interface PropertyDeclaration { - /** - * When set to `true`, indicates the property is internal private state. The - * property should not be set by users. When using TypeScript, this property - * should be marked as `private` or `protected`, and it is also a common - * practice to use a leading `_` in the name. The property is not added to - * `observedAttributes`. - */ - readonly state?: boolean; - /** - * Indicates how and whether the property becomes an observed attribute. - * If the value is `false`, the property is not added to `observedAttributes`. - * If true or absent, the lowercased property name is observed (e.g. `fooBar` - * becomes `foobar`). If a string, the string value is observed (e.g - * `attribute: 'foo-bar'`). - */ - readonly attribute?: boolean | string; - /** - * Indicates the type of the property. This is used only as a hint for the - * `converter` to determine how to convert the attribute - * to/from a property. - */ - readonly type?: TypeHint; - /** - * Indicates how to convert the attribute to/from a property. If this value - * is a function, it is used to convert the attribute value a the property - * value. If it's an object, it can have keys for `fromAttribute` and - * `toAttribute`. If no `toAttribute` function is provided and - * `reflect` is set to `true`, the property value is set directly to the - * attribute. A default `converter` is used if none is provided; it supports - * `Boolean`, `String`, `Number`, `Object`, and `Array`. Note, - * when a property changes and the converter is used to update the attribute, - * the property is never updated again as a result of the attribute changing, - * and vice versa. - */ - readonly converter?: AttributeConverter; - /** - * Indicates if the property should reflect to an attribute. - * If `true`, when the property is set, the attribute is set using the - * attribute name determined according to the rules for the `attribute` - * property option and the value of the property converted using the rules - * from the `converter` property option. - */ - readonly reflect?: boolean; - /** - * A function that indicates if a property should be considered changed when - * it is set. The function should take the `newValue` and `oldValue` and - * return `true` if an update should be requested. - */ - hasChanged?(value: Type, oldValue: Type): boolean; - /** - * Indicates whether an accessor will be created for this property. By - * default, an accessor will be generated for this property that requests an - * update when set. If this flag is `true`, no accessor will be created, and - * it will be the user's responsibility to call - * `this.requestUpdate(propertyName, oldValue)` to request an update when - * the property changes. - */ - readonly noAccessor?: boolean; -} -/** - * Map of properties to PropertyDeclaration options. For each property an - * accessor is made, and the property is processed according to the - * PropertyDeclaration options. - */ -export interface PropertyDeclarations { - readonly [key: string]: PropertyDeclaration; -} -type PropertyDeclarationMap = Map; -/** - * A Map of property keys to values. - * - * Takes an optional type parameter T, which when specified as a non-any, - * non-unknown type, will make the Map more strongly-typed, associating the map - * keys with their corresponding value type on T. - * - * Use `PropertyValues` when overriding ReactiveElement.update() and - * other lifecycle methods in order to get stronger type-checking on keys - * and values. - */ -export type PropertyValues = T extends object ? PropertyValueMap : Map; -/** - * Do not use, instead prefer {@linkcode PropertyValues}. - */ -export interface PropertyValueMap extends Map { - get(k: K): T[K] | undefined; - set(key: K, value: T[K]): this; - has(k: K): boolean; - delete(k: K): boolean; -} -export declare const defaultConverter: ComplexAttributeConverter; -export interface HasChanged { - (value: unknown, old: unknown): boolean; -} -/** - * Change function that returns true if `value` is different from `oldValue`. - * This method is used as the default for a property's `hasChanged` function. - */ -export declare const notEqual: HasChanged; -/** - * A string representing one of the supported dev mode warning categories. - */ -export type WarningKind = 'change-in-update' | 'migration' | 'async-perform-update'; -export type Initializer = (element: ReactiveElement) => void; -declare global { - interface SymbolConstructor { - readonly metadata: unique symbol; - } -} -declare global { - var litPropertyMetadata: WeakMap>; -} -/** - * Base element class which manages element properties and attributes. When - * properties change, the `update` method is asynchronously called. This method - * should be supplied by subclasses to render updates as desired. - * @noInheritDoc - */ -export declare abstract class ReactiveElement extends HTMLElement implements ReactiveControllerHost { - /** - * Read or set all the enabled warning categories for this class. - * - * This property is only used in development builds. - * - * @nocollapse - * @category dev-mode - */ - static enabledWarnings?: WarningKind[]; - /** - * Enable the given warning category for this class. - * - * This method only exists in development builds, so it should be accessed - * with a guard like: - * - * ```ts - * // Enable for all ReactiveElement subclasses - * ReactiveElement.enableWarning?.('migration'); - * - * // Enable for only MyElement and subclasses - * MyElement.enableWarning?.('migration'); - * ``` - * - * @nocollapse - * @category dev-mode - */ - static enableWarning?: (warningKind: WarningKind) => void; - /** - * Disable the given warning category for this class. - * - * This method only exists in development builds, so it should be accessed - * with a guard like: - * - * ```ts - * // Disable for all ReactiveElement subclasses - * ReactiveElement.disableWarning?.('migration'); - * - * // Disable for only MyElement and subclasses - * MyElement.disableWarning?.('migration'); - * ``` - * - * @nocollapse - * @category dev-mode - */ - static disableWarning?: (warningKind: WarningKind) => void; - /** - * Adds an initializer function to the class that is called during instance - * construction. - * - * This is useful for code that runs against a `ReactiveElement` - * subclass, such as a decorator, that needs to do work for each - * instance, such as setting up a `ReactiveController`. - * - * ```ts - * const myDecorator = (target: typeof ReactiveElement, key: string) => { - * target.addInitializer((instance: ReactiveElement) => { - * // This is run during construction of the element - * new MyController(instance); - * }); - * } - * ``` - * - * Decorating a field will then cause each instance to run an initializer - * that adds a controller: - * - * ```ts - * class MyElement extends LitElement { - * @myDecorator foo; - * } - * ``` - * - * Initializers are stored per-constructor. Adding an initializer to a - * subclass does not add it to a superclass. Since initializers are run in - * constructors, initializers will run in order of the class hierarchy, - * starting with superclasses and progressing to the instance's class. - * - * @nocollapse - */ - static addInitializer(initializer: Initializer): void; - static _initializers?: Initializer[]; - /** - * Maps attribute names to properties; for example `foobar` attribute to - * `fooBar` property. Created lazily on user subclasses when finalizing the - * class. - * @nocollapse - */ - private static __attributeToPropertyMap; - /** - * Marks class as having been finalized, which includes creating properties - * from `static properties`, but does *not* include all properties created - * from decorators. - * @nocollapse - */ - protected static finalized: true | undefined; - /** - * Memoized list of all element properties, including any superclass - * properties. Created lazily on user subclasses when finalizing the class. - * - * @nocollapse - * @category properties - */ - static elementProperties: PropertyDeclarationMap; - /** - * User-supplied object that maps property names to `PropertyDeclaration` - * objects containing options for configuring reactive properties. When - * a reactive property is set the element will update and render. - * - * By default properties are public fields, and as such, they should be - * considered as primarily settable by element users, either via attribute or - * the property itself. - * - * Generally, properties that are changed by the element should be private or - * protected fields and should use the `state: true` option. Properties - * marked as `state` do not reflect from the corresponding attribute - * - * However, sometimes element code does need to set a public property. This - * should typically only be done in response to user interaction, and an event - * should be fired informing the user; for example, a checkbox sets its - * `checked` property when clicked and fires a `changed` event. Mutating - * public properties should typically not be done for non-primitive (object or - * array) properties. In other cases when an element needs to manage state, a - * private property set with the `state: true` option should be used. When - * needed, state properties can be initialized via public properties to - * facilitate complex interactions. - * @nocollapse - * @category properties - */ - static properties: PropertyDeclarations; - /** - * Memoized list of all element styles. - * Created lazily on user subclasses when finalizing the class. - * @nocollapse - * @category styles - */ - static elementStyles: Array; - /** - * Array of styles to apply to the element. The styles should be defined - * using the {@linkcode css} tag function, via constructible stylesheets, or - * imported from native CSS module scripts. - * - * Note on Content Security Policy: - * - * Element styles are implemented with `")}function zr(){var Qr=re().querySelector('meta[name="htmx-config"]');return Qr?E(Qr.content):null}function $r(){var Qr=zr();Qr&&(Q.config=le(Q.config,Qr))}return jr(function(){$r(),_r();var Qr=re().body;zt(Qr);var Jr=re().querySelectorAll("[hx-trigger='restored'],[data-hx-trigger='restored']");Qr.addEventListener("htmx:abort",function(Wr){var Gr=Wr.target,Yr=ae(Gr);Yr&&Yr.xhr&&Yr.xhr.abort()});let Zr=window.onpopstate?window.onpopstate.bind(window):null;window.onpopstate=function(Wr){Wr.state&&Wr.state.htmx?(ar(),oe(Jr,function(Gr){ce(Gr,"htmx:restored",{document:re(),triggerEvent:ce})})):Zr&&Zr(Wr)},setTimeout(function(){ce(Qr,"htmx:load",{}),Qr=null},0)}),Q}()})});export default Yn(); -//# sourceMappingURL=htmx.min-YJV5XDD4.js.map diff --git a/tests/staticfiles/esm/node_modules/htmx.org/dist/htmx.min-YJV5XDD4.js.map b/tests/staticfiles/esm/node_modules/htmx.org/dist/htmx.min-YJV5XDD4.js.map deleted file mode 100644 index e4a2112..0000000 --- a/tests/staticfiles/esm/node_modules/htmx.org/dist/htmx.min-YJV5XDD4.js.map +++ /dev/null @@ -1,7 +0,0 @@ -{ - "version": 3, - "sources": ["../../../../../node_modules/htmx.org/dist/htmx.min.js"], - "sourcesContent": ["(function(e,t){if(typeof define===\"function\"&&define.amd){define([],t)}else if(typeof module===\"object\"&&module.exports){module.exports=t()}else{e.htmx=e.htmx||t()}})(typeof self!==\"undefined\"?self:this,function(){return function(){\"use strict\";var Q={onLoad:F,process:zt,on:de,off:ge,trigger:ce,ajax:Nr,find:C,findAll:f,closest:v,values:function(e,t){var r=dr(e,t||\"post\");return r.values},remove:_,addClass:z,removeClass:n,toggleClass:$,takeClass:W,defineExtension:Ur,removeExtension:Br,logAll:V,logNone:j,logger:null,config:{historyEnabled:true,historyCacheSize:10,refreshOnHistoryMiss:false,defaultSwapStyle:\"innerHTML\",defaultSwapDelay:0,defaultSettleDelay:20,includeIndicatorStyles:true,indicatorClass:\"htmx-indicator\",requestClass:\"htmx-request\",addedClass:\"htmx-added\",settlingClass:\"htmx-settling\",swappingClass:\"htmx-swapping\",allowEval:true,allowScriptTags:true,inlineScriptNonce:\"\",attributesToSettle:[\"class\",\"style\",\"width\",\"height\"],withCredentials:false,timeout:0,wsReconnectDelay:\"full-jitter\",wsBinaryType:\"blob\",disableSelector:\"[hx-disable], [data-hx-disable]\",useTemplateFragments:false,scrollBehavior:\"smooth\",defaultFocusScroll:false,getCacheBusterParam:false,globalViewTransitions:false,methodsThatUseUrlParams:[\"get\"],selfRequestsOnly:false,ignoreTitle:false,scrollIntoViewOnBoost:true,triggerSpecsCache:null},parseInterval:d,_:t,createEventSource:function(e){return new EventSource(e,{withCredentials:true})},createWebSocket:function(e){var t=new WebSocket(e,[]);t.binaryType=Q.config.wsBinaryType;return t},version:\"1.9.10\"};var r={addTriggerHandler:Lt,bodyContains:se,canAccessLocalStorage:U,findThisElement:xe,filterValues:yr,hasAttribute:o,getAttributeValue:te,getClosestAttributeValue:ne,getClosestMatch:c,getExpressionVars:Hr,getHeaders:xr,getInputValues:dr,getInternalData:ae,getSwapSpecification:wr,getTriggerSpecs:it,getTarget:ye,makeFragment:l,mergeObjects:le,makeSettleInfo:T,oobSwap:Ee,querySelectorExt:ue,selectAndSwap:je,settleImmediately:nr,shouldCancel:ut,triggerEvent:ce,triggerErrorEvent:fe,withExtensions:R};var w=[\"get\",\"post\",\"put\",\"delete\",\"patch\"];var i=w.map(function(e){return\"[hx-\"+e+\"], [data-hx-\"+e+\"]\"}).join(\", \");var S=e(\"head\"),q=e(\"title\"),H=e(\"svg\",true);function e(e,t=false){return new RegExp(`<${e}(\\\\s[^>]*>|>)([\\\\s\\\\S]*?)<\\\\/${e}>`,t?\"gim\":\"im\")}function d(e){if(e==undefined){return undefined}let t=NaN;if(e.slice(-2)==\"ms\"){t=parseFloat(e.slice(0,-2))}else if(e.slice(-1)==\"s\"){t=parseFloat(e.slice(0,-1))*1e3}else if(e.slice(-1)==\"m\"){t=parseFloat(e.slice(0,-1))*1e3*60}else{t=parseFloat(e)}return isNaN(t)?undefined:t}function ee(e,t){return e.getAttribute&&e.getAttribute(t)}function o(e,t){return e.hasAttribute&&(e.hasAttribute(t)||e.hasAttribute(\"data-\"+t))}function te(e,t){return ee(e,t)||ee(e,\"data-\"+t)}function u(e){return e.parentElement}function re(){return document}function c(e,t){while(e&&!t(e)){e=u(e)}return e?e:null}function L(e,t,r){var n=te(t,r);var i=te(t,\"hx-disinherit\");if(e!==t&&i&&(i===\"*\"||i.split(\" \").indexOf(r)>=0)){return\"unset\"}else{return n}}function ne(t,r){var n=null;c(t,function(e){return n=L(t,e,r)});if(n!==\"unset\"){return n}}function h(e,t){var r=e.matches||e.matchesSelector||e.msMatchesSelector||e.mozMatchesSelector||e.webkitMatchesSelector||e.oMatchesSelector;return r&&r.call(e,t)}function A(e){var t=/<([a-z][^\\/\\0>\\x20\\t\\r\\n\\f]*)/i;var r=t.exec(e);if(r){return r[1].toLowerCase()}else{return\"\"}}function a(e,t){var r=new DOMParser;var n=r.parseFromString(e,\"text/html\");var i=n.body;while(t>0){t--;i=i.firstChild}if(i==null){i=re().createDocumentFragment()}return i}function N(e){return/\",0);return i.querySelector(\"template\").content}switch(r){case\"thead\":case\"tbody\":case\"tfoot\":case\"colgroup\":case\"caption\":return a(\"\"+n+\"
\",1);case\"col\":return a(\"\"+n+\"
\",2);case\"tr\":return a(\"\"+n+\"
\",2);case\"td\":case\"th\":return a(\"\"+n+\"
\",3);case\"script\":case\"style\":return a(\"
\"+n+\"
\",1);default:return a(n,0)}}function ie(e){if(e){e()}}function I(e,t){return Object.prototype.toString.call(e)===\"[object \"+t+\"]\"}function k(e){return I(e,\"Function\")}function P(e){return I(e,\"Object\")}function ae(e){var t=\"htmx-internal-data\";var r=e[t];if(!r){r=e[t]={}}return r}function M(e){var t=[];if(e){for(var r=0;r=0}function se(e){if(e.getRootNode&&e.getRootNode()instanceof window.ShadowRoot){return re().body.contains(e.getRootNode().host)}else{return re().body.contains(e)}}function D(e){return e.trim().split(/\\s+/)}function le(e,t){for(var r in t){if(t.hasOwnProperty(r)){e[r]=t[r]}}return e}function E(e){try{return JSON.parse(e)}catch(e){b(e);return null}}function U(){var e=\"htmx:localStorageTest\";try{localStorage.setItem(e,e);localStorage.removeItem(e);return true}catch(e){return false}}function B(t){try{var e=new URL(t);if(e){t=e.pathname+e.search}if(!/^\\/$/.test(t)){t=t.replace(/\\/+$/,\"\")}return t}catch(e){return t}}function t(e){return Tr(re().body,function(){return eval(e)})}function F(t){var e=Q.on(\"htmx:load\",function(e){t(e.detail.elt)});return e}function V(){Q.logger=function(e,t,r){if(console){console.log(t,e,r)}}}function j(){Q.logger=null}function C(e,t){if(t){return e.querySelector(t)}else{return C(re(),e)}}function f(e,t){if(t){return e.querySelectorAll(t)}else{return f(re(),e)}}function _(e,t){e=g(e);if(t){setTimeout(function(){_(e);e=null},t)}else{e.parentElement.removeChild(e)}}function z(e,t,r){e=g(e);if(r){setTimeout(function(){z(e,t);e=null},r)}else{e.classList&&e.classList.add(t)}}function n(e,t,r){e=g(e);if(r){setTimeout(function(){n(e,t);e=null},r)}else{if(e.classList){e.classList.remove(t);if(e.classList.length===0){e.removeAttribute(\"class\")}}}}function $(e,t){e=g(e);e.classList.toggle(t)}function W(e,t){e=g(e);oe(e.parentElement.children,function(e){n(e,t)});z(e,t)}function v(e,t){e=g(e);if(e.closest){return e.closest(t)}else{do{if(e==null||h(e,t)){return e}}while(e=e&&u(e));return null}}function s(e,t){return e.substring(0,t.length)===t}function G(e,t){return e.substring(e.length-t.length)===t}function J(e){var t=e.trim();if(s(t,\"<\")&&G(t,\"/>\")){return t.substring(1,t.length-2)}else{return t}}function Z(e,t){if(t.indexOf(\"closest \")===0){return[v(e,J(t.substr(8)))]}else if(t.indexOf(\"find \")===0){return[C(e,J(t.substr(5)))]}else if(t===\"next\"){return[e.nextElementSibling]}else if(t.indexOf(\"next \")===0){return[K(e,J(t.substr(5)))]}else if(t===\"previous\"){return[e.previousElementSibling]}else if(t.indexOf(\"previous \")===0){return[Y(e,J(t.substr(9)))]}else if(t===\"document\"){return[document]}else if(t===\"window\"){return[window]}else if(t===\"body\"){return[document.body]}else{return re().querySelectorAll(J(t))}}var K=function(e,t){var r=re().querySelectorAll(t);for(var n=0;n=0;n--){var i=r[n];if(i.compareDocumentPosition(e)===Node.DOCUMENT_POSITION_FOLLOWING){return i}}};function ue(e,t){if(t){return Z(e,t)[0]}else{return Z(re().body,e)[0]}}function g(e){if(I(e,\"String\")){return C(e)}else{return e}}function ve(e,t,r){if(k(t)){return{target:re().body,event:e,listener:t}}else{return{target:g(e),event:t,listener:r}}}function de(t,r,n){jr(function(){var e=ve(t,r,n);e.target.addEventListener(e.event,e.listener)});var e=k(r);return e?r:n}function ge(t,r,n){jr(function(){var e=ve(t,r,n);e.target.removeEventListener(e.event,e.listener)});return k(r)?r:n}var me=re().createElement(\"output\");function pe(e,t){var r=ne(e,t);if(r){if(r===\"this\"){return[xe(e,t)]}else{var n=Z(e,r);if(n.length===0){b('The selector \"'+r+'\" on '+t+\" returned no matches!\");return[me]}else{return n}}}}function xe(e,t){return c(e,function(e){return te(e,t)!=null})}function ye(e){var t=ne(e,\"hx-target\");if(t){if(t===\"this\"){return xe(e,\"hx-target\")}else{return ue(e,t)}}else{var r=ae(e);if(r.boosted){return re().body}else{return e}}}function be(e){var t=Q.config.attributesToSettle;for(var r=0;r0){o=e.substr(0,e.indexOf(\":\"));t=e.substr(e.indexOf(\":\")+1,e.length)}else{o=e}var r=re().querySelectorAll(t);if(r){oe(r,function(e){var t;var r=i.cloneNode(true);t=re().createDocumentFragment();t.appendChild(r);if(!Se(o,e)){t=r}var n={shouldSwap:true,target:e,fragment:t};if(!ce(e,\"htmx:oobBeforeSwap\",n))return;e=n.target;if(n[\"shouldSwap\"]){Fe(o,e,e,t,a)}oe(a.elts,function(e){ce(e,\"htmx:oobAfterSwap\",n)})});i.parentNode.removeChild(i)}else{i.parentNode.removeChild(i);fe(re().body,\"htmx:oobErrorNoTarget\",{content:i})}return e}function Ce(e,t,r){var n=ne(e,\"hx-select-oob\");if(n){var i=n.split(\",\");for(var a=0;a0){var r=t.replace(\"'\",\"\\\\'\");var n=e.tagName.replace(\":\",\"\\\\:\");var i=o.querySelector(n+\"[id='\"+r+\"']\");if(i&&i!==o){var a=e.cloneNode();we(e,i);s.tasks.push(function(){we(e,a)})}}})}function Oe(e){return function(){n(e,Q.config.addedClass);zt(e);Nt(e);qe(e);ce(e,\"htmx:load\")}}function qe(e){var t=\"[autofocus]\";var r=h(e,t)?e:e.querySelector(t);if(r!=null){r.focus()}}function m(e,t,r,n){Te(e,r,n);while(r.childNodes.length>0){var i=r.firstChild;z(i,Q.config.addedClass);e.insertBefore(i,t);if(i.nodeType!==Node.TEXT_NODE&&i.nodeType!==Node.COMMENT_NODE){n.tasks.push(Oe(i))}}}function He(e,t){var r=0;while(r-1){var t=e.replace(H,\"\");var r=t.match(q);if(r){return r[2]}}}function je(e,t,r,n,i,a){i.title=Ve(n);var o=l(n);if(o){Ce(r,o,i);o=Be(r,o,a);Re(o);return Fe(e,r,t,o,i)}}function _e(e,t,r){var n=e.getResponseHeader(t);if(n.indexOf(\"{\")===0){var i=E(n);for(var a in i){if(i.hasOwnProperty(a)){var o=i[a];if(!P(o)){o={value:o}}ce(r,a,o)}}}else{var s=n.split(\",\");for(var l=0;l0){var o=t[0];if(o===\"]\"){n--;if(n===0){if(a===null){i=i+\"true\"}t.shift();i+=\")})\";try{var s=Tr(e,function(){return Function(i)()},function(){return true});s.source=i;return s}catch(e){fe(re().body,\"htmx:syntax:error\",{error:e,source:i});return null}}}else if(o===\"[\"){n++}if(Qe(o,a,r)){i+=\"((\"+r+\".\"+o+\") ? (\"+r+\".\"+o+\") : (window.\"+o+\"))\"}else{i=i+o}a=t.shift()}}}function y(e,t){var r=\"\";while(e.length>0&&!t.test(e[0])){r+=e.shift()}return r}function tt(e){var t;if(e.length>0&&Ze.test(e[0])){e.shift();t=y(e,Ke).trim();e.shift()}else{t=y(e,x)}return t}var rt=\"input, textarea, select\";function nt(e,t,r){var n=[];var i=Ye(t);do{y(i,Je);var a=i.length;var o=y(i,/[,\\[\\s]/);if(o!==\"\"){if(o===\"every\"){var s={trigger:\"every\"};y(i,Je);s.pollInterval=d(y(i,/[,\\[\\s]/));y(i,Je);var l=et(e,i,\"event\");if(l){s.eventFilter=l}n.push(s)}else if(o.indexOf(\"sse:\")===0){n.push({trigger:\"sse\",sseEvent:o.substr(4)})}else{var u={trigger:o};var l=et(e,i,\"event\");if(l){u.eventFilter=l}while(i.length>0&&i[0]!==\",\"){y(i,Je);var f=i.shift();if(f===\"changed\"){u.changed=true}else if(f===\"once\"){u.once=true}else if(f===\"consume\"){u.consume=true}else if(f===\"delay\"&&i[0]===\":\"){i.shift();u.delay=d(y(i,x))}else if(f===\"from\"&&i[0]===\":\"){i.shift();if(Ze.test(i[0])){var c=tt(i)}else{var c=y(i,x);if(c===\"closest\"||c===\"find\"||c===\"next\"||c===\"previous\"){i.shift();var h=tt(i);if(h.length>0){c+=\" \"+h}}}u.from=c}else if(f===\"target\"&&i[0]===\":\"){i.shift();u.target=tt(i)}else if(f===\"throttle\"&&i[0]===\":\"){i.shift();u.throttle=d(y(i,x))}else if(f===\"queue\"&&i[0]===\":\"){i.shift();u.queue=y(i,x)}else if(f===\"root\"&&i[0]===\":\"){i.shift();u[f]=tt(i)}else if(f===\"threshold\"&&i[0]===\":\"){i.shift();u[f]=y(i,x)}else{fe(e,\"htmx:syntax:error\",{token:i.shift()})}}n.push(u)}}if(i.length===a){fe(e,\"htmx:syntax:error\",{token:i.shift()})}y(i,Je)}while(i[0]===\",\"&&i.shift());if(r){r[t]=n}return n}function it(e){var t=te(e,\"hx-trigger\");var r=[];if(t){var n=Q.config.triggerSpecsCache;r=n&&n[t]||nt(e,t,n)}if(r.length>0){return r}else if(h(e,\"form\")){return[{trigger:\"submit\"}]}else if(h(e,'input[type=\"button\"], input[type=\"submit\"]')){return[{trigger:\"click\"}]}else if(h(e,rt)){return[{trigger:\"change\"}]}else{return[{trigger:\"click\"}]}}function at(e){ae(e).cancelled=true}function ot(e,t,r){var n=ae(e);n.timeout=setTimeout(function(){if(se(e)&&n.cancelled!==true){if(!ct(r,e,Wt(\"hx:poll:trigger\",{triggerSpec:r,target:e}))){t(e)}ot(e,t,r)}},r.pollInterval)}function st(e){return location.hostname===e.hostname&&ee(e,\"href\")&&ee(e,\"href\").indexOf(\"#\")!==0}function lt(t,r,e){if(t.tagName===\"A\"&&st(t)&&(t.target===\"\"||t.target===\"_self\")||t.tagName===\"FORM\"){r.boosted=true;var n,i;if(t.tagName===\"A\"){n=\"get\";i=ee(t,\"href\")}else{var a=ee(t,\"method\");n=a?a.toLowerCase():\"get\";if(n===\"get\"){}i=ee(t,\"action\")}e.forEach(function(e){ht(t,function(e,t){if(v(e,Q.config.disableSelector)){p(e);return}he(n,i,e,t)},r,e,true)})}}function ut(e,t){if(e.type===\"submit\"||e.type===\"click\"){if(t.tagName===\"FORM\"){return true}if(h(t,'input[type=\"submit\"], button')&&v(t,\"form\")!==null){return true}if(t.tagName===\"A\"&&t.href&&(t.getAttribute(\"href\")===\"#\"||t.getAttribute(\"href\").indexOf(\"#\")!==0)){return true}}return false}function ft(e,t){return ae(e).boosted&&e.tagName===\"A\"&&t.type===\"click\"&&(t.ctrlKey||t.metaKey)}function ct(e,t,r){var n=e.eventFilter;if(n){try{return n.call(t,r)!==true}catch(e){fe(re().body,\"htmx:eventFilter:error\",{error:e,source:n.source});return true}}return false}function ht(a,o,e,s,l){var u=ae(a);var t;if(s.from){t=Z(a,s.from)}else{t=[a]}if(s.changed){t.forEach(function(e){var t=ae(e);t.lastValue=e.value})}oe(t,function(n){var i=function(e){if(!se(a)){n.removeEventListener(s.trigger,i);return}if(ft(a,e)){return}if(l||ut(e,a)){e.preventDefault()}if(ct(s,a,e)){return}var t=ae(e);t.triggerSpec=s;if(t.handledFor==null){t.handledFor=[]}if(t.handledFor.indexOf(a)<0){t.handledFor.push(a);if(s.consume){e.stopPropagation()}if(s.target&&e.target){if(!h(e.target,s.target)){return}}if(s.once){if(u.triggeredOnce){return}else{u.triggeredOnce=true}}if(s.changed){var r=ae(n);if(r.lastValue===n.value){return}r.lastValue=n.value}if(u.delayed){clearTimeout(u.delayed)}if(u.throttle){return}if(s.throttle>0){if(!u.throttle){o(a,e);u.throttle=setTimeout(function(){u.throttle=null},s.throttle)}}else if(s.delay>0){u.delayed=setTimeout(function(){o(a,e)},s.delay)}else{ce(a,\"htmx:trigger\");o(a,e)}}};if(e.listenerInfos==null){e.listenerInfos=[]}e.listenerInfos.push({trigger:s.trigger,listener:i,on:n});n.addEventListener(s.trigger,i)})}var vt=false;var dt=null;function gt(){if(!dt){dt=function(){vt=true};window.addEventListener(\"scroll\",dt);setInterval(function(){if(vt){vt=false;oe(re().querySelectorAll(\"[hx-trigger='revealed'],[data-hx-trigger='revealed']\"),function(e){mt(e)})}},200)}}function mt(t){if(!o(t,\"data-hx-revealed\")&&X(t)){t.setAttribute(\"data-hx-revealed\",\"true\");var e=ae(t);if(e.initHash){ce(t,\"revealed\")}else{t.addEventListener(\"htmx:afterProcessNode\",function(e){ce(t,\"revealed\")},{once:true})}}}function pt(e,t,r){var n=D(r);for(var i=0;i=0){var t=wt(n);setTimeout(function(){xt(s,r,n+1)},t)}};t.onopen=function(e){n=0};ae(s).webSocket=t;t.addEventListener(\"message\",function(e){if(yt(s)){return}var t=e.data;R(s,function(e){t=e.transformResponse(t,null,s)});var r=T(s);var n=l(t);var i=M(n.children);for(var a=0;a0){ce(u,\"htmx:validation:halted\",i);return}t.send(JSON.stringify(l));if(ut(e,u)){e.preventDefault()}})}else{fe(u,\"htmx:noWebSocketSourceError\")}}function wt(e){var t=Q.config.wsReconnectDelay;if(typeof t===\"function\"){return t(e)}if(t===\"full-jitter\"){var r=Math.min(e,6);var n=1e3*Math.pow(2,r);return n*Math.random()}b('htmx.config.wsReconnectDelay must either be a function or the string \"full-jitter\"')}function St(e,t,r){var n=D(r);for(var i=0;i0){setTimeout(i,n)}else{i()}}function Ht(t,i,e){var a=false;oe(w,function(r){if(o(t,\"hx-\"+r)){var n=te(t,\"hx-\"+r);a=true;i.path=n;i.verb=r;e.forEach(function(e){Lt(t,e,i,function(e,t){if(v(e,Q.config.disableSelector)){p(e);return}he(r,n,e,t)})})}});return a}function Lt(n,e,t,r){if(e.sseEvent){Rt(n,r,e.sseEvent)}else if(e.trigger===\"revealed\"){gt();ht(n,r,t,e);mt(n)}else if(e.trigger===\"intersect\"){var i={};if(e.root){i.root=ue(n,e.root)}if(e.threshold){i.threshold=parseFloat(e.threshold)}var a=new IntersectionObserver(function(e){for(var t=0;t0){t.polling=true;ot(n,r,e)}else{ht(n,r,t,e)}}function At(e){if(Q.config.allowScriptTags&&(e.type===\"text/javascript\"||e.type===\"module\"||e.type===\"\")){var t=re().createElement(\"script\");oe(e.attributes,function(e){t.setAttribute(e.name,e.value)});t.textContent=e.textContent;t.async=false;if(Q.config.inlineScriptNonce){t.nonce=Q.config.inlineScriptNonce}var r=e.parentElement;try{r.insertBefore(t,e)}catch(e){b(e)}finally{if(e.parentElement){e.parentElement.removeChild(e)}}}}function Nt(e){if(h(e,\"script\")){At(e)}oe(f(e,\"script\"),function(e){At(e)})}function It(e){var t=e.attributes;for(var r=0;r0){var o=n.shift();var s=o.match(/^\\s*([a-zA-Z:\\-\\.]+:)(.*)/);if(a===0&&s){o.split(\":\");i=s[1].slice(0,-1);r[i]=s[2]}else{r[i]+=o}a+=Bt(o)}for(var l in r){Ft(e,l,r[l])}}}function jt(e){Ae(e);for(var t=0;tQ.config.historyCacheSize){i.shift()}while(i.length>0){try{localStorage.setItem(\"htmx-history-cache\",JSON.stringify(i));break}catch(e){fe(re().body,\"htmx:historyCacheError\",{cause:e,cache:i});i.shift()}}}function Yt(e){if(!U()){return null}e=B(e);var t=E(localStorage.getItem(\"htmx-history-cache\"))||[];for(var r=0;r=200&&this.status<400){ce(re().body,\"htmx:historyCacheMissLoad\",o);var e=l(this.response);e=e.querySelector(\"[hx-history-elt],[data-hx-history-elt]\")||e;var t=Zt();var r=T(t);var n=Ve(this.response);if(n){var i=C(\"title\");if(i){i.innerHTML=n}else{window.document.title=n}}Ue(t,e,r);nr(r.tasks);Jt=a;ce(re().body,\"htmx:historyRestore\",{path:a,cacheMiss:true,serverResponse:this.response})}else{fe(re().body,\"htmx:historyCacheMissLoadError\",o)}};e.send()}function ar(e){er();e=e||location.pathname+location.search;var t=Yt(e);if(t){var r=l(t.content);var n=Zt();var i=T(n);Ue(n,r,i);nr(i.tasks);document.title=t.title;setTimeout(function(){window.scrollTo(0,t.scroll)},0);Jt=e;ce(re().body,\"htmx:historyRestore\",{path:e,item:t})}else{if(Q.config.refreshOnHistoryMiss){window.location.reload(true)}else{ir(e)}}}function or(e){var t=pe(e,\"hx-indicator\");if(t==null){t=[e]}oe(t,function(e){var t=ae(e);t.requestCount=(t.requestCount||0)+1;e.classList[\"add\"].call(e.classList,Q.config.requestClass)});return t}function sr(e){var t=pe(e,\"hx-disabled-elt\");if(t==null){t=[]}oe(t,function(e){var t=ae(e);t.requestCount=(t.requestCount||0)+1;e.setAttribute(\"disabled\",\"\")});return t}function lr(e,t){oe(e,function(e){var t=ae(e);t.requestCount=(t.requestCount||0)-1;if(t.requestCount===0){e.classList[\"remove\"].call(e.classList,Q.config.requestClass)}});oe(t,function(e){var t=ae(e);t.requestCount=(t.requestCount||0)-1;if(t.requestCount===0){e.removeAttribute(\"disabled\")}})}function ur(e,t){for(var r=0;r=0}function wr(e,t){var r=t?t:ne(e,\"hx-swap\");var n={swapStyle:ae(e).boosted?\"innerHTML\":Q.config.defaultSwapStyle,swapDelay:Q.config.defaultSwapDelay,settleDelay:Q.config.defaultSettleDelay};if(Q.config.scrollIntoViewOnBoost&&ae(e).boosted&&!br(e)){n[\"show\"]=\"top\"}if(r){var i=D(r);if(i.length>0){for(var a=0;a0?l.join(\":\"):null;n[\"scroll\"]=u;n[\"scrollTarget\"]=f}else if(o.indexOf(\"show:\")===0){var c=o.substr(5);var l=c.split(\":\");var h=l.pop();var f=l.length>0?l.join(\":\"):null;n[\"show\"]=h;n[\"showTarget\"]=f}else if(o.indexOf(\"focus-scroll:\")===0){var v=o.substr(\"focus-scroll:\".length);n[\"focusScroll\"]=v==\"true\"}else if(a==0){n[\"swapStyle\"]=o}else{b(\"Unknown modifier in hx-swap: \"+o)}}}}return n}function Sr(e){return ne(e,\"hx-encoding\")===\"multipart/form-data\"||h(e,\"form\")&&ee(e,\"enctype\")===\"multipart/form-data\"}function Er(t,r,n){var i=null;R(r,function(e){if(i==null){i=e.encodeParameters(t,n,r)}});if(i!=null){return i}else{if(Sr(r)){return pr(n)}else{return mr(n)}}}function T(e){return{tasks:[],elts:[e]}}function Cr(e,t){var r=e[0];var n=e[e.length-1];if(t.scroll){var i=null;if(t.scrollTarget){i=ue(r,t.scrollTarget)}if(t.scroll===\"top\"&&(r||i)){i=i||r;i.scrollTop=0}if(t.scroll===\"bottom\"&&(n||i)){i=i||n;i.scrollTop=i.scrollHeight}}if(t.show){var i=null;if(t.showTarget){var a=t.showTarget;if(t.showTarget===\"window\"){a=\"body\"}i=ue(r,a)}if(t.show===\"top\"&&(r||i)){i=i||r;i.scrollIntoView({block:\"start\",behavior:Q.config.scrollBehavior})}if(t.show===\"bottom\"&&(n||i)){i=i||n;i.scrollIntoView({block:\"end\",behavior:Q.config.scrollBehavior})}}}function Rr(e,t,r,n){if(n==null){n={}}if(e==null){return n}var i=te(e,t);if(i){var a=i.trim();var o=r;if(a===\"unset\"){return null}if(a.indexOf(\"javascript:\")===0){a=a.substr(11);o=true}else if(a.indexOf(\"js:\")===0){a=a.substr(3);o=true}if(a.indexOf(\"{\")!==0){a=\"{\"+a+\"}\"}var s;if(o){s=Tr(e,function(){return Function(\"return (\"+a+\")\")()},{})}else{s=E(a)}for(var l in s){if(s.hasOwnProperty(l)){if(n[l]==null){n[l]=s[l]}}}}return Rr(u(e),t,r,n)}function Tr(e,t,r){if(Q.config.allowEval){return t()}else{fe(e,\"htmx:evalDisallowedError\");return r}}function Or(e,t){return Rr(e,\"hx-vars\",true,t)}function qr(e,t){return Rr(e,\"hx-vals\",false,t)}function Hr(e){return le(Or(e),qr(e))}function Lr(t,r,n){if(n!==null){try{t.setRequestHeader(r,n)}catch(e){t.setRequestHeader(r,encodeURIComponent(n));t.setRequestHeader(r+\"-URI-AutoEncoded\",\"true\")}}}function Ar(t){if(t.responseURL&&typeof URL!==\"undefined\"){try{var e=new URL(t.responseURL);return e.pathname+e.search}catch(e){fe(re().body,\"htmx:badResponseUrl\",{url:t.responseURL})}}}function O(e,t){return t.test(e.getAllResponseHeaders())}function Nr(e,t,r){e=e.toLowerCase();if(r){if(r instanceof Element||I(r,\"String\")){return he(e,t,null,null,{targetOverride:g(r),returnPromise:true})}else{return he(e,t,g(r.source),r.event,{handler:r.handler,headers:r.headers,values:r.values,targetOverride:g(r.target),swapOverride:r.swap,select:r.select,returnPromise:true})}}else{return he(e,t,null,null,{returnPromise:true})}}function Ir(e){var t=[];while(e){t.push(e);e=e.parentElement}return t}function kr(e,t,r){var n;var i;if(typeof URL===\"function\"){i=new URL(t,document.location.href);var a=document.location.origin;n=a===i.origin}else{i=t;n=s(t,document.location.origin)}if(Q.config.selfRequestsOnly){if(!n){return false}}return ce(e,\"htmx:validateUrl\",le({url:i,sameHost:n},r))}function he(t,r,n,i,a,e){var o=null;var s=null;a=a!=null?a:{};if(a.returnPromise&&typeof Promise!==\"undefined\"){var l=new Promise(function(e,t){o=e;s=t})}if(n==null){n=re().body}var M=a.handler||Mr;var X=a.select||null;if(!se(n)){ie(o);return l}var u=a.targetOverride||ye(n);if(u==null||u==me){fe(n,\"htmx:targetError\",{target:te(n,\"hx-target\")});ie(s);return l}var f=ae(n);var c=f.lastButtonClicked;if(c){var h=ee(c,\"formaction\");if(h!=null){r=h}var v=ee(c,\"formmethod\");if(v!=null){if(v.toLowerCase()!==\"dialog\"){t=v}}}var d=ne(n,\"hx-confirm\");if(e===undefined){var D=function(e){return he(t,r,n,i,a,!!e)};var U={target:u,elt:n,path:r,verb:t,triggeringEvent:i,etc:a,issueRequest:D,question:d};if(ce(n,\"htmx:confirm\",U)===false){ie(o);return l}}var g=n;var m=ne(n,\"hx-sync\");var p=null;var x=false;if(m){var B=m.split(\":\");var F=B[0].trim();if(F===\"this\"){g=xe(n,\"hx-sync\")}else{g=ue(n,F)}m=(B[1]||\"drop\").trim();f=ae(g);if(m===\"drop\"&&f.xhr&&f.abortable!==true){ie(o);return l}else if(m===\"abort\"){if(f.xhr){ie(o);return l}else{x=true}}else if(m===\"replace\"){ce(g,\"htmx:abort\")}else if(m.indexOf(\"queue\")===0){var V=m.split(\" \");p=(V[1]||\"last\").trim()}}if(f.xhr){if(f.abortable){ce(g,\"htmx:abort\")}else{if(p==null){if(i){var y=ae(i);if(y&&y.triggerSpec&&y.triggerSpec.queue){p=y.triggerSpec.queue}}if(p==null){p=\"last\"}}if(f.queuedRequests==null){f.queuedRequests=[]}if(p===\"first\"&&f.queuedRequests.length===0){f.queuedRequests.push(function(){he(t,r,n,i,a)})}else if(p===\"all\"){f.queuedRequests.push(function(){he(t,r,n,i,a)})}else if(p===\"last\"){f.queuedRequests=[];f.queuedRequests.push(function(){he(t,r,n,i,a)})}ie(o);return l}}var b=new XMLHttpRequest;f.xhr=b;f.abortable=x;var w=function(){f.xhr=null;f.abortable=false;if(f.queuedRequests!=null&&f.queuedRequests.length>0){var e=f.queuedRequests.shift();e()}};var j=ne(n,\"hx-prompt\");if(j){var S=prompt(j);if(S===null||!ce(n,\"htmx:prompt\",{prompt:S,target:u})){ie(o);w();return l}}if(d&&!e){if(!confirm(d)){ie(o);w();return l}}var E=xr(n,u,S);if(t!==\"get\"&&!Sr(n)){E[\"Content-Type\"]=\"application/x-www-form-urlencoded\"}if(a.headers){E=le(E,a.headers)}var _=dr(n,t);var C=_.errors;var R=_.values;if(a.values){R=le(R,a.values)}var z=Hr(n);var $=le(R,z);var T=yr($,n);if(Q.config.getCacheBusterParam&&t===\"get\"){T[\"org.htmx.cache-buster\"]=ee(u,\"id\")||\"true\"}if(r==null||r===\"\"){r=re().location.href}var O=Rr(n,\"hx-request\");var W=ae(n).boosted;var q=Q.config.methodsThatUseUrlParams.indexOf(t)>=0;var H={boosted:W,useUrlParams:q,parameters:T,unfilteredParameters:$,headers:E,target:u,verb:t,errors:C,withCredentials:a.credentials||O.credentials||Q.config.withCredentials,timeout:a.timeout||O.timeout||Q.config.timeout,path:r,triggeringEvent:i};if(!ce(n,\"htmx:configRequest\",H)){ie(o);w();return l}r=H.path;t=H.verb;E=H.headers;T=H.parameters;C=H.errors;q=H.useUrlParams;if(C&&C.length>0){ce(n,\"htmx:validation:halted\",H);ie(o);w();return l}var G=r.split(\"#\");var J=G[0];var L=G[1];var A=r;if(q){A=J;var Z=Object.keys(T).length!==0;if(Z){if(A.indexOf(\"?\")<0){A+=\"?\"}else{A+=\"&\"}A+=mr(T);if(L){A+=\"#\"+L}}}if(!kr(n,A,H)){fe(n,\"htmx:invalidPath\",H);ie(s);return l}b.open(t.toUpperCase(),A,true);b.overrideMimeType(\"text/html\");b.withCredentials=H.withCredentials;b.timeout=H.timeout;if(O.noHeaders){}else{for(var N in E){if(E.hasOwnProperty(N)){var K=E[N];Lr(b,N,K)}}}var I={xhr:b,target:u,requestConfig:H,etc:a,boosted:W,select:X,pathInfo:{requestPath:r,finalRequestPath:A,anchor:L}};b.onload=function(){try{var e=Ir(n);I.pathInfo.responsePath=Ar(b);M(n,I);lr(k,P);ce(n,\"htmx:afterRequest\",I);ce(n,\"htmx:afterOnLoad\",I);if(!se(n)){var t=null;while(e.length>0&&t==null){var r=e.shift();if(se(r)){t=r}}if(t){ce(t,\"htmx:afterRequest\",I);ce(t,\"htmx:afterOnLoad\",I)}}ie(o);w()}catch(e){fe(n,\"htmx:onLoadError\",le({error:e},I));throw e}};b.onerror=function(){lr(k,P);fe(n,\"htmx:afterRequest\",I);fe(n,\"htmx:sendError\",I);ie(s);w()};b.onabort=function(){lr(k,P);fe(n,\"htmx:afterRequest\",I);fe(n,\"htmx:sendAbort\",I);ie(s);w()};b.ontimeout=function(){lr(k,P);fe(n,\"htmx:afterRequest\",I);fe(n,\"htmx:timeout\",I);ie(s);w()};if(!ce(n,\"htmx:beforeRequest\",I)){ie(o);w();return l}var k=or(n);var P=sr(n);oe([\"loadstart\",\"loadend\",\"progress\",\"abort\"],function(t){oe([b,b.upload],function(e){e.addEventListener(t,function(e){ce(n,\"htmx:xhr:\"+t,{lengthComputable:e.lengthComputable,loaded:e.loaded,total:e.total})})})});ce(n,\"htmx:beforeSend\",I);var Y=q?null:Er(b,n,T);b.send(Y);return l}function Pr(e,t){var r=t.xhr;var n=null;var i=null;if(O(r,/HX-Push:/i)){n=r.getResponseHeader(\"HX-Push\");i=\"push\"}else if(O(r,/HX-Push-Url:/i)){n=r.getResponseHeader(\"HX-Push-Url\");i=\"push\"}else if(O(r,/HX-Replace-Url:/i)){n=r.getResponseHeader(\"HX-Replace-Url\");i=\"replace\"}if(n){if(n===\"false\"){return{}}else{return{type:i,path:n}}}var a=t.pathInfo.finalRequestPath;var o=t.pathInfo.responsePath;var s=ne(e,\"hx-push-url\");var l=ne(e,\"hx-replace-url\");var u=ae(e).boosted;var f=null;var c=null;if(s){f=\"push\";c=s}else if(l){f=\"replace\";c=l}else if(u){f=\"push\";c=o||a}if(c){if(c===\"false\"){return{}}if(c===\"true\"){c=o||a}if(t.pathInfo.anchor&&c.indexOf(\"#\")===-1){c=c+\"#\"+t.pathInfo.anchor}return{type:f,path:c}}else{return{}}}function Mr(l,u){var f=u.xhr;var c=u.target;var e=u.etc;var t=u.requestConfig;var h=u.select;if(!ce(l,\"htmx:beforeOnLoad\",u))return;if(O(f,/HX-Trigger:/i)){_e(f,\"HX-Trigger\",l)}if(O(f,/HX-Location:/i)){er();var r=f.getResponseHeader(\"HX-Location\");var v;if(r.indexOf(\"{\")===0){v=E(r);r=v[\"path\"];delete v[\"path\"]}Nr(\"GET\",r,v).then(function(){tr(r)});return}var n=O(f,/HX-Refresh:/i)&&\"true\"===f.getResponseHeader(\"HX-Refresh\");if(O(f,/HX-Redirect:/i)){location.href=f.getResponseHeader(\"HX-Redirect\");n&&location.reload();return}if(n){location.reload();return}if(O(f,/HX-Retarget:/i)){if(f.getResponseHeader(\"HX-Retarget\")===\"this\"){u.target=l}else{u.target=ue(l,f.getResponseHeader(\"HX-Retarget\"))}}var d=Pr(l,u);var i=f.status>=200&&f.status<400&&f.status!==204;var g=f.response;var a=f.status>=400;var m=Q.config.ignoreTitle;var o=le({shouldSwap:i,serverResponse:g,isError:a,ignoreTitle:m},u);if(!ce(c,\"htmx:beforeSwap\",o))return;c=o.target;g=o.serverResponse;a=o.isError;m=o.ignoreTitle;u.target=c;u.failed=a;u.successful=!a;if(o.shouldSwap){if(f.status===286){at(l)}R(l,function(e){g=e.transformResponse(g,f,l)});if(d.type){er()}var s=e.swapOverride;if(O(f,/HX-Reswap:/i)){s=f.getResponseHeader(\"HX-Reswap\")}var v=wr(l,s);if(v.hasOwnProperty(\"ignoreTitle\")){m=v.ignoreTitle}c.classList.add(Q.config.swappingClass);var p=null;var x=null;var y=function(){try{var e=document.activeElement;var t={};try{t={elt:e,start:e?e.selectionStart:null,end:e?e.selectionEnd:null}}catch(e){}var r;if(h){r=h}if(O(f,/HX-Reselect:/i)){r=f.getResponseHeader(\"HX-Reselect\")}if(d.type){ce(re().body,\"htmx:beforeHistoryUpdate\",le({history:d},u));if(d.type===\"push\"){tr(d.path);ce(re().body,\"htmx:pushedIntoHistory\",{path:d.path})}else{rr(d.path);ce(re().body,\"htmx:replacedInHistory\",{path:d.path})}}var n=T(c);je(v.swapStyle,c,l,g,n,r);if(t.elt&&!se(t.elt)&&ee(t.elt,\"id\")){var i=document.getElementById(ee(t.elt,\"id\"));var a={preventScroll:v.focusScroll!==undefined?!v.focusScroll:!Q.config.defaultFocusScroll};if(i){if(t.start&&i.setSelectionRange){try{i.setSelectionRange(t.start,t.end)}catch(e){}}i.focus(a)}}c.classList.remove(Q.config.swappingClass);oe(n.elts,function(e){if(e.classList){e.classList.add(Q.config.settlingClass)}ce(e,\"htmx:afterSwap\",u)});if(O(f,/HX-Trigger-After-Swap:/i)){var o=l;if(!se(l)){o=re().body}_e(f,\"HX-Trigger-After-Swap\",o)}var s=function(){oe(n.tasks,function(e){e.call()});oe(n.elts,function(e){if(e.classList){e.classList.remove(Q.config.settlingClass)}ce(e,\"htmx:afterSettle\",u)});if(u.pathInfo.anchor){var e=re().getElementById(u.pathInfo.anchor);if(e){e.scrollIntoView({block:\"start\",behavior:\"auto\"})}}if(n.title&&!m){var t=C(\"title\");if(t){t.innerHTML=n.title}else{window.document.title=n.title}}Cr(n.elts,v);if(O(f,/HX-Trigger-After-Settle:/i)){var r=l;if(!se(l)){r=re().body}_e(f,\"HX-Trigger-After-Settle\",r)}ie(p)};if(v.settleDelay>0){setTimeout(s,v.settleDelay)}else{s()}}catch(e){fe(l,\"htmx:swapError\",u);ie(x);throw e}};var b=Q.config.globalViewTransitions;if(v.hasOwnProperty(\"transition\")){b=v.transition}if(b&&ce(l,\"htmx:beforeTransition\",u)&&typeof Promise!==\"undefined\"&&document.startViewTransition){var w=new Promise(function(e,t){p=e;x=t});var S=y;y=function(){document.startViewTransition(function(){S();return w})}}if(v.swapDelay>0){setTimeout(y,v.swapDelay)}else{y()}}if(a){fe(l,\"htmx:responseError\",le({error:\"Response Status Error Code \"+f.status+\" from \"+u.pathInfo.requestPath},u))}}var Xr={};function Dr(){return{init:function(e){return null},onEvent:function(e,t){return true},transformResponse:function(e,t,r){return e},isInlineSwap:function(e){return false},handleSwap:function(e,t,r,n){return false},encodeParameters:function(e,t,r){return null}}}function Ur(e,t){if(t.init){t.init(r)}Xr[e]=le(Dr(),t)}function Br(e){delete Xr[e]}function Fr(e,r,n){if(e==undefined){return r}if(r==undefined){r=[]}if(n==undefined){n=[]}var t=te(e,\"hx-ext\");if(t){oe(t.split(\",\"),function(e){e=e.replace(/ /g,\"\");if(e.slice(0,7)==\"ignore:\"){n.push(e.slice(7));return}if(n.indexOf(e)<0){var t=Xr[e];if(t&&r.indexOf(t)<0){r.push(t)}}})}return Fr(u(e),r,n)}var Vr=false;re().addEventListener(\"DOMContentLoaded\",function(){Vr=true});function jr(e){if(Vr||re().readyState===\"complete\"){e()}else{re().addEventListener(\"DOMContentLoaded\",e)}}function _r(){if(Q.config.includeIndicatorStyles!==false){re().head.insertAdjacentHTML(\"beforeend\",\"\")}}function zr(){var e=re().querySelector('meta[name=\"htmx-config\"]');if(e){return E(e.content)}else{return null}}function $r(){var e=zr();if(e){Q.config=le(Q.config,e)}}jr(function(){$r();_r();var e=re().body;zt(e);var t=re().querySelectorAll(\"[hx-trigger='restored'],[data-hx-trigger='restored']\");e.addEventListener(\"htmx:abort\",function(e){var t=e.target;var r=ae(t);if(r&&r.xhr){r.xhr.abort()}});const r=window.onpopstate?window.onpopstate.bind(window):null;window.onpopstate=function(e){if(e.state&&e.state.htmx){ar();oe(t,function(e){ce(e,\"htmx:restored\",{document:re(),triggerEvent:ce})})}else{if(r){r(e)}}};setTimeout(function(){ce(e,\"htmx:load\",{});e=null},0)});return Q}()});"], - "mappings": "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", - "names": ["require_htmx_min", "__commonJSMin", "e", "t", "r", "n", "i", "a", "o", "s", "l", "u", "f", "c", "h", "v", "M", "X", "d", "D", "U", "g", "m", "p", "x", "B", "F", "V", "y", "b", "w", "j", "S", "E", "_", "C", "R", "z", "$", "T", "O", "W", "q", "H", "G", "J", "L", "A", "Z", "N", "K", "I", "k", "P", "Y"] -} diff --git a/tests/staticfiles/esm/node_modules/list/index-HVJVFJZK.js b/tests/staticfiles/esm/node_modules/list/index-HVJVFJZK.js deleted file mode 100644 index ca320b6..0000000 --- a/tests/staticfiles/esm/node_modules/list/index-HVJVFJZK.js +++ /dev/null @@ -1,2 +0,0 @@ -/* Build with esimport version 0.5.1 */ -//# sourceMappingURL=index-HVJVFJZK.js.map diff --git a/tests/staticfiles/esm/node_modules/list/index-HVJVFJZK.js.map b/tests/staticfiles/esm/node_modules/list/index-HVJVFJZK.js.map deleted file mode 100644 index 9865211..0000000 --- a/tests/staticfiles/esm/node_modules/list/index-HVJVFJZK.js.map +++ /dev/null @@ -1,7 +0,0 @@ -{ - "version": 3, - "sources": [], - "sourcesContent": [], - "mappings": "", - "names": [] -} diff --git a/tests/staticfiles/esm/node_modules/lit/async-directive-7L7QDYHO.js b/tests/staticfiles/esm/node_modules/lit/async-directive-7L7QDYHO.js deleted file mode 100644 index 22904d9..0000000 --- a/tests/staticfiles/esm/node_modules/lit/async-directive-7L7QDYHO.js +++ /dev/null @@ -1,23 +0,0 @@ -/* Build with esimport version 0.5.1 */ -var x=globalThis,P=x.trustedTypes,W=P?P.createPolicy("lit-html",{createHTML:i=>i}):void 0,O="$lit$",d=`lit$${(Math.random()+"").slice(9)}$`,V="?"+d,nt=`<${V}>`,f=document,S=()=>f.createComment(""),T=i=>i===null||typeof i!="object"&&typeof i!="function",Y=Array.isArray,q=i=>Y(i)||typeof i?.[Symbol.iterator]=="function",L=`[ -\f\r]`,y=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,j=/-->/g,z=/>/g,u=RegExp(`>|${L}(?:([^\\s"'>=/]+)(${L}*=${L}*(?:[^ -\f\r"'\`<>=]|("|')|))|$)`,"g"),Z=/'/g,Q=/"/g,F=/^(?:script|style|textarea|title)$/i,J=i=>(t,...e)=>({_$litType$:i,strings:t,values:e}),At=J(1),_t=J(2),H=Symbol.for("lit-noChange"),A=Symbol.for("lit-nothing"),G=new WeakMap,v=f.createTreeWalker(f,129);function K(i,t){if(!Array.isArray(i)||!i.hasOwnProperty("raw"))throw Error("invalid template strings array");return W!==void 0?W.createHTML(t):t}var X=(i,t)=>{let e=i.length-1,s=[],n,r=t===2?"":"",o=y;for(let a=0;a"?(o=n??y,$=-1):_[1]===void 0?$=-2:($=o.lastIndex-_[2].length,l=_[1],o=_[3]===void 0?u:_[3]==='"'?Q:Z):o===Q||o===Z?o=u:o===j||o===z?o=y:(o=u,n=void 0);let p=o===u&&i[a+1].startsWith("/>")?" ":"";r+=o===y?h+nt:$>=0?(s.push(l),h.slice(0,$)+O+h.slice($)+d+p):h+d+($===-2?a:p)}return[K(i,r+(i[e]||"")+(t===2?"":"")),s]},N=class i{constructor({strings:t,_$litType$:e},s){let n;this.parts=[];let r=0,o=0,a=t.length-1,h=this.parts,[l,_]=X(t,e);if(this.el=i.createElement(l,s),v.currentNode=this.el.content,e===2){let $=this.el.content.firstChild;$.replaceWith(...$.childNodes)}for(;(n=v.nextNode())!==null&&h.length0){n.textContent=P?P.emptyScript:"";for(let p=0;p2||s[0]!==""||s[1]!==""?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=A}_$AI(t,e=this,s,n){let r=this.strings,o=!1;if(r===void 0)t=g(this,t,e,0),o=!T(t)||t!==this._$AH&&t!==H,o&&(this._$AH=t);else{let a=t,h,l;for(t=r[0],h=0;hi.strings===void 0;var k={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},ot=i=>(...t)=>({_$litDirective$:i,values:t}),b=class{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,s){this._$Ct=t,this._$AM=e,this._$Ci=s}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}};var M=(i,t)=>{let e=i._$AN;if(e===void 0)return!1;for(let s of e)s._$AO?.(t,!1),M(s,t);return!0},U=i=>{let t,e;do{if((t=i._$AM)===void 0)break;e=t._$AN,e.delete(i),i=t}while(e?.size===0)},it=i=>{for(let t;t=i._$AM;i=t){let e=t._$AN;if(e===void 0)t._$AN=e=new Set;else if(e.has(i))break;e.add(i),lt(t)}};function ht(i){this._$AN!==void 0?(U(this),this._$AM=i,it(this)):this._$AM=i}function $t(i,t=!1,e=0){let s=this._$AH,n=this._$AN;if(n!==void 0&&n.size!==0)if(t)if(Array.isArray(s))for(let r=e;r{i.type==k.CHILD&&(i._$AP??(i._$AP=$t),i._$AQ??(i._$AQ=ht))},st=class extends b{constructor(){super(...arguments),this._$AN=void 0}_$AT(t,e,s){super._$AT(t,e,s),it(this),this.isConnected=t._$AU}_$AO(t,e=!0){t!==this.isConnected&&(this.isConnected=t,t?this.reconnected?.():this.disconnected?.()),e&&(M(this,t),U(this))}setValue(t){if(et(this._$Ct))this._$Ct._$AI(t,this);else{let e=[...this._$Ct._$AH];e[this._$Ci]=t,this._$Ct._$AI(e,this,0)}}disconnected(){}reconnected(){}};export{st as AsyncDirective,b as Directive,k as PartType,ot as directive}; -/*! Bundled license information: - -lit-html/lit-html.js: -lit-html/directive.js: -lit-html/async-directive.js: - (** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - *) - -lit-html/directive-helpers.js: - (** - * @license - * Copyright 2020 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - *) -*/ -//# sourceMappingURL=async-directive-7L7QDYHO.js.map diff --git a/tests/staticfiles/esm/node_modules/lit/async-directive-7L7QDYHO.js.map b/tests/staticfiles/esm/node_modules/lit/async-directive-7L7QDYHO.js.map deleted file mode 100644 index f94b035..0000000 --- a/tests/staticfiles/esm/node_modules/lit/async-directive-7L7QDYHO.js.map +++ /dev/null @@ -1,7 +0,0 @@ -{ - "version": 3, - "sources": ["../../../../node_modules/lit-html/src/lit-html.ts", "../../../../node_modules/lit-html/src/directive-helpers.ts", "../../../../node_modules/lit-html/src/directive.ts", "../../../../node_modules/lit-html/src/async-directive.ts"], - "sourcesContent": ["/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n// IMPORTANT: these imports must be type-only\nimport type {Directive, DirectiveResult, PartInfo} from './directive.js';\n\nconst DEV_MODE = true;\nconst ENABLE_EXTRA_SECURITY_HOOKS = true;\nconst ENABLE_SHADYDOM_NOPATCH = true;\nconst NODE_MODE = false;\n\n// Allows minifiers to rename references to globalThis\nconst global = globalThis;\n\n/**\n * Contains types that are part of the unstable debug API.\n *\n * Everything in this API is not stable and may change or be removed in the future,\n * even on patch releases.\n */\n// eslint-disable-next-line @typescript-eslint/no-namespace\nexport namespace LitUnstable {\n /**\n * When Lit is running in dev mode and `window.emitLitDebugLogEvents` is true,\n * we will emit 'lit-debug' events to window, with live details about the update and render\n * lifecycle. These can be useful for writing debug tooling and visualizations.\n *\n * Please be aware that running with window.emitLitDebugLogEvents has performance overhead,\n * making certain operations that are normally very cheap (like a no-op render) much slower,\n * because we must copy data and dispatch events.\n */\n // eslint-disable-next-line @typescript-eslint/no-namespace\n export namespace DebugLog {\n export type Entry =\n | TemplatePrep\n | TemplateInstantiated\n | TemplateInstantiatedAndUpdated\n | TemplateUpdating\n | BeginRender\n | EndRender\n | CommitPartEntry\n | SetPartValue;\n export interface TemplatePrep {\n kind: 'template prep';\n template: Template;\n strings: TemplateStringsArray;\n clonableTemplate: HTMLTemplateElement;\n parts: TemplatePart[];\n }\n export interface BeginRender {\n kind: 'begin render';\n id: number;\n value: unknown;\n container: HTMLElement | DocumentFragment;\n options: RenderOptions | undefined;\n part: ChildPart | undefined;\n }\n export interface EndRender {\n kind: 'end render';\n id: number;\n value: unknown;\n container: HTMLElement | DocumentFragment;\n options: RenderOptions | undefined;\n part: ChildPart;\n }\n export interface TemplateInstantiated {\n kind: 'template instantiated';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n fragment: Node;\n parts: Array;\n values: unknown[];\n }\n export interface TemplateInstantiatedAndUpdated {\n kind: 'template instantiated and updated';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n fragment: Node;\n parts: Array;\n values: unknown[];\n }\n export interface TemplateUpdating {\n kind: 'template updating';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n parts: Array;\n values: unknown[];\n }\n export interface SetPartValue {\n kind: 'set part';\n part: Part;\n value: unknown;\n valueIndex: number;\n values: unknown[];\n templateInstance: TemplateInstance;\n }\n\n export type CommitPartEntry =\n | CommitNothingToChildEntry\n | CommitText\n | CommitNode\n | CommitAttribute\n | CommitProperty\n | CommitBooleanAttribute\n | CommitEventListener\n | CommitToElementBinding;\n\n export interface CommitNothingToChildEntry {\n kind: 'commit nothing to child';\n start: ChildNode;\n end: ChildNode | null;\n parent: Disconnectable | undefined;\n options: RenderOptions | undefined;\n }\n\n export interface CommitText {\n kind: 'commit text';\n node: Text;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitNode {\n kind: 'commit node';\n start: Node;\n parent: Disconnectable | undefined;\n value: Node;\n options: RenderOptions | undefined;\n }\n\n export interface CommitAttribute {\n kind: 'commit attribute';\n element: Element;\n name: string;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitProperty {\n kind: 'commit property';\n element: Element;\n name: string;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitBooleanAttribute {\n kind: 'commit boolean attribute';\n element: Element;\n name: string;\n value: boolean;\n options: RenderOptions | undefined;\n }\n\n export interface CommitEventListener {\n kind: 'commit event listener';\n element: Element;\n name: string;\n value: unknown;\n oldListener: unknown;\n options: RenderOptions | undefined;\n // True if we're removing the old event listener (e.g. because settings changed, or value is nothing)\n removeListener: boolean;\n // True if we're adding a new event listener (e.g. because first render, or settings changed)\n addListener: boolean;\n }\n\n export interface CommitToElementBinding {\n kind: 'commit to element binding';\n element: Element;\n value: unknown;\n options: RenderOptions | undefined;\n }\n }\n}\n\ninterface DebugLoggingWindow {\n // Even in dev mode, we generally don't want to emit these events, as that's\n // another level of cost, so only emit them when DEV_MODE is true _and_ when\n // window.emitLitDebugEvents is true.\n emitLitDebugLogEvents?: boolean;\n}\n\n/**\n * Useful for visualizing and logging insights into what the Lit template system is doing.\n *\n * Compiled out of prod mode builds.\n */\nconst debugLogEvent = DEV_MODE\n ? (event: LitUnstable.DebugLog.Entry) => {\n const shouldEmit = (global as unknown as DebugLoggingWindow)\n .emitLitDebugLogEvents;\n if (!shouldEmit) {\n return;\n }\n global.dispatchEvent(\n new CustomEvent('lit-debug', {\n detail: event,\n })\n );\n }\n : undefined;\n// Used for connecting beginRender and endRender events when there are nested\n// renders when errors are thrown preventing an endRender event from being\n// called.\nlet debugLogRenderId = 0;\n\nlet issueWarning: (code: string, warning: string) => void;\n\nif (DEV_MODE) {\n global.litIssuedWarnings ??= new Set();\n\n // Issue a warning, if we haven't already.\n issueWarning = (code: string, warning: string) => {\n warning += code\n ? ` See https://lit.dev/msg/${code} for more information.`\n : '';\n if (!global.litIssuedWarnings!.has(warning)) {\n console.warn(warning);\n global.litIssuedWarnings!.add(warning);\n }\n };\n\n issueWarning(\n 'dev-mode',\n `Lit is in dev mode. Not recommended for production!`\n );\n}\n\nconst wrap =\n ENABLE_SHADYDOM_NOPATCH &&\n global.ShadyDOM?.inUse &&\n global.ShadyDOM?.noPatch === true\n ? (global.ShadyDOM!.wrap as (node: T) => T)\n : (node: T) => node;\n\nconst trustedTypes = (global as unknown as Window).trustedTypes;\n\n/**\n * Our TrustedTypePolicy for HTML which is declared using the html template\n * tag function.\n *\n * That HTML is a developer-authored constant, and is parsed with innerHTML\n * before any untrusted expressions have been mixed in. Therefor it is\n * considered safe by construction.\n */\nconst policy = trustedTypes\n ? trustedTypes.createPolicy('lit-html', {\n createHTML: (s) => s,\n })\n : undefined;\n\n/**\n * Used to sanitize any value before it is written into the DOM. This can be\n * used to implement a security policy of allowed and disallowed values in\n * order to prevent XSS attacks.\n *\n * One way of using this callback would be to check attributes and properties\n * against a list of high risk fields, and require that values written to such\n * fields be instances of a class which is safe by construction. Closure's Safe\n * HTML Types is one implementation of this technique (\n * https://github.com/google/safe-html-types/blob/master/doc/safehtml-types.md).\n * The TrustedTypes polyfill in API-only mode could also be used as a basis\n * for this technique (https://github.com/WICG/trusted-types).\n *\n * @param node The HTML node (usually either a #text node or an Element) that\n * is being written to. Note that this is just an exemplar node, the write\n * may take place against another instance of the same class of node.\n * @param name The name of an attribute or property (for example, 'href').\n * @param type Indicates whether the write that's about to be performed will\n * be to a property or a node.\n * @return A function that will sanitize this class of writes.\n */\nexport type SanitizerFactory = (\n node: Node,\n name: string,\n type: 'property' | 'attribute'\n) => ValueSanitizer;\n\n/**\n * A function which can sanitize values that will be written to a specific kind\n * of DOM sink.\n *\n * See SanitizerFactory.\n *\n * @param value The value to sanitize. Will be the actual value passed into\n * the lit-html template literal, so this could be of any type.\n * @return The value to write to the DOM. Usually the same as the input value,\n * unless sanitization is needed.\n */\nexport type ValueSanitizer = (value: unknown) => unknown;\n\nconst identityFunction: ValueSanitizer = (value: unknown) => value;\nconst noopSanitizer: SanitizerFactory = (\n _node: Node,\n _name: string,\n _type: 'property' | 'attribute'\n) => identityFunction;\n\n/** Sets the global sanitizer factory. */\nconst setSanitizer = (newSanitizer: SanitizerFactory) => {\n if (!ENABLE_EXTRA_SECURITY_HOOKS) {\n return;\n }\n if (sanitizerFactoryInternal !== noopSanitizer) {\n throw new Error(\n `Attempted to overwrite existing lit-html security policy.` +\n ` setSanitizeDOMValueFactory should be called at most once.`\n );\n }\n sanitizerFactoryInternal = newSanitizer;\n};\n\n/**\n * Only used in internal tests, not a part of the public API.\n */\nconst _testOnlyClearSanitizerFactoryDoNotCallOrElse = () => {\n sanitizerFactoryInternal = noopSanitizer;\n};\n\nconst createSanitizer: SanitizerFactory = (node, name, type) => {\n return sanitizerFactoryInternal(node, name, type);\n};\n\n// Added to an attribute name to mark the attribute as bound so we can find\n// it easily.\nconst boundAttributeSuffix = '$lit$';\n\n// This marker is used in many syntactic positions in HTML, so it must be\n// a valid element name and attribute name. We don't support dynamic names (yet)\n// but this at least ensures that the parse tree is closer to the template\n// intention.\nconst marker = `lit$${String(Math.random()).slice(9)}$`;\n\n// String used to tell if a comment is a marker comment\nconst markerMatch = '?' + marker;\n\n// Text used to insert a comment marker node. We use processing instruction\n// syntax because it's slightly smaller, but parses as a comment node.\nconst nodeMarker = `<${markerMatch}>`;\n\nconst d =\n NODE_MODE && global.document === undefined\n ? ({\n createTreeWalker() {\n return {};\n },\n } as unknown as Document)\n : document;\n\n// Creates a dynamic marker. We never have to search for these in the DOM.\nconst createMarker = () => d.createComment('');\n\n// https://tc39.github.io/ecma262/#sec-typeof-operator\ntype Primitive = null | undefined | boolean | number | string | symbol | bigint;\nconst isPrimitive = (value: unknown): value is Primitive =>\n value === null || (typeof value != 'object' && typeof value != 'function');\nconst isArray = Array.isArray;\nconst isIterable = (value: unknown): value is Iterable =>\n isArray(value) ||\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n typeof (value as any)?.[Symbol.iterator] === 'function';\n\nconst SPACE_CHAR = `[ \\t\\n\\f\\r]`;\nconst ATTR_VALUE_CHAR = `[^ \\t\\n\\f\\r\"'\\`<>=]`;\nconst NAME_CHAR = `[^\\\\s\"'>=/]`;\n\n// These regexes represent the five parsing states that we care about in the\n// Template's HTML scanner. They match the *end* of the state they're named\n// after.\n// Depending on the match, we transition to a new state. If there's no match,\n// we stay in the same state.\n// Note that the regexes are stateful. We utilize lastIndex and sync it\n// across the multiple regexes used. In addition to the five regexes below\n// we also dynamically create a regex to find the matching end tags for raw\n// text elements.\n\n/**\n * End of text is: `<` followed by:\n * (comment start) or (tag) or (dynamic tag binding)\n */\nconst textEndRegex = /<(?:(!--|\\/[^a-zA-Z])|(\\/?[a-zA-Z][^>\\s]*)|(\\/?$))/g;\nconst COMMENT_START = 1;\nconst TAG_NAME = 2;\nconst DYNAMIC_TAG_NAME = 3;\n\nconst commentEndRegex = /-->/g;\n/**\n * Comments not started with /g,O=/>/g,u=RegExp(`>|${R}(?:([^\\s"'>=/]+)(${R}*=${R}*(?:[^ -\f\r"'\`<>=]|("|')|))|$)`,"g"),W=/'/g,j=/"/g,G=/^(?:script|style|textarea|title)$/i,Q=e=>(t,...i)=>({_$litType$:e,strings:t,values:i}),it=Q(1),st=Q(2),N=Symbol.for("lit-noChange"),a=Symbol.for("lit-nothing"),k=new WeakMap,g=v.createTreeWalker(v,129);function q(e,t){if(!Array.isArray(e)||!e.hasOwnProperty("raw"))throw Error("invalid template strings array");return L!==void 0?L.createHTML(t):t}var F=(e,t)=>{let i=e.length-1,s=[],n,o=t===2?"":"",h=y;for(let _=0;_"?(h=n??y,l=-1):A[1]===void 0?l=-2:(l=h.lastIndex-A[2].length,$=A[1],h=A[3]===void 0?u:A[3]==='"'?j:W):h===j||h===W?h=u:h===V||h===O?h=y:(h=u,n=void 0);let p=h===u&&e[_+1].startsWith("/>")?" ":"";o+=h===y?r+X:l>=0?(s.push($),r.slice(0,l)+U+r.slice(l)+d+p):r+d+(l===-2?_:p)}return[q(e,o+(e[i]||"")+(t===2?"":"")),s]},T=class e{constructor({strings:t,_$litType$:i},s){let n;this.parts=[];let o=0,h=0,_=t.length-1,r=this.parts,[$,A]=F(t,i);if(this.el=e.createElement($,s),g.currentNode=this.el.content,i===2){let l=this.el.content.firstChild;l.replaceWith(...l.childNodes)}for(;(n=g.nextNode())!==null&&r.length<_;){if(n.nodeType===1){if(n.hasAttributes())for(let l of n.getAttributeNames())if(l.endsWith(U)){let c=A[h++],p=n.getAttribute(l).split(d),C=/([.?@])?(.*)/.exec(c);r.push({type:1,index:o,name:C[2],strings:p,ctor:C[1]==="."?B:C[1]==="?"?w:C[1]==="@"?E:f}),n.removeAttribute(l)}else l.startsWith(d)&&(r.push({type:6,index:o}),n.removeAttribute(l));if(G.test(n.tagName)){let l=n.textContent.split(d),c=l.length-1;if(c>0){n.textContent=M?M.emptyScript:"";for(let p=0;p2||s[0]!==""||s[1]!==""?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=a}_$AI(t,i=this,s,n){let o=this.strings,h=!1;if(o===void 0)t=m(this,t,i,0),h=!H(t)||t!==this._$AH&&t!==N,h&&(this._$AH=t);else{let _=t,r,$;for(t=o[0],r=0;re===null||typeof e!="object"&&typeof e!="function",ht={HTML:1,SVG:2},lt=(e,t)=>t===void 0?e?._$litType$!==void 0:e?._$litType$===t,$t=e=>e?._$litType$?.h!=null,at=e=>e?._$litDirective$!==void 0,At=e=>e?._$litDirective$,_t=e=>e.strings===void 0,K=()=>document.createComment(""),ct=(e,t,i)=>{let s=e._$AA.parentNode,n=t===void 0?e._$AB:t._$AA;if(i===void 0){let o=s.insertBefore(K(),n),h=s.insertBefore(K(),n);i=new tt(o,h,e,e.options)}else{let o=i._$AB.nextSibling,h=i._$AM,_=h!==e;if(_){let r;i._$AQ?.(e),i._$AM=e,i._$AP!==void 0&&(r=e._$AU)!==h._$AU&&i._$AP(r)}if(o!==n||_){let r=i._$AA;for(;r!==o;){let $=r.nextSibling;s.insertBefore(r,n),r=$}}}return i},dt=(e,t,i=e)=>(e._$AI(t,i),e),et={},pt=(e,t=et)=>e._$AH=t,ut=e=>e._$AH,gt=e=>{e._$AP?.(!1,!0);let t=e._$AA,i=e._$AB.nextSibling;for(;t!==i;){let s=t.nextSibling;t.remove(),t=s}},vt=e=>{e._$AR()};export{ht as TemplateResultType,vt as clearPart,ut as getCommittedValue,At as getDirectiveClass,ct as insertPart,$t as isCompiledTemplateResult,at as isDirectiveResult,ot as isPrimitive,_t as isSingleExpression,lt as isTemplateResult,gt as removePart,dt as setChildPartValue,pt as setCommittedValue}; -/*! Bundled license information: - -lit-html/lit-html.js: - (** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - *) - -lit-html/directive-helpers.js: - (** - * @license - * Copyright 2020 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - *) -*/ -//# sourceMappingURL=directive-helpers-X2QMTHJX.js.map diff --git a/tests/staticfiles/esm/node_modules/lit/directive-helpers-X2QMTHJX.js.map b/tests/staticfiles/esm/node_modules/lit/directive-helpers-X2QMTHJX.js.map deleted file mode 100644 index 0eb4534..0000000 --- a/tests/staticfiles/esm/node_modules/lit/directive-helpers-X2QMTHJX.js.map +++ /dev/null @@ -1,7 +0,0 @@ -{ - "version": 3, - "sources": ["../../../../node_modules/lit-html/src/lit-html.ts", "../../../../node_modules/lit-html/src/directive-helpers.ts"], - "sourcesContent": ["/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n// IMPORTANT: these imports must be type-only\nimport type {Directive, DirectiveResult, PartInfo} from './directive.js';\n\nconst DEV_MODE = true;\nconst ENABLE_EXTRA_SECURITY_HOOKS = true;\nconst ENABLE_SHADYDOM_NOPATCH = true;\nconst NODE_MODE = false;\n\n// Allows minifiers to rename references to globalThis\nconst global = globalThis;\n\n/**\n * Contains types that are part of the unstable debug API.\n *\n * Everything in this API is not stable and may change or be removed in the future,\n * even on patch releases.\n */\n// eslint-disable-next-line @typescript-eslint/no-namespace\nexport namespace LitUnstable {\n /**\n * When Lit is running in dev mode and `window.emitLitDebugLogEvents` is true,\n * we will emit 'lit-debug' events to window, with live details about the update and render\n * lifecycle. These can be useful for writing debug tooling and visualizations.\n *\n * Please be aware that running with window.emitLitDebugLogEvents has performance overhead,\n * making certain operations that are normally very cheap (like a no-op render) much slower,\n * because we must copy data and dispatch events.\n */\n // eslint-disable-next-line @typescript-eslint/no-namespace\n export namespace DebugLog {\n export type Entry =\n | TemplatePrep\n | TemplateInstantiated\n | TemplateInstantiatedAndUpdated\n | TemplateUpdating\n | BeginRender\n | EndRender\n | CommitPartEntry\n | SetPartValue;\n export interface TemplatePrep {\n kind: 'template prep';\n template: Template;\n strings: TemplateStringsArray;\n clonableTemplate: HTMLTemplateElement;\n parts: TemplatePart[];\n }\n export interface BeginRender {\n kind: 'begin render';\n id: number;\n value: unknown;\n container: HTMLElement | DocumentFragment;\n options: RenderOptions | undefined;\n part: ChildPart | undefined;\n }\n export interface EndRender {\n kind: 'end render';\n id: number;\n value: unknown;\n container: HTMLElement | DocumentFragment;\n options: RenderOptions | undefined;\n part: ChildPart;\n }\n export interface TemplateInstantiated {\n kind: 'template instantiated';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n fragment: Node;\n parts: Array;\n values: unknown[];\n }\n export interface TemplateInstantiatedAndUpdated {\n kind: 'template instantiated and updated';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n fragment: Node;\n parts: Array;\n values: unknown[];\n }\n export interface TemplateUpdating {\n kind: 'template updating';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n parts: Array;\n values: unknown[];\n }\n export interface SetPartValue {\n kind: 'set part';\n part: Part;\n value: unknown;\n valueIndex: number;\n values: unknown[];\n templateInstance: TemplateInstance;\n }\n\n export type CommitPartEntry =\n | CommitNothingToChildEntry\n | CommitText\n | CommitNode\n | CommitAttribute\n | CommitProperty\n | CommitBooleanAttribute\n | CommitEventListener\n | CommitToElementBinding;\n\n export interface CommitNothingToChildEntry {\n kind: 'commit nothing to child';\n start: ChildNode;\n end: ChildNode | null;\n parent: Disconnectable | undefined;\n options: RenderOptions | undefined;\n }\n\n export interface CommitText {\n kind: 'commit text';\n node: Text;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitNode {\n kind: 'commit node';\n start: Node;\n parent: Disconnectable | undefined;\n value: Node;\n options: RenderOptions | undefined;\n }\n\n export interface CommitAttribute {\n kind: 'commit attribute';\n element: Element;\n name: string;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitProperty {\n kind: 'commit property';\n element: Element;\n name: string;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitBooleanAttribute {\n kind: 'commit boolean attribute';\n element: Element;\n name: string;\n value: boolean;\n options: RenderOptions | undefined;\n }\n\n export interface CommitEventListener {\n kind: 'commit event listener';\n element: Element;\n name: string;\n value: unknown;\n oldListener: unknown;\n options: RenderOptions | undefined;\n // True if we're removing the old event listener (e.g. because settings changed, or value is nothing)\n removeListener: boolean;\n // True if we're adding a new event listener (e.g. because first render, or settings changed)\n addListener: boolean;\n }\n\n export interface CommitToElementBinding {\n kind: 'commit to element binding';\n element: Element;\n value: unknown;\n options: RenderOptions | undefined;\n }\n }\n}\n\ninterface DebugLoggingWindow {\n // Even in dev mode, we generally don't want to emit these events, as that's\n // another level of cost, so only emit them when DEV_MODE is true _and_ when\n // window.emitLitDebugEvents is true.\n emitLitDebugLogEvents?: boolean;\n}\n\n/**\n * Useful for visualizing and logging insights into what the Lit template system is doing.\n *\n * Compiled out of prod mode builds.\n */\nconst debugLogEvent = DEV_MODE\n ? (event: LitUnstable.DebugLog.Entry) => {\n const shouldEmit = (global as unknown as DebugLoggingWindow)\n .emitLitDebugLogEvents;\n if (!shouldEmit) {\n return;\n }\n global.dispatchEvent(\n new CustomEvent('lit-debug', {\n detail: event,\n })\n );\n }\n : undefined;\n// Used for connecting beginRender and endRender events when there are nested\n// renders when errors are thrown preventing an endRender event from being\n// called.\nlet debugLogRenderId = 0;\n\nlet issueWarning: (code: string, warning: string) => void;\n\nif (DEV_MODE) {\n global.litIssuedWarnings ??= new Set();\n\n // Issue a warning, if we haven't already.\n issueWarning = (code: string, warning: string) => {\n warning += code\n ? ` See https://lit.dev/msg/${code} for more information.`\n : '';\n if (!global.litIssuedWarnings!.has(warning)) {\n console.warn(warning);\n global.litIssuedWarnings!.add(warning);\n }\n };\n\n issueWarning(\n 'dev-mode',\n `Lit is in dev mode. Not recommended for production!`\n );\n}\n\nconst wrap =\n ENABLE_SHADYDOM_NOPATCH &&\n global.ShadyDOM?.inUse &&\n global.ShadyDOM?.noPatch === true\n ? (global.ShadyDOM!.wrap as (node: T) => T)\n : (node: T) => node;\n\nconst trustedTypes = (global as unknown as Window).trustedTypes;\n\n/**\n * Our TrustedTypePolicy for HTML which is declared using the html template\n * tag function.\n *\n * That HTML is a developer-authored constant, and is parsed with innerHTML\n * before any untrusted expressions have been mixed in. Therefor it is\n * considered safe by construction.\n */\nconst policy = trustedTypes\n ? trustedTypes.createPolicy('lit-html', {\n createHTML: (s) => s,\n })\n : undefined;\n\n/**\n * Used to sanitize any value before it is written into the DOM. This can be\n * used to implement a security policy of allowed and disallowed values in\n * order to prevent XSS attacks.\n *\n * One way of using this callback would be to check attributes and properties\n * against a list of high risk fields, and require that values written to such\n * fields be instances of a class which is safe by construction. Closure's Safe\n * HTML Types is one implementation of this technique (\n * https://github.com/google/safe-html-types/blob/master/doc/safehtml-types.md).\n * The TrustedTypes polyfill in API-only mode could also be used as a basis\n * for this technique (https://github.com/WICG/trusted-types).\n *\n * @param node The HTML node (usually either a #text node or an Element) that\n * is being written to. Note that this is just an exemplar node, the write\n * may take place against another instance of the same class of node.\n * @param name The name of an attribute or property (for example, 'href').\n * @param type Indicates whether the write that's about to be performed will\n * be to a property or a node.\n * @return A function that will sanitize this class of writes.\n */\nexport type SanitizerFactory = (\n node: Node,\n name: string,\n type: 'property' | 'attribute'\n) => ValueSanitizer;\n\n/**\n * A function which can sanitize values that will be written to a specific kind\n * of DOM sink.\n *\n * See SanitizerFactory.\n *\n * @param value The value to sanitize. Will be the actual value passed into\n * the lit-html template literal, so this could be of any type.\n * @return The value to write to the DOM. Usually the same as the input value,\n * unless sanitization is needed.\n */\nexport type ValueSanitizer = (value: unknown) => unknown;\n\nconst identityFunction: ValueSanitizer = (value: unknown) => value;\nconst noopSanitizer: SanitizerFactory = (\n _node: Node,\n _name: string,\n _type: 'property' | 'attribute'\n) => identityFunction;\n\n/** Sets the global sanitizer factory. */\nconst setSanitizer = (newSanitizer: SanitizerFactory) => {\n if (!ENABLE_EXTRA_SECURITY_HOOKS) {\n return;\n }\n if (sanitizerFactoryInternal !== noopSanitizer) {\n throw new Error(\n `Attempted to overwrite existing lit-html security policy.` +\n ` setSanitizeDOMValueFactory should be called at most once.`\n );\n }\n sanitizerFactoryInternal = newSanitizer;\n};\n\n/**\n * Only used in internal tests, not a part of the public API.\n */\nconst _testOnlyClearSanitizerFactoryDoNotCallOrElse = () => {\n sanitizerFactoryInternal = noopSanitizer;\n};\n\nconst createSanitizer: SanitizerFactory = (node, name, type) => {\n return sanitizerFactoryInternal(node, name, type);\n};\n\n// Added to an attribute name to mark the attribute as bound so we can find\n// it easily.\nconst boundAttributeSuffix = '$lit$';\n\n// This marker is used in many syntactic positions in HTML, so it must be\n// a valid element name and attribute name. We don't support dynamic names (yet)\n// but this at least ensures that the parse tree is closer to the template\n// intention.\nconst marker = `lit$${String(Math.random()).slice(9)}$`;\n\n// String used to tell if a comment is a marker comment\nconst markerMatch = '?' + marker;\n\n// Text used to insert a comment marker node. We use processing instruction\n// syntax because it's slightly smaller, but parses as a comment node.\nconst nodeMarker = `<${markerMatch}>`;\n\nconst d =\n NODE_MODE && global.document === undefined\n ? ({\n createTreeWalker() {\n return {};\n },\n } as unknown as Document)\n : document;\n\n// Creates a dynamic marker. We never have to search for these in the DOM.\nconst createMarker = () => d.createComment('');\n\n// https://tc39.github.io/ecma262/#sec-typeof-operator\ntype Primitive = null | undefined | boolean | number | string | symbol | bigint;\nconst isPrimitive = (value: unknown): value is Primitive =>\n value === null || (typeof value != 'object' && typeof value != 'function');\nconst isArray = Array.isArray;\nconst isIterable = (value: unknown): value is Iterable =>\n isArray(value) ||\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n typeof (value as any)?.[Symbol.iterator] === 'function';\n\nconst SPACE_CHAR = `[ \\t\\n\\f\\r]`;\nconst ATTR_VALUE_CHAR = `[^ \\t\\n\\f\\r\"'\\`<>=]`;\nconst NAME_CHAR = `[^\\\\s\"'>=/]`;\n\n// These regexes represent the five parsing states that we care about in the\n// Template's HTML scanner. They match the *end* of the state they're named\n// after.\n// Depending on the match, we transition to a new state. If there's no match,\n// we stay in the same state.\n// Note that the regexes are stateful. We utilize lastIndex and sync it\n// across the multiple regexes used. In addition to the five regexes below\n// we also dynamically create a regex to find the matching end tags for raw\n// text elements.\n\n/**\n * End of text is: `<` followed by:\n * (comment start) or (tag) or (dynamic tag binding)\n */\nconst textEndRegex = /<(?:(!--|\\/[^a-zA-Z])|(\\/?[a-zA-Z][^>\\s]*)|(\\/?$))/g;\nconst COMMENT_START = 1;\nconst TAG_NAME = 2;\nconst DYNAMIC_TAG_NAME = 3;\n\nconst commentEndRegex = /-->/g;\n/**\n * Comments not started with /g,K=/>/g,f=RegExp(`>|${j}(?:([^\\s"'>=/]+)(${j}*=${j}*(?:[^ -\f\r"'\`<>=]|("|')|))|$)`,"g"),J=/'/g,X=/"/g,et=/^(?:script|style|textarea|title)$/i,st=s=>(t,...e)=>({_$litType$:s,strings:t,values:e}),gt=st(1),yt=st(2),u=Symbol.for("lit-noChange"),$=Symbol.for("lit-nothing"),Q=new WeakMap,m=v.createTreeWalker(v,129);function it(s,t){if(!Array.isArray(s)||!s.hasOwnProperty("raw"))throw Error("invalid template strings array");return Y!==void 0?Y.createHTML(t):t}var nt=(s,t)=>{let e=s.length-1,i=[],n,r=t===2?"":"",h=H;for(let l=0;l"?(h=n??H,a=-1):_[1]===void 0?a=-2:(a=h.lastIndex-_[2].length,c=_[1],h=_[3]===void 0?f:_[3]==='"'?X:J):h===X||h===J?h=f:h===q||h===K?h=H:(h=f,n=void 0);let p=h===f&&s[l+1].startsWith("/>")?" ":"";r+=h===H?o+At:a>=0?(i.push(c),o.slice(0,a)+z+o.slice(a)+d+p):o+d+(a===-2?l:p)}return[it(s,r+(s[e]||"")+(t===2?"":"")),i]},b=class s{constructor({strings:t,_$litType$:e},i){let n;this.parts=[];let r=0,h=0,l=t.length-1,o=this.parts,[c,_]=nt(t,e);if(this.el=s.createElement(c,i),m.currentNode=this.el.content,e===2){let a=this.el.content.firstChild;a.replaceWith(...a.childNodes)}for(;(n=m.nextNode())!==null&&o.length0){n.textContent=R?R.emptyScript:"";for(let p=0;p2||i[0]!==""||i[1]!==""?(this._$AH=Array(i.length-1).fill(new String),this.strings=i):this._$AH=$}_$AI(t,e=this,i,n){let r=this.strings,h=!1;if(r===void 0)t=g(this,t,e,0),h=!P(t)||t!==this._$AH&&t!==u,h&&(this._$AH=t);else{let l=t,o,c;for(t=r[0],o=0;os.strings===void 0,ot=()=>document.createComment(""),at=(s,t,e)=>{let i=s._$AA.parentNode,n=t===void 0?s._$AB:t._$AA;if(e===void 0){let r=i.insertBefore(ot(),n),h=i.insertBefore(ot(),n);e=new pt(r,h,s,s.options)}else{let r=e._$AB.nextSibling,h=e._$AM,l=h!==s;if(l){let o;e._$AQ?.(s),e._$AM=s,e._$AP!==void 0&&(o=s._$AU)!==h._$AU&&e._$AP(o)}if(r!==n||l){let o=e._$AA;for(;o!==r;){let c=o.nextSibling;i.insertBefore(o,n),o=c}}}return e},ct=(s,t,e=s)=>(s._$AI(t,e),s);var lt=s=>{s._$AR()};var M=(s,t)=>{let e=s._$AN;if(e===void 0)return!1;for(let i of e)i._$AO?.(t,!1),M(i,t);return!0},L=s=>{let t,e;do{if((t=s._$AM)===void 0)break;e=t._$AN,e.delete(s),s=t}while(e?.size===0)},$t=s=>{for(let t;t=s._$AM;s=t){let e=t._$AN;if(e===void 0)t._$AN=e=new Set;else if(e.has(s))break;e.add(s),mt(t)}};function ut(s){this._$AN!==void 0?(L(this),this._$AM=s,$t(this)):this._$AM=s}function ft(s,t=!1,e=0){let i=this._$AH,n=this._$AN;if(n!==void 0&&n.size!==0)if(t)if(Array.isArray(i))for(let r=e;r{s.type==x.CHILD&&(s._$AP??(s._$AP=ft),s._$AQ??(s._$AQ=ut))},k=class extends C{constructor(){super(...arguments),this._$AN=void 0}_$AT(t,e,i){super._$AT(t,e,i),$t(this),this.isConnected=t._$AU}_$AO(t,e=!0){t!==this.isConnected&&(this.isConnected=t,t?this.reconnected?.():this.disconnected?.()),e&&(M(this,t),L(this))}setValue(t){if(ht(this._$Ct))this._$Ct._$AI(t,this);else{let e=[...this._$Ct._$AH];e[this._$Ci]=t,this._$Ct._$AI(e,this,0)}}disconnected(){}reconnected(){}};var _t=async(s,t)=>{for await(let e of s)if(await t(e)===!1)return},W=class{constructor(t){this.G=t}disconnect(){this.G=void 0}reconnect(t){this.G=t}deref(){return this.G}},Z=class{constructor(){this.Y=void 0,this.Z=void 0}get(){return this.Y}pause(){this.Y??(this.Y=new Promise(t=>this.Z=t))}resume(){this.Z?.(),this.Y=this.Z=void 0}};var E=class extends k{constructor(){super(...arguments),this._$Cq=new W(this),this._$CK=new Z}render(t,e){return u}update(t,[e,i]){if(this.isConnected||this.disconnected(),e===this._$CX)return;this._$CX=e;let n=0,{_$Cq:r,_$CK:h}=this;return _t(e,async l=>{for(;h.get();)await h.get();let o=r.deref();if(o!==void 0){if(o._$CX!==e)return!1;i!==void 0&&(l=i(l,n)),o.commitValue(l,n),n++}return!0}),u}commitValue(t,e){this.setValue(t)}disconnected(){this._$Cq.disconnect(),this._$CK.pause()}reconnected(){this._$Cq.reconnect(this),this._$CK.resume()}},St=T(E);var Ot=T(class extends E{constructor(s){if(super(s),s.type!==x.CHILD)throw Error("asyncAppend can only be used in child expressions")}update(s,t){return this._$CJ=s,super.update(s,t)}commitValue(s,t){t===0&<(this._$CJ);let e=at(this._$CJ);ct(e,s)}});export{Ot as asyncAppend}; -/*! Bundled license information: - -lit-html/directive.js: -lit-html/lit-html.js: -lit-html/async-directive.js: -lit-html/directives/async-replace.js: -lit-html/directives/async-append.js: - (** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - *) - -lit-html/directive-helpers.js: - (** - * @license - * Copyright 2020 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - *) - -lit-html/directives/private-async-helpers.js: - (** - * @license - * Copyright 2021 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - *) -*/ -//# sourceMappingURL=async-append-LPPUIV6V.js.map diff --git a/tests/staticfiles/esm/node_modules/lit/directives/async-append-LPPUIV6V.js.map b/tests/staticfiles/esm/node_modules/lit/directives/async-append-LPPUIV6V.js.map deleted file mode 100644 index 7c1cd79..0000000 --- a/tests/staticfiles/esm/node_modules/lit/directives/async-append-LPPUIV6V.js.map +++ /dev/null @@ -1,7 +0,0 @@ -{ - "version": 3, - "sources": ["../../../../../node_modules/lit-html/src/directive.ts", "../../../../../node_modules/lit-html/src/lit-html.ts", "../../../../../node_modules/lit-html/src/directive-helpers.ts", "../../../../../node_modules/lit-html/src/async-directive.ts", "../../../../../node_modules/lit-html/src/directives/private-async-helpers.ts", "../../../../../node_modules/lit-html/src/directives/async-replace.ts", "../../../../../node_modules/lit-html/src/directives/async-append.ts"], - "sourcesContent": ["/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\nimport {Disconnectable, Part} from './lit-html.js';\n\nexport {\n AttributePart,\n BooleanAttributePart,\n ChildPart,\n ElementPart,\n EventPart,\n Part,\n PropertyPart,\n} from './lit-html.js';\n\nexport interface DirectiveClass {\n new (part: PartInfo): Directive;\n}\n\n/**\n * This utility type extracts the signature of a directive class's render()\n * method so we can use it for the type of the generated directive function.\n */\nexport type DirectiveParameters = Parameters;\n\n/**\n * A generated directive function doesn't evaluate the directive, but just\n * returns a DirectiveResult object that captures the arguments.\n */\nexport interface DirectiveResult {\n /**\n * This property needs to remain unminified.\n * @internal */\n ['_$litDirective$']: C;\n /** @internal */\n values: DirectiveParameters>;\n}\n\nexport const PartType = {\n ATTRIBUTE: 1,\n CHILD: 2,\n PROPERTY: 3,\n BOOLEAN_ATTRIBUTE: 4,\n EVENT: 5,\n ELEMENT: 6,\n} as const;\n\nexport type PartType = (typeof PartType)[keyof typeof PartType];\n\nexport interface ChildPartInfo {\n readonly type: typeof PartType.CHILD;\n}\n\nexport interface AttributePartInfo {\n readonly type:\n | typeof PartType.ATTRIBUTE\n | typeof PartType.PROPERTY\n | typeof PartType.BOOLEAN_ATTRIBUTE\n | typeof PartType.EVENT;\n readonly strings?: ReadonlyArray;\n readonly name: string;\n readonly tagName: string;\n}\n\nexport interface ElementPartInfo {\n readonly type: typeof PartType.ELEMENT;\n}\n\n/**\n * Information about the part a directive is bound to.\n *\n * This is useful for checking that a directive is attached to a valid part,\n * such as with directive that can only be used on attribute bindings.\n */\nexport type PartInfo = ChildPartInfo | AttributePartInfo | ElementPartInfo;\n\n/**\n * Creates a user-facing directive function from a Directive class. This\n * function has the same parameters as the directive's render() method.\n */\nexport const directive =\n (c: C) =>\n (...values: DirectiveParameters>): DirectiveResult => ({\n // This property needs to remain unminified.\n ['_$litDirective$']: c,\n values,\n });\n\n/**\n * Base class for creating custom directives. Users should extend this class,\n * implement `render` and/or `update`, and then pass their subclass to\n * `directive`.\n */\nexport abstract class Directive implements Disconnectable {\n //@internal\n __part!: Part;\n //@internal\n __attributeIndex: number | undefined;\n //@internal\n __directive?: Directive;\n\n //@internal\n _$parent!: Disconnectable;\n\n // These will only exist on the AsyncDirective subclass\n //@internal\n _$disconnectableChildren?: Set;\n // This property needs to remain unminified.\n //@internal\n ['_$notifyDirectiveConnectionChanged']?(isConnected: boolean): void;\n\n constructor(_partInfo: PartInfo) {}\n\n // See comment in Disconnectable interface for why this is a getter\n get _$isConnected() {\n return this._$parent._$isConnected;\n }\n\n /** @internal */\n _$initialize(\n part: Part,\n parent: Disconnectable,\n attributeIndex: number | undefined\n ) {\n this.__part = part;\n this._$parent = parent;\n this.__attributeIndex = attributeIndex;\n }\n /** @internal */\n _$resolve(part: Part, props: Array): unknown {\n return this.update(part, props);\n }\n\n abstract render(...props: Array): unknown;\n\n update(_part: Part, props: Array): unknown {\n return this.render(...props);\n }\n}\n", "/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n// IMPORTANT: these imports must be type-only\nimport type {Directive, DirectiveResult, PartInfo} from './directive.js';\n\nconst DEV_MODE = true;\nconst ENABLE_EXTRA_SECURITY_HOOKS = true;\nconst ENABLE_SHADYDOM_NOPATCH = true;\nconst NODE_MODE = false;\n\n// Allows minifiers to rename references to globalThis\nconst global = globalThis;\n\n/**\n * Contains types that are part of the unstable debug API.\n *\n * Everything in this API is not stable and may change or be removed in the future,\n * even on patch releases.\n */\n// eslint-disable-next-line @typescript-eslint/no-namespace\nexport namespace LitUnstable {\n /**\n * When Lit is running in dev mode and `window.emitLitDebugLogEvents` is true,\n * we will emit 'lit-debug' events to window, with live details about the update and render\n * lifecycle. These can be useful for writing debug tooling and visualizations.\n *\n * Please be aware that running with window.emitLitDebugLogEvents has performance overhead,\n * making certain operations that are normally very cheap (like a no-op render) much slower,\n * because we must copy data and dispatch events.\n */\n // eslint-disable-next-line @typescript-eslint/no-namespace\n export namespace DebugLog {\n export type Entry =\n | TemplatePrep\n | TemplateInstantiated\n | TemplateInstantiatedAndUpdated\n | TemplateUpdating\n | BeginRender\n | EndRender\n | CommitPartEntry\n | SetPartValue;\n export interface TemplatePrep {\n kind: 'template prep';\n template: Template;\n strings: TemplateStringsArray;\n clonableTemplate: HTMLTemplateElement;\n parts: TemplatePart[];\n }\n export interface BeginRender {\n kind: 'begin render';\n id: number;\n value: unknown;\n container: HTMLElement | DocumentFragment;\n options: RenderOptions | undefined;\n part: ChildPart | undefined;\n }\n export interface EndRender {\n kind: 'end render';\n id: number;\n value: unknown;\n container: HTMLElement | DocumentFragment;\n options: RenderOptions | undefined;\n part: ChildPart;\n }\n export interface TemplateInstantiated {\n kind: 'template instantiated';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n fragment: Node;\n parts: Array;\n values: unknown[];\n }\n export interface TemplateInstantiatedAndUpdated {\n kind: 'template instantiated and updated';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n fragment: Node;\n parts: Array;\n values: unknown[];\n }\n export interface TemplateUpdating {\n kind: 'template updating';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n parts: Array;\n values: unknown[];\n }\n export interface SetPartValue {\n kind: 'set part';\n part: Part;\n value: unknown;\n valueIndex: number;\n values: unknown[];\n templateInstance: TemplateInstance;\n }\n\n export type CommitPartEntry =\n | CommitNothingToChildEntry\n | CommitText\n | CommitNode\n | CommitAttribute\n | CommitProperty\n | CommitBooleanAttribute\n | CommitEventListener\n | CommitToElementBinding;\n\n export interface CommitNothingToChildEntry {\n kind: 'commit nothing to child';\n start: ChildNode;\n end: ChildNode | null;\n parent: Disconnectable | undefined;\n options: RenderOptions | undefined;\n }\n\n export interface CommitText {\n kind: 'commit text';\n node: Text;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitNode {\n kind: 'commit node';\n start: Node;\n parent: Disconnectable | undefined;\n value: Node;\n options: RenderOptions | undefined;\n }\n\n export interface CommitAttribute {\n kind: 'commit attribute';\n element: Element;\n name: string;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitProperty {\n kind: 'commit property';\n element: Element;\n name: string;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitBooleanAttribute {\n kind: 'commit boolean attribute';\n element: Element;\n name: string;\n value: boolean;\n options: RenderOptions | undefined;\n }\n\n export interface CommitEventListener {\n kind: 'commit event listener';\n element: Element;\n name: string;\n value: unknown;\n oldListener: unknown;\n options: RenderOptions | undefined;\n // True if we're removing the old event listener (e.g. because settings changed, or value is nothing)\n removeListener: boolean;\n // True if we're adding a new event listener (e.g. because first render, or settings changed)\n addListener: boolean;\n }\n\n export interface CommitToElementBinding {\n kind: 'commit to element binding';\n element: Element;\n value: unknown;\n options: RenderOptions | undefined;\n }\n }\n}\n\ninterface DebugLoggingWindow {\n // Even in dev mode, we generally don't want to emit these events, as that's\n // another level of cost, so only emit them when DEV_MODE is true _and_ when\n // window.emitLitDebugEvents is true.\n emitLitDebugLogEvents?: boolean;\n}\n\n/**\n * Useful for visualizing and logging insights into what the Lit template system is doing.\n *\n * Compiled out of prod mode builds.\n */\nconst debugLogEvent = DEV_MODE\n ? (event: LitUnstable.DebugLog.Entry) => {\n const shouldEmit = (global as unknown as DebugLoggingWindow)\n .emitLitDebugLogEvents;\n if (!shouldEmit) {\n return;\n }\n global.dispatchEvent(\n new CustomEvent('lit-debug', {\n detail: event,\n })\n );\n }\n : undefined;\n// Used for connecting beginRender and endRender events when there are nested\n// renders when errors are thrown preventing an endRender event from being\n// called.\nlet debugLogRenderId = 0;\n\nlet issueWarning: (code: string, warning: string) => void;\n\nif (DEV_MODE) {\n global.litIssuedWarnings ??= new Set();\n\n // Issue a warning, if we haven't already.\n issueWarning = (code: string, warning: string) => {\n warning += code\n ? ` See https://lit.dev/msg/${code} for more information.`\n : '';\n if (!global.litIssuedWarnings!.has(warning)) {\n console.warn(warning);\n global.litIssuedWarnings!.add(warning);\n }\n };\n\n issueWarning(\n 'dev-mode',\n `Lit is in dev mode. Not recommended for production!`\n );\n}\n\nconst wrap =\n ENABLE_SHADYDOM_NOPATCH &&\n global.ShadyDOM?.inUse &&\n global.ShadyDOM?.noPatch === true\n ? (global.ShadyDOM!.wrap as (node: T) => T)\n : (node: T) => node;\n\nconst trustedTypes = (global as unknown as Window).trustedTypes;\n\n/**\n * Our TrustedTypePolicy for HTML which is declared using the html template\n * tag function.\n *\n * That HTML is a developer-authored constant, and is parsed with innerHTML\n * before any untrusted expressions have been mixed in. Therefor it is\n * considered safe by construction.\n */\nconst policy = trustedTypes\n ? trustedTypes.createPolicy('lit-html', {\n createHTML: (s) => s,\n })\n : undefined;\n\n/**\n * Used to sanitize any value before it is written into the DOM. This can be\n * used to implement a security policy of allowed and disallowed values in\n * order to prevent XSS attacks.\n *\n * One way of using this callback would be to check attributes and properties\n * against a list of high risk fields, and require that values written to such\n * fields be instances of a class which is safe by construction. Closure's Safe\n * HTML Types is one implementation of this technique (\n * https://github.com/google/safe-html-types/blob/master/doc/safehtml-types.md).\n * The TrustedTypes polyfill in API-only mode could also be used as a basis\n * for this technique (https://github.com/WICG/trusted-types).\n *\n * @param node The HTML node (usually either a #text node or an Element) that\n * is being written to. Note that this is just an exemplar node, the write\n * may take place against another instance of the same class of node.\n * @param name The name of an attribute or property (for example, 'href').\n * @param type Indicates whether the write that's about to be performed will\n * be to a property or a node.\n * @return A function that will sanitize this class of writes.\n */\nexport type SanitizerFactory = (\n node: Node,\n name: string,\n type: 'property' | 'attribute'\n) => ValueSanitizer;\n\n/**\n * A function which can sanitize values that will be written to a specific kind\n * of DOM sink.\n *\n * See SanitizerFactory.\n *\n * @param value The value to sanitize. Will be the actual value passed into\n * the lit-html template literal, so this could be of any type.\n * @return The value to write to the DOM. Usually the same as the input value,\n * unless sanitization is needed.\n */\nexport type ValueSanitizer = (value: unknown) => unknown;\n\nconst identityFunction: ValueSanitizer = (value: unknown) => value;\nconst noopSanitizer: SanitizerFactory = (\n _node: Node,\n _name: string,\n _type: 'property' | 'attribute'\n) => identityFunction;\n\n/** Sets the global sanitizer factory. */\nconst setSanitizer = (newSanitizer: SanitizerFactory) => {\n if (!ENABLE_EXTRA_SECURITY_HOOKS) {\n return;\n }\n if (sanitizerFactoryInternal !== noopSanitizer) {\n throw new Error(\n `Attempted to overwrite existing lit-html security policy.` +\n ` setSanitizeDOMValueFactory should be called at most once.`\n );\n }\n sanitizerFactoryInternal = newSanitizer;\n};\n\n/**\n * Only used in internal tests, not a part of the public API.\n */\nconst _testOnlyClearSanitizerFactoryDoNotCallOrElse = () => {\n sanitizerFactoryInternal = noopSanitizer;\n};\n\nconst createSanitizer: SanitizerFactory = (node, name, type) => {\n return sanitizerFactoryInternal(node, name, type);\n};\n\n// Added to an attribute name to mark the attribute as bound so we can find\n// it easily.\nconst boundAttributeSuffix = '$lit$';\n\n// This marker is used in many syntactic positions in HTML, so it must be\n// a valid element name and attribute name. We don't support dynamic names (yet)\n// but this at least ensures that the parse tree is closer to the template\n// intention.\nconst marker = `lit$${String(Math.random()).slice(9)}$`;\n\n// String used to tell if a comment is a marker comment\nconst markerMatch = '?' + marker;\n\n// Text used to insert a comment marker node. We use processing instruction\n// syntax because it's slightly smaller, but parses as a comment node.\nconst nodeMarker = `<${markerMatch}>`;\n\nconst d =\n NODE_MODE && global.document === undefined\n ? ({\n createTreeWalker() {\n return {};\n },\n } as unknown as Document)\n : document;\n\n// Creates a dynamic marker. We never have to search for these in the DOM.\nconst createMarker = () => d.createComment('');\n\n// https://tc39.github.io/ecma262/#sec-typeof-operator\ntype Primitive = null | undefined | boolean | number | string | symbol | bigint;\nconst isPrimitive = (value: unknown): value is Primitive =>\n value === null || (typeof value != 'object' && typeof value != 'function');\nconst isArray = Array.isArray;\nconst isIterable = (value: unknown): value is Iterable =>\n isArray(value) ||\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n typeof (value as any)?.[Symbol.iterator] === 'function';\n\nconst SPACE_CHAR = `[ \\t\\n\\f\\r]`;\nconst ATTR_VALUE_CHAR = `[^ \\t\\n\\f\\r\"'\\`<>=]`;\nconst NAME_CHAR = `[^\\\\s\"'>=/]`;\n\n// These regexes represent the five parsing states that we care about in the\n// Template's HTML scanner. They match the *end* of the state they're named\n// after.\n// Depending on the match, we transition to a new state. If there's no match,\n// we stay in the same state.\n// Note that the regexes are stateful. We utilize lastIndex and sync it\n// across the multiple regexes used. In addition to the five regexes below\n// we also dynamically create a regex to find the matching end tags for raw\n// text elements.\n\n/**\n * End of text is: `<` followed by:\n * (comment start) or (tag) or (dynamic tag binding)\n */\nconst textEndRegex = /<(?:(!--|\\/[^a-zA-Z])|(\\/?[a-zA-Z][^>\\s]*)|(\\/?$))/g;\nconst COMMENT_START = 1;\nconst TAG_NAME = 2;\nconst DYNAMIC_TAG_NAME = 3;\n\nconst commentEndRegex = /-->/g;\n/**\n * Comments not started with /g,K=/>/g,f=RegExp(`>|${k}(?:([^\\s"'>=/]+)(${k}*=${k}*(?:[^ -\f\r"'\`<>=]|("|')|))|$)`,"g"),X=/'/g,Q=/"/g,et=/^(?:script|style|textarea|title)$/i,st=i=>(t,...e)=>({_$litType$:i,strings:t,values:e}),dt=st(1),ut=st(2),p=Symbol.for("lit-noChange"),l=Symbol.for("lit-nothing"),F=new WeakMap,v=m.createTreeWalker(m,129);function it(i,t){if(!Array.isArray(i)||!i.hasOwnProperty("raw"))throw Error("invalid template strings array");return Y!==void 0?Y.createHTML(t):t}var nt=(i,t)=>{let e=i.length-1,s=[],n,r=t===2?"":"",h=C;for(let _=0;_"?(h=n??C,$=-1):c[1]===void 0?$=-2:($=h.lastIndex-c[2].length,a=c[1],h=c[3]===void 0?f:c[3]==='"'?Q:X):h===Q||h===X?h=f:h===q||h===K?h=C:(h=f,n=void 0);let u=h===f&&i[_+1].startsWith("/>")?" ":"";r+=h===C?o+at:$>=0?(s.push(a),o.slice(0,$)+W+o.slice($)+d+u):o+d+($===-2?_:u)}return[it(i,r+(i[e]||"")+(t===2?"":"")),s]},H=class i{constructor({strings:t,_$litType$:e},s){let n;this.parts=[];let r=0,h=0,_=t.length-1,o=this.parts,[a,c]=nt(t,e);if(this.el=i.createElement(a,s),v.currentNode=this.el.content,e===2){let $=this.el.content.firstChild;$.replaceWith(...$.childNodes)}for(;(n=v.nextNode())!==null&&o.length<_;){if(n.nodeType===1){if(n.hasAttributes())for(let $ of n.getAttributeNames())if($.endsWith(W)){let A=c[h++],u=n.getAttribute($).split(d),M=/([.?@])?(.*)/.exec(A);o.push({type:1,index:r,name:M[2],strings:u,ctor:M[1]==="."?R:M[1]==="?"?B:M[1]==="@"?D:y}),n.removeAttribute($)}else $.startsWith(d)&&(o.push({type:6,index:r}),n.removeAttribute($));if(et.test(n.tagName)){let $=n.textContent.split(d),A=$.length-1;if(A>0){n.textContent=w?w.emptyScript:"";for(let u=0;u2||s[0]!==""||s[1]!==""?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=l}_$AI(t,e=this,s,n){let r=this.strings,h=!1;if(r===void 0)t=g(this,t,e,0),h=!T(t)||t!==this._$AH&&t!==p,h&&(this._$AH=t);else{let _=t,o,a;for(t=r[0],o=0;oi.strings===void 0;var j={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},z=i=>(...t)=>({_$litDirective$:i,values:t}),P=class{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,s){this._$Ct=t,this._$AM=e,this._$Ci=s}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}};var b=(i,t)=>{let e=i._$AN;if(e===void 0)return!1;for(let s of e)s._$AO?.(t,!1),b(s,t);return!0},U=i=>{let t,e;do{if((t=i._$AM)===void 0)break;e=t._$AN,e.delete(i),i=t}while(e?.size===0)},ht=i=>{for(let t;t=i._$AM;i=t){let e=t._$AN;if(e===void 0)t._$AN=e=new Set;else if(e.has(i))break;e.add(i),At(t)}};function ct(i){this._$AN!==void 0?(U(this),this._$AM=i,ht(this)):this._$AM=i}function _t(i,t=!1,e=0){let s=this._$AH,n=this._$AN;if(n!==void 0&&n.size!==0)if(t)if(Array.isArray(s))for(let r=e;r{i.type==j.CHILD&&(i._$AP??(i._$AP=_t),i._$AQ??(i._$AQ=ct))},O=class extends P{constructor(){super(...arguments),this._$AN=void 0}_$AT(t,e,s){super._$AT(t,e,s),ht(this),this.isConnected=t._$AU}_$AO(t,e=!0){t!==this.isConnected&&(this.isConnected=t,t?this.reconnected?.():this.disconnected?.()),e&&(b(this,t),U(this))}setValue(t){if(ot(this._$Ct))this._$Ct._$AI(t,this);else{let e=[...this._$Ct._$AH];e[this._$Ci]=t,this._$Ct._$AI(e,this,0)}}disconnected(){}reconnected(){}};var $t=async(i,t)=>{for await(let e of i)if(await t(e)===!1)return},V=class{constructor(t){this.G=t}disconnect(){this.G=void 0}reconnect(t){this.G=t}deref(){return this.G}},L=class{constructor(){this.Y=void 0,this.Z=void 0}get(){return this.Y}pause(){this.Y??(this.Y=new Promise(t=>this.Z=t))}resume(){this.Z?.(),this.Y=this.Z=void 0}};var G=class extends O{constructor(){super(...arguments),this._$Cq=new V(this),this._$CK=new L}render(t,e){return p}update(t,[e,s]){if(this.isConnected||this.disconnected(),e===this._$CX)return;this._$CX=e;let n=0,{_$Cq:r,_$CK:h}=this;return $t(e,async _=>{for(;h.get();)await h.get();let o=r.deref();if(o!==void 0){if(o._$CX!==e)return!1;s!==void 0&&(_=s(_,n)),o.commitValue(_,n),n++}return!0}),p}commitValue(t,e){this.setValue(t)}disconnected(){this._$Cq.disconnect(),this._$CK.pause()}reconnected(){this._$Cq.reconnect(this),this._$CK.resume()}},wt=z(G);export{G as AsyncReplaceDirective,wt as asyncReplace}; -/*! Bundled license information: - -lit-html/lit-html.js: -lit-html/directive.js: -lit-html/async-directive.js: -lit-html/directives/async-replace.js: - (** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - *) - -lit-html/directive-helpers.js: - (** - * @license - * Copyright 2020 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - *) - -lit-html/directives/private-async-helpers.js: - (** - * @license - * Copyright 2021 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - *) -*/ -//# sourceMappingURL=async-replace-TGGH77CC.js.map diff --git a/tests/staticfiles/esm/node_modules/lit/directives/async-replace-TGGH77CC.js.map b/tests/staticfiles/esm/node_modules/lit/directives/async-replace-TGGH77CC.js.map deleted file mode 100644 index f8dfe22..0000000 --- a/tests/staticfiles/esm/node_modules/lit/directives/async-replace-TGGH77CC.js.map +++ /dev/null @@ -1,7 +0,0 @@ -{ - "version": 3, - "sources": ["../../../../../node_modules/lit-html/src/lit-html.ts", "../../../../../node_modules/lit-html/src/directive-helpers.ts", "../../../../../node_modules/lit-html/src/directive.ts", "../../../../../node_modules/lit-html/src/async-directive.ts", "../../../../../node_modules/lit-html/src/directives/private-async-helpers.ts", "../../../../../node_modules/lit-html/src/directives/async-replace.ts"], - "sourcesContent": ["/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n// IMPORTANT: these imports must be type-only\nimport type {Directive, DirectiveResult, PartInfo} from './directive.js';\n\nconst DEV_MODE = true;\nconst ENABLE_EXTRA_SECURITY_HOOKS = true;\nconst ENABLE_SHADYDOM_NOPATCH = true;\nconst NODE_MODE = false;\n\n// Allows minifiers to rename references to globalThis\nconst global = globalThis;\n\n/**\n * Contains types that are part of the unstable debug API.\n *\n * Everything in this API is not stable and may change or be removed in the future,\n * even on patch releases.\n */\n// eslint-disable-next-line @typescript-eslint/no-namespace\nexport namespace LitUnstable {\n /**\n * When Lit is running in dev mode and `window.emitLitDebugLogEvents` is true,\n * we will emit 'lit-debug' events to window, with live details about the update and render\n * lifecycle. These can be useful for writing debug tooling and visualizations.\n *\n * Please be aware that running with window.emitLitDebugLogEvents has performance overhead,\n * making certain operations that are normally very cheap (like a no-op render) much slower,\n * because we must copy data and dispatch events.\n */\n // eslint-disable-next-line @typescript-eslint/no-namespace\n export namespace DebugLog {\n export type Entry =\n | TemplatePrep\n | TemplateInstantiated\n | TemplateInstantiatedAndUpdated\n | TemplateUpdating\n | BeginRender\n | EndRender\n | CommitPartEntry\n | SetPartValue;\n export interface TemplatePrep {\n kind: 'template prep';\n template: Template;\n strings: TemplateStringsArray;\n clonableTemplate: HTMLTemplateElement;\n parts: TemplatePart[];\n }\n export interface BeginRender {\n kind: 'begin render';\n id: number;\n value: unknown;\n container: HTMLElement | DocumentFragment;\n options: RenderOptions | undefined;\n part: ChildPart | undefined;\n }\n export interface EndRender {\n kind: 'end render';\n id: number;\n value: unknown;\n container: HTMLElement | DocumentFragment;\n options: RenderOptions | undefined;\n part: ChildPart;\n }\n export interface TemplateInstantiated {\n kind: 'template instantiated';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n fragment: Node;\n parts: Array;\n values: unknown[];\n }\n export interface TemplateInstantiatedAndUpdated {\n kind: 'template instantiated and updated';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n fragment: Node;\n parts: Array;\n values: unknown[];\n }\n export interface TemplateUpdating {\n kind: 'template updating';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n parts: Array;\n values: unknown[];\n }\n export interface SetPartValue {\n kind: 'set part';\n part: Part;\n value: unknown;\n valueIndex: number;\n values: unknown[];\n templateInstance: TemplateInstance;\n }\n\n export type CommitPartEntry =\n | CommitNothingToChildEntry\n | CommitText\n | CommitNode\n | CommitAttribute\n | CommitProperty\n | CommitBooleanAttribute\n | CommitEventListener\n | CommitToElementBinding;\n\n export interface CommitNothingToChildEntry {\n kind: 'commit nothing to child';\n start: ChildNode;\n end: ChildNode | null;\n parent: Disconnectable | undefined;\n options: RenderOptions | undefined;\n }\n\n export interface CommitText {\n kind: 'commit text';\n node: Text;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitNode {\n kind: 'commit node';\n start: Node;\n parent: Disconnectable | undefined;\n value: Node;\n options: RenderOptions | undefined;\n }\n\n export interface CommitAttribute {\n kind: 'commit attribute';\n element: Element;\n name: string;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitProperty {\n kind: 'commit property';\n element: Element;\n name: string;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitBooleanAttribute {\n kind: 'commit boolean attribute';\n element: Element;\n name: string;\n value: boolean;\n options: RenderOptions | undefined;\n }\n\n export interface CommitEventListener {\n kind: 'commit event listener';\n element: Element;\n name: string;\n value: unknown;\n oldListener: unknown;\n options: RenderOptions | undefined;\n // True if we're removing the old event listener (e.g. because settings changed, or value is nothing)\n removeListener: boolean;\n // True if we're adding a new event listener (e.g. because first render, or settings changed)\n addListener: boolean;\n }\n\n export interface CommitToElementBinding {\n kind: 'commit to element binding';\n element: Element;\n value: unknown;\n options: RenderOptions | undefined;\n }\n }\n}\n\ninterface DebugLoggingWindow {\n // Even in dev mode, we generally don't want to emit these events, as that's\n // another level of cost, so only emit them when DEV_MODE is true _and_ when\n // window.emitLitDebugEvents is true.\n emitLitDebugLogEvents?: boolean;\n}\n\n/**\n * Useful for visualizing and logging insights into what the Lit template system is doing.\n *\n * Compiled out of prod mode builds.\n */\nconst debugLogEvent = DEV_MODE\n ? (event: LitUnstable.DebugLog.Entry) => {\n const shouldEmit = (global as unknown as DebugLoggingWindow)\n .emitLitDebugLogEvents;\n if (!shouldEmit) {\n return;\n }\n global.dispatchEvent(\n new CustomEvent('lit-debug', {\n detail: event,\n })\n );\n }\n : undefined;\n// Used for connecting beginRender and endRender events when there are nested\n// renders when errors are thrown preventing an endRender event from being\n// called.\nlet debugLogRenderId = 0;\n\nlet issueWarning: (code: string, warning: string) => void;\n\nif (DEV_MODE) {\n global.litIssuedWarnings ??= new Set();\n\n // Issue a warning, if we haven't already.\n issueWarning = (code: string, warning: string) => {\n warning += code\n ? ` See https://lit.dev/msg/${code} for more information.`\n : '';\n if (!global.litIssuedWarnings!.has(warning)) {\n console.warn(warning);\n global.litIssuedWarnings!.add(warning);\n }\n };\n\n issueWarning(\n 'dev-mode',\n `Lit is in dev mode. Not recommended for production!`\n );\n}\n\nconst wrap =\n ENABLE_SHADYDOM_NOPATCH &&\n global.ShadyDOM?.inUse &&\n global.ShadyDOM?.noPatch === true\n ? (global.ShadyDOM!.wrap as (node: T) => T)\n : (node: T) => node;\n\nconst trustedTypes = (global as unknown as Window).trustedTypes;\n\n/**\n * Our TrustedTypePolicy for HTML which is declared using the html template\n * tag function.\n *\n * That HTML is a developer-authored constant, and is parsed with innerHTML\n * before any untrusted expressions have been mixed in. Therefor it is\n * considered safe by construction.\n */\nconst policy = trustedTypes\n ? trustedTypes.createPolicy('lit-html', {\n createHTML: (s) => s,\n })\n : undefined;\n\n/**\n * Used to sanitize any value before it is written into the DOM. This can be\n * used to implement a security policy of allowed and disallowed values in\n * order to prevent XSS attacks.\n *\n * One way of using this callback would be to check attributes and properties\n * against a list of high risk fields, and require that values written to such\n * fields be instances of a class which is safe by construction. Closure's Safe\n * HTML Types is one implementation of this technique (\n * https://github.com/google/safe-html-types/blob/master/doc/safehtml-types.md).\n * The TrustedTypes polyfill in API-only mode could also be used as a basis\n * for this technique (https://github.com/WICG/trusted-types).\n *\n * @param node The HTML node (usually either a #text node or an Element) that\n * is being written to. Note that this is just an exemplar node, the write\n * may take place against another instance of the same class of node.\n * @param name The name of an attribute or property (for example, 'href').\n * @param type Indicates whether the write that's about to be performed will\n * be to a property or a node.\n * @return A function that will sanitize this class of writes.\n */\nexport type SanitizerFactory = (\n node: Node,\n name: string,\n type: 'property' | 'attribute'\n) => ValueSanitizer;\n\n/**\n * A function which can sanitize values that will be written to a specific kind\n * of DOM sink.\n *\n * See SanitizerFactory.\n *\n * @param value The value to sanitize. Will be the actual value passed into\n * the lit-html template literal, so this could be of any type.\n * @return The value to write to the DOM. Usually the same as the input value,\n * unless sanitization is needed.\n */\nexport type ValueSanitizer = (value: unknown) => unknown;\n\nconst identityFunction: ValueSanitizer = (value: unknown) => value;\nconst noopSanitizer: SanitizerFactory = (\n _node: Node,\n _name: string,\n _type: 'property' | 'attribute'\n) => identityFunction;\n\n/** Sets the global sanitizer factory. */\nconst setSanitizer = (newSanitizer: SanitizerFactory) => {\n if (!ENABLE_EXTRA_SECURITY_HOOKS) {\n return;\n }\n if (sanitizerFactoryInternal !== noopSanitizer) {\n throw new Error(\n `Attempted to overwrite existing lit-html security policy.` +\n ` setSanitizeDOMValueFactory should be called at most once.`\n );\n }\n sanitizerFactoryInternal = newSanitizer;\n};\n\n/**\n * Only used in internal tests, not a part of the public API.\n */\nconst _testOnlyClearSanitizerFactoryDoNotCallOrElse = () => {\n sanitizerFactoryInternal = noopSanitizer;\n};\n\nconst createSanitizer: SanitizerFactory = (node, name, type) => {\n return sanitizerFactoryInternal(node, name, type);\n};\n\n// Added to an attribute name to mark the attribute as bound so we can find\n// it easily.\nconst boundAttributeSuffix = '$lit$';\n\n// This marker is used in many syntactic positions in HTML, so it must be\n// a valid element name and attribute name. We don't support dynamic names (yet)\n// but this at least ensures that the parse tree is closer to the template\n// intention.\nconst marker = `lit$${String(Math.random()).slice(9)}$`;\n\n// String used to tell if a comment is a marker comment\nconst markerMatch = '?' + marker;\n\n// Text used to insert a comment marker node. We use processing instruction\n// syntax because it's slightly smaller, but parses as a comment node.\nconst nodeMarker = `<${markerMatch}>`;\n\nconst d =\n NODE_MODE && global.document === undefined\n ? ({\n createTreeWalker() {\n return {};\n },\n } as unknown as Document)\n : document;\n\n// Creates a dynamic marker. We never have to search for these in the DOM.\nconst createMarker = () => d.createComment('');\n\n// https://tc39.github.io/ecma262/#sec-typeof-operator\ntype Primitive = null | undefined | boolean | number | string | symbol | bigint;\nconst isPrimitive = (value: unknown): value is Primitive =>\n value === null || (typeof value != 'object' && typeof value != 'function');\nconst isArray = Array.isArray;\nconst isIterable = (value: unknown): value is Iterable =>\n isArray(value) ||\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n typeof (value as any)?.[Symbol.iterator] === 'function';\n\nconst SPACE_CHAR = `[ \\t\\n\\f\\r]`;\nconst ATTR_VALUE_CHAR = `[^ \\t\\n\\f\\r\"'\\`<>=]`;\nconst NAME_CHAR = `[^\\\\s\"'>=/]`;\n\n// These regexes represent the five parsing states that we care about in the\n// Template's HTML scanner. They match the *end* of the state they're named\n// after.\n// Depending on the match, we transition to a new state. If there's no match,\n// we stay in the same state.\n// Note that the regexes are stateful. We utilize lastIndex and sync it\n// across the multiple regexes used. In addition to the five regexes below\n// we also dynamically create a regex to find the matching end tags for raw\n// text elements.\n\n/**\n * End of text is: `<` followed by:\n * (comment start) or (tag) or (dynamic tag binding)\n */\nconst textEndRegex = /<(?:(!--|\\/[^a-zA-Z])|(\\/?[a-zA-Z][^>\\s]*)|(\\/?$))/g;\nconst COMMENT_START = 1;\nconst TAG_NAME = 2;\nconst DYNAMIC_TAG_NAME = 3;\n\nconst commentEndRegex = /-->/g;\n/**\n * Comments not started with /g,Z=/>/g,u=RegExp(`>|${I}(?:([^\\s"'>=/]+)(${I}*=${I}*(?:[^ -\f\r"'\`<>=]|("|')|))|$)`,"g"),F=/'/g,G=/"/g,J=/^(?:script|style|textarea|title)$/i,K=i=>(t,...e)=>({_$litType$:i,strings:t,values:e}),At=K(1),_t=K(2),N=Symbol.for("lit-noChange"),$=Symbol.for("lit-nothing"),Q=new WeakMap,g=m.createTreeWalker(m,129);function X(i,t){if(!Array.isArray(i)||!i.hasOwnProperty("raw"))throw Error("invalid template strings array");return j!==void 0?j.createHTML(t):t}var tt=(i,t)=>{let e=i.length-1,s=[],n,r=t===2?"":"",h=x;for(let A=0;A"?(h=n??x,l=-1):c[1]===void 0?l=-2:(l=h.lastIndex-c[2].length,a=c[1],h=c[3]===void 0?u:c[3]==='"'?G:F):h===G||h===F?h=u:h===z||h===Z?h=x:(h=u,n=void 0);let p=h===u&&i[A+1].startsWith("/>")?" ":"";r+=h===x?o+lt:l>=0?(s.push(a),o.slice(0,l)+U+o.slice(l)+d+p):o+d+(l===-2?A:p)}return[X(i,r+(i[e]||"")+(t===2?"":"")),s]},b=class i{constructor({strings:t,_$litType$:e},s){let n;this.parts=[];let r=0,h=0,A=t.length-1,o=this.parts,[a,c]=tt(t,e);if(this.el=i.createElement(a,s),g.currentNode=this.el.content,e===2){let l=this.el.content.firstChild;l.replaceWith(...l.childNodes)}for(;(n=g.nextNode())!==null&&o.length0){n.textContent=E?E.emptyScript:"";for(let p=0;p<_;p++)n.append(l[p],H()),g.nextNode(),o.push({type:2,index:++r});n.append(l[_],H())}}}else if(n.nodeType===8)if(n.data===L)o.push({type:2,index:r});else{let l=-1;for(;(l=n.data.indexOf(d,l+1))!==-1;)o.push({type:7,index:r}),l+=d.length-1}r++}}static createElement(t,e){let s=m.createElement("template");return s.innerHTML=t,s}};function v(i,t,e=i,s){if(t===N)return t;let n=s!==void 0?e._$Co?.[s]:e._$Cl,r=C(t)?void 0:t._$litDirective$;return n?.constructor!==r&&(n?._$AO?.(!1),r===void 0?n=void 0:(n=new r(i),n._$AT(i,e,s)),s!==void 0?(e._$Co??(e._$Co=[]))[s]=n:e._$Cl=n),n!==void 0&&(t=v(i,n._$AS(i,t.values),n,s)),t}var P=class{constructor(t,e){this._$AV=[],this._$AN=void 0,this._$AD=t,this._$AM=e}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(t){let{el:{content:e},parts:s}=this._$AD,n=(t?.creationScope??m).importNode(e,!0);g.currentNode=n;let r=g.nextNode(),h=0,A=0,o=s[0];for(;o!==void 0;){if(h===o.index){let a;o.type===2?a=new y(r,r.nextSibling,this,t):o.type===1?a=new o.ctor(r,o.name,o.strings,this,t):o.type===6&&(a=new w(r,this,t)),this._$AV.push(a),o=s[++A]}h!==o?.index&&(r=g.nextNode(),h++)}return g.currentNode=m,n}p(t){let e=0;for(let s of this._$AV)s!==void 0&&(s.strings!==void 0?(s._$AI(t,s,e),e+=s.strings.length-2):s._$AI(t[e])),e++}},y=class i{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(t,e,s,n){this.type=2,this._$AH=$,this._$AN=void 0,this._$AA=t,this._$AB=e,this._$AM=s,this.options=n,this._$Cv=n?.isConnected??!0}get parentNode(){let t=this._$AA.parentNode,e=this._$AM;return e!==void 0&&t?.nodeType===11&&(t=e.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,e=this){t=v(this,t,e),C(t)?t===$||t==null||t===""?(this._$AH!==$&&this._$AR(),this._$AH=$):t!==this._$AH&&t!==N&&this._(t):t._$litType$!==void 0?this.g(t):t.nodeType!==void 0?this.$(t):q(t)?this.T(t):this._(t)}k(t){return this._$AA.parentNode.insertBefore(t,this._$AB)}$(t){this._$AH!==t&&(this._$AR(),this._$AH=this.k(t))}_(t){this._$AH!==$&&C(this._$AH)?this._$AA.nextSibling.data=t:this.$(m.createTextNode(t)),this._$AH=t}g(t){let{values:e,_$litType$:s}=t,n=typeof s=="number"?this._$AC(t):(s.el===void 0&&(s.el=b.createElement(X(s.h,s.h[0]),this.options)),s);if(this._$AH?._$AD===n)this._$AH.p(e);else{let r=new P(n,this),h=r.u(this.options);r.p(e),this.$(h),this._$AH=r}}_$AC(t){let e=Q.get(t.strings);return e===void 0&&Q.set(t.strings,e=new b(t)),e}T(t){Y(this._$AH)||(this._$AH=[],this._$AR());let e=this._$AH,s,n=0;for(let r of t)n===e.length?e.push(s=new i(this.k(H()),this.k(H()),this,this.options)):s=e[n],s._$AI(r),n++;n2||s[0]!==""||s[1]!==""?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=$}_$AI(t,e=this,s,n){let r=this.strings,h=!1;if(r===void 0)t=v(this,t,e,0),h=!C(t)||t!==this._$AH&&t!==N,h&&(this._$AH=t);else{let A=t,o,a;for(t=r[0],o=0;o{let s=e?.renderBefore??t,n=s._$litPart$;if(n===void 0){let r=e?.renderBefore??null;s._$litPart$=n=new y(t.insertBefore(H(),r),r,void 0,e??{})}return n._$AI(i),n};var it=i=>(...t)=>({_$litDirective$:i,values:t}),D=class{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,s){this._$Ct=t,this._$AM=e,this._$Ci=s}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}};var{D:$t}=et;var V=(i,t)=>t===void 0?i?._$litType$!==void 0:i?._$litType$===t,rt=i=>i?._$litType$?.h!=null;var nt=()=>document.createComment(""),O=(i,t,e)=>{let s=i._$AA.parentNode,n=t===void 0?i._$AB:t._$AA;if(e===void 0){let r=s.insertBefore(nt(),n),h=s.insertBefore(nt(),n);e=new $t(r,h,i,i.options)}else{let r=e._$AB.nextSibling,h=e._$AM,A=h!==i;if(A){let o;e._$AQ?.(i),e._$AM=i,e._$AP!==void 0&&(o=i._$AU)!==h._$AU&&e._$AP(o)}if(r!==n||A){let o=e._$AA;for(;o!==r;){let a=o.nextSibling;s.insertBefore(o,n),o=a}}}return e};var ct={},W=(i,t=ct)=>i._$AH=t,k=i=>i._$AH;var ot=i=>{i._$AR()};var ht=i=>rt(i)?i._$litType$.h:i.strings,yt=it(class extends D{constructor(i){super(i),this.tt=new WeakMap}render(i){return[i]}update(i,[t]){let e=V(this.et)?ht(this.et):null,s=V(t)?ht(t):null;if(e!==null&&(s===null||e!==s)){let n=k(i).pop(),r=this.tt.get(e);if(r===void 0){let h=document.createDocumentFragment();r=st($,h),r.setConnected(!1),this.tt.set(e,r)}W(r,[n]),O(r,void 0,n)}if(s!==null){if(e===null||e!==s){let n=this.tt.get(s);if(n!==void 0){let r=k(n).pop();ot(i),O(i,void 0,r),W(i,[r])}}this.et=t}else this.et=void 0;return this.render(t)}});export{yt as cache}; -/*! Bundled license information: - -lit-html/lit-html.js: -lit-html/directive.js: -lit-html/directives/cache.js: - (** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - *) - -lit-html/directive-helpers.js: - (** - * @license - * Copyright 2020 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - *) -*/ -//# sourceMappingURL=cache-RPP5AQXT.js.map diff --git a/tests/staticfiles/esm/node_modules/lit/directives/cache-RPP5AQXT.js.map b/tests/staticfiles/esm/node_modules/lit/directives/cache-RPP5AQXT.js.map deleted file mode 100644 index d046f92..0000000 --- a/tests/staticfiles/esm/node_modules/lit/directives/cache-RPP5AQXT.js.map +++ /dev/null @@ -1,7 +0,0 @@ -{ - "version": 3, - "sources": ["../../../../../node_modules/lit-html/src/lit-html.ts", "../../../../../node_modules/lit-html/src/directive.ts", "../../../../../node_modules/lit-html/src/directive-helpers.ts", "../../../../../node_modules/lit-html/src/directives/cache.ts"], - "sourcesContent": ["/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n// IMPORTANT: these imports must be type-only\nimport type {Directive, DirectiveResult, PartInfo} from './directive.js';\n\nconst DEV_MODE = true;\nconst ENABLE_EXTRA_SECURITY_HOOKS = true;\nconst ENABLE_SHADYDOM_NOPATCH = true;\nconst NODE_MODE = false;\n\n// Allows minifiers to rename references to globalThis\nconst global = globalThis;\n\n/**\n * Contains types that are part of the unstable debug API.\n *\n * Everything in this API is not stable and may change or be removed in the future,\n * even on patch releases.\n */\n// eslint-disable-next-line @typescript-eslint/no-namespace\nexport namespace LitUnstable {\n /**\n * When Lit is running in dev mode and `window.emitLitDebugLogEvents` is true,\n * we will emit 'lit-debug' events to window, with live details about the update and render\n * lifecycle. These can be useful for writing debug tooling and visualizations.\n *\n * Please be aware that running with window.emitLitDebugLogEvents has performance overhead,\n * making certain operations that are normally very cheap (like a no-op render) much slower,\n * because we must copy data and dispatch events.\n */\n // eslint-disable-next-line @typescript-eslint/no-namespace\n export namespace DebugLog {\n export type Entry =\n | TemplatePrep\n | TemplateInstantiated\n | TemplateInstantiatedAndUpdated\n | TemplateUpdating\n | BeginRender\n | EndRender\n | CommitPartEntry\n | SetPartValue;\n export interface TemplatePrep {\n kind: 'template prep';\n template: Template;\n strings: TemplateStringsArray;\n clonableTemplate: HTMLTemplateElement;\n parts: TemplatePart[];\n }\n export interface BeginRender {\n kind: 'begin render';\n id: number;\n value: unknown;\n container: HTMLElement | DocumentFragment;\n options: RenderOptions | undefined;\n part: ChildPart | undefined;\n }\n export interface EndRender {\n kind: 'end render';\n id: number;\n value: unknown;\n container: HTMLElement | DocumentFragment;\n options: RenderOptions | undefined;\n part: ChildPart;\n }\n export interface TemplateInstantiated {\n kind: 'template instantiated';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n fragment: Node;\n parts: Array;\n values: unknown[];\n }\n export interface TemplateInstantiatedAndUpdated {\n kind: 'template instantiated and updated';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n fragment: Node;\n parts: Array;\n values: unknown[];\n }\n export interface TemplateUpdating {\n kind: 'template updating';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n parts: Array;\n values: unknown[];\n }\n export interface SetPartValue {\n kind: 'set part';\n part: Part;\n value: unknown;\n valueIndex: number;\n values: unknown[];\n templateInstance: TemplateInstance;\n }\n\n export type CommitPartEntry =\n | CommitNothingToChildEntry\n | CommitText\n | CommitNode\n | CommitAttribute\n | CommitProperty\n | CommitBooleanAttribute\n | CommitEventListener\n | CommitToElementBinding;\n\n export interface CommitNothingToChildEntry {\n kind: 'commit nothing to child';\n start: ChildNode;\n end: ChildNode | null;\n parent: Disconnectable | undefined;\n options: RenderOptions | undefined;\n }\n\n export interface CommitText {\n kind: 'commit text';\n node: Text;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitNode {\n kind: 'commit node';\n start: Node;\n parent: Disconnectable | undefined;\n value: Node;\n options: RenderOptions | undefined;\n }\n\n export interface CommitAttribute {\n kind: 'commit attribute';\n element: Element;\n name: string;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitProperty {\n kind: 'commit property';\n element: Element;\n name: string;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitBooleanAttribute {\n kind: 'commit boolean attribute';\n element: Element;\n name: string;\n value: boolean;\n options: RenderOptions | undefined;\n }\n\n export interface CommitEventListener {\n kind: 'commit event listener';\n element: Element;\n name: string;\n value: unknown;\n oldListener: unknown;\n options: RenderOptions | undefined;\n // True if we're removing the old event listener (e.g. because settings changed, or value is nothing)\n removeListener: boolean;\n // True if we're adding a new event listener (e.g. because first render, or settings changed)\n addListener: boolean;\n }\n\n export interface CommitToElementBinding {\n kind: 'commit to element binding';\n element: Element;\n value: unknown;\n options: RenderOptions | undefined;\n }\n }\n}\n\ninterface DebugLoggingWindow {\n // Even in dev mode, we generally don't want to emit these events, as that's\n // another level of cost, so only emit them when DEV_MODE is true _and_ when\n // window.emitLitDebugEvents is true.\n emitLitDebugLogEvents?: boolean;\n}\n\n/**\n * Useful for visualizing and logging insights into what the Lit template system is doing.\n *\n * Compiled out of prod mode builds.\n */\nconst debugLogEvent = DEV_MODE\n ? (event: LitUnstable.DebugLog.Entry) => {\n const shouldEmit = (global as unknown as DebugLoggingWindow)\n .emitLitDebugLogEvents;\n if (!shouldEmit) {\n return;\n }\n global.dispatchEvent(\n new CustomEvent('lit-debug', {\n detail: event,\n })\n );\n }\n : undefined;\n// Used for connecting beginRender and endRender events when there are nested\n// renders when errors are thrown preventing an endRender event from being\n// called.\nlet debugLogRenderId = 0;\n\nlet issueWarning: (code: string, warning: string) => void;\n\nif (DEV_MODE) {\n global.litIssuedWarnings ??= new Set();\n\n // Issue a warning, if we haven't already.\n issueWarning = (code: string, warning: string) => {\n warning += code\n ? ` See https://lit.dev/msg/${code} for more information.`\n : '';\n if (!global.litIssuedWarnings!.has(warning)) {\n console.warn(warning);\n global.litIssuedWarnings!.add(warning);\n }\n };\n\n issueWarning(\n 'dev-mode',\n `Lit is in dev mode. Not recommended for production!`\n );\n}\n\nconst wrap =\n ENABLE_SHADYDOM_NOPATCH &&\n global.ShadyDOM?.inUse &&\n global.ShadyDOM?.noPatch === true\n ? (global.ShadyDOM!.wrap as (node: T) => T)\n : (node: T) => node;\n\nconst trustedTypes = (global as unknown as Window).trustedTypes;\n\n/**\n * Our TrustedTypePolicy for HTML which is declared using the html template\n * tag function.\n *\n * That HTML is a developer-authored constant, and is parsed with innerHTML\n * before any untrusted expressions have been mixed in. Therefor it is\n * considered safe by construction.\n */\nconst policy = trustedTypes\n ? trustedTypes.createPolicy('lit-html', {\n createHTML: (s) => s,\n })\n : undefined;\n\n/**\n * Used to sanitize any value before it is written into the DOM. This can be\n * used to implement a security policy of allowed and disallowed values in\n * order to prevent XSS attacks.\n *\n * One way of using this callback would be to check attributes and properties\n * against a list of high risk fields, and require that values written to such\n * fields be instances of a class which is safe by construction. Closure's Safe\n * HTML Types is one implementation of this technique (\n * https://github.com/google/safe-html-types/blob/master/doc/safehtml-types.md).\n * The TrustedTypes polyfill in API-only mode could also be used as a basis\n * for this technique (https://github.com/WICG/trusted-types).\n *\n * @param node The HTML node (usually either a #text node or an Element) that\n * is being written to. Note that this is just an exemplar node, the write\n * may take place against another instance of the same class of node.\n * @param name The name of an attribute or property (for example, 'href').\n * @param type Indicates whether the write that's about to be performed will\n * be to a property or a node.\n * @return A function that will sanitize this class of writes.\n */\nexport type SanitizerFactory = (\n node: Node,\n name: string,\n type: 'property' | 'attribute'\n) => ValueSanitizer;\n\n/**\n * A function which can sanitize values that will be written to a specific kind\n * of DOM sink.\n *\n * See SanitizerFactory.\n *\n * @param value The value to sanitize. Will be the actual value passed into\n * the lit-html template literal, so this could be of any type.\n * @return The value to write to the DOM. Usually the same as the input value,\n * unless sanitization is needed.\n */\nexport type ValueSanitizer = (value: unknown) => unknown;\n\nconst identityFunction: ValueSanitizer = (value: unknown) => value;\nconst noopSanitizer: SanitizerFactory = (\n _node: Node,\n _name: string,\n _type: 'property' | 'attribute'\n) => identityFunction;\n\n/** Sets the global sanitizer factory. */\nconst setSanitizer = (newSanitizer: SanitizerFactory) => {\n if (!ENABLE_EXTRA_SECURITY_HOOKS) {\n return;\n }\n if (sanitizerFactoryInternal !== noopSanitizer) {\n throw new Error(\n `Attempted to overwrite existing lit-html security policy.` +\n ` setSanitizeDOMValueFactory should be called at most once.`\n );\n }\n sanitizerFactoryInternal = newSanitizer;\n};\n\n/**\n * Only used in internal tests, not a part of the public API.\n */\nconst _testOnlyClearSanitizerFactoryDoNotCallOrElse = () => {\n sanitizerFactoryInternal = noopSanitizer;\n};\n\nconst createSanitizer: SanitizerFactory = (node, name, type) => {\n return sanitizerFactoryInternal(node, name, type);\n};\n\n// Added to an attribute name to mark the attribute as bound so we can find\n// it easily.\nconst boundAttributeSuffix = '$lit$';\n\n// This marker is used in many syntactic positions in HTML, so it must be\n// a valid element name and attribute name. We don't support dynamic names (yet)\n// but this at least ensures that the parse tree is closer to the template\n// intention.\nconst marker = `lit$${String(Math.random()).slice(9)}$`;\n\n// String used to tell if a comment is a marker comment\nconst markerMatch = '?' + marker;\n\n// Text used to insert a comment marker node. We use processing instruction\n// syntax because it's slightly smaller, but parses as a comment node.\nconst nodeMarker = `<${markerMatch}>`;\n\nconst d =\n NODE_MODE && global.document === undefined\n ? ({\n createTreeWalker() {\n return {};\n },\n } as unknown as Document)\n : document;\n\n// Creates a dynamic marker. We never have to search for these in the DOM.\nconst createMarker = () => d.createComment('');\n\n// https://tc39.github.io/ecma262/#sec-typeof-operator\ntype Primitive = null | undefined | boolean | number | string | symbol | bigint;\nconst isPrimitive = (value: unknown): value is Primitive =>\n value === null || (typeof value != 'object' && typeof value != 'function');\nconst isArray = Array.isArray;\nconst isIterable = (value: unknown): value is Iterable =>\n isArray(value) ||\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n typeof (value as any)?.[Symbol.iterator] === 'function';\n\nconst SPACE_CHAR = `[ \\t\\n\\f\\r]`;\nconst ATTR_VALUE_CHAR = `[^ \\t\\n\\f\\r\"'\\`<>=]`;\nconst NAME_CHAR = `[^\\\\s\"'>=/]`;\n\n// These regexes represent the five parsing states that we care about in the\n// Template's HTML scanner. They match the *end* of the state they're named\n// after.\n// Depending on the match, we transition to a new state. If there's no match,\n// we stay in the same state.\n// Note that the regexes are stateful. We utilize lastIndex and sync it\n// across the multiple regexes used. In addition to the five regexes below\n// we also dynamically create a regex to find the matching end tags for raw\n// text elements.\n\n/**\n * End of text is: `<` followed by:\n * (comment start) or (tag) or (dynamic tag binding)\n */\nconst textEndRegex = /<(?:(!--|\\/[^a-zA-Z])|(\\/?[a-zA-Z][^>\\s]*)|(\\/?$))/g;\nconst COMMENT_START = 1;\nconst TAG_NAME = 2;\nconst DYNAMIC_TAG_NAME = 3;\n\nconst commentEndRegex = /-->/g;\n/**\n * Comments not started with /g,D=/>/g,u=RegExp(`>|${I}(?:([^\\s"'>=/]+)(${I}*=${I}*(?:[^ -\f\r"'\`<>=]|("|')|))|$)`,"g"),j=/'/g,k=/"/g,Y=/^(?:script|style|textarea|title)$/i,q=n=>(t,...s)=>({_$litType$:n,strings:t,values:s}),et=q(1),st=q(2),f=Symbol.for("lit-noChange"),$=Symbol.for("lit-nothing"),W=new WeakMap,g=v.createTreeWalker(v,129);function F(n,t){if(!Array.isArray(n)||!n.hasOwnProperty("raw"))throw Error("invalid template strings array");return O!==void 0?O.createHTML(t):t}var X=(n,t)=>{let s=n.length-1,e=[],i,r=t===2?"":"",o=x;for(let A=0;A"?(o=i??x,l=-1):c[1]===void 0?l=-2:(l=o.lastIndex-c[2].length,a=c[1],o=c[3]===void 0?u:c[3]==='"'?k:j):o===k||o===j?o=u:o===L||o===D?o=x:(o=u,i=void 0);let d=o===u&&n[A+1].startsWith("/>")?" ":"";r+=o===x?h+K:l>=0?(e.push(a),h.slice(0,l)+V+h.slice(l)+p+d):h+p+(l===-2?A:d)}return[F(n,r+(n[s]||"")+(t===2?"":"")),e]},N=class n{constructor({strings:t,_$litType$:s},e){let i;this.parts=[];let r=0,o=0,A=t.length-1,h=this.parts,[a,c]=X(t,s);if(this.el=n.createElement(a,e),g.currentNode=this.el.content,s===2){let l=this.el.content.firstChild;l.replaceWith(...l.childNodes)}for(;(i=g.nextNode())!==null&&h.length0){i.textContent=C?C.emptyScript:"";for(let d=0;d<_;d++)i.append(l[d],E()),g.nextNode(),h.push({type:2,index:++r});i.append(l[_],E())}}}else if(i.nodeType===8)if(i.data===z)h.push({type:2,index:r});else{let l=-1;for(;(l=i.data.indexOf(p,l+1))!==-1;)h.push({type:7,index:r}),l+=p.length-1}r++}}static createElement(t,s){let e=v.createElement("template");return e.innerHTML=t,e}};function m(n,t,s=n,e){if(t===f)return t;let i=e!==void 0?s._$Co?.[e]:s._$Cl,r=T(t)?void 0:t._$litDirective$;return i?.constructor!==r&&(i?._$AO?.(!1),r===void 0?i=void 0:(i=new r(n),i._$AT(n,s,e)),e!==void 0?(s._$Co??(s._$Co=[]))[e]=i:s._$Cl=i),i!==void 0&&(t=m(n,i._$AS(n,t.values),i,e)),t}var S=class{constructor(t,s){this._$AV=[],this._$AN=void 0,this._$AD=t,this._$AM=s}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(t){let{el:{content:s},parts:e}=this._$AD,i=(t?.creationScope??v).importNode(s,!0);g.currentNode=i;let r=g.nextNode(),o=0,A=0,h=e[0];for(;h!==void 0;){if(o===h.index){let a;h.type===2?a=new M(r,r.nextSibling,this,t):h.type===1?a=new h.ctor(r,h.name,h.strings,this,t):h.type===6&&(a=new R(r,this,t)),this._$AV.push(a),h=e[++A]}o!==h?.index&&(r=g.nextNode(),o++)}return g.currentNode=v,i}p(t){let s=0;for(let e of this._$AV)e!==void 0&&(e.strings!==void 0?(e._$AI(t,e,s),s+=e.strings.length-2):e._$AI(t[s])),s++}},M=class n{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(t,s,e,i){this.type=2,this._$AH=$,this._$AN=void 0,this._$AA=t,this._$AB=s,this._$AM=e,this.options=i,this._$Cv=i?.isConnected??!0}get parentNode(){let t=this._$AA.parentNode,s=this._$AM;return s!==void 0&&t?.nodeType===11&&(t=s.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,s=this){t=m(this,t,s),T(t)?t===$||t==null||t===""?(this._$AH!==$&&this._$AR(),this._$AH=$):t!==this._$AH&&t!==f&&this._(t):t._$litType$!==void 0?this.g(t):t.nodeType!==void 0?this.$(t):Q(t)?this.T(t):this._(t)}k(t){return this._$AA.parentNode.insertBefore(t,this._$AB)}$(t){this._$AH!==t&&(this._$AR(),this._$AH=this.k(t))}_(t){this._$AH!==$&&T(this._$AH)?this._$AA.nextSibling.data=t:this.$(v.createTextNode(t)),this._$AH=t}g(t){let{values:s,_$litType$:e}=t,i=typeof e=="number"?this._$AC(t):(e.el===void 0&&(e.el=N.createElement(F(e.h,e.h[0]),this.options)),e);if(this._$AH?._$AD===i)this._$AH.p(s);else{let r=new S(i,this),o=r.u(this.options);r.p(s),this.$(o),this._$AH=r}}_$AC(t){let s=W.get(t.strings);return s===void 0&&W.set(t.strings,s=new N(t)),s}T(t){Z(this._$AH)||(this._$AH=[],this._$AR());let s=this._$AH,e,i=0;for(let r of t)i===s.length?s.push(e=new n(this.k(E()),this.k(E()),this,this.options)):e=s[i],e._$AI(r),i++;i2||e[0]!==""||e[1]!==""?(this._$AH=Array(e.length-1).fill(new String),this.strings=e):this._$AH=$}_$AI(t,s=this,e,i){let r=this.strings,o=!1;if(r===void 0)t=m(this,t,s,0),o=!T(t)||t!==this._$AH&&t!==f,o&&(this._$AH=t);else{let A=t,h,a;for(t=r[0],h=0;h(...t)=>({_$litDirective$:n,values:t}),w=class{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,s,e){this._$Ct=t,this._$AM=s,this._$Ci=e}_$AS(t,s){return this.update(t,s)}update(t,s){return this.render(...s)}};var ht=J(class extends w{constructor(n){if(super(n),n.type!==G.ATTRIBUTE||n.name!=="class"||n.strings?.length>2)throw Error("`classMap()` can only be used in the `class` attribute and must be the only part in the attribute.")}render(n){return" "+Object.keys(n).filter(t=>n[t]).join(" ")+" "}update(n,[t]){if(this.it===void 0){this.it=new Set,n.strings!==void 0&&(this.st=new Set(n.strings.join(" ").split(/\s/).filter(e=>e!=="")));for(let e in t)t[e]&&!this.st?.has(e)&&this.it.add(e);return this.render(t)}let s=n.element.classList;for(let e of this.it)e in t||(s.remove(e),this.it.delete(e));for(let e in t){let i=!!t[e];i===this.it.has(e)||this.st?.has(e)||(i?(s.add(e),this.it.add(e)):(s.remove(e),this.it.delete(e)))}return f}});export{ht as classMap}; -/*! Bundled license information: - -lit-html/lit-html.js: -lit-html/directive.js: - (** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - *) - -lit-html/directives/class-map.js: - (** - * @license - * Copyright 2018 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - *) -*/ -//# sourceMappingURL=class-map-FLHGFMVS.js.map diff --git a/tests/staticfiles/esm/node_modules/lit/directives/class-map-FLHGFMVS.js.map b/tests/staticfiles/esm/node_modules/lit/directives/class-map-FLHGFMVS.js.map deleted file mode 100644 index f7f2e26..0000000 --- a/tests/staticfiles/esm/node_modules/lit/directives/class-map-FLHGFMVS.js.map +++ /dev/null @@ -1,7 +0,0 @@ -{ - "version": 3, - "sources": ["../../../../../node_modules/lit-html/src/lit-html.ts", "../../../../../node_modules/lit-html/src/directive.ts", "../../../../../node_modules/lit-html/src/directives/class-map.ts"], - "sourcesContent": ["/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n// IMPORTANT: these imports must be type-only\nimport type {Directive, DirectiveResult, PartInfo} from './directive.js';\n\nconst DEV_MODE = true;\nconst ENABLE_EXTRA_SECURITY_HOOKS = true;\nconst ENABLE_SHADYDOM_NOPATCH = true;\nconst NODE_MODE = false;\n\n// Allows minifiers to rename references to globalThis\nconst global = globalThis;\n\n/**\n * Contains types that are part of the unstable debug API.\n *\n * Everything in this API is not stable and may change or be removed in the future,\n * even on patch releases.\n */\n// eslint-disable-next-line @typescript-eslint/no-namespace\nexport namespace LitUnstable {\n /**\n * When Lit is running in dev mode and `window.emitLitDebugLogEvents` is true,\n * we will emit 'lit-debug' events to window, with live details about the update and render\n * lifecycle. These can be useful for writing debug tooling and visualizations.\n *\n * Please be aware that running with window.emitLitDebugLogEvents has performance overhead,\n * making certain operations that are normally very cheap (like a no-op render) much slower,\n * because we must copy data and dispatch events.\n */\n // eslint-disable-next-line @typescript-eslint/no-namespace\n export namespace DebugLog {\n export type Entry =\n | TemplatePrep\n | TemplateInstantiated\n | TemplateInstantiatedAndUpdated\n | TemplateUpdating\n | BeginRender\n | EndRender\n | CommitPartEntry\n | SetPartValue;\n export interface TemplatePrep {\n kind: 'template prep';\n template: Template;\n strings: TemplateStringsArray;\n clonableTemplate: HTMLTemplateElement;\n parts: TemplatePart[];\n }\n export interface BeginRender {\n kind: 'begin render';\n id: number;\n value: unknown;\n container: HTMLElement | DocumentFragment;\n options: RenderOptions | undefined;\n part: ChildPart | undefined;\n }\n export interface EndRender {\n kind: 'end render';\n id: number;\n value: unknown;\n container: HTMLElement | DocumentFragment;\n options: RenderOptions | undefined;\n part: ChildPart;\n }\n export interface TemplateInstantiated {\n kind: 'template instantiated';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n fragment: Node;\n parts: Array;\n values: unknown[];\n }\n export interface TemplateInstantiatedAndUpdated {\n kind: 'template instantiated and updated';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n fragment: Node;\n parts: Array;\n values: unknown[];\n }\n export interface TemplateUpdating {\n kind: 'template updating';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n parts: Array;\n values: unknown[];\n }\n export interface SetPartValue {\n kind: 'set part';\n part: Part;\n value: unknown;\n valueIndex: number;\n values: unknown[];\n templateInstance: TemplateInstance;\n }\n\n export type CommitPartEntry =\n | CommitNothingToChildEntry\n | CommitText\n | CommitNode\n | CommitAttribute\n | CommitProperty\n | CommitBooleanAttribute\n | CommitEventListener\n | CommitToElementBinding;\n\n export interface CommitNothingToChildEntry {\n kind: 'commit nothing to child';\n start: ChildNode;\n end: ChildNode | null;\n parent: Disconnectable | undefined;\n options: RenderOptions | undefined;\n }\n\n export interface CommitText {\n kind: 'commit text';\n node: Text;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitNode {\n kind: 'commit node';\n start: Node;\n parent: Disconnectable | undefined;\n value: Node;\n options: RenderOptions | undefined;\n }\n\n export interface CommitAttribute {\n kind: 'commit attribute';\n element: Element;\n name: string;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitProperty {\n kind: 'commit property';\n element: Element;\n name: string;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitBooleanAttribute {\n kind: 'commit boolean attribute';\n element: Element;\n name: string;\n value: boolean;\n options: RenderOptions | undefined;\n }\n\n export interface CommitEventListener {\n kind: 'commit event listener';\n element: Element;\n name: string;\n value: unknown;\n oldListener: unknown;\n options: RenderOptions | undefined;\n // True if we're removing the old event listener (e.g. because settings changed, or value is nothing)\n removeListener: boolean;\n // True if we're adding a new event listener (e.g. because first render, or settings changed)\n addListener: boolean;\n }\n\n export interface CommitToElementBinding {\n kind: 'commit to element binding';\n element: Element;\n value: unknown;\n options: RenderOptions | undefined;\n }\n }\n}\n\ninterface DebugLoggingWindow {\n // Even in dev mode, we generally don't want to emit these events, as that's\n // another level of cost, so only emit them when DEV_MODE is true _and_ when\n // window.emitLitDebugEvents is true.\n emitLitDebugLogEvents?: boolean;\n}\n\n/**\n * Useful for visualizing and logging insights into what the Lit template system is doing.\n *\n * Compiled out of prod mode builds.\n */\nconst debugLogEvent = DEV_MODE\n ? (event: LitUnstable.DebugLog.Entry) => {\n const shouldEmit = (global as unknown as DebugLoggingWindow)\n .emitLitDebugLogEvents;\n if (!shouldEmit) {\n return;\n }\n global.dispatchEvent(\n new CustomEvent('lit-debug', {\n detail: event,\n })\n );\n }\n : undefined;\n// Used for connecting beginRender and endRender events when there are nested\n// renders when errors are thrown preventing an endRender event from being\n// called.\nlet debugLogRenderId = 0;\n\nlet issueWarning: (code: string, warning: string) => void;\n\nif (DEV_MODE) {\n global.litIssuedWarnings ??= new Set();\n\n // Issue a warning, if we haven't already.\n issueWarning = (code: string, warning: string) => {\n warning += code\n ? ` See https://lit.dev/msg/${code} for more information.`\n : '';\n if (!global.litIssuedWarnings!.has(warning)) {\n console.warn(warning);\n global.litIssuedWarnings!.add(warning);\n }\n };\n\n issueWarning(\n 'dev-mode',\n `Lit is in dev mode. Not recommended for production!`\n );\n}\n\nconst wrap =\n ENABLE_SHADYDOM_NOPATCH &&\n global.ShadyDOM?.inUse &&\n global.ShadyDOM?.noPatch === true\n ? (global.ShadyDOM!.wrap as (node: T) => T)\n : (node: T) => node;\n\nconst trustedTypes = (global as unknown as Window).trustedTypes;\n\n/**\n * Our TrustedTypePolicy for HTML which is declared using the html template\n * tag function.\n *\n * That HTML is a developer-authored constant, and is parsed with innerHTML\n * before any untrusted expressions have been mixed in. Therefor it is\n * considered safe by construction.\n */\nconst policy = trustedTypes\n ? trustedTypes.createPolicy('lit-html', {\n createHTML: (s) => s,\n })\n : undefined;\n\n/**\n * Used to sanitize any value before it is written into the DOM. This can be\n * used to implement a security policy of allowed and disallowed values in\n * order to prevent XSS attacks.\n *\n * One way of using this callback would be to check attributes and properties\n * against a list of high risk fields, and require that values written to such\n * fields be instances of a class which is safe by construction. Closure's Safe\n * HTML Types is one implementation of this technique (\n * https://github.com/google/safe-html-types/blob/master/doc/safehtml-types.md).\n * The TrustedTypes polyfill in API-only mode could also be used as a basis\n * for this technique (https://github.com/WICG/trusted-types).\n *\n * @param node The HTML node (usually either a #text node or an Element) that\n * is being written to. Note that this is just an exemplar node, the write\n * may take place against another instance of the same class of node.\n * @param name The name of an attribute or property (for example, 'href').\n * @param type Indicates whether the write that's about to be performed will\n * be to a property or a node.\n * @return A function that will sanitize this class of writes.\n */\nexport type SanitizerFactory = (\n node: Node,\n name: string,\n type: 'property' | 'attribute'\n) => ValueSanitizer;\n\n/**\n * A function which can sanitize values that will be written to a specific kind\n * of DOM sink.\n *\n * See SanitizerFactory.\n *\n * @param value The value to sanitize. Will be the actual value passed into\n * the lit-html template literal, so this could be of any type.\n * @return The value to write to the DOM. Usually the same as the input value,\n * unless sanitization is needed.\n */\nexport type ValueSanitizer = (value: unknown) => unknown;\n\nconst identityFunction: ValueSanitizer = (value: unknown) => value;\nconst noopSanitizer: SanitizerFactory = (\n _node: Node,\n _name: string,\n _type: 'property' | 'attribute'\n) => identityFunction;\n\n/** Sets the global sanitizer factory. */\nconst setSanitizer = (newSanitizer: SanitizerFactory) => {\n if (!ENABLE_EXTRA_SECURITY_HOOKS) {\n return;\n }\n if (sanitizerFactoryInternal !== noopSanitizer) {\n throw new Error(\n `Attempted to overwrite existing lit-html security policy.` +\n ` setSanitizeDOMValueFactory should be called at most once.`\n );\n }\n sanitizerFactoryInternal = newSanitizer;\n};\n\n/**\n * Only used in internal tests, not a part of the public API.\n */\nconst _testOnlyClearSanitizerFactoryDoNotCallOrElse = () => {\n sanitizerFactoryInternal = noopSanitizer;\n};\n\nconst createSanitizer: SanitizerFactory = (node, name, type) => {\n return sanitizerFactoryInternal(node, name, type);\n};\n\n// Added to an attribute name to mark the attribute as bound so we can find\n// it easily.\nconst boundAttributeSuffix = '$lit$';\n\n// This marker is used in many syntactic positions in HTML, so it must be\n// a valid element name and attribute name. We don't support dynamic names (yet)\n// but this at least ensures that the parse tree is closer to the template\n// intention.\nconst marker = `lit$${String(Math.random()).slice(9)}$`;\n\n// String used to tell if a comment is a marker comment\nconst markerMatch = '?' + marker;\n\n// Text used to insert a comment marker node. We use processing instruction\n// syntax because it's slightly smaller, but parses as a comment node.\nconst nodeMarker = `<${markerMatch}>`;\n\nconst d =\n NODE_MODE && global.document === undefined\n ? ({\n createTreeWalker() {\n return {};\n },\n } as unknown as Document)\n : document;\n\n// Creates a dynamic marker. We never have to search for these in the DOM.\nconst createMarker = () => d.createComment('');\n\n// https://tc39.github.io/ecma262/#sec-typeof-operator\ntype Primitive = null | undefined | boolean | number | string | symbol | bigint;\nconst isPrimitive = (value: unknown): value is Primitive =>\n value === null || (typeof value != 'object' && typeof value != 'function');\nconst isArray = Array.isArray;\nconst isIterable = (value: unknown): value is Iterable =>\n isArray(value) ||\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n typeof (value as any)?.[Symbol.iterator] === 'function';\n\nconst SPACE_CHAR = `[ \\t\\n\\f\\r]`;\nconst ATTR_VALUE_CHAR = `[^ \\t\\n\\f\\r\"'\\`<>=]`;\nconst NAME_CHAR = `[^\\\\s\"'>=/]`;\n\n// These regexes represent the five parsing states that we care about in the\n// Template's HTML scanner. They match the *end* of the state they're named\n// after.\n// Depending on the match, we transition to a new state. If there's no match,\n// we stay in the same state.\n// Note that the regexes are stateful. We utilize lastIndex and sync it\n// across the multiple regexes used. In addition to the five regexes below\n// we also dynamically create a regex to find the matching end tags for raw\n// text elements.\n\n/**\n * End of text is: `<` followed by:\n * (comment start) or (tag) or (dynamic tag binding)\n */\nconst textEndRegex = /<(?:(!--|\\/[^a-zA-Z])|(\\/?[a-zA-Z][^>\\s]*)|(\\/?$))/g;\nconst COMMENT_START = 1;\nconst TAG_NAME = 2;\nconst DYNAMIC_TAG_NAME = 3;\n\nconst commentEndRegex = /-->/g;\n/**\n * Comments not started with /g,L=/>/g,g=RegExp(`>|${I}(?:([^\\s"'>=/]+)(${I}*=${I}*(?:[^ -\f\r"'\`<>=]|("|')|))|$)`,"g"),W=/'/g,k=/"/g,Y=/^(?:script|style|textarea|title)$/i,q=n=>(t,...e)=>({_$litType$:n,strings:t,values:e}),et=q(1),st=q(2),u=Symbol.for("lit-noChange"),a=Symbol.for("lit-nothing"),V=new WeakMap,v=f.createTreeWalker(f,129);function F(n,t){if(!Array.isArray(n)||!n.hasOwnProperty("raw"))throw Error("invalid template strings array");return O!==void 0?O.createHTML(t):t}var Q=(n,t)=>{let e=n.length-1,s=[],i,r=t===2?"":"",o=x;for(let c=0;c"?(o=i??x,l=-1):A[1]===void 0?l=-2:(l=o.lastIndex-A[2].length,$=A[1],o=A[3]===void 0?g:A[3]==='"'?k:W):o===k||o===W?o=g:o===D||o===L?o=x:(o=g,i=void 0);let d=o===g&&n[c+1].startsWith("/>")?" ":"";r+=o===x?h+J:l>=0?(s.push($),h.slice(0,l)+j+h.slice(l)+p+d):h+p+(l===-2?c:d)}return[F(n,r+(n[e]||"")+(t===2?"":"")),s]},T=class n{constructor({strings:t,_$litType$:e},s){let i;this.parts=[];let r=0,o=0,c=t.length-1,h=this.parts,[$,A]=Q(t,e);if(this.el=n.createElement($,s),v.currentNode=this.el.content,e===2){let l=this.el.content.firstChild;l.replaceWith(...l.childNodes)}for(;(i=v.nextNode())!==null&&h.length0){i.textContent=E?E.emptyScript:"";for(let d=0;d<_;d++)i.append(l[d],b()),v.nextNode(),h.push({type:2,index:++r});i.append(l[_],b())}}}else if(i.nodeType===8)if(i.data===z)h.push({type:2,index:r});else{let l=-1;for(;(l=i.data.indexOf(p,l+1))!==-1;)h.push({type:7,index:r}),l+=p.length-1}r++}}static createElement(t,e){let s=f.createElement("template");return s.innerHTML=t,s}};function m(n,t,e=n,s){if(t===u)return t;let i=s!==void 0?e._$Co?.[s]:e._$Cl,r=N(t)?void 0:t._$litDirective$;return i?.constructor!==r&&(i?._$AO?.(!1),r===void 0?i=void 0:(i=new r(n),i._$AT(n,e,s)),s!==void 0?(e._$Co??(e._$Co=[]))[s]=i:e._$Cl=i),i!==void 0&&(t=m(n,i._$AS(n,t.values),i,s)),t}var B=class{constructor(t,e){this._$AV=[],this._$AN=void 0,this._$AD=t,this._$AM=e}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(t){let{el:{content:e},parts:s}=this._$AD,i=(t?.creationScope??f).importNode(e,!0);v.currentNode=i;let r=v.nextNode(),o=0,c=0,h=s[0];for(;h!==void 0;){if(o===h.index){let $;h.type===2?$=new M(r,r.nextSibling,this,t):h.type===1?$=new h.ctor(r,h.name,h.strings,this,t):h.type===6&&($=new R(r,this,t)),this._$AV.push($),h=s[++c]}o!==h?.index&&(r=v.nextNode(),o++)}return v.currentNode=f,i}p(t){let e=0;for(let s of this._$AV)s!==void 0&&(s.strings!==void 0?(s._$AI(t,s,e),e+=s.strings.length-2):s._$AI(t[e])),e++}},M=class n{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(t,e,s,i){this.type=2,this._$AH=a,this._$AN=void 0,this._$AA=t,this._$AB=e,this._$AM=s,this.options=i,this._$Cv=i?.isConnected??!0}get parentNode(){let t=this._$AA.parentNode,e=this._$AM;return e!==void 0&&t?.nodeType===11&&(t=e.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,e=this){t=m(this,t,e),N(t)?t===a||t==null||t===""?(this._$AH!==a&&this._$AR(),this._$AH=a):t!==this._$AH&&t!==u&&this._(t):t._$litType$!==void 0?this.g(t):t.nodeType!==void 0?this.$(t):K(t)?this.T(t):this._(t)}k(t){return this._$AA.parentNode.insertBefore(t,this._$AB)}$(t){this._$AH!==t&&(this._$AR(),this._$AH=this.k(t))}_(t){this._$AH!==a&&N(this._$AH)?this._$AA.nextSibling.data=t:this.$(f.createTextNode(t)),this._$AH=t}g(t){let{values:e,_$litType$:s}=t,i=typeof s=="number"?this._$AC(t):(s.el===void 0&&(s.el=T.createElement(F(s.h,s.h[0]),this.options)),s);if(this._$AH?._$AD===i)this._$AH.p(e);else{let r=new B(i,this),o=r.u(this.options);r.p(e),this.$(o),this._$AH=r}}_$AC(t){let e=V.get(t.strings);return e===void 0&&V.set(t.strings,e=new T(t)),e}T(t){Z(this._$AH)||(this._$AH=[],this._$AR());let e=this._$AH,s,i=0;for(let r of t)i===e.length?e.push(s=new n(this.k(b()),this.k(b()),this,this.options)):s=e[i],s._$AI(r),i++;i2||s[0]!==""||s[1]!==""?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=a}_$AI(t,e=this,s,i){let r=this.strings,o=!1;if(r===void 0)t=m(this,t,e,0),o=!N(t)||t!==this._$AH&&t!==u,o&&(this._$AH=t);else{let c=t,h,$;for(t=r[0],h=0;h(...t)=>({_$litDirective$:n,values:t}),w=class{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,s){this._$Ct=t,this._$AM=e,this._$Ci=s}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}};var tt={},ht=G(class extends w{constructor(){super(...arguments),this.nt=tt}render(n,t){return t()}update(n,[t,e]){if(Array.isArray(t)){if(Array.isArray(this.nt)&&this.nt.length===t.length&&t.every((s,i)=>s===this.nt[i]))return u}else if(this.nt===t)return u;return this.nt=Array.isArray(t)?Array.from(t):t,this.render(t,e)}});export{ht as guard}; -/*! Bundled license information: - -lit-html/lit-html.js: -lit-html/directive.js: - (** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - *) - -lit-html/directives/guard.js: - (** - * @license - * Copyright 2018 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - *) -*/ -//# sourceMappingURL=guard-LCID67DS.js.map diff --git a/tests/staticfiles/esm/node_modules/lit/directives/guard-LCID67DS.js.map b/tests/staticfiles/esm/node_modules/lit/directives/guard-LCID67DS.js.map deleted file mode 100644 index 0c9ca26..0000000 --- a/tests/staticfiles/esm/node_modules/lit/directives/guard-LCID67DS.js.map +++ /dev/null @@ -1,7 +0,0 @@ -{ - "version": 3, - "sources": ["../../../../../node_modules/lit-html/src/lit-html.ts", "../../../../../node_modules/lit-html/src/directive.ts", "../../../../../node_modules/lit-html/src/directives/guard.ts"], - "sourcesContent": ["/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n// IMPORTANT: these imports must be type-only\nimport type {Directive, DirectiveResult, PartInfo} from './directive.js';\n\nconst DEV_MODE = true;\nconst ENABLE_EXTRA_SECURITY_HOOKS = true;\nconst ENABLE_SHADYDOM_NOPATCH = true;\nconst NODE_MODE = false;\n\n// Allows minifiers to rename references to globalThis\nconst global = globalThis;\n\n/**\n * Contains types that are part of the unstable debug API.\n *\n * Everything in this API is not stable and may change or be removed in the future,\n * even on patch releases.\n */\n// eslint-disable-next-line @typescript-eslint/no-namespace\nexport namespace LitUnstable {\n /**\n * When Lit is running in dev mode and `window.emitLitDebugLogEvents` is true,\n * we will emit 'lit-debug' events to window, with live details about the update and render\n * lifecycle. These can be useful for writing debug tooling and visualizations.\n *\n * Please be aware that running with window.emitLitDebugLogEvents has performance overhead,\n * making certain operations that are normally very cheap (like a no-op render) much slower,\n * because we must copy data and dispatch events.\n */\n // eslint-disable-next-line @typescript-eslint/no-namespace\n export namespace DebugLog {\n export type Entry =\n | TemplatePrep\n | TemplateInstantiated\n | TemplateInstantiatedAndUpdated\n | TemplateUpdating\n | BeginRender\n | EndRender\n | CommitPartEntry\n | SetPartValue;\n export interface TemplatePrep {\n kind: 'template prep';\n template: Template;\n strings: TemplateStringsArray;\n clonableTemplate: HTMLTemplateElement;\n parts: TemplatePart[];\n }\n export interface BeginRender {\n kind: 'begin render';\n id: number;\n value: unknown;\n container: HTMLElement | DocumentFragment;\n options: RenderOptions | undefined;\n part: ChildPart | undefined;\n }\n export interface EndRender {\n kind: 'end render';\n id: number;\n value: unknown;\n container: HTMLElement | DocumentFragment;\n options: RenderOptions | undefined;\n part: ChildPart;\n }\n export interface TemplateInstantiated {\n kind: 'template instantiated';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n fragment: Node;\n parts: Array;\n values: unknown[];\n }\n export interface TemplateInstantiatedAndUpdated {\n kind: 'template instantiated and updated';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n fragment: Node;\n parts: Array;\n values: unknown[];\n }\n export interface TemplateUpdating {\n kind: 'template updating';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n parts: Array;\n values: unknown[];\n }\n export interface SetPartValue {\n kind: 'set part';\n part: Part;\n value: unknown;\n valueIndex: number;\n values: unknown[];\n templateInstance: TemplateInstance;\n }\n\n export type CommitPartEntry =\n | CommitNothingToChildEntry\n | CommitText\n | CommitNode\n | CommitAttribute\n | CommitProperty\n | CommitBooleanAttribute\n | CommitEventListener\n | CommitToElementBinding;\n\n export interface CommitNothingToChildEntry {\n kind: 'commit nothing to child';\n start: ChildNode;\n end: ChildNode | null;\n parent: Disconnectable | undefined;\n options: RenderOptions | undefined;\n }\n\n export interface CommitText {\n kind: 'commit text';\n node: Text;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitNode {\n kind: 'commit node';\n start: Node;\n parent: Disconnectable | undefined;\n value: Node;\n options: RenderOptions | undefined;\n }\n\n export interface CommitAttribute {\n kind: 'commit attribute';\n element: Element;\n name: string;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitProperty {\n kind: 'commit property';\n element: Element;\n name: string;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitBooleanAttribute {\n kind: 'commit boolean attribute';\n element: Element;\n name: string;\n value: boolean;\n options: RenderOptions | undefined;\n }\n\n export interface CommitEventListener {\n kind: 'commit event listener';\n element: Element;\n name: string;\n value: unknown;\n oldListener: unknown;\n options: RenderOptions | undefined;\n // True if we're removing the old event listener (e.g. because settings changed, or value is nothing)\n removeListener: boolean;\n // True if we're adding a new event listener (e.g. because first render, or settings changed)\n addListener: boolean;\n }\n\n export interface CommitToElementBinding {\n kind: 'commit to element binding';\n element: Element;\n value: unknown;\n options: RenderOptions | undefined;\n }\n }\n}\n\ninterface DebugLoggingWindow {\n // Even in dev mode, we generally don't want to emit these events, as that's\n // another level of cost, so only emit them when DEV_MODE is true _and_ when\n // window.emitLitDebugEvents is true.\n emitLitDebugLogEvents?: boolean;\n}\n\n/**\n * Useful for visualizing and logging insights into what the Lit template system is doing.\n *\n * Compiled out of prod mode builds.\n */\nconst debugLogEvent = DEV_MODE\n ? (event: LitUnstable.DebugLog.Entry) => {\n const shouldEmit = (global as unknown as DebugLoggingWindow)\n .emitLitDebugLogEvents;\n if (!shouldEmit) {\n return;\n }\n global.dispatchEvent(\n new CustomEvent('lit-debug', {\n detail: event,\n })\n );\n }\n : undefined;\n// Used for connecting beginRender and endRender events when there are nested\n// renders when errors are thrown preventing an endRender event from being\n// called.\nlet debugLogRenderId = 0;\n\nlet issueWarning: (code: string, warning: string) => void;\n\nif (DEV_MODE) {\n global.litIssuedWarnings ??= new Set();\n\n // Issue a warning, if we haven't already.\n issueWarning = (code: string, warning: string) => {\n warning += code\n ? ` See https://lit.dev/msg/${code} for more information.`\n : '';\n if (!global.litIssuedWarnings!.has(warning)) {\n console.warn(warning);\n global.litIssuedWarnings!.add(warning);\n }\n };\n\n issueWarning(\n 'dev-mode',\n `Lit is in dev mode. Not recommended for production!`\n );\n}\n\nconst wrap =\n ENABLE_SHADYDOM_NOPATCH &&\n global.ShadyDOM?.inUse &&\n global.ShadyDOM?.noPatch === true\n ? (global.ShadyDOM!.wrap as (node: T) => T)\n : (node: T) => node;\n\nconst trustedTypes = (global as unknown as Window).trustedTypes;\n\n/**\n * Our TrustedTypePolicy for HTML which is declared using the html template\n * tag function.\n *\n * That HTML is a developer-authored constant, and is parsed with innerHTML\n * before any untrusted expressions have been mixed in. Therefor it is\n * considered safe by construction.\n */\nconst policy = trustedTypes\n ? trustedTypes.createPolicy('lit-html', {\n createHTML: (s) => s,\n })\n : undefined;\n\n/**\n * Used to sanitize any value before it is written into the DOM. This can be\n * used to implement a security policy of allowed and disallowed values in\n * order to prevent XSS attacks.\n *\n * One way of using this callback would be to check attributes and properties\n * against a list of high risk fields, and require that values written to such\n * fields be instances of a class which is safe by construction. Closure's Safe\n * HTML Types is one implementation of this technique (\n * https://github.com/google/safe-html-types/blob/master/doc/safehtml-types.md).\n * The TrustedTypes polyfill in API-only mode could also be used as a basis\n * for this technique (https://github.com/WICG/trusted-types).\n *\n * @param node The HTML node (usually either a #text node or an Element) that\n * is being written to. Note that this is just an exemplar node, the write\n * may take place against another instance of the same class of node.\n * @param name The name of an attribute or property (for example, 'href').\n * @param type Indicates whether the write that's about to be performed will\n * be to a property or a node.\n * @return A function that will sanitize this class of writes.\n */\nexport type SanitizerFactory = (\n node: Node,\n name: string,\n type: 'property' | 'attribute'\n) => ValueSanitizer;\n\n/**\n * A function which can sanitize values that will be written to a specific kind\n * of DOM sink.\n *\n * See SanitizerFactory.\n *\n * @param value The value to sanitize. Will be the actual value passed into\n * the lit-html template literal, so this could be of any type.\n * @return The value to write to the DOM. Usually the same as the input value,\n * unless sanitization is needed.\n */\nexport type ValueSanitizer = (value: unknown) => unknown;\n\nconst identityFunction: ValueSanitizer = (value: unknown) => value;\nconst noopSanitizer: SanitizerFactory = (\n _node: Node,\n _name: string,\n _type: 'property' | 'attribute'\n) => identityFunction;\n\n/** Sets the global sanitizer factory. */\nconst setSanitizer = (newSanitizer: SanitizerFactory) => {\n if (!ENABLE_EXTRA_SECURITY_HOOKS) {\n return;\n }\n if (sanitizerFactoryInternal !== noopSanitizer) {\n throw new Error(\n `Attempted to overwrite existing lit-html security policy.` +\n ` setSanitizeDOMValueFactory should be called at most once.`\n );\n }\n sanitizerFactoryInternal = newSanitizer;\n};\n\n/**\n * Only used in internal tests, not a part of the public API.\n */\nconst _testOnlyClearSanitizerFactoryDoNotCallOrElse = () => {\n sanitizerFactoryInternal = noopSanitizer;\n};\n\nconst createSanitizer: SanitizerFactory = (node, name, type) => {\n return sanitizerFactoryInternal(node, name, type);\n};\n\n// Added to an attribute name to mark the attribute as bound so we can find\n// it easily.\nconst boundAttributeSuffix = '$lit$';\n\n// This marker is used in many syntactic positions in HTML, so it must be\n// a valid element name and attribute name. We don't support dynamic names (yet)\n// but this at least ensures that the parse tree is closer to the template\n// intention.\nconst marker = `lit$${String(Math.random()).slice(9)}$`;\n\n// String used to tell if a comment is a marker comment\nconst markerMatch = '?' + marker;\n\n// Text used to insert a comment marker node. We use processing instruction\n// syntax because it's slightly smaller, but parses as a comment node.\nconst nodeMarker = `<${markerMatch}>`;\n\nconst d =\n NODE_MODE && global.document === undefined\n ? ({\n createTreeWalker() {\n return {};\n },\n } as unknown as Document)\n : document;\n\n// Creates a dynamic marker. We never have to search for these in the DOM.\nconst createMarker = () => d.createComment('');\n\n// https://tc39.github.io/ecma262/#sec-typeof-operator\ntype Primitive = null | undefined | boolean | number | string | symbol | bigint;\nconst isPrimitive = (value: unknown): value is Primitive =>\n value === null || (typeof value != 'object' && typeof value != 'function');\nconst isArray = Array.isArray;\nconst isIterable = (value: unknown): value is Iterable =>\n isArray(value) ||\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n typeof (value as any)?.[Symbol.iterator] === 'function';\n\nconst SPACE_CHAR = `[ \\t\\n\\f\\r]`;\nconst ATTR_VALUE_CHAR = `[^ \\t\\n\\f\\r\"'\\`<>=]`;\nconst NAME_CHAR = `[^\\\\s\"'>=/]`;\n\n// These regexes represent the five parsing states that we care about in the\n// Template's HTML scanner. They match the *end* of the state they're named\n// after.\n// Depending on the match, we transition to a new state. If there's no match,\n// we stay in the same state.\n// Note that the regexes are stateful. We utilize lastIndex and sync it\n// across the multiple regexes used. In addition to the five regexes below\n// we also dynamically create a regex to find the matching end tags for raw\n// text elements.\n\n/**\n * End of text is: `<` followed by:\n * (comment start) or (tag) or (dynamic tag binding)\n */\nconst textEndRegex = /<(?:(!--|\\/[^a-zA-Z])|(\\/?[a-zA-Z][^>\\s]*)|(\\/?$))/g;\nconst COMMENT_START = 1;\nconst TAG_NAME = 2;\nconst DYNAMIC_TAG_NAME = 3;\n\nconst commentEndRegex = /-->/g;\n/**\n * Comments not started with /g,D=/>/g,u=RegExp(`>|${E}(?:([^\\s"'>=/]+)(${E}*=${E}*(?:[^ -\f\r"'\`<>=]|("|')|))|$)`,"g"),L=/'/g,W=/"/g,Z=/^(?:script|style|textarea|title)$/i,q=n=>(t,...s)=>({_$litType$:n,strings:t,values:s}),X=q(1),Y=q(2),N=Symbol.for("lit-noChange"),$=Symbol.for("lit-nothing"),k=new WeakMap,g=f.createTreeWalker(f,129);function F(n,t){if(!Array.isArray(n)||!n.hasOwnProperty("raw"))throw Error("invalid template strings array");return O!==void 0?O.createHTML(t):t}var K=(n,t)=>{let s=n.length-1,e=[],i,o=t===2?"":"",r=y;for(let _=0;_"?(r=i??y,l=-1):A[1]===void 0?l=-2:(l=r.lastIndex-A[2].length,a=A[1],r=A[3]===void 0?u:A[3]==='"'?W:L):r===W||r===L?r=u:r===R||r===D?r=y:(r=u,i=void 0);let d=r===u&&n[_+1].startsWith("/>")?" ":"";o+=r===y?h+G:l>=0?(e.push(a),h.slice(0,l)+V+h.slice(l)+p+d):h+p+(l===-2?_:d)}return[F(n,o+(n[s]||"")+(t===2?"":"")),e]},b=class n{constructor({strings:t,_$litType$:s},e){let i;this.parts=[];let o=0,r=0,_=t.length-1,h=this.parts,[a,A]=K(t,s);if(this.el=n.createElement(a,e),g.currentNode=this.el.content,s===2){let l=this.el.content.firstChild;l.replaceWith(...l.childNodes)}for(;(i=g.nextNode())!==null&&h.length<_;){if(i.nodeType===1){if(i.hasAttributes())for(let l of i.getAttributeNames())if(l.endsWith(V)){let c=A[r++],d=i.getAttribute(l).split(p),C=/([.?@])?(.*)/.exec(c);h.push({type:1,index:o,name:C[2],strings:d,ctor:C[1]==="."?I:C[1]==="?"?B:C[1]==="@"?P:m}),i.removeAttribute(l)}else l.startsWith(p)&&(h.push({type:6,index:o}),i.removeAttribute(l));if(Z.test(i.tagName)){let l=i.textContent.split(p),c=l.length-1;if(c>0){i.textContent=T?T.emptyScript:"";for(let d=0;d2||e[0]!==""||e[1]!==""?(this._$AH=Array(e.length-1).fill(new String),this.strings=e):this._$AH=$}_$AI(t,s=this,e,i){let o=this.strings,r=!1;if(o===void 0)t=v(this,t,s,0),r=!H(t)||t!==this._$AH&&t!==N,r&&(this._$AH=t);else{let _=t,h,a;for(t=o[0],h=0;hn??$;export{st as ifDefined}; -/*! Bundled license information: - -lit-html/lit-html.js: - (** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - *) - -lit-html/directives/if-defined.js: - (** - * @license - * Copyright 2018 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - *) -*/ -//# sourceMappingURL=if-defined-NV4G3YN4.js.map diff --git a/tests/staticfiles/esm/node_modules/lit/directives/if-defined-NV4G3YN4.js.map b/tests/staticfiles/esm/node_modules/lit/directives/if-defined-NV4G3YN4.js.map deleted file mode 100644 index dfddb3b..0000000 --- a/tests/staticfiles/esm/node_modules/lit/directives/if-defined-NV4G3YN4.js.map +++ /dev/null @@ -1,7 +0,0 @@ -{ - "version": 3, - "sources": ["../../../../../node_modules/lit-html/src/lit-html.ts", "../../../../../node_modules/lit-html/src/directives/if-defined.ts"], - "sourcesContent": ["/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n// IMPORTANT: these imports must be type-only\nimport type {Directive, DirectiveResult, PartInfo} from './directive.js';\n\nconst DEV_MODE = true;\nconst ENABLE_EXTRA_SECURITY_HOOKS = true;\nconst ENABLE_SHADYDOM_NOPATCH = true;\nconst NODE_MODE = false;\n\n// Allows minifiers to rename references to globalThis\nconst global = globalThis;\n\n/**\n * Contains types that are part of the unstable debug API.\n *\n * Everything in this API is not stable and may change or be removed in the future,\n * even on patch releases.\n */\n// eslint-disable-next-line @typescript-eslint/no-namespace\nexport namespace LitUnstable {\n /**\n * When Lit is running in dev mode and `window.emitLitDebugLogEvents` is true,\n * we will emit 'lit-debug' events to window, with live details about the update and render\n * lifecycle. These can be useful for writing debug tooling and visualizations.\n *\n * Please be aware that running with window.emitLitDebugLogEvents has performance overhead,\n * making certain operations that are normally very cheap (like a no-op render) much slower,\n * because we must copy data and dispatch events.\n */\n // eslint-disable-next-line @typescript-eslint/no-namespace\n export namespace DebugLog {\n export type Entry =\n | TemplatePrep\n | TemplateInstantiated\n | TemplateInstantiatedAndUpdated\n | TemplateUpdating\n | BeginRender\n | EndRender\n | CommitPartEntry\n | SetPartValue;\n export interface TemplatePrep {\n kind: 'template prep';\n template: Template;\n strings: TemplateStringsArray;\n clonableTemplate: HTMLTemplateElement;\n parts: TemplatePart[];\n }\n export interface BeginRender {\n kind: 'begin render';\n id: number;\n value: unknown;\n container: HTMLElement | DocumentFragment;\n options: RenderOptions | undefined;\n part: ChildPart | undefined;\n }\n export interface EndRender {\n kind: 'end render';\n id: number;\n value: unknown;\n container: HTMLElement | DocumentFragment;\n options: RenderOptions | undefined;\n part: ChildPart;\n }\n export interface TemplateInstantiated {\n kind: 'template instantiated';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n fragment: Node;\n parts: Array;\n values: unknown[];\n }\n export interface TemplateInstantiatedAndUpdated {\n kind: 'template instantiated and updated';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n fragment: Node;\n parts: Array;\n values: unknown[];\n }\n export interface TemplateUpdating {\n kind: 'template updating';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n parts: Array;\n values: unknown[];\n }\n export interface SetPartValue {\n kind: 'set part';\n part: Part;\n value: unknown;\n valueIndex: number;\n values: unknown[];\n templateInstance: TemplateInstance;\n }\n\n export type CommitPartEntry =\n | CommitNothingToChildEntry\n | CommitText\n | CommitNode\n | CommitAttribute\n | CommitProperty\n | CommitBooleanAttribute\n | CommitEventListener\n | CommitToElementBinding;\n\n export interface CommitNothingToChildEntry {\n kind: 'commit nothing to child';\n start: ChildNode;\n end: ChildNode | null;\n parent: Disconnectable | undefined;\n options: RenderOptions | undefined;\n }\n\n export interface CommitText {\n kind: 'commit text';\n node: Text;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitNode {\n kind: 'commit node';\n start: Node;\n parent: Disconnectable | undefined;\n value: Node;\n options: RenderOptions | undefined;\n }\n\n export interface CommitAttribute {\n kind: 'commit attribute';\n element: Element;\n name: string;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitProperty {\n kind: 'commit property';\n element: Element;\n name: string;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitBooleanAttribute {\n kind: 'commit boolean attribute';\n element: Element;\n name: string;\n value: boolean;\n options: RenderOptions | undefined;\n }\n\n export interface CommitEventListener {\n kind: 'commit event listener';\n element: Element;\n name: string;\n value: unknown;\n oldListener: unknown;\n options: RenderOptions | undefined;\n // True if we're removing the old event listener (e.g. because settings changed, or value is nothing)\n removeListener: boolean;\n // True if we're adding a new event listener (e.g. because first render, or settings changed)\n addListener: boolean;\n }\n\n export interface CommitToElementBinding {\n kind: 'commit to element binding';\n element: Element;\n value: unknown;\n options: RenderOptions | undefined;\n }\n }\n}\n\ninterface DebugLoggingWindow {\n // Even in dev mode, we generally don't want to emit these events, as that's\n // another level of cost, so only emit them when DEV_MODE is true _and_ when\n // window.emitLitDebugEvents is true.\n emitLitDebugLogEvents?: boolean;\n}\n\n/**\n * Useful for visualizing and logging insights into what the Lit template system is doing.\n *\n * Compiled out of prod mode builds.\n */\nconst debugLogEvent = DEV_MODE\n ? (event: LitUnstable.DebugLog.Entry) => {\n const shouldEmit = (global as unknown as DebugLoggingWindow)\n .emitLitDebugLogEvents;\n if (!shouldEmit) {\n return;\n }\n global.dispatchEvent(\n new CustomEvent('lit-debug', {\n detail: event,\n })\n );\n }\n : undefined;\n// Used for connecting beginRender and endRender events when there are nested\n// renders when errors are thrown preventing an endRender event from being\n// called.\nlet debugLogRenderId = 0;\n\nlet issueWarning: (code: string, warning: string) => void;\n\nif (DEV_MODE) {\n global.litIssuedWarnings ??= new Set();\n\n // Issue a warning, if we haven't already.\n issueWarning = (code: string, warning: string) => {\n warning += code\n ? ` See https://lit.dev/msg/${code} for more information.`\n : '';\n if (!global.litIssuedWarnings!.has(warning)) {\n console.warn(warning);\n global.litIssuedWarnings!.add(warning);\n }\n };\n\n issueWarning(\n 'dev-mode',\n `Lit is in dev mode. Not recommended for production!`\n );\n}\n\nconst wrap =\n ENABLE_SHADYDOM_NOPATCH &&\n global.ShadyDOM?.inUse &&\n global.ShadyDOM?.noPatch === true\n ? (global.ShadyDOM!.wrap as (node: T) => T)\n : (node: T) => node;\n\nconst trustedTypes = (global as unknown as Window).trustedTypes;\n\n/**\n * Our TrustedTypePolicy for HTML which is declared using the html template\n * tag function.\n *\n * That HTML is a developer-authored constant, and is parsed with innerHTML\n * before any untrusted expressions have been mixed in. Therefor it is\n * considered safe by construction.\n */\nconst policy = trustedTypes\n ? trustedTypes.createPolicy('lit-html', {\n createHTML: (s) => s,\n })\n : undefined;\n\n/**\n * Used to sanitize any value before it is written into the DOM. This can be\n * used to implement a security policy of allowed and disallowed values in\n * order to prevent XSS attacks.\n *\n * One way of using this callback would be to check attributes and properties\n * against a list of high risk fields, and require that values written to such\n * fields be instances of a class which is safe by construction. Closure's Safe\n * HTML Types is one implementation of this technique (\n * https://github.com/google/safe-html-types/blob/master/doc/safehtml-types.md).\n * The TrustedTypes polyfill in API-only mode could also be used as a basis\n * for this technique (https://github.com/WICG/trusted-types).\n *\n * @param node The HTML node (usually either a #text node or an Element) that\n * is being written to. Note that this is just an exemplar node, the write\n * may take place against another instance of the same class of node.\n * @param name The name of an attribute or property (for example, 'href').\n * @param type Indicates whether the write that's about to be performed will\n * be to a property or a node.\n * @return A function that will sanitize this class of writes.\n */\nexport type SanitizerFactory = (\n node: Node,\n name: string,\n type: 'property' | 'attribute'\n) => ValueSanitizer;\n\n/**\n * A function which can sanitize values that will be written to a specific kind\n * of DOM sink.\n *\n * See SanitizerFactory.\n *\n * @param value The value to sanitize. Will be the actual value passed into\n * the lit-html template literal, so this could be of any type.\n * @return The value to write to the DOM. Usually the same as the input value,\n * unless sanitization is needed.\n */\nexport type ValueSanitizer = (value: unknown) => unknown;\n\nconst identityFunction: ValueSanitizer = (value: unknown) => value;\nconst noopSanitizer: SanitizerFactory = (\n _node: Node,\n _name: string,\n _type: 'property' | 'attribute'\n) => identityFunction;\n\n/** Sets the global sanitizer factory. */\nconst setSanitizer = (newSanitizer: SanitizerFactory) => {\n if (!ENABLE_EXTRA_SECURITY_HOOKS) {\n return;\n }\n if (sanitizerFactoryInternal !== noopSanitizer) {\n throw new Error(\n `Attempted to overwrite existing lit-html security policy.` +\n ` setSanitizeDOMValueFactory should be called at most once.`\n );\n }\n sanitizerFactoryInternal = newSanitizer;\n};\n\n/**\n * Only used in internal tests, not a part of the public API.\n */\nconst _testOnlyClearSanitizerFactoryDoNotCallOrElse = () => {\n sanitizerFactoryInternal = noopSanitizer;\n};\n\nconst createSanitizer: SanitizerFactory = (node, name, type) => {\n return sanitizerFactoryInternal(node, name, type);\n};\n\n// Added to an attribute name to mark the attribute as bound so we can find\n// it easily.\nconst boundAttributeSuffix = '$lit$';\n\n// This marker is used in many syntactic positions in HTML, so it must be\n// a valid element name and attribute name. We don't support dynamic names (yet)\n// but this at least ensures that the parse tree is closer to the template\n// intention.\nconst marker = `lit$${String(Math.random()).slice(9)}$`;\n\n// String used to tell if a comment is a marker comment\nconst markerMatch = '?' + marker;\n\n// Text used to insert a comment marker node. We use processing instruction\n// syntax because it's slightly smaller, but parses as a comment node.\nconst nodeMarker = `<${markerMatch}>`;\n\nconst d =\n NODE_MODE && global.document === undefined\n ? ({\n createTreeWalker() {\n return {};\n },\n } as unknown as Document)\n : document;\n\n// Creates a dynamic marker. We never have to search for these in the DOM.\nconst createMarker = () => d.createComment('');\n\n// https://tc39.github.io/ecma262/#sec-typeof-operator\ntype Primitive = null | undefined | boolean | number | string | symbol | bigint;\nconst isPrimitive = (value: unknown): value is Primitive =>\n value === null || (typeof value != 'object' && typeof value != 'function');\nconst isArray = Array.isArray;\nconst isIterable = (value: unknown): value is Iterable =>\n isArray(value) ||\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n typeof (value as any)?.[Symbol.iterator] === 'function';\n\nconst SPACE_CHAR = `[ \\t\\n\\f\\r]`;\nconst ATTR_VALUE_CHAR = `[^ \\t\\n\\f\\r\"'\\`<>=]`;\nconst NAME_CHAR = `[^\\\\s\"'>=/]`;\n\n// These regexes represent the five parsing states that we care about in the\n// Template's HTML scanner. They match the *end* of the state they're named\n// after.\n// Depending on the match, we transition to a new state. If there's no match,\n// we stay in the same state.\n// Note that the regexes are stateful. We utilize lastIndex and sync it\n// across the multiple regexes used. In addition to the five regexes below\n// we also dynamically create a regex to find the matching end tags for raw\n// text elements.\n\n/**\n * End of text is: `<` followed by:\n * (comment start) or (tag) or (dynamic tag binding)\n */\nconst textEndRegex = /<(?:(!--|\\/[^a-zA-Z])|(\\/?[a-zA-Z][^>\\s]*)|(\\/?$))/g;\nconst COMMENT_START = 1;\nconst TAG_NAME = 2;\nconst DYNAMIC_TAG_NAME = 3;\n\nconst commentEndRegex = /-->/g;\n/**\n * Comments not started with /g,V=/>/g,u=RegExp(`>|${U}(?:([^\\s"'>=/]+)(${U}*=${U}*(?:[^ -\f\r"'\`<>=]|("|')|))|$)`,"g"),W=/'/g,j=/"/g,Q=/^(?:script|style|textarea|title)$/i,Y=n=>(t,...e)=>({_$litType$:n,strings:t,values:e}),it=Y(1),nt=Y(2),T=Symbol.for("lit-noChange"),$=Symbol.for("lit-nothing"),z=new WeakMap,g=m.createTreeWalker(m,129);function q(n,t){if(!Array.isArray(n)||!n.hasOwnProperty("raw"))throw Error("invalid template strings array");return k!==void 0?k.createHTML(t):t}var F=(n,t)=>{let e=n.length-1,s=[],i,r=t===2?"":"",o=y;for(let _=0;_"?(o=i??y,l=-1):A[1]===void 0?l=-2:(l=o.lastIndex-A[2].length,a=A[1],o=A[3]===void 0?u:A[3]==='"'?j:W):o===j||o===W?o=u:o===O||o===V?o=y:(o=u,i=void 0);let p=o===u&&n[_+1].startsWith("/>")?" ":"";r+=o===y?h+tt:l>=0?(s.push(a),h.slice(0,l)+D+h.slice(l)+d+p):h+d+(l===-2?_:p)}return[q(n,r+(n[e]||"")+(t===2?"":"")),s]},N=class n{constructor({strings:t,_$litType$:e},s){let i;this.parts=[];let r=0,o=0,_=t.length-1,h=this.parts,[a,A]=F(t,e);if(this.el=n.createElement(a,s),g.currentNode=this.el.content,e===2){let l=this.el.content.firstChild;l.replaceWith(...l.childNodes)}for(;(i=g.nextNode())!==null&&h.length<_;){if(i.nodeType===1){if(i.hasAttributes())for(let l of i.getAttributeNames())if(l.endsWith(D)){let c=A[o++],p=i.getAttribute(l).split(d),b=/([.?@])?(.*)/.exec(c);h.push({type:1,index:r,name:b[2],strings:p,ctor:b[1]==="."?B:b[1]==="?"?S:b[1]==="@"?R:f}),i.removeAttribute(l)}else l.startsWith(d)&&(h.push({type:6,index:r}),i.removeAttribute(l));if(Q.test(i.tagName)){let l=i.textContent.split(d),c=l.length-1;if(c>0){i.textContent=E?E.emptyScript:"";for(let p=0;p2||s[0]!==""||s[1]!==""?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=$}_$AI(t,e=this,s,i){let r=this.strings,o=!1;if(r===void 0)t=v(this,t,e,0),o=!H(t)||t!==this._$AH&&t!==T,o&&(this._$AH=t);else{let _=t,h,a;for(t=r[0],h=0;h(...t)=>({_$litDirective$:n,values:t}),I=class{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,s){this._$Ct=t,this._$AM=e,this._$Ci=s}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}};var{D:lt}=J;var st={},X=(n,t=st)=>n._$AH=t;var ct=K(class extends I{constructor(){super(...arguments),this.key=$}render(n,t){return this.key=n,t}update(n,[t,e]){return t!==this.key&&(X(n),this.key=t),e}});export{ct as keyed}; -/*! Bundled license information: - -lit-html/lit-html.js: -lit-html/directive.js: - (** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - *) - -lit-html/directive-helpers.js: - (** - * @license - * Copyright 2020 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - *) - -lit-html/directives/keyed.js: - (** - * @license - * Copyright 2021 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - *) -*/ -//# sourceMappingURL=keyed-E27UFCAD.js.map diff --git a/tests/staticfiles/esm/node_modules/lit/directives/keyed-E27UFCAD.js.map b/tests/staticfiles/esm/node_modules/lit/directives/keyed-E27UFCAD.js.map deleted file mode 100644 index 0240c76..0000000 --- a/tests/staticfiles/esm/node_modules/lit/directives/keyed-E27UFCAD.js.map +++ /dev/null @@ -1,7 +0,0 @@ -{ - "version": 3, - "sources": ["../../../../../node_modules/lit-html/src/lit-html.ts", "../../../../../node_modules/lit-html/src/directive.ts", "../../../../../node_modules/lit-html/src/directive-helpers.ts", "../../../../../node_modules/lit-html/src/directives/keyed.ts"], - "sourcesContent": ["/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n// IMPORTANT: these imports must be type-only\nimport type {Directive, DirectiveResult, PartInfo} from './directive.js';\n\nconst DEV_MODE = true;\nconst ENABLE_EXTRA_SECURITY_HOOKS = true;\nconst ENABLE_SHADYDOM_NOPATCH = true;\nconst NODE_MODE = false;\n\n// Allows minifiers to rename references to globalThis\nconst global = globalThis;\n\n/**\n * Contains types that are part of the unstable debug API.\n *\n * Everything in this API is not stable and may change or be removed in the future,\n * even on patch releases.\n */\n// eslint-disable-next-line @typescript-eslint/no-namespace\nexport namespace LitUnstable {\n /**\n * When Lit is running in dev mode and `window.emitLitDebugLogEvents` is true,\n * we will emit 'lit-debug' events to window, with live details about the update and render\n * lifecycle. These can be useful for writing debug tooling and visualizations.\n *\n * Please be aware that running with window.emitLitDebugLogEvents has performance overhead,\n * making certain operations that are normally very cheap (like a no-op render) much slower,\n * because we must copy data and dispatch events.\n */\n // eslint-disable-next-line @typescript-eslint/no-namespace\n export namespace DebugLog {\n export type Entry =\n | TemplatePrep\n | TemplateInstantiated\n | TemplateInstantiatedAndUpdated\n | TemplateUpdating\n | BeginRender\n | EndRender\n | CommitPartEntry\n | SetPartValue;\n export interface TemplatePrep {\n kind: 'template prep';\n template: Template;\n strings: TemplateStringsArray;\n clonableTemplate: HTMLTemplateElement;\n parts: TemplatePart[];\n }\n export interface BeginRender {\n kind: 'begin render';\n id: number;\n value: unknown;\n container: HTMLElement | DocumentFragment;\n options: RenderOptions | undefined;\n part: ChildPart | undefined;\n }\n export interface EndRender {\n kind: 'end render';\n id: number;\n value: unknown;\n container: HTMLElement | DocumentFragment;\n options: RenderOptions | undefined;\n part: ChildPart;\n }\n export interface TemplateInstantiated {\n kind: 'template instantiated';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n fragment: Node;\n parts: Array;\n values: unknown[];\n }\n export interface TemplateInstantiatedAndUpdated {\n kind: 'template instantiated and updated';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n fragment: Node;\n parts: Array;\n values: unknown[];\n }\n export interface TemplateUpdating {\n kind: 'template updating';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n parts: Array;\n values: unknown[];\n }\n export interface SetPartValue {\n kind: 'set part';\n part: Part;\n value: unknown;\n valueIndex: number;\n values: unknown[];\n templateInstance: TemplateInstance;\n }\n\n export type CommitPartEntry =\n | CommitNothingToChildEntry\n | CommitText\n | CommitNode\n | CommitAttribute\n | CommitProperty\n | CommitBooleanAttribute\n | CommitEventListener\n | CommitToElementBinding;\n\n export interface CommitNothingToChildEntry {\n kind: 'commit nothing to child';\n start: ChildNode;\n end: ChildNode | null;\n parent: Disconnectable | undefined;\n options: RenderOptions | undefined;\n }\n\n export interface CommitText {\n kind: 'commit text';\n node: Text;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitNode {\n kind: 'commit node';\n start: Node;\n parent: Disconnectable | undefined;\n value: Node;\n options: RenderOptions | undefined;\n }\n\n export interface CommitAttribute {\n kind: 'commit attribute';\n element: Element;\n name: string;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitProperty {\n kind: 'commit property';\n element: Element;\n name: string;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitBooleanAttribute {\n kind: 'commit boolean attribute';\n element: Element;\n name: string;\n value: boolean;\n options: RenderOptions | undefined;\n }\n\n export interface CommitEventListener {\n kind: 'commit event listener';\n element: Element;\n name: string;\n value: unknown;\n oldListener: unknown;\n options: RenderOptions | undefined;\n // True if we're removing the old event listener (e.g. because settings changed, or value is nothing)\n removeListener: boolean;\n // True if we're adding a new event listener (e.g. because first render, or settings changed)\n addListener: boolean;\n }\n\n export interface CommitToElementBinding {\n kind: 'commit to element binding';\n element: Element;\n value: unknown;\n options: RenderOptions | undefined;\n }\n }\n}\n\ninterface DebugLoggingWindow {\n // Even in dev mode, we generally don't want to emit these events, as that's\n // another level of cost, so only emit them when DEV_MODE is true _and_ when\n // window.emitLitDebugEvents is true.\n emitLitDebugLogEvents?: boolean;\n}\n\n/**\n * Useful for visualizing and logging insights into what the Lit template system is doing.\n *\n * Compiled out of prod mode builds.\n */\nconst debugLogEvent = DEV_MODE\n ? (event: LitUnstable.DebugLog.Entry) => {\n const shouldEmit = (global as unknown as DebugLoggingWindow)\n .emitLitDebugLogEvents;\n if (!shouldEmit) {\n return;\n }\n global.dispatchEvent(\n new CustomEvent('lit-debug', {\n detail: event,\n })\n );\n }\n : undefined;\n// Used for connecting beginRender and endRender events when there are nested\n// renders when errors are thrown preventing an endRender event from being\n// called.\nlet debugLogRenderId = 0;\n\nlet issueWarning: (code: string, warning: string) => void;\n\nif (DEV_MODE) {\n global.litIssuedWarnings ??= new Set();\n\n // Issue a warning, if we haven't already.\n issueWarning = (code: string, warning: string) => {\n warning += code\n ? ` See https://lit.dev/msg/${code} for more information.`\n : '';\n if (!global.litIssuedWarnings!.has(warning)) {\n console.warn(warning);\n global.litIssuedWarnings!.add(warning);\n }\n };\n\n issueWarning(\n 'dev-mode',\n `Lit is in dev mode. Not recommended for production!`\n );\n}\n\nconst wrap =\n ENABLE_SHADYDOM_NOPATCH &&\n global.ShadyDOM?.inUse &&\n global.ShadyDOM?.noPatch === true\n ? (global.ShadyDOM!.wrap as (node: T) => T)\n : (node: T) => node;\n\nconst trustedTypes = (global as unknown as Window).trustedTypes;\n\n/**\n * Our TrustedTypePolicy for HTML which is declared using the html template\n * tag function.\n *\n * That HTML is a developer-authored constant, and is parsed with innerHTML\n * before any untrusted expressions have been mixed in. Therefor it is\n * considered safe by construction.\n */\nconst policy = trustedTypes\n ? trustedTypes.createPolicy('lit-html', {\n createHTML: (s) => s,\n })\n : undefined;\n\n/**\n * Used to sanitize any value before it is written into the DOM. This can be\n * used to implement a security policy of allowed and disallowed values in\n * order to prevent XSS attacks.\n *\n * One way of using this callback would be to check attributes and properties\n * against a list of high risk fields, and require that values written to such\n * fields be instances of a class which is safe by construction. Closure's Safe\n * HTML Types is one implementation of this technique (\n * https://github.com/google/safe-html-types/blob/master/doc/safehtml-types.md).\n * The TrustedTypes polyfill in API-only mode could also be used as a basis\n * for this technique (https://github.com/WICG/trusted-types).\n *\n * @param node The HTML node (usually either a #text node or an Element) that\n * is being written to. Note that this is just an exemplar node, the write\n * may take place against another instance of the same class of node.\n * @param name The name of an attribute or property (for example, 'href').\n * @param type Indicates whether the write that's about to be performed will\n * be to a property or a node.\n * @return A function that will sanitize this class of writes.\n */\nexport type SanitizerFactory = (\n node: Node,\n name: string,\n type: 'property' | 'attribute'\n) => ValueSanitizer;\n\n/**\n * A function which can sanitize values that will be written to a specific kind\n * of DOM sink.\n *\n * See SanitizerFactory.\n *\n * @param value The value to sanitize. Will be the actual value passed into\n * the lit-html template literal, so this could be of any type.\n * @return The value to write to the DOM. Usually the same as the input value,\n * unless sanitization is needed.\n */\nexport type ValueSanitizer = (value: unknown) => unknown;\n\nconst identityFunction: ValueSanitizer = (value: unknown) => value;\nconst noopSanitizer: SanitizerFactory = (\n _node: Node,\n _name: string,\n _type: 'property' | 'attribute'\n) => identityFunction;\n\n/** Sets the global sanitizer factory. */\nconst setSanitizer = (newSanitizer: SanitizerFactory) => {\n if (!ENABLE_EXTRA_SECURITY_HOOKS) {\n return;\n }\n if (sanitizerFactoryInternal !== noopSanitizer) {\n throw new Error(\n `Attempted to overwrite existing lit-html security policy.` +\n ` setSanitizeDOMValueFactory should be called at most once.`\n );\n }\n sanitizerFactoryInternal = newSanitizer;\n};\n\n/**\n * Only used in internal tests, not a part of the public API.\n */\nconst _testOnlyClearSanitizerFactoryDoNotCallOrElse = () => {\n sanitizerFactoryInternal = noopSanitizer;\n};\n\nconst createSanitizer: SanitizerFactory = (node, name, type) => {\n return sanitizerFactoryInternal(node, name, type);\n};\n\n// Added to an attribute name to mark the attribute as bound so we can find\n// it easily.\nconst boundAttributeSuffix = '$lit$';\n\n// This marker is used in many syntactic positions in HTML, so it must be\n// a valid element name and attribute name. We don't support dynamic names (yet)\n// but this at least ensures that the parse tree is closer to the template\n// intention.\nconst marker = `lit$${String(Math.random()).slice(9)}$`;\n\n// String used to tell if a comment is a marker comment\nconst markerMatch = '?' + marker;\n\n// Text used to insert a comment marker node. We use processing instruction\n// syntax because it's slightly smaller, but parses as a comment node.\nconst nodeMarker = `<${markerMatch}>`;\n\nconst d =\n NODE_MODE && global.document === undefined\n ? ({\n createTreeWalker() {\n return {};\n },\n } as unknown as Document)\n : document;\n\n// Creates a dynamic marker. We never have to search for these in the DOM.\nconst createMarker = () => d.createComment('');\n\n// https://tc39.github.io/ecma262/#sec-typeof-operator\ntype Primitive = null | undefined | boolean | number | string | symbol | bigint;\nconst isPrimitive = (value: unknown): value is Primitive =>\n value === null || (typeof value != 'object' && typeof value != 'function');\nconst isArray = Array.isArray;\nconst isIterable = (value: unknown): value is Iterable =>\n isArray(value) ||\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n typeof (value as any)?.[Symbol.iterator] === 'function';\n\nconst SPACE_CHAR = `[ \\t\\n\\f\\r]`;\nconst ATTR_VALUE_CHAR = `[^ \\t\\n\\f\\r\"'\\`<>=]`;\nconst NAME_CHAR = `[^\\\\s\"'>=/]`;\n\n// These regexes represent the five parsing states that we care about in the\n// Template's HTML scanner. They match the *end* of the state they're named\n// after.\n// Depending on the match, we transition to a new state. If there's no match,\n// we stay in the same state.\n// Note that the regexes are stateful. We utilize lastIndex and sync it\n// across the multiple regexes used. In addition to the five regexes below\n// we also dynamically create a regex to find the matching end tags for raw\n// text elements.\n\n/**\n * End of text is: `<` followed by:\n * (comment start) or (tag) or (dynamic tag binding)\n */\nconst textEndRegex = /<(?:(!--|\\/[^a-zA-Z])|(\\/?[a-zA-Z][^>\\s]*)|(\\/?$))/g;\nconst COMMENT_START = 1;\nconst TAG_NAME = 2;\nconst DYNAMIC_TAG_NAME = 3;\n\nconst commentEndRegex = /-->/g;\n/**\n * Comments not started with /g,j=/>/g,g=RegExp(`>|${O}(?:([^\\s"'>=/]+)(${O}*=${O}*(?:[^ -\f\r"'\`<>=]|("|')|))|$)`,"g"),k=/'/g,z=/"/g,Q=/^(?:script|style|textarea|title)$/i,q=s=>(t,...e)=>({_$litType$:s,strings:t,values:e}),rt=q(1),ot=q(2),c=Symbol.for("lit-noChange"),$=Symbol.for("lit-nothing"),Y=new WeakMap,v=m.createTreeWalker(m,129);function F(s,t){if(!Array.isArray(s)||!s.hasOwnProperty("raw"))throw Error("invalid template strings array");return V!==void 0?V.createHTML(t):t}var J=(s,t)=>{let e=s.length-1,i=[],n,r=t===2?"":"",o=x;for(let _=0;_"?(o=n??x,l=-1):A[1]===void 0?l=-2:(l=o.lastIndex-A[2].length,a=A[1],o=A[3]===void 0?g:A[3]==='"'?z:k):o===z||o===k?o=g:o===W||o===j?o=x:(o=g,n=void 0);let u=o===g&&s[_+1].startsWith("/>")?" ":"";r+=o===x?h+it:l>=0?(i.push(a),h.slice(0,l)+D+h.slice(l)+d+u):h+d+(l===-2?_:u)}return[F(s,r+(s[e]||"")+(t===2?"":"")),i]},E=class s{constructor({strings:t,_$litType$:e},i){let n;this.parts=[];let r=0,o=0,_=t.length-1,h=this.parts,[a,A]=J(t,e);if(this.el=s.createElement(a,i),v.currentNode=this.el.content,e===2){let l=this.el.content.firstChild;l.replaceWith(...l.childNodes)}for(;(n=v.nextNode())!==null&&h.length<_;){if(n.nodeType===1){if(n.hasAttributes())for(let l of n.getAttributeNames())if(l.endsWith(D)){let p=A[o++],u=n.getAttribute(l).split(d),b=/([.?@])?(.*)/.exec(p);h.push({type:1,index:r,name:b[2],strings:u,ctor:b[1]==="."?M:b[1]==="?"?S:b[1]==="@"?I:y}),n.removeAttribute(l)}else l.startsWith(d)&&(h.push({type:6,index:r}),n.removeAttribute(l));if(Q.test(n.tagName)){let l=n.textContent.split(d),p=l.length-1;if(p>0){n.textContent=B?B.emptyScript:"";for(let u=0;u2||i[0]!==""||i[1]!==""?(this._$AH=Array(i.length-1).fill(new String),this.strings=i):this._$AH=$}_$AI(t,e=this,i,n){let r=this.strings,o=!1;if(r===void 0)t=f(this,t,e,0),o=!N(t)||t!==this._$AH&&t!==c,o&&(this._$AH=t);else{let _=t,h,a;for(t=r[0],h=0;h(...t)=>({_$litDirective$:s,values:t}),w=class{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,i){this._$Ct=t,this._$AM=e,this._$Ci=i}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}};var{D:at}=K;var tt=s=>s.strings===void 0;var nt={},et=(s,t=nt)=>s._$AH=t;var dt=X(class extends w{constructor(s){if(super(s),s.type!==T.PROPERTY&&s.type!==T.ATTRIBUTE&&s.type!==T.BOOLEAN_ATTRIBUTE)throw Error("The `live` directive is not allowed on child or event bindings");if(!tt(s))throw Error("`live` bindings can only contain a single expression")}render(s){return s}update(s,[t]){if(t===c||t===$)return t;let e=s.element,i=s.name;if(s.type===T.PROPERTY){if(t===e[i])return c}else if(s.type===T.BOOLEAN_ATTRIBUTE){if(!!t===e.hasAttribute(i))return c}else if(s.type===T.ATTRIBUTE&&e.getAttribute(i)===t+"")return c;return et(s),t}});export{dt as live}; -/*! Bundled license information: - -lit-html/lit-html.js: -lit-html/directive.js: - (** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - *) - -lit-html/directive-helpers.js: -lit-html/directives/live.js: - (** - * @license - * Copyright 2020 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - *) -*/ -//# sourceMappingURL=live-JH2FSOVZ.js.map diff --git a/tests/staticfiles/esm/node_modules/lit/directives/live-JH2FSOVZ.js.map b/tests/staticfiles/esm/node_modules/lit/directives/live-JH2FSOVZ.js.map deleted file mode 100644 index d0a8ff7..0000000 --- a/tests/staticfiles/esm/node_modules/lit/directives/live-JH2FSOVZ.js.map +++ /dev/null @@ -1,7 +0,0 @@ -{ - "version": 3, - "sources": ["../../../../../node_modules/lit-html/src/lit-html.ts", "../../../../../node_modules/lit-html/src/directive.ts", "../../../../../node_modules/lit-html/src/directive-helpers.ts", "../../../../../node_modules/lit-html/src/directives/live.ts"], - "sourcesContent": ["/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n// IMPORTANT: these imports must be type-only\nimport type {Directive, DirectiveResult, PartInfo} from './directive.js';\n\nconst DEV_MODE = true;\nconst ENABLE_EXTRA_SECURITY_HOOKS = true;\nconst ENABLE_SHADYDOM_NOPATCH = true;\nconst NODE_MODE = false;\n\n// Allows minifiers to rename references to globalThis\nconst global = globalThis;\n\n/**\n * Contains types that are part of the unstable debug API.\n *\n * Everything in this API is not stable and may change or be removed in the future,\n * even on patch releases.\n */\n// eslint-disable-next-line @typescript-eslint/no-namespace\nexport namespace LitUnstable {\n /**\n * When Lit is running in dev mode and `window.emitLitDebugLogEvents` is true,\n * we will emit 'lit-debug' events to window, with live details about the update and render\n * lifecycle. These can be useful for writing debug tooling and visualizations.\n *\n * Please be aware that running with window.emitLitDebugLogEvents has performance overhead,\n * making certain operations that are normally very cheap (like a no-op render) much slower,\n * because we must copy data and dispatch events.\n */\n // eslint-disable-next-line @typescript-eslint/no-namespace\n export namespace DebugLog {\n export type Entry =\n | TemplatePrep\n | TemplateInstantiated\n | TemplateInstantiatedAndUpdated\n | TemplateUpdating\n | BeginRender\n | EndRender\n | CommitPartEntry\n | SetPartValue;\n export interface TemplatePrep {\n kind: 'template prep';\n template: Template;\n strings: TemplateStringsArray;\n clonableTemplate: HTMLTemplateElement;\n parts: TemplatePart[];\n }\n export interface BeginRender {\n kind: 'begin render';\n id: number;\n value: unknown;\n container: HTMLElement | DocumentFragment;\n options: RenderOptions | undefined;\n part: ChildPart | undefined;\n }\n export interface EndRender {\n kind: 'end render';\n id: number;\n value: unknown;\n container: HTMLElement | DocumentFragment;\n options: RenderOptions | undefined;\n part: ChildPart;\n }\n export interface TemplateInstantiated {\n kind: 'template instantiated';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n fragment: Node;\n parts: Array;\n values: unknown[];\n }\n export interface TemplateInstantiatedAndUpdated {\n kind: 'template instantiated and updated';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n fragment: Node;\n parts: Array;\n values: unknown[];\n }\n export interface TemplateUpdating {\n kind: 'template updating';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n parts: Array;\n values: unknown[];\n }\n export interface SetPartValue {\n kind: 'set part';\n part: Part;\n value: unknown;\n valueIndex: number;\n values: unknown[];\n templateInstance: TemplateInstance;\n }\n\n export type CommitPartEntry =\n | CommitNothingToChildEntry\n | CommitText\n | CommitNode\n | CommitAttribute\n | CommitProperty\n | CommitBooleanAttribute\n | CommitEventListener\n | CommitToElementBinding;\n\n export interface CommitNothingToChildEntry {\n kind: 'commit nothing to child';\n start: ChildNode;\n end: ChildNode | null;\n parent: Disconnectable | undefined;\n options: RenderOptions | undefined;\n }\n\n export interface CommitText {\n kind: 'commit text';\n node: Text;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitNode {\n kind: 'commit node';\n start: Node;\n parent: Disconnectable | undefined;\n value: Node;\n options: RenderOptions | undefined;\n }\n\n export interface CommitAttribute {\n kind: 'commit attribute';\n element: Element;\n name: string;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitProperty {\n kind: 'commit property';\n element: Element;\n name: string;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitBooleanAttribute {\n kind: 'commit boolean attribute';\n element: Element;\n name: string;\n value: boolean;\n options: RenderOptions | undefined;\n }\n\n export interface CommitEventListener {\n kind: 'commit event listener';\n element: Element;\n name: string;\n value: unknown;\n oldListener: unknown;\n options: RenderOptions | undefined;\n // True if we're removing the old event listener (e.g. because settings changed, or value is nothing)\n removeListener: boolean;\n // True if we're adding a new event listener (e.g. because first render, or settings changed)\n addListener: boolean;\n }\n\n export interface CommitToElementBinding {\n kind: 'commit to element binding';\n element: Element;\n value: unknown;\n options: RenderOptions | undefined;\n }\n }\n}\n\ninterface DebugLoggingWindow {\n // Even in dev mode, we generally don't want to emit these events, as that's\n // another level of cost, so only emit them when DEV_MODE is true _and_ when\n // window.emitLitDebugEvents is true.\n emitLitDebugLogEvents?: boolean;\n}\n\n/**\n * Useful for visualizing and logging insights into what the Lit template system is doing.\n *\n * Compiled out of prod mode builds.\n */\nconst debugLogEvent = DEV_MODE\n ? (event: LitUnstable.DebugLog.Entry) => {\n const shouldEmit = (global as unknown as DebugLoggingWindow)\n .emitLitDebugLogEvents;\n if (!shouldEmit) {\n return;\n }\n global.dispatchEvent(\n new CustomEvent('lit-debug', {\n detail: event,\n })\n );\n }\n : undefined;\n// Used for connecting beginRender and endRender events when there are nested\n// renders when errors are thrown preventing an endRender event from being\n// called.\nlet debugLogRenderId = 0;\n\nlet issueWarning: (code: string, warning: string) => void;\n\nif (DEV_MODE) {\n global.litIssuedWarnings ??= new Set();\n\n // Issue a warning, if we haven't already.\n issueWarning = (code: string, warning: string) => {\n warning += code\n ? ` See https://lit.dev/msg/${code} for more information.`\n : '';\n if (!global.litIssuedWarnings!.has(warning)) {\n console.warn(warning);\n global.litIssuedWarnings!.add(warning);\n }\n };\n\n issueWarning(\n 'dev-mode',\n `Lit is in dev mode. Not recommended for production!`\n );\n}\n\nconst wrap =\n ENABLE_SHADYDOM_NOPATCH &&\n global.ShadyDOM?.inUse &&\n global.ShadyDOM?.noPatch === true\n ? (global.ShadyDOM!.wrap as (node: T) => T)\n : (node: T) => node;\n\nconst trustedTypes = (global as unknown as Window).trustedTypes;\n\n/**\n * Our TrustedTypePolicy for HTML which is declared using the html template\n * tag function.\n *\n * That HTML is a developer-authored constant, and is parsed with innerHTML\n * before any untrusted expressions have been mixed in. Therefor it is\n * considered safe by construction.\n */\nconst policy = trustedTypes\n ? trustedTypes.createPolicy('lit-html', {\n createHTML: (s) => s,\n })\n : undefined;\n\n/**\n * Used to sanitize any value before it is written into the DOM. This can be\n * used to implement a security policy of allowed and disallowed values in\n * order to prevent XSS attacks.\n *\n * One way of using this callback would be to check attributes and properties\n * against a list of high risk fields, and require that values written to such\n * fields be instances of a class which is safe by construction. Closure's Safe\n * HTML Types is one implementation of this technique (\n * https://github.com/google/safe-html-types/blob/master/doc/safehtml-types.md).\n * The TrustedTypes polyfill in API-only mode could also be used as a basis\n * for this technique (https://github.com/WICG/trusted-types).\n *\n * @param node The HTML node (usually either a #text node or an Element) that\n * is being written to. Note that this is just an exemplar node, the write\n * may take place against another instance of the same class of node.\n * @param name The name of an attribute or property (for example, 'href').\n * @param type Indicates whether the write that's about to be performed will\n * be to a property or a node.\n * @return A function that will sanitize this class of writes.\n */\nexport type SanitizerFactory = (\n node: Node,\n name: string,\n type: 'property' | 'attribute'\n) => ValueSanitizer;\n\n/**\n * A function which can sanitize values that will be written to a specific kind\n * of DOM sink.\n *\n * See SanitizerFactory.\n *\n * @param value The value to sanitize. Will be the actual value passed into\n * the lit-html template literal, so this could be of any type.\n * @return The value to write to the DOM. Usually the same as the input value,\n * unless sanitization is needed.\n */\nexport type ValueSanitizer = (value: unknown) => unknown;\n\nconst identityFunction: ValueSanitizer = (value: unknown) => value;\nconst noopSanitizer: SanitizerFactory = (\n _node: Node,\n _name: string,\n _type: 'property' | 'attribute'\n) => identityFunction;\n\n/** Sets the global sanitizer factory. */\nconst setSanitizer = (newSanitizer: SanitizerFactory) => {\n if (!ENABLE_EXTRA_SECURITY_HOOKS) {\n return;\n }\n if (sanitizerFactoryInternal !== noopSanitizer) {\n throw new Error(\n `Attempted to overwrite existing lit-html security policy.` +\n ` setSanitizeDOMValueFactory should be called at most once.`\n );\n }\n sanitizerFactoryInternal = newSanitizer;\n};\n\n/**\n * Only used in internal tests, not a part of the public API.\n */\nconst _testOnlyClearSanitizerFactoryDoNotCallOrElse = () => {\n sanitizerFactoryInternal = noopSanitizer;\n};\n\nconst createSanitizer: SanitizerFactory = (node, name, type) => {\n return sanitizerFactoryInternal(node, name, type);\n};\n\n// Added to an attribute name to mark the attribute as bound so we can find\n// it easily.\nconst boundAttributeSuffix = '$lit$';\n\n// This marker is used in many syntactic positions in HTML, so it must be\n// a valid element name and attribute name. We don't support dynamic names (yet)\n// but this at least ensures that the parse tree is closer to the template\n// intention.\nconst marker = `lit$${String(Math.random()).slice(9)}$`;\n\n// String used to tell if a comment is a marker comment\nconst markerMatch = '?' + marker;\n\n// Text used to insert a comment marker node. We use processing instruction\n// syntax because it's slightly smaller, but parses as a comment node.\nconst nodeMarker = `<${markerMatch}>`;\n\nconst d =\n NODE_MODE && global.document === undefined\n ? ({\n createTreeWalker() {\n return {};\n },\n } as unknown as Document)\n : document;\n\n// Creates a dynamic marker. We never have to search for these in the DOM.\nconst createMarker = () => d.createComment('');\n\n// https://tc39.github.io/ecma262/#sec-typeof-operator\ntype Primitive = null | undefined | boolean | number | string | symbol | bigint;\nconst isPrimitive = (value: unknown): value is Primitive =>\n value === null || (typeof value != 'object' && typeof value != 'function');\nconst isArray = Array.isArray;\nconst isIterable = (value: unknown): value is Iterable =>\n isArray(value) ||\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n typeof (value as any)?.[Symbol.iterator] === 'function';\n\nconst SPACE_CHAR = `[ \\t\\n\\f\\r]`;\nconst ATTR_VALUE_CHAR = `[^ \\t\\n\\f\\r\"'\\`<>=]`;\nconst NAME_CHAR = `[^\\\\s\"'>=/]`;\n\n// These regexes represent the five parsing states that we care about in the\n// Template's HTML scanner. They match the *end* of the state they're named\n// after.\n// Depending on the match, we transition to a new state. If there's no match,\n// we stay in the same state.\n// Note that the regexes are stateful. We utilize lastIndex and sync it\n// across the multiple regexes used. In addition to the five regexes below\n// we also dynamically create a regex to find the matching end tags for raw\n// text elements.\n\n/**\n * End of text is: `<` followed by:\n * (comment start) or (tag) or (dynamic tag binding)\n */\nconst textEndRegex = /<(?:(!--|\\/[^a-zA-Z])|(\\/?[a-zA-Z][^>\\s]*)|(\\/?$))/g;\nconst COMMENT_START = 1;\nconst TAG_NAME = 2;\nconst DYNAMIC_TAG_NAME = 3;\n\nconst commentEndRegex = /-->/g;\n/**\n * Comments not started with /g,Y=/>/g,u=RegExp(`>|${L}(?:([^\\s"'>=/]+)(${L}*=${L}*(?:[^ -\f\r"'\`<>=]|("|')|))|$)`,"g"),q=/'/g,F=/"/g,tt=/^(?:script|style|textarea|title)$/i,et=s=>(t,...e)=>({_$litType$:s,strings:t,values:e}),At=et(1),_t=et(2),H=Symbol.for("lit-noChange"),$=Symbol.for("lit-nothing"),J=new WeakMap,v=f.createTreeWalker(f,129);function st(s,t){if(!Array.isArray(s)||!s.hasOwnProperty("raw"))throw Error("invalid template strings array");return Z!==void 0?Z.createHTML(t):t}var it=(s,t)=>{let e=s.length-1,i=[],n,r=t===2?"":"",o=y;for(let A=0;A"?(o=n??y,l=-1):c[1]===void 0?l=-2:(l=o.lastIndex-c[2].length,a=c[1],o=c[3]===void 0?u:c[3]==='"'?F:q):o===F||o===q?o=u:o===Q||o===Y?o=y:(o=u,n=void 0);let p=o===u&&s[A+1].startsWith("/>")?" ":"";r+=o===y?h+ht:l>=0?(i.push(a),h.slice(0,l)+O+h.slice(l)+d+p):h+d+(l===-2?A:p)}return[st(s,r+(s[e]||"")+(t===2?"":"")),i]},N=class s{constructor({strings:t,_$litType$:e},i){let n;this.parts=[];let r=0,o=0,A=t.length-1,h=this.parts,[a,c]=it(t,e);if(this.el=s.createElement(a,i),v.currentNode=this.el.content,e===2){let l=this.el.content.firstChild;l.replaceWith(...l.childNodes)}for(;(n=v.nextNode())!==null&&h.length0){n.textContent=P?P.emptyScript:"";for(let p=0;p<_;p++)n.append(l[p],S()),v.nextNode(),h.push({type:2,index:++r});n.append(l[_],S())}}}else if(n.nodeType===8)if(n.data===V)h.push({type:2,index:r});else{let l=-1;for(;(l=n.data.indexOf(d,l+1))!==-1;)h.push({type:7,index:r}),l+=d.length-1}r++}}static createElement(t,e){let i=f.createElement("template");return i.innerHTML=t,i}};function g(s,t,e=s,i){if(t===H)return t;let n=i!==void 0?e._$Co?.[i]:e._$Cl,r=T(t)?void 0:t._$litDirective$;return n?.constructor!==r&&(n?._$AO?.(!1),r===void 0?n=void 0:(n=new r(s),n._$AT(s,e,i)),i!==void 0?(e._$Co??(e._$Co=[]))[i]=n:e._$Cl=n),n!==void 0&&(t=g(s,n._$AS(s,t.values),n,i)),t}var w=class{constructor(t,e){this._$AV=[],this._$AN=void 0,this._$AD=t,this._$AM=e}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(t){let{el:{content:e},parts:i}=this._$AD,n=(t?.creationScope??f).importNode(e,!0);v.currentNode=n;let r=v.nextNode(),o=0,A=0,h=i[0];for(;h!==void 0;){if(o===h.index){let a;h.type===2?a=new C(r,r.nextSibling,this,t):h.type===1?a=new h.ctor(r,h.name,h.strings,this,t):h.type===6&&(a=new R(r,this,t)),this._$AV.push(a),h=i[++A]}o!==h?.index&&(r=v.nextNode(),o++)}return v.currentNode=f,n}p(t){let e=0;for(let i of this._$AV)i!==void 0&&(i.strings!==void 0?(i._$AI(t,i,e),e+=i.strings.length-2):i._$AI(t[e])),e++}},C=class s{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(t,e,i,n){this.type=2,this._$AH=$,this._$AN=void 0,this._$AA=t,this._$AB=e,this._$AM=i,this.options=n,this._$Cv=n?.isConnected??!0}get parentNode(){let t=this._$AA.parentNode,e=this._$AM;return e!==void 0&&t?.nodeType===11&&(t=e.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,e=this){t=g(this,t,e),T(t)?t===$||t==null||t===""?(this._$AH!==$&&this._$AR(),this._$AH=$):t!==this._$AH&&t!==H&&this._(t):t._$litType$!==void 0?this.g(t):t.nodeType!==void 0?this.$(t):X(t)?this.T(t):this._(t)}k(t){return this._$AA.parentNode.insertBefore(t,this._$AB)}$(t){this._$AH!==t&&(this._$AR(),this._$AH=this.k(t))}_(t){this._$AH!==$&&T(this._$AH)?this._$AA.nextSibling.data=t:this.$(f.createTextNode(t)),this._$AH=t}g(t){let{values:e,_$litType$:i}=t,n=typeof i=="number"?this._$AC(t):(i.el===void 0&&(i.el=N.createElement(st(i.h,i.h[0]),this.options)),i);if(this._$AH?._$AD===n)this._$AH.p(e);else{let r=new w(n,this),o=r.u(this.options);r.p(e),this.$(o),this._$AH=r}}_$AC(t){let e=J.get(t.strings);return e===void 0&&J.set(t.strings,e=new N(t)),e}T(t){K(this._$AH)||(this._$AH=[],this._$AR());let e=this._$AH,i,n=0;for(let r of t)n===e.length?e.push(i=new s(this.k(S()),this.k(S()),this,this.options)):i=e[n],i._$AI(r),n++;n2||i[0]!==""||i[1]!==""?(this._$AH=Array(i.length-1).fill(new String),this.strings=i):this._$AH=$}_$AI(t,e=this,i,n){let r=this.strings,o=!1;if(r===void 0)t=g(this,t,e,0),o=!T(t)||t!==this._$AH&&t!==H,o&&(this._$AH=t);else{let A=t,h,a;for(t=r[0],h=0;hs.strings===void 0;var k={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},W=s=>(...t)=>({_$litDirective$:s,values:t}),b=class{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,i){this._$Ct=t,this._$AM=e,this._$Ci=i}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}};var M=(s,t)=>{let e=s._$AN;if(e===void 0)return!1;for(let i of e)i._$AO?.(t,!1),M(i,t);return!0},U=s=>{let t,e;do{if((t=s._$AM)===void 0)break;e=t._$AN,e.delete(s),s=t}while(e?.size===0)},ot=s=>{for(let t;t=s._$AM;s=t){let e=t._$AN;if(e===void 0)t._$AN=e=new Set;else if(e.has(s))break;e.add(s),ct(t)}};function $t(s){this._$AN!==void 0?(U(this),this._$AM=s,ot(this)):this._$AM=s}function at(s,t=!1,e=0){let i=this._$AH,n=this._$AN;if(n!==void 0&&n.size!==0)if(t)if(Array.isArray(i))for(let r=e;r{s.type==k.CHILD&&(s._$AP??(s._$AP=at),s._$AQ??(s._$AQ=$t))},G=class extends b{constructor(){super(...arguments),this._$AN=void 0}_$AT(t,e,i){super._$AT(t,e,i),ot(this),this.isConnected=t._$AU}_$AO(t,e=!0){t!==this.isConnected&&(this.isConnected=t,t?this.reconnected?.():this.disconnected?.()),e&&(M(this,t),U(this))}setValue(t){if(rt(this._$Ct))this._$Ct._$AI(t,this);else{let e=[...this._$Ct._$AH];e[this._$Ci]=t,this._$Ct._$AI(e,this,0)}}disconnected(){}reconnected(){}};var Ct=()=>new z,z=class{},j=new WeakMap,bt=W(class extends G{render(s){return $}update(s,[t]){let e=t!==this.G;return e&&this.G!==void 0&&this.ot(void 0),(e||this.rt!==this.lt)&&(this.G=t,this.ct=s.options?.host,this.ot(this.lt=s.element)),$}ot(s){if(typeof this.G=="function"){let t=this.ct??globalThis,e=j.get(t);e===void 0&&(e=new WeakMap,j.set(t,e)),e.get(this.G)!==void 0&&this.G.call(this.ct,void 0),e.set(this.G,s),s!==void 0&&this.G.call(this.ct,s)}else this.G.value=s}get rt(){return typeof this.G=="function"?j.get(this.ct??globalThis)?.get(this.G):this.G?.value}disconnected(){this.rt===this.lt&&this.ot(void 0)}reconnected(){this.ot(this.lt)}});export{Ct as createRef,bt as ref}; -/*! Bundled license information: - -lit-html/lit-html.js: -lit-html/directive.js: -lit-html/async-directive.js: - (** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - *) - -lit-html/directive-helpers.js: -lit-html/directives/ref.js: - (** - * @license - * Copyright 2020 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - *) -*/ -//# sourceMappingURL=ref-EUAA3XLK.js.map diff --git a/tests/staticfiles/esm/node_modules/lit/directives/ref-EUAA3XLK.js.map b/tests/staticfiles/esm/node_modules/lit/directives/ref-EUAA3XLK.js.map deleted file mode 100644 index cc10c92..0000000 --- a/tests/staticfiles/esm/node_modules/lit/directives/ref-EUAA3XLK.js.map +++ /dev/null @@ -1,7 +0,0 @@ -{ - "version": 3, - "sources": ["../../../../../node_modules/lit-html/src/lit-html.ts", "../../../../../node_modules/lit-html/src/directive-helpers.ts", "../../../../../node_modules/lit-html/src/directive.ts", "../../../../../node_modules/lit-html/src/async-directive.ts", "../../../../../node_modules/lit-html/src/directives/ref.ts"], - "sourcesContent": ["/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n// IMPORTANT: these imports must be type-only\nimport type {Directive, DirectiveResult, PartInfo} from './directive.js';\n\nconst DEV_MODE = true;\nconst ENABLE_EXTRA_SECURITY_HOOKS = true;\nconst ENABLE_SHADYDOM_NOPATCH = true;\nconst NODE_MODE = false;\n\n// Allows minifiers to rename references to globalThis\nconst global = globalThis;\n\n/**\n * Contains types that are part of the unstable debug API.\n *\n * Everything in this API is not stable and may change or be removed in the future,\n * even on patch releases.\n */\n// eslint-disable-next-line @typescript-eslint/no-namespace\nexport namespace LitUnstable {\n /**\n * When Lit is running in dev mode and `window.emitLitDebugLogEvents` is true,\n * we will emit 'lit-debug' events to window, with live details about the update and render\n * lifecycle. These can be useful for writing debug tooling and visualizations.\n *\n * Please be aware that running with window.emitLitDebugLogEvents has performance overhead,\n * making certain operations that are normally very cheap (like a no-op render) much slower,\n * because we must copy data and dispatch events.\n */\n // eslint-disable-next-line @typescript-eslint/no-namespace\n export namespace DebugLog {\n export type Entry =\n | TemplatePrep\n | TemplateInstantiated\n | TemplateInstantiatedAndUpdated\n | TemplateUpdating\n | BeginRender\n | EndRender\n | CommitPartEntry\n | SetPartValue;\n export interface TemplatePrep {\n kind: 'template prep';\n template: Template;\n strings: TemplateStringsArray;\n clonableTemplate: HTMLTemplateElement;\n parts: TemplatePart[];\n }\n export interface BeginRender {\n kind: 'begin render';\n id: number;\n value: unknown;\n container: HTMLElement | DocumentFragment;\n options: RenderOptions | undefined;\n part: ChildPart | undefined;\n }\n export interface EndRender {\n kind: 'end render';\n id: number;\n value: unknown;\n container: HTMLElement | DocumentFragment;\n options: RenderOptions | undefined;\n part: ChildPart;\n }\n export interface TemplateInstantiated {\n kind: 'template instantiated';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n fragment: Node;\n parts: Array;\n values: unknown[];\n }\n export interface TemplateInstantiatedAndUpdated {\n kind: 'template instantiated and updated';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n fragment: Node;\n parts: Array;\n values: unknown[];\n }\n export interface TemplateUpdating {\n kind: 'template updating';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n parts: Array;\n values: unknown[];\n }\n export interface SetPartValue {\n kind: 'set part';\n part: Part;\n value: unknown;\n valueIndex: number;\n values: unknown[];\n templateInstance: TemplateInstance;\n }\n\n export type CommitPartEntry =\n | CommitNothingToChildEntry\n | CommitText\n | CommitNode\n | CommitAttribute\n | CommitProperty\n | CommitBooleanAttribute\n | CommitEventListener\n | CommitToElementBinding;\n\n export interface CommitNothingToChildEntry {\n kind: 'commit nothing to child';\n start: ChildNode;\n end: ChildNode | null;\n parent: Disconnectable | undefined;\n options: RenderOptions | undefined;\n }\n\n export interface CommitText {\n kind: 'commit text';\n node: Text;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitNode {\n kind: 'commit node';\n start: Node;\n parent: Disconnectable | undefined;\n value: Node;\n options: RenderOptions | undefined;\n }\n\n export interface CommitAttribute {\n kind: 'commit attribute';\n element: Element;\n name: string;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitProperty {\n kind: 'commit property';\n element: Element;\n name: string;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitBooleanAttribute {\n kind: 'commit boolean attribute';\n element: Element;\n name: string;\n value: boolean;\n options: RenderOptions | undefined;\n }\n\n export interface CommitEventListener {\n kind: 'commit event listener';\n element: Element;\n name: string;\n value: unknown;\n oldListener: unknown;\n options: RenderOptions | undefined;\n // True if we're removing the old event listener (e.g. because settings changed, or value is nothing)\n removeListener: boolean;\n // True if we're adding a new event listener (e.g. because first render, or settings changed)\n addListener: boolean;\n }\n\n export interface CommitToElementBinding {\n kind: 'commit to element binding';\n element: Element;\n value: unknown;\n options: RenderOptions | undefined;\n }\n }\n}\n\ninterface DebugLoggingWindow {\n // Even in dev mode, we generally don't want to emit these events, as that's\n // another level of cost, so only emit them when DEV_MODE is true _and_ when\n // window.emitLitDebugEvents is true.\n emitLitDebugLogEvents?: boolean;\n}\n\n/**\n * Useful for visualizing and logging insights into what the Lit template system is doing.\n *\n * Compiled out of prod mode builds.\n */\nconst debugLogEvent = DEV_MODE\n ? (event: LitUnstable.DebugLog.Entry) => {\n const shouldEmit = (global as unknown as DebugLoggingWindow)\n .emitLitDebugLogEvents;\n if (!shouldEmit) {\n return;\n }\n global.dispatchEvent(\n new CustomEvent('lit-debug', {\n detail: event,\n })\n );\n }\n : undefined;\n// Used for connecting beginRender and endRender events when there are nested\n// renders when errors are thrown preventing an endRender event from being\n// called.\nlet debugLogRenderId = 0;\n\nlet issueWarning: (code: string, warning: string) => void;\n\nif (DEV_MODE) {\n global.litIssuedWarnings ??= new Set();\n\n // Issue a warning, if we haven't already.\n issueWarning = (code: string, warning: string) => {\n warning += code\n ? ` See https://lit.dev/msg/${code} for more information.`\n : '';\n if (!global.litIssuedWarnings!.has(warning)) {\n console.warn(warning);\n global.litIssuedWarnings!.add(warning);\n }\n };\n\n issueWarning(\n 'dev-mode',\n `Lit is in dev mode. Not recommended for production!`\n );\n}\n\nconst wrap =\n ENABLE_SHADYDOM_NOPATCH &&\n global.ShadyDOM?.inUse &&\n global.ShadyDOM?.noPatch === true\n ? (global.ShadyDOM!.wrap as (node: T) => T)\n : (node: T) => node;\n\nconst trustedTypes = (global as unknown as Window).trustedTypes;\n\n/**\n * Our TrustedTypePolicy for HTML which is declared using the html template\n * tag function.\n *\n * That HTML is a developer-authored constant, and is parsed with innerHTML\n * before any untrusted expressions have been mixed in. Therefor it is\n * considered safe by construction.\n */\nconst policy = trustedTypes\n ? trustedTypes.createPolicy('lit-html', {\n createHTML: (s) => s,\n })\n : undefined;\n\n/**\n * Used to sanitize any value before it is written into the DOM. This can be\n * used to implement a security policy of allowed and disallowed values in\n * order to prevent XSS attacks.\n *\n * One way of using this callback would be to check attributes and properties\n * against a list of high risk fields, and require that values written to such\n * fields be instances of a class which is safe by construction. Closure's Safe\n * HTML Types is one implementation of this technique (\n * https://github.com/google/safe-html-types/blob/master/doc/safehtml-types.md).\n * The TrustedTypes polyfill in API-only mode could also be used as a basis\n * for this technique (https://github.com/WICG/trusted-types).\n *\n * @param node The HTML node (usually either a #text node or an Element) that\n * is being written to. Note that this is just an exemplar node, the write\n * may take place against another instance of the same class of node.\n * @param name The name of an attribute or property (for example, 'href').\n * @param type Indicates whether the write that's about to be performed will\n * be to a property or a node.\n * @return A function that will sanitize this class of writes.\n */\nexport type SanitizerFactory = (\n node: Node,\n name: string,\n type: 'property' | 'attribute'\n) => ValueSanitizer;\n\n/**\n * A function which can sanitize values that will be written to a specific kind\n * of DOM sink.\n *\n * See SanitizerFactory.\n *\n * @param value The value to sanitize. Will be the actual value passed into\n * the lit-html template literal, so this could be of any type.\n * @return The value to write to the DOM. Usually the same as the input value,\n * unless sanitization is needed.\n */\nexport type ValueSanitizer = (value: unknown) => unknown;\n\nconst identityFunction: ValueSanitizer = (value: unknown) => value;\nconst noopSanitizer: SanitizerFactory = (\n _node: Node,\n _name: string,\n _type: 'property' | 'attribute'\n) => identityFunction;\n\n/** Sets the global sanitizer factory. */\nconst setSanitizer = (newSanitizer: SanitizerFactory) => {\n if (!ENABLE_EXTRA_SECURITY_HOOKS) {\n return;\n }\n if (sanitizerFactoryInternal !== noopSanitizer) {\n throw new Error(\n `Attempted to overwrite existing lit-html security policy.` +\n ` setSanitizeDOMValueFactory should be called at most once.`\n );\n }\n sanitizerFactoryInternal = newSanitizer;\n};\n\n/**\n * Only used in internal tests, not a part of the public API.\n */\nconst _testOnlyClearSanitizerFactoryDoNotCallOrElse = () => {\n sanitizerFactoryInternal = noopSanitizer;\n};\n\nconst createSanitizer: SanitizerFactory = (node, name, type) => {\n return sanitizerFactoryInternal(node, name, type);\n};\n\n// Added to an attribute name to mark the attribute as bound so we can find\n// it easily.\nconst boundAttributeSuffix = '$lit$';\n\n// This marker is used in many syntactic positions in HTML, so it must be\n// a valid element name and attribute name. We don't support dynamic names (yet)\n// but this at least ensures that the parse tree is closer to the template\n// intention.\nconst marker = `lit$${String(Math.random()).slice(9)}$`;\n\n// String used to tell if a comment is a marker comment\nconst markerMatch = '?' + marker;\n\n// Text used to insert a comment marker node. We use processing instruction\n// syntax because it's slightly smaller, but parses as a comment node.\nconst nodeMarker = `<${markerMatch}>`;\n\nconst d =\n NODE_MODE && global.document === undefined\n ? ({\n createTreeWalker() {\n return {};\n },\n } as unknown as Document)\n : document;\n\n// Creates a dynamic marker. We never have to search for these in the DOM.\nconst createMarker = () => d.createComment('');\n\n// https://tc39.github.io/ecma262/#sec-typeof-operator\ntype Primitive = null | undefined | boolean | number | string | symbol | bigint;\nconst isPrimitive = (value: unknown): value is Primitive =>\n value === null || (typeof value != 'object' && typeof value != 'function');\nconst isArray = Array.isArray;\nconst isIterable = (value: unknown): value is Iterable =>\n isArray(value) ||\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n typeof (value as any)?.[Symbol.iterator] === 'function';\n\nconst SPACE_CHAR = `[ \\t\\n\\f\\r]`;\nconst ATTR_VALUE_CHAR = `[^ \\t\\n\\f\\r\"'\\`<>=]`;\nconst NAME_CHAR = `[^\\\\s\"'>=/]`;\n\n// These regexes represent the five parsing states that we care about in the\n// Template's HTML scanner. They match the *end* of the state they're named\n// after.\n// Depending on the match, we transition to a new state. If there's no match,\n// we stay in the same state.\n// Note that the regexes are stateful. We utilize lastIndex and sync it\n// across the multiple regexes used. In addition to the five regexes below\n// we also dynamically create a regex to find the matching end tags for raw\n// text elements.\n\n/**\n * End of text is: `<` followed by:\n * (comment start) or (tag) or (dynamic tag binding)\n */\nconst textEndRegex = /<(?:(!--|\\/[^a-zA-Z])|(\\/?[a-zA-Z][^>\\s]*)|(\\/?$))/g;\nconst COMMENT_START = 1;\nconst TAG_NAME = 2;\nconst DYNAMIC_TAG_NAME = 3;\n\nconst commentEndRegex = /-->/g;\n/**\n * Comments not started with /g,Q=/>/g,g=RegExp(`>|${k}(?:([^\\s"'>=/]+)(${k}*=${k}*(?:[^ -\f\r"'\`<>=]|("|')|))|$)`,"g"),Y=/'/g,q=/"/g,X=/^(?:script|style|textarea|title)$/i,tt=n=>(t,...e)=>({_$litType$:n,strings:t,values:e}),dt=tt(1),pt=tt(2),x=Symbol.for("lit-noChange"),p=Symbol.for("lit-nothing"),F=new WeakMap,m=y.createTreeWalker(y,129);function et(n,t){if(!Array.isArray(n)||!n.hasOwnProperty("raw"))throw Error("invalid template strings array");return Z!==void 0?Z.createHTML(t):t}var st=(n,t)=>{let e=n.length-1,i=[],s,o=t===2?"":"",r=N;for(let $=0;$"?(r=s??N,h=-1):_[1]===void 0?h=-2:(h=r.lastIndex-_[2].length,c=_[1],r=_[3]===void 0?g:_[3]==='"'?q:Y):r===q||r===Y?r=g:r===G||r===Q?r=N:(r=g,s=void 0);let a=r===g&&n[$+1].startsWith("/>")?" ":"";o+=r===N?l+$t:h>=0?(i.push(c),l.slice(0,h)+j+l.slice(h)+f+a):l+f+(h===-2?$:a)}return[et(n,o+(n[e]||"")+(t===2?"":"")),i]},E=class n{constructor({strings:t,_$litType$:e},i){let s;this.parts=[];let o=0,r=0,$=t.length-1,l=this.parts,[c,_]=st(t,e);if(this.el=n.createElement(c,i),m.currentNode=this.el.content,e===2){let h=this.el.content.firstChild;h.replaceWith(...h.childNodes)}for(;(s=m.nextNode())!==null&&l.length<$;){if(s.nodeType===1){if(s.hasAttributes())for(let h of s.getAttributeNames())if(h.endsWith(j)){let A=_[r++],a=s.getAttribute(h).split(f),d=/([.?@])?(.*)/.exec(A);l.push({type:1,index:o,name:d[2],strings:a,ctor:d[1]==="."?I:d[1]==="?"?R:d[1]==="@"?D:T}),s.removeAttribute(h)}else h.startsWith(f)&&(l.push({type:6,index:o}),s.removeAttribute(h));if(X.test(s.tagName)){let h=s.textContent.split(f),A=h.length-1;if(A>0){s.textContent=B?B.emptyScript:"";for(let a=0;a2||i[0]!==""||i[1]!==""?(this._$AH=Array(i.length-1).fill(new String),this.strings=i):this._$AH=p}_$AI(t,e=this,i,s){let o=this.strings,r=!1;if(o===void 0)t=H(this,t,e,0),r=!P(t)||t!==this._$AH&&t!==x,r&&(this._$AH=t);else{let $=t,l,c;for(t=o[0],l=0;l(...t)=>({_$litDirective$:n,values:t}),L=class{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,i){this._$Ct=t,this._$AM=e,this._$Ci=i}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}};var{D:At}=it;var ot=()=>document.createComment(""),C=(n,t,e)=>{let i=n._$AA.parentNode,s=t===void 0?n._$AB:t._$AA;if(e===void 0){let o=i.insertBefore(ot(),s),r=i.insertBefore(ot(),s);e=new At(o,r,n,n.options)}else{let o=e._$AB.nextSibling,r=e._$AM,$=r!==n;if($){let l;e._$AQ?.(n),e._$AM=n,e._$AP!==void 0&&(l=n._$AU)!==r._$AU&&e._$AP(l)}if(o!==s||$){let l=e._$AA;for(;l!==o;){let c=l.nextSibling;i.insertBefore(l,s),l=c}}}return e},v=(n,t,e=n)=>(n._$AI(t,e),n),_t={},lt=(n,t=_t)=>n._$AH=t,ht=n=>n._$AH,V=n=>{n._$AP?.(!1,!0);let t=n._$AA,e=n._$AB.nextSibling;for(;t!==e;){let i=t.nextSibling;t.remove(),t=i}};var at=(n,t,e)=>{let i=new Map;for(let s=t;s<=e;s++)i.set(n[s],s);return i},Ht=rt(class extends L{constructor(n){if(super(n),n.type!==nt.CHILD)throw Error("repeat() can only be used in text expressions")}ht(n,t,e){let i;e===void 0?e=t:t!==void 0&&(i=t);let s=[],o=[],r=0;for(let $ of n)s[r]=i?i($,r):r,o[r]=e($,r),r++;return{values:o,keys:s}}render(n,t,e){return this.ht(n,t,e).values}update(n,[t,e,i]){let s=ht(n),{values:o,keys:r}=this.ht(t,e,i);if(!Array.isArray(s))return this.dt=r,o;let $=this.dt??(this.dt=[]),l=[],c,_,h=0,A=s.length-1,a=0,d=o.length-1;for(;h<=A&&a<=d;)if(s[h]===null)h++;else if(s[A]===null)A--;else if($[h]===r[a])l[a]=v(s[h],o[a]),h++,a++;else if($[A]===r[d])l[d]=v(s[A],o[d]),A--,d--;else if($[h]===r[d])l[d]=v(s[h],o[d]),C(n,l[d+1],s[h]),h++,d--;else if($[A]===r[a])l[a]=v(s[A],o[a]),C(n,s[h],s[A]),A--,a++;else if(c===void 0&&(c=at(r,a,d),_=at($,h,A)),c.has($[h]))if(c.has($[A])){let u=_.get(r[a]),O=u!==void 0?s[u]:null;if(O===null){let z=C(n,s[h]);v(z,o[a]),l[a]=z}else l[a]=v(O,o[a]),C(n,s[h],O),s[u]=null;a++}else V(s[A]),A--;else V(s[h]),h++;for(;a<=d;){let u=C(n,l[d+1]);v(u,o[a]),l[a++]=u}for(;h<=A;){let u=s[h++];u!==null&&V(u)}return this.dt=r,lt(n,l),x}});export{Ht as repeat}; -/*! Bundled license information: - -lit-html/lit-html.js: -lit-html/directive.js: -lit-html/directives/repeat.js: - (** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - *) - -lit-html/directive-helpers.js: - (** - * @license - * Copyright 2020 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - *) -*/ -//# sourceMappingURL=repeat-HKY4ZNKW.js.map diff --git a/tests/staticfiles/esm/node_modules/lit/directives/repeat-HKY4ZNKW.js.map b/tests/staticfiles/esm/node_modules/lit/directives/repeat-HKY4ZNKW.js.map deleted file mode 100644 index 3373eda..0000000 --- a/tests/staticfiles/esm/node_modules/lit/directives/repeat-HKY4ZNKW.js.map +++ /dev/null @@ -1,7 +0,0 @@ -{ - "version": 3, - "sources": ["../../../../../node_modules/lit-html/src/lit-html.ts", "../../../../../node_modules/lit-html/src/directive.ts", "../../../../../node_modules/lit-html/src/directive-helpers.ts", "../../../../../node_modules/lit-html/src/directives/repeat.ts"], - "sourcesContent": ["/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n// IMPORTANT: these imports must be type-only\nimport type {Directive, DirectiveResult, PartInfo} from './directive.js';\n\nconst DEV_MODE = true;\nconst ENABLE_EXTRA_SECURITY_HOOKS = true;\nconst ENABLE_SHADYDOM_NOPATCH = true;\nconst NODE_MODE = false;\n\n// Allows minifiers to rename references to globalThis\nconst global = globalThis;\n\n/**\n * Contains types that are part of the unstable debug API.\n *\n * Everything in this API is not stable and may change or be removed in the future,\n * even on patch releases.\n */\n// eslint-disable-next-line @typescript-eslint/no-namespace\nexport namespace LitUnstable {\n /**\n * When Lit is running in dev mode and `window.emitLitDebugLogEvents` is true,\n * we will emit 'lit-debug' events to window, with live details about the update and render\n * lifecycle. These can be useful for writing debug tooling and visualizations.\n *\n * Please be aware that running with window.emitLitDebugLogEvents has performance overhead,\n * making certain operations that are normally very cheap (like a no-op render) much slower,\n * because we must copy data and dispatch events.\n */\n // eslint-disable-next-line @typescript-eslint/no-namespace\n export namespace DebugLog {\n export type Entry =\n | TemplatePrep\n | TemplateInstantiated\n | TemplateInstantiatedAndUpdated\n | TemplateUpdating\n | BeginRender\n | EndRender\n | CommitPartEntry\n | SetPartValue;\n export interface TemplatePrep {\n kind: 'template prep';\n template: Template;\n strings: TemplateStringsArray;\n clonableTemplate: HTMLTemplateElement;\n parts: TemplatePart[];\n }\n export interface BeginRender {\n kind: 'begin render';\n id: number;\n value: unknown;\n container: HTMLElement | DocumentFragment;\n options: RenderOptions | undefined;\n part: ChildPart | undefined;\n }\n export interface EndRender {\n kind: 'end render';\n id: number;\n value: unknown;\n container: HTMLElement | DocumentFragment;\n options: RenderOptions | undefined;\n part: ChildPart;\n }\n export interface TemplateInstantiated {\n kind: 'template instantiated';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n fragment: Node;\n parts: Array;\n values: unknown[];\n }\n export interface TemplateInstantiatedAndUpdated {\n kind: 'template instantiated and updated';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n fragment: Node;\n parts: Array;\n values: unknown[];\n }\n export interface TemplateUpdating {\n kind: 'template updating';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n parts: Array;\n values: unknown[];\n }\n export interface SetPartValue {\n kind: 'set part';\n part: Part;\n value: unknown;\n valueIndex: number;\n values: unknown[];\n templateInstance: TemplateInstance;\n }\n\n export type CommitPartEntry =\n | CommitNothingToChildEntry\n | CommitText\n | CommitNode\n | CommitAttribute\n | CommitProperty\n | CommitBooleanAttribute\n | CommitEventListener\n | CommitToElementBinding;\n\n export interface CommitNothingToChildEntry {\n kind: 'commit nothing to child';\n start: ChildNode;\n end: ChildNode | null;\n parent: Disconnectable | undefined;\n options: RenderOptions | undefined;\n }\n\n export interface CommitText {\n kind: 'commit text';\n node: Text;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitNode {\n kind: 'commit node';\n start: Node;\n parent: Disconnectable | undefined;\n value: Node;\n options: RenderOptions | undefined;\n }\n\n export interface CommitAttribute {\n kind: 'commit attribute';\n element: Element;\n name: string;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitProperty {\n kind: 'commit property';\n element: Element;\n name: string;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitBooleanAttribute {\n kind: 'commit boolean attribute';\n element: Element;\n name: string;\n value: boolean;\n options: RenderOptions | undefined;\n }\n\n export interface CommitEventListener {\n kind: 'commit event listener';\n element: Element;\n name: string;\n value: unknown;\n oldListener: unknown;\n options: RenderOptions | undefined;\n // True if we're removing the old event listener (e.g. because settings changed, or value is nothing)\n removeListener: boolean;\n // True if we're adding a new event listener (e.g. because first render, or settings changed)\n addListener: boolean;\n }\n\n export interface CommitToElementBinding {\n kind: 'commit to element binding';\n element: Element;\n value: unknown;\n options: RenderOptions | undefined;\n }\n }\n}\n\ninterface DebugLoggingWindow {\n // Even in dev mode, we generally don't want to emit these events, as that's\n // another level of cost, so only emit them when DEV_MODE is true _and_ when\n // window.emitLitDebugEvents is true.\n emitLitDebugLogEvents?: boolean;\n}\n\n/**\n * Useful for visualizing and logging insights into what the Lit template system is doing.\n *\n * Compiled out of prod mode builds.\n */\nconst debugLogEvent = DEV_MODE\n ? (event: LitUnstable.DebugLog.Entry) => {\n const shouldEmit = (global as unknown as DebugLoggingWindow)\n .emitLitDebugLogEvents;\n if (!shouldEmit) {\n return;\n }\n global.dispatchEvent(\n new CustomEvent('lit-debug', {\n detail: event,\n })\n );\n }\n : undefined;\n// Used for connecting beginRender and endRender events when there are nested\n// renders when errors are thrown preventing an endRender event from being\n// called.\nlet debugLogRenderId = 0;\n\nlet issueWarning: (code: string, warning: string) => void;\n\nif (DEV_MODE) {\n global.litIssuedWarnings ??= new Set();\n\n // Issue a warning, if we haven't already.\n issueWarning = (code: string, warning: string) => {\n warning += code\n ? ` See https://lit.dev/msg/${code} for more information.`\n : '';\n if (!global.litIssuedWarnings!.has(warning)) {\n console.warn(warning);\n global.litIssuedWarnings!.add(warning);\n }\n };\n\n issueWarning(\n 'dev-mode',\n `Lit is in dev mode. Not recommended for production!`\n );\n}\n\nconst wrap =\n ENABLE_SHADYDOM_NOPATCH &&\n global.ShadyDOM?.inUse &&\n global.ShadyDOM?.noPatch === true\n ? (global.ShadyDOM!.wrap as (node: T) => T)\n : (node: T) => node;\n\nconst trustedTypes = (global as unknown as Window).trustedTypes;\n\n/**\n * Our TrustedTypePolicy for HTML which is declared using the html template\n * tag function.\n *\n * That HTML is a developer-authored constant, and is parsed with innerHTML\n * before any untrusted expressions have been mixed in. Therefor it is\n * considered safe by construction.\n */\nconst policy = trustedTypes\n ? trustedTypes.createPolicy('lit-html', {\n createHTML: (s) => s,\n })\n : undefined;\n\n/**\n * Used to sanitize any value before it is written into the DOM. This can be\n * used to implement a security policy of allowed and disallowed values in\n * order to prevent XSS attacks.\n *\n * One way of using this callback would be to check attributes and properties\n * against a list of high risk fields, and require that values written to such\n * fields be instances of a class which is safe by construction. Closure's Safe\n * HTML Types is one implementation of this technique (\n * https://github.com/google/safe-html-types/blob/master/doc/safehtml-types.md).\n * The TrustedTypes polyfill in API-only mode could also be used as a basis\n * for this technique (https://github.com/WICG/trusted-types).\n *\n * @param node The HTML node (usually either a #text node or an Element) that\n * is being written to. Note that this is just an exemplar node, the write\n * may take place against another instance of the same class of node.\n * @param name The name of an attribute or property (for example, 'href').\n * @param type Indicates whether the write that's about to be performed will\n * be to a property or a node.\n * @return A function that will sanitize this class of writes.\n */\nexport type SanitizerFactory = (\n node: Node,\n name: string,\n type: 'property' | 'attribute'\n) => ValueSanitizer;\n\n/**\n * A function which can sanitize values that will be written to a specific kind\n * of DOM sink.\n *\n * See SanitizerFactory.\n *\n * @param value The value to sanitize. Will be the actual value passed into\n * the lit-html template literal, so this could be of any type.\n * @return The value to write to the DOM. Usually the same as the input value,\n * unless sanitization is needed.\n */\nexport type ValueSanitizer = (value: unknown) => unknown;\n\nconst identityFunction: ValueSanitizer = (value: unknown) => value;\nconst noopSanitizer: SanitizerFactory = (\n _node: Node,\n _name: string,\n _type: 'property' | 'attribute'\n) => identityFunction;\n\n/** Sets the global sanitizer factory. */\nconst setSanitizer = (newSanitizer: SanitizerFactory) => {\n if (!ENABLE_EXTRA_SECURITY_HOOKS) {\n return;\n }\n if (sanitizerFactoryInternal !== noopSanitizer) {\n throw new Error(\n `Attempted to overwrite existing lit-html security policy.` +\n ` setSanitizeDOMValueFactory should be called at most once.`\n );\n }\n sanitizerFactoryInternal = newSanitizer;\n};\n\n/**\n * Only used in internal tests, not a part of the public API.\n */\nconst _testOnlyClearSanitizerFactoryDoNotCallOrElse = () => {\n sanitizerFactoryInternal = noopSanitizer;\n};\n\nconst createSanitizer: SanitizerFactory = (node, name, type) => {\n return sanitizerFactoryInternal(node, name, type);\n};\n\n// Added to an attribute name to mark the attribute as bound so we can find\n// it easily.\nconst boundAttributeSuffix = '$lit$';\n\n// This marker is used in many syntactic positions in HTML, so it must be\n// a valid element name and attribute name. We don't support dynamic names (yet)\n// but this at least ensures that the parse tree is closer to the template\n// intention.\nconst marker = `lit$${String(Math.random()).slice(9)}$`;\n\n// String used to tell if a comment is a marker comment\nconst markerMatch = '?' + marker;\n\n// Text used to insert a comment marker node. We use processing instruction\n// syntax because it's slightly smaller, but parses as a comment node.\nconst nodeMarker = `<${markerMatch}>`;\n\nconst d =\n NODE_MODE && global.document === undefined\n ? ({\n createTreeWalker() {\n return {};\n },\n } as unknown as Document)\n : document;\n\n// Creates a dynamic marker. We never have to search for these in the DOM.\nconst createMarker = () => d.createComment('');\n\n// https://tc39.github.io/ecma262/#sec-typeof-operator\ntype Primitive = null | undefined | boolean | number | string | symbol | bigint;\nconst isPrimitive = (value: unknown): value is Primitive =>\n value === null || (typeof value != 'object' && typeof value != 'function');\nconst isArray = Array.isArray;\nconst isIterable = (value: unknown): value is Iterable =>\n isArray(value) ||\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n typeof (value as any)?.[Symbol.iterator] === 'function';\n\nconst SPACE_CHAR = `[ \\t\\n\\f\\r]`;\nconst ATTR_VALUE_CHAR = `[^ \\t\\n\\f\\r\"'\\`<>=]`;\nconst NAME_CHAR = `[^\\\\s\"'>=/]`;\n\n// These regexes represent the five parsing states that we care about in the\n// Template's HTML scanner. They match the *end* of the state they're named\n// after.\n// Depending on the match, we transition to a new state. If there's no match,\n// we stay in the same state.\n// Note that the regexes are stateful. We utilize lastIndex and sync it\n// across the multiple regexes used. In addition to the five regexes below\n// we also dynamically create a regex to find the matching end tags for raw\n// text elements.\n\n/**\n * End of text is: `<` followed by:\n * (comment start) or (tag) or (dynamic tag binding)\n */\nconst textEndRegex = /<(?:(!--|\\/[^a-zA-Z])|(\\/?[a-zA-Z][^>\\s]*)|(\\/?$))/g;\nconst COMMENT_START = 1;\nconst TAG_NAME = 2;\nconst DYNAMIC_TAG_NAME = 3;\n\nconst commentEndRegex = /-->/g;\n/**\n * Comments not started with /g,D=/>/g,p=RegExp(`>|${I}(?:([^\\s"'>=/]+)(${I}*=${I}*(?:[^ -\f\r"'\`<>=]|("|')|))|$)`,"g"),k=/'/g,W=/"/g,Y=/^(?:script|style|textarea|title)$/i,q=n=>(t,...s)=>({_$litType$:n,strings:t,values:s}),it=q(1),nt=q(2),v=Symbol.for("lit-noChange"),a=Symbol.for("lit-nothing"),j=new WeakMap,g=m.createTreeWalker(m,129);function F(n,t){if(!Array.isArray(n)||!n.hasOwnProperty("raw"))throw Error("invalid template strings array");return R!==void 0?R.createHTML(t):t}var tt=(n,t)=>{let s=n.length-1,e=[],i,r=t===2?"":"",o=x;for(let A=0;A"?(o=i??x,l=-1):c[1]===void 0?l=-2:(l=o.lastIndex-c[2].length,$=c[1],o=c[3]===void 0?p:c[3]==='"'?W:k):o===W||o===k?o=p:o===L||o===D?o=x:(o=p,i=void 0);let d=o===p&&n[A+1].startsWith("/>")?" ":"";r+=o===x?h+Q:l>=0?(e.push($),h.slice(0,l)+V+h.slice(l)+u+d):h+u+(l===-2?A:d)}return[F(n,r+(n[s]||"")+(t===2?"":"")),e]},N=class n{constructor({strings:t,_$litType$:s},e){let i;this.parts=[];let r=0,o=0,A=t.length-1,h=this.parts,[$,c]=tt(t,s);if(this.el=n.createElement($,e),g.currentNode=this.el.content,s===2){let l=this.el.content.firstChild;l.replaceWith(...l.childNodes)}for(;(i=g.nextNode())!==null&&h.length0){i.textContent=C?C.emptyScript:"";for(let d=0;d<_;d++)i.append(l[d],E()),g.nextNode(),h.push({type:2,index:++r});i.append(l[_],E())}}}else if(i.nodeType===8)if(i.data===z)h.push({type:2,index:r});else{let l=-1;for(;(l=i.data.indexOf(u,l+1))!==-1;)h.push({type:7,index:r}),l+=u.length-1}r++}}static createElement(t,s){let e=m.createElement("template");return e.innerHTML=t,e}};function f(n,t,s=n,e){if(t===v)return t;let i=e!==void 0?s._$Co?.[e]:s._$Cl,r=H(t)?void 0:t._$litDirective$;return i?.constructor!==r&&(i?._$AO?.(!1),r===void 0?i=void 0:(i=new r(n),i._$AT(n,s,e)),e!==void 0?(s._$Co??(s._$Co=[]))[e]=i:s._$Cl=i),i!==void 0&&(t=f(n,i._$AS(n,t.values),i,e)),t}var P=class{constructor(t,s){this._$AV=[],this._$AN=void 0,this._$AD=t,this._$AM=s}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(t){let{el:{content:s},parts:e}=this._$AD,i=(t?.creationScope??m).importNode(s,!0);g.currentNode=i;let r=g.nextNode(),o=0,A=0,h=e[0];for(;h!==void 0;){if(o===h.index){let $;h.type===2?$=new M(r,r.nextSibling,this,t):h.type===1?$=new h.ctor(r,h.name,h.strings,this,t):h.type===6&&($=new O(r,this,t)),this._$AV.push($),h=e[++A]}o!==h?.index&&(r=g.nextNode(),o++)}return g.currentNode=m,i}p(t){let s=0;for(let e of this._$AV)e!==void 0&&(e.strings!==void 0?(e._$AI(t,e,s),s+=e.strings.length-2):e._$AI(t[s])),s++}},M=class n{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(t,s,e,i){this.type=2,this._$AH=a,this._$AN=void 0,this._$AA=t,this._$AB=s,this._$AM=e,this.options=i,this._$Cv=i?.isConnected??!0}get parentNode(){let t=this._$AA.parentNode,s=this._$AM;return s!==void 0&&t?.nodeType===11&&(t=s.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,s=this){t=f(this,t,s),H(t)?t===a||t==null||t===""?(this._$AH!==a&&this._$AR(),this._$AH=a):t!==this._$AH&&t!==v&&this._(t):t._$litType$!==void 0?this.g(t):t.nodeType!==void 0?this.$(t):X(t)?this.T(t):this._(t)}k(t){return this._$AA.parentNode.insertBefore(t,this._$AB)}$(t){this._$AH!==t&&(this._$AR(),this._$AH=this.k(t))}_(t){this._$AH!==a&&H(this._$AH)?this._$AA.nextSibling.data=t:this.$(m.createTextNode(t)),this._$AH=t}g(t){let{values:s,_$litType$:e}=t,i=typeof e=="number"?this._$AC(t):(e.el===void 0&&(e.el=N.createElement(F(e.h,e.h[0]),this.options)),e);if(this._$AH?._$AD===i)this._$AH.p(s);else{let r=new P(i,this),o=r.u(this.options);r.p(s),this.$(o),this._$AH=r}}_$AC(t){let s=j.get(t.strings);return s===void 0&&j.set(t.strings,s=new N(t)),s}T(t){Z(this._$AH)||(this._$AH=[],this._$AR());let s=this._$AH,e,i=0;for(let r of t)i===s.length?s.push(e=new n(this.k(E()),this.k(E()),this,this.options)):e=s[i],e._$AI(r),i++;i2||e[0]!==""||e[1]!==""?(this._$AH=Array(e.length-1).fill(new String),this.strings=e):this._$AH=a}_$AI(t,s=this,e,i){let r=this.strings,o=!1;if(r===void 0)t=f(this,t,s,0),o=!H(t)||t!==this._$AH&&t!==v,o&&(this._$AH=t);else{let A=t,h,$;for(t=r[0],h=0;h(...t)=>({_$litDirective$:n,values:t}),w=class{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,s,e){this._$Ct=t,this._$AM=s,this._$Ci=e}_$AS(t,s){return this.update(t,s)}update(t,s){return this.render(...s)}};var K="important",st=" !"+K,$t=J(class extends w{constructor(n){if(super(n),n.type!==G.ATTRIBUTE||n.name!=="style"||n.strings?.length>2)throw Error("The `styleMap` directive must be used in the `style` attribute and must be the only part in the attribute.")}render(n){return Object.keys(n).reduce((t,s)=>{let e=n[s];return e==null?t:t+`${s=s.includes("-")?s:s.replace(/(?:^(webkit|moz|ms|o)|)(?=[A-Z])/g,"-$&").toLowerCase()}:${e};`},"")}update(n,[t]){let{style:s}=n.element;if(this.ut===void 0)return this.ut=new Set(Object.keys(t)),this.render(t);for(let e of this.ut)t[e]==null&&(this.ut.delete(e),e.includes("-")?s.removeProperty(e):s[e]=null);for(let e in t){let i=t[e];if(i!=null){this.ut.add(e);let r=typeof i=="string"&&i.endsWith(st);e.includes("-")||r?s.setProperty(e,r?i.slice(0,-11):i,r?K:""):s[e]=i}}return v}});export{$t as styleMap}; -/*! Bundled license information: - -lit-html/lit-html.js: -lit-html/directive.js: - (** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - *) - -lit-html/directives/style-map.js: - (** - * @license - * Copyright 2018 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - *) -*/ -//# sourceMappingURL=style-map-DSXDARVG.js.map diff --git a/tests/staticfiles/esm/node_modules/lit/directives/style-map-DSXDARVG.js.map b/tests/staticfiles/esm/node_modules/lit/directives/style-map-DSXDARVG.js.map deleted file mode 100644 index 3111021..0000000 --- a/tests/staticfiles/esm/node_modules/lit/directives/style-map-DSXDARVG.js.map +++ /dev/null @@ -1,7 +0,0 @@ -{ - "version": 3, - "sources": ["../../../../../node_modules/lit-html/src/lit-html.ts", "../../../../../node_modules/lit-html/src/directive.ts", "../../../../../node_modules/lit-html/src/directives/style-map.ts"], - "sourcesContent": ["/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n// IMPORTANT: these imports must be type-only\nimport type {Directive, DirectiveResult, PartInfo} from './directive.js';\n\nconst DEV_MODE = true;\nconst ENABLE_EXTRA_SECURITY_HOOKS = true;\nconst ENABLE_SHADYDOM_NOPATCH = true;\nconst NODE_MODE = false;\n\n// Allows minifiers to rename references to globalThis\nconst global = globalThis;\n\n/**\n * Contains types that are part of the unstable debug API.\n *\n * Everything in this API is not stable and may change or be removed in the future,\n * even on patch releases.\n */\n// eslint-disable-next-line @typescript-eslint/no-namespace\nexport namespace LitUnstable {\n /**\n * When Lit is running in dev mode and `window.emitLitDebugLogEvents` is true,\n * we will emit 'lit-debug' events to window, with live details about the update and render\n * lifecycle. These can be useful for writing debug tooling and visualizations.\n *\n * Please be aware that running with window.emitLitDebugLogEvents has performance overhead,\n * making certain operations that are normally very cheap (like a no-op render) much slower,\n * because we must copy data and dispatch events.\n */\n // eslint-disable-next-line @typescript-eslint/no-namespace\n export namespace DebugLog {\n export type Entry =\n | TemplatePrep\n | TemplateInstantiated\n | TemplateInstantiatedAndUpdated\n | TemplateUpdating\n | BeginRender\n | EndRender\n | CommitPartEntry\n | SetPartValue;\n export interface TemplatePrep {\n kind: 'template prep';\n template: Template;\n strings: TemplateStringsArray;\n clonableTemplate: HTMLTemplateElement;\n parts: TemplatePart[];\n }\n export interface BeginRender {\n kind: 'begin render';\n id: number;\n value: unknown;\n container: HTMLElement | DocumentFragment;\n options: RenderOptions | undefined;\n part: ChildPart | undefined;\n }\n export interface EndRender {\n kind: 'end render';\n id: number;\n value: unknown;\n container: HTMLElement | DocumentFragment;\n options: RenderOptions | undefined;\n part: ChildPart;\n }\n export interface TemplateInstantiated {\n kind: 'template instantiated';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n fragment: Node;\n parts: Array;\n values: unknown[];\n }\n export interface TemplateInstantiatedAndUpdated {\n kind: 'template instantiated and updated';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n fragment: Node;\n parts: Array;\n values: unknown[];\n }\n export interface TemplateUpdating {\n kind: 'template updating';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n parts: Array;\n values: unknown[];\n }\n export interface SetPartValue {\n kind: 'set part';\n part: Part;\n value: unknown;\n valueIndex: number;\n values: unknown[];\n templateInstance: TemplateInstance;\n }\n\n export type CommitPartEntry =\n | CommitNothingToChildEntry\n | CommitText\n | CommitNode\n | CommitAttribute\n | CommitProperty\n | CommitBooleanAttribute\n | CommitEventListener\n | CommitToElementBinding;\n\n export interface CommitNothingToChildEntry {\n kind: 'commit nothing to child';\n start: ChildNode;\n end: ChildNode | null;\n parent: Disconnectable | undefined;\n options: RenderOptions | undefined;\n }\n\n export interface CommitText {\n kind: 'commit text';\n node: Text;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitNode {\n kind: 'commit node';\n start: Node;\n parent: Disconnectable | undefined;\n value: Node;\n options: RenderOptions | undefined;\n }\n\n export interface CommitAttribute {\n kind: 'commit attribute';\n element: Element;\n name: string;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitProperty {\n kind: 'commit property';\n element: Element;\n name: string;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitBooleanAttribute {\n kind: 'commit boolean attribute';\n element: Element;\n name: string;\n value: boolean;\n options: RenderOptions | undefined;\n }\n\n export interface CommitEventListener {\n kind: 'commit event listener';\n element: Element;\n name: string;\n value: unknown;\n oldListener: unknown;\n options: RenderOptions | undefined;\n // True if we're removing the old event listener (e.g. because settings changed, or value is nothing)\n removeListener: boolean;\n // True if we're adding a new event listener (e.g. because first render, or settings changed)\n addListener: boolean;\n }\n\n export interface CommitToElementBinding {\n kind: 'commit to element binding';\n element: Element;\n value: unknown;\n options: RenderOptions | undefined;\n }\n }\n}\n\ninterface DebugLoggingWindow {\n // Even in dev mode, we generally don't want to emit these events, as that's\n // another level of cost, so only emit them when DEV_MODE is true _and_ when\n // window.emitLitDebugEvents is true.\n emitLitDebugLogEvents?: boolean;\n}\n\n/**\n * Useful for visualizing and logging insights into what the Lit template system is doing.\n *\n * Compiled out of prod mode builds.\n */\nconst debugLogEvent = DEV_MODE\n ? (event: LitUnstable.DebugLog.Entry) => {\n const shouldEmit = (global as unknown as DebugLoggingWindow)\n .emitLitDebugLogEvents;\n if (!shouldEmit) {\n return;\n }\n global.dispatchEvent(\n new CustomEvent('lit-debug', {\n detail: event,\n })\n );\n }\n : undefined;\n// Used for connecting beginRender and endRender events when there are nested\n// renders when errors are thrown preventing an endRender event from being\n// called.\nlet debugLogRenderId = 0;\n\nlet issueWarning: (code: string, warning: string) => void;\n\nif (DEV_MODE) {\n global.litIssuedWarnings ??= new Set();\n\n // Issue a warning, if we haven't already.\n issueWarning = (code: string, warning: string) => {\n warning += code\n ? ` See https://lit.dev/msg/${code} for more information.`\n : '';\n if (!global.litIssuedWarnings!.has(warning)) {\n console.warn(warning);\n global.litIssuedWarnings!.add(warning);\n }\n };\n\n issueWarning(\n 'dev-mode',\n `Lit is in dev mode. Not recommended for production!`\n );\n}\n\nconst wrap =\n ENABLE_SHADYDOM_NOPATCH &&\n global.ShadyDOM?.inUse &&\n global.ShadyDOM?.noPatch === true\n ? (global.ShadyDOM!.wrap as (node: T) => T)\n : (node: T) => node;\n\nconst trustedTypes = (global as unknown as Window).trustedTypes;\n\n/**\n * Our TrustedTypePolicy for HTML which is declared using the html template\n * tag function.\n *\n * That HTML is a developer-authored constant, and is parsed with innerHTML\n * before any untrusted expressions have been mixed in. Therefor it is\n * considered safe by construction.\n */\nconst policy = trustedTypes\n ? trustedTypes.createPolicy('lit-html', {\n createHTML: (s) => s,\n })\n : undefined;\n\n/**\n * Used to sanitize any value before it is written into the DOM. This can be\n * used to implement a security policy of allowed and disallowed values in\n * order to prevent XSS attacks.\n *\n * One way of using this callback would be to check attributes and properties\n * against a list of high risk fields, and require that values written to such\n * fields be instances of a class which is safe by construction. Closure's Safe\n * HTML Types is one implementation of this technique (\n * https://github.com/google/safe-html-types/blob/master/doc/safehtml-types.md).\n * The TrustedTypes polyfill in API-only mode could also be used as a basis\n * for this technique (https://github.com/WICG/trusted-types).\n *\n * @param node The HTML node (usually either a #text node or an Element) that\n * is being written to. Note that this is just an exemplar node, the write\n * may take place against another instance of the same class of node.\n * @param name The name of an attribute or property (for example, 'href').\n * @param type Indicates whether the write that's about to be performed will\n * be to a property or a node.\n * @return A function that will sanitize this class of writes.\n */\nexport type SanitizerFactory = (\n node: Node,\n name: string,\n type: 'property' | 'attribute'\n) => ValueSanitizer;\n\n/**\n * A function which can sanitize values that will be written to a specific kind\n * of DOM sink.\n *\n * See SanitizerFactory.\n *\n * @param value The value to sanitize. Will be the actual value passed into\n * the lit-html template literal, so this could be of any type.\n * @return The value to write to the DOM. Usually the same as the input value,\n * unless sanitization is needed.\n */\nexport type ValueSanitizer = (value: unknown) => unknown;\n\nconst identityFunction: ValueSanitizer = (value: unknown) => value;\nconst noopSanitizer: SanitizerFactory = (\n _node: Node,\n _name: string,\n _type: 'property' | 'attribute'\n) => identityFunction;\n\n/** Sets the global sanitizer factory. */\nconst setSanitizer = (newSanitizer: SanitizerFactory) => {\n if (!ENABLE_EXTRA_SECURITY_HOOKS) {\n return;\n }\n if (sanitizerFactoryInternal !== noopSanitizer) {\n throw new Error(\n `Attempted to overwrite existing lit-html security policy.` +\n ` setSanitizeDOMValueFactory should be called at most once.`\n );\n }\n sanitizerFactoryInternal = newSanitizer;\n};\n\n/**\n * Only used in internal tests, not a part of the public API.\n */\nconst _testOnlyClearSanitizerFactoryDoNotCallOrElse = () => {\n sanitizerFactoryInternal = noopSanitizer;\n};\n\nconst createSanitizer: SanitizerFactory = (node, name, type) => {\n return sanitizerFactoryInternal(node, name, type);\n};\n\n// Added to an attribute name to mark the attribute as bound so we can find\n// it easily.\nconst boundAttributeSuffix = '$lit$';\n\n// This marker is used in many syntactic positions in HTML, so it must be\n// a valid element name and attribute name. We don't support dynamic names (yet)\n// but this at least ensures that the parse tree is closer to the template\n// intention.\nconst marker = `lit$${String(Math.random()).slice(9)}$`;\n\n// String used to tell if a comment is a marker comment\nconst markerMatch = '?' + marker;\n\n// Text used to insert a comment marker node. We use processing instruction\n// syntax because it's slightly smaller, but parses as a comment node.\nconst nodeMarker = `<${markerMatch}>`;\n\nconst d =\n NODE_MODE && global.document === undefined\n ? ({\n createTreeWalker() {\n return {};\n },\n } as unknown as Document)\n : document;\n\n// Creates a dynamic marker. We never have to search for these in the DOM.\nconst createMarker = () => d.createComment('');\n\n// https://tc39.github.io/ecma262/#sec-typeof-operator\ntype Primitive = null | undefined | boolean | number | string | symbol | bigint;\nconst isPrimitive = (value: unknown): value is Primitive =>\n value === null || (typeof value != 'object' && typeof value != 'function');\nconst isArray = Array.isArray;\nconst isIterable = (value: unknown): value is Iterable =>\n isArray(value) ||\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n typeof (value as any)?.[Symbol.iterator] === 'function';\n\nconst SPACE_CHAR = `[ \\t\\n\\f\\r]`;\nconst ATTR_VALUE_CHAR = `[^ \\t\\n\\f\\r\"'\\`<>=]`;\nconst NAME_CHAR = `[^\\\\s\"'>=/]`;\n\n// These regexes represent the five parsing states that we care about in the\n// Template's HTML scanner. They match the *end* of the state they're named\n// after.\n// Depending on the match, we transition to a new state. If there's no match,\n// we stay in the same state.\n// Note that the regexes are stateful. We utilize lastIndex and sync it\n// across the multiple regexes used. In addition to the five regexes below\n// we also dynamically create a regex to find the matching end tags for raw\n// text elements.\n\n/**\n * End of text is: `<` followed by:\n * (comment start) or (tag) or (dynamic tag binding)\n */\nconst textEndRegex = /<(?:(!--|\\/[^a-zA-Z])|(\\/?[a-zA-Z][^>\\s]*)|(\\/?$))/g;\nconst COMMENT_START = 1;\nconst TAG_NAME = 2;\nconst DYNAMIC_TAG_NAME = 3;\n\nconst commentEndRegex = /-->/g;\n/**\n * Comments not started with `--my-button-color`\n prop = prop.includes('-')\n ? prop\n : prop\n .replace(/(?:^(webkit|moz|ms|o)|)(?=[A-Z])/g, '-$&')\n .toLowerCase();\n return style + `${prop}:${value};`;\n }, '');\n }\n\n override update(part: AttributePart, [styleInfo]: DirectiveParameters) {\n const {style} = part.element as HTMLElement;\n\n if (this._previousStyleProperties === undefined) {\n this._previousStyleProperties = new Set(Object.keys(styleInfo));\n return this.render(styleInfo);\n }\n\n // Remove old properties that no longer exist in styleInfo\n for (const name of this._previousStyleProperties) {\n // If the name isn't in styleInfo or it's null/undefined\n if (styleInfo[name] == null) {\n this._previousStyleProperties!.delete(name);\n if (name.includes('-')) {\n style.removeProperty(name);\n } else {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (style as any)[name] = null;\n }\n }\n }\n\n // Add or update properties\n for (const name in styleInfo) {\n const value = styleInfo[name];\n if (value != null) {\n this._previousStyleProperties.add(name);\n const isImportant =\n typeof value === 'string' && value.endsWith(importantFlag);\n if (name.includes('-') || isImportant) {\n style.setProperty(\n name,\n isImportant\n ? (value as string).slice(0, flagTrim)\n : (value as string),\n isImportant ? important : ''\n );\n } else {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n (style as any)[name] = value;\n }\n }\n }\n return noChange;\n }\n}\n\n/**\n * A directive that applies CSS properties to an element.\n *\n * `styleMap` can only be used in the `style` attribute and must be the only\n * expression in the attribute. It takes the property names in the\n * {@link StyleInfo styleInfo} object and adds the properties to the inline\n * style of the element.\n *\n * Property names with dashes (`-`) are assumed to be valid CSS\n * property names and set on the element's style object using `setProperty()`.\n * Names without dashes are assumed to be camelCased JavaScript property names\n * and set on the element's style object using property assignment, allowing the\n * style object to translate JavaScript-style names to CSS property names.\n *\n * For example `styleMap({backgroundColor: 'red', 'border-top': '5px', '--size':\n * '0'})` sets the `background-color`, `border-top` and `--size` properties.\n *\n * @param styleInfo\n * @see {@link https://lit.dev/docs/templates/directives/#stylemap styleMap code samples on Lit.dev}\n */\nexport const styleMap = directive(StyleMapDirective);\n\n/**\n * The type of the class that powers this directive. Necessary for naming the\n * directive's return type.\n */\nexport type {StyleMapDirective};\n"], - "mappings": "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", - "names": ["global", "globalThis", "trustedTypes", "policy", "createPolicy", "createHTML", "s", "boundAttributeSuffix", "marker", "Math", "random", "String", "slice", "markerMatch", "nodeMarker", "d", "document", "createMarker", "createComment", "isPrimitive", "value", "isArray", "Array", "isIterable", "Symbol", "iterator", "SPACE_CHAR", "textEndRegex", "commentEndRegex", "comment2EndRegex", "tagEndRegex", "RegExp", "singleQuoteAttrEndRegex", "doubleQuoteAttrEndRegex", "rawTextElement", "tag", "type", "strings", "values", "_$litType$", "html", "svg", "noChange", "for", "nothing", "templateCache", "WeakMap", "walker", "createTreeWalker", "trustFromTemplateString", "tsa", "stringFromTSA", "hasOwnProperty", "Error", "getTemplateHtml", "l", "length", "attrNames", "rawTextEndRegex", "regex", "i", "attrName", "match", "attrNameEndIndex", "lastIndex", "exec", "test", "end", "startsWith", "push", "Template", "constructor", "options", "node", "this", "parts", "nodeIndex", "attrNameIndex", "partCount", "el", "createElement", "currentNode", "content", "svgElement", "firstChild", "replaceWith", "childNodes", "nextNode", "nodeType", "hasAttributes", "name", "getAttributeNames", "endsWith", "realName", "statics", "getAttribute", "split", "m", "index", "ctor", "PropertyPart", "BooleanAttributePart", "EventPart", "AttributePart", "removeAttribute", "tagName", "textContent", "emptyScript", "append", "data", "indexOf", "_options", "innerHTML", "resolveDirective", "part", "parent", "attributeIndex", "currentDirective", "__directives", "__directive", "nextDirectiveConstructor", "_$initialize", "_$resolve", "TemplateInstance", "template", "_$parts", "_$disconnectableChildren", "_$template", "_$parent", "parentNode", "_$isConnected", "fragment", "creationScope", "importNode", "partIndex", "templatePart", "ChildPart", "nextSibling", "ElementPart", "_$setValue", "__isConnected", "startNode", "endNode", "_$committedValue", "_$startNode", "_$endNode", "isConnected", "directiveParent", "_$clear", "_commitText", "_commitTemplateResult", "_commitNode", "_commitIterable", "insertBefore", "_insert", "createTextNode", "result", "_$getTemplate", "h", "_update", "instance", "_clone", "get", "set", "itemParts", "itemPart", "item", "start", "from", "_$notifyConnectionChanged", "n", "remove", "element", "fill", "valueIndex", "noCommit", "change", "v", "_commitValue", "setAttribute", "toggleAttribute", "super", "newListener", "oldListener", "shouldRemoveListener", "capture", "once", "passive", "shouldAddListener", "removeEventListener", "addEventListener", "event", "call", "host", "handleEvent", "polyfillSupport", "global", "litHtmlPolyfillSupport", "Template", "ChildPart", "litHtmlVersions", "push", "PartType", "ATTRIBUTE", "CHILD", "PROPERTY", "BOOLEAN_ATTRIBUTE", "EVENT", "ELEMENT", "directive", "c", "values", "_$litDirective$", "Directive", "_partInfo", "_$isConnected", "this", "_$parent", "part", "parent", "attributeIndex", "__part", "__attributeIndex", "props", "update", "_part", "render", "important", "importantFlag", "styleMap", "directive", "Directive", "partInfo", "super", "type", "PartType", "ATTRIBUTE", "name", "strings", "length", "Error", "styleInfo", "Object", "keys", "reduce", "style", "prop", "value", "includes", "replace", "toLowerCase", "part", "element", "this", "_previousStyleProperties", "Set", "render", "delete", "removeProperty", "add", "isImportant", "endsWith", "setProperty", "slice", "noChange"] -} diff --git a/tests/staticfiles/esm/node_modules/lit/directives/template-content-QHDTAWTY.js b/tests/staticfiles/esm/node_modules/lit/directives/template-content-QHDTAWTY.js deleted file mode 100644 index eb39d16..0000000 --- a/tests/staticfiles/esm/node_modules/lit/directives/template-content-QHDTAWTY.js +++ /dev/null @@ -1,22 +0,0 @@ -/* Build with esimport version 0.5.1 */ -var H=globalThis,b=H.trustedTypes,D=b?b.createPolicy("lit-html",{createHTML:n=>n}):void 0,j="$lit$",p=`lit$${(Math.random()+"").slice(9)}$`,z="?"+p,K=`<${z}>`,v=document,E=()=>v.createComment(""),N=n=>n===null||typeof n!="object"&&typeof n!="function",Z=Array.isArray,Q=n=>Z(n)||typeof n?.[Symbol.iterator]=="function",I=`[ -\f\r]`,x=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,L=/-->/g,O=/>/g,u=RegExp(`>|${I}(?:([^\\s"'>=/]+)(${I}*=${I}*(?:[^ -\f\r"'\`<>=]|("|')|))|$)`,"g"),W=/'/g,k=/"/g,Y=/^(?:script|style|textarea|title)$/i,q=n=>(t,...e)=>({_$litType$:n,strings:t,values:e}),et=q(1),st=q(2),m=Symbol.for("lit-noChange"),a=Symbol.for("lit-nothing"),V=new WeakMap,g=v.createTreeWalker(v,129);function F(n,t){if(!Array.isArray(n)||!n.hasOwnProperty("raw"))throw Error("invalid template strings array");return D!==void 0?D.createHTML(t):t}var X=(n,t)=>{let e=n.length-1,s=[],i,r=t===2?"":"",o=x;for(let c=0;c"?(o=i??x,l=-1):A[1]===void 0?l=-2:(l=o.lastIndex-A[2].length,$=A[1],o=A[3]===void 0?u:A[3]==='"'?k:W):o===k||o===W?o=u:o===L||o===O?o=x:(o=u,i=void 0);let d=o===u&&n[c+1].startsWith("/>")?" ":"";r+=o===x?h+K:l>=0?(s.push($),h.slice(0,l)+j+h.slice(l)+p+d):h+p+(l===-2?c:d)}return[F(n,r+(n[e]||"")+(t===2?"":"")),s]},T=class n{constructor({strings:t,_$litType$:e},s){let i;this.parts=[];let r=0,o=0,c=t.length-1,h=this.parts,[$,A]=X(t,e);if(this.el=n.createElement($,s),g.currentNode=this.el.content,e===2){let l=this.el.content.firstChild;l.replaceWith(...l.childNodes)}for(;(i=g.nextNode())!==null&&h.length0){i.textContent=b?b.emptyScript:"";for(let d=0;d<_;d++)i.append(l[d],E()),g.nextNode(),h.push({type:2,index:++r});i.append(l[_],E())}}}else if(i.nodeType===8)if(i.data===z)h.push({type:2,index:r});else{let l=-1;for(;(l=i.data.indexOf(p,l+1))!==-1;)h.push({type:7,index:r}),l+=p.length-1}r++}}static createElement(t,e){let s=v.createElement("template");return s.innerHTML=t,s}};function f(n,t,e=n,s){if(t===m)return t;let i=s!==void 0?e._$Co?.[s]:e._$Cl,r=N(t)?void 0:t._$litDirective$;return i?.constructor!==r&&(i?._$AO?.(!1),r===void 0?i=void 0:(i=new r(n),i._$AT(n,e,s)),s!==void 0?(e._$Co??(e._$Co=[]))[s]=i:e._$Cl=i),i!==void 0&&(t=f(n,i._$AS(n,t.values),i,s)),t}var B=class{constructor(t,e){this._$AV=[],this._$AN=void 0,this._$AD=t,this._$AM=e}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(t){let{el:{content:e},parts:s}=this._$AD,i=(t?.creationScope??v).importNode(e,!0);g.currentNode=i;let r=g.nextNode(),o=0,c=0,h=s[0];for(;h!==void 0;){if(o===h.index){let $;h.type===2?$=new M(r,r.nextSibling,this,t):h.type===1?$=new h.ctor(r,h.name,h.strings,this,t):h.type===6&&($=new R(r,this,t)),this._$AV.push($),h=s[++c]}o!==h?.index&&(r=g.nextNode(),o++)}return g.currentNode=v,i}p(t){let e=0;for(let s of this._$AV)s!==void 0&&(s.strings!==void 0?(s._$AI(t,s,e),e+=s.strings.length-2):s._$AI(t[e])),e++}},M=class n{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(t,e,s,i){this.type=2,this._$AH=a,this._$AN=void 0,this._$AA=t,this._$AB=e,this._$AM=s,this.options=i,this._$Cv=i?.isConnected??!0}get parentNode(){let t=this._$AA.parentNode,e=this._$AM;return e!==void 0&&t?.nodeType===11&&(t=e.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,e=this){t=f(this,t,e),N(t)?t===a||t==null||t===""?(this._$AH!==a&&this._$AR(),this._$AH=a):t!==this._$AH&&t!==m&&this._(t):t._$litType$!==void 0?this.g(t):t.nodeType!==void 0?this.$(t):Q(t)?this.T(t):this._(t)}k(t){return this._$AA.parentNode.insertBefore(t,this._$AB)}$(t){this._$AH!==t&&(this._$AR(),this._$AH=this.k(t))}_(t){this._$AH!==a&&N(this._$AH)?this._$AA.nextSibling.data=t:this.$(v.createTextNode(t)),this._$AH=t}g(t){let{values:e,_$litType$:s}=t,i=typeof s=="number"?this._$AC(t):(s.el===void 0&&(s.el=T.createElement(F(s.h,s.h[0]),this.options)),s);if(this._$AH?._$AD===i)this._$AH.p(e);else{let r=new B(i,this),o=r.u(this.options);r.p(e),this.$(o),this._$AH=r}}_$AC(t){let e=V.get(t.strings);return e===void 0&&V.set(t.strings,e=new T(t)),e}T(t){Z(this._$AH)||(this._$AH=[],this._$AR());let e=this._$AH,s,i=0;for(let r of t)i===e.length?e.push(s=new n(this.k(E()),this.k(E()),this,this.options)):s=e[i],s._$AI(r),i++;i2||s[0]!==""||s[1]!==""?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=a}_$AI(t,e=this,s,i){let r=this.strings,o=!1;if(r===void 0)t=f(this,t,e,0),o=!N(t)||t!==this._$AH&&t!==m,o&&(this._$AH=t);else{let c=t,h,$;for(t=r[0],h=0;h(...t)=>({_$litDirective$:n,values:t}),w=class{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,s){this._$Ct=t,this._$AM=e,this._$Ci=s}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}};var ht=J(class extends w{constructor(n){if(super(n),n.type!==G.CHILD)throw Error("templateContent can only be used in child bindings")}render(n){return this.ft===n?m:(this.ft=n,document.importNode(n.content,!0))}});export{ht as templateContent}; -/*! Bundled license information: - -lit-html/lit-html.js: -lit-html/directive.js: - (** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - *) - -lit-html/directives/template-content.js: - (** - * @license - * Copyright 2020 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - *) -*/ -//# sourceMappingURL=template-content-QHDTAWTY.js.map diff --git a/tests/staticfiles/esm/node_modules/lit/directives/template-content-QHDTAWTY.js.map b/tests/staticfiles/esm/node_modules/lit/directives/template-content-QHDTAWTY.js.map deleted file mode 100644 index df3b224..0000000 --- a/tests/staticfiles/esm/node_modules/lit/directives/template-content-QHDTAWTY.js.map +++ /dev/null @@ -1,7 +0,0 @@ -{ - "version": 3, - "sources": ["../../../../../node_modules/lit-html/src/lit-html.ts", "../../../../../node_modules/lit-html/src/directive.ts", "../../../../../node_modules/lit-html/src/directives/template-content.ts"], - "sourcesContent": ["/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n// IMPORTANT: these imports must be type-only\nimport type {Directive, DirectiveResult, PartInfo} from './directive.js';\n\nconst DEV_MODE = true;\nconst ENABLE_EXTRA_SECURITY_HOOKS = true;\nconst ENABLE_SHADYDOM_NOPATCH = true;\nconst NODE_MODE = false;\n\n// Allows minifiers to rename references to globalThis\nconst global = globalThis;\n\n/**\n * Contains types that are part of the unstable debug API.\n *\n * Everything in this API is not stable and may change or be removed in the future,\n * even on patch releases.\n */\n// eslint-disable-next-line @typescript-eslint/no-namespace\nexport namespace LitUnstable {\n /**\n * When Lit is running in dev mode and `window.emitLitDebugLogEvents` is true,\n * we will emit 'lit-debug' events to window, with live details about the update and render\n * lifecycle. These can be useful for writing debug tooling and visualizations.\n *\n * Please be aware that running with window.emitLitDebugLogEvents has performance overhead,\n * making certain operations that are normally very cheap (like a no-op render) much slower,\n * because we must copy data and dispatch events.\n */\n // eslint-disable-next-line @typescript-eslint/no-namespace\n export namespace DebugLog {\n export type Entry =\n | TemplatePrep\n | TemplateInstantiated\n | TemplateInstantiatedAndUpdated\n | TemplateUpdating\n | BeginRender\n | EndRender\n | CommitPartEntry\n | SetPartValue;\n export interface TemplatePrep {\n kind: 'template prep';\n template: Template;\n strings: TemplateStringsArray;\n clonableTemplate: HTMLTemplateElement;\n parts: TemplatePart[];\n }\n export interface BeginRender {\n kind: 'begin render';\n id: number;\n value: unknown;\n container: HTMLElement | DocumentFragment;\n options: RenderOptions | undefined;\n part: ChildPart | undefined;\n }\n export interface EndRender {\n kind: 'end render';\n id: number;\n value: unknown;\n container: HTMLElement | DocumentFragment;\n options: RenderOptions | undefined;\n part: ChildPart;\n }\n export interface TemplateInstantiated {\n kind: 'template instantiated';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n fragment: Node;\n parts: Array;\n values: unknown[];\n }\n export interface TemplateInstantiatedAndUpdated {\n kind: 'template instantiated and updated';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n fragment: Node;\n parts: Array;\n values: unknown[];\n }\n export interface TemplateUpdating {\n kind: 'template updating';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n parts: Array;\n values: unknown[];\n }\n export interface SetPartValue {\n kind: 'set part';\n part: Part;\n value: unknown;\n valueIndex: number;\n values: unknown[];\n templateInstance: TemplateInstance;\n }\n\n export type CommitPartEntry =\n | CommitNothingToChildEntry\n | CommitText\n | CommitNode\n | CommitAttribute\n | CommitProperty\n | CommitBooleanAttribute\n | CommitEventListener\n | CommitToElementBinding;\n\n export interface CommitNothingToChildEntry {\n kind: 'commit nothing to child';\n start: ChildNode;\n end: ChildNode | null;\n parent: Disconnectable | undefined;\n options: RenderOptions | undefined;\n }\n\n export interface CommitText {\n kind: 'commit text';\n node: Text;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitNode {\n kind: 'commit node';\n start: Node;\n parent: Disconnectable | undefined;\n value: Node;\n options: RenderOptions | undefined;\n }\n\n export interface CommitAttribute {\n kind: 'commit attribute';\n element: Element;\n name: string;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitProperty {\n kind: 'commit property';\n element: Element;\n name: string;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitBooleanAttribute {\n kind: 'commit boolean attribute';\n element: Element;\n name: string;\n value: boolean;\n options: RenderOptions | undefined;\n }\n\n export interface CommitEventListener {\n kind: 'commit event listener';\n element: Element;\n name: string;\n value: unknown;\n oldListener: unknown;\n options: RenderOptions | undefined;\n // True if we're removing the old event listener (e.g. because settings changed, or value is nothing)\n removeListener: boolean;\n // True if we're adding a new event listener (e.g. because first render, or settings changed)\n addListener: boolean;\n }\n\n export interface CommitToElementBinding {\n kind: 'commit to element binding';\n element: Element;\n value: unknown;\n options: RenderOptions | undefined;\n }\n }\n}\n\ninterface DebugLoggingWindow {\n // Even in dev mode, we generally don't want to emit these events, as that's\n // another level of cost, so only emit them when DEV_MODE is true _and_ when\n // window.emitLitDebugEvents is true.\n emitLitDebugLogEvents?: boolean;\n}\n\n/**\n * Useful for visualizing and logging insights into what the Lit template system is doing.\n *\n * Compiled out of prod mode builds.\n */\nconst debugLogEvent = DEV_MODE\n ? (event: LitUnstable.DebugLog.Entry) => {\n const shouldEmit = (global as unknown as DebugLoggingWindow)\n .emitLitDebugLogEvents;\n if (!shouldEmit) {\n return;\n }\n global.dispatchEvent(\n new CustomEvent('lit-debug', {\n detail: event,\n })\n );\n }\n : undefined;\n// Used for connecting beginRender and endRender events when there are nested\n// renders when errors are thrown preventing an endRender event from being\n// called.\nlet debugLogRenderId = 0;\n\nlet issueWarning: (code: string, warning: string) => void;\n\nif (DEV_MODE) {\n global.litIssuedWarnings ??= new Set();\n\n // Issue a warning, if we haven't already.\n issueWarning = (code: string, warning: string) => {\n warning += code\n ? ` See https://lit.dev/msg/${code} for more information.`\n : '';\n if (!global.litIssuedWarnings!.has(warning)) {\n console.warn(warning);\n global.litIssuedWarnings!.add(warning);\n }\n };\n\n issueWarning(\n 'dev-mode',\n `Lit is in dev mode. Not recommended for production!`\n );\n}\n\nconst wrap =\n ENABLE_SHADYDOM_NOPATCH &&\n global.ShadyDOM?.inUse &&\n global.ShadyDOM?.noPatch === true\n ? (global.ShadyDOM!.wrap as (node: T) => T)\n : (node: T) => node;\n\nconst trustedTypes = (global as unknown as Window).trustedTypes;\n\n/**\n * Our TrustedTypePolicy for HTML which is declared using the html template\n * tag function.\n *\n * That HTML is a developer-authored constant, and is parsed with innerHTML\n * before any untrusted expressions have been mixed in. Therefor it is\n * considered safe by construction.\n */\nconst policy = trustedTypes\n ? trustedTypes.createPolicy('lit-html', {\n createHTML: (s) => s,\n })\n : undefined;\n\n/**\n * Used to sanitize any value before it is written into the DOM. This can be\n * used to implement a security policy of allowed and disallowed values in\n * order to prevent XSS attacks.\n *\n * One way of using this callback would be to check attributes and properties\n * against a list of high risk fields, and require that values written to such\n * fields be instances of a class which is safe by construction. Closure's Safe\n * HTML Types is one implementation of this technique (\n * https://github.com/google/safe-html-types/blob/master/doc/safehtml-types.md).\n * The TrustedTypes polyfill in API-only mode could also be used as a basis\n * for this technique (https://github.com/WICG/trusted-types).\n *\n * @param node The HTML node (usually either a #text node or an Element) that\n * is being written to. Note that this is just an exemplar node, the write\n * may take place against another instance of the same class of node.\n * @param name The name of an attribute or property (for example, 'href').\n * @param type Indicates whether the write that's about to be performed will\n * be to a property or a node.\n * @return A function that will sanitize this class of writes.\n */\nexport type SanitizerFactory = (\n node: Node,\n name: string,\n type: 'property' | 'attribute'\n) => ValueSanitizer;\n\n/**\n * A function which can sanitize values that will be written to a specific kind\n * of DOM sink.\n *\n * See SanitizerFactory.\n *\n * @param value The value to sanitize. Will be the actual value passed into\n * the lit-html template literal, so this could be of any type.\n * @return The value to write to the DOM. Usually the same as the input value,\n * unless sanitization is needed.\n */\nexport type ValueSanitizer = (value: unknown) => unknown;\n\nconst identityFunction: ValueSanitizer = (value: unknown) => value;\nconst noopSanitizer: SanitizerFactory = (\n _node: Node,\n _name: string,\n _type: 'property' | 'attribute'\n) => identityFunction;\n\n/** Sets the global sanitizer factory. */\nconst setSanitizer = (newSanitizer: SanitizerFactory) => {\n if (!ENABLE_EXTRA_SECURITY_HOOKS) {\n return;\n }\n if (sanitizerFactoryInternal !== noopSanitizer) {\n throw new Error(\n `Attempted to overwrite existing lit-html security policy.` +\n ` setSanitizeDOMValueFactory should be called at most once.`\n );\n }\n sanitizerFactoryInternal = newSanitizer;\n};\n\n/**\n * Only used in internal tests, not a part of the public API.\n */\nconst _testOnlyClearSanitizerFactoryDoNotCallOrElse = () => {\n sanitizerFactoryInternal = noopSanitizer;\n};\n\nconst createSanitizer: SanitizerFactory = (node, name, type) => {\n return sanitizerFactoryInternal(node, name, type);\n};\n\n// Added to an attribute name to mark the attribute as bound so we can find\n// it easily.\nconst boundAttributeSuffix = '$lit$';\n\n// This marker is used in many syntactic positions in HTML, so it must be\n// a valid element name and attribute name. We don't support dynamic names (yet)\n// but this at least ensures that the parse tree is closer to the template\n// intention.\nconst marker = `lit$${String(Math.random()).slice(9)}$`;\n\n// String used to tell if a comment is a marker comment\nconst markerMatch = '?' + marker;\n\n// Text used to insert a comment marker node. We use processing instruction\n// syntax because it's slightly smaller, but parses as a comment node.\nconst nodeMarker = `<${markerMatch}>`;\n\nconst d =\n NODE_MODE && global.document === undefined\n ? ({\n createTreeWalker() {\n return {};\n },\n } as unknown as Document)\n : document;\n\n// Creates a dynamic marker. We never have to search for these in the DOM.\nconst createMarker = () => d.createComment('');\n\n// https://tc39.github.io/ecma262/#sec-typeof-operator\ntype Primitive = null | undefined | boolean | number | string | symbol | bigint;\nconst isPrimitive = (value: unknown): value is Primitive =>\n value === null || (typeof value != 'object' && typeof value != 'function');\nconst isArray = Array.isArray;\nconst isIterable = (value: unknown): value is Iterable =>\n isArray(value) ||\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n typeof (value as any)?.[Symbol.iterator] === 'function';\n\nconst SPACE_CHAR = `[ \\t\\n\\f\\r]`;\nconst ATTR_VALUE_CHAR = `[^ \\t\\n\\f\\r\"'\\`<>=]`;\nconst NAME_CHAR = `[^\\\\s\"'>=/]`;\n\n// These regexes represent the five parsing states that we care about in the\n// Template's HTML scanner. They match the *end* of the state they're named\n// after.\n// Depending on the match, we transition to a new state. If there's no match,\n// we stay in the same state.\n// Note that the regexes are stateful. We utilize lastIndex and sync it\n// across the multiple regexes used. In addition to the five regexes below\n// we also dynamically create a regex to find the matching end tags for raw\n// text elements.\n\n/**\n * End of text is: `<` followed by:\n * (comment start) or (tag) or (dynamic tag binding)\n */\nconst textEndRegex = /<(?:(!--|\\/[^a-zA-Z])|(\\/?[a-zA-Z][^>\\s]*)|(\\/?$))/g;\nconst COMMENT_START = 1;\nconst TAG_NAME = 2;\nconst DYNAMIC_TAG_NAME = 3;\n\nconst commentEndRegex = /-->/g;\n/**\n * Comments not started with /g,W=/>/g,p=RegExp(`>|${U}(?:([^\\s"'>=/]+)(${U}*=${U}*(?:[^ -\f\r"'\`<>=]|("|')|))|$)`,"g"),k=/'/g,V=/"/g,q=/^(?:script|style|textarea|title)$/i,F=n=>(t,...e)=>({_$litType$:n,strings:t,values:e}),st=F(1),it=F(2),f=Symbol.for("lit-noChange"),a=Symbol.for("lit-nothing"),j=new WeakMap,g=v.createTreeWalker(v,129);function G(n,t){if(!Array.isArray(n)||!n.hasOwnProperty("raw"))throw Error("invalid template strings array");return R!==void 0?R.createHTML(t):t}var tt=(n,t)=>{let e=n.length-1,s=[],i,r=t===2?"":"",o=x;for(let A=0;A"?(o=i??x,l=-1):c[1]===void 0?l=-2:(l=o.lastIndex-c[2].length,$=c[1],o=c[3]===void 0?p:c[3]==='"'?V:k):o===V||o===k?o=p:o===O||o===W?o=x:(o=p,i=void 0);let d=o===p&&n[A+1].startsWith("/>")?" ":"";r+=o===x?h+Q:l>=0?(s.push($),h.slice(0,l)+z+h.slice(l)+u+d):h+u+(l===-2?A:d)}return[G(n,r+(n[e]||"")+(t===2?"":"")),s]},N=class n{constructor({strings:t,_$litType$:e},s){let i;this.parts=[];let r=0,o=0,A=t.length-1,h=this.parts,[$,c]=tt(t,e);if(this.el=n.createElement($,s),g.currentNode=this.el.content,e===2){let l=this.el.content.firstChild;l.replaceWith(...l.childNodes)}for(;(i=g.nextNode())!==null&&h.length0){i.textContent=b?b.emptyScript:"";for(let d=0;d<_;d++)i.append(l[d],M()),g.nextNode(),h.push({type:2,index:++r});i.append(l[_],M())}}}else if(i.nodeType===8)if(i.data===Z)h.push({type:2,index:r});else{let l=-1;for(;(l=i.data.indexOf(u,l+1))!==-1;)h.push({type:7,index:r}),l+=u.length-1}r++}}static createElement(t,e){let s=v.createElement("template");return s.innerHTML=t,s}};function m(n,t,e=n,s){if(t===f)return t;let i=s!==void 0?e._$Co?.[s]:e._$Cl,r=T(t)?void 0:t._$litDirective$;return i?.constructor!==r&&(i?._$AO?.(!1),r===void 0?i=void 0:(i=new r(n),i._$AT(n,e,s)),s!==void 0?(e._$Co??(e._$Co=[]))[s]=i:e._$Cl=i),i!==void 0&&(t=m(n,i._$AS(n,t.values),i,s)),t}var B=class{constructor(t,e){this._$AV=[],this._$AN=void 0,this._$AD=t,this._$AM=e}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(t){let{el:{content:e},parts:s}=this._$AD,i=(t?.creationScope??v).importNode(e,!0);g.currentNode=i;let r=g.nextNode(),o=0,A=0,h=s[0];for(;h!==void 0;){if(o===h.index){let $;h.type===2?$=new w(r,r.nextSibling,this,t):h.type===1?$=new h.ctor(r,h.name,h.strings,this,t):h.type===6&&($=new D(r,this,t)),this._$AV.push($),h=s[++A]}o!==h?.index&&(r=g.nextNode(),o++)}return g.currentNode=v,i}p(t){let e=0;for(let s of this._$AV)s!==void 0&&(s.strings!==void 0?(s._$AI(t,s,e),e+=s.strings.length-2):s._$AI(t[e])),e++}},w=class n{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(t,e,s,i){this.type=2,this._$AH=a,this._$AN=void 0,this._$AA=t,this._$AB=e,this._$AM=s,this.options=i,this._$Cv=i?.isConnected??!0}get parentNode(){let t=this._$AA.parentNode,e=this._$AM;return e!==void 0&&t?.nodeType===11&&(t=e.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,e=this){t=m(this,t,e),T(t)?t===a||t==null||t===""?(this._$AH!==a&&this._$AR(),this._$AH=a):t!==this._$AH&&t!==f&&this._(t):t._$litType$!==void 0?this.g(t):t.nodeType!==void 0?this.$(t):X(t)?this.T(t):this._(t)}k(t){return this._$AA.parentNode.insertBefore(t,this._$AB)}$(t){this._$AH!==t&&(this._$AR(),this._$AH=this.k(t))}_(t){this._$AH!==a&&T(this._$AH)?this._$AA.nextSibling.data=t:this.$(v.createTextNode(t)),this._$AH=t}g(t){let{values:e,_$litType$:s}=t,i=typeof s=="number"?this._$AC(t):(s.el===void 0&&(s.el=N.createElement(G(s.h,s.h[0]),this.options)),s);if(this._$AH?._$AD===i)this._$AH.p(e);else{let r=new B(i,this),o=r.u(this.options);r.p(e),this.$(o),this._$AH=r}}_$AC(t){let e=j.get(t.strings);return e===void 0&&j.set(t.strings,e=new N(t)),e}T(t){Y(this._$AH)||(this._$AH=[],this._$AR());let e=this._$AH,s,i=0;for(let r of t)i===e.length?e.push(s=new n(this.k(M()),this.k(M()),this,this.options)):s=e[i],s._$AI(r),i++;i2||s[0]!==""||s[1]!==""?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=a}_$AI(t,e=this,s,i){let r=this.strings,o=!1;if(r===void 0)t=m(this,t,e,0),o=!T(t)||t!==this._$AH&&t!==f,o&&(this._$AH=t);else{let A=t,h,$;for(t=r[0],h=0;h(...t)=>({_$litDirective$:n,values:t}),I=class{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,s){this._$Ct=t,this._$AM=e,this._$Ci=s}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}};var C=class extends I{constructor(t){if(super(t),this.et=a,t.type!==J.CHILD)throw Error(this.constructor.directiveName+"() can only be used in child bindings")}render(t){if(t===a||t==null)return this.vt=void 0,this.et=t;if(t===f)return t;if(typeof t!="string")throw Error(this.constructor.directiveName+"() called with a non-string value");if(t===this.et)return this.vt;this.et=t;let e=[t];return e.raw=e,this.vt={_$litType$:this.constructor.resultType,strings:e,values:[]}}};C.directiveName="unsafeHTML",C.resultType=1;var lt=K(C);export{C as UnsafeHTMLDirective,lt as unsafeHTML}; -/*! Bundled license information: - -lit-html/lit-html.js: -lit-html/directive.js: -lit-html/directives/unsafe-html.js: - (** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - *) -*/ -//# sourceMappingURL=unsafe-html-XHRXA3MN.js.map diff --git a/tests/staticfiles/esm/node_modules/lit/directives/unsafe-html-XHRXA3MN.js.map b/tests/staticfiles/esm/node_modules/lit/directives/unsafe-html-XHRXA3MN.js.map deleted file mode 100644 index f8f5ba0..0000000 --- a/tests/staticfiles/esm/node_modules/lit/directives/unsafe-html-XHRXA3MN.js.map +++ /dev/null @@ -1,7 +0,0 @@ -{ - "version": 3, - "sources": ["../../../../../node_modules/lit-html/src/lit-html.ts", "../../../../../node_modules/lit-html/src/directive.ts", "../../../../../node_modules/lit-html/src/directives/unsafe-html.ts"], - "sourcesContent": ["/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n// IMPORTANT: these imports must be type-only\nimport type {Directive, DirectiveResult, PartInfo} from './directive.js';\n\nconst DEV_MODE = true;\nconst ENABLE_EXTRA_SECURITY_HOOKS = true;\nconst ENABLE_SHADYDOM_NOPATCH = true;\nconst NODE_MODE = false;\n\n// Allows minifiers to rename references to globalThis\nconst global = globalThis;\n\n/**\n * Contains types that are part of the unstable debug API.\n *\n * Everything in this API is not stable and may change or be removed in the future,\n * even on patch releases.\n */\n// eslint-disable-next-line @typescript-eslint/no-namespace\nexport namespace LitUnstable {\n /**\n * When Lit is running in dev mode and `window.emitLitDebugLogEvents` is true,\n * we will emit 'lit-debug' events to window, with live details about the update and render\n * lifecycle. These can be useful for writing debug tooling and visualizations.\n *\n * Please be aware that running with window.emitLitDebugLogEvents has performance overhead,\n * making certain operations that are normally very cheap (like a no-op render) much slower,\n * because we must copy data and dispatch events.\n */\n // eslint-disable-next-line @typescript-eslint/no-namespace\n export namespace DebugLog {\n export type Entry =\n | TemplatePrep\n | TemplateInstantiated\n | TemplateInstantiatedAndUpdated\n | TemplateUpdating\n | BeginRender\n | EndRender\n | CommitPartEntry\n | SetPartValue;\n export interface TemplatePrep {\n kind: 'template prep';\n template: Template;\n strings: TemplateStringsArray;\n clonableTemplate: HTMLTemplateElement;\n parts: TemplatePart[];\n }\n export interface BeginRender {\n kind: 'begin render';\n id: number;\n value: unknown;\n container: HTMLElement | DocumentFragment;\n options: RenderOptions | undefined;\n part: ChildPart | undefined;\n }\n export interface EndRender {\n kind: 'end render';\n id: number;\n value: unknown;\n container: HTMLElement | DocumentFragment;\n options: RenderOptions | undefined;\n part: ChildPart;\n }\n export interface TemplateInstantiated {\n kind: 'template instantiated';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n fragment: Node;\n parts: Array;\n values: unknown[];\n }\n export interface TemplateInstantiatedAndUpdated {\n kind: 'template instantiated and updated';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n fragment: Node;\n parts: Array;\n values: unknown[];\n }\n export interface TemplateUpdating {\n kind: 'template updating';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n parts: Array;\n values: unknown[];\n }\n export interface SetPartValue {\n kind: 'set part';\n part: Part;\n value: unknown;\n valueIndex: number;\n values: unknown[];\n templateInstance: TemplateInstance;\n }\n\n export type CommitPartEntry =\n | CommitNothingToChildEntry\n | CommitText\n | CommitNode\n | CommitAttribute\n | CommitProperty\n | CommitBooleanAttribute\n | CommitEventListener\n | CommitToElementBinding;\n\n export interface CommitNothingToChildEntry {\n kind: 'commit nothing to child';\n start: ChildNode;\n end: ChildNode | null;\n parent: Disconnectable | undefined;\n options: RenderOptions | undefined;\n }\n\n export interface CommitText {\n kind: 'commit text';\n node: Text;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitNode {\n kind: 'commit node';\n start: Node;\n parent: Disconnectable | undefined;\n value: Node;\n options: RenderOptions | undefined;\n }\n\n export interface CommitAttribute {\n kind: 'commit attribute';\n element: Element;\n name: string;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitProperty {\n kind: 'commit property';\n element: Element;\n name: string;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitBooleanAttribute {\n kind: 'commit boolean attribute';\n element: Element;\n name: string;\n value: boolean;\n options: RenderOptions | undefined;\n }\n\n export interface CommitEventListener {\n kind: 'commit event listener';\n element: Element;\n name: string;\n value: unknown;\n oldListener: unknown;\n options: RenderOptions | undefined;\n // True if we're removing the old event listener (e.g. because settings changed, or value is nothing)\n removeListener: boolean;\n // True if we're adding a new event listener (e.g. because first render, or settings changed)\n addListener: boolean;\n }\n\n export interface CommitToElementBinding {\n kind: 'commit to element binding';\n element: Element;\n value: unknown;\n options: RenderOptions | undefined;\n }\n }\n}\n\ninterface DebugLoggingWindow {\n // Even in dev mode, we generally don't want to emit these events, as that's\n // another level of cost, so only emit them when DEV_MODE is true _and_ when\n // window.emitLitDebugEvents is true.\n emitLitDebugLogEvents?: boolean;\n}\n\n/**\n * Useful for visualizing and logging insights into what the Lit template system is doing.\n *\n * Compiled out of prod mode builds.\n */\nconst debugLogEvent = DEV_MODE\n ? (event: LitUnstable.DebugLog.Entry) => {\n const shouldEmit = (global as unknown as DebugLoggingWindow)\n .emitLitDebugLogEvents;\n if (!shouldEmit) {\n return;\n }\n global.dispatchEvent(\n new CustomEvent('lit-debug', {\n detail: event,\n })\n );\n }\n : undefined;\n// Used for connecting beginRender and endRender events when there are nested\n// renders when errors are thrown preventing an endRender event from being\n// called.\nlet debugLogRenderId = 0;\n\nlet issueWarning: (code: string, warning: string) => void;\n\nif (DEV_MODE) {\n global.litIssuedWarnings ??= new Set();\n\n // Issue a warning, if we haven't already.\n issueWarning = (code: string, warning: string) => {\n warning += code\n ? ` See https://lit.dev/msg/${code} for more information.`\n : '';\n if (!global.litIssuedWarnings!.has(warning)) {\n console.warn(warning);\n global.litIssuedWarnings!.add(warning);\n }\n };\n\n issueWarning(\n 'dev-mode',\n `Lit is in dev mode. Not recommended for production!`\n );\n}\n\nconst wrap =\n ENABLE_SHADYDOM_NOPATCH &&\n global.ShadyDOM?.inUse &&\n global.ShadyDOM?.noPatch === true\n ? (global.ShadyDOM!.wrap as (node: T) => T)\n : (node: T) => node;\n\nconst trustedTypes = (global as unknown as Window).trustedTypes;\n\n/**\n * Our TrustedTypePolicy for HTML which is declared using the html template\n * tag function.\n *\n * That HTML is a developer-authored constant, and is parsed with innerHTML\n * before any untrusted expressions have been mixed in. Therefor it is\n * considered safe by construction.\n */\nconst policy = trustedTypes\n ? trustedTypes.createPolicy('lit-html', {\n createHTML: (s) => s,\n })\n : undefined;\n\n/**\n * Used to sanitize any value before it is written into the DOM. This can be\n * used to implement a security policy of allowed and disallowed values in\n * order to prevent XSS attacks.\n *\n * One way of using this callback would be to check attributes and properties\n * against a list of high risk fields, and require that values written to such\n * fields be instances of a class which is safe by construction. Closure's Safe\n * HTML Types is one implementation of this technique (\n * https://github.com/google/safe-html-types/blob/master/doc/safehtml-types.md).\n * The TrustedTypes polyfill in API-only mode could also be used as a basis\n * for this technique (https://github.com/WICG/trusted-types).\n *\n * @param node The HTML node (usually either a #text node or an Element) that\n * is being written to. Note that this is just an exemplar node, the write\n * may take place against another instance of the same class of node.\n * @param name The name of an attribute or property (for example, 'href').\n * @param type Indicates whether the write that's about to be performed will\n * be to a property or a node.\n * @return A function that will sanitize this class of writes.\n */\nexport type SanitizerFactory = (\n node: Node,\n name: string,\n type: 'property' | 'attribute'\n) => ValueSanitizer;\n\n/**\n * A function which can sanitize values that will be written to a specific kind\n * of DOM sink.\n *\n * See SanitizerFactory.\n *\n * @param value The value to sanitize. Will be the actual value passed into\n * the lit-html template literal, so this could be of any type.\n * @return The value to write to the DOM. Usually the same as the input value,\n * unless sanitization is needed.\n */\nexport type ValueSanitizer = (value: unknown) => unknown;\n\nconst identityFunction: ValueSanitizer = (value: unknown) => value;\nconst noopSanitizer: SanitizerFactory = (\n _node: Node,\n _name: string,\n _type: 'property' | 'attribute'\n) => identityFunction;\n\n/** Sets the global sanitizer factory. */\nconst setSanitizer = (newSanitizer: SanitizerFactory) => {\n if (!ENABLE_EXTRA_SECURITY_HOOKS) {\n return;\n }\n if (sanitizerFactoryInternal !== noopSanitizer) {\n throw new Error(\n `Attempted to overwrite existing lit-html security policy.` +\n ` setSanitizeDOMValueFactory should be called at most once.`\n );\n }\n sanitizerFactoryInternal = newSanitizer;\n};\n\n/**\n * Only used in internal tests, not a part of the public API.\n */\nconst _testOnlyClearSanitizerFactoryDoNotCallOrElse = () => {\n sanitizerFactoryInternal = noopSanitizer;\n};\n\nconst createSanitizer: SanitizerFactory = (node, name, type) => {\n return sanitizerFactoryInternal(node, name, type);\n};\n\n// Added to an attribute name to mark the attribute as bound so we can find\n// it easily.\nconst boundAttributeSuffix = '$lit$';\n\n// This marker is used in many syntactic positions in HTML, so it must be\n// a valid element name and attribute name. We don't support dynamic names (yet)\n// but this at least ensures that the parse tree is closer to the template\n// intention.\nconst marker = `lit$${String(Math.random()).slice(9)}$`;\n\n// String used to tell if a comment is a marker comment\nconst markerMatch = '?' + marker;\n\n// Text used to insert a comment marker node. We use processing instruction\n// syntax because it's slightly smaller, but parses as a comment node.\nconst nodeMarker = `<${markerMatch}>`;\n\nconst d =\n NODE_MODE && global.document === undefined\n ? ({\n createTreeWalker() {\n return {};\n },\n } as unknown as Document)\n : document;\n\n// Creates a dynamic marker. We never have to search for these in the DOM.\nconst createMarker = () => d.createComment('');\n\n// https://tc39.github.io/ecma262/#sec-typeof-operator\ntype Primitive = null | undefined | boolean | number | string | symbol | bigint;\nconst isPrimitive = (value: unknown): value is Primitive =>\n value === null || (typeof value != 'object' && typeof value != 'function');\nconst isArray = Array.isArray;\nconst isIterable = (value: unknown): value is Iterable =>\n isArray(value) ||\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n typeof (value as any)?.[Symbol.iterator] === 'function';\n\nconst SPACE_CHAR = `[ \\t\\n\\f\\r]`;\nconst ATTR_VALUE_CHAR = `[^ \\t\\n\\f\\r\"'\\`<>=]`;\nconst NAME_CHAR = `[^\\\\s\"'>=/]`;\n\n// These regexes represent the five parsing states that we care about in the\n// Template's HTML scanner. They match the *end* of the state they're named\n// after.\n// Depending on the match, we transition to a new state. If there's no match,\n// we stay in the same state.\n// Note that the regexes are stateful. We utilize lastIndex and sync it\n// across the multiple regexes used. In addition to the five regexes below\n// we also dynamically create a regex to find the matching end tags for raw\n// text elements.\n\n/**\n * End of text is: `<` followed by:\n * (comment start) or (tag) or (dynamic tag binding)\n */\nconst textEndRegex = /<(?:(!--|\\/[^a-zA-Z])|(\\/?[a-zA-Z][^>\\s]*)|(\\/?$))/g;\nconst COMMENT_START = 1;\nconst TAG_NAME = 2;\nconst DYNAMIC_TAG_NAME = 3;\n\nconst commentEndRegex = /-->/g;\n/**\n * Comments not started with /g,j=/>/g,u=RegExp(`>|${L}(?:([^\\s"'>=/]+)(${L}*=${L}*(?:[^ -\f\r"'\`<>=]|("|')|))|$)`,"g"),z=/'/g,Z=/"/g,J=/^(?:script|style|textarea|title)$/i,K=n=>(t,...e)=>({_$litType$:n,strings:t,values:e}),nt=K(1),rt=K(2),f=Symbol.for("lit-noChange"),a=Symbol.for("lit-nothing"),G=new WeakMap,g=v.createTreeWalker(v,129);function Q(n,t){if(!Array.isArray(n)||!n.hasOwnProperty("raw"))throw Error("invalid template strings array");return W!==void 0?W.createHTML(t):t}var et=(n,t)=>{let e=n.length-1,s=[],i,r=t===2?"":"",o=H;for(let A=0;A"?(o=i??H,l=-1):c[1]===void 0?l=-2:(l=o.lastIndex-c[2].length,$=c[1],o=c[3]===void 0?u:c[3]==='"'?Z:z):o===Z||o===z?o=u:o===k||o===j?o=H:(o=u,i=void 0);let d=o===u&&n[A+1].startsWith("/>")?" ":"";r+=o===H?h+X:l>=0?(s.push($),h.slice(0,l)+Y+h.slice(l)+p+d):h+p+(l===-2?A:d)}return[Q(n,r+(n[e]||"")+(t===2?"":"")),s]},C=class n{constructor({strings:t,_$litType$:e},s){let i;this.parts=[];let r=0,o=0,A=t.length-1,h=this.parts,[$,c]=et(t,e);if(this.el=n.createElement($,s),g.currentNode=this.el.content,e===2){let l=this.el.content.firstChild;l.replaceWith(...l.childNodes)}for(;(i=g.nextNode())!==null&&h.length0){i.textContent=I?I.emptyScript:"";for(let d=0;d<_;d++)i.append(l[d],S()),g.nextNode(),h.push({type:2,index:++r});i.append(l[_],S())}}}else if(i.nodeType===8)if(i.data===q)h.push({type:2,index:r});else{let l=-1;for(;(l=i.data.indexOf(p,l+1))!==-1;)h.push({type:7,index:r}),l+=p.length-1}r++}}static createElement(t,e){let s=v.createElement("template");return s.innerHTML=t,s}};function y(n,t,e=n,s){if(t===f)return t;let i=s!==void 0?e._$Co?.[s]:e._$Cl,r=N(t)?void 0:t._$litDirective$;return i?.constructor!==r&&(i?._$AO?.(!1),r===void 0?i=void 0:(i=new r(n),i._$AT(n,e,s)),s!==void 0?(e._$Co??(e._$Co=[]))[s]=i:e._$Cl=i),i!==void 0&&(t=y(n,i._$AS(n,t.values),i,s)),t}var B=class{constructor(t,e){this._$AV=[],this._$AN=void 0,this._$AD=t,this._$AM=e}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}u(t){let{el:{content:e},parts:s}=this._$AD,i=(t?.creationScope??v).importNode(e,!0);g.currentNode=i;let r=g.nextNode(),o=0,A=0,h=s[0];for(;h!==void 0;){if(o===h.index){let $;h.type===2?$=new U(r,r.nextSibling,this,t):h.type===1?$=new h.ctor(r,h.name,h.strings,this,t):h.type===6&&($=new O(r,this,t)),this._$AV.push($),h=s[++A]}o!==h?.index&&(r=g.nextNode(),o++)}return g.currentNode=v,i}p(t){let e=0;for(let s of this._$AV)s!==void 0&&(s.strings!==void 0?(s._$AI(t,s,e),e+=s.strings.length-2):s._$AI(t[e])),e++}},U=class n{get _$AU(){return this._$AM?._$AU??this._$Cv}constructor(t,e,s,i){this.type=2,this._$AH=a,this._$AN=void 0,this._$AA=t,this._$AB=e,this._$AM=s,this.options=i,this._$Cv=i?.isConnected??!0}get parentNode(){let t=this._$AA.parentNode,e=this._$AM;return e!==void 0&&t?.nodeType===11&&(t=e.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,e=this){t=y(this,t,e),N(t)?t===a||t==null||t===""?(this._$AH!==a&&this._$AR(),this._$AH=a):t!==this._$AH&&t!==f&&this._(t):t._$litType$!==void 0?this.g(t):t.nodeType!==void 0?this.$(t):tt(t)?this.T(t):this._(t)}k(t){return this._$AA.parentNode.insertBefore(t,this._$AB)}$(t){this._$AH!==t&&(this._$AR(),this._$AH=this.k(t))}_(t){this._$AH!==a&&N(this._$AH)?this._$AA.nextSibling.data=t:this.$(v.createTextNode(t)),this._$AH=t}g(t){let{values:e,_$litType$:s}=t,i=typeof s=="number"?this._$AC(t):(s.el===void 0&&(s.el=C.createElement(Q(s.h,s.h[0]),this.options)),s);if(this._$AH?._$AD===i)this._$AH.p(e);else{let r=new B(i,this),o=r.u(this.options);r.p(e),this.$(o),this._$AH=r}}_$AC(t){let e=G.get(t.strings);return e===void 0&&G.set(t.strings,e=new C(t)),e}T(t){F(this._$AH)||(this._$AH=[],this._$AR());let e=this._$AH,s,i=0;for(let r of t)i===e.length?e.push(s=new n(this.k(S()),this.k(S()),this,this.options)):s=e[i],s._$AI(r),i++;i2||s[0]!==""||s[1]!==""?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=a}_$AI(t,e=this,s,i){let r=this.strings,o=!1;if(r===void 0)t=y(this,t,e,0),o=!N(t)||t!==this._$AH&&t!==f,o&&(this._$AH=t);else{let A=t,h,$;for(t=r[0],h=0;h = Parameters;\n\n/**\n * A generated directive function doesn't evaluate the directive, but just\n * returns a DirectiveResult object that captures the arguments.\n */\nexport interface DirectiveResult {\n /**\n * This property needs to remain unminified.\n * @internal */\n ['_$litDirective$']: C;\n /** @internal */\n values: DirectiveParameters>;\n}\n\nexport const PartType = {\n ATTRIBUTE: 1,\n CHILD: 2,\n PROPERTY: 3,\n BOOLEAN_ATTRIBUTE: 4,\n EVENT: 5,\n ELEMENT: 6,\n} as const;\n\nexport type PartType = (typeof PartType)[keyof typeof PartType];\n\nexport interface ChildPartInfo {\n readonly type: typeof PartType.CHILD;\n}\n\nexport interface AttributePartInfo {\n readonly type:\n | typeof PartType.ATTRIBUTE\n | typeof PartType.PROPERTY\n | typeof PartType.BOOLEAN_ATTRIBUTE\n | typeof PartType.EVENT;\n readonly strings?: ReadonlyArray;\n readonly name: string;\n readonly tagName: string;\n}\n\nexport interface ElementPartInfo {\n readonly type: typeof PartType.ELEMENT;\n}\n\n/**\n * Information about the part a directive is bound to.\n *\n * This is useful for checking that a directive is attached to a valid part,\n * such as with directive that can only be used on attribute bindings.\n */\nexport type PartInfo = ChildPartInfo | AttributePartInfo | ElementPartInfo;\n\n/**\n * Creates a user-facing directive function from a Directive class. This\n * function has the same parameters as the directive's render() method.\n */\nexport const directive =\n (c: C) =>\n (...values: DirectiveParameters>): DirectiveResult => ({\n // This property needs to remain unminified.\n ['_$litDirective$']: c,\n values,\n });\n\n/**\n * Base class for creating custom directives. Users should extend this class,\n * implement `render` and/or `update`, and then pass their subclass to\n * `directive`.\n */\nexport abstract class Directive implements Disconnectable {\n //@internal\n __part!: Part;\n //@internal\n __attributeIndex: number | undefined;\n //@internal\n __directive?: Directive;\n\n //@internal\n _$parent!: Disconnectable;\n\n // These will only exist on the AsyncDirective subclass\n //@internal\n _$disconnectableChildren?: Set;\n // This property needs to remain unminified.\n //@internal\n ['_$notifyDirectiveConnectionChanged']?(isConnected: boolean): void;\n\n constructor(_partInfo: PartInfo) {}\n\n // See comment in Disconnectable interface for why this is a getter\n get _$isConnected() {\n return this._$parent._$isConnected;\n }\n\n /** @internal */\n _$initialize(\n part: Part,\n parent: Disconnectable,\n attributeIndex: number | undefined\n ) {\n this.__part = part;\n this._$parent = parent;\n this.__attributeIndex = attributeIndex;\n }\n /** @internal */\n _$resolve(part: Part, props: Array): unknown {\n return this.update(part, props);\n }\n\n abstract render(...props: Array): unknown;\n\n update(_part: Part, props: Array): unknown {\n return this.render(...props);\n }\n}\n", "/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n// IMPORTANT: these imports must be type-only\nimport type {Directive, DirectiveResult, PartInfo} from './directive.js';\n\nconst DEV_MODE = true;\nconst ENABLE_EXTRA_SECURITY_HOOKS = true;\nconst ENABLE_SHADYDOM_NOPATCH = true;\nconst NODE_MODE = false;\n\n// Allows minifiers to rename references to globalThis\nconst global = globalThis;\n\n/**\n * Contains types that are part of the unstable debug API.\n *\n * Everything in this API is not stable and may change or be removed in the future,\n * even on patch releases.\n */\n// eslint-disable-next-line @typescript-eslint/no-namespace\nexport namespace LitUnstable {\n /**\n * When Lit is running in dev mode and `window.emitLitDebugLogEvents` is true,\n * we will emit 'lit-debug' events to window, with live details about the update and render\n * lifecycle. These can be useful for writing debug tooling and visualizations.\n *\n * Please be aware that running with window.emitLitDebugLogEvents has performance overhead,\n * making certain operations that are normally very cheap (like a no-op render) much slower,\n * because we must copy data and dispatch events.\n */\n // eslint-disable-next-line @typescript-eslint/no-namespace\n export namespace DebugLog {\n export type Entry =\n | TemplatePrep\n | TemplateInstantiated\n | TemplateInstantiatedAndUpdated\n | TemplateUpdating\n | BeginRender\n | EndRender\n | CommitPartEntry\n | SetPartValue;\n export interface TemplatePrep {\n kind: 'template prep';\n template: Template;\n strings: TemplateStringsArray;\n clonableTemplate: HTMLTemplateElement;\n parts: TemplatePart[];\n }\n export interface BeginRender {\n kind: 'begin render';\n id: number;\n value: unknown;\n container: HTMLElement | DocumentFragment;\n options: RenderOptions | undefined;\n part: ChildPart | undefined;\n }\n export interface EndRender {\n kind: 'end render';\n id: number;\n value: unknown;\n container: HTMLElement | DocumentFragment;\n options: RenderOptions | undefined;\n part: ChildPart;\n }\n export interface TemplateInstantiated {\n kind: 'template instantiated';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n fragment: Node;\n parts: Array;\n values: unknown[];\n }\n export interface TemplateInstantiatedAndUpdated {\n kind: 'template instantiated and updated';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n fragment: Node;\n parts: Array;\n values: unknown[];\n }\n export interface TemplateUpdating {\n kind: 'template updating';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n parts: Array;\n values: unknown[];\n }\n export interface SetPartValue {\n kind: 'set part';\n part: Part;\n value: unknown;\n valueIndex: number;\n values: unknown[];\n templateInstance: TemplateInstance;\n }\n\n export type CommitPartEntry =\n | CommitNothingToChildEntry\n | CommitText\n | CommitNode\n | CommitAttribute\n | CommitProperty\n | CommitBooleanAttribute\n | CommitEventListener\n | CommitToElementBinding;\n\n export interface CommitNothingToChildEntry {\n kind: 'commit nothing to child';\n start: ChildNode;\n end: ChildNode | null;\n parent: Disconnectable | undefined;\n options: RenderOptions | undefined;\n }\n\n export interface CommitText {\n kind: 'commit text';\n node: Text;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitNode {\n kind: 'commit node';\n start: Node;\n parent: Disconnectable | undefined;\n value: Node;\n options: RenderOptions | undefined;\n }\n\n export interface CommitAttribute {\n kind: 'commit attribute';\n element: Element;\n name: string;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitProperty {\n kind: 'commit property';\n element: Element;\n name: string;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitBooleanAttribute {\n kind: 'commit boolean attribute';\n element: Element;\n name: string;\n value: boolean;\n options: RenderOptions | undefined;\n }\n\n export interface CommitEventListener {\n kind: 'commit event listener';\n element: Element;\n name: string;\n value: unknown;\n oldListener: unknown;\n options: RenderOptions | undefined;\n // True if we're removing the old event listener (e.g. because settings changed, or value is nothing)\n removeListener: boolean;\n // True if we're adding a new event listener (e.g. because first render, or settings changed)\n addListener: boolean;\n }\n\n export interface CommitToElementBinding {\n kind: 'commit to element binding';\n element: Element;\n value: unknown;\n options: RenderOptions | undefined;\n }\n }\n}\n\ninterface DebugLoggingWindow {\n // Even in dev mode, we generally don't want to emit these events, as that's\n // another level of cost, so only emit them when DEV_MODE is true _and_ when\n // window.emitLitDebugEvents is true.\n emitLitDebugLogEvents?: boolean;\n}\n\n/**\n * Useful for visualizing and logging insights into what the Lit template system is doing.\n *\n * Compiled out of prod mode builds.\n */\nconst debugLogEvent = DEV_MODE\n ? (event: LitUnstable.DebugLog.Entry) => {\n const shouldEmit = (global as unknown as DebugLoggingWindow)\n .emitLitDebugLogEvents;\n if (!shouldEmit) {\n return;\n }\n global.dispatchEvent(\n new CustomEvent('lit-debug', {\n detail: event,\n })\n );\n }\n : undefined;\n// Used for connecting beginRender and endRender events when there are nested\n// renders when errors are thrown preventing an endRender event from being\n// called.\nlet debugLogRenderId = 0;\n\nlet issueWarning: (code: string, warning: string) => void;\n\nif (DEV_MODE) {\n global.litIssuedWarnings ??= new Set();\n\n // Issue a warning, if we haven't already.\n issueWarning = (code: string, warning: string) => {\n warning += code\n ? ` See https://lit.dev/msg/${code} for more information.`\n : '';\n if (!global.litIssuedWarnings!.has(warning)) {\n console.warn(warning);\n global.litIssuedWarnings!.add(warning);\n }\n };\n\n issueWarning(\n 'dev-mode',\n `Lit is in dev mode. Not recommended for production!`\n );\n}\n\nconst wrap =\n ENABLE_SHADYDOM_NOPATCH &&\n global.ShadyDOM?.inUse &&\n global.ShadyDOM?.noPatch === true\n ? (global.ShadyDOM!.wrap as (node: T) => T)\n : (node: T) => node;\n\nconst trustedTypes = (global as unknown as Window).trustedTypes;\n\n/**\n * Our TrustedTypePolicy for HTML which is declared using the html template\n * tag function.\n *\n * That HTML is a developer-authored constant, and is parsed with innerHTML\n * before any untrusted expressions have been mixed in. Therefor it is\n * considered safe by construction.\n */\nconst policy = trustedTypes\n ? trustedTypes.createPolicy('lit-html', {\n createHTML: (s) => s,\n })\n : undefined;\n\n/**\n * Used to sanitize any value before it is written into the DOM. This can be\n * used to implement a security policy of allowed and disallowed values in\n * order to prevent XSS attacks.\n *\n * One way of using this callback would be to check attributes and properties\n * against a list of high risk fields, and require that values written to such\n * fields be instances of a class which is safe by construction. Closure's Safe\n * HTML Types is one implementation of this technique (\n * https://github.com/google/safe-html-types/blob/master/doc/safehtml-types.md).\n * The TrustedTypes polyfill in API-only mode could also be used as a basis\n * for this technique (https://github.com/WICG/trusted-types).\n *\n * @param node The HTML node (usually either a #text node or an Element) that\n * is being written to. Note that this is just an exemplar node, the write\n * may take place against another instance of the same class of node.\n * @param name The name of an attribute or property (for example, 'href').\n * @param type Indicates whether the write that's about to be performed will\n * be to a property or a node.\n * @return A function that will sanitize this class of writes.\n */\nexport type SanitizerFactory = (\n node: Node,\n name: string,\n type: 'property' | 'attribute'\n) => ValueSanitizer;\n\n/**\n * A function which can sanitize values that will be written to a specific kind\n * of DOM sink.\n *\n * See SanitizerFactory.\n *\n * @param value The value to sanitize. Will be the actual value passed into\n * the lit-html template literal, so this could be of any type.\n * @return The value to write to the DOM. Usually the same as the input value,\n * unless sanitization is needed.\n */\nexport type ValueSanitizer = (value: unknown) => unknown;\n\nconst identityFunction: ValueSanitizer = (value: unknown) => value;\nconst noopSanitizer: SanitizerFactory = (\n _node: Node,\n _name: string,\n _type: 'property' | 'attribute'\n) => identityFunction;\n\n/** Sets the global sanitizer factory. */\nconst setSanitizer = (newSanitizer: SanitizerFactory) => {\n if (!ENABLE_EXTRA_SECURITY_HOOKS) {\n return;\n }\n if (sanitizerFactoryInternal !== noopSanitizer) {\n throw new Error(\n `Attempted to overwrite existing lit-html security policy.` +\n ` setSanitizeDOMValueFactory should be called at most once.`\n );\n }\n sanitizerFactoryInternal = newSanitizer;\n};\n\n/**\n * Only used in internal tests, not a part of the public API.\n */\nconst _testOnlyClearSanitizerFactoryDoNotCallOrElse = () => {\n sanitizerFactoryInternal = noopSanitizer;\n};\n\nconst createSanitizer: SanitizerFactory = (node, name, type) => {\n return sanitizerFactoryInternal(node, name, type);\n};\n\n// Added to an attribute name to mark the attribute as bound so we can find\n// it easily.\nconst boundAttributeSuffix = '$lit$';\n\n// This marker is used in many syntactic positions in HTML, so it must be\n// a valid element name and attribute name. We don't support dynamic names (yet)\n// but this at least ensures that the parse tree is closer to the template\n// intention.\nconst marker = `lit$${String(Math.random()).slice(9)}$`;\n\n// String used to tell if a comment is a marker comment\nconst markerMatch = '?' + marker;\n\n// Text used to insert a comment marker node. We use processing instruction\n// syntax because it's slightly smaller, but parses as a comment node.\nconst nodeMarker = `<${markerMatch}>`;\n\nconst d =\n NODE_MODE && global.document === undefined\n ? ({\n createTreeWalker() {\n return {};\n },\n } as unknown as Document)\n : document;\n\n// Creates a dynamic marker. We never have to search for these in the DOM.\nconst createMarker = () => d.createComment('');\n\n// https://tc39.github.io/ecma262/#sec-typeof-operator\ntype Primitive = null | undefined | boolean | number | string | symbol | bigint;\nconst isPrimitive = (value: unknown): value is Primitive =>\n value === null || (typeof value != 'object' && typeof value != 'function');\nconst isArray = Array.isArray;\nconst isIterable = (value: unknown): value is Iterable =>\n isArray(value) ||\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n typeof (value as any)?.[Symbol.iterator] === 'function';\n\nconst SPACE_CHAR = `[ \\t\\n\\f\\r]`;\nconst ATTR_VALUE_CHAR = `[^ \\t\\n\\f\\r\"'\\`<>=]`;\nconst NAME_CHAR = `[^\\\\s\"'>=/]`;\n\n// These regexes represent the five parsing states that we care about in the\n// Template's HTML scanner. They match the *end* of the state they're named\n// after.\n// Depending on the match, we transition to a new state. If there's no match,\n// we stay in the same state.\n// Note that the regexes are stateful. We utilize lastIndex and sync it\n// across the multiple regexes used. In addition to the five regexes below\n// we also dynamically create a regex to find the matching end tags for raw\n// text elements.\n\n/**\n * End of text is: `<` followed by:\n * (comment start) or (tag) or (dynamic tag binding)\n */\nconst textEndRegex = /<(?:(!--|\\/[^a-zA-Z])|(\\/?[a-zA-Z][^>\\s]*)|(\\/?$))/g;\nconst COMMENT_START = 1;\nconst TAG_NAME = 2;\nconst DYNAMIC_TAG_NAME = 3;\n\nconst commentEndRegex = /-->/g;\n/**\n * Comments not started with /g,K=/>/g,f=RegExp(`>|${k}(?:([^\\s"'>=/]+)(${k}*=${k}*(?:[^ -\f\r"'\`<>=]|("|')|))|$)`,"g"),Q=/'/g,F=/"/g,et=/^(?:script|style|textarea|title)$/i,st=i=>(t,...e)=>({_$litType$:i,strings:t,values:e}),pt=st(1),ft=st(2),p=Symbol.for("lit-noChange"),_=Symbol.for("lit-nothing"),J=new WeakMap,v=m.createTreeWalker(m,129);function it(i,t){if(!Array.isArray(i)||!i.hasOwnProperty("raw"))throw Error("invalid template strings array");return Y!==void 0?Y.createHTML(t):t}var nt=(i,t)=>{let e=i.length-1,s=[],n,r=t===2?"":"",h=C;for(let a=0;a"?(h=n??C,$=-1):l[1]===void 0?$=-2:($=h.lastIndex-l[2].length,c=l[1],h=l[3]===void 0?f:l[3]==='"'?F:Q):h===F||h===Q?h=f:h===q||h===K?h=C:(h=f,n=void 0);let u=h===f&&i[a+1].startsWith("/>")?" ":"";r+=h===C?o+at:$>=0?(s.push(c),o.slice(0,$)+W+o.slice($)+d+u):o+d+($===-2?a:u)}return[it(i,r+(i[e]||"")+(t===2?"":"")),s]},H=class i{constructor({strings:t,_$litType$:e},s){let n;this.parts=[];let r=0,h=0,a=t.length-1,o=this.parts,[c,l]=nt(t,e);if(this.el=i.createElement(c,s),v.currentNode=this.el.content,e===2){let $=this.el.content.firstChild;$.replaceWith(...$.childNodes)}for(;(n=v.nextNode())!==null&&o.length0){n.textContent=M?M.emptyScript:"";for(let u=0;u2||s[0]!==""||s[1]!==""?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=_}_$AI(t,e=this,s,n){let r=this.strings,h=!1;if(r===void 0)t=g(this,t,e,0),h=!T(t)||t!==this._$AH&&t!==p,h&&(this._$AH=t);else{let a=t,o,c;for(t=r[0],o=0;oi===null||typeof i!="object"&&typeof i!="function";var ht=i=>i.strings===void 0;var j={ATTRIBUTE:1,CHILD:2,PROPERTY:3,BOOLEAN_ATTRIBUTE:4,EVENT:5,ELEMENT:6},z=i=>(...t)=>({_$litDirective$:i,values:t}),P=class{constructor(t){}get _$AU(){return this._$AM._$AU}_$AT(t,e,s){this._$Ct=t,this._$AM=e,this._$Ci=s}_$AS(t,e){return this.update(t,e)}update(t,e){return this.render(...e)}};var w=(i,t)=>{let e=i._$AN;if(e===void 0)return!1;for(let s of e)s._$AO?.(t,!1),w(s,t);return!0},U=i=>{let t,e;do{if((t=i._$AM)===void 0)break;e=t._$AN,e.delete(i),i=t}while(e?.size===0)},$t=i=>{for(let t;t=i._$AM;i=t){let e=t._$AN;if(e===void 0)t._$AN=e=new Set;else if(e.has(i))break;e.add(i),ut(t)}};function At(i){this._$AN!==void 0?(U(this),this._$AM=i,$t(this)):this._$AM=i}function dt(i,t=!1,e=0){let s=this._$AH,n=this._$AN;if(n!==void 0&&n.size!==0)if(t)if(Array.isArray(s))for(let r=e;r{i.type==j.CHILD&&(i._$AP??(i._$AP=dt),i._$AQ??(i._$AQ=At))},O=class extends P{constructor(){super(...arguments),this._$AN=void 0}_$AT(t,e,s){super._$AT(t,e,s),$t(this),this.isConnected=t._$AU}_$AO(t,e=!0){t!==this.isConnected&&(this.isConnected=t,t?this.reconnected?.():this.disconnected?.()),e&&(w(this,t),U(this))}setValue(t){if(ht(this._$Ct))this._$Ct._$AI(t,this);else{let e=[...this._$Ct._$AH];e[this._$Ci]=t,this._$Ct._$AI(e,this,0)}}disconnected(){}reconnected(){}};var L=class{constructor(t){this.G=t}disconnect(){this.G=void 0}reconnect(t){this.G=t}deref(){return this.G}},V=class{constructor(){this.Y=void 0,this.Z=void 0}get(){return this.Y}pause(){this.Y??(this.Y=new Promise(t=>this.Z=t))}resume(){this.Z?.(),this.Y=this.Z=void 0}};var lt=i=>!ot(i)&&typeof i.then=="function",ct=1073741823,G=class extends O{constructor(){super(...arguments),this._$C_t=ct,this._$Cwt=[],this._$Cq=new L(this),this._$CK=new V}render(...t){return t.find(e=>!lt(e))??p}update(t,e){let s=this._$Cwt,n=s.length;this._$Cwt=e;let r=this._$Cq,h=this._$CK;this.isConnected||this.disconnected();for(let a=0;athis._$C_t);a++){let o=e[a];if(!lt(o))return this._$C_t=a,o;a{for(;h.get();)await h.get();let l=r.deref();if(l!==void 0){let $=l._$Cwt.indexOf(o);$>-1&&$;\n values: unknown[];\n }\n export interface TemplateInstantiatedAndUpdated {\n kind: 'template instantiated and updated';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n fragment: Node;\n parts: Array;\n values: unknown[];\n }\n export interface TemplateUpdating {\n kind: 'template updating';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n parts: Array;\n values: unknown[];\n }\n export interface SetPartValue {\n kind: 'set part';\n part: Part;\n value: unknown;\n valueIndex: number;\n values: unknown[];\n templateInstance: TemplateInstance;\n }\n\n export type CommitPartEntry =\n | CommitNothingToChildEntry\n | CommitText\n | CommitNode\n | CommitAttribute\n | CommitProperty\n | CommitBooleanAttribute\n | CommitEventListener\n | CommitToElementBinding;\n\n export interface CommitNothingToChildEntry {\n kind: 'commit nothing to child';\n start: ChildNode;\n end: ChildNode | null;\n parent: Disconnectable | undefined;\n options: RenderOptions | undefined;\n }\n\n export interface CommitText {\n kind: 'commit text';\n node: Text;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitNode {\n kind: 'commit node';\n start: Node;\n parent: Disconnectable | undefined;\n value: Node;\n options: RenderOptions | undefined;\n }\n\n export interface CommitAttribute {\n kind: 'commit attribute';\n element: Element;\n name: string;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitProperty {\n kind: 'commit property';\n element: Element;\n name: string;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitBooleanAttribute {\n kind: 'commit boolean attribute';\n element: Element;\n name: string;\n value: boolean;\n options: RenderOptions | undefined;\n }\n\n export interface CommitEventListener {\n kind: 'commit event listener';\n element: Element;\n name: string;\n value: unknown;\n oldListener: unknown;\n options: RenderOptions | undefined;\n // True if we're removing the old event listener (e.g. because settings changed, or value is nothing)\n removeListener: boolean;\n // True if we're adding a new event listener (e.g. because first render, or settings changed)\n addListener: boolean;\n }\n\n export interface CommitToElementBinding {\n kind: 'commit to element binding';\n element: Element;\n value: unknown;\n options: RenderOptions | undefined;\n }\n }\n}\n\ninterface DebugLoggingWindow {\n // Even in dev mode, we generally don't want to emit these events, as that's\n // another level of cost, so only emit them when DEV_MODE is true _and_ when\n // window.emitLitDebugEvents is true.\n emitLitDebugLogEvents?: boolean;\n}\n\n/**\n * Useful for visualizing and logging insights into what the Lit template system is doing.\n *\n * Compiled out of prod mode builds.\n */\nconst debugLogEvent = DEV_MODE\n ? (event: LitUnstable.DebugLog.Entry) => {\n const shouldEmit = (global as unknown as DebugLoggingWindow)\n .emitLitDebugLogEvents;\n if (!shouldEmit) {\n return;\n }\n global.dispatchEvent(\n new CustomEvent('lit-debug', {\n detail: event,\n })\n );\n }\n : undefined;\n// Used for connecting beginRender and endRender events when there are nested\n// renders when errors are thrown preventing an endRender event from being\n// called.\nlet debugLogRenderId = 0;\n\nlet issueWarning: (code: string, warning: string) => void;\n\nif (DEV_MODE) {\n global.litIssuedWarnings ??= new Set();\n\n // Issue a warning, if we haven't already.\n issueWarning = (code: string, warning: string) => {\n warning += code\n ? ` See https://lit.dev/msg/${code} for more information.`\n : '';\n if (!global.litIssuedWarnings!.has(warning)) {\n console.warn(warning);\n global.litIssuedWarnings!.add(warning);\n }\n };\n\n issueWarning(\n 'dev-mode',\n `Lit is in dev mode. Not recommended for production!`\n );\n}\n\nconst wrap =\n ENABLE_SHADYDOM_NOPATCH &&\n global.ShadyDOM?.inUse &&\n global.ShadyDOM?.noPatch === true\n ? (global.ShadyDOM!.wrap as (node: T) => T)\n : (node: T) => node;\n\nconst trustedTypes = (global as unknown as Window).trustedTypes;\n\n/**\n * Our TrustedTypePolicy for HTML which is declared using the html template\n * tag function.\n *\n * That HTML is a developer-authored constant, and is parsed with innerHTML\n * before any untrusted expressions have been mixed in. Therefor it is\n * considered safe by construction.\n */\nconst policy = trustedTypes\n ? trustedTypes.createPolicy('lit-html', {\n createHTML: (s) => s,\n })\n : undefined;\n\n/**\n * Used to sanitize any value before it is written into the DOM. This can be\n * used to implement a security policy of allowed and disallowed values in\n * order to prevent XSS attacks.\n *\n * One way of using this callback would be to check attributes and properties\n * against a list of high risk fields, and require that values written to such\n * fields be instances of a class which is safe by construction. Closure's Safe\n * HTML Types is one implementation of this technique (\n * https://github.com/google/safe-html-types/blob/master/doc/safehtml-types.md).\n * The TrustedTypes polyfill in API-only mode could also be used as a basis\n * for this technique (https://github.com/WICG/trusted-types).\n *\n * @param node The HTML node (usually either a #text node or an Element) that\n * is being written to. Note that this is just an exemplar node, the write\n * may take place against another instance of the same class of node.\n * @param name The name of an attribute or property (for example, 'href').\n * @param type Indicates whether the write that's about to be performed will\n * be to a property or a node.\n * @return A function that will sanitize this class of writes.\n */\nexport type SanitizerFactory = (\n node: Node,\n name: string,\n type: 'property' | 'attribute'\n) => ValueSanitizer;\n\n/**\n * A function which can sanitize values that will be written to a specific kind\n * of DOM sink.\n *\n * See SanitizerFactory.\n *\n * @param value The value to sanitize. Will be the actual value passed into\n * the lit-html template literal, so this could be of any type.\n * @return The value to write to the DOM. Usually the same as the input value,\n * unless sanitization is needed.\n */\nexport type ValueSanitizer = (value: unknown) => unknown;\n\nconst identityFunction: ValueSanitizer = (value: unknown) => value;\nconst noopSanitizer: SanitizerFactory = (\n _node: Node,\n _name: string,\n _type: 'property' | 'attribute'\n) => identityFunction;\n\n/** Sets the global sanitizer factory. */\nconst setSanitizer = (newSanitizer: SanitizerFactory) => {\n if (!ENABLE_EXTRA_SECURITY_HOOKS) {\n return;\n }\n if (sanitizerFactoryInternal !== noopSanitizer) {\n throw new Error(\n `Attempted to overwrite existing lit-html security policy.` +\n ` setSanitizeDOMValueFactory should be called at most once.`\n );\n }\n sanitizerFactoryInternal = newSanitizer;\n};\n\n/**\n * Only used in internal tests, not a part of the public API.\n */\nconst _testOnlyClearSanitizerFactoryDoNotCallOrElse = () => {\n sanitizerFactoryInternal = noopSanitizer;\n};\n\nconst createSanitizer: SanitizerFactory = (node, name, type) => {\n return sanitizerFactoryInternal(node, name, type);\n};\n\n// Added to an attribute name to mark the attribute as bound so we can find\n// it easily.\nconst boundAttributeSuffix = '$lit$';\n\n// This marker is used in many syntactic positions in HTML, so it must be\n// a valid element name and attribute name. We don't support dynamic names (yet)\n// but this at least ensures that the parse tree is closer to the template\n// intention.\nconst marker = `lit$${String(Math.random()).slice(9)}$`;\n\n// String used to tell if a comment is a marker comment\nconst markerMatch = '?' + marker;\n\n// Text used to insert a comment marker node. We use processing instruction\n// syntax because it's slightly smaller, but parses as a comment node.\nconst nodeMarker = `<${markerMatch}>`;\n\nconst d =\n NODE_MODE && global.document === undefined\n ? ({\n createTreeWalker() {\n return {};\n },\n } as unknown as Document)\n : document;\n\n// Creates a dynamic marker. We never have to search for these in the DOM.\nconst createMarker = () => d.createComment('');\n\n// https://tc39.github.io/ecma262/#sec-typeof-operator\ntype Primitive = null | undefined | boolean | number | string | symbol | bigint;\nconst isPrimitive = (value: unknown): value is Primitive =>\n value === null || (typeof value != 'object' && typeof value != 'function');\nconst isArray = Array.isArray;\nconst isIterable = (value: unknown): value is Iterable =>\n isArray(value) ||\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n typeof (value as any)?.[Symbol.iterator] === 'function';\n\nconst SPACE_CHAR = `[ \\t\\n\\f\\r]`;\nconst ATTR_VALUE_CHAR = `[^ \\t\\n\\f\\r\"'\\`<>=]`;\nconst NAME_CHAR = `[^\\\\s\"'>=/]`;\n\n// These regexes represent the five parsing states that we care about in the\n// Template's HTML scanner. They match the *end* of the state they're named\n// after.\n// Depending on the match, we transition to a new state. If there's no match,\n// we stay in the same state.\n// Note that the regexes are stateful. We utilize lastIndex and sync it\n// across the multiple regexes used. In addition to the five regexes below\n// we also dynamically create a regex to find the matching end tags for raw\n// text elements.\n\n/**\n * End of text is: `<` followed by:\n * (comment start) or (tag) or (dynamic tag binding)\n */\nconst textEndRegex = /<(?:(!--|\\/[^a-zA-Z])|(\\/?[a-zA-Z][^>\\s]*)|(\\/?$))/g;\nconst COMMENT_START = 1;\nconst TAG_NAME = 2;\nconst DYNAMIC_TAG_NAME = 3;\n\nconst commentEndRegex = /-->/g;\n/**\n * Comments not started with /g,k=/>/g,u=RegExp(`>|${U}(?:([^\\s"'>=/]+)(${U}*=${U}*(?:[^ -\f\r"'\`<>=]|("|')|))|$)`,"g"),D=/'/g,V=/"/g,q=/^(?:script|style|textarea|title)$/i,F=o=>(t,...s)=>({_$litType$:o,strings:t,values:s}),X=F(1),Y=F(2),C=Symbol.for("lit-noChange"),A=Symbol.for("lit-nothing"),j=new WeakMap,g=v.createTreeWalker(v,129);function G(o,t){if(!Array.isArray(o)||!o.hasOwnProperty("raw"))throw Error("invalid template strings array");return L!==void 0?L.createHTML(t):t}var J=(o,t)=>{let s=o.length-1,e=[],i,n=t===2?"":"",r=x;for(let _=0;_"?(r=i??x,l=-1):a[1]===void 0?l=-2:(l=r.lastIndex-a[2].length,$=a[1],r=a[3]===void 0?u:a[3]==='"'?V:D):r===V||r===D?r=u:r===W||r===k?r=x:(r=u,i=void 0);let p=r===u&&o[_+1].startsWith("/>")?" ":"";n+=r===x?h+K:l>=0?(e.push($),h.slice(0,l)+O+h.slice(l)+d+p):h+d+(l===-2?_:p)}return[G(o,n+(o[s]||"")+(t===2?"":"")),e]},T=class o{constructor({strings:t,_$litType$:s},e){let i;this.parts=[];let n=0,r=0,_=t.length-1,h=this.parts,[$,a]=J(t,s);if(this.el=o.createElement($,e),g.currentNode=this.el.content,s===2){let l=this.el.content.firstChild;l.replaceWith(...l.childNodes)}for(;(i=g.nextNode())!==null&&h.length<_;){if(i.nodeType===1){if(i.hasAttributes())for(let l of i.getAttributeNames())if(l.endsWith(O)){let c=a[r++],p=i.getAttribute(l).split(d),M=/([.?@])?(.*)/.exec(c);h.push({type:1,index:n,name:M[2],strings:p,ctor:M[1]==="."?S:M[1]==="?"?I:M[1]==="@"?B:m}),i.removeAttribute(l)}else l.startsWith(d)&&(h.push({type:6,index:n}),i.removeAttribute(l));if(q.test(i.tagName)){let l=i.textContent.split(d),c=l.length-1;if(c>0){i.textContent=w?w.emptyScript:"";for(let p=0;p2||e[0]!==""||e[1]!==""?(this._$AH=Array(e.length-1).fill(new String),this.strings=e):this._$AH=A}_$AI(t,s=this,e,i){let n=this.strings,r=!1;if(n===void 0)t=f(this,t,s,0),r=!b(t)||t!==this._$AH&&t!==C,r&&(this._$AH=t);else{let _=t,h,$;for(t=n[0],h=0;h{let e=s?.renderBefore??t,i=e._$litPart$;if(i===void 0){let n=s?.renderBefore??null;e._$litPart$=i=new y(t.insertBefore(N(),n),n,void 0,s??{})}return i._$AI(o),i};export{tt as _$LH,X as html,C as noChange,A as nothing,et as render,Y as svg}; -/*! Bundled license information: - -lit-html/lit-html.js: - (** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - *) -*/ -//# sourceMappingURL=html-QWFLKG3K.js.map diff --git a/tests/staticfiles/esm/node_modules/lit/html-QWFLKG3K.js.map b/tests/staticfiles/esm/node_modules/lit/html-QWFLKG3K.js.map deleted file mode 100644 index b8e286c..0000000 --- a/tests/staticfiles/esm/node_modules/lit/html-QWFLKG3K.js.map +++ /dev/null @@ -1,7 +0,0 @@ -{ - "version": 3, - "sources": ["../../../../node_modules/lit-html/src/lit-html.ts"], - "sourcesContent": ["/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n// IMPORTANT: these imports must be type-only\nimport type {Directive, DirectiveResult, PartInfo} from './directive.js';\n\nconst DEV_MODE = true;\nconst ENABLE_EXTRA_SECURITY_HOOKS = true;\nconst ENABLE_SHADYDOM_NOPATCH = true;\nconst NODE_MODE = false;\n\n// Allows minifiers to rename references to globalThis\nconst global = globalThis;\n\n/**\n * Contains types that are part of the unstable debug API.\n *\n * Everything in this API is not stable and may change or be removed in the future,\n * even on patch releases.\n */\n// eslint-disable-next-line @typescript-eslint/no-namespace\nexport namespace LitUnstable {\n /**\n * When Lit is running in dev mode and `window.emitLitDebugLogEvents` is true,\n * we will emit 'lit-debug' events to window, with live details about the update and render\n * lifecycle. These can be useful for writing debug tooling and visualizations.\n *\n * Please be aware that running with window.emitLitDebugLogEvents has performance overhead,\n * making certain operations that are normally very cheap (like a no-op render) much slower,\n * because we must copy data and dispatch events.\n */\n // eslint-disable-next-line @typescript-eslint/no-namespace\n export namespace DebugLog {\n export type Entry =\n | TemplatePrep\n | TemplateInstantiated\n | TemplateInstantiatedAndUpdated\n | TemplateUpdating\n | BeginRender\n | EndRender\n | CommitPartEntry\n | SetPartValue;\n export interface TemplatePrep {\n kind: 'template prep';\n template: Template;\n strings: TemplateStringsArray;\n clonableTemplate: HTMLTemplateElement;\n parts: TemplatePart[];\n }\n export interface BeginRender {\n kind: 'begin render';\n id: number;\n value: unknown;\n container: HTMLElement | DocumentFragment;\n options: RenderOptions | undefined;\n part: ChildPart | undefined;\n }\n export interface EndRender {\n kind: 'end render';\n id: number;\n value: unknown;\n container: HTMLElement | DocumentFragment;\n options: RenderOptions | undefined;\n part: ChildPart;\n }\n export interface TemplateInstantiated {\n kind: 'template instantiated';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n fragment: Node;\n parts: Array;\n values: unknown[];\n }\n export interface TemplateInstantiatedAndUpdated {\n kind: 'template instantiated and updated';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n fragment: Node;\n parts: Array;\n values: unknown[];\n }\n export interface TemplateUpdating {\n kind: 'template updating';\n template: Template | CompiledTemplate;\n instance: TemplateInstance;\n options: RenderOptions | undefined;\n parts: Array;\n values: unknown[];\n }\n export interface SetPartValue {\n kind: 'set part';\n part: Part;\n value: unknown;\n valueIndex: number;\n values: unknown[];\n templateInstance: TemplateInstance;\n }\n\n export type CommitPartEntry =\n | CommitNothingToChildEntry\n | CommitText\n | CommitNode\n | CommitAttribute\n | CommitProperty\n | CommitBooleanAttribute\n | CommitEventListener\n | CommitToElementBinding;\n\n export interface CommitNothingToChildEntry {\n kind: 'commit nothing to child';\n start: ChildNode;\n end: ChildNode | null;\n parent: Disconnectable | undefined;\n options: RenderOptions | undefined;\n }\n\n export interface CommitText {\n kind: 'commit text';\n node: Text;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitNode {\n kind: 'commit node';\n start: Node;\n parent: Disconnectable | undefined;\n value: Node;\n options: RenderOptions | undefined;\n }\n\n export interface CommitAttribute {\n kind: 'commit attribute';\n element: Element;\n name: string;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitProperty {\n kind: 'commit property';\n element: Element;\n name: string;\n value: unknown;\n options: RenderOptions | undefined;\n }\n\n export interface CommitBooleanAttribute {\n kind: 'commit boolean attribute';\n element: Element;\n name: string;\n value: boolean;\n options: RenderOptions | undefined;\n }\n\n export interface CommitEventListener {\n kind: 'commit event listener';\n element: Element;\n name: string;\n value: unknown;\n oldListener: unknown;\n options: RenderOptions | undefined;\n // True if we're removing the old event listener (e.g. because settings changed, or value is nothing)\n removeListener: boolean;\n // True if we're adding a new event listener (e.g. because first render, or settings changed)\n addListener: boolean;\n }\n\n export interface CommitToElementBinding {\n kind: 'commit to element binding';\n element: Element;\n value: unknown;\n options: RenderOptions | undefined;\n }\n }\n}\n\ninterface DebugLoggingWindow {\n // Even in dev mode, we generally don't want to emit these events, as that's\n // another level of cost, so only emit them when DEV_MODE is true _and_ when\n // window.emitLitDebugEvents is true.\n emitLitDebugLogEvents?: boolean;\n}\n\n/**\n * Useful for visualizing and logging insights into what the Lit template system is doing.\n *\n * Compiled out of prod mode builds.\n */\nconst debugLogEvent = DEV_MODE\n ? (event: LitUnstable.DebugLog.Entry) => {\n const shouldEmit = (global as unknown as DebugLoggingWindow)\n .emitLitDebugLogEvents;\n if (!shouldEmit) {\n return;\n }\n global.dispatchEvent(\n new CustomEvent('lit-debug', {\n detail: event,\n })\n );\n }\n : undefined;\n// Used for connecting beginRender and endRender events when there are nested\n// renders when errors are thrown preventing an endRender event from being\n// called.\nlet debugLogRenderId = 0;\n\nlet issueWarning: (code: string, warning: string) => void;\n\nif (DEV_MODE) {\n global.litIssuedWarnings ??= new Set();\n\n // Issue a warning, if we haven't already.\n issueWarning = (code: string, warning: string) => {\n warning += code\n ? ` See https://lit.dev/msg/${code} for more information.`\n : '';\n if (!global.litIssuedWarnings!.has(warning)) {\n console.warn(warning);\n global.litIssuedWarnings!.add(warning);\n }\n };\n\n issueWarning(\n 'dev-mode',\n `Lit is in dev mode. Not recommended for production!`\n );\n}\n\nconst wrap =\n ENABLE_SHADYDOM_NOPATCH &&\n global.ShadyDOM?.inUse &&\n global.ShadyDOM?.noPatch === true\n ? (global.ShadyDOM!.wrap as (node: T) => T)\n : (node: T) => node;\n\nconst trustedTypes = (global as unknown as Window).trustedTypes;\n\n/**\n * Our TrustedTypePolicy for HTML which is declared using the html template\n * tag function.\n *\n * That HTML is a developer-authored constant, and is parsed with innerHTML\n * before any untrusted expressions have been mixed in. Therefor it is\n * considered safe by construction.\n */\nconst policy = trustedTypes\n ? trustedTypes.createPolicy('lit-html', {\n createHTML: (s) => s,\n })\n : undefined;\n\n/**\n * Used to sanitize any value before it is written into the DOM. This can be\n * used to implement a security policy of allowed and disallowed values in\n * order to prevent XSS attacks.\n *\n * One way of using this callback would be to check attributes and properties\n * against a list of high risk fields, and require that values written to such\n * fields be instances of a class which is safe by construction. Closure's Safe\n * HTML Types is one implementation of this technique (\n * https://github.com/google/safe-html-types/blob/master/doc/safehtml-types.md).\n * The TrustedTypes polyfill in API-only mode could also be used as a basis\n * for this technique (https://github.com/WICG/trusted-types).\n *\n * @param node The HTML node (usually either a #text node or an Element) that\n * is being written to. Note that this is just an exemplar node, the write\n * may take place against another instance of the same class of node.\n * @param name The name of an attribute or property (for example, 'href').\n * @param type Indicates whether the write that's about to be performed will\n * be to a property or a node.\n * @return A function that will sanitize this class of writes.\n */\nexport type SanitizerFactory = (\n node: Node,\n name: string,\n type: 'property' | 'attribute'\n) => ValueSanitizer;\n\n/**\n * A function which can sanitize values that will be written to a specific kind\n * of DOM sink.\n *\n * See SanitizerFactory.\n *\n * @param value The value to sanitize. Will be the actual value passed into\n * the lit-html template literal, so this could be of any type.\n * @return The value to write to the DOM. Usually the same as the input value,\n * unless sanitization is needed.\n */\nexport type ValueSanitizer = (value: unknown) => unknown;\n\nconst identityFunction: ValueSanitizer = (value: unknown) => value;\nconst noopSanitizer: SanitizerFactory = (\n _node: Node,\n _name: string,\n _type: 'property' | 'attribute'\n) => identityFunction;\n\n/** Sets the global sanitizer factory. */\nconst setSanitizer = (newSanitizer: SanitizerFactory) => {\n if (!ENABLE_EXTRA_SECURITY_HOOKS) {\n return;\n }\n if (sanitizerFactoryInternal !== noopSanitizer) {\n throw new Error(\n `Attempted to overwrite existing lit-html security policy.` +\n ` setSanitizeDOMValueFactory should be called at most once.`\n );\n }\n sanitizerFactoryInternal = newSanitizer;\n};\n\n/**\n * Only used in internal tests, not a part of the public API.\n */\nconst _testOnlyClearSanitizerFactoryDoNotCallOrElse = () => {\n sanitizerFactoryInternal = noopSanitizer;\n};\n\nconst createSanitizer: SanitizerFactory = (node, name, type) => {\n return sanitizerFactoryInternal(node, name, type);\n};\n\n// Added to an attribute name to mark the attribute as bound so we can find\n// it easily.\nconst boundAttributeSuffix = '$lit$';\n\n// This marker is used in many syntactic positions in HTML, so it must be\n// a valid element name and attribute name. We don't support dynamic names (yet)\n// but this at least ensures that the parse tree is closer to the template\n// intention.\nconst marker = `lit$${String(Math.random()).slice(9)}$`;\n\n// String used to tell if a comment is a marker comment\nconst markerMatch = '?' + marker;\n\n// Text used to insert a comment marker node. We use processing instruction\n// syntax because it's slightly smaller, but parses as a comment node.\nconst nodeMarker = `<${markerMatch}>`;\n\nconst d =\n NODE_MODE && global.document === undefined\n ? ({\n createTreeWalker() {\n return {};\n },\n } as unknown as Document)\n : document;\n\n// Creates a dynamic marker. We never have to search for these in the DOM.\nconst createMarker = () => d.createComment('');\n\n// https://tc39.github.io/ecma262/#sec-typeof-operator\ntype Primitive = null | undefined | boolean | number | string | symbol | bigint;\nconst isPrimitive = (value: unknown): value is Primitive =>\n value === null || (typeof value != 'object' && typeof value != 'function');\nconst isArray = Array.isArray;\nconst isIterable = (value: unknown): value is Iterable =>\n isArray(value) ||\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n typeof (value as any)?.[Symbol.iterator] === 'function';\n\nconst SPACE_CHAR = `[ \\t\\n\\f\\r]`;\nconst ATTR_VALUE_CHAR = `[^ \\t\\n\\f\\r\"'\\`<>=]`;\nconst NAME_CHAR = `[^\\\\s\"'>=/]`;\n\n// These regexes represent the five parsing states that we care about in the\n// Template's HTML scanner. They match the *end* of the state they're named\n// after.\n// Depending on the match, we transition to a new state. If there's no match,\n// we stay in the same state.\n// Note that the regexes are stateful. We utilize lastIndex and sync it\n// across the multiple regexes used. In addition to the five regexes below\n// we also dynamically create a regex to find the matching end tags for raw\n// text elements.\n\n/**\n * End of text is: `<` followed by:\n * (comment start) or (tag) or (dynamic tag binding)\n */\nconst textEndRegex = /<(?:(!--|\\/[^a-zA-Z])|(\\/?[a-zA-Z][^>\\s]*)|(\\/?$))/g;\nconst COMMENT_START = 1;\nconst TAG_NAME = 2;\nconst DYNAMIC_TAG_NAME = 3;\n\nconst commentEndRegex = /-->/g;\n/**\n * Comments not started with /g,st=/>/g,m=RegExp(`>|${K}(?:([^\\s"'>=/]+)(${K}*=${K}*(?:[^ -\f\r"'\`<>=]|("|')|))|$)`,"g"),it=/'/g,rt=/"/g,at=/^(?:script|style|textarea|title)$/i,lt=r=>(t,...e)=>({_$litType$:r,strings:t,values:e}),Ut=lt(1),Tt=lt(2),v=Symbol.for("lit-noChange"),c=Symbol.for("lit-nothing"),ot=new WeakMap,g=y.createTreeWalker(y,129);function ct(r,t){if(!Array.isArray(r)||!r.hasOwnProperty("raw"))throw Error("invalid template strings array");return tt!==void 0?tt.createHTML(t):t}var dt=(r,t)=>{let e=r.length-1,s=[],i,o=t===2?"":"",n=P;for(let p=0;p"?(n=i??P,a=-1):d[1]===void 0?a=-2:(a=n.lastIndex-d[2].length,l=d[1],n=d[3]===void 0?m:d[3]==='"'?rt:it):n===rt||n===it?n=m:n===et||n===st?n=P:(n=m,i=void 0);let f=n===m&&r[p+1].startsWith("/>")?" ":"";o+=n===P?h+St:a>=0?(s.push(l),h.slice(0,a)+Z+h.slice(a)+_+f):h+_+(a===-2?p:f)}return[ct(r,o+(r[e]||"")+(t===2?"":"")),s]},N=class r{constructor({strings:t,_$litType$:e},s){let i;this.parts=[];let o=0,n=0,p=t.length-1,h=this.parts,[l,d]=dt(t,e);if(this.el=r.createElement(l,s),g.currentNode=this.el.content,e===2){let a=this.el.content.firstChild;a.replaceWith(...a.childNodes)}for(;(i=g.nextNode())!==null&&h.length0){i.textContent=L?L.emptyScript:"";for(let f=0;f2||s[0]!==""||s[1]!==""?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=c}_$AI(t,e=this,s,i){let o=this.strings,n=!1;if(o===void 0)t=S(this,t,e,0),n=!H(t)||t!==this._$AH&&t!==v,n&&(this._$AH=t);else{let p=t,h,l;for(t=o[0],h=0;h{let s=e?.renderBefore??t,i=s._$litPart$;if(i===void 0){let o=e?.renderBefore??null;s._$litPart$=i=new b(t.insertBefore(T(),o),o,void 0,e??{})}return i._$AI(r),i};var C=class extends ${constructor(){super(...arguments),this.renderOptions={host:this},this._$Do=void 0}createRenderRoot(){var e;let t=super.createRenderRoot();return(e=this.renderOptions).renderBefore??(e.renderBefore=t.firstChild),t}update(t){let e=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Do=pt(e,this.renderRoot,this.renderOptions)}connectedCallback(){super.connectedCallback(),this._$Do?.setConnected(!0)}disconnectedCallback(){super.disconnectedCallback(),this._$Do?.setConnected(!1)}render(){return v}};C._$litElement$=!0,C.finalized=!0,globalThis.litElementHydrateSupport?.({LitElement:C});var bt=globalThis.litElementPolyfillSupport;bt?.({LitElement:C});var Mt={_$AK:(r,t,e)=>{r._$AK(t,e)},_$AL:r=>r._$AL};(globalThis.litElementVersions??(globalThis.litElementVersions=[])).push("4.0.2");var Dt=!1;export{w as CSSResult,C as LitElement,$ as ReactiveElement,Mt as _$LE,Ht as _$LH,V as adoptStyles,ut as css,q as defaultConverter,k as getCompatibleStyle,Ut as html,Dt as isServer,v as noChange,Y as notEqual,c as nothing,pt as render,M as supportsAdoptingStyleSheets,Tt as svg,G as unsafeCSS}; -/*! Bundled license information: - -@lit/reactive-element/css-tag.js: - (** - * @license - * Copyright 2019 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - *) - -@lit/reactive-element/reactive-element.js: -lit-html/lit-html.js: -lit-element/lit-element.js: - (** - * @license - * Copyright 2017 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - *) - -lit-html/is-server.js: - (** - * @license - * Copyright 2022 Google LLC - * SPDX-License-Identifier: BSD-3-Clause - *) -*/ -//# sourceMappingURL=index-X3C6O6XU.js.map diff --git a/tests/staticfiles/esm/node_modules/lit/index-X3C6O6XU.js.map b/tests/staticfiles/esm/node_modules/lit/index-X3C6O6XU.js.map deleted file mode 100644 index 7259bcb..0000000 --- a/tests/staticfiles/esm/node_modules/lit/index-X3C6O6XU.js.map +++ /dev/null @@ -1,7 +0,0 @@ -{ - "version": 3, - "sources": ["../../../../node_modules/@lit/reactive-element/src/css-tag.ts", "../../../../node_modules/@lit/reactive-element/src/reactive-element.ts", "../../../../node_modules/lit-html/src/lit-html.ts", "../../../../node_modules/lit-element/src/lit-element.ts", "../../../../node_modules/lit-html/src/is-server.ts"], - "sourcesContent": ["/**\n * @license\n * Copyright 2019 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\nconst NODE_MODE = false;\n\n// Allows minifiers to rename references to globalThis\nconst global = globalThis;\n\n/**\n * Whether the current browser supports `adoptedStyleSheets`.\n */\nexport const supportsAdoptingStyleSheets: boolean =\n global.ShadowRoot &&\n (global.ShadyCSS === undefined || global.ShadyCSS.nativeShadow) &&\n 'adoptedStyleSheets' in Document.prototype &&\n 'replace' in CSSStyleSheet.prototype;\n\n/**\n * A CSSResult or native CSSStyleSheet.\n *\n * In browsers that support constructible CSS style sheets, CSSStyleSheet\n * object can be used for styling along side CSSResult from the `css`\n * template tag.\n */\nexport type CSSResultOrNative = CSSResult | CSSStyleSheet;\n\nexport type CSSResultArray = Array;\n\n/**\n * A single CSSResult, CSSStyleSheet, or an array or nested arrays of those.\n */\nexport type CSSResultGroup = CSSResultOrNative | CSSResultArray;\n\nconst constructionToken = Symbol();\n\nconst cssTagCache = new WeakMap();\n\n/**\n * A container for a string of CSS text, that may be used to create a CSSStyleSheet.\n *\n * CSSResult is the return value of `css`-tagged template literals and\n * `unsafeCSS()`. In order to ensure that CSSResults are only created via the\n * `css` tag and `unsafeCSS()`, CSSResult cannot be constructed directly.\n */\nexport class CSSResult {\n // This property needs to remain unminified.\n ['_$cssResult$'] = true;\n readonly cssText: string;\n private _styleSheet?: CSSStyleSheet;\n private _strings: TemplateStringsArray | undefined;\n\n private constructor(\n cssText: string,\n strings: TemplateStringsArray | undefined,\n safeToken: symbol\n ) {\n if (safeToken !== constructionToken) {\n throw new Error(\n 'CSSResult is not constructable. Use `unsafeCSS` or `css` instead.'\n );\n }\n this.cssText = cssText;\n this._strings = strings;\n }\n\n // This is a getter so that it's lazy. In practice, this means stylesheets\n // are not created until the first element instance is made.\n get styleSheet(): CSSStyleSheet | undefined {\n // If `supportsAdoptingStyleSheets` is true then we assume CSSStyleSheet is\n // constructable.\n let styleSheet = this._styleSheet;\n const strings = this._strings;\n if (supportsAdoptingStyleSheets && styleSheet === undefined) {\n const cacheable = strings !== undefined && strings.length === 1;\n if (cacheable) {\n styleSheet = cssTagCache.get(strings);\n }\n if (styleSheet === undefined) {\n (this._styleSheet = styleSheet = new CSSStyleSheet()).replaceSync(\n this.cssText\n );\n if (cacheable) {\n cssTagCache.set(strings, styleSheet);\n }\n }\n }\n return styleSheet;\n }\n\n toString(): string {\n return this.cssText;\n }\n}\n\ntype ConstructableCSSResult = CSSResult & {\n new (\n cssText: string,\n strings: TemplateStringsArray | undefined,\n safeToken: symbol\n ): CSSResult;\n};\n\nconst textFromCSSResult = (value: CSSResultGroup | number) => {\n // This property needs to remain unminified.\n if ((value as CSSResult)['_$cssResult$'] === true) {\n return (value as CSSResult).cssText;\n } else if (typeof value === 'number') {\n return value;\n } else {\n throw new Error(\n `Value passed to 'css' function must be a 'css' function result: ` +\n `${value}. Use 'unsafeCSS' to pass non-literal values, but take care ` +\n `to ensure page security.`\n );\n }\n};\n\n/**\n * Wrap a value for interpolation in a {@linkcode css} tagged template literal.\n *\n * This is unsafe because untrusted CSS text can be used to phone home\n * or exfiltrate data to an attacker controlled site. Take care to only use\n * this with trusted input.\n */\nexport const unsafeCSS = (value: unknown) =>\n new (CSSResult as ConstructableCSSResult)(\n typeof value === 'string' ? value : String(value),\n undefined,\n constructionToken\n );\n\n/**\n * A template literal tag which can be used with LitElement's\n * {@linkcode LitElement.styles} property to set element styles.\n *\n * For security reasons, only literal string values and number may be used in\n * embedded expressions. To incorporate non-literal values {@linkcode unsafeCSS}\n * may be used inside an expression.\n */\nexport const css = (\n strings: TemplateStringsArray,\n ...values: (CSSResultGroup | number)[]\n): CSSResult => {\n const cssText =\n strings.length === 1\n ? strings[0]\n : values.reduce(\n (acc, v, idx) => acc + textFromCSSResult(v) + strings[idx + 1],\n strings[0]\n );\n return new (CSSResult as ConstructableCSSResult)(\n cssText,\n strings,\n constructionToken\n );\n};\n\n/**\n * Applies the given styles to a `shadowRoot`. When Shadow DOM is\n * available but `adoptedStyleSheets` is not, styles are appended to the\n * `shadowRoot` to [mimic spec behavior](https://wicg.github.io/construct-stylesheets/#using-constructed-stylesheets).\n * Note, when shimming is used, any styles that are subsequently placed into\n * the shadowRoot should be placed *before* any shimmed adopted styles. This\n * will match spec behavior that gives adopted sheets precedence over styles in\n * shadowRoot.\n */\nexport const adoptStyles = (\n renderRoot: ShadowRoot,\n styles: Array\n) => {\n if (supportsAdoptingStyleSheets) {\n (renderRoot as ShadowRoot).adoptedStyleSheets = styles.map((s) =>\n s instanceof CSSStyleSheet ? s : s.styleSheet!\n );\n } else {\n for (const s of styles) {\n const style = document.createElement('style');\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const nonce = (global as any)['litNonce'];\n if (nonce !== undefined) {\n style.setAttribute('nonce', nonce);\n }\n style.textContent = (s as CSSResult).cssText;\n renderRoot.appendChild(style);\n }\n }\n};\n\nconst cssResultFromStyleSheet = (sheet: CSSStyleSheet) => {\n let cssText = '';\n for (const rule of sheet.cssRules) {\n cssText += rule.cssText;\n }\n return unsafeCSS(cssText);\n};\n\nexport const getCompatibleStyle =\n supportsAdoptingStyleSheets ||\n (NODE_MODE && global.CSSStyleSheet === undefined)\n ? (s: CSSResultOrNative) => s\n : (s: CSSResultOrNative) =>\n s instanceof CSSStyleSheet ? cssResultFromStyleSheet(s) : s;\n", "/**\n * @license\n * Copyright 2017 Google LLC\n * SPDX-License-Identifier: BSD-3-Clause\n */\n\n/**\n * Use this module if you want to create your own base class extending\n * {@link ReactiveElement}.\n * @packageDocumentation\n */\n\nimport {\n getCompatibleStyle,\n adoptStyles,\n CSSResultGroup,\n CSSResultOrNative,\n} from './css-tag.js';\nimport type {\n ReactiveController,\n ReactiveControllerHost,\n} from './reactive-controller.js';\n\n// In the Node build, this import will be injected by Rollup:\n// import {HTMLElement, customElements} from '@lit-labs/ssr-dom-shim';\n\nexport * from './css-tag.js';\nexport type {\n ReactiveController,\n ReactiveControllerHost,\n} from './reactive-controller.js';\n\n/**\n * Removes the `readonly` modifier from properties in the union K.\n *\n * This is a safer way to cast a value to a type with a mutable version of a\n * readonly field, than casting to an interface with the field re-declared\n * because it preserves the type of all the fields and warns on typos.\n */\ntype Mutable = Omit & {\n -readonly [P in keyof Pick]: P extends K ? T[P] : never;\n};\n\n// TODO (justinfagnani): Add `hasOwn` here when we ship ES2022\nconst {\n is,\n defineProperty,\n getOwnPropertyDescriptor,\n getOwnPropertyNames,\n getOwnPropertySymbols,\n getPrototypeOf,\n} = Object;\n\nconst NODE_MODE = false;\n\n// Lets a minifier replace globalThis references with a minified name\nconst global = globalThis;\n\nif (NODE_MODE) {\n global.customElements ??= customElements;\n}\n\nconst DEV_MODE = true;\n\nlet issueWarning: (code: string, warning: string) => void;\n\nconst trustedTypes = (global as unknown as {trustedTypes?: {emptyScript: ''}})\n .trustedTypes;\n\n// Temporary workaround for https://crbug.com/993268\n// Currently, any attribute starting with \"on\" is considered to be a\n// TrustedScript source. Such boolean attributes must be set to the equivalent\n// trusted emptyScript value.\nconst emptyStringForBooleanAttribute = trustedTypes\n ? (trustedTypes.emptyScript as unknown as '')\n : '';\n\nconst polyfillSupport = DEV_MODE\n ? global.reactiveElementPolyfillSupportDevMode\n : global.reactiveElementPolyfillSupport;\n\nif (DEV_MODE) {\n // Ensure warnings are issued only 1x, even if multiple versions of Lit\n // are loaded.\n const issuedWarnings: Set = (global.litIssuedWarnings ??=\n new Set());\n\n // Issue a warning, if we haven't already.\n issueWarning = (code: string, warning: string) => {\n warning += ` See https://lit.dev/msg/${code} for more information.`;\n if (!issuedWarnings.has(warning)) {\n console.warn(warning);\n issuedWarnings.add(warning);\n }\n };\n\n issueWarning(\n 'dev-mode',\n `Lit is in dev mode. Not recommended for production!`\n );\n\n // Issue polyfill support warning.\n if (global.ShadyDOM?.inUse && polyfillSupport === undefined) {\n issueWarning(\n 'polyfill-support-missing',\n `Shadow DOM is being polyfilled via \\`ShadyDOM\\` but ` +\n `the \\`polyfill-support\\` module has not been loaded.`\n );\n }\n}\n\n/**\n * Contains types that are part of the unstable debug API.\n *\n * Everything in this API is not stable and may change or be removed in the future,\n * even on patch releases.\n */\n// eslint-disable-next-line @typescript-eslint/no-namespace\nexport namespace ReactiveUnstable {\n /**\n * When Lit is running in dev mode and `window.emitLitDebugLogEvents` is true,\n * we will emit 'lit-debug' events to window, with live details about the update and render\n * lifecycle. These can be useful for writing debug tooling and visualizations.\n *\n * Please be aware that running with window.emitLitDebugLogEvents has performance overhead,\n * making certain operations that are normally very cheap (like a no-op render) much slower,\n * because we must copy data and dispatch events.\n */\n // eslint-disable-next-line @typescript-eslint/no-namespace\n export namespace DebugLog {\n export type Entry = Update;\n export interface Update {\n kind: 'update';\n }\n }\n}\n\ninterface DebugLoggingWindow {\n // Even in dev mode, we generally don't want to emit these events, as that's\n // another level of cost, so only emit them when DEV_MODE is true _and_ when\n // window.emitLitDebugEvents is true.\n emitLitDebugLogEvents?: boolean;\n}\n\n/**\n * Useful for visualizing and logging insights into what the Lit template system is doing.\n *\n * Compiled out of prod mode builds.\n */\nconst debugLogEvent = DEV_MODE\n ? (event: ReactiveUnstable.DebugLog.Entry) => {\n const shouldEmit = (global as unknown as DebugLoggingWindow)\n .emitLitDebugLogEvents;\n if (!shouldEmit) {\n return;\n }\n global.dispatchEvent(\n new CustomEvent('lit-debug', {\n detail: event,\n })\n );\n }\n : undefined;\n\n/*\n * When using Closure Compiler, JSCompiler_renameProperty(property, object) is\n * replaced at compile time by the munged name for object[property]. We cannot\n * alias this function, so we have to use a small shim that has the same\n * behavior when not compiling.\n */\n/*@__INLINE__*/\nconst JSCompiler_renameProperty =

(\n prop: P,\n _obj: unknown\n): P => prop;\n\n/**\n * Converts property values to and from attribute values.\n */\nexport interface ComplexAttributeConverter {\n /**\n * Called to convert an attribute value to a property\n * value.\n */\n fromAttribute?(value: string | null, type?: TypeHint): Type;\n\n /**\n * Called to convert a property value to an attribute\n * value.\n *\n * It returns unknown instead of string, to be compatible with\n * https://github.com/WICG/trusted-types (and similar efforts).\n */\n toAttribute?(value: Type, type?: TypeHint): unknown;\n}\n\ntype AttributeConverter =\n | ComplexAttributeConverter\n | ((value: string | null, type?: TypeHint) => Type);\n\n/**\n * Defines options for a property accessor.\n */\nexport interface PropertyDeclaration {\n /**\n * When set to `true`, indicates the property is internal private state. The\n * property should not be set by users. When using TypeScript, this property\n * should be marked as `private` or `protected`, and it is also a common\n * practice to use a leading `_` in the name. The property is not added to\n * `observedAttributes`.\n */\n readonly state?: boolean;\n\n /**\n * Indicates how and whether the property becomes an observed attribute.\n * If the value is `false`, the property is not added to `observedAttributes`.\n * If true or absent, the lowercased property name is observed (e.g. `fooBar`\n * becomes `foobar`). If a string, the string value is observed (e.g\n * `attribute: 'foo-bar'`).\n */\n readonly attribute?: boolean | string;\n\n /**\n * Indicates the type of the property. This is used only as a hint for the\n * `converter` to determine how to convert the attribute\n * to/from a property.\n */\n readonly type?: TypeHint;\n\n /**\n * Indicates how to convert the attribute to/from a property. If this value\n * is a function, it is used to convert the attribute value a the property\n * value. If it's an object, it can have keys for `fromAttribute` and\n * `toAttribute`. If no `toAttribute` function is provided and\n * `reflect` is set to `true`, the property value is set directly to the\n * attribute. A default `converter` is used if none is provided; it supports\n * `Boolean`, `String`, `Number`, `Object`, and `Array`. Note,\n * when a property changes and the converter is used to update the attribute,\n * the property is never updated again as a result of the attribute changing,\n * and vice versa.\n */\n readonly converter?: AttributeConverter;\n\n /**\n * Indicates if the property should reflect to an attribute.\n * If `true`, when the property is set, the attribute is set using the\n * attribute name determined according to the rules for the `attribute`\n * property option and the value of the property converted using the rules\n * from the `converter` property option.\n */\n readonly reflect?: boolean;\n\n /**\n * A function that indicates if a property should be considered changed when\n * it is set. The function should take the `newValue` and `oldValue` and\n * return `true` if an update should be requested.\n */\n hasChanged?(value: Type, oldValue: Type): boolean;\n\n /**\n * Indicates whether an accessor will be created for this property. By\n * default, an accessor will be generated for this property that requests an\n * update when set. If this flag is `true`, no accessor will be created, and\n * it will be the user's responsibility to call\n * `this.requestUpdate(propertyName, oldValue)` to request an update when\n * the property changes.\n */\n readonly noAccessor?: boolean;\n\n /**\n * Whether this property is wrapping accessors. This is set by `@property`\n * to control the initial value change and reflection logic.\n *\n * @internal\n */\n wrapped?: boolean;\n}\n\n/**\n * Map of properties to PropertyDeclaration options. For each property an\n * accessor is made, and the property is processed according to the\n * PropertyDeclaration options.\n */\nexport interface PropertyDeclarations {\n readonly [key: string]: PropertyDeclaration;\n}\n\ntype PropertyDeclarationMap = Map;\n\ntype AttributeMap = Map;\n\n/**\n * A Map of property keys to values.\n *\n * Takes an optional type parameter T, which when specified as a non-any,\n * non-unknown type, will make the Map more strongly-typed, associating the map\n * keys with their corresponding value type on T.\n *\n * Use `PropertyValues` when overriding ReactiveElement.update() and\n * other lifecycle methods in order to get stronger type-checking on keys\n * and values.\n */\n// This type is conditional so that if the parameter T is not specified, or\n// is `any`, the type will include `Map`. Since T is not\n// given in the uses of PropertyValues in this file, all uses here fallback to\n// meaning `Map`, but if a developer uses\n// `PropertyValues` (or any other value for T) they will get a\n// strongly-typed Map type.\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nexport type PropertyValues = T extends object\n ? PropertyValueMap\n : Map;\n\n/**\n * Do not use, instead prefer {@linkcode PropertyValues}.\n */\n// This type must be exported such that JavaScript generated by the Google\n// Closure Compiler can import a type reference.\nexport interface PropertyValueMap extends Map {\n get(k: K): T[K] | undefined;\n set(key: K, value: T[K]): this;\n has(k: K): boolean;\n delete(k: K): boolean;\n}\n\nexport const defaultConverter: ComplexAttributeConverter = {\n toAttribute(value: unknown, type?: unknown): unknown {\n switch (type) {\n case Boolean:\n value = value ? emptyStringForBooleanAttribute : null;\n break;\n case Object:\n case Array:\n // if the value is `null` or `undefined` pass this through\n // to allow removing/no change behavior.\n value = value == null ? value : JSON.stringify(value);\n break;\n }\n return value;\n },\n\n fromAttribute(value: string | null, type?: unknown) {\n let fromValue: unknown = value;\n switch (type) {\n case Boolean:\n fromValue = value !== null;\n break;\n case Number:\n fromValue = value === null ? null : Number(value);\n break;\n case Object:\n case Array:\n // Do *not* generate exception when invalid JSON is set as elements\n // don't normally complain on being mis-configured.\n // TODO(sorvell): Do generate exception in *dev mode*.\n try {\n // Assert to adhere to Bazel's \"must type assert JSON parse\" rule.\n fromValue = JSON.parse(value!) as unknown;\n } catch (e) {\n fromValue = null;\n }\n break;\n }\n return fromValue;\n },\n};\n\nexport interface HasChanged {\n (value: unknown, old: unknown): boolean;\n}\n\n/**\n * Change function that returns true if `value` is different from `oldValue`.\n * This method is used as the default for a property's `hasChanged` function.\n */\nexport const notEqual: HasChanged = (value: unknown, old: unknown): boolean =>\n !is(value, old);\n\nconst defaultPropertyDeclaration: PropertyDeclaration = {\n attribute: true,\n type: String,\n converter: defaultConverter,\n reflect: false,\n hasChanged: notEqual,\n};\n\n/**\n * A string representing one of the supported dev mode warning categories.\n */\nexport type WarningKind =\n | 'change-in-update'\n | 'migration'\n | 'async-perform-update';\n\nexport type Initializer = (element: ReactiveElement) => void;\n\n// Temporary, until google3 is on TypeScript 5.2\ndeclare global {\n interface SymbolConstructor {\n readonly metadata: unique symbol;\n }\n}\n\n// Ensure metadata is enabled. TypeScript does not polyfill\n// Symbol.metadata, so we must ensure that it exists.\n(Symbol as {metadata: symbol}).metadata ??= Symbol('metadata');\n\ndeclare global {\n // This is public global API, do not change!\n // eslint-disable-next-line no-var\n var litPropertyMetadata: WeakMap<\n object,\n Map\n >;\n}\n\n// Map from a class's metadata object to property options\n// Note that we must use nullish-coalescing assignment so that we only use one\n// map even if we load multiple version of this module.\nglobal.litPropertyMetadata ??= new WeakMap<\n object,\n Map\n>();\n\n/**\n * Base element class which manages element properties and attributes. When\n * properties change, the `update` method is asynchronously called. This method\n * should be supplied by subclasses to render updates as desired.\n * @noInheritDoc\n */\nexport abstract class ReactiveElement\n // In the Node build, this `extends` clause will be substituted with\n // `(globalThis.HTMLElement ?? HTMLElement)`.\n //\n // This way, we will first prefer any global `HTMLElement` polyfill that the\n // user has assigned, and then fall back to the `HTMLElement` shim which has\n // been imported (see note at the top of this file about how this import is\n // generated by Rollup). Note that the `HTMLElement` variable has been\n // shadowed by this import, so it no longer refers to the global.\n extends HTMLElement\n implements ReactiveControllerHost\n{\n // Note: these are patched in only in DEV_MODE.\n /**\n * Read or set all the enabled warning categories for this class.\n *\n * This property is only used in development builds.\n *\n * @nocollapse\n * @category dev-mode\n */\n static enabledWarnings?: WarningKind[];\n\n /**\n * Enable the given warning category for this class.\n *\n * This method only exists in development builds, so it should be accessed\n * with a guard like:\n *\n * ```ts\n * // Enable for all ReactiveElement subclasses\n * ReactiveElement.enableWarning?.('migration');\n *\n * // Enable for only MyElement and subclasses\n * MyElement.enableWarning?.('migration');\n * ```\n *\n * @nocollapse\n * @category dev-mode\n */\n static enableWarning?: (warningKind: WarningKind) => void;\n\n /**\n * Disable the given warning category for this class.\n *\n * This method only exists in development builds, so it should be accessed\n * with a guard like:\n *\n * ```ts\n * // Disable for all ReactiveElement subclasses\n * ReactiveElement.disableWarning?.('migration');\n *\n * // Disable for only MyElement and subclasses\n * MyElement.disableWarning?.('migration');\n * ```\n *\n * @nocollapse\n * @category dev-mode\n */\n static disableWarning?: (warningKind: WarningKind) => void;\n\n /**\n * Adds an initializer function to the class that is called during instance\n * construction.\n *\n * This is useful for code that runs against a `ReactiveElement`\n * subclass, such as a decorator, that needs to do work for each\n * instance, such as setting up a `ReactiveController`.\n *\n * ```ts\n * const myDecorator = (target: typeof ReactiveElement, key: string) => {\n * target.addInitializer((instance: ReactiveElement) => {\n * // This is run during construction of the element\n * new MyController(instance);\n * });\n * }\n * ```\n *\n * Decorating a field will then cause each instance to run an initializer\n * that adds a controller:\n *\n * ```ts\n * class MyElement extends LitElement {\n * @myDecorator foo;\n * }\n * ```\n *\n * Initializers are stored per-constructor. Adding an initializer to a\n * subclass does not add it to a superclass. Since initializers are run in\n * constructors, initializers will run in order of the class hierarchy,\n * starting with superclasses and progressing to the instance's class.\n *\n * @nocollapse\n */\n static addInitializer(initializer: Initializer) {\n this.__prepare();\n (this._initializers ??= []).push(initializer);\n }\n\n static _initializers?: Initializer[];\n\n /*\n * Due to closure compiler ES6 compilation bugs, @nocollapse is required on\n * all static methods and properties with initializers. Reference:\n * - https://github.com/google/closure-compiler/issues/1776\n */\n\n /**\n * Maps attribute names to properties; for example `foobar` attribute to\n * `fooBar` property. Created lazily on user subclasses when finalizing the\n * class.\n * @nocollapse\n */\n private static __attributeToPropertyMap: AttributeMap;\n\n /**\n * Marks class as having been finalized, which includes creating properties\n * from `static properties`, but does *not* include all properties created\n * from decorators.\n * @nocollapse\n */\n protected static finalized: true | undefined;\n\n /**\n * Memoized list of all element properties, including any superclass\n * properties. Created lazily on user subclasses when finalizing the class.\n *\n * @nocollapse\n * @category properties\n */\n static elementProperties: PropertyDeclarationMap;\n\n /**\n * User-supplied object that maps property names to `PropertyDeclaration`\n * objects containing options for configuring reactive properties. When\n * a reactive property is set the element will update and render.\n *\n * By default properties are public fields, and as such, they should be\n * considered as primarily settable by element users, either via attribute or\n * the property itself.\n *\n * Generally, properties that are changed by the element should be private or\n * protected fields and should use the `state: true` option. Properties\n * marked as `state` do not reflect from the corresponding attribute\n *\n * However, sometimes element code does need to set a public property. This\n * should typically only be done in response to user interaction, and an event\n * should be fired informing the user; for example, a checkbox sets its\n * `checked` property when clicked and fires a `changed` event. Mutating\n * public properties should typically not be done for non-primitive (object or\n * array) properties. In other cases when an element needs to manage state, a\n * private property set with the `state: true` option should be used. When\n * needed, state properties can be initialized via public properties to\n * facilitate complex interactions.\n * @nocollapse\n * @category properties\n */\n static properties: PropertyDeclarations;\n\n /**\n * Memoized list of all element styles.\n * Created lazily on user subclasses when finalizing the class.\n * @nocollapse\n * @category styles\n */\n static elementStyles: Array = [];\n\n /**\n * Array of styles to apply to the element. The styles should be defined\n * using the {@linkcode css} tag function, via constructible stylesheets, or\n * imported from native CSS module scripts.\n *\n * Note on Content Security Policy:\n *\n * Element styles are implemented with `