diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json
new file mode 100644
index 000000000..05bb8f5b6
--- /dev/null
+++ b/.devcontainer/devcontainer.json
@@ -0,0 +1,11 @@
+{
+ "name": "Material for MkDocs - VS Code dev container",
+ "image": "mcr.microsoft.com/devcontainers/typescript-node:0-18",
+ "features": {
+ "ghcr.io/devcontainers/features/python:1": {
+ "installTools": true,
+ "version": "3.11"
+ }
+ },
+ "postCreateCommand": "pip install -e . && pip install mkdocs-minify-plugin mkdocs-redirects && npm install && npm run build"
+}
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index fd28646aa..e10aecede 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -29,7 +29,7 @@ on:
- published
env:
- NODE_VERSION: 14.x
+ NODE_VERSION: 18.x
PYTHON_VERSION: 3.x
permissions:
@@ -144,9 +144,11 @@ jobs:
- name: Check Docker image
working-directory: /tmp
+ env:
+ REPO_FULL_NAME: '${{ github.event.repository.full_name }}'
run: |
- docker run --rm -i -v ${PWD}:/docs ${{ github.event.repository.full_name }}:${{ steps.meta.outputs.version }} new .
- docker run --rm -i -v ${PWD}:/docs ${{ github.event.repository.full_name }}:${{ steps.meta.outputs.version }} build
+ docker run --rm -i -v ${PWD}:/docs ${REPO_FULL_NAME,,}:${{ steps.meta.outputs.version }} new .
+ docker run --rm -i -v ${PWD}:/docs ${REPO_FULL_NAME,,}:${{ steps.meta.outputs.version }} build
- name: Set platforms
if: github.event_name == 'release'
diff --git a/.github/workflows/documentation.yml b/.github/workflows/documentation.yml
index 4be118233..0b97712a6 100644
--- a/.github/workflows/documentation.yml
+++ b/.github/workflows/documentation.yml
@@ -46,12 +46,17 @@ jobs:
with:
python-version: ${{ env.PYTHON_VERSION }}
+ - name: Set the date environmental variable
+ run: echo "cache_id=$(date --utc '+%V')" >> $GITHUB_ENV
+
- name: Set up build cache
uses: actions/cache@v3
id: cache
with:
- key: ${{ runner.os }}-${{ hashFiles('.cache/**') }}
+ key: mkdocs-material-${{ env.cache_id }}
path: .cache
+ restore-keys: |
+ mkdocs-material-
- name: Install dependencies
run: sudo apt-get install pngquant
diff --git a/.vscode/settings.json b/.vscode/settings.json
index 7e278e9a6..36ef96f40 100644
--- a/.vscode/settings.json
+++ b/.vscode/settings.json
@@ -17,8 +17,5 @@
"tag:yaml.org,2002:python/name:materialx.emoji.to_svg",
"tag:yaml.org,2002:python/name:materialx.emoji.twemoji",
"tag:yaml.org,2002:python/name:pymdownx.superfences.fence_code_format"
- ],
- "cSpell.words": [
- "mkdocs"
]
}
diff --git a/CHANGELOG b/CHANGELOG
index aa370005f..d44e31e45 100644
--- a/CHANGELOG
+++ b/CHANGELOG
@@ -1,17 +1,68 @@
+mkdocs-material-9.1.12+insiders-4.34.0 (2023-05-14)
+
+ * Added support for new overflow mode to auto-fit text in social plugin
+ * Reduced subtle rendering bugs in (code) annotations due to subpixel rounding
+ * Improved print styles for (code) annotation lists
+ * Improved performance of social plugin, now 3x as fast
+ * Improved interop of typeset plugin with MkDocstrings
+ * Fixed logo location for variants of default template in social plugin
+ * Fixed #5446: Built-in typeset plugin picks up headings in code blocks
+
+mkdocs-material-9.1.12+insiders-4.33.2 (2023-05-12)
+
+ * Fixed #5508: Social plugin crashes trying to copy cards on Docker/Windows
+ * Fixed #5507: Social plugin crashes on serve when layouts folder doesn't exist
+ * Fixed #5505: Social plugin trying to resolve logo in wrong location
+ * Fixed #5496: Annotations with nested lists incorrectly mounted
+ * Fixed #5493: Social plugin crashes on Python 3.8
+
+mkdocs-material-9.1.12 (2023-05-12)
+
+ * Updated Bengali (Bangla) translations
+ * Fixed #5503: Docker image publish errors on uppercase characters
+ * Fixed #5407: Auto-pause media when in hidden content tabs
+
+mkdocs-material-9.1.11+insiders-4.33.1 (2023-05-09)
+
+ * Added support for SVG background images in social plugin
+
+mkdocs-material-9.1.11 (2023-05-08)
+
+ * Fixed #5487: Social plugin crashes without options (9.1.10 regression)
+
+mkdocs-material-9.1.10+insiders-4.33.0 (2023-05-08)
+
+ * Added support for custom layouts for social plugin
+ * Added support for background images for social cards
+
+mkdocs-material-9.1.10 (2023-05-08)
+
+ * Added cards_layout_options setting for social cards
+ * Deprecated cards_color and cards_font setting for social cards
+
+mkdocs-material-9.1.9 (2023-05-02)
+
+ * Added Telugu, Kannada and Sanskrit translations
+ * Fixed #5428: Fixed margins for light/dark mode images in figures
+ * Fixed #5420: Social plugin crashing for some specific Google Fonts
+ * Fixed #5160: Instant loading makes code annotations jump (9.1.1 regression)
+ * Fixed #4920: Social plugin not loading logo from custom icon set
+ * Fixed social plugin crashing when only code font is specified
+
mkdocs-material-9.1.8 (2023-04-24)
-- Fixed #5417: Theme breaks when palette is not defined (9.1.7 regression)
+ * Fixed #5417: Theme breaks when palette is not defined (9.1.7 regression)
mkdocs-material-9.1.7+insiders-4.32.6 (2023-04-22)
-- Fixed #5336: Interplay of blog plugin with git-revision-date-localized
+ * Fixed #5336: Interplay of blog plugin with git-revision-date-localized
mkdocs-material-9.1.7 (2023-04-22)
-- Updated Persian (Farsi) and Turkish translations
-- Fixed #5401: Added missing flag to disable built-in tags plugin
-- Fixed #5206: Ensure defaults are set for primary and accent colors
-- Fixed unnecessary inclusion of palette CSS when unused
+ * Updated Persian (Farsi) and Turkish translations
+ * Fixed #5401: Added missing flag to disable built-in tags plugin
+ * Fixed #5206: Ensure defaults are set for primary and accent colors
+ * Fixed unnecessary inclusion of palette CSS when unused
mkdocs-material-9.1.6+insiders-4.32.5 (2023-04-07)
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 9bcb6bcef..80d9e267b 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -42,10 +42,10 @@ it is:
### Missing translations?
-Material for MkDocs supports 50+ languages with the help of community
+Material for MkDocs supports 60+ languages with the help of community
contributions. When new features are added, sometimes, new translations are
necessary as well. It's impossible for the maintainers of the project to update
-all translations (we just don't speak 50+ languages), so we have to rely on
+all translations (we just don't speak 60+ languages), so we have to rely on
our contributors to update translations incrementally. This process is pretty
simple, so if you find a translation missing in your language, follow these
guidelines:
diff --git a/README.md b/README.md
index 2aeaaa468..4d512b522 100644
--- a/README.md
+++ b/README.md
@@ -39,7 +39,7 @@
Write your documentation in Markdown and create a professional static site for
your Open Source or commercial project in minutes – searchable, customizable,
- more than 50 languages, for all devices.
+ more than 60 languages, for all devices.
diff --git a/docs/assets/screenshots/social-cards-accent.png b/docs/assets/screenshots/social-cards-accent.png
new file mode 100644
index 000000000..8531f694e
Binary files /dev/null and b/docs/assets/screenshots/social-cards-accent.png differ
diff --git a/docs/assets/screenshots/social-cards-debug.png b/docs/assets/screenshots/social-cards-debug.png
new file mode 100644
index 000000000..bef1c0a91
Binary files /dev/null and b/docs/assets/screenshots/social-cards-debug.png differ
diff --git a/docs/assets/screenshots/social-cards-invert.png b/docs/assets/screenshots/social-cards-invert.png
new file mode 100644
index 000000000..156a4e968
Binary files /dev/null and b/docs/assets/screenshots/social-cards-invert.png differ
diff --git a/docs/assets/screenshots/social-cards-layer-0.png b/docs/assets/screenshots/social-cards-layer-0.png
new file mode 100644
index 000000000..063d5f970
Binary files /dev/null and b/docs/assets/screenshots/social-cards-layer-0.png differ
diff --git a/docs/assets/screenshots/social-cards-layer-1.png b/docs/assets/screenshots/social-cards-layer-1.png
new file mode 100644
index 000000000..af66e76c0
Binary files /dev/null and b/docs/assets/screenshots/social-cards-layer-1.png differ
diff --git a/docs/assets/screenshots/social-cards-layer-2.png b/docs/assets/screenshots/social-cards-layer-2.png
new file mode 100644
index 000000000..05efa9d65
Binary files /dev/null and b/docs/assets/screenshots/social-cards-layer-2.png differ
diff --git a/docs/assets/screenshots/social-cards-layer-3.png b/docs/assets/screenshots/social-cards-layer-3.png
new file mode 100644
index 000000000..1511b99f8
Binary files /dev/null and b/docs/assets/screenshots/social-cards-layer-3.png differ
diff --git a/docs/assets/screenshots/social-cards-layer-4.png b/docs/assets/screenshots/social-cards-layer-4.png
new file mode 100644
index 000000000..45ad3cd7b
Binary files /dev/null and b/docs/assets/screenshots/social-cards-layer-4.png differ
diff --git a/docs/assets/screenshots/social-cards-layer-5.png b/docs/assets/screenshots/social-cards-layer-5.png
new file mode 100644
index 000000000..7595600fc
Binary files /dev/null and b/docs/assets/screenshots/social-cards-layer-5.png differ
diff --git a/docs/assets/screenshots/social-cards-layer-background-color.png b/docs/assets/screenshots/social-cards-layer-background-color.png
new file mode 100644
index 000000000..95ade5167
Binary files /dev/null and b/docs/assets/screenshots/social-cards-layer-background-color.png differ
diff --git a/docs/assets/screenshots/social-cards-layer-background-image.png b/docs/assets/screenshots/social-cards-layer-background-image.png
new file mode 100644
index 000000000..d66cff14a
Binary files /dev/null and b/docs/assets/screenshots/social-cards-layer-background-image.png differ
diff --git a/docs/assets/screenshots/social-cards-layer-background.png b/docs/assets/screenshots/social-cards-layer-background.png
new file mode 100644
index 000000000..11d0f99f6
Binary files /dev/null and b/docs/assets/screenshots/social-cards-layer-background.png differ
diff --git a/docs/assets/screenshots/social-cards-layer-icon-circles.png b/docs/assets/screenshots/social-cards-layer-icon-circles.png
new file mode 100644
index 000000000..c30d86f4c
Binary files /dev/null and b/docs/assets/screenshots/social-cards-layer-icon-circles.png differ
diff --git a/docs/assets/screenshots/social-cards-layer-icon.png b/docs/assets/screenshots/social-cards-layer-icon.png
new file mode 100644
index 000000000..d3b82acbf
Binary files /dev/null and b/docs/assets/screenshots/social-cards-layer-icon.png differ
diff --git a/docs/assets/screenshots/social-cards-layer-size.png b/docs/assets/screenshots/social-cards-layer-size.png
new file mode 100644
index 000000000..a0a260ed3
Binary files /dev/null and b/docs/assets/screenshots/social-cards-layer-size.png differ
diff --git a/docs/assets/screenshots/social-cards-layer-typography-align.png b/docs/assets/screenshots/social-cards-layer-typography-align.png
new file mode 100644
index 000000000..e05e4ab4d
Binary files /dev/null and b/docs/assets/screenshots/social-cards-layer-typography-align.png differ
diff --git a/docs/assets/screenshots/social-cards-layer-typography-ellipsis.png b/docs/assets/screenshots/social-cards-layer-typography-ellipsis.png
new file mode 100644
index 000000000..34750aebf
Binary files /dev/null and b/docs/assets/screenshots/social-cards-layer-typography-ellipsis.png differ
diff --git a/docs/assets/screenshots/social-cards-layer-typography-shrink.png b/docs/assets/screenshots/social-cards-layer-typography-shrink.png
new file mode 100644
index 000000000..82670c3b5
Binary files /dev/null and b/docs/assets/screenshots/social-cards-layer-typography-shrink.png differ
diff --git a/docs/assets/screenshots/social-cards-layer-typography.png b/docs/assets/screenshots/social-cards-layer-typography.png
new file mode 100644
index 000000000..c4e97c7f2
Binary files /dev/null and b/docs/assets/screenshots/social-cards-layer-typography.png differ
diff --git a/docs/assets/screenshots/social-cards-variant.png b/docs/assets/screenshots/social-cards-variant.png
new file mode 100644
index 000000000..7bdaae397
Binary files /dev/null and b/docs/assets/screenshots/social-cards-variant.png differ
diff --git a/docs/assets/screenshots/social-cards.png b/docs/assets/screenshots/social-cards.png
index 3b348db34..40c51d7bd 100644
Binary files a/docs/assets/screenshots/social-cards.png and b/docs/assets/screenshots/social-cards.png differ
diff --git a/docs/changelog/index.md b/docs/changelog/index.md
index b2b942ce4..bd1323267 100644
--- a/docs/changelog/index.md
+++ b/docs/changelog/index.md
@@ -2,6 +2,30 @@
## Material for MkDocs
+### 9.1.12 May 12, 2023 { id="9.1.12" }
+
+- Updated Bengali (Bangla) translations
+- Fixed #5503: Docker image publish errors on uppercase characters
+- Fixed #5407: Auto-pause media when in hidden content tabs
+
+### 9.1.11 May 8, 2023 { id="9.1.11" }
+
+- Fixed #5487: Social plugin crashes without options (9.1.10 regression)
+
+### 9.1.10 May 8, 2023 { id="9.1.10" }
+
+- Added `cards_layout_options` setting for social cards
+- Deprecated `cards_color` and `cards_font` setting for social cards
+
+### 9.1.9 May 2, 2023 { id="9.1.9" }
+
+- Added Telugu, Kannada and Sanskrit translations
+- Fixed #5428: Fixed margins for light/dark mode images in figures
+- Fixed #5420: Social plugin crashing for some specific Google Fonts
+- Fixed #5160: Instant loading makes code annotations jump (9.1.1 regression)
+- Fixed #4920: Social plugin not loading logo from custom icon set
+- Fixed social plugin crashing when only code font is specified
+
### 9.1.8 April 24, 2023 { id="9.1.8" }
- Fixed #5417: Theme breaks when `palette` is not defined (9.1.7 regression)
diff --git a/docs/getting-started.md b/docs/getting-started.md
index 34a49fcdb..c5a2b5d94 100644
--- a/docs/getting-started.md
+++ b/docs/getting-started.md
@@ -61,8 +61,8 @@ install those packages separately.
:fontawesome-brands-youtube:{ style="color: #EE0F0F" }
__[How to set up Material for MkDocs]__ by @james-willett – :octicons-clock-24:
-15m – Learn how to create and host a documentation site using Material for Docs
-on GitHub Pages in a step-by-step guide.
+15m – Learn how to create and host a documentation site using Material for
+MkDocs on GitHub Pages in a step-by-step guide.
[How to set up Material for MkDocs]: https://www.youtube.com/watch?v=Q-YA_dA8C20
diff --git a/docs/insiders/changelog.md b/docs/insiders/changelog.md
index 6d623e585..ea1c7f3a6 100644
--- a/docs/insiders/changelog.md
+++ b/docs/insiders/changelog.md
@@ -2,6 +2,33 @@
## Material for MkDocs Insiders
+### 4.34.0 May 14, 2023 { id="4.34.0" }
+
+- Added support for new overflow mode to auto-fit text in social plugin
+- Reduced subtle rendering bugs in (code) annotations due to subpixel rounding
+- Improved print styles for (code) annotation lists
+- Improved performance of social plugin, now 3x as fast
+- Improved interop of typeset plugin with MkDocstrings
+- Fixed logo location for variants of default template in social plugin
+- Fixed #5446: Built-in typeset plugin picks up headings in code blocks
+
+### 4.33.2 May 12, 2023 { id="4.33.2" }
+
+- Fixed #5508: Social plugin crashes trying to copy cards on Docker/Windows
+- Fixed #5507: Social plugin crashes on serve when layouts folder doesn't exist
+- Fixed #5505: Social plugin trying to resolve logo in wrong location
+- Fixed #5496: Annotations with nested lists incorrectly mounted
+- Fixed #5493: Social plugin crashes on Python 3.8
+
+### 4.33.1 May 9, 2023 { id="4.33.1" }
+
+- Added support for SVG background images in social plugin
+
+### 4.33.0 May 8, 2023 { id="4.33.0" }
+
+- Added support for custom layouts for social plugin
+- Added support for background images for social cards
+
### 4.32.6 April 22, 2023 { id="4.32.6" }
- Fixed #5336: Interplay of blog plugin with git-revision-date-localized
diff --git a/docs/insiders/index.md b/docs/insiders/index.md
index 0a6368dea..718788fcc 100644
--- a/docs/insiders/index.md
+++ b/docs/insiders/index.md
@@ -88,14 +88,16 @@ a handful of them, [thanks to our awesome sponsors]!
## What's in it for me?
The moment you [become a sponsor][how to become a sponsor], you'll get __immediate
-access to 25 additional features__ that you can start using right away, and
+access to 27 additional features__ that you can start using right away, and
which are currently exclusively available to sponsors:
+- [x] [Social plugin: custom layouts] :material-alert-decagram:{ .mdx-pulse title="Added on May 8, 2023" }
+- [x] [Social plugin: background images] :material-alert-decagram:{ .mdx-pulse title="Added on May 8, 2023" }
- [x] [Code range selection] :material-alert-decagram:{ .mdx-pulse title="Added on February 19, 2023" }
-- [x] [Code annotations: custom selectors] :material-alert-decagram:{ .mdx-pulse title="Added on February 19, 2023" }
-- [x] [Privacy plugin: optimization support] :material-alert-decagram:{ .mdx-pulse title="Added on February 6, 2023" }
+- [x] [Code annotations: custom selectors]
+- [x] [Privacy plugin: optimization support]
- [x] [Optimize plugin]
- [x] [Navigation path] (Breadcrumbs)
- [x] [Typeset plugin]
@@ -256,10 +258,6 @@ features prefixed with a checkmark symbol, denoting whether a feature is
:octicons-check-circle-fill-24:{ style="color: var(--md-default-fg-color--lightest)" } planned, but not yet implemented. When the funding goal is hit, the features
are released for general availability.
-> [In February, we lost $1,3k in monthly funding because GitHub removed PayPal support][Twitter]
-
- [Twitter]: https://twitter.com/squidfunk/status/1643539228574269443
-
#### $ 12,000 – Piri Piri
- [x] [Blog plugin]
@@ -320,17 +318,21 @@ are released for general availability.
[Optimize plugin]: ../setup/building-an-optimized-site.md#built-in-optimize-plugin
[Typeset plugin]: ../reference/index.md#built-in-typeset-plugin
- [Privacy plugin: external links]: ../setup/ensuring-data-privacy.md#+privacy.external_links
- [Privacy plugin: optimization support]: ../setup/ensuring-data-privacy.md#+privacy.external_assets_include
+ [Privacy plugin: external links]: ../setup/ensuring-data-privacy.md#+privacy.links
+ [Privacy plugin: optimization support]: ../setup/ensuring-data-privacy.md#+privacy.assets_include
[Navigation path]: ../setup/setting-up-navigation.md#navigation-path
[Instant previews]: https://twitter.com/squidfunk/status/1466794654213492743
#### $ 24,000 – Blockpaprika
+- [x] [Social plugin: custom layouts]
+- [x] [Social plugin: background images]
- [x] [Code range selection]
- [x] [Code annotations: custom selectors]
- [ ] Code line wrap button
+ [Social plugin: custom layouts]: ../setup/setting-up-social-cards.md#customization
+ [Social plugin: background images]: ../setup/setting-up-social-cards.md#+social.cards_layout_params.background_image
[Code range selection]: ../reference/code-blocks.md#code-selection-button
[Code annotations: custom selectors]: ../reference/code-blocks.md#custom-selectors
diff --git a/docs/publishing-your-site.md b/docs/publishing-your-site.md
index 8549c3bb8..264bb687e 100644
--- a/docs/publishing-your-site.md
+++ b/docs/publishing-your-site.md
@@ -38,11 +38,14 @@ contents:
- uses: actions/setup-python@v4
with:
python-version: 3.x
- - uses: actions/cache@v2
+ - run: echo "cache_id=$(date --utc '+%V')" >> $GITHUB_ENV # (3)!
+ - uses: actions/cache@v3
with:
- key: ${{ github.ref }}
+ key: mkdocs-material-${{ env.cache_id }}
path: .cache
- - run: pip install mkdocs-material # (3)!
+ restore-keys: |
+ mkdocs-material-
+ - run: pip install mkdocs-material # (4)!
- run: mkdocs gh-deploy --force
```
@@ -51,7 +54,16 @@ contents:
2. At some point, GitHub renamed `master` to `main`. If your default branch
is named `master`, you can safely remove `main`, vice versa.
- 3. This is the place to install further [MkDocs plugins] or Markdown
+ 3. Store the `cache_id` environmental variable to access it later during cache
+ `key` creation. The name is case-sensitive, so be sure to align it with `${{ env.cache_id }}`.
+
+ - The `--utc` option makes sure that each workflow runner uses the same time zone.
+ - The `%V` format assures a cache update once a week.
+ - You can change the format to `%F` to have daily cache updates.
+
+ You can read the [manual page] to learn more about the formatting options of the `date` command.
+
+ 4. This is the place to install further [MkDocs plugins] or Markdown
extensions with `pip` to be used during the build:
``` sh
@@ -81,10 +93,13 @@ contents:
- uses: actions/setup-python@v4
with:
python-version: 3.x
- - uses: actions/cache@v2
+ - run: echo "cache_id=$(date --utc '+%V')" >> $GITHUB_ENV
+ - uses: actions/cache@v3
with:
- key: ${{ github.ref }}
+ key: mkdocs-material-${{ env.cache_id }}
path: .cache
+ restore-keys: |
+ mkdocs-material-
- run: apt-get install pngquant # (1)!
- run: pip install git+https://${GH_TOKEN}@github.com/squidfunk/mkdocs-material-insiders.git
- run: mkdocs gh-deploy --force
@@ -116,6 +131,7 @@ Your documentation should shortly appear at `.github.io/`.
[built-in optimize plugin]: setup/building-an-optimized-site.md#built-in-optimize-plugin
[GitHub secrets]: https://docs.github.com/en/actions/configuring-and-managing-workflows/creating-and-storing-encrypted-secrets
[publishing source branch]: https://docs.github.com/en/pages/getting-started-with-github-pages/configuring-a-publishing-source-for-your-github-pages-site
+ [manual page]: https://man7.org/linux/man-pages/man1/date.1.html
### with MkDocs
diff --git a/docs/reference/images.md b/docs/reference/images.md
index f120352de..ee0245a1a 100644
--- a/docs/reference/images.md
+++ b/docs/reference/images.md
@@ -172,7 +172,37 @@ hash fragment to the image URL:
+!!! warning "Requirements when using [custom color schemes]"
+
+ The built-in [color schemes] define the aforementioned hash fragments, but
+ if you're using [custom color schemes], you'll also have to add the
+ following selectors to your scheme, depending on whether it's a light or
+ dark scheme:
+
+ === "Custom light scheme"
+
+ ``` css
+ [data-md-color-scheme="custom-light"] img[src$="#only-dark"]
+ [data-md-color-scheme="custom-light"] img[src$="#gh-dark-mode-only"] {
+ display: none; /* Hide dark images in light mode */
+ }
+ ```
+
+ === "Custom dark scheme"
+
+ ``` css
+ [data-md-color-scheme="custom-dark"] img[src$="#only-light"],
+ [data-md-color-scheme="custom-dark"] img[src$="#gh-light-mode-only"] {
+ display: none; /* Hide light images in dark mode */
+ }
+ ```
+
+ Remember to change `#!css "custom-light"` and `#!css "custom-dark"` to the
+ name of your scheme.
+
[Light and dark mode support]: https://github.com/squidfunk/mkdocs-material/releases/tag/8.1.1
[color palette toggle]: ../setup/changing-the-colors.md#color-palette-toggle
[Zelda light world]: ../assets/images/zelda-light-world.png#only-light
[Zelda dark world]: ../assets/images/zelda-dark-world.png#only-dark
+ [color schemes]: ../setup/changing-the-colors.md#color-scheme
+ [custom color schemes]: ../setup/changing-the-colors.md#custom-color-schemes
diff --git a/docs/schema/assets/icons.json b/docs/schema/assets/icons.json
index 6e434757b..1f48421a1 100644
--- a/docs/schema/assets/icons.json
+++ b/docs/schema/assets/icons.json
@@ -9470,6 +9470,8 @@
"octicons/device-desktop-24",
"octicons/device-mobile-16",
"octicons/device-mobile-24",
+ "octicons/devices-16",
+ "octicons/devices-24",
"octicons/diamond-16",
"octicons/diamond-24",
"octicons/diff-16",
@@ -9707,6 +9709,8 @@
"octicons/person-fill-24",
"octicons/pin-16",
"octicons/pin-24",
+ "octicons/pin-slash-16",
+ "octicons/pin-slash-24",
"octicons/play-16",
"octicons/play-24",
"octicons/plug-16",
@@ -9884,6 +9888,7 @@
"octicons/webhook-16",
"octicons/workflow-16",
"octicons/workflow-24",
+ "octicons/x-12",
"octicons/x-16",
"octicons/x-24",
"octicons/x-circle-16",
@@ -9947,6 +9952,7 @@
"simple/aeromexico",
"simple/aerospike",
"simple/aew",
+ "simple/affine",
"simple/affinity",
"simple/affinitydesigner",
"simple/affinityphoto",
@@ -10078,6 +10084,7 @@
"simple/aqua",
"simple/aral",
"simple/arangodb",
+ "simple/arcgis",
"simple/archicad",
"simple/archiveofourown",
"simple/archlinux",
@@ -10250,6 +10257,7 @@
"simple/canonical",
"simple/canva",
"simple/capacitor",
+ "simple/cardano",
"simple/carrefour",
"simple/carthrottle",
"simple/carto",
@@ -10316,6 +10324,7 @@
"simple/cmake",
"simple/cncf",
"simple/cnn",
+ "simple/cocacola",
"simple/cockpit",
"simple/cockroachlabs",
"simple/cocoapods",
@@ -10365,6 +10374,7 @@
"simple/consul",
"simple/contactlesspayment",
"simple/containerd",
+ "simple/contao",
"simple/contentful",
"simple/conventionalcommits",
"simple/convertio",
@@ -10569,6 +10579,7 @@
"simple/eslint",
"simple/esphome",
"simple/espressif",
+ "simple/esri",
"simple/etcd",
"simple/ethereum",
"simple/ethiopianairlines",
@@ -11254,6 +11265,7 @@
"simple/monero",
"simple/moneygram",
"simple/mongodb",
+ "simple/mongoose",
"simple/monica",
"simple/monkeytie",
"simple/monogames",
@@ -11556,6 +11568,7 @@
"simple/prezi",
"simple/prime",
"simple/primevideo",
+ "simple/printables",
"simple/prisma",
"simple/prismic",
"simple/privateinternetaccess",
@@ -11727,6 +11740,7 @@
"simple/rubygems",
"simple/rubyonrails",
"simple/rubysinatra",
+ "simple/ruff",
"simple/runkeeper",
"simple/runkit",
"simple/rust",
diff --git a/docs/schema/plugins/privacy.json b/docs/schema/plugins/privacy.json
index 4afa6559f..aaa36b830 100644
--- a/docs/schema/plugins/privacy.json
+++ b/docs/schema/plugins/privacy.json
@@ -24,62 +24,60 @@
"concurrency": {
"title": "Concurrency (number of CPUs)",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/setup/ensuring-data-privacy/#+privacy.concurrency",
- "type": "number"
+ "type": "number",
+ "default": 1
},
- "external_assets": {
- "title": "External assets",
- "markdownDescription": "https://squidfunk.github.io/mkdocs-material/setup/ensuring-data-privacy/#+privacy.external_assets",
- "oneOf": [
- {
- "title": "Bundle external assets",
- "enum": ["bundle"]
- },
- {
- "title": "Report external assets as warnings",
- "enum": ["report"]
- }
- ],
- "default": "bundle"
- },
- "external_assets_dir": {
- "title": "External assets download directory",
- "markdownDescription": "https://squidfunk.github.io/mkdocs-material/setup/ensuring-data-privacy/#+privacy.external_assets_dir",
- "type": "string",
- "default": "assets/external"
- },
- "external_assets_include": {
- "title": "External assets to include",
- "markdownDescription": "https://squidfunk.github.io/mkdocs-material/setup/ensuring-data-privacy/#+privacy.external_assets_include",
- "type": "array",
- "items": {
- "title": "External assets matching this pattern will be downloaded",
- "markdownDescription": "https://squidfunk.github.io/mkdocs-material/setup/ensuring-data-privacy/#+privacy.external_assets_include",
- "pattern": ".*"
- },
- "uniqueItems": true,
- "minItems": 1
- },
- "external_assets_exclude": {
- "title": "External assets to exclude",
- "markdownDescription": "https://squidfunk.github.io/mkdocs-material/setup/ensuring-data-privacy/#+privacy.external_assets_exclude",
- "type": "array",
- "items": {
- "title": "External assets matching this pattern will not be downloaded",
- "markdownDescription": "https://squidfunk.github.io/mkdocs-material/setup/ensuring-data-privacy/#+privacy.external_assets_exclude",
- "pattern": ".*"
- },
- "uniqueItems": true,
- "minItems": 1
- },
- "external_links": {
- "title": "External links",
- "markdownDescription": "https://squidfunk.github.io/mkdocs-material/setup/ensuring-data-privacy/#+privacy.external_links",
+ "assets": {
+ "title": "Process external assets",
+ "markdownDescription": "https://squidfunk.github.io/mkdocs-material/setup/ensuring-data-privacy/#+privacy.assets",
"type": "boolean",
"default": true
},
- "external_links_attr_map": {
+ "assets_fetch": {
+ "title": "Download external assets",
+ "markdownDescription": "https://squidfunk.github.io/mkdocs-material/setup/ensuring-data-privacy/#+privacy.assets_fetch",
+ "type": "boolean",
+ "default": true
+ },
+ "assets_fetch_dir": {
+ "title": "Download external assets to this directory",
+ "markdownDescription": "https://squidfunk.github.io/mkdocs-material/setup/ensuring-data-privacy/#+privacy.assets_fetch_dir",
+ "type": "string",
+ "default": "assets/external"
+ },
+ "assets_include": {
+ "title": "External assets to include",
+ "markdownDescription": "https://squidfunk.github.io/mkdocs-material/setup/ensuring-data-privacy/#+privacy.assets_include",
+ "type": "array",
+ "items": {
+ "title": "External assets matching this pattern will be downloaded",
+ "markdownDescription": "https://squidfunk.github.io/mkdocs-material/setup/ensuring-data-privacy/#+privacy.assets_include",
+ "pattern": ".*"
+ },
+ "uniqueItems": true,
+ "minItems": 1
+ },
+ "assets_exclude": {
+ "title": "External assets to exclude",
+ "markdownDescription": "https://squidfunk.github.io/mkdocs-material/setup/ensuring-data-privacy/#+privacy.assets_exclude",
+ "type": "array",
+ "items": {
+ "title": "External assets matching this pattern will not be downloaded",
+ "markdownDescription": "https://squidfunk.github.io/mkdocs-material/setup/ensuring-data-privacy/#+privacy.assets_exclude",
+ "pattern": ".*"
+ },
+ "uniqueItems": true,
+ "minItems": 1
+ },
+ "links": {
+ "title": "Process external links",
+ "markdownDescription": "https://squidfunk.github.io/mkdocs-material/setup/ensuring-data-privacy/#+privacy.links",
+ "type": "boolean",
+ "default": true
+ },
+ "links_attr_map": {
"title": "Custom attributes to add to external links",
- "markdownDescription": "https://squidfunk.github.io/mkdocs-material/setup/ensuring-data-privacy/#+privacy.external_links_attr_map",
+ "markdownDescription": "https://squidfunk.github.io/mkdocs-material/setup/ensuring-data-privacy/#+privacy.links_attr_map",
"type": "object",
"patternProperties": {
"^[\\w_]+$": {
@@ -87,9 +85,9 @@
}
}
},
- "external_links_noopener": {
+ "links_noopener": {
"title": "Behavior for external links that open in new windows",
- "markdownDescription": "https://squidfunk.github.io/mkdocs-material/setup/ensuring-data-privacy/#+privacy.external_links_noopener",
+ "markdownDescription": "https://squidfunk.github.io/mkdocs-material/setup/ensuring-data-privacy/#+privacy.links_noopener",
"type": "boolean",
"default": true
}
diff --git a/docs/schema/plugins/social.json b/docs/schema/plugins/social.json
index 161d7cf8c..668caa87a 100644
--- a/docs/schema/plugins/social.json
+++ b/docs/schema/plugins/social.json
@@ -15,51 +15,90 @@
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/setup/setting-up-social-cards/#built-in-social-plugin",
"type": "object",
"properties": {
+ "enabled": {
+ "title": "Enable plugin",
+ "markdownDescription": "https://squidfunk.github.io/mkdocs-material/setup/setting-up-social-cards/#+social.enabled",
+ "type": "boolean",
+ "default": true
+ },
+ "concurrency": {
+ "title": "Concurrency (number of CPUs)",
+ "markdownDescription": "https://squidfunk.github.io/mkdocs-material/setup/setting-up-social-cards/#+social.concurrency",
+ "type": "number",
+ "default": 1
+ },
"cards": {
- "title": "Social card generation",
+ "title": "Social cards",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/setup/setting-up-social-cards/#+social.cards",
"type": "boolean",
"default": true
},
- "cards_color": {
- "title": "Social card color palette",
- "markdownDescription": "https://squidfunk.github.io/mkdocs-material/setup/setting-up-social-cards/#+social.cards_color",
- "type": "object",
- "properties": {
- "fill": {
- "title": "Background fill color",
- "markdownDescription": "https://squidfunk.github.io/mkdocs-material/setup/setting-up-social-cards/#+social.cards_color",
- "type": "string"
- },
- "text": {
- "title": "Foreground text color",
- "markdownDescription": "https://squidfunk.github.io/mkdocs-material/setup/setting-up-social-cards/#+social.cards_color",
- "type": "string"
- }
- },
- "additionalProperties": false,
- "required": [
- "fill",
- "text"
- ]
- },
- "cards_font": {
- "$ref": "../assets/fonts.json"
- },
"cards_dir": {
- "title": "Social card directory",
+ "title": "Social cards directory",
"markdownDescription": "https://squidfunk.github.io/mkdocs-material/setup/setting-up-social-cards/#+social.cards_dir",
"type": "string",
"default": "assets/images/social"
+ },
+ "cards_layout_dir": {
+ "title": "Social cards layout directory",
+ "markdownDescription": "https://squidfunk.github.io/mkdocs-material/setup/setting-up-social-cards/#+social.cards_layout_dir",
+ "type": "string",
+ "default": "layouts"
+ },
+ "cards_layout": {
+ "title": "Social cards layout",
+ "markdownDescription": "https://squidfunk.github.io/mkdocs-material/setup/setting-up-social-cards/#+social.cards_layout",
+ "default": "default",
+ "enum": [
+ "default",
+ "default/accent",
+ "default/invert",
+ "default/variant"
+ ]
+ },
+ "cards_layout_options": {
+ "title": "Social cards layout options",
+ "markdownDescription": "https://squidfunk.github.io/mkdocs-material/setup/setting-up-social-cards/#+social.cards_layout_options",
+ "type": "object"
+ },
+ "debug": {
+ "title": "Debug mode",
+ "markdownDescription": "https://squidfunk.github.io/mkdocs-material/setup/setting-up-social-cards/#+social.debug",
+ "type": "boolean",
+ "default": true
+ },
+ "debug_grid": {
+ "title": "Debug grid",
+ "markdownDescription": "https://squidfunk.github.io/mkdocs-material/setup/setting-up-social-cards/#+social.debug_grid",
+ "type": "boolean",
+ "default": true
+ },
+ "debug_grid_step": {
+ "title": "Debug grid step size",
+ "markdownDescription": "https://squidfunk.github.io/mkdocs-material/setup/setting-up-social-cards/#+social.debug_grid_step",
+ "type": "number",
+ "default": 32
+ },
+ "debug_color": {
+ "title": "Debug color",
+ "markdownDescription": "https://squidfunk.github.io/mkdocs-material/setup/setting-up-social-cards/#+social.debug_color",
+ "type": "string",
+ "default": "yellow"
+ },
+ "cache": {
+ "title": "Enable caching",
+ "markdownDescription": "https://squidfunk.github.io/mkdocs-material/setup/setting-up-social-cards/#+social.cache",
+ "type": "boolean",
+ "default": true
+ },
+ "cache_dir": {
+ "title": "Cache directory",
+ "markdownDescription": "https://squidfunk.github.io/mkdocs-material/setup/setting-up-social-cards/#+social.cache_dir",
+ "type": "string",
+ "default": ".cache/plugins/social"
}
},
- "additionalProperties": false,
- "defaultSnippets": [
- {
- "label": "cards_font",
- "body": "cards_font: ${1:Roboto}"
- }
- ]
+ "additionalProperties": false
}
},
"additionalProperties": false
diff --git a/docs/schema/theme.json b/docs/schema/theme.json
index 9f51b902f..ec0123598 100644
--- a/docs/schema/theme.json
+++ b/docs/schema/theme.json
@@ -214,6 +214,12 @@
"ka"
]
},
+ {
+ "title": "Site language: Kannada",
+ "enum": [
+ "kn"
+ ]
+ },
{
"title": "Site language: Korean",
"enum": [
@@ -304,6 +310,12 @@
"ru"
]
},
+ {
+ "title": "Site language: Sanskrit",
+ "enum": [
+ "sa"
+ ]
+ },
{
"title": "Site language: Serbo-Croatian",
"enum": [
@@ -340,6 +352,12 @@
"sv"
]
},
+ {
+ "title": "Site language: Telugu",
+ "enum": [
+ "te"
+ ]
+ },
{
"title": "Site language: Thai",
"enum": [
@@ -918,7 +936,8 @@
"grey",
"blue grey",
"black",
- "white"
+ "white",
+ "custom"
]
},
"accent": {
@@ -945,7 +964,8 @@
"grey",
"blue grey",
"black",
- "white"
+ "white",
+ "custom"
]
},
"icon": {
diff --git a/docs/setup/building-an-optimized-site.md b/docs/setup/building-an-optimized-site.md
index 1110dfc98..1486530de 100644
--- a/docs/setup/building-an-optimized-site.md
+++ b/docs/setup/building-an-optimized-site.md
@@ -1,7 +1,3 @@
----
-status: new
----
-
# Building an optimized site
Material for MkDocs, by default, allows to build optimized sites that rank great
@@ -196,7 +192,7 @@ The following configuration options are available for caching:
``` yaml
plugins:
- optimize:
- cache_dir: path/to/folder
+ cache_dir: .cache/plugins/optimize
```
By default, all built-in plugins that implement caching will create a
diff --git a/docs/setup/changing-the-colors.md b/docs/setup/changing-the-colors.md
index 07106b8eb..af16f0d7b 100644
--- a/docs/setup/changing-the-colors.md
+++ b/docs/setup/changing-the-colors.md
@@ -105,6 +105,8 @@ Click on a tile to change the primary color:
})
+See our guide below to learn how to set [custom colors].
+
[Primary color support]: https://github.com/squidfunk/mkdocs-material/releases/tag/0.2.0
#### Accent color
@@ -162,6 +164,8 @@ Click on a tile to change the accent color:
})
+See our guide below to learn how to set [custom colors].
+
[Accent color support]: https://github.com/squidfunk/mkdocs-material/releases/tag/0.2.0
### Color palette toggle
@@ -323,6 +327,16 @@ properties). If you want to customize the colors beyond the palette (e.g. to
use your brand-specific colors), you can add an [additional style sheet] and
tweak the values of the CSS variables.
+First, set the [`primary`][palette.primary] or [`accent`][palette.accent] values
+in `mkdocs.yml` to `custom`, to signal to the theme that you want to define
+custom colors, e.g., when you want to override the `primary` color:
+
+``` yaml
+theme:
+ palette:
+ primary: custom
+```
+
Let's say you're :fontawesome-brands-youtube:{ style="color: #EE0F0F" }
__YouTube__, and want to set the primary color to your brand's palette. Just
add:
diff --git a/docs/setup/changing-the-language.md b/docs/setup/changing-the-language.md
index e3ddc2326..5b34828d5 100644
--- a/docs/setup/changing-the-language.md
+++ b/docs/setup/changing-the-language.md
@@ -1,7 +1,7 @@
# Changing the language
Material for MkDocs supports internationalization (i18n) and provides
-translations for template variables and labels in 50+ languages. Additionally,
+translations for template variables and labels in 60+ languages. Additionally,
the site search can be configured to use a language-specific stemmer, if
available.
diff --git a/docs/setup/ensuring-data-privacy.md b/docs/setup/ensuring-data-privacy.md
index 5f2417963..ae9060fda 100644
--- a/docs/setup/ensuring-data-privacy.md
+++ b/docs/setup/ensuring-data-privacy.md
@@ -199,28 +199,38 @@ The following configuration options are available:
The following configuration options are available for external assets:
-[`external_assets`](#+privacy.external_assets){ #+privacy.external_assets }
+[`assets`](#+privacy.assets){ #+privacy.assets }
-: :octicons-milestone-24: Default: `bundle` – This option specifies what the
- plugin should do when encountering external assets. There are two options:
- while `report` will issue warning messages during the build, `bundle` will
- automatically download all external files and adjust all references:
+: :octicons-milestone-24: Default: `true` – This option specifies whether the
+ plugin should scan the HTML output to detect and process external assets:
``` yaml
plugins:
- privacy:
- external_assets: bundle
+ assets: true
```
If you've removed all external assets from your project via [customization],
- it's still a good idea to enable the plugin and set the mode to `report`,
- as the plugin will make sure that there are no hidden external links in any
- Markdown files that were unintentionally added.
+ it's still a good idea to enable the plugin, as the plugin will make sure
+ that there are no hidden external links in any Markdown files that were
+ unintentionally added.
- Using `report` in [strict mode] will make the build fail when external
+ Using `assets` in [strict mode] will make the build fail when external
assets are detected.
-[`external_assets_dir`](#+privacy.external_assets_dir){ #+privacy.external_assets_dir }
+[`assets_fetch`](#+privacy.assets_fetch){ #+privacy.assets_fetch }
+
+: :octicons-milestone-24: Default: `true` – This option specifies whether the
+ plugin should download external assets it encountered and bundle them with
+ your documentation:
+
+ ``` yaml
+ plugins:
+ - privacy:
+ assets_fetch: true
+ ```
+
+[`assets_fetch_dir`](#+privacy.assets_fetch_dir){ #+privacy.assets_fetch_dir }
: :octicons-milestone-24: Default: `assets/external` – This option
specifies where the downloaded [external assets] will be stored. It's
@@ -229,12 +239,12 @@ The following configuration options are available for external assets:
``` yaml
plugins:
- privacy:
- external_assets_dir: assets/external
+ assets_fetch_dir: assets/external
```
The path must be defined relative to [`docs_dir`][docs_dir].
-[`external_assets_include`](#+privacy.external_assets_include){ #+privacy.external_assets_include } :material-alert-decagram:{ .mdx-pulse title="Added on February 6, 2023" }
+[`assets_include`](#+privacy.assets_include){ #+privacy.assets_include }
: :octicons-milestone-24: Default: _none_ – This option allows to only include
certain external assets for processing by the privacy plugin, so they will
@@ -243,7 +253,7 @@ The following configuration options are available for external assets:
``` yaml
plugins:
- privacy:
- external_assets_include:
+ assets_include:
- unsplash.com/*
```
@@ -265,7 +275,7 @@ The following configuration options are available for external assets:
differently from others or exclude some images from downloading, you can
use multiple instances of the [built-in privacy plugin].
-[`external_assets_exclude`](#+privacy.external_assets_exclude){ #+privacy.external_assets_exclude }
+[`assets_exclude`](#+privacy.assets_exclude){ #+privacy.assets_exclude }
: :octicons-milestone-24: Default: _none_ – This option allows to exclude
certain external assets from processing by the privacy plugin, so they will
@@ -274,7 +284,7 @@ The following configuration options are available for external assets:
``` yaml
plugins:
- privacy:
- external_assets_exclude: # (1)!
+ assets_exclude: # (1)!
- cdn.jsdelivr.net/npm/mathjax@3/*
- giscus.app/*
```
@@ -333,7 +343,7 @@ The following configuration options are available for external assets:
The following configuration options are available for external links:
-[`external_links`](#+privacy.external_links){ #+privacy.external_links }
+[`links`](#+privacy.links){ #+privacy.links }
: :octicons-milestone-24: Default: `true` – This option specifies whether the
plugin should parse and process external links. If you want to speed up
@@ -342,10 +352,10 @@ The following configuration options are available for external links:
``` yaml
plugins:
- privacy:
- external_links: !ENV [CI, false]
+ links: !ENV [CI, false]
```
-[`external_links_attr_map`](#+privacy.external_links_attr_map){ #+privacy.external_links_attr_map }
+[`links_attr_map`](#+privacy.links_attr_map){ #+privacy.links_attr_map }
: :octicons-milestone-24: Default: _None_ – This option specifies custom
attributes that should be added to external links, like for example
@@ -354,11 +364,11 @@ The following configuration options are available for external links:
``` yaml
plugins:
- privacy:
- external_links_attr_map:
+ links_attr_map:
target: _blank
```
-[`external_links_noopener`](#+privacy.external_links_noopener){ #+privacy.external_links_noopener }
+[`links_noopener`](#+privacy.links_noopener){ #+privacy.links_noopener }
: :octicons-milestone-24: Default: `true` – This option specifies whether the
plugin should automatically add [`rel="noopener"`][noopener] to all links
@@ -367,7 +377,7 @@ The following configuration options are available for external links:
``` yaml
plugins:
- privacy:
- external_links_noopener: true
+ links_noopener: true
```
[noopener]: https://mathiasbynens.github.io/rel-noopener/
@@ -484,27 +494,30 @@ carried out. You might want to:
`.cache` directory in between builds. Taking the example from the
[publishing guide], add the following lines:
- ``` yaml hl_lines="15-18"
+ ``` yaml hl_lines="15-21"
name: ci
on:
push:
branches:
- master
- main
- jobs:
- deploy:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - uses: actions/setup-python@v2
- with:
- python-version: 3.x
- - uses: actions/cache@v2
- with:
- key: ${{ github.ref }}
- path: .cache
- - run: pip install mkdocs-material
- - run: mkdocs gh-deploy --force
+ jobs:
+ deploy:
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v3
+ - uses: actions/setup-python@v4
+ with:
+ python-version: 3.x
+ - run: echo "cache_id=$(date --utc '+%V')" >> $GITHUB_ENV
+ - uses: actions/cache@v3
+ with:
+ key: mkdocs-material-${{ env.cache_id }}
+ path: .cache
+ restore-keys: |
+ mkdocs-material-
+ - run: pip install mkdocs-material
+ - run: mkdocs gh-deploy --force
```
[publishing guide]: ../publishing-your-site.md#with-github-actions
diff --git a/docs/setup/index.md b/docs/setup/index.md
index b848c95b3..d20a3544d 100644
--- a/docs/setup/index.md
+++ b/docs/setup/index.md
@@ -13,7 +13,7 @@ setting up site search, and more.
-- :fontawesome-solid-earth-americas: __[Language]__ – Choose out of the 50+ supported languages or add a new one
+- :fontawesome-solid-earth-americas: __[Language]__ – Choose out of the 60+ supported languages or add a new one
- :material-page-layout-sidebar-left: __[Navigation]__ – Create a clear, concise, and comprehensive navigation structure
- :material-page-layout-header: __[Header]__ – Customize the behavior of the header, add an announcement bar
- :material-page-layout-footer: __[Footer]__ – Add links to your social media profiles or websites in the footer
diff --git a/docs/setup/setting-up-a-blog.md b/docs/setup/setting-up-a-blog.md
index 1470cf79d..454fef4d3 100644
--- a/docs/setup/setting-up-a-blog.md
+++ b/docs/setup/setting-up-a-blog.md
@@ -93,7 +93,7 @@ The following configuration options are available:
``` yaml
plugins:
- blog:
- blog_dir: path/to/folder
+ blog_dir: blog
```
=== "Standalone"
diff --git a/docs/setup/setting-up-navigation.md b/docs/setup/setting-up-navigation.md
index ea8684256..abe27d36f 100644
--- a/docs/setup/setting-up-navigation.md
+++ b/docs/setup/setting-up-navigation.md
@@ -31,7 +31,7 @@ are rebound automatically, i.e., __Material for MkDocs now behaves like a Single
Page Application__. Now, the search index survives navigation, which is
especially useful for large documentation sites.
- [Instant loading support]: https://github.com/squidfunk/mkdocs-material/releases/tag/5.2.0
+ [Instant loading support]: https://github.com/squidfunk/mkdocs-material/releases/tag/5.0.0
[XHR]: https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest
### Anchor tracking
diff --git a/docs/setup/setting-up-site-search.md b/docs/setup/setting-up-site-search.md
index 937daf02c..d7a50dd32 100644
--- a/docs/setup/setting-up-site-search.md
+++ b/docs/setup/setting-up-site-search.md
@@ -73,17 +73,25 @@ The following configuration options are supported:
- `es` – Spanish
- `fi` – Finnish
- `fr` – French
+ - `hi` – Hindi
- `hu` – Hungarian
+ - `hy` – Armenian
- `it` – Italian
- `ja` – Japanese
+ - `kn` - Kannada
+ - `ko` – Korean
- `no` – Norwegian
- `pt` – Portuguese
- `ro` – Romanian
- `ru` – Russian
+ - `sa` – Sanskrit
- `sv` – Swedish
+ - `ta` – Tamil
+ - `te` – Telugu
- `th` – Thai
- `tr` – Turkish
- `vi` – Vietnamese
+ - `zh` – Chinese
diff --git a/docs/setup/setting-up-social-cards.md b/docs/setup/setting-up-social-cards.md
index 48ec14c59..21c7b21b8 100644
--- a/docs/setup/setting-up-social-cards.md
+++ b/docs/setup/setting-up-social-cards.md
@@ -1,37 +1,27 @@
+---
+status: new
+---
+
# Setting up social cards
-Social cards, also known as social previews, are images that are displayed when
-a link to your project documentation is shared on social media. Material for
-MkDocs can generate beautiful social cards automatically, using the [colors],
-[fonts] and [logo][^1] defined in `mkdocs.yml`,
-e.g.:
+Material for MkDocs can automatically create beautiful social cards for your
+documentation, which appear as link previews on social media platforms. You
+can select from several [pre-designed layouts][default layouts] or create
+[custom layouts] to match your unique style and branding.
-[![Social cards preview]][Social cards preview]
+[![Layout default variant]][Layout default variant]
-The social preview image for the page on [setting up site analytics].
-[Twitter's Card validator] shows how it will look when shared.
+Social card of our [formatting] reference
- [^1]:
- Both types of logos, images (`theme.logo`) and icons (`theme.icon.logo`)
- are supported. While an image logo is used as-is, icons are filled with the
- color used in the header (white or black), which depends on the primary
- color. Note that custom logos and icons must reside in the `docs_dir` for
- the plugin to find them. For guidance, see #4920. This limitation will be
- lifted in the future when the social plugin will receive its next update.
-
- [colors]: changing-the-colors.md#primary-color
- [fonts]: changing-the-fonts.md#regular-font
- [logo]: changing-the-logo-and-icons.md#logo
- [Social cards preview]: ../assets/screenshots/social-cards.png
- [setting up site analytics]: setting-up-site-analytics.md
- [Twitter's Card validator]: https://cards-dev.twitter.com/validator
+ [custom layouts]: #customization
+ [formatting]: ../reference/formatting.md
## Configuration
@@ -41,17 +31,71 @@ The social preview image for the page on [setting up site analytics].
:octicons-cpu-24: Plugin ·
:octicons-beaker-24: Experimental
-First, ensure you've installed all [dependencies] and have a valid [`site_url`]
-[site_url], as social preview images must be referenced via absolute URLs.
-Then, add the following lines to `mkdocs.yml`:
+The built-in social plugin automatically generate a custom preview image for
+each page. Install all [dependencies for image processing][^1] and add the
+following lines to `mkdocs.yml`:
+
+ [^1]:
+ The awesome thing about social cards is that they are generated during
+ build time and directly distributed with your documentation, no external
+ services involved. While it would technically be simpler to generate
+ social cards using a web browser and an automation framework like
+ [Puppeteer], it would add further liabilities to the toolchain, with the
+ potential to make build pipelines more complex and resource intense.
+
+ For this reason, Material for MkDocs again follows its core principle of
+ making it as simple and powerful as possible, providing an easy-to-use
+ framework for building [custom layouts] using Python image processing
+ libraries.
``` yaml
plugins:
- social
```
+> Note that [Insiders] contains a ground up rewrite of the social plugin that
+> generates images much more efficiently in parallel and allows to build
+> entirely [custom layouts].
+
The following configuration options are available:
+[`enabled`](#+social.enabled){ #+social.enabled }
+
+: :octicons-milestone-24: Default: `true` – This option specifies whether
+ the plugin is enabled when building your project. If you want to speed up
+ local builds, you can use an [environment variable]:
+
+ ``` yaml
+ plugins:
+ - social:
+ enabled: !ENV [CI, false]
+ ```
+
+[`concurrency`](#+social.concurrency){ #+social.concurrency }
+
+: [:octicons-tag-24: insiders-4.33.0][Insiders] · :octicons-milestone-24:
+ Default: _number of CPUs_ – How many CPUs the plugin is allowed to use when
+ generating social cards. With more CPUs, the plugin can do more work in the
+ same time, thus complete generation faster. Concurrent processing can be
+ disabled with:
+
+ ``` yaml
+ plugins:
+ - social:
+ concurrency: 1
+ ```
+
+ [Social cards support]: https://github.com/squidfunk/mkdocs-material/releases/tag/8.5.0
+ [built-in plugins]: ../insiders/getting-started.md#built-in-plugins
+ [dependencies for image processing]: dependencies/image-processing.md
+ [Puppeteer]: https://github.com/puppeteer/puppeteer
+ [Insiders]: ../insiders/index.md
+ [environment variable]: https://www.mkdocs.org/user-guide/configuration/#environment-variables
+
+#### Social cards
+
+The following configuration options are available for card generation:
+
[`cards`](#+social.cards){ #+social.cards }
: :octicons-milestone-24: Default: `true` – This option specifies whether
@@ -61,254 +105,323 @@ The following configuration options are available:
``` yaml
plugins:
- social:
- cards: !ENV [CARDS, false]
+ cards: !ENV [CI, false]
```
-[`cards_color`](#+social.cards_color){ #+social.cards_color }
+[`cards_dir`](#+social.cards_dir){ #+social.cards_dir }
-: :octicons-milestone-24: Default: [`theme.palette.primary`][palette.primary]
- – This option specifies the colors for the background `fill` and foreground
+: :octicons-milestone-24: Default: `assets/images/social` – This option
+ specifies where the generated social cards will be stored. While it's
+ usually not necessary to change this option, change it with:
+
+ ``` yaml
+ plugins:
+ - social:
+ cards_dir: assets/images/social
+ ```
+
+
+
+[`cards_color`](#+social.cards_color){ #+social.cards_color } – :material-trash-can: Deprecated, use [`cards_layout_options`][layout options]
+
+: :octicons-milestone-24: Default: [`theme.palette.primary`][primary color] –
+ This option specifies the colors for the background `fill` and foreground
`text` when generating the social card:
``` yaml
plugins:
- social:
cards_color:
- fill: "#0FF1CE" # (1)!
+ fill: "#0FF1CE"
text: "#FFFFFF"
```
- 1. Colors can either be defined as HEX colors, or as [CSS color keywords].
- Note that HEX colors must be enclosed in quotes.
+[`cards_font`](#+social.cards_font){ #+social.cards_font } – :material-trash-can: Deprecated, use [`cards_layout_options`][layout options]
-[`cards_font`](#+social.cards_font){ #+social.cards_font }
-
-: :octicons-milestone-24: Default: [`theme.font.text`][font.text] – This
- option specifies which font to use for rendering the social card, which can
- be any font hosted on [Google Fonts]:
+: :octicons-milestone-24: Default: [`theme.font.text`][font] – This option
+ specifies which font to use for rendering the social card, which can be
+ any font hosted on [Google Fonts]:
``` yaml
plugins:
- social:
- cards_font: Roboto
+ cards_font: Ubuntu
```
- !!! question "Why do social cards render boxes for CJK languages?"
+
- Some fonts do not contain CJK characters, like for example the
- [default font, `Roboto`][font.text]. In case your `site_name`,
- `site_description`, or [page title] contain CJK characters, choose
- another font from [Google Fonts] which comes with CJK characters, e.g.
- one from the `Noto Sans` font family:
+[`cards_layout_dir`](#+social.cards_layout_dir){ #+social.cards_layout_dir }
- === "Chinese (Simplified)"
-
- ``` yaml
- plugins:
- - social:
- cards_font: Noto Sans SC
- ```
-
- === "Chinese (Traditional)"
-
- ``` yaml
- plugins:
- - social:
- cards_font: Noto Sans TC
- ```
-
- === "Japanese"
-
- ``` yaml
- plugins:
- - social:
- cards_font: Noto Sans JP
- ```
-
- === "Korean"
-
- ``` yaml
- plugins:
- - social:
- cards_font: Noto Sans KR
- ```
-
-[`cards_dir`](#+social.cards_dir){ #+social.cards_dir }
-
-: :octicons-milestone-24: Default: `assets/images/social` – This option
- specifies where the generated social card images will be written to. It's
- normally not necessary to change this option:
+: [:octicons-tag-24: insiders-4.33.0][Insiders] · :octicons-milestone-24:
+ Default: _none_ – This option specifies where the social plugin should try
+ to resolve [custom layouts] from, taking precedence over the included
+ layouts:
``` yaml
plugins:
- social:
- cards_dir: path/to/folder
+ cards_layout_dir: layouts
```
- [Social cards support]: https://github.com/squidfunk/mkdocs-material/releases/tag/8.5.0
- [dependencies]: #dependencies
- [site_url]: https://www.mkdocs.org/user-guide/configuration/#site_url
- [palette.primary]: changing-the-colors.md#primary-color
- [font.text]: changing-the-fonts.md#regular-font
- [environment variable]: https://www.mkdocs.org/user-guide/configuration/#environment-variables
- [CSS color keywords]: https://developer.mozilla.org/en-US/docs/Web/CSS/color_value#color_keywords
- [Google Fonts]: https://fonts.google.com
- [page title]: ../reference/index.md#setting-the-page-title
+[`cards_layout`](#+social.cards_layout){ #+social.cards_layout } :material-alert-decagram:{ .mdx-pulse title="Added on May 8, 2023" }
-#### Dependencies
+: [:octicons-tag-24: insiders-4.33.0][Insiders] · :octicons-milestone-24:
+ Default: `default` – Layout specification the social card should use. The
+ plugin includes the following layouts which make use of the [color palette]
+ and [font]:
-Two Python libraries must be installed alongside Material for MkDocs to generate
-the social preview images, both of which are based on [Cairo Graphics] –
-[Pillow] and [CairoSVG]:
+ === "`default`"
-```
-pip install pillow cairosvg
-```
+ ``` yaml
+ plugins:
+ - social:
+ cards_layout: default
+ ```
-Both libraries are built with native extensions which need to be installed as
-well. The [Docker image] comes with all dependencies pre-installed. If you don't
-want to use Docker, see the following section which explains how to install all
-dependencies on your system:
+ This layout uses the configured [primary color] as a background:
-=== ":material-apple: macOS"
+ [![Layout default]][Layout default]
- Make sure [Homebrew] is installed, which is a modern package manager for
- macOS. Next, use the following command to install all necessary
- dependencies:
+ === "`default/variant`"
- ```
- brew install cairo freetype libffi libjpeg libpng zlib
+ ``` yaml
+ plugins:
+ - social:
+ cards_layout: default/variant
+ ```
+
+ This layout includes the [page icon] as a watermark, if defined:
+
+ [![Layout default variant]][Layout default variant]
+
+ === "`default/accent`"
+
+ ``` yaml
+ plugins:
+ - social:
+ cards_layout: default/accent
+ ```
+
+ This layout uses the configured [accent color] as a background:
+
+ [![Layout default accent]][Layout default accent]
+
+ === "`default/invert`"
+
+ ``` yaml
+ plugins:
+ - social:
+ cards_layout: default/invert
+ ```
+
+ This layout inverts the background and foreground colors:
+
+ [![Layout default invert]][Layout default invert]
+
+ All [`default`][default layouts] layouts make use of the following
+ [template variables]:
+
+ - :material-page-layout-header: – `config.site_name`
+ - :material-page-layout-body: – `page.meta.title` or `page.title`
+ - :material-page-layout-footer: – `page.meta.description` or `config.site_description`
+ - :material-page-layout-sidebar-right: – `theme.logo` or `theme.icon.logo`
+
+[`cards_layout_options`](#+social.cards_layout_options){ #+social.cards_layout_options }
+
+: [:octicons-tag-24: insiders-4.33.0][Insiders] · :octicons-milestone-24:
+ Default: _none_ – This option allows to set [parameters] as provided by
+ the layout specification. For [custom layouts], this key can be used to
+ provide layout-specific options, making layouts entirels configurable.
+
+ ---
+
+ All [`default`][default layouts] layouts expose the following parameters:
+
+ [`background_color`](#+social.cards_layout_options.background_color){ #+social.cards_layout_options.background_color }
+
+ : Set a background color, which can be a [CSS color keyword], or a 3, 4, 6
+ or 8 letter HEX color code. Alpha channels are supported as well:
+
+ ``` yaml
+ plugins:
+ - social:
+ cards_layout_options:
+ background_color: "#0FF1CE"
+ ```
+
+ [`background_image`](#+social.cards_layout_options.background_image){ #+social.cards_layout_options.background_image }
+
+ : [:octicons-tag-24: insiders-4.33.0][Insiders] – Set a background image.
+ If a `background_color` is set, like for the
+ [`default`][default layouts] layouts, the image is tinted (overlayed)
+ with the color. Thus, the background color must be (partially)
+ transparent for the image to become visible:
+
+ ``` yaml
+ plugins:
+ - social:
+ cards_layout_options:
+ background_color: "#00000000"
+ background_image: layouts/background.png
+ ```
+
+ The path of the image must be defined relative to the project root.
+
+ [`color`](#+social.cards_layout_options.color){ #+social.cards_layout_options.color }
+
+ : Set a foreground color, which can be a [CSS color keyword], or a 3, 4, 6
+ or 8 letter HEX color code. The color is primarily used to tint text and
+ icons:
+
+ ``` yaml
+ plugins:
+ - social:
+ cards_layout_options:
+ color: "#0FF1CE"
+ ```
+
+ [`font_family`](#+social.cards_layout_options.font_family){ #+social.cards_layout_options.font_family }
+
+ : Set a font family. This overrides the [font] that is set as part of the
+ theme configuration. The [built-in social plugin] will automatically
+ download the font from [Google Fonts]:
+
+ ``` yaml
+ plugins:
+ - social:
+ cards_layout_options:
+ font_family: Ubuntu
+ ```
+
+ [color palette]: ./changing-the-colors.md#color-palette
+ [primary color]: ./changing-the-colors.md#primary-color
+ [accent color]: ./changing-the-colors.md#accent-color
+ [font]: ./changing-the-fonts.md#regular-font
+ [Google Fonts]: https://fonts.google.com/
+ [layout options]: #+social.cards_layout_options
+ [page icon]: ../reference/index.md#setting-the-page-icon
+ [Layout default]: ../assets/screenshots/social-cards.png
+ [Layout default variant]: ../assets/screenshots/social-cards-variant.png
+ [Layout default accent]: ../assets/screenshots/social-cards-accent.png
+ [Layout default invert]: ../assets/screenshots/social-cards-invert.png
+ [template variables]: https://www.mkdocs.org/dev-guide/themes/#template-variables
+ [parameters]: #parameters
+ [default layouts]: #+social.cards_layout
+ [CSS color keyword]: https://developer.mozilla.org/en-US/docs/Web/CSS/color_value#color_keywords
+
+#### Debugging
+
+The following configuration options are available for debugging:
+
+[`debug`](#+social.debug){ #+social.debug }
+
+: [:octicons-tag-24: insiders-4.33.0][Insiders] · :octicons-milestone-24:
+ Default: `false` – This option enables a special debug mode, which renders
+ each layer with an outline and its `x` and `y` offset in order to understand
+ how the layout is composed, and optionally renders a grid for easier
+ alignment:
+
+ ``` yaml
+ plugins:
+ - social:
+ debug: true
```
-=== ":fontawesome-brands-windows: Windows"
+ === "With debug mode"
- As stated in the [installation guide], the easiest way to get up and running
- with the [Cairo Graphics] library on Windows is by installing [GTK+], since
- it has Cairo as a dependency. You can also download and install a
- precompiled [GTK runtime].
+ [![Debug mode enabled]][Debug mode enabled]
-=== ":material-linux: Linux"
+ === "Without"
- There are several package managers for Linux with varying availability per
- distribution. The [installation guide] explains how to install the [Cairo
- Graphics] library for your distribution:
+ [![Debug mode disabled]][Debug mode disabled]
- === ":material-ubuntu: Ubuntu"
+ [Debug mode enabled]: ../assets/screenshots/social-cards-debug.png
+ [Debug mode disabled]: ../assets/screenshots/social-cards-variant.png
- ```
- apt-get install libcairo2-dev libfreetype6-dev libffi-dev libjpeg-dev libpng-dev libz-dev
- ```
+[`debug_grid`](#+social.debug_grid){ #+social.debug_grid }
- === ":material-fedora: Fedora"
+: [:octicons-tag-24: insiders-4.33.0][Insiders] · :octicons-milestone-24:
+ Default: `true` – This option enables the rendering of a dot grid when
+ [`debug`][debug] is enabled (see screenshot above). The grid can be switched
+ off with:
- ```
- yum install cairo-devel freetype-devel libffi-devel libjpeg-devel libpng-devel zlib-devel
- ```
-
- === ":fontawesome-brands-suse: openSUSE"
-
- ```
- zypper install cairo-devel freetype-devel libffi-devel libjpeg-devel libpng-devel zlib-devel
- ```
-
- [Cairo Graphics]: https://www.cairographics.org/
- [Pillow]: https://pillow.readthedocs.io/
- [CairoSVG]: https://cairosvg.org/
- [Docker image]: https://hub.docker.com/r/squidfunk/mkdocs-material/
- [Homebrew]: https://brew.sh/
- [installation guide]: https://www.cairographics.org/download/
- [GTK+]: https://www.gtk.org/docs/installations/windows/
- [GTK runtime]: https://github.com/tschoonj/GTK-for-Windows-Runtime-Environment-Installer/releases
-
-#### Caching recommended { #caching data-toc-label="Caching" }
-
-The [built-in social plugin] automatically fetches the fonts you define in
-`mkdocs.yml` from Google Fonts, and uses them to render the text that is
-displayed on the social card. The font files and generated cards are both
-written to the `.cache` directory, which is used in subsequent builds to detect
-whether the social cards need to be regenerated. You might want to:
-
-1. Ignore the `.cache` directory in your project, by adding it to `.gitignore`.
-2. When building your site for publishing, use a build cache to save the
- `.cache` directory in between builds. Taking the example from the
- [publishing guide], add the following lines:
-
- ``` yaml hl_lines="15-18"
- name: ci
- on:
- push:
- branches:
- - master
- - main
- jobs:
- deploy:
- runs-on: ubuntu-latest
- steps:
- - uses: actions/checkout@v2
- - uses: actions/setup-python@v2
- with:
- python-version: 3.x
- - uses: actions/cache@v2
- with:
- key: ${{ github.ref }}
- path: .cache
- - run: pip install mkdocs-material
- - run: mkdocs gh-deploy --force
+ ``` yaml
+ plugins:
+ - social:
+ debug_grid: false
```
+[`debug_grid_step`](#+social.debug_grid_step){ #+social.debug_grid_step }
+
+: [:octicons-tag-24: insiders-4.33.0][Insiders] · :octicons-milestone-24:
+ Default: `32` – This option specifies the step size of the grid in pixels,
+ if enabled, which can be used to align elements. It can be changed with:
+
+ ``` yaml
+ plugins:
+ - social:
+ debug_grid_step: 64
+ ```
+
+[`debug_color`](#+social.debug_color){ #+social.debug_color }
+
+: [:octicons-tag-24: insiders-4.33.0][Insiders] · :octicons-milestone-24:
+ Default: `grey` – This option sets the color of the layer outlines and
+ the grid which are rendered when [`debug`][debug] is enabled. It can be
+ changed with:
+
+ ``` yaml
+ plugins:
+ - social:
+ debug_color: yellow
+ ```
+
+ [debug]: #+social.debug
+
+#### Caching
+
+The [built-in social plugin] implements an intelligent caching mechanism,
+ensuring that social cards are only re-generated when they're not contained in
+the cache or their contents change. If any of the variables used in a layout
+changes, the plugin will detect it and re-generate the card.
+
+The following configuration options are available for caching:
+
+[`cache`](#+social.cache){ #+social.cache }
+
+: [:octicons-tag-24: insiders-4.33.0][Insiders] · :octicons-milestone-24:
+ Default: `true` – Whether the plugin queries its cache for an existing
+ artifact before starting a generation job. It's normally not necessary to
+ change this setting, except for when debugging the plugin itself. Caching
+ can be disabled with:
+
+ ``` yaml
+ plugins:
+ - social:
+ cache: false
+ ```
+
+[`cache_dir`](#+social.cache_dir){ #+social.cache_dir }
+
+: :octicons-milestone-24: Default: `.cache/plugins/social` – This option
+ specifies the file system location of the plugin's cache. It's normally not
+ necessary to change this setting, except for when debugging the plugin
+ itself. The cache directory can be changed with:
+
+ ``` yaml
+ plugins:
+ - social:
+ cache_dir: .cache/plugins/social
+ ```
+
+ By default, all built-in plugins that implement caching will create a
+ `.cache` directory in the same folder your `mkdocs.yml` resides, and create
+ subfolders to not interfere with each other. If you use multiple instances
+ of this plugin, it could be necessary to change this setting.
+
[built-in social plugin]: #built-in-social-plugin
[publishing guide]: ../publishing-your-site.md#with-github-actions
-#### Meta tags
-
-The [built-in social plugin] automatically sets all necessary `meta` tags,
-equivalent to the following two customizations, which you can set manually when
-you don't want to use it:
-
-=== ":material-graph: Open Graph"
-
- ``` html
- {% extends "base.html" %}
-
- {% block extrahead %}
- {% set title = config.site_name %}
- {% if page and page.meta and page.meta.title %}
- {% set title = title ~ " - " ~ page.meta.title %}
- {% elif page and page.title and not page.is_homepage %}
- {% set title = title ~ " - " ~ page.title %}
- {% endif %}
-
-
-
-
-
-
-
-
- {% endblock %}
- ```
-
-=== ":fontawesome-brands-twitter: Twitter Cards"
-
- ``` html
- {% extends "base.html" %}
-
- {% block extrahead %}
- {% set title = config.site_name %}
- {% if page and page.meta and page.meta.title %}
- {% set title = title ~ " - " ~ page.meta.title %}
- {% elif page and page.title and not page.is_homepage %}
- {% set title = title ~ " - " ~ page.title %}
- {% endif %}
-
-
-
-
- {% endblock %}
- ```
-
- [Twitter Cards]: https://developer.twitter.com/en/docs/tweets/optimize-with-cards/overview/abouts-cards
-
## Usage
If you want to adjust the title or set a custom description for the social card,
@@ -320,3 +433,408 @@ precedence over the default values.
[Changing the title]: ../reference/index.md#setting-the-page-title
[Changing the description]: ../reference/index.md#setting-the-page-description
+
+
+### Choosing a font
+
+Some fonts do not contain CJK characters, like for example the
+[default font, `Roboto`][font]. In case your `site_name`, `site_description`, or
+page title contain CJK characters, choose another font from [Google Fonts] which
+comes with CJK characters, e.g. one from the `Noto Sans` font family:
+
+=== "Chinese (Simplified)"
+
+ ``` yaml
+ plugins:
+ - social:
+ cards_font: Noto Sans SC
+ ```
+
+=== "Chinese (Traditional)"
+
+ ``` yaml
+ plugins:
+ - social:
+ cards_font: Noto Sans TC
+ ```
+
+=== "Japanese"
+
+ ``` yaml
+ plugins:
+ - social:
+ cards_font: Noto Sans JP
+ ```
+
+=== "Korean"
+
+ ``` yaml
+ plugins:
+ - social:
+ cards_font: Noto Sans KR
+ ```
+
+## Customization
+
+[:octicons-heart-fill-24:{ .mdx-heart } Sponsors only][Insiders]{ .mdx-insiders } ·
+[:octicons-tag-24: insiders-4.33.0][Insiders] ·
+:octicons-beaker-24: Experimental
+
+[Insiders] ships a ground up rewrite of the [built-in social plugin] and
+introduces a brand new layout system based on a combination of YAML and
+[Jinja templates] – the same engine Material for MkDocs uses for HTML
+templating – allowing for the creation of complex custom layouts:
+
+
+
+
+
Layer 0
+
+
+
+
+
+
Layer 1
+
+
+
+
+
+
Layer 2
+
+
+
+
+
+
Layer 3
+
+
+
+
+
+
Layer 4
+
+
+
+
+
+
Layer 5
+
+
+
+
+
+Social cards are composed of layers, analogous to how they are represented in
+graphic design software such as Adobe Photoshop. As many layers are common
+across the cards generated for each page (e.g., backgrounds or logos), the
+built-in social plugin can automatically deduplicate layers and render them
+just once, substantially accelerating card generation. The generated cards are
+cached to ensure they are only regenerated when their contents change.
+
+Layouts are written in YAML syntax. Before starting to create a custom layout,
+it is a good idea to [study the pre-designed layouts] (link to [Insiders]
+repository), in order to get a better understanding of how they work. Then,
+create a new layout and reference it in `mkdocs.yml`:
+
+=== ":octicons-file-code-16: `layouts/custom.yml`"
+
+ ``` yaml
+ size: { width: 1200, height: 630 }
+ layers: []
+ ```
+
+=== ":octicons-file-code-16: `mkdocs.yml`"
+
+ ``` yaml
+ plugins:
+ - social:
+ cards_layout_dir: layouts
+ cards_layout: custom
+ debug: true
+ ```
+
+Note that the `.yml` file extension should be omitted. Next, run `mkdocs serve`,
+and see how the `.cache` directory is populated with the generated cards. Open
+any card in your editor, so you can see your changes immediately. Since we
+haven't defined any layers, the cards are transparent.
+
+The following sections explain how to create custom layouts.
+
+ [Jinja templates]: https://jinja.palletsprojects.com/en/3.1.x/
+ [study the pre-designed layouts]: https://github.com/squidfunk/mkdocs-material-insiders/tree/master/src/plugins/social/layouts
+
+### Size and offset
+
+Each layer has an associated size and offset, which is defined in pixels. The
+`size` is defined by a `width` and `height` property, and the `offset` by `x`
+and `y` properties:
+
+``` yaml
+size: { width: 1200, height: 630 }
+layers:
+ - size: { width: 1200, height: 630 }
+ offset: { x: 0, y: 0 }
+```
+
+If the `size` is omitted, it defaults to the size of the layout. If the `offset`
+is omitted, it defaults to the top left corner, which is the origin for all
+layers. Saving the layout and reloading renders:
+
+![Layer size]
+
+The layer outline and grid are visible because we enabled [`debug`][debug]
+mode in `mkdocs.yml`. The top left shows the layer index and offset, which is
+useful for alignment and composition.
+
+ [Layer size]: ../assets/screenshots/social-cards-layer-size.png
+
+### Backgrounds
+
+Each layer can be assigned a background color and image. If both are given, the
+color is rendered on top of the image, allowing for semi-transparent, tinted
+backgrounds:
+
+=== "Background color"
+
+ ``` yaml
+ size: { width: 1200, height: 630 }
+ layers:
+ - background:
+ color: "#4051b5"
+ ```
+
+ ![Layer background color]
+
+=== "Background image"
+
+ ``` yaml
+ size: { width: 1200, height: 630 }
+ layers:
+ - background:
+ image: layouts/background.jpg
+ ```
+
+ ![Layer background image]
+
+=== "Background image, tinted"
+
+ ``` yaml
+ size: { width: 1200, height: 630 }
+ layers:
+ - background:
+ image: layouts/background.jpg
+ color: "#4051b5ee" # (1)!
+ ```
+
+ 1. The color value can be set to a [CSS color keyword], or a 3, 4, 6 or 8
+ letter HEX color code, allowing for semi-transparent layers.
+
+ ![Layer background]
+
+Background images are automatically scaled to fit the layer while preserving
+aspect-ratio. Notice how we omitted `size` and `offset`, because we want to
+fill the entire area of the social card.
+
+[Layer background color]: ../assets/screenshots/social-cards-layer-background-color.png
+[Layer background image]: ../assets/screenshots/social-cards-layer-background-image.png
+[Layer background]: ../assets/screenshots/social-cards-layer-background.png
+
+### Typography
+
+Now, we can add dynamic typography that is sourced from Markdown files - this is
+the actual raison d'être of the [built-in social plugin]. [Jinja templates] are
+used to render a text string that is then added to the image:
+
+``` yaml
+size: { width: 1200, height: 630 }
+layers:
+ - size: { width: 832, height: 310 }
+ offset: { x: 62, y: 160 }
+ typography:
+ content: "{{ page.title }}" # (1)!
+ align: start
+ color: white
+ line:
+ amount: 3
+ height: 1.25
+ font:
+ family: Roboto
+ style: Bold
+```
+
+1. The following variables can be used in [Jinja templates]:
+
+ - [`config.*`][config variable]
+ - [`page.*`][page variable]
+ - [`layout.*`][layout options]
+
+ The author is free in defining `layout.*` options, which can be used to pass
+ arbitrary data to the layout from `mkdocs.yml`.
+
+This renders a text layer with the title of the page with a line height of 1.25,
+and a maximum number of 3 lines. The plugin automatically computes the font size
+from the line height, the number of lines, and font metrics like ascender and
+descender.[^2] This renders:
+
+ [^2]:
+ If the plugin would require the author to specify the font size and line
+ height manually, it would be impossible to guarantee that the text fits
+ into the layer. For this reason we implemented a declarative approach,
+ where the author specifies the desired line height and number of lines, and
+ the plugin computes the font size automatically.
+
+![Layer typography]
+
+ [config variable]: https://www.mkdocs.org/dev-guide/themes/#config
+ [page variable]: https://www.mkdocs.org/dev-guide/themes/#page
+ [Layer typography]: ../assets/screenshots/social-cards-layer-typography.png
+
+#### Overflow
+
+If the text overflows the layer, there are two possible behaviors: either the
+text is automatically truncated and shortened with an ellipsis, or the text is
+automatically scaled down to fit the layer:
+
+``` { .markdown .no-copy }
+# If we use a very long headline, we can see how the text will be truncated
+```
+
+=== ":octicons-ellipsis-16: Ellipsis"
+
+ ![Layer typography ellipsis]
+
+=== ":material-arrow-collapse: Shrink"
+
+ ![Layer typography shrink]
+
+While truncating with an ellipsis is the default, auto-shrinking can be enabled
+by setting `overflow` to `shrink`:
+
+``` yaml hl_lines="7"
+size: { width: 1200, height: 630 }
+layers:
+ - size: { width: 832, height: 310 }
+ offset: { x: 62, y: 160 }
+ typography:
+ content: "{{ page.title }}"
+ overflow: shrink
+ align: start
+ color: white
+ line:
+ amount: 3
+ height: 1.25
+ font:
+ family: Roboto
+ style: Bold
+```
+
+ [Layer typography ellipsis]: ../assets/screenshots/social-cards-layer-typography-ellipsis.png
+ [Layer typography shrink]: ../assets/screenshots/social-cards-layer-typography-shrink.png
+
+#### Alignment
+
+Text can be aligned to all corners and edges of the layer. For example, if we
+want to align the text to the middle of the layer, we can set `align` to `start center`, which will render as:
+
+![Layer typography align]
+
+ [Layer typography align]: ../assets/screenshots/social-cards-layer-typography-align.png
+
+The following table shows the supported values:
+
+
+
+| Alignment | | |
+| -------------- | --------------- | ------------ |
+| :material-arrow-top-left: `start top` | :material-arrow-up: `center top` | :material-arrow-top-right: `end top` |
+| :material-arrow-left: `start center` | :material-circle-small: `center` | :material-arrow-right: `end center` |
+| :material-arrow-bottom-left: `start bottom` | :material-arrow-down: `center bottom` | :material-arrow-bottom-right: `end bottom` |
+
+
+ Supported values for text alignment
+
+
+
+#### Font
+
+The [built-in social plugin] integrates with [Google Fonts] and will
+automatically download the font files for you. The `font` property accepts a
+`family` and `style` property, where the `family` must be set to the name of the
+font, and the `style` to one of the supported font styles. For example, setting
+`family` to `Roboto` will automatically download the following files:
+
+``` { .sh .no-copy #example }
+.cache/plugins/social/fonts
+└─ Roboto/
+ ├─ Black.ttf
+ ├─ Black Italic.ttf
+ ├─ Bold.ttf
+ ├─ Bold Italic.ttf
+ ├─ Italic.ttf
+ ├─ Light.ttf
+ ├─ Light Italic.ttf
+ ├─ Medium.ttf
+ ├─ Medium Italic.ttf
+ ├─ Regular.ttf
+ ├─ Thin.ttf
+ └─ Thin Italic.ttf
+```
+
+In that case, the author can use `Bold` or `Medium Italic` as the `style`. If
+the font style specified in the layer is not part of the font family, the
+font always falls back to `Regular` and prints a warning in [`debug`][debug]
+mode, as `Regular` is included with all font families.
+
+### Icons
+
+Authors can leverage the full range of icons that are shipped with Material for
+MkDocs, or even provide custom icons by using theme extension and going through
+the process described in the guide on [additional icons]. Icons can even be
+tinted by using the `color` property:
+
+``` yaml
+size: { width: 1200, height: 630 }
+layers:
+ - background:
+ color: "#4051b5"
+ - size: { width: 144, height: 144 }
+ offset: { x: 992, y: 64 }
+ icon:
+ value: material/cat
+ color: white
+```
+
+This will render the icon in the top right corner of the social card:
+
+![Layer icon]
+
+The possibilities are endless. For example, icons can be used to draw shapes
+like circles:
+
+``` yaml
+size: { width: 1200, height: 630 }
+layers:
+ - background:
+ color: "#4051b5"
+ - size: { width: 2400, height: 2400 }
+ offset: { x: -1024, y: 64 }
+ icon:
+ value: material/circle
+ color: "#5c6bc0"
+ - size: { width: 1800, height: 1800 }
+ offset: { x: 512, y: -1024 }
+ icon:
+ value: material/circle
+ color: "#3949ab"
+```
+
+This will add two circles to the background:
+
+![Layer icon circles]
+
+__Are you missing something? Please [open a discussion] and let us know!__
+
+ [additional icons]: ./changing-the-logo-and-icons.md#additional-icons
+ [Layer icon]: ../assets/screenshots/social-cards-layer-icon.png
+ [Layer icon circles]: ../assets/screenshots/social-cards-layer-icon-circles.png
+ [open a discussion]: https://github.com/squidfunk/mkdocs-material/discussions/new
diff --git a/docs/setup/setting-up-tags.md b/docs/setup/setting-up-tags.md
index 30ed0c935..921e5b897 100644
--- a/docs/setup/setting-up-tags.md
+++ b/docs/setup/setting-up-tags.md
@@ -141,7 +141,7 @@ The following configuration options are available:
``` yaml
plugins:
- tags:
- tags_compare: !!python/name:material.plugins.tags.plugin.casefold
+ tags_compare: !!python/name:material.plugins.tags.casefold
```
You can also define your own comparison function which must return a tag
diff --git a/material/.icons/octicons/devices-16.svg b/material/.icons/octicons/devices-16.svg
new file mode 100644
index 000000000..84af9d860
--- /dev/null
+++ b/material/.icons/octicons/devices-16.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/material/.icons/octicons/devices-24.svg b/material/.icons/octicons/devices-24.svg
new file mode 100644
index 000000000..5bceb44fe
--- /dev/null
+++ b/material/.icons/octicons/devices-24.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/material/.icons/octicons/move-to-bottom-24.svg b/material/.icons/octicons/move-to-bottom-24.svg
index 3342b0d61..06087834d 100644
--- a/material/.icons/octicons/move-to-bottom-24.svg
+++ b/material/.icons/octicons/move-to-bottom-24.svg
@@ -1 +1 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/material/.icons/octicons/move-to-top-16.svg b/material/.icons/octicons/move-to-top-16.svg
index 532e69c31..438b49260 100644
--- a/material/.icons/octicons/move-to-top-16.svg
+++ b/material/.icons/octicons/move-to-top-16.svg
@@ -1 +1 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/material/.icons/octicons/move-to-top-24.svg b/material/.icons/octicons/move-to-top-24.svg
index 3c32e431c..67c3ac430 100644
--- a/material/.icons/octicons/move-to-top-24.svg
+++ b/material/.icons/octicons/move-to-top-24.svg
@@ -1 +1 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/material/.icons/octicons/pin-16.svg b/material/.icons/octicons/pin-16.svg
index 1db000190..5dbac7f27 100644
--- a/material/.icons/octicons/pin-16.svg
+++ b/material/.icons/octicons/pin-16.svg
@@ -1 +1 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/material/.icons/octicons/pin-24.svg b/material/.icons/octicons/pin-24.svg
index 324e543f1..1668748bf 100644
--- a/material/.icons/octicons/pin-24.svg
+++ b/material/.icons/octicons/pin-24.svg
@@ -1 +1 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/material/.icons/octicons/pin-slash-16.svg b/material/.icons/octicons/pin-slash-16.svg
new file mode 100644
index 000000000..4435bb445
--- /dev/null
+++ b/material/.icons/octicons/pin-slash-16.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/material/.icons/octicons/pin-slash-24.svg b/material/.icons/octicons/pin-slash-24.svg
new file mode 100644
index 000000000..be9b881eb
--- /dev/null
+++ b/material/.icons/octicons/pin-slash-24.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/material/.icons/octicons/x-12.svg b/material/.icons/octicons/x-12.svg
new file mode 100644
index 000000000..040c72d63
--- /dev/null
+++ b/material/.icons/octicons/x-12.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/material/.icons/simple/affine.svg b/material/.icons/simple/affine.svg
new file mode 100644
index 000000000..d7a6d1a2b
--- /dev/null
+++ b/material/.icons/simple/affine.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/material/.icons/simple/algolia.svg b/material/.icons/simple/algolia.svg
index 9bfed3fd5..ea03e32f1 100644
--- a/material/.icons/simple/algolia.svg
+++ b/material/.icons/simple/algolia.svg
@@ -1 +1 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/material/.icons/simple/arcgis.svg b/material/.icons/simple/arcgis.svg
new file mode 100644
index 000000000..f5d9f867c
--- /dev/null
+++ b/material/.icons/simple/arcgis.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/material/.icons/simple/cardano.svg b/material/.icons/simple/cardano.svg
new file mode 100644
index 000000000..9cdecef6c
--- /dev/null
+++ b/material/.icons/simple/cardano.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/material/.icons/simple/cocacola.svg b/material/.icons/simple/cocacola.svg
new file mode 100644
index 000000000..a90264546
--- /dev/null
+++ b/material/.icons/simple/cocacola.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/material/.icons/simple/contao.svg b/material/.icons/simple/contao.svg
new file mode 100644
index 000000000..1b6ade3e6
--- /dev/null
+++ b/material/.icons/simple/contao.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/material/.icons/simple/esri.svg b/material/.icons/simple/esri.svg
new file mode 100644
index 000000000..ca343b0f1
--- /dev/null
+++ b/material/.icons/simple/esri.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/material/.icons/simple/flathub.svg b/material/.icons/simple/flathub.svg
index d281f435b..32c7ceb60 100644
--- a/material/.icons/simple/flathub.svg
+++ b/material/.icons/simple/flathub.svg
@@ -1 +1 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/material/.icons/simple/mongoose.svg b/material/.icons/simple/mongoose.svg
new file mode 100644
index 000000000..1073fb642
--- /dev/null
+++ b/material/.icons/simple/mongoose.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/material/.icons/simple/polkadot.svg b/material/.icons/simple/polkadot.svg
index 5a4131a9b..43e407b3a 100644
--- a/material/.icons/simple/polkadot.svg
+++ b/material/.icons/simple/polkadot.svg
@@ -1 +1 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/material/.icons/simple/printables.svg b/material/.icons/simple/printables.svg
new file mode 100644
index 000000000..77c2db6c9
--- /dev/null
+++ b/material/.icons/simple/printables.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/material/.icons/simple/ruff.svg b/material/.icons/simple/ruff.svg
new file mode 100644
index 000000000..986339b8d
--- /dev/null
+++ b/material/.icons/simple/ruff.svg
@@ -0,0 +1 @@
+
\ No newline at end of file
diff --git a/material/.icons/simple/supabase.svg b/material/.icons/simple/supabase.svg
index 9560e607d..218f62cfd 100644
--- a/material/.icons/simple/supabase.svg
+++ b/material/.icons/simple/supabase.svg
@@ -1 +1 @@
-
\ No newline at end of file
+
\ No newline at end of file
diff --git a/material/.overrides/assets/javascripts/custom.a7283b5f.min.js b/material/.overrides/assets/javascripts/custom.13133f3f.min.js
similarity index 99%
rename from material/.overrides/assets/javascripts/custom.a7283b5f.min.js
rename to material/.overrides/assets/javascripts/custom.13133f3f.min.js
index 44bd40cf3..512e9733d 100644
--- a/material/.overrides/assets/javascripts/custom.a7283b5f.min.js
+++ b/material/.overrides/assets/javascripts/custom.13133f3f.min.js
@@ -14,5 +14,5 @@ PERFORMANCE OF THIS SOFTWARE.
***************************************************************************** */var Lr=function(e,r){return Lr=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(t,n){t.__proto__=n}||function(t,n){for(var o in n)Object.prototype.hasOwnProperty.call(n,o)&&(t[o]=n[o])},Lr(e,r)};function j(e,r){if(typeof r!="function"&&r!==null)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");Lr(e,r);function t(){this.constructor=e}e.prototype=r===null?Object.create(r):(t.prototype=r.prototype,new t)}function nt(e,r,t,n){function o(i){return i instanceof t?i:new t(function(a){a(i)})}return new(t||(t=Promise))(function(i,a){function c(f){try{s(n.next(f))}catch(p){a(p)}}function u(f){try{s(n.throw(f))}catch(p){a(p)}}function s(f){f.done?i(f.value):o(f.value).then(c,u)}s((n=n.apply(e,r||[])).next())})}function Ge(e,r){var t={label:0,sent:function(){if(i[0]&1)throw i[1];return i[1]},trys:[],ops:[]},n,o,i,a;return a={next:c(0),throw:c(1),return:c(2)},typeof Symbol=="function"&&(a[Symbol.iterator]=function(){return this}),a;function c(s){return function(f){return u([s,f])}}function u(s){if(n)throw new TypeError("Generator is already executing.");for(;t;)try{if(n=1,o&&(i=s[0]&2?o.return:s[0]?o.throw||((i=o.return)&&i.call(o),0):o.next)&&!(i=i.call(o,s[1])).done)return i;switch(o=0,i&&(s=[s[0]&2,i.value]),s[0]){case 0:case 1:i=s;break;case 4:return t.label++,{value:s[1],done:!1};case 5:t.label++,o=s[1],s=[0];continue;case 7:s=t.ops.pop(),t.trys.pop();continue;default:if(i=t.trys,!(i=i.length>0&&i[i.length-1])&&(s[0]===6||s[0]===2)){t=0;continue}if(s[0]===3&&(!i||s[1]>i[0]&&s[1]=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(r?"Object is not iterable.":"Symbol.iterator is not defined.")}function W(e,r){var t=typeof Symbol=="function"&&e[Symbol.iterator];if(!t)return e;var n=t.call(e),o,i=[],a;try{for(;(r===void 0||r-- >0)&&!(o=n.next()).done;)i.push(o.value)}catch(c){a={error:c}}finally{try{o&&!o.done&&(t=n.return)&&t.call(n)}finally{if(a)throw a.error}}return i}function U(e,r,t){if(t||arguments.length===2)for(var n=0,o=r.length,i;n1||c(l,v)})})}function c(l,v){try{u(n[l](v))}catch(h){p(i[0][3],h)}}function u(l){l.value instanceof ve?Promise.resolve(l.value.v).then(s,f):p(i[0][2],l)}function s(l){c("next",l)}function f(l){c("throw",l)}function p(l,v){l(v),i.shift(),i.length&&c(i[0][0],i[0][1])}}function it(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var r=e[Symbol.asyncIterator],t;return r?r.call(e):(e=typeof G=="function"?G(e):e[Symbol.iterator](),t={},n("next"),n("throw"),n("return"),t[Symbol.asyncIterator]=function(){return this},t);function n(i){t[i]=e[i]&&function(a){return new Promise(function(c,u){a=e[i](a),o(c,u,a.done,a.value)})}}function o(i,a,c,u){Promise.resolve(u).then(function(s){i({value:s,done:c})},a)}}function _(e){return typeof e=="function"}function Ye(e){var r=function(n){Error.call(n),n.stack=new Error().stack},t=e(r);return t.prototype=Object.create(Error.prototype),t.prototype.constructor=t,t}var Je=Ye(function(e){return function(t){e(this),this.message=t?t.length+` errors occurred during unsubscription:
`+t.map(function(n,o){return o+1+") "+n.toString()}).join(`
`):"",this.name="UnsubscriptionError",this.errors=t}});function fe(e,r){if(e){var t=e.indexOf(r);0<=t&&e.splice(t,1)}}var ie=function(){function e(r){this.initialTeardown=r,this.closed=!1,this._parentage=null,this._finalizers=null}return e.prototype.unsubscribe=function(){var r,t,n,o,i;if(!this.closed){this.closed=!0;var a=this._parentage;if(a)if(this._parentage=null,Array.isArray(a))try{for(var c=G(a),u=c.next();!u.done;u=c.next()){var s=u.value;s.remove(this)}}catch(m){r={error:m}}finally{try{u&&!u.done&&(t=c.return)&&t.call(c)}finally{if(r)throw r.error}}else a.remove(this);var f=this.initialTeardown;if(_(f))try{f()}catch(m){i=m instanceof Je?m.errors:[m]}var p=this._finalizers;if(p){this._finalizers=null;try{for(var l=G(p),v=l.next();!v.done;v=l.next()){var h=v.value;try{at(h)}catch(m){i=i!=null?i:[],m instanceof Je?i=U(U([],W(i)),W(m.errors)):i.push(m)}}}catch(m){n={error:m}}finally{try{v&&!v.done&&(o=l.return)&&o.call(l)}finally{if(n)throw n.error}}}if(i)throw new Je(i)}},e.prototype.add=function(r){var t;if(r&&r!==this)if(this.closed)at(r);else{if(r instanceof e){if(r.closed||r._hasParent(this))return;r._addParent(this)}(this._finalizers=(t=this._finalizers)!==null&&t!==void 0?t:[]).push(r)}},e.prototype._hasParent=function(r){var t=this._parentage;return t===r||Array.isArray(t)&&t.includes(r)},e.prototype._addParent=function(r){var t=this._parentage;this._parentage=Array.isArray(t)?(t.push(r),t):t?[t,r]:r},e.prototype._removeParent=function(r){var t=this._parentage;t===r?this._parentage=null:Array.isArray(t)&&fe(t,r)},e.prototype.remove=function(r){var t=this._finalizers;t&&fe(t,r),r instanceof e&&r._removeParent(this)},e.EMPTY=function(){var r=new e;return r.closed=!0,r}(),e}();var Rr=ie.EMPTY;function Be(e){return e instanceof ie||e&&"closed"in e&&_(e.remove)&&_(e.add)&&_(e.unsubscribe)}function at(e){_(e)?e():e.unsubscribe()}var te={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1};var Te={setTimeout:function(e,r){for(var t=[],n=2;n0},enumerable:!1,configurable:!0}),r.prototype._trySubscribe=function(t){return this._throwIfClosed(),e.prototype._trySubscribe.call(this,t)},r.prototype._subscribe=function(t){return this._throwIfClosed(),this._checkFinalizedStatuses(t),this._innerSubscribe(t)},r.prototype._innerSubscribe=function(t){var n=this,o=this,i=o.hasError,a=o.isStopped,c=o.observers;return i||a?Rr:(this.currentObservers=null,c.push(t),new ie(function(){n.currentObservers=null,fe(c,t)}))},r.prototype._checkFinalizedStatuses=function(t){var n=this,o=n.hasError,i=n.thrownError,a=n.isStopped;o?t.error(i):a&&t.complete()},r.prototype.asObservable=function(){var t=new L;return t.source=this,t},r.create=function(t,n){return new ht(t,n)},r}(L);var ht=function(e){j(r,e);function r(t,n){var o=e.call(this)||this;return o.destination=t,o.source=n,o}return r.prototype.next=function(t){var n,o;(o=(n=this.destination)===null||n===void 0?void 0:n.next)===null||o===void 0||o.call(n,t)},r.prototype.error=function(t){var n,o;(o=(n=this.destination)===null||n===void 0?void 0:n.error)===null||o===void 0||o.call(n,t)},r.prototype.complete=function(){var t,n;(n=(t=this.destination)===null||t===void 0?void 0:t.complete)===null||n===void 0||n.call(t)},r.prototype._subscribe=function(t){var n,o;return(o=(n=this.source)===null||n===void 0?void 0:n.subscribe(t))!==null&&o!==void 0?o:Rr},r}(B);var ze={now:function(){return(ze.delegate||Date).now()},delegate:void 0};var dt=function(e){j(r,e);function r(t,n,o){t===void 0&&(t=1/0),n===void 0&&(n=1/0),o===void 0&&(o=ze);var i=e.call(this)||this;return i._bufferSize=t,i._windowTime=n,i._timestampProvider=o,i._buffer=[],i._infiniteTimeWindow=!0,i._infiniteTimeWindow=n===1/0,i._bufferSize=Math.max(1,t),i._windowTime=Math.max(1,n),i}return r.prototype.next=function(t){var n=this,o=n.isStopped,i=n._buffer,a=n._infiniteTimeWindow,c=n._timestampProvider,u=n._windowTime;o||(i.push(t),!a&&i.push(c.now()+u)),this._trimBuffer(),e.prototype.next.call(this,t)},r.prototype._subscribe=function(t){this._throwIfClosed(),this._trimBuffer();for(var n=this._innerSubscribe(t),o=this,i=o._infiniteTimeWindow,a=o._buffer,c=a.slice(),u=0;u0?e.prototype.requestAsyncId.call(this,t,n,o):(t.actions.push(this),t._scheduled||(t._scheduled=Ce.requestAnimationFrame(function(){return t.flush(void 0)})))},r.prototype.recycleAsyncId=function(t,n,o){var i;if(o===void 0&&(o=0),o!=null?o>0:this.delay>0)return e.prototype.recycleAsyncId.call(this,t,n,o);var a=t.actions;n!=null&&((i=a[a.length-1])===null||i===void 0?void 0:i.id)!==n&&(Ce.cancelAnimationFrame(n),t._scheduled=void 0)},r}(er);var yt=function(e){j(r,e);function r(){return e!==null&&e.apply(this,arguments)||this}return r.prototype.flush=function(t){this._active=!0;var n=this._scheduled;this._scheduled=void 0;var o=this.actions,i;t=t||o.shift();do if(i=t.execute(t.state,t.delay))break;while((t=o[0])&&t.id===n&&o.shift());if(this._active=!1,i){for(;(t=o[0])&&t.id===n&&o.shift();)t.unsubscribe();throw i}},r}(rr);var Wr=new yt(xt);var pe=new L(function(e){return e.complete()});function tr(e){return e&&_(e.schedule)}function zr(e){return e[e.length-1]}function Ie(e){return _(zr(e))?e.pop():void 0}function ae(e){return tr(zr(e))?e.pop():void 0}function gt(e,r){return typeof zr(e)=="number"?e.pop():r}var Le=function(e){return e&&typeof e.length=="number"&&typeof e!="function"};function nr(e){return _(e==null?void 0:e.then)}function or(e){return _(e[Me])}function ir(e){return Symbol.asyncIterator&&_(e==null?void 0:e[Symbol.asyncIterator])}function ar(e){return new TypeError("You provided "+(e!==null&&typeof e=="object"?"an invalid object":"'"+e+"'")+" where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.")}function jn(){return typeof Symbol!="function"||!Symbol.iterator?"@@iterator":Symbol.iterator}var sr=jn();function ur(e){return _(e==null?void 0:e[sr])}function fr(e){return ot(this,arguments,function(){var t,n,o,i;return Ge(this,function(a){switch(a.label){case 0:t=e.getReader(),a.label=1;case 1:a.trys.push([1,,9,10]),a.label=2;case 2:return[4,ve(t.read())];case 3:return n=a.sent(),o=n.value,i=n.done,i?[4,ve(void 0)]:[3,5];case 4:return[2,a.sent()];case 5:return[4,ve(o)];case 6:return[4,a.sent()];case 7:return a.sent(),[3,2];case 8:return[3,10];case 9:return t.releaseLock(),[7];case 10:return[2]}})})}function cr(e){return _(e==null?void 0:e.getReader)}function P(e){if(e instanceof L)return e;if(e!=null){if(or(e))return $n(e);if(Le(e))return qn(e);if(nr(e))return Nn(e);if(ir(e))return wt(e);if(ur(e))return Dn(e);if(cr(e))return Qn(e)}throw ar(e)}function $n(e){return new L(function(r){var t=e[Me]();if(_(t.subscribe))return t.subscribe(r);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}function qn(e){return new L(function(r){for(var t=0;t0&&(f=new xe({next:function(E){return x.next(E)},error:function(E){m=!0,b(),p=Qr(w,o,E),x.error(E)},complete:function(){h=!0,b(),p=Qr(w,a),x.complete()}}),P(R).subscribe(f))})(s)}}function Qr(e,r){for(var t=[],n=2;n{let r=yr();return typeof r!="undefined"?e.contains(r):!1}),he(e===yr()),le())}function Dt(e){return{x:e.scrollLeft,y:e.scrollTop}}function Qt(e){return N(K(e,"scroll"),K(window,"resize")).pipe(Vr(0,Wr),k(()=>Dt(e)),he(Dt(e)))}var Gt=function(){if(typeof Map!="undefined")return Map;function e(r,t){var n=-1;return r.some(function(o,i){return o[0]===t?(n=i,!0):!1}),n}return function(){function r(){this.__entries__=[]}return Object.defineProperty(r.prototype,"size",{get:function(){return this.__entries__.length},enumerable:!0,configurable:!0}),r.prototype.get=function(t){var n=e(this.__entries__,t),o=this.__entries__[n];return o&&o[1]},r.prototype.set=function(t,n){var o=e(this.__entries__,t);~o?this.__entries__[o][1]=n:this.__entries__.push([t,n])},r.prototype.delete=function(t){var n=this.__entries__,o=e(n,t);~o&&n.splice(o,1)},r.prototype.has=function(t){return!!~e(this.__entries__,t)},r.prototype.clear=function(){this.__entries__.splice(0)},r.prototype.forEach=function(t,n){n===void 0&&(n=null);for(var o=0,i=this.__entries__;o0},e.prototype.connect_=function(){!Gr||this.connected_||(document.addEventListener("transitionend",this.onTransitionEnd_),window.addEventListener("resize",this.refresh),vo?(this.mutationsObserver_=new MutationObserver(this.refresh),this.mutationsObserver_.observe(document,{attributes:!0,childList:!0,characterData:!0,subtree:!0})):(document.addEventListener("DOMSubtreeModified",this.refresh),this.mutationEventsAdded_=!0),this.connected_=!0)},e.prototype.disconnect_=function(){!Gr||!this.connected_||(document.removeEventListener("transitionend",this.onTransitionEnd_),window.removeEventListener("resize",this.refresh),this.mutationsObserver_&&this.mutationsObserver_.disconnect(),this.mutationEventsAdded_&&document.removeEventListener("DOMSubtreeModified",this.refresh),this.mutationsObserver_=null,this.mutationEventsAdded_=!1,this.connected_=!1)},e.prototype.onTransitionEnd_=function(r){var t=r.propertyName,n=t===void 0?"":t,o=ho.some(function(i){return!!~n.indexOf(i)});o&&this.refresh()},e.getInstance=function(){return this.instance_||(this.instance_=new e),this.instance_},e.instance_=null,e}(),Yt=function(e,r){for(var t=0,n=Object.keys(r);t0},e}(),Bt=typeof WeakMap!="undefined"?new WeakMap:new Gt,Xt=function(){function e(r){if(!(this instanceof e))throw new TypeError("Cannot call a class as a function.");if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");var t=bo.getInstance(),n=new Ao(r,t,this);Bt.set(this,n)}return e}();["observe","unobserve","disconnect"].forEach(function(e){Xt.prototype[e]=function(){var r;return(r=Bt.get(this))[e].apply(r,arguments)}});var Mo=function(){return typeof gr.ResizeObserver!="undefined"?gr.ResizeObserver:Xt}(),Zt=Mo;var Co=new B,Yp=je(()=>Z(new Zt(e=>{for(let r of e)Co.next(r)}))).pipe(D(e=>N($e,Z(e)).pipe(Ee(()=>e.disconnect()))),Se(1));function en(e){return{width:e.offsetWidth,height:e.offsetHeight}}function rn(e){return{width:e.scrollWidth,height:e.scrollHeight}}var Io=new B,ol=je(()=>Z(new IntersectionObserver(e=>{for(let r of e)Io.next(r)},{threshold:0}))).pipe(D(e=>N($e,Z(e)).pipe(Ee(()=>e.disconnect()))),Se(1));function tn(e,r=16){return Qt(e).pipe(k(({y:t})=>{let n=en(e),o=rn(e);return t>=o.height-n.height-r}),le())}var ml={drawer:ee("[data-md-toggle=drawer]"),search:ee("[data-md-toggle=search]")};function nn(){return new URL(location.href)}function on(e,r){if(typeof r=="string"||typeof r=="number")e.innerHTML+=r.toString();else if(r instanceof Node)e.appendChild(r);else if(Array.isArray(r))for(let t of r)on(e,t)}function re(e,r,...t){let n=document.createElement(e);if(r)for(let o of Object.keys(r))typeof r[o]!="undefined"&&(typeof r[o]!="boolean"?n.setAttribute(o,r[o]):n.setAttribute(o,""));for(let o of t)on(n,o);return n}function an(e){if(e>999){let r=+((e-950)%1e3>99);return`${((e+1e-6)/1e3).toFixed(r)}k`}else return e.toString()}function Lo(e,r={credentials:"same-origin"}){return X(fetch(`${e}`,r)).pipe(br(()=>pe),D(t=>t.status!==200?Ur(()=>new Error(t.statusText)):Z(t)))}function Sr(e,r){return Lo(e,r).pipe(D(t=>t.json()),Se(1))}(()=>{function e(n,o){parent.postMessage(n,o||"*")}function r(...n){return n.reduce((o,i)=>o.then(()=>new Promise(a=>{let c=document.createElement("script");c.src=i,c.onload=a,document.body.appendChild(c)})),Promise.resolve())}var t=class extends EventTarget{constructor(n){super(),this.url=n,this.m=i=>{i.source===this.w&&(this.dispatchEvent(new MessageEvent("message",{data:i.data})),this.onmessage&&this.onmessage(i))},this.e=(i,a,c,u,s)=>{if(a===`${this.url}`){let f=new ErrorEvent("error",{message:i,filename:a,lineno:c,colno:u,error:s});this.dispatchEvent(f),this.onerror&&this.onerror(f)}};let o=document.createElement("iframe");o.hidden=!0,document.body.appendChild(this.iframe=o),this.w.document.open(),this.w.document.write(`
+
{% endblock %}
diff --git a/material/assets/javascripts/bundle.51198bba.min.js b/material/assets/javascripts/bundle.51198bba.min.js
deleted file mode 100644
index 31bd0414c..000000000
--- a/material/assets/javascripts/bundle.51198bba.min.js
+++ /dev/null
@@ -1,29 +0,0 @@
-"use strict";(()=>{var Ri=Object.create;var gr=Object.defineProperty;var ki=Object.getOwnPropertyDescriptor;var Hi=Object.getOwnPropertyNames,Ht=Object.getOwnPropertySymbols,Pi=Object.getPrototypeOf,yr=Object.prototype.hasOwnProperty,on=Object.prototype.propertyIsEnumerable;var nn=(e,t,r)=>t in e?gr(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,P=(e,t)=>{for(var r in t||(t={}))yr.call(t,r)&&nn(e,r,t[r]);if(Ht)for(var r of Ht(t))on.call(t,r)&&nn(e,r,t[r]);return e};var an=(e,t)=>{var r={};for(var n in e)yr.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&Ht)for(var n of Ht(e))t.indexOf(n)<0&&on.call(e,n)&&(r[n]=e[n]);return r};var Pt=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var $i=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Hi(t))!yr.call(e,o)&&o!==r&&gr(e,o,{get:()=>t[o],enumerable:!(n=ki(t,o))||n.enumerable});return e};var yt=(e,t,r)=>(r=e!=null?Ri(Pi(e)):{},$i(t||!e||!e.__esModule?gr(r,"default",{value:e,enumerable:!0}):r,e));var cn=Pt((xr,sn)=>{(function(e,t){typeof xr=="object"&&typeof sn!="undefined"?t():typeof define=="function"&&define.amd?define(t):t()})(xr,function(){"use strict";function e(r){var n=!0,o=!1,i=null,s={text:!0,search:!0,url:!0,tel:!0,email:!0,password:!0,number:!0,date:!0,month:!0,week:!0,time:!0,datetime:!0,"datetime-local":!0};function a(T){return!!(T&&T!==document&&T.nodeName!=="HTML"&&T.nodeName!=="BODY"&&"classList"in T&&"contains"in T.classList)}function c(T){var Qe=T.type,De=T.tagName;return!!(De==="INPUT"&&s[Qe]&&!T.readOnly||De==="TEXTAREA"&&!T.readOnly||T.isContentEditable)}function f(T){T.classList.contains("focus-visible")||(T.classList.add("focus-visible"),T.setAttribute("data-focus-visible-added",""))}function u(T){T.hasAttribute("data-focus-visible-added")&&(T.classList.remove("focus-visible"),T.removeAttribute("data-focus-visible-added"))}function p(T){T.metaKey||T.altKey||T.ctrlKey||(a(r.activeElement)&&f(r.activeElement),n=!0)}function m(T){n=!1}function d(T){a(T.target)&&(n||c(T.target))&&f(T.target)}function h(T){a(T.target)&&(T.target.classList.contains("focus-visible")||T.target.hasAttribute("data-focus-visible-added"))&&(o=!0,window.clearTimeout(i),i=window.setTimeout(function(){o=!1},100),u(T.target))}function v(T){document.visibilityState==="hidden"&&(o&&(n=!0),G())}function G(){document.addEventListener("mousemove",N),document.addEventListener("mousedown",N),document.addEventListener("mouseup",N),document.addEventListener("pointermove",N),document.addEventListener("pointerdown",N),document.addEventListener("pointerup",N),document.addEventListener("touchmove",N),document.addEventListener("touchstart",N),document.addEventListener("touchend",N)}function oe(){document.removeEventListener("mousemove",N),document.removeEventListener("mousedown",N),document.removeEventListener("mouseup",N),document.removeEventListener("pointermove",N),document.removeEventListener("pointerdown",N),document.removeEventListener("pointerup",N),document.removeEventListener("touchmove",N),document.removeEventListener("touchstart",N),document.removeEventListener("touchend",N)}function N(T){T.target.nodeName&&T.target.nodeName.toLowerCase()==="html"||(n=!1,oe())}document.addEventListener("keydown",p,!0),document.addEventListener("mousedown",m,!0),document.addEventListener("pointerdown",m,!0),document.addEventListener("touchstart",m,!0),document.addEventListener("visibilitychange",v,!0),G(),r.addEventListener("focus",d,!0),r.addEventListener("blur",h,!0),r.nodeType===Node.DOCUMENT_FRAGMENT_NODE&&r.host?r.host.setAttribute("data-js-focus-visible",""):r.nodeType===Node.DOCUMENT_NODE&&(document.documentElement.classList.add("js-focus-visible"),document.documentElement.setAttribute("data-js-focus-visible",""))}if(typeof window!="undefined"&&typeof document!="undefined"){window.applyFocusVisiblePolyfill=e;var t;try{t=new CustomEvent("focus-visible-polyfill-ready")}catch(r){t=document.createEvent("CustomEvent"),t.initCustomEvent("focus-visible-polyfill-ready",!1,!1,{})}window.dispatchEvent(t)}typeof document!="undefined"&&e(document)})});var fn=Pt(Er=>{(function(e){var t=function(){try{return!!Symbol.iterator}catch(f){return!1}},r=t(),n=function(f){var u={next:function(){var p=f.shift();return{done:p===void 0,value:p}}};return r&&(u[Symbol.iterator]=function(){return u}),u},o=function(f){return encodeURIComponent(f).replace(/%20/g,"+")},i=function(f){return decodeURIComponent(String(f).replace(/\+/g," "))},s=function(){var f=function(p){Object.defineProperty(this,"_entries",{writable:!0,value:{}});var m=typeof p;if(m!=="undefined")if(m==="string")p!==""&&this._fromString(p);else if(p instanceof f){var d=this;p.forEach(function(oe,N){d.append(N,oe)})}else if(p!==null&&m==="object")if(Object.prototype.toString.call(p)==="[object Array]")for(var h=0;hd[0]?1:0}),f._entries&&(f._entries={});for(var p=0;p1?i(d[1]):"")}})})(typeof global!="undefined"?global:typeof window!="undefined"?window:typeof self!="undefined"?self:Er);(function(e){var t=function(){try{var o=new e.URL("b","http://a");return o.pathname="c d",o.href==="http://a/c%20d"&&o.searchParams}catch(i){return!1}},r=function(){var o=e.URL,i=function(c,f){typeof c!="string"&&(c=String(c)),f&&typeof f!="string"&&(f=String(f));var u=document,p;if(f&&(e.location===void 0||f!==e.location.href)){f=f.toLowerCase(),u=document.implementation.createHTMLDocument(""),p=u.createElement("base"),p.href=f,u.head.appendChild(p);try{if(p.href.indexOf(f)!==0)throw new Error(p.href)}catch(T){throw new Error("URL unable to set base "+f+" due to "+T)}}var m=u.createElement("a");m.href=c,p&&(u.body.appendChild(m),m.href=m.href);var d=u.createElement("input");if(d.type="url",d.value=c,m.protocol===":"||!/:/.test(m.href)||!d.checkValidity()&&!f)throw new TypeError("Invalid URL");Object.defineProperty(this,"_anchorElement",{value:m});var h=new e.URLSearchParams(this.search),v=!0,G=!0,oe=this;["append","delete","set"].forEach(function(T){var Qe=h[T];h[T]=function(){Qe.apply(h,arguments),v&&(G=!1,oe.search=h.toString(),G=!0)}}),Object.defineProperty(this,"searchParams",{value:h,enumerable:!0});var N=void 0;Object.defineProperty(this,"_updateSearchParams",{enumerable:!1,configurable:!1,writable:!1,value:function(){this.search!==N&&(N=this.search,G&&(v=!1,this.searchParams._fromString(this.search),v=!0))}})},s=i.prototype,a=function(c){Object.defineProperty(s,c,{get:function(){return this._anchorElement[c]},set:function(f){this._anchorElement[c]=f},enumerable:!0})};["hash","host","hostname","port","protocol"].forEach(function(c){a(c)}),Object.defineProperty(s,"search",{get:function(){return this._anchorElement.search},set:function(c){this._anchorElement.search=c,this._updateSearchParams()},enumerable:!0}),Object.defineProperties(s,{toString:{get:function(){var c=this;return function(){return c.href}}},href:{get:function(){return this._anchorElement.href.replace(/\?$/,"")},set:function(c){this._anchorElement.href=c,this._updateSearchParams()},enumerable:!0},pathname:{get:function(){return this._anchorElement.pathname.replace(/(^\/?)/,"/")},set:function(c){this._anchorElement.pathname=c},enumerable:!0},origin:{get:function(){var c={"http:":80,"https:":443,"ftp:":21}[this._anchorElement.protocol],f=this._anchorElement.port!=c&&this._anchorElement.port!=="";return this._anchorElement.protocol+"//"+this._anchorElement.hostname+(f?":"+this._anchorElement.port:"")},enumerable:!0},password:{get:function(){return""},set:function(c){},enumerable:!0},username:{get:function(){return""},set:function(c){},enumerable:!0}}),i.createObjectURL=function(c){return o.createObjectURL.apply(o,arguments)},i.revokeObjectURL=function(c){return o.revokeObjectURL.apply(o,arguments)},e.URL=i};if(t()||r(),e.location!==void 0&&!("origin"in e.location)){var n=function(){return e.location.protocol+"//"+e.location.hostname+(e.location.port?":"+e.location.port:"")};try{Object.defineProperty(e.location,"origin",{get:n,enumerable:!0})}catch(o){setInterval(function(){e.location.origin=n()},100)}}})(typeof global!="undefined"?global:typeof window!="undefined"?window:typeof self!="undefined"?self:Er)});var Kr=Pt((Mt,qr)=>{/*!
- * clipboard.js v2.0.11
- * https://clipboardjs.com/
- *
- * Licensed MIT © Zeno Rocha
- */(function(t,r){typeof Mt=="object"&&typeof qr=="object"?qr.exports=r():typeof define=="function"&&define.amd?define([],r):typeof Mt=="object"?Mt.ClipboardJS=r():t.ClipboardJS=r()})(Mt,function(){return function(){var e={686:function(n,o,i){"use strict";i.d(o,{default:function(){return Ci}});var s=i(279),a=i.n(s),c=i(370),f=i.n(c),u=i(817),p=i.n(u);function m(j){try{return document.execCommand(j)}catch(O){return!1}}var d=function(O){var E=p()(O);return m("cut"),E},h=d;function v(j){var O=document.documentElement.getAttribute("dir")==="rtl",E=document.createElement("textarea");E.style.fontSize="12pt",E.style.border="0",E.style.padding="0",E.style.margin="0",E.style.position="absolute",E.style[O?"right":"left"]="-9999px";var H=window.pageYOffset||document.documentElement.scrollTop;return E.style.top="".concat(H,"px"),E.setAttribute("readonly",""),E.value=j,E}var G=function(O,E){var H=v(O);E.container.appendChild(H);var I=p()(H);return m("copy"),H.remove(),I},oe=function(O){var E=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body},H="";return typeof O=="string"?H=G(O,E):O instanceof HTMLInputElement&&!["text","search","url","tel","password"].includes(O==null?void 0:O.type)?H=G(O.value,E):(H=p()(O),m("copy")),H},N=oe;function T(j){return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?T=function(E){return typeof E}:T=function(E){return E&&typeof Symbol=="function"&&E.constructor===Symbol&&E!==Symbol.prototype?"symbol":typeof E},T(j)}var Qe=function(){var O=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},E=O.action,H=E===void 0?"copy":E,I=O.container,q=O.target,Me=O.text;if(H!=="copy"&&H!=="cut")throw new Error('Invalid "action" value, use either "copy" or "cut"');if(q!==void 0)if(q&&T(q)==="object"&&q.nodeType===1){if(H==="copy"&&q.hasAttribute("disabled"))throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');if(H==="cut"&&(q.hasAttribute("readonly")||q.hasAttribute("disabled")))throw new Error(`Invalid "target" attribute. You can't cut text from elements with "readonly" or "disabled" attributes`)}else throw new Error('Invalid "target" value, use a valid Element');if(Me)return N(Me,{container:I});if(q)return H==="cut"?h(q):N(q,{container:I})},De=Qe;function $e(j){return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?$e=function(E){return typeof E}:$e=function(E){return E&&typeof Symbol=="function"&&E.constructor===Symbol&&E!==Symbol.prototype?"symbol":typeof E},$e(j)}function wi(j,O){if(!(j instanceof O))throw new TypeError("Cannot call a class as a function")}function rn(j,O){for(var E=0;E0&&arguments[0]!==void 0?arguments[0]:{};this.action=typeof I.action=="function"?I.action:this.defaultAction,this.target=typeof I.target=="function"?I.target:this.defaultTarget,this.text=typeof I.text=="function"?I.text:this.defaultText,this.container=$e(I.container)==="object"?I.container:document.body}},{key:"listenClick",value:function(I){var q=this;this.listener=f()(I,"click",function(Me){return q.onClick(Me)})}},{key:"onClick",value:function(I){var q=I.delegateTarget||I.currentTarget,Me=this.action(q)||"copy",kt=De({action:Me,container:this.container,target:this.target(q),text:this.text(q)});this.emit(kt?"success":"error",{action:Me,text:kt,trigger:q,clearSelection:function(){q&&q.focus(),window.getSelection().removeAllRanges()}})}},{key:"defaultAction",value:function(I){return vr("action",I)}},{key:"defaultTarget",value:function(I){var q=vr("target",I);if(q)return document.querySelector(q)}},{key:"defaultText",value:function(I){return vr("text",I)}},{key:"destroy",value:function(){this.listener.destroy()}}],[{key:"copy",value:function(I){var q=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body};return N(I,q)}},{key:"cut",value:function(I){return h(I)}},{key:"isSupported",value:function(){var I=arguments.length>0&&arguments[0]!==void 0?arguments[0]:["copy","cut"],q=typeof I=="string"?[I]:I,Me=!!document.queryCommandSupported;return q.forEach(function(kt){Me=Me&&!!document.queryCommandSupported(kt)}),Me}}]),E}(a()),Ci=Ai},828:function(n){var o=9;if(typeof Element!="undefined"&&!Element.prototype.matches){var i=Element.prototype;i.matches=i.matchesSelector||i.mozMatchesSelector||i.msMatchesSelector||i.oMatchesSelector||i.webkitMatchesSelector}function s(a,c){for(;a&&a.nodeType!==o;){if(typeof a.matches=="function"&&a.matches(c))return a;a=a.parentNode}}n.exports=s},438:function(n,o,i){var s=i(828);function a(u,p,m,d,h){var v=f.apply(this,arguments);return u.addEventListener(m,v,h),{destroy:function(){u.removeEventListener(m,v,h)}}}function c(u,p,m,d,h){return typeof u.addEventListener=="function"?a.apply(null,arguments):typeof m=="function"?a.bind(null,document).apply(null,arguments):(typeof u=="string"&&(u=document.querySelectorAll(u)),Array.prototype.map.call(u,function(v){return a(v,p,m,d,h)}))}function f(u,p,m,d){return function(h){h.delegateTarget=s(h.target,p),h.delegateTarget&&d.call(u,h)}}n.exports=c},879:function(n,o){o.node=function(i){return i!==void 0&&i instanceof HTMLElement&&i.nodeType===1},o.nodeList=function(i){var s=Object.prototype.toString.call(i);return i!==void 0&&(s==="[object NodeList]"||s==="[object HTMLCollection]")&&"length"in i&&(i.length===0||o.node(i[0]))},o.string=function(i){return typeof i=="string"||i instanceof String},o.fn=function(i){var s=Object.prototype.toString.call(i);return s==="[object Function]"}},370:function(n,o,i){var s=i(879),a=i(438);function c(m,d,h){if(!m&&!d&&!h)throw new Error("Missing required arguments");if(!s.string(d))throw new TypeError("Second argument must be a String");if(!s.fn(h))throw new TypeError("Third argument must be a Function");if(s.node(m))return f(m,d,h);if(s.nodeList(m))return u(m,d,h);if(s.string(m))return p(m,d,h);throw new TypeError("First argument must be a String, HTMLElement, HTMLCollection, or NodeList")}function f(m,d,h){return m.addEventListener(d,h),{destroy:function(){m.removeEventListener(d,h)}}}function u(m,d,h){return Array.prototype.forEach.call(m,function(v){v.addEventListener(d,h)}),{destroy:function(){Array.prototype.forEach.call(m,function(v){v.removeEventListener(d,h)})}}}function p(m,d,h){return a(document.body,m,d,h)}n.exports=c},817:function(n){function o(i){var s;if(i.nodeName==="SELECT")i.focus(),s=i.value;else if(i.nodeName==="INPUT"||i.nodeName==="TEXTAREA"){var a=i.hasAttribute("readonly");a||i.setAttribute("readonly",""),i.select(),i.setSelectionRange(0,i.value.length),a||i.removeAttribute("readonly"),s=i.value}else{i.hasAttribute("contenteditable")&&i.focus();var c=window.getSelection(),f=document.createRange();f.selectNodeContents(i),c.removeAllRanges(),c.addRange(f),s=c.toString()}return s}n.exports=o},279:function(n){function o(){}o.prototype={on:function(i,s,a){var c=this.e||(this.e={});return(c[i]||(c[i]=[])).push({fn:s,ctx:a}),this},once:function(i,s,a){var c=this;function f(){c.off(i,f),s.apply(a,arguments)}return f._=s,this.on(i,f,a)},emit:function(i){var s=[].slice.call(arguments,1),a=((this.e||(this.e={}))[i]||[]).slice(),c=0,f=a.length;for(c;c{"use strict";/*!
- * escape-html
- * Copyright(c) 2012-2013 TJ Holowaychuk
- * Copyright(c) 2015 Andreas Lubbe
- * Copyright(c) 2015 Tiancheng "Timothy" Gu
- * MIT Licensed
- */var ns=/["'&<>]/;Go.exports=os;function os(e){var t=""+e,r=ns.exec(t);if(!r)return t;var n,o="",i=0,s=0;for(i=r.index;i0&&i[i.length-1])&&(f[0]===6||f[0]===2)){r=0;continue}if(f[0]===3&&(!i||f[1]>i[0]&&f[1]=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function W(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),o,i=[],s;try{for(;(t===void 0||t-- >0)&&!(o=n.next()).done;)i.push(o.value)}catch(a){s={error:a}}finally{try{o&&!o.done&&(r=n.return)&&r.call(n)}finally{if(s)throw s.error}}return i}function D(e,t,r){if(r||arguments.length===2)for(var n=0,o=t.length,i;n1||a(m,d)})})}function a(m,d){try{c(n[m](d))}catch(h){p(i[0][3],h)}}function c(m){m.value instanceof et?Promise.resolve(m.value.v).then(f,u):p(i[0][2],m)}function f(m){a("next",m)}function u(m){a("throw",m)}function p(m,d){m(d),i.shift(),i.length&&a(i[0][0],i[0][1])}}function ln(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t=e[Symbol.asyncIterator],r;return t?t.call(e):(e=typeof Ee=="function"?Ee(e):e[Symbol.iterator](),r={},n("next"),n("throw"),n("return"),r[Symbol.asyncIterator]=function(){return this},r);function n(i){r[i]=e[i]&&function(s){return new Promise(function(a,c){s=e[i](s),o(a,c,s.done,s.value)})}}function o(i,s,a,c){Promise.resolve(c).then(function(f){i({value:f,done:a})},s)}}function C(e){return typeof e=="function"}function at(e){var t=function(n){Error.call(n),n.stack=new Error().stack},r=e(t);return r.prototype=Object.create(Error.prototype),r.prototype.constructor=r,r}var It=at(function(e){return function(r){e(this),this.message=r?r.length+` errors occurred during unsubscription:
-`+r.map(function(n,o){return o+1+") "+n.toString()}).join(`
- `):"",this.name="UnsubscriptionError",this.errors=r}});function Ve(e,t){if(e){var r=e.indexOf(t);0<=r&&e.splice(r,1)}}var Ie=function(){function e(t){this.initialTeardown=t,this.closed=!1,this._parentage=null,this._finalizers=null}return e.prototype.unsubscribe=function(){var t,r,n,o,i;if(!this.closed){this.closed=!0;var s=this._parentage;if(s)if(this._parentage=null,Array.isArray(s))try{for(var a=Ee(s),c=a.next();!c.done;c=a.next()){var f=c.value;f.remove(this)}}catch(v){t={error:v}}finally{try{c&&!c.done&&(r=a.return)&&r.call(a)}finally{if(t)throw t.error}}else s.remove(this);var u=this.initialTeardown;if(C(u))try{u()}catch(v){i=v instanceof It?v.errors:[v]}var p=this._finalizers;if(p){this._finalizers=null;try{for(var m=Ee(p),d=m.next();!d.done;d=m.next()){var h=d.value;try{mn(h)}catch(v){i=i!=null?i:[],v instanceof It?i=D(D([],W(i)),W(v.errors)):i.push(v)}}}catch(v){n={error:v}}finally{try{d&&!d.done&&(o=m.return)&&o.call(m)}finally{if(n)throw n.error}}}if(i)throw new It(i)}},e.prototype.add=function(t){var r;if(t&&t!==this)if(this.closed)mn(t);else{if(t instanceof e){if(t.closed||t._hasParent(this))return;t._addParent(this)}(this._finalizers=(r=this._finalizers)!==null&&r!==void 0?r:[]).push(t)}},e.prototype._hasParent=function(t){var r=this._parentage;return r===t||Array.isArray(r)&&r.includes(t)},e.prototype._addParent=function(t){var r=this._parentage;this._parentage=Array.isArray(r)?(r.push(t),r):r?[r,t]:t},e.prototype._removeParent=function(t){var r=this._parentage;r===t?this._parentage=null:Array.isArray(r)&&Ve(r,t)},e.prototype.remove=function(t){var r=this._finalizers;r&&Ve(r,t),t instanceof e&&t._removeParent(this)},e.EMPTY=function(){var t=new e;return t.closed=!0,t}(),e}();var Sr=Ie.EMPTY;function jt(e){return e instanceof Ie||e&&"closed"in e&&C(e.remove)&&C(e.add)&&C(e.unsubscribe)}function mn(e){C(e)?e():e.unsubscribe()}var Le={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1};var st={setTimeout:function(e,t){for(var r=[],n=2;n0},enumerable:!1,configurable:!0}),t.prototype._trySubscribe=function(r){return this._throwIfClosed(),e.prototype._trySubscribe.call(this,r)},t.prototype._subscribe=function(r){return this._throwIfClosed(),this._checkFinalizedStatuses(r),this._innerSubscribe(r)},t.prototype._innerSubscribe=function(r){var n=this,o=this,i=o.hasError,s=o.isStopped,a=o.observers;return i||s?Sr:(this.currentObservers=null,a.push(r),new Ie(function(){n.currentObservers=null,Ve(a,r)}))},t.prototype._checkFinalizedStatuses=function(r){var n=this,o=n.hasError,i=n.thrownError,s=n.isStopped;o?r.error(i):s&&r.complete()},t.prototype.asObservable=function(){var r=new F;return r.source=this,r},t.create=function(r,n){return new En(r,n)},t}(F);var En=function(e){ie(t,e);function t(r,n){var o=e.call(this)||this;return o.destination=r,o.source=n,o}return t.prototype.next=function(r){var n,o;(o=(n=this.destination)===null||n===void 0?void 0:n.next)===null||o===void 0||o.call(n,r)},t.prototype.error=function(r){var n,o;(o=(n=this.destination)===null||n===void 0?void 0:n.error)===null||o===void 0||o.call(n,r)},t.prototype.complete=function(){var r,n;(n=(r=this.destination)===null||r===void 0?void 0:r.complete)===null||n===void 0||n.call(r)},t.prototype._subscribe=function(r){var n,o;return(o=(n=this.source)===null||n===void 0?void 0:n.subscribe(r))!==null&&o!==void 0?o:Sr},t}(x);var Et={now:function(){return(Et.delegate||Date).now()},delegate:void 0};var wt=function(e){ie(t,e);function t(r,n,o){r===void 0&&(r=1/0),n===void 0&&(n=1/0),o===void 0&&(o=Et);var i=e.call(this)||this;return i._bufferSize=r,i._windowTime=n,i._timestampProvider=o,i._buffer=[],i._infiniteTimeWindow=!0,i._infiniteTimeWindow=n===1/0,i._bufferSize=Math.max(1,r),i._windowTime=Math.max(1,n),i}return t.prototype.next=function(r){var n=this,o=n.isStopped,i=n._buffer,s=n._infiniteTimeWindow,a=n._timestampProvider,c=n._windowTime;o||(i.push(r),!s&&i.push(a.now()+c)),this._trimBuffer(),e.prototype.next.call(this,r)},t.prototype._subscribe=function(r){this._throwIfClosed(),this._trimBuffer();for(var n=this._innerSubscribe(r),o=this,i=o._infiniteTimeWindow,s=o._buffer,a=s.slice(),c=0;c0?e.prototype.requestAsyncId.call(this,r,n,o):(r.actions.push(this),r._scheduled||(r._scheduled=ut.requestAnimationFrame(function(){return r.flush(void 0)})))},t.prototype.recycleAsyncId=function(r,n,o){var i;if(o===void 0&&(o=0),o!=null?o>0:this.delay>0)return e.prototype.recycleAsyncId.call(this,r,n,o);var s=r.actions;n!=null&&((i=s[s.length-1])===null||i===void 0?void 0:i.id)!==n&&(ut.cancelAnimationFrame(n),r._scheduled=void 0)},t}(Wt);var Tn=function(e){ie(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.flush=function(r){this._active=!0;var n=this._scheduled;this._scheduled=void 0;var o=this.actions,i;r=r||o.shift();do if(i=r.execute(r.state,r.delay))break;while((r=o[0])&&r.id===n&&o.shift());if(this._active=!1,i){for(;(r=o[0])&&r.id===n&&o.shift();)r.unsubscribe();throw i}},t}(Dt);var Te=new Tn(Sn);var _=new F(function(e){return e.complete()});function Vt(e){return e&&C(e.schedule)}function Cr(e){return e[e.length-1]}function Ye(e){return C(Cr(e))?e.pop():void 0}function Oe(e){return Vt(Cr(e))?e.pop():void 0}function zt(e,t){return typeof Cr(e)=="number"?e.pop():t}var pt=function(e){return e&&typeof e.length=="number"&&typeof e!="function"};function Nt(e){return C(e==null?void 0:e.then)}function qt(e){return C(e[ft])}function Kt(e){return Symbol.asyncIterator&&C(e==null?void 0:e[Symbol.asyncIterator])}function Qt(e){return new TypeError("You provided "+(e!==null&&typeof e=="object"?"an invalid object":"'"+e+"'")+" where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.")}function Ni(){return typeof Symbol!="function"||!Symbol.iterator?"@@iterator":Symbol.iterator}var Yt=Ni();function Gt(e){return C(e==null?void 0:e[Yt])}function Bt(e){return pn(this,arguments,function(){var r,n,o,i;return $t(this,function(s){switch(s.label){case 0:r=e.getReader(),s.label=1;case 1:s.trys.push([1,,9,10]),s.label=2;case 2:return[4,et(r.read())];case 3:return n=s.sent(),o=n.value,i=n.done,i?[4,et(void 0)]:[3,5];case 4:return[2,s.sent()];case 5:return[4,et(o)];case 6:return[4,s.sent()];case 7:return s.sent(),[3,2];case 8:return[3,10];case 9:return r.releaseLock(),[7];case 10:return[2]}})})}function Jt(e){return C(e==null?void 0:e.getReader)}function U(e){if(e instanceof F)return e;if(e!=null){if(qt(e))return qi(e);if(pt(e))return Ki(e);if(Nt(e))return Qi(e);if(Kt(e))return On(e);if(Gt(e))return Yi(e);if(Jt(e))return Gi(e)}throw Qt(e)}function qi(e){return new F(function(t){var r=e[ft]();if(C(r.subscribe))return r.subscribe(t);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}function Ki(e){return new F(function(t){for(var r=0;r=2;return function(n){return n.pipe(e?A(function(o,i){return e(o,i,n)}):de,ge(1),r?He(t):Vn(function(){return new Zt}))}}function zn(){for(var e=[],t=0;t=2,!0))}function pe(e){e===void 0&&(e={});var t=e.connector,r=t===void 0?function(){return new x}:t,n=e.resetOnError,o=n===void 0?!0:n,i=e.resetOnComplete,s=i===void 0?!0:i,a=e.resetOnRefCountZero,c=a===void 0?!0:a;return function(f){var u,p,m,d=0,h=!1,v=!1,G=function(){p==null||p.unsubscribe(),p=void 0},oe=function(){G(),u=m=void 0,h=v=!1},N=function(){var T=u;oe(),T==null||T.unsubscribe()};return y(function(T,Qe){d++,!v&&!h&&G();var De=m=m!=null?m:r();Qe.add(function(){d--,d===0&&!v&&!h&&(p=$r(N,c))}),De.subscribe(Qe),!u&&d>0&&(u=new rt({next:function($e){return De.next($e)},error:function($e){v=!0,G(),p=$r(oe,o,$e),De.error($e)},complete:function(){h=!0,G(),p=$r(oe,s),De.complete()}}),U(T).subscribe(u))})(f)}}function $r(e,t){for(var r=[],n=2;ne.next(document)),e}function K(e,t=document){return Array.from(t.querySelectorAll(e))}function z(e,t=document){let r=ce(e,t);if(typeof r=="undefined")throw new ReferenceError(`Missing element: expected "${e}" to be present`);return r}function ce(e,t=document){return t.querySelector(e)||void 0}function _e(){return document.activeElement instanceof HTMLElement&&document.activeElement||void 0}function tr(e){return L(b(document.body,"focusin"),b(document.body,"focusout")).pipe(ke(1),l(()=>{let t=_e();return typeof t!="undefined"?e.contains(t):!1}),V(e===_e()),B())}function Xe(e){return{x:e.offsetLeft,y:e.offsetTop}}function Qn(e){return L(b(window,"load"),b(window,"resize")).pipe(Ce(0,Te),l(()=>Xe(e)),V(Xe(e)))}function rr(e){return{x:e.scrollLeft,y:e.scrollTop}}function dt(e){return L(b(e,"scroll"),b(window,"resize")).pipe(Ce(0,Te),l(()=>rr(e)),V(rr(e)))}var Gn=function(){if(typeof Map!="undefined")return Map;function e(t,r){var n=-1;return t.some(function(o,i){return o[0]===r?(n=i,!0):!1}),n}return function(){function t(){this.__entries__=[]}return Object.defineProperty(t.prototype,"size",{get:function(){return this.__entries__.length},enumerable:!0,configurable:!0}),t.prototype.get=function(r){var n=e(this.__entries__,r),o=this.__entries__[n];return o&&o[1]},t.prototype.set=function(r,n){var o=e(this.__entries__,r);~o?this.__entries__[o][1]=n:this.__entries__.push([r,n])},t.prototype.delete=function(r){var n=this.__entries__,o=e(n,r);~o&&n.splice(o,1)},t.prototype.has=function(r){return!!~e(this.__entries__,r)},t.prototype.clear=function(){this.__entries__.splice(0)},t.prototype.forEach=function(r,n){n===void 0&&(n=null);for(var o=0,i=this.__entries__;o0},e.prototype.connect_=function(){!Dr||this.connected_||(document.addEventListener("transitionend",this.onTransitionEnd_),window.addEventListener("resize",this.refresh),ga?(this.mutationsObserver_=new MutationObserver(this.refresh),this.mutationsObserver_.observe(document,{attributes:!0,childList:!0,characterData:!0,subtree:!0})):(document.addEventListener("DOMSubtreeModified",this.refresh),this.mutationEventsAdded_=!0),this.connected_=!0)},e.prototype.disconnect_=function(){!Dr||!this.connected_||(document.removeEventListener("transitionend",this.onTransitionEnd_),window.removeEventListener("resize",this.refresh),this.mutationsObserver_&&this.mutationsObserver_.disconnect(),this.mutationEventsAdded_&&document.removeEventListener("DOMSubtreeModified",this.refresh),this.mutationsObserver_=null,this.mutationEventsAdded_=!1,this.connected_=!1)},e.prototype.onTransitionEnd_=function(t){var r=t.propertyName,n=r===void 0?"":r,o=va.some(function(i){return!!~n.indexOf(i)});o&&this.refresh()},e.getInstance=function(){return this.instance_||(this.instance_=new e),this.instance_},e.instance_=null,e}(),Bn=function(e,t){for(var r=0,n=Object.keys(t);r0},e}(),Xn=typeof WeakMap!="undefined"?new WeakMap:new Gn,Zn=function(){function e(t){if(!(this instanceof e))throw new TypeError("Cannot call a class as a function.");if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");var r=ya.getInstance(),n=new Aa(t,r,this);Xn.set(this,n)}return e}();["observe","unobserve","disconnect"].forEach(function(e){Zn.prototype[e]=function(){var t;return(t=Xn.get(this))[e].apply(t,arguments)}});var Ca=function(){return typeof nr.ResizeObserver!="undefined"?nr.ResizeObserver:Zn}(),eo=Ca;var to=new x,Ra=$(()=>k(new eo(e=>{for(let t of e)to.next(t)}))).pipe(g(e=>L(ze,k(e)).pipe(R(()=>e.disconnect()))),J(1));function he(e){return{width:e.offsetWidth,height:e.offsetHeight}}function ye(e){return Ra.pipe(S(t=>t.observe(e)),g(t=>to.pipe(A(({target:r})=>r===e),R(()=>t.unobserve(e)),l(()=>he(e)))),V(he(e)))}function bt(e){return{width:e.scrollWidth,height:e.scrollHeight}}function ar(e){let t=e.parentElement;for(;t&&(e.scrollWidth<=t.scrollWidth&&e.scrollHeight<=t.scrollHeight);)t=(e=t).parentElement;return t?e:void 0}var ro=new x,ka=$(()=>k(new IntersectionObserver(e=>{for(let t of e)ro.next(t)},{threshold:0}))).pipe(g(e=>L(ze,k(e)).pipe(R(()=>e.disconnect()))),J(1));function sr(e){return ka.pipe(S(t=>t.observe(e)),g(t=>ro.pipe(A(({target:r})=>r===e),R(()=>t.unobserve(e)),l(({isIntersecting:r})=>r))))}function no(e,t=16){return dt(e).pipe(l(({y:r})=>{let n=he(e),o=bt(e);return r>=o.height-n.height-t}),B())}var cr={drawer:z("[data-md-toggle=drawer]"),search:z("[data-md-toggle=search]")};function oo(e){return cr[e].checked}function Ke(e,t){cr[e].checked!==t&&cr[e].click()}function Ue(e){let t=cr[e];return b(t,"change").pipe(l(()=>t.checked),V(t.checked))}function Ha(e,t){switch(e.constructor){case HTMLInputElement:return e.type==="radio"?/^Arrow/.test(t):!0;case HTMLSelectElement:case HTMLTextAreaElement:return!0;default:return e.isContentEditable}}function Pa(){return L(b(window,"compositionstart").pipe(l(()=>!0)),b(window,"compositionend").pipe(l(()=>!1))).pipe(V(!1))}function io(){let e=b(window,"keydown").pipe(A(t=>!(t.metaKey||t.ctrlKey)),l(t=>({mode:oo("search")?"search":"global",type:t.key,claim(){t.preventDefault(),t.stopPropagation()}})),A(({mode:t,type:r})=>{if(t==="global"){let n=_e();if(typeof n!="undefined")return!Ha(n,r)}return!0}),pe());return Pa().pipe(g(t=>t?_:e))}function le(){return new URL(location.href)}function ot(e){location.href=e.href}function ao(){return new x}function so(e,t){if(typeof t=="string"||typeof t=="number")e.innerHTML+=t.toString();else if(t instanceof Node)e.appendChild(t);else if(Array.isArray(t))for(let r of t)so(e,r)}function M(e,t,...r){let n=document.createElement(e);if(t)for(let o of Object.keys(t))typeof t[o]!="undefined"&&(typeof t[o]!="boolean"?n.setAttribute(o,t[o]):n.setAttribute(o,""));for(let o of r)so(n,o);return n}function fr(e){if(e>999){let t=+((e-950)%1e3>99);return`${((e+1e-6)/1e3).toFixed(t)}k`}else return e.toString()}function co(){return location.hash.substring(1)}function Vr(e){let t=M("a",{href:e});t.addEventListener("click",r=>r.stopPropagation()),t.click()}function $a(e){return L(b(window,"hashchange"),e).pipe(l(co),V(co()),A(t=>t.length>0),J(1))}function fo(e){return $a(e).pipe(l(t=>ce(`[id="${t}"]`)),A(t=>typeof t!="undefined"))}function zr(e){let t=matchMedia(e);return er(r=>t.addListener(()=>r(t.matches))).pipe(V(t.matches))}function uo(){let e=matchMedia("print");return L(b(window,"beforeprint").pipe(l(()=>!0)),b(window,"afterprint").pipe(l(()=>!1))).pipe(V(e.matches))}function Nr(e,t){return e.pipe(g(r=>r?t():_))}function ur(e,t={credentials:"same-origin"}){return ue(fetch(`${e}`,t)).pipe(fe(()=>_),g(r=>r.status!==200?Tt(()=>new Error(r.statusText)):k(r)))}function We(e,t){return ur(e,t).pipe(g(r=>r.json()),J(1))}function po(e,t){let r=new DOMParser;return ur(e,t).pipe(g(n=>n.text()),l(n=>r.parseFromString(n,"text/xml")),J(1))}function pr(e){let t=M("script",{src:e});return $(()=>(document.head.appendChild(t),L(b(t,"load"),b(t,"error").pipe(g(()=>Tt(()=>new ReferenceError(`Invalid script: ${e}`))))).pipe(l(()=>{}),R(()=>document.head.removeChild(t)),ge(1))))}function lo(){return{x:Math.max(0,scrollX),y:Math.max(0,scrollY)}}function mo(){return L(b(window,"scroll",{passive:!0}),b(window,"resize",{passive:!0})).pipe(l(lo),V(lo()))}function ho(){return{width:innerWidth,height:innerHeight}}function bo(){return b(window,"resize",{passive:!0}).pipe(l(ho),V(ho()))}function vo(){return Q([mo(),bo()]).pipe(l(([e,t])=>({offset:e,size:t})),J(1))}function lr(e,{viewport$:t,header$:r}){let n=t.pipe(Z("size")),o=Q([n,r]).pipe(l(()=>Xe(e)));return Q([r,t,o]).pipe(l(([{height:i},{offset:s,size:a},{x:c,y:f}])=>({offset:{x:s.x-c,y:s.y-f+i},size:a})))}(()=>{function e(n,o){parent.postMessage(n,o||"*")}function t(...n){return n.reduce((o,i)=>o.then(()=>new Promise(s=>{let a=document.createElement("script");a.src=i,a.onload=s,document.body.appendChild(a)})),Promise.resolve())}var r=class extends EventTarget{constructor(n){super(),this.url=n,this.m=i=>{i.source===this.w&&(this.dispatchEvent(new MessageEvent("message",{data:i.data})),this.onmessage&&this.onmessage(i))},this.e=(i,s,a,c,f)=>{if(s===`${this.url}`){let u=new ErrorEvent("error",{message:i,filename:s,lineno:a,colno:c,error:f});this.dispatchEvent(u),this.onerror&&this.onerror(u)}};let o=document.createElement("iframe");o.hidden=!0,document.body.appendChild(this.iframe=o),this.w.document.open(),this.w.document.write(`
{% endblock %}
{% block scripts %}
-
+
{% for path in config.extra_javascript %}
{% endfor %}
diff --git a/material/partials/languages/bn.html b/material/partials/languages/bn.html
index ee55717b5..b5fed867c 100644
--- a/material/partials/languages/bn.html
+++ b/material/partials/languages/bn.html
@@ -5,25 +5,52 @@
"language": "bn",
"action.edit": "এই পেজ এডিট করুন",
"action.skip": "কনটেন্টে যান",
+ "action.view": "পেজের ভিউ",
+ "announce.dismiss": "আর কখনো দেখাবে না",
+ "blog.archive": "সংরক্ষণাগার",
+ "blog.categories": "বিভাগ",
+ "blog.categories.in": "বিভাগের মধ্যে",
+ "blog.continue": "পড়তে থাকুন",
+ "blog.draft": "খসড়া",
+ "blog.index": "ইনডেক্সে ফিরে যান",
+ "blog.meta": "মেটাডেটা",
+ "blog.references": "সম্পর্কিত লিংক",
"clipboard.copy": "ক্লিপবোর্ডে কপি করুন",
"clipboard.copied": "ক্লিপবোর্ডে কপি হয়েছে",
+ "consent.accept": "গ্রহণ",
+ "consent.manage": "সেটিংস ব্যবস্থাপনা",
+ "consent.reject": "প্রত্যাখ্যান",
"footer": "ফুটার",
"footer.next": "পরে",
"footer.previous": "পূর্ববর্তী",
"header": "হেডার",
- "meta.comments": "কমেন্ট",
- "meta.source": "সোর্স",
+ "meta.comments": "মন্তব্য",
+ "meta.source": "উৎস",
"nav": "ন্যাভিগেশন",
+ "readtime.one": "১ মিনিট পড়া",
+ "readtime.other": "# মিনিট পড়া",
+ "rss.created": "আরএসএস ফিড",
+ "rss.updated": "আপডেট করা বিষয়বস্তুর আরএসএস ফিড",
+ "search": "অনুসন্ধান করুন",
"search.config.pipeline": " ",
- "search.placeholder": "সার্চ",
- "search.reset": "মুছে ফেলুন",
+ "search.placeholder": "অনুসন্ধান করুন",
+ "search.share": "শেয়ার",
+ "search.reset": "রিসেট",
+ "search.result.initializer": "অনুসন্ধান শুরু করা হচ্ছে",
"search.result.placeholder": "সার্চ টাইপ করুন",
"search.result.none": "কিছু পাওয়া যায়নি",
"search.result.one": "১ টা ডকুমেন্ট",
"search.result.other": "# টা ডকুমেন্ট",
+ "search.result.more.one": "এই পৃষ্ঠায় আরও ১টি আছে",
+ "search.result.more.other": "এই পৃষ্ঠায় আরও #টি আছে",
+ "search.result.term.missing": "অনুপস্থিত",
+ "select.language": "ভাষা নির্বাচন করুণ",
+ "select.version": "সংস্করণ নির্বাচন করুণ",
"source": "রিপোজিটরিতে যান",
+ "source.file.contributors": "অবদানকারী",
"source.file.date.created": "তৈরি হয়েছে",
"source.file.date.updated": "শেষ আপডেট",
"tabs": "ট্যাব",
- "toc": "টেবিল অফ কনটেন্ট"
+ "toc": "সূচি তালিকা",
+ "top": "উপরে ফিরে যাও"
}[key] }}{% endmacro %}
diff --git a/material/partials/languages/kn.html b/material/partials/languages/kn.html
new file mode 100644
index 000000000..876a7e0e5
--- /dev/null
+++ b/material/partials/languages/kn.html
@@ -0,0 +1,55 @@
+{#-
+ This file was automatically generated - do not edit
+-#}
+{% macro t(key) %}{{ {
+ "language": "kn",
+ "action.edit": "ಈ ಪುಟವನ್ನು ತಿದ್ದುಪಡಿ ಮಾಡಿ",
+ "action.skip": "ವಿಷಯಕ್ಕೆ ತೆರಳಿ",
+ "action.view": "ಈ ಪುಟದ ಮೂಲವನ್ನು ವೀಕ್ಷಿಸಿ",
+ "announce.dismiss": "ಇದನ್ನು ಮತ್ತೊಮ್ಮೆ ತೋರಿಸಬೇಡಿ",
+ "blog.archive": "ಹಳೆಯ ಲೇಖನ",
+ "blog.categories": "ವರ್ಗಗಳು",
+ "blog.categories.in": "ರಲ್ಲಿ",
+ "blog.continue": "ಓದು ಮುಂದುವರೆಸಿ",
+ "blog.draft": "ಆರಂಭಿಕ ಬರವಣಿಗೆ",
+ "blog.index": "ಸೂಚ್ಯಂಕಕ್ಕೆ ಹಿಂತಿರುಗಿ",
+ "blog.meta": "ಮಾಹಿತಿಯ ಬಗ್ಗೆ ಮಾಹಿತಿ",
+ "blog.references": "ಸಂಬಂಧಿತ ಉಲ್ಲೇಖಗಳು",
+ "clipboard.copy": "ಇದನ್ನು ನಕಲಿಸಿ",
+ "clipboard.copied": "ಇದನ್ನು ನಕಲು ಮಾಡಿದೆ",
+ "consent.accept": "ನಾನು ಇದನ್ನು ಒಪ್ಪಿಕೊಳ್ಳುತ್ತೇನೆ",
+ "consent.manage": "ಸಂರಚನೆಯನ್ನು ನಿರ್ವಹಿಸಿ",
+ "consent.reject": "ನಾನು ಇದನ್ನು ತಿರಸ್ಕರಿಸುತ್ತೇನೆ",
+ "footer": "ಅಡಿಟಿಪ್ಪಣಿ",
+ "footer.next": "ಮುಂದಿನ ಸಂಚಿಕೆ",
+ "footer.previous": "ಹಿಂದಿನ ಸಂಚಿಕೆ",
+ "header": "ಮೇಲ್ಟಿಪ್ಪಣಿ",
+ "meta.comments": "ಪ್ರತಿಕ್ರಿಯೆಗಳು",
+ "meta.source": "ಮೂಲ",
+ "nav": "ಸಂಚರಣೆ",
+ "readtime.one": "ಓದಲು ೧ ನಿಮಿಷ ತೆಗೆದುಕೊಳ್ಳುತ್ತದೆ",
+ "readtime.other": "ಓದಲು # ನಿಮಿಷಗಳನ್ನು ತೆಗೆದುಕೊಳ್ಳುತ್ತದೆ",
+ "rss.created": "ಆರ್ಎಸ್ಎಸ್ ಸೇವೆ",
+ "rss.updated": "ಆರ್ಎಸ್ಎಸ್ ಸೇವೆಯಿಂದ ಇತ್ತೀಚಿನ ನವೀಕರಣ",
+ "search": "ಹುಡುಕಿ",
+ "search.placeholder": "ಹುಡುಕಿ",
+ "search.share": "ಹಂಚಿಕೊಳ್ಳಿ",
+ "search.reset": "ಅಳಿಸು",
+ "search.result.initializer": "ಹುಡುಕಾಟವನ್ನು ಪ್ರಾರಂಭಿಸಲಾಗುತ್ತಿದೆ",
+ "search.result.placeholder": "ಬರೆಯುವ ಮೂಲಕ ಹುಡುಕಲು ಪ್ರಾರಂಭಿಸಿ",
+ "search.result.none": "ಹೊಂದಾಣಿಕೆಯಾಗುವ ದಾಖಲೆಗಳಿಲ್ಲ",
+ "search.result.one": "೧ ಹೊಂದಾಣಿಕೆಯ ದಾಖಲೆಯಿದೆ",
+ "search.result.other": "# ಹೊಂದಾಣಿಕೆಯ ದಾಖಲೆಗಳಿವೆ",
+ "search.result.more.one": "ಈ ಪುಟದಲ್ಲಿ ಇನ್ನೂ ಒಂದು ಕಂಡುಬಂದಿದೆ",
+ "search.result.more.other": "ಈ ಪುಟದಲ್ಲಿ ಇನ್ನೂ # ಇವೆ",
+ "search.result.term.missing": "ಕಾಣೆಯಾಗಿದೆ",
+ "select.language": "ಭಾಷೆಯನ್ನು ಆಯ್ಕೆಮಾಡಿ",
+ "select.version": "ಆವೃತ್ತಿಯನ್ನು ಆಯ್ಕೆಮಾಡಿ",
+ "source": "ಭಂಡಾರಕ್ಕೆ ಹೋಗಿ",
+ "source.file.contributors": "ಕೊಡುಗೆದಾರರು",
+ "source.file.date.created": "ರಚಿಸಿದ ದಿನಾಂಕ",
+ "source.file.date.updated": "ಕೊನೆಯ ನವೀಕರಣ ದಿನಾಂಕ",
+ "tabs": "ವಿವಿಧ ಕಿಟಕಿಗಳು",
+ "toc": "ವಿಷಯಗಳ ಪಟ್ಟಿ",
+ "top": "ಮೇಲಕ್ಕೆ ಹಿಂತಿರುಗಿ"
+}[key] }}{% endmacro %}
diff --git a/material/partials/languages/sa.html b/material/partials/languages/sa.html
new file mode 100644
index 000000000..eff71cee2
--- /dev/null
+++ b/material/partials/languages/sa.html
@@ -0,0 +1,55 @@
+{#-
+ This file was automatically generated - do not edit
+-#}
+{% macro t(key) %}{{ {
+ "language": "sa",
+ "action.edit": "एतत् पृष्ठं सम्पादयतु",
+ "action.skip": "सामग्रीं त्यजन्तु",
+ "action.view": "अस्य पृष्ठस्य स्रोतः पश्यन्तु",
+ "announce.dismiss": "एतत् पुनः न दर्शयतु",
+ "blog.archive": "लेखागार",
+ "blog.categories": "श्रेणियाँ",
+ "blog.categories.in": "इत्यस्मिन्",
+ "blog.continue": "पठनं निरन्तरं कुर्वन्तु",
+ "blog.draft": "प्रारूप",
+ "blog.index": "अनुक्रमणिकां प्रति पुनः आगच्छन्तु",
+ "blog.meta": "परिदत्तांश",
+ "blog.references": "सन्दर्भाः",
+ "clipboard.copy": "एतत् प्रतिलिख्यताम्",
+ "clipboard.copied": "प्रतिलिपितः भवति",
+ "consent.accept": "अहं तत् स्वीकुर्वन् अस्मि",
+ "consent.manage": "वविन्यासं प्रबन्धयन्तु",
+ "consent.reject": "अहं तत् निराकरोमि",
+ "footer": "पादलेखः",
+ "footer.next": "अग्रिमः",
+ "footer.previous": "पूर्वकृत",
+ "header": "शीर्षकम्",
+ "meta.comments": "विचाराः",
+ "meta.source": "स्रोतः",
+ "nav": "मार्गदर्शनम्",
+ "readtime.one": "१ निमेषं पठितुं",
+ "readtime.other": "# निमेषं पठितुं",
+ "rss.created": "आरएसएस सेवा",
+ "rss.updated": "आरएसएस सेवातः नवीनतमं अद्यतनम्",
+ "search": "अन्वेषण",
+ "search.placeholder": "अन्वेषण",
+ "search.share": "साझां कुर्वन्तु",
+ "search.reset": "तत् स्वच्छं कुर्वन्तु",
+ "search.result.initializer": "अन्वेषणस्य आरम्भः",
+ "search.result.placeholder": "अन्वेषणं आरभ्य लिखन्तु",
+ "search.result.none": "मेलयुक्ताः दस्तावेजाः नास्ति",
+ "search.result.one": "१ मेलकर्ता दस्तावेजः अस्ति",
+ "search.result.other": "# मेलनदस्तावेजाः सन्ति",
+ "search.result.more.one": "अस्मिन् पृष्ठे १ अधिकं अस्ति",
+ "search.result.more.other": "अस्मिन् पृष्ठे # अधिकाः सन्ति",
+ "search.result.term.missing": "असमेत",
+ "select.language": "भाषां चिनोतु",
+ "select.version": "संस्करणं चिनोतु",
+ "source": "भण्डारं गच्छन्तु",
+ "source.file.contributors": "अंशदाता",
+ "source.file.date.created": "ननिर्माणस्य तिथिः",
+ "source.file.date.updated": "परिवर्तनस्य तिथिः",
+ "tabs": "दस्तावेजस्य प्रमुखः",
+ "toc": "सामग्रीसारणी",
+ "top": "पुनः उपरिभागं प्रति गच्छन्तु"
+}[key] }}{% endmacro %}
diff --git a/material/partials/languages/te.html b/material/partials/languages/te.html
new file mode 100644
index 000000000..2bd6036d6
--- /dev/null
+++ b/material/partials/languages/te.html
@@ -0,0 +1,55 @@
+{#-
+ This file was automatically generated - do not edit
+-#}
+{% macro t(key) %}{{ {
+ "language": "te",
+ "action.edit": "ఈ పేజీలో దిద్దుబాట్లు చేయండి",
+ "action.skip": "సమాచారానికి వెళ్లండి",
+ "action.view": "నేను ఈ పేజీ యొక్క మూలాన్ని చూడాలనుకుంటున్నాను",
+ "announce.dismiss": "దీన్ని మళ్లీ చూపవద్దు",
+ "blog.archive": "పాత వ్యాసం",
+ "blog.categories": "వర్గాలు",
+ "blog.categories.in": "లో",
+ "blog.continue": "చదవడం కొనసాగించండి",
+ "blog.draft": "ప్రారంభ రచన",
+ "blog.index": "సూచికకు తిరిగి వెళ్ళు",
+ "blog.meta": "సమాచారం గురించి సమాచారం",
+ "blog.references": "సంబంధిత సూచనలు",
+ "clipboard.copy": "దీనిని అనుకరించు",
+ "clipboard.copied": "దీనిని అతికించు",
+ "consent.accept": "నేను దీనిని అంగీకరిస్తున్నాను",
+ "consent.manage": "ఆకృతీకరణను నిర్వహించండి",
+ "consent.reject": "నేను దీనిని తిరస్కరిస్తున్నాను",
+ "footer": "అడిటిప్పణి",
+ "footer.next": "తదుపరి భాగం",
+ "footer.previous": "మునుపటి భాగం",
+ "header": "శీర్షిక విభాగం",
+ "meta.comments": "అభిప్రాయాలు",
+ "meta.source": "మూలం",
+ "nav": "మార్గదర్శక పట్టీ",
+ "readtime.one": "చదవడానికి ఒక నిమిషం పడుతుంది",
+ "readtime.other": "చదవడానికి # నిమిషాలు పడుతుంది",
+ "rss.created": "ఆర్ఎస్ఎస్ సేవ",
+ "rss.updated": "ఆర్ఎస్ఎస్ సేవ నుండి తాజా నవీకరణ",
+ "search": "వెతకండి",
+ "search.placeholder": "వెతకండి",
+ "search.share": "పంచుకోండి",
+ "search.reset": "తుడిచివేయు",
+ "search.result.initializer": "శోధనను ప్రారంభిస్తోంది",
+ "search.result.placeholder": "రాయడం ద్వారా వెతకడం ప్రారంభించండి",
+ "search.result.none": "సరిపోలే పత్రాలు లేవు",
+ "search.result.one": "ఒక సరిపోలే పత్రం",
+ "search.result.other": "# సరిపోలే పత్రాలు",
+ "search.result.more.one": "ఈ పేజీలో మరొకటి",
+ "search.result.more.other": "ఈ పేజీలో ఇంకా # ఉన్నాయి",
+ "search.result.term.missing": "తప్పిపోయింది",
+ "select.language": "భాషను ఎంచుకోండి",
+ "select.version": "సంస్కరణను ఎంచుకోండి",
+ "source": "భండారానికి వెళ్ళండి",
+ "source.file.contributors": "సహకారులు",
+ "source.file.date.created": "సృష్టించబడింది",
+ "source.file.date.updated": "చివరి నవీకరణ",
+ "tabs": "వివిధ కిటికీలు",
+ "toc": "విషయ సూచిక",
+ "top": "పైకి తిరిగి వెళ్ళు"
+}[key] }}{% endmacro %}
diff --git a/material/plugins/social/plugin.py b/material/plugins/social/plugin.py
index 06b43714e..c2ad516a0 100644
--- a/material/plugins/social/plugin.py
+++ b/material/plugins/social/plugin.py
@@ -57,8 +57,19 @@ class SocialPluginConfig(Config):
# Options for social cards
cards = opt.Type(bool, default = True)
cards_dir = opt.Type(str, default = "assets/images/social")
- cards_color = opt.Type(dict, default = dict())
- cards_font = opt.Optional(opt.Type(str))
+ cards_layout_options = opt.Type(dict, default = {})
+
+ # Deprecated options
+ cards_color = opt.Deprecated(
+ option_type = opt.Type(dict, default = {}),
+ message =
+ "Deprecated, use 'cards_layout_options.background_color' "
+ "and 'cards_layout_options.color' with 'default' layout"
+ )
+ cards_font = opt.Deprecated(
+ option_type = opt.Type(str),
+ message = "Deprecated, use 'cards_layout_options.font_family'"
+ )
# -----------------------------------------------------------------------------
@@ -67,6 +78,7 @@ class SocialPlugin(BasePlugin[SocialPluginConfig]):
def __init__(self):
self._executor = concurrent.futures.ThreadPoolExecutor(4)
+ self.custom_dir = None
# Retrieve configuration
def on_config(self, config):
@@ -74,6 +86,24 @@ class SocialPlugin(BasePlugin[SocialPluginConfig]):
if not self.config.cards:
return
+ # Move color options
+ if "cards_color" in self.config:
+
+ # Move background color to new option
+ value = self.config.cards_color.get("fill")
+ if value:
+ self.config.cards_layout_options["background_color"] = value
+
+ # Move color to new option
+ value = self.config.cards_color.get("text")
+ if value:
+ self.config.cards_layout_options["color"] = value
+
+ # Move font family to new option
+ if "cards_font" in self.config:
+ value = self.config.cards_font
+ self.config.cards_layout_options["font_family"] = value
+
# Check if required dependencies are installed
if not dependencies:
log.error(
@@ -109,7 +139,18 @@ class SocialPlugin(BasePlugin[SocialPluginConfig]):
self.color = colors.get(primary, self.color)
# Retrieve color overrides
- self.color = { **self.color, **self.config.cards_color }
+ options = self.config.cards_layout_options
+ self.color = {
+ "fill": options.get("background_color", self.color["fill"]),
+ "text": options.get("color", self.color["text"])
+ }
+
+ # Retrieve custom_dir path
+ for user_config in config.user_configs:
+ custom_dir = user_config.get("theme", {}).get("custom_dir")
+ if custom_dir:
+ self.custom_dir = custom_dir
+ break
# Retrieve logo and font
self._resized_logo_promise = self._executor.submit(self._load_resized_logo, config)
@@ -343,8 +384,15 @@ class SocialPlugin(BasePlugin[SocialPluginConfig]):
if "logo" in theme:
_, extension = os.path.splitext(theme["logo"])
- # Load SVG and convert to PNG
path = os.path.join(config.docs_dir, theme["logo"])
+
+ # Allow users to put the logo inside their custom_dir (theme["logo"] case)
+ if self.custom_dir:
+ custom_dir_logo = os.path.join(self.custom_dir, theme["logo"])
+ if os.path.exists(custom_dir_logo):
+ path = custom_dir_logo
+
+ # Load SVG and convert to PNG
if extension == ".svg":
return self._load_logo_svg(path)
@@ -352,10 +400,11 @@ class SocialPlugin(BasePlugin[SocialPluginConfig]):
return Image.open(path).convert("RGBA")
# Handle icons
- logo = "material/library"
icon = theme["icon"] or {}
if "logo" in icon and icon["logo"]:
logo = icon["logo"]
+ else:
+ logo = "material/library"
# Resolve path of package
base = os.path.abspath(os.path.join(
@@ -363,8 +412,15 @@ class SocialPlugin(BasePlugin[SocialPluginConfig]):
"../.."
))
- # Load icon data and fill with color
path = f"{base}/.icons/{logo}.svg"
+
+ # Allow users to put the logo inside their custom_dir (theme["icon"]["logo"] case)
+ if self.custom_dir:
+ custom_dir_logo = os.path.join(self.custom_dir, ".icons", f"{logo}.svg")
+ if os.path.exists(custom_dir_logo):
+ path = custom_dir_logo
+
+ # Load icon data and fill with color
return self._load_logo_svg(path, self.color["text"])
# Load SVG file and convert to PNG
@@ -382,28 +438,41 @@ class SocialPlugin(BasePlugin[SocialPluginConfig]):
# Retrieve font
def _load_font(self, config):
- name = self.config.cards_font
+ name = self.config.cards_layout_options.get("font_family")
if not name:
# Retrieve from theme (default: Roboto)
theme = config.theme
- if theme["font"]:
+ if isinstance(theme["font"], dict) and "text" in theme["font"]:
name = theme["font"]["text"]
else:
name = "Roboto"
- # Retrieve font files, if not already done
- files = os.listdir(self.cache)
- files = [file for file in files if file.endswith(".ttf") or file.endswith(".otf")] or (
- self._load_font_from_google(name)
- )
+ # Google fonts can return varients like OpenSans_Condensed-Regular.ttf so
+ # we only use the font requested e.g. OpenSans-Regular.ttf
+ font_filename_base = name.replace(' ', '')
+ filename_regex = re.escape(font_filename_base)+r"-(\w+)\.[ot]tf$"
- # Map available font weights to file paths
font = dict()
- for file in files:
- match = re.search(r"-(\w+)\.[ot]tf$", file)
- if match:
- font[match.group(1)] = os.path.join(self.cache, file)
+ # Check for cached files - note these may be in subfolders
+ for currentpath, folders, files in os.walk(self.cache):
+ for file in files:
+ # Map available font weights to file paths
+ fname = os.path.join(currentpath, file)
+ match = re.search(filename_regex, fname)
+ if match:
+ font[match.group(1)] = fname
+
+ # If none found, fetch from Google and try again
+ if len(font) == 0:
+ self._load_font_from_google(name)
+ for currentpath, folders, files in os.walk(self.cache):
+ for file in files:
+ # Map available font weights to file paths
+ fname = os.path.join(currentpath, file)
+ match = re.search(filename_regex, fname)
+ if match:
+ font[match.group(1)] = fname
# Return available font weights with fallback
return defaultdict(lambda: font["Regular"], font)
diff --git a/mkdocs.yml b/mkdocs.yml
index 25f00ac59..440c64bae 100755
--- a/mkdocs.yml
+++ b/mkdocs.yml
@@ -24,7 +24,7 @@ site_url: https://squidfunk.github.io/mkdocs-material/
site_author: Martin Donath
site_description: >-
Write your documentation in Markdown and create a professional static site in
- minutes – searchable, customizable, for all devices
+ minutes – searchable, customizable, in 60+ languages, for all devices
# Repository
repo_name: squidfunk/mkdocs-material
diff --git a/package-lock.json b/package-lock.json
index a975e526f..ea8fb1319 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,12 +1,12 @@
{
"name": "mkdocs-material",
- "version": "9.1.8",
+ "version": "9.1.12",
"lockfileVersion": 2,
"requires": true,
"packages": {
"": {
"name": "mkdocs-material",
- "version": "9.1.8",
+ "version": "9.1.12",
"license": "MIT",
"dependencies": {
"array-flat-polyfill": "^1.0.1",
@@ -16,34 +16,34 @@
"fuzzaldrin-plus": "^0.6.0",
"iframe-worker": "^1.0.3",
"lunr": "^2.3.9",
- "lunr-languages": "^1.10.0",
+ "lunr-languages": "^1.12.0",
"resize-observer-polyfill": "^1.5.1",
- "rxjs": "^7.8.0",
+ "rxjs": "^7.8.1",
"unfetch": "^5.0.0",
"url-polyfill": "^1.1.12"
},
"devDependencies": {
"@fortawesome/fontawesome-free": "^6.4.0",
"@mdi/svg": "^7.2.96",
- "@primer/octicons": "^18.3.0",
+ "@primer/octicons": "^19.1.0",
"@types/css-modules": "^1.0.2",
"@types/escape-html": "^1.0.2",
"@types/fuzzaldrin-plus": "^0.6.2",
"@types/html-minifier": "^4.0.2",
"@types/lunr": "^2.3.4",
- "@types/node": "^18.15.11",
+ "@types/node": "^20.1.4",
"@types/resize-observer-browser": "^0.1.7",
"@types/sass": "^1.45.0",
- "@typescript-eslint/eslint-plugin": "^5.59.0",
- "@typescript-eslint/parser": "^5.59.0",
+ "@typescript-eslint/eslint-plugin": "^5.59.5",
+ "@typescript-eslint/parser": "^5.59.5",
"autoprefixer": "^10.4.14",
"chokidar": "^3.5.3",
"cssnano": "5.1.0",
- "esbuild": "^0.17.17",
- "eslint": "^8.38.0",
+ "esbuild": "^0.17.19",
+ "eslint": "^8.40.0",
"eslint-plugin-eslint-comments": "^3.2.0",
"eslint-plugin-import": "^2.27.5",
- "eslint-plugin-jsdoc": "^43.0.0",
+ "eslint-plugin-jsdoc": "^44.2.3",
"eslint-plugin-no-null": "^1.0.2",
"github-types": "^1.0.0",
"gitlab": "^14.2.2",
@@ -51,29 +51,29 @@
"html-minifier": "^4.0.0",
"material-design-color": "^2.3.2",
"material-shadows": "^3.0.1",
- "npm-check-updates": "^16.10.8",
+ "npm-check-updates": "^16.10.12",
"npm-run-all": "^4.1.5",
- "postcss": "^8.4.22",
+ "postcss": "^8.4.23",
"postcss-dir-pseudo-class": "^7.0.2",
"postcss-inline-svg": "^6.0.0",
"postcss-logical": "5.0.4",
"postcss-pseudo-is": "^0.3.0",
- "preact": "^10.13.2",
+ "preact": "^10.14.0",
"rimraf": "^5.0.0",
- "sass": "^1.62.0",
- "simple-icons": "^8.10.0",
- "stylelint": "^15.5.0",
+ "sass": "^1.62.1",
+ "simple-icons": "^8.13.0",
+ "stylelint": "^15.6.1",
"stylelint-config-recess-order": "^4.0.0",
"stylelint-config-recommended": "^12.0.0",
- "stylelint-config-standard-scss": "^8.0.0",
- "stylelint-scss": "^4.6.0",
+ "stylelint-config-standard-scss": "^9.0.0",
+ "stylelint-scss": "^5.0.0",
"svgo": "3.0.0",
"tiny-glob": "^0.2.9",
"ts-node": "^10.9.1",
"typescript": "^5.0.4"
},
"engines": {
- "node": ">= 16"
+ "node": ">= 18"
}
},
"node_modules/@babel/code-frame": {
@@ -196,23 +196,23 @@
}
},
"node_modules/@es-joy/jsdoccomment": {
- "version": "0.37.0",
- "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.37.0.tgz",
- "integrity": "sha512-hjK0wnsPCYLlF+HHB4R/RbUjOWeLW2SlarB67+Do5WsKILOkmIZvvPJFbtWSmbypxcjpoECLAMzoao0D4Bg5ZQ==",
+ "version": "0.39.3",
+ "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.39.3.tgz",
+ "integrity": "sha512-q6pObzaS+aTA96kl4DF91QILNpSiDE8S89cQdJnhIc7hWzwIHPnfBnsiBVa0Z/R9pLHdZTnXEMnggGMmCq7HmA==",
"dev": true,
"dependencies": {
"comment-parser": "1.3.1",
- "esquery": "^1.4.0",
+ "esquery": "^1.5.0",
"jsdoc-type-pratt-parser": "~4.0.0"
},
"engines": {
- "node": "^14 || ^16 || ^17 || ^18 || ^19"
+ "node": ">=16"
}
},
"node_modules/@esbuild/android-arm": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.17.17.tgz",
- "integrity": "sha512-E6VAZwN7diCa3labs0GYvhEPL2M94WLF8A+czO8hfjREXxba8Ng7nM5VxV+9ihNXIY1iQO1XxUU4P7hbqbICxg==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.17.19.tgz",
+ "integrity": "sha512-rIKddzqhmav7MSmoFCmDIb6e2W57geRsM94gV2l38fzhXMwq7hZoClug9USI2pFRGL06f4IOPHHpFNOkWieR8A==",
"cpu": [
"arm"
],
@@ -226,9 +226,9 @@
}
},
"node_modules/@esbuild/android-arm64": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.17.17.tgz",
- "integrity": "sha512-jaJ5IlmaDLFPNttv0ofcwy/cfeY4bh/n705Tgh+eLObbGtQBK3EPAu+CzL95JVE4nFAliyrnEu0d32Q5foavqg==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.17.19.tgz",
+ "integrity": "sha512-KBMWvEZooR7+kzY0BtbTQn0OAYY7CsiydT63pVEaPtVYF0hXbUaOyZog37DKxK7NF3XacBJOpYT4adIJh+avxA==",
"cpu": [
"arm64"
],
@@ -242,9 +242,9 @@
}
},
"node_modules/@esbuild/android-x64": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.17.17.tgz",
- "integrity": "sha512-446zpfJ3nioMC7ASvJB1pszHVskkw4u/9Eu8s5yvvsSDTzYh4p4ZIRj0DznSl3FBF0Z/mZfrKXTtt0QCoFmoHA==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.17.19.tgz",
+ "integrity": "sha512-uUTTc4xGNDT7YSArp/zbtmbhO0uEEK9/ETW29Wk1thYUJBz3IVnvgEiEwEa9IeLyvnpKrWK64Utw2bgUmDveww==",
"cpu": [
"x64"
],
@@ -258,9 +258,9 @@
}
},
"node_modules/@esbuild/darwin-arm64": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.17.17.tgz",
- "integrity": "sha512-m/gwyiBwH3jqfUabtq3GH31otL/0sE0l34XKpSIqR7NjQ/XHQ3lpmQHLHbG8AHTGCw8Ao059GvV08MS0bhFIJQ==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.17.19.tgz",
+ "integrity": "sha512-80wEoCfF/hFKM6WE1FyBHc9SfUblloAWx6FJkFWTWiCoht9Mc0ARGEM47e67W9rI09YoUxJL68WHfDRYEAvOhg==",
"cpu": [
"arm64"
],
@@ -274,9 +274,9 @@
}
},
"node_modules/@esbuild/darwin-x64": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.17.17.tgz",
- "integrity": "sha512-4utIrsX9IykrqYaXR8ob9Ha2hAY2qLc6ohJ8c0CN1DR8yWeMrTgYFjgdeQ9LIoTOfLetXjuCu5TRPHT9yKYJVg==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.17.19.tgz",
+ "integrity": "sha512-IJM4JJsLhRYr9xdtLytPLSH9k/oxR3boaUIYiHkAawtwNOXKE8KoU8tMvryogdcT8AU+Bflmh81Xn6Q0vTZbQw==",
"cpu": [
"x64"
],
@@ -290,9 +290,9 @@
}
},
"node_modules/@esbuild/freebsd-arm64": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.17.17.tgz",
- "integrity": "sha512-4PxjQII/9ppOrpEwzQ1b0pXCsFLqy77i0GaHodrmzH9zq2/NEhHMAMJkJ635Ns4fyJPFOlHMz4AsklIyRqFZWA==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.17.19.tgz",
+ "integrity": "sha512-pBwbc7DufluUeGdjSU5Si+P3SoMF5DQ/F/UmTSb8HXO80ZEAJmrykPyzo1IfNbAoaqw48YRpv8shwd1NoI0jcQ==",
"cpu": [
"arm64"
],
@@ -306,9 +306,9 @@
}
},
"node_modules/@esbuild/freebsd-x64": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.17.17.tgz",
- "integrity": "sha512-lQRS+4sW5S3P1sv0z2Ym807qMDfkmdhUYX30GRBURtLTrJOPDpoU0kI6pVz1hz3U0+YQ0tXGS9YWveQjUewAJw==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.17.19.tgz",
+ "integrity": "sha512-4lu+n8Wk0XlajEhbEffdy2xy53dpR06SlzvhGByyg36qJw6Kpfk7cp45DR/62aPH9mtJRmIyrXAS5UWBrJT6TQ==",
"cpu": [
"x64"
],
@@ -322,9 +322,9 @@
}
},
"node_modules/@esbuild/linux-arm": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.17.17.tgz",
- "integrity": "sha512-biDs7bjGdOdcmIk6xU426VgdRUpGg39Yz6sT9Xp23aq+IEHDb/u5cbmu/pAANpDB4rZpY/2USPhCA+w9t3roQg==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.17.19.tgz",
+ "integrity": "sha512-cdmT3KxjlOQ/gZ2cjfrQOtmhG4HJs6hhvm3mWSRDPtZ/lP5oe8FWceS10JaSJC13GBd4eH/haHnqf7hhGNLerA==",
"cpu": [
"arm"
],
@@ -338,9 +338,9 @@
}
},
"node_modules/@esbuild/linux-arm64": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.17.17.tgz",
- "integrity": "sha512-2+pwLx0whKY1/Vqt8lyzStyda1v0qjJ5INWIe+d8+1onqQxHLLi3yr5bAa4gvbzhZqBztifYEu8hh1La5+7sUw==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.17.19.tgz",
+ "integrity": "sha512-ct1Tg3WGwd3P+oZYqic+YZF4snNl2bsnMKRkb3ozHmnM0dGWuxcPTTntAF6bOP0Sp4x0PjSF+4uHQ1xvxfRKqg==",
"cpu": [
"arm64"
],
@@ -354,9 +354,9 @@
}
},
"node_modules/@esbuild/linux-ia32": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.17.17.tgz",
- "integrity": "sha512-IBTTv8X60dYo6P2t23sSUYym8fGfMAiuv7PzJ+0LcdAndZRzvke+wTVxJeCq4WgjppkOpndL04gMZIFvwoU34Q==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.17.19.tgz",
+ "integrity": "sha512-w4IRhSy1VbsNxHRQpeGCHEmibqdTUx61Vc38APcsRbuVgK0OPEnQ0YD39Brymn96mOx48Y2laBQGqgZ0j9w6SQ==",
"cpu": [
"ia32"
],
@@ -370,9 +370,9 @@
}
},
"node_modules/@esbuild/linux-loong64": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.17.17.tgz",
- "integrity": "sha512-WVMBtcDpATjaGfWfp6u9dANIqmU9r37SY8wgAivuKmgKHE+bWSuv0qXEFt/p3qXQYxJIGXQQv6hHcm7iWhWjiw==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.17.19.tgz",
+ "integrity": "sha512-2iAngUbBPMq439a+z//gE+9WBldoMp1s5GWsUSgqHLzLJ9WoZLZhpwWuym0u0u/4XmZ3gpHmzV84PonE+9IIdQ==",
"cpu": [
"loong64"
],
@@ -386,9 +386,9 @@
}
},
"node_modules/@esbuild/linux-mips64el": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.17.17.tgz",
- "integrity": "sha512-2kYCGh8589ZYnY031FgMLy0kmE4VoGdvfJkxLdxP4HJvWNXpyLhjOvxVsYjYZ6awqY4bgLR9tpdYyStgZZhi2A==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.17.19.tgz",
+ "integrity": "sha512-LKJltc4LVdMKHsrFe4MGNPp0hqDFA1Wpt3jE1gEyM3nKUvOiO//9PheZZHfYRfYl6AwdTH4aTcXSqBerX0ml4A==",
"cpu": [
"mips64el"
],
@@ -402,9 +402,9 @@
}
},
"node_modules/@esbuild/linux-ppc64": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.17.17.tgz",
- "integrity": "sha512-KIdG5jdAEeAKogfyMTcszRxy3OPbZhq0PPsW4iKKcdlbk3YE4miKznxV2YOSmiK/hfOZ+lqHri3v8eecT2ATwQ==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.17.19.tgz",
+ "integrity": "sha512-/c/DGybs95WXNS8y3Ti/ytqETiW7EU44MEKuCAcpPto3YjQbyK3IQVKfF6nbghD7EcLUGl0NbiL5Rt5DMhn5tg==",
"cpu": [
"ppc64"
],
@@ -418,9 +418,9 @@
}
},
"node_modules/@esbuild/linux-riscv64": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.17.17.tgz",
- "integrity": "sha512-Cj6uWLBR5LWhcD/2Lkfg2NrkVsNb2sFM5aVEfumKB2vYetkA/9Uyc1jVoxLZ0a38sUhFk4JOVKH0aVdPbjZQeA==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.17.19.tgz",
+ "integrity": "sha512-FC3nUAWhvFoutlhAkgHf8f5HwFWUL6bYdvLc/TTuxKlvLi3+pPzdZiFKSWz/PF30TB1K19SuCxDTI5KcqASJqA==",
"cpu": [
"riscv64"
],
@@ -434,9 +434,9 @@
}
},
"node_modules/@esbuild/linux-s390x": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.17.17.tgz",
- "integrity": "sha512-lK+SffWIr0XsFf7E0srBjhpkdFVJf3HEgXCwzkm69kNbRar8MhezFpkIwpk0qo2IOQL4JE4mJPJI8AbRPLbuOQ==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.17.19.tgz",
+ "integrity": "sha512-IbFsFbxMWLuKEbH+7sTkKzL6NJmG2vRyy6K7JJo55w+8xDk7RElYn6xvXtDW8HCfoKBFK69f3pgBJSUSQPr+4Q==",
"cpu": [
"s390x"
],
@@ -450,9 +450,9 @@
}
},
"node_modules/@esbuild/linux-x64": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.17.17.tgz",
- "integrity": "sha512-XcSGTQcWFQS2jx3lZtQi7cQmDYLrpLRyz1Ns1DzZCtn898cWfm5Icx/DEWNcTU+T+tyPV89RQtDnI7qL2PObPg==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.17.19.tgz",
+ "integrity": "sha512-68ngA9lg2H6zkZcyp22tsVt38mlhWde8l3eJLWkyLrp4HwMUr3c1s/M2t7+kHIhvMjglIBrFpncX1SzMckomGw==",
"cpu": [
"x64"
],
@@ -466,9 +466,9 @@
}
},
"node_modules/@esbuild/netbsd-x64": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.17.17.tgz",
- "integrity": "sha512-RNLCDmLP5kCWAJR+ItLM3cHxzXRTe4N00TQyQiimq+lyqVqZWGPAvcyfUBM0isE79eEZhIuGN09rAz8EL5KdLA==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.17.19.tgz",
+ "integrity": "sha512-CwFq42rXCR8TYIjIfpXCbRX0rp1jo6cPIUPSaWwzbVI4aOfX96OXY8M6KNmtPcg7QjYeDmN+DD0Wp3LaBOLf4Q==",
"cpu": [
"x64"
],
@@ -482,9 +482,9 @@
}
},
"node_modules/@esbuild/openbsd-x64": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.17.17.tgz",
- "integrity": "sha512-PAXswI5+cQq3Pann7FNdcpSUrhrql3wKjj3gVkmuz6OHhqqYxKvi6GgRBoaHjaG22HV/ZZEgF9TlS+9ftHVigA==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.17.19.tgz",
+ "integrity": "sha512-cnq5brJYrSZ2CF6c35eCmviIN3k3RczmHz8eYaVlNasVqsNY+JKohZU5MKmaOI+KkllCdzOKKdPs762VCPC20g==",
"cpu": [
"x64"
],
@@ -498,9 +498,9 @@
}
},
"node_modules/@esbuild/sunos-x64": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.17.17.tgz",
- "integrity": "sha512-V63egsWKnx/4V0FMYkr9NXWrKTB5qFftKGKuZKFIrAkO/7EWLFnbBZNM1CvJ6Sis+XBdPws2YQSHF1Gqf1oj/Q==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.17.19.tgz",
+ "integrity": "sha512-vCRT7yP3zX+bKWFeP/zdS6SqdWB8OIpaRq/mbXQxTGHnIxspRtigpkUcDMlSCOejlHowLqII7K2JKevwyRP2rg==",
"cpu": [
"x64"
],
@@ -514,9 +514,9 @@
}
},
"node_modules/@esbuild/win32-arm64": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.17.17.tgz",
- "integrity": "sha512-YtUXLdVnd6YBSYlZODjWzH+KzbaubV0YVd6UxSfoFfa5PtNJNaW+1i+Hcmjpg2nEe0YXUCNF5bkKy1NnBv1y7Q==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.17.19.tgz",
+ "integrity": "sha512-yYx+8jwowUstVdorcMdNlzklLYhPxjniHWFKgRqH7IFlUEa0Umu3KuYplf1HUZZ422e3NU9F4LGb+4O0Kdcaag==",
"cpu": [
"arm64"
],
@@ -530,9 +530,9 @@
}
},
"node_modules/@esbuild/win32-ia32": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.17.17.tgz",
- "integrity": "sha512-yczSLRbDdReCO74Yfc5tKG0izzm+lPMYyO1fFTcn0QNwnKmc3K+HdxZWLGKg4pZVte7XVgcFku7TIZNbWEJdeQ==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.17.19.tgz",
+ "integrity": "sha512-eggDKanJszUtCdlVs0RB+h35wNlb5v4TWEkq4vZcmVt5u/HiDZrTXe2bWFQUez3RgNHwx/x4sk5++4NSSicKkw==",
"cpu": [
"ia32"
],
@@ -546,9 +546,9 @@
}
},
"node_modules/@esbuild/win32-x64": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.17.17.tgz",
- "integrity": "sha512-FNZw7H3aqhF9OyRQbDDnzUApDXfC1N6fgBhkqEO2jvYCJ+DxMTfZVqg3AX0R1khg1wHTBRD5SdcibSJ+XF6bFg==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.17.19.tgz",
+ "integrity": "sha512-lAhycmKnVOuRYNtRtatQR1LPQf2oYCkRGkSFnseDAKPl8lu5SOsK/e1sXe5a0Pc5kHIHe6P2I/ilntNv2xf3cA==",
"cpu": [
"x64"
],
@@ -586,14 +586,14 @@
}
},
"node_modules/@eslint/eslintrc": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.0.2.tgz",
- "integrity": "sha512-3W4f5tDUra+pA+FzgugqL2pRimUTDJWKr7BINqOpkZrC0uYI0NIc0/JFgBROCU07HR6GieA5m3/rsPIhDmCXTQ==",
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.0.3.tgz",
+ "integrity": "sha512-+5gy6OQfk+xx3q0d6jGZZC3f3KzAkXc/IanVxd1is/VIIziRqqt3ongQz0FiTUXqTk0c7aDB3OaFuKnuSoJicQ==",
"dev": true,
"dependencies": {
"ajv": "^6.12.4",
"debug": "^4.3.2",
- "espree": "^9.5.1",
+ "espree": "^9.5.2",
"globals": "^13.19.0",
"ignore": "^5.2.0",
"import-fresh": "^3.2.1",
@@ -609,9 +609,9 @@
}
},
"node_modules/@eslint/js": {
- "version": "8.38.0",
- "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.38.0.tgz",
- "integrity": "sha512-IoD2MfUnOV58ghIHCiil01PcohxjbYR/qCxsoC+xNgUwh1EY8jOOrYmu3d3a71+tJJ23uscEV4X2HJWMsPJu4g==",
+ "version": "8.40.0",
+ "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.40.0.tgz",
+ "integrity": "sha512-ElyB54bJIhXQYVKjDSvCkPO1iU1tSAeVQJbllWJq1XQSmmA4dgFk8CbiBGpiOPxleE48vDogxCtmMYku4HSVLA==",
"dev": true,
"engines": {
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
@@ -666,6 +666,73 @@
"integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==",
"dev": true
},
+ "node_modules/@isaacs/cliui": {
+ "version": "8.0.2",
+ "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz",
+ "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==",
+ "dev": true,
+ "dependencies": {
+ "string-width": "^5.1.2",
+ "string-width-cjs": "npm:string-width@^4.2.0",
+ "strip-ansi": "^7.0.1",
+ "strip-ansi-cjs": "npm:strip-ansi@^6.0.1",
+ "wrap-ansi": "^8.1.0",
+ "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0"
+ },
+ "engines": {
+ "node": ">=12"
+ }
+ },
+ "node_modules/@isaacs/cliui/node_modules/ansi-regex": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz",
+ "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==",
+ "dev": true,
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-regex?sponsor=1"
+ }
+ },
+ "node_modules/@isaacs/cliui/node_modules/emoji-regex": {
+ "version": "9.2.2",
+ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz",
+ "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==",
+ "dev": true
+ },
+ "node_modules/@isaacs/cliui/node_modules/string-width": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz",
+ "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==",
+ "dev": true,
+ "dependencies": {
+ "eastasianwidth": "^0.2.0",
+ "emoji-regex": "^9.2.2",
+ "strip-ansi": "^7.0.1"
+ },
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/@isaacs/cliui/node_modules/strip-ansi": {
+ "version": "7.0.1",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz",
+ "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==",
+ "dev": true,
+ "dependencies": {
+ "ansi-regex": "^6.0.1"
+ },
+ "engines": {
+ "node": ">=12"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/strip-ansi?sponsor=1"
+ }
+ },
"node_modules/@jridgewell/resolve-uri": {
"version": "3.0.7",
"resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.7.tgz",
@@ -745,14 +812,13 @@
}
},
"node_modules/@npmcli/git": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-4.0.3.tgz",
- "integrity": "sha512-8cXNkDIbnXPVbhXMmQ7/bklCAjtmPaXfI9aEM4iH+xSuEHINLMHhlfESvVwdqmHJRJkR48vNJTSUvoF6GRPSFA==",
+ "version": "4.0.4",
+ "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-4.0.4.tgz",
+ "integrity": "sha512-5yZghx+u5M47LghaybLCkdSyFzV/w4OuH12d96HO389Ik9CDsLaDZJVynSGGVJOLn6gy/k7Dz5XYcplM3uxXRg==",
"dev": true,
"dependencies": {
"@npmcli/promise-spawn": "^6.0.0",
"lru-cache": "^7.4.4",
- "mkdirp": "^1.0.4",
"npm-pick-manifest": "^8.0.0",
"proc-log": "^3.0.0",
"promise-inflight": "^1.0.1",
@@ -765,30 +831,18 @@
}
},
"node_modules/@npmcli/git/node_modules/lru-cache": {
- "version": "7.17.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.17.0.tgz",
- "integrity": "sha512-zSxlVVwOabhVyTi6E8gYv2cr6bXK+8ifYz5/uyJb9feXX6NACVDwY4p5Ut3WC3Ivo/QhpARHU3iujx2xGAYHbQ==",
+ "version": "7.18.3",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz",
+ "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==",
"dev": true,
"engines": {
"node": ">=12"
}
},
- "node_modules/@npmcli/git/node_modules/mkdirp": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
- "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
- "dev": true,
- "bin": {
- "mkdirp": "bin/cmd.js"
- },
- "engines": {
- "node": ">=10"
- }
- },
"node_modules/@npmcli/git/node_modules/which": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/which/-/which-3.0.0.tgz",
- "integrity": "sha512-nla//68K9NU6yRiwDY/Q8aU6siKlSs64aEC7+IV56QoAuyQT2ovsJcgGYGyqMOmI/CGN1BOR6mM5EN0FBO+zyQ==",
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz",
+ "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==",
"dev": true,
"dependencies": {
"isexe": "^2.0.0"
@@ -830,18 +884,6 @@
"node": "^12.13.0 || ^14.15.0 || >=16.0.0"
}
},
- "node_modules/@npmcli/move-file/node_modules/mkdirp": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
- "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
- "dev": true,
- "bin": {
- "mkdirp": "bin/cmd.js"
- },
- "engines": {
- "node": ">=10"
- }
- },
"node_modules/@npmcli/move-file/node_modules/rimraf": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
@@ -879,9 +921,9 @@
}
},
"node_modules/@npmcli/promise-spawn/node_modules/which": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/which/-/which-3.0.0.tgz",
- "integrity": "sha512-nla//68K9NU6yRiwDY/Q8aU6siKlSs64aEC7+IV56QoAuyQT2ovsJcgGYGyqMOmI/CGN1BOR6mM5EN0FBO+zyQ==",
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz",
+ "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==",
"dev": true,
"dependencies": {
"isexe": "^2.0.0"
@@ -894,9 +936,9 @@
}
},
"node_modules/@npmcli/run-script": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-6.0.0.tgz",
- "integrity": "sha512-ql+AbRur1TeOdl1FY+RAwGW9fcr4ZwiVKabdvm93mujGREVuVLbdkXRJDrkTXSdCjaxYydr1wlA2v67jxWG5BQ==",
+ "version": "6.0.2",
+ "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-6.0.2.tgz",
+ "integrity": "sha512-NCcr1uQo1k5U+SYlnIrbAh3cxy+OQT1VtqiAbxdymSlptbzBb62AjH2xXgjNCoP073hoa1CfCAcwoZ8k96C4nA==",
"dev": true,
"dependencies": {
"@npmcli/node-gyp": "^3.0.0",
@@ -910,9 +952,9 @@
}
},
"node_modules/@npmcli/run-script/node_modules/which": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/which/-/which-3.0.0.tgz",
- "integrity": "sha512-nla//68K9NU6yRiwDY/Q8aU6siKlSs64aEC7+IV56QoAuyQT2ovsJcgGYGyqMOmI/CGN1BOR6mM5EN0FBO+zyQ==",
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz",
+ "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==",
"dev": true,
"dependencies": {
"isexe": "^2.0.0"
@@ -924,6 +966,16 @@
"node": "^14.17.0 || ^16.13.0 || >=18.0.0"
}
},
+ "node_modules/@pkgjs/parseargs": {
+ "version": "0.11.0",
+ "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz",
+ "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==",
+ "dev": true,
+ "optional": true,
+ "engines": {
+ "node": ">=14"
+ }
+ },
"node_modules/@pnpm/network.ca-file": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/@pnpm/network.ca-file/-/network.ca-file-1.0.1.tgz",
@@ -950,14 +1002,23 @@
}
},
"node_modules/@primer/octicons": {
- "version": "18.3.0",
- "resolved": "https://registry.npmjs.org/@primer/octicons/-/octicons-18.3.0.tgz",
- "integrity": "sha512-vyUej5rKjXfqHAmYSo2k3pA9IsL5KJaYOBVXvc188FwBfUweA+WVP3qwWyZTSQnp9LK6yOajGyr0SCMIa9ombw==",
+ "version": "19.1.0",
+ "resolved": "https://registry.npmjs.org/@primer/octicons/-/octicons-19.1.0.tgz",
+ "integrity": "sha512-5o90F89gNPnAk1qfzl3hb/TcsUjk5g0WFI+fBRHLkBKzB3uc9EvxTpgzjXhhjyriOkrBOjFo58D0sjtwttaQww==",
"dev": true,
"dependencies": {
"object-assign": "^4.1.1"
}
},
+ "node_modules/@sigstore/protobuf-specs": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.1.0.tgz",
+ "integrity": "sha512-a31EnjuIDSX8IXBUib3cYLDRlPMU36AWX4xS8ysLaNu4ZzUesDiPt83pgrW2X1YLMe5L2HbDyaKK5BrL4cNKaQ==",
+ "dev": true,
+ "engines": {
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ }
+ },
"node_modules/@sindresorhus/is": {
"version": "5.3.0",
"resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-5.3.0.tgz",
@@ -1024,6 +1085,52 @@
"integrity": "sha512-eZxlbI8GZscaGS7kkc/trHTT5xgrjH3/1n2JDwusC9iahPKWMRvRjJSAN5mCXviuTGQ/lHnhvv8Q1YTpnfz9gA==",
"dev": true
},
+ "node_modules/@tufjs/canonical-json": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/@tufjs/canonical-json/-/canonical-json-1.0.0.tgz",
+ "integrity": "sha512-QTnf++uxunWvG2z3UFNzAoQPHxnSXOwtaI3iJ+AohhV+5vONuArPjJE7aPXPVXfXJsqrVbZBu9b81AJoSd09IQ==",
+ "dev": true,
+ "engines": {
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@tufjs/models": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-1.0.4.tgz",
+ "integrity": "sha512-qaGV9ltJP0EO25YfFUPhxRVK0evXFIAGicsVXuRim4Ed9cjPxYhNnNJ49SFmbeLgtxpslIkX317IgpfcHPVj/A==",
+ "dev": true,
+ "dependencies": {
+ "@tufjs/canonical-json": "1.0.0",
+ "minimatch": "^9.0.0"
+ },
+ "engines": {
+ "node": "^14.17.0 || ^16.13.0 || >=18.0.0"
+ }
+ },
+ "node_modules/@tufjs/models/node_modules/brace-expansion": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
+ "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+ "dev": true,
+ "dependencies": {
+ "balanced-match": "^1.0.0"
+ }
+ },
+ "node_modules/@tufjs/models/node_modules/minimatch": {
+ "version": "9.0.0",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.0.tgz",
+ "integrity": "sha512-0jJj8AvgKqWN05mrwuqi8QYKx1WmYSUoKSxu5Qhs9prezTz10sxAHGNZe9J9cqIJzta8DWsleh2KaVaLl6Ru2w==",
+ "dev": true,
+ "dependencies": {
+ "brace-expansion": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=16 || 14 >=14.17"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
"node_modules/@types/clean-css": {
"version": "4.2.5",
"resolved": "https://registry.npmjs.org/@types/clean-css/-/clean-css-4.2.5.tgz",
@@ -1094,9 +1201,9 @@
"dev": true
},
"node_modules/@types/node": {
- "version": "18.15.11",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-18.15.11.tgz",
- "integrity": "sha512-E5Kwq2n4SbMzQOn6wnmBjuK9ouqlURrcZDVfbo9ftDDTFt3nk7ZKK4GMOzoYgnpQJKcxwQw+lGaBvvlMo0qN/Q==",
+ "version": "20.1.4",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-20.1.4.tgz",
+ "integrity": "sha512-At4pvmIOki8yuwLtd7BNHl3CiWNbtclUbNtScGx4OHfBd4/oWoJC8KRCIxXwkdndzhxOsPXihrsOoydxBjlE9Q==",
"dev": true
},
"node_modules/@types/normalize-package-data": {
@@ -1128,9 +1235,9 @@
}
},
"node_modules/@types/semver": {
- "version": "7.3.13",
- "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.3.13.tgz",
- "integrity": "sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==",
+ "version": "7.5.0",
+ "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.0.tgz",
+ "integrity": "sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw==",
"dev": true
},
"node_modules/@types/uglify-js": {
@@ -1143,15 +1250,15 @@
}
},
"node_modules/@typescript-eslint/eslint-plugin": {
- "version": "5.59.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.59.0.tgz",
- "integrity": "sha512-p0QgrEyrxAWBecR56gyn3wkG15TJdI//eetInP3zYRewDh0XS+DhB3VUAd3QqvziFsfaQIoIuZMxZRB7vXYaYw==",
+ "version": "5.59.5",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.59.5.tgz",
+ "integrity": "sha512-feA9xbVRWJZor+AnLNAr7A8JRWeZqHUf4T9tlP+TN04b05pFVhO5eN7/O93Y/1OUlLMHKbnJisgDURs/qvtqdg==",
"dev": true,
"dependencies": {
"@eslint-community/regexpp": "^4.4.0",
- "@typescript-eslint/scope-manager": "5.59.0",
- "@typescript-eslint/type-utils": "5.59.0",
- "@typescript-eslint/utils": "5.59.0",
+ "@typescript-eslint/scope-manager": "5.59.5",
+ "@typescript-eslint/type-utils": "5.59.5",
+ "@typescript-eslint/utils": "5.59.5",
"debug": "^4.3.4",
"grapheme-splitter": "^1.0.4",
"ignore": "^5.2.0",
@@ -1177,14 +1284,14 @@
}
},
"node_modules/@typescript-eslint/parser": {
- "version": "5.59.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.59.0.tgz",
- "integrity": "sha512-qK9TZ70eJtjojSUMrrEwA9ZDQ4N0e/AuoOIgXuNBorXYcBDk397D2r5MIe1B3cok/oCtdNC5j+lUUpVB+Dpb+w==",
+ "version": "5.59.5",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.59.5.tgz",
+ "integrity": "sha512-NJXQC4MRnF9N9yWqQE2/KLRSOLvrrlZb48NGVfBa+RuPMN6B7ZcK5jZOvhuygv4D64fRKnZI4L4p8+M+rfeQuw==",
"dev": true,
"dependencies": {
- "@typescript-eslint/scope-manager": "5.59.0",
- "@typescript-eslint/types": "5.59.0",
- "@typescript-eslint/typescript-estree": "5.59.0",
+ "@typescript-eslint/scope-manager": "5.59.5",
+ "@typescript-eslint/types": "5.59.5",
+ "@typescript-eslint/typescript-estree": "5.59.5",
"debug": "^4.3.4"
},
"engines": {
@@ -1204,13 +1311,13 @@
}
},
"node_modules/@typescript-eslint/scope-manager": {
- "version": "5.59.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.59.0.tgz",
- "integrity": "sha512-tsoldKaMh7izN6BvkK6zRMINj4Z2d6gGhO2UsI8zGZY3XhLq1DndP3Ycjhi1JwdwPRwtLMW4EFPgpuKhbCGOvQ==",
+ "version": "5.59.5",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.59.5.tgz",
+ "integrity": "sha512-jVecWwnkX6ZgutF+DovbBJirZcAxgxC0EOHYt/niMROf8p4PwxxG32Qdhj/iIQQIuOflLjNkxoXyArkcIP7C3A==",
"dev": true,
"dependencies": {
- "@typescript-eslint/types": "5.59.0",
- "@typescript-eslint/visitor-keys": "5.59.0"
+ "@typescript-eslint/types": "5.59.5",
+ "@typescript-eslint/visitor-keys": "5.59.5"
},
"engines": {
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
@@ -1221,13 +1328,13 @@
}
},
"node_modules/@typescript-eslint/type-utils": {
- "version": "5.59.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.59.0.tgz",
- "integrity": "sha512-d/B6VSWnZwu70kcKQSCqjcXpVH+7ABKH8P1KNn4K7j5PXXuycZTPXF44Nui0TEm6rbWGi8kc78xRgOC4n7xFgA==",
+ "version": "5.59.5",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.59.5.tgz",
+ "integrity": "sha512-4eyhS7oGym67/pSxA2mmNq7X164oqDYNnZCUayBwJZIRVvKpBCMBzFnFxjeoDeShjtO6RQBHBuwybuX3POnDqg==",
"dev": true,
"dependencies": {
- "@typescript-eslint/typescript-estree": "5.59.0",
- "@typescript-eslint/utils": "5.59.0",
+ "@typescript-eslint/typescript-estree": "5.59.5",
+ "@typescript-eslint/utils": "5.59.5",
"debug": "^4.3.4",
"tsutils": "^3.21.0"
},
@@ -1248,9 +1355,9 @@
}
},
"node_modules/@typescript-eslint/types": {
- "version": "5.59.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.59.0.tgz",
- "integrity": "sha512-yR2h1NotF23xFFYKHZs17QJnB51J/s+ud4PYU4MqdZbzeNxpgUr05+dNeCN/bb6raslHvGdd6BFCkVhpPk/ZeA==",
+ "version": "5.59.5",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.59.5.tgz",
+ "integrity": "sha512-xkfRPHbqSH4Ggx4eHRIO/eGL8XL4Ysb4woL8c87YuAo8Md7AUjyWKa9YMwTL519SyDPrfEgKdewjkxNCVeJW7w==",
"dev": true,
"engines": {
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
@@ -1261,13 +1368,13 @@
}
},
"node_modules/@typescript-eslint/typescript-estree": {
- "version": "5.59.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.59.0.tgz",
- "integrity": "sha512-sUNnktjmI8DyGzPdZ8dRwW741zopGxltGs/SAPgGL/AAgDpiLsCFLcMNSpbfXfmnNeHmK9h3wGmCkGRGAoUZAg==",
+ "version": "5.59.5",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.59.5.tgz",
+ "integrity": "sha512-+XXdLN2CZLZcD/mO7mQtJMvCkzRfmODbeSKuMY/yXbGkzvA9rJyDY5qDYNoiz2kP/dmyAxXquL2BvLQLJFPQIg==",
"dev": true,
"dependencies": {
- "@typescript-eslint/types": "5.59.0",
- "@typescript-eslint/visitor-keys": "5.59.0",
+ "@typescript-eslint/types": "5.59.5",
+ "@typescript-eslint/visitor-keys": "5.59.5",
"debug": "^4.3.4",
"globby": "^11.1.0",
"is-glob": "^4.0.3",
@@ -1288,17 +1395,17 @@
}
},
"node_modules/@typescript-eslint/utils": {
- "version": "5.59.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.59.0.tgz",
- "integrity": "sha512-GGLFd+86drlHSvPgN/el6dRQNYYGOvRSDVydsUaQluwIW3HvbXuxyuD5JETvBt/9qGYe+lOrDk6gRrWOHb/FvA==",
+ "version": "5.59.5",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.59.5.tgz",
+ "integrity": "sha512-sCEHOiw+RbyTii9c3/qN74hYDPNORb8yWCoPLmB7BIflhplJ65u2PBpdRla12e3SSTJ2erRkPjz7ngLHhUegxA==",
"dev": true,
"dependencies": {
"@eslint-community/eslint-utils": "^4.2.0",
"@types/json-schema": "^7.0.9",
"@types/semver": "^7.3.12",
- "@typescript-eslint/scope-manager": "5.59.0",
- "@typescript-eslint/types": "5.59.0",
- "@typescript-eslint/typescript-estree": "5.59.0",
+ "@typescript-eslint/scope-manager": "5.59.5",
+ "@typescript-eslint/types": "5.59.5",
+ "@typescript-eslint/typescript-estree": "5.59.5",
"eslint-scope": "^5.1.1",
"semver": "^7.3.7"
},
@@ -1314,12 +1421,12 @@
}
},
"node_modules/@typescript-eslint/visitor-keys": {
- "version": "5.59.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.59.0.tgz",
- "integrity": "sha512-qZ3iXxQhanchCeaExlKPV3gDQFxMUmU35xfd5eCXB6+kUw1TUAbIy2n7QIrwz9s98DQLzNWyHp61fY0da4ZcbA==",
+ "version": "5.59.5",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.59.5.tgz",
+ "integrity": "sha512-qL+Oz+dbeBRTeyJTIy0eniD3uvqU7x+y1QceBismZ41hd4aBSRh8UAw4pZP0+XzLuPZmx4raNMq/I+59W2lXKA==",
"dev": true,
"dependencies": {
- "@typescript-eslint/types": "5.59.0",
+ "@typescript-eslint/types": "5.59.5",
"eslint-visitor-keys": "^3.3.0"
},
"engines": {
@@ -1391,13 +1498,13 @@
}
},
"node_modules/agentkeepalive": {
- "version": "4.2.1",
- "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.2.1.tgz",
- "integrity": "sha512-Zn4cw2NEqd+9fiSVWMscnjyQ1a8Yfoc5oBajLeo5w+YBHgDUcEBY2hS4YpTz6iN5f/2zQiktcuM6tS8x1p9dpA==",
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.3.0.tgz",
+ "integrity": "sha512-7Epl1Blf4Sy37j4v9f9FjICCh4+KAQOyXgHEwlyBiAQLbhKdq/i2QQU3amQalS/wPhdPzDXPL5DMR5bkn+YeWg==",
"dev": true,
"dependencies": {
"debug": "^4.1.0",
- "depd": "^1.1.2",
+ "depd": "^2.0.0",
"humanize-ms": "^1.2.1"
},
"engines": {
@@ -1840,21 +1947,20 @@
}
},
"node_modules/cacache": {
- "version": "17.0.4",
- "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.0.4.tgz",
- "integrity": "sha512-Z/nL3gU+zTUjz5pCA5vVjYM8pmaw2kxM7JEiE0fv3w77Wj+sFbi70CrBruUWH0uNcEdvLDixFpgA2JM4F4DBjA==",
+ "version": "17.1.0",
+ "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.1.0.tgz",
+ "integrity": "sha512-hXpFU+Z3AfVmNuiLve1qxWHMq0RSIt5gjCKAHi/M6DktwFwDdAXAtunl1i4WSKaaVcU9IsRvXFg42jTHigcC6Q==",
"dev": true,
"dependencies": {
"@npmcli/fs": "^3.1.0",
"fs-minipass": "^3.0.0",
- "glob": "^8.0.1",
+ "glob": "^10.2.2",
"lru-cache": "^7.7.1",
- "minipass": "^4.0.0",
+ "minipass": "^5.0.0",
"minipass-collect": "^1.0.2",
"minipass-flush": "^1.0.5",
"minipass-pipeline": "^1.2.4",
"p-map": "^4.0.0",
- "promise-inflight": "^1.0.1",
"ssri": "^10.0.0",
"tar": "^6.1.11",
"unique-filename": "^3.0.0"
@@ -1873,43 +1979,49 @@
}
},
"node_modules/cacache/node_modules/glob": {
- "version": "8.1.0",
- "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz",
- "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==",
+ "version": "10.2.3",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-10.2.3.tgz",
+ "integrity": "sha512-Kb4rfmBVE3eQTAimgmeqc2LwSnN0wIOkkUL6HmxEFxNJ4fHghYHVbFba/HcGcRjE6s9KoMNK3rSOwkL4PioZjg==",
"dev": true,
"dependencies": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^5.0.1",
- "once": "^1.3.0"
+ "foreground-child": "^3.1.0",
+ "jackspeak": "^2.0.3",
+ "minimatch": "^9.0.0",
+ "minipass": "^5.0.0",
+ "path-scurry": "^1.7.0"
+ },
+ "bin": {
+ "glob": "dist/cjs/src/bin.js"
},
"engines": {
- "node": ">=12"
+ "node": ">=16 || 14 >=14.17"
},
"funding": {
"url": "https://github.com/sponsors/isaacs"
}
},
"node_modules/cacache/node_modules/lru-cache": {
- "version": "7.17.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.17.0.tgz",
- "integrity": "sha512-zSxlVVwOabhVyTi6E8gYv2cr6bXK+8ifYz5/uyJb9feXX6NACVDwY4p5Ut3WC3Ivo/QhpARHU3iujx2xGAYHbQ==",
+ "version": "7.18.3",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz",
+ "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==",
"dev": true,
"engines": {
"node": ">=12"
}
},
"node_modules/cacache/node_modules/minimatch": {
- "version": "5.1.6",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz",
- "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==",
+ "version": "9.0.0",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.0.tgz",
+ "integrity": "sha512-0jJj8AvgKqWN05mrwuqi8QYKx1WmYSUoKSxu5Qhs9prezTz10sxAHGNZe9J9cqIJzta8DWsleh2KaVaLl6Ru2w==",
"dev": true,
"dependencies": {
"brace-expansion": "^2.0.1"
},
"engines": {
- "node": ">=10"
+ "node": ">=16 || 14 >=14.17"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
}
},
"node_modules/cacheable-lookup": {
@@ -2783,12 +2895,12 @@
"dev": true
},
"node_modules/depd": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz",
- "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==",
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz",
+ "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==",
"dev": true,
"engines": {
- "node": ">= 0.6"
+ "node": ">= 0.8"
}
},
"node_modules/diff": {
@@ -2812,12 +2924,6 @@
"node": ">=8"
}
},
- "node_modules/dlv": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz",
- "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==",
- "dev": true
- },
"node_modules/doctrine": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
@@ -3006,9 +3112,9 @@
}
},
"node_modules/esbuild": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.17.17.tgz",
- "integrity": "sha512-/jUywtAymR8jR4qsa2RujlAF7Krpt5VWi72Q2yuLD4e/hvtNcFQ0I1j8m/bxq238pf3/0KO5yuXNpuLx8BE1KA==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.17.19.tgz",
+ "integrity": "sha512-XQ0jAPFkK/u3LcVRcvVHQcTIqD6E2H1fvZMA5dQPSOWb3suUbWbfbRf94pjc0bNzRYLfIrDRQXr7X+LHIm5oHw==",
"dev": true,
"hasInstallScript": true,
"bin": {
@@ -3018,28 +3124,28 @@
"node": ">=12"
},
"optionalDependencies": {
- "@esbuild/android-arm": "0.17.17",
- "@esbuild/android-arm64": "0.17.17",
- "@esbuild/android-x64": "0.17.17",
- "@esbuild/darwin-arm64": "0.17.17",
- "@esbuild/darwin-x64": "0.17.17",
- "@esbuild/freebsd-arm64": "0.17.17",
- "@esbuild/freebsd-x64": "0.17.17",
- "@esbuild/linux-arm": "0.17.17",
- "@esbuild/linux-arm64": "0.17.17",
- "@esbuild/linux-ia32": "0.17.17",
- "@esbuild/linux-loong64": "0.17.17",
- "@esbuild/linux-mips64el": "0.17.17",
- "@esbuild/linux-ppc64": "0.17.17",
- "@esbuild/linux-riscv64": "0.17.17",
- "@esbuild/linux-s390x": "0.17.17",
- "@esbuild/linux-x64": "0.17.17",
- "@esbuild/netbsd-x64": "0.17.17",
- "@esbuild/openbsd-x64": "0.17.17",
- "@esbuild/sunos-x64": "0.17.17",
- "@esbuild/win32-arm64": "0.17.17",
- "@esbuild/win32-ia32": "0.17.17",
- "@esbuild/win32-x64": "0.17.17"
+ "@esbuild/android-arm": "0.17.19",
+ "@esbuild/android-arm64": "0.17.19",
+ "@esbuild/android-x64": "0.17.19",
+ "@esbuild/darwin-arm64": "0.17.19",
+ "@esbuild/darwin-x64": "0.17.19",
+ "@esbuild/freebsd-arm64": "0.17.19",
+ "@esbuild/freebsd-x64": "0.17.19",
+ "@esbuild/linux-arm": "0.17.19",
+ "@esbuild/linux-arm64": "0.17.19",
+ "@esbuild/linux-ia32": "0.17.19",
+ "@esbuild/linux-loong64": "0.17.19",
+ "@esbuild/linux-mips64el": "0.17.19",
+ "@esbuild/linux-ppc64": "0.17.19",
+ "@esbuild/linux-riscv64": "0.17.19",
+ "@esbuild/linux-s390x": "0.17.19",
+ "@esbuild/linux-x64": "0.17.19",
+ "@esbuild/netbsd-x64": "0.17.19",
+ "@esbuild/openbsd-x64": "0.17.19",
+ "@esbuild/sunos-x64": "0.17.19",
+ "@esbuild/win32-arm64": "0.17.19",
+ "@esbuild/win32-ia32": "0.17.19",
+ "@esbuild/win32-x64": "0.17.19"
}
},
"node_modules/escalade": {
@@ -3078,15 +3184,15 @@
}
},
"node_modules/eslint": {
- "version": "8.38.0",
- "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.38.0.tgz",
- "integrity": "sha512-pIdsD2jwlUGf/U38Jv97t8lq6HpaU/G9NKbYmpWpZGw3LdTNhZLbJePqxOXGB5+JEKfOPU/XLxYxFh03nr1KTg==",
+ "version": "8.40.0",
+ "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.40.0.tgz",
+ "integrity": "sha512-bvR+TsP9EHL3TqNtj9sCNJVAFK3fBN8Q7g5waghxyRsPLIMwL73XSKnZFK0hk/O2ANC+iAoq6PWMQ+IfBAJIiQ==",
"dev": true,
"dependencies": {
"@eslint-community/eslint-utils": "^4.2.0",
"@eslint-community/regexpp": "^4.4.0",
- "@eslint/eslintrc": "^2.0.2",
- "@eslint/js": "8.38.0",
+ "@eslint/eslintrc": "^2.0.3",
+ "@eslint/js": "8.40.0",
"@humanwhocodes/config-array": "^0.11.8",
"@humanwhocodes/module-importer": "^1.0.1",
"@nodelib/fs.walk": "^1.2.8",
@@ -3096,9 +3202,9 @@
"debug": "^4.3.2",
"doctrine": "^3.0.0",
"escape-string-regexp": "^4.0.0",
- "eslint-scope": "^7.1.1",
- "eslint-visitor-keys": "^3.4.0",
- "espree": "^9.5.1",
+ "eslint-scope": "^7.2.0",
+ "eslint-visitor-keys": "^3.4.1",
+ "espree": "^9.5.2",
"esquery": "^1.4.2",
"esutils": "^2.0.2",
"fast-deep-equal": "^3.1.3",
@@ -3259,22 +3365,22 @@
}
},
"node_modules/eslint-plugin-jsdoc": {
- "version": "43.0.0",
- "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-43.0.0.tgz",
- "integrity": "sha512-Z1Ox1MAGcFV7ZNKe5eYIk4ALUtCjo1r4HBMoAYUs+bBKPcHro5A/YDDHOTsQ7zxcuUnm5R9rXCZTvGWcihwZpg==",
+ "version": "44.2.3",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-44.2.3.tgz",
+ "integrity": "sha512-Ut9jL/170sMKRRFX7P7Ecmdc9XkPcANZs00QWG+VeMN/mcs0kzE6mXCmbhB4EUsLtRASLRAasOwVq0GN5r0oKw==",
"dev": true,
"dependencies": {
- "@es-joy/jsdoccomment": "~0.37.0",
+ "@es-joy/jsdoccomment": "~0.39.1",
"are-docs-informative": "^0.0.2",
"comment-parser": "1.3.1",
"debug": "^4.3.4",
"escape-string-regexp": "^4.0.0",
"esquery": "^1.5.0",
- "semver": "^7.3.8",
+ "semver": "^7.5.0",
"spdx-expression-parse": "^3.0.1"
},
"engines": {
- "node": "^14 || ^16 || ^17 || ^18 || ^19"
+ "node": ">=16"
},
"peerDependencies": {
"eslint": "^7.0.0 || ^8.0.0"
@@ -3318,9 +3424,9 @@
}
},
"node_modules/eslint-visitor-keys": {
- "version": "3.4.0",
- "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.0.tgz",
- "integrity": "sha512-HPpKPUBQcAsZOsHAFwTtIKcYlCje62XB7SEAcxjtmW6TD1WVpkS6i6/hOVtTZIl4zGj/mBqpFVGvaDneik+VoQ==",
+ "version": "3.4.1",
+ "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.1.tgz",
+ "integrity": "sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA==",
"dev": true,
"engines": {
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
@@ -3391,9 +3497,9 @@
}
},
"node_modules/eslint/node_modules/eslint-scope": {
- "version": "7.1.1",
- "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz",
- "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==",
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.0.tgz",
+ "integrity": "sha512-DYj5deGlHBfMt15J7rdtyKNq/Nqlv5KfU4iodrQ019XESsRnwXH9KAE0y3cwtUHDo2ob7CypAnCqefh6vioWRw==",
"dev": true,
"dependencies": {
"esrecurse": "^4.3.0",
@@ -3401,6 +3507,9 @@
},
"engines": {
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/eslint"
}
},
"node_modules/eslint/node_modules/estraverse": {
@@ -3495,14 +3604,14 @@
}
},
"node_modules/espree": {
- "version": "9.5.1",
- "resolved": "https://registry.npmjs.org/espree/-/espree-9.5.1.tgz",
- "integrity": "sha512-5yxtHSZXRSW5pvv3hAlXM5+/Oswi1AUFqBmbibKb5s6bp3rGIDkyXU6xCoyuuLhijr4SFwPrXRoZjz0AZDN9tg==",
+ "version": "9.5.2",
+ "resolved": "https://registry.npmjs.org/espree/-/espree-9.5.2.tgz",
+ "integrity": "sha512-7OASN1Wma5fum5SrNhFMAMJxOUAbhyfQ8dQ//PJaJbNw0URTPWqIghHWt1MmAANKhHZIYOHruW4Kw4ruUWOdGw==",
"dev": true,
"dependencies": {
"acorn": "^8.8.0",
"acorn-jsx": "^5.3.2",
- "eslint-visitor-keys": "^3.4.0"
+ "eslint-visitor-keys": "^3.4.1"
},
"engines": {
"node": "^12.22.0 || ^14.17.0 || >=16.0.0"
@@ -3719,6 +3828,34 @@
"is-callable": "^1.1.3"
}
},
+ "node_modules/foreground-child": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz",
+ "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==",
+ "dev": true,
+ "dependencies": {
+ "cross-spawn": "^7.0.0",
+ "signal-exit": "^4.0.1"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/foreground-child/node_modules/signal-exit": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.2.tgz",
+ "integrity": "sha512-MY2/qGx4enyjprQnFaZsHib3Yadh3IXyV2C321GY0pjGfVBu4un0uDJkwgdxqO+Rdx8JMT8IfJIRwbYVz3Ob3Q==",
+ "dev": true,
+ "engines": {
+ "node": ">=14"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
"node_modules/form-data": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz",
@@ -3765,12 +3902,12 @@
}
},
"node_modules/fs-minipass": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.1.tgz",
- "integrity": "sha512-MhaJDcFRTuLidHrIttu0RDGyyXs/IYHVmlcxfLAEFIWjc1vdLAkdwT7Ace2u7DbitWC0toKMl5eJZRYNVreIMw==",
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.2.tgz",
+ "integrity": "sha512-2GAfyfoaCDRrM6jaOS3UsBts8yJ55VioXdWcOL7dK9zdAuKT71+WBA4ifnNYqVjYv+4SsPxjK0JT4yIIn4cA/g==",
"dev": true,
"dependencies": {
- "minipass": "^4.0.0"
+ "minipass": "^5.0.0"
},
"engines": {
"node": "^14.17.0 || ^16.13.0 || >=18.0.0"
@@ -4574,12 +4711,12 @@
}
},
"node_modules/ignore-walk": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-6.0.1.tgz",
- "integrity": "sha512-/c8MxUAqpRccq+LyDOecwF+9KqajueJHh8fz7g3YqjMZt+NSfJzx05zrKiXwa2sKwFCzaiZ5qUVfRj0pmxixEA==",
+ "version": "6.0.3",
+ "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-6.0.3.tgz",
+ "integrity": "sha512-C7FfFoTA+bI10qfeydT8aZbvr91vAEU+2W5BZUlzPec47oNb07SsOfwYrtxuvOYdUApPP/Qlh4DtAO51Ekk2QA==",
"dev": true,
"dependencies": {
- "minimatch": "^6.1.6"
+ "minimatch": "^9.0.0"
},
"engines": {
"node": "^14.17.0 || ^16.13.0 || >=18.0.0"
@@ -4595,15 +4732,15 @@
}
},
"node_modules/ignore-walk/node_modules/minimatch": {
- "version": "6.2.0",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-6.2.0.tgz",
- "integrity": "sha512-sauLxniAmvnhhRjFwPNnJKaPFYyddAgbYdeUpHULtCT/GhzdCx/MDNy+Y40lBxTQUrMzDE8e0S43Z5uqfO0REg==",
+ "version": "9.0.0",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.0.tgz",
+ "integrity": "sha512-0jJj8AvgKqWN05mrwuqi8QYKx1WmYSUoKSxu5Qhs9prezTz10sxAHGNZe9J9cqIJzta8DWsleh2KaVaLl6Ru2w==",
"dev": true,
"dependencies": {
"brace-expansion": "^2.0.1"
},
"engines": {
- "node": ">=10"
+ "node": ">=16 || 14 >=14.17"
},
"funding": {
"url": "https://github.com/sponsors/isaacs"
@@ -5060,6 +5197,24 @@
"integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=",
"dev": true
},
+ "node_modules/jackspeak": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.2.0.tgz",
+ "integrity": "sha512-r5XBrqIJfwRIjRt/Xr5fv9Wh09qyhHfKnYddDlpM+ibRR20qrYActpCAgU6U+d53EOEjzkvxPMVHSlgR7leXrQ==",
+ "dev": true,
+ "dependencies": {
+ "@isaacs/cliui": "^8.0.2"
+ },
+ "engines": {
+ "node": ">=14"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ },
+ "optionalDependencies": {
+ "@pkgjs/parseargs": "^0.11.0"
+ }
+ },
"node_modules/jju": {
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/jju/-/jju-1.4.0.tgz",
@@ -5368,9 +5523,9 @@
"integrity": "sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow=="
},
"node_modules/lunr-languages": {
- "version": "1.10.0",
- "resolved": "https://registry.npmjs.org/lunr-languages/-/lunr-languages-1.10.0.tgz",
- "integrity": "sha512-BBjKKcwrieJlzwwc9M5H/MRXGJ2qyOSDx/NXYiwkuKjiLOOoouh0WsDzeqcLoUWcX31y7i8sb8IgsZKObdUCkw=="
+ "version": "1.12.0",
+ "resolved": "https://registry.npmjs.org/lunr-languages/-/lunr-languages-1.12.0.tgz",
+ "integrity": "sha512-C2z02jt74ymrDocBwxYB4Cr1LNZj9rHGLTH/00+JuoT6eJOSSuPBzeqQG8kjnlPUQe+/PAWv1/KHbDT+YYYRnA=="
},
"node_modules/make-error": {
"version": "1.3.6",
@@ -5488,9 +5643,9 @@
}
},
"node_modules/make-fetch-happen/node_modules/lru-cache": {
- "version": "7.17.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.17.0.tgz",
- "integrity": "sha512-zSxlVVwOabhVyTi6E8gYv2cr6bXK+8ifYz5/uyJb9feXX6NACVDwY4p5Ut3WC3Ivo/QhpARHU3iujx2xGAYHbQ==",
+ "version": "7.18.3",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz",
+ "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==",
"dev": true,
"engines": {
"node": ">=12"
@@ -5520,18 +5675,6 @@
"node": ">=8"
}
},
- "node_modules/make-fetch-happen/node_modules/mkdirp": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
- "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
- "dev": true,
- "bin": {
- "mkdirp": "bin/cmd.js"
- },
- "engines": {
- "node": ">=10"
- }
- },
"node_modules/make-fetch-happen/node_modules/rimraf": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
@@ -5845,9 +5988,9 @@
}
},
"node_modules/minipass": {
- "version": "4.2.4",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.4.tgz",
- "integrity": "sha512-lwycX3cBMTvcejsHITUgYj6Gy6A7Nh4Q6h9NP4sTHY1ccJlC7yKzDmiShEHsJ16Jf1nKGDEaiHxiltsJEvk0nQ==",
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz",
+ "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==",
"dev": true,
"engines": {
"node": ">=8"
@@ -6025,6 +6168,18 @@
"node": ">=8"
}
},
+ "node_modules/mkdirp": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
+ "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
+ "dev": true,
+ "bin": {
+ "mkdirp": "bin/cmd.js"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
"node_modules/ms": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
@@ -6235,9 +6390,9 @@
}
},
"node_modules/npm-check-updates": {
- "version": "16.10.8",
- "resolved": "https://registry.npmjs.org/npm-check-updates/-/npm-check-updates-16.10.8.tgz",
- "integrity": "sha512-e+p3rUCvaU0iKOvi+/Xiyx+mLe9/aRTu9Zrc7+TR6H2q+uFgmXEwqbXYN9Ngqsta8gdTjpn751UD5MEOogO5cA==",
+ "version": "16.10.12",
+ "resolved": "https://registry.npmjs.org/npm-check-updates/-/npm-check-updates-16.10.12.tgz",
+ "integrity": "sha512-js/Gg9+5RTyOQZnmFcPswLxf4sK/H5AE/8bl4tkleLJTC1gXhQqqELUFwXqppNvx488aXxN52ZY9k9MSSvEW2A==",
"dev": true,
"dependencies": {
"chalk": "^5.2.0",
@@ -6254,7 +6409,7 @@
"json-parse-helpfulerror": "^1.0.3",
"jsonlines": "^0.1.1",
"lodash": "^4.17.21",
- "minimatch": "^8.0.3",
+ "minimatch": "^9.0.0",
"p-map": "^4.0.0",
"pacote": "15.1.1",
"parse-github-url": "^1.0.2",
@@ -6262,8 +6417,8 @@
"prompts-ncu": "^3.0.0",
"rc-config-loader": "^4.1.2",
"remote-git-tags": "^3.0.0",
- "rimraf": "^4.4.1",
- "semver": "^7.3.8",
+ "rimraf": "^5.0.0",
+ "semver": "^7.4.0",
"semver-utils": "^1.1.4",
"source-map-support": "^0.5.21",
"spawn-please": "^2.0.1",
@@ -6301,9 +6456,9 @@
}
},
"node_modules/npm-check-updates/node_modules/commander": {
- "version": "10.0.0",
- "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.0.tgz",
- "integrity": "sha512-zS5PnTI22FIRM6ylNW8G4Ap0IEOyk62fhLSD0+uHRT9McRCLGpkVNvao4bjimpK/GShynyQkFFxHhwMcETmduA==",
+ "version": "10.0.1",
+ "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz",
+ "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==",
"dev": true,
"engines": {
"node": ">=14"
@@ -6325,24 +6480,6 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/npm-check-updates/node_modules/glob": {
- "version": "9.3.5",
- "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.5.tgz",
- "integrity": "sha512-e1LleDykUz2Iu+MTYdkSsuWX8lvAjAcs0Xef0lNIu0S2wOAzuTxCJtcd9S3cijlwYF18EsU3rzb8jPVobxDh9Q==",
- "dev": true,
- "dependencies": {
- "fs.realpath": "^1.0.0",
- "minimatch": "^8.0.2",
- "minipass": "^4.2.4",
- "path-scurry": "^1.6.1"
- },
- "engines": {
- "node": ">=16 || 14 >=14.17"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
"node_modules/npm-check-updates/node_modules/hosted-git-info": {
"version": "5.1.0",
"resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-5.1.0.tgz",
@@ -6356,9 +6493,9 @@
}
},
"node_modules/npm-check-updates/node_modules/ini": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/ini/-/ini-4.0.0.tgz",
- "integrity": "sha512-t0ikzf5qkSFqRl1e6ejKBe+Tk2bsQd8ivEkcisyGXsku2t8NvXZ1Y3RRz5vxrDgOrTBOi13CvGsVoI5wVpd7xg==",
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.0.tgz",
+ "integrity": "sha512-HLR38RSF2iulAzc3I/sma4CoYxQP844rPYCNfzGDOHqa/YqVlwuuZgBx6M50/X8dKgzk0cm1qRg3+47mK2N+cQ==",
"dev": true,
"engines": {
"node": "^14.17.0 || ^16.13.0 || >=18.0.0"
@@ -6389,9 +6526,9 @@
}
},
"node_modules/npm-check-updates/node_modules/minimatch": {
- "version": "8.0.4",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-8.0.4.tgz",
- "integrity": "sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==",
+ "version": "9.0.0",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.0.tgz",
+ "integrity": "sha512-0jJj8AvgKqWN05mrwuqi8QYKx1WmYSUoKSxu5Qhs9prezTz10sxAHGNZe9J9cqIJzta8DWsleh2KaVaLl6Ru2w==",
"dev": true,
"dependencies": {
"brace-expansion": "^2.0.1"
@@ -6442,24 +6579,6 @@
"node": ">=8"
}
},
- "node_modules/npm-check-updates/node_modules/rimraf": {
- "version": "4.4.1",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-4.4.1.tgz",
- "integrity": "sha512-Gk8NlF062+T9CqNGn6h4tls3k6T1+/nXdOcSZVikNVtlRdYpA7wRJJMoXmuvOnLW844rPjdQ7JgXCYM6PPC/og==",
- "dev": true,
- "dependencies": {
- "glob": "^9.2.0"
- },
- "bin": {
- "rimraf": "dist/cjs/src/bin.js"
- },
- "engines": {
- "node": ">=14"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
"node_modules/npm-check-updates/node_modules/strip-json-comments": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-5.0.0.tgz",
@@ -6473,9 +6592,9 @@
}
},
"node_modules/npm-install-checks": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.0.0.tgz",
- "integrity": "sha512-SBU9oFglRVZnfElwAtF14NivyulDqF1VKqqwNsFW9HDcbHMAPHpRSsVFgKuwFGq/hVvWZExz62Th0kvxn/XE7Q==",
+ "version": "6.1.1",
+ "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.1.1.tgz",
+ "integrity": "sha512-dH3GmQL4vsPtld59cOn8uY0iOqRmqKvV+DLGwNXV/Q7MDgD2QfOADWd/mFXcIE5LVhYYGjA3baz6W9JneqnuCw==",
"dev": true,
"dependencies": {
"semver": "^7.1.1"
@@ -6485,9 +6604,9 @@
}
},
"node_modules/npm-normalize-package-bin": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.0.tgz",
- "integrity": "sha512-g+DPQSkusnk7HYXr75NtzkIP4+N81i3RPsGFidF3DzHd9MT9wWngmqoeg/fnHFz5MNdtG4w03s+QnhewSLTT2Q==",
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.1.tgz",
+ "integrity": "sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ==",
"dev": true,
"engines": {
"node": "^14.17.0 || ^16.13.0 || >=18.0.0"
@@ -6521,9 +6640,9 @@
}
},
"node_modules/npm-package-arg/node_modules/lru-cache": {
- "version": "7.17.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.17.0.tgz",
- "integrity": "sha512-zSxlVVwOabhVyTi6E8gYv2cr6bXK+8ifYz5/uyJb9feXX6NACVDwY4p5Ut3WC3Ivo/QhpARHU3iujx2xGAYHbQ==",
+ "version": "7.18.3",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz",
+ "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==",
"dev": true,
"engines": {
"node": ">=12"
@@ -6557,13 +6676,13 @@
}
},
"node_modules/npm-registry-fetch": {
- "version": "14.0.3",
- "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-14.0.3.tgz",
- "integrity": "sha512-YaeRbVNpnWvsGOjX2wk5s85XJ7l1qQBGAp724h8e2CZFFhMSuw9enom7K1mWVUtvXO1uUSFIAPofQK0pPN0ZcA==",
+ "version": "14.0.5",
+ "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-14.0.5.tgz",
+ "integrity": "sha512-kIDMIo4aBm6xg7jOttupWZamsZRkAqMqwqqbVXnUqstY5+tapvv6bkH/qMR76jdgV+YljEUCyWx3hRYMrJiAgA==",
"dev": true,
"dependencies": {
"make-fetch-happen": "^11.0.0",
- "minipass": "^4.0.0",
+ "minipass": "^5.0.0",
"minipass-fetch": "^3.0.0",
"minipass-json-stream": "^1.0.1",
"minizlib": "^2.1.2",
@@ -6575,18 +6694,18 @@
}
},
"node_modules/npm-registry-fetch/node_modules/lru-cache": {
- "version": "7.17.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.17.0.tgz",
- "integrity": "sha512-zSxlVVwOabhVyTi6E8gYv2cr6bXK+8ifYz5/uyJb9feXX6NACVDwY4p5Ut3WC3Ivo/QhpARHU3iujx2xGAYHbQ==",
+ "version": "7.18.3",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz",
+ "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==",
"dev": true,
"engines": {
"node": ">=12"
}
},
"node_modules/npm-registry-fetch/node_modules/make-fetch-happen": {
- "version": "11.0.3",
- "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.0.3.tgz",
- "integrity": "sha512-oPLh5m10lRNNZDjJ2kP8UpboUx2uFXVaVweVe/lWut4iHWcQEmfqSVJt2ihZsFI8HbpwyyocaXbCAWf0g1ukIA==",
+ "version": "11.1.1",
+ "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz",
+ "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==",
"dev": true,
"dependencies": {
"agentkeepalive": "^4.2.1",
@@ -6596,7 +6715,7 @@
"https-proxy-agent": "^5.0.0",
"is-lambda": "^1.0.1",
"lru-cache": "^7.7.1",
- "minipass": "^4.0.0",
+ "minipass": "^5.0.0",
"minipass-fetch": "^3.0.0",
"minipass-flush": "^1.0.5",
"minipass-pipeline": "^1.2.4",
@@ -6610,12 +6729,12 @@
}
},
"node_modules/npm-registry-fetch/node_modules/minipass-fetch": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.1.tgz",
- "integrity": "sha512-t9/wowtf7DYkwz8cfMSt0rMwiyNIBXf5CKZ3S5ZMqRqMYT0oLTp0x1WorMI9WTwvaPg21r1JbFxJMum8JrLGfw==",
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.3.tgz",
+ "integrity": "sha512-n5ITsTkDqYkYJZjcRWzZt9qnZKCT7nKCosJhHoj7S7zD+BP4jVbWs+odsniw5TA3E0sLomhTKOKjF86wf11PuQ==",
"dev": true,
"dependencies": {
- "minipass": "^4.0.0",
+ "minipass": "^5.0.0",
"minipass-sized": "^1.0.3",
"minizlib": "^2.1.2"
},
@@ -6990,6 +7109,15 @@
"node": "^14.17.0 || ^16.13.0 || >=18.0.0"
}
},
+ "node_modules/pacote/node_modules/minipass": {
+ "version": "4.2.8",
+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.8.tgz",
+ "integrity": "sha512-fNzuVyifolSLFL4NzpF+wEF4qrgqaaKX0haXPQEdQ7NKAN+WecoKMHV09YcuL/DHxrUsYQOK3MiuDf7Ip2OXfQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
"node_modules/param-case": {
"version": "2.1.1",
"resolved": "https://registry.npmjs.org/param-case/-/param-case-2.1.1.tgz",
@@ -7070,9 +7198,9 @@
"dev": true
},
"node_modules/path-scurry": {
- "version": "1.6.4",
- "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.6.4.tgz",
- "integrity": "sha512-Qp/9IHkdNiXJ3/Kon++At2nVpnhRiPq/aSvQN+H3U1WZbvNRK0RIQK/o4HMqPoXjpuGJUEWpHSs6Mnjxqh3TQg==",
+ "version": "1.7.0",
+ "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.7.0.tgz",
+ "integrity": "sha512-UkZUeDjczjYRE495+9thsgcVgsaCPkaw80slmfVFgllxY+IO8ubTsOpFVjDPROBqJdHfVPUFRHPBV/WciOVfWg==",
"dev": true,
"dependencies": {
"lru-cache": "^9.0.0",
@@ -7094,15 +7222,6 @@
"node": ">=16.14"
}
},
- "node_modules/path-scurry/node_modules/minipass": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz",
- "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==",
- "dev": true,
- "engines": {
- "node": ">=8"
- }
- },
"node_modules/path-type": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/path-type/-/path-type-4.0.0.tgz",
@@ -7152,9 +7271,9 @@
}
},
"node_modules/postcss": {
- "version": "8.4.22",
- "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.22.tgz",
- "integrity": "sha512-XseknLAfRHzVWjCEtdviapiBtfLdgyzExD50Rg2ePaucEesyh8Wv4VPdW0nbyDa1ydbrAxV19jvMT4+LFmcNUA==",
+ "version": "8.4.23",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.23.tgz",
+ "integrity": "sha512-bQ3qMcpF6A/YjR55xtoTr0jGOlnPOKAIMdOWiv0EIT6HVPEaJiJB4NLljSbiHoC2RX7DN5Uvjtpbg1NPdwv1oA==",
"dev": true,
"funding": [
{
@@ -7701,9 +7820,9 @@
}
},
"node_modules/postcss-selector-parser": {
- "version": "6.0.11",
- "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz",
- "integrity": "sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==",
+ "version": "6.0.12",
+ "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.12.tgz",
+ "integrity": "sha512-NdxGCAZdRrwVI1sy59+Wzrh+pMMHxapGnpfenDVlMEXoOcvt4pGE0JLK9YY2F5dLxcFYA/YbVQKhcGU+FtSYQg==",
"dev": true,
"dependencies": {
"cssesc": "^3.0.0",
@@ -7877,9 +7996,9 @@
"dev": true
},
"node_modules/preact": {
- "version": "10.13.2",
- "resolved": "https://registry.npmjs.org/preact/-/preact-10.13.2.tgz",
- "integrity": "sha512-q44QFLhOhty2Bd0Y46fnYW0gD/cbVM9dUVtNTDKPcdXSMA7jfY+Jpd6rk3GB0lcQss0z5s/6CmVP0Z/hV+g6pw==",
+ "version": "10.14.0",
+ "resolved": "https://registry.npmjs.org/preact/-/preact-10.14.0.tgz",
+ "integrity": "sha512-4oh2sf208mKAdL5AQtzXxE387iSGNWMX/YjwMjH6m/XROILKAmx5Pbs2FsXrW7ixoVGGjpfYSBB833vOwYxNxw==",
"dev": true,
"funding": {
"type": "opencollective",
@@ -8071,12 +8190,12 @@
}
},
"node_modules/read-package-json": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-6.0.0.tgz",
- "integrity": "sha512-b/9jxWJ8EwogJPpv99ma+QwtqB7FSl3+V6UXS7Aaay8/5VwMY50oIFooY1UKXMWpfNCM6T/PoGqa5GD1g9xf9w==",
+ "version": "6.0.3",
+ "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-6.0.3.tgz",
+ "integrity": "sha512-4QbpReW4kxFgeBQ0vPAqh2y8sXEB3D4t3jsXbJKIhBiF80KT6XRo45reqwtftju5J6ru1ax06A2Gb/wM1qCOEQ==",
"dev": true,
"dependencies": {
- "glob": "^8.0.1",
+ "glob": "^10.2.2",
"json-parse-even-better-errors": "^3.0.0",
"normalize-package-data": "^5.0.0",
"npm-normalize-package-bin": "^3.0.0"
@@ -8117,19 +8236,22 @@
}
},
"node_modules/read-package-json/node_modules/glob": {
- "version": "8.1.0",
- "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz",
- "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==",
+ "version": "10.2.3",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-10.2.3.tgz",
+ "integrity": "sha512-Kb4rfmBVE3eQTAimgmeqc2LwSnN0wIOkkUL6HmxEFxNJ4fHghYHVbFba/HcGcRjE6s9KoMNK3rSOwkL4PioZjg==",
"dev": true,
"dependencies": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^5.0.1",
- "once": "^1.3.0"
+ "foreground-child": "^3.1.0",
+ "jackspeak": "^2.0.3",
+ "minimatch": "^9.0.0",
+ "minipass": "^5.0.0",
+ "path-scurry": "^1.7.0"
+ },
+ "bin": {
+ "glob": "dist/cjs/src/bin.js"
},
"engines": {
- "node": ">=12"
+ "node": ">=16 || 14 >=14.17"
},
"funding": {
"url": "https://github.com/sponsors/isaacs"
@@ -8157,24 +8279,27 @@
}
},
"node_modules/read-package-json/node_modules/lru-cache": {
- "version": "7.17.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.17.0.tgz",
- "integrity": "sha512-zSxlVVwOabhVyTi6E8gYv2cr6bXK+8ifYz5/uyJb9feXX6NACVDwY4p5Ut3WC3Ivo/QhpARHU3iujx2xGAYHbQ==",
+ "version": "7.18.3",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz",
+ "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==",
"dev": true,
"engines": {
"node": ">=12"
}
},
"node_modules/read-package-json/node_modules/minimatch": {
- "version": "5.1.6",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz",
- "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==",
+ "version": "9.0.0",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.0.tgz",
+ "integrity": "sha512-0jJj8AvgKqWN05mrwuqi8QYKx1WmYSUoKSxu5Qhs9prezTz10sxAHGNZe9J9cqIJzta8DWsleh2KaVaLl6Ru2w==",
"dev": true,
"dependencies": {
"brace-expansion": "^2.0.1"
},
"engines": {
- "node": ">=10"
+ "node": ">=16 || 14 >=14.17"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
}
},
"node_modules/read-package-json/node_modules/normalize-package-data": {
@@ -8357,9 +8482,9 @@
}
},
"node_modules/readable-stream": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
- "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==",
+ "version": "3.6.2",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz",
+ "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==",
"dev": true,
"dependencies": {
"inherits": "^2.0.3",
@@ -8610,15 +8735,6 @@
"url": "https://github.com/sponsors/isaacs"
}
},
- "node_modules/rimraf/node_modules/minipass": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz",
- "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==",
- "dev": true,
- "engines": {
- "node": ">=8"
- }
- },
"node_modules/run-parallel": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz",
@@ -8643,9 +8759,9 @@
}
},
"node_modules/rxjs": {
- "version": "7.8.0",
- "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.0.tgz",
- "integrity": "sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg==",
+ "version": "7.8.1",
+ "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz",
+ "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==",
"dependencies": {
"tslib": "^2.1.0"
}
@@ -8655,6 +8771,26 @@
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.3.1.tgz",
"integrity": "sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw=="
},
+ "node_modules/safe-buffer": {
+ "version": "5.2.1",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
+ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
+ "dev": true,
+ "funding": [
+ {
+ "type": "github",
+ "url": "https://github.com/sponsors/feross"
+ },
+ {
+ "type": "patreon",
+ "url": "https://www.patreon.com/feross"
+ },
+ {
+ "type": "consulting",
+ "url": "https://feross.org/support"
+ }
+ ]
+ },
"node_modules/safe-regex-test": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz",
@@ -8677,9 +8813,9 @@
"optional": true
},
"node_modules/sass": {
- "version": "1.62.0",
- "resolved": "https://registry.npmjs.org/sass/-/sass-1.62.0.tgz",
- "integrity": "sha512-Q4USplo4pLYgCi+XlipZCWUQz5pkg/ruSSgJ0WRDSb/+3z9tXUOkQ7QPYn4XrhZKYAK4HlpaQecRwKLJX6+DBg==",
+ "version": "1.62.1",
+ "resolved": "https://registry.npmjs.org/sass/-/sass-1.62.1.tgz",
+ "integrity": "sha512-NHpxIzN29MXvWiuswfc1W3I0N8SXBd8UR26WntmDlRYf0bSADnwnOjsyMZ3lMezSlArD33Vs3YFhp7dWvL770A==",
"dev": true,
"dependencies": {
"chokidar": ">=3.0.0 <4.0.0",
@@ -8699,9 +8835,9 @@
"integrity": "sha1-DnNQrN7ICxEIUoeG7B1EGNEbOW0="
},
"node_modules/semver": {
- "version": "7.3.8",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz",
- "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==",
+ "version": "7.5.0",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.0.tgz",
+ "integrity": "sha512-+XC0AD/R7Q2mPSRuy2Id0+CGTZ98+8f+KvwirxOKIEyid+XSx6HbC63p+O4IndTHuX5Z+JxQ0TghCkO5Cg/2HA==",
"dev": true,
"dependencies": {
"lru-cache": "^6.0.0"
@@ -8788,13 +8924,14 @@
"dev": true
},
"node_modules/sigstore": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-1.0.0.tgz",
- "integrity": "sha512-e+qfbn/zf1+rCza/BhIA//Awmf0v1pa5HQS8Xk8iXrn9bgytytVLqYD0P7NSqZ6IELTgq+tcDvLPkQjNHyWLNg==",
+ "version": "1.5.0",
+ "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-1.5.0.tgz",
+ "integrity": "sha512-i3nhvdobiPj8XrXNIggjeur6+A5iAQ4f+r1bR5SGitFJBbthy/6c7Fz0h+kY70Wua1FSMdDr/UEhXSVRXNpynw==",
"dev": true,
"dependencies": {
+ "@sigstore/protobuf-specs": "^0.1.0",
"make-fetch-happen": "^11.0.1",
- "tuf-js": "^1.0.0"
+ "tuf-js": "^1.1.3"
},
"bin": {
"sigstore": "bin/sigstore.js"
@@ -8804,18 +8941,18 @@
}
},
"node_modules/sigstore/node_modules/lru-cache": {
- "version": "7.17.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.17.0.tgz",
- "integrity": "sha512-zSxlVVwOabhVyTi6E8gYv2cr6bXK+8ifYz5/uyJb9feXX6NACVDwY4p5Ut3WC3Ivo/QhpARHU3iujx2xGAYHbQ==",
+ "version": "7.18.3",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz",
+ "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==",
"dev": true,
"engines": {
"node": ">=12"
}
},
"node_modules/sigstore/node_modules/make-fetch-happen": {
- "version": "11.0.3",
- "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.0.3.tgz",
- "integrity": "sha512-oPLh5m10lRNNZDjJ2kP8UpboUx2uFXVaVweVe/lWut4iHWcQEmfqSVJt2ihZsFI8HbpwyyocaXbCAWf0g1ukIA==",
+ "version": "11.1.1",
+ "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz",
+ "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==",
"dev": true,
"dependencies": {
"agentkeepalive": "^4.2.1",
@@ -8825,7 +8962,7 @@
"https-proxy-agent": "^5.0.0",
"is-lambda": "^1.0.1",
"lru-cache": "^7.7.1",
- "minipass": "^4.0.0",
+ "minipass": "^5.0.0",
"minipass-fetch": "^3.0.0",
"minipass-flush": "^1.0.5",
"minipass-pipeline": "^1.2.4",
@@ -8839,12 +8976,12 @@
}
},
"node_modules/sigstore/node_modules/minipass-fetch": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.1.tgz",
- "integrity": "sha512-t9/wowtf7DYkwz8cfMSt0rMwiyNIBXf5CKZ3S5ZMqRqMYT0oLTp0x1WorMI9WTwvaPg21r1JbFxJMum8JrLGfw==",
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.3.tgz",
+ "integrity": "sha512-n5ITsTkDqYkYJZjcRWzZt9qnZKCT7nKCosJhHoj7S7zD+BP4jVbWs+odsniw5TA3E0sLomhTKOKjF86wf11PuQ==",
"dev": true,
"dependencies": {
- "minipass": "^4.0.0",
+ "minipass": "^5.0.0",
"minipass-sized": "^1.0.3",
"minizlib": "^2.1.2"
},
@@ -8856,9 +8993,9 @@
}
},
"node_modules/simple-icons": {
- "version": "8.10.0",
- "resolved": "https://registry.npmjs.org/simple-icons/-/simple-icons-8.10.0.tgz",
- "integrity": "sha512-q3MX9Og3ekffeY4vA2EEhKIzuVqARI4zAnK0wgQ1wJLIbzhspRrauRqd6eUO2YT3eH09uqRIVLphf0S0apBT/g==",
+ "version": "8.13.0",
+ "resolved": "https://registry.npmjs.org/simple-icons/-/simple-icons-8.13.0.tgz",
+ "integrity": "sha512-rS75HEr/E6/7jEFpWrKfhMhDopdqrZiXa6PveKlUWS12kz7Evv2s7ZrMKKpKKF8OsM3sNP0/FEIe0q4lHx9EvA==",
"dev": true,
"engines": {
"node": ">=0.12.18"
@@ -9053,12 +9190,12 @@
}
},
"node_modules/ssri": {
- "version": "10.0.1",
- "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.1.tgz",
- "integrity": "sha512-WVy6di9DlPOeBWEjMScpNipeSX2jIZBGEn5Uuo8Q7aIuFEuDX0pw8RxcOjlD1TWP4obi24ki7m/13+nFpcbXrw==",
+ "version": "10.0.4",
+ "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.4.tgz",
+ "integrity": "sha512-12+IR2CB2C28MMAw0Ncqwj5QbTcs0nGIhgJzYWzDkb21vWmfNI83KS4f3Ci6GI98WreIfG7o9UXp3C0qbpA8nQ==",
"dev": true,
"dependencies": {
- "minipass": "^4.0.0"
+ "minipass": "^5.0.0"
},
"engines": {
"node": "^14.17.0 || ^16.13.0 || >=18.0.0"
@@ -9089,26 +9226,6 @@
"safe-buffer": "~5.2.0"
}
},
- "node_modules/string_decoder/node_modules/safe-buffer": {
- "version": "5.2.1",
- "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
- "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
- "dev": true,
- "funding": [
- {
- "type": "github",
- "url": "https://github.com/sponsors/feross"
- },
- {
- "type": "patreon",
- "url": "https://www.patreon.com/feross"
- },
- {
- "type": "consulting",
- "url": "https://feross.org/support"
- }
- ]
- },
"node_modules/string-width": {
"version": "4.2.3",
"resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
@@ -9123,6 +9240,21 @@
"node": ">=8"
}
},
+ "node_modules/string-width-cjs": {
+ "name": "string-width",
+ "version": "4.2.3",
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
+ "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
+ "dev": true,
+ "dependencies": {
+ "emoji-regex": "^8.0.0",
+ "is-fullwidth-code-point": "^3.0.0",
+ "strip-ansi": "^6.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
"node_modules/string.prototype.padend": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.1.2.tgz",
@@ -9180,6 +9312,19 @@
"node": ">=8"
}
},
+ "node_modules/strip-ansi-cjs": {
+ "name": "strip-ansi",
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
+ "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
+ "dev": true,
+ "dependencies": {
+ "ansi-regex": "^5.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
"node_modules/strip-bom": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
@@ -9236,14 +9381,14 @@
}
},
"node_modules/stylelint": {
- "version": "15.5.0",
- "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-15.5.0.tgz",
- "integrity": "sha512-jyMO3R1QtE5mUS4v40+Gg+sIQBqe7CF1xPslxycDzNVkIBCUD4O+5F1vLPq16VmunUTv4qG9o2rUKLnU5KkVeQ==",
+ "version": "15.6.1",
+ "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-15.6.1.tgz",
+ "integrity": "sha512-d8icFBlVl93Elf3Z5ABQNOCe4nx69is3D/NZhDLAie1eyYnpxfeKe7pCfqzT5W4F8vxHCLSDfV8nKNJzogvV2Q==",
"dev": true,
"dependencies": {
- "@csstools/css-parser-algorithms": "^2.1.0",
- "@csstools/css-tokenizer": "^2.1.0",
- "@csstools/media-query-list-parser": "^2.0.2",
+ "@csstools/css-parser-algorithms": "^2.1.1",
+ "@csstools/css-tokenizer": "^2.1.1",
+ "@csstools/media-query-list-parser": "^2.0.4",
"@csstools/selector-specificity": "^2.2.0",
"balanced-match": "^2.0.0",
"colord": "^2.9.3",
@@ -9268,11 +9413,11 @@
"micromatch": "^4.0.5",
"normalize-path": "^3.0.0",
"picocolors": "^1.0.0",
- "postcss": "^8.4.21",
+ "postcss": "^8.4.23",
"postcss-media-query-parser": "^0.2.3",
"postcss-resolve-nested-selector": "^0.1.1",
"postcss-safe-parser": "^6.0.0",
- "postcss-selector-parser": "^6.0.11",
+ "postcss-selector-parser": "^6.0.12",
"postcss-value-parser": "^4.2.0",
"resolve-from": "^5.0.0",
"string-width": "^4.2.3",
@@ -9282,7 +9427,7 @@
"svg-tags": "^1.0.0",
"table": "^6.8.1",
"v8-compile-cache": "^2.3.0",
- "write-file-atomic": "^5.0.0"
+ "write-file-atomic": "^5.0.1"
},
"bin": {
"stylelint": "bin/stylelint.js"
@@ -9317,18 +9462,18 @@
}
},
"node_modules/stylelint-config-recommended-scss": {
- "version": "10.0.0",
- "resolved": "https://registry.npmjs.org/stylelint-config-recommended-scss/-/stylelint-config-recommended-scss-10.0.0.tgz",
- "integrity": "sha512-+YvPgUHi0W5mCJCKdupBCIsWPYNbWuJcRmFtSYujwNg+41ljFknhO9bpY6C+oahv659zW7W1AT7i6DQvJYYr1A==",
+ "version": "11.0.0",
+ "resolved": "https://registry.npmjs.org/stylelint-config-recommended-scss/-/stylelint-config-recommended-scss-11.0.0.tgz",
+ "integrity": "sha512-EDghTDU7aOv2LTsRZvcT1w8mcjUaMhuy+t38iV5I/0Qiu6ixdkRwhLEMul3K/fnB2v9Nwqvb3xpvJfPH+HduDw==",
"dev": true,
"dependencies": {
"postcss-scss": "^4.0.6",
- "stylelint-config-recommended": "^11.0.0",
+ "stylelint-config-recommended": "^12.0.0",
"stylelint-scss": "^4.6.0"
},
"peerDependencies": {
"postcss": "^8.3.3",
- "stylelint": "^15.3.0"
+ "stylelint": "^15.5.0"
},
"peerDependenciesMeta": {
"postcss": {
@@ -9336,39 +9481,45 @@
}
}
},
- "node_modules/stylelint-config-recommended-scss/node_modules/stylelint-config-recommended": {
- "version": "11.0.0",
- "resolved": "https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-11.0.0.tgz",
- "integrity": "sha512-SoGIHNI748OCZn6BxFYT83ytWoYETCINVHV3LKScVAWQQauWdvmdDqJC5YXWjpBbxg2E761Tg5aUGKLFOVhEkA==",
+ "node_modules/stylelint-config-recommended-scss/node_modules/stylelint-scss": {
+ "version": "4.7.0",
+ "resolved": "https://registry.npmjs.org/stylelint-scss/-/stylelint-scss-4.7.0.tgz",
+ "integrity": "sha512-TSUgIeS0H3jqDZnby1UO1Qv3poi1N8wUYIJY6D1tuUq2MN3lwp/rITVo0wD+1SWTmRm0tNmGO0b7nKInnqF6Hg==",
"dev": true,
+ "dependencies": {
+ "postcss-media-query-parser": "^0.2.3",
+ "postcss-resolve-nested-selector": "^0.1.1",
+ "postcss-selector-parser": "^6.0.11",
+ "postcss-value-parser": "^4.2.0"
+ },
"peerDependencies": {
- "stylelint": "^15.3.0"
+ "stylelint": "^14.5.1 || ^15.0.0"
}
},
"node_modules/stylelint-config-standard": {
- "version": "32.0.0",
- "resolved": "https://registry.npmjs.org/stylelint-config-standard/-/stylelint-config-standard-32.0.0.tgz",
- "integrity": "sha512-UnGJxYDyYFrIE9CjDMZRkrNh2o4lOtO+MVZ9qG5b8yARfsWho0GMx4YvhHfsv8zKKgHeWX2wfeyxmuoqcaYZ4w==",
+ "version": "33.0.0",
+ "resolved": "https://registry.npmjs.org/stylelint-config-standard/-/stylelint-config-standard-33.0.0.tgz",
+ "integrity": "sha512-eyxnLWoXImUn77+ODIuW9qXBDNM+ALN68L3wT1lN2oNspZ7D9NVGlNHb2QCUn4xDug6VZLsh0tF8NyoYzkgTzg==",
"dev": true,
"dependencies": {
- "stylelint-config-recommended": "^11.0.0"
+ "stylelint-config-recommended": "^12.0.0"
},
"peerDependencies": {
- "stylelint": "^15.4.0"
+ "stylelint": "^15.5.0"
}
},
"node_modules/stylelint-config-standard-scss": {
- "version": "8.0.0",
- "resolved": "https://registry.npmjs.org/stylelint-config-standard-scss/-/stylelint-config-standard-scss-8.0.0.tgz",
- "integrity": "sha512-TDT/gJD/0LUDoUgkjF1uoI/4DfczXHxg7gJVcWT4/JbE6k5hszVuI14reNX+tEwSyMNhcK2BA7izrK+uVAz7XA==",
+ "version": "9.0.0",
+ "resolved": "https://registry.npmjs.org/stylelint-config-standard-scss/-/stylelint-config-standard-scss-9.0.0.tgz",
+ "integrity": "sha512-yPKpJsrZn4ybuQZx/DkEHuCjw7pJginErE/47dFhCnrvD48IJ4UYec8tSiCuJWMA3HRjbIa3nh5ZeSauDGuVAg==",
"dev": true,
"dependencies": {
- "stylelint-config-recommended-scss": "^10.0.0",
- "stylelint-config-standard": "^32.0.0"
+ "stylelint-config-recommended-scss": "^11.0.0",
+ "stylelint-config-standard": "^33.0.0"
},
"peerDependencies": {
"postcss": "^8.3.3",
- "stylelint": "^15.4.0"
+ "stylelint": "^15.5.0"
},
"peerDependenciesMeta": {
"postcss": {
@@ -9376,15 +9527,6 @@
}
}
},
- "node_modules/stylelint-config-standard/node_modules/stylelint-config-recommended": {
- "version": "11.0.0",
- "resolved": "https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-11.0.0.tgz",
- "integrity": "sha512-SoGIHNI748OCZn6BxFYT83ytWoYETCINVHV3LKScVAWQQauWdvmdDqJC5YXWjpBbxg2E761Tg5aUGKLFOVhEkA==",
- "dev": true,
- "peerDependencies": {
- "stylelint": "^15.3.0"
- }
- },
"node_modules/stylelint-order": {
"version": "6.0.2",
"resolved": "https://registry.npmjs.org/stylelint-order/-/stylelint-order-6.0.2.tgz",
@@ -9399,12 +9541,11 @@
}
},
"node_modules/stylelint-scss": {
- "version": "4.6.0",
- "resolved": "https://registry.npmjs.org/stylelint-scss/-/stylelint-scss-4.6.0.tgz",
- "integrity": "sha512-M+E0BQim6G4XEkaceEhfVjP/41C9Klg5/tTPTCQVlgw/jm2tvB+OXJGaU0TDP5rnTCB62aX6w+rT+gqJW/uwjA==",
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/stylelint-scss/-/stylelint-scss-5.0.0.tgz",
+ "integrity": "sha512-5Ee5kG3JIcP2jk2PMoFMiNmW/815V+wK5o37X5ke90ihWMpPXI9iyqeA6zEWipWSRXeQc0kqbd7hKqiR+wPKNA==",
"dev": true,
"dependencies": {
- "dlv": "^1.1.3",
"postcss-media-query-parser": "^0.2.3",
"postcss-resolve-nested-selector": "^0.1.1",
"postcss-selector-parser": "^6.0.11",
@@ -9473,14 +9614,26 @@
"node": ">=8"
}
},
+ "node_modules/stylelint/node_modules/signal-exit": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.1.tgz",
+ "integrity": "sha512-uUWsN4aOxJAS8KOuf3QMyFtgm1pkb6I+KRZbRF/ghdf5T7sM+B1lLLzPDxswUjkmHyxQAVzEgG35E3NzDM9GVw==",
+ "dev": true,
+ "engines": {
+ "node": ">=14"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
"node_modules/stylelint/node_modules/write-file-atomic": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.0.tgz",
- "integrity": "sha512-R7NYMnHSlV42K54lwY9lvW6MnSm1HSJqZL3xiSgi9E7//FYaI74r2G0rd+/X6VAMkHEdzxQaU5HUOXWUz5kA/w==",
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.1.tgz",
+ "integrity": "sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==",
"dev": true,
"dependencies": {
"imurmurhash": "^0.1.4",
- "signal-exit": "^3.0.7"
+ "signal-exit": "^4.0.1"
},
"engines": {
"node": "^14.17.0 || ^16.13.0 || >=18.0.0"
@@ -9628,14 +9781,14 @@
"dev": true
},
"node_modules/tar": {
- "version": "6.1.13",
- "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.13.tgz",
- "integrity": "sha512-jdIBIN6LTIe2jqzay/2vtYLlBHa3JF42ot3h1dW8Q0PaAG4v8rm0cvpVePtau5C6OKXGGcgO9q2AMNSWxiLqKw==",
+ "version": "6.1.14",
+ "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.14.tgz",
+ "integrity": "sha512-piERznXu0U7/pW7cdSn7hjqySIVTYT6F76icmFk7ptU7dDYlXTm5r9A6K04R2vU3olYgoKeo1Cg3eeu5nhftAw==",
"dev": true,
"dependencies": {
"chownr": "^2.0.0",
"fs-minipass": "^2.0.0",
- "minipass": "^4.0.0",
+ "minipass": "^5.0.0",
"minizlib": "^2.1.1",
"mkdirp": "^1.0.3",
"yallist": "^4.0.0"
@@ -9668,18 +9821,6 @@
"node": ">=8"
}
},
- "node_modules/tar/node_modules/mkdirp": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
- "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
- "dev": true,
- "bin": {
- "mkdirp": "bin/cmd.js"
- },
- "engines": {
- "node": ">=10"
- }
- },
"node_modules/text-table": {
"version": "0.2.0",
"resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
@@ -9811,40 +9952,32 @@
}
},
"node_modules/tuf-js": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-1.0.0.tgz",
- "integrity": "sha512-1dxsQwESDzACJjTdYHQ4wJ1f/of7jALWKfJEHSBWUQB/5UTJUx9SW6GHXp4mZ1KvdBRJCpGjssoPFGi4hvw8/A==",
+ "version": "1.1.6",
+ "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-1.1.6.tgz",
+ "integrity": "sha512-CXwFVIsXGbVY4vFiWF7TJKWmlKJAT8TWkH4RmiohJRcDJInix++F0dznDmoVbtJNzZ8yLprKUG4YrDIhv3nBMg==",
"dev": true,
"dependencies": {
- "make-fetch-happen": "^11.0.1",
- "minimatch": "^6.1.0"
+ "@tufjs/models": "1.0.4",
+ "debug": "^4.3.4",
+ "make-fetch-happen": "^11.1.0"
},
"engines": {
"node": "^14.17.0 || ^16.13.0 || >=18.0.0"
}
},
- "node_modules/tuf-js/node_modules/brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "dev": true,
- "dependencies": {
- "balanced-match": "^1.0.0"
- }
- },
"node_modules/tuf-js/node_modules/lru-cache": {
- "version": "7.17.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.17.0.tgz",
- "integrity": "sha512-zSxlVVwOabhVyTi6E8gYv2cr6bXK+8ifYz5/uyJb9feXX6NACVDwY4p5Ut3WC3Ivo/QhpARHU3iujx2xGAYHbQ==",
+ "version": "7.18.3",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz",
+ "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==",
"dev": true,
"engines": {
"node": ">=12"
}
},
"node_modules/tuf-js/node_modules/make-fetch-happen": {
- "version": "11.0.3",
- "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.0.3.tgz",
- "integrity": "sha512-oPLh5m10lRNNZDjJ2kP8UpboUx2uFXVaVweVe/lWut4iHWcQEmfqSVJt2ihZsFI8HbpwyyocaXbCAWf0g1ukIA==",
+ "version": "11.1.1",
+ "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz",
+ "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==",
"dev": true,
"dependencies": {
"agentkeepalive": "^4.2.1",
@@ -9854,7 +9987,7 @@
"https-proxy-agent": "^5.0.0",
"is-lambda": "^1.0.1",
"lru-cache": "^7.7.1",
- "minipass": "^4.0.0",
+ "minipass": "^5.0.0",
"minipass-fetch": "^3.0.0",
"minipass-flush": "^1.0.5",
"minipass-pipeline": "^1.2.4",
@@ -9867,28 +10000,13 @@
"node": "^14.17.0 || ^16.13.0 || >=18.0.0"
}
},
- "node_modules/tuf-js/node_modules/minimatch": {
- "version": "6.2.0",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-6.2.0.tgz",
- "integrity": "sha512-sauLxniAmvnhhRjFwPNnJKaPFYyddAgbYdeUpHULtCT/GhzdCx/MDNy+Y40lBxTQUrMzDE8e0S43Z5uqfO0REg==",
- "dev": true,
- "dependencies": {
- "brace-expansion": "^2.0.1"
- },
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/isaacs"
- }
- },
"node_modules/tuf-js/node_modules/minipass-fetch": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.1.tgz",
- "integrity": "sha512-t9/wowtf7DYkwz8cfMSt0rMwiyNIBXf5CKZ3S5ZMqRqMYT0oLTp0x1WorMI9WTwvaPg21r1JbFxJMum8JrLGfw==",
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.3.tgz",
+ "integrity": "sha512-n5ITsTkDqYkYJZjcRWzZt9qnZKCT7nKCosJhHoj7S7zD+BP4jVbWs+odsniw5TA3E0sLomhTKOKjF86wf11PuQ==",
"dev": true,
"dependencies": {
- "minipass": "^4.0.0",
+ "minipass": "^5.0.0",
"minipass-sized": "^1.0.3",
"minizlib": "^2.1.2"
},
@@ -10325,9 +10443,9 @@
}
},
"node_modules/wrap-ansi": {
- "version": "8.0.1",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.0.1.tgz",
- "integrity": "sha512-QFF+ufAqhoYHvoHdajT/Po7KoXVBPXS2bgjIam5isfWJPfIOnQZ50JtUiVvCv/sjgacf3yRrt2ZKUZ/V4itN4g==",
+ "version": "8.1.0",
+ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz",
+ "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==",
"dev": true,
"dependencies": {
"ansi-styles": "^6.1.0",
@@ -10341,6 +10459,57 @@
"url": "https://github.com/chalk/wrap-ansi?sponsor=1"
}
},
+ "node_modules/wrap-ansi-cjs": {
+ "name": "wrap-ansi",
+ "version": "7.0.0",
+ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
+ "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.0.0",
+ "string-width": "^4.1.0",
+ "strip-ansi": "^6.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/wrap-ansi?sponsor=1"
+ }
+ },
+ "node_modules/wrap-ansi-cjs/node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/wrap-ansi-cjs/node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/wrap-ansi-cjs/node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
"node_modules/wrap-ansi/node_modules/ansi-regex": {
"version": "6.0.1",
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz",
@@ -10558,167 +10727,167 @@
"requires": {}
},
"@es-joy/jsdoccomment": {
- "version": "0.37.0",
- "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.37.0.tgz",
- "integrity": "sha512-hjK0wnsPCYLlF+HHB4R/RbUjOWeLW2SlarB67+Do5WsKILOkmIZvvPJFbtWSmbypxcjpoECLAMzoao0D4Bg5ZQ==",
+ "version": "0.39.3",
+ "resolved": "https://registry.npmjs.org/@es-joy/jsdoccomment/-/jsdoccomment-0.39.3.tgz",
+ "integrity": "sha512-q6pObzaS+aTA96kl4DF91QILNpSiDE8S89cQdJnhIc7hWzwIHPnfBnsiBVa0Z/R9pLHdZTnXEMnggGMmCq7HmA==",
"dev": true,
"requires": {
"comment-parser": "1.3.1",
- "esquery": "^1.4.0",
+ "esquery": "^1.5.0",
"jsdoc-type-pratt-parser": "~4.0.0"
}
},
"@esbuild/android-arm": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.17.17.tgz",
- "integrity": "sha512-E6VAZwN7diCa3labs0GYvhEPL2M94WLF8A+czO8hfjREXxba8Ng7nM5VxV+9ihNXIY1iQO1XxUU4P7hbqbICxg==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.17.19.tgz",
+ "integrity": "sha512-rIKddzqhmav7MSmoFCmDIb6e2W57geRsM94gV2l38fzhXMwq7hZoClug9USI2pFRGL06f4IOPHHpFNOkWieR8A==",
"dev": true,
"optional": true
},
"@esbuild/android-arm64": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.17.17.tgz",
- "integrity": "sha512-jaJ5IlmaDLFPNttv0ofcwy/cfeY4bh/n705Tgh+eLObbGtQBK3EPAu+CzL95JVE4nFAliyrnEu0d32Q5foavqg==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.17.19.tgz",
+ "integrity": "sha512-KBMWvEZooR7+kzY0BtbTQn0OAYY7CsiydT63pVEaPtVYF0hXbUaOyZog37DKxK7NF3XacBJOpYT4adIJh+avxA==",
"dev": true,
"optional": true
},
"@esbuild/android-x64": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.17.17.tgz",
- "integrity": "sha512-446zpfJ3nioMC7ASvJB1pszHVskkw4u/9Eu8s5yvvsSDTzYh4p4ZIRj0DznSl3FBF0Z/mZfrKXTtt0QCoFmoHA==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.17.19.tgz",
+ "integrity": "sha512-uUTTc4xGNDT7YSArp/zbtmbhO0uEEK9/ETW29Wk1thYUJBz3IVnvgEiEwEa9IeLyvnpKrWK64Utw2bgUmDveww==",
"dev": true,
"optional": true
},
"@esbuild/darwin-arm64": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.17.17.tgz",
- "integrity": "sha512-m/gwyiBwH3jqfUabtq3GH31otL/0sE0l34XKpSIqR7NjQ/XHQ3lpmQHLHbG8AHTGCw8Ao059GvV08MS0bhFIJQ==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.17.19.tgz",
+ "integrity": "sha512-80wEoCfF/hFKM6WE1FyBHc9SfUblloAWx6FJkFWTWiCoht9Mc0ARGEM47e67W9rI09YoUxJL68WHfDRYEAvOhg==",
"dev": true,
"optional": true
},
"@esbuild/darwin-x64": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.17.17.tgz",
- "integrity": "sha512-4utIrsX9IykrqYaXR8ob9Ha2hAY2qLc6ohJ8c0CN1DR8yWeMrTgYFjgdeQ9LIoTOfLetXjuCu5TRPHT9yKYJVg==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.17.19.tgz",
+ "integrity": "sha512-IJM4JJsLhRYr9xdtLytPLSH9k/oxR3boaUIYiHkAawtwNOXKE8KoU8tMvryogdcT8AU+Bflmh81Xn6Q0vTZbQw==",
"dev": true,
"optional": true
},
"@esbuild/freebsd-arm64": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.17.17.tgz",
- "integrity": "sha512-4PxjQII/9ppOrpEwzQ1b0pXCsFLqy77i0GaHodrmzH9zq2/NEhHMAMJkJ635Ns4fyJPFOlHMz4AsklIyRqFZWA==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.17.19.tgz",
+ "integrity": "sha512-pBwbc7DufluUeGdjSU5Si+P3SoMF5DQ/F/UmTSb8HXO80ZEAJmrykPyzo1IfNbAoaqw48YRpv8shwd1NoI0jcQ==",
"dev": true,
"optional": true
},
"@esbuild/freebsd-x64": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.17.17.tgz",
- "integrity": "sha512-lQRS+4sW5S3P1sv0z2Ym807qMDfkmdhUYX30GRBURtLTrJOPDpoU0kI6pVz1hz3U0+YQ0tXGS9YWveQjUewAJw==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.17.19.tgz",
+ "integrity": "sha512-4lu+n8Wk0XlajEhbEffdy2xy53dpR06SlzvhGByyg36qJw6Kpfk7cp45DR/62aPH9mtJRmIyrXAS5UWBrJT6TQ==",
"dev": true,
"optional": true
},
"@esbuild/linux-arm": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.17.17.tgz",
- "integrity": "sha512-biDs7bjGdOdcmIk6xU426VgdRUpGg39Yz6sT9Xp23aq+IEHDb/u5cbmu/pAANpDB4rZpY/2USPhCA+w9t3roQg==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.17.19.tgz",
+ "integrity": "sha512-cdmT3KxjlOQ/gZ2cjfrQOtmhG4HJs6hhvm3mWSRDPtZ/lP5oe8FWceS10JaSJC13GBd4eH/haHnqf7hhGNLerA==",
"dev": true,
"optional": true
},
"@esbuild/linux-arm64": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.17.17.tgz",
- "integrity": "sha512-2+pwLx0whKY1/Vqt8lyzStyda1v0qjJ5INWIe+d8+1onqQxHLLi3yr5bAa4gvbzhZqBztifYEu8hh1La5+7sUw==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.17.19.tgz",
+ "integrity": "sha512-ct1Tg3WGwd3P+oZYqic+YZF4snNl2bsnMKRkb3ozHmnM0dGWuxcPTTntAF6bOP0Sp4x0PjSF+4uHQ1xvxfRKqg==",
"dev": true,
"optional": true
},
"@esbuild/linux-ia32": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.17.17.tgz",
- "integrity": "sha512-IBTTv8X60dYo6P2t23sSUYym8fGfMAiuv7PzJ+0LcdAndZRzvke+wTVxJeCq4WgjppkOpndL04gMZIFvwoU34Q==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.17.19.tgz",
+ "integrity": "sha512-w4IRhSy1VbsNxHRQpeGCHEmibqdTUx61Vc38APcsRbuVgK0OPEnQ0YD39Brymn96mOx48Y2laBQGqgZ0j9w6SQ==",
"dev": true,
"optional": true
},
"@esbuild/linux-loong64": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.17.17.tgz",
- "integrity": "sha512-WVMBtcDpATjaGfWfp6u9dANIqmU9r37SY8wgAivuKmgKHE+bWSuv0qXEFt/p3qXQYxJIGXQQv6hHcm7iWhWjiw==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.17.19.tgz",
+ "integrity": "sha512-2iAngUbBPMq439a+z//gE+9WBldoMp1s5GWsUSgqHLzLJ9WoZLZhpwWuym0u0u/4XmZ3gpHmzV84PonE+9IIdQ==",
"dev": true,
"optional": true
},
"@esbuild/linux-mips64el": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.17.17.tgz",
- "integrity": "sha512-2kYCGh8589ZYnY031FgMLy0kmE4VoGdvfJkxLdxP4HJvWNXpyLhjOvxVsYjYZ6awqY4bgLR9tpdYyStgZZhi2A==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.17.19.tgz",
+ "integrity": "sha512-LKJltc4LVdMKHsrFe4MGNPp0hqDFA1Wpt3jE1gEyM3nKUvOiO//9PheZZHfYRfYl6AwdTH4aTcXSqBerX0ml4A==",
"dev": true,
"optional": true
},
"@esbuild/linux-ppc64": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.17.17.tgz",
- "integrity": "sha512-KIdG5jdAEeAKogfyMTcszRxy3OPbZhq0PPsW4iKKcdlbk3YE4miKznxV2YOSmiK/hfOZ+lqHri3v8eecT2ATwQ==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.17.19.tgz",
+ "integrity": "sha512-/c/DGybs95WXNS8y3Ti/ytqETiW7EU44MEKuCAcpPto3YjQbyK3IQVKfF6nbghD7EcLUGl0NbiL5Rt5DMhn5tg==",
"dev": true,
"optional": true
},
"@esbuild/linux-riscv64": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.17.17.tgz",
- "integrity": "sha512-Cj6uWLBR5LWhcD/2Lkfg2NrkVsNb2sFM5aVEfumKB2vYetkA/9Uyc1jVoxLZ0a38sUhFk4JOVKH0aVdPbjZQeA==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.17.19.tgz",
+ "integrity": "sha512-FC3nUAWhvFoutlhAkgHf8f5HwFWUL6bYdvLc/TTuxKlvLi3+pPzdZiFKSWz/PF30TB1K19SuCxDTI5KcqASJqA==",
"dev": true,
"optional": true
},
"@esbuild/linux-s390x": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.17.17.tgz",
- "integrity": "sha512-lK+SffWIr0XsFf7E0srBjhpkdFVJf3HEgXCwzkm69kNbRar8MhezFpkIwpk0qo2IOQL4JE4mJPJI8AbRPLbuOQ==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.17.19.tgz",
+ "integrity": "sha512-IbFsFbxMWLuKEbH+7sTkKzL6NJmG2vRyy6K7JJo55w+8xDk7RElYn6xvXtDW8HCfoKBFK69f3pgBJSUSQPr+4Q==",
"dev": true,
"optional": true
},
"@esbuild/linux-x64": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.17.17.tgz",
- "integrity": "sha512-XcSGTQcWFQS2jx3lZtQi7cQmDYLrpLRyz1Ns1DzZCtn898cWfm5Icx/DEWNcTU+T+tyPV89RQtDnI7qL2PObPg==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.17.19.tgz",
+ "integrity": "sha512-68ngA9lg2H6zkZcyp22tsVt38mlhWde8l3eJLWkyLrp4HwMUr3c1s/M2t7+kHIhvMjglIBrFpncX1SzMckomGw==",
"dev": true,
"optional": true
},
"@esbuild/netbsd-x64": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.17.17.tgz",
- "integrity": "sha512-RNLCDmLP5kCWAJR+ItLM3cHxzXRTe4N00TQyQiimq+lyqVqZWGPAvcyfUBM0isE79eEZhIuGN09rAz8EL5KdLA==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.17.19.tgz",
+ "integrity": "sha512-CwFq42rXCR8TYIjIfpXCbRX0rp1jo6cPIUPSaWwzbVI4aOfX96OXY8M6KNmtPcg7QjYeDmN+DD0Wp3LaBOLf4Q==",
"dev": true,
"optional": true
},
"@esbuild/openbsd-x64": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.17.17.tgz",
- "integrity": "sha512-PAXswI5+cQq3Pann7FNdcpSUrhrql3wKjj3gVkmuz6OHhqqYxKvi6GgRBoaHjaG22HV/ZZEgF9TlS+9ftHVigA==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.17.19.tgz",
+ "integrity": "sha512-cnq5brJYrSZ2CF6c35eCmviIN3k3RczmHz8eYaVlNasVqsNY+JKohZU5MKmaOI+KkllCdzOKKdPs762VCPC20g==",
"dev": true,
"optional": true
},
"@esbuild/sunos-x64": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.17.17.tgz",
- "integrity": "sha512-V63egsWKnx/4V0FMYkr9NXWrKTB5qFftKGKuZKFIrAkO/7EWLFnbBZNM1CvJ6Sis+XBdPws2YQSHF1Gqf1oj/Q==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.17.19.tgz",
+ "integrity": "sha512-vCRT7yP3zX+bKWFeP/zdS6SqdWB8OIpaRq/mbXQxTGHnIxspRtigpkUcDMlSCOejlHowLqII7K2JKevwyRP2rg==",
"dev": true,
"optional": true
},
"@esbuild/win32-arm64": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.17.17.tgz",
- "integrity": "sha512-YtUXLdVnd6YBSYlZODjWzH+KzbaubV0YVd6UxSfoFfa5PtNJNaW+1i+Hcmjpg2nEe0YXUCNF5bkKy1NnBv1y7Q==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.17.19.tgz",
+ "integrity": "sha512-yYx+8jwowUstVdorcMdNlzklLYhPxjniHWFKgRqH7IFlUEa0Umu3KuYplf1HUZZ422e3NU9F4LGb+4O0Kdcaag==",
"dev": true,
"optional": true
},
"@esbuild/win32-ia32": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.17.17.tgz",
- "integrity": "sha512-yczSLRbDdReCO74Yfc5tKG0izzm+lPMYyO1fFTcn0QNwnKmc3K+HdxZWLGKg4pZVte7XVgcFku7TIZNbWEJdeQ==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.17.19.tgz",
+ "integrity": "sha512-eggDKanJszUtCdlVs0RB+h35wNlb5v4TWEkq4vZcmVt5u/HiDZrTXe2bWFQUez3RgNHwx/x4sk5++4NSSicKkw==",
"dev": true,
"optional": true
},
"@esbuild/win32-x64": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.17.17.tgz",
- "integrity": "sha512-FNZw7H3aqhF9OyRQbDDnzUApDXfC1N6fgBhkqEO2jvYCJ+DxMTfZVqg3AX0R1khg1wHTBRD5SdcibSJ+XF6bFg==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.17.19.tgz",
+ "integrity": "sha512-lAhycmKnVOuRYNtRtatQR1LPQf2oYCkRGkSFnseDAKPl8lu5SOsK/e1sXe5a0Pc5kHIHe6P2I/ilntNv2xf3cA==",
"dev": true,
"optional": true
},
@@ -10738,14 +10907,14 @@
"dev": true
},
"@eslint/eslintrc": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.0.2.tgz",
- "integrity": "sha512-3W4f5tDUra+pA+FzgugqL2pRimUTDJWKr7BINqOpkZrC0uYI0NIc0/JFgBROCU07HR6GieA5m3/rsPIhDmCXTQ==",
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.0.3.tgz",
+ "integrity": "sha512-+5gy6OQfk+xx3q0d6jGZZC3f3KzAkXc/IanVxd1is/VIIziRqqt3ongQz0FiTUXqTk0c7aDB3OaFuKnuSoJicQ==",
"dev": true,
"requires": {
"ajv": "^6.12.4",
"debug": "^4.3.2",
- "espree": "^9.5.1",
+ "espree": "^9.5.2",
"globals": "^13.19.0",
"ignore": "^5.2.0",
"import-fresh": "^3.2.1",
@@ -10755,9 +10924,9 @@
}
},
"@eslint/js": {
- "version": "8.38.0",
- "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.38.0.tgz",
- "integrity": "sha512-IoD2MfUnOV58ghIHCiil01PcohxjbYR/qCxsoC+xNgUwh1EY8jOOrYmu3d3a71+tJJ23uscEV4X2HJWMsPJu4g==",
+ "version": "8.40.0",
+ "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.40.0.tgz",
+ "integrity": "sha512-ElyB54bJIhXQYVKjDSvCkPO1iU1tSAeVQJbllWJq1XQSmmA4dgFk8CbiBGpiOPxleE48vDogxCtmMYku4HSVLA==",
"dev": true
},
"@fortawesome/fontawesome-free": {
@@ -10795,6 +10964,54 @@
"integrity": "sha512-ZnQMnLV4e7hDlUvw8H+U8ASL02SS2Gn6+9Ac3wGGLIe7+je2AeAOxPY+izIPJDfFDb7eDjev0Us8MO1iFRN8hA==",
"dev": true
},
+ "@isaacs/cliui": {
+ "version": "8.0.2",
+ "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz",
+ "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==",
+ "dev": true,
+ "requires": {
+ "string-width": "^5.1.2",
+ "string-width-cjs": "npm:string-width@^4.2.0",
+ "strip-ansi": "^7.0.1",
+ "strip-ansi-cjs": "npm:strip-ansi@^6.0.1",
+ "wrap-ansi": "^8.1.0",
+ "wrap-ansi-cjs": "npm:wrap-ansi@^7.0.0"
+ },
+ "dependencies": {
+ "ansi-regex": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz",
+ "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==",
+ "dev": true
+ },
+ "emoji-regex": {
+ "version": "9.2.2",
+ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz",
+ "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==",
+ "dev": true
+ },
+ "string-width": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz",
+ "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==",
+ "dev": true,
+ "requires": {
+ "eastasianwidth": "^0.2.0",
+ "emoji-regex": "^9.2.2",
+ "strip-ansi": "^7.0.1"
+ }
+ },
+ "strip-ansi": {
+ "version": "7.0.1",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.0.1.tgz",
+ "integrity": "sha512-cXNxvT8dFNRVfhVME3JAe98mkXDYN2O1l7jmcwMnOslDeESg1rF/OZMtK0nRAhiari1unG5cD4jG3rapUAkLbw==",
+ "dev": true,
+ "requires": {
+ "ansi-regex": "^6.0.1"
+ }
+ }
+ }
+ },
"@jridgewell/resolve-uri": {
"version": "3.0.7",
"resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.0.7.tgz",
@@ -10859,14 +11076,13 @@
}
},
"@npmcli/git": {
- "version": "4.0.3",
- "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-4.0.3.tgz",
- "integrity": "sha512-8cXNkDIbnXPVbhXMmQ7/bklCAjtmPaXfI9aEM4iH+xSuEHINLMHhlfESvVwdqmHJRJkR48vNJTSUvoF6GRPSFA==",
+ "version": "4.0.4",
+ "resolved": "https://registry.npmjs.org/@npmcli/git/-/git-4.0.4.tgz",
+ "integrity": "sha512-5yZghx+u5M47LghaybLCkdSyFzV/w4OuH12d96HO389Ik9CDsLaDZJVynSGGVJOLn6gy/k7Dz5XYcplM3uxXRg==",
"dev": true,
"requires": {
"@npmcli/promise-spawn": "^6.0.0",
"lru-cache": "^7.4.4",
- "mkdirp": "^1.0.4",
"npm-pick-manifest": "^8.0.0",
"proc-log": "^3.0.0",
"promise-inflight": "^1.0.1",
@@ -10876,21 +11092,15 @@
},
"dependencies": {
"lru-cache": {
- "version": "7.17.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.17.0.tgz",
- "integrity": "sha512-zSxlVVwOabhVyTi6E8gYv2cr6bXK+8ifYz5/uyJb9feXX6NACVDwY4p5Ut3WC3Ivo/QhpARHU3iujx2xGAYHbQ==",
- "dev": true
- },
- "mkdirp": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
- "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
+ "version": "7.18.3",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz",
+ "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==",
"dev": true
},
"which": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/which/-/which-3.0.0.tgz",
- "integrity": "sha512-nla//68K9NU6yRiwDY/Q8aU6siKlSs64aEC7+IV56QoAuyQT2ovsJcgGYGyqMOmI/CGN1BOR6mM5EN0FBO+zyQ==",
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz",
+ "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==",
"dev": true,
"requires": {
"isexe": "^2.0.0"
@@ -10918,12 +11128,6 @@
"rimraf": "^3.0.2"
},
"dependencies": {
- "mkdirp": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
- "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
- "dev": true
- },
"rimraf": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
@@ -10951,9 +11155,9 @@
},
"dependencies": {
"which": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/which/-/which-3.0.0.tgz",
- "integrity": "sha512-nla//68K9NU6yRiwDY/Q8aU6siKlSs64aEC7+IV56QoAuyQT2ovsJcgGYGyqMOmI/CGN1BOR6mM5EN0FBO+zyQ==",
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz",
+ "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==",
"dev": true,
"requires": {
"isexe": "^2.0.0"
@@ -10962,9 +11166,9 @@
}
},
"@npmcli/run-script": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-6.0.0.tgz",
- "integrity": "sha512-ql+AbRur1TeOdl1FY+RAwGW9fcr4ZwiVKabdvm93mujGREVuVLbdkXRJDrkTXSdCjaxYydr1wlA2v67jxWG5BQ==",
+ "version": "6.0.2",
+ "resolved": "https://registry.npmjs.org/@npmcli/run-script/-/run-script-6.0.2.tgz",
+ "integrity": "sha512-NCcr1uQo1k5U+SYlnIrbAh3cxy+OQT1VtqiAbxdymSlptbzBb62AjH2xXgjNCoP073hoa1CfCAcwoZ8k96C4nA==",
"dev": true,
"requires": {
"@npmcli/node-gyp": "^3.0.0",
@@ -10975,9 +11179,9 @@
},
"dependencies": {
"which": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/which/-/which-3.0.0.tgz",
- "integrity": "sha512-nla//68K9NU6yRiwDY/Q8aU6siKlSs64aEC7+IV56QoAuyQT2ovsJcgGYGyqMOmI/CGN1BOR6mM5EN0FBO+zyQ==",
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/which/-/which-3.0.1.tgz",
+ "integrity": "sha512-XA1b62dzQzLfaEOSQFTCOd5KFf/1VSzZo7/7TUjnya6u0vGGKzU96UQBZTAThCb2j4/xjBAyii1OhRLJEivHvg==",
"dev": true,
"requires": {
"isexe": "^2.0.0"
@@ -10985,6 +11189,13 @@
}
}
},
+ "@pkgjs/parseargs": {
+ "version": "0.11.0",
+ "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz",
+ "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==",
+ "dev": true,
+ "optional": true
+ },
"@pnpm/network.ca-file": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/@pnpm/network.ca-file/-/network.ca-file-1.0.1.tgz",
@@ -11005,14 +11216,20 @@
}
},
"@primer/octicons": {
- "version": "18.3.0",
- "resolved": "https://registry.npmjs.org/@primer/octicons/-/octicons-18.3.0.tgz",
- "integrity": "sha512-vyUej5rKjXfqHAmYSo2k3pA9IsL5KJaYOBVXvc188FwBfUweA+WVP3qwWyZTSQnp9LK6yOajGyr0SCMIa9ombw==",
+ "version": "19.1.0",
+ "resolved": "https://registry.npmjs.org/@primer/octicons/-/octicons-19.1.0.tgz",
+ "integrity": "sha512-5o90F89gNPnAk1qfzl3hb/TcsUjk5g0WFI+fBRHLkBKzB3uc9EvxTpgzjXhhjyriOkrBOjFo58D0sjtwttaQww==",
"dev": true,
"requires": {
"object-assign": "^4.1.1"
}
},
+ "@sigstore/protobuf-specs": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/@sigstore/protobuf-specs/-/protobuf-specs-0.1.0.tgz",
+ "integrity": "sha512-a31EnjuIDSX8IXBUib3cYLDRlPMU36AWX4xS8ysLaNu4ZzUesDiPt83pgrW2X1YLMe5L2HbDyaKK5BrL4cNKaQ==",
+ "dev": true
+ },
"@sindresorhus/is": {
"version": "5.3.0",
"resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-5.3.0.tgz",
@@ -11064,6 +11281,42 @@
"integrity": "sha512-eZxlbI8GZscaGS7kkc/trHTT5xgrjH3/1n2JDwusC9iahPKWMRvRjJSAN5mCXviuTGQ/lHnhvv8Q1YTpnfz9gA==",
"dev": true
},
+ "@tufjs/canonical-json": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/@tufjs/canonical-json/-/canonical-json-1.0.0.tgz",
+ "integrity": "sha512-QTnf++uxunWvG2z3UFNzAoQPHxnSXOwtaI3iJ+AohhV+5vONuArPjJE7aPXPVXfXJsqrVbZBu9b81AJoSd09IQ==",
+ "dev": true
+ },
+ "@tufjs/models": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/@tufjs/models/-/models-1.0.4.tgz",
+ "integrity": "sha512-qaGV9ltJP0EO25YfFUPhxRVK0evXFIAGicsVXuRim4Ed9cjPxYhNnNJ49SFmbeLgtxpslIkX317IgpfcHPVj/A==",
+ "dev": true,
+ "requires": {
+ "@tufjs/canonical-json": "1.0.0",
+ "minimatch": "^9.0.0"
+ },
+ "dependencies": {
+ "brace-expansion": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
+ "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
+ "dev": true,
+ "requires": {
+ "balanced-match": "^1.0.0"
+ }
+ },
+ "minimatch": {
+ "version": "9.0.0",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.0.tgz",
+ "integrity": "sha512-0jJj8AvgKqWN05mrwuqi8QYKx1WmYSUoKSxu5Qhs9prezTz10sxAHGNZe9J9cqIJzta8DWsleh2KaVaLl6Ru2w==",
+ "dev": true,
+ "requires": {
+ "brace-expansion": "^2.0.1"
+ }
+ }
+ }
+ },
"@types/clean-css": {
"version": "4.2.5",
"resolved": "https://registry.npmjs.org/@types/clean-css/-/clean-css-4.2.5.tgz",
@@ -11134,9 +11387,9 @@
"dev": true
},
"@types/node": {
- "version": "18.15.11",
- "resolved": "https://registry.npmjs.org/@types/node/-/node-18.15.11.tgz",
- "integrity": "sha512-E5Kwq2n4SbMzQOn6wnmBjuK9ouqlURrcZDVfbo9ftDDTFt3nk7ZKK4GMOzoYgnpQJKcxwQw+lGaBvvlMo0qN/Q==",
+ "version": "20.1.4",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-20.1.4.tgz",
+ "integrity": "sha512-At4pvmIOki8yuwLtd7BNHl3CiWNbtclUbNtScGx4OHfBd4/oWoJC8KRCIxXwkdndzhxOsPXihrsOoydxBjlE9Q==",
"dev": true
},
"@types/normalize-package-data": {
@@ -11167,9 +11420,9 @@
}
},
"@types/semver": {
- "version": "7.3.13",
- "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.3.13.tgz",
- "integrity": "sha512-21cFJr9z3g5dW8B0CVI9g2O9beqaThGQ6ZFBqHfwhzLDKUxaqTIy3vnfah/UPkfOiF2pLq+tGz+W8RyCskuslw==",
+ "version": "7.5.0",
+ "resolved": "https://registry.npmjs.org/@types/semver/-/semver-7.5.0.tgz",
+ "integrity": "sha512-G8hZ6XJiHnuhQKR7ZmysCeJWE08o8T0AXtk5darsCaTVsYZhhgUrq53jizaR2FvsoeCwJhlmwTjkXBY5Pn/ZHw==",
"dev": true
},
"@types/uglify-js": {
@@ -11182,15 +11435,15 @@
}
},
"@typescript-eslint/eslint-plugin": {
- "version": "5.59.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.59.0.tgz",
- "integrity": "sha512-p0QgrEyrxAWBecR56gyn3wkG15TJdI//eetInP3zYRewDh0XS+DhB3VUAd3QqvziFsfaQIoIuZMxZRB7vXYaYw==",
+ "version": "5.59.5",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/eslint-plugin/-/eslint-plugin-5.59.5.tgz",
+ "integrity": "sha512-feA9xbVRWJZor+AnLNAr7A8JRWeZqHUf4T9tlP+TN04b05pFVhO5eN7/O93Y/1OUlLMHKbnJisgDURs/qvtqdg==",
"dev": true,
"requires": {
"@eslint-community/regexpp": "^4.4.0",
- "@typescript-eslint/scope-manager": "5.59.0",
- "@typescript-eslint/type-utils": "5.59.0",
- "@typescript-eslint/utils": "5.59.0",
+ "@typescript-eslint/scope-manager": "5.59.5",
+ "@typescript-eslint/type-utils": "5.59.5",
+ "@typescript-eslint/utils": "5.59.5",
"debug": "^4.3.4",
"grapheme-splitter": "^1.0.4",
"ignore": "^5.2.0",
@@ -11200,53 +11453,53 @@
}
},
"@typescript-eslint/parser": {
- "version": "5.59.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.59.0.tgz",
- "integrity": "sha512-qK9TZ70eJtjojSUMrrEwA9ZDQ4N0e/AuoOIgXuNBorXYcBDk397D2r5MIe1B3cok/oCtdNC5j+lUUpVB+Dpb+w==",
+ "version": "5.59.5",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/parser/-/parser-5.59.5.tgz",
+ "integrity": "sha512-NJXQC4MRnF9N9yWqQE2/KLRSOLvrrlZb48NGVfBa+RuPMN6B7ZcK5jZOvhuygv4D64fRKnZI4L4p8+M+rfeQuw==",
"dev": true,
"requires": {
- "@typescript-eslint/scope-manager": "5.59.0",
- "@typescript-eslint/types": "5.59.0",
- "@typescript-eslint/typescript-estree": "5.59.0",
+ "@typescript-eslint/scope-manager": "5.59.5",
+ "@typescript-eslint/types": "5.59.5",
+ "@typescript-eslint/typescript-estree": "5.59.5",
"debug": "^4.3.4"
}
},
"@typescript-eslint/scope-manager": {
- "version": "5.59.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.59.0.tgz",
- "integrity": "sha512-tsoldKaMh7izN6BvkK6zRMINj4Z2d6gGhO2UsI8zGZY3XhLq1DndP3Ycjhi1JwdwPRwtLMW4EFPgpuKhbCGOvQ==",
+ "version": "5.59.5",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/scope-manager/-/scope-manager-5.59.5.tgz",
+ "integrity": "sha512-jVecWwnkX6ZgutF+DovbBJirZcAxgxC0EOHYt/niMROf8p4PwxxG32Qdhj/iIQQIuOflLjNkxoXyArkcIP7C3A==",
"dev": true,
"requires": {
- "@typescript-eslint/types": "5.59.0",
- "@typescript-eslint/visitor-keys": "5.59.0"
+ "@typescript-eslint/types": "5.59.5",
+ "@typescript-eslint/visitor-keys": "5.59.5"
}
},
"@typescript-eslint/type-utils": {
- "version": "5.59.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.59.0.tgz",
- "integrity": "sha512-d/B6VSWnZwu70kcKQSCqjcXpVH+7ABKH8P1KNn4K7j5PXXuycZTPXF44Nui0TEm6rbWGi8kc78xRgOC4n7xFgA==",
+ "version": "5.59.5",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/type-utils/-/type-utils-5.59.5.tgz",
+ "integrity": "sha512-4eyhS7oGym67/pSxA2mmNq7X164oqDYNnZCUayBwJZIRVvKpBCMBzFnFxjeoDeShjtO6RQBHBuwybuX3POnDqg==",
"dev": true,
"requires": {
- "@typescript-eslint/typescript-estree": "5.59.0",
- "@typescript-eslint/utils": "5.59.0",
+ "@typescript-eslint/typescript-estree": "5.59.5",
+ "@typescript-eslint/utils": "5.59.5",
"debug": "^4.3.4",
"tsutils": "^3.21.0"
}
},
"@typescript-eslint/types": {
- "version": "5.59.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.59.0.tgz",
- "integrity": "sha512-yR2h1NotF23xFFYKHZs17QJnB51J/s+ud4PYU4MqdZbzeNxpgUr05+dNeCN/bb6raslHvGdd6BFCkVhpPk/ZeA==",
+ "version": "5.59.5",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/types/-/types-5.59.5.tgz",
+ "integrity": "sha512-xkfRPHbqSH4Ggx4eHRIO/eGL8XL4Ysb4woL8c87YuAo8Md7AUjyWKa9YMwTL519SyDPrfEgKdewjkxNCVeJW7w==",
"dev": true
},
"@typescript-eslint/typescript-estree": {
- "version": "5.59.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.59.0.tgz",
- "integrity": "sha512-sUNnktjmI8DyGzPdZ8dRwW741zopGxltGs/SAPgGL/AAgDpiLsCFLcMNSpbfXfmnNeHmK9h3wGmCkGRGAoUZAg==",
+ "version": "5.59.5",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/typescript-estree/-/typescript-estree-5.59.5.tgz",
+ "integrity": "sha512-+XXdLN2CZLZcD/mO7mQtJMvCkzRfmODbeSKuMY/yXbGkzvA9rJyDY5qDYNoiz2kP/dmyAxXquL2BvLQLJFPQIg==",
"dev": true,
"requires": {
- "@typescript-eslint/types": "5.59.0",
- "@typescript-eslint/visitor-keys": "5.59.0",
+ "@typescript-eslint/types": "5.59.5",
+ "@typescript-eslint/visitor-keys": "5.59.5",
"debug": "^4.3.4",
"globby": "^11.1.0",
"is-glob": "^4.0.3",
@@ -11255,28 +11508,28 @@
}
},
"@typescript-eslint/utils": {
- "version": "5.59.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.59.0.tgz",
- "integrity": "sha512-GGLFd+86drlHSvPgN/el6dRQNYYGOvRSDVydsUaQluwIW3HvbXuxyuD5JETvBt/9qGYe+lOrDk6gRrWOHb/FvA==",
+ "version": "5.59.5",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/utils/-/utils-5.59.5.tgz",
+ "integrity": "sha512-sCEHOiw+RbyTii9c3/qN74hYDPNORb8yWCoPLmB7BIflhplJ65u2PBpdRla12e3SSTJ2erRkPjz7ngLHhUegxA==",
"dev": true,
"requires": {
"@eslint-community/eslint-utils": "^4.2.0",
"@types/json-schema": "^7.0.9",
"@types/semver": "^7.3.12",
- "@typescript-eslint/scope-manager": "5.59.0",
- "@typescript-eslint/types": "5.59.0",
- "@typescript-eslint/typescript-estree": "5.59.0",
+ "@typescript-eslint/scope-manager": "5.59.5",
+ "@typescript-eslint/types": "5.59.5",
+ "@typescript-eslint/typescript-estree": "5.59.5",
"eslint-scope": "^5.1.1",
"semver": "^7.3.7"
}
},
"@typescript-eslint/visitor-keys": {
- "version": "5.59.0",
- "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.59.0.tgz",
- "integrity": "sha512-qZ3iXxQhanchCeaExlKPV3gDQFxMUmU35xfd5eCXB6+kUw1TUAbIy2n7QIrwz9s98DQLzNWyHp61fY0da4ZcbA==",
+ "version": "5.59.5",
+ "resolved": "https://registry.npmjs.org/@typescript-eslint/visitor-keys/-/visitor-keys-5.59.5.tgz",
+ "integrity": "sha512-qL+Oz+dbeBRTeyJTIy0eniD3uvqU7x+y1QceBismZ41hd4aBSRh8UAw4pZP0+XzLuPZmx4raNMq/I+59W2lXKA==",
"dev": true,
"requires": {
- "@typescript-eslint/types": "5.59.0",
+ "@typescript-eslint/types": "5.59.5",
"eslint-visitor-keys": "^3.3.0"
}
},
@@ -11324,13 +11577,13 @@
}
},
"agentkeepalive": {
- "version": "4.2.1",
- "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.2.1.tgz",
- "integrity": "sha512-Zn4cw2NEqd+9fiSVWMscnjyQ1a8Yfoc5oBajLeo5w+YBHgDUcEBY2hS4YpTz6iN5f/2zQiktcuM6tS8x1p9dpA==",
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.3.0.tgz",
+ "integrity": "sha512-7Epl1Blf4Sy37j4v9f9FjICCh4+KAQOyXgHEwlyBiAQLbhKdq/i2QQU3amQalS/wPhdPzDXPL5DMR5bkn+YeWg==",
"dev": true,
"requires": {
"debug": "^4.1.0",
- "depd": "^1.1.2",
+ "depd": "^2.0.0",
"humanize-ms": "^1.2.1"
}
},
@@ -11637,21 +11890,20 @@
}
},
"cacache": {
- "version": "17.0.4",
- "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.0.4.tgz",
- "integrity": "sha512-Z/nL3gU+zTUjz5pCA5vVjYM8pmaw2kxM7JEiE0fv3w77Wj+sFbi70CrBruUWH0uNcEdvLDixFpgA2JM4F4DBjA==",
+ "version": "17.1.0",
+ "resolved": "https://registry.npmjs.org/cacache/-/cacache-17.1.0.tgz",
+ "integrity": "sha512-hXpFU+Z3AfVmNuiLve1qxWHMq0RSIt5gjCKAHi/M6DktwFwDdAXAtunl1i4WSKaaVcU9IsRvXFg42jTHigcC6Q==",
"dev": true,
"requires": {
"@npmcli/fs": "^3.1.0",
"fs-minipass": "^3.0.0",
- "glob": "^8.0.1",
+ "glob": "^10.2.2",
"lru-cache": "^7.7.1",
- "minipass": "^4.0.0",
+ "minipass": "^5.0.0",
"minipass-collect": "^1.0.2",
"minipass-flush": "^1.0.5",
"minipass-pipeline": "^1.2.4",
"p-map": "^4.0.0",
- "promise-inflight": "^1.0.1",
"ssri": "^10.0.0",
"tar": "^6.1.11",
"unique-filename": "^3.0.0"
@@ -11667,28 +11919,28 @@
}
},
"glob": {
- "version": "8.1.0",
- "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz",
- "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==",
+ "version": "10.2.3",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-10.2.3.tgz",
+ "integrity": "sha512-Kb4rfmBVE3eQTAimgmeqc2LwSnN0wIOkkUL6HmxEFxNJ4fHghYHVbFba/HcGcRjE6s9KoMNK3rSOwkL4PioZjg==",
"dev": true,
"requires": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^5.0.1",
- "once": "^1.3.0"
+ "foreground-child": "^3.1.0",
+ "jackspeak": "^2.0.3",
+ "minimatch": "^9.0.0",
+ "minipass": "^5.0.0",
+ "path-scurry": "^1.7.0"
}
},
"lru-cache": {
- "version": "7.17.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.17.0.tgz",
- "integrity": "sha512-zSxlVVwOabhVyTi6E8gYv2cr6bXK+8ifYz5/uyJb9feXX6NACVDwY4p5Ut3WC3Ivo/QhpARHU3iujx2xGAYHbQ==",
+ "version": "7.18.3",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz",
+ "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==",
"dev": true
},
"minimatch": {
- "version": "5.1.6",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz",
- "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==",
+ "version": "9.0.0",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.0.tgz",
+ "integrity": "sha512-0jJj8AvgKqWN05mrwuqi8QYKx1WmYSUoKSxu5Qhs9prezTz10sxAHGNZe9J9cqIJzta8DWsleh2KaVaLl6Ru2w==",
"dev": true,
"requires": {
"brace-expansion": "^2.0.1"
@@ -12324,9 +12576,9 @@
"dev": true
},
"depd": {
- "version": "1.1.2",
- "resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz",
- "integrity": "sha512-7emPTl6Dpo6JRXOXjLRxck+FlLRX5847cLKEn00PLAgc3g2hTZZgr+e4c2v6QpSmLeFP3n5yUo7ft6avBK/5jQ==",
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz",
+ "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==",
"dev": true
},
"diff": {
@@ -12344,12 +12596,6 @@
"path-type": "^4.0.0"
}
},
- "dlv": {
- "version": "1.1.3",
- "resolved": "https://registry.npmjs.org/dlv/-/dlv-1.1.3.tgz",
- "integrity": "sha512-+HlytyjlPKnIG8XuRG8WvmBP8xs8P71y+SKKS6ZXWoEgLuePxtDoUEiH7WkdePWrQ5JBpE6aoVqfZfJUQkjXwA==",
- "dev": true
- },
"doctrine": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/doctrine/-/doctrine-3.0.0.tgz",
@@ -12504,33 +12750,33 @@
}
},
"esbuild": {
- "version": "0.17.17",
- "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.17.17.tgz",
- "integrity": "sha512-/jUywtAymR8jR4qsa2RujlAF7Krpt5VWi72Q2yuLD4e/hvtNcFQ0I1j8m/bxq238pf3/0KO5yuXNpuLx8BE1KA==",
+ "version": "0.17.19",
+ "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.17.19.tgz",
+ "integrity": "sha512-XQ0jAPFkK/u3LcVRcvVHQcTIqD6E2H1fvZMA5dQPSOWb3suUbWbfbRf94pjc0bNzRYLfIrDRQXr7X+LHIm5oHw==",
"dev": true,
"requires": {
- "@esbuild/android-arm": "0.17.17",
- "@esbuild/android-arm64": "0.17.17",
- "@esbuild/android-x64": "0.17.17",
- "@esbuild/darwin-arm64": "0.17.17",
- "@esbuild/darwin-x64": "0.17.17",
- "@esbuild/freebsd-arm64": "0.17.17",
- "@esbuild/freebsd-x64": "0.17.17",
- "@esbuild/linux-arm": "0.17.17",
- "@esbuild/linux-arm64": "0.17.17",
- "@esbuild/linux-ia32": "0.17.17",
- "@esbuild/linux-loong64": "0.17.17",
- "@esbuild/linux-mips64el": "0.17.17",
- "@esbuild/linux-ppc64": "0.17.17",
- "@esbuild/linux-riscv64": "0.17.17",
- "@esbuild/linux-s390x": "0.17.17",
- "@esbuild/linux-x64": "0.17.17",
- "@esbuild/netbsd-x64": "0.17.17",
- "@esbuild/openbsd-x64": "0.17.17",
- "@esbuild/sunos-x64": "0.17.17",
- "@esbuild/win32-arm64": "0.17.17",
- "@esbuild/win32-ia32": "0.17.17",
- "@esbuild/win32-x64": "0.17.17"
+ "@esbuild/android-arm": "0.17.19",
+ "@esbuild/android-arm64": "0.17.19",
+ "@esbuild/android-x64": "0.17.19",
+ "@esbuild/darwin-arm64": "0.17.19",
+ "@esbuild/darwin-x64": "0.17.19",
+ "@esbuild/freebsd-arm64": "0.17.19",
+ "@esbuild/freebsd-x64": "0.17.19",
+ "@esbuild/linux-arm": "0.17.19",
+ "@esbuild/linux-arm64": "0.17.19",
+ "@esbuild/linux-ia32": "0.17.19",
+ "@esbuild/linux-loong64": "0.17.19",
+ "@esbuild/linux-mips64el": "0.17.19",
+ "@esbuild/linux-ppc64": "0.17.19",
+ "@esbuild/linux-riscv64": "0.17.19",
+ "@esbuild/linux-s390x": "0.17.19",
+ "@esbuild/linux-x64": "0.17.19",
+ "@esbuild/netbsd-x64": "0.17.19",
+ "@esbuild/openbsd-x64": "0.17.19",
+ "@esbuild/sunos-x64": "0.17.19",
+ "@esbuild/win32-arm64": "0.17.19",
+ "@esbuild/win32-ia32": "0.17.19",
+ "@esbuild/win32-x64": "0.17.19"
}
},
"escalade": {
@@ -12557,15 +12803,15 @@
"dev": true
},
"eslint": {
- "version": "8.38.0",
- "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.38.0.tgz",
- "integrity": "sha512-pIdsD2jwlUGf/U38Jv97t8lq6HpaU/G9NKbYmpWpZGw3LdTNhZLbJePqxOXGB5+JEKfOPU/XLxYxFh03nr1KTg==",
+ "version": "8.40.0",
+ "resolved": "https://registry.npmjs.org/eslint/-/eslint-8.40.0.tgz",
+ "integrity": "sha512-bvR+TsP9EHL3TqNtj9sCNJVAFK3fBN8Q7g5waghxyRsPLIMwL73XSKnZFK0hk/O2ANC+iAoq6PWMQ+IfBAJIiQ==",
"dev": true,
"requires": {
"@eslint-community/eslint-utils": "^4.2.0",
"@eslint-community/regexpp": "^4.4.0",
- "@eslint/eslintrc": "^2.0.2",
- "@eslint/js": "8.38.0",
+ "@eslint/eslintrc": "^2.0.3",
+ "@eslint/js": "8.40.0",
"@humanwhocodes/config-array": "^0.11.8",
"@humanwhocodes/module-importer": "^1.0.1",
"@nodelib/fs.walk": "^1.2.8",
@@ -12575,9 +12821,9 @@
"debug": "^4.3.2",
"doctrine": "^3.0.0",
"escape-string-regexp": "^4.0.0",
- "eslint-scope": "^7.1.1",
- "eslint-visitor-keys": "^3.4.0",
- "espree": "^9.5.1",
+ "eslint-scope": "^7.2.0",
+ "eslint-visitor-keys": "^3.4.1",
+ "espree": "^9.5.2",
"esquery": "^1.4.2",
"esutils": "^2.0.2",
"fast-deep-equal": "^3.1.3",
@@ -12645,9 +12891,9 @@
"dev": true
},
"eslint-scope": {
- "version": "7.1.1",
- "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.1.1.tgz",
- "integrity": "sha512-QKQM/UXpIiHcLqJ5AOyIW7XZmzjkzQXYE54n1++wb0u9V/abW3l9uQnxX8Z5Xd18xyKIMTUAyQ0k1e8pz6LUrw==",
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/eslint-scope/-/eslint-scope-7.2.0.tgz",
+ "integrity": "sha512-DYj5deGlHBfMt15J7rdtyKNq/Nqlv5KfU4iodrQ019XESsRnwXH9KAE0y3cwtUHDo2ob7CypAnCqefh6vioWRw==",
"dev": true,
"requires": {
"esrecurse": "^4.3.0",
@@ -12816,18 +13062,18 @@
}
},
"eslint-plugin-jsdoc": {
- "version": "43.0.0",
- "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-43.0.0.tgz",
- "integrity": "sha512-Z1Ox1MAGcFV7ZNKe5eYIk4ALUtCjo1r4HBMoAYUs+bBKPcHro5A/YDDHOTsQ7zxcuUnm5R9rXCZTvGWcihwZpg==",
+ "version": "44.2.3",
+ "resolved": "https://registry.npmjs.org/eslint-plugin-jsdoc/-/eslint-plugin-jsdoc-44.2.3.tgz",
+ "integrity": "sha512-Ut9jL/170sMKRRFX7P7Ecmdc9XkPcANZs00QWG+VeMN/mcs0kzE6mXCmbhB4EUsLtRASLRAasOwVq0GN5r0oKw==",
"dev": true,
"requires": {
- "@es-joy/jsdoccomment": "~0.37.0",
+ "@es-joy/jsdoccomment": "~0.39.1",
"are-docs-informative": "^0.0.2",
"comment-parser": "1.3.1",
"debug": "^4.3.4",
"escape-string-regexp": "^4.0.0",
"esquery": "^1.5.0",
- "semver": "^7.3.8",
+ "semver": "^7.5.0",
"spdx-expression-parse": "^3.0.1"
},
"dependencies": {
@@ -12857,20 +13103,20 @@
}
},
"eslint-visitor-keys": {
- "version": "3.4.0",
- "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.0.tgz",
- "integrity": "sha512-HPpKPUBQcAsZOsHAFwTtIKcYlCje62XB7SEAcxjtmW6TD1WVpkS6i6/hOVtTZIl4zGj/mBqpFVGvaDneik+VoQ==",
+ "version": "3.4.1",
+ "resolved": "https://registry.npmjs.org/eslint-visitor-keys/-/eslint-visitor-keys-3.4.1.tgz",
+ "integrity": "sha512-pZnmmLwYzf+kWaM/Qgrvpen51upAktaaiI01nsJD/Yr3lMOdNtq0cxkrrg16w64VtisN6okbs7Q8AfGqj4c9fA==",
"dev": true
},
"espree": {
- "version": "9.5.1",
- "resolved": "https://registry.npmjs.org/espree/-/espree-9.5.1.tgz",
- "integrity": "sha512-5yxtHSZXRSW5pvv3hAlXM5+/Oswi1AUFqBmbibKb5s6bp3rGIDkyXU6xCoyuuLhijr4SFwPrXRoZjz0AZDN9tg==",
+ "version": "9.5.2",
+ "resolved": "https://registry.npmjs.org/espree/-/espree-9.5.2.tgz",
+ "integrity": "sha512-7OASN1Wma5fum5SrNhFMAMJxOUAbhyfQ8dQ//PJaJbNw0URTPWqIghHWt1MmAANKhHZIYOHruW4Kw4ruUWOdGw==",
"dev": true,
"requires": {
"acorn": "^8.8.0",
"acorn-jsx": "^5.3.2",
- "eslint-visitor-keys": "^3.4.0"
+ "eslint-visitor-keys": "^3.4.1"
}
},
"esquery": {
@@ -13042,6 +13288,24 @@
"is-callable": "^1.1.3"
}
},
+ "foreground-child": {
+ "version": "3.1.1",
+ "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.1.1.tgz",
+ "integrity": "sha512-TMKDUnIte6bfb5nWv7V/caI169OHgvwjb7V4WkeUvbQQdjr5rWKqHFiKWb/fcOwB+CzBT+qbWjvj+DVwRskpIg==",
+ "dev": true,
+ "requires": {
+ "cross-spawn": "^7.0.0",
+ "signal-exit": "^4.0.1"
+ },
+ "dependencies": {
+ "signal-exit": {
+ "version": "4.0.2",
+ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.2.tgz",
+ "integrity": "sha512-MY2/qGx4enyjprQnFaZsHib3Yadh3IXyV2C321GY0pjGfVBu4un0uDJkwgdxqO+Rdx8JMT8IfJIRwbYVz3Ob3Q==",
+ "dev": true
+ }
+ }
+ },
"form-data": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz",
@@ -13072,12 +13336,12 @@
"dev": true
},
"fs-minipass": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.1.tgz",
- "integrity": "sha512-MhaJDcFRTuLidHrIttu0RDGyyXs/IYHVmlcxfLAEFIWjc1vdLAkdwT7Ace2u7DbitWC0toKMl5eJZRYNVreIMw==",
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-3.0.2.tgz",
+ "integrity": "sha512-2GAfyfoaCDRrM6jaOS3UsBts8yJ55VioXdWcOL7dK9zdAuKT71+WBA4ifnNYqVjYv+4SsPxjK0JT4yIIn4cA/g==",
"dev": true,
"requires": {
- "minipass": "^4.0.0"
+ "minipass": "^5.0.0"
}
},
"fs.realpath": {
@@ -13661,12 +13925,12 @@
"dev": true
},
"ignore-walk": {
- "version": "6.0.1",
- "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-6.0.1.tgz",
- "integrity": "sha512-/c8MxUAqpRccq+LyDOecwF+9KqajueJHh8fz7g3YqjMZt+NSfJzx05zrKiXwa2sKwFCzaiZ5qUVfRj0pmxixEA==",
+ "version": "6.0.3",
+ "resolved": "https://registry.npmjs.org/ignore-walk/-/ignore-walk-6.0.3.tgz",
+ "integrity": "sha512-C7FfFoTA+bI10qfeydT8aZbvr91vAEU+2W5BZUlzPec47oNb07SsOfwYrtxuvOYdUApPP/Qlh4DtAO51Ekk2QA==",
"dev": true,
"requires": {
- "minimatch": "^6.1.6"
+ "minimatch": "^9.0.0"
},
"dependencies": {
"brace-expansion": {
@@ -13679,9 +13943,9 @@
}
},
"minimatch": {
- "version": "6.2.0",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-6.2.0.tgz",
- "integrity": "sha512-sauLxniAmvnhhRjFwPNnJKaPFYyddAgbYdeUpHULtCT/GhzdCx/MDNy+Y40lBxTQUrMzDE8e0S43Z5uqfO0REg==",
+ "version": "9.0.0",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.0.tgz",
+ "integrity": "sha512-0jJj8AvgKqWN05mrwuqi8QYKx1WmYSUoKSxu5Qhs9prezTz10sxAHGNZe9J9cqIJzta8DWsleh2KaVaLl6Ru2w==",
"dev": true,
"requires": {
"brace-expansion": "^2.0.1"
@@ -14008,6 +14272,16 @@
"integrity": "sha1-6PvzdNxVb/iUehDcsFctYz8s+hA=",
"dev": true
},
+ "jackspeak": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-2.2.0.tgz",
+ "integrity": "sha512-r5XBrqIJfwRIjRt/Xr5fv9Wh09qyhHfKnYddDlpM+ibRR20qrYActpCAgU6U+d53EOEjzkvxPMVHSlgR7leXrQ==",
+ "dev": true,
+ "requires": {
+ "@isaacs/cliui": "^8.0.2",
+ "@pkgjs/parseargs": "^0.11.0"
+ }
+ },
"jju": {
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/jju/-/jju-1.4.0.tgz",
@@ -14259,9 +14533,9 @@
"integrity": "sha512-zTU3DaZaF3Rt9rhN3uBMGQD3dD2/vFQqnvZCDv4dl5iOzq2IZQqTxu90r4E5J+nP70J3ilqVCrbho2eWaeW8Ow=="
},
"lunr-languages": {
- "version": "1.10.0",
- "resolved": "https://registry.npmjs.org/lunr-languages/-/lunr-languages-1.10.0.tgz",
- "integrity": "sha512-BBjKKcwrieJlzwwc9M5H/MRXGJ2qyOSDx/NXYiwkuKjiLOOoouh0WsDzeqcLoUWcX31y7i8sb8IgsZKObdUCkw=="
+ "version": "1.12.0",
+ "resolved": "https://registry.npmjs.org/lunr-languages/-/lunr-languages-1.12.0.tgz",
+ "integrity": "sha512-C2z02jt74ymrDocBwxYB4Cr1LNZj9rHGLTH/00+JuoT6eJOSSuPBzeqQG8kjnlPUQe+/PAWv1/KHbDT+YYYRnA=="
},
"make-error": {
"version": "1.3.6",
@@ -14361,9 +14635,9 @@
}
},
"lru-cache": {
- "version": "7.17.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.17.0.tgz",
- "integrity": "sha512-zSxlVVwOabhVyTi6E8gYv2cr6bXK+8ifYz5/uyJb9feXX6NACVDwY4p5Ut3WC3Ivo/QhpARHU3iujx2xGAYHbQ==",
+ "version": "7.18.3",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz",
+ "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==",
"dev": true
},
"minimatch": {
@@ -14384,12 +14658,6 @@
"yallist": "^4.0.0"
}
},
- "mkdirp": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
- "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
- "dev": true
- },
"rimraf": {
"version": "3.0.2",
"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
@@ -14624,9 +14892,9 @@
}
},
"minipass": {
- "version": "4.2.4",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.4.tgz",
- "integrity": "sha512-lwycX3cBMTvcejsHITUgYj6Gy6A7Nh4Q6h9NP4sTHY1ccJlC7yKzDmiShEHsJ16Jf1nKGDEaiHxiltsJEvk0nQ==",
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz",
+ "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==",
"dev": true
},
"minipass-collect": {
@@ -14774,6 +15042,12 @@
}
}
},
+ "mkdirp": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
+ "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
+ "dev": true
+ },
"ms": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
@@ -14926,9 +15200,9 @@
}
},
"npm-check-updates": {
- "version": "16.10.8",
- "resolved": "https://registry.npmjs.org/npm-check-updates/-/npm-check-updates-16.10.8.tgz",
- "integrity": "sha512-e+p3rUCvaU0iKOvi+/Xiyx+mLe9/aRTu9Zrc7+TR6H2q+uFgmXEwqbXYN9Ngqsta8gdTjpn751UD5MEOogO5cA==",
+ "version": "16.10.12",
+ "resolved": "https://registry.npmjs.org/npm-check-updates/-/npm-check-updates-16.10.12.tgz",
+ "integrity": "sha512-js/Gg9+5RTyOQZnmFcPswLxf4sK/H5AE/8bl4tkleLJTC1gXhQqqELUFwXqppNvx488aXxN52ZY9k9MSSvEW2A==",
"dev": true,
"requires": {
"chalk": "^5.2.0",
@@ -14945,7 +15219,7 @@
"json-parse-helpfulerror": "^1.0.3",
"jsonlines": "^0.1.1",
"lodash": "^4.17.21",
- "minimatch": "^8.0.3",
+ "minimatch": "^9.0.0",
"p-map": "^4.0.0",
"pacote": "15.1.1",
"parse-github-url": "^1.0.2",
@@ -14953,8 +15227,8 @@
"prompts-ncu": "^3.0.0",
"rc-config-loader": "^4.1.2",
"remote-git-tags": "^3.0.0",
- "rimraf": "^4.4.1",
- "semver": "^7.3.8",
+ "rimraf": "^5.0.0",
+ "semver": "^7.4.0",
"semver-utils": "^1.1.4",
"source-map-support": "^0.5.21",
"spawn-please": "^2.0.1",
@@ -14979,9 +15253,9 @@
"dev": true
},
"commander": {
- "version": "10.0.0",
- "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.0.tgz",
- "integrity": "sha512-zS5PnTI22FIRM6ylNW8G4Ap0IEOyk62fhLSD0+uHRT9McRCLGpkVNvao4bjimpK/GShynyQkFFxHhwMcETmduA==",
+ "version": "10.0.1",
+ "resolved": "https://registry.npmjs.org/commander/-/commander-10.0.1.tgz",
+ "integrity": "sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==",
"dev": true
},
"find-up": {
@@ -14994,18 +15268,6 @@
"path-exists": "^4.0.0"
}
},
- "glob": {
- "version": "9.3.5",
- "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.5.tgz",
- "integrity": "sha512-e1LleDykUz2Iu+MTYdkSsuWX8lvAjAcs0Xef0lNIu0S2wOAzuTxCJtcd9S3cijlwYF18EsU3rzb8jPVobxDh9Q==",
- "dev": true,
- "requires": {
- "fs.realpath": "^1.0.0",
- "minimatch": "^8.0.2",
- "minipass": "^4.2.4",
- "path-scurry": "^1.6.1"
- }
- },
"hosted-git-info": {
"version": "5.1.0",
"resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-5.1.0.tgz",
@@ -15016,9 +15278,9 @@
}
},
"ini": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/ini/-/ini-4.0.0.tgz",
- "integrity": "sha512-t0ikzf5qkSFqRl1e6ejKBe+Tk2bsQd8ivEkcisyGXsku2t8NvXZ1Y3RRz5vxrDgOrTBOi13CvGsVoI5wVpd7xg==",
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.0.tgz",
+ "integrity": "sha512-HLR38RSF2iulAzc3I/sma4CoYxQP844rPYCNfzGDOHqa/YqVlwuuZgBx6M50/X8dKgzk0cm1qRg3+47mK2N+cQ==",
"dev": true
},
"locate-path": {
@@ -15037,9 +15299,9 @@
"dev": true
},
"minimatch": {
- "version": "8.0.4",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-8.0.4.tgz",
- "integrity": "sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==",
+ "version": "9.0.0",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.0.tgz",
+ "integrity": "sha512-0jJj8AvgKqWN05mrwuqi8QYKx1WmYSUoKSxu5Qhs9prezTz10sxAHGNZe9J9cqIJzta8DWsleh2KaVaLl6Ru2w==",
"dev": true,
"requires": {
"brace-expansion": "^2.0.1"
@@ -15069,15 +15331,6 @@
"integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
"dev": true
},
- "rimraf": {
- "version": "4.4.1",
- "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-4.4.1.tgz",
- "integrity": "sha512-Gk8NlF062+T9CqNGn6h4tls3k6T1+/nXdOcSZVikNVtlRdYpA7wRJJMoXmuvOnLW844rPjdQ7JgXCYM6PPC/og==",
- "dev": true,
- "requires": {
- "glob": "^9.2.0"
- }
- },
"strip-json-comments": {
"version": "5.0.0",
"resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-5.0.0.tgz",
@@ -15087,18 +15340,18 @@
}
},
"npm-install-checks": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.0.0.tgz",
- "integrity": "sha512-SBU9oFglRVZnfElwAtF14NivyulDqF1VKqqwNsFW9HDcbHMAPHpRSsVFgKuwFGq/hVvWZExz62Th0kvxn/XE7Q==",
+ "version": "6.1.1",
+ "resolved": "https://registry.npmjs.org/npm-install-checks/-/npm-install-checks-6.1.1.tgz",
+ "integrity": "sha512-dH3GmQL4vsPtld59cOn8uY0iOqRmqKvV+DLGwNXV/Q7MDgD2QfOADWd/mFXcIE5LVhYYGjA3baz6W9JneqnuCw==",
"dev": true,
"requires": {
"semver": "^7.1.1"
}
},
"npm-normalize-package-bin": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.0.tgz",
- "integrity": "sha512-g+DPQSkusnk7HYXr75NtzkIP4+N81i3RPsGFidF3DzHd9MT9wWngmqoeg/fnHFz5MNdtG4w03s+QnhewSLTT2Q==",
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/npm-normalize-package-bin/-/npm-normalize-package-bin-3.0.1.tgz",
+ "integrity": "sha512-dMxCf+zZ+3zeQZXKxmyuCKlIDPGuv8EF940xbkC4kQVDTtqoh6rJFO+JTKSA6/Rwi0getWmtuy4Itup0AMcaDQ==",
"dev": true
},
"npm-package-arg": {
@@ -15123,9 +15376,9 @@
}
},
"lru-cache": {
- "version": "7.17.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.17.0.tgz",
- "integrity": "sha512-zSxlVVwOabhVyTi6E8gYv2cr6bXK+8ifYz5/uyJb9feXX6NACVDwY4p5Ut3WC3Ivo/QhpARHU3iujx2xGAYHbQ==",
+ "version": "7.18.3",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz",
+ "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==",
"dev": true
}
}
@@ -15152,13 +15405,13 @@
}
},
"npm-registry-fetch": {
- "version": "14.0.3",
- "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-14.0.3.tgz",
- "integrity": "sha512-YaeRbVNpnWvsGOjX2wk5s85XJ7l1qQBGAp724h8e2CZFFhMSuw9enom7K1mWVUtvXO1uUSFIAPofQK0pPN0ZcA==",
+ "version": "14.0.5",
+ "resolved": "https://registry.npmjs.org/npm-registry-fetch/-/npm-registry-fetch-14.0.5.tgz",
+ "integrity": "sha512-kIDMIo4aBm6xg7jOttupWZamsZRkAqMqwqqbVXnUqstY5+tapvv6bkH/qMR76jdgV+YljEUCyWx3hRYMrJiAgA==",
"dev": true,
"requires": {
"make-fetch-happen": "^11.0.0",
- "minipass": "^4.0.0",
+ "minipass": "^5.0.0",
"minipass-fetch": "^3.0.0",
"minipass-json-stream": "^1.0.1",
"minizlib": "^2.1.2",
@@ -15167,15 +15420,15 @@
},
"dependencies": {
"lru-cache": {
- "version": "7.17.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.17.0.tgz",
- "integrity": "sha512-zSxlVVwOabhVyTi6E8gYv2cr6bXK+8ifYz5/uyJb9feXX6NACVDwY4p5Ut3WC3Ivo/QhpARHU3iujx2xGAYHbQ==",
+ "version": "7.18.3",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz",
+ "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==",
"dev": true
},
"make-fetch-happen": {
- "version": "11.0.3",
- "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.0.3.tgz",
- "integrity": "sha512-oPLh5m10lRNNZDjJ2kP8UpboUx2uFXVaVweVe/lWut4iHWcQEmfqSVJt2ihZsFI8HbpwyyocaXbCAWf0g1ukIA==",
+ "version": "11.1.1",
+ "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz",
+ "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==",
"dev": true,
"requires": {
"agentkeepalive": "^4.2.1",
@@ -15185,7 +15438,7 @@
"https-proxy-agent": "^5.0.0",
"is-lambda": "^1.0.1",
"lru-cache": "^7.7.1",
- "minipass": "^4.0.0",
+ "minipass": "^5.0.0",
"minipass-fetch": "^3.0.0",
"minipass-flush": "^1.0.5",
"minipass-pipeline": "^1.2.4",
@@ -15196,13 +15449,13 @@
}
},
"minipass-fetch": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.1.tgz",
- "integrity": "sha512-t9/wowtf7DYkwz8cfMSt0rMwiyNIBXf5CKZ3S5ZMqRqMYT0oLTp0x1WorMI9WTwvaPg21r1JbFxJMum8JrLGfw==",
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.3.tgz",
+ "integrity": "sha512-n5ITsTkDqYkYJZjcRWzZt9qnZKCT7nKCosJhHoj7S7zD+BP4jVbWs+odsniw5TA3E0sLomhTKOKjF86wf11PuQ==",
"dev": true,
"requires": {
"encoding": "^0.1.13",
- "minipass": "^4.0.0",
+ "minipass": "^5.0.0",
"minipass-sized": "^1.0.3",
"minizlib": "^2.1.2"
}
@@ -15474,6 +15727,14 @@
"sigstore": "^1.0.0",
"ssri": "^10.0.0",
"tar": "^6.1.11"
+ },
+ "dependencies": {
+ "minipass": {
+ "version": "4.2.8",
+ "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.8.tgz",
+ "integrity": "sha512-fNzuVyifolSLFL4NzpF+wEF4qrgqaaKX0haXPQEdQ7NKAN+WecoKMHV09YcuL/DHxrUsYQOK3MiuDf7Ip2OXfQ==",
+ "dev": true
+ }
}
},
"param-case": {
@@ -15537,9 +15798,9 @@
"dev": true
},
"path-scurry": {
- "version": "1.6.4",
- "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.6.4.tgz",
- "integrity": "sha512-Qp/9IHkdNiXJ3/Kon++At2nVpnhRiPq/aSvQN+H3U1WZbvNRK0RIQK/o4HMqPoXjpuGJUEWpHSs6Mnjxqh3TQg==",
+ "version": "1.7.0",
+ "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.7.0.tgz",
+ "integrity": "sha512-UkZUeDjczjYRE495+9thsgcVgsaCPkaw80slmfVFgllxY+IO8ubTsOpFVjDPROBqJdHfVPUFRHPBV/WciOVfWg==",
"dev": true,
"requires": {
"lru-cache": "^9.0.0",
@@ -15551,12 +15812,6 @@
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-9.0.0.tgz",
"integrity": "sha512-9AEKXzvOZc4BMacFnYiTOlDH/197LNnQIK9wZ6iMB5NXPzuv4bWR/Msv7iUMplkiMQ1qQL+KSv/JF1mZAB5Lrg==",
"dev": true
- },
- "minipass": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz",
- "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==",
- "dev": true
}
}
},
@@ -15591,9 +15846,9 @@
"dev": true
},
"postcss": {
- "version": "8.4.22",
- "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.22.tgz",
- "integrity": "sha512-XseknLAfRHzVWjCEtdviapiBtfLdgyzExD50Rg2ePaucEesyh8Wv4VPdW0nbyDa1ydbrAxV19jvMT4+LFmcNUA==",
+ "version": "8.4.23",
+ "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.23.tgz",
+ "integrity": "sha512-bQ3qMcpF6A/YjR55xtoTr0jGOlnPOKAIMdOWiv0EIT6HVPEaJiJB4NLljSbiHoC2RX7DN5Uvjtpbg1NPdwv1oA==",
"dev": true,
"requires": {
"nanoid": "^3.3.6",
@@ -15923,9 +16178,9 @@
"requires": {}
},
"postcss-selector-parser": {
- "version": "6.0.11",
- "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.11.tgz",
- "integrity": "sha512-zbARubNdogI9j7WY4nQJBiNqQf3sLS3wCP4WfOidu+p28LofJqDH1tcXypGrcmMHhDk2t9wGhCsYe/+szLTy1g==",
+ "version": "6.0.12",
+ "resolved": "https://registry.npmjs.org/postcss-selector-parser/-/postcss-selector-parser-6.0.12.tgz",
+ "integrity": "sha512-NdxGCAZdRrwVI1sy59+Wzrh+pMMHxapGnpfenDVlMEXoOcvt4pGE0JLK9YY2F5dLxcFYA/YbVQKhcGU+FtSYQg==",
"dev": true,
"requires": {
"cssesc": "^3.0.0",
@@ -16054,9 +16309,9 @@
"dev": true
},
"preact": {
- "version": "10.13.2",
- "resolved": "https://registry.npmjs.org/preact/-/preact-10.13.2.tgz",
- "integrity": "sha512-q44QFLhOhty2Bd0Y46fnYW0gD/cbVM9dUVtNTDKPcdXSMA7jfY+Jpd6rk3GB0lcQss0z5s/6CmVP0Z/hV+g6pw==",
+ "version": "10.14.0",
+ "resolved": "https://registry.npmjs.org/preact/-/preact-10.14.0.tgz",
+ "integrity": "sha512-4oh2sf208mKAdL5AQtzXxE387iSGNWMX/YjwMjH6m/XROILKAmx5Pbs2FsXrW7ixoVGGjpfYSBB833vOwYxNxw==",
"dev": true
},
"prelude-ls": {
@@ -16189,12 +16444,12 @@
}
},
"read-package-json": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-6.0.0.tgz",
- "integrity": "sha512-b/9jxWJ8EwogJPpv99ma+QwtqB7FSl3+V6UXS7Aaay8/5VwMY50oIFooY1UKXMWpfNCM6T/PoGqa5GD1g9xf9w==",
+ "version": "6.0.3",
+ "resolved": "https://registry.npmjs.org/read-package-json/-/read-package-json-6.0.3.tgz",
+ "integrity": "sha512-4QbpReW4kxFgeBQ0vPAqh2y8sXEB3D4t3jsXbJKIhBiF80KT6XRo45reqwtftju5J6ru1ax06A2Gb/wM1qCOEQ==",
"dev": true,
"requires": {
- "glob": "^8.0.1",
+ "glob": "^10.2.2",
"json-parse-even-better-errors": "^3.0.0",
"normalize-package-data": "^5.0.0",
"npm-normalize-package-bin": "^3.0.0"
@@ -16210,16 +16465,16 @@
}
},
"glob": {
- "version": "8.1.0",
- "resolved": "https://registry.npmjs.org/glob/-/glob-8.1.0.tgz",
- "integrity": "sha512-r8hpEjiQEYlF2QU0df3dS+nxxSIreXQS1qRhMJM0Q5NDdR386C7jb7Hwwod8Fgiuex+k0GFjgft18yvxm5XoCQ==",
+ "version": "10.2.3",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-10.2.3.tgz",
+ "integrity": "sha512-Kb4rfmBVE3eQTAimgmeqc2LwSnN0wIOkkUL6HmxEFxNJ4fHghYHVbFba/HcGcRjE6s9KoMNK3rSOwkL4PioZjg==",
"dev": true,
"requires": {
- "fs.realpath": "^1.0.0",
- "inflight": "^1.0.4",
- "inherits": "2",
- "minimatch": "^5.0.1",
- "once": "^1.3.0"
+ "foreground-child": "^3.1.0",
+ "jackspeak": "^2.0.3",
+ "minimatch": "^9.0.0",
+ "minipass": "^5.0.0",
+ "path-scurry": "^1.7.0"
}
},
"hosted-git-info": {
@@ -16238,15 +16493,15 @@
"dev": true
},
"lru-cache": {
- "version": "7.17.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.17.0.tgz",
- "integrity": "sha512-zSxlVVwOabhVyTi6E8gYv2cr6bXK+8ifYz5/uyJb9feXX6NACVDwY4p5Ut3WC3Ivo/QhpARHU3iujx2xGAYHbQ==",
+ "version": "7.18.3",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz",
+ "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==",
"dev": true
},
"minimatch": {
- "version": "5.1.6",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-5.1.6.tgz",
- "integrity": "sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==",
+ "version": "9.0.0",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.0.tgz",
+ "integrity": "sha512-0jJj8AvgKqWN05mrwuqi8QYKx1WmYSUoKSxu5Qhs9prezTz10sxAHGNZe9J9cqIJzta8DWsleh2KaVaLl6Ru2w==",
"dev": true,
"requires": {
"brace-expansion": "^2.0.1"
@@ -16407,9 +16662,9 @@
}
},
"readable-stream": {
- "version": "3.6.0",
- "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz",
- "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==",
+ "version": "3.6.2",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz",
+ "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==",
"dev": true,
"requires": {
"inherits": "^2.0.3",
@@ -16580,12 +16835,6 @@
"requires": {
"brace-expansion": "^2.0.1"
}
- },
- "minipass": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz",
- "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==",
- "dev": true
}
}
},
@@ -16599,9 +16848,9 @@
}
},
"rxjs": {
- "version": "7.8.0",
- "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.0.tgz",
- "integrity": "sha512-F2+gxDshqmIub1KdvZkaEfGDwLNpPvk9Fs6LD/MyQxNgMds/WH9OdDDXOmxUZpME+iSK3rQCctkL0DYyytUqMg==",
+ "version": "7.8.1",
+ "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-7.8.1.tgz",
+ "integrity": "sha512-AA3TVj+0A2iuIoQkWEK/tqFjBq2j+6PO6Y0zJcvzLAFhEFIO3HL0vls9hWLncZbAAbK0mar7oZ4V079I/qPMxg==",
"requires": {
"tslib": "^2.1.0"
},
@@ -16613,6 +16862,12 @@
}
}
},
+ "safe-buffer": {
+ "version": "5.2.1",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
+ "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
+ "dev": true
+ },
"safe-regex-test": {
"version": "1.0.0",
"resolved": "https://registry.npmjs.org/safe-regex-test/-/safe-regex-test-1.0.0.tgz",
@@ -16632,9 +16887,9 @@
"optional": true
},
"sass": {
- "version": "1.62.0",
- "resolved": "https://registry.npmjs.org/sass/-/sass-1.62.0.tgz",
- "integrity": "sha512-Q4USplo4pLYgCi+XlipZCWUQz5pkg/ruSSgJ0WRDSb/+3z9tXUOkQ7QPYn4XrhZKYAK4HlpaQecRwKLJX6+DBg==",
+ "version": "1.62.1",
+ "resolved": "https://registry.npmjs.org/sass/-/sass-1.62.1.tgz",
+ "integrity": "sha512-NHpxIzN29MXvWiuswfc1W3I0N8SXBd8UR26WntmDlRYf0bSADnwnOjsyMZ3lMezSlArD33Vs3YFhp7dWvL770A==",
"dev": true,
"requires": {
"chokidar": ">=3.0.0 <4.0.0",
@@ -16648,9 +16903,9 @@
"integrity": "sha1-DnNQrN7ICxEIUoeG7B1EGNEbOW0="
},
"semver": {
- "version": "7.3.8",
- "resolved": "https://registry.npmjs.org/semver/-/semver-7.3.8.tgz",
- "integrity": "sha512-NB1ctGL5rlHrPJtFDVIVzTyQylMLu9N9VICA6HSFJo8MCGVTMW6gfpicwKmmK/dAjTOrqu5l63JJOpDSrAis3A==",
+ "version": "7.5.0",
+ "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.0.tgz",
+ "integrity": "sha512-+XC0AD/R7Q2mPSRuy2Id0+CGTZ98+8f+KvwirxOKIEyid+XSx6HbC63p+O4IndTHuX5Z+JxQ0TghCkO5Cg/2HA==",
"dev": true,
"requires": {
"lru-cache": "^6.0.0"
@@ -16716,25 +16971,26 @@
"dev": true
},
"sigstore": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-1.0.0.tgz",
- "integrity": "sha512-e+qfbn/zf1+rCza/BhIA//Awmf0v1pa5HQS8Xk8iXrn9bgytytVLqYD0P7NSqZ6IELTgq+tcDvLPkQjNHyWLNg==",
+ "version": "1.5.0",
+ "resolved": "https://registry.npmjs.org/sigstore/-/sigstore-1.5.0.tgz",
+ "integrity": "sha512-i3nhvdobiPj8XrXNIggjeur6+A5iAQ4f+r1bR5SGitFJBbthy/6c7Fz0h+kY70Wua1FSMdDr/UEhXSVRXNpynw==",
"dev": true,
"requires": {
+ "@sigstore/protobuf-specs": "^0.1.0",
"make-fetch-happen": "^11.0.1",
- "tuf-js": "^1.0.0"
+ "tuf-js": "^1.1.3"
},
"dependencies": {
"lru-cache": {
- "version": "7.17.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.17.0.tgz",
- "integrity": "sha512-zSxlVVwOabhVyTi6E8gYv2cr6bXK+8ifYz5/uyJb9feXX6NACVDwY4p5Ut3WC3Ivo/QhpARHU3iujx2xGAYHbQ==",
+ "version": "7.18.3",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz",
+ "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==",
"dev": true
},
"make-fetch-happen": {
- "version": "11.0.3",
- "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.0.3.tgz",
- "integrity": "sha512-oPLh5m10lRNNZDjJ2kP8UpboUx2uFXVaVweVe/lWut4iHWcQEmfqSVJt2ihZsFI8HbpwyyocaXbCAWf0g1ukIA==",
+ "version": "11.1.1",
+ "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz",
+ "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==",
"dev": true,
"requires": {
"agentkeepalive": "^4.2.1",
@@ -16744,7 +17000,7 @@
"https-proxy-agent": "^5.0.0",
"is-lambda": "^1.0.1",
"lru-cache": "^7.7.1",
- "minipass": "^4.0.0",
+ "minipass": "^5.0.0",
"minipass-fetch": "^3.0.0",
"minipass-flush": "^1.0.5",
"minipass-pipeline": "^1.2.4",
@@ -16755,13 +17011,13 @@
}
},
"minipass-fetch": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.1.tgz",
- "integrity": "sha512-t9/wowtf7DYkwz8cfMSt0rMwiyNIBXf5CKZ3S5ZMqRqMYT0oLTp0x1WorMI9WTwvaPg21r1JbFxJMum8JrLGfw==",
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.3.tgz",
+ "integrity": "sha512-n5ITsTkDqYkYJZjcRWzZt9qnZKCT7nKCosJhHoj7S7zD+BP4jVbWs+odsniw5TA3E0sLomhTKOKjF86wf11PuQ==",
"dev": true,
"requires": {
"encoding": "^0.1.13",
- "minipass": "^4.0.0",
+ "minipass": "^5.0.0",
"minipass-sized": "^1.0.3",
"minizlib": "^2.1.2"
}
@@ -16769,9 +17025,9 @@
}
},
"simple-icons": {
- "version": "8.10.0",
- "resolved": "https://registry.npmjs.org/simple-icons/-/simple-icons-8.10.0.tgz",
- "integrity": "sha512-q3MX9Og3ekffeY4vA2EEhKIzuVqARI4zAnK0wgQ1wJLIbzhspRrauRqd6eUO2YT3eH09uqRIVLphf0S0apBT/g==",
+ "version": "8.13.0",
+ "resolved": "https://registry.npmjs.org/simple-icons/-/simple-icons-8.13.0.tgz",
+ "integrity": "sha512-rS75HEr/E6/7jEFpWrKfhMhDopdqrZiXa6PveKlUWS12kz7Evv2s7ZrMKKpKKF8OsM3sNP0/FEIe0q4lHx9EvA==",
"dev": true
},
"sisteransi": {
@@ -16920,12 +17176,12 @@
"dev": true
},
"ssri": {
- "version": "10.0.1",
- "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.1.tgz",
- "integrity": "sha512-WVy6di9DlPOeBWEjMScpNipeSX2jIZBGEn5Uuo8Q7aIuFEuDX0pw8RxcOjlD1TWP4obi24ki7m/13+nFpcbXrw==",
+ "version": "10.0.4",
+ "resolved": "https://registry.npmjs.org/ssri/-/ssri-10.0.4.tgz",
+ "integrity": "sha512-12+IR2CB2C28MMAw0Ncqwj5QbTcs0nGIhgJzYWzDkb21vWmfNI83KS4f3Ci6GI98WreIfG7o9UXp3C0qbpA8nQ==",
"dev": true,
"requires": {
- "minipass": "^4.0.0"
+ "minipass": "^5.0.0"
}
},
"stable": {
@@ -16947,14 +17203,6 @@
"dev": true,
"requires": {
"safe-buffer": "~5.2.0"
- },
- "dependencies": {
- "safe-buffer": {
- "version": "5.2.1",
- "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
- "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==",
- "dev": true
- }
}
},
"string-width": {
@@ -16968,6 +17216,17 @@
"strip-ansi": "^6.0.1"
}
},
+ "string-width-cjs": {
+ "version": "npm:string-width@4.2.3",
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
+ "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
+ "dev": true,
+ "requires": {
+ "emoji-regex": "^8.0.0",
+ "is-fullwidth-code-point": "^3.0.0",
+ "strip-ansi": "^6.0.1"
+ }
+ },
"string.prototype.padend": {
"version": "3.1.2",
"resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.1.2.tgz",
@@ -17010,6 +17269,15 @@
"ansi-regex": "^5.0.1"
}
},
+ "strip-ansi-cjs": {
+ "version": "npm:strip-ansi@6.0.1",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
+ "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
+ "dev": true,
+ "requires": {
+ "ansi-regex": "^5.0.1"
+ }
+ },
"strip-bom": {
"version": "3.0.0",
"resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
@@ -17048,14 +17316,14 @@
}
},
"stylelint": {
- "version": "15.5.0",
- "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-15.5.0.tgz",
- "integrity": "sha512-jyMO3R1QtE5mUS4v40+Gg+sIQBqe7CF1xPslxycDzNVkIBCUD4O+5F1vLPq16VmunUTv4qG9o2rUKLnU5KkVeQ==",
+ "version": "15.6.1",
+ "resolved": "https://registry.npmjs.org/stylelint/-/stylelint-15.6.1.tgz",
+ "integrity": "sha512-d8icFBlVl93Elf3Z5ABQNOCe4nx69is3D/NZhDLAie1eyYnpxfeKe7pCfqzT5W4F8vxHCLSDfV8nKNJzogvV2Q==",
"dev": true,
"requires": {
- "@csstools/css-parser-algorithms": "^2.1.0",
- "@csstools/css-tokenizer": "^2.1.0",
- "@csstools/media-query-list-parser": "^2.0.2",
+ "@csstools/css-parser-algorithms": "^2.1.1",
+ "@csstools/css-tokenizer": "^2.1.1",
+ "@csstools/media-query-list-parser": "^2.0.4",
"@csstools/selector-specificity": "^2.2.0",
"balanced-match": "^2.0.0",
"colord": "^2.9.3",
@@ -17080,11 +17348,11 @@
"micromatch": "^4.0.5",
"normalize-path": "^3.0.0",
"picocolors": "^1.0.0",
- "postcss": "^8.4.21",
+ "postcss": "^8.4.23",
"postcss-media-query-parser": "^0.2.3",
"postcss-resolve-nested-selector": "^0.1.1",
"postcss-safe-parser": "^6.0.0",
- "postcss-selector-parser": "^6.0.11",
+ "postcss-selector-parser": "^6.0.12",
"postcss-value-parser": "^4.2.0",
"resolve-from": "^5.0.0",
"string-width": "^4.2.3",
@@ -17094,7 +17362,7 @@
"svg-tags": "^1.0.0",
"table": "^6.8.1",
"v8-compile-cache": "^2.3.0",
- "write-file-atomic": "^5.0.0"
+ "write-file-atomic": "^5.0.1"
},
"dependencies": {
"balanced-match": {
@@ -17138,14 +17406,20 @@
"integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==",
"dev": true
},
+ "signal-exit": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.0.1.tgz",
+ "integrity": "sha512-uUWsN4aOxJAS8KOuf3QMyFtgm1pkb6I+KRZbRF/ghdf5T7sM+B1lLLzPDxswUjkmHyxQAVzEgG35E3NzDM9GVw==",
+ "dev": true
+ },
"write-file-atomic": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.0.tgz",
- "integrity": "sha512-R7NYMnHSlV42K54lwY9lvW6MnSm1HSJqZL3xiSgi9E7//FYaI74r2G0rd+/X6VAMkHEdzxQaU5HUOXWUz5kA/w==",
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.1.tgz",
+ "integrity": "sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==",
"dev": true,
"requires": {
"imurmurhash": "^0.1.4",
- "signal-exit": "^3.0.7"
+ "signal-exit": "^4.0.1"
}
}
}
@@ -17167,51 +17441,47 @@
"requires": {}
},
"stylelint-config-recommended-scss": {
- "version": "10.0.0",
- "resolved": "https://registry.npmjs.org/stylelint-config-recommended-scss/-/stylelint-config-recommended-scss-10.0.0.tgz",
- "integrity": "sha512-+YvPgUHi0W5mCJCKdupBCIsWPYNbWuJcRmFtSYujwNg+41ljFknhO9bpY6C+oahv659zW7W1AT7i6DQvJYYr1A==",
+ "version": "11.0.0",
+ "resolved": "https://registry.npmjs.org/stylelint-config-recommended-scss/-/stylelint-config-recommended-scss-11.0.0.tgz",
+ "integrity": "sha512-EDghTDU7aOv2LTsRZvcT1w8mcjUaMhuy+t38iV5I/0Qiu6ixdkRwhLEMul3K/fnB2v9Nwqvb3xpvJfPH+HduDw==",
"dev": true,
"requires": {
"postcss-scss": "^4.0.6",
- "stylelint-config-recommended": "^11.0.0",
+ "stylelint-config-recommended": "^12.0.0",
"stylelint-scss": "^4.6.0"
},
"dependencies": {
- "stylelint-config-recommended": {
- "version": "11.0.0",
- "resolved": "https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-11.0.0.tgz",
- "integrity": "sha512-SoGIHNI748OCZn6BxFYT83ytWoYETCINVHV3LKScVAWQQauWdvmdDqJC5YXWjpBbxg2E761Tg5aUGKLFOVhEkA==",
+ "stylelint-scss": {
+ "version": "4.7.0",
+ "resolved": "https://registry.npmjs.org/stylelint-scss/-/stylelint-scss-4.7.0.tgz",
+ "integrity": "sha512-TSUgIeS0H3jqDZnby1UO1Qv3poi1N8wUYIJY6D1tuUq2MN3lwp/rITVo0wD+1SWTmRm0tNmGO0b7nKInnqF6Hg==",
"dev": true,
- "requires": {}
+ "requires": {
+ "postcss-media-query-parser": "^0.2.3",
+ "postcss-resolve-nested-selector": "^0.1.1",
+ "postcss-selector-parser": "^6.0.11",
+ "postcss-value-parser": "^4.2.0"
+ }
}
}
},
"stylelint-config-standard": {
- "version": "32.0.0",
- "resolved": "https://registry.npmjs.org/stylelint-config-standard/-/stylelint-config-standard-32.0.0.tgz",
- "integrity": "sha512-UnGJxYDyYFrIE9CjDMZRkrNh2o4lOtO+MVZ9qG5b8yARfsWho0GMx4YvhHfsv8zKKgHeWX2wfeyxmuoqcaYZ4w==",
+ "version": "33.0.0",
+ "resolved": "https://registry.npmjs.org/stylelint-config-standard/-/stylelint-config-standard-33.0.0.tgz",
+ "integrity": "sha512-eyxnLWoXImUn77+ODIuW9qXBDNM+ALN68L3wT1lN2oNspZ7D9NVGlNHb2QCUn4xDug6VZLsh0tF8NyoYzkgTzg==",
"dev": true,
"requires": {
- "stylelint-config-recommended": "^11.0.0"
- },
- "dependencies": {
- "stylelint-config-recommended": {
- "version": "11.0.0",
- "resolved": "https://registry.npmjs.org/stylelint-config-recommended/-/stylelint-config-recommended-11.0.0.tgz",
- "integrity": "sha512-SoGIHNI748OCZn6BxFYT83ytWoYETCINVHV3LKScVAWQQauWdvmdDqJC5YXWjpBbxg2E761Tg5aUGKLFOVhEkA==",
- "dev": true,
- "requires": {}
- }
+ "stylelint-config-recommended": "^12.0.0"
}
},
"stylelint-config-standard-scss": {
- "version": "8.0.0",
- "resolved": "https://registry.npmjs.org/stylelint-config-standard-scss/-/stylelint-config-standard-scss-8.0.0.tgz",
- "integrity": "sha512-TDT/gJD/0LUDoUgkjF1uoI/4DfczXHxg7gJVcWT4/JbE6k5hszVuI14reNX+tEwSyMNhcK2BA7izrK+uVAz7XA==",
+ "version": "9.0.0",
+ "resolved": "https://registry.npmjs.org/stylelint-config-standard-scss/-/stylelint-config-standard-scss-9.0.0.tgz",
+ "integrity": "sha512-yPKpJsrZn4ybuQZx/DkEHuCjw7pJginErE/47dFhCnrvD48IJ4UYec8tSiCuJWMA3HRjbIa3nh5ZeSauDGuVAg==",
"dev": true,
"requires": {
- "stylelint-config-recommended-scss": "^10.0.0",
- "stylelint-config-standard": "^32.0.0"
+ "stylelint-config-recommended-scss": "^11.0.0",
+ "stylelint-config-standard": "^33.0.0"
}
},
"stylelint-order": {
@@ -17225,12 +17495,11 @@
}
},
"stylelint-scss": {
- "version": "4.6.0",
- "resolved": "https://registry.npmjs.org/stylelint-scss/-/stylelint-scss-4.6.0.tgz",
- "integrity": "sha512-M+E0BQim6G4XEkaceEhfVjP/41C9Klg5/tTPTCQVlgw/jm2tvB+OXJGaU0TDP5rnTCB62aX6w+rT+gqJW/uwjA==",
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/stylelint-scss/-/stylelint-scss-5.0.0.tgz",
+ "integrity": "sha512-5Ee5kG3JIcP2jk2PMoFMiNmW/815V+wK5o37X5ke90ihWMpPXI9iyqeA6zEWipWSRXeQc0kqbd7hKqiR+wPKNA==",
"dev": true,
"requires": {
- "dlv": "^1.1.3",
"postcss-media-query-parser": "^0.2.3",
"postcss-resolve-nested-selector": "^0.1.1",
"postcss-selector-parser": "^6.0.11",
@@ -17346,14 +17615,14 @@
}
},
"tar": {
- "version": "6.1.13",
- "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.13.tgz",
- "integrity": "sha512-jdIBIN6LTIe2jqzay/2vtYLlBHa3JF42ot3h1dW8Q0PaAG4v8rm0cvpVePtau5C6OKXGGcgO9q2AMNSWxiLqKw==",
+ "version": "6.1.14",
+ "resolved": "https://registry.npmjs.org/tar/-/tar-6.1.14.tgz",
+ "integrity": "sha512-piERznXu0U7/pW7cdSn7hjqySIVTYT6F76icmFk7ptU7dDYlXTm5r9A6K04R2vU3olYgoKeo1Cg3eeu5nhftAw==",
"dev": true,
"requires": {
"chownr": "^2.0.0",
"fs-minipass": "^2.0.0",
- "minipass": "^4.0.0",
+ "minipass": "^5.0.0",
"minizlib": "^2.1.1",
"mkdirp": "^1.0.3",
"yallist": "^4.0.0"
@@ -17378,12 +17647,6 @@
}
}
}
- },
- "mkdirp": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
- "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==",
- "dev": true
}
}
},
@@ -17484,34 +17747,26 @@
}
},
"tuf-js": {
- "version": "1.0.0",
- "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-1.0.0.tgz",
- "integrity": "sha512-1dxsQwESDzACJjTdYHQ4wJ1f/of7jALWKfJEHSBWUQB/5UTJUx9SW6GHXp4mZ1KvdBRJCpGjssoPFGi4hvw8/A==",
+ "version": "1.1.6",
+ "resolved": "https://registry.npmjs.org/tuf-js/-/tuf-js-1.1.6.tgz",
+ "integrity": "sha512-CXwFVIsXGbVY4vFiWF7TJKWmlKJAT8TWkH4RmiohJRcDJInix++F0dznDmoVbtJNzZ8yLprKUG4YrDIhv3nBMg==",
"dev": true,
"requires": {
- "make-fetch-happen": "^11.0.1",
- "minimatch": "^6.1.0"
+ "@tufjs/models": "1.0.4",
+ "debug": "^4.3.4",
+ "make-fetch-happen": "^11.1.0"
},
"dependencies": {
- "brace-expansion": {
- "version": "2.0.1",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz",
- "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==",
- "dev": true,
- "requires": {
- "balanced-match": "^1.0.0"
- }
- },
"lru-cache": {
- "version": "7.17.0",
- "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.17.0.tgz",
- "integrity": "sha512-zSxlVVwOabhVyTi6E8gYv2cr6bXK+8ifYz5/uyJb9feXX6NACVDwY4p5Ut3WC3Ivo/QhpARHU3iujx2xGAYHbQ==",
+ "version": "7.18.3",
+ "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-7.18.3.tgz",
+ "integrity": "sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==",
"dev": true
},
"make-fetch-happen": {
- "version": "11.0.3",
- "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.0.3.tgz",
- "integrity": "sha512-oPLh5m10lRNNZDjJ2kP8UpboUx2uFXVaVweVe/lWut4iHWcQEmfqSVJt2ihZsFI8HbpwyyocaXbCAWf0g1ukIA==",
+ "version": "11.1.1",
+ "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-11.1.1.tgz",
+ "integrity": "sha512-rLWS7GCSTcEujjVBs2YqG7Y4643u8ucvCJeSRqiLYhesrDuzeuFIk37xREzAsfQaqzl8b9rNCE4m6J8tvX4Q8w==",
"dev": true,
"requires": {
"agentkeepalive": "^4.2.1",
@@ -17521,7 +17776,7 @@
"https-proxy-agent": "^5.0.0",
"is-lambda": "^1.0.1",
"lru-cache": "^7.7.1",
- "minipass": "^4.0.0",
+ "minipass": "^5.0.0",
"minipass-fetch": "^3.0.0",
"minipass-flush": "^1.0.5",
"minipass-pipeline": "^1.2.4",
@@ -17531,23 +17786,14 @@
"ssri": "^10.0.0"
}
},
- "minimatch": {
- "version": "6.2.0",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-6.2.0.tgz",
- "integrity": "sha512-sauLxniAmvnhhRjFwPNnJKaPFYyddAgbYdeUpHULtCT/GhzdCx/MDNy+Y40lBxTQUrMzDE8e0S43Z5uqfO0REg==",
- "dev": true,
- "requires": {
- "brace-expansion": "^2.0.1"
- }
- },
"minipass-fetch": {
- "version": "3.0.1",
- "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.1.tgz",
- "integrity": "sha512-t9/wowtf7DYkwz8cfMSt0rMwiyNIBXf5CKZ3S5ZMqRqMYT0oLTp0x1WorMI9WTwvaPg21r1JbFxJMum8JrLGfw==",
+ "version": "3.0.3",
+ "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-3.0.3.tgz",
+ "integrity": "sha512-n5ITsTkDqYkYJZjcRWzZt9qnZKCT7nKCosJhHoj7S7zD+BP4jVbWs+odsniw5TA3E0sLomhTKOKjF86wf11PuQ==",
"dev": true,
"requires": {
"encoding": "^0.1.13",
- "minipass": "^4.0.0",
+ "minipass": "^5.0.0",
"minipass-sized": "^1.0.3",
"minizlib": "^2.1.2"
}
@@ -17868,9 +18114,9 @@
"dev": true
},
"wrap-ansi": {
- "version": "8.0.1",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.0.1.tgz",
- "integrity": "sha512-QFF+ufAqhoYHvoHdajT/Po7KoXVBPXS2bgjIam5isfWJPfIOnQZ50JtUiVvCv/sjgacf3yRrt2ZKUZ/V4itN4g==",
+ "version": "8.1.0",
+ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz",
+ "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==",
"dev": true,
"requires": {
"ansi-styles": "^6.1.0",
@@ -17918,6 +18164,43 @@
}
}
},
+ "wrap-ansi-cjs": {
+ "version": "npm:wrap-ansi@7.0.0",
+ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz",
+ "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==",
+ "dev": true,
+ "requires": {
+ "ansi-styles": "^4.0.0",
+ "string-width": "^4.1.0",
+ "strip-ansi": "^6.0.0"
+ },
+ "dependencies": {
+ "ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "requires": {
+ "color-convert": "^2.0.1"
+ }
+ },
+ "color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "requires": {
+ "color-name": "~1.1.4"
+ }
+ },
+ "color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ }
+ }
+ },
"wrappy": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
diff --git a/package.json b/package.json
index 1b45922f8..f8667b8b1 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
{
"name": "mkdocs-material",
- "version": "9.1.8",
+ "version": "9.1.12",
"description": "Documentation that simply works",
"keywords": [
"mkdocs",
@@ -46,34 +46,34 @@
"fuzzaldrin-plus": "^0.6.0",
"iframe-worker": "^1.0.3",
"lunr": "^2.3.9",
- "lunr-languages": "^1.10.0",
+ "lunr-languages": "^1.12.0",
"resize-observer-polyfill": "^1.5.1",
- "rxjs": "^7.8.0",
+ "rxjs": "^7.8.1",
"unfetch": "^5.0.0",
"url-polyfill": "^1.1.12"
},
"devDependencies": {
"@fortawesome/fontawesome-free": "^6.4.0",
"@mdi/svg": "^7.2.96",
- "@primer/octicons": "^18.3.0",
+ "@primer/octicons": "^19.1.0",
"@types/css-modules": "^1.0.2",
"@types/escape-html": "^1.0.2",
"@types/fuzzaldrin-plus": "^0.6.2",
"@types/html-minifier": "^4.0.2",
"@types/lunr": "^2.3.4",
- "@types/node": "^18.15.11",
+ "@types/node": "^20.1.4",
"@types/resize-observer-browser": "^0.1.7",
"@types/sass": "^1.45.0",
- "@typescript-eslint/eslint-plugin": "^5.59.0",
- "@typescript-eslint/parser": "^5.59.0",
+ "@typescript-eslint/eslint-plugin": "^5.59.5",
+ "@typescript-eslint/parser": "^5.59.5",
"autoprefixer": "^10.4.14",
"chokidar": "^3.5.3",
"cssnano": "5.1.0",
- "esbuild": "^0.17.17",
- "eslint": "^8.38.0",
+ "esbuild": "^0.17.19",
+ "eslint": "^8.40.0",
"eslint-plugin-eslint-comments": "^3.2.0",
"eslint-plugin-import": "^2.27.5",
- "eslint-plugin-jsdoc": "^43.0.0",
+ "eslint-plugin-jsdoc": "^44.2.3",
"eslint-plugin-no-null": "^1.0.2",
"github-types": "^1.0.0",
"gitlab": "^14.2.2",
@@ -81,28 +81,28 @@
"html-minifier": "^4.0.0",
"material-design-color": "^2.3.2",
"material-shadows": "^3.0.1",
- "npm-check-updates": "^16.10.8",
+ "npm-check-updates": "^16.10.12",
"npm-run-all": "^4.1.5",
- "postcss": "^8.4.22",
+ "postcss": "^8.4.23",
"postcss-dir-pseudo-class": "^7.0.2",
"postcss-inline-svg": "^6.0.0",
"postcss-logical": "5.0.4",
"postcss-pseudo-is": "^0.3.0",
- "preact": "^10.13.2",
+ "preact": "^10.14.0",
"rimraf": "^5.0.0",
- "sass": "^1.62.0",
- "simple-icons": "^8.10.0",
- "stylelint": "^15.5.0",
+ "sass": "^1.62.1",
+ "simple-icons": "^8.13.0",
+ "stylelint": "^15.6.1",
"stylelint-config-recess-order": "^4.0.0",
"stylelint-config-recommended": "^12.0.0",
- "stylelint-config-standard-scss": "^8.0.0",
- "stylelint-scss": "^4.6.0",
+ "stylelint-config-standard-scss": "^9.0.0",
+ "stylelint-scss": "^5.0.0",
"svgo": "3.0.0",
"tiny-glob": "^0.2.9",
"ts-node": "^10.9.1",
"typescript": "^5.0.4"
},
"engines": {
- "node": ">= 16"
+ "node": ">= 18"
}
}
diff --git a/src/.overrides/assets/stylesheets/custom/_typeset.scss b/src/.overrides/assets/stylesheets/custom/_typeset.scss
index 70e8b752e..d9e3fba4f 100644
--- a/src/.overrides/assets/stylesheets/custom/_typeset.scss
+++ b/src/.overrides/assets/stylesheets/custom/_typeset.scss
@@ -211,4 +211,74 @@
}
}
}
+
+ // Social card
+ .mdx-social {
+ position: relative;
+ height: min(#{px2rem(540px)}, 80vw);
+
+ // Social card image on hover
+ &:hover .mdx-social__image {
+ background-color: rgba(228, 228, 228, 0.05);
+ }
+
+ // Social card layer
+ &__layer {
+ position: absolute;
+ margin-top: px2rem(80px);
+ transition: 250ms cubic-bezier(0.7, 0, 0.3, 1);
+ transform-style: preserve-3d;
+
+ // Social card layer on hover
+ &:hover {
+
+ // Social card label
+ .mdx-social__label {
+ opacity: 1;
+ }
+
+ // Social card image
+ .mdx-social__image {
+ background-color: rgba(127, 127, 127, 0.99);
+ }
+
+ // Hide top layers
+ ~ .mdx-social__layer {
+ opacity: 0;
+ }
+ }
+ }
+
+ // Social card image
+ &__image {
+ box-shadow:
+ px2rem(-5px) px2rem(5px) px2rem(10px)
+ rgba(0, 0, 0, 0.05);
+ transition: all 250ms;
+ transform: rotate(-40deg) skew(15deg, 15deg) scale(0.7);
+
+ // Actual image
+ img {
+ display: block;
+ }
+ }
+
+ // Social card label
+ &__label {
+ position: absolute;
+ display: block;
+ padding: px2rem(4px) px2rem(8px);
+ color: var(--md-default-bg-color);
+ background-color: var(--md-default-fg-color--light);
+ opacity: 0;
+ transition: all 250ms;
+ }
+
+ // Transform on hover
+ @for $i from 6 through 0 {
+ &:hover .mdx-social__layer:nth-child(#{$i}) {
+ transform: translateY(#{($i - 3) * -10}px);
+ }
+ }
+ }
}
diff --git a/src/.overrides/hooks/translations.py b/src/.overrides/hooks/translations.py
index 6650db911..663a01c1f 100644
--- a/src/.overrides/hooks/translations.py
+++ b/src/.overrides/hooks/translations.py
@@ -151,6 +151,7 @@ countries = dict({
"it": "it",
"ja": "jp",
"ka": "ge",
+ "kn": "in",
"ko": "kr",
"ku-IQ": "iq",
"lt": "lt",
@@ -167,12 +168,14 @@ countries = dict({
"pt": "pt",
"ro": "ro",
"ru": "ru",
+ "sa": "in",
"sh": "rs",
"si": "lk",
"sk": "sk",
"sl": "si",
"sr": "rs",
"sv": "se",
+ "te": "in",
"th": "th",
"tl": "ph",
"tr": "tr",
diff --git a/src/assets/javascripts/components/content/annotation/_/index.ts b/src/assets/javascripts/components/content/annotation/_/index.ts
index 01c4d6736..07855a3c8 100644
--- a/src/assets/javascripts/components/content/annotation/_/index.ts
+++ b/src/assets/javascripts/components/content/annotation/_/index.ts
@@ -222,7 +222,10 @@ export function mountAnnotation(
takeUntil(done$),
filter(ev => !(ev.metaKey || ev.ctrlKey))
)
- .subscribe(ev => ev.preventDefault())
+ .subscribe(ev => {
+ ev.stopPropagation()
+ ev.preventDefault()
+ })
/* Allow to open link in new tab or blur on close */
fromEvent(index, "mousedown")
diff --git a/src/assets/javascripts/components/content/tabs/index.ts b/src/assets/javascripts/components/content/tabs/index.ts
index 35bcf37d0..f57447e26 100644
--- a/src/assets/javascripts/components/content/tabs/index.ts
+++ b/src/assets/javascripts/components/content/tabs/index.ts
@@ -244,6 +244,13 @@ export function mountContentTabs(
}
})
+ /* Pause media (audio, video) on switch - see https://bit.ly/3Bk6cel */
+ push$.pipe(takeUntil(done$))
+ .subscribe(() => {
+ for (const media of getElements("audio, video", el))
+ media.pause()
+ })
+
/* Create and return component */
return watchContentTabs(el)
.pipe(
diff --git a/src/assets/stylesheets/main/_colors.scss b/src/assets/stylesheets/main/_colors.scss
index 1be8127be..58135e495 100644
--- a/src/assets/stylesheets/main/_colors.scss
+++ b/src/assets/stylesheets/main/_colors.scss
@@ -47,6 +47,12 @@
// Allow to explicitly use color schemes in nested content
[data-md-color-scheme="default"] {
@extend %root;
+
+ // Hide images for dark mode
+ img[src$="#only-dark"],
+ img[src$="#gh-dark-mode-only"] {
+ display: none;
+ }
}
// ----------------------------------------------------------------------------
diff --git a/src/assets/stylesheets/main/_typeset.scss b/src/assets/stylesheets/main/_typeset.scss
index 94e054ff9..1c322859e 100644
--- a/src/assets/stylesheets/main/_typeset.scss
+++ b/src/assets/stylesheets/main/_typeset.scss
@@ -413,12 +413,6 @@ kbd {
&[align]:only-child {
margin-top: 0;
}
-
- // Hide images for dark mode
- &[src$="#only-dark"],
- &[src$="#gh-dark-mode-only"] {
- display: none;
- }
}
// Figure
diff --git a/src/assets/stylesheets/palette/_scheme.scss b/src/assets/stylesheets/palette/_scheme.scss
index f4d1a69d9..a4704018d 100644
--- a/src/assets/stylesheets/palette/_scheme.scss
+++ b/src/assets/stylesheets/palette/_scheme.scss
@@ -110,12 +110,6 @@
img[src$="#gh-light-mode-only"] {
display: none;
}
-
- // Show images for dark mode
- img[src$="#only-dark"],
- img[src$="#gh-dark-mode-only"] {
- display: initial;
- }
}
// --------------------------------------------------------------------------
diff --git a/src/partials/languages/bn.html b/src/partials/languages/bn.html
index 872706b6f..0a3ee6d04 100644
--- a/src/partials/languages/bn.html
+++ b/src/partials/languages/bn.html
@@ -25,25 +25,52 @@
"language": "bn",
"action.edit": "এই পেজ এডিট করুন",
"action.skip": "কনটেন্টে যান",
+ "action.view": "পেজের ভিউ",
+ "announce.dismiss": "আর কখনো দেখাবে না",
+ "blog.archive": "সংরক্ষণাগার",
+ "blog.categories": "বিভাগ",
+ "blog.categories.in": "বিভাগের মধ্যে",
+ "blog.continue": "পড়তে থাকুন",
+ "blog.draft": "খসড়া",
+ "blog.index": "ইনডেক্সে ফিরে যান",
+ "blog.meta": "মেটাডেটা",
+ "blog.references": "সম্পর্কিত লিংক",
"clipboard.copy": "ক্লিপবোর্ডে কপি করুন",
"clipboard.copied": "ক্লিপবোর্ডে কপি হয়েছে",
+ "consent.accept": "গ্রহণ",
+ "consent.manage": "সেটিংস ব্যবস্থাপনা",
+ "consent.reject": "প্রত্যাখ্যান",
"footer": "ফুটার",
"footer.next": "পরে",
"footer.previous": "পূর্ববর্তী",
"header": "হেডার",
- "meta.comments": "কমেন্ট",
- "meta.source": "সোর্স",
+ "meta.comments": "মন্তব্য",
+ "meta.source": "উৎস",
"nav": "ন্যাভিগেশন",
+ "readtime.one": "১ মিনিট পড়া",
+ "readtime.other": "# মিনিট পড়া",
+ "rss.created": "আরএসএস ফিড",
+ "rss.updated": "আপডেট করা বিষয়বস্তুর আরএসএস ফিড",
+ "search": "অনুসন্ধান করুন",
"search.config.pipeline": " ",
- "search.placeholder": "সার্চ",
- "search.reset": "মুছে ফেলুন",
+ "search.placeholder": "অনুসন্ধান করুন",
+ "search.share": "শেয়ার",
+ "search.reset": "রিসেট",
+ "search.result.initializer": "অনুসন্ধান শুরু করা হচ্ছে",
"search.result.placeholder": "সার্চ টাইপ করুন",
"search.result.none": "কিছু পাওয়া যায়নি",
"search.result.one": "১ টা ডকুমেন্ট",
"search.result.other": "# টা ডকুমেন্ট",
+ "search.result.more.one": "এই পৃষ্ঠায় আরও ১টি আছে",
+ "search.result.more.other": "এই পৃষ্ঠায় আরও #টি আছে",
+ "search.result.term.missing": "অনুপস্থিত",
+ "select.language": "ভাষা নির্বাচন করুণ",
+ "select.version": "সংস্করণ নির্বাচন করুণ",
"source": "রিপোজিটরিতে যান",
+ "source.file.contributors": "অবদানকারী",
"source.file.date.created": "তৈরি হয়েছে",
"source.file.date.updated": "শেষ আপডেট",
"tabs": "ট্যাব",
- "toc": "টেবিল অফ কনটেন্ট"
+ "toc": "সূচি তালিকা",
+ "top": "উপরে ফিরে যাও"
}[key] }}{% endmacro %}
diff --git a/src/partials/languages/kn.html b/src/partials/languages/kn.html
new file mode 100644
index 000000000..bd0ff722d
--- /dev/null
+++ b/src/partials/languages/kn.html
@@ -0,0 +1,75 @@
+
+
+
+{% macro t(key) %}{{ {
+ "language": "kn",
+ "action.edit": "ಈ ಪುಟವನ್ನು ತಿದ್ದುಪಡಿ ಮಾಡಿ",
+ "action.skip": "ವಿಷಯಕ್ಕೆ ತೆರಳಿ",
+ "action.view": "ಈ ಪುಟದ ಮೂಲವನ್ನು ವೀಕ್ಷಿಸಿ",
+ "announce.dismiss": "ಇದನ್ನು ಮತ್ತೊಮ್ಮೆ ತೋರಿಸಬೇಡಿ",
+ "blog.archive": "ಹಳೆಯ ಲೇಖನ",
+ "blog.categories": "ವರ್ಗಗಳು",
+ "blog.categories.in": "ರಲ್ಲಿ",
+ "blog.continue": "ಓದು ಮುಂದುವರೆಸಿ",
+ "blog.draft": "ಆರಂಭಿಕ ಬರವಣಿಗೆ",
+ "blog.index": "ಸೂಚ್ಯಂಕಕ್ಕೆ ಹಿಂತಿರುಗಿ",
+ "blog.meta": "ಮಾಹಿತಿಯ ಬಗ್ಗೆ ಮಾಹಿತಿ",
+ "blog.references": "ಸಂಬಂಧಿತ ಉಲ್ಲೇಖಗಳು",
+ "clipboard.copy": "ಇದನ್ನು ನಕಲಿಸಿ",
+ "clipboard.copied": "ಇದನ್ನು ನಕಲು ಮಾಡಿದೆ",
+ "consent.accept": "ನಾನು ಇದನ್ನು ಒಪ್ಪಿಕೊಳ್ಳುತ್ತೇನೆ",
+ "consent.manage": "ಸಂರಚನೆಯನ್ನು ನಿರ್ವಹಿಸಿ",
+ "consent.reject": "ನಾನು ಇದನ್ನು ತಿರಸ್ಕರಿಸುತ್ತೇನೆ",
+ "footer": "ಅಡಿಟಿಪ್ಪಣಿ",
+ "footer.next": "ಮುಂದಿನ ಸಂಚಿಕೆ",
+ "footer.previous": "ಹಿಂದಿನ ಸಂಚಿಕೆ",
+ "header": "ಮೇಲ್ಟಿಪ್ಪಣಿ",
+ "meta.comments": "ಪ್ರತಿಕ್ರಿಯೆಗಳು",
+ "meta.source": "ಮೂಲ",
+ "nav": "ಸಂಚರಣೆ",
+ "readtime.one": "ಓದಲು ೧ ನಿಮಿಷ ತೆಗೆದುಕೊಳ್ಳುತ್ತದೆ",
+ "readtime.other": "ಓದಲು # ನಿಮಿಷಗಳನ್ನು ತೆಗೆದುಕೊಳ್ಳುತ್ತದೆ",
+ "rss.created": "ಆರ್ಎಸ್ಎಸ್ ಸೇವೆ",
+ "rss.updated": "ಆರ್ಎಸ್ಎಸ್ ಸೇವೆಯಿಂದ ಇತ್ತೀಚಿನ ನವೀಕರಣ",
+ "search": "ಹುಡುಕಿ",
+ "search.placeholder": "ಹುಡುಕಿ",
+ "search.share": "ಹಂಚಿಕೊಳ್ಳಿ",
+ "search.reset": "ಅಳಿಸು",
+ "search.result.initializer": "ಹುಡುಕಾಟವನ್ನು ಪ್ರಾರಂಭಿಸಲಾಗುತ್ತಿದೆ",
+ "search.result.placeholder": "ಬರೆಯುವ ಮೂಲಕ ಹುಡುಕಲು ಪ್ರಾರಂಭಿಸಿ",
+ "search.result.none": "ಹೊಂದಾಣಿಕೆಯಾಗುವ ದಾಖಲೆಗಳಿಲ್ಲ",
+ "search.result.one": "೧ ಹೊಂದಾಣಿಕೆಯ ದಾಖಲೆಯಿದೆ",
+ "search.result.other": "# ಹೊಂದಾಣಿಕೆಯ ದಾಖಲೆಗಳಿವೆ",
+ "search.result.more.one": "ಈ ಪುಟದಲ್ಲಿ ಇನ್ನೂ ಒಂದು ಕಂಡುಬಂದಿದೆ",
+ "search.result.more.other": "ಈ ಪುಟದಲ್ಲಿ ಇನ್ನೂ # ಇವೆ",
+ "search.result.term.missing": "ಕಾಣೆಯಾಗಿದೆ",
+ "select.language": "ಭಾಷೆಯನ್ನು ಆಯ್ಕೆಮಾಡಿ",
+ "select.version": "ಆವೃತ್ತಿಯನ್ನು ಆಯ್ಕೆಮಾಡಿ",
+ "source": "ಭಂಡಾರಕ್ಕೆ ಹೋಗಿ",
+ "source.file.contributors": "ಕೊಡುಗೆದಾರರು",
+ "source.file.date.created": "ರಚಿಸಿದ ದಿನಾಂಕ",
+ "source.file.date.updated": "ಕೊನೆಯ ನವೀಕರಣ ದಿನಾಂಕ",
+ "tabs": "ವಿವಿಧ ಕಿಟಕಿಗಳು",
+ "toc": "ವಿಷಯಗಳ ಪಟ್ಟಿ",
+ "top": "ಮೇಲಕ್ಕೆ ಹಿಂತಿರುಗಿ"
+}[key] }}{% endmacro %}
diff --git a/src/partials/languages/sa.html b/src/partials/languages/sa.html
new file mode 100644
index 000000000..e3d06ac5e
--- /dev/null
+++ b/src/partials/languages/sa.html
@@ -0,0 +1,75 @@
+
+
+
+{% macro t(key) %}{{ {
+ "language": "sa",
+ "action.edit": "एतत् पृष्ठं सम्पादयतु",
+ "action.skip": "सामग्रीं त्यजन्तु",
+ "action.view": "अस्य पृष्ठस्य स्रोतः पश्यन्तु",
+ "announce.dismiss": "एतत् पुनः न दर्शयतु",
+ "blog.archive": "लेखागार",
+ "blog.categories": "श्रेणियाँ",
+ "blog.categories.in": "इत्यस्मिन्",
+ "blog.continue": "पठनं निरन्तरं कुर्वन्तु",
+ "blog.draft": "प्रारूप",
+ "blog.index": "अनुक्रमणिकां प्रति पुनः आगच्छन्तु",
+ "blog.meta": "परिदत्तांश",
+ "blog.references": "सन्दर्भाः",
+ "clipboard.copy": "एतत् प्रतिलिख्यताम्",
+ "clipboard.copied": "प्रतिलिपितः भवति",
+ "consent.accept": "अहं तत् स्वीकुर्वन् अस्मि",
+ "consent.manage": "वविन्यासं प्रबन्धयन्तु",
+ "consent.reject": "अहं तत् निराकरोमि",
+ "footer": "पादलेखः",
+ "footer.next": "अग्रिमः",
+ "footer.previous": "पूर्वकृत",
+ "header": "शीर्षकम्",
+ "meta.comments": "विचाराः",
+ "meta.source": "स्रोतः",
+ "nav": "मार्गदर्शनम्",
+ "readtime.one": "१ निमेषं पठितुं",
+ "readtime.other": "# निमेषं पठितुं",
+ "rss.created": "आरएसएस सेवा",
+ "rss.updated": "आरएसएस सेवातः नवीनतमं अद्यतनम्",
+ "search": "अन्वेषण",
+ "search.placeholder": "अन्वेषण",
+ "search.share": "साझां कुर्वन्तु",
+ "search.reset": "तत् स्वच्छं कुर्वन्तु",
+ "search.result.initializer": "अन्वेषणस्य आरम्भः",
+ "search.result.placeholder": "अन्वेषणं आरभ्य लिखन्तु",
+ "search.result.none": "मेलयुक्ताः दस्तावेजाः नास्ति",
+ "search.result.one": "१ मेलकर्ता दस्तावेजः अस्ति",
+ "search.result.other": "# मेलनदस्तावेजाः सन्ति",
+ "search.result.more.one": "अस्मिन् पृष्ठे १ अधिकं अस्ति",
+ "search.result.more.other": "अस्मिन् पृष्ठे # अधिकाः सन्ति",
+ "search.result.term.missing": "असमेत",
+ "select.language": "भाषां चिनोतु",
+ "select.version": "संस्करणं चिनोतु",
+ "source": "भण्डारं गच्छन्तु",
+ "source.file.contributors": "अंशदाता",
+ "source.file.date.created": "ननिर्माणस्य तिथिः",
+ "source.file.date.updated": "परिवर्तनस्य तिथिः",
+ "tabs": "दस्तावेजस्य प्रमुखः",
+ "toc": "सामग्रीसारणी",
+ "top": "पुनः उपरिभागं प्रति गच्छन्तु"
+}[key] }}{% endmacro %}
diff --git a/src/partials/languages/te.html b/src/partials/languages/te.html
new file mode 100644
index 000000000..7529a47cc
--- /dev/null
+++ b/src/partials/languages/te.html
@@ -0,0 +1,75 @@
+
+
+
+{% macro t(key) %}{{ {
+ "language": "te",
+ "action.edit": "ఈ పేజీలో దిద్దుబాట్లు చేయండి",
+ "action.skip": "సమాచారానికి వెళ్లండి",
+ "action.view": "నేను ఈ పేజీ యొక్క మూలాన్ని చూడాలనుకుంటున్నాను",
+ "announce.dismiss": "దీన్ని మళ్లీ చూపవద్దు",
+ "blog.archive": "పాత వ్యాసం",
+ "blog.categories": "వర్గాలు",
+ "blog.categories.in": "లో",
+ "blog.continue": "చదవడం కొనసాగించండి",
+ "blog.draft": "ప్రారంభ రచన",
+ "blog.index": "సూచికకు తిరిగి వెళ్ళు",
+ "blog.meta": "సమాచారం గురించి సమాచారం",
+ "blog.references": "సంబంధిత సూచనలు",
+ "clipboard.copy": "దీనిని అనుకరించు",
+ "clipboard.copied": "దీనిని అతికించు",
+ "consent.accept": "నేను దీనిని అంగీకరిస్తున్నాను",
+ "consent.manage": "ఆకృతీకరణను నిర్వహించండి",
+ "consent.reject": "నేను దీనిని తిరస్కరిస్తున్నాను",
+ "footer": "అడిటిప్పణి",
+ "footer.next": "తదుపరి భాగం",
+ "footer.previous": "మునుపటి భాగం",
+ "header": "శీర్షిక విభాగం",
+ "meta.comments": "అభిప్రాయాలు",
+ "meta.source": "మూలం",
+ "nav": "మార్గదర్శక పట్టీ",
+ "readtime.one": "చదవడానికి ఒక నిమిషం పడుతుంది",
+ "readtime.other": "చదవడానికి # నిమిషాలు పడుతుంది",
+ "rss.created": "ఆర్ఎస్ఎస్ సేవ",
+ "rss.updated": "ఆర్ఎస్ఎస్ సేవ నుండి తాజా నవీకరణ",
+ "search": "వెతకండి",
+ "search.placeholder": "వెతకండి",
+ "search.share": "పంచుకోండి",
+ "search.reset": "తుడిచివేయు",
+ "search.result.initializer": "శోధనను ప్రారంభిస్తోంది",
+ "search.result.placeholder": "రాయడం ద్వారా వెతకడం ప్రారంభించండి",
+ "search.result.none": "సరిపోలే పత్రాలు లేవు",
+ "search.result.one": "ఒక సరిపోలే పత్రం",
+ "search.result.other": "# సరిపోలే పత్రాలు",
+ "search.result.more.one": "ఈ పేజీలో మరొకటి",
+ "search.result.more.other": "ఈ పేజీలో ఇంకా # ఉన్నాయి",
+ "search.result.term.missing": "తప్పిపోయింది",
+ "select.language": "భాషను ఎంచుకోండి",
+ "select.version": "సంస్కరణను ఎంచుకోండి",
+ "source": "భండారానికి వెళ్ళండి",
+ "source.file.contributors": "సహకారులు",
+ "source.file.date.created": "సృష్టించబడింది",
+ "source.file.date.updated": "చివరి నవీకరణ",
+ "tabs": "వివిధ కిటికీలు",
+ "toc": "విషయ సూచిక",
+ "top": "పైకి తిరిగి వెళ్ళు"
+}[key] }}{% endmacro %}
diff --git a/src/plugins/social/plugin.py b/src/plugins/social/plugin.py
index 62bdb6301..c2ad516a0 100644
--- a/src/plugins/social/plugin.py
+++ b/src/plugins/social/plugin.py
@@ -57,8 +57,19 @@ class SocialPluginConfig(Config):
# Options for social cards
cards = opt.Type(bool, default = True)
cards_dir = opt.Type(str, default = "assets/images/social")
- cards_color = opt.Type(dict, default = dict())
- cards_font = opt.Optional(opt.Type(str))
+ cards_layout_options = opt.Type(dict, default = {})
+
+ # Deprecated options
+ cards_color = opt.Deprecated(
+ option_type = opt.Type(dict, default = {}),
+ message =
+ "Deprecated, use 'cards_layout_options.background_color' "
+ "and 'cards_layout_options.color' with 'default' layout"
+ )
+ cards_font = opt.Deprecated(
+ option_type = opt.Type(str),
+ message = "Deprecated, use 'cards_layout_options.font_family'"
+ )
# -----------------------------------------------------------------------------
@@ -67,6 +78,7 @@ class SocialPlugin(BasePlugin[SocialPluginConfig]):
def __init__(self):
self._executor = concurrent.futures.ThreadPoolExecutor(4)
+ self.custom_dir = None
# Retrieve configuration
def on_config(self, config):
@@ -74,6 +86,24 @@ class SocialPlugin(BasePlugin[SocialPluginConfig]):
if not self.config.cards:
return
+ # Move color options
+ if "cards_color" in self.config:
+
+ # Move background color to new option
+ value = self.config.cards_color.get("fill")
+ if value:
+ self.config.cards_layout_options["background_color"] = value
+
+ # Move color to new option
+ value = self.config.cards_color.get("text")
+ if value:
+ self.config.cards_layout_options["color"] = value
+
+ # Move font family to new option
+ if "cards_font" in self.config:
+ value = self.config.cards_font
+ self.config.cards_layout_options["font_family"] = value
+
# Check if required dependencies are installed
if not dependencies:
log.error(
@@ -109,7 +139,18 @@ class SocialPlugin(BasePlugin[SocialPluginConfig]):
self.color = colors.get(primary, self.color)
# Retrieve color overrides
- self.color = { **self.color, **self.config.cards_color }
+ options = self.config.cards_layout_options
+ self.color = {
+ "fill": options.get("background_color", self.color["fill"]),
+ "text": options.get("color", self.color["text"])
+ }
+
+ # Retrieve custom_dir path
+ for user_config in config.user_configs:
+ custom_dir = user_config.get("theme", {}).get("custom_dir")
+ if custom_dir:
+ self.custom_dir = custom_dir
+ break
# Retrieve logo and font
self._resized_logo_promise = self._executor.submit(self._load_resized_logo, config)
@@ -343,8 +384,15 @@ class SocialPlugin(BasePlugin[SocialPluginConfig]):
if "logo" in theme:
_, extension = os.path.splitext(theme["logo"])
- # Load SVG and convert to PNG
path = os.path.join(config.docs_dir, theme["logo"])
+
+ # Allow users to put the logo inside their custom_dir (theme["logo"] case)
+ if self.custom_dir:
+ custom_dir_logo = os.path.join(self.custom_dir, theme["logo"])
+ if os.path.exists(custom_dir_logo):
+ path = custom_dir_logo
+
+ # Load SVG and convert to PNG
if extension == ".svg":
return self._load_logo_svg(path)
@@ -352,10 +400,11 @@ class SocialPlugin(BasePlugin[SocialPluginConfig]):
return Image.open(path).convert("RGBA")
# Handle icons
- logo = "material/library"
icon = theme["icon"] or {}
if "logo" in icon and icon["logo"]:
logo = icon["logo"]
+ else:
+ logo = "material/library"
# Resolve path of package
base = os.path.abspath(os.path.join(
@@ -363,8 +412,15 @@ class SocialPlugin(BasePlugin[SocialPluginConfig]):
"../.."
))
- # Load icon data and fill with color
path = f"{base}/.icons/{logo}.svg"
+
+ # Allow users to put the logo inside their custom_dir (theme["icon"]["logo"] case)
+ if self.custom_dir:
+ custom_dir_logo = os.path.join(self.custom_dir, ".icons", f"{logo}.svg")
+ if os.path.exists(custom_dir_logo):
+ path = custom_dir_logo
+
+ # Load icon data and fill with color
return self._load_logo_svg(path, self.color["text"])
# Load SVG file and convert to PNG
@@ -382,24 +438,24 @@ class SocialPlugin(BasePlugin[SocialPluginConfig]):
# Retrieve font
def _load_font(self, config):
- name = self.config.cards_font
+ name = self.config.cards_layout_options.get("font_family")
if not name:
# Retrieve from theme (default: Roboto)
theme = config.theme
- if theme["font"]:
+ if isinstance(theme["font"], dict) and "text" in theme["font"]:
name = theme["font"]["text"]
else:
name = "Roboto"
- # Google fonts can return varients like OpenSane_Condensed-Regulat.ttf so
+ # Google fonts can return varients like OpenSans_Condensed-Regular.ttf so
# we only use the font requested e.g. OpenSans-Regular.ttf
font_filename_base = name.replace(' ', '')
filename_regex = re.escape(font_filename_base)+r"-(\w+)\.[ot]tf$"
font = dict()
# Check for cached files - note these may be in subfolders
- for currentpath, folders, files in os.walk("./.cache/"):
+ for currentpath, folders, files in os.walk(self.cache):
for file in files:
# Map available font weights to file paths
fname = os.path.join(currentpath, file)
@@ -410,7 +466,7 @@ class SocialPlugin(BasePlugin[SocialPluginConfig]):
# If none found, fetch from Google and try again
if len(font) == 0:
self._load_font_from_google(name)
- for currentpath, folders, files in os.walk("./.cache/"):
+ for currentpath, folders, files in os.walk(self.cache):
for file in files:
# Map available font weights to file paths
fname = os.path.join(currentpath, file)