build: update docker images' versions + docs to latest

+ update dependencies to latest
This commit is contained in:
Yassine Doghri 2025-08-31 09:08:41 +00:00
parent 248739bde7
commit 07e3a9c848
61 changed files with 2334 additions and 6004 deletions

View File

@ -12,7 +12,7 @@ LABEL maintainer="Yassine Doghri <yassine@doghri.fr>"
COPY --from=composer:2 /usr/bin/composer /usr/bin/composer
# Install server requirements
RUN curl -fsSL https://deb.nodesource.com/setup_20.x | bash - \
RUN curl -fsSL https://deb.nodesource.com/setup_22.x | bash - \
&& apt-get update \
&& apt-get install --yes --no-install-recommends nodejs \
# gnupg to sign commits with gpg

View File

@ -1,4 +1,4 @@
image: code.castopod.org:5050/adaures/castopod:ci
image: code.castopod.org:5050/adaures/castopod:ci-php8.1
stages:
- prepare
@ -85,7 +85,7 @@ tests:
MYSQL_USER: "castopod"
MYSQL_PASSWORD: "castopod"
script:
- echo "SHOW DATABASES;" | mysql --user=root --password="$MYSQL_ROOT_PASSWORD" --host=mariadb "$MYSQL_DATABASE"
- echo "SHOW DATABASES;" | mysql --user=root --password="$MYSQL_ROOT_PASSWORD" --host=mariadb "$MYSQL_DATABASE" --skip-ssl
# run phpunit without code coverage
# TODO: add code coverage

View File

@ -143,7 +143,7 @@ Alternatively, you can follow us on social media platforms to get news about
Castopod:
- [podlibre.social](https://podlibre.social/@Castopod) (Mastodon instance)
- [Twitter](https://twitter.com/castopod)
- [Bluesky](https://bsky.app/profile/castopod.org)
- [LinkedIn](https://linkedin.com/company/castopod)
- [Facebook](https://www.facebook.com/castopod)

View File

@ -9,7 +9,7 @@
"php": "^8.1",
"adaures/ipcat-php": "^v1.0.0",
"adaures/podcast-persons-taxonomy": "^v1.0.1",
"aws/aws-sdk-php": "^3.356.3",
"aws/aws-sdk-php": "^3.356.8",
"chrisjean/php-ico": "^1.0.4",
"cocur/slugify": "^v4.6.0",
"codeigniter4/framework": "4.6.3",

82
composer.lock generated
View File

@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
"content-hash": "99c6079d85d508bb79ae0d9d0304c5a5",
"content-hash": "7924d1910286b95c392f610ed3fd519d",
"packages": [
{
"name": "adaures/ipcat-php",
@ -206,16 +206,16 @@
},
{
"name": "aws/aws-sdk-php",
"version": "3.356.3",
"version": "3.356.8",
"source": {
"type": "git",
"url": "https://github.com/aws/aws-sdk-php.git",
"reference": "9c61b26408664c76d51101381bb64feda9bcfe2e"
"reference": "3efa8c62c11fedb17b90f60b2d3a9f815b406e63"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/9c61b26408664c76d51101381bb64feda9bcfe2e",
"reference": "9c61b26408664c76d51101381bb64feda9bcfe2e",
"url": "https://api.github.com/repos/aws/aws-sdk-php/zipball/3efa8c62c11fedb17b90f60b2d3a9f815b406e63",
"reference": "3efa8c62c11fedb17b90f60b2d3a9f815b406e63",
"shasum": ""
},
"require": {
@ -297,9 +297,9 @@
"support": {
"forum": "https://github.com/aws/aws-sdk-php/discussions",
"issues": "https://github.com/aws/aws-sdk-php/issues",
"source": "https://github.com/aws/aws-sdk-php/tree/3.356.3"
"source": "https://github.com/aws/aws-sdk-php/tree/3.356.8"
},
"time": "2025-08-22T18:13:45+00:00"
"time": "2025-08-29T18:06:18+00:00"
},
{
"name": "brick/math",
@ -6979,16 +6979,16 @@
},
{
"name": "symfony/console",
"version": "v7.3.2",
"version": "v7.3.3",
"source": {
"type": "git",
"url": "https://github.com/symfony/console.git",
"reference": "5f360ebc65c55265a74d23d7fe27f957870158a1"
"reference": "cb0102a1c5ac3807cf3fdf8bea96007df7fdbea7"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/console/zipball/5f360ebc65c55265a74d23d7fe27f957870158a1",
"reference": "5f360ebc65c55265a74d23d7fe27f957870158a1",
"url": "https://api.github.com/repos/symfony/console/zipball/cb0102a1c5ac3807cf3fdf8bea96007df7fdbea7",
"reference": "cb0102a1c5ac3807cf3fdf8bea96007df7fdbea7",
"shasum": ""
},
"require": {
@ -7053,7 +7053,7 @@
"terminal"
],
"support": {
"source": "https://github.com/symfony/console/tree/v7.3.2"
"source": "https://github.com/symfony/console/tree/v7.3.3"
},
"funding": [
{
@ -7073,20 +7073,20 @@
"type": "tidelift"
}
],
"time": "2025-07-30T17:13:41+00:00"
"time": "2025-08-25T06:35:40+00:00"
},
{
"name": "symfony/event-dispatcher",
"version": "v7.3.0",
"version": "v7.3.3",
"source": {
"type": "git",
"url": "https://github.com/symfony/event-dispatcher.git",
"reference": "497f73ac996a598c92409b44ac43b6690c4f666d"
"reference": "b7dc69e71de420ac04bc9ab830cf3ffebba48191"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/497f73ac996a598c92409b44ac43b6690c4f666d",
"reference": "497f73ac996a598c92409b44ac43b6690c4f666d",
"url": "https://api.github.com/repos/symfony/event-dispatcher/zipball/b7dc69e71de420ac04bc9ab830cf3ffebba48191",
"reference": "b7dc69e71de420ac04bc9ab830cf3ffebba48191",
"shasum": ""
},
"require": {
@ -7137,7 +7137,7 @@
"description": "Provides tools that allow your application components to communicate with each other by dispatching events and listening to them",
"homepage": "https://symfony.com",
"support": {
"source": "https://github.com/symfony/event-dispatcher/tree/v7.3.0"
"source": "https://github.com/symfony/event-dispatcher/tree/v7.3.3"
},
"funding": [
{
@ -7148,12 +7148,16 @@
"url": "https://github.com/fabpot",
"type": "github"
},
{
"url": "https://github.com/nicolas-grekas",
"type": "github"
},
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
}
],
"time": "2025-04-22T09:11:45+00:00"
"time": "2025-08-13T11:49:31+00:00"
},
{
"name": "symfony/event-dispatcher-contracts",
@ -7371,16 +7375,16 @@
},
{
"name": "symfony/options-resolver",
"version": "v7.3.2",
"version": "v7.3.3",
"source": {
"type": "git",
"url": "https://github.com/symfony/options-resolver.git",
"reference": "119bcf13e67dbd188e5dbc74228b1686f66acd37"
"reference": "0ff2f5c3df08a395232bbc3c2eb7e84912df911d"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/options-resolver/zipball/119bcf13e67dbd188e5dbc74228b1686f66acd37",
"reference": "119bcf13e67dbd188e5dbc74228b1686f66acd37",
"url": "https://api.github.com/repos/symfony/options-resolver/zipball/0ff2f5c3df08a395232bbc3c2eb7e84912df911d",
"reference": "0ff2f5c3df08a395232bbc3c2eb7e84912df911d",
"shasum": ""
},
"require": {
@ -7418,7 +7422,7 @@
"options"
],
"support": {
"source": "https://github.com/symfony/options-resolver/tree/v7.3.2"
"source": "https://github.com/symfony/options-resolver/tree/v7.3.3"
},
"funding": [
{
@ -7438,7 +7442,7 @@
"type": "tidelift"
}
],
"time": "2025-07-15T11:36:08+00:00"
"time": "2025-08-05T10:16:07+00:00"
},
{
"name": "symfony/polyfill-intl-grapheme",
@ -7689,16 +7693,16 @@
},
{
"name": "symfony/process",
"version": "v7.3.0",
"version": "v7.3.3",
"source": {
"type": "git",
"url": "https://github.com/symfony/process.git",
"reference": "40c295f2deb408d5e9d2d32b8ba1dd61e36f05af"
"reference": "32241012d521e2e8a9d713adb0812bb773b907f1"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/process/zipball/40c295f2deb408d5e9d2d32b8ba1dd61e36f05af",
"reference": "40c295f2deb408d5e9d2d32b8ba1dd61e36f05af",
"url": "https://api.github.com/repos/symfony/process/zipball/32241012d521e2e8a9d713adb0812bb773b907f1",
"reference": "32241012d521e2e8a9d713adb0812bb773b907f1",
"shasum": ""
},
"require": {
@ -7730,7 +7734,7 @@
"description": "Executes commands in sub-processes",
"homepage": "https://symfony.com",
"support": {
"source": "https://github.com/symfony/process/tree/v7.3.0"
"source": "https://github.com/symfony/process/tree/v7.3.3"
},
"funding": [
{
@ -7741,12 +7745,16 @@
"url": "https://github.com/fabpot",
"type": "github"
},
{
"url": "https://github.com/nicolas-grekas",
"type": "github"
},
{
"url": "https://tidelift.com/funding/github/packagist/symfony/symfony",
"type": "tidelift"
}
],
"time": "2025-04-17T09:11:12+00:00"
"time": "2025-08-18T09:42:54+00:00"
},
{
"name": "symfony/service-contracts",
@ -7895,16 +7903,16 @@
},
{
"name": "symfony/string",
"version": "v7.3.2",
"version": "v7.3.3",
"source": {
"type": "git",
"url": "https://github.com/symfony/string.git",
"reference": "42f505aff654e62ac7ac2ce21033818297ca89ca"
"reference": "17a426cce5fd1f0901fefa9b2a490d0038fd3c9c"
},
"dist": {
"type": "zip",
"url": "https://api.github.com/repos/symfony/string/zipball/42f505aff654e62ac7ac2ce21033818297ca89ca",
"reference": "42f505aff654e62ac7ac2ce21033818297ca89ca",
"url": "https://api.github.com/repos/symfony/string/zipball/17a426cce5fd1f0901fefa9b2a490d0038fd3c9c",
"reference": "17a426cce5fd1f0901fefa9b2a490d0038fd3c9c",
"shasum": ""
},
"require": {
@ -7962,7 +7970,7 @@
"utf8"
],
"support": {
"source": "https://github.com/symfony/string/tree/v7.3.2"
"source": "https://github.com/symfony/string/tree/v7.3.3"
},
"funding": [
{
@ -7982,7 +7990,7 @@
"type": "tidelift"
}
],
"time": "2025-07-10T08:47:49+00:00"
"time": "2025-08-25T06:35:40+00:00"
},
{
"name": "symplify/coding-standard",

View File

@ -4,7 +4,7 @@
# ⚠️ NOT optimized for production
# should be used only for continuous integration
#---------------------------------------------------
FROM php:8.1-fpm-alpine3.19
FROM php:8.1-fpm-alpine3.22
LABEL maintainer="Yassine Doghri <yassine@doghri.fr>"

View File

@ -4,9 +4,9 @@ stages:
docker-build-rolling:
stage: build
image:
name: docker.io/docker:23.0.3-dind
name: docker.io/docker:28.3-dind
services:
- docker:23.0.3-dind
- docker:28.3-dind
variables:
TAG: $CI_COMMIT_BRANCH
DOCKER_BUILDKIT: 1
@ -30,9 +30,9 @@ docker-build-rolling:
docker-build-main-release:
stage: build
image:
name: docker.io/docker:23.0.3-dind
name: docker.io/docker:28.3-dind
services:
- docker:23.0.3-dind
- docker:28.3-dind
variables:
DOCKER_BUILDKIT: 1
DOCKER_HOST: tcp://docker:2376
@ -59,9 +59,9 @@ docker-build-main-release:
docker-build-alpha-beta-release:
stage: build
image:
name: docker.io/docker:23.0.3-dind
name: docker.io/docker:28.3-dind
services:
- docker:23.0.3-dind
- docker:28.3-dind
variables:
TAG: $CI_COMMIT_BRANCH
DOCKER_BUILDKIT: 1

View File

@ -1,6 +1,6 @@
FROM docker.io/golang:1.20-bookworm AS CRON_BUILDER
FROM docker.io/golang:1.25-bookworm AS CRON_BUILDER
ARG SUPERCRONIC_VERSION=v0.2.25
ARG SUPERCRONIC_VERSION=v0.2.34
RUN apt-get update && \
apt-get install -y git && \
@ -11,7 +11,7 @@ RUN apt-get update && \
mv supercronic /usr/local/bin
FROM docker.io/php:8.1-fpm
FROM docker.io/php:8.2-fpm
COPY --from=CRON_BUILDER /usr/local/bin/supercronic /usr/local/bin/supercronic

View File

@ -1,6 +1,6 @@
FROM docker.io/golang:1.21-bookworm AS CRON_BUILDER
FROM docker.io/golang:1.25-bookworm AS CRON_BUILDER
ARG SUPERCRONIC_VERSION=v0.2.26
ARG SUPERCRONIC_VERSION=v0.2.34
RUN apt-get update && \
apt-get install -y git && \
@ -13,7 +13,7 @@ RUN apt-get update && \
FROM docker.io/php:8.2-cli
ARG UNIT_VERSION=1.31.1
ARG UNIT_VERSION=1.34.2
COPY --from=CRON_BUILDER /usr/local/bin/supercronic /usr/local/bin/supercronic

View File

@ -1,4 +1,4 @@
FROM docker.io/nginx:1.25
FROM docker.io/nginx:1.29
COPY docker/production/web-server/entrypoint.sh /entrypoint.sh
COPY docker/production/web-server/nginx.template.conf /nginx.template.conf

View File

@ -1,4 +1,4 @@
image: node:20
image: node:22
stages:
- build
@ -33,6 +33,7 @@ build:
- main
- beta
- alpha
- next
build-production:
extends: .documentation-setup
@ -51,6 +52,7 @@ build-production:
- main
- beta
- alpha
- next
deploy:
stage: deploy
@ -81,3 +83,4 @@ deploy:
- main
- beta
- alpha
- next

View File

@ -6,9 +6,6 @@
pnpm create astro@latest -- --template starlight
```
[![Open in StackBlitz](https://developer.stackblitz.com/img/open_in_stackblitz.svg)](https://stackblitz.com/github/withastro/starlight/tree/main/examples/basics)
[![Open with CodeSandbox](https://assets.codesandbox.io/github/button-edit-lime.svg)](https://codesandbox.io/p/sandbox/github/withastro/starlight/tree/main/examples/basics)
> 🧑‍🚀 **Seasoned astronaut?** Delete this file. Have fun!
## 🚀 Project Structure
@ -16,15 +13,14 @@ pnpm create astro@latest -- --template starlight
Inside of your Astro + Starlight project, you'll see the following folders and
files:
```
```sh
.
├── public/
├── src/
│ ├── assets/
│ ├── content/
│ │ ├── docs/
│ │ └── config.ts
│ └── env.d.ts
│ │ └── docs/
│ └── content.config.ts
├── astro.config.mjs
├── package.json
└── tsconfig.json
@ -42,14 +38,14 @@ Static assets, like favicons, can be placed in the `public/` directory.
All commands are run from the root of the project, from a terminal:
| Command | Action |
| :------------------------ | :----------------------------------------------- |
| `npm install` | Installs dependencies |
| `npm run dev` | Starts local dev server at `localhost:4321` |
| `npm run build` | Build your production site to `./dist/` |
| `npm run preview` | Preview your build locally, before deploying |
| `npm run astro ...` | Run CLI commands like `astro add`, `astro check` |
| `npm run astro -- --help` | Get help using the Astro CLI |
| Command | Action |
| :--------------------- | :----------------------------------------------- |
| `pnpm install` | Installs dependencies |
| `pnpm dev` | Starts local dev server at `localhost:4321` |
| `pnpm build` | Build your production site to `./dist/` |
| `pnpm preview` | Preview your build locally, before deploying |
| `pnpm astro ...` | Run CLI commands like `astro add`, `astro check` |
| `pnpm astro -- --help` | Get help using the Astro CLI |
## 👀 Want to learn more?

View File

@ -1,8 +1,7 @@
// @ts-check
import { defineConfig } from "astro/config";
import starlight from "@astrojs/starlight";
import tailwind from "@astrojs/tailwind";
const site = "https://docs.castopod.org/";
const base = process.env.BASE ?? "/docs";
@ -16,8 +15,7 @@ export default defineConfig({
description:
"Check out the Castopod documentation! Install your own free & open-source podcast host, help make it better by contributing, or simply learn more about Castopod!",
components: {
Header: "./src/components/Header.astro",
MobileMenuFooter: "./src/components/MobileMenuFooter.astro",
ThemeSelect: "./src/components/ThemeSelect.astro",
},
logo: {
src: "./src/assets/castopod-logo-inline.svg",
@ -28,7 +26,7 @@ export default defineConfig({
"@fontsource/inter/400.css",
"@fontsource/inter/600.css",
"@fontsource/rubik/700.css",
"./src/styles/tailwind.css",
"./src/styles/custom.css",
],
head: [
{
@ -81,6 +79,33 @@ export default defineConfig({
},
},
],
social: [
{
icon: "discord",
label: "Discord",
href: "https://castopod.org/chat",
},
{
icon: "blueSky",
label: "Bluesky",
href: "https://bsky.app/profile/castopod.org",
},
{
icon: "mastodon",
label: "Mastodon",
href: "https://podlibre.social/@Castopod",
},
{
icon: "gitlab",
label: "Source code",
href: "https://code.castopod.org/adaures/castopod",
},
{
icon: "github",
label: "Github",
href: "https://github.com/ad-aures/castopod",
},
],
defaultLocale: "en",
locales: {
en: {
@ -115,13 +140,6 @@ export default defineConfig({
lang: "zh-Hans",
},
},
social: {
discord: "https://castopod.org/chat",
"x.com": "https://twitter.com/castopod",
mastodon: "https://podlibre.social/@Castopod",
gitlab: "https://code.castopod.org/adaures/castopod",
github: "https://github.com/ad-aures/castopod",
},
sidebar: [
{
label: "Introduction",
@ -290,8 +308,5 @@ export default defineConfig({
baseUrl: "https://code.castopod.org/adaures/castopod/-/edit/main/docs/",
},
}),
tailwind({
applyBaseStyles: false,
}),
],
});

View File

@ -1,28 +1,20 @@
{
"name": "civil-chasm",
"name": "castopod-docs",
"type": "module",
"version": "0.0.1",
"scripts": {
"dev": "astro dev",
"start": "astro dev",
"build": "astro check && astro build",
"build": "astro build",
"preview": "astro preview",
"astro": "astro",
"prepare": "astro telemetry disable"
},
"dependencies": {
"@astrojs/check": "^0.9.4",
"@astrojs/starlight": "^0.28.6",
"@astrojs/starlight-tailwind": "^2.0.3",
"@astrojs/tailwind": "^5.1.2",
"@fontsource/inter": "^5.1.0",
"@fontsource/rubik": "^5.1.0",
"astro": "^4.16.9",
"autoprefixer": "^10.4.20",
"cssnano": "^7.0.6",
"postcss-preset-env": "^10.0.9",
"sharp": "^0.33.5",
"tailwindcss": "^3.4.14",
"typescript": "^5.6.3"
"@astrojs/starlight": "^0.35.2",
"@fontsource/inter": "^5.2.6",
"@fontsource/rubik": "^5.2.6",
"astro": "^5.13.4",
"sharp": "^0.34.3"
}
}

7613
docs/pnpm-lock.yaml generated

File diff suppressed because it is too large Load Diff

View File

@ -1,10 +0,0 @@
module.exports = {
plugins: [
require("autoprefixer"),
require("cssnano"),
require("postcss-preset-env")({
stage: 3,
features: { "nesting-rules": false },
}),
],
};

View File

@ -1,6 +1,5 @@
---
import Select from '@astrojs/starlight/components/Select.astro';
import type { Props } from '@astrojs/starlight/props';
---
<docs-version-select>

View File

@ -1,91 +0,0 @@
---
import config from 'virtual:starlight/user-config';
import type { Props } from '@astrojs/starlight/props';
import LanguageSelect from '@astrojs/starlight/components/LanguageSelect.astro';
import Search from '@astrojs/starlight/components/Search.astro';
import SiteTitle from '@astrojs/starlight/components/SiteTitle.astro';
import SocialIcons from '@astrojs/starlight/components/SocialIcons.astro';
import ThemeSelect from '@astrojs/starlight/components/ThemeSelect.astro';
import VersionSelect from './DocsVersionSelect.astro';
/**
* Render the `Search` component if Pagefind is enabled or the default search component has been overridden.
*/
const shouldRenderSearch =
config.pagefind || config.components.Search !== '@astrojs/starlight/components/Search.astro';
---
<div class="header sl-flex">
<div class="title-wrapper sl-flex">
<SiteTitle {...Astro.props} />
</div>
<div class="sl-flex">
{shouldRenderSearch && <Search {...Astro.props} />}
</div>
<div class="sl-hidden md:sl-flex right-group">
<div class="sl-flex social-icons">
<SocialIcons {...Astro.props} />
</div>
<ThemeSelect {...Astro.props} />
<VersionSelect {...Astro.props} />
<LanguageSelect {...Astro.props} />
</div>
</div>
<style>
.header {
gap: var(--sl-nav-gap);
justify-content: space-between;
align-items: center;
height: 100%;
}
.title-wrapper {
/* Prevent long titles overflowing and covering the search and menu buttons on narrow viewports. */
overflow: hidden;
}
.right-group,
.social-icons {
gap: 1rem;
align-items: center;
}
.social-icons::after {
content: '';
height: 2rem;
border-inline-end: 1px solid var(--sl-color-gray-5);
}
@media (min-width: 50rem) {
:global(:root[data-has-sidebar]) {
--__sidebar-pad: calc(2 * var(--sl-nav-pad-x));
}
:global(:root:not([data-has-toc])) {
--__toc-width: 0rem;
}
.header {
--__sidebar-width: max(0rem, var(--sl-content-inline-start, 0rem) - var(--sl-nav-pad-x));
--__main-column-fr: calc(
(
100% + var(--__sidebar-pad, 0rem) - var(--__toc-width, var(--sl-sidebar-width)) -
(2 * var(--__toc-width, var(--sl-nav-pad-x))) - var(--sl-content-inline-start, 0rem) -
var(--sl-content-width)
) / 2
);
display: grid;
grid-template-columns:
/* 1 (site title): runs up until the main content columns left edge or the width of the title, whichever is the largest */
minmax(
calc(var(--__sidebar-width) + max(0rem, var(--__main-column-fr) - var(--sl-nav-gap))),
auto
)
/* 2 (search box): all free space that is available. */
1fr
/* 3 (right items): use the space that these need. */
auto;
align-content: center;
}
}
</style>

View File

@ -1,35 +0,0 @@
---
import LanguageSelect from '@astrojs/starlight/components/LanguageSelect.astro';
import SocialIcons from '@astrojs/starlight/components/SocialIcons.astro';
import ThemeSelect from '@astrojs/starlight/components/ThemeSelect.astro';
import type { Props } from '@astrojs/starlight/props';
import VersionSelect from './DocsVersionSelect.astro';
---
<div class="mobile-preferences sl-flex">
<div class="sl-flex social-icons">
<SocialIcons {...Astro.props} />
</div>
<ThemeSelect {...Astro.props} />
<VersionSelect {...Astro.props} />
<LanguageSelect {...Astro.props} />
</div>
<style>
.social-icons {
margin-inline-end: auto;
gap: 1rem;
align-items: center;
padding-block: 1rem;
}
.social-icons:empty {
display: none;
}
.mobile-preferences {
justify-content: space-between;
flex-wrap: wrap;
border-top: 1px solid var(--sl-color-gray-6);
column-gap: 1rem;
padding: 0.5rem 0;
}
</style>

View File

@ -0,0 +1,8 @@
---
import Default from '@astrojs/starlight/components/ThemeSelect.astro';
import VersionSelect from './DocsVersionSelect.astro';
---
<Default><slot /></Default>
<VersionSelect />

View File

@ -0,0 +1,8 @@
import { defineCollection } from "astro:content";
import { docsLoader, i18nLoader } from "@astrojs/starlight/loaders";
import { docsSchema, i18nSchema } from "@astrojs/starlight/schema";
export const collections = {
docs: defineCollection({ loader: docsLoader(), schema: docsSchema() }),
i18n: defineCollection({ loader: i18nLoader(), schema: i18nSchema() }),
};

View File

@ -1,7 +0,0 @@
import { defineCollection } from "astro:content";
import { docsSchema, i18nSchema } from "@astrojs/starlight/schema";
export const collections = {
docs: defineCollection({ schema: docsSchema() }),
i18n: defineCollection({ type: "data", schema: i18nSchema() }),
};

View File

@ -172,7 +172,7 @@ Alternatively, you can follow us on social media platforms to get news about
Castopod:
- [podlibre.social](https://podlibre.social/@Castopod) (Mastodon instance)
- [Twitter](https://twitter.com/castopod)
- [Bluesky](https://bsky.app/profile/castopod.org)
- [LinkedIn](https://linkedin.com/company/castopod)
- [Facebook](https://www.facebook.com/castopod)

View File

@ -172,7 +172,7 @@ Alternatively, you can follow us on social media platforms to get news about
Castopod:
- [podlibre.social](https://podlibre.social/@Castopod) (Mastodon instance)
- [Twitter](https://twitter.com/castopod)
- [Bluesky](https://bsky.app/profile/castopod.org)
- [LinkedIn](https://linkedin.com/company/castopod)
- [Facebook](https://www.facebook.com/castopod)

View File

@ -174,7 +174,7 @@ Alternatively, you can follow us on social media platforms to get news about
Castopod:
- [podlibre.social](https://podlibre.social/@Castopod) (Mastodon instance)
- [Twitter](https://twitter.com/castopod)
- [Bluesky](https://bsky.app/profile/castopod.org)
- [LinkedIn](https://linkedin.com/company/castopod)
- [Facebook](https://www.facebook.com/castopod)

View File

@ -175,7 +175,7 @@ Alternatively, you can follow us on social media platforms to get news about
Castopod:
- [podlibre.social](https://podlibre.social/@Castopod) (Mastodon instance)
- [Twitter](https://twitter.com/castopod)
- [Bluesky](https://bsky.app/profile/castopod.org)
- [LinkedIn](https://linkedin.com/company/castopod)
- [Facebook](https://www.facebook.com/castopod)

View File

@ -173,7 +173,7 @@ Alternatively, you can follow us on social media platforms to get news about
Castopod:
- [podlibre.social](https://podlibre.social/@Castopod) (Mastodon instance)
- [Twitter](https://twitter.com/castopod)
- [Bluesky](https://bsky.app/profile/castopod.org)
- [LinkedIn](https://linkedin.com/company/castopod)
- [Facebook](https://www.facebook.com/castopod)

View File

@ -173,7 +173,7 @@ Alternatively, you can follow us on social media platforms to get news about
Castopod:
- [podlibre.social](https://podlibre.social/@Castopod) (Mastodon instance)
- [Twitter](https://twitter.com/castopod)
- [Bluesky](https://bsky.app/profile/castopod.org)
- [LinkedIn](https://linkedin.com/company/castopod)
- [Facebook](https://www.facebook.com/castopod)

View File

@ -173,7 +173,7 @@ Alternatively, you can follow us on social media platforms to get news about
Castopod:
- [podlibre.social](https://podlibre.social/@Castopod) (Mastodon instance)
- [Twitter](https://twitter.com/castopod)
- [Bluesky](https://bsky.app/profile/castopod.org)
- [LinkedIn](https://linkedin.com/company/castopod)
- [Facebook](https://www.facebook.com/castopod)

View File

@ -172,7 +172,7 @@ Alternatively, you can follow us on social media platforms to get news about
Castopod:
- [podlibre.social](https://podlibre.social/@Castopod) (Mastodon instance)
- [Twitter](https://twitter.com/castopod)
- [Bluesky](https://bsky.app/profile/castopod.org)
- [LinkedIn](https://linkedin.com/company/castopod)
- [Facebook](https://www.facebook.com/castopod)

View File

@ -172,7 +172,7 @@ Alternatively, you can follow us on social media platforms to get news about
Castopod:
- [podlibre.social](https://podlibre.social/@Castopod) (Mastodon instance)
- [Twitter](https://twitter.com/castopod)
- [Bluesky](https://bsky.app/profile/castopod.org)
- [LinkedIn](https://linkedin.com/company/castopod)
- [Facebook](https://www.facebook.com/castopod)

View File

@ -173,7 +173,7 @@ Alternatively, you can follow us on social media platforms to get news about
Castopod:
- [podlibre.social](https://podlibre.social/@Castopod) (Mastodon instance)
- [Twitter](https://twitter.com/castopod)
- [Bluesky](https://bsky.app/profile/castopod.org)
- [LinkedIn](https://linkedin.com/company/castopod)
- [Facebook](https://www.facebook.com/castopod)

View File

@ -175,7 +175,7 @@ Autrement, vous pouvez nous suivre sur les réseaux sociaux pour obtenir des
informations à propos de Castopod:
- [podlibre.social](https://podlibre.social/@Castopod) (Instance Mastodon)
- [Twitter](https://twitter.com/castopod)
- [Bluesky](https://bsky.app/profile/castopod.org)
- [LinkedIn](https://linkedin.com/company/castopod)
- [Facebook](https://www.facebook.com/castopod)

View File

@ -176,7 +176,7 @@ Alternatively, you can follow us on social media platforms to get news about
Castopod:
- [podlibre.social](https://podlibre.social/@Castopod) (Instance Mastodon)
- [Twitter](https://twitter.com/castopod)
- [Bluesky](https://bsky.app/profile/castopod.org)
- [LinkedIn](https://linkedin.com/company/castopod)
- [Facebook](https://www.facebook.com/castopod)

View File

@ -172,7 +172,7 @@ Alternatively, you can follow us on social media platforms to get news about
Castopod:
- [podlibre.social](https://podlibre.social/@Castopod) (Mastodon instance)
- [Twitter](https://twitter.com/castopod)
- [Bluesky](https://bsky.app/profile/castopod.org)
- [LinkedIn](https://linkedin.com/company/castopod)
- [Facebook](https://www.facebook.com/castopod)

View File

@ -172,7 +172,7 @@ Alternatively, you can follow us on social media platforms to get news about
Castopod:
- [podlibre.social](https://podlibre.social/@Castopod) (Mastodon instance)
- [Twitter](https://twitter.com/castopod)
- [Bluesky](https://bsky.app/profile/castopod.org)
- [LinkedIn](https://linkedin.com/company/castopod)
- [Facebook](https://www.facebook.com/castopod)

View File

@ -173,7 +173,7 @@ Alternatively, you can follow us on social media platforms to get news about
Castopod:
- [podlibre.social](https://podlibre.social/@Castopod) (Mastodon instance)
- [Twitter](https://twitter.com/castopod)
- [Bluesky](https://bsky.app/profile/castopod.org)
- [LinkedIn](https://linkedin.com/company/castopod)
- [Facebook](https://www.facebook.com/castopod)

View File

@ -172,7 +172,7 @@ Alternatively, you can follow us on social media platforms to get news about
Castopod:
- [podlibre.social](https://podlibre.social/@Castopod) (Mastodon instance)
- [Twitter](https://twitter.com/castopod)
- [Bluesky](https://bsky.app/profile/castopod.org)
- [LinkedIn](https://linkedin.com/company/castopod)
- [Facebook](https://www.facebook.com/castopod)

View File

@ -172,7 +172,7 @@ Alternatively, you can follow us on social media platforms to get news about
Castopod:
- [podlibre.social](https://podlibre.social/@Castopod) (Mastodon instance)
- [Twitter](https://twitter.com/castopod)
- [Bluesky](https://bsky.app/profile/castopod.org)
- [LinkedIn](https://linkedin.com/company/castopod)
- [Facebook](https://www.facebook.com/castopod)

View File

@ -172,7 +172,7 @@ Alternatively, you can follow us on social media platforms to get news about
Castopod:
- [podlibre.social](https://podlibre.social/@Castopod) (Mastodon instance)
- [Twitter](https://twitter.com/castopod)
- [Bluesky](https://bsky.app/profile/castopod.org)
- [LinkedIn](https://linkedin.com/company/castopod)
- [Facebook](https://www.facebook.com/castopod)

View File

@ -172,7 +172,7 @@ Alternatively, you can follow us on social media platforms to get news about
Castopod:
- [podlibre.social](https://podlibre.social/@Castopod) (Mastodon instance)
- [Twitter](https://twitter.com/castopod)
- [Bluesky](https://bsky.app/profile/castopod.org)
- [LinkedIn](https://linkedin.com/company/castopod)
- [Facebook](https://www.facebook.com/castopod)

View File

@ -172,7 +172,7 @@ Alternatively, you can follow us on social media platforms to get news about
Castopod:
- [podlibre.social](https://podlibre.social/@Castopod) (Mastodon instance)
- [Twitter](https://twitter.com/castopod)
- [Bluesky](https://bsky.app/profile/castopod.org)
- [LinkedIn](https://linkedin.com/company/castopod)
- [Facebook](https://www.facebook.com/castopod)

View File

@ -177,7 +177,7 @@ Alternatively, you can follow us on social media platforms to get news about
Castopod:
- [podlibre.social](https://podlibre.social/@Castopod) (Mastodon instance)
- [Twitter](https://twitter.com/castopod)
- [Bluesky](https://bsky.app/profile/castopod.org)
- [LinkedIn](https://linkedin.com/company/castopod)
- [Facebook](https://www.facebook.com/castopod)

View File

@ -172,7 +172,7 @@ Alternatively, you can follow us on social media platforms to get news about
Castopod:
- [podlibre.social](https://podlibre.social/@Castopod) (Mastodon instance)
- [Twitter](https://twitter.com/castopod)
- [Bluesky](https://bsky.app/profile/castopod.org)
- [LinkedIn](https://linkedin.com/company/castopod)
- [Facebook](https://www.facebook.com/castopod)

View File

@ -172,7 +172,7 @@ Alternatively, you can follow us on social media platforms to get news about
Castopod:
- [podlibre.social](https://podlibre.social/@Castopod) (Mastodon instance)
- [Twitter](https://twitter.com/castopod)
- [Bluesky](https://bsky.app/profile/castopod.org)
- [LinkedIn](https://linkedin.com/company/castopod)
- [Facebook](https://www.facebook.com/castopod)

View File

@ -173,7 +173,7 @@ Alternatively, you can follow us on social media platforms to get news about
Castopod:
- [podlibre.social](https://podlibre.social/@Castopod) (instância do Mastodon)
- [Twitter](https://twitter.com/castopod)
- [Bluesky](https://bsky.app/profile/castopod.org)
- [LinkedIn](https://linkedin.com/company/castopod)
- [Facebook](https://www.facebook.com/castopod)

View File

@ -172,7 +172,7 @@ Alternatively, you can follow us on social media platforms to get news about
Castopod:
- [podlibre.social](https://podlibre.social/@Castopod) (Mastodon instance)
- [Twitter](https://twitter.com/castopod)
- [Bluesky](https://bsky.app/profile/castopod.org)
- [LinkedIn](https://linkedin.com/company/castopod)
- [Facebook](https://www.facebook.com/castopod)

View File

@ -172,7 +172,7 @@ Alternatively, you can follow us on social media platforms to get news about
Castopod:
- [podlibre.social](https://podlibre.social/@Castopod) (Mastodon instance)
- [Twitter](https://twitter.com/castopod)
- [Bluesky](https://bsky.app/profile/castopod.org)
- [LinkedIn](https://linkedin.com/company/castopod)
- [Facebook](https://www.facebook.com/castopod)

View File

@ -172,7 +172,7 @@ Alternatively, you can follow us on social media platforms to get news about
Castopod:
- [podlibre.social](https://podlibre.social/@Castopod) (Mastodon instance)
- [Twitter](https://twitter.com/castopod)
- [Bluesky](https://bsky.app/profile/castopod.org)
- [LinkedIn](https://linkedin.com/company/castopod)
- [Facebook](https://www.facebook.com/castopod)

View File

@ -172,7 +172,7 @@ Alternatively, you can follow us on social media platforms to get news about
Castopod:
- [podlibre.social](https://podlibre.social/@Castopod) (Mastodon instance)
- [Twitter](https://twitter.com/castopod)
- [Bluesky](https://bsky.app/profile/castopod.org)
- [LinkedIn](https://linkedin.com/company/castopod)
- [Facebook](https://www.facebook.com/castopod)

View File

@ -175,7 +175,7 @@ Alternatively, you can follow us on social media platforms to get news about
Castopod:
- [podlibre.social](https://podlibre.social/@Castopod) (Mastodon instance)
- [Twitter](https://twitter.com/castopod)
- [Bluesky](https://bsky.app/profile/castopod.org)
- [LinkedIn](https://linkedin.com/company/castopod)
- [Facebook](https://www.facebook.com/castopod)

View File

@ -173,7 +173,7 @@ Alternatively, you can follow us on social media platforms to get news about
Castopod:
- [podlibre.social](https://podlibre.social/@Castopod) (Mastodon instance)
- [Twitter](https://twitter.com/castopod)
- [Bluesky](https://bsky.app/profile/castopod.org)
- [LinkedIn](https://linkedin.com/company/castopod)
- [Facebook](https://www.facebook.com/castopod)

View File

@ -172,7 +172,7 @@ Alternatively, you can follow us on social media platforms to get news about
Castopod:
- [podlibre.social](https://podlibre.social/@Castopod) (Mastodon instance)
- [Twitter](https://twitter.com/castopod)
- [Bluesky](https://bsky.app/profile/castopod.org)
- [LinkedIn](https://linkedin.com/company/castopod)
- [Facebook](https://www.facebook.com/castopod)

View File

@ -172,7 +172,7 @@ Alternatively, you can follow us on social media platforms to get news about
Castopod:
- [podlibre.social](https://podlibre.social/@Castopod) (Mastodon instance)
- [Twitter](https://twitter.com/castopod)
- [Bluesky](https://bsky.app/profile/castopod.org)
- [LinkedIn](https://linkedin.com/company/castopod)
- [Facebook](https://www.facebook.com/castopod)

4
docs/src/env.d.ts vendored
View File

@ -1,4 +0,0 @@
/* eslint-disable @typescript-eslint/triple-slash-reference */
/// <reference path="../.astro/types.d.ts" />
/// <reference types="astro/client" />
/// <reference path="../node_modules/@astrojs/starlight/virtual.d.ts"/>

View File

@ -0,0 +1,44 @@
/* Dark mode colors. */
:root {
--sl-font: "Inter", sans-serif;
--sl-color-accent-low: #002b26;
--sl-color-accent: #007b6f;
--sl-color-accent-high: #81dcce;
--sl-color-white: #fff;
--sl-color-gray-1: #e8efee;
--sl-color-gray-2: #bbc4c2;
--sl-color-gray-3: #7f908c;
--sl-color-gray-4: #4c5c59;
--sl-color-gray-5: #2d3c39;
--sl-color-gray-6: #1c2a28;
--sl-color-black: #131a19;
}
/* Light mode colors. */
:root[data-theme="light"] {
--sl-color-accent-low: #a5e6db;
--sl-color-accent: #007368;
--sl-color-accent-high: #003b35;
--sl-color-white: #131a19;
--sl-color-gray-1: #1c2a28;
--sl-color-gray-2: #2d3c39;
--sl-color-gray-3: #4c5c59;
--sl-color-gray-4: #7f908c;
--sl-color-gray-5: #bbc4c2;
--sl-color-gray-6: #e8efee;
--sl-color-gray-7: #f3f7f6;
--sl-color-black: #fff;
}
h1,
h2,
h3,
h4,
h5,
h6 {
font-family: Rubik, sans-serif;
}
:is(code, kbd, samp) {
font-family: monospace;
}

View File

@ -1,14 +0,0 @@
@tailwind base;
@tailwind components;
@tailwind utilities;
main {
h1,
h2,
h3,
h4,
h5,
h6 {
font-family: Rubik, sans-serif;
}
}

View File

@ -1,31 +0,0 @@
import starlightPlugin from "@astrojs/starlight-tailwind";
import colors from "tailwindcss/colors";
import defaultTheme from "tailwindcss/defaultTheme";
/** @type {import('tailwindcss').Config} */
export default {
content: ["./src/**/*.{astro,html,js,jsx,md,mdx,svelte,ts,tsx,vue}"],
theme: {
extend: {
colors: {
accent: {
50: "#F2FAF9",
100: "#E7F9E4",
200: "#bfe4e1",
300: "#99d4cf",
400: "#4db4aa",
500: "#009486",
600: "#008579",
700: "#006D60",
800: "#00564A",
900: "#003D0B",
},
gray: colors.stone,
},
fontFamily: {
sans: ["Inter", ...defaultTheme.fontFamily.sans],
},
},
},
plugins: [starlightPlugin()],
};

View File

@ -1,3 +1,5 @@
{
"extends": "astro/tsconfigs/strict"
"extends": "astro/tsconfigs/strict",
"include": [".astro/types.d.ts", "**/*"],
"exclude": ["dist"]
}

View File

@ -46,7 +46,7 @@
"leaflet": "^1.9.4",
"leaflet.markercluster": "^1.5.3",
"lit": "^3.3.1",
"marked": "^16.2.0",
"marked": "^16.2.1",
"wavesurfer.js": "^7.10.1",
"xml-formatter": "^3.6.6"
},
@ -58,12 +58,12 @@
"@semantic-release/changelog": "^6.0.3",
"@semantic-release/exec": "^7.1.0",
"@semantic-release/git": "^10.0.1",
"@semantic-release/gitlab": "^13.2.7",
"@semantic-release/gitlab": "^13.2.8",
"@tailwindcss/forms": "^0.5.10",
"@tailwindcss/typography": "^0.5.16",
"@types/leaflet": "^1.9.20",
"@typescript-eslint/eslint-plugin": "^8.40.0",
"@typescript-eslint/parser": "^8.40.0",
"@typescript-eslint/eslint-plugin": "^8.41.0",
"@typescript-eslint/parser": "^8.41.0",
"all-contributors-cli": "^6.26.1",
"commitizen": "^4.3.1",
"cross-env": "^10.0.0",
@ -79,7 +79,7 @@
"postcss": "^8.5.6",
"postcss-import": "^16.1.1",
"postcss-nesting": "^13.0.2",
"postcss-preset-env": "^10.3.0",
"postcss-preset-env": "^10.3.1",
"postcss-reporter": "^7.1.0",
"prettier": "3.6.2",
"prettier-plugin-organize-imports": "^4.2.0",
@ -89,7 +89,7 @@
"svgo": "^4.0.0",
"tailwindcss": "^3.4.17",
"typescript": "~5.9.2",
"typescript-eslint": "^8.40.0",
"typescript-eslint": "^8.41.0",
"vite": "^7.1.3",
"vite-plugin-pwa": "^1.0.3",
"workbox-build": "^7.3.0",

174
pnpm-lock.yaml generated
View File

@ -68,8 +68,8 @@ importers:
specifier: ^3.3.1
version: 3.3.1
marked:
specifier: ^16.2.0
version: 16.2.0
specifier: ^16.2.1
version: 16.2.1
wavesurfer.js:
specifier: ^7.10.1
version: 7.10.1
@ -99,8 +99,8 @@ importers:
specifier: ^10.0.1
version: 10.0.1(semantic-release@24.2.7(typescript@5.9.2))
"@semantic-release/gitlab":
specifier: ^13.2.7
version: 13.2.7(semantic-release@24.2.7(typescript@5.9.2))
specifier: ^13.2.8
version: 13.2.8(semantic-release@24.2.7(typescript@5.9.2))
"@tailwindcss/forms":
specifier: ^0.5.10
version: 0.5.10(tailwindcss@3.4.17)
@ -111,11 +111,11 @@ importers:
specifier: ^1.9.20
version: 1.9.20
"@typescript-eslint/eslint-plugin":
specifier: ^8.40.0
version: 8.40.0(@typescript-eslint/parser@8.40.0(eslint@9.34.0(jiti@2.5.1))(typescript@5.9.2))(eslint@9.34.0(jiti@2.5.1))(typescript@5.9.2)
specifier: ^8.41.0
version: 8.41.0(@typescript-eslint/parser@8.41.0(eslint@9.34.0(jiti@2.5.1))(typescript@5.9.2))(eslint@9.34.0(jiti@2.5.1))(typescript@5.9.2)
"@typescript-eslint/parser":
specifier: ^8.40.0
version: 8.40.0(eslint@9.34.0(jiti@2.5.1))(typescript@5.9.2)
specifier: ^8.41.0
version: 8.41.0(eslint@9.34.0(jiti@2.5.1))(typescript@5.9.2)
all-contributors-cli:
specifier: ^6.26.1
version: 6.26.1
@ -162,8 +162,8 @@ importers:
specifier: ^13.0.2
version: 13.0.2(postcss@8.5.6)
postcss-preset-env:
specifier: ^10.3.0
version: 10.3.0(postcss@8.5.6)
specifier: ^10.3.1
version: 10.3.1(postcss@8.5.6)
postcss-reporter:
specifier: ^7.1.0
version: 7.1.0(postcss@8.5.6)
@ -192,8 +192,8 @@ importers:
specifier: ~5.9.2
version: 5.9.2
typescript-eslint:
specifier: ^8.40.0
version: 8.40.0(eslint@9.34.0(jiti@2.5.1))(typescript@5.9.2)
specifier: ^8.41.0
version: 8.41.0(eslint@9.34.0(jiti@2.5.1))(typescript@5.9.2)
vite:
specifier: ^7.1.3
version: 7.1.3(@types/node@24.3.0)(jiti@2.5.1)(terser@5.43.1)(yaml@2.8.1)
@ -2521,10 +2521,10 @@ packages:
peerDependencies:
semantic-release: ">=24.1.0"
"@semantic-release/gitlab@13.2.7":
"@semantic-release/gitlab@13.2.8":
resolution:
{
integrity: sha512-oxSwcCeKzssXgJgie+y7Ok9x7x+MqevAmVfMuJ8deFu1iA9zvfGBP7vuqGVyjLzHsh6JVeEtwHRlUtxocgzG0Q==,
integrity: sha512-uTRRpTHHMQ4kC94E5yN18tkpVZ/gxtFDfWhfluE7xS3AhNG2cBKuZi0cDp0kwdMpiNRB6YdPTnLyXJxV7BKoiA==,
}
engines: { node: ">=20.8.1" }
peerDependencies:
@ -2693,92 +2693,92 @@ packages:
integrity: sha512-ScaPdn1dQczgbl0QFTeTOmVHFULt394XJgOQNoyVhZ6r2vLnMLJfBPd53SB52T/3G36VI1/g2MZaX0cwDuXsfw==,
}
"@typescript-eslint/eslint-plugin@8.40.0":
"@typescript-eslint/eslint-plugin@8.41.0":
resolution:
{
integrity: sha512-w/EboPlBwnmOBtRbiOvzjD+wdiZdgFeo17lkltrtn7X37vagKKWJABvyfsJXTlHe6XBzugmYgd4A4nW+k8Mixw==,
integrity: sha512-8fz6oa6wEKZrhXWro/S3n2eRJqlRcIa6SlDh59FXJ5Wp5XRZ8B9ixpJDcjadHq47hMx0u+HW6SNa6LjJQ6NLtw==,
}
engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 }
peerDependencies:
"@typescript-eslint/parser": ^8.40.0
"@typescript-eslint/parser": ^8.41.0
eslint: ^8.57.0 || ^9.0.0
typescript: ">=4.8.4 <6.0.0"
"@typescript-eslint/parser@8.40.0":
"@typescript-eslint/parser@8.41.0":
resolution:
{
integrity: sha512-jCNyAuXx8dr5KJMkecGmZ8KI61KBUhkCob+SD+C+I5+Y1FWI2Y3QmY4/cxMCC5WAsZqoEtEETVhUiUMIGCf6Bw==,
integrity: sha512-gTtSdWX9xiMPA/7MV9STjJOOYtWwIJIYxkQxnSV1U3xcE+mnJSH3f6zI0RYP+ew66WSlZ5ed+h0VCxsvdC1jJg==,
}
engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 }
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
typescript: ">=4.8.4 <6.0.0"
"@typescript-eslint/project-service@8.40.0":
"@typescript-eslint/project-service@8.41.0":
resolution:
{
integrity: sha512-/A89vz7Wf5DEXsGVvcGdYKbVM9F7DyFXj52lNYUDS1L9yJfqjW/fIp5PgMuEJL/KeqVTe2QSbXAGUZljDUpArw==,
integrity: sha512-b8V9SdGBQzQdjJ/IO3eDifGpDBJfvrNTp2QD9P2BeqWTGrRibgfgIlBSw6z3b6R7dPzg752tOs4u/7yCLxksSQ==,
}
engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 }
peerDependencies:
typescript: ">=4.8.4 <6.0.0"
"@typescript-eslint/scope-manager@8.40.0":
"@typescript-eslint/scope-manager@8.41.0":
resolution:
{
integrity: sha512-y9ObStCcdCiZKzwqsE8CcpyuVMwRouJbbSrNuThDpv16dFAj429IkM6LNb1dZ2m7hK5fHyzNcErZf7CEeKXR4w==,
integrity: sha512-n6m05bXn/Cd6DZDGyrpXrELCPVaTnLdPToyhBoFkLIMznRUQUEQdSp96s/pcWSQdqOhrgR1mzJ+yItK7T+WPMQ==,
}
engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 }
"@typescript-eslint/tsconfig-utils@8.40.0":
"@typescript-eslint/tsconfig-utils@8.41.0":
resolution:
{
integrity: sha512-jtMytmUaG9d/9kqSl/W3E3xaWESo4hFDxAIHGVW/WKKtQhesnRIJSAJO6XckluuJ6KDB5woD1EiqknriCtAmcw==,
integrity: sha512-TDhxYFPUYRFxFhuU5hTIJk+auzM/wKvWgoNYOPcOf6i4ReYlOoYN8q1dV5kOTjNQNJgzWN3TUUQMtlLOcUgdUw==,
}
engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 }
peerDependencies:
typescript: ">=4.8.4 <6.0.0"
"@typescript-eslint/type-utils@8.40.0":
"@typescript-eslint/type-utils@8.41.0":
resolution:
{
integrity: sha512-eE60cK4KzAc6ZrzlJnflXdrMqOBaugeukWICO2rB0KNvwdIMaEaYiywwHMzA1qFpTxrLhN9Lp4E/00EgWcD3Ow==,
integrity: sha512-63qt1h91vg3KsjVVonFJWjgSK7pZHSQFKH6uwqxAH9bBrsyRhO6ONoKyXxyVBzG1lJnFAJcKAcxLS54N1ee1OQ==,
}
engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 }
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
typescript: ">=4.8.4 <6.0.0"
"@typescript-eslint/types@8.40.0":
"@typescript-eslint/types@8.41.0":
resolution:
{
integrity: sha512-ETdbFlgbAmXHyFPwqUIYrfc12ArvpBhEVgGAxVYSwli26dn8Ko+lIo4Su9vI9ykTZdJn+vJprs/0eZU0YMAEQg==,
integrity: sha512-9EwxsWdVqh42afLbHP90n2VdHaWU/oWgbH2P0CfcNfdKL7CuKpwMQGjwev56vWu9cSKU7FWSu6r9zck6CVfnag==,
}
engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 }
"@typescript-eslint/typescript-estree@8.40.0":
"@typescript-eslint/typescript-estree@8.41.0":
resolution:
{
integrity: sha512-k1z9+GJReVVOkc1WfVKs1vBrR5MIKKbdAjDTPvIK3L8De6KbFfPFt6BKpdkdk7rZS2GtC/m6yI5MYX+UsuvVYQ==,
integrity: sha512-D43UwUYJmGhuwHfY7MtNKRZMmfd8+p/eNSfFe6tH5mbVDto+VQCayeAt35rOx3Cs6wxD16DQtIKw/YXxt5E0UQ==,
}
engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 }
peerDependencies:
typescript: ">=4.8.4 <6.0.0"
"@typescript-eslint/utils@8.40.0":
"@typescript-eslint/utils@8.41.0":
resolution:
{
integrity: sha512-Cgzi2MXSZyAUOY+BFwGs17s7ad/7L+gKt6Y8rAVVWS+7o6wrjeFN4nVfTpbE25MNcxyJ+iYUXflbs2xR9h4UBg==,
integrity: sha512-udbCVstxZ5jiPIXrdH+BZWnPatjlYwJuJkDA4Tbo3WyYLh8NvB+h/bKeSZHDOFKfphsZYJQqaFtLeXEqurQn1A==,
}
engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 }
peerDependencies:
eslint: ^8.57.0 || ^9.0.0
typescript: ">=4.8.4 <6.0.0"
"@typescript-eslint/visitor-keys@8.40.0":
"@typescript-eslint/visitor-keys@8.41.0":
resolution:
{
integrity: sha512-8CZ47QwalyRjsypfwnbI3hKy5gJDPmrkLjkgMxhi0+DZZ2QNx2naS6/hWoVYUHU7LU2zleF68V9miaVZvhFfTA==,
integrity: sha512-+GeGMebMCy0elMNg67LRNoVnUFPIm37iu5CmHESVx56/9Jsfdpsvbv605DQ81Pi/x11IdKUsS5nzgTYbCQU9fg==,
}
engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 }
@ -3640,10 +3640,10 @@ packages:
}
engines: { node: ">=12 || >=16" }
css-has-pseudo@7.0.2:
css-has-pseudo@7.0.3:
resolution:
{
integrity: sha512-nzol/h+E0bId46Kn2dQH5VElaknX2Sr0hFuB/1EomdC7j+OISt2ZzK7EHX9DZDY53WbIVAR7FYKSO2XnSf07MQ==,
integrity: sha512-oG+vKuGyqe/xvEMoxAQrhi7uY16deJR3i7wwhBerVrGQKSqUC5GiOVxTpM9F9B9hw0J+eKeOWLH7E9gZ1Dr5rA==,
}
engines: { node: ">=18" }
peerDependencies:
@ -6006,10 +6006,10 @@ packages:
engines: { node: ">= 18" }
hasBin: true
marked@16.2.0:
marked@16.2.1:
resolution:
{
integrity: sha512-LbbTuye+0dWRz2TS9KJ7wsnD4KAtpj0MVkWc90XvBa6AslXsT0hTBVH5k32pcSyHH1fst9XEFJunXHktVy0zlg==,
integrity: sha512-r3UrXED9lMlHF97jJByry90cwrZBBvZmjG1L68oYfuPMW+uDTnuMbyJDymCWwbTE+f+3LhpNDKfpR3a3saFyjA==,
}
engines: { node: ">= 20" }
hasBin: true
@ -7318,10 +7318,10 @@ packages:
peerDependencies:
postcss: ^8.4
postcss-preset-env@10.3.0:
postcss-preset-env@10.3.1:
resolution:
{
integrity: sha512-khE99iwEbWLzXBVFNsS0QdnfYXDpqH/pxoHFcaCaVlh+e29swc3UyiLSSJ89dTK8e+Si3wNKYDGs6jEMmbE8TQ==,
integrity: sha512-8ZOOWVwQ0iMpfEYkYo+U6W7fE2dJ/tP6dtEFwPJ66eB5JjnFupfYh+y6zo+vWDO72nGhKOVdxwhTjfzcSNRg4Q==,
}
engines: { node: ">=18" }
peerDependencies:
@ -8636,10 +8636,10 @@ packages:
}
engines: { node: ">= 0.4" }
typescript-eslint@8.40.0:
typescript-eslint@8.41.0:
resolution:
{
integrity: sha512-Xvd2l+ZmFDPEt4oj1QEXzA4A2uUK6opvKu3eGN9aGjB8au02lIVcLyi375w94hHyejTOmzIU77L8ol2sRg9n7Q==,
integrity: sha512-n66rzs5OBXW3SFSnZHr2T685q1i4ODm2nulFJhMZBotaTavsS8TrI3d7bDlRSs9yWo7HmyWrN9qDu14Qv7Y0Dw==,
}
engines: { node: ^18.18.0 || ^20.9.0 || >=21.1.0 }
peerDependencies:
@ -10873,7 +10873,7 @@ snapshots:
transitivePeerDependencies:
- supports-color
"@semantic-release/gitlab@13.2.7(semantic-release@24.2.7(typescript@5.9.2))":
"@semantic-release/gitlab@13.2.8(semantic-release@24.2.7(typescript@5.9.2))":
dependencies:
"@semantic-release/error": 4.0.0
aggregate-error: 5.0.0
@ -10994,14 +10994,14 @@ snapshots:
"@types/trusted-types@2.0.7": {}
"@typescript-eslint/eslint-plugin@8.40.0(@typescript-eslint/parser@8.40.0(eslint@9.34.0(jiti@2.5.1))(typescript@5.9.2))(eslint@9.34.0(jiti@2.5.1))(typescript@5.9.2)":
"@typescript-eslint/eslint-plugin@8.41.0(@typescript-eslint/parser@8.41.0(eslint@9.34.0(jiti@2.5.1))(typescript@5.9.2))(eslint@9.34.0(jiti@2.5.1))(typescript@5.9.2)":
dependencies:
"@eslint-community/regexpp": 4.12.1
"@typescript-eslint/parser": 8.40.0(eslint@9.34.0(jiti@2.5.1))(typescript@5.9.2)
"@typescript-eslint/scope-manager": 8.40.0
"@typescript-eslint/type-utils": 8.40.0(eslint@9.34.0(jiti@2.5.1))(typescript@5.9.2)
"@typescript-eslint/utils": 8.40.0(eslint@9.34.0(jiti@2.5.1))(typescript@5.9.2)
"@typescript-eslint/visitor-keys": 8.40.0
"@typescript-eslint/parser": 8.41.0(eslint@9.34.0(jiti@2.5.1))(typescript@5.9.2)
"@typescript-eslint/scope-manager": 8.41.0
"@typescript-eslint/type-utils": 8.41.0(eslint@9.34.0(jiti@2.5.1))(typescript@5.9.2)
"@typescript-eslint/utils": 8.41.0(eslint@9.34.0(jiti@2.5.1))(typescript@5.9.2)
"@typescript-eslint/visitor-keys": 8.41.0
eslint: 9.34.0(jiti@2.5.1)
graphemer: 1.4.0
ignore: 7.0.5
@ -11011,41 +11011,41 @@ snapshots:
transitivePeerDependencies:
- supports-color
"@typescript-eslint/parser@8.40.0(eslint@9.34.0(jiti@2.5.1))(typescript@5.9.2)":
"@typescript-eslint/parser@8.41.0(eslint@9.34.0(jiti@2.5.1))(typescript@5.9.2)":
dependencies:
"@typescript-eslint/scope-manager": 8.40.0
"@typescript-eslint/types": 8.40.0
"@typescript-eslint/typescript-estree": 8.40.0(typescript@5.9.2)
"@typescript-eslint/visitor-keys": 8.40.0
"@typescript-eslint/scope-manager": 8.41.0
"@typescript-eslint/types": 8.41.0
"@typescript-eslint/typescript-estree": 8.41.0(typescript@5.9.2)
"@typescript-eslint/visitor-keys": 8.41.0
debug: 4.4.1
eslint: 9.34.0(jiti@2.5.1)
typescript: 5.9.2
transitivePeerDependencies:
- supports-color
"@typescript-eslint/project-service@8.40.0(typescript@5.9.2)":
"@typescript-eslint/project-service@8.41.0(typescript@5.9.2)":
dependencies:
"@typescript-eslint/tsconfig-utils": 8.40.0(typescript@5.9.2)
"@typescript-eslint/types": 8.40.0
"@typescript-eslint/tsconfig-utils": 8.41.0(typescript@5.9.2)
"@typescript-eslint/types": 8.41.0
debug: 4.4.1
typescript: 5.9.2
transitivePeerDependencies:
- supports-color
"@typescript-eslint/scope-manager@8.40.0":
"@typescript-eslint/scope-manager@8.41.0":
dependencies:
"@typescript-eslint/types": 8.40.0
"@typescript-eslint/visitor-keys": 8.40.0
"@typescript-eslint/types": 8.41.0
"@typescript-eslint/visitor-keys": 8.41.0
"@typescript-eslint/tsconfig-utils@8.40.0(typescript@5.9.2)":
"@typescript-eslint/tsconfig-utils@8.41.0(typescript@5.9.2)":
dependencies:
typescript: 5.9.2
"@typescript-eslint/type-utils@8.40.0(eslint@9.34.0(jiti@2.5.1))(typescript@5.9.2)":
"@typescript-eslint/type-utils@8.41.0(eslint@9.34.0(jiti@2.5.1))(typescript@5.9.2)":
dependencies:
"@typescript-eslint/types": 8.40.0
"@typescript-eslint/typescript-estree": 8.40.0(typescript@5.9.2)
"@typescript-eslint/utils": 8.40.0(eslint@9.34.0(jiti@2.5.1))(typescript@5.9.2)
"@typescript-eslint/types": 8.41.0
"@typescript-eslint/typescript-estree": 8.41.0(typescript@5.9.2)
"@typescript-eslint/utils": 8.41.0(eslint@9.34.0(jiti@2.5.1))(typescript@5.9.2)
debug: 4.4.1
eslint: 9.34.0(jiti@2.5.1)
ts-api-utils: 2.1.0(typescript@5.9.2)
@ -11053,14 +11053,14 @@ snapshots:
transitivePeerDependencies:
- supports-color
"@typescript-eslint/types@8.40.0": {}
"@typescript-eslint/types@8.41.0": {}
"@typescript-eslint/typescript-estree@8.40.0(typescript@5.9.2)":
"@typescript-eslint/typescript-estree@8.41.0(typescript@5.9.2)":
dependencies:
"@typescript-eslint/project-service": 8.40.0(typescript@5.9.2)
"@typescript-eslint/tsconfig-utils": 8.40.0(typescript@5.9.2)
"@typescript-eslint/types": 8.40.0
"@typescript-eslint/visitor-keys": 8.40.0
"@typescript-eslint/project-service": 8.41.0(typescript@5.9.2)
"@typescript-eslint/tsconfig-utils": 8.41.0(typescript@5.9.2)
"@typescript-eslint/types": 8.41.0
"@typescript-eslint/visitor-keys": 8.41.0
debug: 4.4.1
fast-glob: 3.3.3
is-glob: 4.0.3
@ -11071,20 +11071,20 @@ snapshots:
transitivePeerDependencies:
- supports-color
"@typescript-eslint/utils@8.40.0(eslint@9.34.0(jiti@2.5.1))(typescript@5.9.2)":
"@typescript-eslint/utils@8.41.0(eslint@9.34.0(jiti@2.5.1))(typescript@5.9.2)":
dependencies:
"@eslint-community/eslint-utils": 4.7.0(eslint@9.34.0(jiti@2.5.1))
"@typescript-eslint/scope-manager": 8.40.0
"@typescript-eslint/types": 8.40.0
"@typescript-eslint/typescript-estree": 8.40.0(typescript@5.9.2)
"@typescript-eslint/scope-manager": 8.41.0
"@typescript-eslint/types": 8.41.0
"@typescript-eslint/typescript-estree": 8.41.0(typescript@5.9.2)
eslint: 9.34.0(jiti@2.5.1)
typescript: 5.9.2
transitivePeerDependencies:
- supports-color
"@typescript-eslint/visitor-keys@8.40.0":
"@typescript-eslint/visitor-keys@8.41.0":
dependencies:
"@typescript-eslint/types": 8.40.0
"@typescript-eslint/types": 8.41.0
eslint-visitor-keys: 4.2.1
"@vime/core@5.4.1":
@ -11610,7 +11610,7 @@ snapshots:
css-functions-list@3.2.3: {}
css-has-pseudo@7.0.2(postcss@8.5.6):
css-has-pseudo@7.0.3(postcss@8.5.6):
dependencies:
"@csstools/selector-specificity": 5.0.0(postcss-selector-parser@7.1.0)
postcss: 8.5.6
@ -13073,7 +13073,7 @@ snapshots:
marked@15.0.12: {}
marked@16.2.0: {}
marked@16.2.1: {}
math-intrinsics@1.1.0: {}
@ -13718,7 +13718,7 @@ snapshots:
postcss: 8.5.6
postcss-value-parser: 4.2.0
postcss-preset-env@10.3.0(postcss@8.5.6):
postcss-preset-env@10.3.1(postcss@8.5.6):
dependencies:
"@csstools/postcss-alpha-function": 1.0.0(postcss@8.5.6)
"@csstools/postcss-cascade-layers": 5.0.2(postcss@8.5.6)
@ -13758,7 +13758,7 @@ snapshots:
autoprefixer: 10.4.21(postcss@8.5.6)
browserslist: 4.25.3
css-blank-pseudo: 7.0.1(postcss@8.5.6)
css-has-pseudo: 7.0.2(postcss@8.5.6)
css-has-pseudo: 7.0.3(postcss@8.5.6)
css-prefers-color-scheme: 10.0.0(postcss@8.5.6)
cssdb: 8.4.0
postcss: 8.5.6
@ -14674,12 +14674,12 @@ snapshots:
possible-typed-array-names: 1.1.0
reflect.getprototypeof: 1.0.10
typescript-eslint@8.40.0(eslint@9.34.0(jiti@2.5.1))(typescript@5.9.2):
typescript-eslint@8.41.0(eslint@9.34.0(jiti@2.5.1))(typescript@5.9.2):
dependencies:
"@typescript-eslint/eslint-plugin": 8.40.0(@typescript-eslint/parser@8.40.0(eslint@9.34.0(jiti@2.5.1))(typescript@5.9.2))(eslint@9.34.0(jiti@2.5.1))(typescript@5.9.2)
"@typescript-eslint/parser": 8.40.0(eslint@9.34.0(jiti@2.5.1))(typescript@5.9.2)
"@typescript-eslint/typescript-estree": 8.40.0(typescript@5.9.2)
"@typescript-eslint/utils": 8.40.0(eslint@9.34.0(jiti@2.5.1))(typescript@5.9.2)
"@typescript-eslint/eslint-plugin": 8.41.0(@typescript-eslint/parser@8.41.0(eslint@9.34.0(jiti@2.5.1))(typescript@5.9.2))(eslint@9.34.0(jiti@2.5.1))(typescript@5.9.2)
"@typescript-eslint/parser": 8.41.0(eslint@9.34.0(jiti@2.5.1))(typescript@5.9.2)
"@typescript-eslint/typescript-estree": 8.41.0(typescript@5.9.2)
"@typescript-eslint/utils": 8.41.0(eslint@9.34.0(jiti@2.5.1))(typescript@5.9.2)
eslint: 9.34.0(jiti@2.5.1)
typescript: 5.9.2
transitivePeerDependencies: