From c9f453714b6d09bfd5daa418124392afb83c609d Mon Sep 17 00:00:00 2001 From: John Taylor Date: Mon, 15 Dec 2025 17:03:29 +0100 Subject: [PATCH 01/77] Fixed #4715 by updating certbot-dns-cloudns --- backend/certbot/dns-plugins.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/backend/certbot/dns-plugins.json b/backend/certbot/dns-plugins.json index 4eadd078..eba8e298 100644 --- a/backend/certbot/dns-plugins.json +++ b/backend/certbot/dns-plugins.json @@ -74,7 +74,7 @@ "cloudns": { "name": "ClouDNS", "package_name": "certbot-dns-cloudns", - "version": "~=0.6.0", + "version": "~=0.7.0", "dependencies": "", "credentials": "# Target user ID (see https://www.cloudns.net/api-settings/)\n\tdns_cloudns_auth_id=1234\n\t# Alternatively, one of the following two options can be set:\n\t# dns_cloudns_sub_auth_id=1234\n\t# dns_cloudns_sub_auth_user=foobar\n\n\t# API password\n\tdns_cloudns_auth_password=password1", "full_plugin_name": "dns-cloudns" From 0b464ac9fddd569aa0aedb8180a2e684333302a0 Mon Sep 17 00:00:00 2001 From: GedasMirak Date: Mon, 17 Nov 2025 18:07:07 +0100 Subject: [PATCH 02/77] Add french locale --- frontend/check-locales.cjs | 1 + frontend/src/locale/IntlProvider.tsx | 8 +- .../src/locale/src/HelpDoc/fr/AccessLists.md | 7 + .../src/locale/src/HelpDoc/fr/Certificates.md | 23 + .../src/locale/src/HelpDoc/fr/DeadHosts.md | 7 + .../src/locale/src/HelpDoc/fr/ProxyHosts.md | 7 + .../locale/src/HelpDoc/fr/RedirectionHosts.md | 5 + frontend/src/locale/src/HelpDoc/fr/Streams.md | 5 + frontend/src/locale/src/HelpDoc/fr/index.ts | 6 + frontend/src/locale/src/HelpDoc/index.ts | 20 +- frontend/src/locale/src/fr.json | 647 ++++++++++++++++++ frontend/src/locale/src/lang-list.json | 3 + 12 files changed, 724 insertions(+), 15 deletions(-) create mode 100644 frontend/src/locale/src/HelpDoc/fr/AccessLists.md create mode 100644 frontend/src/locale/src/HelpDoc/fr/Certificates.md create mode 100644 frontend/src/locale/src/HelpDoc/fr/DeadHosts.md create mode 100644 frontend/src/locale/src/HelpDoc/fr/ProxyHosts.md create mode 100644 frontend/src/locale/src/HelpDoc/fr/RedirectionHosts.md create mode 100644 frontend/src/locale/src/HelpDoc/fr/Streams.md create mode 100644 frontend/src/locale/src/HelpDoc/fr/index.ts create mode 100644 frontend/src/locale/src/fr.json diff --git a/frontend/check-locales.cjs b/frontend/check-locales.cjs index f0889d50..9e030f0a 100755 --- a/frontend/check-locales.cjs +++ b/frontend/check-locales.cjs @@ -10,6 +10,7 @@ const allLocales = [ ["en", "en-US"], ["de", "de-DE"], ["es", "es-ES"], + ["fr", "fr-FR"], ["it", "it-IT"], ["ja", "ja-JP"], ["nl", "nl-NL"], diff --git a/frontend/src/locale/IntlProvider.tsx b/frontend/src/locale/IntlProvider.tsx index 2914660e..ea45d6e8 100755 --- a/frontend/src/locale/IntlProvider.tsx +++ b/frontend/src/locale/IntlProvider.tsx @@ -1,10 +1,14 @@ import { createIntl, createIntlCache } from "react-intl"; +import langBg from "./lang/bg.json"; import langDe from "./lang/de.json"; import langEn from "./lang/en.json"; import langEs from "./lang/es.json"; +import langFr from "./lang/fr.json"; import langGa from "./lang/ga.json"; +import langId from "./lang/id.json"; import langIt from "./lang/it.json"; import langJa from "./lang/ja.json"; +import langKo from "./lang/ko.json"; import langList from "./lang/lang-list.json"; import langNl from "./lang/nl.json"; import langPl from "./lang/pl.json"; @@ -12,9 +16,6 @@ import langRu from "./lang/ru.json"; import langSk from "./lang/sk.json"; import langVi from "./lang/vi.json"; import langZh from "./lang/zh.json"; -import langKo from "./lang/ko.json"; -import langBg from "./lang/bg.json"; -import langId from "./lang/id.json"; // first item of each array should be the language code, // not the country code @@ -23,6 +24,7 @@ const localeOptions = [ ["en", "en-US", langEn], ["de", "de-DE", langDe], ["es", "es-ES", langEs], + ["fr", "fr-FR", langFr], ["ga", "ga-IE", langGa], ["ja", "ja-JP", langJa], ["it", "it-IT", langIt], diff --git a/frontend/src/locale/src/HelpDoc/fr/AccessLists.md b/frontend/src/locale/src/HelpDoc/fr/AccessLists.md new file mode 100644 index 00000000..ca76bf62 --- /dev/null +++ b/frontend/src/locale/src/HelpDoc/fr/AccessLists.md @@ -0,0 +1,7 @@ +## Qu'est-ce qu'une liste d'accès ? + +Les listes d'accès permettent de définir une liste noire ou une liste blanche d'adresses IP clientes spécifiques, ainsi que l'authentification des Hôtes Proxy via l'authentification HTTP de base. + +Vous pouvez configurer plusieurs règles client, noms d'utilisateur et mots de passe pour une même liste d'accès, puis l'appliquer à un ou plusieurs Hôtes Proxy. + +Ceci est particulièrement utile pour les services web redirigés qui ne disposent pas de mécanismes d'authentification intégrés ou lorsque vous souhaitez vous protéger contre les clients inconnus. diff --git a/frontend/src/locale/src/HelpDoc/fr/Certificates.md b/frontend/src/locale/src/HelpDoc/fr/Certificates.md new file mode 100644 index 00000000..f5fa3259 --- /dev/null +++ b/frontend/src/locale/src/HelpDoc/fr/Certificates.md @@ -0,0 +1,23 @@ +## Aide concernant les certificats + +### Certificat HTTP + +Un certificat HTTP validé signifie que les serveurs de Let's Encrypt testeront d'accéder à vos domaines via HTTP (et non HTTPS !). En cas de succès, ils émettront votre certificat. + +Pour cette méthode, vous devrez créer un Hôte Proxy pour votre ou vos domaines. Cet Hôte Proxy devra être accessible via HTTP et pointer vers cette installation Nginx. Une fois le certificat émis, vous pourrez modifier l'Hôte Proxy pour qu'il utilise également ce certificat pour les connexions HTTPS. Cependant, l'Hôte Proxy devra toujours être configuré pour l'accès HTTP afin que le certificat puisse être renouvelé. + +Ce processus ne prend pas en charge les domaines génériques. + +### Certificat DNS + +Un certificat DNS validé nécessite l'utilisation du plugin Fournisseur DNS. Fournisseur DNS créera des enregistrements temporaires sur votre domaine. Let's Encrypt interrogera ensuite ces enregistrements pour vérifier que vous en êtes bien le propriétaire. En cas de succès, votre certificat sera émis. + +Il n'est pas nécessaire de créer un Hôte Proxy avant de demander ce type de certificat. + +Il n'est pas non plus nécessaire de configurer votre Hôte Proxy pour l'accès HTTP. + +Ce processus prend en charge les domaines génériques. + +## Certificat personnalisé + +Utilisez cette option pour importer votre propre certificat SSL, fourni par votre autorité de certification. diff --git a/frontend/src/locale/src/HelpDoc/fr/DeadHosts.md b/frontend/src/locale/src/HelpDoc/fr/DeadHosts.md new file mode 100644 index 00000000..8d22c290 --- /dev/null +++ b/frontend/src/locale/src/HelpDoc/fr/DeadHosts.md @@ -0,0 +1,7 @@ +## Qu'est-ce qu'un serveur 404 ? + +Un Hôte 404 est simplement un hôte configuré pour afficher une page 404. + +Cela peut s'avérer utile lorsque votre domaine est indexé par les moteurs de recherche et que vous souhaitez fournir une page d'erreur plus conviviale ou, plus précisément, indiquer aux moteurs de recherche que les pages du domaine n'existent plus. + +Un autre avantage de cet hôte est la possibilité de suivre les journaux et de consulter les sites référenceurs. diff --git a/frontend/src/locale/src/HelpDoc/fr/ProxyHosts.md b/frontend/src/locale/src/HelpDoc/fr/ProxyHosts.md new file mode 100644 index 00000000..10c75b99 --- /dev/null +++ b/frontend/src/locale/src/HelpDoc/fr/ProxyHosts.md @@ -0,0 +1,7 @@ +## Qu'est-ce qu'un hôte proxy ? + +Un Hôte Proxy est le point de terminaison entrant d'un service web que vous souhaitez rediriger. + +Il assure la terminaison SSL optionnelle pour votre service qui ne prend pas en charge SSL nativement. + +Les Hôtes Proxy constituent l'utilisation la plus courante du Nginx Proxy Manager. diff --git a/frontend/src/locale/src/HelpDoc/fr/RedirectionHosts.md b/frontend/src/locale/src/HelpDoc/fr/RedirectionHosts.md new file mode 100644 index 00000000..f12319d4 --- /dev/null +++ b/frontend/src/locale/src/HelpDoc/fr/RedirectionHosts.md @@ -0,0 +1,5 @@ +## Qu'est-ce qu'un serveur de redirection ? + +Un Hôte de Redirection redirige les requêtes provenant du domaine entrant vers un autre domaine. + +On utilise généralement ce type d'hôte lorsque votre site web change de domaine, mais que des liens provenant des moteurs de recherche ou des sites référenceurs pointent toujours vers l'ancien domaine. diff --git a/frontend/src/locale/src/HelpDoc/fr/Streams.md b/frontend/src/locale/src/HelpDoc/fr/Streams.md new file mode 100644 index 00000000..74668b99 --- /dev/null +++ b/frontend/src/locale/src/HelpDoc/fr/Streams.md @@ -0,0 +1,5 @@ +## Qu'est-ce qu'un Stream ? + +Fonctionnalité relativement récente de Nginx, un Stream permet de rediriger le trafic TCP/UDP directement vers un autre ordinateur du réseau. + +Si vous gérez des serveurs de jeux, FTP ou SSH, cela peut s'avérer très utile. diff --git a/frontend/src/locale/src/HelpDoc/fr/index.ts b/frontend/src/locale/src/HelpDoc/fr/index.ts new file mode 100644 index 00000000..a9bb46ba --- /dev/null +++ b/frontend/src/locale/src/HelpDoc/fr/index.ts @@ -0,0 +1,6 @@ +export * as AccessLists from "./AccessLists.md"; +export * as Certificates from "./Certificates.md"; +export * as DeadHosts from "./DeadHosts.md"; +export * as ProxyHosts from "./ProxyHosts.md"; +export * as RedirectionHosts from "./RedirectionHosts.md"; +export * as Streams from "./Streams.md"; diff --git a/frontend/src/locale/src/HelpDoc/index.ts b/frontend/src/locale/src/HelpDoc/index.ts index a03c6e5b..d7ff4abd 100644 --- a/frontend/src/locale/src/HelpDoc/index.ts +++ b/frontend/src/locale/src/HelpDoc/index.ts @@ -1,34 +1,30 @@ +import * as bg from "./bg/index"; import * as de from "./de/index"; import * as en from "./en/index"; -import * as ga from './ga/index' +import * as es from "./es/index"; +import * as fr from "./fr/index"; +import * as ga from "./ga/index"; import * as id from "./id/index"; import * as it from "./it/index"; import * as ja from "./ja/index"; +import * as ko from "./ko/index"; import * as nl from "./nl/index"; import * as pl from "./pl/index"; import * as ru from "./ru/index"; import * as sk from "./sk/index"; import * as vi from "./vi/index"; import * as zh from "./zh/index"; -import * as ko from "./ko/index"; -import * as bg from "./bg/index"; -const items: any = { en, de, ja, sk, zh, pl, ru, it, vi, nl, bg, ko, ga, id } +const items: any = { en, de, es, ja, sk, zh, pl, ru, it, vi, nl, bg, ko, ga, id, fr }; const fallbackLang = "en"; export const getHelpFile = (lang: string, section: string): string => { - if ( - typeof items[lang] !== "undefined" && - typeof items[lang][section] !== "undefined" - ) { + if (typeof items[lang] !== "undefined" && typeof items[lang][section] !== "undefined") { return items[lang][section].default; } // Fallback to English - if ( - typeof items[fallbackLang] !== "undefined" && - typeof items[fallbackLang][section] !== "undefined" - ) { + if (typeof items[fallbackLang] !== "undefined" && typeof items[fallbackLang][section] !== "undefined") { return items[fallbackLang][section].default; } throw new Error(`Cannot load help doc for ${lang}-${section}`); diff --git a/frontend/src/locale/src/fr.json b/frontend/src/locale/src/fr.json new file mode 100644 index 00000000..c715c028 --- /dev/null +++ b/frontend/src/locale/src/fr.json @@ -0,0 +1,647 @@ +{ + "access-list": { + "defaultMessage": "Liste d'accès" + }, + "access-list.access-count": { + "defaultMessage": "{count} {count, plural, one {Règle} other {Règles}}" + }, + "access-list.auth-count": { + "defaultMessage": "{count} {count, plural, one {Utilisateur} other {Utilisateurs}}" + }, + "access-list.help-rules-last": { + "defaultMessage": "S'il existe au moins une règle, cette règle de refuser tout sera ajoutée en dernier." + }, + "access-list.help.rules-order": { + "defaultMessage": "Notez que les directives autoriser et refuser seront appliquées dans l'ordre où elles sont définies." + }, + "access-list.pass-auth": { + "defaultMessage": "Transmettre l'authentification au serveur en amont" + }, + "access-list.public": { + "defaultMessage": "Accessible au public" + }, + "access-list.public.subtitle": { + "defaultMessage": "Aucune authentification de base requise" + }, + "access-list.satisfy-any": { + "defaultMessage": "Valide n'importe quelle règle" + }, + "access-list.subtitle": { + "defaultMessage": "{utilisateurs} {utilisateurs, plural, one {Utilisateur} other {Utilisateurs}}, {règles} {règles, plural, one {Règle} other {Règles}} - Crée : {date}" + }, + "access-lists": { + "defaultMessage": "Listes d'accès" + }, + "action.add": { + "defaultMessage": "Ajouter" + }, + "action.add-location": { + "defaultMessage": "Ajouter localisation" + }, + "action.close": { + "defaultMessage": "Fermer" + }, + "action.delete": { + "defaultMessage": "Supprimer" + }, + "action.disable": { + "defaultMessage": "Désactiver" + }, + "action.download": { + "defaultMessage": "Télécharger" + }, + "action.edit": { + "defaultMessage": "Modifier" + }, + "action.enable": { + "defaultMessage": "Activer" + }, + "action.permissions": { + "defaultMessage": "Permissions" + }, + "action.renew": { + "defaultMessage": "Renouveler" + }, + "action.view-details": { + "defaultMessage": "Voir les Détails" + }, + "auditlogs": { + "defaultMessage": "Journaux d'audit" + }, + "cancel": { + "defaultMessage": "Annuler" + }, + "certificate": { + "defaultMessage": "Certificat" + }, + "certificate.custom-certificate": { + "defaultMessage": "Certificat" + }, + "certificate.custom-certificate-key": { + "defaultMessage": "Clé du Certificat" + }, + "certificate.custom-intermediate": { + "defaultMessage": "Certificat intermédiaire" + }, + "certificate.in-use": { + "defaultMessage": "Utilisé" + }, + "certificate.none.subtitle": { + "defaultMessage": "Aucun certificat assigné" + }, + "certificate.none.subtitle.for-http": { + "defaultMessage": "Cet hôte n'utilisera pas le HTTPS" + }, + "certificate.none.title": { + "defaultMessage": "Aucun" + }, + "certificate.not-in-use": { + "defaultMessage": "Non utilisé" + }, + "certificate.renew": { + "defaultMessage": "Renouveler Certificat" + }, + "certificates": { + "defaultMessage": "Certificats" + }, + "certificates.custom": { + "defaultMessage": "Certificat personnalisé" + }, + "certificates.custom.warning": { + "defaultMessage": "Les fichiers de clé protégés par une passphrase ne sont pas acceptés." + }, + "certificates.dns.credentials": { + "defaultMessage": "Contenu du fichier d'identifiants" + }, + "certificates.dns.credentials-note": { + "defaultMessage": "Ce plugin nécessite un fichier de configuration contenant un jeton d'API ou d'autres informations d'identification pour votre fournisseur." + }, + "certificates.dns.credentials-warning": { + "defaultMessage": "Ces données seront stockées en clair dans la base de données et dans un fichier !" + }, + "certificates.dns.propagation-seconds": { + "defaultMessage": "Propagation Seconds" + }, + "certificates.dns.propagation-seconds-note": { + "defaultMessage": "Laisser vide pour utiliser la valeur par défaut du plugin. Nombre de secondes à attendre pour la propagation DNS." + }, + "certificates.dns.provider": { + "defaultMessage": "Fournisseur DNS" + }, + "certificates.dns.warning": { + "defaultMessage": "Cette section requiert une certaine connaissance de Certbot et de ses plugins DNS. Veuillez consulter la documentation des plugins correspondants." + }, + "certificates.http.reachability-404": { + "defaultMessage": "Un serveur a été trouvé sur ce domaine, mais il ne semble pas s'agir de Nginx Proxy Manager. Veuillez vérifier que votre domaine pointe bien vers l'adresse IP où votre instance NPM est exécutée." + }, + "certificates.http.reachability-failed-to-check": { + "defaultMessage": "Impossible de vérifier l'accessibilité en raison d'une erreur de communication avec site24x7.com." + }, + "certificates.http.reachability-not-resolved": { + "defaultMessage": "Aucun serveur n'est disponible pour ce domaine. Veuillez vérifier que votre domaine existe et pointe vers l'adresse IP où votre instance NPM est exécutée. Si nécessaire, le port 80 est ouvert dans votre routeur." + }, + "certificates.http.reachability-ok": { + "defaultMessage": "Votre serveur est accessible et la création de certificats devrait être possible." + }, + "certificates.http.reachability-other": { + "defaultMessage": "Un serveur a été trouvé sur ce domaine, mais il a renvoyé un code d'état inattendu {code}. S'agit-il du serveur NPM ? Veuillez vérifier que votre domaine pointe bien vers l'adresse IP où votre instance NPM est exécutée." + }, + "certificates.http.reachability-wrong-data": { + "defaultMessage": "Un serveur a été trouvé sur ce domaine, mais il a renvoyé des données inattendues. S'agit-il du serveur NPM ? Veuillez vérifier que votre domaine pointe bien vers l'adresse IP où votre instance NPM est exécutée." + }, + "certificates.http.test-results": { + "defaultMessage": "Résultats du test" + }, + "certificates.http.warning": { + "defaultMessage": "Ces domaines doivent déjà être configurés pour pointer vers cette installation." + }, + "certificates.request.subtitle": { + "defaultMessage": "avec Let's Encrypt" + }, + "certificates.request.title": { + "defaultMessage": "Demander un nouveau certificat" + }, + "column.access": { + "defaultMessage": "Accès" + }, + "column.authorization": { + "defaultMessage": "Autorisation" + }, + "column.authorizations": { + "defaultMessage": "Autorisations" + }, + "column.custom-locations": { + "defaultMessage": "Emplacement personnalisé" + }, + "column.destination": { + "defaultMessage": "Destination" + }, + "column.details": { + "defaultMessage": "Détails" + }, + "column.email": { + "defaultMessage": "eMail" + }, + "column.event": { + "defaultMessage": "Évènement" + }, + "column.expires": { + "defaultMessage": "Expire" + }, + "column.http-code": { + "defaultMessage": "Code HTTP" + }, + "column.incoming-port": { + "defaultMessage": "Port entrant" + }, + "column.name": { + "defaultMessage": "Nom" + }, + "column.protocol": { + "defaultMessage": "Protocole" + }, + "column.provider": { + "defaultMessage": "Fournisseur" + }, + "column.roles": { + "defaultMessage": "Rôles" + }, + "column.rules": { + "defaultMessage": "Règles" + }, + "column.satisfy": { + "defaultMessage": "Valide" + }, + "column.satisfy-all": { + "defaultMessage": "All" + }, + "column.satisfy-any": { + "defaultMessage": "Any" + }, + "column.scheme": { + "defaultMessage": "Schéma" + }, + "column.source": { + "defaultMessage": "Source" + }, + "column.ssl": { + "defaultMessage": "SSL" + }, + "column.status": { + "defaultMessage": "Statut" + }, + "created-on": { + "defaultMessage": "Créé : {date}" + }, + "dashboard": { + "defaultMessage": "Tableau de bord" + }, + "dead-host": { + "defaultMessage": "Hôte 404" + }, + "dead-hosts": { + "defaultMessage": "Hôtes 404" + }, + "dead-hosts.count": { + "defaultMessage": "{count} {count, plural, one {Hôte 404} other {Hôtes 404}}" + }, + "disabled": { + "defaultMessage": "Désactivé" + }, + "domain-names": { + "defaultMessage": "Noms de domaine" + }, + "domain-names.max": { + "defaultMessage": "{count} noms de domaine au maximum" + }, + "domain-names.placeholder": { + "defaultMessage": "Commencez à écrire pour ajouter un domaine…" + }, + "domain-names.wildcards-not-permitted": { + "defaultMessage": "Les Wildcards ne sont pas permises dans ce cas" + }, + "domain-names.wildcards-not-supported": { + "defaultMessage": "Les Wildcards ne sont pas prises en charge par cette autorité de certification." + }, + "domains.force-ssl": { + "defaultMessage": "Forcer SSL" + }, + "domains.hsts-enabled": { + "defaultMessage": "HSTS activé" + }, + "domains.hsts-subdomains": { + "defaultMessage": "Sous-domaines HSTS" + }, + "domains.http2-support": { + "defaultMessage": "Prise en charge de HTTP/2" + }, + "domains.use-dns": { + "defaultMessage": "Utiliser le challenge DNS" + }, + "email-address": { + "defaultMessage": "Adresse eMail" + }, + "empty-search": { + "defaultMessage": "Aucun résultat trouvé" + }, + "empty-subtitle": { + "defaultMessage": "Pourquoi n'en créez-vous pas un ?" + }, + "enabled": { + "defaultMessage": "Activé" + }, + "error.access.at-least-one": { + "defaultMessage": "Une autorisation ou une règle d'accès est requise." + }, + "error.access.duplicate-usernames": { + "defaultMessage": "Les noms d'utilisateurs autorisés doivent être uniques" + }, + "error.invalid-auth": { + "defaultMessage": "Adresse eMail ou mot de passe invalide" + }, + "error.invalid-domain": { + "defaultMessage": "Domaine invalide : {domain}" + }, + "error.invalid-email": { + "defaultMessage": "Adresse eMail invalide" + }, + "error.max-character-length": { + "defaultMessage": "La longueur maximale est {max} caractère{max, plural, one {} other {s}}" + }, + "error.max-domains": { + "defaultMessage": "Trop de domaines, le maximum est {max}" + }, + "error.maximum": { + "defaultMessage": "Le maximum est {max}" + }, + "error.min-character-length": { + "defaultMessage": "La longueur minimale est {min} caractère{min, plural, one {} other {s}}" + }, + "error.minimum": { + "defaultMessage": "Le minimum est {min}" + }, + "error.passwords-must-match": { + "defaultMessage": "Les mots de passe doivent correspondre" + }, + "error.required": { + "defaultMessage": "Ceci est obligatoire" + }, + "expires.on": { + "defaultMessage": "Expire : {date}" + }, + "footer.github-fork": { + "defaultMessage": "Forkez-moi sur Github" + }, + "host.flags.block-exploits": { + "defaultMessage": "Bloquer les exploits courants" + }, + "host.flags.cache-assets": { + "defaultMessage": "Ressources du cache" + }, + "host.flags.preserve-path": { + "defaultMessage": "Préserver le chemin" + }, + "host.flags.protocols": { + "defaultMessage": "Protocoles" + }, + "host.flags.websockets-upgrade": { + "defaultMessage": "Prise en charge de Websockets" + }, + "host.forward-port": { + "defaultMessage": "Port de redirection" + }, + "host.forward-scheme": { + "defaultMessage": "Schéma" + }, + "hosts": { + "defaultMessage": "Hôtes" + }, + "http-only": { + "defaultMessage": "HTTP uniquement" + }, + "lets-encrypt": { + "defaultMessage": "Let's Encrypt" + }, + "lets-encrypt-via-dns": { + "defaultMessage": "Let's Encrypt via DNS" + }, + "lets-encrypt-via-http": { + "defaultMessage": "Let's Encrypt via HTTP" + }, + "loading": { + "defaultMessage": "Chargement…" + }, + "login.title": { + "defaultMessage": "Connectez-vous à votre compte" + }, + "nginx-config.label": { + "defaultMessage": "Configuration Nginx personnalisée" + }, + "nginx-config.placeholder": { + "defaultMessage": "# Mettez ici votre configuration Nginx personnalisé à vos risques et périls !" + }, + "no-permission-error": { + "defaultMessage": "Vous n'avez pas la permission de voir ce contenu." + }, + "notfound.action": { + "defaultMessage": "Ramenez-moi à l'accueil" + }, + "notfound.content": { + "defaultMessage": "Nous sommes désolés, mais la page que vous cherchez est introuvable" + }, + "notfound.title": { + "defaultMessage": "Oops… Vous avez découvert une page d'erreur" + }, + "notification.error": { + "defaultMessage": "Erreur" + }, + "notification.object-deleted": { + "defaultMessage": "{object} a été supprimé" + }, + "notification.object-disabled": { + "defaultMessage": "{object} a été désactivé" + }, + "notification.object-enabled": { + "defaultMessage": "{object} a été activé" + }, + "notification.object-renewed": { + "defaultMessage": "{object} a été renouvelé" + }, + "notification.object-saved": { + "defaultMessage": "{object} a été enregistré" + }, + "notification.success": { + "defaultMessage": "Réussi" + }, + "object.actions-title": { + "defaultMessage": "{object} #{id}" + }, + "object.add": { + "defaultMessage": "Ajouter {object}" + }, + "object.delete": { + "defaultMessage": "Supprimer {object}" + }, + "object.delete.content": { + "defaultMessage": "Êtes-vous sûr de vouloir supprimer {object} ?" + }, + "object.edit": { + "defaultMessage": "Modifier {object}" + }, + "object.empty": { + "defaultMessage": "Il n'y a aucun {objects}" + }, + "object.event.created": { + "defaultMessage": "{object} créé" + }, + "object.event.deleted": { + "defaultMessage": "{object} supprimé" + }, + "object.event.disabled": { + "defaultMessage": "{object} désactivé" + }, + "object.event.enabled": { + "defaultMessage": "{object} activé" + }, + "object.event.renewed": { + "defaultMessage": "{object} renouvelé" + }, + "object.event.updated": { + "defaultMessage": "{object} mis à jour" + }, + "offline": { + "defaultMessage": "Hors ligne" + }, + "online": { + "defaultMessage": "En ligne" + }, + "options": { + "defaultMessage": "Options" + }, + "password": { + "defaultMessage": "Mot de passe" + }, + "password.generate": { + "defaultMessage": "Générer un mot de passe aléatoire" + }, + "password.hide": { + "defaultMessage": "Masquer le mot de passe" + }, + "password.show": { + "defaultMessage": "Afficher le mot de passe" + }, + "permissions.hidden": { + "defaultMessage": "Masquer" + }, + "permissions.manage": { + "defaultMessage": "Gérer" + }, + "permissions.view": { + "defaultMessage": "Voir uniquement" + }, + "permissions.visibility.all": { + "defaultMessage": "Tous les éléments" + }, + "permissions.visibility.title": { + "defaultMessage": "Éléments visibles" + }, + "permissions.visibility.user": { + "defaultMessage": "Éléments créés uniquement" + }, + "proxy-host": { + "defaultMessage": "Hôte proxy" + }, + "proxy-host.forward-host": { + "defaultMessage": "Nom d'hôte de redirection / IP" + }, + "proxy-hosts": { + "defaultMessage": "Hôtes proxy" + }, + "proxy-hosts.count": { + "defaultMessage": "{count} {count, plural, one {Hôte proxy} other {Hôtes proxy}}" + }, + "public": { + "defaultMessage": "Publique" + }, + "redirection-host": { + "defaultMessage": "Hôte de redirection" + }, + "redirection-host.forward-domain": { + "defaultMessage": "Domaine de redirection" + }, + "redirection-host.forward-http-code": { + "defaultMessage": "Code HTTP" + }, + "redirection-hosts": { + "defaultMessage": "Hôtes de redirection" + }, + "redirection-hosts.count": { + "defaultMessage": "{count} {count, plural, one {Hôte de redirection} other {Hôtes de redirection}}" + }, + "role.admin": { + "defaultMessage": "Administrateur" + }, + "role.standard-user": { + "defaultMessage": "Utilisateur standard" + }, + "save": { + "defaultMessage": "Enregistrer" + }, + "setting": { + "defaultMessage": "Paramètre" + }, + "settings": { + "defaultMessage": "Paramètres" + }, + "settings.default-site": { + "defaultMessage": "Site par défaut" + }, + "settings.default-site.404": { + "defaultMessage": "Page 404" + }, + "settings.default-site.444": { + "defaultMessage": "Aucune réponse (444)" + }, + "settings.default-site.congratulations": { + "defaultMessage": "Page de félicitations" + }, + "settings.default-site.description": { + "defaultMessage": "ce qu'il faut afficher lorsqu'un hôte inconnu est détecté par Nginx" + }, + "settings.default-site.html": { + "defaultMessage": "HTML personnalisé" + }, + "settings.default-site.html.placeholder": { + "defaultMessage": "" + }, + "settings.default-site.redirect": { + "defaultMessage": "Redirection" + }, + "setup.preamble": { + "defaultMessage": "Commencez par créer votre compte administrateur." + }, + "setup.title": { + "defaultMessage": "Bienvenue !" + }, + "sign-in": { + "defaultMessage": "Se connecter" + }, + "ssl-certificate": { + "defaultMessage": "Certificat SSL" + }, + "stream": { + "defaultMessage": "Stream" + }, + "stream.forward-host": { + "defaultMessage": "Hôte destinataire" + }, + "stream.incoming-port": { + "defaultMessage": "Port d'entrée" + }, + "streams": { + "defaultMessage": "Streams" + }, + "streams.count": { + "defaultMessage": "{count} {count, plural, one {Stream} other {Streams}}" + }, + "streams.tcp": { + "defaultMessage": "TCP" + }, + "streams.udp": { + "defaultMessage": "UDP" + }, + "test": { + "defaultMessage": "Test" + }, + "update-available": { + "defaultMessage": "Mise à jour disponible : {latestVersion}" + }, + "user": { + "defaultMessage": "Utilisateur" + }, + "user.change-password": { + "defaultMessage": "Modifier le mot de passe" + }, + "user.confirm-password": { + "defaultMessage": "Confirmer le mot de passe" + }, + "user.current-password": { + "defaultMessage": "Mot de passe actuel" + }, + "user.edit-profile": { + "defaultMessage": "Modifier le profil" + }, + "user.full-name": { + "defaultMessage": "Nom complet" + }, + "user.login-as": { + "defaultMessage": "Se connecter en tant que {name}" + }, + "user.logout": { + "defaultMessage": "Déconnexion" + }, + "user.new-password": { + "defaultMessage": "Nouveau mot de passe" + }, + "user.nickname": { + "defaultMessage": "Pseudonyme" + }, + "user.set-password": { + "defaultMessage": "Définir le mot de passe" + }, + "user.set-permissions": { + "defaultMessage": "Définir les autorisations pour {name}" + }, + "user.switch-dark": { + "defaultMessage": "Passer au mode Sombre" + }, + "user.switch-light": { + "defaultMessage": "Passer au mode Lumineux" + }, + "username": { + "defaultMessage": "Nom d'utilisateur" + }, + "users": { + "defaultMessage": "Utilisateurs" + } +} diff --git a/frontend/src/locale/src/lang-list.json b/frontend/src/locale/src/lang-list.json index d4017f13..544dc75a 100644 --- a/frontend/src/locale/src/lang-list.json +++ b/frontend/src/locale/src/lang-list.json @@ -11,6 +11,9 @@ "locale-de-DE": { "defaultMessage": "German" }, + "locale-fr-FR": { + "defaultMessage": "Français" + }, "locale-id-ID": { "defaultMessage": "Bahasa Indonesia" }, From afb196e5b6b8e1fb99f3878accf6ae6c2f3dc995 Mon Sep 17 00:00:00 2001 From: blinkerfluessigkeit <93945677+blinkerfluessigkeit@users.noreply.github.com> Date: Wed, 14 Jan 2026 12:38:52 +0100 Subject: [PATCH 03/77] Update German translations --- frontend/src/locale/src/de.json | 36 ++++++++++++++++----------------- 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/frontend/src/locale/src/de.json b/frontend/src/locale/src/de.json index ae97a29b..f654e108 100644 --- a/frontend/src/locale/src/de.json +++ b/frontend/src/locale/src/de.json @@ -30,13 +30,13 @@ "defaultMessage": "{users} {users, plural, one {User} other {Users}}, {rules} {rules, plural, one {Regel} other {Regeln}} - Erstellt: {date}" }, "access-lists": { - "defaultMessage": "Zugrifflisten" + "defaultMessage": "Zugriffslisten" }, "action.add": { "defaultMessage": "Hinzufügen" }, "action.add-location": { - "defaultMessage": "Pfad Hinzufügen" + "defaultMessage": "Pfad hinzufügen" }, "action.close": { "defaultMessage": "Schließen" @@ -60,13 +60,13 @@ "defaultMessage": "Berechtigungen" }, "action.renew": { - "defaultMessage": "Erneuert" + "defaultMessage": "Erneuern" }, "action.view-details": { - "defaultMessage": "Details" + "defaultMessage": "Details anzeigen" }, "auditlogs": { - "defaultMessage": "Protokoll" + "defaultMessage": "Protokolle" }, "cancel": { "defaultMessage": "Abbrechen" @@ -81,7 +81,7 @@ "defaultMessage": "Privater Schlüssel" }, "certificate.custom-intermediate": { - "defaultMessage": "Zwischen Zertifikat" + "defaultMessage": "Zwischenzertifikat" }, "certificate.in-use": { "defaultMessage": "In Benutzung" @@ -120,7 +120,7 @@ "defaultMessage": "Diese Daten werden als Klartext in der Datenbank und in einer Datei gespeichert!" }, "certificates.dns.propagation-seconds": { - "defaultMessage": "Wartzeit in Sekunden" + "defaultMessage": "Wartezeit in Sekunden" }, "certificates.dns.propagation-seconds-note": { "defaultMessage": "Leer lassen um die Standardwartezeit des Plugins zu nutzen" @@ -150,7 +150,7 @@ "defaultMessage": "Unter dieser Domain wurde ein Server gefunden, der jedoch unerwartete Daten zurückgegeben hat. Handelt es sich um den NPM-Server? Bitte stellen Sie sicher, dass Ihre Domain auf die IP-Adresse verweist, unter der Ihre NPM-Instanz ausgeführt wird." }, "certificates.http.test-results": { - "defaultMessage": "Test Ergeniss" + "defaultMessage": "Testergebnisse" }, "certificates.http.warning": { "defaultMessage": "Diese Domänen müssen bereits so konfiguriert sein, dass sie auf diese Installation verweisen." @@ -183,7 +183,7 @@ "defaultMessage": "Genehmigungen" }, "column.custom-locations": { - "defaultMessage": "Benutzerdefinierte Pfad" + "defaultMessage": "Benutzerdefinierte Pfade" }, "column.destination": { "defaultMessage": "Ziel" @@ -192,7 +192,7 @@ "defaultMessage": "Details" }, "column.email": { - "defaultMessage": "Email" + "defaultMessage": "E-Mail" }, "column.event": { "defaultMessage": "Ereignis" @@ -291,7 +291,7 @@ "defaultMessage": "Nutze DNS Challenge" }, "email-address": { - "defaultMessage": "Email Addresse" + "defaultMessage": "E-Mail-Adresse" }, "empty-search": { "defaultMessage": "Keine Ergebnisse gefunden" @@ -384,7 +384,7 @@ "defaultMessage": "Laden…" }, "login.title": { - "defaultMessage": "Account Login" + "defaultMessage": "Anmelden" }, "nginx-config.label": { "defaultMessage": "Benutzerdefinierte Nginx Konfiguration" @@ -399,7 +399,7 @@ "defaultMessage": "Take me home" }, "notfound.content": { - "defaultMessage": "We are sorry but the page you are looking for was not found" + "defaultMessage": "Es tut uns leid, aber die gesuchte Seite wurde nicht gefunden" }, "notfound.title": { "defaultMessage": "Oops… You just found an error page" @@ -495,7 +495,7 @@ "defaultMessage": "Alle Elemente" }, "permissions.visibility.title": { - "defaultMessage": "Objekt Sichtbarkeit" + "defaultMessage": "Objektsichtbarkeit" }, "permissions.visibility.user": { "defaultMessage": "Nur erstellte Elemente" @@ -534,7 +534,7 @@ "defaultMessage": "Administrator" }, "role.standard-user": { - "defaultMessage": "Standard User" + "defaultMessage": "Standardbenutzer" }, "save": { "defaultMessage": "Speichern" @@ -546,7 +546,7 @@ "defaultMessage": "Einstellungen" }, "settings.default-site": { - "defaultMessage": "Standard Seite" + "defaultMessage": "Standardseite" }, "settings.default-site.404": { "defaultMessage": "404 Page" @@ -579,7 +579,7 @@ "defaultMessage": "Login" }, "ssl-certificate": { - "defaultMessage": "SSL Zertifikate" + "defaultMessage": "SSL-Zertifikate" }, "stream": { "defaultMessage": "Stream" @@ -645,7 +645,7 @@ "defaultMessage": "Zum Dark Mode wechseln" }, "user.switch-light": { - "defaultMessage": "Zum Light Mode wechslen" + "defaultMessage": "Zum Light Mode wechseln" }, "username": { "defaultMessage": "Benutzername" From 41856655703d5c4ecc2784bb445634a949bf1530 Mon Sep 17 00:00:00 2001 From: Orhan Polat Date: Fri, 12 Dec 2025 19:39:49 +0300 Subject: [PATCH 04/77] Add Turkish locale and help documentation --- frontend/check-locales.cjs | 1 + frontend/src/locale/IntlProvider.tsx | 4 + frontend/src/locale/scripts/locale-sort.cjs | 69 ++ frontend/src/locale/src/HelpDoc/index.ts | 5 + .../src/locale/src/HelpDoc/tr/AccessLists.md | 8 + .../src/locale/src/HelpDoc/tr/Certificates.md | 29 + .../src/locale/src/HelpDoc/tr/DeadHosts.md | 10 + .../src/locale/src/HelpDoc/tr/ProxyHosts.md | 8 + .../locale/src/HelpDoc/tr/RedirectionHosts.md | 8 + frontend/src/locale/src/HelpDoc/tr/Streams.md | 7 + frontend/src/locale/src/HelpDoc/tr/index.ts | 7 + frontend/src/locale/src/lang-list.json | 42 ++ frontend/src/locale/src/tr.json | 683 ++++++++++++++++++ 13 files changed, 881 insertions(+) create mode 100644 frontend/src/locale/scripts/locale-sort.cjs create mode 100644 frontend/src/locale/src/HelpDoc/tr/AccessLists.md create mode 100644 frontend/src/locale/src/HelpDoc/tr/Certificates.md create mode 100644 frontend/src/locale/src/HelpDoc/tr/DeadHosts.md create mode 100644 frontend/src/locale/src/HelpDoc/tr/ProxyHosts.md create mode 100644 frontend/src/locale/src/HelpDoc/tr/RedirectionHosts.md create mode 100644 frontend/src/locale/src/HelpDoc/tr/Streams.md create mode 100644 frontend/src/locale/src/HelpDoc/tr/index.ts create mode 100644 frontend/src/locale/src/tr.json diff --git a/frontend/check-locales.cjs b/frontend/check-locales.cjs index 9e030f0a..e1fc8a44 100755 --- a/frontend/check-locales.cjs +++ b/frontend/check-locales.cjs @@ -22,6 +22,7 @@ const allLocales = [ ["ko", "ko-KR"], ["bg", "bg-BG"], ["id", "id-ID"], + ["tr", "tr-TR"], ]; const ignoreUnused = [ diff --git a/frontend/src/locale/IntlProvider.tsx b/frontend/src/locale/IntlProvider.tsx index ea45d6e8..d6cd322c 100755 --- a/frontend/src/locale/IntlProvider.tsx +++ b/frontend/src/locale/IntlProvider.tsx @@ -16,6 +16,9 @@ import langRu from "./lang/ru.json"; import langSk from "./lang/sk.json"; import langVi from "./lang/vi.json"; import langZh from "./lang/zh.json"; +import langKo from "./lang/ko.json"; +import langBg from "./lang/bg.json"; +import langTr from "./lang/tr.json"; // first item of each array should be the language code, // not the country code @@ -37,6 +40,7 @@ const localeOptions = [ ["ko", "ko-KR", langKo], ["bg", "bg-BG", langBg], ["id", "id-ID", langId], + ["tr", "tr-TR", langTr], ]; const loadMessages = (locale?: string): typeof langList & typeof langEn => { diff --git a/frontend/src/locale/scripts/locale-sort.cjs b/frontend/src/locale/scripts/locale-sort.cjs new file mode 100644 index 00000000..f7f72cdc --- /dev/null +++ b/frontend/src/locale/scripts/locale-sort.cjs @@ -0,0 +1,69 @@ +#!/usr/bin/env node + +const fs = require("fs"); +const path = require("path"); + +const DIR = path.resolve(__dirname, "../src"); + +// Function to sort object keys recursively +function sortKeys(obj) { + if (obj === null || typeof obj !== "object" || obj instanceof Array) { + return obj; + } + + const sorted = {}; + const keys = Object.keys(obj).sort(); + for (const key of keys) { + const value = obj[key]; + if (typeof value === "object" && value !== null && !(value instanceof Array)) { + sorted[key] = sortKeys(value); + } else { + sorted[key] = value; + } + } + return sorted; +} + +// Get all JSON files in the directory +const files = fs.readdirSync(DIR).filter((file) => { + return file.endsWith(".json") && file !== "lang-list.json"; +}); + +files.forEach((file) => { + const filePath = path.join(DIR, file); + const stats = fs.statSync(filePath); + + if (!stats.isFile()) { + return; + } + + if (stats.size === 0) { + console.log(`Skipping empty file ${file}`); + return; + } + + try { + // Read original content + const originalContent = fs.readFileSync(filePath, "utf8"); + const originalJson = JSON.parse(originalContent); + + // Sort keys + const sortedJson = sortKeys(originalJson); + + // Convert back to string with tabs + const sortedContent = JSON.stringify(sortedJson, null, "\t") + "\n"; + + // Compare (normalize whitespace) + if (originalContent.trim() === sortedContent.trim()) { + console.log(`${file} is already sorted`); + return; + } + + // Write sorted content + fs.writeFileSync(filePath, sortedContent, "utf8"); + console.log(`Sorted ${file}`); + } catch (error) { + console.error(`Error processing ${file}:`, error.message); + } +}); + diff --git a/frontend/src/locale/src/HelpDoc/index.ts b/frontend/src/locale/src/HelpDoc/index.ts index d7ff4abd..8f0678cf 100644 --- a/frontend/src/locale/src/HelpDoc/index.ts +++ b/frontend/src/locale/src/HelpDoc/index.ts @@ -16,6 +16,11 @@ import * as vi from "./vi/index"; import * as zh from "./zh/index"; const items: any = { en, de, es, ja, sk, zh, pl, ru, it, vi, nl, bg, ko, ga, id, fr }; +import * as ko from "./ko/index"; +import * as bg from "./bg/index"; +import * as tr from "./tr/index"; + +const items: any = { en, de, ja, sk, zh, pl, ru, it, vi, nl, bg, ko, tr }; const fallbackLang = "en"; diff --git a/frontend/src/locale/src/HelpDoc/tr/AccessLists.md b/frontend/src/locale/src/HelpDoc/tr/AccessLists.md new file mode 100644 index 00000000..7c02322e --- /dev/null +++ b/frontend/src/locale/src/HelpDoc/tr/AccessLists.md @@ -0,0 +1,8 @@ +## Erişim Listesi Nedir? + +Erişim Listeleri, Temel HTTP Kimlik Doğrulama aracılığıyla Proxy Host'lar için belirli istemci IP adreslerinin kara listesi veya beyaz listesini ve kimlik doğrulamasını sağlar. + +Tek bir Erişim Listesi için birden fazla istemci kuralı, kullanıcı adı ve şifre yapılandırabilir ve bunu bir veya daha fazla _Proxy Host_'a uygulayabilirsiniz. + +Bu, yerleşik kimlik doğrulama mekanizmaları olmayan veya bilinmeyen istemcilerden korunmak istediğinizde iletilen web hizmetleri için en kullanışlıdır. + diff --git a/frontend/src/locale/src/HelpDoc/tr/Certificates.md b/frontend/src/locale/src/HelpDoc/tr/Certificates.md new file mode 100644 index 00000000..8817d98b --- /dev/null +++ b/frontend/src/locale/src/HelpDoc/tr/Certificates.md @@ -0,0 +1,29 @@ +## Sertifika Yardımı + +### HTTP Sertifikası + +Bir HTTP doğrulanmış sertifika, Let's Encrypt sunucularının +alan adlarınıza HTTP (HTTPS değil!) üzerinden ulaşmaya çalışacağı ve başarılı olursa, +sertifikanızı verecekleri anlamına gelir. + +Bu yöntem için, alan adlarınız için HTTP ile erişilebilir ve bu Nginx kurulumuna işaret eden bir _Proxy Host_ oluşturulmuş olmalıdır. Bir sertifika +verildikten sonra, _Proxy Host_'u HTTPS +bağlantıları için de bu sertifikayı kullanacak şekilde değiştirebilirsiniz. Ancak, sertifikanın yenilenmesi için _Proxy Host_'un hala HTTP erişimi için yapılandırılmış olması gerekecektir. + +Bu işlem joker karakter alan adlarını _desteklemez_. + +### DNS Sertifikası + +Bir DNS doğrulanmış sertifika, bir DNS Sağlayıcı eklentisi kullanmanızı gerektirir. Bu DNS +Sağlayıcı, alan adınızda geçici kayıtlar oluşturmak için kullanılacak ve ardından Let's +Encrypt bu kayıtları sorgulayarak sahibi olduğunuzdan emin olacak ve başarılı olursa, +sertifikanızı verecektir. + +Bu tür bir sertifika talep etmeden önce bir _Proxy Host_ oluşturulmasına gerek yoktur. Ayrıca _Proxy Host_'unuzun HTTP erişimi için yapılandırılmasına da gerek yoktur. + +Bu işlem joker karakter alan adlarını _destekler_. + +### Özel Sertifika + +Kendi Sertifika Otoriteniz tarafından sağlanan kendi SSL Sertifikanızı yüklemek için bu seçeneği kullanın. + diff --git a/frontend/src/locale/src/HelpDoc/tr/DeadHosts.md b/frontend/src/locale/src/HelpDoc/tr/DeadHosts.md new file mode 100644 index 00000000..6d8d4334 --- /dev/null +++ b/frontend/src/locale/src/HelpDoc/tr/DeadHosts.md @@ -0,0 +1,10 @@ +## 404 Host Nedir? + +404 Host, basitçe bir 404 sayfası gösteren bir host kurulumudur. + +Bu, alan adınız arama motorlarında listelendiğinde ve daha güzel bir hata sayfası sağlamak veya özellikle arama dizinleyicilerine +alan adı sayfalarının artık mevcut olmadığını söylemek istediğinizde yararlı olabilir. + +Bu host'un bir başka faydası da, ona yapılan isteklerin loglarını takip etmek ve +referansları görüntülemektir. + diff --git a/frontend/src/locale/src/HelpDoc/tr/ProxyHosts.md b/frontend/src/locale/src/HelpDoc/tr/ProxyHosts.md new file mode 100644 index 00000000..224a76a2 --- /dev/null +++ b/frontend/src/locale/src/HelpDoc/tr/ProxyHosts.md @@ -0,0 +1,8 @@ +## Proxy Host Nedir? + +Proxy Host, iletilmek istediğiniz bir web hizmeti için gelen uç noktadır. + +SSL desteği yerleşik olmayan hizmetiniz için isteğe bağlı SSL sonlandırma sağlar. + +Proxy Host'lar, Nginx Proxy Manager'ın en yaygın kullanımıdır. + diff --git a/frontend/src/locale/src/HelpDoc/tr/RedirectionHosts.md b/frontend/src/locale/src/HelpDoc/tr/RedirectionHosts.md new file mode 100644 index 00000000..01e3bf2c --- /dev/null +++ b/frontend/src/locale/src/HelpDoc/tr/RedirectionHosts.md @@ -0,0 +1,8 @@ +## Yönlendirme Host'u Nedir? + +Yönlendirme Host'u, gelen alan adından gelen istekleri yönlendirir ve +görüntüleyiciyi başka bir alan adına yönlendirir. + +Bu tür bir host kullanmanın en yaygın nedeni, web sitenizin alan adı değiştiğinde +ancak hala eski alan adına işaret eden arama motoru veya referans bağlantılarınız olduğunda ortaya çıkar. + diff --git a/frontend/src/locale/src/HelpDoc/tr/Streams.md b/frontend/src/locale/src/HelpDoc/tr/Streams.md new file mode 100644 index 00000000..696c27b5 --- /dev/null +++ b/frontend/src/locale/src/HelpDoc/tr/Streams.md @@ -0,0 +1,7 @@ +## Akış Nedir? + +Nginx için nispeten yeni bir özellik olan Akış, TCP/UDP +trafiğini doğrudan ağdaki başka bir bilgisayara iletmek için hizmet edecektir. + +Oyun sunucuları, FTP veya SSH sunucuları çalıştırıyorsanız bu işinize yarayabilir. + diff --git a/frontend/src/locale/src/HelpDoc/tr/index.ts b/frontend/src/locale/src/HelpDoc/tr/index.ts new file mode 100644 index 00000000..33e015cc --- /dev/null +++ b/frontend/src/locale/src/HelpDoc/tr/index.ts @@ -0,0 +1,7 @@ +export * as AccessLists from "./AccessLists.md"; +export * as Certificates from "./Certificates.md"; +export * as DeadHosts from "./DeadHosts.md"; +export * as ProxyHosts from "./ProxyHosts.md"; +export * as RedirectionHosts from "./RedirectionHosts.md"; +export * as Streams from "./Streams.md"; + diff --git a/frontend/src/locale/src/lang-list.json b/frontend/src/locale/src/lang-list.json index 544dc75a..0aa89638 100644 --- a/frontend/src/locale/src/lang-list.json +++ b/frontend/src/locale/src/lang-list.json @@ -47,4 +47,46 @@ "locale-bg-BG": { "defaultMessage": "Български" } + "locale-en-US": { + "defaultMessage": "English" + }, + "locale-es-ES": { + "defaultMessage": "Español" + }, + "locale-de-DE": { + "defaultMessage": "German" + }, + "locale-ja-JP": { + "defaultMessage": "日本語" + }, + "locale-ru-RU": { + "defaultMessage": "Русский" + }, + "locale-sk-SK": { + "defaultMessage": "Slovenčina" + }, + "locale-zh-CN": { + "defaultMessage": "中文" + }, + "locale-pl-PL": { + "defaultMessage": "Polski" + }, + "locale-it-IT": { + "defaultMessage": "Italiano" + }, + "locale-vi-VN": { + "defaultMessage": "Tiếng Việt" + }, + "locale-nl-NL": { + "defaultMessage": "Nederlands" + }, + "locale-ko-KR": { + "defaultMessage": "한국어" + }, + "locale-bg-BG": { + "defaultMessage": "Български" + }, + "locale-tr-TR": { + "defaultMessage": "Türkçe" + } } diff --git a/frontend/src/locale/src/tr.json b/frontend/src/locale/src/tr.json new file mode 100644 index 00000000..972fa895 --- /dev/null +++ b/frontend/src/locale/src/tr.json @@ -0,0 +1,683 @@ +{ + "access-list": { + "defaultMessage": "Erişim Listesi" + }, + "access-list.access-count": { + "defaultMessage": "{count} {count, plural, one {Kural} other {Kural}}" + }, + "access-list.auth-count": { + "defaultMessage": "{count} {count, plural, one {Kullanıcı} other {Kullanıcı}}" + }, + "access-list.help-rules-last": { + "defaultMessage": "En az 1 kural mevcut olduğunda, bu tümünü reddet kuralı en son eklenir" + }, + "access-list.help.rules-order": { + "defaultMessage": "İzin ver ve reddet direktiflerinin tanımlandıkları sırayla uygulanacağını unutmayın." + }, + "access-list.pass-auth": { + "defaultMessage": "Kimlik Doğrulamayı Yukarı Akışa İlet" + }, + "access-list.public": { + "defaultMessage": "Herkese Açık" + }, + "access-list.public.subtitle": { + "defaultMessage": "Temel kimlik doğrulama gerekmez" + }, + "access-list.rule-source.placeholder": { + "defaultMessage": "192.168.1.100 veya 192.168.1.0/24 veya 2001:0db8::/32" + }, + "access-list.satisfy-any": { + "defaultMessage": "Herhangi Birini Karşıla" + }, + "access-list.subtitle": { + "defaultMessage": "{users} {users, plural, one {Kullanıcı} other {Kullanıcı}}, {rules} {rules, plural, one {Kural} other {Kural}} - Oluşturuldu: {date}" + }, + "access-lists": { + "defaultMessage": "Erişim Listeleri" + }, + "action.add": { + "defaultMessage": "Ekle" + }, + "action.add-location": { + "defaultMessage": "Konum Ekle" + }, + "action.allow": { + "defaultMessage": "İzin Ver" + }, + "action.close": { + "defaultMessage": "Kapat" + }, + "action.delete": { + "defaultMessage": "Sil" + }, + "action.deny": { + "defaultMessage": "Reddet" + }, + "action.disable": { + "defaultMessage": "Devre Dışı Bırak" + }, + "action.download": { + "defaultMessage": "İndir" + }, + "action.edit": { + "defaultMessage": "Düzenle" + }, + "action.enable": { + "defaultMessage": "Etkinleştir" + }, + "action.permissions": { + "defaultMessage": "İzinler" + }, + "action.renew": { + "defaultMessage": "Yenile" + }, + "action.view-details": { + "defaultMessage": "Detayları Görüntüle" + }, + "auditlogs": { + "defaultMessage": "Denetim Kayıtları" + }, + "auto": { + "defaultMessage": "Otomatik" + }, + "cancel": { + "defaultMessage": "İptal" + }, + "certificate": { + "defaultMessage": "Sertifika" + }, + "certificate.custom-certificate": { + "defaultMessage": "Sertifika" + }, + "certificate.custom-certificate-key": { + "defaultMessage": "Sertifika Anahtarı" + }, + "certificate.custom-intermediate": { + "defaultMessage": "Ara Sertifika" + }, + "certificate.in-use": { + "defaultMessage": "Kullanımda" + }, + "certificate.none.subtitle": { + "defaultMessage": "Sertifika atanmamış" + }, + "certificate.none.subtitle.for-http": { + "defaultMessage": "Bu host HTTPS kullanmayacak" + }, + "certificate.none.title": { + "defaultMessage": "Yok" + }, + "certificate.not-in-use": { + "defaultMessage": "Kullanılmıyor" + }, + "certificate.renew": { + "defaultMessage": "Sertifikayı Yenile" + }, + "certificates": { + "defaultMessage": "Sertifikalar" + }, + "certificates.custom": { + "defaultMessage": "Özel Sertifika" + }, + "certificates.custom.warning": { + "defaultMessage": "Parola ile korumalı anahtar dosyaları desteklenmiyor." + }, + "certificates.dns.credentials": { + "defaultMessage": "Kimlik Bilgileri Dosya İçeriği" + }, + "certificates.dns.credentials-note": { + "defaultMessage": "Bu eklenti, sağlayıcınız için bir API token'ı veya diğer kimlik bilgilerini içeren bir yapılandırma dosyası gerektirir" + }, + "certificates.dns.credentials-warning": { + "defaultMessage": "Bu veriler veritabanında ve bir dosyada düz metin olarak saklanacak!" + }, + "certificates.dns.propagation-seconds": { + "defaultMessage": "Yayılma Saniyesi" + }, + "certificates.dns.propagation-seconds-note": { + "defaultMessage": "Eklentinin varsayılan değerini kullanmak için boş bırakın. DNS yayılması için beklenilecek saniye sayısı." + }, + "certificates.dns.provider": { + "defaultMessage": "DNS Sağlayıcı" + }, + "certificates.dns.provider.placeholder": { + "defaultMessage": "Bir Sağlayıcı Seçin..." + }, + "certificates.dns.warning": { + "defaultMessage": "Bu bölüm Certbot ve DNS eklentileri hakkında bazı bilgiler gerektirir. Lütfen ilgili eklenti dokümantasyonuna bakın." + }, + "certificates.http.reachability-404": { + "defaultMessage": "Bu alan adında bir sunucu bulundu ancak Nginx Proxy Manager gibi görünmüyor. Lütfen alan adınızın NPM örneğinizin çalıştığı IP'ye işaret ettiğinden emin olun." + }, + "certificates.http.reachability-failed-to-check": { + "defaultMessage": "site24x7.com ile iletişim hatası nedeniyle erişilebilirlik kontrolü başarısız oldu." + }, + "certificates.http.reachability-not-resolved": { + "defaultMessage": "Bu alan adında kullanılabilir bir sunucu yok. Lütfen alan adınızın mevcut olduğundan ve NPM örneğinizin çalıştığı IP'ye işaret ettiğinden ve gerekirse yönlendiricinizde 80 portunun yönlendirildiğinden emin olun." + }, + "certificates.http.reachability-ok": { + "defaultMessage": "Sunucunuz erişilebilir ve sertifika oluşturma mümkün olmalı." + }, + "certificates.http.reachability-other": { + "defaultMessage": "Bu alan adında bir sunucu bulundu ancak beklenmeyen bir durum kodu döndürdü {code}. Bu NPM sunucusu mu? Lütfen alan adınızın NPM örneğinizin çalıştığı IP'ye işaret ettiğinden emin olun." + }, + "certificates.http.reachability-wrong-data": { + "defaultMessage": "Bu alan adında bir sunucu bulundu ancak beklenmeyen veri döndürdü. Bu NPM sunucusu mu? Lütfen alan adınızın NPM örneğinizin çalıştığı IP'ye işaret ettiğinden emin olun." + }, + "certificates.http.test-results": { + "defaultMessage": "Test Sonuçları" + }, + "certificates.http.warning": { + "defaultMessage": "Bu alan adları zaten bu kuruluma işaret edecek şekilde yapılandırılmış olmalıdır." + }, + "certificates.request.subtitle": { + "defaultMessage": "Let's Encrypt ile" + }, + "certificates.request.title": { + "defaultMessage": "Yeni Sertifika İste" + }, + "column.access": { + "defaultMessage": "Erişim" + }, + "column.authorization": { + "defaultMessage": "Yetkilendirme" + }, + "column.authorizations": { + "defaultMessage": "Yetkilendirmeler" + }, + "column.custom-locations": { + "defaultMessage": "Özel Konumlar" + }, + "column.destination": { + "defaultMessage": "Hedef" + }, + "column.details": { + "defaultMessage": "Detaylar" + }, + "column.email": { + "defaultMessage": "E-posta" + }, + "column.event": { + "defaultMessage": "Olay" + }, + "column.expires": { + "defaultMessage": "Sona Erer" + }, + "column.http-code": { + "defaultMessage": "HTTP Kodu" + }, + "column.incoming-port": { + "defaultMessage": "Gelen Port" + }, + "column.name": { + "defaultMessage": "Ad" + }, + "column.protocol": { + "defaultMessage": "Protokol" + }, + "column.provider": { + "defaultMessage": "Sağlayıcı" + }, + "column.roles": { + "defaultMessage": "Roller" + }, + "column.rules": { + "defaultMessage": "Kurallar" + }, + "column.satisfy": { + "defaultMessage": "Karşıla" + }, + "column.satisfy-all": { + "defaultMessage": "Tümü" + }, + "column.satisfy-any": { + "defaultMessage": "Herhangi Biri" + }, + "column.scheme": { + "defaultMessage": "Şema" + }, + "column.source": { + "defaultMessage": "Kaynak" + }, + "column.ssl": { + "defaultMessage": "SSL" + }, + "column.status": { + "defaultMessage": "Durum" + }, + "created-on": { + "defaultMessage": "Oluşturuldu: {date}" + }, + "dashboard": { + "defaultMessage": "Kontrol Paneli" + }, + "dead-host": { + "defaultMessage": "404 Host" + }, + "dead-hosts": { + "defaultMessage": "404 Host'lar" + }, + "dead-hosts.count": { + "defaultMessage": "{count} {count, plural, one {404 Host} other {404 Host}}" + }, + "disabled": { + "defaultMessage": "Devre Dışı" + }, + "domain-names": { + "defaultMessage": "Alan Adları" + }, + "domain-names.max": { + "defaultMessage": "Maksimum {count} alan adı" + }, + "domain-names.placeholder": { + "defaultMessage": "Alan adı eklemek için yazmaya başlayın..." + }, + "domain-names.wildcards-not-permitted": { + "defaultMessage": "Bu tür için joker karakterler izin verilmez" + }, + "domain-names.wildcards-not-supported": { + "defaultMessage": "Bu CA için joker karakterler desteklenmiyor" + }, + "domains.force-ssl": { + "defaultMessage": "SSL'i Zorla" + }, + "domains.hsts-enabled": { + "defaultMessage": "HSTS Etkin" + }, + "domains.hsts-subdomains": { + "defaultMessage": "HSTS Alt Alan Adları" + }, + "domains.http2-support": { + "defaultMessage": "HTTP/2 Desteği" + }, + "domains.use-dns": { + "defaultMessage": "DNS Challenge Kullan" + }, + "email-address": { + "defaultMessage": "E-posta adresi" + }, + "empty-search": { + "defaultMessage": "Sonuç bulunamadı" + }, + "empty-subtitle": { + "defaultMessage": "Neden bir tane oluşturmuyorsunuz?" + }, + "enabled": { + "defaultMessage": "Etkin" + }, + "error.access.at-least-one": { + "defaultMessage": "Ya bir Yetkilendirme ya da bir Erişim Kuralı gereklidir" + }, + "error.access.duplicate-usernames": { + "defaultMessage": "Yetkilendirme Kullanıcı Adları benzersiz olmalıdır" + }, + "error.invalid-auth": { + "defaultMessage": "Geçersiz e-posta veya şifre" + }, + "error.invalid-domain": { + "defaultMessage": "Geçersiz alan adı: {domain}" + }, + "error.invalid-email": { + "defaultMessage": "Geçersiz e-posta adresi" + }, + "error.max-character-length": { + "defaultMessage": "Maksimum uzunluk {max} karakter{max, plural, one {} other {}}" + }, + "error.max-domains": { + "defaultMessage": "Çok fazla alan adı, maksimum {max}" + }, + "error.maximum": { + "defaultMessage": "Maksimum {max}" + }, + "error.min-character-length": { + "defaultMessage": "Minimum uzunluk {min} karakter{min, plural, one {} other {}}" + }, + "error.minimum": { + "defaultMessage": "Minimum {min}" + }, + "error.passwords-must-match": { + "defaultMessage": "Şifreler eşleşmelidir" + }, + "error.required": { + "defaultMessage": "Bu gereklidir" + }, + "expires.on": { + "defaultMessage": "Sona Erer: {date}" + }, + "footer.github-fork": { + "defaultMessage": "Github'da Fork Yap" + }, + "host.flags.block-exploits": { + "defaultMessage": "Yaygın Saldırıları Engelle" + }, + "host.flags.cache-assets": { + "defaultMessage": "Varlıkları Önbelleğe Al" + }, + "host.flags.preserve-path": { + "defaultMessage": "Yolu Koru" + }, + "host.flags.protocols": { + "defaultMessage": "Protokoller" + }, + "host.flags.websockets-upgrade": { + "defaultMessage": "Websockets Desteği" + }, + "host.forward-port": { + "defaultMessage": "İletme Portu" + }, + "host.forward-scheme": { + "defaultMessage": "Şema" + }, + "hosts": { + "defaultMessage": "Host'lar" + }, + "http-only": { + "defaultMessage": "Sadece HTTP" + }, + "lets-encrypt": { + "defaultMessage": "Let's Encrypt" + }, + "lets-encrypt-via-dns": { + "defaultMessage": "DNS ile Let's Encrypt" + }, + "lets-encrypt-via-http": { + "defaultMessage": "HTTP ile Let's Encrypt" + }, + "loading": { + "defaultMessage": "Yükleniyor…" + }, + "login.title": { + "defaultMessage": "Hesabınıza giriş yapın" + }, + "nginx-config.label": { + "defaultMessage": "Özel Nginx Yapılandırması" + }, + "nginx-config.placeholder": { + "defaultMessage": "# Kendi riskinizle özel Nginx yapılandırmanızı buraya girin!" + }, + "no-permission-error": { + "defaultMessage": "Bunu görüntüleme erişiminiz yok." + }, + "notfound.action": { + "defaultMessage": "Ana sayfaya götür" + }, + "notfound.content": { + "defaultMessage": "Üzgünüz, aradığınız sayfa bulunamadı" + }, + "notfound.title": { + "defaultMessage": "Hata… Bir hata sayfası buldunuz" + }, + "notification.error": { + "defaultMessage": "Hata" + }, + "notification.object-deleted": { + "defaultMessage": "{object} silindi" + }, + "notification.object-disabled": { + "defaultMessage": "{object} devre dışı bırakıldı" + }, + "notification.object-enabled": { + "defaultMessage": "{object} etkinleştirildi" + }, + "notification.object-renewed": { + "defaultMessage": "{object} yenilendi" + }, + "notification.object-saved": { + "defaultMessage": "{object} kaydedildi" + }, + "notification.success": { + "defaultMessage": "Başarılı" + }, + "object.actions-title": { + "defaultMessage": "{object} #{id}" + }, + "object.add": { + "defaultMessage": "{object} Ekle" + }, + "object.delete": { + "defaultMessage": "{object} Sil" + }, + "object.delete.content": { + "defaultMessage": "Bu {object} öğesini silmek istediğinizden emin misiniz?" + }, + "object.edit": { + "defaultMessage": "{object} Düzenle" + }, + "object.empty": { + "defaultMessage": "Hiç {objects} yok" + }, + "object.event.created": { + "defaultMessage": "{object} oluşturuldu" + }, + "object.event.deleted": { + "defaultMessage": "{object} silindi" + }, + "object.event.disabled": { + "defaultMessage": "{object} devre dışı bırakıldı" + }, + "object.event.enabled": { + "defaultMessage": "{object} etkinleştirildi" + }, + "object.event.renewed": { + "defaultMessage": "{object} yenilendi" + }, + "object.event.updated": { + "defaultMessage": "{object} güncellendi" + }, + "offline": { + "defaultMessage": "Çevrimdışı" + }, + "online": { + "defaultMessage": "Çevrimiçi" + }, + "options": { + "defaultMessage": "Seçenekler" + }, + "password": { + "defaultMessage": "Şifre" + }, + "password.generate": { + "defaultMessage": "Rastgele şifre oluştur" + }, + "password.hide": { + "defaultMessage": "Şifreyi Gizle" + }, + "password.show": { + "defaultMessage": "Şifreyi Göster" + }, + "permissions.hidden": { + "defaultMessage": "Gizli" + }, + "permissions.manage": { + "defaultMessage": "Yönet" + }, + "permissions.view": { + "defaultMessage": "Sadece Görüntüle" + }, + "permissions.visibility.all": { + "defaultMessage": "Tüm Öğeler" + }, + "permissions.visibility.title": { + "defaultMessage": "Öğe Görünürlüğü" + }, + "permissions.visibility.user": { + "defaultMessage": "Sadece Oluşturulan Öğeler" + }, + "proxy-host": { + "defaultMessage": "Proxy Host" + }, + "proxy-host.forward-host": { + "defaultMessage": "İletme Host Adı / IP" + }, + "proxy-hosts": { + "defaultMessage": "Proxy Host'lar" + }, + "proxy-hosts.count": { + "defaultMessage": "{count} {count, plural, one {Proxy Host} other {Proxy Host}}" + }, + "public": { + "defaultMessage": "Herkese Açık" + }, + "redirection-host": { + "defaultMessage": "Yönlendirme Host'u" + }, + "redirection-host.forward-domain": { + "defaultMessage": "İletme Alan Adı" + }, + "redirection-host.forward-http-code": { + "defaultMessage": "HTTP Kodu" + }, + "redirection-hosts": { + "defaultMessage": "Yönlendirme Host'ları" + }, + "redirection-hosts.count": { + "defaultMessage": "{count} {count, plural, one {Yönlendirme Host'u} other {Yönlendirme Host'u}}" + }, + "redirection-hosts.http-code.300": { + "defaultMessage": "300 Çoklu Seçenek" + }, + "redirection-hosts.http-code.301": { + "defaultMessage": "301 Kalıcı olarak taşındı" + }, + "redirection-hosts.http-code.302": { + "defaultMessage": "302 Geçici olarak taşındı" + }, + "redirection-hosts.http-code.303": { + "defaultMessage": "303 Diğerini gör" + }, + "redirection-hosts.http-code.307": { + "defaultMessage": "307 Geçici yönlendirme" + }, + "redirection-hosts.http-code.308": { + "defaultMessage": "308 Kalıcı yönlendirme" + }, + "role.admin": { + "defaultMessage": "Yönetici" + }, + "role.standard-user": { + "defaultMessage": "Standart Kullanıcı" + }, + "save": { + "defaultMessage": "Kaydet" + }, + "setting": { + "defaultMessage": "Ayar" + }, + "settings": { + "defaultMessage": "Ayarlar" + }, + "settings.default-site": { + "defaultMessage": "Varsayılan Site" + }, + "settings.default-site.404": { + "defaultMessage": "404 Sayfası" + }, + "settings.default-site.444": { + "defaultMessage": "Yanıt Yok (444)" + }, + "settings.default-site.congratulations": { + "defaultMessage": "Tebrikler Sayfası" + }, + "settings.default-site.description": { + "defaultMessage": "Nginx bilinmeyen bir Host ile karşılaştığında ne gösterilecek" + }, + "settings.default-site.html": { + "defaultMessage": "Özel HTML" + }, + "settings.default-site.html.placeholder": { + "defaultMessage": "" + }, + "settings.default-site.redirect": { + "defaultMessage": "Yönlendir" + }, + "setup.preamble": { + "defaultMessage": "Yönetici hesabınızı oluşturarak başlayın." + }, + "setup.title": { + "defaultMessage": "Hoş Geldiniz!" + }, + "sign-in": { + "defaultMessage": "Giriş yap" + }, + "ssl-certificate": { + "defaultMessage": "SSL Sertifikası" + }, + "stream": { + "defaultMessage": "Akış" + }, + "stream.forward-host": { + "defaultMessage": "İletme Host'u" + }, + "stream.forward-host.placeholder": { + "defaultMessage": "example.com veya 10.0.0.1 veya 2001:db8:3333:4444:5555:6666:7777:8888" + }, + "stream.incoming-port": { + "defaultMessage": "Gelen Port" + }, + "streams": { + "defaultMessage": "Akışlar" + }, + "streams.count": { + "defaultMessage": "{count} {count, plural, one {Akış} other {Akış}}" + }, + "streams.tcp": { + "defaultMessage": "TCP" + }, + "streams.udp": { + "defaultMessage": "UDP" + }, + "test": { + "defaultMessage": "Test" + }, + "update-available": { + "defaultMessage": "Güncelleme Mevcut: {latestVersion}" + }, + "user": { + "defaultMessage": "Kullanıcı" + }, + "user.change-password": { + "defaultMessage": "Şifreyi Değiştir" + }, + "user.confirm-password": { + "defaultMessage": "Şifreyi Onayla" + }, + "user.current-password": { + "defaultMessage": "Mevcut Şifre" + }, + "user.edit-profile": { + "defaultMessage": "Profili Düzenle" + }, + "user.full-name": { + "defaultMessage": "Ad Soyad" + }, + "user.login-as": { + "defaultMessage": "{name} olarak giriş yap" + }, + "user.logout": { + "defaultMessage": "Çıkış Yap" + }, + "user.new-password": { + "defaultMessage": "Yeni Şifre" + }, + "user.nickname": { + "defaultMessage": "Takma Ad" + }, + "user.set-password": { + "defaultMessage": "Şifre Belirle" + }, + "user.set-permissions": { + "defaultMessage": "{name} için İzinleri Belirle" + }, + "user.switch-dark": { + "defaultMessage": "Karanlık moda geç" + }, + "user.switch-light": { + "defaultMessage": "Açık moda geç" + }, + "username": { + "defaultMessage": "Kullanıcı Adı" + }, + "users": { + "defaultMessage": "Kullanıcılar" + } +} From bb0a50eccbf6e21a092740ced0e6761a174aa048 Mon Sep 17 00:00:00 2001 From: Orhan Polat Date: Mon, 15 Dec 2025 09:17:23 +0300 Subject: [PATCH 05/77] chore: trigger CI From 4e412f18bbebaa57aa43eb5c606ba42019611473 Mon Sep 17 00:00:00 2001 From: Orhan Polat Date: Fri, 16 Jan 2026 11:59:34 +0300 Subject: [PATCH 06/77] fix: resolve lint issues in IntlProvider and HelpDoc --- frontend/src/locale/IntlProvider.tsx | 6 ++---- frontend/src/locale/src/HelpDoc/index.ts | 7 +------ 2 files changed, 3 insertions(+), 10 deletions(-) diff --git a/frontend/src/locale/IntlProvider.tsx b/frontend/src/locale/IntlProvider.tsx index d6cd322c..9d0bd3f3 100755 --- a/frontend/src/locale/IntlProvider.tsx +++ b/frontend/src/locale/IntlProvider.tsx @@ -9,16 +9,14 @@ import langId from "./lang/id.json"; import langIt from "./lang/it.json"; import langJa from "./lang/ja.json"; import langKo from "./lang/ko.json"; -import langList from "./lang/lang-list.json"; import langNl from "./lang/nl.json"; import langPl from "./lang/pl.json"; import langRu from "./lang/ru.json"; import langSk from "./lang/sk.json"; import langVi from "./lang/vi.json"; import langZh from "./lang/zh.json"; -import langKo from "./lang/ko.json"; -import langBg from "./lang/bg.json"; import langTr from "./lang/tr.json"; +import langList from "./lang/lang-list.json"; // first item of each array should be the language code, // not the country code @@ -129,6 +127,6 @@ const T = ({ ); }; -console.log("L:", localeOptions); +//console.log("L:", localeOptions); export { localeOptions, getFlagCodeForLocale, getLocale, createIntl, changeLocale, intl, T }; diff --git a/frontend/src/locale/src/HelpDoc/index.ts b/frontend/src/locale/src/HelpDoc/index.ts index 8f0678cf..cc6c5b22 100644 --- a/frontend/src/locale/src/HelpDoc/index.ts +++ b/frontend/src/locale/src/HelpDoc/index.ts @@ -14,13 +14,8 @@ import * as ru from "./ru/index"; import * as sk from "./sk/index"; import * as vi from "./vi/index"; import * as zh from "./zh/index"; - -const items: any = { en, de, es, ja, sk, zh, pl, ru, it, vi, nl, bg, ko, ga, id, fr }; -import * as ko from "./ko/index"; -import * as bg from "./bg/index"; import * as tr from "./tr/index"; - -const items: any = { en, de, ja, sk, zh, pl, ru, it, vi, nl, bg, ko, tr }; +const items: any = { en, de, es, ja, sk, zh, pl, ru, it, vi, nl, bg, ko, ga, id, fr, tr }; const fallbackLang = "en"; From 131e5fea4fc87f6ecf33bb143c6c9cea631a0735 Mon Sep 17 00:00:00 2001 From: Orhan Polat Date: Fri, 16 Jan 2026 12:15:13 +0300 Subject: [PATCH 07/77] fix: remove duplicate locales in lang-list --- frontend/src/locale/src/lang-list.json | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/frontend/src/locale/src/lang-list.json b/frontend/src/locale/src/lang-list.json index 0aa89638..68b74f9e 100644 --- a/frontend/src/locale/src/lang-list.json +++ b/frontend/src/locale/src/lang-list.json @@ -46,10 +46,7 @@ }, "locale-bg-BG": { "defaultMessage": "Български" - } - "locale-en-US": { - "defaultMessage": "English" - }, + }, "locale-es-ES": { "defaultMessage": "Español" }, From 7bcc34dea9f0040710cd0d02cdafbef3ad730946 Mon Sep 17 00:00:00 2001 From: Lokowitz Date: Sun, 18 Jan 2026 06:52:30 +0000 Subject: [PATCH 08/77] add dependabot config --- .github/dependabot.yml | 44 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 .github/dependabot.yml diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 00000000..4c8a7604 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,44 @@ +version: 2 +updates: + - package-ecosystem: "npm" + directories: + - "/backend" + - "/frontend" + - "/docs" + - "/test" + schedule: + interval: "daily" + groups: + dev-patch-updates: + dependency-type: "development" + update-types: + - "patch" + dev-minor-updates: + dependency-type: "development" + update-types: + - "minor" + prod-patch-updates: + dependency-type: "production" + update-types: + - "patch" + prod-minor-updates: + dependency-type: "production" + update-types: + - "minor" + + - package-ecosystem: "docker" + directory: "/" + schedule: + interval: "daily" + groups: + patch-updates: + update-types: + - "patch" + minor-updates: + update-types: + - "minor" + + - package-ecosystem: "github-actions" + directory: "/" + schedule: + interval: "weekly" From 50cf275328cf251e5fc9a3f4d3e78af84bbfa7a6 Mon Sep 17 00:00:00 2001 From: Lokowitz Date: Sun, 18 Jan 2026 07:00:46 +0000 Subject: [PATCH 09/77] split directories --- .github/dependabot.yml | 78 +++++++++++++++++++++++++++++++++++++----- 1 file changed, 69 insertions(+), 9 deletions(-) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 4c8a7604..4a038f7a 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -1,11 +1,73 @@ version: 2 updates: - package-ecosystem: "npm" - directories: - - "/backend" - - "/frontend" - - "/docs" - - "/test" + directory: "/backend" + schedule: + interval: "daily" + groups: + dev-patch-updates: + dependency-type: "development" + update-types: + - "patch" + dev-minor-updates: + dependency-type: "development" + update-types: + - "minor" + prod-patch-updates: + dependency-type: "production" + update-types: + - "patch" + prod-minor-updates: + dependency-type: "production" + update-types: + - "minor" + + - package-ecosystem: "npm" + directory: "/frontend" + schedule: + interval: "daily" + groups: + dev-patch-updates: + dependency-type: "development" + update-types: + - "patch" + dev-minor-updates: + dependency-type: "development" + update-types: + - "minor" + prod-patch-updates: + dependency-type: "production" + update-types: + - "patch" + prod-minor-updates: + dependency-type: "production" + update-types: + - "minor" + + - package-ecosystem: "npm" + directory: "/docs" + schedule: + interval: "daily" + groups: + dev-patch-updates: + dependency-type: "development" + update-types: + - "patch" + dev-minor-updates: + dependency-type: "development" + update-types: + - "minor" + prod-patch-updates: + dependency-type: "production" + update-types: + - "patch" + prod-minor-updates: + dependency-type: "production" + update-types: + - "minor" + + - package-ecosystem: "npm" + directory: "/test" schedule: interval: "daily" groups: @@ -27,15 +89,13 @@ updates: - "minor" - package-ecosystem: "docker" - directory: "/" + directory: "/docker" schedule: interval: "daily" groups: - patch-updates: + updates: update-types: - "patch" - minor-updates: - update-types: - "minor" - package-ecosystem: "github-actions" From fe316252f11ade74a1e2632a51b9c0d1e1cf1852 Mon Sep 17 00:00:00 2001 From: Zsolt Tovis Date: Tue, 20 Jan 2026 16:38:06 +0100 Subject: [PATCH 10/77] Add Hungarian language support and help documentation - Integrated Hungarian translations into the IntlProvider and lang-list. - Added Hungarian help documentation for various topics including Access Lists, Certificates, Proxy Hosts, and more. - Updated locale options to include Hungarian language. --- frontend/check-locales.cjs | 171 ++-- frontend/src/locale/IntlProvider.tsx | 152 ++-- .../src/locale/src/HelpDoc/hu/AccessLists.md | 7 + .../src/locale/src/HelpDoc/hu/Certificates.md | 21 + .../src/locale/src/HelpDoc/hu/DeadHosts.md | 7 + .../src/locale/src/HelpDoc/hu/ProxyHosts.md | 7 + .../locale/src/HelpDoc/hu/RedirectionHosts.md | 5 + frontend/src/locale/src/HelpDoc/hu/Streams.md | 5 + frontend/src/locale/src/HelpDoc/hu/index.ts | 6 + frontend/src/locale/src/HelpDoc/index.ts | 20 +- frontend/src/locale/src/hu.json | 770 ++++++++++++++++++ frontend/src/locale/src/lang-list.json | 47 +- 12 files changed, 1003 insertions(+), 215 deletions(-) create mode 100644 frontend/src/locale/src/HelpDoc/hu/AccessLists.md create mode 100644 frontend/src/locale/src/HelpDoc/hu/Certificates.md create mode 100644 frontend/src/locale/src/HelpDoc/hu/DeadHosts.md create mode 100644 frontend/src/locale/src/HelpDoc/hu/ProxyHosts.md create mode 100644 frontend/src/locale/src/HelpDoc/hu/RedirectionHosts.md create mode 100644 frontend/src/locale/src/HelpDoc/hu/Streams.md create mode 100644 frontend/src/locale/src/HelpDoc/hu/index.ts create mode 100644 frontend/src/locale/src/hu.json diff --git a/frontend/check-locales.cjs b/frontend/check-locales.cjs index e1fc8a44..e5b1947f 100755 --- a/frontend/check-locales.cjs +++ b/frontend/check-locales.cjs @@ -7,27 +7,26 @@ // - Also checks the error messages returned by the backend const allLocales = [ - ["en", "en-US"], - ["de", "de-DE"], - ["es", "es-ES"], - ["fr", "fr-FR"], - ["it", "it-IT"], - ["ja", "ja-JP"], - ["nl", "nl-NL"], - ["pl", "pl-PL"], - ["ru", "ru-RU"], - ["sk", "sk-SK"], - ["vi", "vi-VN"], - ["zh", "zh-CN"], - ["ko", "ko-KR"], - ["bg", "bg-BG"], - ["id", "id-ID"], - ["tr", "tr-TR"], + ["en", "en-US"], + ["de", "de-DE"], + ["es", "es-ES"], + ["fr", "fr-FR"], + ["it", "it-IT"], + ["ja", "ja-JP"], + ["nl", "nl-NL"], + ["pl", "pl-PL"], + ["ru", "ru-RU"], + ["sk", "sk-SK"], + ["vi", "vi-VN"], + ["zh", "zh-CN"], + ["ko", "ko-KR"], + ["bg", "bg-BG"], + ["id", "id-ID"], + ["tr", "tr-TR"], + ["hu", "hu-HU"], ]; -const ignoreUnused = [ - /^.*$/, -]; +const ignoreUnused = [/^.*$/]; const { spawnSync } = require("child_process"); const fs = require("fs"); @@ -68,105 +67,95 @@ const allWarnings = []; const allKeys = []; const checkLangList = (fullCode) => { - const key = "locale-" + fullCode; - if (typeof langList[key] === "undefined") { - allErrors.push( - "ERROR: `" + key + "` language does not exist in lang-list.json", - ); - } + const key = "locale-" + fullCode; + if (typeof langList[key] === "undefined") { + allErrors.push("ERROR: `" + key + "` language does not exist in lang-list.json"); + } }; const compareLocale = (locale) => { - const projectLocaleKeys = Object.keys(allLocalesInProject); - // Check that locale contains the items used in the codebase - projectLocaleKeys.map((key) => { - if (typeof locale.data[key] === "undefined") { - allErrors.push( - "ERROR: `" + locale[0] + "` does not contain item: `" + key + "`", - ); - } - return null; - }); - // Check that locale contains all error.* items - BACKEND_ERRORS.forEach((key) => { - if (typeof locale.data[key] === "undefined") { - allErrors.push( - "ERROR: `" + locale[0] + "` does not contain item: `" + key + "`", - ); - } - return null; - }); + const projectLocaleKeys = Object.keys(allLocalesInProject); + // Check that locale contains the items used in the codebase + projectLocaleKeys.map((key) => { + if (typeof locale.data[key] === "undefined") { + allErrors.push("ERROR: `" + locale[0] + "` does not contain item: `" + key + "`"); + } + return null; + }); + // Check that locale contains all error.* items + BACKEND_ERRORS.forEach((key) => { + if (typeof locale.data[key] === "undefined") { + allErrors.push("ERROR: `" + locale[0] + "` does not contain item: `" + key + "`"); + } + return null; + }); - // Check that locale does not contain items not used in the codebase - const localeKeys = Object.keys(locale.data); - localeKeys.map((key) => { - let ignored = false; - ignoreUnused.map((regex) => { - if (key.match(regex)) { - ignored = true; - } - return null; - }); + // Check that locale does not contain items not used in the codebase + const localeKeys = Object.keys(locale.data); + localeKeys.map((key) => { + let ignored = false; + ignoreUnused.map((regex) => { + if (key.match(regex)) { + ignored = true; + } + return null; + }); - if (!ignored && typeof allLocalesInProject[key] === "undefined") { - // ensure this key doesn't exist in the backend errors either - if (!BACKEND_ERRORS.includes(key)) { - allErrors.push( - "ERROR: `" + locale[0] + "` contains unused item: `" + key + "`", - ); - } - } + if (!ignored && typeof allLocalesInProject[key] === "undefined") { + // ensure this key doesn't exist in the backend errors either + if (!BACKEND_ERRORS.includes(key)) { + allErrors.push("ERROR: `" + locale[0] + "` contains unused item: `" + key + "`"); + } + } - // Add this key to allKeys - if (allKeys.indexOf(key) === -1) { - allKeys.push(key); - } - return null; - }); + // Add this key to allKeys + if (allKeys.indexOf(key) === -1) { + allKeys.push(key); + } + return null; + }); }; // Checks for any keys missing from this locale, that // have been defined in any other locales const checkForMissing = (locale) => { - allKeys.forEach((key) => { - if (typeof locale.data[key] === "undefined") { - allWarnings.push( - "WARN: `" + locale[0] + "` does not contain item: `" + key + "`", - ); - } - return null; - }); + allKeys.forEach((key) => { + if (typeof locale.data[key] === "undefined") { + allWarnings.push("WARN: `" + locale[0] + "` does not contain item: `" + key + "`"); + } + return null; + }); }; // Local all locale data allLocales.map((locale, idx) => { - checkLangList(locale[1]); - allLocales[idx].data = require("./src/locale/src/" + locale[0] + ".json"); - return null; + checkLangList(locale[1]); + allLocales[idx].data = require("./src/locale/src/" + locale[0] + ".json"); + return null; }); // Verify all locale data allLocales.map((locale) => { - compareLocale(locale); - checkForMissing(locale); - return null; + compareLocale(locale); + checkForMissing(locale); + return null; }); if (allErrors.length) { - allErrors.map((err) => { - console.log("\x1b[31m%s\x1b[0m", err); - return null; - }); + allErrors.map((err) => { + console.log("\x1b[31m%s\x1b[0m", err); + return null; + }); } if (allWarnings.length) { - allWarnings.map((err) => { - console.log("\x1b[33m%s\x1b[0m", err); - return null; - }); + allWarnings.map((err) => { + console.log("\x1b[33m%s\x1b[0m", err); + return null; + }); } if (allErrors.length) { - process.exit(1); + process.exit(1); } console.log("\x1b[32m%s\x1b[0m", "Locale check passed"); diff --git a/frontend/src/locale/IntlProvider.tsx b/frontend/src/locale/IntlProvider.tsx index 9d0bd3f3..050daa0f 100755 --- a/frontend/src/locale/IntlProvider.tsx +++ b/frontend/src/locale/IntlProvider.tsx @@ -16,72 +16,74 @@ import langSk from "./lang/sk.json"; import langVi from "./lang/vi.json"; import langZh from "./lang/zh.json"; import langTr from "./lang/tr.json"; +import langHu from "./lang/hu.json"; import langList from "./lang/lang-list.json"; // first item of each array should be the language code, // not the country code // Remember when adding to this list, also update check-locales.js script const localeOptions = [ - ["en", "en-US", langEn], - ["de", "de-DE", langDe], - ["es", "es-ES", langEs], - ["fr", "fr-FR", langFr], - ["ga", "ga-IE", langGa], - ["ja", "ja-JP", langJa], - ["it", "it-IT", langIt], - ["nl", "nl-NL", langNl], - ["pl", "pl-PL", langPl], - ["ru", "ru-RU", langRu], - ["sk", "sk-SK", langSk], - ["vi", "vi-VN", langVi], - ["zh", "zh-CN", langZh], - ["ko", "ko-KR", langKo], - ["bg", "bg-BG", langBg], - ["id", "id-ID", langId], - ["tr", "tr-TR", langTr], + ["en", "en-US", langEn], + ["de", "de-DE", langDe], + ["es", "es-ES", langEs], + ["fr", "fr-FR", langFr], + ["ga", "ga-IE", langGa], + ["ja", "ja-JP", langJa], + ["it", "it-IT", langIt], + ["nl", "nl-NL", langNl], + ["pl", "pl-PL", langPl], + ["ru", "ru-RU", langRu], + ["sk", "sk-SK", langSk], + ["vi", "vi-VN", langVi], + ["zh", "zh-CN", langZh], + ["ko", "ko-KR", langKo], + ["bg", "bg-BG", langBg], + ["id", "id-ID", langId], + ["tr", "tr-TR", langTr], + ["hu", "hu-HU", langHu], ]; const loadMessages = (locale?: string): typeof langList & typeof langEn => { - const thisLocale = (locale || "en").slice(0, 2); + const thisLocale = (locale || "en").slice(0, 2); - // ensure this lang exists in localeOptions above, otherwise fallback to en - if (thisLocale === "en" || !localeOptions.some(([code]) => code === thisLocale)) { - return Object.assign({}, langList, langEn); - } + // ensure this lang exists in localeOptions above, otherwise fallback to en + if (thisLocale === "en" || !localeOptions.some(([code]) => code === thisLocale)) { + return Object.assign({}, langList, langEn); + } - return Object.assign({}, langList, langEn, localeOptions.find(([code]) => code === thisLocale)?.[2]); + return Object.assign({}, langList, langEn, localeOptions.find(([code]) => code === thisLocale)?.[2]); }; const getFlagCodeForLocale = (locale?: string) => { - const thisLocale = (locale || "en").slice(0, 2); + const thisLocale = (locale || "en").slice(0, 2); - // only add to this if your flag is different from the locale code - const specialCases: Record = { - ja: "jp", // Japan - zh: "cn", // China - vi: "vn", // Vietnam - ko: "kr", // Korea - }; + // only add to this if your flag is different from the locale code + const specialCases: Record = { + ja: "jp", // Japan + zh: "cn", // China + vi: "vn", // Vietnam + ko: "kr", // Korea + }; - if (specialCases[thisLocale]) { - return specialCases[thisLocale].toUpperCase(); - } - return thisLocale.toUpperCase(); + if (specialCases[thisLocale]) { + return specialCases[thisLocale].toUpperCase(); + } + return thisLocale.toUpperCase(); }; const getLocale = (short = false) => { - let loc = window.localStorage.getItem("locale"); - if (!loc) { - loc = document.documentElement.lang; - } - if (short) { - return loc.slice(0, 2); - } - // finally, fallback - if (!loc) { - loc = "en"; - } - return loc; + let loc = window.localStorage.getItem("locale"); + if (!loc) { + loc = document.documentElement.lang; + } + if (short) { + return loc.slice(0, 2); + } + // finally, fallback + if (!loc) { + loc = "en"; + } + return loc; }; const cache = createIntlCache(); @@ -90,41 +92,41 @@ const initialMessages = loadMessages(getLocale()); let intl = createIntl({ locale: getLocale(), messages: initialMessages }, cache); const changeLocale = (locale: string): void => { - const messages = loadMessages(locale); - intl = createIntl({ locale, messages }, cache); - window.localStorage.setItem("locale", locale); - document.documentElement.lang = locale; + const messages = loadMessages(locale); + intl = createIntl({ locale, messages }, cache); + window.localStorage.setItem("locale", locale); + document.documentElement.lang = locale; }; // This is a translation component that wraps the translation in a span with a data // attribute so devs can inspect the element to see the translation ID const T = ({ - id, - data, - tData, + id, + data, + tData, }: { - id: string; - data?: Record; - tData?: Record; + id: string; + data?: Record; + tData?: Record; }) => { - const translatedData: Record = {}; - if (tData) { - // iterate over tData and translate each value - Object.entries(tData).forEach(([key, value]) => { - translatedData[key] = intl.formatMessage({ id: value }); - }); - } - return ( - - {intl.formatMessage( - { id }, - { - ...data, - ...translatedData, - }, - )} - - ); + const translatedData: Record = {}; + if (tData) { + // iterate over tData and translate each value + Object.entries(tData).forEach(([key, value]) => { + translatedData[key] = intl.formatMessage({ id: value }); + }); + } + return ( + + {intl.formatMessage( + { id }, + { + ...data, + ...translatedData, + }, + )} + + ); }; //console.log("L:", localeOptions); diff --git a/frontend/src/locale/src/HelpDoc/hu/AccessLists.md b/frontend/src/locale/src/HelpDoc/hu/AccessLists.md new file mode 100644 index 00000000..3defa564 --- /dev/null +++ b/frontend/src/locale/src/HelpDoc/hu/AccessLists.md @@ -0,0 +1,7 @@ +## Mi az a hozzáférési lista? + +A hozzáférési listák feketelistát vagy fehérlistát biztosítanak meghatározott kliens IP-címekhez, valamint alap HTTP-hitelesítést (Basic HTTP Authentication) a proxy kiszolgálókhoz. + +Egyetlen hozzáférési listához több kliensszabályt, felhasználónevet és jelszót is beállíthatsz, majd ezt alkalmazhatod egy vagy több _Proxy Host_-ra. + +Ez különösen hasznos olyan továbbított webszolgáltatásoknál, amelyekben nincs beépített hitelesítési mechanizmus, vagy amikor ismeretlen kliensektől szeretnél védeni. diff --git a/frontend/src/locale/src/HelpDoc/hu/Certificates.md b/frontend/src/locale/src/HelpDoc/hu/Certificates.md new file mode 100644 index 00000000..e02b0b14 --- /dev/null +++ b/frontend/src/locale/src/HelpDoc/hu/Certificates.md @@ -0,0 +1,21 @@ +## Tanúsítványok súgó + +### HTTP tanúsítvány + +A HTTP érvényes tanúsítvány azt jelenti, hogy a Let's Encrypt szerverek megpróbálják elérni a domaineket HTTP-n keresztül (nem HTTPS-en!), és ha sikerül, kiállítják a tanúsítványt. + +Ehhez a módszerhez létre kell hoznod egy _Proxy Host_-ot a domain(ek)hez, amely HTTP-n keresztül elérhető és erre az Nginx telepítésre mutat. Miután a tanúsítvány megérkezett, módosíthatod a _Proxy Host_-ot, hogy ezt a tanúsítványt használja a HTTPS kapcsolatokhoz is. Azonban a _Proxy Host_-nak továbbra is konfigurálva kell lennie HTTP hozzáféréshez, hogy a tanúsítvány megújulhasson. + +Ez a folyamat _nem_ támogatja a helyettesítő karakteres domaineket. + +### DNS tanúsítvány + +A DNS érvényes tanúsítvány megköveteli, hogy DNS szolgáltató plugint használj. Ez a DNS szolgáltató ideiglenes rekordokat hoz létre a domainen, majd a Let's Encrypt lekérdezi ezeket a rekordokat, hogy megbizonyosodjon a tulajdonjogról, és ha sikeres, kiállítják a tanúsítványt. + +Nem szükséges előzetesen _Proxy Host_-ot létrehozni az ilyen típusú tanúsítvány igényléséhez. Nem is kell a _Proxy Host_-ot HTTP hozzáférésre konfigurálni. + +Ez a folyamat _támogatja_ a helyettesítő karakteres domaineket. + +### Egyéni tanúsítvány + +Ezt az opciót használd a saját SSL tanúsítvány feltöltéséhez, amelyet a saját tanúsítványkibocsátód biztosított. diff --git a/frontend/src/locale/src/HelpDoc/hu/DeadHosts.md b/frontend/src/locale/src/HelpDoc/hu/DeadHosts.md new file mode 100644 index 00000000..8a251d38 --- /dev/null +++ b/frontend/src/locale/src/HelpDoc/hu/DeadHosts.md @@ -0,0 +1,7 @@ +## Mi az a 404 Host? + +A 404 Host egyszerűen egy olyan host beállítás, amely egy 404-es oldalt jelenít meg. + +Ez akkor lehet hasznos, ha a domained szerepel a keresőmotorokban, és egy szebb hibaoldalt szeretnél nyújtani, vagy kifejezetten jelezni akarod a keresőrobotoknak, hogy a domain oldalai már nem léteznek. + +Ennek a kiszolgálónak egy további előnye, hogy nyomon követheted a rá érkező találatokat a naplókban, és megtekintheted a hivatkozó oldalakat. diff --git a/frontend/src/locale/src/HelpDoc/hu/ProxyHosts.md b/frontend/src/locale/src/HelpDoc/hu/ProxyHosts.md new file mode 100644 index 00000000..45e8faf6 --- /dev/null +++ b/frontend/src/locale/src/HelpDoc/hu/ProxyHosts.md @@ -0,0 +1,7 @@ +## Mi az a Proxy Host? + +A Proxy Host egy bejövő végpont egy olyan webszolgáltatáshoz, amelyet továbbítani szeretnél. + +Opcionális SSL lezárást biztosít a szolgáltatásodhoz, amelyben esetleg nincs beépített SSL támogatás. + +A Proxy Hostok az Nginx Proxy Manager leggyakoribb felhasználási módjai. diff --git a/frontend/src/locale/src/HelpDoc/hu/RedirectionHosts.md b/frontend/src/locale/src/HelpDoc/hu/RedirectionHosts.md new file mode 100644 index 00000000..aaef2a06 --- /dev/null +++ b/frontend/src/locale/src/HelpDoc/hu/RedirectionHosts.md @@ -0,0 +1,5 @@ +## Mi az az Átirányító Host? + +Az Átirányító Host a bejövő domainre érkező kéréseket átirányítja, és a látogatót egy másik domainre küldi. + +Ennek a kiszolgálótípusnak a leggyakoribb használati oka az, amikor a weboldalad domaint vált, de a keresőkben vagy a hivatkozó oldalakon még mindig a régi domainre mutató linkek vannak. diff --git a/frontend/src/locale/src/HelpDoc/hu/Streams.md b/frontend/src/locale/src/HelpDoc/hu/Streams.md new file mode 100644 index 00000000..17855653 --- /dev/null +++ b/frontend/src/locale/src/HelpDoc/hu/Streams.md @@ -0,0 +1,5 @@ +## Mi az a Stream? + +Az Nginx egy viszonylag új funkciója, a Stream arra szolgál, hogy a TCP/UDP forgalmat közvetlenül továbbítsa a hálózat egy másik számítógépére. + +Ha játékszervereket, FTP vagy SSH szervereket futtatsz, ez hasznos lehet. diff --git a/frontend/src/locale/src/HelpDoc/hu/index.ts b/frontend/src/locale/src/HelpDoc/hu/index.ts new file mode 100644 index 00000000..a9bb46ba --- /dev/null +++ b/frontend/src/locale/src/HelpDoc/hu/index.ts @@ -0,0 +1,6 @@ +export * as AccessLists from "./AccessLists.md"; +export * as Certificates from "./Certificates.md"; +export * as DeadHosts from "./DeadHosts.md"; +export * as ProxyHosts from "./ProxyHosts.md"; +export * as RedirectionHosts from "./RedirectionHosts.md"; +export * as Streams from "./Streams.md"; diff --git a/frontend/src/locale/src/HelpDoc/index.ts b/frontend/src/locale/src/HelpDoc/index.ts index cc6c5b22..e4d0a259 100644 --- a/frontend/src/locale/src/HelpDoc/index.ts +++ b/frontend/src/locale/src/HelpDoc/index.ts @@ -15,19 +15,21 @@ import * as sk from "./sk/index"; import * as vi from "./vi/index"; import * as zh from "./zh/index"; import * as tr from "./tr/index"; -const items: any = { en, de, es, ja, sk, zh, pl, ru, it, vi, nl, bg, ko, ga, id, fr, tr }; +import * as hu from "./hu/index"; + +const items: any = { en, de, es, ja, sk, zh, pl, ru, it, vi, nl, bg, ko, ga, id, fr, tr, hu }; const fallbackLang = "en"; export const getHelpFile = (lang: string, section: string): string => { - if (typeof items[lang] !== "undefined" && typeof items[lang][section] !== "undefined") { - return items[lang][section].default; - } - // Fallback to English - if (typeof items[fallbackLang] !== "undefined" && typeof items[fallbackLang][section] !== "undefined") { - return items[fallbackLang][section].default; - } - throw new Error(`Cannot load help doc for ${lang}-${section}`); + if (typeof items[lang] !== "undefined" && typeof items[lang][section] !== "undefined") { + return items[lang][section].default; + } + // Fallback to English + if (typeof items[fallbackLang] !== "undefined" && typeof items[fallbackLang][section] !== "undefined") { + return items[fallbackLang][section].default; + } + throw new Error(`Cannot load help doc for ${lang}-${section}`); }; export default items; diff --git a/frontend/src/locale/src/hu.json b/frontend/src/locale/src/hu.json new file mode 100644 index 00000000..61140c57 --- /dev/null +++ b/frontend/src/locale/src/hu.json @@ -0,0 +1,770 @@ +{ + "2fa.backup-codes-remaining": { + "defaultMessage": "Hátralévő tartalék kódok: {count}" + }, + "2fa.backup-warning": { + "defaultMessage": "Mentse el ezeket a tartalék kódokat biztonságos helyre. Minden kód csak egyszer használható." + }, + "2fa.disable": { + "defaultMessage": "Kétfaktoros hitelesítés letiltása" + }, + "2fa.disable-confirm": { + "defaultMessage": "2FA letiltása" + }, + "2fa.disable-warning": { + "defaultMessage": "A kétfaktoros hitelesítés letiltása kevésbé teszi biztonságossá a fiókját." + }, + "2fa.disabled": { + "defaultMessage": "Letiltva" + }, + "2fa.done": { + "defaultMessage": "Elmentettem a tartalék kódjaimat" + }, + "2fa.enable": { + "defaultMessage": "Kétfaktoros hitelesítés engedélyezése" + }, + "2fa.enabled": { + "defaultMessage": "Engedélyezve" + }, + "2fa.enter-code": { + "defaultMessage": "Adja meg az ellenőrző kódot" + }, + "2fa.enter-code-disable": { + "defaultMessage": "Adja meg az ellenőrző kódot a letiltáshoz" + }, + "2fa.regenerate": { + "defaultMessage": "Újragenerálás" + }, + "2fa.regenerate-backup": { + "defaultMessage": "Tartalék kódok újragenerálása" + }, + "2fa.regenerate-instructions": { + "defaultMessage": "Adjon meg egy ellenőrző kódot az új tartalék kódok generálásához. A régi kódok érvénytelenné válnak." + }, + "2fa.secret-key": { + "defaultMessage": "Titkos kulcs" + }, + "2fa.setup-instructions": { + "defaultMessage": "Olvassa be ezt a QR kódot a hitelesítő alkalmazásával, vagy adja meg a titkot manuálisan." + }, + "2fa.status": { + "defaultMessage": "Állapot" + }, + "2fa.title": { + "defaultMessage": "Kétfaktoros hitelesítés" + }, + "2fa.verify-enable": { + "defaultMessage": "Ellenőrzés és engedélyezés" + }, + "access-list": { + "defaultMessage": "Hozzáférési lista" + }, + "access-list.access-count": { + "defaultMessage": "{count} {count, plural, one {szabály} other {szabály}}" + }, + "access-list.auth-count": { + "defaultMessage": "{count} {count, plural, one {felhasználó} other {felhasználó}}" + }, + "access-list.help-rules-last": { + "defaultMessage": "Ha legalább 1 szabály létezik, ez a mindent tiltó szabály utolsóként lesz hozzáadva" + }, + "access-list.help.rules-order": { + "defaultMessage": "Vegye figyelembe, hogy az engedélyező és tiltó direktívák a meghatározásuk sorrendjében lesznek alkalmazva." + }, + "access-list.pass-auth": { + "defaultMessage": "Hitelesítés továbbítása az upstream felé" + }, + "access-list.public": { + "defaultMessage": "Nyilvánosan elérhető" + }, + "access-list.public.subtitle": { + "defaultMessage": "Alapszintű hitelesítés nem szükséges" + }, + "access-list.rule-source.placeholder": { + "defaultMessage": "192.168.1.100 vagy 192.168.1.0/24 vagy 2001:0db8::/32" + }, + "access-list.satisfy-any": { + "defaultMessage": "Bármely teljesítése" + }, + "access-list.subtitle": { + "defaultMessage": "{users} {users, plural, one {felhasználó} other {felhasználó}}, {rules} {rules, plural, one {szabály} other {szabály}} - Létrehozva: {date}" + }, + "access-lists": { + "defaultMessage": "Hozzáférési listák" + }, + "action.add": { + "defaultMessage": "Hozzáadás" + }, + "action.add-location": { + "defaultMessage": "Hely hozzáadása" + }, + "action.allow": { + "defaultMessage": "Engedélyezés" + }, + "action.close": { + "defaultMessage": "Bezárás" + }, + "action.delete": { + "defaultMessage": "Törlés" + }, + "action.deny": { + "defaultMessage": "Tiltás" + }, + "action.disable": { + "defaultMessage": "Letiltás" + }, + "action.download": { + "defaultMessage": "Letöltés" + }, + "action.edit": { + "defaultMessage": "Szerkesztés" + }, + "action.enable": { + "defaultMessage": "Engedélyezés" + }, + "action.permissions": { + "defaultMessage": "Engedélyek" + }, + "action.renew": { + "defaultMessage": "Megújítás" + }, + "action.view-details": { + "defaultMessage": "Részletek megtekintése" + }, + "auditlogs": { + "defaultMessage": "Audit naplók" + }, + "auto": { + "defaultMessage": "Automatikus" + }, + "cancel": { + "defaultMessage": "Mégse" + }, + "certificate": { + "defaultMessage": "Tanúsítvány" + }, + "certificate.custom-certificate": { + "defaultMessage": "Tanúsítvány" + }, + "certificate.custom-certificate-key": { + "defaultMessage": "Tanúsítvány kulcs" + }, + "certificate.custom-intermediate": { + "defaultMessage": "Köztes tanúsítvány" + }, + "certificate.in-use": { + "defaultMessage": "Használatban" + }, + "certificate.none.subtitle": { + "defaultMessage": "Nincs tanúsítvány hozzárendelve" + }, + "certificate.none.subtitle.for-http": { + "defaultMessage": "Ez a host nem fog HTTPS-t használni" + }, + "certificate.none.title": { + "defaultMessage": "Nincs" + }, + "certificate.not-in-use": { + "defaultMessage": "Nincs használatban" + }, + "certificate.renew": { + "defaultMessage": "Tanúsítvány megújítása" + }, + "certificates": { + "defaultMessage": "Tanúsítványok" + }, + "certificates.custom": { + "defaultMessage": "Egyéni tanúsítvány" + }, + "certificates.custom.warning": { + "defaultMessage": "Jelszóval védett kulcsfájlok nem támogatottak." + }, + "certificates.dns.credentials": { + "defaultMessage": "Hitelesítő fájl tartalma" + }, + "certificates.dns.credentials-note": { + "defaultMessage": "Ez a plugin egy konfigurációs fájlt igényel, amely API tokent vagy egyéb hitelesítő adatokat tartalmaz a szolgáltatóhoz" + }, + "certificates.dns.credentials-warning": { + "defaultMessage": "Ezek az adatok sima szövegként lesznek tárolva az adatbázisban és egy fájlban!" + }, + "certificates.dns.propagation-seconds": { + "defaultMessage": "Propagálási másodpercek" + }, + "certificates.dns.propagation-seconds-note": { + "defaultMessage": "Hagyja üresen a plugin alapértelmezett értékének használatához. Másodpercek száma a DNS propagálás megvárásához." + }, + "certificates.dns.provider": { + "defaultMessage": "DNS szolgáltató" + }, + "certificates.dns.provider.placeholder": { + "defaultMessage": "Válasszon szolgáltatót..." + }, + "certificates.dns.warning": { + "defaultMessage": "Ez a szakasz némi ismeretet igényel a Certbot-ról és a DNS plugin-jeiről. Kérjük, olvassa el a megfelelő plugin dokumentációját." + }, + "certificates.http.reachability-404": { + "defaultMessage": "Található szerver ezen a domain-en, de nem úgy tűnik, hogy Nginx Proxy Manager lenne. Kérjük, győződjön meg róla, hogy a domain arra az IP címre mutat, ahol az NPM példánya fut." + }, + "certificates.http.reachability-failed-to-check": { + "defaultMessage": "Az elérhetőség ellenőrzése sikertelen a site24x7.com kommunikációs hiba miatt." + }, + "certificates.http.reachability-not-resolved": { + "defaultMessage": "Nincs elérhető szerver ezen a domain-en. Kérjük, győződjön meg róla, hogy a domain létezik és arra az IP címre mutat, ahol az NPM példánya fut, és szükség esetén a 80-as port továbbítva van a routerében." + }, + "certificates.http.reachability-ok": { + "defaultMessage": "A szerver elérhető és a tanúsítványok létrehozása lehetséges lesz." + }, + "certificates.http.reachability-other": { + "defaultMessage": "Található szerver ezen a domain-en, de váratlan {code} státuszkódot adott vissza. Ez az NPM szerver? Kérjük, győződjön meg róla, hogy a domain arra az IP címre mutat, ahol az NPM példánya fut." + }, + "certificates.http.reachability-wrong-data": { + "defaultMessage": "Található szerver ezen a domain-en, de váratlan adatot adott vissza. Ez az NPM szerver? Kérjük, győződjön meg róla, hogy a domain arra az IP címre mutat, ahol az NPM példánya fut." + }, + "certificates.http.test-results": { + "defaultMessage": "Teszt eredmények" + }, + "certificates.http.warning": { + "defaultMessage": "Ezeknek a domain-eknek már konfigurálva kell lenniük, hogy erre a telepítésre mutassanak." + }, + "certificates.key-type": { + "defaultMessage": "Kulcs típus" + }, + "certificates.key-type-description": { + "defaultMessage": "Az RSA széles körben kompatibilis, az ECDSA gyorsabb és biztonságosabb, de nem biztos, hogy régebbi rendszerek támogatják" + }, + "certificates.key-type-ecdsa": { + "defaultMessage": "ECDSA 256" + }, + "certificates.key-type-rsa": { + "defaultMessage": "RSA 2048" + }, + "certificates.request.subtitle": { + "defaultMessage": "Let's Encrypt-tel" + }, + "certificates.request.title": { + "defaultMessage": "Új tanúsítvány kérelmezése" + }, + "column.access": { + "defaultMessage": "Hozzáférés" + }, + "column.authorization": { + "defaultMessage": "Jogosultság" + }, + "column.authorizations": { + "defaultMessage": "Jogosultságok" + }, + "column.custom-locations": { + "defaultMessage": "Egyéni helyek" + }, + "column.destination": { + "defaultMessage": "Cél" + }, + "column.details": { + "defaultMessage": "Részletek" + }, + "column.email": { + "defaultMessage": "E-mail" + }, + "column.event": { + "defaultMessage": "Esemény" + }, + "column.expires": { + "defaultMessage": "Lejár" + }, + "column.http-code": { + "defaultMessage": "HTTP kód" + }, + "column.incoming-port": { + "defaultMessage": "Bejövő port" + }, + "column.name": { + "defaultMessage": "Név" + }, + "column.protocol": { + "defaultMessage": "Protokoll" + }, + "column.provider": { + "defaultMessage": "Szolgáltató" + }, + "column.roles": { + "defaultMessage": "Szerepkörök" + }, + "column.rules": { + "defaultMessage": "Szabályok" + }, + "column.satisfy": { + "defaultMessage": "Teljesítés" + }, + "column.satisfy-all": { + "defaultMessage": "Összes" + }, + "column.satisfy-any": { + "defaultMessage": "Bármely" + }, + "column.scheme": { + "defaultMessage": "Séma" + }, + "column.source": { + "defaultMessage": "Forrás" + }, + "column.ssl": { + "defaultMessage": "SSL" + }, + "column.status": { + "defaultMessage": "Állapot" + }, + "created-on": { + "defaultMessage": "Létrehozva: {date}" + }, + "dashboard": { + "defaultMessage": "Vezérlőpult" + }, + "dead-host": { + "defaultMessage": "404 Host" + }, + "dead-hosts": { + "defaultMessage": "404 Hostok" + }, + "dead-hosts.count": { + "defaultMessage": "{count} {count, plural, one {404 Host} other {404 Host}}" + }, + "disabled": { + "defaultMessage": "Letiltva" + }, + "domain-names": { + "defaultMessage": "Domain nevek" + }, + "domain-names.max": { + "defaultMessage": "Maximum {count} domain név" + }, + "domain-names.placeholder": { + "defaultMessage": "Kezdjen el gépelni domain hozzáadásához..." + }, + "domain-names.wildcards-not-permitted": { + "defaultMessage": "Helyettesítő karakterek nem engedélyezettek ennél a típusnál" + }, + "domain-names.wildcards-not-supported": { + "defaultMessage": "Helyettesítő karakterek nem támogatottak ennél a CA-nál" + }, + "domains.force-ssl": { + "defaultMessage": "SSL kényszerítése" + }, + "domains.hsts-enabled": { + "defaultMessage": "HSTS engedélyezve" + }, + "domains.hsts-subdomains": { + "defaultMessage": "HSTS aldomain-ek" + }, + "domains.http2-support": { + "defaultMessage": "HTTP/2 támogatás" + }, + "domains.use-dns": { + "defaultMessage": "DNS Challenge használata" + }, + "email-address": { + "defaultMessage": "E-mail cím" + }, + "empty-search": { + "defaultMessage": "Nincs találat" + }, + "empty-subtitle": { + "defaultMessage": "Miért nem hoz létre egyet?" + }, + "enabled": { + "defaultMessage": "Engedélyezve" + }, + "error.access.at-least-one": { + "defaultMessage": "Legalább egy jogosultság vagy egy hozzáférési szabály szükséges" + }, + "error.access.duplicate-usernames": { + "defaultMessage": "A jogosultsági felhasználóneveknek egyedieknek kell lenniük" + }, + "error.invalid-auth": { + "defaultMessage": "Érvénytelen e-mail vagy jelszó" + }, + "error.invalid-domain": { + "defaultMessage": "Érvénytelen domain: {domain}" + }, + "error.invalid-email": { + "defaultMessage": "Érvénytelen e-mail cím" + }, + "error.max-character-length": { + "defaultMessage": "Maximális hossz {max} karakter" + }, + "error.max-domains": { + "defaultMessage": "Túl sok domain, a maximum {max}" + }, + "error.maximum": { + "defaultMessage": "A maximum {max}" + }, + "error.min-character-length": { + "defaultMessage": "Minimális hossz {min} karakter" + }, + "error.minimum": { + "defaultMessage": "A minimum {min}" + }, + "error.passwords-must-match": { + "defaultMessage": "A jelszavaknak egyezniük kell" + }, + "error.required": { + "defaultMessage": "Ez kötelező" + }, + "expires.on": { + "defaultMessage": "Lejár: {date}" + }, + "footer.github-fork": { + "defaultMessage": "Fork-olj a Github-on" + }, + "host.flags.block-exploits": { + "defaultMessage": "Gyakori exploitok blokkolása" + }, + "host.flags.cache-assets": { + "defaultMessage": "Eszközök gyorsítótárazása" + }, + "host.flags.preserve-path": { + "defaultMessage": "Útvonal megőrzése" + }, + "host.flags.protocols": { + "defaultMessage": "Protokollok" + }, + "host.flags.websockets-upgrade": { + "defaultMessage": "Websockets támogatás" + }, + "host.forward-port": { + "defaultMessage": "Továbbító port" + }, + "host.forward-scheme": { + "defaultMessage": "Séma" + }, + "hosts": { + "defaultMessage": "Hostok" + }, + "http-only": { + "defaultMessage": "Csak HTTP" + }, + "lets-encrypt": { + "defaultMessage": "Let's Encrypt" + }, + "lets-encrypt-via-dns": { + "defaultMessage": "Let's Encrypt DNS-en keresztül" + }, + "lets-encrypt-via-http": { + "defaultMessage": "Let's Encrypt HTTP-n keresztül" + }, + "loading": { + "defaultMessage": "Betöltés…" + }, + "login.2fa-code": { + "defaultMessage": "Ellenőrző kód" + }, + "login.2fa-code-placeholder": { + "defaultMessage": "Adja meg a kódot" + }, + "login.2fa-description": { + "defaultMessage": "Adja meg a kódot a hitelesítő alkalmazásából" + }, + "login.2fa-title": { + "defaultMessage": "Kétfaktoros hitelesítés" + }, + "login.2fa-verify": { + "defaultMessage": "Ellenőrzés" + }, + "login.title": { + "defaultMessage": "Jelentkezzen be a fiókjába" + }, + "nginx-config.label": { + "defaultMessage": "Egyéni Nginx konfiguráció" + }, + "nginx-config.placeholder": { + "defaultMessage": "# Adja meg az egyéni Nginx konfigurációját itt, saját felelősségére!" + }, + "no-permission-error": { + "defaultMessage": "Nincs jogosultsága ennek megtekintéséhez." + }, + "notfound.action": { + "defaultMessage": "Vigyen haza" + }, + "notfound.content": { + "defaultMessage": "Sajnáljuk, de a keresett oldal nem található" + }, + "notfound.title": { + "defaultMessage": "Hoppá… Hibás oldalra talált" + }, + "notification.error": { + "defaultMessage": "Hiba" + }, + "notification.object-deleted": { + "defaultMessage": "{object} törölve lett" + }, + "notification.object-disabled": { + "defaultMessage": "{object} letiltva lett" + }, + "notification.object-enabled": { + "defaultMessage": "{object} engedélyezve lett" + }, + "notification.object-renewed": { + "defaultMessage": "{object} megújítva lett" + }, + "notification.object-saved": { + "defaultMessage": "{object} mentve lett" + }, + "notification.success": { + "defaultMessage": "Sikeres" + }, + "object.actions-title": { + "defaultMessage": "{object} #{id}" + }, + "object.add": { + "defaultMessage": "{object} hozzáadása" + }, + "object.delete": { + "defaultMessage": "{object} törlése" + }, + "object.delete.content": { + "defaultMessage": "Biztosan törölni szeretné ezt: {object}?" + }, + "object.edit": { + "defaultMessage": "{object} szerkesztése" + }, + "object.empty": { + "defaultMessage": "Nincsenek {objects}" + }, + "object.event.created": { + "defaultMessage": "{object} létrehozva" + }, + "object.event.deleted": { + "defaultMessage": "{object} törölve" + }, + "object.event.disabled": { + "defaultMessage": "{object} letiltva" + }, + "object.event.enabled": { + "defaultMessage": "{object} engedélyezve" + }, + "object.event.renewed": { + "defaultMessage": "{object} megújítva" + }, + "object.event.updated": { + "defaultMessage": "{object} frissítve" + }, + "offline": { + "defaultMessage": "Offline" + }, + "online": { + "defaultMessage": "Online" + }, + "options": { + "defaultMessage": "Beállítások" + }, + "password": { + "defaultMessage": "Jelszó" + }, + "password.generate": { + "defaultMessage": "Véletlenszerű jelszó generálása" + }, + "password.hide": { + "defaultMessage": "Jelszó elrejtése" + }, + "password.show": { + "defaultMessage": "Jelszó megjelenítése" + }, + "permissions.hidden": { + "defaultMessage": "Rejtett" + }, + "permissions.manage": { + "defaultMessage": "Kezelés" + }, + "permissions.view": { + "defaultMessage": "Csak megtekintés" + }, + "permissions.visibility.all": { + "defaultMessage": "Összes elem" + }, + "permissions.visibility.title": { + "defaultMessage": "Elemek láthatósága" + }, + "permissions.visibility.user": { + "defaultMessage": "Csak létrehozott elemek" + }, + "proxy-host": { + "defaultMessage": "Proxy Host" + }, + "proxy-host.forward-host": { + "defaultMessage": "Továbbító hostnév / IP" + }, + "proxy-hosts": { + "defaultMessage": "Proxy Hostok" + }, + "proxy-hosts.count": { + "defaultMessage": "{count} {count, plural, one {Proxy Host} other {Proxy Host}}" + }, + "public": { + "defaultMessage": "Nyilvános" + }, + "redirection-host": { + "defaultMessage": "Átirányító Host" + }, + "redirection-host.forward-domain": { + "defaultMessage": "Továbbító domain" + }, + "redirection-host.forward-http-code": { + "defaultMessage": "HTTP kód" + }, + "redirection-hosts": { + "defaultMessage": "Átirányító Hostok" + }, + "redirection-hosts.count": { + "defaultMessage": "{count} {count, plural, one {Átirányító Host} other {Átirányító Host}}" + }, + "redirection-hosts.http-code.300": { + "defaultMessage": "300 Többszörös választás" + }, + "redirection-hosts.http-code.301": { + "defaultMessage": "301 Véglegesen áthelyezve" + }, + "redirection-hosts.http-code.302": { + "defaultMessage": "302 Ideiglenesen áthelyezve" + }, + "redirection-hosts.http-code.303": { + "defaultMessage": "303 Lásd másik" + }, + "redirection-hosts.http-code.307": { + "defaultMessage": "307 Ideiglenes átirányítás" + }, + "redirection-hosts.http-code.308": { + "defaultMessage": "308 Végleges átirányítás" + }, + "role.admin": { + "defaultMessage": "Adminisztrátor" + }, + "role.standard-user": { + "defaultMessage": "Általános felhasználó" + }, + "save": { + "defaultMessage": "Mentés" + }, + "setting": { + "defaultMessage": "Beállítás" + }, + "settings": { + "defaultMessage": "Beállítások" + }, + "settings.default-site": { + "defaultMessage": "Alapértelmezett oldal" + }, + "settings.default-site.404": { + "defaultMessage": "404 oldal" + }, + "settings.default-site.444": { + "defaultMessage": "Nincs válasz (444)" + }, + "settings.default-site.congratulations": { + "defaultMessage": "Gratulálunk oldal" + }, + "settings.default-site.description": { + "defaultMessage": "Mit mutasson az Nginx ismeretlen Host esetén" + }, + "settings.default-site.html": { + "defaultMessage": "Egyéni HTML" + }, + "settings.default-site.html.placeholder": { + "defaultMessage": "" + }, + "settings.default-site.redirect": { + "defaultMessage": "Átirányítás" + }, + "setup.preamble": { + "defaultMessage": "Kezdje az admin fiók létrehozásával." + }, + "setup.title": { + "defaultMessage": "Üdvözöljük!" + }, + "sign-in": { + "defaultMessage": "Bejelentkezés" + }, + "ssl-certificate": { + "defaultMessage": "SSL tanúsítvány" + }, + "stream": { + "defaultMessage": "Stream" + }, + "stream.forward-host": { + "defaultMessage": "Továbbító host" + }, + "stream.forward-host.placeholder": { + "defaultMessage": "example.com vagy 10.0.0.1 vagy 2001:db8:3333:4444:5555:6666:7777:8888" + }, + "stream.incoming-port": { + "defaultMessage": "Bejövő port" + }, + "streams": { + "defaultMessage": "Streamek" + }, + "streams.count": { + "defaultMessage": "{count} {count, plural, one {Stream} other {Stream}}" + }, + "streams.tcp": { + "defaultMessage": "TCP" + }, + "streams.udp": { + "defaultMessage": "UDP" + }, + "test": { + "defaultMessage": "Teszt" + }, + "update-available": { + "defaultMessage": "Frissítés elérhető: {latestVersion}" + }, + "user": { + "defaultMessage": "Felhasználó" + }, + "user.change-password": { + "defaultMessage": "Jelszó megváltoztatása" + }, + "user.confirm-password": { + "defaultMessage": "Jelszó megerősítése" + }, + "user.current-password": { + "defaultMessage": "Jelenlegi jelszó" + }, + "user.edit-profile": { + "defaultMessage": "Profil szerkesztése" + }, + "user.full-name": { + "defaultMessage": "Teljes név" + }, + "user.login-as": { + "defaultMessage": "Bejelentkezés mint {name}" + }, + "user.logout": { + "defaultMessage": "Kijelentkezés" + }, + "user.new-password": { + "defaultMessage": "Új jelszó" + }, + "user.nickname": { + "defaultMessage": "Becenév" + }, + "user.set-password": { + "defaultMessage": "Jelszó beállítása" + }, + "user.set-permissions": { + "defaultMessage": "Engedélyek beállítása {name} számára" + }, + "user.switch-dark": { + "defaultMessage": "Váltás sötét módra" + }, + "user.switch-light": { + "defaultMessage": "Váltás világos módra" + }, + "user.two-factor": { + "defaultMessage": "Kétfaktoros hitelesítés" + }, + "username": { + "defaultMessage": "Felhasználónév" + }, + "users": { + "defaultMessage": "Felhasználók" + } +} diff --git a/frontend/src/locale/src/lang-list.json b/frontend/src/locale/src/lang-list.json index 68b74f9e..0c8fb60e 100644 --- a/frontend/src/locale/src/lang-list.json +++ b/frontend/src/locale/src/lang-list.json @@ -15,7 +15,7 @@ "defaultMessage": "Français" }, "locale-id-ID": { - "defaultMessage": "Bahasa Indonesia" + "defaultMessage": "Bahasa Indonesia" }, "locale-ja-JP": { "defaultMessage": "日本語" @@ -47,43 +47,10 @@ "locale-bg-BG": { "defaultMessage": "Български" }, - "locale-es-ES": { - "defaultMessage": "Español" - }, - "locale-de-DE": { - "defaultMessage": "German" - }, - "locale-ja-JP": { - "defaultMessage": "日本語" - }, - "locale-ru-RU": { - "defaultMessage": "Русский" - }, - "locale-sk-SK": { - "defaultMessage": "Slovenčina" - }, - "locale-zh-CN": { - "defaultMessage": "中文" - }, - "locale-pl-PL": { - "defaultMessage": "Polski" - }, - "locale-it-IT": { - "defaultMessage": "Italiano" - }, - "locale-vi-VN": { - "defaultMessage": "Tiếng Việt" - }, - "locale-nl-NL": { - "defaultMessage": "Nederlands" - }, - "locale-ko-KR": { - "defaultMessage": "한국어" - }, - "locale-bg-BG": { - "defaultMessage": "Български" - }, - "locale-tr-TR": { - "defaultMessage": "Türkçe" - } + "locale-tr-TR": { + "defaultMessage": "Türkçe" + }, + "locale-hu-HU": { + "defaultMessage": "Magyar" + } } From 4ed17fef01c9827ffdf19be326afd003f6709e86 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zsolt=20T=C3=B6vis?= Date: Tue, 20 Jan 2026 16:56:46 +0100 Subject: [PATCH 11/77] Update frontend/src/locale/src/hu.json Typo-fix: GitHub Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> --- frontend/src/locale/src/hu.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/src/locale/src/hu.json b/frontend/src/locale/src/hu.json index 61140c57..f3673413 100644 --- a/frontend/src/locale/src/hu.json +++ b/frontend/src/locale/src/hu.json @@ -414,7 +414,7 @@ "defaultMessage": "Lejár: {date}" }, "footer.github-fork": { - "defaultMessage": "Fork-olj a Github-on" + "defaultMessage": "Fork-olj a GitHub-on" }, "host.flags.block-exploits": { "defaultMessage": "Gyakori exploitok blokkolása" From fa20c7d8a4f724f62fad0004fce2f643acdbd94b Mon Sep 17 00:00:00 2001 From: Zsolt Tovis Date: Tue, 20 Jan 2026 18:44:40 +0100 Subject: [PATCH 12/77] fix: update Hungarian translations for consistency and clarity. - Fine-tuning of some Hungarian language-specific expressions. --- .../src/locale/src/HelpDoc/hu/AccessLists.md | 2 +- .../src/locale/src/HelpDoc/hu/Certificates.md | 4 +-- .../src/locale/src/HelpDoc/hu/DeadHosts.md | 4 +-- .../src/locale/src/HelpDoc/hu/ProxyHosts.md | 6 ++-- .../locale/src/HelpDoc/hu/RedirectionHosts.md | 4 +-- frontend/src/locale/src/hu.json | 32 +++++++++---------- 6 files changed, 26 insertions(+), 26 deletions(-) diff --git a/frontend/src/locale/src/HelpDoc/hu/AccessLists.md b/frontend/src/locale/src/HelpDoc/hu/AccessLists.md index 3defa564..c3a62dd8 100644 --- a/frontend/src/locale/src/HelpDoc/hu/AccessLists.md +++ b/frontend/src/locale/src/HelpDoc/hu/AccessLists.md @@ -2,6 +2,6 @@ A hozzáférési listák feketelistát vagy fehérlistát biztosítanak meghatározott kliens IP-címekhez, valamint alap HTTP-hitelesítést (Basic HTTP Authentication) a proxy kiszolgálókhoz. -Egyetlen hozzáférési listához több kliensszabályt, felhasználónevet és jelszót is beállíthatsz, majd ezt alkalmazhatod egy vagy több _Proxy Host_-ra. +Egyetlen hozzáférési listához több kliensszabályt, felhasználónevet és jelszót is beállíthatsz, majd ezt alkalmazhatod egy vagy több _Proxy Kiszolgáló_-ra. Ez különösen hasznos olyan továbbított webszolgáltatásoknál, amelyekben nincs beépített hitelesítési mechanizmus, vagy amikor ismeretlen kliensektől szeretnél védeni. diff --git a/frontend/src/locale/src/HelpDoc/hu/Certificates.md b/frontend/src/locale/src/HelpDoc/hu/Certificates.md index e02b0b14..8df4a23b 100644 --- a/frontend/src/locale/src/HelpDoc/hu/Certificates.md +++ b/frontend/src/locale/src/HelpDoc/hu/Certificates.md @@ -4,7 +4,7 @@ A HTTP érvényes tanúsítvány azt jelenti, hogy a Let's Encrypt szerverek megpróbálják elérni a domaineket HTTP-n keresztül (nem HTTPS-en!), és ha sikerül, kiállítják a tanúsítványt. -Ehhez a módszerhez létre kell hoznod egy _Proxy Host_-ot a domain(ek)hez, amely HTTP-n keresztül elérhető és erre az Nginx telepítésre mutat. Miután a tanúsítvány megérkezett, módosíthatod a _Proxy Host_-ot, hogy ezt a tanúsítványt használja a HTTPS kapcsolatokhoz is. Azonban a _Proxy Host_-nak továbbra is konfigurálva kell lennie HTTP hozzáféréshez, hogy a tanúsítvány megújulhasson. +Ehhez a módszerhez létre kell hoznod egy _Proxy Kiszolgáló_-t a domain(ek)hez, amely HTTP-n keresztül elérhető és erre az Nginx telepítésre mutat. Miután a tanúsítvány megérkezett, módosíthatod a _Proxy Kiszolgáló_-t, hogy ezt a tanúsítványt használja a HTTPS kapcsolatokhoz is. Azonban a _Proxy Kiszolgáló_-nak továbbra is konfigurálva kell lennie HTTP hozzáféréshez, hogy a tanúsítvány megújulhasson. Ez a folyamat _nem_ támogatja a helyettesítő karakteres domaineket. @@ -12,7 +12,7 @@ Ez a folyamat _nem_ támogatja a helyettesítő karakteres domaineket. A DNS érvényes tanúsítvány megköveteli, hogy DNS szolgáltató plugint használj. Ez a DNS szolgáltató ideiglenes rekordokat hoz létre a domainen, majd a Let's Encrypt lekérdezi ezeket a rekordokat, hogy megbizonyosodjon a tulajdonjogról, és ha sikeres, kiállítják a tanúsítványt. -Nem szükséges előzetesen _Proxy Host_-ot létrehozni az ilyen típusú tanúsítvány igényléséhez. Nem is kell a _Proxy Host_-ot HTTP hozzáférésre konfigurálni. +Nem szükséges előzetesen _Proxy Kiszolgáló_-t létrehozni az ilyen típusú tanúsítvány igényléséhez. Nem is kell a _Proxy Kiszolgáló_-t HTTP hozzáférésre konfigurálni. Ez a folyamat _támogatja_ a helyettesítő karakteres domaineket. diff --git a/frontend/src/locale/src/HelpDoc/hu/DeadHosts.md b/frontend/src/locale/src/HelpDoc/hu/DeadHosts.md index 8a251d38..78ad57ea 100644 --- a/frontend/src/locale/src/HelpDoc/hu/DeadHosts.md +++ b/frontend/src/locale/src/HelpDoc/hu/DeadHosts.md @@ -1,6 +1,6 @@ -## Mi az a 404 Host? +## Mi az a 404-es Kiszolgáló? -A 404 Host egyszerűen egy olyan host beállítás, amely egy 404-es oldalt jelenít meg. +A 404-es Kiszolgáló egyszerűen egy olyan kiszolgáló beállítás, amely egy 404-es oldalt jelenít meg. Ez akkor lehet hasznos, ha a domained szerepel a keresőmotorokban, és egy szebb hibaoldalt szeretnél nyújtani, vagy kifejezetten jelezni akarod a keresőrobotoknak, hogy a domain oldalai már nem léteznek. diff --git a/frontend/src/locale/src/HelpDoc/hu/ProxyHosts.md b/frontend/src/locale/src/HelpDoc/hu/ProxyHosts.md index 45e8faf6..74a333bf 100644 --- a/frontend/src/locale/src/HelpDoc/hu/ProxyHosts.md +++ b/frontend/src/locale/src/HelpDoc/hu/ProxyHosts.md @@ -1,7 +1,7 @@ -## Mi az a Proxy Host? +## Mi az a Proxy Kiszolgáló? -A Proxy Host egy bejövő végpont egy olyan webszolgáltatáshoz, amelyet továbbítani szeretnél. +A Proxy Kiszolgáló egy bejövő végpont egy olyan webszolgáltatáshoz, amelyet továbbítani szeretnél. Opcionális SSL lezárást biztosít a szolgáltatásodhoz, amelyben esetleg nincs beépített SSL támogatás. -A Proxy Hostok az Nginx Proxy Manager leggyakoribb felhasználási módjai. +A Proxy Kiszolgálók az Nginx Proxy Manager leggyakoribb felhasználási módjai. diff --git a/frontend/src/locale/src/HelpDoc/hu/RedirectionHosts.md b/frontend/src/locale/src/HelpDoc/hu/RedirectionHosts.md index aaef2a06..576989a9 100644 --- a/frontend/src/locale/src/HelpDoc/hu/RedirectionHosts.md +++ b/frontend/src/locale/src/HelpDoc/hu/RedirectionHosts.md @@ -1,5 +1,5 @@ -## Mi az az Átirányító Host? +## Mi az az Átirányító Kiszolgáló? -Az Átirányító Host a bejövő domainre érkező kéréseket átirányítja, és a látogatót egy másik domainre küldi. +Az Átirányító Kiszolgáló a bejövő domainre érkező kéréseket átirányítja, és a látogatót egy másik domainre küldi. Ennek a kiszolgálótípusnak a leggyakoribb használati oka az, amikor a weboldalad domaint vált, de a keresőkben vagy a hivatkozó oldalakon még mindig a régi domainre mutató linkek vannak. diff --git a/frontend/src/locale/src/hu.json b/frontend/src/locale/src/hu.json index f3673413..e62ab063 100644 --- a/frontend/src/locale/src/hu.json +++ b/frontend/src/locale/src/hu.json @@ -159,7 +159,7 @@ "defaultMessage": "Nincs tanúsítvány hozzárendelve" }, "certificate.none.subtitle.for-http": { - "defaultMessage": "Ez a host nem fog HTTPS-t használni" + "defaultMessage": "Ez a kiszolgáló nem fog HTTPS-t használni" }, "certificate.none.title": { "defaultMessage": "Nincs" @@ -255,7 +255,7 @@ "defaultMessage": "Jogosultságok" }, "column.custom-locations": { - "defaultMessage": "Egyéni helyek" + "defaultMessage": "Egyéni útvonalak" }, "column.destination": { "defaultMessage": "Cél" @@ -321,13 +321,13 @@ "defaultMessage": "Vezérlőpult" }, "dead-host": { - "defaultMessage": "404 Host" + "defaultMessage": "404-es Kiszolgáló" }, "dead-hosts": { - "defaultMessage": "404 Hostok" + "defaultMessage": "404-es Kiszolgálók" }, "dead-hosts.count": { - "defaultMessage": "{count} {count, plural, one {404 Host} other {404 Host}}" + "defaultMessage": "{count} {count, plural, one {404-es Kiszolgáló} other {404-es Kiszolgálók}}" }, "disabled": { "defaultMessage": "Letiltva" @@ -420,7 +420,7 @@ "defaultMessage": "Gyakori exploitok blokkolása" }, "host.flags.cache-assets": { - "defaultMessage": "Eszközök gyorsítótárazása" + "defaultMessage": "Erőforrások gyorsítótárazása" }, "host.flags.preserve-path": { "defaultMessage": "Útvonal megőrzése" @@ -438,7 +438,7 @@ "defaultMessage": "Séma" }, "hosts": { - "defaultMessage": "Hostok" + "defaultMessage": "Kiszolgálók" }, "http-only": { "defaultMessage": "Csak HTTP" @@ -588,22 +588,22 @@ "defaultMessage": "Csak létrehozott elemek" }, "proxy-host": { - "defaultMessage": "Proxy Host" + "defaultMessage": "Proxy Kiszolgáló" }, "proxy-host.forward-host": { "defaultMessage": "Továbbító hostnév / IP" }, "proxy-hosts": { - "defaultMessage": "Proxy Hostok" + "defaultMessage": "Proxy Kiszolgálók" }, "proxy-hosts.count": { - "defaultMessage": "{count} {count, plural, one {Proxy Host} other {Proxy Host}}" + "defaultMessage": "{count} {count, plural, one {Proxy Kiszolgáló} other {Proxy Kiszolgálók}}" }, "public": { "defaultMessage": "Nyilvános" }, "redirection-host": { - "defaultMessage": "Átirányító Host" + "defaultMessage": "Átirányító Kiszolgáló" }, "redirection-host.forward-domain": { "defaultMessage": "Továbbító domain" @@ -612,10 +612,10 @@ "defaultMessage": "HTTP kód" }, "redirection-hosts": { - "defaultMessage": "Átirányító Hostok" + "defaultMessage": "Átirányító Kiszolgálók" }, "redirection-hosts.count": { - "defaultMessage": "{count} {count, plural, one {Átirányító Host} other {Átirányító Host}}" + "defaultMessage": "{count} {count, plural, one {Átirányító Kiszolgáló} other {Átirányító Kiszolgálók}}" }, "redirection-hosts.http-code.300": { "defaultMessage": "300 Többszörös választás" @@ -654,7 +654,7 @@ "defaultMessage": "Alapértelmezett oldal" }, "settings.default-site.404": { - "defaultMessage": "404 oldal" + "defaultMessage": "404-es oldal" }, "settings.default-site.444": { "defaultMessage": "Nincs válasz (444)" @@ -663,7 +663,7 @@ "defaultMessage": "Gratulálunk oldal" }, "settings.default-site.description": { - "defaultMessage": "Mit mutasson az Nginx ismeretlen Host esetén" + "defaultMessage": "Mit mutasson az Nginx ismeretlen Kiszolgáló esetén" }, "settings.default-site.html": { "defaultMessage": "Egyéni HTML" @@ -690,7 +690,7 @@ "defaultMessage": "Stream" }, "stream.forward-host": { - "defaultMessage": "Továbbító host" + "defaultMessage": "Továbbító kiszolgáló" }, "stream.forward-host.placeholder": { "defaultMessage": "example.com vagy 10.0.0.1 vagy 2001:db8:3333:4444:5555:6666:7777:8888" From 1bb29259eafc2f1ef31e705c42437535b4b25d6c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 21 Jan 2026 23:07:00 +0000 Subject: [PATCH 13/77] Bump lodash-es from 4.17.21 to 4.17.23 in /frontend Bumps [lodash-es](https://github.com/lodash/lodash) from 4.17.21 to 4.17.23. - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.21...4.17.23) --- updated-dependencies: - dependency-name: lodash-es dependency-version: 4.17.23 dependency-type: indirect ... Signed-off-by: dependabot[bot] --- frontend/yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/frontend/yarn.lock b/frontend/yarn.lock index 0fe46ccd..800bbd72 100644 --- a/frontend/yarn.lock +++ b/frontend/yarn.lock @@ -1834,9 +1834,9 @@ lines-and-columns@^1.1.6: integrity sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg== lodash-es@^4.17.21: - version "4.17.21" - resolved "https://registry.npmjs.org/lodash-es/-/lodash-es-4.17.21.tgz" - integrity sha512-mKnC+QJ9pWVzv+C4/U3rRsHapFfHvQFoFB92e52xeyGMcX6/OlIl78je1u8vePzYZSkkogMPJ2yjxxsb89cxyw== + version "4.17.23" + resolved "https://registry.yarnpkg.com/lodash-es/-/lodash-es-4.17.23.tgz#58c4360fd1b5d33afc6c0bbd3d1149349b1138e0" + integrity sha512-kVI48u3PZr38HdYz98UmfPnXl2DXrpdctLrFLCd3kOx1xUkOmpFPx7gCWWM5MPkL/fD8zb+Ph0QzjGFs4+hHWg== lodash.debounce@^4.0.8: version "4.0.8" From 2deb5447d6f2877457f7e4b3c78e0fc57a86cdb2 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 21 Jan 2026 23:43:45 +0000 Subject: [PATCH 14/77] Bump lodash from 4.17.21 to 4.17.23 in /backend Bumps [lodash](https://github.com/lodash/lodash) from 4.17.21 to 4.17.23. - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.21...4.17.23) --- updated-dependencies: - dependency-name: lodash dependency-version: 4.17.23 dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- backend/package.json | 2 +- backend/yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/backend/package.json b/backend/package.json index ed143c68..8a01c3d0 100644 --- a/backend/package.json +++ b/backend/package.json @@ -25,7 +25,7 @@ "jsonwebtoken": "^9.0.2", "knex": "2.4.2", "liquidjs": "10.6.1", - "lodash": "^4.17.21", + "lodash": "^4.17.23", "moment": "^2.30.1", "mysql2": "^3.15.3", "node-rsa": "^1.1.1", diff --git a/backend/yarn.lock b/backend/yarn.lock index c8ad524e..b9f76bd9 100644 --- a/backend/yarn.lock +++ b/backend/yarn.lock @@ -1619,10 +1619,10 @@ lodash.union@^4.6.0: resolved "https://registry.yarnpkg.com/lodash.union/-/lodash.union-4.6.0.tgz#48bb5088409f16f1821666641c44dd1aaae3cd88" integrity sha512-c4pB2CdGrGdjMKYLA+XiRDO7Y0PRQbm/Gzg8qMj+QH+pFVAoTp5sBpO0odL3FjoPCGjK96p6qsP+yQoiLoOBcw== -lodash@^4.17.21: - version "4.17.21" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" - integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== +lodash@^4.17.21, lodash@^4.17.23: + version "4.17.23" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.23.tgz#f113b0378386103be4f6893388c73d0bde7f2c5a" + integrity sha512-LgVTMpQtIopCi79SJeDiP0TfWi5CNEc/L/aRdTh3yIvmZXTnheWpKjSZhnvMl8iXbC1tFg9gdHHDMLoV7CnG+w== long@^5.2.1: version "5.3.2" From ef6918947c5b68ec6437819741278c0e90b7bed4 Mon Sep 17 00:00:00 2001 From: Zsolt Tovis Date: Thu, 22 Jan 2026 07:49:07 +0100 Subject: [PATCH 15/77] fix: update (2) Hungarian translations for consistency and clarity. - Clarification of the translation of action.add-location --- frontend/src/locale/src/hu.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/src/locale/src/hu.json b/frontend/src/locale/src/hu.json index e62ab063..d12c5c86 100644 --- a/frontend/src/locale/src/hu.json +++ b/frontend/src/locale/src/hu.json @@ -96,7 +96,7 @@ "defaultMessage": "Hozzáadás" }, "action.add-location": { - "defaultMessage": "Hely hozzáadása" + "defaultMessage": "Útvonal hozzáadása" }, "action.allow": { "defaultMessage": "Engedélyezés" From a0ef0d90480986d31c242a49ff1226e720eb9b4c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 25 Jan 2026 12:10:44 +0000 Subject: [PATCH 16/77] Bump lodash from 4.17.21 to 4.17.23 in /test Bumps [lodash](https://github.com/lodash/lodash) from 4.17.21 to 4.17.23. - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.21...4.17.23) --- updated-dependencies: - dependency-name: lodash dependency-version: 4.17.23 dependency-type: direct:production ... Signed-off-by: dependabot[bot] --- test/yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/test/yarn.lock b/test/yarn.lock index b3b1d3b2..40c6ae45 100644 --- a/test/yarn.lock +++ b/test/yarn.lock @@ -1648,9 +1648,9 @@ lodash.once@^4.1.1: integrity sha1-DdOXEhPHxW34gJd9UEyI+0cal6w= lodash@^4.17.21: - version "4.17.21" - resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.21.tgz#679591c564c3bffaae8454cf0b3df370c3d6911c" - integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== + version "4.17.23" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.23.tgz#f113b0378386103be4f6893388c73d0bde7f2c5a" + integrity sha512-LgVTMpQtIopCi79SJeDiP0TfWi5CNEc/L/aRdTh3yIvmZXTnheWpKjSZhnvMl8iXbC1tFg9gdHHDMLoV7CnG+w== log-symbols@^4.0.0, log-symbols@^4.1.0: version "4.1.0" From 727bc944eabcaa2f32a446e094337a789c6ff66f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 25 Jan 2026 12:10:48 +0000 Subject: [PATCH 17/77] Bump lodash from 4.17.21 to 4.17.23 in /frontend Bumps [lodash](https://github.com/lodash/lodash) from 4.17.21 to 4.17.23. - [Release notes](https://github.com/lodash/lodash/releases) - [Commits](https://github.com/lodash/lodash/compare/4.17.21...4.17.23) --- updated-dependencies: - dependency-name: lodash dependency-version: 4.17.23 dependency-type: indirect ... Signed-off-by: dependabot[bot] --- frontend/yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/frontend/yarn.lock b/frontend/yarn.lock index 800bbd72..01c6c896 100644 --- a/frontend/yarn.lock +++ b/frontend/yarn.lock @@ -1844,9 +1844,9 @@ lodash.debounce@^4.0.8: integrity sha512-FT1yDzDYEoYWhnSGnpE/4Kj1fLZkDFyqRb7fNt6FdYOSxlUWAtp42Eh6Wb0rGIv/m9Bgo7x4GhQbm5Ys4SG5ow== lodash@^4.17.21: - version "4.17.21" - resolved "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz" - integrity sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg== + version "4.17.23" + resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.23.tgz#f113b0378386103be4f6893388c73d0bde7f2c5a" + integrity sha512-LgVTMpQtIopCi79SJeDiP0TfWi5CNEc/L/aRdTh3yIvmZXTnheWpKjSZhnvMl8iXbC1tFg9gdHHDMLoV7CnG+w== longest-streak@^3.0.0: version "3.1.0" From 69f9031447017d1fa7cea80c4468b5a02ddaf6ec Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 25 Jan 2026 12:30:04 +0000 Subject: [PATCH 18/77] Bump actions/stale from 9 to 10 Bumps [actions/stale](https://github.com/actions/stale) from 9 to 10. - [Release notes](https://github.com/actions/stale/releases) - [Changelog](https://github.com/actions/stale/blob/main/CHANGELOG.md) - [Commits](https://github.com/actions/stale/compare/v9...v10) --- updated-dependencies: - dependency-name: actions/stale dependency-version: '10' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- .github/workflows/stale.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/stale.yml b/.github/workflows/stale.yml index f859b127..3a2ae9e8 100644 --- a/.github/workflows/stale.yml +++ b/.github/workflows/stale.yml @@ -8,7 +8,7 @@ jobs: stale: runs-on: ubuntu-latest steps: - - uses: actions/stale@v9 + - uses: actions/stale@v10 with: stale-issue-label: 'stale' stale-pr-label: 'stale' From ad2e4c8afe689169d779458ad950f629448044e8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 25 Jan 2026 12:30:27 +0000 Subject: [PATCH 19/77] Bump @biomejs/biome in /backend in the dev-patch-updates group Bumps the dev-patch-updates group in /backend with 1 update: [@biomejs/biome](https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome). Updates `@biomejs/biome` from 2.3.2 to 2.3.12 - [Release notes](https://github.com/biomejs/biome/releases) - [Changelog](https://github.com/biomejs/biome/blob/main/packages/@biomejs/biome/CHANGELOG.md) - [Commits](https://github.com/biomejs/biome/commits/@biomejs/biome@2.3.12/packages/@biomejs/biome) --- updated-dependencies: - dependency-name: "@biomejs/biome" dependency-version: 2.3.12 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: dev-patch-updates ... Signed-off-by: dependabot[bot] --- backend/package.json | 2 +- backend/yarn.lock | 88 ++++++++++++++++++++++---------------------- 2 files changed, 45 insertions(+), 45 deletions(-) diff --git a/backend/package.json b/backend/package.json index 8a01c3d0..0cafa61f 100644 --- a/backend/package.json +++ b/backend/package.json @@ -40,7 +40,7 @@ }, "devDependencies": { "@apidevtools/swagger-parser": "^10.1.0", - "@biomejs/biome": "^2.3.2", + "@biomejs/biome": "^2.3.12", "chalk": "4.1.2", "nodemon": "^2.0.2" }, diff --git a/backend/yarn.lock b/backend/yarn.lock index b9f76bd9..00fd26be 100644 --- a/backend/yarn.lock +++ b/backend/yarn.lock @@ -43,59 +43,59 @@ ajv-draft-04 "^1.0.0" call-me-maybe "^1.0.2" -"@biomejs/biome@^2.3.2": - version "2.3.2" - resolved "https://registry.yarnpkg.com/@biomejs/biome/-/biome-2.3.2.tgz#aeeb5f12c39571a18f36a919be63ba7dbc7b290a" - integrity sha512-8e9tzamuDycx7fdrcJ/F/GDZ8SYukc5ud6tDicjjFqURKYFSWMl0H0iXNXZEGmcmNUmABgGuHThPykcM41INgg== +"@biomejs/biome@^2.3.12": + version "2.3.12" + resolved "https://registry.yarnpkg.com/@biomejs/biome/-/biome-2.3.12.tgz#7cf21b69734ac6a310bcd014d3a0b3b1dc5a1758" + integrity sha512-AR7h4aSlAvXj7TAajW/V12BOw2EiS0AqZWV5dGozf4nlLoUF/ifvD0+YgKSskT0ylA6dY1A8AwgP8kZ6yaCQnA== optionalDependencies: - "@biomejs/cli-darwin-arm64" "2.3.2" - "@biomejs/cli-darwin-x64" "2.3.2" - "@biomejs/cli-linux-arm64" "2.3.2" - "@biomejs/cli-linux-arm64-musl" "2.3.2" - "@biomejs/cli-linux-x64" "2.3.2" - "@biomejs/cli-linux-x64-musl" "2.3.2" - "@biomejs/cli-win32-arm64" "2.3.2" - "@biomejs/cli-win32-x64" "2.3.2" + "@biomejs/cli-darwin-arm64" "2.3.12" + "@biomejs/cli-darwin-x64" "2.3.12" + "@biomejs/cli-linux-arm64" "2.3.12" + "@biomejs/cli-linux-arm64-musl" "2.3.12" + "@biomejs/cli-linux-x64" "2.3.12" + "@biomejs/cli-linux-x64-musl" "2.3.12" + "@biomejs/cli-win32-arm64" "2.3.12" + "@biomejs/cli-win32-x64" "2.3.12" -"@biomejs/cli-darwin-arm64@2.3.2": - version "2.3.2" - resolved "https://registry.yarnpkg.com/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-2.3.2.tgz#93f866161abe32e702987ccbddf492c1aabe016f" - integrity sha512-4LECm4kc3If0JISai4c3KWQzukoUdpxy4fRzlrPcrdMSRFksR9ZoXK7JBcPuLBmd2SoT4/d7CQS33VnZpgBjew== +"@biomejs/cli-darwin-arm64@2.3.12": + version "2.3.12" + resolved "https://registry.yarnpkg.com/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-2.3.12.tgz#ff0029420b0fc307ad0345a4190fe14ca4fd2676" + integrity sha512-cO6fn+KiMBemva6EARDLQBxeyvLzgidaFRJi8G7OeRqz54kWK0E+uSjgFaiHlc3DZYoa0+1UFE8mDxozpc9ieg== -"@biomejs/cli-darwin-x64@2.3.2": - version "2.3.2" - resolved "https://registry.yarnpkg.com/@biomejs/cli-darwin-x64/-/cli-darwin-x64-2.3.2.tgz#9c3dffdac12e4f4d8db7680ca20f58ace1f38c23" - integrity sha512-jNMnfwHT4N3wi+ypRfMTjLGnDmKYGzxVr1EYAPBcauRcDnICFXN81wD6wxJcSUrLynoyyYCdfW6vJHS/IAoTDA== +"@biomejs/cli-darwin-x64@2.3.12": + version "2.3.12" + resolved "https://registry.yarnpkg.com/@biomejs/cli-darwin-x64/-/cli-darwin-x64-2.3.12.tgz#5afba38de8b6fc44cfa16cf45b816deead8cab25" + integrity sha512-/fiF/qmudKwSdvmSrSe/gOTkW77mHHkH8Iy7YC2rmpLuk27kbaUOPa7kPiH5l+3lJzTUfU/t6x1OuIq/7SGtxg== -"@biomejs/cli-linux-arm64-musl@2.3.2": - version "2.3.2" - resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-2.3.2.tgz#a0424d2fe355cc43c375b3fbf3e42d39b7221d0e" - integrity sha512-2Zz4usDG1GTTPQnliIeNx6eVGGP2ry5vE/v39nT73a3cKN6t5H5XxjcEoZZh62uVZvED7hXXikclvI64vZkYqw== +"@biomejs/cli-linux-arm64-musl@2.3.12": + version "2.3.12" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-2.3.12.tgz#fe98eaca6b3a8b4da1581330a341a9ecb5f49525" + integrity sha512-aqkeSf7IH+wkzFpKeDVPSXy9uDjxtLpYA6yzkYsY+tVjwFFirSuajHDI3ul8en90XNs1NA0n8kgBrjwRi5JeyA== -"@biomejs/cli-linux-arm64@2.3.2": - version "2.3.2" - resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-arm64/-/cli-linux-arm64-2.3.2.tgz#f85717c04d420ede20523d173a1fc10df60d4d37" - integrity sha512-amnqvk+gWybbQleRRq8TMe0rIv7GHss8mFJEaGuEZYWg1Tw14YKOkeo8h6pf1c+d3qR+JU4iT9KXnBKGON4klw== +"@biomejs/cli-linux-arm64@2.3.12": + version "2.3.12" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-arm64/-/cli-linux-arm64-2.3.12.tgz#b3a404700075aab96b7418b0c00e40a35de104fd" + integrity sha512-nbOsuQROa3DLla5vvsTZg+T5WVPGi9/vYxETm9BOuLHBJN3oWQIg3MIkE2OfL18df1ZtNkqXkH6Yg9mdTPem7A== -"@biomejs/cli-linux-x64-musl@2.3.2": - version "2.3.2" - resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-2.3.2.tgz#d3e114c744c32d2c50a77c13476bd941819c92d8" - integrity sha512-gzB19MpRdTuOuLtPpFBGrV3Lq424gHyq2lFj8wfX9tvLMLdmA/R9C7k/mqBp/spcbWuHeIEKgEs3RviOPcWGBA== +"@biomejs/cli-linux-x64-musl@2.3.12": + version "2.3.12" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-2.3.12.tgz#beb065ec9802ddcb00e6bb4398be3f06abd309b2" + integrity sha512-kVGWtupRRsOjvw47YFkk5mLiAdpCPMWBo1jOwAzh+juDpUb2sWarIp+iq+CPL1Wt0LLZnYtP7hH5kD6fskcxmg== -"@biomejs/cli-linux-x64@2.3.2": - version "2.3.2" - resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-x64/-/cli-linux-x64-2.3.2.tgz#f66ce85d2d757d45e6edecce04753a805bd816f0" - integrity sha512-8BG/vRAhFz1pmuyd24FQPhNeueLqPtwvZk6yblABY2gzL2H8fLQAF/Z2OPIc+BPIVPld+8cSiKY/KFh6k81xfA== +"@biomejs/cli-linux-x64@2.3.12": + version "2.3.12" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-x64/-/cli-linux-x64-2.3.12.tgz#6cfbc5536e1184966704a0f50385b9121ff473a5" + integrity sha512-CQtqrJ+qEEI8tgRSTjjzk6wJAwfH3wQlkIGsM5dlecfRZaoT+XCms/mf7G4kWNexrke6mnkRzNy6w8ebV177ow== -"@biomejs/cli-win32-arm64@2.3.2": - version "2.3.2" - resolved "https://registry.yarnpkg.com/@biomejs/cli-win32-arm64/-/cli-win32-arm64-2.3.2.tgz#b46f8b47a3d97e766cc5ad5eb67d90eeb230b2cb" - integrity sha512-lCruqQlfWjhMlOdyf5pDHOxoNm4WoyY2vZ4YN33/nuZBRstVDuqPPjS0yBkbUlLEte11FbpW+wWSlfnZfSIZvg== +"@biomejs/cli-win32-arm64@2.3.12": + version "2.3.12" + resolved "https://registry.yarnpkg.com/@biomejs/cli-win32-arm64/-/cli-win32-arm64-2.3.12.tgz#ac40d7792708e224c0d5fa5ce1a4beb9e3255bfa" + integrity sha512-Re4I7UnOoyE4kHMqpgtG6UvSBGBbbtvsOvBROgCCoH7EgANN6plSQhvo2W7OCITvTp7gD6oZOyZy72lUdXjqZg== -"@biomejs/cli-win32-x64@2.3.2": - version "2.3.2" - resolved "https://registry.yarnpkg.com/@biomejs/cli-win32-x64/-/cli-win32-x64-2.3.2.tgz#a14f5e220dd496705278315ee3e5e028dd657344" - integrity sha512-6Ee9P26DTb4D8sN9nXxgbi9Dw5vSOfH98M7UlmkjKB2vtUbrRqCbZiNfryGiwnPIpd6YUoTl7rLVD2/x1CyEHQ== +"@biomejs/cli-win32-x64@2.3.12": + version "2.3.12" + resolved "https://registry.yarnpkg.com/@biomejs/cli-win32-x64/-/cli-win32-x64-2.3.12.tgz#5c710c971f3adc6971e04feb342a70387a6a2d58" + integrity sha512-qqGVWqNNek0KikwPZlOIoxtXgsNGsX+rgdEzgw82Re8nF02W+E2WokaQhpF5TdBh/D/RQ3TLppH+otp6ztN0lw== "@gar/promisify@^1.0.1": version "1.1.3" From 8d3564419057ba5f10be7cb921ac7ca7d1753855 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 25 Jan 2026 12:30:49 +0000 Subject: [PATCH 20/77] Bump jsonwebtoken in /backend in the prod-patch-updates group Bumps the prod-patch-updates group in /backend with 1 update: [jsonwebtoken](https://github.com/auth0/node-jsonwebtoken). Updates `jsonwebtoken` from 9.0.2 to 9.0.3 - [Changelog](https://github.com/auth0/node-jsonwebtoken/blob/master/CHANGELOG.md) - [Commits](https://github.com/auth0/node-jsonwebtoken/compare/v9.0.2...v9.0.3) --- updated-dependencies: - dependency-name: jsonwebtoken dependency-version: 9.0.3 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: prod-patch-updates ... Signed-off-by: dependabot[bot] --- backend/package.json | 2 +- backend/yarn.lock | 28 ++++++++++++++-------------- 2 files changed, 15 insertions(+), 15 deletions(-) diff --git a/backend/package.json b/backend/package.json index 8a01c3d0..6989dd20 100644 --- a/backend/package.json +++ b/backend/package.json @@ -22,7 +22,7 @@ "express": "^4.22.0", "express-fileupload": "^1.5.2", "gravatar": "^1.8.2", - "jsonwebtoken": "^9.0.2", + "jsonwebtoken": "^9.0.3", "knex": "2.4.2", "liquidjs": "10.6.1", "lodash": "^4.17.23", diff --git a/backend/yarn.lock b/backend/yarn.lock index b9f76bd9..7b60c522 100644 --- a/backend/yarn.lock +++ b/backend/yarn.lock @@ -1472,12 +1472,12 @@ json-schema-traverse@^1.0.0: resolved "https://registry.yarnpkg.com/json-schema-traverse/-/json-schema-traverse-1.0.0.tgz#ae7bcb3656ab77a73ba5c49bf654f38e6b6860e2" integrity sha512-NM8/P9n3XjXhIZn1lLhkFaACTOURQXjWhV4BA/RnOv8xvgqtqpAX9IO4mRQxSx1Rlo4tqzeqb0sOlruaOy3dug== -jsonwebtoken@^9.0.2: - version "9.0.2" - resolved "https://registry.yarnpkg.com/jsonwebtoken/-/jsonwebtoken-9.0.2.tgz#65ff91f4abef1784697d40952bb1998c504caaf3" - integrity sha512-PRp66vJ865SSqOlgqS8hujT5U4AOgMfhrwYIuIhfKaoSCZcirrmASQr8CX7cUg+RMih+hgznrjp99o+W4pJLHQ== +jsonwebtoken@^9.0.3: + version "9.0.3" + resolved "https://registry.yarnpkg.com/jsonwebtoken/-/jsonwebtoken-9.0.3.tgz#6cd57ab01e9b0ac07cb847d53d3c9b6ee31f7ae2" + integrity sha512-MT/xP0CrubFRNLNKvxJ2BYfy53Zkm++5bX9dtuPbqAeQpTVe0MQTFhao8+Cp//EmJp244xt6Drw/GVEGCUj40g== dependencies: - jws "^3.2.2" + jws "^4.0.1" lodash.includes "^4.3.0" lodash.isboolean "^3.0.3" lodash.isinteger "^4.0.4" @@ -1488,21 +1488,21 @@ jsonwebtoken@^9.0.2: ms "^2.1.1" semver "^7.5.4" -jwa@^1.4.2: - version "1.4.2" - resolved "https://registry.yarnpkg.com/jwa/-/jwa-1.4.2.tgz#16011ac6db48de7b102777e57897901520eec7b9" - integrity sha512-eeH5JO+21J78qMvTIDdBXidBd6nG2kZjg5Ohz/1fpa28Z4CcsWUzJ1ZZyFq/3z3N17aZy+ZuBoHljASbL1WfOw== +jwa@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/jwa/-/jwa-2.0.1.tgz#bf8176d1ad0cd72e0f3f58338595a13e110bc804" + integrity sha512-hRF04fqJIP8Abbkq5NKGN0Bbr3JxlQ+qhZufXVr0DvujKy93ZCbXZMHDL4EOtodSbCWxOqR8MS1tXA5hwqCXDg== dependencies: buffer-equal-constant-time "^1.0.1" ecdsa-sig-formatter "1.0.11" safe-buffer "^5.0.1" -jws@^3.2.2: - version "3.2.3" - resolved "https://registry.yarnpkg.com/jws/-/jws-3.2.3.tgz#5ac0690b460900a27265de24520526853c0b8ca1" - integrity sha512-byiJ0FLRdLdSVSReO/U4E7RoEyOCKnEnEPMjq3HxWtvzLsV08/i5RQKsFVNkCldrCaPr2vDNAOMsfs8T/Hze7g== +jws@^4.0.1: + version "4.0.1" + resolved "https://registry.yarnpkg.com/jws/-/jws-4.0.1.tgz#07edc1be8fac20e677b283ece261498bd38f0690" + integrity sha512-EKI/M/yqPncGUUh44xz0PxSidXFr/+r0pA70+gIYhjv+et7yxM+s29Y+VGDkovRofQem0fs7Uvf4+YmAdyRduA== dependencies: - jwa "^1.4.2" + jwa "^2.0.1" safe-buffer "^5.0.1" knex@2.4.2: From 5f19f7125ec84d4132938a86ea1ab847ae3a1888 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 25 Jan 2026 12:31:28 +0000 Subject: [PATCH 21/77] Bump nodemon from 2.0.22 to 3.1.11 in /backend Bumps [nodemon](https://github.com/remy/nodemon) from 2.0.22 to 3.1.11. - [Release notes](https://github.com/remy/nodemon/releases) - [Commits](https://github.com/remy/nodemon/compare/v2.0.22...v3.1.11) --- updated-dependencies: - dependency-name: nodemon dependency-version: 3.1.11 dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- backend/package.json | 2 +- backend/yarn.lock | 51 +++++++++++++++----------------------------- 2 files changed, 18 insertions(+), 35 deletions(-) diff --git a/backend/package.json b/backend/package.json index 8a01c3d0..f3a32d78 100644 --- a/backend/package.json +++ b/backend/package.json @@ -42,7 +42,7 @@ "@apidevtools/swagger-parser": "^10.1.0", "@biomejs/biome": "^2.3.2", "chalk": "4.1.2", - "nodemon": "^2.0.2" + "nodemon": "^3.1.11" }, "signale": { "displayDate": true, diff --git a/backend/yarn.lock b/backend/yarn.lock index b9f76bd9..04ccf483 100644 --- a/backend/yarn.lock +++ b/backend/yarn.lock @@ -744,7 +744,7 @@ debug@2.6.9: dependencies: ms "2.0.0" -debug@4, debug@^4.3.3, debug@^4.3.4: +debug@4, debug@^4, debug@^4.3.3, debug@^4.3.4: version "4.4.3" resolved "https://registry.yarnpkg.com/debug/-/debug-4.4.3.tgz#c6ae432d9bd9662582fce08709b038c58e9e3d6a" integrity sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA== @@ -758,13 +758,6 @@ debug@4.3.4: dependencies: ms "2.1.2" -debug@^3.2.7: - version "3.2.7" - resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.7.tgz#72580b7e9145fb39b6676f9c5e5fb100b934179a" - integrity sha512-CFjzYYAi4ThfiQvizrFQevTTXHtnCqWfe7x1AhgEscTz6ZbLbfoLRLPugTQyBth6f8ZERVUSyWHFD/7Wu4t1XQ== - dependencies: - ms "^2.1.1" - decamelize@^1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/decamelize/-/decamelize-1.2.0.tgz#f6534d15148269b20352e7bee26f501f9a191290" @@ -1919,18 +1912,18 @@ node-rsa@^1.1.1: dependencies: asn1 "^0.2.4" -nodemon@^2.0.2: - version "2.0.22" - resolved "https://registry.yarnpkg.com/nodemon/-/nodemon-2.0.22.tgz#182c45c3a78da486f673d6c1702e00728daf5258" - integrity sha512-B8YqaKMmyuCO7BowF1Z1/mkPqLk6cs/l63Ojtd6otKjMx47Dq1utxfRxcavH1I7VSaL8n5BUaoutadnsX3AAVQ== +nodemon@^3.1.11: + version "3.1.11" + resolved "https://registry.yarnpkg.com/nodemon/-/nodemon-3.1.11.tgz#04a54d1e794fbec9d8f6ffd8bf1ba9ea93a756ed" + integrity sha512-is96t8F/1//UHAjNPHpbsNY46ELPpftGUoSVNXwUfMk/qdjSylYrWSu1XavVTBOn526kFiOR733ATgNBCQyH0g== dependencies: chokidar "^3.5.2" - debug "^3.2.7" + debug "^4" ignore-by-default "^1.0.1" minimatch "^3.1.2" pstree.remy "^1.1.8" - semver "^5.7.1" - simple-update-notifier "^1.0.7" + semver "^7.5.3" + simple-update-notifier "^2.0.0" supports-color "^5.5.0" touch "^3.1.0" undefsafe "^2.0.5" @@ -2444,25 +2437,15 @@ safe-buffer@~5.1.0, safe-buffer@~5.1.1: resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== -semver@^5.7.1: - version "5.7.2" - resolved "https://registry.yarnpkg.com/semver/-/semver-5.7.2.tgz#48d55db737c3287cd4835e17fa13feace1c41ef8" - integrity sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g== - semver@^6.0.0: version "6.3.1" resolved "https://registry.yarnpkg.com/semver/-/semver-6.3.1.tgz#556d2ef8689146e46dcea4bfdd095f3434dffcb4" integrity sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA== -semver@^7.3.5, semver@^7.5.4: - version "7.7.2" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.7.2.tgz#67d99fdcd35cec21e6f8b87a7fd515a33f982b58" - integrity sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA== - -semver@~7.0.0: - version "7.0.0" - resolved "https://registry.yarnpkg.com/semver/-/semver-7.0.0.tgz#5f3ca35761e47e05b206c6daff2cf814f0316b8e" - integrity sha512-+GB6zVA9LWh6zovYQLALHwv5rb2PHGlJi3lfiqIHxR0uuwCgefcOJc59v9fv1w8GbStwxuuqqAjI9NMAOOgq1A== +semver@^7.3.5, semver@^7.5.3, semver@^7.5.4: + version "7.7.3" + resolved "https://registry.yarnpkg.com/semver/-/semver-7.7.3.tgz#4b5f4143d007633a8dc671cd0a6ef9147b8bb946" + integrity sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q== send@~0.19.0, send@~0.19.1: version "0.19.2" @@ -2576,12 +2559,12 @@ simple-get@^4.0.0: once "^1.3.1" simple-concat "^1.0.0" -simple-update-notifier@^1.0.7: - version "1.1.0" - resolved "https://registry.yarnpkg.com/simple-update-notifier/-/simple-update-notifier-1.1.0.tgz#67694c121de354af592b347cdba798463ed49c82" - integrity sha512-VpsrsJSUcJEseSbMHkrsrAVSdvVS5I96Qo1QAQ4FxQ9wXFcB+pjj7FB7/us9+GcgfW4ziHtYMc1J0PLczb55mg== +simple-update-notifier@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/simple-update-notifier/-/simple-update-notifier-2.0.0.tgz#d70b92bdab7d6d90dfd73931195a30b6e3d7cebb" + integrity sha512-a2B9Y0KlNXl9u/vsW6sTIu9vGEpfKu2wRV6l1H3XEas/0gUIzGzBoP/IouTcUQbm9JWZLH3COxyn03TYlFax6w== dependencies: - semver "~7.0.0" + semver "^7.5.3" smart-buffer@^4.2.0: version "4.2.0" From 03a82cd861fcda23af0888159e7ad007a08803dc Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 25 Jan 2026 12:31:34 +0000 Subject: [PATCH 22/77] Bump cypress from 14.5.4 to 15.9.0 in /test Bumps [cypress](https://github.com/cypress-io/cypress) from 14.5.4 to 15.9.0. - [Release notes](https://github.com/cypress-io/cypress/releases) - [Changelog](https://github.com/cypress-io/cypress/blob/develop/CHANGELOG.md) - [Commits](https://github.com/cypress-io/cypress/compare/v14.5.4...v15.9.0) --- updated-dependencies: - dependency-name: cypress dependency-version: 15.9.0 dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- test/package.json | 2 +- test/yarn.lock | 97 +++++++++++++++-------------------------------- 2 files changed, 32 insertions(+), 67 deletions(-) diff --git a/test/package.json b/test/package.json index 7e882e6d..c3686311 100644 --- a/test/package.json +++ b/test/package.json @@ -8,7 +8,7 @@ "@quobix/vacuum": "^0.19.4", "axios": "^1.13.1", "chalk": "^4.1.0", - "cypress": "^14.0.1", + "cypress": "^15.9.0", "cypress-multi-reporters": "^2.0.5", "cypress-wait-until": "^3.0.2", "eslint": "^9.39.0", diff --git a/test/yarn.lock b/test/yarn.lock index b3b1d3b2..e4439556 100644 --- a/test/yarn.lock +++ b/test/yarn.lock @@ -43,10 +43,10 @@ ajv-draft-04 "^1.0.0" call-me-maybe "^1.0.1" -"@cypress/request@^3.0.9": - version "3.0.9" - resolved "https://registry.yarnpkg.com/@cypress/request/-/request-3.0.9.tgz#8ed6e08fea0c62998b5552301023af7268f11625" - integrity sha512-I3l7FdGRXluAS44/0NguwWlO83J18p0vlr2FYHrJkWdNYhgVoiYo61IXPqaOsL+vNxU1ZqMACzItGK3/KKDsdw== +"@cypress/request@^3.0.10": + version "3.0.10" + resolved "https://registry.yarnpkg.com/@cypress/request/-/request-3.0.10.tgz#e09c695e8460a82acafe6cfaf089cf2ca06dc054" + integrity sha512-hauBrOdvu08vOsagkZ/Aju5XuiZx6ldsLfByg1htFeldhex+PeMrYauANzFsMJeAA0+dyPLbDoX2OYuvVoLDkQ== dependencies: aws-sign2 "~0.7.0" aws4 "^1.8.0" @@ -61,7 +61,7 @@ json-stringify-safe "~5.0.1" mime-types "~2.1.19" performance-now "^2.1.0" - qs "6.14.0" + qs "~6.14.1" safe-buffer "^5.1.2" tough-cookie "^5.0.0" tunnel-agent "^0.6.0" @@ -247,6 +247,11 @@ resolved "https://registry.yarnpkg.com/@types/sizzle/-/sizzle-2.3.2.tgz#a811b8c18e2babab7d542b3365887ae2e4d9de47" integrity sha512-7EJYyKTL7tFR8+gDbB6Wwz/arpGa0Mywk1TJbNzKzHtzbwVmY4HR9WqS5VV7dsBUKQmPNr192jHr/VpBluj/hg== +"@types/tmp@^0.2.3": + version "0.2.6" + resolved "https://registry.yarnpkg.com/@types/tmp/-/tmp-0.2.6.tgz#d785ee90c52d7cc020e249c948c36f7b32d1e217" + integrity sha512-chhaNf2oKHlRkDGt+tiKE2Z5aJ6qalm7Z9rlLdBwmOiAAf09YQvvoLXjWK4HWPF1xU/fqvMgfNfpVoBscA/tKA== + "@types/yauzl@^2.9.1": version "2.10.0" resolved "https://registry.yarnpkg.com/@types/yauzl/-/yauzl-2.10.0.tgz#b3248295276cf8c6f153ebe6a9aba0c988cb2599" @@ -400,11 +405,6 @@ astral-regex@^2.0.0: resolved "https://registry.yarnpkg.com/astral-regex/-/astral-regex-2.0.0.tgz#483143c567aeed4785759c0865786dc77d7d2e31" integrity sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ== -async@^3.2.0: - version "3.2.6" - resolved "https://registry.yarnpkg.com/async/-/async-3.2.6.tgz#1b0728e14929d51b85b449b7f06e27c1145e38ce" - integrity sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA== - asynckit@^0.4.0: version "0.4.0" resolved "https://registry.yarnpkg.com/asynckit/-/asynckit-0.4.0.tgz#c79ed97f7f34cb8f2ba1bc9790bcc366474b4b79" @@ -557,11 +557,6 @@ charenc@0.0.2: resolved "https://registry.yarnpkg.com/charenc/-/charenc-0.0.2.tgz#c0a1d2f3a7092e03774bfa83f14c0fc5790a8667" integrity sha512-yrLQ/yVUFXkzg7EDQsPieE/53+0RlaWTs+wBrvW36cyilJ2SaDWfl4Yj7MtLTXleV9uEKefbAGUPv2/iWSooRA== -check-more-types@^2.24.0: - version "2.24.0" - resolved "https://registry.yarnpkg.com/check-more-types/-/check-more-types-2.24.0.tgz#1420ffb10fd444dcfc79b43891bbfffd32a84600" - integrity sha512-Pj779qHxV2tuapviy1bSZNEL1maXr13bPYpsvSDB68HlYcYuhlDrmGd63i0JHMCLKzc7rUSNIrpdJlhVlNwrxA== - chokidar@^4.0.1: version "4.0.3" resolved "https://registry.yarnpkg.com/chokidar/-/chokidar-4.0.3.tgz#7be37a4c03c9aee1ecfe862a4a23b2c70c205d30" @@ -694,22 +689,22 @@ cypress-wait-until@^3.0.2: resolved "https://registry.yarnpkg.com/cypress-wait-until/-/cypress-wait-until-3.0.2.tgz#c90dddfa4c46a2c422f5b91d486531c560bae46e" integrity sha512-iemies796dD5CgjG5kV0MnpEmKSH+s7O83ZoJLVzuVbZmm4lheMsZqAVT73hlMx4QlkwhxbyUzhOBUOZwoOe0w== -cypress@^14.0.1: - version "14.5.4" - resolved "https://registry.yarnpkg.com/cypress/-/cypress-14.5.4.tgz#d821fbb6220c3328e7413acc7724b75319c9e64d" - integrity sha512-0Dhm4qc9VatOcI1GiFGVt8osgpPdqJLHzRwcAB5MSD/CAAts3oybvPUPawHyvJZUd8osADqZe/xzMsZ8sDTjXw== +cypress@^15.9.0: + version "15.9.0" + resolved "https://registry.yarnpkg.com/cypress/-/cypress-15.9.0.tgz#9bcbbfbf3923d8aca7d06990cb174d5ba67e4084" + integrity sha512-Ks6Bdilz3TtkLZtTQyqYaqtL/WT3X3APKaSLhTV96TmTyudzSjc6EJsJCHmBb7DxO+3R12q3Jkbjgm/iPgmwfg== dependencies: - "@cypress/request" "^3.0.9" + "@cypress/request" "^3.0.10" "@cypress/xvfb" "^1.2.4" "@types/sinonjs__fake-timers" "8.1.1" "@types/sizzle" "^2.3.2" + "@types/tmp" "^0.2.3" arch "^2.2.0" blob-util "^2.0.2" bluebird "^3.7.2" buffer "^5.7.1" cachedir "^2.3.0" chalk "^4.1.0" - check-more-types "^2.24.0" ci-info "^4.1.0" cli-cursor "^3.1.0" cli-table3 "0.6.1" @@ -724,10 +719,8 @@ cypress@^14.0.1: extract-zip "2.0.1" figures "^3.2.0" fs-extra "^9.1.0" - getos "^3.2.1" hasha "5.2.2" is-installed-globally "~0.4.0" - lazy-ass "^1.6.0" listr2 "^3.8.3" lodash "^4.17.21" log-symbols "^4.0.0" @@ -737,9 +730,9 @@ cypress@^14.0.1: process "^0.11.10" proxy-from-env "1.0.0" request-progress "^3.0.0" - semver "^7.7.1" supports-color "^8.1.1" - tmp "~0.2.3" + systeminformation "^5.27.14" + tmp "~0.2.4" tree-kill "1.2.2" untildify "^4.0.0" yauzl "^2.10.0" @@ -768,28 +761,7 @@ debug@^3.1.0: dependencies: ms "^2.1.1" -debug@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.1.1.tgz#3b72260255109c6b589cee050f1d516139664791" - integrity sha512-pYAIzeRo8J6KPEaJ0VWOh5Pzkbw/RetuzehGM7QRRX5he4fPHx2rdKMB256ehJCkX+XRQm16eZLqLNS8RSZXZw== - dependencies: - ms "^2.1.1" - -debug@^4.3.1, debug@^4.3.2, debug@^4.3.4: - version "4.3.4" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.4.tgz#1319f6579357f2338d3337d2cdd4914bb5dcc865" - integrity sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ== - dependencies: - ms "2.1.2" - -debug@^4.3.5: - version "4.3.7" - resolved "https://registry.yarnpkg.com/debug/-/debug-4.3.7.tgz#87945b4151a011d76d95a198d7111c865c360a52" - integrity sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ== - dependencies: - ms "^2.1.3" - -debug@^4.4.0: +debug@^4.1.1, debug@^4.3.1, debug@^4.3.2, debug@^4.3.4, debug@^4.3.5, debug@^4.4.0: version "4.4.1" resolved "https://registry.yarnpkg.com/debug/-/debug-4.4.1.tgz#e5a8bc6cbc4c6cd3e64308b0693a3d4fa550189b" integrity sha512-KcKCqiftBJcZr++7ykoDIEwSa3XWowTfNPo92BYxjXiyYEVrUQh2aLyhxBCwww+heortUFxEJYcRzosstTEBYQ== @@ -1285,13 +1257,6 @@ get-stream@^5.0.0, get-stream@^5.1.0: dependencies: pump "^3.0.0" -getos@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/getos/-/getos-3.2.1.tgz#0134d1f4e00eb46144c5a9c0ac4dc087cbb27dc5" - integrity sha512-U56CfOK17OKgTVqozZjUKNdkfEv6jk5WISBJ8SHoagjE6L69zOwl3Z+O8myjY9MEW3i2HPWQBt/LTbCgcC973Q== - dependencies: - async "^3.2.0" - getpass@^0.1.1: version "0.1.7" resolved "https://registry.yarnpkg.com/getpass/-/getpass-0.1.7.tgz#5eff8e3e684d569ae4cb2b1282604e8ba62149fa" @@ -1595,11 +1560,6 @@ keyv@^4.5.4: dependencies: json-buffer "3.0.1" -lazy-ass@^1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/lazy-ass/-/lazy-ass-1.6.0.tgz#7999655e8646c17f089fdd187d150d3324d54513" - integrity sha512-cc8oEVoctTvsFZ/Oje/kGnHbpWHYBe8IAJe4C0QNc3t8uM/0Y8+erSz/7Y1ALuXTEZTMvxXwO6YbX1ey3ujiZw== - levn@^0.4.1: version "0.4.1" resolved "https://registry.yarnpkg.com/levn/-/levn-0.4.1.tgz#ae4562c007473b932a6200d403268dd2fffc6ade" @@ -1803,7 +1763,7 @@ mocha@^11.7.4: yargs-parser "^21.1.1" yargs-unparser "^2.0.0" -ms@2.1.2, ms@^2.1.1: +ms@^2.1.1: version "2.1.2" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== @@ -2011,10 +1971,10 @@ punycode@^2.1.0: resolved "https://registry.yarnpkg.com/punycode/-/punycode-2.1.1.tgz#b58b010ac40c22c5657616c8d2c2c02c7bf479ec" integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A== -qs@6.14.0: - version "6.14.0" - resolved "https://registry.yarnpkg.com/qs/-/qs-6.14.0.tgz#c63fa40680d2c5c941412a0e899c89af60c0a930" - integrity sha512-YWWTjgABSKcvs/nWBi9PycY/JiPJqOD4JA6o9Sej2AtvSGarXxKC3OQSk4pAarbdQlKAh5D4FCQkJNkW+GAn3w== +qs@~6.14.1: + version "6.14.1" + resolved "https://registry.yarnpkg.com/qs/-/qs-6.14.1.tgz#a41d85b9d3902f31d27861790506294881871159" + integrity sha512-4EK3+xJl8Ts67nLYNwqw/dsFVnCf+qR7RgXSK9jEEm9unao3njwMDdmsdvoKBKHzxd7tCYz5e5M+SnMjdtXGQQ== dependencies: side-channel "^1.1.0" @@ -2087,7 +2047,7 @@ safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0: resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== -semver@^7.6.3, semver@^7.7.1: +semver@^7.6.3: version "7.7.2" resolved "https://registry.yarnpkg.com/semver/-/semver-7.7.2.tgz#67d99fdcd35cec21e6f8b87a7fd515a33f982b58" integrity sha512-RF0Fw+rO5AMf9MAyaRXI4AV0Ulj5lMHqVxxdSgiVbixSCXoEmmX/jk0CuJw4+3SqroYO9VoUh+HcuJivvtJemA== @@ -2299,6 +2259,11 @@ supports-color@^8.1.1: dependencies: has-flag "^4.0.0" +systeminformation@^5.27.14: + version "5.30.6" + resolved "https://registry.yarnpkg.com/systeminformation/-/systeminformation-5.30.6.tgz#c100cb632bbb955fc44ba033f624da22c3a6a5be" + integrity sha512-LEIyK1aEv5P3BhAPW3swdlIyCihxwEq/Gki+kcONieU4PIeRCSLDuGkk0Va/56PSBgjVgEksOM88dmY6YqOyfQ== + tar@^6.1.11: version "6.2.1" resolved "https://registry.yarnpkg.com/tar/-/tar-6.2.1.tgz#717549c541bc3c2af15751bea94b1dd068d4b03a" @@ -2333,7 +2298,7 @@ tldts@^6.1.32: dependencies: tldts-core "^6.1.86" -tmp@~0.2.3: +tmp@~0.2.4: version "0.2.5" resolved "https://registry.yarnpkg.com/tmp/-/tmp-0.2.5.tgz#b06bcd23f0f3c8357b426891726d16015abfd8f8" integrity sha512-voyz6MApa1rQGUxT3E+BK7/ROe8itEx7vD8/HEvt4xwXucvQ5G5oeEiHkmHZJuBO21RpOf+YYm9MOivj709jow== From 32cabc0f831c0d14b0be873579cc41741a7899d9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 25 Jan 2026 12:33:54 +0000 Subject: [PATCH 23/77] Bump vite-tsconfig-paths from 5.1.4 to 6.0.5 in /frontend Bumps [vite-tsconfig-paths](https://github.com/aleclarson/vite-tsconfig-paths) from 5.1.4 to 6.0.5. - [Release notes](https://github.com/aleclarson/vite-tsconfig-paths/releases) - [Commits](https://github.com/aleclarson/vite-tsconfig-paths/compare/v5.1.4...v6.0.5) --- updated-dependencies: - dependency-name: vite-tsconfig-paths dependency-version: 6.0.5 dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- frontend/package.json | 2 +- frontend/yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/frontend/package.json b/frontend/package.json index e0a36a17..57fcca12 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -60,7 +60,7 @@ "typescript": "5.9.3", "vite": "^7.1.12", "vite-plugin-checker": "^0.11.0", - "vite-tsconfig-paths": "^5.1.4", + "vite-tsconfig-paths": "^6.0.5", "vitest": "^4.0.6" } } diff --git a/frontend/yarn.lock b/frontend/yarn.lock index 800bbd72..56b885fb 100644 --- a/frontend/yarn.lock +++ b/frontend/yarn.lock @@ -2972,10 +2972,10 @@ vite-plugin-checker@^0.11.0: tinyglobby "^0.2.14" vscode-uri "^3.1.0" -vite-tsconfig-paths@^5.1.4: - version "5.1.4" - resolved "https://registry.npmjs.org/vite-tsconfig-paths/-/vite-tsconfig-paths-5.1.4.tgz" - integrity sha512-cYj0LRuLV2c2sMqhqhGpaO3LretdtMn/BVX4cPLanIZuwwrkVl+lK84E/miEXkCHWXuq65rhNN4rXsBcOB3S4w== +vite-tsconfig-paths@^6.0.5: + version "6.0.5" + resolved "https://registry.yarnpkg.com/vite-tsconfig-paths/-/vite-tsconfig-paths-6.0.5.tgz#5bcbb44d6ae0d12fe42f5915a6ad9846b0ed7805" + integrity sha512-f/WvY6ekHykUF1rWJUAbCU7iS/5QYDIugwpqJA+ttwKbxSbzNlqlE8vZSrsnxNQciUW+z6lvhlXMaEyZn9MSig== dependencies: debug "^4.1.1" globrex "^0.1.2" From 124737bbc6a1c79120710025d385ca7c136ec2ed Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 26 Jan 2026 21:19:32 +0000 Subject: [PATCH 24/77] Bump knex from 2.4.2 to 3.1.0 in /backend Bumps [knex](https://github.com/knex/knex) from 2.4.2 to 3.1.0. - [Release notes](https://github.com/knex/knex/releases) - [Changelog](https://github.com/knex/knex/blob/master/CHANGELOG.md) - [Commits](https://github.com/knex/knex/compare/2.4.2...3.1.0) --- updated-dependencies: - dependency-name: knex dependency-version: 3.1.0 dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- backend/package.json | 2 +- backend/yarn.lock | 25 ++++++++++--------------- 2 files changed, 11 insertions(+), 16 deletions(-) diff --git a/backend/package.json b/backend/package.json index d80018bc..3781f381 100644 --- a/backend/package.json +++ b/backend/package.json @@ -23,7 +23,7 @@ "express-fileupload": "^1.5.2", "gravatar": "^1.8.2", "jsonwebtoken": "^9.0.3", - "knex": "2.4.2", + "knex": "3.1.0", "liquidjs": "10.6.1", "lodash": "^4.17.23", "moment": "^2.30.1", diff --git a/backend/yarn.lock b/backend/yarn.lock index 65b0de53..5ff645a6 100644 --- a/backend/yarn.lock +++ b/backend/yarn.lock @@ -642,11 +642,6 @@ commander@^10.0.0: resolved "https://registry.yarnpkg.com/commander/-/commander-10.0.1.tgz#881ee46b4f77d1c1dccc5823433aa39b022cbe06" integrity sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug== -commander@^9.1.0: - version "9.5.0" - resolved "https://registry.yarnpkg.com/commander/-/commander-9.5.0.tgz#bc08d1eb5cedf7ccb797a96199d41c7bc3e60d30" - integrity sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ== - compress-commons@^4.1.2: version "4.1.2" resolved "https://registry.yarnpkg.com/compress-commons/-/compress-commons-4.1.2.tgz#6542e59cb63e1f46a8b21b0e06f9a32e4c8b06df" @@ -1498,13 +1493,13 @@ jws@^4.0.1: jwa "^2.0.1" safe-buffer "^5.0.1" -knex@2.4.2: - version "2.4.2" - resolved "https://registry.yarnpkg.com/knex/-/knex-2.4.2.tgz#a34a289d38406dc19a0447a78eeaf2d16ebedd61" - integrity sha512-tMI1M7a+xwHhPxjbl/H9K1kHX+VncEYcvCx5K00M16bWvpYPKAZd6QrCu68PtHAdIZNQPWZn0GVhqVBEthGWCg== +knex@3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/knex/-/knex-3.1.0.tgz#b6ddd5b5ad26a6315234a5b09ec38dc4a370bd8c" + integrity sha512-GLoII6hR0c4ti243gMs5/1Rb3B+AjwMOfjYm97pu0FOQa7JH56hgBxYf5WK2525ceSbBY1cjeZ9yk99GPMB6Kw== dependencies: colorette "2.0.19" - commander "^9.1.0" + commander "^10.0.0" debug "4.3.4" escalade "^3.1.1" esm "^3.2.25" @@ -1512,7 +1507,7 @@ knex@2.4.2: getopts "2.3.0" interpret "^2.2.0" lodash "^4.17.21" - pg-connection-string "2.5.0" + pg-connection-string "2.6.2" rechoir "^0.8.0" resolve-from "^5.0.0" tarn "^3.0.2" @@ -2124,10 +2119,10 @@ pg-cloudflare@^1.2.7: resolved "https://registry.yarnpkg.com/pg-cloudflare/-/pg-cloudflare-1.2.7.tgz#a1f3d226bab2c45ae75ea54d65ec05ac6cfafbef" integrity sha512-YgCtzMH0ptvZJslLM1ffsY4EuGaU0cx4XSdXLRFae8bPP4dS5xL1tNB3k2o/N64cHJpwU7dxKli/nZ2lUa5fLg== -pg-connection-string@2.5.0: - version "2.5.0" - resolved "https://registry.yarnpkg.com/pg-connection-string/-/pg-connection-string-2.5.0.tgz#538cadd0f7e603fc09a12590f3b8a452c2c0cf34" - integrity sha512-r5o/V/ORTA6TmUnyWZR9nCj1klXCO2CEKNRlVuJptZe85QuhFayC7WeMic7ndayT5IRIR0S0xFxFi2ousartlQ== +pg-connection-string@2.6.2: + version "2.6.2" + resolved "https://registry.yarnpkg.com/pg-connection-string/-/pg-connection-string-2.6.2.tgz#713d82053de4e2bd166fab70cd4f26ad36aab475" + integrity sha512-ch6OwaeaPYcova4kKZ15sbJ2hKb/VP48ZD2gE7i1J+L4MspCtBMAx8nMgz7bksc7IojCIIWuEhHibSMFH8m8oA== pg-connection-string@^2.9.1: version "2.9.1" From 2d774124dcd55515ea7e4beced9594c9f24bf98a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 26 Jan 2026 21:21:07 +0000 Subject: [PATCH 25/77] Bump the dev-minor-updates group in /frontend with 6 updates Bumps the dev-minor-updates group in /frontend with 6 updates: | Package | From | To | | --- | --- | --- | | [@formatjs/cli](https://github.com/formatjs/formatjs) | `6.7.4` | `6.12.0` | | [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) | `5.90.2` | `5.91.2` | | [happy-dom](https://github.com/capricorn86/happy-dom) | `20.0.10` | `20.3.7` | | [sass](https://github.com/sass/dart-sass) | `1.93.3` | `1.97.3` | | [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `7.1.12` | `7.3.1` | | [vite-plugin-checker](https://github.com/fi3ework/vite-plugin-checker) | `0.11.0` | `0.12.0` | Updates `@formatjs/cli` from 6.7.4 to 6.12.0 - [Release notes](https://github.com/formatjs/formatjs/releases) - [Commits](https://github.com/formatjs/formatjs/compare/@formatjs/cli@6.7.4...@formatjs/cli@6.12.0) Updates `@tanstack/react-query-devtools` from 5.90.2 to 5.91.2 - [Release notes](https://github.com/TanStack/query/releases) - [Changelog](https://github.com/TanStack/query/blob/main/packages/react-query-devtools/CHANGELOG.md) - [Commits](https://github.com/TanStack/query/commits/@tanstack/react-query-devtools@5.91.2/packages/react-query-devtools) Updates `happy-dom` from 20.0.10 to 20.3.7 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v20.0.10...v20.3.7) Updates `sass` from 1.93.3 to 1.97.3 - [Release notes](https://github.com/sass/dart-sass/releases) - [Changelog](https://github.com/sass/dart-sass/blob/main/CHANGELOG.md) - [Commits](https://github.com/sass/dart-sass/compare/1.93.3...1.97.3) Updates `vite` from 7.1.12 to 7.3.1 - [Release notes](https://github.com/vitejs/vite/releases) - [Changelog](https://github.com/vitejs/vite/blob/v7.3.1/packages/vite/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite/commits/v7.3.1/packages/vite) Updates `vite-plugin-checker` from 0.11.0 to 0.12.0 - [Release notes](https://github.com/fi3ework/vite-plugin-checker/releases) - [Commits](https://github.com/fi3ework/vite-plugin-checker/compare/vite-plugin-checker@0.11.0...vite-plugin-checker@0.12.0) --- updated-dependencies: - dependency-name: "@formatjs/cli" dependency-version: 6.12.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dev-minor-updates - dependency-name: "@tanstack/react-query-devtools" dependency-version: 5.91.2 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dev-minor-updates - dependency-name: happy-dom dependency-version: 20.3.7 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dev-minor-updates - dependency-name: sass dependency-version: 1.97.3 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dev-minor-updates - dependency-name: vite dependency-version: 7.3.1 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dev-minor-updates - dependency-name: vite-plugin-checker dependency-version: 0.12.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dev-minor-updates ... Signed-off-by: dependabot[bot] --- frontend/package.json | 12 +- frontend/yarn.lock | 372 ++++++++++++++++++++++-------------------- 2 files changed, 202 insertions(+), 182 deletions(-) diff --git a/frontend/package.json b/frontend/package.json index 57fcca12..f296c827 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -41,8 +41,8 @@ }, "devDependencies": { "@biomejs/biome": "^2.3.2", - "@formatjs/cli": "^6.7.4", - "@tanstack/react-query-devtools": "^5.90.2", + "@formatjs/cli": "^6.12.0", + "@tanstack/react-query-devtools": "^5.91.2", "@testing-library/dom": "^10.4.1", "@testing-library/jest-dom": "^6.9.1", "@testing-library/react": "^16.3.0", @@ -52,14 +52,14 @@ "@types/react-dom": "^19.2.3", "@types/react-table": "^7.7.20", "@vitejs/plugin-react": "^5.1.2", - "happy-dom": "^20.0.10", + "happy-dom": "^20.3.9", "postcss": "^8.5.6", "postcss-simple-vars": "^7.0.1", - "sass": "^1.93.3", + "sass": "^1.97.3", "tmp": "^0.2.5", "typescript": "5.9.3", - "vite": "^7.1.12", - "vite-plugin-checker": "^0.11.0", + "vite": "^7.3.1", + "vite-plugin-checker": "^0.12.0", "vite-tsconfig-paths": "^6.0.5", "vitest": "^4.0.6" } diff --git a/frontend/yarn.lock b/frontend/yarn.lock index 56b885fb..cc4b9a23 100644 --- a/frontend/yarn.lock +++ b/frontend/yarn.lock @@ -312,135 +312,135 @@ resolved "https://registry.npmjs.org/@emotion/weak-memoize/-/weak-memoize-0.4.0.tgz" integrity sha512-snKqtPW01tN0ui7yu9rGv69aJXr/a/Ywvl11sUjNtEcRc+ng/mQriFL0wLXMef74iHa/EkftbDzU9F8iFbH+zg== -"@esbuild/aix-ppc64@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/aix-ppc64/-/aix-ppc64-0.25.9.tgz#bef96351f16520055c947aba28802eede3c9e9a9" - integrity sha512-OaGtL73Jck6pBKjNIe24BnFE6agGl+6KxDtTfHhy1HmhthfKouEcOhqpSL64K4/0WCtbKFLOdzD/44cJ4k9opA== +"@esbuild/aix-ppc64@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/aix-ppc64/-/aix-ppc64-0.27.2.tgz#521cbd968dcf362094034947f76fa1b18d2d403c" + integrity sha512-GZMB+a0mOMZs4MpDbj8RJp4cw+w1WV5NYD6xzgvzUJ5Ek2jerwfO2eADyI6ExDSUED+1X8aMbegahsJi+8mgpw== -"@esbuild/android-arm64@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.25.9.tgz#d2e70be7d51a529425422091e0dcb90374c1546c" - integrity sha512-IDrddSmpSv51ftWslJMvl3Q2ZT98fUSL2/rlUXuVqRXHCs5EUF1/f+jbjF5+NG9UffUDMCiTyh8iec7u8RlTLg== +"@esbuild/android-arm64@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/android-arm64/-/android-arm64-0.27.2.tgz#61ea550962d8aa12a9b33194394e007657a6df57" + integrity sha512-pvz8ZZ7ot/RBphf8fv60ljmaoydPU12VuXHImtAs0XhLLw+EXBi2BLe3OYSBslR4rryHvweW5gmkKFwTiFy6KA== -"@esbuild/android-arm@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.25.9.tgz#d2a753fe2a4c73b79437d0ba1480e2d760097419" - integrity sha512-5WNI1DaMtxQ7t7B6xa572XMXpHAaI/9Hnhk8lcxF4zVN4xstUgTlvuGDorBguKEnZO70qwEcLpfifMLoxiPqHQ== +"@esbuild/android-arm@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/android-arm/-/android-arm-0.27.2.tgz#554887821e009dd6d853f972fde6c5143f1de142" + integrity sha512-DVNI8jlPa7Ujbr1yjU2PfUSRtAUZPG9I1RwW4F4xFB1Imiu2on0ADiI/c3td+KmDtVKNbi+nffGDQMfcIMkwIA== -"@esbuild/android-x64@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.25.9.tgz#5278836e3c7ae75761626962f902a0d55352e683" - integrity sha512-I853iMZ1hWZdNllhVZKm34f4wErd4lMyeV7BLzEExGEIZYsOzqDWDf+y082izYUE8gtJnYHdeDpN/6tUdwvfiw== +"@esbuild/android-x64@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/android-x64/-/android-x64-0.27.2.tgz#a7ce9d0721825fc578f9292a76d9e53334480ba2" + integrity sha512-z8Ank4Byh4TJJOh4wpz8g2vDy75zFL0TlZlkUkEwYXuPSgX8yzep596n6mT7905kA9uHZsf/o2OJZubl2l3M7A== -"@esbuild/darwin-arm64@0.25.9": - version "0.25.9" - resolved "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.25.9.tgz" - integrity sha512-XIpIDMAjOELi/9PB30vEbVMs3GV1v2zkkPnuyRRURbhqjyzIINwj+nbQATh4H9GxUgH1kFsEyQMxwiLFKUS6Rg== +"@esbuild/darwin-arm64@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/darwin-arm64/-/darwin-arm64-0.27.2.tgz#2cb7659bd5d109803c593cfc414450d5430c8256" + integrity sha512-davCD2Zc80nzDVRwXTcQP/28fiJbcOwvdolL0sOiOsbwBa72kegmVU0Wrh1MYrbuCL98Omp5dVhQFWRKR2ZAlg== -"@esbuild/darwin-x64@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.25.9.tgz#e27dbc3b507b3a1cea3b9280a04b8b6b725f82be" - integrity sha512-jhHfBzjYTA1IQu8VyrjCX4ApJDnH+ez+IYVEoJHeqJm9VhG9Dh2BYaJritkYK3vMaXrf7Ogr/0MQ8/MeIefsPQ== +"@esbuild/darwin-x64@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/darwin-x64/-/darwin-x64-0.27.2.tgz#e741fa6b1abb0cd0364126ba34ca17fd5e7bf509" + integrity sha512-ZxtijOmlQCBWGwbVmwOF/UCzuGIbUkqB1faQRf5akQmxRJ1ujusWsb3CVfk/9iZKr2L5SMU5wPBi1UWbvL+VQA== -"@esbuild/freebsd-arm64@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.25.9.tgz#364e3e5b7a1fd45d92be08c6cc5d890ca75908ca" - integrity sha512-z93DmbnY6fX9+KdD4Ue/H6sYs+bhFQJNCPZsi4XWJoYblUqT06MQUdBCpcSfuiN72AbqeBFu5LVQTjfXDE2A6Q== +"@esbuild/freebsd-arm64@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/freebsd-arm64/-/freebsd-arm64-0.27.2.tgz#2b64e7116865ca172d4ce034114c21f3c93e397c" + integrity sha512-lS/9CN+rgqQ9czogxlMcBMGd+l8Q3Nj1MFQwBZJyoEKI50XGxwuzznYdwcav6lpOGv5BqaZXqvBSiB/kJ5op+g== -"@esbuild/freebsd-x64@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.25.9.tgz#7c869b45faeb3df668e19ace07335a0711ec56ab" - integrity sha512-mrKX6H/vOyo5v71YfXWJxLVxgy1kyt1MQaD8wZJgJfG4gq4DpQGpgTB74e5yBeQdyMTbgxp0YtNj7NuHN0PoZg== +"@esbuild/freebsd-x64@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/freebsd-x64/-/freebsd-x64-0.27.2.tgz#e5252551e66f499e4934efb611812f3820e990bb" + integrity sha512-tAfqtNYb4YgPnJlEFu4c212HYjQWSO/w/h/lQaBK7RbwGIkBOuNKQI9tqWzx7Wtp7bTPaGC6MJvWI608P3wXYA== -"@esbuild/linux-arm64@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.25.9.tgz#48d42861758c940b61abea43ba9a29b186d6cb8b" - integrity sha512-BlB7bIcLT3G26urh5Dmse7fiLmLXnRlopw4s8DalgZ8ef79Jj4aUcYbk90g8iCa2467HX8SAIidbL7gsqXHdRw== +"@esbuild/linux-arm64@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/linux-arm64/-/linux-arm64-0.27.2.tgz#dc4acf235531cd6984f5d6c3b13dbfb7ddb303cb" + integrity sha512-hYxN8pr66NsCCiRFkHUAsxylNOcAQaxSSkHMMjcpx0si13t1LHFphxJZUiGwojB1a/Hd5OiPIqDdXONia6bhTw== -"@esbuild/linux-arm@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.25.9.tgz#6ce4b9cabf148274101701d112b89dc67cc52f37" - integrity sha512-HBU2Xv78SMgaydBmdor38lg8YDnFKSARg1Q6AT0/y2ezUAKiZvc211RDFHlEZRFNRVhcMamiToo7bDx3VEOYQw== +"@esbuild/linux-arm@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/linux-arm/-/linux-arm-0.27.2.tgz#56a900e39240d7d5d1d273bc053daa295c92e322" + integrity sha512-vWfq4GaIMP9AIe4yj1ZUW18RDhx6EPQKjwe7n8BbIecFtCQG4CfHGaHuh7fdfq+y3LIA2vGS/o9ZBGVxIDi9hw== -"@esbuild/linux-ia32@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.25.9.tgz#207e54899b79cac9c26c323fc1caa32e3143f1c4" - integrity sha512-e7S3MOJPZGp2QW6AK6+Ly81rC7oOSerQ+P8L0ta4FhVi+/j/v2yZzx5CqqDaWjtPFfYz21Vi1S0auHrap3Ma3A== +"@esbuild/linux-ia32@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/linux-ia32/-/linux-ia32-0.27.2.tgz#d4a36d473360f6870efcd19d52bbfff59a2ed1cc" + integrity sha512-MJt5BRRSScPDwG2hLelYhAAKh9imjHK5+NE/tvnRLbIqUWa+0E9N4WNMjmp/kXXPHZGqPLxggwVhz7QP8CTR8w== -"@esbuild/linux-loong64@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.25.9.tgz#0ba48a127159a8f6abb5827f21198b999ffd1fc0" - integrity sha512-Sbe10Bnn0oUAB2AalYztvGcK+o6YFFA/9829PhOCUS9vkJElXGdphz0A3DbMdP8gmKkqPmPcMJmJOrI3VYB1JQ== +"@esbuild/linux-loong64@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/linux-loong64/-/linux-loong64-0.27.2.tgz#fcf0ab8c3eaaf45891d0195d4961cb18b579716a" + integrity sha512-lugyF1atnAT463aO6KPshVCJK5NgRnU4yb3FUumyVz+cGvZbontBgzeGFO1nF+dPueHD367a2ZXe1NtUkAjOtg== -"@esbuild/linux-mips64el@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.25.9.tgz#a4d4cc693d185f66a6afde94f772b38ce5d64eb5" - integrity sha512-YcM5br0mVyZw2jcQeLIkhWtKPeVfAerES5PvOzaDxVtIyZ2NUBZKNLjC5z3/fUlDgT6w89VsxP2qzNipOaaDyA== +"@esbuild/linux-mips64el@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/linux-mips64el/-/linux-mips64el-0.27.2.tgz#598b67d34048bb7ee1901cb12e2a0a434c381c10" + integrity sha512-nlP2I6ArEBewvJ2gjrrkESEZkB5mIoaTswuqNFRv/WYd+ATtUpe9Y09RnJvgvdag7he0OWgEZWhviS1OTOKixw== -"@esbuild/linux-ppc64@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.25.9.tgz#0f5805c1c6d6435a1dafdc043cb07a19050357db" - integrity sha512-++0HQvasdo20JytyDpFvQtNrEsAgNG2CY1CLMwGXfFTKGBGQT3bOeLSYE2l1fYdvML5KUuwn9Z8L1EWe2tzs1w== +"@esbuild/linux-ppc64@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/linux-ppc64/-/linux-ppc64-0.27.2.tgz#3846c5df6b2016dab9bc95dde26c40f11e43b4c0" + integrity sha512-C92gnpey7tUQONqg1n6dKVbx3vphKtTHJaNG2Ok9lGwbZil6DrfyecMsp9CrmXGQJmZ7iiVXvvZH6Ml5hL6XdQ== -"@esbuild/linux-riscv64@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.25.9.tgz#6776edece0f8fca79f3386398b5183ff2a827547" - integrity sha512-uNIBa279Y3fkjV+2cUjx36xkx7eSjb8IvnL01eXUKXez/CBHNRw5ekCGMPM0BcmqBxBcdgUWuUXmVWwm4CH9kg== +"@esbuild/linux-riscv64@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/linux-riscv64/-/linux-riscv64-0.27.2.tgz#173d4475b37c8d2c3e1707e068c174bb3f53d07d" + integrity sha512-B5BOmojNtUyN8AXlK0QJyvjEZkWwy/FKvakkTDCziX95AowLZKR6aCDhG7LeF7uMCXEJqwa8Bejz5LTPYm8AvA== -"@esbuild/linux-s390x@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.25.9.tgz#3f6f29ef036938447c2218d309dc875225861830" - integrity sha512-Mfiphvp3MjC/lctb+7D287Xw1DGzqJPb/J2aHHcHxflUo+8tmN/6d4k6I2yFR7BVo5/g7x2Monq4+Yew0EHRIA== +"@esbuild/linux-s390x@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/linux-s390x/-/linux-s390x-0.27.2.tgz#f7a4790105edcab8a5a31df26fbfac1aa3dacfab" + integrity sha512-p4bm9+wsPwup5Z8f4EpfN63qNagQ47Ua2znaqGH6bqLlmJ4bx97Y9JdqxgGZ6Y8xVTixUnEkoKSHcpRlDnNr5w== -"@esbuild/linux-x64@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/linux-x64/-/linux-x64-0.25.9.tgz#831fe0b0e1a80a8b8391224ea2377d5520e1527f" - integrity sha512-iSwByxzRe48YVkmpbgoxVzn76BXjlYFXC7NvLYq+b+kDjyyk30J0JY47DIn8z1MO3K0oSl9fZoRmZPQI4Hklzg== +"@esbuild/linux-x64@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/linux-x64/-/linux-x64-0.27.2.tgz#2ecc1284b1904aeb41e54c9ddc7fcd349b18f650" + integrity sha512-uwp2Tip5aPmH+NRUwTcfLb+W32WXjpFejTIOWZFw/v7/KnpCDKG66u4DLcurQpiYTiYwQ9B7KOeMJvLCu/OvbA== -"@esbuild/netbsd-arm64@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/netbsd-arm64/-/netbsd-arm64-0.25.9.tgz#06f99d7eebe035fbbe43de01c9d7e98d2a0aa548" - integrity sha512-9jNJl6FqaUG+COdQMjSCGW4QiMHH88xWbvZ+kRVblZsWrkXlABuGdFJ1E9L7HK+T0Yqd4akKNa/lO0+jDxQD4Q== +"@esbuild/netbsd-arm64@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/netbsd-arm64/-/netbsd-arm64-0.27.2.tgz#e2863c2cd1501845995cb11adf26f7fe4be527b0" + integrity sha512-Kj6DiBlwXrPsCRDeRvGAUb/LNrBASrfqAIok+xB0LxK8CHqxZ037viF13ugfsIpePH93mX7xfJp97cyDuTZ3cw== -"@esbuild/netbsd-x64@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.25.9.tgz#db99858e6bed6e73911f92a88e4edd3a8c429a52" - integrity sha512-RLLdkflmqRG8KanPGOU7Rpg829ZHu8nFy5Pqdi9U01VYtG9Y0zOG6Vr2z4/S+/3zIyOxiK6cCeYNWOFR9QP87g== +"@esbuild/netbsd-x64@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/netbsd-x64/-/netbsd-x64-0.27.2.tgz#93f7609e2885d1c0b5a1417885fba8d1fcc41272" + integrity sha512-HwGDZ0VLVBY3Y+Nw0JexZy9o/nUAWq9MlV7cahpaXKW6TOzfVno3y3/M8Ga8u8Yr7GldLOov27xiCnqRZf0tCA== -"@esbuild/openbsd-arm64@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/openbsd-arm64/-/openbsd-arm64-0.25.9.tgz#afb886c867e36f9d86bb21e878e1185f5d5a0935" - integrity sha512-YaFBlPGeDasft5IIM+CQAhJAqS3St3nJzDEgsgFixcfZeyGPCd6eJBWzke5piZuZ7CtL656eOSYKk4Ls2C0FRQ== +"@esbuild/openbsd-arm64@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/openbsd-arm64/-/openbsd-arm64-0.27.2.tgz#a1985604a203cdc325fd47542e106fafd698f02e" + integrity sha512-DNIHH2BPQ5551A7oSHD0CKbwIA/Ox7+78/AWkbS5QoRzaqlev2uFayfSxq68EkonB+IKjiuxBFoV8ESJy8bOHA== -"@esbuild/openbsd-x64@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.25.9.tgz#30855c9f8381fac6a0ef5b5f31ac6e7108a66ecf" - integrity sha512-1MkgTCuvMGWuqVtAvkpkXFmtL8XhWy+j4jaSO2wxfJtilVCi0ZE37b8uOdMItIHz4I6z1bWWtEX4CJwcKYLcuA== +"@esbuild/openbsd-x64@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/openbsd-x64/-/openbsd-x64-0.27.2.tgz#8209e46c42f1ffbe6e4ef77a32e1f47d404ad42a" + integrity sha512-/it7w9Nb7+0KFIzjalNJVR5bOzA9Vay+yIPLVHfIQYG/j+j9VTH84aNB8ExGKPU4AzfaEvN9/V4HV+F+vo8OEg== -"@esbuild/openharmony-arm64@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/openharmony-arm64/-/openharmony-arm64-0.25.9.tgz#2f2144af31e67adc2a8e3705c20c2bd97bd88314" - integrity sha512-4Xd0xNiMVXKh6Fa7HEJQbrpP3m3DDn43jKxMjxLLRjWnRsfxjORYJlXPO4JNcXtOyfajXorRKY9NkOpTHptErg== +"@esbuild/openharmony-arm64@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/openharmony-arm64/-/openharmony-arm64-0.27.2.tgz#8fade4441893d9cc44cbd7dcf3776f508ab6fb2f" + integrity sha512-LRBbCmiU51IXfeXk59csuX/aSaToeG7w48nMwA6049Y4J4+VbWALAuXcs+qcD04rHDuSCSRKdmY63sruDS5qag== -"@esbuild/sunos-x64@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.25.9.tgz#69b99a9b5bd226c9eb9c6a73f990fddd497d732e" - integrity sha512-WjH4s6hzo00nNezhp3wFIAfmGZ8U7KtrJNlFMRKxiI9mxEK1scOMAaa9i4crUtu+tBr+0IN6JCuAcSBJZfnphw== +"@esbuild/sunos-x64@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/sunos-x64/-/sunos-x64-0.27.2.tgz#980d4b9703a16f0f07016632424fc6d9a789dfc2" + integrity sha512-kMtx1yqJHTmqaqHPAzKCAkDaKsffmXkPHThSfRwZGyuqyIeBvf08KSsYXl+abf5HDAPMJIPnbBfXvP2ZC2TfHg== -"@esbuild/win32-arm64@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.25.9.tgz#d789330a712af916c88325f4ffe465f885719c6b" - integrity sha512-mGFrVJHmZiRqmP8xFOc6b84/7xa5y5YvR1x8djzXpJBSv/UsNK6aqec+6JDjConTgvvQefdGhFDAs2DLAds6gQ== +"@esbuild/win32-arm64@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/win32-arm64/-/win32-arm64-0.27.2.tgz#1c09a3633c949ead3d808ba37276883e71f6111a" + integrity sha512-Yaf78O/B3Kkh+nKABUF++bvJv5Ijoy9AN1ww904rOXZFLWVc5OLOfL56W+C8F9xn5JQZa3UX6m+IktJnIb1Jjg== -"@esbuild/win32-ia32@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.25.9.tgz#52fc735406bd49688253e74e4e837ac2ba0789e3" - integrity sha512-b33gLVU2k11nVx1OhX3C8QQP6UHQK4ZtN56oFWvVXvz2VkDoe6fbG8TOgHFxEvqeqohmRnIHe5A1+HADk4OQww== +"@esbuild/win32-ia32@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/win32-ia32/-/win32-ia32-0.27.2.tgz#1b1e3a63ad4bef82200fef4e369e0fff7009eee5" + integrity sha512-Iuws0kxo4yusk7sw70Xa2E2imZU5HoixzxfGCdxwBdhiDgt9vX9VUCBhqcwY7/uh//78A1hMkkROMJq9l27oLQ== -"@esbuild/win32-x64@0.25.9": - version "0.25.9" - resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.25.9.tgz#585624dc829cfb6e7c0aa6c3ca7d7e6daa87e34f" - integrity sha512-PPOl1mi6lpLNQxnGoyAfschAodRFYXJ+9fs6WHXz7CSWKbOqiMZsubC+BQsVKuul+3vKLuwTHsS2c2y9EoKwxQ== +"@esbuild/win32-x64@0.27.2": + version "0.27.2" + resolved "https://registry.yarnpkg.com/@esbuild/win32-x64/-/win32-x64-0.27.2.tgz#9e585ab6086bef994c6e8a5b3a0481219ada862b" + integrity sha512-sRdU18mcKf7F+YgheI/zGf5alZatMUTKj/jNS6l744f9u3WFu4v7twcUI9vu4mknF4Y9aDlblIie0IM+5xxaqQ== "@floating-ui/core@^1.7.3": version "1.7.3" @@ -462,10 +462,10 @@ resolved "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.10.tgz" integrity sha512-aGTxbpbg8/b5JfU1HXSrbH3wXZuLPJcNEcZQFMxLs3oSzgtVu6nFPkbbGGUvBcUjKV2YyB9Wxxabo+HEH9tcRQ== -"@formatjs/cli@^6.7.4": - version "6.7.4" - resolved "https://registry.npmjs.org/@formatjs/cli/-/cli-6.7.4.tgz" - integrity sha512-k6uqdeZDAjDd7iKKQ8yFYizFpbi5Y9H9NkV+hoIhmxaMSGvWRnRusQJaIQ+2rI14MH6knW6fx7tnO15C+ijDiw== +"@formatjs/cli@^6.12.0": + version "6.12.0" + resolved "https://registry.yarnpkg.com/@formatjs/cli/-/cli-6.12.0.tgz#8bfb1a500faf53fb220b46bc5c559e0f7acf4a27" + integrity sha512-mF3U8XxwEWR+ttlG5e4onYO+M5T22jnnQq7Ce/WK10CTVYR8Us433hbML6vgBLkiTS/MuCq61L0op3yNRSp2Kg== "@formatjs/ecma402-abstract@2.3.6": version "2.3.6" @@ -830,17 +830,17 @@ resolved "https://registry.npmjs.org/@tanstack/query-core/-/query-core-5.90.6.tgz" integrity sha512-AnZSLF26R8uX+tqb/ivdrwbVdGemdEDm1Q19qM6pry6eOZ6bEYiY7mWhzXT1YDIPTNEVcZ5kYP9nWjoxDLiIVw== -"@tanstack/query-devtools@5.90.1": - version "5.90.1" - resolved "https://registry.npmjs.org/@tanstack/query-devtools/-/query-devtools-5.90.1.tgz" - integrity sha512-GtINOPjPUH0OegJExZ70UahT9ykmAhmtNVcmtdnOZbxLwT7R5OmRztR5Ahe3/Cu7LArEmR6/588tAycuaWb1xQ== +"@tanstack/query-devtools@5.92.0": + version "5.92.0" + resolved "https://registry.yarnpkg.com/@tanstack/query-devtools/-/query-devtools-5.92.0.tgz#8fc38b0112c6c136630f54e2f7e77f0c379e66c8" + integrity sha512-N8D27KH1vEpVacvZgJL27xC6yPFUy0Zkezn5gnB3L3gRCxlDeSuiya7fKge8Y91uMTnC8aSxBQhcK6ocY7alpQ== -"@tanstack/react-query-devtools@^5.90.2": - version "5.90.2" - resolved "https://registry.npmjs.org/@tanstack/react-query-devtools/-/react-query-devtools-5.90.2.tgz" - integrity sha512-vAXJzZuBXtCQtrY3F/yUNJCV4obT/A/n81kb3+YqLbro5Z2+phdAbceO+deU3ywPw8B42oyJlp4FhO0SoivDFQ== +"@tanstack/react-query-devtools@^5.91.2": + version "5.91.2" + resolved "https://registry.yarnpkg.com/@tanstack/react-query-devtools/-/react-query-devtools-5.91.2.tgz#1cadfad644b699b618c0636471d19339bda51ac7" + integrity sha512-ZJ1503ay5fFeEYFUdo7LMNFzZryi6B0Cacrgr2h1JRkvikK1khgIq6Nq2EcblqEdIlgB/r7XDW8f8DQ89RuUgg== dependencies: - "@tanstack/query-devtools" "5.90.1" + "@tanstack/query-devtools" "5.92.0" "@tanstack/react-query@^5.90.6": version "5.90.6" @@ -1006,12 +1006,12 @@ resolved "https://registry.npmjs.org/@types/ms/-/ms-2.1.0.tgz" integrity sha512-GsCCIZDE/p3i96vtEqx+7dBUGXrc7zeSK3wwPHIaRThS+9OhWIXRqzs4d6k1SVU8g91DrNRWxWUGhp5KXQb2VA== -"@types/node@^20.0.0": - version "20.19.11" - resolved "https://registry.npmjs.org/@types/node/-/node-20.19.11.tgz" - integrity sha512-uug3FEEGv0r+jrecvUUpbY8lLisvIjg6AAic6a2bSP5OEOLeJsDSnvhCDov7ipFFMXS3orMpzlmi0ZcuGkBbow== +"@types/node@*", "@types/node@>=20.0.0": + version "25.0.10" + resolved "https://registry.yarnpkg.com/@types/node/-/node-25.0.10.tgz#4864459c3c9459376b8b75fd051315071c8213e7" + integrity sha512-zWW5KPngR/yvakJgGOmZ5vTBemDoSqF3AcV/LrO5u5wTWyEAVVh+IT39G4gtyAkh3CtTZs8aX/yRM82OfzHJRg== dependencies: - undici-types "~6.21.0" + undici-types "~7.16.0" "@types/parse-json@^4.0.0": version "4.0.2" @@ -1072,6 +1072,13 @@ resolved "https://registry.npmjs.org/@types/whatwg-mimetype/-/whatwg-mimetype-3.0.2.tgz" integrity sha512-c2AKvDT8ToxLIOUlN51gTiHXflsfIFisS4pO7pDPoKouJCESkhZnEy623gwP9laCy5lnLDAw1vAzu2vM2YLOrA== +"@types/ws@^8.18.1": + version "8.18.1" + resolved "https://registry.yarnpkg.com/@types/ws/-/ws-8.18.1.tgz#48464e4bf2ddfd17db13d845467f6070ffea4aa9" + integrity sha512-ThVF6DCVhA8kUGy+aazFQ4kXQ7E1Ty7A3ypFOe0IcJV8O/M511G99AW24irKrW56Wt44yG9+ij8FaqoBGkuBXg== + dependencies: + "@types/node" "*" + "@uiw/react-textarea-code-editor@^3.1.1": version "3.1.1" resolved "https://registry.npmjs.org/@uiw/react-textarea-code-editor/-/react-textarea-code-editor-3.1.1.tgz" @@ -1399,6 +1406,11 @@ electron-to-chromium@^1.5.211: resolved "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.213.tgz" integrity sha512-xr9eRzSLNa4neDO0xVFrkXu3vyIzG4Ay08dApecw42Z1NbmCt+keEpXdvlYGVe0wtvY5dhW0Ay0lY0IOfsCg0Q== +entities@^4.5.0: + version "4.5.0" + resolved "https://registry.yarnpkg.com/entities/-/entities-4.5.0.tgz#5d268ea5e7113ec74c4d033b79ea5a35a488fb48" + integrity sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw== + entities@^6.0.0: version "6.0.1" resolved "https://registry.npmjs.org/entities/-/entities-6.0.1.tgz" @@ -1416,37 +1428,37 @@ es-module-lexer@^1.7.0: resolved "https://registry.npmjs.org/es-module-lexer/-/es-module-lexer-1.7.0.tgz" integrity sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA== -esbuild@^0.25.0: - version "0.25.9" - resolved "https://registry.npmjs.org/esbuild/-/esbuild-0.25.9.tgz" - integrity sha512-CRbODhYyQx3qp7ZEwzxOk4JBqmD/seJrzPa/cGjY1VtIn5E09Oi9/dB4JwctnfZ8Q8iT7rioVv5k/FNT/uf54g== +esbuild@^0.27.0: + version "0.27.2" + resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.27.2.tgz#d83ed2154d5813a5367376bb2292a9296fc83717" + integrity sha512-HyNQImnsOC7X9PMNaCIeAm4ISCQXs5a5YasTXVliKv4uuBo1dKrG0A+uQS8M5eXjVMnLg3WgXaKvprHlFJQffw== optionalDependencies: - "@esbuild/aix-ppc64" "0.25.9" - "@esbuild/android-arm" "0.25.9" - "@esbuild/android-arm64" "0.25.9" - "@esbuild/android-x64" "0.25.9" - "@esbuild/darwin-arm64" "0.25.9" - "@esbuild/darwin-x64" "0.25.9" - "@esbuild/freebsd-arm64" "0.25.9" - "@esbuild/freebsd-x64" "0.25.9" - "@esbuild/linux-arm" "0.25.9" - "@esbuild/linux-arm64" "0.25.9" - "@esbuild/linux-ia32" "0.25.9" - "@esbuild/linux-loong64" "0.25.9" - "@esbuild/linux-mips64el" "0.25.9" - "@esbuild/linux-ppc64" "0.25.9" - "@esbuild/linux-riscv64" "0.25.9" - "@esbuild/linux-s390x" "0.25.9" - "@esbuild/linux-x64" "0.25.9" - "@esbuild/netbsd-arm64" "0.25.9" - "@esbuild/netbsd-x64" "0.25.9" - "@esbuild/openbsd-arm64" "0.25.9" - "@esbuild/openbsd-x64" "0.25.9" - "@esbuild/openharmony-arm64" "0.25.9" - "@esbuild/sunos-x64" "0.25.9" - "@esbuild/win32-arm64" "0.25.9" - "@esbuild/win32-ia32" "0.25.9" - "@esbuild/win32-x64" "0.25.9" + "@esbuild/aix-ppc64" "0.27.2" + "@esbuild/android-arm" "0.27.2" + "@esbuild/android-arm64" "0.27.2" + "@esbuild/android-x64" "0.27.2" + "@esbuild/darwin-arm64" "0.27.2" + "@esbuild/darwin-x64" "0.27.2" + "@esbuild/freebsd-arm64" "0.27.2" + "@esbuild/freebsd-x64" "0.27.2" + "@esbuild/linux-arm" "0.27.2" + "@esbuild/linux-arm64" "0.27.2" + "@esbuild/linux-ia32" "0.27.2" + "@esbuild/linux-loong64" "0.27.2" + "@esbuild/linux-mips64el" "0.27.2" + "@esbuild/linux-ppc64" "0.27.2" + "@esbuild/linux-riscv64" "0.27.2" + "@esbuild/linux-s390x" "0.27.2" + "@esbuild/linux-x64" "0.27.2" + "@esbuild/netbsd-arm64" "0.27.2" + "@esbuild/netbsd-x64" "0.27.2" + "@esbuild/openbsd-arm64" "0.27.2" + "@esbuild/openbsd-x64" "0.27.2" + "@esbuild/openharmony-arm64" "0.27.2" + "@esbuild/sunos-x64" "0.27.2" + "@esbuild/win32-arm64" "0.27.2" + "@esbuild/win32-ia32" "0.27.2" + "@esbuild/win32-x64" "0.27.2" escalade@^3.2.0: version "3.2.0" @@ -1554,14 +1566,17 @@ globrex@^0.1.2: resolved "https://registry.npmjs.org/globrex/-/globrex-0.1.2.tgz" integrity sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg== -happy-dom@^20.0.10: - version "20.0.10" - resolved "https://registry.npmjs.org/happy-dom/-/happy-dom-20.0.10.tgz" - integrity sha512-6umCCHcjQrhP5oXhrHQQvLB0bwb1UzHAHdsXy+FjtKoYjUhmNZsQL8NivwM1vDvNEChJabVrUYxUnp/ZdYmy2g== +happy-dom@^20.3.9: + version "20.3.9" + resolved "https://registry.yarnpkg.com/happy-dom/-/happy-dom-20.3.9.tgz#7f7f3dc904660e32f5abecf3efaa57bd9d36f6f8" + integrity sha512-OIoj0PcK2JaxQuANHxWkxFRSNXAuSgO1vCzCT66KItE0W/ieZLG+/iW8OetlxB+F9EaPB7DoFYKAubFG1f4Mvw== dependencies: - "@types/node" "^20.0.0" + "@types/node" ">=20.0.0" "@types/whatwg-mimetype" "^3.0.2" + "@types/ws" "^8.18.1" + entities "^4.5.0" whatwg-mimetype "^3.0.0" + ws "^8.18.3" hasown@^2.0.2: version "2.0.2" @@ -2661,10 +2676,10 @@ safe-buffer@^5.1.0: resolved "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz" integrity sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ== -sass@^1.93.3: - version "1.93.3" - resolved "https://registry.npmjs.org/sass/-/sass-1.93.3.tgz" - integrity sha512-elOcIZRTM76dvxNAjqYrucTSI0teAF/L2Lv0s6f6b7FOwcwIuA357bIE871580AjHJuSvLIRUosgV+lIWx6Rgg== +sass@^1.97.3: + version "1.97.3" + resolved "https://registry.yarnpkg.com/sass/-/sass-1.97.3.tgz#9cb59339514fa7e2aec592b9700953ac6e331ab2" + integrity sha512-fDz1zJpd5GycprAbu4Q2PV/RprsRtKC/0z82z0JLgdytmcq0+ujJbJ/09bPGDxCLkKY3Np5cRAOcWiVkLXJURg== dependencies: chokidar "^4.0.0" immutable "^5.0.2" @@ -2781,7 +2796,7 @@ tinyexec@^0.3.2: resolved "https://registry.npmjs.org/tinyexec/-/tinyexec-0.3.2.tgz" integrity sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA== -tinyglobby@^0.2.14, tinyglobby@^0.2.15: +tinyglobby@^0.2.15: version "0.2.15" resolved "https://registry.npmjs.org/tinyglobby/-/tinyglobby-0.2.15.tgz" integrity sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ== @@ -2846,10 +2861,10 @@ uncontrollable@^8.0.4: resolved "https://registry.npmjs.org/uncontrollable/-/uncontrollable-8.0.4.tgz" integrity sha512-ulRWYWHvscPFc0QQXvyJjY6LIXU56f0h8pQFvhxiKk5V1fcI8gp9Ht9leVAhrVjzqMw0BgjspBINx9r6oyJUvQ== -undici-types@~6.21.0: - version "6.21.0" - resolved "https://registry.npmjs.org/undici-types/-/undici-types-6.21.0.tgz" - integrity sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ== +undici-types@~7.16.0: + version "7.16.0" + resolved "https://registry.yarnpkg.com/undici-types/-/undici-types-7.16.0.tgz#ffccdff36aea4884cbfce9a750a0580224f58a46" + integrity sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw== unicorn-magic@^0.3.0: version "0.3.0" @@ -2958,10 +2973,10 @@ vfile@^6.0.0: "@types/unist" "^3.0.0" vfile-message "^4.0.0" -vite-plugin-checker@^0.11.0: - version "0.11.0" - resolved "https://registry.npmjs.org/vite-plugin-checker/-/vite-plugin-checker-0.11.0.tgz" - integrity sha512-iUdO9Pl9UIBRPAragwi3as/BXXTtRu4G12L3CMrjx+WVTd9g/MsqNakreib9M/2YRVkhZYiTEwdH2j4Dm0w7lw== +vite-plugin-checker@^0.12.0: + version "0.12.0" + resolved "https://registry.yarnpkg.com/vite-plugin-checker/-/vite-plugin-checker-0.12.0.tgz#1e9688a5a10f5de1fd833bc1351618eed54db3bc" + integrity sha512-CmdZdDOGss7kdQwv73UyVgLPv0FVYe5czAgnmRX2oKljgEvSrODGuClaV3PDR2+3ou7N/OKGauDDBjy2MB07Rg== dependencies: "@babel/code-frame" "^7.27.1" chokidar "^4.0.3" @@ -2969,7 +2984,7 @@ vite-plugin-checker@^0.11.0: picocolors "^1.1.1" picomatch "^4.0.3" tiny-invariant "^1.3.3" - tinyglobby "^0.2.14" + tinyglobby "^0.2.15" vscode-uri "^3.1.0" vite-tsconfig-paths@^6.0.5: @@ -2981,12 +2996,12 @@ vite-tsconfig-paths@^6.0.5: globrex "^0.1.2" tsconfck "^3.0.3" -"vite@^6.0.0 || ^7.0.0", vite@^7.1.12: - version "7.1.12" - resolved "https://registry.npmjs.org/vite/-/vite-7.1.12.tgz" - integrity sha512-ZWyE8YXEXqJrrSLvYgrRP7p62OziLW7xI5HYGWFzOvupfAlrLvURSzv/FyGyy0eidogEM3ujU+kUG1zuHgb6Ug== +"vite@^6.0.0 || ^7.0.0", vite@^7.3.1: + version "7.3.1" + resolved "https://registry.yarnpkg.com/vite/-/vite-7.3.1.tgz#7f6cfe8fb9074138605e822a75d9d30b814d6507" + integrity sha512-w+N7Hifpc3gRjZ63vYBXA56dvvRlNWRczTdmCBBa+CotUzAPf5b7YMdMR/8CQoeYE5LX3W4wj6RYTgonm1b9DA== dependencies: - esbuild "^0.25.0" + esbuild "^0.27.0" fdir "^6.5.0" picomatch "^4.0.3" postcss "^8.5.6" @@ -3051,6 +3066,11 @@ why-is-node-running@^2.3.0: siginfo "^2.0.0" stackback "0.0.2" +ws@^8.18.3: + version "8.19.0" + resolved "https://registry.yarnpkg.com/ws/-/ws-8.19.0.tgz#ddc2bdfa5b9ad860204f5a72a4863a8895fd8c8b" + integrity sha512-blAT2mjOEIi0ZzruJfIhb3nps74PRWTCz1IjglWEEpQl5XS/UNama6u2/rjFkDDouqr4L67ry+1aGIALViWjDg== + yallist@^3.0.2: version "3.1.1" resolved "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz" From 4af0a968f0a83873eb1aed396508d13f728118e5 Mon Sep 17 00:00:00 2001 From: Jamie Curnow Date: Tue, 27 Jan 2026 08:45:23 +1000 Subject: [PATCH 26/77] Cypress module conversion and updated chalk --- test/cypress/config/ci.js | 22 ------------------- test/cypress/config/ci.mjs | 23 ++++++++++++++++++++ test/cypress/config/dev.js | 22 ------------------- test/cypress/config/dev.mjs | 23 ++++++++++++++++++++ test/cypress/plugins/{index.js => index.mjs} | 6 ++--- test/jsconfig.json | 5 ++++- test/package.json | 8 +++---- test/yarn.lock | 5 +++++ 8 files changed, 62 insertions(+), 52 deletions(-) delete mode 100644 test/cypress/config/ci.js create mode 100644 test/cypress/config/ci.mjs delete mode 100644 test/cypress/config/dev.js create mode 100644 test/cypress/config/dev.mjs rename test/cypress/plugins/{index.js => index.mjs} (77%) diff --git a/test/cypress/config/ci.js b/test/cypress/config/ci.js deleted file mode 100644 index dc968dbd..00000000 --- a/test/cypress/config/ci.js +++ /dev/null @@ -1,22 +0,0 @@ -const { defineConfig } = require('cypress'); - -module.exports = defineConfig({ - requestTimeout: 30000, - defaultCommandTimeout: 20000, - reporter: 'cypress-multi-reporters', - reporterOptions: { - configFile: 'multi-reporter.json' - }, - video: true, - videosFolder: 'results/videos', - screenshotsFolder: 'results/screenshots', - e2e: { - setupNodeEvents(on, config) { - return require("../plugins/index.js")(on, config); - }, - env: { - swaggerBase: '{{baseUrl}}/api/schema?ts=' + Date.now(), - }, - baseUrl: 'http://fullstack:81', - } -}); diff --git a/test/cypress/config/ci.mjs b/test/cypress/config/ci.mjs new file mode 100644 index 00000000..2597c194 --- /dev/null +++ b/test/cypress/config/ci.mjs @@ -0,0 +1,23 @@ +import { defineConfig } from 'cypress'; +import pluginSetup from '../plugins/index.mjs'; + +export default defineConfig({ + requestTimeout: 30000, + defaultCommandTimeout: 20000, + reporter: "cypress-multi-reporters", + reporterOptions: { + configFile: "multi-reporter.json" + }, + video: true, + videosFolder: "results/videos", + screenshotsFolder: "results/screenshots", + e2e: { + setupNodeEvents(on, config) { + return pluginSetup(on, config); + }, + env: { + swaggerBase: `{{baseUrl}}/api/schema?ts=${Date.now()}`, + }, + baseUrl: "http://fullstack:81", + } +}); diff --git a/test/cypress/config/dev.js b/test/cypress/config/dev.js deleted file mode 100644 index e2f7b6f9..00000000 --- a/test/cypress/config/dev.js +++ /dev/null @@ -1,22 +0,0 @@ -const { defineConfig } = require('cypress'); - -module.exports = defineConfig({ - requestTimeout: 30000, - defaultCommandTimeout: 20000, - reporter: 'cypress-multi-reporters', - reporterOptions: { - configFile: 'multi-reporter.json' - }, - video: true, - videosFolder: 'results/videos', - screenshotsFolder: 'results/screenshots', - e2e: { - setupNodeEvents(on, config) { - return require("../plugins/index.js")(on, config); - }, - env: { - swaggerBase: '{{baseUrl}}/api/schema?ts=' + Date.now(), - }, - baseUrl: 'http://127.0.0.1:3081', - } -}); diff --git a/test/cypress/config/dev.mjs b/test/cypress/config/dev.mjs new file mode 100644 index 00000000..f32d973c --- /dev/null +++ b/test/cypress/config/dev.mjs @@ -0,0 +1,23 @@ +import { defineConfig } from 'cypress'; +import pluginSetup from '../plugins/index.mjs'; + +export default defineConfig({ + requestTimeout: 30000, + defaultCommandTimeout: 20000, + reporter: "cypress-multi-reporters", + reporterOptions: { + configFile: "multi-reporter.json" + }, + video: true, + videosFolder: "results/videos", + screenshotsFolder: "results/screenshots", + e2e: { + setupNodeEvents(on, config) { + return pluginSetup(on, config); + }, + env: { + swaggerBase: `{{baseUrl}}/api/schema?ts=${Date.now()}`, + }, + baseUrl: "http://127.0.0.1:3081", + } +}); diff --git a/test/cypress/plugins/index.js b/test/cypress/plugins/index.mjs similarity index 77% rename from test/cypress/plugins/index.js rename to test/cypress/plugins/index.mjs index 19dd3e17..bf3752b1 100644 --- a/test/cypress/plugins/index.js +++ b/test/cypress/plugins/index.mjs @@ -1,7 +1,7 @@ -const { SwaggerValidation } = require('@jc21/cypress-swagger-validation'); -const chalk = require('chalk'); +import { SwaggerValidation } from '@jc21/cypress-swagger-validation'; +import chalk from 'chalk'; -module.exports = (on, config) => { +export default (on, config) => { // Replace swaggerBase config var wildcard if (typeof config.env.swaggerBase !== 'undefined') { config.env.swaggerBase = config.env.swaggerBase.replace('{{baseUrl}}', config.baseUrl); diff --git a/test/jsconfig.json b/test/jsconfig.json index e7ebe302..ffe33671 100644 --- a/test/jsconfig.json +++ b/test/jsconfig.json @@ -1,6 +1,9 @@ { "include": [ "./node_modules/cypress", - "cypress/**/*.js" + "cypress/**/*.js", + "cypress/config/dev.mjs", + "cypress/config/ci.mjs", + "cypress/plugins/index.mjs" ] } diff --git a/test/package.json b/test/package.json index c3686311..5348baca 100644 --- a/test/package.json +++ b/test/package.json @@ -7,7 +7,7 @@ "@jc21/cypress-swagger-validation": "^0.3.2", "@quobix/vacuum": "^0.19.4", "axios": "^1.13.1", - "chalk": "^4.1.0", + "chalk": "^5.6.2", "cypress": "^15.9.0", "cypress-multi-reporters": "^2.0.5", "cypress-wait-until": "^3.0.2", @@ -21,9 +21,9 @@ "mocha-junit-reporter": "^2.2.1" }, "scripts": { - "cypress": "HTTP_PROXY=127.0.0.1:8128 HTTPS_PROXY=127.0.0.1:8128 cypress open --config-file=cypress/config/ci.js", - "cypress:headless": "HTTP_PROXY=127.0.0.1:8128 HTTPS_PROXY=127.0.0.1:8128 cypress run --config-file=cypress/config/ci.js", - "cypress:dev": "cypress run --config-file=cypress/config/dev.js", + "cypress": "HTTP_PROXY=127.0.0.1:8128 HTTPS_PROXY=127.0.0.1:8128 cypress open --config-file=cypress/config/ci.mjs", + "cypress:headless": "HTTP_PROXY=127.0.0.1:8128 HTTPS_PROXY=127.0.0.1:8128 cypress run --config-file=cypress/config/ci.mjs", + "cypress:dev": "cypress run --config-file=cypress/config/dev.mjs", "swagger-lint": "vacuum lint -b -q -d -a --no-clip -n=warn" }, "author": "", diff --git a/test/yarn.lock b/test/yarn.lock index 38d0adc0..489dd6b2 100644 --- a/test/yarn.lock +++ b/test/yarn.lock @@ -552,6 +552,11 @@ chalk@^4.0.0, chalk@^4.1.0: ansi-styles "^4.1.0" supports-color "^7.1.0" +chalk@^5.6.2: + version "5.6.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-5.6.2.tgz#b1238b6e23ea337af71c7f8a295db5af0c158aea" + integrity sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA== + charenc@0.0.2: version "0.0.2" resolved "https://registry.yarnpkg.com/charenc/-/charenc-0.0.2.tgz#c0a1d2f3a7092e03774bfa83f14c0fc5790a8667" From eaf9f5ab1ec4a5b8f0b636b7a08d630c2f764d51 Mon Sep 17 00:00:00 2001 From: Jamie Curnow Date: Tue, 27 Jan 2026 08:45:57 +1000 Subject: [PATCH 27/77] Linting/sorting for lang --- frontend/src/locale/src/hu.json | 1536 +++++++++++++++---------------- 1 file changed, 768 insertions(+), 768 deletions(-) diff --git a/frontend/src/locale/src/hu.json b/frontend/src/locale/src/hu.json index d12c5c86..4caf0583 100644 --- a/frontend/src/locale/src/hu.json +++ b/frontend/src/locale/src/hu.json @@ -1,770 +1,770 @@ { - "2fa.backup-codes-remaining": { - "defaultMessage": "Hátralévő tartalék kódok: {count}" - }, - "2fa.backup-warning": { - "defaultMessage": "Mentse el ezeket a tartalék kódokat biztonságos helyre. Minden kód csak egyszer használható." - }, - "2fa.disable": { - "defaultMessage": "Kétfaktoros hitelesítés letiltása" - }, - "2fa.disable-confirm": { - "defaultMessage": "2FA letiltása" - }, - "2fa.disable-warning": { - "defaultMessage": "A kétfaktoros hitelesítés letiltása kevésbé teszi biztonságossá a fiókját." - }, - "2fa.disabled": { - "defaultMessage": "Letiltva" - }, - "2fa.done": { - "defaultMessage": "Elmentettem a tartalék kódjaimat" - }, - "2fa.enable": { - "defaultMessage": "Kétfaktoros hitelesítés engedélyezése" - }, - "2fa.enabled": { - "defaultMessage": "Engedélyezve" - }, - "2fa.enter-code": { - "defaultMessage": "Adja meg az ellenőrző kódot" - }, - "2fa.enter-code-disable": { - "defaultMessage": "Adja meg az ellenőrző kódot a letiltáshoz" - }, - "2fa.regenerate": { - "defaultMessage": "Újragenerálás" - }, - "2fa.regenerate-backup": { - "defaultMessage": "Tartalék kódok újragenerálása" - }, - "2fa.regenerate-instructions": { - "defaultMessage": "Adjon meg egy ellenőrző kódot az új tartalék kódok generálásához. A régi kódok érvénytelenné válnak." - }, - "2fa.secret-key": { - "defaultMessage": "Titkos kulcs" - }, - "2fa.setup-instructions": { - "defaultMessage": "Olvassa be ezt a QR kódot a hitelesítő alkalmazásával, vagy adja meg a titkot manuálisan." - }, - "2fa.status": { - "defaultMessage": "Állapot" - }, - "2fa.title": { - "defaultMessage": "Kétfaktoros hitelesítés" - }, - "2fa.verify-enable": { - "defaultMessage": "Ellenőrzés és engedélyezés" - }, - "access-list": { - "defaultMessage": "Hozzáférési lista" - }, - "access-list.access-count": { - "defaultMessage": "{count} {count, plural, one {szabály} other {szabály}}" - }, - "access-list.auth-count": { - "defaultMessage": "{count} {count, plural, one {felhasználó} other {felhasználó}}" - }, - "access-list.help-rules-last": { - "defaultMessage": "Ha legalább 1 szabály létezik, ez a mindent tiltó szabály utolsóként lesz hozzáadva" - }, - "access-list.help.rules-order": { - "defaultMessage": "Vegye figyelembe, hogy az engedélyező és tiltó direktívák a meghatározásuk sorrendjében lesznek alkalmazva." - }, - "access-list.pass-auth": { - "defaultMessage": "Hitelesítés továbbítása az upstream felé" - }, - "access-list.public": { - "defaultMessage": "Nyilvánosan elérhető" - }, - "access-list.public.subtitle": { - "defaultMessage": "Alapszintű hitelesítés nem szükséges" - }, - "access-list.rule-source.placeholder": { - "defaultMessage": "192.168.1.100 vagy 192.168.1.0/24 vagy 2001:0db8::/32" - }, - "access-list.satisfy-any": { - "defaultMessage": "Bármely teljesítése" - }, - "access-list.subtitle": { - "defaultMessage": "{users} {users, plural, one {felhasználó} other {felhasználó}}, {rules} {rules, plural, one {szabály} other {szabály}} - Létrehozva: {date}" - }, - "access-lists": { - "defaultMessage": "Hozzáférési listák" - }, - "action.add": { - "defaultMessage": "Hozzáadás" - }, - "action.add-location": { - "defaultMessage": "Útvonal hozzáadása" - }, - "action.allow": { - "defaultMessage": "Engedélyezés" - }, - "action.close": { - "defaultMessage": "Bezárás" - }, - "action.delete": { - "defaultMessage": "Törlés" - }, - "action.deny": { - "defaultMessage": "Tiltás" - }, - "action.disable": { - "defaultMessage": "Letiltás" - }, - "action.download": { - "defaultMessage": "Letöltés" - }, - "action.edit": { - "defaultMessage": "Szerkesztés" - }, - "action.enable": { - "defaultMessage": "Engedélyezés" - }, - "action.permissions": { - "defaultMessage": "Engedélyek" - }, - "action.renew": { - "defaultMessage": "Megújítás" - }, - "action.view-details": { - "defaultMessage": "Részletek megtekintése" - }, - "auditlogs": { - "defaultMessage": "Audit naplók" - }, - "auto": { - "defaultMessage": "Automatikus" - }, - "cancel": { - "defaultMessage": "Mégse" - }, - "certificate": { - "defaultMessage": "Tanúsítvány" - }, - "certificate.custom-certificate": { - "defaultMessage": "Tanúsítvány" - }, - "certificate.custom-certificate-key": { - "defaultMessage": "Tanúsítvány kulcs" - }, - "certificate.custom-intermediate": { - "defaultMessage": "Köztes tanúsítvány" - }, - "certificate.in-use": { - "defaultMessage": "Használatban" - }, - "certificate.none.subtitle": { - "defaultMessage": "Nincs tanúsítvány hozzárendelve" - }, - "certificate.none.subtitle.for-http": { - "defaultMessage": "Ez a kiszolgáló nem fog HTTPS-t használni" - }, - "certificate.none.title": { - "defaultMessage": "Nincs" - }, - "certificate.not-in-use": { - "defaultMessage": "Nincs használatban" - }, - "certificate.renew": { - "defaultMessage": "Tanúsítvány megújítása" - }, - "certificates": { - "defaultMessage": "Tanúsítványok" - }, - "certificates.custom": { - "defaultMessage": "Egyéni tanúsítvány" - }, - "certificates.custom.warning": { - "defaultMessage": "Jelszóval védett kulcsfájlok nem támogatottak." - }, - "certificates.dns.credentials": { - "defaultMessage": "Hitelesítő fájl tartalma" - }, - "certificates.dns.credentials-note": { - "defaultMessage": "Ez a plugin egy konfigurációs fájlt igényel, amely API tokent vagy egyéb hitelesítő adatokat tartalmaz a szolgáltatóhoz" - }, - "certificates.dns.credentials-warning": { - "defaultMessage": "Ezek az adatok sima szövegként lesznek tárolva az adatbázisban és egy fájlban!" - }, - "certificates.dns.propagation-seconds": { - "defaultMessage": "Propagálási másodpercek" - }, - "certificates.dns.propagation-seconds-note": { - "defaultMessage": "Hagyja üresen a plugin alapértelmezett értékének használatához. Másodpercek száma a DNS propagálás megvárásához." - }, - "certificates.dns.provider": { - "defaultMessage": "DNS szolgáltató" - }, - "certificates.dns.provider.placeholder": { - "defaultMessage": "Válasszon szolgáltatót..." - }, - "certificates.dns.warning": { - "defaultMessage": "Ez a szakasz némi ismeretet igényel a Certbot-ról és a DNS plugin-jeiről. Kérjük, olvassa el a megfelelő plugin dokumentációját." - }, - "certificates.http.reachability-404": { - "defaultMessage": "Található szerver ezen a domain-en, de nem úgy tűnik, hogy Nginx Proxy Manager lenne. Kérjük, győződjön meg róla, hogy a domain arra az IP címre mutat, ahol az NPM példánya fut." - }, - "certificates.http.reachability-failed-to-check": { - "defaultMessage": "Az elérhetőség ellenőrzése sikertelen a site24x7.com kommunikációs hiba miatt." - }, - "certificates.http.reachability-not-resolved": { - "defaultMessage": "Nincs elérhető szerver ezen a domain-en. Kérjük, győződjön meg róla, hogy a domain létezik és arra az IP címre mutat, ahol az NPM példánya fut, és szükség esetén a 80-as port továbbítva van a routerében." - }, - "certificates.http.reachability-ok": { - "defaultMessage": "A szerver elérhető és a tanúsítványok létrehozása lehetséges lesz." - }, - "certificates.http.reachability-other": { - "defaultMessage": "Található szerver ezen a domain-en, de váratlan {code} státuszkódot adott vissza. Ez az NPM szerver? Kérjük, győződjön meg róla, hogy a domain arra az IP címre mutat, ahol az NPM példánya fut." - }, - "certificates.http.reachability-wrong-data": { - "defaultMessage": "Található szerver ezen a domain-en, de váratlan adatot adott vissza. Ez az NPM szerver? Kérjük, győződjön meg róla, hogy a domain arra az IP címre mutat, ahol az NPM példánya fut." - }, - "certificates.http.test-results": { - "defaultMessage": "Teszt eredmények" - }, - "certificates.http.warning": { - "defaultMessage": "Ezeknek a domain-eknek már konfigurálva kell lenniük, hogy erre a telepítésre mutassanak." - }, - "certificates.key-type": { - "defaultMessage": "Kulcs típus" - }, - "certificates.key-type-description": { - "defaultMessage": "Az RSA széles körben kompatibilis, az ECDSA gyorsabb és biztonságosabb, de nem biztos, hogy régebbi rendszerek támogatják" - }, - "certificates.key-type-ecdsa": { - "defaultMessage": "ECDSA 256" - }, - "certificates.key-type-rsa": { - "defaultMessage": "RSA 2048" - }, - "certificates.request.subtitle": { - "defaultMessage": "Let's Encrypt-tel" - }, - "certificates.request.title": { - "defaultMessage": "Új tanúsítvány kérelmezése" - }, - "column.access": { - "defaultMessage": "Hozzáférés" - }, - "column.authorization": { - "defaultMessage": "Jogosultság" - }, - "column.authorizations": { - "defaultMessage": "Jogosultságok" - }, - "column.custom-locations": { - "defaultMessage": "Egyéni útvonalak" - }, - "column.destination": { - "defaultMessage": "Cél" - }, - "column.details": { - "defaultMessage": "Részletek" - }, - "column.email": { - "defaultMessage": "E-mail" - }, - "column.event": { - "defaultMessage": "Esemény" - }, - "column.expires": { - "defaultMessage": "Lejár" - }, - "column.http-code": { - "defaultMessage": "HTTP kód" - }, - "column.incoming-port": { - "defaultMessage": "Bejövő port" - }, - "column.name": { - "defaultMessage": "Név" - }, - "column.protocol": { - "defaultMessage": "Protokoll" - }, - "column.provider": { - "defaultMessage": "Szolgáltató" - }, - "column.roles": { - "defaultMessage": "Szerepkörök" - }, - "column.rules": { - "defaultMessage": "Szabályok" - }, - "column.satisfy": { - "defaultMessage": "Teljesítés" - }, - "column.satisfy-all": { - "defaultMessage": "Összes" - }, - "column.satisfy-any": { - "defaultMessage": "Bármely" - }, - "column.scheme": { - "defaultMessage": "Séma" - }, - "column.source": { - "defaultMessage": "Forrás" - }, - "column.ssl": { - "defaultMessage": "SSL" - }, - "column.status": { - "defaultMessage": "Állapot" - }, - "created-on": { - "defaultMessage": "Létrehozva: {date}" - }, - "dashboard": { - "defaultMessage": "Vezérlőpult" - }, - "dead-host": { - "defaultMessage": "404-es Kiszolgáló" - }, - "dead-hosts": { - "defaultMessage": "404-es Kiszolgálók" - }, - "dead-hosts.count": { - "defaultMessage": "{count} {count, plural, one {404-es Kiszolgáló} other {404-es Kiszolgálók}}" - }, - "disabled": { - "defaultMessage": "Letiltva" - }, - "domain-names": { - "defaultMessage": "Domain nevek" - }, - "domain-names.max": { - "defaultMessage": "Maximum {count} domain név" - }, - "domain-names.placeholder": { - "defaultMessage": "Kezdjen el gépelni domain hozzáadásához..." - }, - "domain-names.wildcards-not-permitted": { - "defaultMessage": "Helyettesítő karakterek nem engedélyezettek ennél a típusnál" - }, - "domain-names.wildcards-not-supported": { - "defaultMessage": "Helyettesítő karakterek nem támogatottak ennél a CA-nál" - }, - "domains.force-ssl": { - "defaultMessage": "SSL kényszerítése" - }, - "domains.hsts-enabled": { - "defaultMessage": "HSTS engedélyezve" - }, - "domains.hsts-subdomains": { - "defaultMessage": "HSTS aldomain-ek" - }, - "domains.http2-support": { - "defaultMessage": "HTTP/2 támogatás" - }, - "domains.use-dns": { - "defaultMessage": "DNS Challenge használata" - }, - "email-address": { - "defaultMessage": "E-mail cím" - }, - "empty-search": { - "defaultMessage": "Nincs találat" - }, - "empty-subtitle": { - "defaultMessage": "Miért nem hoz létre egyet?" - }, - "enabled": { - "defaultMessage": "Engedélyezve" - }, - "error.access.at-least-one": { - "defaultMessage": "Legalább egy jogosultság vagy egy hozzáférési szabály szükséges" - }, - "error.access.duplicate-usernames": { - "defaultMessage": "A jogosultsági felhasználóneveknek egyedieknek kell lenniük" - }, - "error.invalid-auth": { - "defaultMessage": "Érvénytelen e-mail vagy jelszó" - }, - "error.invalid-domain": { - "defaultMessage": "Érvénytelen domain: {domain}" - }, - "error.invalid-email": { - "defaultMessage": "Érvénytelen e-mail cím" - }, - "error.max-character-length": { - "defaultMessage": "Maximális hossz {max} karakter" - }, - "error.max-domains": { - "defaultMessage": "Túl sok domain, a maximum {max}" - }, - "error.maximum": { - "defaultMessage": "A maximum {max}" - }, - "error.min-character-length": { - "defaultMessage": "Minimális hossz {min} karakter" - }, - "error.minimum": { - "defaultMessage": "A minimum {min}" - }, - "error.passwords-must-match": { - "defaultMessage": "A jelszavaknak egyezniük kell" - }, - "error.required": { - "defaultMessage": "Ez kötelező" - }, - "expires.on": { - "defaultMessage": "Lejár: {date}" - }, - "footer.github-fork": { - "defaultMessage": "Fork-olj a GitHub-on" - }, - "host.flags.block-exploits": { - "defaultMessage": "Gyakori exploitok blokkolása" - }, - "host.flags.cache-assets": { - "defaultMessage": "Erőforrások gyorsítótárazása" - }, - "host.flags.preserve-path": { - "defaultMessage": "Útvonal megőrzése" - }, - "host.flags.protocols": { - "defaultMessage": "Protokollok" - }, - "host.flags.websockets-upgrade": { - "defaultMessage": "Websockets támogatás" - }, - "host.forward-port": { - "defaultMessage": "Továbbító port" - }, - "host.forward-scheme": { - "defaultMessage": "Séma" - }, - "hosts": { - "defaultMessage": "Kiszolgálók" - }, - "http-only": { - "defaultMessage": "Csak HTTP" - }, - "lets-encrypt": { - "defaultMessage": "Let's Encrypt" - }, - "lets-encrypt-via-dns": { - "defaultMessage": "Let's Encrypt DNS-en keresztül" - }, - "lets-encrypt-via-http": { - "defaultMessage": "Let's Encrypt HTTP-n keresztül" - }, - "loading": { - "defaultMessage": "Betöltés…" - }, - "login.2fa-code": { - "defaultMessage": "Ellenőrző kód" - }, - "login.2fa-code-placeholder": { - "defaultMessage": "Adja meg a kódot" - }, - "login.2fa-description": { - "defaultMessage": "Adja meg a kódot a hitelesítő alkalmazásából" - }, - "login.2fa-title": { - "defaultMessage": "Kétfaktoros hitelesítés" - }, - "login.2fa-verify": { - "defaultMessage": "Ellenőrzés" - }, - "login.title": { - "defaultMessage": "Jelentkezzen be a fiókjába" - }, - "nginx-config.label": { - "defaultMessage": "Egyéni Nginx konfiguráció" - }, - "nginx-config.placeholder": { - "defaultMessage": "# Adja meg az egyéni Nginx konfigurációját itt, saját felelősségére!" - }, - "no-permission-error": { - "defaultMessage": "Nincs jogosultsága ennek megtekintéséhez." - }, - "notfound.action": { - "defaultMessage": "Vigyen haza" - }, - "notfound.content": { - "defaultMessage": "Sajnáljuk, de a keresett oldal nem található" - }, - "notfound.title": { - "defaultMessage": "Hoppá… Hibás oldalra talált" - }, - "notification.error": { - "defaultMessage": "Hiba" - }, - "notification.object-deleted": { - "defaultMessage": "{object} törölve lett" - }, - "notification.object-disabled": { - "defaultMessage": "{object} letiltva lett" - }, - "notification.object-enabled": { - "defaultMessage": "{object} engedélyezve lett" - }, - "notification.object-renewed": { - "defaultMessage": "{object} megújítva lett" - }, - "notification.object-saved": { - "defaultMessage": "{object} mentve lett" - }, - "notification.success": { - "defaultMessage": "Sikeres" - }, - "object.actions-title": { - "defaultMessage": "{object} #{id}" - }, - "object.add": { - "defaultMessage": "{object} hozzáadása" - }, - "object.delete": { - "defaultMessage": "{object} törlése" - }, - "object.delete.content": { - "defaultMessage": "Biztosan törölni szeretné ezt: {object}?" - }, - "object.edit": { - "defaultMessage": "{object} szerkesztése" - }, - "object.empty": { - "defaultMessage": "Nincsenek {objects}" - }, - "object.event.created": { - "defaultMessage": "{object} létrehozva" - }, - "object.event.deleted": { - "defaultMessage": "{object} törölve" - }, - "object.event.disabled": { - "defaultMessage": "{object} letiltva" - }, - "object.event.enabled": { - "defaultMessage": "{object} engedélyezve" - }, - "object.event.renewed": { - "defaultMessage": "{object} megújítva" - }, - "object.event.updated": { - "defaultMessage": "{object} frissítve" - }, - "offline": { - "defaultMessage": "Offline" - }, - "online": { - "defaultMessage": "Online" - }, - "options": { - "defaultMessage": "Beállítások" - }, - "password": { - "defaultMessage": "Jelszó" - }, - "password.generate": { - "defaultMessage": "Véletlenszerű jelszó generálása" - }, - "password.hide": { - "defaultMessage": "Jelszó elrejtése" - }, - "password.show": { - "defaultMessage": "Jelszó megjelenítése" - }, - "permissions.hidden": { - "defaultMessage": "Rejtett" - }, - "permissions.manage": { - "defaultMessage": "Kezelés" - }, - "permissions.view": { - "defaultMessage": "Csak megtekintés" - }, - "permissions.visibility.all": { - "defaultMessage": "Összes elem" - }, - "permissions.visibility.title": { - "defaultMessage": "Elemek láthatósága" - }, - "permissions.visibility.user": { - "defaultMessage": "Csak létrehozott elemek" - }, - "proxy-host": { - "defaultMessage": "Proxy Kiszolgáló" - }, - "proxy-host.forward-host": { - "defaultMessage": "Továbbító hostnév / IP" - }, - "proxy-hosts": { - "defaultMessage": "Proxy Kiszolgálók" - }, - "proxy-hosts.count": { - "defaultMessage": "{count} {count, plural, one {Proxy Kiszolgáló} other {Proxy Kiszolgálók}}" - }, - "public": { - "defaultMessage": "Nyilvános" - }, - "redirection-host": { - "defaultMessage": "Átirányító Kiszolgáló" - }, - "redirection-host.forward-domain": { - "defaultMessage": "Továbbító domain" - }, - "redirection-host.forward-http-code": { - "defaultMessage": "HTTP kód" - }, - "redirection-hosts": { - "defaultMessage": "Átirányító Kiszolgálók" - }, - "redirection-hosts.count": { - "defaultMessage": "{count} {count, plural, one {Átirányító Kiszolgáló} other {Átirányító Kiszolgálók}}" - }, - "redirection-hosts.http-code.300": { - "defaultMessage": "300 Többszörös választás" - }, - "redirection-hosts.http-code.301": { - "defaultMessage": "301 Véglegesen áthelyezve" - }, - "redirection-hosts.http-code.302": { - "defaultMessage": "302 Ideiglenesen áthelyezve" - }, - "redirection-hosts.http-code.303": { - "defaultMessage": "303 Lásd másik" - }, - "redirection-hosts.http-code.307": { - "defaultMessage": "307 Ideiglenes átirányítás" - }, - "redirection-hosts.http-code.308": { - "defaultMessage": "308 Végleges átirányítás" - }, - "role.admin": { - "defaultMessage": "Adminisztrátor" - }, - "role.standard-user": { - "defaultMessage": "Általános felhasználó" - }, - "save": { - "defaultMessage": "Mentés" - }, - "setting": { - "defaultMessage": "Beállítás" - }, - "settings": { - "defaultMessage": "Beállítások" - }, - "settings.default-site": { - "defaultMessage": "Alapértelmezett oldal" - }, - "settings.default-site.404": { - "defaultMessage": "404-es oldal" - }, - "settings.default-site.444": { - "defaultMessage": "Nincs válasz (444)" - }, - "settings.default-site.congratulations": { - "defaultMessage": "Gratulálunk oldal" - }, - "settings.default-site.description": { - "defaultMessage": "Mit mutasson az Nginx ismeretlen Kiszolgáló esetén" - }, - "settings.default-site.html": { - "defaultMessage": "Egyéni HTML" - }, - "settings.default-site.html.placeholder": { - "defaultMessage": "" - }, - "settings.default-site.redirect": { - "defaultMessage": "Átirányítás" - }, - "setup.preamble": { - "defaultMessage": "Kezdje az admin fiók létrehozásával." - }, - "setup.title": { - "defaultMessage": "Üdvözöljük!" - }, - "sign-in": { - "defaultMessage": "Bejelentkezés" - }, - "ssl-certificate": { - "defaultMessage": "SSL tanúsítvány" - }, - "stream": { - "defaultMessage": "Stream" - }, - "stream.forward-host": { - "defaultMessage": "Továbbító kiszolgáló" - }, - "stream.forward-host.placeholder": { - "defaultMessage": "example.com vagy 10.0.0.1 vagy 2001:db8:3333:4444:5555:6666:7777:8888" - }, - "stream.incoming-port": { - "defaultMessage": "Bejövő port" - }, - "streams": { - "defaultMessage": "Streamek" - }, - "streams.count": { - "defaultMessage": "{count} {count, plural, one {Stream} other {Stream}}" - }, - "streams.tcp": { - "defaultMessage": "TCP" - }, - "streams.udp": { - "defaultMessage": "UDP" - }, - "test": { - "defaultMessage": "Teszt" - }, - "update-available": { - "defaultMessage": "Frissítés elérhető: {latestVersion}" - }, - "user": { - "defaultMessage": "Felhasználó" - }, - "user.change-password": { - "defaultMessage": "Jelszó megváltoztatása" - }, - "user.confirm-password": { - "defaultMessage": "Jelszó megerősítése" - }, - "user.current-password": { - "defaultMessage": "Jelenlegi jelszó" - }, - "user.edit-profile": { - "defaultMessage": "Profil szerkesztése" - }, - "user.full-name": { - "defaultMessage": "Teljes név" - }, - "user.login-as": { - "defaultMessage": "Bejelentkezés mint {name}" - }, - "user.logout": { - "defaultMessage": "Kijelentkezés" - }, - "user.new-password": { - "defaultMessage": "Új jelszó" - }, - "user.nickname": { - "defaultMessage": "Becenév" - }, - "user.set-password": { - "defaultMessage": "Jelszó beállítása" - }, - "user.set-permissions": { - "defaultMessage": "Engedélyek beállítása {name} számára" - }, - "user.switch-dark": { - "defaultMessage": "Váltás sötét módra" - }, - "user.switch-light": { - "defaultMessage": "Váltás világos módra" - }, - "user.two-factor": { - "defaultMessage": "Kétfaktoros hitelesítés" - }, - "username": { - "defaultMessage": "Felhasználónév" - }, - "users": { - "defaultMessage": "Felhasználók" - } + "2fa.backup-codes-remaining": { + "defaultMessage": "Hátralévő tartalék kódok: {count}" + }, + "2fa.backup-warning": { + "defaultMessage": "Mentse el ezeket a tartalék kódokat biztonságos helyre. Minden kód csak egyszer használható." + }, + "2fa.disable": { + "defaultMessage": "Kétfaktoros hitelesítés letiltása" + }, + "2fa.disable-confirm": { + "defaultMessage": "2FA letiltása" + }, + "2fa.disable-warning": { + "defaultMessage": "A kétfaktoros hitelesítés letiltása kevésbé teszi biztonságossá a fiókját." + }, + "2fa.disabled": { + "defaultMessage": "Letiltva" + }, + "2fa.done": { + "defaultMessage": "Elmentettem a tartalék kódjaimat" + }, + "2fa.enable": { + "defaultMessage": "Kétfaktoros hitelesítés engedélyezése" + }, + "2fa.enabled": { + "defaultMessage": "Engedélyezve" + }, + "2fa.enter-code": { + "defaultMessage": "Adja meg az ellenőrző kódot" + }, + "2fa.enter-code-disable": { + "defaultMessage": "Adja meg az ellenőrző kódot a letiltáshoz" + }, + "2fa.regenerate": { + "defaultMessage": "Újragenerálás" + }, + "2fa.regenerate-backup": { + "defaultMessage": "Tartalék kódok újragenerálása" + }, + "2fa.regenerate-instructions": { + "defaultMessage": "Adjon meg egy ellenőrző kódot az új tartalék kódok generálásához. A régi kódok érvénytelenné válnak." + }, + "2fa.secret-key": { + "defaultMessage": "Titkos kulcs" + }, + "2fa.setup-instructions": { + "defaultMessage": "Olvassa be ezt a QR kódot a hitelesítő alkalmazásával, vagy adja meg a titkot manuálisan." + }, + "2fa.status": { + "defaultMessage": "Állapot" + }, + "2fa.title": { + "defaultMessage": "Kétfaktoros hitelesítés" + }, + "2fa.verify-enable": { + "defaultMessage": "Ellenőrzés és engedélyezés" + }, + "access-list": { + "defaultMessage": "Hozzáférési lista" + }, + "access-list.access-count": { + "defaultMessage": "{count} {count, plural, one {szabály} other {szabály}}" + }, + "access-list.auth-count": { + "defaultMessage": "{count} {count, plural, one {felhasználó} other {felhasználó}}" + }, + "access-list.help-rules-last": { + "defaultMessage": "Ha legalább 1 szabály létezik, ez a mindent tiltó szabály utolsóként lesz hozzáadva" + }, + "access-list.help.rules-order": { + "defaultMessage": "Vegye figyelembe, hogy az engedélyező és tiltó direktívák a meghatározásuk sorrendjében lesznek alkalmazva." + }, + "access-list.pass-auth": { + "defaultMessage": "Hitelesítés továbbítása az upstream felé" + }, + "access-list.public": { + "defaultMessage": "Nyilvánosan elérhető" + }, + "access-list.public.subtitle": { + "defaultMessage": "Alapszintű hitelesítés nem szükséges" + }, + "access-list.rule-source.placeholder": { + "defaultMessage": "192.168.1.100 vagy 192.168.1.0/24 vagy 2001:0db8::/32" + }, + "access-list.satisfy-any": { + "defaultMessage": "Bármely teljesítése" + }, + "access-list.subtitle": { + "defaultMessage": "{users} {users, plural, one {felhasználó} other {felhasználó}}, {rules} {rules, plural, one {szabály} other {szabály}} - Létrehozva: {date}" + }, + "access-lists": { + "defaultMessage": "Hozzáférési listák" + }, + "action.add": { + "defaultMessage": "Hozzáadás" + }, + "action.add-location": { + "defaultMessage": "Útvonal hozzáadása" + }, + "action.allow": { + "defaultMessage": "Engedélyezés" + }, + "action.close": { + "defaultMessage": "Bezárás" + }, + "action.delete": { + "defaultMessage": "Törlés" + }, + "action.deny": { + "defaultMessage": "Tiltás" + }, + "action.disable": { + "defaultMessage": "Letiltás" + }, + "action.download": { + "defaultMessage": "Letöltés" + }, + "action.edit": { + "defaultMessage": "Szerkesztés" + }, + "action.enable": { + "defaultMessage": "Engedélyezés" + }, + "action.permissions": { + "defaultMessage": "Engedélyek" + }, + "action.renew": { + "defaultMessage": "Megújítás" + }, + "action.view-details": { + "defaultMessage": "Részletek megtekintése" + }, + "auditlogs": { + "defaultMessage": "Audit naplók" + }, + "auto": { + "defaultMessage": "Automatikus" + }, + "cancel": { + "defaultMessage": "Mégse" + }, + "certificate": { + "defaultMessage": "Tanúsítvány" + }, + "certificate.custom-certificate": { + "defaultMessage": "Tanúsítvány" + }, + "certificate.custom-certificate-key": { + "defaultMessage": "Tanúsítvány kulcs" + }, + "certificate.custom-intermediate": { + "defaultMessage": "Köztes tanúsítvány" + }, + "certificate.in-use": { + "defaultMessage": "Használatban" + }, + "certificate.none.subtitle": { + "defaultMessage": "Nincs tanúsítvány hozzárendelve" + }, + "certificate.none.subtitle.for-http": { + "defaultMessage": "Ez a kiszolgáló nem fog HTTPS-t használni" + }, + "certificate.none.title": { + "defaultMessage": "Nincs" + }, + "certificate.not-in-use": { + "defaultMessage": "Nincs használatban" + }, + "certificate.renew": { + "defaultMessage": "Tanúsítvány megújítása" + }, + "certificates": { + "defaultMessage": "Tanúsítványok" + }, + "certificates.custom": { + "defaultMessage": "Egyéni tanúsítvány" + }, + "certificates.custom.warning": { + "defaultMessage": "Jelszóval védett kulcsfájlok nem támogatottak." + }, + "certificates.dns.credentials": { + "defaultMessage": "Hitelesítő fájl tartalma" + }, + "certificates.dns.credentials-note": { + "defaultMessage": "Ez a plugin egy konfigurációs fájlt igényel, amely API tokent vagy egyéb hitelesítő adatokat tartalmaz a szolgáltatóhoz" + }, + "certificates.dns.credentials-warning": { + "defaultMessage": "Ezek az adatok sima szövegként lesznek tárolva az adatbázisban és egy fájlban!" + }, + "certificates.dns.propagation-seconds": { + "defaultMessage": "Propagálási másodpercek" + }, + "certificates.dns.propagation-seconds-note": { + "defaultMessage": "Hagyja üresen a plugin alapértelmezett értékének használatához. Másodpercek száma a DNS propagálás megvárásához." + }, + "certificates.dns.provider": { + "defaultMessage": "DNS szolgáltató" + }, + "certificates.dns.provider.placeholder": { + "defaultMessage": "Válasszon szolgáltatót..." + }, + "certificates.dns.warning": { + "defaultMessage": "Ez a szakasz némi ismeretet igényel a Certbot-ról és a DNS plugin-jeiről. Kérjük, olvassa el a megfelelő plugin dokumentációját." + }, + "certificates.http.reachability-404": { + "defaultMessage": "Található szerver ezen a domain-en, de nem úgy tűnik, hogy Nginx Proxy Manager lenne. Kérjük, győződjön meg róla, hogy a domain arra az IP címre mutat, ahol az NPM példánya fut." + }, + "certificates.http.reachability-failed-to-check": { + "defaultMessage": "Az elérhetőség ellenőrzése sikertelen a site24x7.com kommunikációs hiba miatt." + }, + "certificates.http.reachability-not-resolved": { + "defaultMessage": "Nincs elérhető szerver ezen a domain-en. Kérjük, győződjön meg róla, hogy a domain létezik és arra az IP címre mutat, ahol az NPM példánya fut, és szükség esetén a 80-as port továbbítva van a routerében." + }, + "certificates.http.reachability-ok": { + "defaultMessage": "A szerver elérhető és a tanúsítványok létrehozása lehetséges lesz." + }, + "certificates.http.reachability-other": { + "defaultMessage": "Található szerver ezen a domain-en, de váratlan {code} státuszkódot adott vissza. Ez az NPM szerver? Kérjük, győződjön meg róla, hogy a domain arra az IP címre mutat, ahol az NPM példánya fut." + }, + "certificates.http.reachability-wrong-data": { + "defaultMessage": "Található szerver ezen a domain-en, de váratlan adatot adott vissza. Ez az NPM szerver? Kérjük, győződjön meg róla, hogy a domain arra az IP címre mutat, ahol az NPM példánya fut." + }, + "certificates.http.test-results": { + "defaultMessage": "Teszt eredmények" + }, + "certificates.http.warning": { + "defaultMessage": "Ezeknek a domain-eknek már konfigurálva kell lenniük, hogy erre a telepítésre mutassanak." + }, + "certificates.key-type": { + "defaultMessage": "Kulcs típus" + }, + "certificates.key-type-description": { + "defaultMessage": "Az RSA széles körben kompatibilis, az ECDSA gyorsabb és biztonságosabb, de nem biztos, hogy régebbi rendszerek támogatják" + }, + "certificates.key-type-ecdsa": { + "defaultMessage": "ECDSA 256" + }, + "certificates.key-type-rsa": { + "defaultMessage": "RSA 2048" + }, + "certificates.request.subtitle": { + "defaultMessage": "Let's Encrypt-tel" + }, + "certificates.request.title": { + "defaultMessage": "Új tanúsítvány kérelmezése" + }, + "column.access": { + "defaultMessage": "Hozzáférés" + }, + "column.authorization": { + "defaultMessage": "Jogosultság" + }, + "column.authorizations": { + "defaultMessage": "Jogosultságok" + }, + "column.custom-locations": { + "defaultMessage": "Egyéni útvonalak" + }, + "column.destination": { + "defaultMessage": "Cél" + }, + "column.details": { + "defaultMessage": "Részletek" + }, + "column.email": { + "defaultMessage": "E-mail" + }, + "column.event": { + "defaultMessage": "Esemény" + }, + "column.expires": { + "defaultMessage": "Lejár" + }, + "column.http-code": { + "defaultMessage": "HTTP kód" + }, + "column.incoming-port": { + "defaultMessage": "Bejövő port" + }, + "column.name": { + "defaultMessage": "Név" + }, + "column.protocol": { + "defaultMessage": "Protokoll" + }, + "column.provider": { + "defaultMessage": "Szolgáltató" + }, + "column.roles": { + "defaultMessage": "Szerepkörök" + }, + "column.rules": { + "defaultMessage": "Szabályok" + }, + "column.satisfy": { + "defaultMessage": "Teljesítés" + }, + "column.satisfy-all": { + "defaultMessage": "Összes" + }, + "column.satisfy-any": { + "defaultMessage": "Bármely" + }, + "column.scheme": { + "defaultMessage": "Séma" + }, + "column.source": { + "defaultMessage": "Forrás" + }, + "column.ssl": { + "defaultMessage": "SSL" + }, + "column.status": { + "defaultMessage": "Állapot" + }, + "created-on": { + "defaultMessage": "Létrehozva: {date}" + }, + "dashboard": { + "defaultMessage": "Vezérlőpult" + }, + "dead-host": { + "defaultMessage": "404-es Kiszolgáló" + }, + "dead-hosts": { + "defaultMessage": "404-es Kiszolgálók" + }, + "dead-hosts.count": { + "defaultMessage": "{count} {count, plural, one {404-es Kiszolgáló} other {404-es Kiszolgálók}}" + }, + "disabled": { + "defaultMessage": "Letiltva" + }, + "domain-names": { + "defaultMessage": "Domain nevek" + }, + "domain-names.max": { + "defaultMessage": "Maximum {count} domain név" + }, + "domain-names.placeholder": { + "defaultMessage": "Kezdjen el gépelni domain hozzáadásához..." + }, + "domain-names.wildcards-not-permitted": { + "defaultMessage": "Helyettesítő karakterek nem engedélyezettek ennél a típusnál" + }, + "domain-names.wildcards-not-supported": { + "defaultMessage": "Helyettesítő karakterek nem támogatottak ennél a CA-nál" + }, + "domains.force-ssl": { + "defaultMessage": "SSL kényszerítése" + }, + "domains.hsts-enabled": { + "defaultMessage": "HSTS engedélyezve" + }, + "domains.hsts-subdomains": { + "defaultMessage": "HSTS aldomain-ek" + }, + "domains.http2-support": { + "defaultMessage": "HTTP/2 támogatás" + }, + "domains.use-dns": { + "defaultMessage": "DNS Challenge használata" + }, + "email-address": { + "defaultMessage": "E-mail cím" + }, + "empty-search": { + "defaultMessage": "Nincs találat" + }, + "empty-subtitle": { + "defaultMessage": "Miért nem hoz létre egyet?" + }, + "enabled": { + "defaultMessage": "Engedélyezve" + }, + "error.access.at-least-one": { + "defaultMessage": "Legalább egy jogosultság vagy egy hozzáférési szabály szükséges" + }, + "error.access.duplicate-usernames": { + "defaultMessage": "A jogosultsági felhasználóneveknek egyedieknek kell lenniük" + }, + "error.invalid-auth": { + "defaultMessage": "Érvénytelen e-mail vagy jelszó" + }, + "error.invalid-domain": { + "defaultMessage": "Érvénytelen domain: {domain}" + }, + "error.invalid-email": { + "defaultMessage": "Érvénytelen e-mail cím" + }, + "error.max-character-length": { + "defaultMessage": "Maximális hossz {max} karakter" + }, + "error.max-domains": { + "defaultMessage": "Túl sok domain, a maximum {max}" + }, + "error.maximum": { + "defaultMessage": "A maximum {max}" + }, + "error.min-character-length": { + "defaultMessage": "Minimális hossz {min} karakter" + }, + "error.minimum": { + "defaultMessage": "A minimum {min}" + }, + "error.passwords-must-match": { + "defaultMessage": "A jelszavaknak egyezniük kell" + }, + "error.required": { + "defaultMessage": "Ez kötelező" + }, + "expires.on": { + "defaultMessage": "Lejár: {date}" + }, + "footer.github-fork": { + "defaultMessage": "Fork-olj a GitHub-on" + }, + "host.flags.block-exploits": { + "defaultMessage": "Gyakori exploitok blokkolása" + }, + "host.flags.cache-assets": { + "defaultMessage": "Erőforrások gyorsítótárazása" + }, + "host.flags.preserve-path": { + "defaultMessage": "Útvonal megőrzése" + }, + "host.flags.protocols": { + "defaultMessage": "Protokollok" + }, + "host.flags.websockets-upgrade": { + "defaultMessage": "Websockets támogatás" + }, + "host.forward-port": { + "defaultMessage": "Továbbító port" + }, + "host.forward-scheme": { + "defaultMessage": "Séma" + }, + "hosts": { + "defaultMessage": "Kiszolgálók" + }, + "http-only": { + "defaultMessage": "Csak HTTP" + }, + "lets-encrypt": { + "defaultMessage": "Let's Encrypt" + }, + "lets-encrypt-via-dns": { + "defaultMessage": "Let's Encrypt DNS-en keresztül" + }, + "lets-encrypt-via-http": { + "defaultMessage": "Let's Encrypt HTTP-n keresztül" + }, + "loading": { + "defaultMessage": "Betöltés…" + }, + "login.2fa-code": { + "defaultMessage": "Ellenőrző kód" + }, + "login.2fa-code-placeholder": { + "defaultMessage": "Adja meg a kódot" + }, + "login.2fa-description": { + "defaultMessage": "Adja meg a kódot a hitelesítő alkalmazásából" + }, + "login.2fa-title": { + "defaultMessage": "Kétfaktoros hitelesítés" + }, + "login.2fa-verify": { + "defaultMessage": "Ellenőrzés" + }, + "login.title": { + "defaultMessage": "Jelentkezzen be a fiókjába" + }, + "nginx-config.label": { + "defaultMessage": "Egyéni Nginx konfiguráció" + }, + "nginx-config.placeholder": { + "defaultMessage": "# Adja meg az egyéni Nginx konfigurációját itt, saját felelősségére!" + }, + "no-permission-error": { + "defaultMessage": "Nincs jogosultsága ennek megtekintéséhez." + }, + "notfound.action": { + "defaultMessage": "Vigyen haza" + }, + "notfound.content": { + "defaultMessage": "Sajnáljuk, de a keresett oldal nem található" + }, + "notfound.title": { + "defaultMessage": "Hoppá… Hibás oldalra talált" + }, + "notification.error": { + "defaultMessage": "Hiba" + }, + "notification.object-deleted": { + "defaultMessage": "{object} törölve lett" + }, + "notification.object-disabled": { + "defaultMessage": "{object} letiltva lett" + }, + "notification.object-enabled": { + "defaultMessage": "{object} engedélyezve lett" + }, + "notification.object-renewed": { + "defaultMessage": "{object} megújítva lett" + }, + "notification.object-saved": { + "defaultMessage": "{object} mentve lett" + }, + "notification.success": { + "defaultMessage": "Sikeres" + }, + "object.actions-title": { + "defaultMessage": "{object} #{id}" + }, + "object.add": { + "defaultMessage": "{object} hozzáadása" + }, + "object.delete": { + "defaultMessage": "{object} törlése" + }, + "object.delete.content": { + "defaultMessage": "Biztosan törölni szeretné ezt: {object}?" + }, + "object.edit": { + "defaultMessage": "{object} szerkesztése" + }, + "object.empty": { + "defaultMessage": "Nincsenek {objects}" + }, + "object.event.created": { + "defaultMessage": "{object} létrehozva" + }, + "object.event.deleted": { + "defaultMessage": "{object} törölve" + }, + "object.event.disabled": { + "defaultMessage": "{object} letiltva" + }, + "object.event.enabled": { + "defaultMessage": "{object} engedélyezve" + }, + "object.event.renewed": { + "defaultMessage": "{object} megújítva" + }, + "object.event.updated": { + "defaultMessage": "{object} frissítve" + }, + "offline": { + "defaultMessage": "Offline" + }, + "online": { + "defaultMessage": "Online" + }, + "options": { + "defaultMessage": "Beállítások" + }, + "password": { + "defaultMessage": "Jelszó" + }, + "password.generate": { + "defaultMessage": "Véletlenszerű jelszó generálása" + }, + "password.hide": { + "defaultMessage": "Jelszó elrejtése" + }, + "password.show": { + "defaultMessage": "Jelszó megjelenítése" + }, + "permissions.hidden": { + "defaultMessage": "Rejtett" + }, + "permissions.manage": { + "defaultMessage": "Kezelés" + }, + "permissions.view": { + "defaultMessage": "Csak megtekintés" + }, + "permissions.visibility.all": { + "defaultMessage": "Összes elem" + }, + "permissions.visibility.title": { + "defaultMessage": "Elemek láthatósága" + }, + "permissions.visibility.user": { + "defaultMessage": "Csak létrehozott elemek" + }, + "proxy-host": { + "defaultMessage": "Proxy Kiszolgáló" + }, + "proxy-host.forward-host": { + "defaultMessage": "Továbbító hostnév / IP" + }, + "proxy-hosts": { + "defaultMessage": "Proxy Kiszolgálók" + }, + "proxy-hosts.count": { + "defaultMessage": "{count} {count, plural, one {Proxy Kiszolgáló} other {Proxy Kiszolgálók}}" + }, + "public": { + "defaultMessage": "Nyilvános" + }, + "redirection-host": { + "defaultMessage": "Átirányító Kiszolgáló" + }, + "redirection-host.forward-domain": { + "defaultMessage": "Továbbító domain" + }, + "redirection-host.forward-http-code": { + "defaultMessage": "HTTP kód" + }, + "redirection-hosts": { + "defaultMessage": "Átirányító Kiszolgálók" + }, + "redirection-hosts.count": { + "defaultMessage": "{count} {count, plural, one {Átirányító Kiszolgáló} other {Átirányító Kiszolgálók}}" + }, + "redirection-hosts.http-code.300": { + "defaultMessage": "300 Többszörös választás" + }, + "redirection-hosts.http-code.301": { + "defaultMessage": "301 Véglegesen áthelyezve" + }, + "redirection-hosts.http-code.302": { + "defaultMessage": "302 Ideiglenesen áthelyezve" + }, + "redirection-hosts.http-code.303": { + "defaultMessage": "303 Lásd másik" + }, + "redirection-hosts.http-code.307": { + "defaultMessage": "307 Ideiglenes átirányítás" + }, + "redirection-hosts.http-code.308": { + "defaultMessage": "308 Végleges átirányítás" + }, + "role.admin": { + "defaultMessage": "Adminisztrátor" + }, + "role.standard-user": { + "defaultMessage": "Általános felhasználó" + }, + "save": { + "defaultMessage": "Mentés" + }, + "setting": { + "defaultMessage": "Beállítás" + }, + "settings": { + "defaultMessage": "Beállítások" + }, + "settings.default-site": { + "defaultMessage": "Alapértelmezett oldal" + }, + "settings.default-site.404": { + "defaultMessage": "404-es oldal" + }, + "settings.default-site.444": { + "defaultMessage": "Nincs válasz (444)" + }, + "settings.default-site.congratulations": { + "defaultMessage": "Gratulálunk oldal" + }, + "settings.default-site.description": { + "defaultMessage": "Mit mutasson az Nginx ismeretlen Kiszolgáló esetén" + }, + "settings.default-site.html": { + "defaultMessage": "Egyéni HTML" + }, + "settings.default-site.html.placeholder": { + "defaultMessage": "" + }, + "settings.default-site.redirect": { + "defaultMessage": "Átirányítás" + }, + "setup.preamble": { + "defaultMessage": "Kezdje az admin fiók létrehozásával." + }, + "setup.title": { + "defaultMessage": "Üdvözöljük!" + }, + "sign-in": { + "defaultMessage": "Bejelentkezés" + }, + "ssl-certificate": { + "defaultMessage": "SSL tanúsítvány" + }, + "stream": { + "defaultMessage": "Stream" + }, + "stream.forward-host": { + "defaultMessage": "Továbbító kiszolgáló" + }, + "stream.forward-host.placeholder": { + "defaultMessage": "example.com vagy 10.0.0.1 vagy 2001:db8:3333:4444:5555:6666:7777:8888" + }, + "stream.incoming-port": { + "defaultMessage": "Bejövő port" + }, + "streams": { + "defaultMessage": "Streamek" + }, + "streams.count": { + "defaultMessage": "{count} {count, plural, one {Stream} other {Stream}}" + }, + "streams.tcp": { + "defaultMessage": "TCP" + }, + "streams.udp": { + "defaultMessage": "UDP" + }, + "test": { + "defaultMessage": "Teszt" + }, + "update-available": { + "defaultMessage": "Frissítés elérhető: {latestVersion}" + }, + "user": { + "defaultMessage": "Felhasználó" + }, + "user.change-password": { + "defaultMessage": "Jelszó megváltoztatása" + }, + "user.confirm-password": { + "defaultMessage": "Jelszó megerősítése" + }, + "user.current-password": { + "defaultMessage": "Jelenlegi jelszó" + }, + "user.edit-profile": { + "defaultMessage": "Profil szerkesztése" + }, + "user.full-name": { + "defaultMessage": "Teljes név" + }, + "user.login-as": { + "defaultMessage": "Bejelentkezés mint {name}" + }, + "user.logout": { + "defaultMessage": "Kijelentkezés" + }, + "user.new-password": { + "defaultMessage": "Új jelszó" + }, + "user.nickname": { + "defaultMessage": "Becenév" + }, + "user.set-password": { + "defaultMessage": "Jelszó beállítása" + }, + "user.set-permissions": { + "defaultMessage": "Engedélyek beállítása {name} számára" + }, + "user.switch-dark": { + "defaultMessage": "Váltás sötét módra" + }, + "user.switch-light": { + "defaultMessage": "Váltás világos módra" + }, + "user.two-factor": { + "defaultMessage": "Kétfaktoros hitelesítés" + }, + "username": { + "defaultMessage": "Felhasználónév" + }, + "users": { + "defaultMessage": "Felhasználók" + } } From 28982b8bc2aad93935fc3e314858551e60077576 Mon Sep 17 00:00:00 2001 From: Jamie Curnow Date: Tue, 27 Jan 2026 10:46:30 +1000 Subject: [PATCH 28/77] Updated config files for cypress --- docker/docker-compose.ci.yml | 2 +- docker/docker-compose.dev.yml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/docker/docker-compose.ci.yml b/docker/docker-compose.ci.yml index ba2c5d3f..1bf6dade 100644 --- a/docker/docker-compose.ci.yml +++ b/docker/docker-compose.ci.yml @@ -109,7 +109,7 @@ services: - "cypress_logs:/test/results" - "./dev/resolv.conf:/etc/resolv.conf:ro" - "/etc/localtime:/etc/localtime:ro" - command: cypress run --browser chrome --config-file=cypress/config/ci.js + command: cypress run --browser chrome --config-file=cypress/config/ci.mjs networks: - fulltest diff --git a/docker/docker-compose.dev.yml b/docker/docker-compose.dev.yml index 01577716..4d519f8a 100644 --- a/docker/docker-compose.dev.yml +++ b/docker/docker-compose.dev.yml @@ -192,7 +192,7 @@ services: - "../test/results:/results" - "./dev/resolv.conf:/etc/resolv.conf:ro" - "/etc/localtime:/etc/localtime:ro" - command: cypress run --browser chrome --config-file=cypress/config/ci.js + command: cypress run --browser chrome --config-file=cypress/config/ci.mjs networks: - nginx_proxy_manager From 9b7af474bb8d0bd4b0722082cbbee0626e01b950 Mon Sep 17 00:00:00 2001 From: Jamie Curnow Date: Tue, 27 Jan 2026 11:22:16 +1000 Subject: [PATCH 29/77] Cypress ... --- .../backendApi/{client.js => client.mjs} | 74 +++++++++++-------- test/cypress/plugins/backendApi/logger.js | 7 -- test/cypress/plugins/backendApi/logger.mjs | 7 ++ .../plugins/backendApi/{task.js => task.mjs} | 44 +++++++---- test/cypress/plugins/index.mjs | 24 +++--- .../support/{commands.js => commands.mjs} | 0 test/cypress/support/e2e.js | 2 +- test/jsconfig.json | 6 +- 8 files changed, 103 insertions(+), 61 deletions(-) rename test/cypress/plugins/backendApi/{client.js => client.mjs} (60%) delete mode 100644 test/cypress/plugins/backendApi/logger.js create mode 100644 test/cypress/plugins/backendApi/logger.mjs rename test/cypress/plugins/backendApi/{task.js => task.mjs} (74%) rename test/cypress/support/{commands.js => commands.mjs} (100%) diff --git a/test/cypress/plugins/backendApi/client.js b/test/cypress/plugins/backendApi/client.mjs similarity index 60% rename from test/cypress/plugins/backendApi/client.js rename to test/cypress/plugins/backendApi/client.mjs index 6f5f7661..31ef1e03 100644 --- a/test/cypress/plugins/backendApi/client.js +++ b/test/cypress/plugins/backendApi/client.mjs @@ -1,9 +1,9 @@ -const logger = require('./logger'); -const axios = require('axios').default; +import axios from "axios"; +import logger from "./logger.mjs"; -const BackendApi = function(config, token) { +const BackendApi = function (config, token) { this.config = config; - this.token = token; + this.token = token; this.axios = axios.create({ baseURL: config.baseUrl, @@ -14,26 +14,24 @@ const BackendApi = function(config, token) { /** * @param {string} token */ -BackendApi.prototype.setToken = function(token) { +BackendApi.prototype.setToken = function (token) { this.token = token; }; /** * @param {bool} returnOnError */ -BackendApi.prototype._prepareOptions = function(returnOnError) { - let options = { +BackendApi.prototype._prepareOptions = function (returnOnError) { + const options = { headers: { - Accept: 'application/json' - } - } + Accept: "application/json", + }, + }; if (this.token) { - options.headers.Authorization = 'Bearer ' + this.token; + options.headers.Authorization = `Bearer ${this.token}`; } if (returnOnError) { - options.validateStatus = function () { - return true; - } + options.validateStatus = () => true; } return options; }; @@ -44,13 +42,30 @@ BackendApi.prototype._prepareOptions = function(returnOnError) { * @param {function} reject * @param {bool} returnOnError */ -BackendApi.prototype._handleResponse = function(response, resolve, reject, returnOnError) { - logger('Response data:', response.data); - if (!returnOnError && typeof response.data === 'object' && typeof response.data.error === 'object') { - if (typeof response.data === 'object' && typeof response.data.error === 'object' && typeof response.data.error.message !== 'undefined') { - reject(new Error(response.data.error.code + ': ' + response.data.error.message)); +BackendApi.prototype._handleResponse = ( + response, + resolve, + reject, + returnOnError, +) => { + logger("Response data:", response.data); + if ( + !returnOnError && + typeof response.data === "object" && + typeof response.data.error === "object" + ) { + if ( + typeof response.data === "object" && + typeof response.data.error === "object" && + typeof response.data.error.message !== "undefined" + ) { + reject( + new Error( + `${response.data.error.code}: ${response.data.error.message}`, + ), + ); } else { - reject(new Error('Error ' + response.status)); + reject(new Error(`Error ${response.status}`)); } } else { resolve(response.data); @@ -63,10 +78,10 @@ BackendApi.prototype._handleResponse = function(response, resolve, reject, retur * @param {function} reject * @param {bool} returnOnError */ -BackendApi.prototype._handleError = function(err, resolve, reject, returnOnError) { - logger('Axios Error:', err); +BackendApi.prototype._handleError = (err, resolve, reject, returnOnError) => { + logger("Axios Error:", err); if (returnOnError) { - resolve(typeof err.response.data !== 'undefined' ? err.response.data : err); + resolve(typeof err.response.data !== "undefined" ? err.response.data : err); } else { reject(err); } @@ -84,11 +99,11 @@ BackendApi.prototype.request = function (method, path, returnOnError, data) { const options = this._prepareOptions(returnOnError); return new Promise((resolve, reject) => { - let opts = { + const opts = { method: method, url: path, - ...options - } + ...options, + }; if (data !== undefined && data !== null) { opts.data = data; } @@ -110,16 +125,17 @@ BackendApi.prototype.request = function (method, path, returnOnError, data) { * @returns {Promise} */ BackendApi.prototype.postForm = function (path, form, returnOnError) { - logger('POST', this.config.baseUrl + path); + logger("POST", this.config.baseUrl + path); const options = this._prepareOptions(returnOnError); return new Promise((resolve, reject) => { const opts = { ...options, ...form.getHeaders(), - } + }; - this.axios.post(path, form, opts) + this.axios + .post(path, form, opts) .then((response) => { this._handleResponse(response, resolve, reject, returnOnError); }) diff --git a/test/cypress/plugins/backendApi/logger.js b/test/cypress/plugins/backendApi/logger.js deleted file mode 100644 index 8920b869..00000000 --- a/test/cypress/plugins/backendApi/logger.js +++ /dev/null @@ -1,7 +0,0 @@ -const _ = require("lodash"); - -module.exports = function() { - let arr = _.values(arguments); - arr.unshift('[Backend API]'); - console.log.apply(null, arr); -}; diff --git a/test/cypress/plugins/backendApi/logger.mjs b/test/cypress/plugins/backendApi/logger.mjs new file mode 100644 index 00000000..e515ca4b --- /dev/null +++ b/test/cypress/plugins/backendApi/logger.mjs @@ -0,0 +1,7 @@ +import _ from "lodash"; + +export default () => { + const arr = _.values(arguments); + arr.unshift('[Backend API]'); + console.log.apply(null, arr); +}; diff --git a/test/cypress/plugins/backendApi/task.js b/test/cypress/plugins/backendApi/task.mjs similarity index 74% rename from test/cypress/plugins/backendApi/task.js rename to test/cypress/plugins/backendApi/task.mjs index ab9704f4..edc5015c 100644 --- a/test/cypress/plugins/backendApi/task.js +++ b/test/cypress/plugins/backendApi/task.mjs @@ -1,13 +1,12 @@ -const fs = require('fs'); -const FormData = require('form-data'); -const logger = require('./logger'); -const Client = require('./client'); +import fs from "node:fs"; +import FormData from "form-data"; +import Client from "./client.mjs"; +import logger from "./logger.mjs"; -module.exports = function (config) { - logger('Client Ready using', config.baseUrl); +export default (config) => { + logger("Client Ready using", config.baseUrl); return { - /** * @param {object} options * @param {string} options.path API path @@ -18,7 +17,7 @@ module.exports = function (config) { backendApiGet: (options) => { const api = new Client(config); api.setToken(options.token); - return api.request('get', options.path, options.returnOnError || false); + return api.request("get", options.path, options.returnOnError || false); }, /** @@ -32,7 +31,12 @@ module.exports = function (config) { backendApiPost: (options) => { const api = new Client(config); api.setToken(options.token); - return api.request('post', options.path, options.returnOnError || false, options.data); + return api.request( + "post", + options.path, + options.returnOnError || false, + options.data, + ); }, /** @@ -48,8 +52,11 @@ module.exports = function (config) { api.setToken(options.token); const form = new FormData(); - for (let [key, value] of Object.entries(options.files)) { - form.append(key, fs.createReadStream(config.fixturesFolder + '/' + value)); + for (const [key, value] of Object.entries(options.files)) { + form.append( + key, + fs.createReadStream(`${config.fixturesFolder}/${value}`), + ); } return api.postForm(options.path, form, options.returnOnError || false); }, @@ -65,7 +72,12 @@ module.exports = function (config) { backendApiPut: (options) => { const api = new Client(config); api.setToken(options.token); - return api.request('put', options.path, options.returnOnError || false, options.data); + return api.request( + "put", + options.path, + options.returnOnError || false, + options.data, + ); }, /** @@ -78,7 +90,11 @@ module.exports = function (config) { backendApiDelete: (options) => { const api = new Client(config); api.setToken(options.token); - return api.request('delete', options.path, options.returnOnError || false); - } + return api.request( + "delete", + options.path, + options.returnOnError || false, + ); + }, }; }; diff --git a/test/cypress/plugins/index.mjs b/test/cypress/plugins/index.mjs index bf3752b1..1058d633 100644 --- a/test/cypress/plugins/index.mjs +++ b/test/cypress/plugins/index.mjs @@ -1,20 +1,26 @@ -import { SwaggerValidation } from '@jc21/cypress-swagger-validation'; -import chalk from 'chalk'; +import { SwaggerValidation } from "@jc21/cypress-swagger-validation"; +import chalk from "chalk"; +import backendTask from "./backendApi/task.mjs"; export default (on, config) => { // Replace swaggerBase config var wildcard - if (typeof config.env.swaggerBase !== 'undefined') { - config.env.swaggerBase = config.env.swaggerBase.replace('{{baseUrl}}', config.baseUrl); + if (typeof config.env.swaggerBase !== "undefined") { + config.env.swaggerBase = config.env.swaggerBase.replace( + "{{baseUrl}}", + config.baseUrl, + ); } // Plugin Events - on('task', SwaggerValidation(config)); - on('task', require('./backendApi/task')(config)); - on('task', { + on("task", SwaggerValidation(config)); + on("task", backendTask(config)); + on("task", { log(message) { - console.log(`${chalk.cyan.bold('[')}${chalk.blue.bold('LOG')}${chalk.cyan.bold(']')} ${chalk.red.bold(message)}`); + console.log( + `${chalk.cyan.bold("[")}${chalk.blue.bold("LOG")}${chalk.cyan.bold("]")} ${chalk.red.bold(message)}`, + ); return null; - } + }, }); return config; diff --git a/test/cypress/support/commands.js b/test/cypress/support/commands.mjs similarity index 100% rename from test/cypress/support/commands.js rename to test/cypress/support/commands.mjs diff --git a/test/cypress/support/e2e.js b/test/cypress/support/e2e.js index 9f724bf4..2d8a13a7 100644 --- a/test/cypress/support/e2e.js +++ b/test/cypress/support/e2e.js @@ -1,4 +1,4 @@ -import './commands'; +import './commands.mjs'; Cypress.on('uncaught:exception', (/*err, runnable*/) => { // returning false here prevents Cypress from diff --git a/test/jsconfig.json b/test/jsconfig.json index ffe33671..9caeeb91 100644 --- a/test/jsconfig.json +++ b/test/jsconfig.json @@ -4,6 +4,10 @@ "cypress/**/*.js", "cypress/config/dev.mjs", "cypress/config/ci.mjs", - "cypress/plugins/index.mjs" + "cypress/plugins/index.mjs", + "cypress/plugins/backendApi/task.mjs", + "cypress/plugins/backendApi/logger.mjs", + "cypress/plugins/backendApi/client.mjs", + "cypress/support/commands.mjs" ] } From f509e0bdba200884c3d09c0247b5f7004eed1c99 Mon Sep 17 00:00:00 2001 From: Jamie Curnow Date: Tue, 27 Jan 2026 11:26:54 +1000 Subject: [PATCH 30/77] Missing export --- test/cypress/plugins/backendApi/client.mjs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/cypress/plugins/backendApi/client.mjs b/test/cypress/plugins/backendApi/client.mjs index 31ef1e03..78618abb 100644 --- a/test/cypress/plugins/backendApi/client.mjs +++ b/test/cypress/plugins/backendApi/client.mjs @@ -145,4 +145,4 @@ BackendApi.prototype.postForm = function (path, form, returnOnError) { }); }; -module.exports = BackendApi; +export default BackendApi; From ef7f4444048fa1d245abf1914a0bddc6e7ca57e7 Mon Sep 17 00:00:00 2001 From: Jamie Curnow Date: Tue, 27 Jan 2026 11:27:21 +1000 Subject: [PATCH 31/77] Update docker image to match js version --- test/cypress/Dockerfile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/test/cypress/Dockerfile b/test/cypress/Dockerfile index 9b835fe0..a92e6aad 100644 --- a/test/cypress/Dockerfile +++ b/test/cypress/Dockerfile @@ -1,4 +1,4 @@ -FROM cypress/included:14.0.1 +FROM cypress/included:15.9.0 # Disable Cypress CLI colors ENV FORCE_COLOR=0 From 7c3c59c79f33d88cf48d1346ecd9892e8eaa027a Mon Sep 17 00:00:00 2001 From: Jamie Curnow Date: Tue, 27 Jan 2026 11:41:12 +1000 Subject: [PATCH 32/77] Fix cypress logger --- test/cypress/plugins/backendApi/logger.mjs | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/test/cypress/plugins/backendApi/logger.mjs b/test/cypress/plugins/backendApi/logger.mjs index e515ca4b..613bc478 100644 --- a/test/cypress/plugins/backendApi/logger.mjs +++ b/test/cypress/plugins/backendApi/logger.mjs @@ -1,7 +1,7 @@ -import _ from "lodash"; - -export default () => { - const arr = _.values(arguments); - arr.unshift('[Backend API]'); - console.log.apply(null, arr); +const log = (...args) => { + const arr = args; + arr.unshift("[Backend API]"); + console.log(...arr); }; + +export default log; From 7ca48f876bca9faa26af349b6f4bb3e3930bbef0 Mon Sep 17 00:00:00 2001 From: Jamie Curnow Date: Tue, 27 Jan 2026 11:55:54 +1000 Subject: [PATCH 33/77] Ugh cypress changed their exec result format. --- test/cypress/e2e/api/Streams.cy.js | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/test/cypress/e2e/api/Streams.cy.js b/test/cypress/e2e/api/Streams.cy.js index 5e5fc763..923b1b41 100644 --- a/test/cypress/e2e/api/Streams.cy.js +++ b/test/cypress/e2e/api/Streams.cy.js @@ -24,10 +24,10 @@ describe('Streams', () => { // Create a custom cert pair cy.exec('mkcert -cert-file=/test/cypress/fixtures/website1.pem -key-file=/test/cypress/fixtures/website1.key.pem website1.example.com').then((result) => { - expect(result.code).to.eq(0); + expect(result.exitCode).to.eq(0); // Install CA cy.exec('mkcert -install').then((result) => { - expect(result.code).to.eq(0); + expect(result.exitCode).to.eq(0); }); }); @@ -56,7 +56,7 @@ describe('Streams', () => { expect(data).to.have.property('udp_forwarding', false); cy.exec('curl --noproxy -- http://website1.example.com:1500').then((result) => { - expect(result.code).to.eq(0); + expect(result.exitCode).to.eq(0); expect(result.stdout).to.contain('yay it works'); }); }); @@ -107,7 +107,7 @@ describe('Streams', () => { expect(data).to.have.property('udp_forwarding', true); cy.exec('curl --noproxy -- http://website1.example.com:1502').then((result) => { - expect(result.code).to.eq(0); + expect(result.exitCode).to.eq(0); expect(result.stdout).to.contain('yay it works'); }); }); From 8ea8286cecfda4d629604095be5c76726a21a7cb Mon Sep 17 00:00:00 2001 From: Jamie Curnow Date: Tue, 27 Jan 2026 14:02:23 +1000 Subject: [PATCH 34/77] More cypress fixes --- test/cypress/e2e/api/Streams.cy.js | 1 + test/cypress/support/commands.mjs | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/test/cypress/e2e/api/Streams.cy.js b/test/cypress/e2e/api/Streams.cy.js index 923b1b41..10809f89 100644 --- a/test/cypress/e2e/api/Streams.cy.js +++ b/test/cypress/e2e/api/Streams.cy.js @@ -176,6 +176,7 @@ describe('Streams', () => { 'cert_chain_of_trust', 'cert_extlifeSpan', 'cert_revocation', + 'engine_problem', 'overall_grade', ]; diff --git a/test/cypress/support/commands.mjs b/test/cypress/support/commands.mjs index 1cc2e9c1..7d9224d0 100644 --- a/test/cypress/support/commands.mjs +++ b/test/cypress/support/commands.mjs @@ -35,7 +35,7 @@ Cypress.Commands.add("validateSwaggerFile", (url, savePath) => { .then((response) => cy.writeFile(savePath, response.body, { log: false })) .then(() => cy.exec(`yarn swagger-lint '${savePath}'`, { failOnNonZeroExit: false })) .then((result) => cy.task('log', `Swagger Vacuum Results:\n${result.stdout || ''}`) - .then(() => expect(result.code).to.eq(0))); + .then(() => expect(result.exitCode).to.eq(0))); }); }); From 1b84b8ace2df5002498fe4fb7bdbca667f282af1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 27 Jan 2026 11:41:51 +0000 Subject: [PATCH 35/77] Bump the prod-patch-updates group across 1 directory with 5 updates Bumps the prod-patch-updates group with 5 updates in the /test directory: | Package | From | To | | --- | --- | --- | | [axios](https://github.com/axios/axios) | `1.13.1` | `1.13.3` | | [eslint](https://github.com/eslint/eslint) | `9.39.0` | `9.39.2` | | [eslint-plugin-cypress](https://github.com/cypress-io/eslint-plugin-cypress) | `5.2.0` | `5.2.1` | | [form-data](https://github.com/form-data/form-data) | `4.0.4` | `4.0.5` | | [mocha](https://github.com/mochajs/mocha) | `11.7.4` | `11.7.5` | Updates `axios` from 1.13.1 to 1.13.3 - [Release notes](https://github.com/axios/axios/releases) - [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md) - [Commits](https://github.com/axios/axios/compare/v1.13.1...v1.13.3) Updates `eslint` from 9.39.0 to 9.39.2 - [Release notes](https://github.com/eslint/eslint/releases) - [Commits](https://github.com/eslint/eslint/compare/v9.39.0...v9.39.2) Updates `eslint-plugin-cypress` from 5.2.0 to 5.2.1 - [Release notes](https://github.com/cypress-io/eslint-plugin-cypress/releases) - [Commits](https://github.com/cypress-io/eslint-plugin-cypress/compare/v5.2.0...v5.2.1) Updates `form-data` from 4.0.4 to 4.0.5 - [Release notes](https://github.com/form-data/form-data/releases) - [Changelog](https://github.com/form-data/form-data/blob/master/CHANGELOG.md) - [Commits](https://github.com/form-data/form-data/compare/v4.0.4...v4.0.5) Updates `mocha` from 11.7.4 to 11.7.5 - [Release notes](https://github.com/mochajs/mocha/releases) - [Changelog](https://github.com/mochajs/mocha/blob/v11.7.5/CHANGELOG.md) - [Commits](https://github.com/mochajs/mocha/compare/v11.7.4...v11.7.5) --- updated-dependencies: - dependency-name: axios dependency-version: 1.13.3 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: prod-patch-updates - dependency-name: eslint dependency-version: 9.39.2 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: prod-patch-updates - dependency-name: eslint-plugin-cypress dependency-version: 5.2.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: prod-patch-updates - dependency-name: form-data dependency-version: 4.0.5 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: prod-patch-updates - dependency-name: mocha dependency-version: 11.7.5 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: prod-patch-updates ... Signed-off-by: dependabot[bot] --- test/yarn.lock | 114 +++++++++++-------------------------------------- 1 file changed, 26 insertions(+), 88 deletions(-) diff --git a/test/yarn.lock b/test/yarn.lock index 489dd6b2..104c1292 100644 --- a/test/yarn.lock +++ b/test/yarn.lock @@ -125,10 +125,10 @@ minimatch "^3.1.2" strip-json-comments "^3.1.1" -"@eslint/js@9.39.0": - version "9.39.0" - resolved "https://registry.yarnpkg.com/@eslint/js/-/js-9.39.0.tgz#e1955cefd1d79e80a9557274e9aa9bd3f641be01" - integrity sha512-BIhe0sW91JGPiaF1mOuPy5v8NflqfjIcDNpC+LbW9f609WVRX1rArrhi6Z2ymvrAry9jw+5POTj4t2t62o8Bmw== +"@eslint/js@9.39.2": + version "9.39.2" + resolved "https://registry.yarnpkg.com/@eslint/js/-/js-9.39.2.tgz#2d4b8ec4c3ea13c1b3748e0c97ecd766bdd80599" + integrity sha512-q1mjIoW1VX4IvSocvM/vbTiveKC4k9eLrajNEuSsmjymSDEbpGddtpfOoN7YGAqBK3NG+uqo8ia4PDTt8buCYA== "@eslint/object-schema@^2.1.7": version "2.1.7" @@ -264,11 +264,6 @@ acorn-jsx@^5.3.2: resolved "https://registry.yarnpkg.com/acorn-jsx/-/acorn-jsx-5.3.2.tgz#7ed5bb55908b3b2f1bc55c6af1653bada7f07937" integrity sha512-rq9s+JNhf0IChjtDXxllJ7g41oZk5SlXtp0LHwyA5cejwn7vKmKp4pPri6YEePv2PU65sAsegbXtIinmDFDXgQ== -acorn@^8.11.3: - version "8.11.3" - resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.11.3.tgz#71e0b14e13a4ec160724b38fb7b0f233b1b81d7a" - integrity sha512-Y9rRfJG5jcKOE0CLisYbojUjIrIEE7AGMzA/Sm4BslANhbS+cDMpgBdcPT91oJ7OuJ9hYJBx59RjbhxVnrF8Xg== - acorn@^8.15.0: version "8.15.0" resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.15.0.tgz#a360898bc415edaac46c8241f6383975b930b816" @@ -304,7 +299,7 @@ ajv@^6.12.4: json-schema-traverse "^0.4.1" uri-js "^4.2.2" -ajv@^8.0.0, ajv@^8.17.1: +ajv@^8.0.0, ajv@^8.17.1, ajv@^8.6.3: version "8.17.1" resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.17.1.tgz#37d9a5c776af6bc92d7f4f9510eba4c0a60d11a6" integrity sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g== @@ -314,16 +309,6 @@ ajv@^8.0.0, ajv@^8.17.1: json-schema-traverse "^1.0.0" require-from-string "^2.0.2" -ajv@^8.6.3: - version "8.13.0" - resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.13.0.tgz#a3939eaec9fb80d217ddf0c3376948c023f28c91" - integrity sha512-PRA911Blj99jR5RMeTunVbNXMF6Lp4vZXnk5GQjcnUWUTsrXtekg/pnmFFI2u/I36Y/2bITGS30GZCXei6uNkA== - dependencies: - fast-deep-equal "^3.1.3" - json-schema-traverse "^1.0.0" - require-from-string "^2.0.2" - uri-js "^4.4.1" - ansi-colors@^4.1.1: version "4.1.1" resolved "https://registry.yarnpkg.com/ansi-colors/-/ansi-colors-4.1.1.tgz#cbb9ae256bf750af1eab344f229aa27fe94ba348" @@ -425,19 +410,10 @@ aws4@^1.8.0: resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.9.0.tgz#24390e6ad61386b0a747265754d2a17219de862c" integrity sha512-Uvq6hVe90D0B2WEnUqtdgY1bATGz3mw33nH9Y+dmA+w5DHvUmBgkr5rM/KCHpCsiFNRUfokW/szpPPgMK2hm4A== -axios@^1.13.1: - version "1.13.1" - resolved "https://registry.yarnpkg.com/axios/-/axios-1.13.1.tgz#45b62dc8fe04e0e92274e08b98e910ba3d7963a7" - integrity sha512-hU4EGxxt+j7TQijx1oYdAjw4xuIp1wRQSsbMFwSthCWeBQur1eF+qJ5iQ5sN3Tw8YRzQNKb8jszgBdMDVqwJcw== - dependencies: - follow-redirects "^1.15.6" - form-data "^4.0.4" - proxy-from-env "^1.1.0" - -axios@^1.7.7: - version "1.12.0" - resolved "https://registry.yarnpkg.com/axios/-/axios-1.12.0.tgz#11248459be05a5ee493485628fa0e4323d0abfc3" - integrity sha512-oXTDccv8PcfjZmPGlWsPSwtOJCZ/b6W5jAMCNcfwJbCzDckwG0jrYJFaWH1yvivfCXjVzV/SPDEhMB3Q+DSurg== +axios@^1.13.1, axios@^1.7.7: + version "1.13.3" + resolved "https://registry.yarnpkg.com/axios/-/axios-1.13.3.tgz#f123e77356630a22b0163920662556944f2be1a1" + integrity sha512-ERT8kdX7DZjtUm7IitEyV7InTHAF42iJuMArIiDIV5YtPanJkgw4hw5Dyg9fh0mihdWNn1GKaeIWErfe56UQ1g== dependencies: follow-redirects "^1.15.6" form-data "^4.0.4" @@ -904,9 +880,9 @@ eslint-plugin-chai-friendly@^1.1.0: integrity sha512-+T1rClpDdXkgBAhC16vRQMI5umiWojVqkj9oUTdpma50+uByCZM/oBfxitZiOkjMRlm725mwFfz/RVgyDRvCKA== eslint-plugin-cypress@^5.2.0: - version "5.2.0" - resolved "https://registry.yarnpkg.com/eslint-plugin-cypress/-/eslint-plugin-cypress-5.2.0.tgz#c01cc5511542b5eaa38d31bcdfe888336bf70611" - integrity sha512-vuCUBQloUSILxtJrUWV39vNIQPlbg0L7cTunEAzvaUzv9LFZZym+KFLH18n9j2cZuFPdlxOqTubCvg5se0DyGw== + version "5.2.1" + resolved "https://registry.yarnpkg.com/eslint-plugin-cypress/-/eslint-plugin-cypress-5.2.1.tgz#0ce3fbe694174068403b3c0c2de252896317b97d" + integrity sha512-HTJLbcd7fwJ4agbHinZ4FUIl38bUTJT3BmH8zdgS2V32LETmPqCtWHi3xlgZ2vpX0aW6kQoHCVVqHm8NxZJ9sA== dependencies: globals "^16.2.0" @@ -923,20 +899,15 @@ eslint-visitor-keys@^3.4.3: resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-3.4.3.tgz#0cd72fe8550e3c2eae156a96a4dddcd1c8ac5800" integrity sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag== -eslint-visitor-keys@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-4.0.0.tgz#e3adc021aa038a2a8e0b2f8b0ce8f66b9483b1fb" - integrity sha512-OtIRv/2GyiF6o/d8K7MYKKbXrOUBIK6SfkIRM4Z0dY3w+LiQ0vy3F57m0Z71bjbyeiWFiHJ8brqnmE6H6/jEuw== - eslint-visitor-keys@^4.2.1: version "4.2.1" resolved "https://registry.yarnpkg.com/eslint-visitor-keys/-/eslint-visitor-keys-4.2.1.tgz#4cfea60fe7dd0ad8e816e1ed026c1d5251b512c1" integrity sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ== eslint@^9.39.0: - version "9.39.0" - resolved "https://registry.yarnpkg.com/eslint/-/eslint-9.39.0.tgz#33c90ddf62b64e1e3f83b689934b336f21b5f0e5" - integrity sha512-iy2GE3MHrYTL5lrCtMZ0X1KLEKKUjmK0kzwcnefhR66txcEmXZD2YWgR5GNdcEwkNx3a0siYkSvl0vIC+Svjmg== + version "9.39.2" + resolved "https://registry.yarnpkg.com/eslint/-/eslint-9.39.2.tgz#cb60e6d16ab234c0f8369a3fe7cc87967faf4b6c" + integrity sha512-LEyamqS7W5HB3ujJyvi0HQK/dtVINZvd5mAAp9eT5S/ujByGjiZLCzPcHVzuXbpJDJF/cxwHlfceVUDZ2lnSTw== dependencies: "@eslint-community/eslint-utils" "^4.8.0" "@eslint-community/regexpp" "^4.12.1" @@ -944,7 +915,7 @@ eslint@^9.39.0: "@eslint/config-helpers" "^0.4.2" "@eslint/core" "^0.17.0" "@eslint/eslintrc" "^3.3.1" - "@eslint/js" "9.39.0" + "@eslint/js" "9.39.2" "@eslint/plugin-kit" "^0.4.1" "@humanfs/node" "^0.16.6" "@humanwhocodes/module-importer" "^1.0.1" @@ -973,16 +944,7 @@ eslint@^9.39.0: natural-compare "^1.4.0" optionator "^0.9.3" -espree@^10.0.1: - version "10.0.1" - resolved "https://registry.yarnpkg.com/espree/-/espree-10.0.1.tgz#600e60404157412751ba4a6f3a2ee1a42433139f" - integrity sha512-MWkrWZbJsL2UwnjxTX3gG8FneachS/Mwg7tdGXce011sJd5b0JG54vat5KHnfSBODZ3Wvzd2WnjxyzsRoVv+ww== - dependencies: - acorn "^8.11.3" - acorn-jsx "^5.3.2" - eslint-visitor-keys "^4.0.0" - -espree@^10.4.0: +espree@^10.0.1, espree@^10.4.0: version "10.4.0" resolved "https://registry.yarnpkg.com/espree/-/espree-10.4.0.tgz#d54f4949d4629005a1fa168d937c3ff1f7e2a837" integrity sha512-j6PAQ2uUr79PZhBjP5C5fhl8e39FmRnOjsD5lGnWrFU8i2G776tBK7+nP8KuQUTTyAZUwfQqXAgrVH5MbH9CYQ== @@ -1187,9 +1149,9 @@ forever-agent@~0.6.1: integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE= form-data@^4.0.4, form-data@~4.0.4: - version "4.0.4" - resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.4.tgz#784cdcce0669a9d68e94d11ac4eea98088edd2c4" - integrity sha512-KrGhL9Q4zjj0kiUt5OO4Mr/A/jlI2jDYs5eHBpYHPcBEVSiipAvn2Ko2HnPe20rmcuuvMHNdZFp+4IlGTMF0Ow== + version "4.0.5" + resolved "https://registry.yarnpkg.com/form-data/-/form-data-4.0.5.tgz#b49e48858045ff4cbf6b03e1805cebcad3679053" + integrity sha512-8RipRLol37bNs2bhoV67fiTEvdTrbMUYcFTiy3+wuuOnUog2QBHCZWXDRijWQfAkhBj2Uf5UnVaiWwA5vdd82w== dependencies: asynckit "^0.4.0" combined-stream "^1.0.8" @@ -1414,14 +1376,7 @@ is-fullwidth-code-point@^3.0.0: resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz#f116f8064fe90b3f7844a38997c0b75051269f1d" integrity sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg== -is-glob@^4.0.0: - version "4.0.1" - resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.1.tgz#7567dbe9f2f5e2467bc77ab83c4a29482407a5dc" - integrity sha512-5G0tKtBTFImOqDnLB2hG6Bp2qcKEFduo4tZu9MT/H6NQv/ghhy30o55ufafxJ/LdH79LLs2Kfrn85TLKyA7BUg== - dependencies: - is-extglob "^2.1.1" - -is-glob@^4.0.3: +is-glob@^4.0.0, is-glob@^4.0.3: version "4.0.3" resolved "https://registry.yarnpkg.com/is-glob/-/is-glob-4.0.3.tgz#64f61e42cbbb2eec2071a9dac0b28ba1e65d5084" integrity sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg== @@ -1742,9 +1697,9 @@ mocha-junit-reporter@^2.2.1: xml "^1.0.1" mocha@^11.7.4: - version "11.7.4" - resolved "https://registry.yarnpkg.com/mocha/-/mocha-11.7.4.tgz#f161b17aeccb0762484b33bdb3f7ab9410ba5c82" - integrity sha512-1jYAaY8x0kAZ0XszLWu14pzsf4KV740Gld4HXkhNTXwcHx4AUEDkPzgEHg9CM5dVcW+zv036tjpsEbLraPJj4w== + version "11.7.5" + resolved "https://registry.yarnpkg.com/mocha/-/mocha-11.7.5.tgz#58f5bbfa5e0211ce7e5ee6128107cefc2515a627" + integrity sha512-mTT6RgopEYABzXWFx+GcJ+ZQ32kp4fMf0xvpZIIfSq9Z8lC/++MtcCnQ9t5FP2veYEP95FIYSvW+U9fV4xrlig== dependencies: browser-stdout "^1.3.1" chokidar "^4.0.1" @@ -1768,12 +1723,7 @@ mocha@^11.7.4: yargs-parser "^21.1.1" yargs-unparser "^2.0.0" -ms@^2.1.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" - integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== - -ms@^2.1.3: +ms@^2.1.1, ms@^2.1.3: version "2.1.3" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== @@ -1918,12 +1868,7 @@ performance-now@^2.1.0: resolved "https://registry.yarnpkg.com/performance-now/-/performance-now-2.1.0.tgz#6309f4e0e5fa913ec1c69307ae364b4b377c9e7b" integrity sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns= -picocolors@^1.1.0: - version "1.1.0" - resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.0.tgz#5358b76a78cde483ba5cef6a9dc9671440b27d59" - integrity sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw== - -picocolors@^1.1.1: +picocolors@^1.1.0, picocolors@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/picocolors/-/picocolors-1.1.1.tgz#3d321af3eab939b083c8f929a1d12cda81c26b6b" integrity sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA== @@ -2383,13 +2328,6 @@ uri-js@^4.2.2: dependencies: punycode "^2.1.0" -uri-js@^4.4.1: - version "4.4.1" - resolved "https://registry.yarnpkg.com/uri-js/-/uri-js-4.4.1.tgz#9b1a52595225859e55f669d928f88c6c57f2a77e" - integrity sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg== - dependencies: - punycode "^2.1.0" - uuid@^8.3.2: version "8.3.2" resolved "https://registry.yarnpkg.com/uuid/-/uuid-8.3.2.tgz#80d5b5ced271bb9af6c445f21a1a04c606cefbe2" From 0f463377106d4bd074a173e87b8b07a666947d08 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 27 Jan 2026 11:42:25 +0000 Subject: [PATCH 36/77] Bump the dev-patch-updates group across 1 directory with 3 updates Bumps the dev-patch-updates group with 3 updates in the /frontend directory: [@biomejs/biome](https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome), [@testing-library/react](https://github.com/testing-library/react-testing-library) and [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest). Updates `@biomejs/biome` from 2.3.2 to 2.3.13 - [Release notes](https://github.com/biomejs/biome/releases) - [Changelog](https://github.com/biomejs/biome/blob/main/packages/@biomejs/biome/CHANGELOG.md) - [Commits](https://github.com/biomejs/biome/commits/@biomejs/biome@2.3.13/packages/@biomejs/biome) Updates `@testing-library/react` from 16.3.0 to 16.3.2 - [Release notes](https://github.com/testing-library/react-testing-library/releases) - [Changelog](https://github.com/testing-library/react-testing-library/blob/main/CHANGELOG.md) - [Commits](https://github.com/testing-library/react-testing-library/compare/v16.3.0...v16.3.2) Updates `vitest` from 4.0.6 to 4.0.18 - [Release notes](https://github.com/vitest-dev/vitest/releases) - [Commits](https://github.com/vitest-dev/vitest/commits/v4.0.18/packages/vitest) --- updated-dependencies: - dependency-name: "@biomejs/biome" dependency-version: 2.3.13 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: dev-patch-updates - dependency-name: "@testing-library/react" dependency-version: 16.3.2 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: dev-patch-updates - dependency-name: vitest dependency-version: 4.0.18 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: dev-patch-updates ... Signed-off-by: dependabot[bot] --- frontend/package.json | 6 +- frontend/yarn.lock | 235 +++++++++++++++++++++--------------------- 2 files changed, 123 insertions(+), 118 deletions(-) diff --git a/frontend/package.json b/frontend/package.json index f296c827..0e7e1f6b 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -40,12 +40,12 @@ "rooks": "^9.3.0" }, "devDependencies": { - "@biomejs/biome": "^2.3.2", + "@biomejs/biome": "^2.3.13", "@formatjs/cli": "^6.12.0", "@tanstack/react-query-devtools": "^5.91.2", "@testing-library/dom": "^10.4.1", "@testing-library/jest-dom": "^6.9.1", - "@testing-library/react": "^16.3.0", + "@testing-library/react": "^16.3.2", "@types/country-flag-icons": "^1.2.2", "@types/humps": "^2.0.6", "@types/react": "^19.2.7", @@ -61,6 +61,6 @@ "vite": "^7.3.1", "vite-plugin-checker": "^0.12.0", "vite-tsconfig-paths": "^6.0.5", - "vitest": "^4.0.6" + "vitest": "^4.0.18" } } diff --git a/frontend/yarn.lock b/frontend/yarn.lock index b78538c6..78650fe4 100644 --- a/frontend/yarn.lock +++ b/frontend/yarn.lock @@ -170,59 +170,59 @@ "@babel/helper-string-parser" "^7.27.1" "@babel/helper-validator-identifier" "^7.28.5" -"@biomejs/biome@^2.3.2": - version "2.3.2" - resolved "https://registry.npmjs.org/@biomejs/biome/-/biome-2.3.2.tgz" - integrity sha512-8e9tzamuDycx7fdrcJ/F/GDZ8SYukc5ud6tDicjjFqURKYFSWMl0H0iXNXZEGmcmNUmABgGuHThPykcM41INgg== +"@biomejs/biome@^2.3.13": + version "2.3.13" + resolved "https://registry.yarnpkg.com/@biomejs/biome/-/biome-2.3.13.tgz#966c015d8610137f65c97c081bf69a44b423963b" + integrity sha512-Fw7UsV0UAtWIBIm0M7g5CRerpu1eKyKAXIazzxhbXYUyMkwNrkX/KLkGI7b+uVDQ5cLUMfOC9vR60q9IDYDstA== optionalDependencies: - "@biomejs/cli-darwin-arm64" "2.3.2" - "@biomejs/cli-darwin-x64" "2.3.2" - "@biomejs/cli-linux-arm64" "2.3.2" - "@biomejs/cli-linux-arm64-musl" "2.3.2" - "@biomejs/cli-linux-x64" "2.3.2" - "@biomejs/cli-linux-x64-musl" "2.3.2" - "@biomejs/cli-win32-arm64" "2.3.2" - "@biomejs/cli-win32-x64" "2.3.2" + "@biomejs/cli-darwin-arm64" "2.3.13" + "@biomejs/cli-darwin-x64" "2.3.13" + "@biomejs/cli-linux-arm64" "2.3.13" + "@biomejs/cli-linux-arm64-musl" "2.3.13" + "@biomejs/cli-linux-x64" "2.3.13" + "@biomejs/cli-linux-x64-musl" "2.3.13" + "@biomejs/cli-win32-arm64" "2.3.13" + "@biomejs/cli-win32-x64" "2.3.13" -"@biomejs/cli-darwin-arm64@2.3.2": - version "2.3.2" - resolved "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-2.3.2.tgz" - integrity sha512-4LECm4kc3If0JISai4c3KWQzukoUdpxy4fRzlrPcrdMSRFksR9ZoXK7JBcPuLBmd2SoT4/d7CQS33VnZpgBjew== +"@biomejs/cli-darwin-arm64@2.3.13": + version "2.3.13" + resolved "https://registry.yarnpkg.com/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-2.3.13.tgz#417fab5e8b2facf7e289f91d4bbe4275eb2dbbe8" + integrity sha512-0OCwP0/BoKzyJHnFdaTk/i7hIP9JHH9oJJq6hrSCPmJPo8JWcJhprK4gQlhFzrwdTBAW4Bjt/RmCf3ZZe59gwQ== -"@biomejs/cli-darwin-x64@2.3.2": - version "2.3.2" - resolved "https://registry.yarnpkg.com/@biomejs/cli-darwin-x64/-/cli-darwin-x64-2.3.2.tgz#9c3dffdac12e4f4d8db7680ca20f58ace1f38c23" - integrity sha512-jNMnfwHT4N3wi+ypRfMTjLGnDmKYGzxVr1EYAPBcauRcDnICFXN81wD6wxJcSUrLynoyyYCdfW6vJHS/IAoTDA== +"@biomejs/cli-darwin-x64@2.3.13": + version "2.3.13" + resolved "https://registry.yarnpkg.com/@biomejs/cli-darwin-x64/-/cli-darwin-x64-2.3.13.tgz#05abe14ced10125091f68da38ec070f7827b6758" + integrity sha512-AGr8OoemT/ejynbIu56qeil2+F2WLkIjn2d8jGK1JkchxnMUhYOfnqc9sVzcRxpG9Ycvw4weQ5sprRvtb7Yhcw== -"@biomejs/cli-linux-arm64-musl@2.3.2": - version "2.3.2" - resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-2.3.2.tgz#a0424d2fe355cc43c375b3fbf3e42d39b7221d0e" - integrity sha512-2Zz4usDG1GTTPQnliIeNx6eVGGP2ry5vE/v39nT73a3cKN6t5H5XxjcEoZZh62uVZvED7hXXikclvI64vZkYqw== +"@biomejs/cli-linux-arm64-musl@2.3.13": + version "2.3.13" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-2.3.13.tgz#aa715dbaf3d4cc97682bcb7357f0e15220321eea" + integrity sha512-TUdDCSY+Eo/EHjhJz7P2GnWwfqet+lFxBZzGHldrvULr59AgahamLs/N85SC4+bdF86EhqDuuw9rYLvLFWWlXA== -"@biomejs/cli-linux-arm64@2.3.2": - version "2.3.2" - resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-arm64/-/cli-linux-arm64-2.3.2.tgz#f85717c04d420ede20523d173a1fc10df60d4d37" - integrity sha512-amnqvk+gWybbQleRRq8TMe0rIv7GHss8mFJEaGuEZYWg1Tw14YKOkeo8h6pf1c+d3qR+JU4iT9KXnBKGON4klw== +"@biomejs/cli-linux-arm64@2.3.13": + version "2.3.13" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-arm64/-/cli-linux-arm64-2.3.13.tgz#e3463498bc23ddba306de3e45d8f9722179065e9" + integrity sha512-xvOiFkrDNu607MPMBUQ6huHmBG1PZLOrqhtK6pXJW3GjfVqJg0Z/qpTdhXfcqWdSZHcT+Nct2fOgewZvytESkw== -"@biomejs/cli-linux-x64-musl@2.3.2": - version "2.3.2" - resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-2.3.2.tgz#d3e114c744c32d2c50a77c13476bd941819c92d8" - integrity sha512-gzB19MpRdTuOuLtPpFBGrV3Lq424gHyq2lFj8wfX9tvLMLdmA/R9C7k/mqBp/spcbWuHeIEKgEs3RviOPcWGBA== +"@biomejs/cli-linux-x64-musl@2.3.13": + version "2.3.13" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-2.3.13.tgz#579e81f862272ca5a2b9860a2204382767966b7d" + integrity sha512-0bdwFVSbbM//Sds6OjtnmQGp4eUjOTt6kHvR/1P0ieR9GcTUAlPNvPC3DiavTqq302W34Ae2T6u5VVNGuQtGlQ== -"@biomejs/cli-linux-x64@2.3.2": - version "2.3.2" - resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-x64/-/cli-linux-x64-2.3.2.tgz#f66ce85d2d757d45e6edecce04753a805bd816f0" - integrity sha512-8BG/vRAhFz1pmuyd24FQPhNeueLqPtwvZk6yblABY2gzL2H8fLQAF/Z2OPIc+BPIVPld+8cSiKY/KFh6k81xfA== +"@biomejs/cli-linux-x64@2.3.13": + version "2.3.13" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-x64/-/cli-linux-x64-2.3.13.tgz#fa22633de6effcd571fa2b7983cec98b9fce6383" + integrity sha512-s+YsZlgiXNq8XkgHs6xdvKDFOj/bwTEevqEY6rC2I3cBHbxXYU1LOZstH3Ffw9hE5tE1sqT7U23C00MzkXztMw== -"@biomejs/cli-win32-arm64@2.3.2": - version "2.3.2" - resolved "https://registry.yarnpkg.com/@biomejs/cli-win32-arm64/-/cli-win32-arm64-2.3.2.tgz#b46f8b47a3d97e766cc5ad5eb67d90eeb230b2cb" - integrity sha512-lCruqQlfWjhMlOdyf5pDHOxoNm4WoyY2vZ4YN33/nuZBRstVDuqPPjS0yBkbUlLEte11FbpW+wWSlfnZfSIZvg== +"@biomejs/cli-win32-arm64@2.3.13": + version "2.3.13" + resolved "https://registry.yarnpkg.com/@biomejs/cli-win32-arm64/-/cli-win32-arm64-2.3.13.tgz#06dd89ec17b897e0c774612fbe83a19fabbb949e" + integrity sha512-QweDxY89fq0VvrxME+wS/BXKmqMrOTZlN9SqQ79kQSIc3FrEwvW/PvUegQF6XIVaekncDykB5dzPqjbwSKs9DA== -"@biomejs/cli-win32-x64@2.3.2": - version "2.3.2" - resolved "https://registry.yarnpkg.com/@biomejs/cli-win32-x64/-/cli-win32-x64-2.3.2.tgz#a14f5e220dd496705278315ee3e5e028dd657344" - integrity sha512-6Ee9P26DTb4D8sN9nXxgbi9Dw5vSOfH98M7UlmkjKB2vtUbrRqCbZiNfryGiwnPIpd6YUoTl7rLVD2/x1CyEHQ== +"@biomejs/cli-win32-x64@2.3.13": + version "2.3.13" + resolved "https://registry.yarnpkg.com/@biomejs/cli-win32-x64/-/cli-win32-x64-2.3.13.tgz#55b8cf3e4a16712855ec0462cbdb3a6e645c9466" + integrity sha512-trDw2ogdM2lyav9WFQsdsfdVy1dvZALymRpgmWsvSez0BJzBjulhOT/t+wyKeh3pZWvwP3VMs1SoOKwO3wecMQ== "@emotion/babel-plugin@^11.13.5": version "11.13.5" @@ -887,10 +887,10 @@ picocolors "^1.1.1" redent "^3.0.0" -"@testing-library/react@^16.3.0": - version "16.3.0" - resolved "https://registry.npmjs.org/@testing-library/react/-/react-16.3.0.tgz" - integrity sha512-kFSyxiEDwv1WLl2fgsq6pPBbw5aWKrsY2/noi1Id0TK0UParSF62oFQFGHXIyaG4pp2tEub/Zlel+fjjZILDsw== +"@testing-library/react@^16.3.2": + version "16.3.2" + resolved "https://registry.yarnpkg.com/@testing-library/react/-/react-16.3.2.tgz#672883b7acb8e775fc0492d9e9d25e06e89786d0" + integrity sha512-XU5/SytQM+ykqMnAnvB2umaJNIOsLF3PVv//1Ew4CTcpz0/BRyy/af40qqrt7SjKpDdT1saBMc42CUok5gaw+g== dependencies: "@babel/runtime" "^7.12.5" @@ -1105,62 +1105,62 @@ "@types/babel__core" "^7.20.5" react-refresh "^0.18.0" -"@vitest/expect@4.0.6": - version "4.0.6" - resolved "https://registry.npmjs.org/@vitest/expect/-/expect-4.0.6.tgz" - integrity sha512-5j8UUlBVhOjhj4lR2Nt9sEV8b4WtbcYh8vnfhTNA2Kn5+smtevzjNq+xlBuVhnFGXiyPPNzGrOVvmyHWkS5QGg== +"@vitest/expect@4.0.18": + version "4.0.18" + resolved "https://registry.yarnpkg.com/@vitest/expect/-/expect-4.0.18.tgz#361510d99fbf20eb814222e4afcb8539d79dc94d" + integrity sha512-8sCWUyckXXYvx4opfzVY03EOiYVxyNrHS5QxX3DAIi5dpJAAkyJezHCP77VMX4HKA2LDT/Jpfo8i2r5BE3GnQQ== dependencies: "@standard-schema/spec" "^1.0.0" "@types/chai" "^5.2.2" - "@vitest/spy" "4.0.6" - "@vitest/utils" "4.0.6" - chai "^6.0.1" + "@vitest/spy" "4.0.18" + "@vitest/utils" "4.0.18" + chai "^6.2.1" tinyrainbow "^3.0.3" -"@vitest/mocker@4.0.6": - version "4.0.6" - resolved "https://registry.npmjs.org/@vitest/mocker/-/mocker-4.0.6.tgz" - integrity sha512-3COEIew5HqdzBFEYN9+u0dT3i/NCwppLnO1HkjGfAP1Vs3vti1Hxm/MvcbC4DAn3Szo1M7M3otiAaT83jvqIjA== +"@vitest/mocker@4.0.18": + version "4.0.18" + resolved "https://registry.yarnpkg.com/@vitest/mocker/-/mocker-4.0.18.tgz#b9735da114ef65ea95652c5bdf13159c6fab4865" + integrity sha512-HhVd0MDnzzsgevnOWCBj5Otnzobjy5wLBe4EdeeFGv8luMsGcYqDuFRMcttKWZA5vVO8RFjexVovXvAM4JoJDQ== dependencies: - "@vitest/spy" "4.0.6" + "@vitest/spy" "4.0.18" estree-walker "^3.0.3" - magic-string "^0.30.19" + magic-string "^0.30.21" -"@vitest/pretty-format@4.0.6": - version "4.0.6" - resolved "https://registry.npmjs.org/@vitest/pretty-format/-/pretty-format-4.0.6.tgz" - integrity sha512-4vptgNkLIA1W1Nn5X4x8rLJBzPiJwnPc+awKtfBE5hNMVsoAl/JCCPPzNrbf+L4NKgklsis5Yp2gYa+XAS442g== +"@vitest/pretty-format@4.0.18": + version "4.0.18" + resolved "https://registry.yarnpkg.com/@vitest/pretty-format/-/pretty-format-4.0.18.tgz#fbccd4d910774072ec15463553edb8ca5ce53218" + integrity sha512-P24GK3GulZWC5tz87ux0m8OADrQIUVDPIjjj65vBXYG17ZeU3qD7r+MNZ1RNv4l8CGU2vtTRqixrOi9fYk/yKw== dependencies: tinyrainbow "^3.0.3" -"@vitest/runner@4.0.6": - version "4.0.6" - resolved "https://registry.npmjs.org/@vitest/runner/-/runner-4.0.6.tgz" - integrity sha512-trPk5qpd7Jj+AiLZbV/e+KiiaGXZ8ECsRxtnPnCrJr9OW2mLB72Cb824IXgxVz/mVU3Aj4VebY+tDTPn++j1Og== +"@vitest/runner@4.0.18": + version "4.0.18" + resolved "https://registry.yarnpkg.com/@vitest/runner/-/runner-4.0.18.tgz#c2c0a3ed226ec85e9312f9cc8c43c5b3a893a8b1" + integrity sha512-rpk9y12PGa22Jg6g5M3UVVnTS7+zycIGk9ZNGN+m6tZHKQb7jrP7/77WfZy13Y/EUDd52NDsLRQhYKtv7XfPQw== dependencies: - "@vitest/utils" "4.0.6" + "@vitest/utils" "4.0.18" pathe "^2.0.3" -"@vitest/snapshot@4.0.6": - version "4.0.6" - resolved "https://registry.npmjs.org/@vitest/snapshot/-/snapshot-4.0.6.tgz" - integrity sha512-PaYLt7n2YzuvxhulDDu6c9EosiRuIE+FI2ECKs6yvHyhoga+2TBWI8dwBjs+IeuQaMtZTfioa9tj3uZb7nev1g== +"@vitest/snapshot@4.0.18": + version "4.0.18" + resolved "https://registry.yarnpkg.com/@vitest/snapshot/-/snapshot-4.0.18.tgz#bcb40fd6d742679c2ac927ba295b66af1c6c34c5" + integrity sha512-PCiV0rcl7jKQjbgYqjtakly6T1uwv/5BQ9SwBLekVg/EaYeQFPiXcgrC2Y7vDMA8dM1SUEAEV82kgSQIlXNMvA== dependencies: - "@vitest/pretty-format" "4.0.6" - magic-string "^0.30.19" + "@vitest/pretty-format" "4.0.18" + magic-string "^0.30.21" pathe "^2.0.3" -"@vitest/spy@4.0.6": - version "4.0.6" - resolved "https://registry.npmjs.org/@vitest/spy/-/spy-4.0.6.tgz" - integrity sha512-g9jTUYPV1LtRPRCQfhbMintW7BTQz1n6WXYQYRQ25qkyffA4bjVXjkROokZnv7t07OqfaFKw1lPzqKGk1hmNuQ== +"@vitest/spy@4.0.18": + version "4.0.18" + resolved "https://registry.yarnpkg.com/@vitest/spy/-/spy-4.0.18.tgz#ba0f20503fb6d08baf3309d690b3efabdfa88762" + integrity sha512-cbQt3PTSD7P2OARdVW3qWER5EGq7PHlvE+QfzSC0lbwO+xnt7+XH06ZzFjFRgzUX//JmpxrCu92VdwvEPlWSNw== -"@vitest/utils@4.0.6": - version "4.0.6" - resolved "https://registry.npmjs.org/@vitest/utils/-/utils-4.0.6.tgz" - integrity sha512-bG43VS3iYKrMIZXBo+y8Pti0O7uNju3KvNn6DrQWhQQKcLavMB+0NZfO1/QBAEbq0MaQ3QjNsnnXlGQvsh0Z6A== +"@vitest/utils@4.0.18": + version "4.0.18" + resolved "https://registry.yarnpkg.com/@vitest/utils/-/utils-4.0.18.tgz#9636b16d86a4152ec68a8d6859cff702896433d4" + integrity sha512-msMRKLMVLWygpK3u2Hybgi4MNjcYJvwTb0Ru09+fOyCXIgT5raYP041DRRdiJiI3k/2U6SEbAETB3YtBrUkCFA== dependencies: - "@vitest/pretty-format" "4.0.6" + "@vitest/pretty-format" "4.0.18" tinyrainbow "^3.0.3" ansi-regex@^5.0.1: @@ -1244,10 +1244,10 @@ ccount@^2.0.0: resolved "https://registry.npmjs.org/ccount/-/ccount-2.0.1.tgz" integrity sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg== -chai@^6.0.1: - version "6.2.0" - resolved "https://registry.npmjs.org/chai/-/chai-6.2.0.tgz" - integrity sha512-aUTnJc/JipRzJrNADXVvpVqi6CO0dn3nx4EVPxijri+fj3LUUDyZQOgVeW54Ob3Y1Xh9Iz8f+CgaCl8v0mn9bA== +chai@^6.2.1: + version "6.2.2" + resolved "https://registry.yarnpkg.com/chai/-/chai-6.2.2.tgz#ae41b52c9aca87734505362717f3255facda360e" + integrity sha512-NUPRluOfOiTKBKvWPtSD4PhFvWCqOi0BGStNWs57X9js7XGTprSmFoz5F0tWhR4WPjNeR9jXqdC7/UpSJTnlRg== character-entities-html4@^2.0.0: version "2.1.0" @@ -1337,7 +1337,7 @@ date-fns@^4.1.0: resolved "https://registry.npmjs.org/date-fns/-/date-fns-4.1.0.tgz" integrity sha512-Ukq0owbQXxa/U3EGtsdVBkR1w7KOQ5gIBqdH2hkvknzZPYvBxb/aa6E8L7tmjFtkwZBu3UXBbjIgPo/Ez4xaNg== -debug@^4.0.0, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1, debug@^4.4.3: +debug@^4.0.0, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1: version "4.4.3" resolved "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz" integrity sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA== @@ -1887,9 +1887,9 @@ lz-string@^1.5.0: resolved "https://registry.npmjs.org/lz-string/-/lz-string-1.5.0.tgz" integrity sha512-h5bgJWpxJNswbU7qCrV0tIKQCaS3blPDrqKWx+QxzuzL1zGUzij9XCWLrSLsJPu5t+eWA/ycetzYAO5IOMcWAQ== -magic-string@^0.30.19: +magic-string@^0.30.21: version "0.30.21" - resolved "https://registry.npmjs.org/magic-string/-/magic-string-0.30.21.tgz" + resolved "https://registry.yarnpkg.com/magic-string/-/magic-string-0.30.21.tgz#56763ec09a0fa8091df27879fd94d19078c00d91" integrity sha512-vd2F4YUyEXKGcLHoq+TEyCjxueSeHnFxyyjNp80yg0XV4vUhnDer/lvvlqM/arB5bXQN5K2/3oinyCRyx8T2CQ== dependencies: "@jridgewell/sourcemap-codec" "^1.5.5" @@ -2244,6 +2244,11 @@ object-assign@^4.1.1: resolved "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz" integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg== +obug@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/obug/-/obug-2.1.1.tgz#2cba74ff241beb77d63055ddf4cd1e9f90b538be" + integrity sha512-uTqF9MuPraAQ+IsnPf366RG4cP9RtUi7MLO1N3KEc+wb0a6yKpeL0lmk2IB1jY5KHPAlTc6T/JRdC/YqxHNwkQ== + parent-module@^1.0.0: version "1.0.1" resolved "https://registry.npmjs.org/parent-module/-/parent-module-1.0.1.tgz" @@ -2732,10 +2737,10 @@ stackback@0.0.2: resolved "https://registry.npmjs.org/stackback/-/stackback-0.0.2.tgz" integrity sha512-1XMJE5fQo1jGH6Y/7ebnwPOBEkIEnT4QF32d5R1+VXdXveM0IBMJt8zfaxX1P3QhVwrYe+576+jkANtSS2mBbw== -std-env@^3.9.0: - version "3.9.0" - resolved "https://registry.npmjs.org/std-env/-/std-env-3.9.0.tgz" - integrity sha512-UGvjygr6F6tpH7o2qyqR6QYpwraIjKSdtzyBdyytFOHmPZY917kwdwLG0RbOjWOnKmnm3PeHjaoLLMie7kPLQw== +std-env@^3.10.0: + version "3.10.0" + resolved "https://registry.yarnpkg.com/std-env/-/std-env-3.10.0.tgz#d810b27e3a073047b2b5e40034881f5ea6f9c83b" + integrity sha512-5GS12FdOZNliM5mAOxFRg7Ir0pWz8MdpYm6AY6VPkGpbA7ZzmbzNcBJQ0GPvvyWgcY7QAhCgf9Uy89I03faLkg== stringify-entities@^4.0.0: version "4.0.4" @@ -2791,10 +2796,10 @@ tinybench@^2.9.0: resolved "https://registry.npmjs.org/tinybench/-/tinybench-2.9.0.tgz" integrity sha512-0+DUvqWMValLmha6lr4kD8iAMK1HzV0/aKnCtWb9v9641TnP/MFb7Pc2bxoxQjTXAErryXVgUOfv2YqNllqGeg== -tinyexec@^0.3.2: - version "0.3.2" - resolved "https://registry.npmjs.org/tinyexec/-/tinyexec-0.3.2.tgz" - integrity sha512-KQQR9yN7R5+OSwaK0XQoj22pwHoTlgYqmUscPYoknOoWCWfj/5/ABTMRi69FrKU5ffPVh5QcFikpWJI/P1ocHA== +tinyexec@^1.0.2: + version "1.0.2" + resolved "https://registry.yarnpkg.com/tinyexec/-/tinyexec-1.0.2.tgz#bdd2737fe2ba40bd6f918ae26642f264b99ca251" + integrity sha512-W/KYk+NFhkmsYpuHq5JykngiOCnxeVL8v8dFnqxSD8qEEdRfXk1SDM6JzNqcERbcGYj9tMrDQBYV9cjgnunFIg== tinyglobby@^0.2.15: version "0.2.15" @@ -3010,27 +3015,27 @@ vite-tsconfig-paths@^6.0.5: optionalDependencies: fsevents "~2.3.3" -vitest@^4.0.6: - version "4.0.6" - resolved "https://registry.npmjs.org/vitest/-/vitest-4.0.6.tgz" - integrity sha512-gR7INfiVRwnEOkCk47faros/9McCZMp5LM+OMNWGLaDBSvJxIzwjgNFufkuePBNaesGRnLmNfW+ddbUJRZn0nQ== +vitest@^4.0.18: + version "4.0.18" + resolved "https://registry.yarnpkg.com/vitest/-/vitest-4.0.18.tgz#56f966353eca0b50f4df7540cd4350ca6d454a05" + integrity sha512-hOQuK7h0FGKgBAas7v0mSAsnvrIgAvWmRFjmzpJ7SwFHH3g1k2u37JtYwOwmEKhK6ZO3v9ggDBBm0La1LCK4uQ== dependencies: - "@vitest/expect" "4.0.6" - "@vitest/mocker" "4.0.6" - "@vitest/pretty-format" "4.0.6" - "@vitest/runner" "4.0.6" - "@vitest/snapshot" "4.0.6" - "@vitest/spy" "4.0.6" - "@vitest/utils" "4.0.6" - debug "^4.4.3" + "@vitest/expect" "4.0.18" + "@vitest/mocker" "4.0.18" + "@vitest/pretty-format" "4.0.18" + "@vitest/runner" "4.0.18" + "@vitest/snapshot" "4.0.18" + "@vitest/spy" "4.0.18" + "@vitest/utils" "4.0.18" es-module-lexer "^1.7.0" expect-type "^1.2.2" - magic-string "^0.30.19" + magic-string "^0.30.21" + obug "^2.1.1" pathe "^2.0.3" picomatch "^4.0.3" - std-env "^3.9.0" + std-env "^3.10.0" tinybench "^2.9.0" - tinyexec "^0.3.2" + tinyexec "^1.0.2" tinyglobby "^0.2.15" tinyrainbow "^3.0.3" vite "^6.0.0 || ^7.0.0" From ef6391f22e45c9a314fd4bef3c7fb250e706e3df Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 27 Jan 2026 11:42:28 +0000 Subject: [PATCH 37/77] Bump @quobix/vacuum in /test in the prod-minor-updates group Bumps the prod-minor-updates group in /test with 1 update: [@quobix/vacuum](https://github.com/daveshanley/vacuum). Updates `@quobix/vacuum` from 0.19.4 to 0.23.4 - [Release notes](https://github.com/daveshanley/vacuum/releases) - [Commits](https://github.com/daveshanley/vacuum/compare/v0.19.4...v0.23.4) --- updated-dependencies: - dependency-name: "@quobix/vacuum" dependency-version: 0.23.4 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: prod-minor-updates ... Signed-off-by: dependabot[bot] --- test/package.json | 2 +- test/yarn.lock | 114 +++++++++++++++++++++++----------------------- 2 files changed, 59 insertions(+), 57 deletions(-) diff --git a/test/package.json b/test/package.json index 5348baca..32da94bf 100644 --- a/test/package.json +++ b/test/package.json @@ -5,7 +5,7 @@ "main": "index.js", "dependencies": { "@jc21/cypress-swagger-validation": "^0.3.2", - "@quobix/vacuum": "^0.19.4", + "@quobix/vacuum": "^0.23.4", "axios": "^1.13.1", "chalk": "^5.6.2", "cypress": "^15.9.0", diff --git a/test/yarn.lock b/test/yarn.lock index 489dd6b2..8b836d0c 100644 --- a/test/yarn.lock +++ b/test/yarn.lock @@ -183,6 +183,13 @@ wrap-ansi "^8.1.0" wrap-ansi-cjs "npm:wrap-ansi@^7.0.0" +"@isaacs/fs-minipass@^4.0.0": + version "4.0.1" + resolved "https://registry.yarnpkg.com/@isaacs/fs-minipass/-/fs-minipass-4.0.1.tgz#2d59ae3ab4b38fb4270bfa23d30f8e2e86c7fe32" + integrity sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w== + dependencies: + minipass "^7.0.4" + "@jc21/cypress-swagger-validation@^0.3.2": version "0.3.2" resolved "https://registry.yarnpkg.com/@jc21/cypress-swagger-validation/-/cypress-swagger-validation-0.3.2.tgz#6d1cd6c702405caf7661398b662de84a3fa50f8e" @@ -209,13 +216,14 @@ resolved "https://registry.yarnpkg.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33" integrity sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg== -"@quobix/vacuum@^0.19.4": - version "0.19.4" - resolved "https://registry.yarnpkg.com/@quobix/vacuum/-/vacuum-0.19.4.tgz#1250269268aa0838e503ea97836a98d7c9756bf1" - integrity sha512-+riEvta1fR2loK//bpdPOVs5AgE8F26RrKe6/oGjapAKVB/OOcqE88S+TSe/yeQbmj03QLi5EX3ZmrL9n0qyDg== +"@quobix/vacuum@^0.23.4": + version "0.23.4" + resolved "https://registry.yarnpkg.com/@quobix/vacuum/-/vacuum-0.23.4.tgz#9c44bc181a563cf37c0b6ba4682115a37094b7db" + integrity sha512-iFg1FauUuaeKYg4s+4cB8SQZzGChvlzE2SpYBbb9I8YicKLG2qtOc1IvHmqD0m9XQ127FUPgeRJXmOLTqp8DHg== dependencies: - node-fetch "^3.2.10" - tar "^6.1.11" + https-proxy-agent "^7.0.6" + node-fetch "^3.3.2" + tar "^7.5.2" "@types/color-name@^1.1.1": version "1.1.1" @@ -274,6 +282,11 @@ acorn@^8.15.0: resolved "https://registry.yarnpkg.com/acorn/-/acorn-8.15.0.tgz#a360898bc415edaac46c8241f6383975b930b816" integrity sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg== +agent-base@^7.1.2: + version "7.1.4" + resolved "https://registry.yarnpkg.com/agent-base/-/agent-base-7.1.4.tgz#e3cd76d4c548ee895d3c3fd8dc1f6c5b9032e7a8" + integrity sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ== + aggregate-error@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/aggregate-error/-/aggregate-error-3.1.0.tgz#92670ff50f5359bdb7a3e0d40d0ec30c5737687a" @@ -569,10 +582,10 @@ chokidar@^4.0.1: dependencies: readdirp "^4.0.1" -chownr@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/chownr/-/chownr-2.0.0.tgz#15bfbe53d2eab4cf70f18a8cd68ebe5b3cb1dece" - integrity sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ== +chownr@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/chownr/-/chownr-3.0.0.tgz#9855e64ecd240a9cc4267ce8a4aa5d24a1da15e4" + integrity sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g== ci-info@^4.1.0: version "4.2.0" @@ -759,6 +772,13 @@ dayjs@^1.10.4: resolved "https://registry.yarnpkg.com/dayjs/-/dayjs-1.11.7.tgz#4b296922642f70999544d1144a2c25730fce63e2" integrity sha512-+Yw9U6YO5TQohxLcIkrXBeY73WP3ejHWVvx8XCk3gxvQDCTEmS48ZrSZCKciI7Bhl/uCMyxYtE9UqRILmFphkQ== +debug@4: + version "4.4.3" + resolved "https://registry.yarnpkg.com/debug/-/debug-4.4.3.tgz#c6ae432d9bd9662582fce08709b038c58e9e3d6a" + integrity sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA== + dependencies: + ms "^2.1.3" + debug@^3.1.0: version "3.2.6" resolved "https://registry.yarnpkg.com/debug/-/debug-3.2.6.tgz#e83d17de16d8a7efb7717edbe5fb10135eee629b" @@ -1214,13 +1234,6 @@ fs-extra@^9.1.0: jsonfile "^6.0.1" universalify "^2.0.0" -fs-minipass@^2.0.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/fs-minipass/-/fs-minipass-2.1.0.tgz#7f5036fdbf12c63c169190cbe4199c852271f9fb" - integrity sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg== - dependencies: - minipass "^3.0.0" - function-bind@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c" @@ -1361,6 +1374,14 @@ http-signature@~1.4.0: jsprim "^2.0.2" sshpk "^1.18.0" +https-proxy-agent@^7.0.6: + version "7.0.6" + resolved "https://registry.yarnpkg.com/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz#da8dfeac7da130b05c2ba4b59c9b6cd66611a6b9" + integrity sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw== + dependencies: + agent-base "^7.1.2" + debug "4" + human-signals@^1.1.1: version "1.1.1" resolved "https://registry.yarnpkg.com/human-signals/-/human-signals-1.1.1.tgz#c5b1cd14f50aeae09ab6c59fe63ba3395fe4dfa3" @@ -1695,35 +1716,17 @@ minimist@^1.2.8: resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" integrity sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA== -minipass@^3.0.0: - version "3.3.6" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-3.3.6.tgz#7bba384db3a1520d18c9c0e5251c3444e95dd94a" - integrity sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw== - dependencies: - yallist "^4.0.0" - -minipass@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/minipass/-/minipass-5.0.0.tgz#3e9788ffb90b694a5d0ec94479a45b5d8738133d" - integrity sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ== - -"minipass@^5.0.0 || ^6.0.2 || ^7.0.0", minipass@^7.1.2: +"minipass@^5.0.0 || ^6.0.2 || ^7.0.0", minipass@^7.0.4, minipass@^7.1.2: version "7.1.2" resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.1.2.tgz#93a9626ce5e5e66bd4db86849e7515e92340a707" integrity sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw== -minizlib@^2.1.1: - version "2.1.2" - resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931" - integrity sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg== +minizlib@^3.1.0: + version "3.1.0" + resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-3.1.0.tgz#6ad76c3a8f10227c9b51d1c9ac8e30b27f5a251c" + integrity sha512-KZxYo1BUkWD2TVFLr0MQoM8vUUigWD3LlD83a/75BqC+4qE0Hb1Vo5v1FgcfaNXvfXzr+5EhQ6ing/CaBijTlw== dependencies: - minipass "^3.0.0" - yallist "^4.0.0" - -mkdirp@^1.0.3: - version "1.0.4" - resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-1.0.4.tgz#3eb5ed62622756d79a5f0e2a221dfebad75c2f7e" - integrity sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw== + minipass "^7.1.2" mkdirp@^3.0.0: version "3.0.1" @@ -1788,7 +1791,7 @@ node-domexception@^1.0.0: resolved "https://registry.yarnpkg.com/node-domexception/-/node-domexception-1.0.0.tgz#6888db46a1f71c0b76b3f7555016b63fe64766e5" integrity sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ== -node-fetch@^3.2.10: +node-fetch@^3.3.2: version "3.3.2" resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-3.3.2.tgz#d1e889bacdf733b4ff3b2b243eb7a12866a0b78b" integrity sha512-dRB78srN/l6gqWulah9SrxeYnxeddIG30+GOqK/9OlLVyLg3HPnr6SqOWTWOXKRwC2eGYCkZ59NNuSgvSrpgOA== @@ -2269,17 +2272,16 @@ systeminformation@^5.27.14: resolved "https://registry.yarnpkg.com/systeminformation/-/systeminformation-5.30.6.tgz#c100cb632bbb955fc44ba033f624da22c3a6a5be" integrity sha512-LEIyK1aEv5P3BhAPW3swdlIyCihxwEq/Gki+kcONieU4PIeRCSLDuGkk0Va/56PSBgjVgEksOM88dmY6YqOyfQ== -tar@^6.1.11: - version "6.2.1" - resolved "https://registry.yarnpkg.com/tar/-/tar-6.2.1.tgz#717549c541bc3c2af15751bea94b1dd068d4b03a" - integrity sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A== +tar@^7.5.2: + version "7.5.6" + resolved "https://registry.yarnpkg.com/tar/-/tar-7.5.6.tgz#2db7a210748a82f0a89cc31527b90d3a24984fb7" + integrity sha512-xqUeu2JAIJpXyvskvU3uvQW8PAmHrtXp2KDuMJwQqW8Sqq0CaZBAQ+dKS3RBXVhU4wC5NjAdKrmh84241gO9cA== dependencies: - chownr "^2.0.0" - fs-minipass "^2.0.0" - minipass "^5.0.0" - minizlib "^2.1.1" - mkdirp "^1.0.3" - yallist "^4.0.0" + "@isaacs/fs-minipass" "^4.0.0" + chownr "^3.0.0" + minipass "^7.1.2" + minizlib "^3.1.0" + yallist "^5.0.0" throttleit@^1.0.0: version "1.0.0" @@ -2482,10 +2484,10 @@ y18n@^5.0.5: resolved "https://registry.yarnpkg.com/y18n/-/y18n-5.0.8.tgz#7f4934d0f7ca8c56f95314939ddcd2dd91ce1d55" integrity sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA== -yallist@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/yallist/-/yallist-4.0.0.tgz#9bb92790d9c0effec63be73519e11a35019a3a72" - integrity sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A== +yallist@^5.0.0: + version "5.0.0" + resolved "https://registry.yarnpkg.com/yallist/-/yallist-5.0.0.tgz#00e2de443639ed0d78fd87de0d27469fbcffb533" + integrity sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw== yargs-parser@^21.1.1: version "21.1.1" From 2a9c1df3cbf61b0da85aca2907bdb5750a268e36 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 27 Jan 2026 13:02:11 +0000 Subject: [PATCH 38/77] Bump chalk from 4.1.2 to 5.6.2 in /backend Bumps [chalk](https://github.com/chalk/chalk) from 4.1.2 to 5.6.2. - [Release notes](https://github.com/chalk/chalk/releases) - [Commits](https://github.com/chalk/chalk/compare/v4.1.2...v5.6.2) --- updated-dependencies: - dependency-name: chalk dependency-version: 5.6.2 dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- backend/package.json | 2 +- backend/yarn.lock | 25 +++++-------------------- 2 files changed, 6 insertions(+), 21 deletions(-) diff --git a/backend/package.json b/backend/package.json index 3781f381..5fb29450 100644 --- a/backend/package.json +++ b/backend/package.json @@ -41,7 +41,7 @@ "devDependencies": { "@apidevtools/swagger-parser": "^10.1.0", "@biomejs/biome": "^2.3.12", - "chalk": "4.1.2", + "chalk": "5.6.2", "nodemon": "^3.1.11" }, "signale": { diff --git a/backend/yarn.lock b/backend/yarn.lock index 5ff645a6..59ebb85b 100644 --- a/backend/yarn.lock +++ b/backend/yarn.lock @@ -258,7 +258,7 @@ ansi-styles@^3.2.1: dependencies: color-convert "^1.9.0" -ansi-styles@^4.0.0, ansi-styles@^4.1.0: +ansi-styles@^4.0.0: version "4.3.0" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-4.3.0.tgz#edd803628ae71c04c85ae7a0906edad34b648937" integrity sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg== @@ -547,13 +547,10 @@ camelcase@^5.0.0: resolved "https://registry.yarnpkg.com/camelcase/-/camelcase-5.3.1.tgz#e3c9b31569e106811df242f715725a1f4c494320" integrity sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg== -chalk@4.1.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/chalk/-/chalk-4.1.2.tgz#aac4e2b7734a740867aeb16bf02aad556a1e7a01" - integrity sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA== - dependencies: - ansi-styles "^4.1.0" - supports-color "^7.1.0" +chalk@5.6.2: + version "5.6.2" + resolved "https://registry.yarnpkg.com/chalk/-/chalk-5.6.2.tgz#b1238b6e23ea337af71c7f8a295db5af0c158aea" + integrity sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA== chalk@^2.3.2: version "2.4.2" @@ -1215,11 +1212,6 @@ has-flag@^3.0.0: resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd" integrity sha512-sKJf1+ceQBr4SMkvQnBDNDtf4TXpVhVGateu0t918bl30FnbE2m4vNLX+VWe/dpjlb+HugGYzW7uQXH98HPEYw== -has-flag@^4.0.0: - version "4.0.0" - resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-4.0.0.tgz#944771fd9c81c81265c4d6941860da06bb59479b" - integrity sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ== - has-symbols@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.1.0.tgz#fc9c6a783a084951d0b971fe1018de813707a338" @@ -2683,13 +2675,6 @@ supports-color@^5.3.0, supports-color@^5.5.0: dependencies: has-flag "^3.0.0" -supports-color@^7.1.0: - version "7.2.0" - resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-7.2.0.tgz#1b7dcdcb32b8138801b3e478ba6a51caa89648da" - integrity sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw== - dependencies: - has-flag "^4.0.0" - supports-preserve-symlinks-flag@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz#6eda4bd344a3c94aea376d4cc31bc77311039e09" From c50f0a144e04407985da6fc04c2e8c5b84f69737 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 27 Jan 2026 13:02:36 +0000 Subject: [PATCH 39/77] Bump the prod-minor-updates group in /backend with 4 updates Bumps the prod-minor-updates group in /backend with 4 updates: [liquidjs](https://github.com/harttle/liquidjs), [mysql2](https://github.com/sidorares/node-mysql2), [objection](https://github.com/vincit/objection.js) and [pg](https://github.com/brianc/node-postgres/tree/HEAD/packages/pg). Updates `liquidjs` from 10.6.1 to 10.24.0 - [Release notes](https://github.com/harttle/liquidjs/releases) - [Changelog](https://github.com/harttle/liquidjs/blob/master/CHANGELOG.md) - [Commits](https://github.com/harttle/liquidjs/compare/v10.6.1...v10.24.0) Updates `mysql2` from 3.15.3 to 3.16.1 - [Release notes](https://github.com/sidorares/node-mysql2/releases) - [Changelog](https://github.com/sidorares/node-mysql2/blob/master/Changelog.md) - [Commits](https://github.com/sidorares/node-mysql2/compare/v3.15.3...v3.16.1) Updates `objection` from 3.0.1 to 3.1.5 - [Commits](https://github.com/vincit/objection.js/compare/3.0.1...3.1.5) Updates `pg` from 8.16.3 to 8.17.2 - [Changelog](https://github.com/brianc/node-postgres/blob/master/CHANGELOG.md) - [Commits](https://github.com/brianc/node-postgres/commits/pg@8.17.2/packages/pg) --- updated-dependencies: - dependency-name: liquidjs dependency-version: 10.24.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: prod-minor-updates - dependency-name: mysql2 dependency-version: 3.16.1 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: prod-minor-updates - dependency-name: objection dependency-version: 3.1.5 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: prod-minor-updates - dependency-name: pg dependency-version: 8.17.2 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: prod-minor-updates ... Signed-off-by: dependabot[bot] --- backend/package.json | 8 +-- backend/yarn.lock | 128 +++++++++++++++++++++++-------------------- 2 files changed, 72 insertions(+), 64 deletions(-) diff --git a/backend/package.json b/backend/package.json index 3781f381..6ae73f0a 100644 --- a/backend/package.json +++ b/backend/package.json @@ -24,15 +24,15 @@ "gravatar": "^1.8.2", "jsonwebtoken": "^9.0.3", "knex": "3.1.0", - "liquidjs": "10.6.1", + "liquidjs": "10.24.0", "lodash": "^4.17.23", "moment": "^2.30.1", - "mysql2": "^3.15.3", + "mysql2": "^3.16.2", "node-rsa": "^1.1.1", - "objection": "3.0.1", + "objection": "3.1.5", "otplib": "^12.0.1", "path": "^0.12.7", - "pg": "^8.16.3", + "pg": "^8.17.2", "proxy-agent": "^6.5.0", "signale": "1.4.0", "sqlite3": "^5.1.7", diff --git a/backend/yarn.lock b/backend/yarn.lock index 5ff645a6..837e3c21 100644 --- a/backend/yarn.lock +++ b/backend/yarn.lock @@ -236,7 +236,14 @@ ajv-draft-04@^1.0.0: resolved "https://registry.yarnpkg.com/ajv-draft-04/-/ajv-draft-04-1.0.0.tgz#3b64761b268ba0b9e668f0b41ba53fce0ad77fc8" integrity sha512-mv00Te6nmYbRp5DCwclxtt7yV/joXJPGS7nM+97GdxvuttCOfgI3K4U25zboyeX0O+myI8ERluxQe5wljMmVIw== -ajv@^8.17.1, ajv@^8.6.2: +ajv-formats@^2.1.1: + version "2.1.1" + resolved "https://registry.yarnpkg.com/ajv-formats/-/ajv-formats-2.1.1.tgz#6e669400659eb74973bbf2e33327180a0996b520" + integrity sha512-Wx0Kx52hxE7C18hkMEggYlEifqWZtYaRgouJor+WMdPnQyEK13vgEWyVNup7SoeeoLMsr4kf5h6dOW11I15MUA== + dependencies: + ajv "^8.0.0" + +ajv@^8.0.0, ajv@^8.17.1: version "8.17.1" resolved "https://registry.yarnpkg.com/ajv/-/ajv-8.17.1.tgz#37d9a5c776af6bc92d7f4f9510eba4c0a60d11a6" integrity sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g== @@ -368,7 +375,7 @@ async@^3.2.4: resolved "https://registry.yarnpkg.com/async/-/async-3.2.6.tgz#1b0728e14929d51b85b449b7f06e27c1145e38ce" integrity sha512-htCUDlxyyCLMgaM3xXg0C0LW2xqfuQ6p05pCEIsXuyQ+a1koYKTuBMzRNwmybfLgvJDMd0r1LTn4+E0Ti6C2AA== -aws-ssl-profiles@^1.1.1: +aws-ssl-profiles@^1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/aws-ssl-profiles/-/aws-ssl-profiles-1.1.2.tgz#157dd77e9f19b1d123678e93f120e6f193022641" integrity sha512-NZKeq9AfyQvEeNlN0zSYAaWrmBffJh3IELMZfRpJVWgrpEbtEpnjvzqBPf+mxoI287JohRDoa+/nsfqqiZmF6g== @@ -1300,10 +1307,10 @@ iconv-lite@^0.6.2: dependencies: safer-buffer ">= 2.1.2 < 3.0.0" -iconv-lite@^0.7.0: - version "0.7.0" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.7.0.tgz#c50cd80e6746ca8115eb98743afa81aa0e147a3e" - integrity sha512-cf6L2Ds3h57VVmkZe+Pn+5APsT7FpqJtEhhieDCvrE2MK5Qk9MyffgQyuxQTm6BChfeZNtcOLHp9IcWRVcIcBQ== +iconv-lite@^0.7.2: + version "0.7.2" + resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.7.2.tgz#d0bdeac3f12b4835b7359c2ad89c422a4d1cc72e" + integrity sha512-im9DjEDQ55s9fL4EYzOAv0yMqmMBSZp6G0VvFyTMPKWxiSBHUj9NW/qqLmXUwXrrM7AvqSlTCfvqRb0cM8yYqw== dependencies: safer-buffer ">= 2.1.2 < 3.0.0" @@ -1520,10 +1527,10 @@ lazystream@^1.0.0: dependencies: readable-stream "^2.0.5" -liquidjs@10.6.1: - version "10.6.1" - resolved "https://registry.yarnpkg.com/liquidjs/-/liquidjs-10.6.1.tgz#b401662cb8f0cca59b42f79fc08e411c86d92dab" - integrity sha512-6yUDD8i6QRgVppB8dD73Z672lNa2pxHMsMNEZvbVQyj937wMk/kbKfhSnN9Sess/k8eRdgKeQHsTGIiCGkWrGw== +liquidjs@10.24.0: + version "10.24.0" + resolved "https://registry.yarnpkg.com/liquidjs/-/liquidjs-10.24.0.tgz#1aa832189b48b4102049dfa7a8eea40281fa9389" + integrity sha512-TAUNAdgwaAXjjcUFuYVJm9kOVH7zc0mTKxsG9t9Lu4qdWjB2BEblyVIYpjWcmJLMGgiYqnGNJjpNMHx0gp/46A== dependencies: commander "^10.0.0" @@ -1612,7 +1619,7 @@ lodash@^4.17.21, lodash@^4.17.23: resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.23.tgz#f113b0378386103be4f6893388c73d0bde7f2c5a" integrity sha512-LgVTMpQtIopCi79SJeDiP0TfWi5CNEc/L/aRdTh3yIvmZXTnheWpKjSZhnvMl8iXbC1tFg9gdHHDMLoV7CnG+w== -long@^5.2.1: +long@^5.3.2: version "5.3.2" resolved "https://registry.yarnpkg.com/long/-/long-5.3.2.tgz#1d84463095999262d7d7b7f8bfd4a8cc55167f83" integrity sha512-mNAgZ1GmyNhD7AuqnTG3/VQ26o760+ZYBPKjPvugO8+nLbYfX6TVpJPseBvopbdY+qpZ/lKUnmEc1LeZYS3QAA== @@ -1629,10 +1636,10 @@ lru-cache@^7.14.1: resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-7.18.3.tgz#f793896e0fd0e954a59dfdd82f0773808df6aa89" integrity sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA== -lru.min@^1.0.0: - version "1.1.2" - resolved "https://registry.yarnpkg.com/lru.min/-/lru.min-1.1.2.tgz#01ce1d72cc50c7faf8bd1f809ebf05d4331021eb" - integrity sha512-Nv9KddBcQSlQopmBHXSsZVY5xsdlZkdH/Iey0BlcBYggMd4two7cZnKOK9vmy3nY0O5RGH99z1PCeTpPqszUYg== +lru.min@^1.1.0, lru.min@^1.1.3: + version "1.1.3" + resolved "https://registry.yarnpkg.com/lru.min/-/lru.min-1.1.3.tgz#c8c3d001dfb4cbe5b8d1f4bea207d4a320e5d76f" + integrity sha512-Lkk/vx6ak3rYkRR0Nhu4lFUT2VDnQSxBe8Hbl7f36358p6ow8Bnvr8lrLt98H8J1aGxfhbX4Fs5tYg2+FTwr5Q== make-dir@^3.0.0, make-dir@^3.1.0: version "3.1.0" @@ -1818,27 +1825,27 @@ ms@2.1.3, ms@^2.0.0, ms@^2.1.1, ms@^2.1.3: resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== -mysql2@^3.15.3: - version "3.15.3" - resolved "https://registry.yarnpkg.com/mysql2/-/mysql2-3.15.3.tgz#f0348d9c7401bb98cb1f45ffc5a773b109f70808" - integrity sha512-FBrGau0IXmuqg4haEZRBfHNWB5mUARw6hNwPDXXGg0XzVJ50mr/9hb267lvpVMnhZ1FON3qNd4Xfcez1rbFwSg== +mysql2@^3.16.2: + version "3.16.2" + resolved "https://registry.yarnpkg.com/mysql2/-/mysql2-3.16.2.tgz#b56d8917bfbc01af02f9c301029c019868b6ab6d" + integrity sha512-JsqBpYNy7pH20lGfPuSyRSIcCxSeAIwxWADpV64nP9KeyN3ZKpHZgjKXuBKsh7dH6FbOvf1bOgoVKjSUPXRMTw== dependencies: - aws-ssl-profiles "^1.1.1" + aws-ssl-profiles "^1.1.2" denque "^2.1.0" generate-function "^2.3.1" - iconv-lite "^0.7.0" - long "^5.2.1" - lru.min "^1.0.0" - named-placeholders "^1.1.3" + iconv-lite "^0.7.2" + long "^5.3.2" + lru.min "^1.1.3" + named-placeholders "^1.1.6" seq-queue "^0.0.5" - sqlstring "^2.3.2" + sqlstring "^2.3.3" -named-placeholders@^1.1.3: - version "1.1.3" - resolved "https://registry.yarnpkg.com/named-placeholders/-/named-placeholders-1.1.3.tgz#df595799a36654da55dda6152ba7a137ad1d9351" - integrity sha512-eLoBxg6wE/rZkJPhU/xRX1WTpkFEwDJEN96oxFrTsqBdbT5ec295Q+CoHrL9IT0DipqKhmGcaZmwOt8OON5x1w== +named-placeholders@^1.1.6: + version "1.1.6" + resolved "https://registry.yarnpkg.com/named-placeholders/-/named-placeholders-1.1.6.tgz#c50c6920b43f258f59c16add1e56654f5cc02bb5" + integrity sha512-Tz09sEL2EEuv5fFowm419c1+a/jSMiBjI9gHxVLrVdbUkkNUUfjsVYs9pVZu5oCon/kmRh9TfLEObFtkVxmY0w== dependencies: - lru-cache "^7.14.1" + lru.min "^1.1.0" napi-build-utils@^2.0.0: version "2.0.0" @@ -1965,12 +1972,13 @@ object-inspect@^1.13.3: resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.4.tgz#8375265e21bc20d0fa582c22e1b13485d6e00213" integrity sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew== -objection@3.0.1: - version "3.0.1" - resolved "https://registry.yarnpkg.com/objection/-/objection-3.0.1.tgz#f67dc698187d10524e5d1b5d37a54e5bba49a42a" - integrity sha512-rqNnyQE+C55UHjdpTOJEKQHJGZ/BGtBBtgxdUpKG4DQXRUmqxfmgS/MhPWxB9Pw0mLSVLEltr6soD4c0Sddy0Q== +objection@3.1.5: + version "3.1.5" + resolved "https://registry.yarnpkg.com/objection/-/objection-3.1.5.tgz#53c32f6b6cba2958bc28cf723de96c2676da8286" + integrity sha512-Hx/ipAwXSuRBbOMWFKtRsAN0yITafqXtWB4OT4Z9wED7ty1h7bOnBdhLtcNus23GwLJqcMsRWdodL2p5GwlnfQ== dependencies: - ajv "^8.6.2" + ajv "^8.17.1" + ajv-formats "^2.1.1" db-errors "^0.2.3" on-finished@~2.4.1: @@ -2114,35 +2122,35 @@ path@^0.12.7: process "^0.11.1" util "^0.10.3" -pg-cloudflare@^1.2.7: - version "1.2.7" - resolved "https://registry.yarnpkg.com/pg-cloudflare/-/pg-cloudflare-1.2.7.tgz#a1f3d226bab2c45ae75ea54d65ec05ac6cfafbef" - integrity sha512-YgCtzMH0ptvZJslLM1ffsY4EuGaU0cx4XSdXLRFae8bPP4dS5xL1tNB3k2o/N64cHJpwU7dxKli/nZ2lUa5fLg== +pg-cloudflare@^1.3.0: + version "1.3.0" + resolved "https://registry.yarnpkg.com/pg-cloudflare/-/pg-cloudflare-1.3.0.tgz#386035d4bfcf1a7045b026f8b21acf5353f14d65" + integrity sha512-6lswVVSztmHiRtD6I8hw4qP/nDm1EJbKMRhf3HCYaqud7frGysPv7FYJ5noZQdhQtN2xJnimfMtvQq21pdbzyQ== pg-connection-string@2.6.2: version "2.6.2" resolved "https://registry.yarnpkg.com/pg-connection-string/-/pg-connection-string-2.6.2.tgz#713d82053de4e2bd166fab70cd4f26ad36aab475" integrity sha512-ch6OwaeaPYcova4kKZ15sbJ2hKb/VP48ZD2gE7i1J+L4MspCtBMAx8nMgz7bksc7IojCIIWuEhHibSMFH8m8oA== -pg-connection-string@^2.9.1: - version "2.9.1" - resolved "https://registry.yarnpkg.com/pg-connection-string/-/pg-connection-string-2.9.1.tgz#bb1fd0011e2eb76ac17360dc8fa183b2d3465238" - integrity sha512-nkc6NpDcvPVpZXxrreI/FOtX3XemeLl8E0qFr6F2Lrm/I8WOnaWNhIPK2Z7OHpw7gh5XJThi6j6ppgNoaT1w4w== +pg-connection-string@^2.10.1: + version "2.10.1" + resolved "https://registry.yarnpkg.com/pg-connection-string/-/pg-connection-string-2.10.1.tgz#34e0bf60333551ae1e76caf47cce633a5b2e4b70" + integrity sha512-iNzslsoeSH2/gmDDKiyMqF64DATUCWj3YJ0wP14kqcsf2TUklwimd+66yYojKwZCA7h2yRNLGug71hCBA2a4sw== pg-int8@1.0.1: version "1.0.1" resolved "https://registry.yarnpkg.com/pg-int8/-/pg-int8-1.0.1.tgz#943bd463bf5b71b4170115f80f8efc9a0c0eb78c" integrity sha512-WCtabS6t3c8SkpDBUlb1kjOs7l66xsGdKpIPZsg4wR+B3+u9UAum2odSsF9tnvxg80h4ZxLWMy4pRjOsFIqQpw== -pg-pool@^3.10.1: - version "3.10.1" - resolved "https://registry.yarnpkg.com/pg-pool/-/pg-pool-3.10.1.tgz#481047c720be2d624792100cac1816f8850d31b2" - integrity sha512-Tu8jMlcX+9d8+QVzKIvM/uJtp07PKr82IUOYEphaWcoBhIYkoHpLXN3qO59nAI11ripznDsEzEv8nUxBVWajGg== +pg-pool@^3.11.0: + version "3.11.0" + resolved "https://registry.yarnpkg.com/pg-pool/-/pg-pool-3.11.0.tgz#adf9a6651a30c839f565a3cc400110949c473d69" + integrity sha512-MJYfvHwtGp870aeusDh+hg9apvOe2zmpZJpyt+BMtzUWlVqbhFmMK6bOBXLBUPd7iRtIF9fZplDc7KrPN3PN7w== -pg-protocol@^1.10.3: - version "1.10.3" - resolved "https://registry.yarnpkg.com/pg-protocol/-/pg-protocol-1.10.3.tgz#ac9e4778ad3f84d0c5670583bab976ea0a34f69f" - integrity sha512-6DIBgBQaTKDJyxnXaLiLR8wBpQQcGWuAESkRBX/t6OwA8YsqP+iVSiond2EDy6Y/dsGk8rh/jtax3js5NeV7JQ== +pg-protocol@^1.11.0: + version "1.11.0" + resolved "https://registry.yarnpkg.com/pg-protocol/-/pg-protocol-1.11.0.tgz#2502908893edaa1e8c0feeba262dd7b40b317b53" + integrity sha512-pfsxk2M9M3BuGgDOfuy37VNRRX3jmKgMjcvAcWqNDpZSf4cUmv8HSOl5ViRQFsfARFn0KuUQTgLxVMbNq5NW3g== pg-types@2.2.0: version "2.2.0" @@ -2155,18 +2163,18 @@ pg-types@2.2.0: postgres-date "~1.0.4" postgres-interval "^1.1.0" -pg@^8.16.3: - version "8.16.3" - resolved "https://registry.yarnpkg.com/pg/-/pg-8.16.3.tgz#160741d0b44fdf64680e45374b06d632e86c99fd" - integrity sha512-enxc1h0jA/aq5oSDMvqyW3q89ra6XIIDZgCX9vkMrnz5DFTw/Ny3Li2lFQ+pt3L6MCgm/5o2o8HW9hiJji+xvw== +pg@^8.17.2: + version "8.17.2" + resolved "https://registry.yarnpkg.com/pg/-/pg-8.17.2.tgz#8df8c039c36bb97016be276094fc4991e8683963" + integrity sha512-vjbKdiBJRqzcYw1fNU5KuHyYvdJ1qpcQg1CeBrHFqV1pWgHeVR6j/+kX0E1AAXfyuLUGY1ICrN2ELKA/z2HWzw== dependencies: - pg-connection-string "^2.9.1" - pg-pool "^3.10.1" - pg-protocol "^1.10.3" + pg-connection-string "^2.10.1" + pg-pool "^3.11.0" + pg-protocol "^1.11.0" pg-types "2.2.0" pgpass "1.0.5" optionalDependencies: - pg-cloudflare "^1.2.7" + pg-cloudflare "^1.3.0" pgpass@1.0.5: version "1.0.5" @@ -2614,7 +2622,7 @@ sqlite3@^5.1.7: optionalDependencies: node-gyp "8.x" -sqlstring@^2.3.2: +sqlstring@^2.3.3: version "2.3.3" resolved "https://registry.yarnpkg.com/sqlstring/-/sqlstring-2.3.3.tgz#2ddc21f03bce2c387ed60680e739922c65751d0c" integrity sha512-qC9iz2FlN7DQl3+wjwn3802RTyjCx7sDvfQEXchwa6CWOx07/WVfh91gBmQ9fahw8snwGEWU3xGzOt4tFyHLxg== From b6f421c5fcaec6dfb5f655f5bfd9e71284fc8e44 Mon Sep 17 00:00:00 2001 From: Jamie Curnow Date: Wed, 28 Jan 2026 12:54:55 +1000 Subject: [PATCH 40/77] Update biome schema --- backend/biome.json | 2 +- frontend/biome.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/backend/biome.json b/backend/biome.json index 3d985b0f..17f46b04 100644 --- a/backend/biome.json +++ b/backend/biome.json @@ -1,5 +1,5 @@ { - "$schema": "https://biomejs.dev/schemas/2.3.2/schema.json", + "$schema": "https://biomejs.dev/schemas/2.3.12/schema.json", "vcs": { "enabled": true, "clientKind": "git", diff --git a/frontend/biome.json b/frontend/biome.json index 298b88b5..696a4e43 100644 --- a/frontend/biome.json +++ b/frontend/biome.json @@ -1,5 +1,5 @@ { - "$schema": "https://biomejs.dev/schemas/2.3.2/schema.json", + "$schema": "https://biomejs.dev/schemas/2.3.12/schema.json", "vcs": { "enabled": true, "clientKind": "git", From df81c8425f4d9bc6b1b7cc9cde057ec948b9e826 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 28 Jan 2026 02:56:17 +0000 Subject: [PATCH 41/77] Bump @apidevtools/swagger-parser from 10.1.1 to 12.1.0 in /backend Bumps [@apidevtools/swagger-parser](https://github.com/APIDevTools/swagger-parser) from 10.1.1 to 12.1.0. - [Release notes](https://github.com/APIDevTools/swagger-parser/releases) - [Changelog](https://github.com/APIDevTools/swagger-parser/blob/main/CHANGELOG.md) - [Commits](https://github.com/APIDevTools/swagger-parser/compare/v10.1.1...v12.1.0) --- updated-dependencies: - dependency-name: "@apidevtools/swagger-parser" dependency-version: 12.1.0 dependency-type: direct:development update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- backend/package.json | 2 +- backend/yarn.lock | 20 +++++++++----------- 2 files changed, 10 insertions(+), 12 deletions(-) diff --git a/backend/package.json b/backend/package.json index 1bb19840..d828a48f 100644 --- a/backend/package.json +++ b/backend/package.json @@ -39,7 +39,7 @@ "temp-write": "^4.0.0" }, "devDependencies": { - "@apidevtools/swagger-parser": "^10.1.0", + "@apidevtools/swagger-parser": "^12.1.0", "@biomejs/biome": "^2.3.12", "chalk": "5.6.2", "nodemon": "^3.1.11" diff --git a/backend/yarn.lock b/backend/yarn.lock index 72029e61..1c314add 100644 --- a/backend/yarn.lock +++ b/backend/yarn.lock @@ -2,12 +2,11 @@ # yarn lockfile v1 -"@apidevtools/json-schema-ref-parser@11.7.2": - version "11.7.2" - resolved "https://registry.yarnpkg.com/@apidevtools/json-schema-ref-parser/-/json-schema-ref-parser-11.7.2.tgz#cdf3e0aded21492364a70e193b45b7cf4177f031" - integrity sha512-4gY54eEGEstClvEkGnwVkTkrx0sqwemEFG5OSRRn3tD91XH0+Q8XIkYIfo7IwEWPpJZwILb9GUXeShtplRc/eA== +"@apidevtools/json-schema-ref-parser@14.0.1": + version "14.0.1" + resolved "https://registry.yarnpkg.com/@apidevtools/json-schema-ref-parser/-/json-schema-ref-parser-14.0.1.tgz#3bc445ed2eddf72bc2f9eb2e295c696bdc5be725" + integrity sha512-Oc96zvmxx1fqoSEdUmfmvvb59/KDOnUoJ7s2t7bISyAn0XEz57LCCw8k2Y4Pf3mwKaZLMciESALORLgfe2frCw== dependencies: - "@jsdevtools/ono" "^7.1.3" "@types/json-schema" "^7.0.15" js-yaml "^4.1.0" @@ -30,15 +29,14 @@ resolved "https://registry.yarnpkg.com/@apidevtools/swagger-methods/-/swagger-methods-3.0.2.tgz#b789a362e055b0340d04712eafe7027ddc1ac267" integrity sha512-QAkD5kK2b1WfjDS/UQn/qQkbwF31uqRjPTrsCs5ZG9BQGAkjwvqGFjjPqAuzac/IYzpPtRzjCP1WrTuAIjMrXg== -"@apidevtools/swagger-parser@^10.1.0": - version "10.1.1" - resolved "https://registry.yarnpkg.com/@apidevtools/swagger-parser/-/swagger-parser-10.1.1.tgz#e29bf17cf94b487a340e06784e9fbe20cb671c45" - integrity sha512-u/kozRnsPO/x8QtKYJOqoGtC4kH6yg1lfYkB9Au0WhYB0FNLpyFusttQtvhlwjtG3rOwiRz4D8DnnXa8iEpIKA== +"@apidevtools/swagger-parser@^12.1.0": + version "12.1.0" + resolved "https://registry.yarnpkg.com/@apidevtools/swagger-parser/-/swagger-parser-12.1.0.tgz#ef73e5f9e32c2becef6d95b90fb4481b0fec8fe4" + integrity sha512-e5mJoswsnAX0jG+J09xHFYQXb/bUc5S3pLpMxUuRUA2H8T2kni3yEoyz2R3Dltw5f4A6j6rPNMpWTK+iVDFlng== dependencies: - "@apidevtools/json-schema-ref-parser" "11.7.2" + "@apidevtools/json-schema-ref-parser" "14.0.1" "@apidevtools/openapi-schemas" "^2.1.0" "@apidevtools/swagger-methods" "^3.0.2" - "@jsdevtools/ono" "^7.1.3" ajv "^8.17.1" ajv-draft-04 "^1.0.0" call-me-maybe "^1.0.2" From 534afe606708ee5ffe09bd67ccdbf91b58a7e956 Mon Sep 17 00:00:00 2001 From: Jamie Curnow Date: Wed, 28 Jan 2026 14:04:32 +1000 Subject: [PATCH 42/77] Implement suggestion from #5216 hopefully rectifying https -> forced https hosts --- docker/rootfs/etc/nginx/conf.d/include/force-ssl.conf | 3 +++ 1 file changed, 3 insertions(+) diff --git a/docker/rootfs/etc/nginx/conf.d/include/force-ssl.conf b/docker/rootfs/etc/nginx/conf.d/include/force-ssl.conf index aa52f335..e43c2fc8 100644 --- a/docker/rootfs/etc/nginx/conf.d/include/force-ssl.conf +++ b/docker/rootfs/etc/nginx/conf.d/include/force-ssl.conf @@ -5,6 +5,9 @@ if ($scheme = "http") { if ($request_uri = /.well-known/acme-challenge/test-challenge) { set $test "${test}T"; } +if ($http_x_forwarded_proto = "https") { + set $test "${test}S"; +} if ($test = H) { return 301 https://$host$request_uri; } From f9f743499f942e3883d191e6135d86f2b2aa4410 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 28 Jan 2026 05:00:34 +0000 Subject: [PATCH 43/77] Bump the prod-patch-updates group across 1 directory with 4 updates Bumps the prod-patch-updates group with 4 updates in the /frontend directory: [@tanstack/react-query](https://github.com/TanStack/query/tree/HEAD/packages/react-query), [formik](https://github.com/jaredpalmer/formik), [react](https://github.com/facebook/react/tree/HEAD/packages/react) and [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom). Updates `@tanstack/react-query` from 5.90.6 to 5.90.20 - [Release notes](https://github.com/TanStack/query/releases) - [Changelog](https://github.com/TanStack/query/blob/main/packages/react-query/CHANGELOG.md) - [Commits](https://github.com/TanStack/query/commits/@tanstack/react-query@5.90.20/packages/react-query) Updates `formik` from 2.4.6 to 2.4.9 - [Release notes](https://github.com/jaredpalmer/formik/releases) - [Commits](https://github.com/jaredpalmer/formik/compare/formik@2.4.6...formik@2.4.9) Updates `react` from 19.2.3 to 19.2.4 - [Release notes](https://github.com/facebook/react/releases) - [Changelog](https://github.com/facebook/react/blob/main/CHANGELOG.md) - [Commits](https://github.com/facebook/react/commits/v19.2.4/packages/react) Updates `react-dom` from 19.2.3 to 19.2.4 - [Release notes](https://github.com/facebook/react/releases) - [Changelog](https://github.com/facebook/react/blob/main/CHANGELOG.md) - [Commits](https://github.com/facebook/react/commits/v19.2.4/packages/react-dom) --- updated-dependencies: - dependency-name: "@tanstack/react-query" dependency-version: 5.90.20 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: prod-patch-updates - dependency-name: formik dependency-version: 2.4.9 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: prod-patch-updates - dependency-name: react dependency-version: 19.2.4 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: prod-patch-updates - dependency-name: react-dom dependency-version: 19.2.4 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: prod-patch-updates ... Signed-off-by: dependabot[bot] --- frontend/package.json | 10 ++++----- frontend/yarn.lock | 50 +++++++++++++++++++++---------------------- 2 files changed, 30 insertions(+), 30 deletions(-) diff --git a/frontend/package.json b/frontend/package.json index 0e7e1f6b..c55f30f8 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -18,20 +18,20 @@ "dependencies": { "@tabler/core": "^1.4.0", "@tabler/icons-react": "^3.35.0", - "@tanstack/react-query": "^5.90.6", + "@tanstack/react-query": "^5.90.20", "@tanstack/react-table": "^8.21.3", "@uiw/react-textarea-code-editor": "^3.1.1", "classnames": "^2.5.1", "country-flag-icons": "^1.5.21", "date-fns": "^4.1.0", "ez-modal-react": "^1.0.5", - "formik": "^2.4.6", + "formik": "^2.4.9", "generate-password-browser": "^1.1.0", "humps": "^2.0.1", "query-string": "^9.3.1", - "react": "^19.2.3", + "react": "^19.2.4", "react-bootstrap": "^2.10.10", - "react-dom": "^19.2.3", + "react-dom": "^19.2.4", "react-intl": "^7.1.14", "react-markdown": "^10.1.0", "react-router-dom": "^7.9.5", @@ -48,7 +48,7 @@ "@testing-library/react": "^16.3.2", "@types/country-flag-icons": "^1.2.2", "@types/humps": "^2.0.6", - "@types/react": "^19.2.7", + "@types/react": "^19.2.10", "@types/react-dom": "^19.2.3", "@types/react-table": "^7.7.20", "@vitejs/plugin-react": "^5.1.2", diff --git a/frontend/yarn.lock b/frontend/yarn.lock index 78650fe4..ee3ad46c 100644 --- a/frontend/yarn.lock +++ b/frontend/yarn.lock @@ -825,10 +825,10 @@ resolved "https://registry.npmjs.org/@tabler/icons/-/icons-3.35.0.tgz" integrity sha512-yYXe+gJ56xlZFiXwV9zVoe3FWCGuZ/D7/G4ZIlDtGxSx5CGQK110wrnT29gUj52kEZoxqF7oURTk97GQxELOFQ== -"@tanstack/query-core@5.90.6": - version "5.90.6" - resolved "https://registry.npmjs.org/@tanstack/query-core/-/query-core-5.90.6.tgz" - integrity sha512-AnZSLF26R8uX+tqb/ivdrwbVdGemdEDm1Q19qM6pry6eOZ6bEYiY7mWhzXT1YDIPTNEVcZ5kYP9nWjoxDLiIVw== +"@tanstack/query-core@5.90.20": + version "5.90.20" + resolved "https://registry.yarnpkg.com/@tanstack/query-core/-/query-core-5.90.20.tgz#e12128e39210715d4ce4fb299c33498ac297771e" + integrity sha512-OMD2HLpNouXEfZJWcKeVKUgQ5n+n3A2JFmBaScpNDUqSrQSjiveC7dKMe53uJUg1nDG16ttFPz2xfilz6i2uVg== "@tanstack/query-devtools@5.92.0": version "5.92.0" @@ -842,12 +842,12 @@ dependencies: "@tanstack/query-devtools" "5.92.0" -"@tanstack/react-query@^5.90.6": - version "5.90.6" - resolved "https://registry.npmjs.org/@tanstack/react-query/-/react-query-5.90.6.tgz" - integrity sha512-gB1sljYjcobZKxjPbKSa31FUTyr+ROaBdoH+wSSs9Dk+yDCmMs+TkTV3PybRRVLC7ax7q0erJ9LvRWnMktnRAw== +"@tanstack/react-query@^5.90.20": + version "5.90.20" + resolved "https://registry.yarnpkg.com/@tanstack/react-query/-/react-query-5.90.20.tgz#42bb7018bfedc72f216b6e9b4052c919063f350b" + integrity sha512-vXBxa+qeyveVO7OA0jX1z+DeyCA4JKnThKv411jd5SORpBKgkcVnYKCiBgECvADvniBX7tobwBmg01qq9JmMJw== dependencies: - "@tanstack/query-core" "5.90.6" + "@tanstack/query-core" "5.90.20" "@tanstack/react-table@^8.21.3": version "8.21.3" @@ -1045,10 +1045,10 @@ resolved "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.12.tgz" integrity sha512-8TV6R3h2j7a91c+1DXdJi3Syo69zzIZbz7Lg5tORM5LEJG7X/E6a1V3drRyBRZq7/utz7A+c4OgYLiLcYGHG6w== -"@types/react@*", "@types/react@16 || 17 || 18 || 19", "@types/react@>=16.9.11", "@types/react@^19.2.7": - version "19.2.7" - resolved "https://registry.npmjs.org/@types/react/-/react-19.2.7.tgz" - integrity sha512-MWtvHrGZLFttgeEj28VXHxpmwYbor/ATPYbBfSFZEIRK0ecCFLl2Qo55z52Hss+UV9CRN7trSeq1zbgx7YDWWg== +"@types/react@*", "@types/react@16 || 17 || 18 || 19", "@types/react@>=16.9.11", "@types/react@^19.2.10": + version "19.2.10" + resolved "https://registry.yarnpkg.com/@types/react/-/react-19.2.10.tgz#f3ea799e6b4cebad6dfd231c238fc9de7652e2d2" + integrity sha512-WPigyYuGhgZ/cTPRXB2EwUw+XvsRA3GqHlsP4qteqrnnjDrApbS7MxcGr/hke5iUoeB7E/gQtrs9I37zAJ0Vjw== dependencies: csstype "^3.2.2" @@ -1524,10 +1524,10 @@ find-root@^1.1.0: resolved "https://registry.npmjs.org/find-root/-/find-root-1.1.0.tgz" integrity sha512-NKfW6bec6GfKc0SGx1e07QZY9PE99u0Bft/0rzSD5k3sO/vwkVUpDUKVm5Gpp5Ue3YfShPFTX2070tDs5kB9Ng== -formik@^2.4.6: - version "2.4.6" - resolved "https://registry.npmjs.org/formik/-/formik-2.4.6.tgz" - integrity sha512-A+2EI7U7aG296q2TLGvNapDNTZp1khVt5Vk0Q/fyfSROss0V/V6+txt2aJnwEos44IxTCW/LYAi/zgWzlevj+g== +formik@^2.4.9: + version "2.4.9" + resolved "https://registry.yarnpkg.com/formik/-/formik-2.4.9.tgz#7e5b81e9c9e215d0ce2ac8fed808cf7fba0cd204" + integrity sha512-5nI94BMnlFDdQRBY4Sz39WkhxajZJ57Fzs8wVbtsQlm5ScKIR1QLYqv/ultBnobObtlUyxpxoLodpixrsf36Og== dependencies: "@types/hoist-non-react-statics" "^3.3.1" deepmerge "^2.1.1" @@ -2423,10 +2423,10 @@ react-bootstrap@^2.10.10: uncontrollable "^7.2.1" warning "^4.0.3" -react-dom@^19.2.3: - version "19.2.3" - resolved "https://registry.npmjs.org/react-dom/-/react-dom-19.2.3.tgz" - integrity sha512-yELu4WmLPw5Mr/lmeEpox5rw3RETacE++JgHqQzd2dg+YbJuat3jH4ingc+WPZhxaoFzdv9y33G+F7Nl5O0GBg== +react-dom@^19.2.4: + version "19.2.4" + resolved "https://registry.yarnpkg.com/react-dom/-/react-dom-19.2.4.tgz#6fac6bd96f7db477d966c7ec17c1a2b1ad8e6591" + integrity sha512-AXJdLo8kgMbimY95O2aKQqsz2iWi9jMgKJhRBAxECE4IFxfcazB2LmzloIoibJI3C12IlY20+KFaLv+71bUJeQ== dependencies: scheduler "^0.27.0" @@ -2533,10 +2533,10 @@ react-transition-group@^4.3.0, react-transition-group@^4.4.5: loose-envify "^1.4.0" prop-types "^15.6.2" -react@^19.2.3: - version "19.2.3" - resolved "https://registry.npmjs.org/react/-/react-19.2.3.tgz" - integrity sha512-Ku/hhYbVjOQnXDZFv2+RibmLFGwFdeeKHFcOTlrt7xplBnya5OGn/hIRDsqDiSUcfORsDC7MPxwork8jBwsIWA== +react@^19.2.4: + version "19.2.4" + resolved "https://registry.yarnpkg.com/react/-/react-19.2.4.tgz#438e57baa19b77cb23aab516cf635cd0579ee09a" + integrity sha512-9nfp2hYpCwOjAN+8TZFGhtWEwgvWHXqESH8qT89AT/lWklpLON22Lc8pEtnpsZz7VmawabSU0gCjnj8aC0euHQ== readdirp@^4.0.1: version "4.1.2" From 58dda941b8abe66bf7240666c3f424fcfeaccfe6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 28 Jan 2026 13:03:42 +0000 Subject: [PATCH 44/77] Bump axios in /test in the prod-patch-updates group Bumps the prod-patch-updates group in /test with 1 update: [axios](https://github.com/axios/axios). Updates `axios` from 1.13.3 to 1.13.4 - [Release notes](https://github.com/axios/axios/releases) - [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md) - [Commits](https://github.com/axios/axios/compare/v1.13.3...v1.13.4) --- updated-dependencies: - dependency-name: axios dependency-version: 1.13.4 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: prod-patch-updates ... Signed-off-by: dependabot[bot] --- test/yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/test/yarn.lock b/test/yarn.lock index 49d45a6d..446389ff 100644 --- a/test/yarn.lock +++ b/test/yarn.lock @@ -424,9 +424,9 @@ aws4@^1.8.0: integrity sha512-Uvq6hVe90D0B2WEnUqtdgY1bATGz3mw33nH9Y+dmA+w5DHvUmBgkr5rM/KCHpCsiFNRUfokW/szpPPgMK2hm4A== axios@^1.13.1, axios@^1.7.7: - version "1.13.3" - resolved "https://registry.yarnpkg.com/axios/-/axios-1.13.3.tgz#f123e77356630a22b0163920662556944f2be1a1" - integrity sha512-ERT8kdX7DZjtUm7IitEyV7InTHAF42iJuMArIiDIV5YtPanJkgw4hw5Dyg9fh0mihdWNn1GKaeIWErfe56UQ1g== + version "1.13.4" + resolved "https://registry.yarnpkg.com/axios/-/axios-1.13.4.tgz#15d109a4817fb82f73aea910d41a2c85606076bc" + integrity sha512-1wVkUaAO6WyaYtCkcYCOx12ZgpGf9Zif+qXa4n+oYzK558YryKqiL6UWwd5DqiH3VRW0GYhTZQ/vlgJrCoNQlg== dependencies: follow-redirects "^1.15.6" form-data "^4.0.4" From 24ff3c7b119db17d5191aca8c0fee2e49e0b96e4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 28 Jan 2026 13:04:12 +0000 Subject: [PATCH 45/77] Bump happy-dom in /frontend in the dev-minor-updates group Bumps the dev-minor-updates group in /frontend with 1 update: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 20.3.9 to 20.4.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v20.3.9...v20.4.0) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.4.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dev-minor-updates ... Signed-off-by: dependabot[bot] --- frontend/package.json | 2 +- frontend/yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/frontend/package.json b/frontend/package.json index 0e7e1f6b..3da2801b 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -52,7 +52,7 @@ "@types/react-dom": "^19.2.3", "@types/react-table": "^7.7.20", "@vitejs/plugin-react": "^5.1.2", - "happy-dom": "^20.3.9", + "happy-dom": "^20.4.0", "postcss": "^8.5.6", "postcss-simple-vars": "^7.0.1", "sass": "^1.97.3", diff --git a/frontend/yarn.lock b/frontend/yarn.lock index 78650fe4..6060d83b 100644 --- a/frontend/yarn.lock +++ b/frontend/yarn.lock @@ -1566,10 +1566,10 @@ globrex@^0.1.2: resolved "https://registry.npmjs.org/globrex/-/globrex-0.1.2.tgz" integrity sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg== -happy-dom@^20.3.9: - version "20.3.9" - resolved "https://registry.yarnpkg.com/happy-dom/-/happy-dom-20.3.9.tgz#7f7f3dc904660e32f5abecf3efaa57bd9d36f6f8" - integrity sha512-OIoj0PcK2JaxQuANHxWkxFRSNXAuSgO1vCzCT66KItE0W/ieZLG+/iW8OetlxB+F9EaPB7DoFYKAubFG1f4Mvw== +happy-dom@^20.4.0: + version "20.4.0" + resolved "https://registry.yarnpkg.com/happy-dom/-/happy-dom-20.4.0.tgz#83d1aa589cf4b4908a2f14e9596196afeb30e9e6" + integrity sha512-RDeQm3dT9n0A5f/TszjUmNCLEuPnMGv3Tv4BmNINebz/h17PA6LMBcxJ5FrcqltNBMh9jA/8ufgDdBYUdBt+eg== dependencies: "@types/node" ">=20.0.0" "@types/whatwg-mimetype" "^3.0.2" From 3ed3ec00011e887231bab014750327525c3233d6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 28 Jan 2026 13:04:19 +0000 Subject: [PATCH 46/77] Bump express from 4.22.0 to 5.2.1 in /backend Bumps [express](https://github.com/expressjs/express) from 4.22.0 to 5.2.1. - [Release notes](https://github.com/expressjs/express/releases) - [Changelog](https://github.com/expressjs/express/blob/master/History.md) - [Commits](https://github.com/expressjs/express/compare/4.22.0...v5.2.1) --- updated-dependencies: - dependency-name: express dependency-version: 5.2.1 dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- backend/package.json | 2 +- backend/yarn.lock | 326 ++++++++++++++++++++++++------------------- 2 files changed, 181 insertions(+), 147 deletions(-) diff --git a/backend/package.json b/backend/package.json index d828a48f..502315e4 100644 --- a/backend/package.json +++ b/backend/package.json @@ -19,7 +19,7 @@ "bcrypt": "^5.0.0", "body-parser": "^1.20.3", "compression": "^1.7.4", - "express": "^4.22.0", + "express": "^5.2.1", "express-fileupload": "^1.5.2", "gravatar": "^1.8.2", "jsonwebtoken": "^9.0.3", diff --git a/backend/yarn.lock b/backend/yarn.lock index 1c314add..5ee066f0 100644 --- a/backend/yarn.lock +++ b/backend/yarn.lock @@ -194,13 +194,13 @@ abbrev@1: resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== -accepts@~1.3.8: - version "1.3.8" - resolved "https://registry.yarnpkg.com/accepts/-/accepts-1.3.8.tgz#0bf0be125b67014adcb0b0921e62db7bffe16b2e" - integrity sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw== +accepts@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/accepts/-/accepts-2.0.0.tgz#bbcf4ba5075467f3f2131eab3cffc73c2f5d7895" + integrity sha512-5cvg6CtKwfgdmVqY1WIiXKc3Q1bkRqGLi+2W/6ao+6Y7gu/RCwRuAhGEzh5B4KlszSuTLgZYuqFqo5bImjNKng== dependencies: - mime-types "~2.1.34" - negotiator "0.6.3" + mime-types "^3.0.0" + negotiator "^1.0.0" agent-base@6, agent-base@^6.0.2: version "6.0.2" @@ -349,11 +349,6 @@ argparse@^2.0.1: resolved "https://registry.yarnpkg.com/argparse/-/argparse-2.0.1.tgz#246f50f3ca78a3240f6c997e8a9bd1eac49e4b38" integrity sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q== -array-flatten@1.1.1: - version "1.1.1" - resolved "https://registry.yarnpkg.com/array-flatten/-/array-flatten-1.1.1.tgz#9a5f699051b1e7073328f2a008968b64ea2955d2" - integrity sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg== - asn1@^0.2.4: version "0.2.6" resolved "https://registry.yarnpkg.com/asn1/-/asn1-0.2.6.tgz#0d3a7bb6e64e02a90c0303b31f292868ea09a08d" @@ -432,7 +427,7 @@ blueimp-md5@^2.16.0: resolved "https://registry.yarnpkg.com/blueimp-md5/-/blueimp-md5-2.19.0.tgz#b53feea5498dcb53dc6ec4b823adb84b729c4af0" integrity sha512-DRQrD6gJyy8FbiE4s+bDoXS9hiW3Vbx5uCdwvcCf3zLHL+Iv7LtGHLpr+GZV8rHG8tK766FGYBwRbu8pELTt+w== -body-parser@^1.20.3, body-parser@~1.20.3: +body-parser@^1.20.3: version "1.20.4" resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.4.tgz#f8e20f4d06ca8a50a71ed329c15dccad1cdc547f" integrity sha512-ZTgYYLMOXY9qKU/57FAo8F+HA2dGX7bqGc71txDRC1rS4frdFI5R7NhluHxH6M0YItAP0sHB4uqAOcYKxO6uGA== @@ -450,6 +445,21 @@ body-parser@^1.20.3, body-parser@~1.20.3: type-is "~1.6.18" unpipe "~1.0.0" +body-parser@^2.2.1: + version "2.2.2" + resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-2.2.2.tgz#1a32cdb966beaf68de50a9dfbe5b58f83cb8890c" + integrity sha512-oP5VkATKlNwcgvxi0vM0p/D3n2C3EReYVX+DNYs5TjZFn/oQt2j+4sVJtSMr18pdRr8wjTcBl6LoV+FUwzPmNA== + dependencies: + bytes "^3.1.2" + content-type "^1.0.5" + debug "^4.4.3" + http-errors "^2.0.0" + iconv-lite "^0.7.0" + on-finished "^2.4.1" + qs "^6.14.1" + raw-body "^3.0.1" + type-is "^2.0.1" + brace-expansion@^1.1.7: version "1.1.12" resolved "https://registry.yarnpkg.com/brace-expansion/-/brace-expansion-1.1.12.tgz#ab9b454466e5a8cc3a187beaad580412a9c5b843" @@ -497,7 +507,7 @@ busboy@^1.6.0: dependencies: streamsearch "^1.1.0" -bytes@3.1.2, bytes@~3.1.2: +bytes@3.1.2, bytes@^3.1.2, bytes@~3.1.2: version "3.1.2" resolved "https://registry.yarnpkg.com/bytes/-/bytes-3.1.2.tgz#8b0beeb98605adf1b128fa4386403c009e0221a5" integrity sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg== @@ -684,24 +694,22 @@ console-control-strings@^1.0.0, console-control-strings@^1.1.0: resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" integrity sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ== -content-disposition@~0.5.4: - version "0.5.4" - resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-0.5.4.tgz#8b82b4efac82512a02bb0b1dcec9d2c5e8eb5bfe" - integrity sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ== - dependencies: - safe-buffer "5.2.1" +content-disposition@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-1.0.1.tgz#a8b7bbeb2904befdfb6787e5c0c086959f605f9b" + integrity sha512-oIXISMynqSqm241k6kcQ5UwttDILMK4BiurCfGEREw6+X9jkkpEe5T9FZaApyLGGOnFuyMWZpdolTXMtvEJ08Q== -content-type@~1.0.4, content-type@~1.0.5: +content-type@^1.0.5, content-type@~1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.5.tgz#8b773162656d1d1086784c8f23a54ce6d73d7918" integrity sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA== -cookie-signature@~1.0.6: - version "1.0.7" - resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.0.7.tgz#ab5dd7ab757c54e60f37ef6550f481c426d10454" - integrity sha512-NXdYc3dLr47pBkpUCHtKSwIOQXLVn8dZEuywboCOJY/osA0wFSLlSawr3KN8qXJEyX66FcONTH8EIlVuK0yyFA== +cookie-signature@^1.2.1: + version "1.2.2" + resolved "https://registry.yarnpkg.com/cookie-signature/-/cookie-signature-1.2.2.tgz#57c7fc3cc293acab9fec54d73e15690ebe4a1793" + integrity sha512-D76uU73ulSXrD1UXF4KE2TMxVVwhsnCgfAyTg9k8P6KGZjlXKrOLe4dJQKI3Bxi5wjesZoFXJWElNWBjPZMbhg== -cookie@~0.7.1: +cookie@^0.7.1: version "0.7.2" resolved "https://registry.yarnpkg.com/cookie/-/cookie-0.7.2.tgz#556369c472a2ba910f2979891b526b3436237ed7" integrity sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w== @@ -741,7 +749,7 @@ debug@2.6.9: dependencies: ms "2.0.0" -debug@4, debug@^4, debug@^4.3.3, debug@^4.3.4: +debug@4, debug@^4, debug@^4.3.3, debug@^4.3.4, debug@^4.4.0, debug@^4.4.3: version "4.4.3" resolved "https://registry.yarnpkg.com/debug/-/debug-4.4.3.tgz#c6ae432d9bd9662582fce08709b038c58e9e3d6a" integrity sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA== @@ -791,12 +799,12 @@ denque@^2.1.0: resolved "https://registry.yarnpkg.com/denque/-/denque-2.1.0.tgz#e93e1a6569fb5e66f16a3c2a2964617d349d6ab1" integrity sha512-HVQE3AAb/pxF8fQAoiqpvg9i3evqug3hoiwakOyZAwJm+6vZehbkYXZ0l4JxS+I3QxM97v5aaRNhj8v5oBhekw== -depd@2.0.0, depd@~2.0.0: +depd@2.0.0, depd@^2.0.0, depd@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== -destroy@1.2.0, destroy@~1.2.0: +destroy@~1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.2.0.tgz#4803735509ad8be552934c67df614f94e66fa015" integrity sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg== @@ -837,7 +845,7 @@ emoji-regex@^8.0.0: resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== -encodeurl@~2.0.0: +encodeurl@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-2.0.0.tgz#7b8ea898077d7e409d3ac45474ea38eaf0857a58" integrity sha512-Q0n9HRi4m6JuGIV1eFlmvJB7ZEVxu93IrMyiMsGC0lrMJMWzRgx6WGquyfQgZVb31vhGgXnfmPNNXmxnOkRBrg== @@ -895,7 +903,7 @@ escalade@^3.1.1: resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.2.0.tgz#011a3f69856ba189dffa7dc8fcce99d2a87903e5" integrity sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA== -escape-html@~1.0.3: +escape-html@^1.0.3: version "1.0.3" resolved "https://registry.yarnpkg.com/escape-html/-/escape-html-1.0.3.tgz#0258eae4d3d0c0974de1c169188ef0051d1d1988" integrity sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow== @@ -936,7 +944,7 @@ esutils@^2.0.2: resolved "https://registry.yarnpkg.com/esutils/-/esutils-2.0.3.tgz#74d2eb4de0b8da1293711910d50775b9b710ef64" integrity sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g== -etag@~1.8.1: +etag@^1.8.1: version "1.8.1" resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg== @@ -953,42 +961,39 @@ express-fileupload@^1.5.2: dependencies: busboy "^1.6.0" -express@^4.22.0: - version "4.22.0" - resolved "https://registry.yarnpkg.com/express/-/express-4.22.0.tgz#a9d7abdce6d774ed1b4479019387763d1798bd03" - integrity sha512-c2iPh3xp5vvCLgaHK03+mWLFPhox7j1LwyxcZwFVApEv5i0X+IjPpbT50SJJwwLpdBVfp45AkK/v+AFgv/XlfQ== +express@^5.2.1: + version "5.2.1" + resolved "https://registry.yarnpkg.com/express/-/express-5.2.1.tgz#8f21d15b6d327f92b4794ecf8cb08a72f956ac04" + integrity sha512-hIS4idWWai69NezIdRt2xFVofaF4j+6INOpJlVOLDO8zXGpUVEVzIYk12UUi2JzjEzWL3IOAxcTubgz9Po0yXw== dependencies: - accepts "~1.3.8" - array-flatten "1.1.1" - body-parser "~1.20.3" - content-disposition "~0.5.4" - content-type "~1.0.4" - cookie "~0.7.1" - cookie-signature "~1.0.6" - debug "2.6.9" - depd "2.0.0" - encodeurl "~2.0.0" - escape-html "~1.0.3" - etag "~1.8.1" - finalhandler "~1.3.1" - fresh "~0.5.2" - http-errors "~2.0.0" - merge-descriptors "1.0.3" - methods "~1.1.2" - on-finished "~2.4.1" - parseurl "~1.3.3" - path-to-regexp "~0.1.12" - proxy-addr "~2.0.7" - qs "~6.14.0" - range-parser "~1.2.1" - safe-buffer "5.2.1" - send "~0.19.0" - serve-static "~1.16.2" - setprototypeof "1.2.0" - statuses "~2.0.1" - type-is "~1.6.18" - utils-merge "1.0.1" - vary "~1.1.2" + accepts "^2.0.0" + body-parser "^2.2.1" + content-disposition "^1.0.0" + content-type "^1.0.5" + cookie "^0.7.1" + cookie-signature "^1.2.1" + debug "^4.4.0" + depd "^2.0.0" + encodeurl "^2.0.0" + escape-html "^1.0.3" + etag "^1.8.1" + finalhandler "^2.1.0" + fresh "^2.0.0" + http-errors "^2.0.0" + merge-descriptors "^2.0.0" + mime-types "^3.0.0" + on-finished "^2.4.1" + once "^1.4.0" + parseurl "^1.3.3" + proxy-addr "^2.0.7" + qs "^6.14.0" + range-parser "^1.2.1" + router "^2.2.0" + send "^1.1.0" + serve-static "^2.2.0" + statuses "^2.0.1" + type-is "^2.0.1" + vary "^1.1.2" fast-deep-equal@^3.1.3: version "3.1.3" @@ -1019,18 +1024,17 @@ fill-range@^7.1.1: dependencies: to-regex-range "^5.0.1" -finalhandler@~1.3.1: - version "1.3.2" - resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-1.3.2.tgz#1ebc2228fc7673aac4a472c310cc05b77d852b88" - integrity sha512-aA4RyPcd3badbdABGDuTXCMTtOneUCAYH/gxoYRTZlIJdF0YPWuGqiAsIrhNnnqdXGswYk6dGujem4w80UJFhg== +finalhandler@^2.1.0: + version "2.1.1" + resolved "https://registry.yarnpkg.com/finalhandler/-/finalhandler-2.1.1.tgz#a2c517a6559852bcdb06d1f8bd7f51b68fad8099" + integrity sha512-S8KoZgRZN+a5rNwqTxlZZePjT/4cnm0ROV70LedRHZ0p8u9fRID0hJUZQpkKLzro8LfmC8sx23bY6tVNxv8pQA== dependencies: - debug "2.6.9" - encodeurl "~2.0.0" - escape-html "~1.0.3" - on-finished "~2.4.1" - parseurl "~1.3.3" - statuses "~2.0.2" - unpipe "~1.0.0" + debug "^4.4.0" + encodeurl "^2.0.0" + escape-html "^1.0.3" + on-finished "^2.4.1" + parseurl "^1.3.3" + statuses "^2.0.1" find-up@^2.0.0: version "2.1.0" @@ -1052,10 +1056,10 @@ forwarded@0.2.0: resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.2.0.tgz#2269936428aad4c15c7ebe9779a84bf0b2a81811" integrity sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow== -fresh@~0.5.2: - version "0.5.2" - resolved "https://registry.yarnpkg.com/fresh/-/fresh-0.5.2.tgz#3d8cadd90d976569fa835ab1f8e4b23a105605a7" - integrity sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q== +fresh@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/fresh/-/fresh-2.0.0.tgz#8dd7df6a1b3a1b3a5cf186c05a5dd267622635a4" + integrity sha512-Rx/WycZ60HOaqLKAi6cHRKKI7zxWbJ31MhntmtwMoaTeF7XFH9hhBp8vITaMidfljRQ6eYWCKkaTK+ykVJHP2A== fs-constants@^1.0.0: version "1.0.0" @@ -1239,7 +1243,7 @@ http-cache-semantics@^4.1.0: resolved "https://registry.yarnpkg.com/http-cache-semantics/-/http-cache-semantics-4.2.0.tgz#205f4db64f8562b76a4ff9235aa5279839a09dd5" integrity sha512-dTxcvPXqPvXBQpq5dUr6mEMJX4oIEFv6bwom3FDwKRDsuIjjJGANqhBuoAn9c1RQJIdAKav33ED65E2ys+87QQ== -http-errors@~2.0.0, http-errors@~2.0.1: +http-errors@^2.0.0, http-errors@^2.0.1, http-errors@~2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/http-errors/-/http-errors-2.0.1.tgz#36d2f65bc909c8790018dd36fb4d93da6caae06b" integrity sha512-4FbRdAX+bSdmo4AUFuS0WNiPz8NgFt+r8ThgNWmlrjQjt1Q7ZR9+zTlce2859x4KSXrwIsaeTqDoKQmtP8pLmQ== @@ -1297,7 +1301,7 @@ iconv-lite@^0.6.2: dependencies: safer-buffer ">= 2.1.2 < 3.0.0" -iconv-lite@^0.7.2: +iconv-lite@^0.7.0, iconv-lite@^0.7.2, iconv-lite@~0.7.0: version "0.7.2" resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.7.2.tgz#d0bdeac3f12b4835b7359c2ad89c422a4d1cc72e" integrity sha512-im9DjEDQ55s9fL4EYzOAv0yMqmMBSZp6G0VvFyTMPKWxiSBHUj9NW/qqLmXUwXrrM7AvqSlTCfvqRb0cM8yYqw== @@ -1420,6 +1424,11 @@ is-number@^7.0.0: resolved "https://registry.yarnpkg.com/is-number/-/is-number-7.0.0.tgz#7535345b896734d5f80c4d06c50955527a14f12b" integrity sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng== +is-promise@^4.0.0: + version "4.0.0" + resolved "https://registry.yarnpkg.com/is-promise/-/is-promise-4.0.0.tgz#42ff9f84206c1991d26debf520dd5c01042dd2f3" + integrity sha512-hvpoI6korhJMnej285dSg6nu1+e6uxs7zG3BYAm5byqDsgJNWwxzM6z6iZiAgQR4TJ30JmBTOwqZUw3WlyH3AQ== + is-property@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/is-property/-/is-property-1.0.2.tgz#57fe1c4e48474edd65b09911f26b1cd4095dda84" @@ -1670,38 +1679,40 @@ media-typer@0.3.0: resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" integrity sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ== -merge-descriptors@1.0.3: - version "1.0.3" - resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-1.0.3.tgz#d80319a65f3c7935351e5cfdac8f9318504dbed5" - integrity sha512-gaNvAS7TZ897/rVaZ0nMtAyxNyi/pdbjbAwUpFQpN70GqnVfOiXpeUUMKRBmzXaSQ8DdTX4/0ms62r2K+hE6mQ== +media-typer@^1.1.0: + version "1.1.0" + resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-1.1.0.tgz#6ab74b8f2d3320f2064b2a87a38e7931ff3a5561" + integrity sha512-aisnrDP4GNe06UcKFnV5bfMNPBUw4jsLGaWwWfnH3v02GnBuXX2MCVn5RbrWo0j3pczUilYblq7fQ7Nw2t5XKw== -methods@~1.1.2: - version "1.1.2" - resolved "https://registry.yarnpkg.com/methods/-/methods-1.1.2.tgz#5529a4d67654134edcc5266656835b0f851afcee" - integrity sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w== +merge-descriptors@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-2.0.0.tgz#ea922f660635a2249ee565e0449f951e6b603808" + integrity sha512-Snk314V5ayFLhp3fkUREub6WtjBfPdCPY1Ln8/8munuLuiYhsABgBVWsozAG+MWMbVEvcdcpbi9R7ww22l9Q3g== mime-db@1.52.0: version "1.52.0" resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== -"mime-db@>= 1.43.0 < 2": +"mime-db@>= 1.43.0 < 2", mime-db@^1.54.0: version "1.54.0" resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.54.0.tgz#cddb3ee4f9c64530dff640236661d42cb6a314f5" integrity sha512-aU5EJuIN2WDemCcAp2vFBfp/m4EAhWJnUNSSw0ixs7/kXbd6Pg64EmwJkNdFhB8aWt1sH2CTXrLxo/iAGV3oPQ== -mime-types@~2.1.24, mime-types@~2.1.34: +mime-types@^3.0.0, mime-types@^3.0.2: + version "3.0.2" + resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-3.0.2.tgz#39002d4182575d5af036ffa118100f2524b2e2ab" + integrity sha512-Lbgzdk0h4juoQ9fCKXW4by0UJqj+nOOrI9MJ1sSj4nI8aI2eo1qmvQEie4VD1glsS250n15LsWsYtCugiStS5A== + dependencies: + mime-db "^1.54.0" + +mime-types@~2.1.24: version "2.1.35" resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== dependencies: mime-db "1.52.0" -mime@1.6.0: - version "1.6.0" - resolved "https://registry.yarnpkg.com/mime/-/mime-1.6.0.tgz#32cd9e5c64553bd58d19a568af452acff04981b1" - integrity sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg== - mimic-response@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-3.1.0.tgz#2d1d59af9c1b129815accc2c46a022a5ce1fa3c9" @@ -1810,7 +1821,7 @@ ms@2.1.2: resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.2.tgz#d09d1f357b443f493382a8eb3ccd183872ae6009" integrity sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w== -ms@2.1.3, ms@^2.0.0, ms@^2.1.1, ms@^2.1.3: +ms@^2.0.0, ms@^2.1.1, ms@^2.1.3: version "2.1.3" resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== @@ -1842,16 +1853,16 @@ napi-build-utils@^2.0.0: resolved "https://registry.yarnpkg.com/napi-build-utils/-/napi-build-utils-2.0.0.tgz#13c22c0187fcfccce1461844136372a47ddc027e" integrity sha512-GEbrYkbfF7MoNaoh2iGG84Mnf/WZfB0GdGEsM8wz7Expx/LlWf5U8t9nvJKXSp3qr5IsEbK04cBGhol/KwOsWA== -negotiator@0.6.3: - version "0.6.3" - resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.3.tgz#58e323a72fedc0d6f9cd4d31fe49f51479590ccd" - integrity sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg== - negotiator@^0.6.2, negotiator@~0.6.4: version "0.6.4" resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-0.6.4.tgz#777948e2452651c570b712dd01c23e262713fff7" integrity sha512-myRT3DiWPHqho5PrJaIRyaMv2kgYf0mUVgBNOYMuCH5Ki1yEiQaf/ZJuQ62nvpc44wL5WDbTX7yGJi1Neevw8w== +negotiator@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/negotiator/-/negotiator-1.0.0.tgz#b6c91bb47172d69f93cfd7c357bbb529019b5f6a" + integrity sha512-8Ofs/AUQh8MaEcrlq5xOX0CQ9ypTF5dl78mjlMNfOK08fzpgTHQRQPBxcPlEtIw0yRpws+Zo/3r+5WRby7u3Gg== + netmask@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/netmask/-/netmask-2.0.2.tgz#8b01a07644065d536383835823bc52004ebac5e7" @@ -1971,7 +1982,7 @@ objection@3.1.5: ajv-formats "^2.1.1" db-errors "^0.2.3" -on-finished@~2.4.1: +on-finished@^2.4.1, on-finished@~2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f" integrity sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg== @@ -2074,7 +2085,7 @@ parse-json@^4.0.0: error-ex "^1.3.1" json-parse-better-errors "^1.0.1" -parseurl@~1.3.3: +parseurl@^1.3.3: version "1.3.3" resolved "https://registry.yarnpkg.com/parseurl/-/parseurl-1.3.3.tgz#9da19e7bee8d12dff0513ed5b76957793bc2e8d4" integrity sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ== @@ -2099,10 +2110,10 @@ path-parse@^1.0.7: resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== -path-to-regexp@~0.1.12: - version "0.1.12" - resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-0.1.12.tgz#d5e1a12e478a976d432ef3c58d534b9923164bb7" - integrity sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ== +path-to-regexp@^8.0.0: + version "8.3.0" + resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-8.3.0.tgz#aa818a6981f99321003a08987d3cec9c3474cd1f" + integrity sha512-7jdwVIRtsP8MYpdXSwOS0YdD0Du+qOoF/AEPIt88PcCFrZCzx41oxku1jD88hZBwbNUIEfpqvuhjFaMAqMTWnA== path@^0.12.7: version "0.12.7" @@ -2254,7 +2265,7 @@ promise-retry@^2.0.1: err-code "^2.0.2" retry "^0.12.0" -proxy-addr@~2.0.7: +proxy-addr@^2.0.7: version "2.0.7" resolved "https://registry.yarnpkg.com/proxy-addr/-/proxy-addr-2.0.7.tgz#f19fe69ceab311eeb94b42e70e8c2070f9ba1025" integrity sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg== @@ -2294,7 +2305,7 @@ pump@^3.0.0: end-of-stream "^1.1.0" once "^1.3.1" -qs@~6.14.0: +qs@^6.14.0, qs@^6.14.1, qs@~6.14.0: version "6.14.1" resolved "https://registry.yarnpkg.com/qs/-/qs-6.14.1.tgz#a41d85b9d3902f31d27861790506294881871159" integrity sha512-4EK3+xJl8Ts67nLYNwqw/dsFVnCf+qR7RgXSK9jEEm9unao3njwMDdmsdvoKBKHzxd7tCYz5e5M+SnMjdtXGQQ== @@ -2306,11 +2317,21 @@ querystring@0.2.0: resolved "https://registry.yarnpkg.com/querystring/-/querystring-0.2.0.tgz#b209849203bb25df820da756e747005878521620" integrity sha512-X/xY82scca2tau62i9mDyU9K+I+djTMUsvwf7xnUX5GLvVzgJybOJf4Y6o9Zx3oJK/LSXg5tTZBjwzqVPaPO2g== -range-parser@~1.2.1: +range-parser@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/range-parser/-/range-parser-1.2.1.tgz#3cf37023d199e1c24d1a55b84800c2f3e6468031" integrity sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg== +raw-body@^3.0.1: + version "3.0.2" + resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-3.0.2.tgz#3e3ada5ae5568f9095d84376fd3a49b8fb000a51" + integrity sha512-K5zQjDllxWkf7Z5xJdV0/B0WTNqx6vxG70zJE4N0kBs4LovmEYWJzQGxC9bS9RAKu3bgM40lrd5zoLJ12MQ5BA== + dependencies: + bytes "~3.1.2" + http-errors "~2.0.1" + iconv-lite "~0.7.0" + unpipe "~1.0.0" + raw-body@~2.5.3: version "2.5.3" resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.3.tgz#11c6650ee770a7de1b494f197927de0c923822e2" @@ -2415,6 +2436,17 @@ rimraf@^3.0.2: dependencies: glob "^7.1.3" +router@^2.2.0: + version "2.2.0" + resolved "https://registry.yarnpkg.com/router/-/router-2.2.0.tgz#019be620b711c87641167cc79b99090f00b146ef" + integrity sha512-nLTrUKm2UyiL7rlhapu/Zl45FwNgkZGaCpZbIHajDYgwlJCOzLSk+cIPAnsEqV955GjILJnKbdQC1nVPz+gAYQ== + dependencies: + debug "^4.4.0" + depd "^2.0.0" + is-promise "^4.0.0" + parseurl "^1.3.3" + path-to-regexp "^8.0.0" + safe-buffer@5.2.1, safe-buffer@^5.0.1, safe-buffer@~5.2.0: version "5.2.1" resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.1.tgz#1eaf9fa9bdb1fdd4ec75f58f9cdb4e6b7827eec6" @@ -2440,46 +2472,44 @@ semver@^7.3.5, semver@^7.5.3, semver@^7.5.4: resolved "https://registry.yarnpkg.com/semver/-/semver-7.7.3.tgz#4b5f4143d007633a8dc671cd0a6ef9147b8bb946" integrity sha512-SdsKMrI9TdgjdweUSR9MweHA4EJ8YxHn8DFaDisvhVlUOe4BF1tLD7GAj0lIqWVl+dPb/rExr0Btby5loQm20Q== -send@~0.19.0, send@~0.19.1: - version "0.19.2" - resolved "https://registry.yarnpkg.com/send/-/send-0.19.2.tgz#59bc0da1b4ea7ad42736fd642b1c4294e114ff29" - integrity sha512-VMbMxbDeehAxpOtWJXlcUS5E8iXh6QmN+BkRX1GARS3wRaXEEgzCcB10gTQazO42tpNIya8xIyNx8fll1OFPrg== +send@^1.1.0, send@^1.2.0: + version "1.2.1" + resolved "https://registry.yarnpkg.com/send/-/send-1.2.1.tgz#9eab743b874f3550f40a26867bf286ad60d3f3ed" + integrity sha512-1gnZf7DFcoIcajTjTwjwuDjzuz4PPcY2StKPlsGAQ1+YH20IRVrBaXSWmdjowTJ6u8Rc01PoYOGHXfP1mYcZNQ== dependencies: - debug "2.6.9" - depd "2.0.0" - destroy "1.2.0" - encodeurl "~2.0.0" - escape-html "~1.0.3" - etag "~1.8.1" - fresh "~0.5.2" - http-errors "~2.0.1" - mime "1.6.0" - ms "2.1.3" - on-finished "~2.4.1" - range-parser "~1.2.1" - statuses "~2.0.2" + debug "^4.4.3" + encodeurl "^2.0.0" + escape-html "^1.0.3" + etag "^1.8.1" + fresh "^2.0.0" + http-errors "^2.0.1" + mime-types "^3.0.2" + ms "^2.1.3" + on-finished "^2.4.1" + range-parser "^1.2.1" + statuses "^2.0.2" seq-queue@^0.0.5: version "0.0.5" resolved "https://registry.yarnpkg.com/seq-queue/-/seq-queue-0.0.5.tgz#d56812e1c017a6e4e7c3e3a37a1da6d78dd3c93e" integrity sha512-hr3Wtp/GZIc/6DAGPDcV4/9WoZhjrkXsi5B/07QgX8tsdc6ilr7BFM6PM6rbdAX1kFSDYeZGLipIZZKyQP0O5Q== -serve-static@~1.16.2: - version "1.16.3" - resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-1.16.3.tgz#a97b74d955778583f3862a4f0b841eb4d5d78cf9" - integrity sha512-x0RTqQel6g5SY7Lg6ZreMmsOzncHFU7nhnRWkKgWuMTu5NN0DR5oruckMqRvacAN9d5w6ARnRBXl9xhDCgfMeA== +serve-static@^2.2.0: + version "2.2.1" + resolved "https://registry.yarnpkg.com/serve-static/-/serve-static-2.2.1.tgz#7f186a4a4e5f5b663ad7a4294ff1bf37cf0e98a9" + integrity sha512-xRXBn0pPqQTVQiC8wyQrKs2MOlX24zQ0POGaj0kultvoOCstBQM5yvOhAVSUwOMjQtTvsPWoNCHfPGwaaQJhTw== dependencies: - encodeurl "~2.0.0" - escape-html "~1.0.3" - parseurl "~1.3.3" - send "~0.19.1" + encodeurl "^2.0.0" + escape-html "^1.0.3" + parseurl "^1.3.3" + send "^1.2.0" set-blocking@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/set-blocking/-/set-blocking-2.0.0.tgz#045f9782d011ae9a6803ddd382b24392b3d890f7" integrity sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw== -setprototypeof@1.2.0, setprototypeof@~1.2.0: +setprototypeof@~1.2.0: version "1.2.0" resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424" integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw== @@ -2624,7 +2654,7 @@ ssri@^8.0.0, ssri@^8.0.1: dependencies: minipass "^3.1.1" -statuses@~2.0.1, statuses@~2.0.2: +statuses@^2.0.1, statuses@^2.0.2, statuses@~2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/statuses/-/statuses-2.0.2.tgz#8f75eecef765b5e1cfcdc080da59409ed424e382" integrity sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw== @@ -2784,6 +2814,15 @@ tunnel-agent@^0.6.0: dependencies: safe-buffer "^5.0.1" +type-is@^2.0.1: + version "2.0.1" + resolved "https://registry.yarnpkg.com/type-is/-/type-is-2.0.1.tgz#64f6cf03f92fce4015c2b224793f6bdd4b068c97" + integrity sha512-OZs6gsjF4vMp32qrCbiVSkrFmXtG/AZhY3t0iAMrMBiAZyV9oALtXO8hsrHbMXF9x6L3grlFuwW2oAz7cav+Gw== + dependencies: + content-type "^1.0.5" + media-typer "^1.1.0" + mime-types "^3.0.0" + type-is@~1.6.18: version "1.6.18" resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" @@ -2828,17 +2867,12 @@ util@^0.10.3: dependencies: inherits "2.0.3" -utils-merge@1.0.1: - version "1.0.1" - resolved "https://registry.yarnpkg.com/utils-merge/-/utils-merge-1.0.1.tgz#9f95710f50a267947b2ccc124741c1028427e713" - integrity sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA== - uuid@^3.3.2: version "3.4.0" resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee" integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A== -vary@~1.1.2: +vary@^1.1.2, vary@~1.1.2: version "1.1.2" resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" integrity sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg== From 469d72a2f9965c0321ebc1a38c5c67e231c12586 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 29 Jan 2026 14:02:55 +0000 Subject: [PATCH 47/77] Bump tar from 7.5.6 to 7.5.7 in /test Bumps [tar](https://github.com/isaacs/node-tar) from 7.5.6 to 7.5.7. - [Release notes](https://github.com/isaacs/node-tar/releases) - [Changelog](https://github.com/isaacs/node-tar/blob/main/CHANGELOG.md) - [Commits](https://github.com/isaacs/node-tar/compare/v7.5.6...v7.5.7) --- updated-dependencies: - dependency-name: tar dependency-version: 7.5.7 dependency-type: indirect ... Signed-off-by: dependabot[bot] --- test/yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/test/yarn.lock b/test/yarn.lock index 49d45a6d..ae6fb3d3 100644 --- a/test/yarn.lock +++ b/test/yarn.lock @@ -2218,9 +2218,9 @@ systeminformation@^5.27.14: integrity sha512-LEIyK1aEv5P3BhAPW3swdlIyCihxwEq/Gki+kcONieU4PIeRCSLDuGkk0Va/56PSBgjVgEksOM88dmY6YqOyfQ== tar@^7.5.2: - version "7.5.6" - resolved "https://registry.yarnpkg.com/tar/-/tar-7.5.6.tgz#2db7a210748a82f0a89cc31527b90d3a24984fb7" - integrity sha512-xqUeu2JAIJpXyvskvU3uvQW8PAmHrtXp2KDuMJwQqW8Sqq0CaZBAQ+dKS3RBXVhU4wC5NjAdKrmh84241gO9cA== + version "7.5.7" + resolved "https://registry.yarnpkg.com/tar/-/tar-7.5.7.tgz#adf99774008ba1c89819f15dbd6019c630539405" + integrity sha512-fov56fJiRuThVFXD6o6/Q354S7pnWMJIVlDBYijsTNx6jKSE4pvrDTs6lUnmGvNyfJwFQQwWy3owKz1ucIhveQ== dependencies: "@isaacs/fs-minipass" "^4.0.0" chownr "^3.0.0" From a99cde9cd85d0f3b1241c8ade740e3fc933ef41a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 29 Jan 2026 23:33:36 +0000 Subject: [PATCH 48/77] Bump bcrypt from 5.1.1 to 6.0.0 in /backend Bumps [bcrypt](https://github.com/kelektiv/node.bcrypt.js) from 5.1.1 to 6.0.0. - [Release notes](https://github.com/kelektiv/node.bcrypt.js/releases) - [Changelog](https://github.com/kelektiv/node.bcrypt.js/blob/master/CHANGELOG.md) - [Commits](https://github.com/kelektiv/node.bcrypt.js/compare/v5.1.1...v6.0.0) --- updated-dependencies: - dependency-name: bcrypt dependency-version: 6.0.0 dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- backend/package.json | 2 +- backend/yarn.lock | 113 ++++++++----------------------------------- 2 files changed, 21 insertions(+), 94 deletions(-) diff --git a/backend/package.json b/backend/package.json index 502315e4..dfa3721b 100644 --- a/backend/package.json +++ b/backend/package.json @@ -16,7 +16,7 @@ "ajv": "^8.17.1", "archiver": "^5.3.0", "batchflow": "^0.4.0", - "bcrypt": "^5.0.0", + "bcrypt": "^6.0.0", "body-parser": "^1.20.3", "compression": "^1.7.4", "express": "^5.2.1", diff --git a/backend/yarn.lock b/backend/yarn.lock index 5ee066f0..c05099cf 100644 --- a/backend/yarn.lock +++ b/backend/yarn.lock @@ -105,21 +105,6 @@ resolved "https://registry.yarnpkg.com/@jsdevtools/ono/-/ono-7.1.3.tgz#9df03bbd7c696a5c58885c34aa06da41c8543796" integrity sha512-4JQNk+3mVzK3xh2rqd6RB4J46qUR19azEHBneZyTZM+c456qOrbbM/5xcR8huNCCcbVt7+UmizG6GuUvPvKUYg== -"@mapbox/node-pre-gyp@^1.0.11": - version "1.0.11" - resolved "https://registry.yarnpkg.com/@mapbox/node-pre-gyp/-/node-pre-gyp-1.0.11.tgz#417db42b7f5323d79e93b34a6d7a2a12c0df43fa" - integrity sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ== - dependencies: - detect-libc "^2.0.0" - https-proxy-agent "^5.0.0" - make-dir "^3.1.0" - node-fetch "^2.6.7" - nopt "^5.0.0" - npmlog "^5.0.1" - rimraf "^3.0.2" - semver "^7.3.5" - tar "^6.1.11" - "@npmcli/fs@^1.0.0": version "1.1.1" resolved "https://registry.yarnpkg.com/@npmcli/fs/-/fs-1.1.1.tgz#72f719fe935e687c56a4faecf3c03d06ba593257" @@ -328,14 +313,6 @@ archiver@^5.3.0: tar-stream "^2.2.0" zip-stream "^4.1.0" -are-we-there-yet@^2.0.0: - version "2.0.0" - resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-2.0.0.tgz#372e0e7bd279d8e94c653aaa1f67200884bf3e1c" - integrity sha512-Ci/qENmwHnsYo9xKIcUJN5LeDKdJ6R1Z1j9V/J5wyq8nh/mYPEpIKJbBZXtZjG04HiK7zV/p6Vs9952MrMeUIw== - dependencies: - delegates "^1.0.0" - readable-stream "^3.6.0" - are-we-there-yet@^3.0.0: version "3.0.1" resolved "https://registry.yarnpkg.com/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz#679df222b278c64f2cdba1175cdc00b0d96164bd" @@ -393,13 +370,13 @@ batchflow@^0.4.0: resolved "https://registry.yarnpkg.com/batchflow/-/batchflow-0.4.0.tgz#7d419df79b6b7587b06f9ea34f96ccef6f74e5b5" integrity sha512-XwQQoCGPUjdLWzmpAvRNZc91wnBYuKLmj52d9LLZ1Ww06ow5RBqBt8kUmU9/3ZvPq88j7Elh3V4cEhgNKXbIlQ== -bcrypt@^5.0.0: - version "5.1.1" - resolved "https://registry.yarnpkg.com/bcrypt/-/bcrypt-5.1.1.tgz#0f732c6dcb4e12e5b70a25e326a72965879ba6e2" - integrity sha512-AGBHOG5hPYZ5Xl9KXzU5iKq9516yEmvCKDg3ecP5kX2aB6UqTeXZxk2ELnDgDm6BQSMlLt9rDB4LoSMx0rYwww== +bcrypt@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/bcrypt/-/bcrypt-6.0.0.tgz#86643fddde9bcd0ad91400b063003fa4b0312835" + integrity sha512-cU8v/EGSrnH+HnxV2z0J7/blxH8gq7Xh2JFT6Aroax7UohdmiJJlxApMxtKfuI7z68NvvVcmR78k2LbT6efhRg== dependencies: - "@mapbox/node-pre-gyp" "^1.0.11" - node-addon-api "^5.0.0" + node-addon-api "^8.3.0" + node-gyp-build "^4.8.4" binary-extensions@^2.0.0: version "2.3.0" @@ -639,7 +616,7 @@ color-name@~1.1.4: resolved "https://registry.yarnpkg.com/color-name/-/color-name-1.1.4.tgz#c2a09a87acbde69543de6f63fa3995c826c536a2" integrity sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA== -color-support@^1.1.2, color-support@^1.1.3: +color-support@^1.1.3: version "1.1.3" resolved "https://registry.yarnpkg.com/color-support/-/color-support-1.1.3.tgz#93834379a1cc9a0c61f82f52f0d04322251bd5a2" integrity sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg== @@ -689,7 +666,7 @@ concat-map@0.0.1: resolved "https://registry.yarnpkg.com/concat-map/-/concat-map-0.0.1.tgz#d8a96bd77fd68df7793a73036a3ba0d5405d477b" integrity sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg== -console-control-strings@^1.0.0, console-control-strings@^1.1.0: +console-control-strings@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/console-control-strings/-/console-control-strings-1.1.0.tgz#3d7cf4464db6446ea644bf4b39507f9851008e8e" integrity sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ== @@ -1088,21 +1065,6 @@ function-bind@^1.1.2: resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.2.tgz#2c02d864d97f3ea6c8830c464cbd11ab6eab7a1c" integrity sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA== -gauge@^3.0.0: - version "3.0.2" - resolved "https://registry.yarnpkg.com/gauge/-/gauge-3.0.2.tgz#03bf4441c044383908bcfa0656ad91803259b395" - integrity sha512-+5J6MS/5XksCuXq++uFRsnUd7Ovu1XenbeuIuNRJxYWjgQbPuFhT14lAvsWfqfAmnwluf1OwMjz39HjfLPci0Q== - dependencies: - aproba "^1.0.3 || ^2.0.0" - color-support "^1.1.2" - console-control-strings "^1.0.0" - has-unicode "^2.0.1" - object-assign "^4.1.1" - signal-exit "^3.0.0" - string-width "^4.2.3" - strip-ansi "^6.0.1" - wide-align "^1.1.2" - gauge@^4.0.3: version "4.0.4" resolved "https://registry.yarnpkg.com/gauge/-/gauge-4.0.4.tgz#52ff0652f2bbf607a989793d53b751bef2328dce" @@ -1640,7 +1602,7 @@ lru.min@^1.1.0, lru.min@^1.1.3: resolved "https://registry.yarnpkg.com/lru.min/-/lru.min-1.1.3.tgz#c8c3d001dfb4cbe5b8d1f4bea207d4a320e5d76f" integrity sha512-Lkk/vx6ak3rYkRR0Nhu4lFUT2VDnQSxBe8Hbl7f36358p6ow8Bnvr8lrLt98H8J1aGxfhbX4Fs5tYg2+FTwr5Q== -make-dir@^3.0.0, make-dir@^3.1.0: +make-dir@^3.0.0: version "3.1.0" resolved "https://registry.yarnpkg.com/make-dir/-/make-dir-3.1.0.tgz#415e967046b3a7f1d185277d84aa58203726a13f" integrity sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw== @@ -1875,22 +1837,20 @@ node-abi@^3.3.0: dependencies: semver "^7.3.5" -node-addon-api@^5.0.0: - version "5.1.0" - resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-5.1.0.tgz#49da1ca055e109a23d537e9de43c09cca21eb762" - integrity sha512-eh0GgfEkpnoWDq+VY8OyvYhFEzBk6jIYbRKdIlyTiAXIVJ8PyBaKb0rp7oDtoddbdoHWhq8wwr+XZ81F1rpNdA== - node-addon-api@^7.0.0: version "7.1.1" resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-7.1.1.tgz#1aba6693b0f255258a049d621329329322aad558" integrity sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ== -node-fetch@^2.6.7: - version "2.7.0" - resolved "https://registry.yarnpkg.com/node-fetch/-/node-fetch-2.7.0.tgz#d0f0fa6e3e2dc1d27efcd8ad99d550bda94d187d" - integrity sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A== - dependencies: - whatwg-url "^5.0.0" +node-addon-api@^8.3.0: + version "8.5.0" + resolved "https://registry.yarnpkg.com/node-addon-api/-/node-addon-api-8.5.0.tgz#c91b2d7682fa457d2e1c388150f0dff9aafb8f3f" + integrity sha512-/bRZty2mXUIFY/xU5HLvveNHlswNJej+RnxBjOMkidWfwZzgTbPG1E3K5TOxRLOR+5hX7bSofy8yf1hZevMS8A== + +node-gyp-build@^4.8.4: + version "4.8.4" + resolved "https://registry.yarnpkg.com/node-gyp-build/-/node-gyp-build-4.8.4.tgz#8a70ee85464ae52327772a90d66c6077a900cfc8" + integrity sha512-LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ== node-gyp@8.x: version "8.4.1" @@ -1943,16 +1903,6 @@ normalize-path@^3.0.0, normalize-path@~3.0.0: resolved "https://registry.yarnpkg.com/normalize-path/-/normalize-path-3.0.0.tgz#0dcd69ff23a1c9b11fd0978316644a0388216a65" integrity sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA== -npmlog@^5.0.1: - version "5.0.1" - resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-5.0.1.tgz#f06678e80e29419ad67ab964e0fa69959c1eb8b0" - integrity sha512-AqZtDUWOMKs1G/8lwylVjrdYgqA4d9nu8hc+0gzRxlDb1I10+FHBGMXs6aiQHFdCUUlqH99MUMuLfzWDNDtfxw== - dependencies: - are-we-there-yet "^2.0.0" - console-control-strings "^1.1.0" - gauge "^3.0.0" - set-blocking "^2.0.0" - npmlog@^6.0.0: version "6.0.2" resolved "https://registry.yarnpkg.com/npmlog/-/npmlog-6.0.2.tgz#c8166017a42f2dea92d6453168dd865186a70830" @@ -1963,11 +1913,6 @@ npmlog@^6.0.0: gauge "^4.0.3" set-blocking "^2.0.0" -object-assign@^4.1.1: - version "4.1.1" - resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863" - integrity sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg== - object-inspect@^1.13.3: version "1.13.4" resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.13.4.tgz#8375265e21bc20d0fa582c22e1b13485d6e00213" @@ -2554,7 +2499,7 @@ side-channel@^1.1.0: side-channel-map "^1.0.1" side-channel-weakmap "^1.0.2" -signal-exit@^3.0.0, signal-exit@^3.0.7: +signal-exit@^3.0.7: version "3.0.7" resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== @@ -2797,11 +2742,6 @@ touch@^3.1.0: resolved "https://registry.yarnpkg.com/touch/-/touch-3.1.1.tgz#097a23d7b161476435e5c1344a95c0f75b4a5694" integrity sha512-r0eojU4bI8MnHr8c5bNo7lJDdI2qXlWWJk6a9EAFG7vbhTjElYhBVS3/miuE0uOuoLdb8Mc/rVfsmm6eo5o9GA== -tr46@~0.0.3: - version "0.0.3" - resolved "https://registry.yarnpkg.com/tr46/-/tr46-0.0.3.tgz#8184fd347dac9cdc185992f3a6622e14b9d9ab6a" - integrity sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw== - tslib@^2.0.1: version "2.8.1" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.8.1.tgz#612efe4ed235d567e8aba5f2a5fab70280ade83f" @@ -2877,19 +2817,6 @@ vary@^1.1.2, vary@~1.1.2: resolved "https://registry.yarnpkg.com/vary/-/vary-1.1.2.tgz#2299f02c6ded30d4a5961b0b9f74524a18f634fc" integrity sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg== -webidl-conversions@^3.0.0: - version "3.0.1" - resolved "https://registry.yarnpkg.com/webidl-conversions/-/webidl-conversions-3.0.1.tgz#24534275e2a7bc6be7bc86611cc16ae0a5654871" - integrity sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ== - -whatwg-url@^5.0.0: - version "5.0.0" - resolved "https://registry.yarnpkg.com/whatwg-url/-/whatwg-url-5.0.0.tgz#966454e8765462e37644d3626f6742ce8b70965d" - integrity sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw== - dependencies: - tr46 "~0.0.3" - webidl-conversions "^3.0.0" - which-module@^2.0.0: version "2.0.1" resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.1.tgz#776b1fe35d90aebe99e8ac15eb24093389a4a409" @@ -2902,7 +2829,7 @@ which@^2.0.2: dependencies: isexe "^2.0.0" -wide-align@^1.1.2, wide-align@^1.1.5: +wide-align@^1.1.5: version "1.1.5" resolved "https://registry.yarnpkg.com/wide-align/-/wide-align-1.1.5.tgz#df1d4c206854369ecf3c9a4898f1b23fbd9d15d3" integrity sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg== From a169e1131c5dd671b3fb6f886402a398d820de4e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 29 Jan 2026 23:36:00 +0000 Subject: [PATCH 49/77] Bump the prod-minor-updates group in /frontend with 4 updates Bumps the prod-minor-updates group in /frontend with 4 updates: [@tabler/icons-react](https://github.com/tabler/tabler-icons/tree/HEAD/packages/icons-react), [country-flag-icons](https://gitlab.com/catamphetamine/country-flag-icons), [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) and [rooks](https://github.com/imbhargav5/rooks). Updates `@tabler/icons-react` from 3.35.0 to 3.36.1 - [Release notes](https://github.com/tabler/tabler-icons/releases) - [Commits](https://github.com/tabler/tabler-icons/commits/v3.36.1/packages/icons-react) Updates `country-flag-icons` from 1.5.21 to 1.6.8 - [Changelog](https://gitlab.com/catamphetamine/country-flag-icons/blob/master/CHANGELOG.md) - [Commits](https://gitlab.com/catamphetamine/country-flag-icons/compare/v1.5.21...v1.6.8) Updates `react-router-dom` from 7.9.5 to 7.13.0 - [Release notes](https://github.com/remix-run/react-router/releases) - [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md) - [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@7.13.0/packages/react-router-dom) Updates `rooks` from 9.3.0 to 9.5.0 - [Release notes](https://github.com/imbhargav5/rooks/releases) - [Commits](https://github.com/imbhargav5/rooks/compare/rooks@9.3.0...rooks@9.5.0) --- updated-dependencies: - dependency-name: "@tabler/icons-react" dependency-version: 3.36.1 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: prod-minor-updates - dependency-name: country-flag-icons dependency-version: 1.6.8 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: prod-minor-updates - dependency-name: react-router-dom dependency-version: 7.13.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: prod-minor-updates - dependency-name: rooks dependency-version: 9.5.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: prod-minor-updates ... Signed-off-by: dependabot[bot] --- frontend/package.json | 8 +++---- frontend/yarn.lock | 52 +++++++++++++++++++++---------------------- 2 files changed, 30 insertions(+), 30 deletions(-) diff --git a/frontend/package.json b/frontend/package.json index 5fd2ff9f..5ffc6dfb 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -17,12 +17,12 @@ }, "dependencies": { "@tabler/core": "^1.4.0", - "@tabler/icons-react": "^3.35.0", + "@tabler/icons-react": "^3.36.1", "@tanstack/react-query": "^5.90.20", "@tanstack/react-table": "^8.21.3", "@uiw/react-textarea-code-editor": "^3.1.1", "classnames": "^2.5.1", - "country-flag-icons": "^1.5.21", + "country-flag-icons": "^1.6.12", "date-fns": "^4.1.0", "ez-modal-react": "^1.0.5", "formik": "^2.4.9", @@ -34,10 +34,10 @@ "react-dom": "^19.2.4", "react-intl": "^7.1.14", "react-markdown": "^10.1.0", - "react-router-dom": "^7.9.5", + "react-router-dom": "^7.13.0", "react-select": "^5.10.2", "react-toastify": "^11.0.5", - "rooks": "^9.3.0" + "rooks": "^9.5.0" }, "devDependencies": { "@biomejs/biome": "^2.3.13", diff --git a/frontend/yarn.lock b/frontend/yarn.lock index 2de201aa..995a500e 100644 --- a/frontend/yarn.lock +++ b/frontend/yarn.lock @@ -813,17 +813,17 @@ "@popperjs/core" "^2.11.8" bootstrap "5.3.7" -"@tabler/icons-react@^3.35.0": - version "3.35.0" - resolved "https://registry.npmjs.org/@tabler/icons-react/-/icons-react-3.35.0.tgz" - integrity sha512-XG7t2DYf3DyHT5jxFNp5xyLVbL4hMJYJhiSdHADzAjLRYfL7AnjlRfiHDHeXxkb2N103rEIvTsBRazxXtAUz2g== +"@tabler/icons-react@^3.36.1": + version "3.36.1" + resolved "https://registry.yarnpkg.com/@tabler/icons-react/-/icons-react-3.36.1.tgz#332d4407b5e2a9a783ce0a26567727aaedd5a9a8" + integrity sha512-/8nOXeNeMoze9xY/QyEKG65wuvRhkT3q9aytaur6Gj8bYU2A98YVJyLc9MRmc5nVvpy+bRlrrwK/Ykr8WGyUWg== dependencies: - "@tabler/icons" "3.35.0" + "@tabler/icons" "" -"@tabler/icons@3.35.0": - version "3.35.0" - resolved "https://registry.npmjs.org/@tabler/icons/-/icons-3.35.0.tgz" - integrity sha512-yYXe+gJ56xlZFiXwV9zVoe3FWCGuZ/D7/G4ZIlDtGxSx5CGQK110wrnT29gUj52kEZoxqF7oURTk97GQxELOFQ== +"@tabler/icons@": + version "3.36.1" + resolved "https://registry.yarnpkg.com/@tabler/icons/-/icons-3.36.1.tgz#a893104b3c56e02458b13342abb6e466d4a81a8d" + integrity sha512-f4Jg3Fof/Vru5ioix/UO4GX+sdDsF9wQo47FbtvG+utIYYVQ/QVAC0QYgcBbAjQGfbdOh2CCf0BgiFOF9Ixtjw== "@tanstack/query-core@5.90.20": version "5.90.20" @@ -1317,10 +1317,10 @@ cosmiconfig@^7.0.0: path-type "^4.0.0" yaml "^1.10.0" -country-flag-icons@^1.5.21: - version "1.5.21" - resolved "https://registry.npmjs.org/country-flag-icons/-/country-flag-icons-1.5.21.tgz" - integrity sha512-0KmU4oeiyAM+F+atzK99ghQDQJKxEY3tiDhnRraVFL4o65rZgrmrx7xKi0b+hxcVpcEpuUbu+KCC6TKTZQTDcA== +country-flag-icons@^1.6.12: + version "1.6.12" + resolved "https://registry.yarnpkg.com/country-flag-icons/-/country-flag-icons-1.6.12.tgz#f32f9fd6f371bf3dc9389ed5cf85150b80b20c00" + integrity sha512-tWxbBylam6Fkkg0nu+112jmny4WomHXgmdTQFobs/+evTyizSc06bCp//HAh4W1i+g1m06uqlbPuyLC5mrimkQ== css.escape@^1.5.1: version "1.5.1" @@ -2486,17 +2486,17 @@ react-refresh@^0.18.0: resolved "https://registry.npmjs.org/react-refresh/-/react-refresh-0.18.0.tgz" integrity sha512-QgT5//D3jfjJb6Gsjxv0Slpj23ip+HtOpnNgnb2S5zU3CB26G/IDPGoy4RJB42wzFE46DRsstbW6tKHoKbhAxw== -react-router-dom@^7.9.5: - version "7.9.5" - resolved "https://registry.npmjs.org/react-router-dom/-/react-router-dom-7.9.5.tgz" - integrity sha512-mkEmq/K8tKN63Ae2M7Xgz3c9l9YNbY+NHH6NNeUmLA3kDkhKXRsNb/ZpxaEunvGo2/3YXdk5EJU3Hxp3ocaBPw== +react-router-dom@^7.13.0: + version "7.13.0" + resolved "https://registry.yarnpkg.com/react-router-dom/-/react-router-dom-7.13.0.tgz#8b5f7204fadca680f0e94f207c163f0dcd1cfdf5" + integrity sha512-5CO/l5Yahi2SKC6rGZ+HDEjpjkGaG/ncEP7eWFTvFxbHP8yeeI0PxTDjimtpXYlR3b3i9/WIL4VJttPrESIf2g== dependencies: - react-router "7.9.5" + react-router "7.13.0" -react-router@7.9.5: - version "7.9.5" - resolved "https://registry.npmjs.org/react-router/-/react-router-7.9.5.tgz" - integrity sha512-JmxqrnBZ6E9hWmf02jzNn9Jm3UqyeimyiwzD69NjxGySG6lIz/1LVPsoTCwN7NBX2XjCEa1LIX5EMz1j2b6u6A== +react-router@7.13.0: + version "7.13.0" + resolved "https://registry.yarnpkg.com/react-router/-/react-router-7.13.0.tgz#de9484aee764f4f65b93275836ff5944d7f5bd3b" + integrity sha512-PZgus8ETambRT17BUm/LL8lX3Of+oiLaPuVTRH3l1eLvSPpKO3AvhAEb5N7ihAFZQrYDqkvvWfFh9p0z9VsjLw== dependencies: cookie "^1.0.1" set-cookie-parser "^2.6.0" @@ -2666,10 +2666,10 @@ rollup@^4.43.0: "@rollup/rollup-win32-x64-msvc" "4.50.0" fsevents "~2.3.2" -rooks@^9.3.0: - version "9.3.0" - resolved "https://registry.npmjs.org/rooks/-/rooks-9.3.0.tgz" - integrity sha512-ez9ReItW+a/GXsA92Lfh5KWTjhbzlp354KOlC5oh9RHVD5fs/GaWwBq72F2xkDXVblgCgFs0Nel1hxojtszhgw== +rooks@^9.5.0: + version "9.5.0" + resolved "https://registry.yarnpkg.com/rooks/-/rooks-9.5.0.tgz#bbe15fdf64fff44b9a1750cc913de3401572f012" + integrity sha512-AtmaX8yjQkJAW7EXW+UU481bpGwuk455hjD/aEUuy7N7VjvXlNmO8BErQ+jEUQp1DRA/PTWonv+Dq1nEkJdgkw== dependencies: fast-deep-equal "^3.1.3" lodash.debounce "^4.0.8" From 00b58f73f8a24dc60b283797ae8651a4fad46b9d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 30 Jan 2026 01:35:10 +0000 Subject: [PATCH 50/77] Bump archiver from 5.3.2 to 7.0.1 in /backend Bumps [archiver](https://github.com/archiverjs/node-archiver) from 5.3.2 to 7.0.1. - [Release notes](https://github.com/archiverjs/node-archiver/releases) - [Changelog](https://github.com/archiverjs/node-archiver/blob/master/CHANGELOG.md) - [Commits](https://github.com/archiverjs/node-archiver/compare/5.3.2...7.0.1) --- updated-dependencies: - dependency-name: archiver dependency-version: 7.0.1 dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- backend/package.json | 2 +- backend/yarn.lock | 398 +++++++++++++++++++++++++++++++++---------- 2 files changed, 311 insertions(+), 89 deletions(-) diff --git a/backend/package.json b/backend/package.json index dfa3721b..61c599d9 100644 --- a/backend/package.json +++ b/backend/package.json @@ -14,7 +14,7 @@ "dependencies": { "@apidevtools/json-schema-ref-parser": "^11.7.0", "ajv": "^8.17.1", - "archiver": "^5.3.0", + "archiver": "^7.0.1", "batchflow": "^0.4.0", "bcrypt": "^6.0.0", "body-parser": "^1.20.3", diff --git a/backend/yarn.lock b/backend/yarn.lock index c05099cf..303ee3b4 100644 --- a/backend/yarn.lock +++ b/backend/yarn.lock @@ -100,6 +100,18 @@ resolved "https://registry.yarnpkg.com/@gar/promisify/-/promisify-1.1.3.tgz#555193ab2e3bb3b6adc3d551c9c030d9e860daf6" integrity sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw== +"@isaacs/cliui@^8.0.2": + version "8.0.2" + resolved "https://registry.yarnpkg.com/@isaacs/cliui/-/cliui-8.0.2.tgz#b37667b7bc181c168782259bab42474fbf52b550" + integrity sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA== + 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" + "@jsdevtools/ono@^7.1.3": version "7.1.3" resolved "https://registry.yarnpkg.com/@jsdevtools/ono/-/ono-7.1.3.tgz#9df03bbd7c696a5c58885c34aa06da41c8543796" @@ -159,6 +171,11 @@ "@otplib/plugin-crypto" "^12.0.1" "@otplib/plugin-thirty-two" "^12.0.1" +"@pkgjs/parseargs@^0.11.0": + version "0.11.0" + resolved "https://registry.yarnpkg.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33" + integrity sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg== + "@tootallnate/once@1": version "1.1.2" resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82" @@ -179,6 +196,13 @@ abbrev@1: resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8" integrity sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q== +abort-controller@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/abort-controller/-/abort-controller-3.0.0.tgz#eaf54d53b62bae4138e809ca225c8439a6efb392" + integrity sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg== + dependencies: + event-target-shim "^5.0.0" + accepts@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/accepts/-/accepts-2.0.0.tgz#bbcf4ba5075467f3f2131eab3cffc73c2f5d7895" @@ -241,6 +265,11 @@ ansi-regex@^5.0.1: resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-5.0.1.tgz#082cb2c89c9fe8659a311a53bd6a4dc5301db304" integrity sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ== +ansi-regex@^6.0.1: + version "6.2.2" + resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-6.2.2.tgz#60216eea464d864597ce2832000738a0589650c1" + integrity sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg== + ansi-styles@^3.2.1: version "3.2.1" resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-3.2.1.tgz#41fbb20243e50b12be0f04b8dedbf07520ce841d" @@ -255,6 +284,11 @@ ansi-styles@^4.0.0: dependencies: color-convert "^2.0.1" +ansi-styles@^6.1.0: + version "6.2.3" + resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-6.2.3.tgz#c044d5dcc521a076413472597a1acb1f103c4041" + integrity sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg== + anymatch@~3.1.2: version "3.1.3" resolved "https://registry.yarnpkg.com/anymatch/-/anymatch-3.1.3.tgz#790c58b19ba1720a84205b57c618d5ad8524973e" @@ -268,50 +302,31 @@ anymatch@~3.1.2: resolved "https://registry.yarnpkg.com/aproba/-/aproba-2.1.0.tgz#75500a190313d95c64e871e7e4284c6ac219f0b1" integrity sha512-tLIEcj5GuR2RSTnxNKdkK0dJ/GrC7P38sUkiDmDuHfsHmbagTFAxDVIBltoklXEVIQ/f14IL8IMJ5pn9Hez1Ew== -archiver-utils@^2.1.0: - version "2.1.0" - resolved "https://registry.yarnpkg.com/archiver-utils/-/archiver-utils-2.1.0.tgz#e8a460e94b693c3e3da182a098ca6285ba9249e2" - integrity sha512-bEL/yUb/fNNiNTuUz979Z0Yg5L+LzLxGJz8x79lYmR54fmTIb6ob/hNQgkQnIUDWIFjZVQwl9Xs356I6BAMHfw== +archiver-utils@^5.0.0, archiver-utils@^5.0.2: + version "5.0.2" + resolved "https://registry.yarnpkg.com/archiver-utils/-/archiver-utils-5.0.2.tgz#63bc719d951803efc72cf961a56ef810760dd14d" + integrity sha512-wuLJMmIBQYCsGZgYLTy5FIB2pF6Lfb6cXMSF8Qywwk3t20zWnAi7zLcQFdKQmIB8wyZpY5ER38x08GbwtR2cLA== dependencies: - glob "^7.1.4" + glob "^10.0.0" graceful-fs "^4.2.0" + is-stream "^2.0.1" lazystream "^1.0.0" - lodash.defaults "^4.2.0" - lodash.difference "^4.5.0" - lodash.flatten "^4.4.0" - lodash.isplainobject "^4.0.6" - lodash.union "^4.6.0" + lodash "^4.17.15" normalize-path "^3.0.0" - readable-stream "^2.0.0" + readable-stream "^4.0.0" -archiver-utils@^3.0.4: - version "3.0.4" - resolved "https://registry.yarnpkg.com/archiver-utils/-/archiver-utils-3.0.4.tgz#a0d201f1cf8fce7af3b5a05aea0a337329e96ec7" - integrity sha512-KVgf4XQVrTjhyWmx6cte4RxonPLR9onExufI1jhvw/MQ4BB6IsZD5gT8Lq+u/+pRkWna/6JoHpiQioaqFP5Rzw== +archiver@^7.0.1: + version "7.0.1" + resolved "https://registry.yarnpkg.com/archiver/-/archiver-7.0.1.tgz#c9d91c350362040b8927379c7aa69c0655122f61" + integrity sha512-ZcbTaIqJOfCc03QwD468Unz/5Ir8ATtvAHsK+FdXbDIbGfihqh9mrvdcYunQzqn4HrvWWaFyaxJhGZagaJJpPQ== dependencies: - glob "^7.2.3" - graceful-fs "^4.2.0" - lazystream "^1.0.0" - lodash.defaults "^4.2.0" - lodash.difference "^4.5.0" - lodash.flatten "^4.4.0" - lodash.isplainobject "^4.0.6" - lodash.union "^4.6.0" - normalize-path "^3.0.0" - readable-stream "^3.6.0" - -archiver@^5.3.0: - version "5.3.2" - resolved "https://registry.yarnpkg.com/archiver/-/archiver-5.3.2.tgz#99991d5957e53bd0303a392979276ac4ddccf3b0" - integrity sha512-+25nxyyznAXF7Nef3y0EbBeqmGZgeN/BxHX29Rs39djAfaFalmQ89SE6CWyDCHzGL0yt/ycBtNOmGTW0FyGWNw== - dependencies: - archiver-utils "^2.1.0" + archiver-utils "^5.0.2" async "^3.2.4" - buffer-crc32 "^0.2.1" - readable-stream "^3.6.0" + buffer-crc32 "^1.0.0" + readable-stream "^4.0.0" readdir-glob "^1.1.2" - tar-stream "^2.2.0" - zip-stream "^4.1.0" + tar-stream "^3.0.0" + zip-stream "^6.0.1" are-we-there-yet@^3.0.0: version "3.0.1" @@ -350,11 +365,21 @@ aws-ssl-profiles@^1.1.2: resolved "https://registry.yarnpkg.com/aws-ssl-profiles/-/aws-ssl-profiles-1.1.2.tgz#157dd77e9f19b1d123678e93f120e6f193022641" integrity sha512-NZKeq9AfyQvEeNlN0zSYAaWrmBffJh3IELMZfRpJVWgrpEbtEpnjvzqBPf+mxoI287JohRDoa+/nsfqqiZmF6g== +b4a@^1.6.4: + version "1.7.3" + resolved "https://registry.yarnpkg.com/b4a/-/b4a-1.7.3.tgz#24cf7ccda28f5465b66aec2bac69e32809bf112f" + integrity sha512-5Q2mfq2WfGuFp3uS//0s6baOJLMoVduPYVeNmDYxu5OUA1/cBfvr2RIS7vi62LdNj/urk1hfmj867I3qt6uZ7Q== + balanced-match@^1.0.0: version "1.0.2" resolved "https://registry.yarnpkg.com/balanced-match/-/balanced-match-1.0.2.tgz#e83e3a7e3f300b34cb9d87f615fa0cbf357690ee" integrity sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw== +bare-events@^2.7.0: + version "2.8.2" + resolved "https://registry.yarnpkg.com/bare-events/-/bare-events-2.8.2.tgz#7b3e10bd8e1fc80daf38bb516921678f566ab89f" + integrity sha512-riJjyv1/mHLIPX4RwiK+oW9/4c3TEUeORHKefKAKnZ5kyslbN+HXowtbaVEqt4IMUB7OXlfixcs6gsFeo/jhiQ== + base64-js@^1.3.1: version "1.5.1" resolved "https://registry.yarnpkg.com/base64-js/-/base64-js-1.5.1.tgz#1b1b440160a5bf7ad40b650f095963481903930a" @@ -459,10 +484,10 @@ braces@~3.0.2: dependencies: fill-range "^7.1.1" -buffer-crc32@^0.2.1, buffer-crc32@^0.2.13: - version "0.2.13" - resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-0.2.13.tgz#0d333e3f00eac50aa1454abd30ef8c2a5d9a7242" - integrity sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ== +buffer-crc32@^1.0.0: + version "1.0.0" + resolved "https://registry.yarnpkg.com/buffer-crc32/-/buffer-crc32-1.0.0.tgz#a10993b9055081d55304bd9feb4a072de179f405" + integrity sha512-Db1SbgBS/fg/392AblrMJk97KggmvYhr4pB5ZIMTWtaivCPMWLkmb7m21cJvpvgK+J3nsU2CmmixNBZx4vFj/w== buffer-equal-constant-time@^1.0.1: version "1.0.1" @@ -477,6 +502,14 @@ buffer@^5.5.0: base64-js "^1.3.1" ieee754 "^1.1.13" +buffer@^6.0.3: + version "6.0.3" + resolved "https://registry.yarnpkg.com/buffer/-/buffer-6.0.3.tgz#2ace578459cc8fbe2a70aaa8f52ee63b6a74c6c6" + integrity sha512-FTiCpNxtwiZZHEZbcbTIcZjERVICn9yq/pDFkTl95/AxzD1naBctN7YO68riM/gLSDY7sdrMby8hofADYuuqOA== + dependencies: + base64-js "^1.3.1" + ieee754 "^1.2.1" + busboy@^1.6.0: version "1.6.0" resolved "https://registry.yarnpkg.com/busboy/-/busboy-1.6.0.tgz#966ea36a9502e43cdb9146962523b92f531f6893" @@ -631,15 +664,16 @@ commander@^10.0.0: resolved "https://registry.yarnpkg.com/commander/-/commander-10.0.1.tgz#881ee46b4f77d1c1dccc5823433aa39b022cbe06" integrity sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug== -compress-commons@^4.1.2: - version "4.1.2" - resolved "https://registry.yarnpkg.com/compress-commons/-/compress-commons-4.1.2.tgz#6542e59cb63e1f46a8b21b0e06f9a32e4c8b06df" - integrity sha512-D3uMHtGc/fcO1Gt1/L7i1e33VOvD4A9hfQLP+6ewd+BvG/gQ84Yh4oftEhAdjSMgBgwGL+jsppT7JYNpo6MHHg== +compress-commons@^6.0.2: + version "6.0.2" + resolved "https://registry.yarnpkg.com/compress-commons/-/compress-commons-6.0.2.tgz#26d31251a66b9d6ba23a84064ecd3a6a71d2609e" + integrity sha512-6FqVXeETqWPoGcfzrXb37E50NP0LXT8kAMu5ooZayhWWdgEY4lBEEcbQNXtkuKQsGduxiIcI4gOTsxTmuq/bSg== dependencies: - buffer-crc32 "^0.2.13" - crc32-stream "^4.0.2" + crc-32 "^1.2.0" + crc32-stream "^6.0.0" + is-stream "^2.0.1" normalize-path "^3.0.0" - readable-stream "^3.6.0" + readable-stream "^4.0.0" compressible@~2.0.18: version "2.0.18" @@ -701,13 +735,22 @@ crc-32@^1.2.0: resolved "https://registry.yarnpkg.com/crc-32/-/crc-32-1.2.2.tgz#3cad35a934b8bf71f25ca524b6da51fb7eace2ff" integrity sha512-ROmzCKrTnOwybPcJApAA6WBWij23HVfGVNKqqrZpuyZOHqK2CwHSvpGuyt/UNNvaIjEd8X5IFGp4Mh+Ie1IHJQ== -crc32-stream@^4.0.2: - version "4.0.3" - resolved "https://registry.yarnpkg.com/crc32-stream/-/crc32-stream-4.0.3.tgz#85dd677eb78fa7cad1ba17cc506a597d41fc6f33" - integrity sha512-NT7w2JVU7DFroFdYkeq8cywxrgjPHWkdX1wjpRQXPX5Asews3tA+Ght6lddQO5Mkumffp3X7GEqku3epj2toIw== +crc32-stream@^6.0.0: + version "6.0.0" + resolved "https://registry.yarnpkg.com/crc32-stream/-/crc32-stream-6.0.0.tgz#8529a3868f8b27abb915f6c3617c0fadedbf9430" + integrity sha512-piICUB6ei4IlTv1+653yq5+KoqfBYmj9bw6LqXoOneTMDXk5nM1qt12mFW1caG3LlJXEKW1Bp0WggEmIfQB34g== dependencies: crc-32 "^1.2.0" - readable-stream "^3.4.0" + readable-stream "^4.0.0" + +cross-spawn@^7.0.6: + version "7.0.6" + resolved "https://registry.yarnpkg.com/cross-spawn/-/cross-spawn-7.0.6.tgz#8a58fe78f00dcd70c370451759dfbfaf03e8ee9f" + integrity sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA== + dependencies: + path-key "^3.1.0" + shebang-command "^2.0.0" + which "^2.0.1" data-uri-to-buffer@^6.0.2: version "6.0.2" @@ -800,6 +843,11 @@ dunder-proto@^1.0.1: es-errors "^1.3.0" gopd "^1.2.0" +eastasianwidth@^0.2.0: + version "0.2.0" + resolved "https://registry.yarnpkg.com/eastasianwidth/-/eastasianwidth-0.2.0.tgz#696ce2ec0aa0e6ea93a397ffcf24aa7840c827cb" + integrity sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA== + ecdsa-sig-formatter@1.0.11: version "1.0.11" resolved "https://registry.yarnpkg.com/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz#ae0f0fa2d85045ef14a817daa3ce9acd0489e5bf" @@ -822,6 +870,11 @@ emoji-regex@^8.0.0: resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-8.0.0.tgz#e818fd69ce5ccfcb404594f842963bf53164cc37" integrity sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A== +emoji-regex@^9.2.2: + version "9.2.2" + resolved "https://registry.yarnpkg.com/emoji-regex/-/emoji-regex-9.2.2.tgz#840c8803b0d8047f4ff0cf963176b32d4ef3ed72" + integrity sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg== + encodeurl@^2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/encodeurl/-/encodeurl-2.0.0.tgz#7b8ea898077d7e409d3ac45474ea38eaf0857a58" @@ -926,6 +979,23 @@ etag@^1.8.1: resolved "https://registry.yarnpkg.com/etag/-/etag-1.8.1.tgz#41ae2eeb65efa62268aebfea83ac7d79299b0887" integrity sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg== +event-target-shim@^5.0.0: + version "5.0.1" + resolved "https://registry.yarnpkg.com/event-target-shim/-/event-target-shim-5.0.1.tgz#5d4d3ebdf9583d63a5333ce2deb7480ab2b05789" + integrity sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ== + +events-universal@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/events-universal/-/events-universal-1.0.1.tgz#b56a84fd611b6610e0a2d0f09f80fdf931e2dfe6" + integrity sha512-LUd5euvbMLpwOF8m6ivPCbhQeSiYVNb8Vs0fQ8QjXo0JTkEHpz8pxdQf0gStltaPpw0Cca8b39KxvK9cfKRiAw== + dependencies: + bare-events "^2.7.0" + +events@^3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/events/-/events-3.3.0.tgz#31a95ad0a924e2d2c419a813aeb2c4e878ea7400" + integrity sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q== + expand-template@^2.0.3: version "2.0.3" resolved "https://registry.yarnpkg.com/expand-template/-/expand-template-2.0.3.tgz#6e14b3fcee0f3a6340ecb57d2e8918692052a47c" @@ -977,6 +1047,11 @@ fast-deep-equal@^3.1.3: resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz#3a7d56b559d6cbc3eb512325244e619a65c6c525" integrity sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q== +fast-fifo@^1.2.0, fast-fifo@^1.3.2: + version "1.3.2" + resolved "https://registry.yarnpkg.com/fast-fifo/-/fast-fifo-1.3.2.tgz#286e31de96eb96d38a97899815740ba2a4f3640c" + integrity sha512-/d9sfos4yxzpwkDkuN7k2SqFKtYNmCTzgfEpz82x34IM9/zc8KGxQoXg1liNC/izpRM/MBdt44Nmx41ZWqk+FQ== + fast-uri@^3.0.1: version "3.1.0" resolved "https://registry.yarnpkg.com/fast-uri/-/fast-uri-3.1.0.tgz#66eecff6c764c0df9b762e62ca7edcfb53b4edfa" @@ -1028,6 +1103,14 @@ find-up@^4.1.0: locate-path "^5.0.0" path-exists "^4.0.0" +foreground-child@^3.1.0: + version "3.3.1" + resolved "https://registry.yarnpkg.com/foreground-child/-/foreground-child-3.3.1.tgz#32e8e9ed1b68a3497befb9ac2b6adf92a638576f" + integrity sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw== + dependencies: + cross-spawn "^7.0.6" + signal-exit "^4.0.1" + forwarded@0.2.0: version "0.2.0" resolved "https://registry.yarnpkg.com/forwarded/-/forwarded-0.2.0.tgz#2269936428aad4c15c7ebe9779a84bf0b2a81811" @@ -1146,7 +1229,19 @@ glob-parent@~5.1.2: dependencies: is-glob "^4.0.1" -glob@^7.1.3, glob@^7.1.4, glob@^7.2.3: +glob@^10.0.0: + version "10.5.0" + resolved "https://registry.yarnpkg.com/glob/-/glob-10.5.0.tgz#8ec0355919cd3338c28428a23d4f24ecc5fe738c" + integrity sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg== + dependencies: + foreground-child "^3.1.0" + jackspeak "^3.1.2" + minimatch "^9.0.4" + minipass "^7.1.2" + package-json-from-dist "^1.0.0" + path-scurry "^1.11.1" + +glob@^7.1.3, glob@^7.1.4: version "7.2.3" resolved "https://registry.yarnpkg.com/glob/-/glob-7.2.3.tgz#b8df0fb802bbfa8e89bd1d938b4e16578ed44f2b" integrity sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q== @@ -1277,7 +1372,7 @@ iconv-lite@~0.4.24: dependencies: safer-buffer ">= 2.1.2 < 3" -ieee754@^1.1.13: +ieee754@^1.1.13, ieee754@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" integrity sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA== @@ -1396,7 +1491,7 @@ is-property@^1.0.2: resolved "https://registry.yarnpkg.com/is-property/-/is-property-1.0.2.tgz#57fe1c4e48474edd65b09911f26b1cd4095dda84" integrity sha512-Ks/IoX00TtClbGQr4TWXemAnktAQvYB7HzcCxDGqEZU6oCmb2INHuOoKxbtR+HFkmYWBKv/dOZtGRiAjDhj92g== -is-stream@^2.0.0: +is-stream@^2.0.0, is-stream@^2.0.1: version "2.0.1" resolved "https://registry.yarnpkg.com/is-stream/-/is-stream-2.0.1.tgz#fac1e3d53b97ad5a9d0ae9cef2389f5810a5c077" integrity sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg== @@ -1411,6 +1506,15 @@ isexe@^2.0.0: resolved "https://registry.yarnpkg.com/isexe/-/isexe-2.0.0.tgz#e8fbf374dc556ff8947a10dcb0572d633f2cfa10" integrity sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw== +jackspeak@^3.1.2: + version "3.4.3" + resolved "https://registry.yarnpkg.com/jackspeak/-/jackspeak-3.4.3.tgz#8833a9d89ab4acde6188942bd1c53b6390ed5a8a" + integrity sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw== + dependencies: + "@isaacs/cliui" "^8.0.2" + optionalDependencies: + "@pkgjs/parseargs" "^0.11.0" + js-yaml@^4.1.0: version "4.1.1" resolved "https://registry.yarnpkg.com/js-yaml/-/js-yaml-4.1.1.tgz#854c292467705b699476e1a2decc0c8a3458806b" @@ -1520,21 +1624,6 @@ locate-path@^5.0.0: dependencies: p-locate "^4.1.0" -lodash.defaults@^4.2.0: - version "4.2.0" - resolved "https://registry.yarnpkg.com/lodash.defaults/-/lodash.defaults-4.2.0.tgz#d09178716ffea4dde9e5fb7b37f6f0802274580c" - integrity sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ== - -lodash.difference@^4.5.0: - version "4.5.0" - resolved "https://registry.yarnpkg.com/lodash.difference/-/lodash.difference-4.5.0.tgz#9ccb4e505d486b91651345772885a2df27fd017c" - integrity sha512-dS2j+W26TQ7taQBGN8Lbbq04ssV3emRw4NY58WErlTO29pIqS0HmoT5aJ9+TUQ1N3G+JOZSji4eugsWwGp9yPA== - -lodash.flatten@^4.4.0: - version "4.4.0" - resolved "https://registry.yarnpkg.com/lodash.flatten/-/lodash.flatten-4.4.0.tgz#f31c22225a9632d2bbf8e4addbef240aa765a61f" - integrity sha512-C5N2Z3DgnnKr0LOpv/hKCgKdb7ZZwafIrsesve6lmzvZIRZRGaZ/l6Q8+2W7NaT+ZwO3fFlSCzCzrDCFdJfZ4g== - lodash.includes@^4.3.0: version "4.3.0" resolved "https://registry.yarnpkg.com/lodash.includes/-/lodash.includes-4.3.0.tgz#60bb98a87cb923c68ca1e51325483314849f553f" @@ -1570,12 +1659,7 @@ lodash.once@^4.0.0: resolved "https://registry.yarnpkg.com/lodash.once/-/lodash.once-4.1.1.tgz#0dd3971213c7c56df880977d504c88fb471a97ac" integrity sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg== -lodash.union@^4.6.0: - version "4.6.0" - resolved "https://registry.yarnpkg.com/lodash.union/-/lodash.union-4.6.0.tgz#48bb5088409f16f1821666641c44dd1aaae3cd88" - integrity sha512-c4pB2CdGrGdjMKYLA+XiRDO7Y0PRQbm/Gzg8qMj+QH+pFVAoTp5sBpO0odL3FjoPCGjK96p6qsP+yQoiLoOBcw== - -lodash@^4.17.21, lodash@^4.17.23: +lodash@^4.17.15, lodash@^4.17.21, lodash@^4.17.23: version "4.17.23" resolved "https://registry.yarnpkg.com/lodash/-/lodash-4.17.23.tgz#f113b0378386103be4f6893388c73d0bde7f2c5a" integrity sha512-LgVTMpQtIopCi79SJeDiP0TfWi5CNEc/L/aRdTh3yIvmZXTnheWpKjSZhnvMl8iXbC1tFg9gdHHDMLoV7CnG+w== @@ -1585,6 +1669,11 @@ long@^5.3.2: resolved "https://registry.yarnpkg.com/long/-/long-5.3.2.tgz#1d84463095999262d7d7b7f8bfd4a8cc55167f83" integrity sha512-mNAgZ1GmyNhD7AuqnTG3/VQ26o760+ZYBPKjPvugO8+nLbYfX6TVpJPseBvopbdY+qpZ/lKUnmEc1LeZYS3QAA== +lru-cache@^10.2.0: + version "10.4.3" + resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-10.4.3.tgz#410fc8a17b70e598013df257c2446b7f3383f119" + integrity sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ== + lru-cache@^6.0.0: version "6.0.0" resolved "https://registry.yarnpkg.com/lru-cache/-/lru-cache-6.0.0.tgz#6d6fe6570ebd96aaf90fcad1dafa3b2566db3a94" @@ -1694,6 +1783,13 @@ minimatch@^5.1.0: dependencies: brace-expansion "^2.0.1" +minimatch@^9.0.4: + version "9.0.5" + resolved "https://registry.yarnpkg.com/minimatch/-/minimatch-9.0.5.tgz#d74f9dd6b57d83d8e98cfb82133b03978bc929e5" + integrity sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow== + dependencies: + brace-expansion "^2.0.1" + minimist@^1.2.0, minimist@^1.2.3: version "1.2.8" resolved "https://registry.yarnpkg.com/minimist/-/minimist-1.2.8.tgz#c1a464e7693302e082a075cee0c057741ac4772c" @@ -1750,6 +1846,11 @@ minipass@^5.0.0: resolved "https://registry.yarnpkg.com/minipass/-/minipass-5.0.0.tgz#3e9788ffb90b694a5d0ec94479a45b5d8738133d" integrity sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ== +"minipass@^5.0.0 || ^6.0.2 || ^7.0.0", minipass@^7.1.2: + version "7.1.2" + resolved "https://registry.yarnpkg.com/minipass/-/minipass-7.1.2.tgz#93a9626ce5e5e66bd4db86849e7515e92340a707" + integrity sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw== + minizlib@^2.0.0, minizlib@^2.1.1: version "2.1.2" resolved "https://registry.yarnpkg.com/minizlib/-/minizlib-2.1.2.tgz#e90d3466ba209b932451508a11ce3d3632145931" @@ -2022,6 +2123,11 @@ pac-resolver@^7.0.1: degenerator "^5.0.0" netmask "^2.0.2" +package-json-from-dist@^1.0.0: + version "1.0.1" + resolved "https://registry.yarnpkg.com/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz#4f1471a010827a86f94cfd9b0727e36d267de505" + integrity sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw== + parse-json@^4.0.0: version "4.0.0" resolved "https://registry.yarnpkg.com/parse-json/-/parse-json-4.0.0.tgz#be35f5425be1f7f6c747184f98a788cb99477ee0" @@ -2050,11 +2156,24 @@ path-is-absolute@^1.0.0: resolved "https://registry.yarnpkg.com/path-is-absolute/-/path-is-absolute-1.0.1.tgz#174b9268735534ffbc7ace6bf53a5a9e1b5c5f5f" integrity sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg== +path-key@^3.1.0: + version "3.1.1" + resolved "https://registry.yarnpkg.com/path-key/-/path-key-3.1.1.tgz#581f6ade658cbba65a0d3380de7753295054f375" + integrity sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q== + path-parse@^1.0.7: version "1.0.7" resolved "https://registry.yarnpkg.com/path-parse/-/path-parse-1.0.7.tgz#fbc114b60ca42b30d9daf5858e4bd68bbedb6735" integrity sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw== +path-scurry@^1.11.1: + version "1.11.1" + resolved "https://registry.yarnpkg.com/path-scurry/-/path-scurry-1.11.1.tgz#7960a668888594a0720b12a911d1a742ab9f11d2" + integrity sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA== + dependencies: + lru-cache "^10.2.0" + minipass "^5.0.0 || ^6.0.2 || ^7.0.0" + path-to-regexp@^8.0.0: version "8.3.0" resolved "https://registry.yarnpkg.com/path-to-regexp/-/path-to-regexp-8.3.0.tgz#aa818a6981f99321003a08987d3cec9c3474cd1f" @@ -2192,7 +2311,7 @@ process-nextick-args@~2.0.0: resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2" integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag== -process@^0.11.1: +process@^0.11.1, process@^0.11.10: version "0.11.10" resolved "https://registry.yarnpkg.com/process/-/process-0.11.10.tgz#7332300e840161bda3e69a1d1d91a7d4bc16f182" integrity sha512-cdGef/drWFoydD1JsMzuFf8100nZl+GT+yacc2bEced5f9Rjk4z+WtFUTBu9PhOi9j/jfmBPu0mMEY4wIdAF8A== @@ -2297,7 +2416,7 @@ rc@^1.2.7: minimist "^1.2.0" strip-json-comments "~2.0.1" -readable-stream@^2.0.0, readable-stream@^2.0.5: +readable-stream@^2.0.5: version "2.3.8" resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.3.8.tgz#91125e8042bba1b9887f49345f6277027ce8be9b" integrity sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA== @@ -2319,6 +2438,17 @@ readable-stream@^3.1.1, readable-stream@^3.4.0, readable-stream@^3.6.0: string_decoder "^1.1.1" util-deprecate "^1.0.1" +readable-stream@^4.0.0: + version "4.7.0" + resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-4.7.0.tgz#cedbd8a1146c13dfff8dab14068028d58c15ac91" + integrity sha512-oIGGmcpTLwPga8Bn6/Z75SVaH1z5dUut2ibSyAMVhmUggWpmDn2dapB0n7f8nwaSiRtepAsfJyfXIO5DCVAODg== + dependencies: + abort-controller "^3.0.0" + buffer "^6.0.3" + events "^3.3.0" + process "^0.11.10" + string_decoder "^1.3.0" + readdir-glob@^1.1.2: version "1.1.3" resolved "https://registry.yarnpkg.com/readdir-glob/-/readdir-glob-1.1.3.tgz#c3d831f51f5e7bfa62fa2ffbe4b508c640f09584" @@ -2459,6 +2589,18 @@ setprototypeof@~1.2.0: resolved "https://registry.yarnpkg.com/setprototypeof/-/setprototypeof-1.2.0.tgz#66c9a24a73f9fc28cbe66b09fed3d33dcaf1b424" integrity sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw== +shebang-command@^2.0.0: + version "2.0.0" + resolved "https://registry.yarnpkg.com/shebang-command/-/shebang-command-2.0.0.tgz#ccd0af4f8835fbdc265b82461aaf0c36663f34ea" + integrity sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA== + dependencies: + shebang-regex "^3.0.0" + +shebang-regex@^3.0.0: + version "3.0.0" + resolved "https://registry.yarnpkg.com/shebang-regex/-/shebang-regex-3.0.0.tgz#ae16f1644d873ecad843b0307b143362d4c42172" + integrity sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A== + side-channel-list@^1.0.0: version "1.0.0" resolved "https://registry.yarnpkg.com/side-channel-list/-/side-channel-list-1.0.0.tgz#10cb5984263115d3b7a0e336591e290a830af8ad" @@ -2504,6 +2646,11 @@ signal-exit@^3.0.7: resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.7.tgz#a9a1767f8af84155114eaabd73f99273c8f59ad9" integrity sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ== +signal-exit@^4.0.1: + version "4.1.0" + resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-4.1.0.tgz#952188c1cbd546070e2dd20d0f41c0ae0530cb04" + integrity sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw== + signale@1.4.0: version "1.4.0" resolved "https://registry.yarnpkg.com/signale/-/signale-1.4.0.tgz#c4be58302fb0262ac00fc3d886a7c113759042f1" @@ -2609,6 +2756,24 @@ streamsearch@^1.1.0: resolved "https://registry.yarnpkg.com/streamsearch/-/streamsearch-1.1.0.tgz#404dd1e2247ca94af554e841a8ef0eaa238da764" integrity sha512-Mcc5wHehp9aXz1ax6bZUyY5afg9u2rv5cqQI3mRrYkGC8rW2hM02jWuwjtL++LS5qinSyhj2QfLyNsuc+VsExg== +streamx@^2.15.0: + version "2.23.0" + resolved "https://registry.yarnpkg.com/streamx/-/streamx-2.23.0.tgz#7d0f3d00d4a6c5de5728aecd6422b4008d66fd0b" + integrity sha512-kn+e44esVfn2Fa/O0CPFcex27fjIL6MkVae0Mm6q+E6f0hWv578YCERbv+4m02cjxvDsPKLnmxral/rR6lBMAg== + dependencies: + events-universal "^1.0.0" + fast-fifo "^1.3.2" + text-decoder "^1.1.0" + +"string-width-cjs@npm:string-width@^4.2.0": + version "4.2.3" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" + integrity sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g== + dependencies: + emoji-regex "^8.0.0" + is-fullwidth-code-point "^3.0.0" + strip-ansi "^6.0.1" + "string-width@^1.0.2 || 2 || 3 || 4", string-width@^4.1.0, string-width@^4.2.0, string-width@^4.2.3: version "4.2.3" resolved "https://registry.yarnpkg.com/string-width/-/string-width-4.2.3.tgz#269c7117d27b05ad2e536830a8ec895ef9c6d010" @@ -2618,7 +2783,16 @@ streamsearch@^1.1.0: is-fullwidth-code-point "^3.0.0" strip-ansi "^6.0.1" -string_decoder@^1.1.1: +string-width@^5.0.1, string-width@^5.1.2: + version "5.1.2" + resolved "https://registry.yarnpkg.com/string-width/-/string-width-5.1.2.tgz#14f8daec6d81e7221d2a357e668cab73bdbca794" + integrity sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA== + dependencies: + eastasianwidth "^0.2.0" + emoji-regex "^9.2.2" + strip-ansi "^7.0.1" + +string_decoder@^1.1.1, string_decoder@^1.3.0: version "1.3.0" resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e" integrity sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA== @@ -2632,6 +2806,13 @@ string_decoder@~1.1.1: dependencies: safe-buffer "~5.1.0" +"strip-ansi-cjs@npm:strip-ansi@^6.0.1": + version "6.0.1" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" + integrity sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A== + dependencies: + ansi-regex "^5.0.1" + strip-ansi@^6.0.0, strip-ansi@^6.0.1: version "6.0.1" resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-6.0.1.tgz#9e26c63d30f53443e9489495b2105d37b67a85d9" @@ -2639,6 +2820,13 @@ strip-ansi@^6.0.0, strip-ansi@^6.0.1: dependencies: ansi-regex "^5.0.1" +strip-ansi@^7.0.1: + version "7.1.2" + resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-7.1.2.tgz#132875abde678c7ea8d691533f2e7e22bb744dba" + integrity sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA== + dependencies: + ansi-regex "^6.0.1" + strip-bom@^3.0.0: version "3.0.0" resolved "https://registry.yarnpkg.com/strip-bom/-/strip-bom-3.0.0.tgz#2334c18e9c759f7bdd56fdef7e9ae3d588e68ed3" @@ -2671,7 +2859,7 @@ tar-fs@^2.0.0: pump "^3.0.0" tar-stream "^2.1.4" -tar-stream@^2.1.4, tar-stream@^2.2.0: +tar-stream@^2.1.4: version "2.2.0" resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-2.2.0.tgz#acad84c284136b060dc3faa64474aa9aebd77287" integrity sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ== @@ -2682,6 +2870,15 @@ tar-stream@^2.1.4, tar-stream@^2.2.0: inherits "^2.0.3" readable-stream "^3.1.1" +tar-stream@^3.0.0: + version "3.1.7" + resolved "https://registry.yarnpkg.com/tar-stream/-/tar-stream-3.1.7.tgz#24b3fb5eabada19fe7338ed6d26e5f7c482e792b" + integrity sha512-qJj60CXt7IU1Ffyc3NJMjh6EkuCFej46zUqJ4J7pqYlThyd9bO0XBTmcOIhSzZJVWfsLks0+nle/j538YAW9RQ== + dependencies: + b4a "^1.6.4" + fast-fifo "^1.2.0" + streamx "^2.15.0" + tar@^6.0.2, tar@^6.1.11, tar@^6.1.2: version "6.2.1" resolved "https://registry.yarnpkg.com/tar/-/tar-6.2.1.tgz#717549c541bc3c2af15751bea94b1dd068d4b03a" @@ -2715,6 +2912,13 @@ temp-write@^4.0.0: temp-dir "^1.0.0" uuid "^3.3.2" +text-decoder@^1.1.0: + version "1.2.3" + resolved "https://registry.yarnpkg.com/text-decoder/-/text-decoder-1.2.3.tgz#b19da364d981b2326d5f43099c310cc80d770c65" + integrity sha512-3/o9z3X0X0fTupwsYvR03pJ/DjWuqqrfwBgTQzdWDiQSm9KitAyz/9WqsT2JQW7KV2m+bC2ol/zqpW37NHxLaA== + dependencies: + b4a "^1.6.4" + thirty-two@^1.0.2: version "1.0.2" resolved "https://registry.yarnpkg.com/thirty-two/-/thirty-two-1.0.2.tgz#4ca2fffc02a51290d2744b9e3f557693ca6b627a" @@ -2822,7 +3026,7 @@ which-module@^2.0.0: resolved "https://registry.yarnpkg.com/which-module/-/which-module-2.0.1.tgz#776b1fe35d90aebe99e8ac15eb24093389a4a409" integrity sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ== -which@^2.0.2: +which@^2.0.1, which@^2.0.2: version "2.0.2" resolved "https://registry.yarnpkg.com/which/-/which-2.0.2.tgz#7c6a8dd0a636a0327e10b59c9286eee93f3f51b1" integrity sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA== @@ -2836,6 +3040,15 @@ wide-align@^1.1.5: dependencies: string-width "^1.0.2 || 2 || 3 || 4" +"wrap-ansi-cjs@npm:wrap-ansi@^7.0.0": + version "7.0.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-7.0.0.tgz#67e145cff510a6a6984bdf1152911d69d2eb9e43" + integrity sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q== + dependencies: + ansi-styles "^4.0.0" + string-width "^4.1.0" + strip-ansi "^6.0.0" + wrap-ansi@^6.2.0: version "6.2.0" resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-6.2.0.tgz#e9393ba07102e6c91a3b221478f0257cd2856e53" @@ -2845,6 +3058,15 @@ wrap-ansi@^6.2.0: string-width "^4.1.0" strip-ansi "^6.0.0" +wrap-ansi@^8.1.0: + version "8.1.0" + resolved "https://registry.yarnpkg.com/wrap-ansi/-/wrap-ansi-8.1.0.tgz#56dc22368ee570face1b49819975d9b9a5ead214" + integrity sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ== + dependencies: + ansi-styles "^6.1.0" + string-width "^5.0.1" + strip-ansi "^7.0.1" + wrappy@1: version "1.0.2" resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f" @@ -2890,11 +3112,11 @@ yargs@^15.4.1: y18n "^4.0.0" yargs-parser "^18.1.2" -zip-stream@^4.1.0: - version "4.1.1" - resolved "https://registry.yarnpkg.com/zip-stream/-/zip-stream-4.1.1.tgz#1337fe974dbaffd2fa9a1ba09662a66932bd7135" - integrity sha512-9qv4rlDiopXg4E69k+vMHjNN63YFMe9sZMrdlvKnCjlCRWeCBswPPMPUfx+ipsAWq1LXHe70RcbaHdJJpS6hyQ== +zip-stream@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/zip-stream/-/zip-stream-6.0.1.tgz#e141b930ed60ccaf5d7fa9c8260e0d1748a2bbfb" + integrity sha512-zK7YHHz4ZXpW89AHXUPbQVGKI7uvkd3hzusTdotCg1UxyaVtg0zFJSTfW/Dq5f7OBBVnq6cZIaC8Ti4hb6dtCA== dependencies: - archiver-utils "^3.0.4" - compress-commons "^4.1.2" - readable-stream "^3.6.0" + archiver-utils "^5.0.0" + compress-commons "^6.0.2" + readable-stream "^4.0.0" From 58d47cd69adf41f1f3e7fa2a5fb40cb7c176a978 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 30 Jan 2026 13:04:04 +0000 Subject: [PATCH 51/77] Bump @apidevtools/json-schema-ref-parser in /backend Bumps [@apidevtools/json-schema-ref-parser](https://github.com/APIDevTools/json-schema-ref-parser) from 11.9.3 to 14.1.1. - [Release notes](https://github.com/APIDevTools/json-schema-ref-parser/releases) - [Commits](https://github.com/APIDevTools/json-schema-ref-parser/compare/v11.9.3...v14.1.1) --- updated-dependencies: - dependency-name: "@apidevtools/json-schema-ref-parser" dependency-version: 14.1.1 dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- backend/package.json | 2 +- backend/yarn.lock | 14 ++++---------- 2 files changed, 5 insertions(+), 11 deletions(-) diff --git a/backend/package.json b/backend/package.json index 61c599d9..41ecd463 100644 --- a/backend/package.json +++ b/backend/package.json @@ -12,7 +12,7 @@ "validate-schema": "node validate-schema.js" }, "dependencies": { - "@apidevtools/json-schema-ref-parser": "^11.7.0", + "@apidevtools/json-schema-ref-parser": "^14.1.1", "ajv": "^8.17.1", "archiver": "^7.0.1", "batchflow": "^0.4.0", diff --git a/backend/yarn.lock b/backend/yarn.lock index 303ee3b4..2d1a9ccc 100644 --- a/backend/yarn.lock +++ b/backend/yarn.lock @@ -10,12 +10,11 @@ "@types/json-schema" "^7.0.15" js-yaml "^4.1.0" -"@apidevtools/json-schema-ref-parser@^11.7.0": - version "11.9.3" - resolved "https://registry.yarnpkg.com/@apidevtools/json-schema-ref-parser/-/json-schema-ref-parser-11.9.3.tgz#0e0c9061fc41cf03737d499a4e6a8299fdd2bfa7" - integrity sha512-60vepv88RwcJtSHrD6MjIL6Ta3SOYbgfnkHb+ppAVK+o9mXprRtulx7VlRl3lN3bbvysAfCS7WMVfhUYemB0IQ== +"@apidevtools/json-schema-ref-parser@^14.1.1": + version "14.1.1" + resolved "https://registry.yarnpkg.com/@apidevtools/json-schema-ref-parser/-/json-schema-ref-parser-14.1.1.tgz#0bae59809b7848c7a89dc6bb2f3bb980b7c290b1" + integrity sha512-uGF1YGOzzD50L7HLNWclXmsEhQflw8/zZHIz0/AzkJrKL5r9PceUipZxR/cp/8veTk4TVfdDJLyIwXLjaP5ePg== dependencies: - "@jsdevtools/ono" "^7.1.3" "@types/json-schema" "^7.0.15" js-yaml "^4.1.0" @@ -112,11 +111,6 @@ wrap-ansi "^8.1.0" wrap-ansi-cjs "npm:wrap-ansi@^7.0.0" -"@jsdevtools/ono@^7.1.3": - version "7.1.3" - resolved "https://registry.yarnpkg.com/@jsdevtools/ono/-/ono-7.1.3.tgz#9df03bbd7c696a5c58885c34aa06da41c8543796" - integrity sha512-4JQNk+3mVzK3xh2rqd6RB4J46qUR19azEHBneZyTZM+c456qOrbbM/5xcR8huNCCcbVt7+UmizG6GuUvPvKUYg== - "@npmcli/fs@^1.0.0": version "1.1.1" resolved "https://registry.yarnpkg.com/@npmcli/fs/-/fs-1.1.1.tgz#72f719fe935e687c56a4faecf3c03d06ba593257" From 8532e7520f9b3d668253374fc1afb45701178829 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 30 Jan 2026 13:04:20 +0000 Subject: [PATCH 52/77] Bump body-parser from 1.20.4 to 2.2.2 in /backend Bumps [body-parser](https://github.com/expressjs/body-parser) from 1.20.4 to 2.2.2. - [Release notes](https://github.com/expressjs/body-parser/releases) - [Changelog](https://github.com/expressjs/body-parser/blob/master/HISTORY.md) - [Commits](https://github.com/expressjs/body-parser/compare/1.20.4...v2.2.2) --- updated-dependencies: - dependency-name: body-parser dependency-version: 2.2.2 dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- backend/package.json | 2 +- backend/yarn.lock | 77 ++++---------------------------------------- 2 files changed, 7 insertions(+), 72 deletions(-) diff --git a/backend/package.json b/backend/package.json index 61c599d9..35ce9698 100644 --- a/backend/package.json +++ b/backend/package.json @@ -17,7 +17,7 @@ "archiver": "^7.0.1", "batchflow": "^0.4.0", "bcrypt": "^6.0.0", - "body-parser": "^1.20.3", + "body-parser": "^2.2.2", "compression": "^1.7.4", "express": "^5.2.1", "express-fileupload": "^1.5.2", diff --git a/backend/yarn.lock b/backend/yarn.lock index 303ee3b4..96747ce2 100644 --- a/backend/yarn.lock +++ b/backend/yarn.lock @@ -429,25 +429,7 @@ blueimp-md5@^2.16.0: resolved "https://registry.yarnpkg.com/blueimp-md5/-/blueimp-md5-2.19.0.tgz#b53feea5498dcb53dc6ec4b823adb84b729c4af0" integrity sha512-DRQrD6gJyy8FbiE4s+bDoXS9hiW3Vbx5uCdwvcCf3zLHL+Iv7LtGHLpr+GZV8rHG8tK766FGYBwRbu8pELTt+w== -body-parser@^1.20.3: - version "1.20.4" - resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-1.20.4.tgz#f8e20f4d06ca8a50a71ed329c15dccad1cdc547f" - integrity sha512-ZTgYYLMOXY9qKU/57FAo8F+HA2dGX7bqGc71txDRC1rS4frdFI5R7NhluHxH6M0YItAP0sHB4uqAOcYKxO6uGA== - dependencies: - bytes "~3.1.2" - content-type "~1.0.5" - debug "2.6.9" - depd "2.0.0" - destroy "~1.2.0" - http-errors "~2.0.1" - iconv-lite "~0.4.24" - on-finished "~2.4.1" - qs "~6.14.0" - raw-body "~2.5.3" - type-is "~1.6.18" - unpipe "~1.0.0" - -body-parser@^2.2.1: +body-parser@^2.2.1, body-parser@^2.2.2: version "2.2.2" resolved "https://registry.yarnpkg.com/body-parser/-/body-parser-2.2.2.tgz#1a32cdb966beaf68de50a9dfbe5b58f83cb8890c" integrity sha512-oP5VkATKlNwcgvxi0vM0p/D3n2C3EReYVX+DNYs5TjZFn/oQt2j+4sVJtSMr18pdRr8wjTcBl6LoV+FUwzPmNA== @@ -710,7 +692,7 @@ content-disposition@^1.0.0: resolved "https://registry.yarnpkg.com/content-disposition/-/content-disposition-1.0.1.tgz#a8b7bbeb2904befdfb6787e5c0c086959f605f9b" integrity sha512-oIXISMynqSqm241k6kcQ5UwttDILMK4BiurCfGEREw6+X9jkkpEe5T9FZaApyLGGOnFuyMWZpdolTXMtvEJ08Q== -content-type@^1.0.5, content-type@~1.0.5: +content-type@^1.0.5: version "1.0.5" resolved "https://registry.yarnpkg.com/content-type/-/content-type-1.0.5.tgz#8b773162656d1d1086784c8f23a54ce6d73d7918" integrity sha512-nTjqfcBFEipKdXCv4YDQWCfmcLZKm81ldF0pAopTvyrFGVbcR6P/VAAd5G7N+0tTr8QqiU0tFadD6FK4NtJwOA== @@ -819,16 +801,11 @@ denque@^2.1.0: resolved "https://registry.yarnpkg.com/denque/-/denque-2.1.0.tgz#e93e1a6569fb5e66f16a3c2a2964617d349d6ab1" integrity sha512-HVQE3AAb/pxF8fQAoiqpvg9i3evqug3hoiwakOyZAwJm+6vZehbkYXZ0l4JxS+I3QxM97v5aaRNhj8v5oBhekw== -depd@2.0.0, depd@^2.0.0, depd@~2.0.0: +depd@^2.0.0, depd@~2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/depd/-/depd-2.0.0.tgz#b696163cc757560d09cf22cc8fad1571b79e76df" integrity sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw== -destroy@~1.2.0: - version "1.2.0" - resolved "https://registry.yarnpkg.com/destroy/-/destroy-1.2.0.tgz#4803735509ad8be552934c67df614f94e66fa015" - integrity sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg== - detect-libc@^2.0.0: version "2.0.4" resolved "https://registry.yarnpkg.com/detect-libc/-/detect-libc-2.0.4.tgz#f04715b8ba815e53b4d8109655b6508a6865a7e8" @@ -1365,13 +1342,6 @@ iconv-lite@^0.7.0, iconv-lite@^0.7.2, iconv-lite@~0.7.0: dependencies: safer-buffer ">= 2.1.2 < 3.0.0" -iconv-lite@~0.4.24: - version "0.4.24" - resolved "https://registry.yarnpkg.com/iconv-lite/-/iconv-lite-0.4.24.tgz#2022b4b25fbddc21d2f524974a474aafe733908b" - integrity sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA== - dependencies: - safer-buffer ">= 2.1.2 < 3" - ieee754@^1.1.13, ieee754@^1.2.1: version "1.2.1" resolved "https://registry.yarnpkg.com/ieee754/-/ieee754-1.2.1.tgz#8eb7a10a63fff25d15a57b001586d177d1b0d352" @@ -1725,11 +1695,6 @@ math-intrinsics@^1.1.0: resolved "https://registry.yarnpkg.com/math-intrinsics/-/math-intrinsics-1.1.0.tgz#a0dd74be81e2aa5c2f27e65ce283605ee4e2b7f9" integrity sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g== -media-typer@0.3.0: - version "0.3.0" - resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-0.3.0.tgz#8710d7af0aa626f8fffa1ce00168545263255748" - integrity sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ== - media-typer@^1.1.0: version "1.1.0" resolved "https://registry.yarnpkg.com/media-typer/-/media-typer-1.1.0.tgz#6ab74b8f2d3320f2064b2a87a38e7931ff3a5561" @@ -1740,11 +1705,6 @@ merge-descriptors@^2.0.0: resolved "https://registry.yarnpkg.com/merge-descriptors/-/merge-descriptors-2.0.0.tgz#ea922f660635a2249ee565e0449f951e6b603808" integrity sha512-Snk314V5ayFLhp3fkUREub6WtjBfPdCPY1Ln8/8munuLuiYhsABgBVWsozAG+MWMbVEvcdcpbi9R7ww22l9Q3g== -mime-db@1.52.0: - version "1.52.0" - resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.52.0.tgz#bbabcdc02859f4987301c856e3387ce5ec43bf70" - integrity sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg== - "mime-db@>= 1.43.0 < 2", mime-db@^1.54.0: version "1.54.0" resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.54.0.tgz#cddb3ee4f9c64530dff640236661d42cb6a314f5" @@ -1757,13 +1717,6 @@ mime-types@^3.0.0, mime-types@^3.0.2: dependencies: mime-db "^1.54.0" -mime-types@~2.1.24: - version "2.1.35" - resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.35.tgz#381a871b62a734450660ae3deee44813f70d959a" - integrity sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw== - dependencies: - mime-db "1.52.0" - mimic-response@^3.1.0: version "3.1.0" resolved "https://registry.yarnpkg.com/mimic-response/-/mimic-response-3.1.0.tgz#2d1d59af9c1b129815accc2c46a022a5ce1fa3c9" @@ -2028,7 +1981,7 @@ objection@3.1.5: ajv-formats "^2.1.1" db-errors "^0.2.3" -on-finished@^2.4.1, on-finished@~2.4.1: +on-finished@^2.4.1: version "2.4.1" resolved "https://registry.yarnpkg.com/on-finished/-/on-finished-2.4.1.tgz#58c8c44116e54845ad57f14ab10b03533184ac3f" integrity sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg== @@ -2369,7 +2322,7 @@ pump@^3.0.0: end-of-stream "^1.1.0" once "^1.3.1" -qs@^6.14.0, qs@^6.14.1, qs@~6.14.0: +qs@^6.14.0, qs@^6.14.1: version "6.14.1" resolved "https://registry.yarnpkg.com/qs/-/qs-6.14.1.tgz#a41d85b9d3902f31d27861790506294881871159" integrity sha512-4EK3+xJl8Ts67nLYNwqw/dsFVnCf+qR7RgXSK9jEEm9unao3njwMDdmsdvoKBKHzxd7tCYz5e5M+SnMjdtXGQQ== @@ -2396,16 +2349,6 @@ raw-body@^3.0.1: iconv-lite "~0.7.0" unpipe "~1.0.0" -raw-body@~2.5.3: - version "2.5.3" - resolved "https://registry.yarnpkg.com/raw-body/-/raw-body-2.5.3.tgz#11c6650ee770a7de1b494f197927de0c923822e2" - integrity sha512-s4VSOf6yN0rvbRZGxs8Om5CWj6seneMwK3oDb4lWDH0UPhWcxwOWw5+qk24bxq87szX1ydrwylIOp2uG1ojUpA== - dependencies: - bytes "~3.1.2" - http-errors "~2.0.1" - iconv-lite "~0.4.24" - unpipe "~1.0.0" - rc@^1.2.7: version "1.2.8" resolved "https://registry.yarnpkg.com/rc/-/rc-1.2.8.tgz#cd924bf5200a075b83c188cd6b9e211b7fc0d3ed" @@ -2532,7 +2475,7 @@ safe-buffer@~5.1.0, safe-buffer@~5.1.1: resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d" integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g== -"safer-buffer@>= 2.1.2 < 3", "safer-buffer@>= 2.1.2 < 3.0.0", safer-buffer@~2.1.0: +"safer-buffer@>= 2.1.2 < 3.0.0", safer-buffer@~2.1.0: version "2.1.2" resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a" integrity sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg== @@ -2967,14 +2910,6 @@ type-is@^2.0.1: media-typer "^1.1.0" mime-types "^3.0.0" -type-is@~1.6.18: - version "1.6.18" - resolved "https://registry.yarnpkg.com/type-is/-/type-is-1.6.18.tgz#4e552cd05df09467dcbc4ef739de89f2cf37c131" - integrity sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g== - dependencies: - media-typer "0.3.0" - mime-types "~2.1.24" - undefsafe@^2.0.5: version "2.0.5" resolved "https://registry.yarnpkg.com/undefsafe/-/undefsafe-2.0.5.tgz#38733b9327bdcd226db889fb723a6efd162e6e2c" From 83d993578b2ebe0b910ff646674570c355e1025d Mon Sep 17 00:00:00 2001 From: maghuro Date: Fri, 5 Dec 2025 10:52:47 +0000 Subject: [PATCH 53/77] Add pt-PT lang Add Portuguese (European) language --- frontend/check-locales.cjs | 17 + frontend/src/locale/IntlProvider.tsx | 18 + frontend/src/locale/src/HelpDoc/index.ts | 5 + .../src/locale/src/HelpDoc/pt/AccessLists.md | 11 + .../src/locale/src/HelpDoc/pt/Certificates.md | 31 + .../src/locale/src/HelpDoc/pt/DeadHosts.md | 9 + .../src/locale/src/HelpDoc/pt/ProxyHosts.md | 7 + .../locale/src/HelpDoc/pt/RedirectionHosts.md | 7 + frontend/src/locale/src/HelpDoc/pt/Streams.md | 6 + frontend/src/locale/src/HelpDoc/pt/index.ts | 6 + frontend/src/locale/src/lang-list.json | 45 ++ frontend/src/locale/src/pt.json | 683 ++++++++++++++++++ 12 files changed, 845 insertions(+) create mode 100644 frontend/src/locale/src/HelpDoc/pt/AccessLists.md create mode 100644 frontend/src/locale/src/HelpDoc/pt/Certificates.md create mode 100644 frontend/src/locale/src/HelpDoc/pt/DeadHosts.md create mode 100644 frontend/src/locale/src/HelpDoc/pt/ProxyHosts.md create mode 100644 frontend/src/locale/src/HelpDoc/pt/RedirectionHosts.md create mode 100644 frontend/src/locale/src/HelpDoc/pt/Streams.md create mode 100644 frontend/src/locale/src/HelpDoc/pt/index.ts create mode 100644 frontend/src/locale/src/pt.json diff --git a/frontend/check-locales.cjs b/frontend/check-locales.cjs index e5b1947f..1f4410ff 100755 --- a/frontend/check-locales.cjs +++ b/frontend/check-locales.cjs @@ -7,6 +7,7 @@ // - Also checks the error messages returned by the backend const allLocales = [ +<<<<<<< HEAD ["en", "en-US"], ["de", "de-DE"], ["es", "es-ES"], @@ -24,6 +25,22 @@ const allLocales = [ ["id", "id-ID"], ["tr", "tr-TR"], ["hu", "hu-HU"], +======= + ["en", "en-US"], + ["de", "de-DE"], + ["pt", "pt-PT"], + ["es", "es-ES"], + ["it", "it-IT"], + ["ja", "ja-JP"], + ["nl", "nl-NL"], + ["pl", "pl-PL"], + ["ru", "ru-RU"], + ["sk", "sk-SK"], + ["vi", "vi-VN"], + ["zh", "zh-CN"], + ["ko", "ko-KR"], + ["bg", "bg-BG"], +>>>>>>> da4147cd (Add pt-PT lang) ]; const ignoreUnused = [/^.*$/]; diff --git a/frontend/src/locale/IntlProvider.tsx b/frontend/src/locale/IntlProvider.tsx index 050daa0f..5aa9684d 100755 --- a/frontend/src/locale/IntlProvider.tsx +++ b/frontend/src/locale/IntlProvider.tsx @@ -1,6 +1,7 @@ import { createIntl, createIntlCache } from "react-intl"; import langBg from "./lang/bg.json"; import langDe from "./lang/de.json"; +import langPt from "./lang/pt.json"; import langEn from "./lang/en.json"; import langEs from "./lang/es.json"; import langFr from "./lang/fr.json"; @@ -23,6 +24,7 @@ import langList from "./lang/lang-list.json"; // not the country code // Remember when adding to this list, also update check-locales.js script const localeOptions = [ +<<<<<<< HEAD ["en", "en-US", langEn], ["de", "de-DE", langDe], ["es", "es-ES", langEs], @@ -41,6 +43,22 @@ const localeOptions = [ ["id", "id-ID", langId], ["tr", "tr-TR", langTr], ["hu", "hu-HU", langHu], +======= + ["en", "en-US", langEn], + ["de", "de-DE", langDe], + ["pt", "pt-PT", langPt], + ["es", "es-ES", langEs], + ["ja", "ja-JP", langJa], + ["it", "it-IT", langIt], + ["nl", "nl-NL", langNl], + ["pl", "pl-PL", langPl], + ["ru", "ru-RU", langRu], + ["sk", "sk-SK", langSk], + ["vi", "vi-VN", langVi], + ["zh", "zh-CN", langZh], + ["ko", "ko-KR", langKo], + ["bg", "bg-BG", langBg], +>>>>>>> da4147cd (Add pt-PT lang) ]; const loadMessages = (locale?: string): typeof langList & typeof langEn => { diff --git a/frontend/src/locale/src/HelpDoc/index.ts b/frontend/src/locale/src/HelpDoc/index.ts index e4d0a259..6464c8a8 100644 --- a/frontend/src/locale/src/HelpDoc/index.ts +++ b/frontend/src/locale/src/HelpDoc/index.ts @@ -1,5 +1,6 @@ import * as bg from "./bg/index"; import * as de from "./de/index"; +import * as pt from "./pt/index"; import * as en from "./en/index"; import * as es from "./es/index"; import * as fr from "./fr/index"; @@ -17,7 +18,11 @@ import * as zh from "./zh/index"; import * as tr from "./tr/index"; import * as hu from "./hu/index"; +<<<<<<< HEAD const items: any = { en, de, es, ja, sk, zh, pl, ru, it, vi, nl, bg, ko, ga, id, fr, tr, hu }; +======= +const items: any = { en, de, pt, ja, sk, zh, pl, ru, it, vi, nl, bg, ko }; +>>>>>>> da4147cd (Add pt-PT lang) const fallbackLang = "en"; diff --git a/frontend/src/locale/src/HelpDoc/pt/AccessLists.md b/frontend/src/locale/src/HelpDoc/pt/AccessLists.md new file mode 100644 index 00000000..fcedb8a5 --- /dev/null +++ b/frontend/src/locale/src/HelpDoc/pt/AccessLists.md @@ -0,0 +1,11 @@ +## O que é uma Access List? + +As *Access Lists* fornecem uma lista de permissões (whitelist) ou bloqueios (blacklist) +de endereços IP específicos de clientes, juntamente com autenticação para os *Proxy Hosts* +via Autenticação HTTP Básica (*Basic Auth*). + +Podes configurar múltiplas regras de cliente, nomes de utilizador e palavras-passe +para uma única *Access List*, e depois aplicá-la a um ou mais *Proxy Hosts*. + +Isto é especialmente útil para serviços web encaminhados que não têm mecanismos +de autenticação integrados ou quando pretendes proteger o acesso contra clientes desconhecidos. diff --git a/frontend/src/locale/src/HelpDoc/pt/Certificates.md b/frontend/src/locale/src/HelpDoc/pt/Certificates.md new file mode 100644 index 00000000..da92f803 --- /dev/null +++ b/frontend/src/locale/src/HelpDoc/pt/Certificates.md @@ -0,0 +1,31 @@ +## Ajuda de Certificados + +### Certificado HTTP + +Um certificado validado por HTTP significa que os servidores do Let's Encrypt irão +tentar aceder aos teus domínios via HTTP (não HTTPS!) e, se a ligação for bem-sucedida, +emitirão o certificado. + +Para este método, é necessário ter um *Proxy Host* criado para o(s) teu(s) domínio(s), +acessível via HTTP e a apontar para esta instalação do Nginx. Depois de o certificado ser +emitido, podes modificar o *Proxy Host* para também utilizar esse certificado em ligações HTTPS. +No entanto, o *Proxy Host* deve continuar configurado para acesso HTTP para que a renovação +funcione corretamente. + +Este processo **não** suporta domínios wildcard. + +### Certificado DNS + +Um certificado validado por DNS requer que uses um plugin de fornecedor DNS (*DNS Provider*). +Este fornecedor será usado para criar registos temporários no teu domínio, que serão consultados +pelo Let's Encrypt para confirmar que és o proprietário. Se tudo correr bem, o certificado será emitido. + +Não é necessário ter um *Proxy Host* criado antes de pedir este tipo de certificado. +Também não é necessário que o *Proxy Host* tenha acesso HTTP configurado. + +Este processo **suporta** domínios wildcard. + +### Certificado Personalizado + +Usa esta opção para carregar o teu próprio Certificado SSL, fornecido pela +tua Autoridade Certificadora. diff --git a/frontend/src/locale/src/HelpDoc/pt/DeadHosts.md b/frontend/src/locale/src/HelpDoc/pt/DeadHosts.md new file mode 100644 index 00000000..c9874a14 --- /dev/null +++ b/frontend/src/locale/src/HelpDoc/pt/DeadHosts.md @@ -0,0 +1,9 @@ +## O que é um 404 Host? + +Um *404 Host* é simplesmente um host configurado para apresentar uma página 404. + +Isto pode ser útil quando o teu domínio aparece em motores de busca e queres fornecer +uma página de erro mais agradável ou indicar especificamente aos indexadores de pesquisa +que as páginas desse domínio já não existem. + +Outra vantagem é permitir consultar os registos de acessos a este host e ver os referenciadores. diff --git a/frontend/src/locale/src/HelpDoc/pt/ProxyHosts.md b/frontend/src/locale/src/HelpDoc/pt/ProxyHosts.md new file mode 100644 index 00000000..4c221fac --- /dev/null +++ b/frontend/src/locale/src/HelpDoc/pt/ProxyHosts.md @@ -0,0 +1,7 @@ +## O que é um Proxy Host? + +Um *Proxy Host* é o ponto de entrada para um serviço web que pretendes encaminhar. + +Permite, opcionalmente, fazer terminação SSL para um serviço que possa não ter suporte SSL nativo. + +Os *Proxy Hosts* são a utilização mais comum do Nginx Proxy Manager. diff --git a/frontend/src/locale/src/HelpDoc/pt/RedirectionHosts.md b/frontend/src/locale/src/HelpDoc/pt/RedirectionHosts.md new file mode 100644 index 00000000..10418ba0 --- /dev/null +++ b/frontend/src/locale/src/HelpDoc/pt/RedirectionHosts.md @@ -0,0 +1,7 @@ +## O que é um Redirection Host? + +Um *Redirection Host* redireciona pedidos recebidos no domínio de entrada e envia +o utilizador para outro domínio. + +A razão mais comum para usar este tipo de host é quando o teu site muda de domínio +mas ainda tens motores de busca ou links de referência a apontar para o domínio antigo. diff --git a/frontend/src/locale/src/HelpDoc/pt/Streams.md b/frontend/src/locale/src/HelpDoc/pt/Streams.md new file mode 100644 index 00000000..83857c63 --- /dev/null +++ b/frontend/src/locale/src/HelpDoc/pt/Streams.md @@ -0,0 +1,6 @@ +## O que é um Stream? + +Uma funcionalidade relativamente recente no Nginx, um *Stream* serve para encaminhar +tráfego TCP/UDP diretamente para outro computador na rede. + +Se estiveres a executar servidores de jogos, FTP ou SSH, isto pode ser bastante útil. diff --git a/frontend/src/locale/src/HelpDoc/pt/index.ts b/frontend/src/locale/src/HelpDoc/pt/index.ts new file mode 100644 index 00000000..a9bb46ba --- /dev/null +++ b/frontend/src/locale/src/HelpDoc/pt/index.ts @@ -0,0 +1,6 @@ +export * as AccessLists from "./AccessLists.md"; +export * as Certificates from "./Certificates.md"; +export * as DeadHosts from "./DeadHosts.md"; +export * as ProxyHosts from "./ProxyHosts.md"; +export * as RedirectionHosts from "./RedirectionHosts.md"; +export * as Streams from "./Streams.md"; diff --git a/frontend/src/locale/src/lang-list.json b/frontend/src/locale/src/lang-list.json index 0c8fb60e..92b61b4e 100644 --- a/frontend/src/locale/src/lang-list.json +++ b/frontend/src/locale/src/lang-list.json @@ -1,4 +1,5 @@ { +<<<<<<< HEAD "locale-en-US": { "defaultMessage": "English" }, @@ -53,4 +54,48 @@ "locale-hu-HU": { "defaultMessage": "Magyar" } +======= + "locale-en-US": { + "defaultMessage": "English" + }, + "locale-es-ES": { + "defaultMessage": "Español" + }, + "locale-de-DE": { + "defaultMessage": "German" + }, + "locale-pt-PT": { + "defaultMessage": "Português (Europeu)" + }, + "locale-ja-JP": { + "defaultMessage": "日本語" + }, + "locale-ru-RU": { + "defaultMessage": "Русский" + }, + "locale-sk-SK": { + "defaultMessage": "Slovenčina" + }, + "locale-zh-CN": { + "defaultMessage": "中文" + }, + "locale-pl-PL": { + "defaultMessage": "Polski" + }, + "locale-it-IT": { + "defaultMessage": "Italiano" + }, + "locale-vi-VN": { + "defaultMessage": "Tiếng Việt" + }, + "locale-nl-NL": { + "defaultMessage": "Nederlands" + }, + "locale-ko-KR": { + "defaultMessage": "한국어" + }, + "locale-bg-BG": { + "defaultMessage": "Български" + } +>>>>>>> da4147cd (Add pt-PT lang) } diff --git a/frontend/src/locale/src/pt.json b/frontend/src/locale/src/pt.json new file mode 100644 index 00000000..0a789f48 --- /dev/null +++ b/frontend/src/locale/src/pt.json @@ -0,0 +1,683 @@ +{ + "access-list": { + "defaultMessage": "Lista de Controlo de Acesso (ACL)" + }, + "access-list.access-count": { + "defaultMessage": "{count} {count, plural, one {Regra} other {Regras}}" + }, + "access-list.auth-count": { + "defaultMessage": "{count} {count, plural, one {Utilizador} other {Utilizadores}}" + }, + "access-list.help-rules-last": { + "defaultMessage": "Quando existir pelo menos 1 regra, esta regra de negação geral será aplicada em último lugar" + }, + "access-list.help.rules-order": { + "defaultMessage": "Nota: as diretivas allow e deny são aplicadas pela ordem em que forem definidas." + }, + "access-list.pass-auth": { + "defaultMessage": "Passar Autenticação para o Upstream" + }, + "access-list.public": { + "defaultMessage": "Acesso Público" + }, + "access-list.public.subtitle": { + "defaultMessage": "Sem autenticação básica" + }, + "access-list.rule-source.placeholder": { + "defaultMessage": "192.168.1.100 ou 192.168.1.0/24 ou 2001:0db8::/32" + }, + "access-list.satisfy-any": { + "defaultMessage": "Satisfazer Qualquer" + }, + "access-list.subtitle": { + "defaultMessage": "{users} {users, plural, one {Utilizador} other {Utilizadores}}, {rules} {rules, plural, one {Regra} other {Regras}} – Criado em: {date}" + }, + "access-lists": { + "defaultMessage": "Listas de Controlo de Acesso (ACL)" + }, + "action.add": { + "defaultMessage": "Adicionar" + }, + "action.add-location": { + "defaultMessage": "Adicionar Location" + }, + "action.allow": { + "defaultMessage": "Permitir" + }, + "action.close": { + "defaultMessage": "Fechar" + }, + "action.delete": { + "defaultMessage": "Eliminar" + }, + "action.deny": { + "defaultMessage": "Negar" + }, + "action.disable": { + "defaultMessage": "Desativar" + }, + "action.download": { + "defaultMessage": "Descarregar" + }, + "action.edit": { + "defaultMessage": "Editar" + }, + "action.enable": { + "defaultMessage": "Ativar" + }, + "action.permissions": { + "defaultMessage": "Permissões" + }, + "action.renew": { + "defaultMessage": "Renovar" + }, + "action.view-details": { + "defaultMessage": "Ver Detalhes" + }, + "auditlogs": { + "defaultMessage": "Registos de Auditoria" + }, + "auto": { + "defaultMessage": "Automático" + }, + "cancel": { + "defaultMessage": "Cancelar" + }, + "certificate": { + "defaultMessage": "Certificado" + }, + "certificate.custom-certificate": { + "defaultMessage": "Certificado Personalizado" + }, + "certificate.custom-certificate-key": { + "defaultMessage": "Chave do Certificado" + }, + "certificate.custom-intermediate": { + "defaultMessage": "Certificado Intermédio" + }, + "certificate.in-use": { + "defaultMessage": "Em Utilização" + }, + "certificate.none.subtitle": { + "defaultMessage": "Nenhum certificado atribuído" + }, + "certificate.none.subtitle.for-http": { + "defaultMessage": "Este host não irá utilizar HTTPS" + }, + "certificate.none.title": { + "defaultMessage": "Nenhum" + }, + "certificate.not-in-use": { + "defaultMessage": "Não Utilizado" + }, + "certificate.renew": { + "defaultMessage": "Renovar Certificado" + }, + "certificates": { + "defaultMessage": "Certificados" + }, + "certificates.custom": { + "defaultMessage": "Certificado Personalizado" + }, + "certificates.custom.warning": { + "defaultMessage": "Ficheiros de chave protegidos por palavra-passe não são suportados." + }, + "certificates.dns.credentials": { + "defaultMessage": "Conteúdo do Ficheiro de Credenciais" + }, + "certificates.dns.credentials-note": { + "defaultMessage": "Este plugin requer um ficheiro de configuração contendo um token API ou outras credenciais do fornecedor DNS." + }, + "certificates.dns.credentials-warning": { + "defaultMessage": "Estes dados serão guardados em texto simples na base de dados e num ficheiro!" + }, + "certificates.dns.propagation-seconds": { + "defaultMessage": "Segundos de Propagação" + }, + "certificates.dns.propagation-seconds-note": { + "defaultMessage": "Deixe em branco para usar o valor predefinido do plugin. Número de segundos a aguardar pela propagação DNS." + }, + "certificates.dns.provider": { + "defaultMessage": "Fornecedor DNS" + }, + "certificates.dns.provider.placeholder": { + "defaultMessage": "Selecionar fornecedor..." + }, + "certificates.dns.warning": { + "defaultMessage": "Esta secção requer conhecimentos sobre o Certbot e os seus plugins DNS. Consulte a documentação dos plugins." + }, + "certificates.http.reachability-404": { + "defaultMessage": "Foi encontrado um servidor neste domínio, mas não parece ser o Nginx Proxy Manager. Certifique-se de que o domínio aponta para o IP onde a sua instância está a correr." + }, + "certificates.http.reachability-failed-to-check": { + "defaultMessage": "Falha ao verificar acessibilidade devido a um erro de comunicação com site24x7.com." + }, + "certificates.http.reachability-not-resolved": { + "defaultMessage": "Não existe nenhum servidor acessível neste domínio. Certifique-se de que o domínio existe, aponta para o IP correto e que a porta 80 está encaminhada no seu router." + }, + "certificates.http.reachability-ok": { + "defaultMessage": "O servidor está acessível e a criação de certificados deverá ser possível." + }, + "certificates.http.reachability-other": { + "defaultMessage": "Foi encontrado um servidor neste domínio, mas devolveu um código inesperado ({code}). Será o servidor NPM? Confirme que o domínio aponta para o IP correto." + }, + "certificates.http.reachability-wrong-data": { + "defaultMessage": "Foi encontrado um servidor neste domínio, mas devolveu dados inesperados. Será o servidor NPM? Confirme que o domínio aponta para o IP correto." + }, + "certificates.http.test-results": { + "defaultMessage": "Resultados do Teste" + }, + "certificates.http.warning": { + "defaultMessage": "Estes domínios devem já estar configurados para apontar para esta instalação." + }, + "certificates.request.subtitle": { + "defaultMessage": "com o Let's Encrypt" + }, + "certificates.request.title": { + "defaultMessage": "Pedir Novo Certificado" + }, + "column.access": { + "defaultMessage": "Acesso" + }, + "column.authorization": { + "defaultMessage": "Autorização" + }, + "column.authorizations": { + "defaultMessage": "Autorizações" + }, + "column.custom-locations": { + "defaultMessage": "Locations Personalizados" + }, + "column.destination": { + "defaultMessage": "Destino" + }, + "column.details": { + "defaultMessage": "Detalhes" + }, + "column.email": { + "defaultMessage": "Email" + }, + "column.event": { + "defaultMessage": "Evento" + }, + "column.expires": { + "defaultMessage": "Expira" + }, + "column.http-code": { + "defaultMessage": "Código HTTP" + }, + "column.incoming-port": { + "defaultMessage": "Porta de Entrada" + }, + "column.name": { + "defaultMessage": "Nome" + }, + "column.protocol": { + "defaultMessage": "Protocolo" + }, + "column.provider": { + "defaultMessage": "Fornecedor" + }, + "column.roles": { + "defaultMessage": "Funções" + }, + "column.rules": { + "defaultMessage": "Regras" + }, + "column.satisfy": { + "defaultMessage": "Satisfazer" + }, + "column.satisfy-all": { + "defaultMessage": "Todos" + }, + "column.satisfy-any": { + "defaultMessage": "Qualquer" + }, + "column.scheme": { + "defaultMessage": "Esquema" + }, + "column.source": { + "defaultMessage": "Origem" + }, + "column.ssl": { + "defaultMessage": "SSL" + }, + "column.status": { + "defaultMessage": "Estado" + }, + "created-on": { + "defaultMessage": "Criado em: {date}" + }, + "dashboard": { + "defaultMessage": "Painel" + }, + "dead-host": { + "defaultMessage": "Host 404" + }, + "dead-hosts": { + "defaultMessage": "Hosts 404" + }, + "dead-hosts.count": { + "defaultMessage": "{count} {count, plural, one {Host 404} other {Hosts 404}}" + }, + "disabled": { + "defaultMessage": "Desativado" + }, + "domain-names": { + "defaultMessage": "Nomes de Domínio" + }, + "domain-names.max": { + "defaultMessage": "Máximo de {count} domínios" + }, + "domain-names.placeholder": { + "defaultMessage": "Comece a escrever para adicionar um domínio..." + }, + "domain-names.wildcards-not-permitted": { + "defaultMessage": "Wildcards não permitidos para este tipo" + }, + "domain-names.wildcards-not-supported": { + "defaultMessage": "Wildcards não suportados por esta AC" + }, + "domains.force-ssl": { + "defaultMessage": "Forçar SSL" + }, + "domains.hsts-enabled": { + "defaultMessage": "HSTS Ativado" + }, + "domains.hsts-subdomains": { + "defaultMessage": "HSTS para Subdomínios" + }, + "domains.http2-support": { + "defaultMessage": "Suporte HTTP/2" + }, + "domains.use-dns": { + "defaultMessage": "Utilizar DNS Challenge" + }, + "email-address": { + "defaultMessage": "Endereço de Email" + }, + "empty-search": { + "defaultMessage": "Nenhum resultado encontrado" + }, + "empty-subtitle": { + "defaultMessage": "Porque não cria um?" + }, + "enabled": { + "defaultMessage": "Ativado" + }, + "error.access.at-least-one": { + "defaultMessage": "É necessária pelo menos uma Autorização ou uma Regra de Acesso" + }, + "error.access.duplicate-usernames": { + "defaultMessage": "Os nomes de utilizador de autorização devem ser únicos" + }, + "error.invalid-auth": { + "defaultMessage": "Email ou palavra-passe inválidos" + }, + "error.invalid-domain": { + "defaultMessage": "Domínio inválido: {domain}" + }, + "error.invalid-email": { + "defaultMessage": "Endereço de email inválido" + }, + "error.max-character-length": { + "defaultMessage": "Tamanho máximo: {max} caractere{max, plural, one {} other {s}}" + }, + "error.max-domains": { + "defaultMessage": "Demasiados domínios; o máximo é {max}" + }, + "error.maximum": { + "defaultMessage": "Máximo permitido: {max}" + }, + "error.min-character-length": { + "defaultMessage": "Tamanho mínimo: {min} caractere{min, plural, one {} other {s}}" + }, + "error.minimum": { + "defaultMessage": "Mínimo permitido: {min}" + }, + "error.passwords-must-match": { + "defaultMessage": "As palavras-passe têm de coincidir" + }, + "error.required": { + "defaultMessage": "Campo obrigatório" + }, + "expires.on": { + "defaultMessage": "Expira em: {date}" + }, + "footer.github-fork": { + "defaultMessage": "Faz fork no GitHub" + }, + "host.flags.block-exploits": { + "defaultMessage": "Bloquear Exploits Comuns" + }, + "host.flags.cache-assets": { + "defaultMessage": "Cache de Conteúdos Estáticos" + }, + "host.flags.preserve-path": { + "defaultMessage": "Preservar Caminho" + }, + "host.flags.protocols": { + "defaultMessage": "Protocolos" + }, + "host.flags.websockets-upgrade": { + "defaultMessage": "Suporte para WebSockets" + }, + "host.forward-port": { + "defaultMessage": "Porta de Encaminhamento" + }, + "host.forward-scheme": { + "defaultMessage": "Esquema" + }, + "hosts": { + "defaultMessage": "Hosts" + }, + "http-only": { + "defaultMessage": "Apenas HTTP" + }, + "lets-encrypt": { + "defaultMessage": "Let's Encrypt" + }, + "lets-encrypt-via-dns": { + "defaultMessage": "Let's Encrypt via DNS" + }, + "lets-encrypt-via-http": { + "defaultMessage": "Let's Encrypt via HTTP" + }, + "loading": { + "defaultMessage": "A carregar…" + }, + "login.title": { + "defaultMessage": "Iniciar sessão na sua conta" + }, + "nginx-config.label": { + "defaultMessage": "Configuração Nginx Personalizada" + }, + "nginx-config.placeholder": { + "defaultMessage": "# Insira aqui a sua configuração Nginx personalizada (utilize por sua conta e risco!)" + }, + "no-permission-error": { + "defaultMessage": "Não tem permissões para ver esta página." + }, + "notfound.action": { + "defaultMessage": "Voltar à página inicial" + }, + "notfound.content": { + "defaultMessage": "A página que procura não foi encontrada." + }, + "notfound.title": { + "defaultMessage": "Oops… Encontrou uma página de erro" + }, + "notification.error": { + "defaultMessage": "Erro" + }, + "notification.object-deleted": { + "defaultMessage": "{object} foi eliminado" + }, + "notification.object-disabled": { + "defaultMessage": "{object} foi desativado" + }, + "notification.object-enabled": { + "defaultMessage": "{object} foi ativado" + }, + "notification.object-renewed": { + "defaultMessage": "{object} foi renovado" + }, + "notification.object-saved": { + "defaultMessage": "{object} foi guardado" + }, + "notification.success": { + "defaultMessage": "Sucesso" + }, + "object.actions-title": { + "defaultMessage": "{object} #{id}" + }, + "object.add": { + "defaultMessage": "Adicionar {object}" + }, + "object.delete": { + "defaultMessage": "Eliminar {object}" + }, + "object.delete.content": { + "defaultMessage": "Tem a certeza de que deseja eliminar este {object}?" + }, + "object.edit": { + "defaultMessage": "Editar {object}" + }, + "object.empty": { + "defaultMessage": "Não existem {objects}" + }, + "object.event.created": { + "defaultMessage": "{object} criado" + }, + "object.event.deleted": { + "defaultMessage": "{object} eliminado" + }, + "object.event.disabled": { + "defaultMessage": "{object} desativado" + }, + "object.event.enabled": { + "defaultMessage": "{object} ativado" + }, + "object.event.renewed": { + "defaultMessage": "{object} renovado" + }, + "object.event.updated": { + "defaultMessage": "{object} atualizado" + }, + "offline": { + "defaultMessage": "Offline" + }, + "online": { + "defaultMessage": "Online" + }, + "options": { + "defaultMessage": "Opções" + }, + "password": { + "defaultMessage": "Palavra-passe" + }, + "password.generate": { + "defaultMessage": "Gerar palavra-passe aleatória" + }, + "password.hide": { + "defaultMessage": "Esconder Palavra-passe" + }, + "password.show": { + "defaultMessage": "Mostrar Palavra-passe" + }, + "permissions.hidden": { + "defaultMessage": "Oculto" + }, + "permissions.manage": { + "defaultMessage": "Gerir" + }, + "permissions.view": { + "defaultMessage": "Apenas Visualização" + }, + "permissions.visibility.all": { + "defaultMessage": "Todos os Itens" + }, + "permissions.visibility.title": { + "defaultMessage": "Visibilidade do Item" + }, + "permissions.visibility.user": { + "defaultMessage": "Apenas Itens Criados" + }, + "proxy-host": { + "defaultMessage": "Proxy Host" + }, + "proxy-host.forward-host": { + "defaultMessage": "Hostname/IP de Encaminhamento" + }, + "proxy-hosts": { + "defaultMessage": "Proxy Hosts" + }, + "proxy-hosts.count": { + "defaultMessage": "{count} {count, plural, one {Proxy Host} other {Proxy Hosts}}" + }, + "public": { + "defaultMessage": "Público" + }, + "redirection-host": { + "defaultMessage": "Host de Redirecionamento" + }, + "redirection-host.forward-domain": { + "defaultMessage": "Domínio de Destino" + }, + "redirection-host.forward-http-code": { + "defaultMessage": "Código HTTP" + }, + "redirection-hosts": { + "defaultMessage": "Hosts de Redirecionamento" + }, + "redirection-hosts.count": { + "defaultMessage": "{count} {count, plural, one {Host de Redirecionamento} other {Hosts de Redirecionamento}}" + }, + "redirection-hosts.http-code.300": { + "defaultMessage": "300 Múltiplas Escolhas" + }, + "redirection-hosts.http-code.301": { + "defaultMessage": "301 Movido Permanentemente" + }, + "redirection-hosts.http-code.302": { + "defaultMessage": "302 Movido Temporariamente" + }, + "redirection-hosts.http-code.303": { + "defaultMessage": "303 Ver Outro" + }, + "redirection-hosts.http-code.307": { + "defaultMessage": "307 Redirecionamento Temporário" + }, + "redirection-hosts.http-code.308": { + "defaultMessage": "308 Redirecionamento Permanente" + }, + "role.admin": { + "defaultMessage": "Administrador" + }, + "role.standard-user": { + "defaultMessage": "Utilizador Comum" + }, + "save": { + "defaultMessage": "Guardar" + }, + "setting": { + "defaultMessage": "Definição" + }, + "settings": { + "defaultMessage": "Definições" + }, + "settings.default-site": { + "defaultMessage": "Site Predefinido" + }, + "settings.default-site.404": { + "defaultMessage": "Página 404" + }, + "settings.default-site.444": { + "defaultMessage": "Sem Resposta (444)" + }, + "settings.default-site.congratulations": { + "defaultMessage": "Página de Boas-vindas" + }, + "settings.default-site.description": { + "defaultMessage": "O que apresentar quando o Nginx recebe um Host desconhecido" + }, + "settings.default-site.html": { + "defaultMessage": "HTML Personalizado" + }, + "settings.default-site.html.placeholder": { + "defaultMessage": "" + }, + "settings.default-site.redirect": { + "defaultMessage": "Redirecionar" + }, + "setup.preamble": { + "defaultMessage": "Comece por criar a sua conta de administrador." + }, + "setup.title": { + "defaultMessage": "Bem-vindo!" + }, + "sign-in": { + "defaultMessage": "Iniciar Sessão" + }, + "ssl-certificate": { + "defaultMessage": "Certificado SSL" + }, + "stream": { + "defaultMessage": "Stream" + }, + "stream.forward-host": { + "defaultMessage": "Host de Destino" + }, + "stream.forward-host.placeholder": { + "defaultMessage": "example.com ou 10.0.0.1 ou 2001:db8:3333:4444:5555:6666:7777:8888" + }, + "stream.incoming-port": { + "defaultMessage": "Porta de Entrada" + }, + "streams": { + "defaultMessage": "Streams" + }, + "streams.count": { + "defaultMessage": "{count} {count, plural, one {Stream} other {Streams}}" + }, + "streams.tcp": { + "defaultMessage": "TCP" + }, + "streams.udp": { + "defaultMessage": "UDP" + }, + "test": { + "defaultMessage": "Testar" + }, + "update-available": { + "defaultMessage": "Atualização Disponível: {latestVersion}" + }, + "user": { + "defaultMessage": "Utilizador" + }, + "user.change-password": { + "defaultMessage": "Alterar Palavra-passe" + }, + "user.confirm-password": { + "defaultMessage": "Confirmar Palavra-passe" + }, + "user.current-password": { + "defaultMessage": "Palavra-passe Atual" + }, + "user.edit-profile": { + "defaultMessage": "Editar Perfil" + }, + "user.full-name": { + "defaultMessage": "Nome Completo" + }, + "user.login-as": { + "defaultMessage": "Iniciar sessão como {name}" + }, + "user.logout": { + "defaultMessage": "Terminar Sessão" + }, + "user.new-password": { + "defaultMessage": "Nova Palavra-passe" + }, + "user.nickname": { + "defaultMessage": "Alcunha" + }, + "user.set-password": { + "defaultMessage": "Definir Palavra-passe" + }, + "user.set-permissions": { + "defaultMessage": "Definir Permissões para {name}" + }, + "user.switch-dark": { + "defaultMessage": "Ativar Modo Escuro" + }, + "user.switch-light": { + "defaultMessage": "Ativar Modo Claro" + }, + "username": { + "defaultMessage": "Nome de Utilizador" + }, + "users": { + "defaultMessage": "Utilizadores" + } +} From 8c8005f8171447123ef29f1b656c253aa346be2e Mon Sep 17 00:00:00 2001 From: maghuro Date: Sat, 31 Jan 2026 12:05:32 +0000 Subject: [PATCH 54/77] Add Portuguese language support to HelpDoc --- frontend/src/locale/src/HelpDoc/index.ts | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/frontend/src/locale/src/HelpDoc/index.ts b/frontend/src/locale/src/HelpDoc/index.ts index 6464c8a8..4b027dde 100644 --- a/frontend/src/locale/src/HelpDoc/index.ts +++ b/frontend/src/locale/src/HelpDoc/index.ts @@ -18,11 +18,8 @@ import * as zh from "./zh/index"; import * as tr from "./tr/index"; import * as hu from "./hu/index"; -<<<<<<< HEAD -const items: any = { en, de, es, ja, sk, zh, pl, ru, it, vi, nl, bg, ko, ga, id, fr, tr, hu }; -======= -const items: any = { en, de, pt, ja, sk, zh, pl, ru, it, vi, nl, bg, ko }; ->>>>>>> da4147cd (Add pt-PT lang) +const items: any = { en, de, pt, es, ja, sk, zh, pl, ru, it, vi, nl, bg, ko, ga, id, fr, tr, hu }; + const fallbackLang = "en"; From a73d54fedc42b5b7527877ee3a3e1135ff3f1e44 Mon Sep 17 00:00:00 2001 From: maghuro Date: Sat, 31 Jan 2026 12:06:50 +0000 Subject: [PATCH 55/77] Add Portuguese (European) language support --- frontend/src/locale/src/lang-list.json | 47 ++------------------------ 1 file changed, 3 insertions(+), 44 deletions(-) diff --git a/frontend/src/locale/src/lang-list.json b/frontend/src/locale/src/lang-list.json index 92b61b4e..76f6617c 100644 --- a/frontend/src/locale/src/lang-list.json +++ b/frontend/src/locale/src/lang-list.json @@ -12,6 +12,9 @@ "locale-de-DE": { "defaultMessage": "German" }, + "locale-pt-PT": { + "defaultMessage": "Português (Europeu)" + }, "locale-fr-FR": { "defaultMessage": "Français" }, @@ -54,48 +57,4 @@ "locale-hu-HU": { "defaultMessage": "Magyar" } -======= - "locale-en-US": { - "defaultMessage": "English" - }, - "locale-es-ES": { - "defaultMessage": "Español" - }, - "locale-de-DE": { - "defaultMessage": "German" - }, - "locale-pt-PT": { - "defaultMessage": "Português (Europeu)" - }, - "locale-ja-JP": { - "defaultMessage": "日本語" - }, - "locale-ru-RU": { - "defaultMessage": "Русский" - }, - "locale-sk-SK": { - "defaultMessage": "Slovenčina" - }, - "locale-zh-CN": { - "defaultMessage": "中文" - }, - "locale-pl-PL": { - "defaultMessage": "Polski" - }, - "locale-it-IT": { - "defaultMessage": "Italiano" - }, - "locale-vi-VN": { - "defaultMessage": "Tiếng Việt" - }, - "locale-nl-NL": { - "defaultMessage": "Nederlands" - }, - "locale-ko-KR": { - "defaultMessage": "한국어" - }, - "locale-bg-BG": { - "defaultMessage": "Български" - } ->>>>>>> da4147cd (Add pt-PT lang) } From 4ad1af5576adb4ff3565f197b4efb14ebb692171 Mon Sep 17 00:00:00 2001 From: maghuro Date: Sat, 31 Jan 2026 12:07:32 +0000 Subject: [PATCH 56/77] Remove duplicate locale entries and keep pt-PT --- frontend/check-locales.cjs | 18 +----------------- 1 file changed, 1 insertion(+), 17 deletions(-) diff --git a/frontend/check-locales.cjs b/frontend/check-locales.cjs index 1f4410ff..a73cd757 100755 --- a/frontend/check-locales.cjs +++ b/frontend/check-locales.cjs @@ -7,9 +7,9 @@ // - Also checks the error messages returned by the backend const allLocales = [ -<<<<<<< HEAD ["en", "en-US"], ["de", "de-DE"], + ["pt", "pt-PT"], ["es", "es-ES"], ["fr", "fr-FR"], ["it", "it-IT"], @@ -25,22 +25,6 @@ const allLocales = [ ["id", "id-ID"], ["tr", "tr-TR"], ["hu", "hu-HU"], -======= - ["en", "en-US"], - ["de", "de-DE"], - ["pt", "pt-PT"], - ["es", "es-ES"], - ["it", "it-IT"], - ["ja", "ja-JP"], - ["nl", "nl-NL"], - ["pl", "pl-PL"], - ["ru", "ru-RU"], - ["sk", "sk-SK"], - ["vi", "vi-VN"], - ["zh", "zh-CN"], - ["ko", "ko-KR"], - ["bg", "bg-BG"], ->>>>>>> da4147cd (Add pt-PT lang) ]; const ignoreUnused = [/^.*$/]; From 3db02370fd842c2a954fa85af2d12ca7710f8e99 Mon Sep 17 00:00:00 2001 From: maghuro Date: Sat, 31 Jan 2026 12:08:07 +0000 Subject: [PATCH 57/77] Add Portuguese language support to IntlProvider --- frontend/src/locale/IntlProvider.tsx | 18 +----------------- 1 file changed, 1 insertion(+), 17 deletions(-) diff --git a/frontend/src/locale/IntlProvider.tsx b/frontend/src/locale/IntlProvider.tsx index 5aa9684d..507d938c 100755 --- a/frontend/src/locale/IntlProvider.tsx +++ b/frontend/src/locale/IntlProvider.tsx @@ -24,10 +24,10 @@ import langList from "./lang/lang-list.json"; // not the country code // Remember when adding to this list, also update check-locales.js script const localeOptions = [ -<<<<<<< HEAD ["en", "en-US", langEn], ["de", "de-DE", langDe], ["es", "es-ES", langEs], + ["pt", "pt-PT", langPt], ["fr", "fr-FR", langFr], ["ga", "ga-IE", langGa], ["ja", "ja-JP", langJa], @@ -43,22 +43,6 @@ const localeOptions = [ ["id", "id-ID", langId], ["tr", "tr-TR", langTr], ["hu", "hu-HU", langHu], -======= - ["en", "en-US", langEn], - ["de", "de-DE", langDe], - ["pt", "pt-PT", langPt], - ["es", "es-ES", langEs], - ["ja", "ja-JP", langJa], - ["it", "it-IT", langIt], - ["nl", "nl-NL", langNl], - ["pl", "pl-PL", langPl], - ["ru", "ru-RU", langRu], - ["sk", "sk-SK", langSk], - ["vi", "vi-VN", langVi], - ["zh", "zh-CN", langZh], - ["ko", "ko-KR", langKo], - ["bg", "bg-BG", langBg], ->>>>>>> da4147cd (Add pt-PT lang) ]; const loadMessages = (locale?: string): typeof langList & typeof langEn => { From c515815b0e857599aa45b44419c29441b7e4f8c1 Mon Sep 17 00:00:00 2001 From: maghuro Date: Sat, 31 Jan 2026 12:10:36 +0000 Subject: [PATCH 58/77] Remove merge conflict markers from lang-list.json --- frontend/src/locale/src/lang-list.json | 1 - 1 file changed, 1 deletion(-) diff --git a/frontend/src/locale/src/lang-list.json b/frontend/src/locale/src/lang-list.json index 76f6617c..a37dedf1 100644 --- a/frontend/src/locale/src/lang-list.json +++ b/frontend/src/locale/src/lang-list.json @@ -1,5 +1,4 @@ { -<<<<<<< HEAD "locale-en-US": { "defaultMessage": "English" }, From de3b543d0896139c99875b9371311eb1c1ec7f68 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 2 Feb 2026 14:25:26 +0000 Subject: [PATCH 59/77] Bump @quobix/vacuum in /test in the prod-patch-updates group Bumps the prod-patch-updates group in /test with 1 update: [@quobix/vacuum](https://github.com/daveshanley/vacuum). Updates `@quobix/vacuum` from 0.23.4 to 0.23.5 - [Release notes](https://github.com/daveshanley/vacuum/releases) - [Commits](https://github.com/daveshanley/vacuum/compare/v0.23.4...v0.23.5) --- updated-dependencies: - dependency-name: "@quobix/vacuum" dependency-version: 0.23.5 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: prod-patch-updates ... Signed-off-by: dependabot[bot] --- test/yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/test/yarn.lock b/test/yarn.lock index 1e2a1f4e..c788d29e 100644 --- a/test/yarn.lock +++ b/test/yarn.lock @@ -217,9 +217,9 @@ integrity sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg== "@quobix/vacuum@^0.23.4": - version "0.23.4" - resolved "https://registry.yarnpkg.com/@quobix/vacuum/-/vacuum-0.23.4.tgz#9c44bc181a563cf37c0b6ba4682115a37094b7db" - integrity sha512-iFg1FauUuaeKYg4s+4cB8SQZzGChvlzE2SpYBbb9I8YicKLG2qtOc1IvHmqD0m9XQ127FUPgeRJXmOLTqp8DHg== + version "0.23.5" + resolved "https://registry.yarnpkg.com/@quobix/vacuum/-/vacuum-0.23.5.tgz#f8cbfb27cdec7437b516422752545439039c26c9" + integrity sha512-4/ybLW692DNkX/kXT/CRTkFF3bOqP5L+hRd7G49bUbXqAkU5E2WwB0z6xEYoVkB+BDDDYm35sw4pzARjJfXcUA== dependencies: https-proxy-agent "^7.0.6" node-fetch "^3.3.2" From 7cc2bfbf6ab41b5d70a5d77a4dccc167735dba77 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 2 Feb 2026 14:26:07 +0000 Subject: [PATCH 60/77] Bump react-intl from 7.1.14 to 8.1.2 in /frontend Bumps [react-intl](https://github.com/formatjs/formatjs) from 7.1.14 to 8.1.2. - [Release notes](https://github.com/formatjs/formatjs/releases) - [Commits](https://github.com/formatjs/formatjs/compare/react-intl@7.1.14...react-intl@8.1.2) --- updated-dependencies: - dependency-name: react-intl dependency-version: 8.1.2 dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- frontend/package.json | 2 +- frontend/yarn.lock | 124 +++++++++++++++++++++--------------------- 2 files changed, 63 insertions(+), 63 deletions(-) diff --git a/frontend/package.json b/frontend/package.json index 5ffc6dfb..820b7a66 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -32,7 +32,7 @@ "react": "^19.2.4", "react-bootstrap": "^2.10.10", "react-dom": "^19.2.4", - "react-intl": "^7.1.14", + "react-intl": "^8.1.2", "react-markdown": "^10.1.0", "react-router-dom": "^7.13.0", "react-select": "^5.10.2", diff --git a/frontend/yarn.lock b/frontend/yarn.lock index 995a500e..a59cffa3 100644 --- a/frontend/yarn.lock +++ b/frontend/yarn.lock @@ -467,57 +467,58 @@ resolved "https://registry.yarnpkg.com/@formatjs/cli/-/cli-6.12.0.tgz#8bfb1a500faf53fb220b46bc5c559e0f7acf4a27" integrity sha512-mF3U8XxwEWR+ttlG5e4onYO+M5T22jnnQq7Ce/WK10CTVYR8Us433hbML6vgBLkiTS/MuCq61L0op3yNRSp2Kg== -"@formatjs/ecma402-abstract@2.3.6": - version "2.3.6" - resolved "https://registry.npmjs.org/@formatjs/ecma402-abstract/-/ecma402-abstract-2.3.6.tgz" - integrity sha512-HJnTFeRM2kVFVr5gr5kH1XP6K0JcJtE7Lzvtr3FS/so5f1kpsqqqxy5JF+FRaO6H2qmcMfAUIox7AJteieRtVw== +"@formatjs/ecma402-abstract@3.1.1": + version "3.1.1" + resolved "https://registry.yarnpkg.com/@formatjs/ecma402-abstract/-/ecma402-abstract-3.1.1.tgz#329fa5eed8024ee389e9c82be8c798315631b11d" + integrity sha512-jhZbTwda+2tcNrs4kKvxrPLPjx8QsBCLCUgrrJ/S+G9YrGHWLhAyFMMBHJBnBoOwuLHd7L14FgYudviKaxkO2Q== dependencies: - "@formatjs/fast-memoize" "2.2.7" - "@formatjs/intl-localematcher" "0.6.2" - decimal.js "^10.4.3" - tslib "^2.8.0" + "@formatjs/fast-memoize" "3.1.0" + "@formatjs/intl-localematcher" "0.8.1" + decimal.js "^10.6.0" + tslib "^2.8.1" -"@formatjs/fast-memoize@2.2.7": - version "2.2.7" - resolved "https://registry.npmjs.org/@formatjs/fast-memoize/-/fast-memoize-2.2.7.tgz" - integrity sha512-Yabmi9nSvyOMrlSeGGWDiH7rf3a7sIwplbvo/dlz9WCIjzIQAfy1RMf4S0X3yG724n5Ghu2GmEl5NJIV6O9sZQ== +"@formatjs/fast-memoize@3.1.0": + version "3.1.0" + resolved "https://registry.yarnpkg.com/@formatjs/fast-memoize/-/fast-memoize-3.1.0.tgz#f8643d44803df8f579506d40804f4faeba6f5da2" + integrity sha512-b5mvSWCI+XVKiz5WhnBCY3RJ4ZwfjAidU0yVlKa3d3MSgKmH1hC3tBGEAtYyN5mqL7N0G5x0BOUYyO8CEupWgg== dependencies: - tslib "^2.8.0" + tslib "^2.8.1" -"@formatjs/icu-messageformat-parser@2.11.4": - version "2.11.4" - resolved "https://registry.npmjs.org/@formatjs/icu-messageformat-parser/-/icu-messageformat-parser-2.11.4.tgz" - integrity sha512-7kR78cRrPNB4fjGFZg3Rmj5aah8rQj9KPzuLsmcSn4ipLXQvC04keycTI1F7kJYDwIXtT2+7IDEto842CfZBtw== +"@formatjs/icu-messageformat-parser@3.5.1": + version "3.5.1" + resolved "https://registry.yarnpkg.com/@formatjs/icu-messageformat-parser/-/icu-messageformat-parser-3.5.1.tgz#a08faadbbb333d9e4fa7276c92a2b66a37788aa1" + integrity sha512-sSDmSvmmoVQ92XqWb499KrIhv/vLisJU8ITFrx7T7NZHUmMY7EL9xgRowAosaljhqnj/5iufG24QrdzB6X3ItA== dependencies: - "@formatjs/ecma402-abstract" "2.3.6" - "@formatjs/icu-skeleton-parser" "1.8.16" - tslib "^2.8.0" + "@formatjs/ecma402-abstract" "3.1.1" + "@formatjs/icu-skeleton-parser" "2.1.1" + tslib "^2.8.1" -"@formatjs/icu-skeleton-parser@1.8.16": - version "1.8.16" - resolved "https://registry.npmjs.org/@formatjs/icu-skeleton-parser/-/icu-skeleton-parser-1.8.16.tgz" - integrity sha512-H13E9Xl+PxBd8D5/6TVUluSpxGNvFSlN/b3coUp0e0JpuWXXnQDiavIpY3NnvSp4xhEMoXyyBvVfdFX8jglOHQ== +"@formatjs/icu-skeleton-parser@2.1.1": + version "2.1.1" + resolved "https://registry.yarnpkg.com/@formatjs/icu-skeleton-parser/-/icu-skeleton-parser-2.1.1.tgz#a05b45733bd0f277c50f31b32e4a73375569d3c8" + integrity sha512-PSFABlcNefjI6yyk8f7nyX1DC7NHmq6WaCHZLySEXBrXuLOB2f935YsnzuPjlz+ibhb9yWTdPeVX1OVcj24w2Q== dependencies: - "@formatjs/ecma402-abstract" "2.3.6" - tslib "^2.8.0" + "@formatjs/ecma402-abstract" "3.1.1" + tslib "^2.8.1" -"@formatjs/intl-localematcher@0.6.2": - version "0.6.2" - resolved "https://registry.npmjs.org/@formatjs/intl-localematcher/-/intl-localematcher-0.6.2.tgz" - integrity sha512-XOMO2Hupl0wdd172Y06h6kLpBz6Dv+J4okPLl4LPtzbr8f66WbIoy4ev98EBuZ6ZK4h5ydTN6XneT4QVpD7cdA== +"@formatjs/intl-localematcher@0.8.1": + version "0.8.1" + resolved "https://registry.yarnpkg.com/@formatjs/intl-localematcher/-/intl-localematcher-0.8.1.tgz#554fe5f8c746ba52d430674de9a242fae64f67ff" + integrity sha512-xwEuwQFdtSq1UKtQnyTZWC+eHdv7Uygoa+H2k/9uzBVQjDyp9r20LNDNKedWXll7FssT3GRHvqsdJGYSUWqYFA== dependencies: - tslib "^2.8.0" + "@formatjs/fast-memoize" "3.1.0" + tslib "^2.8.1" -"@formatjs/intl@3.1.8": - version "3.1.8" - resolved "https://registry.npmjs.org/@formatjs/intl/-/intl-3.1.8.tgz" - integrity sha512-LWXgwI5zTMatvR8w8kCNh/priDTOF/ZssokMBHJ7ZWXFoYLVOYo0EJERD9Eajv+xsfQO1QkuAt77KWQ1OI4mOQ== +"@formatjs/intl@4.1.2": + version "4.1.2" + resolved "https://registry.yarnpkg.com/@formatjs/intl/-/intl-4.1.2.tgz#4a0d487e6290067462f93d034ef36a8aaf6f671b" + integrity sha512-V60fNY/X/7zqmRffr7qPwscGmVGYDmlKF069mSQ2a/7fE22q602NtIfOQY8vzRA63Gr/O/U6vjRVBHMabrnA9A== dependencies: - "@formatjs/ecma402-abstract" "2.3.6" - "@formatjs/fast-memoize" "2.2.7" - "@formatjs/icu-messageformat-parser" "2.11.4" - intl-messageformat "10.7.18" - tslib "^2.8.0" + "@formatjs/ecma402-abstract" "3.1.1" + "@formatjs/fast-memoize" "3.1.0" + "@formatjs/icu-messageformat-parser" "3.5.1" + intl-messageformat "11.1.2" + tslib "^2.8.1" "@jridgewell/gen-mapping@^0.3.12", "@jridgewell/gen-mapping@^0.3.5": version "0.3.13" @@ -1045,7 +1046,7 @@ resolved "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.12.tgz" integrity sha512-8TV6R3h2j7a91c+1DXdJi3Syo69zzIZbz7Lg5tORM5LEJG7X/E6a1V3drRyBRZq7/utz7A+c4OgYLiLcYGHG6w== -"@types/react@*", "@types/react@16 || 17 || 18 || 19", "@types/react@>=16.9.11", "@types/react@^19.2.10": +"@types/react@*", "@types/react@>=16.9.11", "@types/react@^19.2.10": version "19.2.10" resolved "https://registry.yarnpkg.com/@types/react/-/react-19.2.10.tgz#f3ea799e6b4cebad6dfd231c238fc9de7652e2d2" integrity sha512-WPigyYuGhgZ/cTPRXB2EwUw+XvsRA3GqHlsP4qteqrnnjDrApbS7MxcGr/hke5iUoeB7E/gQtrs9I37zAJ0Vjw== @@ -1344,9 +1345,9 @@ debug@^4.0.0, debug@^4.1.0, debug@^4.1.1, debug@^4.3.1: dependencies: ms "^2.1.3" -decimal.js@^10.4.3: +decimal.js@^10.6.0: version "10.6.0" - resolved "https://registry.npmjs.org/decimal.js/-/decimal.js-10.6.0.tgz" + resolved "https://registry.yarnpkg.com/decimal.js/-/decimal.js-10.6.0.tgz#e649a43e3ab953a72192ff5983865e509f37ed9a" integrity sha512-YpgQiITW3JXGntzdUmyUR1V812Hn8T1YVXhCu+wO3OpS4eU9l4YdD3qjyiKdV6mvV29zapkMeD390UVEf2lkUg== decode-named-character-reference@^1.0.0: @@ -1749,15 +1750,15 @@ inline-style-parser@0.2.4: resolved "https://registry.npmjs.org/inline-style-parser/-/inline-style-parser-0.2.4.tgz" integrity sha512-0aO8FkhNZlj/ZIbNi7Lxxr12obT7cL1moPfE4tg1LkX7LlLfC6DeX4l2ZEud1ukP9jNQyNnfzQVqwbwmAATY4Q== -intl-messageformat@10.7.18: - version "10.7.18" - resolved "https://registry.npmjs.org/intl-messageformat/-/intl-messageformat-10.7.18.tgz" - integrity sha512-m3Ofv/X/tV8Y3tHXLohcuVuhWKo7BBq62cqY15etqmLxg2DZ34AGGgQDeR+SCta2+zICb1NX83af0GJmbQ1++g== +intl-messageformat@11.1.2: + version "11.1.2" + resolved "https://registry.yarnpkg.com/intl-messageformat/-/intl-messageformat-11.1.2.tgz#c72879165d15633f38b092479822c5d831c21ac5" + integrity sha512-ucSrQmZGAxfiBHfBRXW/k7UC8MaGFlEj4Ry1tKiDcmgwQm1y3EDl40u+4VNHYomxJQMJi9NEI3riDRlth96jKg== dependencies: - "@formatjs/ecma402-abstract" "2.3.6" - "@formatjs/fast-memoize" "2.2.7" - "@formatjs/icu-messageformat-parser" "2.11.4" - tslib "^2.8.0" + "@formatjs/ecma402-abstract" "3.1.1" + "@formatjs/fast-memoize" "3.1.0" + "@formatjs/icu-messageformat-parser" "3.5.1" + tslib "^2.8.1" invariant@^2.2.4: version "2.2.4" @@ -2435,19 +2436,18 @@ react-fast-compare@^2.0.1: resolved "https://registry.npmjs.org/react-fast-compare/-/react-fast-compare-2.0.4.tgz" integrity sha512-suNP+J1VU1MWFKcyt7RtjiSWUjvidmQSlqu+eHslq+342xCbGTYmC0mEhPCOHxlW0CywylOC1u2DFAT+bv4dBw== -react-intl@^7.1.14: - version "7.1.14" - resolved "https://registry.npmjs.org/react-intl/-/react-intl-7.1.14.tgz" - integrity sha512-VE/0Wi/lHJlBC7APQpCzLUdIt3GB5B0GZrRW8Q+ACbkHI4j+Wwgg9J1TniN6zmLHmPH5gxXcMy+fkSPfw5p1WQ== +react-intl@^8.1.2: + version "8.1.2" + resolved "https://registry.yarnpkg.com/react-intl/-/react-intl-8.1.2.tgz#e8a6dde84d9682bef5fa775077beb9b5b8ff9547" + integrity sha512-mwjljlxC1dpU7G6cznkxMWtYuKZruSNSVHZjiIWfYW6aNsHNDvDWDK54rM8yoF86asNLpk4Y3HxcWhX1AslTGg== dependencies: - "@formatjs/ecma402-abstract" "2.3.6" - "@formatjs/icu-messageformat-parser" "2.11.4" - "@formatjs/intl" "3.1.8" + "@formatjs/ecma402-abstract" "3.1.1" + "@formatjs/icu-messageformat-parser" "3.5.1" + "@formatjs/intl" "4.1.2" "@types/hoist-non-react-statics" "^3.3.1" - "@types/react" "16 || 17 || 18 || 19" hoist-non-react-statics "^3.3.2" - intl-messageformat "10.7.18" - tslib "^2.8.0" + intl-messageformat "11.1.2" + tslib "^2.8.1" react-is@^16.13.1, react-is@^16.3.2, react-is@^16.7.0: version "16.13.1" @@ -2841,7 +2841,7 @@ tsconfck@^3.0.3: resolved "https://registry.npmjs.org/tsconfck/-/tsconfck-3.1.6.tgz" integrity sha512-ks6Vjr/jEw0P1gmOVwutM3B7fWxoWBL2KRDb1JfqGVawBmO5UsvmWOQFGHBPl5yxYz4eERr19E6L7NMv+Fej4w== -tslib@^2.0.0, tslib@^2.8.0: +tslib@^2.0.0, tslib@^2.8.0, tslib@^2.8.1: version "2.8.1" resolved "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz" integrity sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w== From 8708a3bab866367966abb0b635d81420f4ced365 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 3 Feb 2026 07:06:20 +0000 Subject: [PATCH 61/77] Bump the dev-patch-updates group across 1 directory with 3 updates Bumps the dev-patch-updates group with 3 updates in the /frontend directory: [@formatjs/cli](https://github.com/formatjs/formatjs), [@tanstack/react-query-devtools](https://github.com/TanStack/query/tree/HEAD/packages/react-query-devtools) and [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react). Updates `@formatjs/cli` from 6.12.0 to 6.12.1 - [Release notes](https://github.com/formatjs/formatjs/releases) - [Commits](https://github.com/formatjs/formatjs/compare/@formatjs/cli@6.12.0...@formatjs/cli@6.12.1) Updates `@tanstack/react-query-devtools` from 5.91.2 to 5.91.3 - [Release notes](https://github.com/TanStack/query/releases) - [Changelog](https://github.com/TanStack/query/blob/main/packages/react-query-devtools/CHANGELOG.md) - [Commits](https://github.com/TanStack/query/commits/@tanstack/react-query-devtools@5.91.3/packages/react-query-devtools) Updates `@vitejs/plugin-react` from 5.1.2 to 5.1.3 - [Release notes](https://github.com/vitejs/vite-plugin-react/releases) - [Changelog](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite-plugin-react/commits/plugin-react@5.1.3/packages/plugin-react) --- updated-dependencies: - dependency-name: "@formatjs/cli" dependency-version: 6.12.1 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: dev-patch-updates - dependency-name: "@tanstack/react-query-devtools" dependency-version: 5.91.3 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: dev-patch-updates - dependency-name: "@vitejs/plugin-react" dependency-version: 5.1.3 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: dev-patch-updates ... Signed-off-by: dependabot[bot] --- frontend/package.json | 6 +- frontend/yarn.lock | 189 ++++++++++++++++++++++++++++-------------- 2 files changed, 130 insertions(+), 65 deletions(-) diff --git a/frontend/package.json b/frontend/package.json index 820b7a66..37f9f169 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -41,8 +41,8 @@ }, "devDependencies": { "@biomejs/biome": "^2.3.13", - "@formatjs/cli": "^6.12.0", - "@tanstack/react-query-devtools": "^5.91.2", + "@formatjs/cli": "^6.12.2", + "@tanstack/react-query-devtools": "^5.91.3", "@testing-library/dom": "^10.4.1", "@testing-library/jest-dom": "^6.9.1", "@testing-library/react": "^16.3.2", @@ -51,7 +51,7 @@ "@types/react": "^19.2.10", "@types/react-dom": "^19.2.3", "@types/react-table": "^7.7.20", - "@vitejs/plugin-react": "^5.1.2", + "@vitejs/plugin-react": "^5.1.3", "happy-dom": "^20.4.0", "postcss": "^8.5.6", "postcss-simple-vars": "^7.0.1", diff --git a/frontend/yarn.lock b/frontend/yarn.lock index a59cffa3..69d7a735 100644 --- a/frontend/yarn.lock +++ b/frontend/yarn.lock @@ -16,25 +16,34 @@ js-tokens "^4.0.0" picocolors "^1.1.1" -"@babel/compat-data@^7.27.2": - version "7.28.0" - resolved "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.28.0.tgz" - integrity sha512-60X7qkglvrap8mn1lh2ebxXdZYtUcpd7gsmy9kLaBJ4i/WdY8PqTSdxyA8qraikqKQK5C1KRBKXqznrVapyNaw== - -"@babel/core@^7.28.5": - version "7.28.5" - resolved "https://registry.npmjs.org/@babel/core/-/core-7.28.5.tgz" - integrity sha512-e7jT4DxYvIDLk1ZHmU/m/mB19rex9sv0c2ftBtjSBv+kVM/902eh0fINUzD7UwLLNR+jU585GxUJ8/EBfAM5fw== +"@babel/code-frame@^7.28.6", "@babel/code-frame@^7.29.0": + version "7.29.0" + resolved "https://registry.yarnpkg.com/@babel/code-frame/-/code-frame-7.29.0.tgz#7cd7a59f15b3cc0dcd803038f7792712a7d0b15c" + integrity sha512-9NhCeYjq9+3uxgdtp20LSiJXJvN0FeCtNGpJxuMFZ1Kv3cWUNb6DOhJwUvcVCzKGR66cw4njwM6hrJLqgOwbcw== dependencies: - "@babel/code-frame" "^7.27.1" - "@babel/generator" "^7.28.5" - "@babel/helper-compilation-targets" "^7.27.2" - "@babel/helper-module-transforms" "^7.28.3" - "@babel/helpers" "^7.28.4" - "@babel/parser" "^7.28.5" - "@babel/template" "^7.27.2" - "@babel/traverse" "^7.28.5" - "@babel/types" "^7.28.5" + "@babel/helper-validator-identifier" "^7.28.5" + js-tokens "^4.0.0" + picocolors "^1.1.1" + +"@babel/compat-data@^7.28.6": + version "7.29.0" + resolved "https://registry.yarnpkg.com/@babel/compat-data/-/compat-data-7.29.0.tgz#00d03e8c0ac24dd9be942c5370990cbe1f17d88d" + integrity sha512-T1NCJqT/j9+cn8fvkt7jtwbLBfLC/1y1c7NtCeXFRgzGTsafi68MRv8yzkYSapBnFA6L3U2VSc02ciDzoAJhJg== + +"@babel/core@^7.29.0": + version "7.29.0" + resolved "https://registry.yarnpkg.com/@babel/core/-/core-7.29.0.tgz#5286ad785df7f79d656e88ce86e650d16ca5f322" + integrity sha512-CGOfOJqWjg2qW/Mb6zNsDm+u5vFQ8DxXfbM09z69p5Z6+mE1ikP2jUXw+j42Pf1XTYED2Rni5f95npYeuwMDQA== + dependencies: + "@babel/code-frame" "^7.29.0" + "@babel/generator" "^7.29.0" + "@babel/helper-compilation-targets" "^7.28.6" + "@babel/helper-module-transforms" "^7.28.6" + "@babel/helpers" "^7.28.6" + "@babel/parser" "^7.29.0" + "@babel/template" "^7.28.6" + "@babel/traverse" "^7.29.0" + "@babel/types" "^7.29.0" "@jridgewell/remapping" "^2.3.5" convert-source-map "^2.0.0" debug "^4.1.0" @@ -53,12 +62,23 @@ "@jridgewell/trace-mapping" "^0.3.28" jsesc "^3.0.2" -"@babel/helper-compilation-targets@^7.27.2": - version "7.27.2" - resolved "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.27.2.tgz" - integrity sha512-2+1thGUUWWjLTYTHZWK1n8Yga0ijBz1XAhUXcKy81rd5g6yh7hGqMp45v7cadSbEHc9G3OTv45SyneRN3ps4DQ== +"@babel/generator@^7.29.0": + version "7.29.0" + resolved "https://registry.yarnpkg.com/@babel/generator/-/generator-7.29.0.tgz#4cba5a76b3c71d8be31761b03329d5dc7768447f" + integrity sha512-vSH118/wwM/pLR38g/Sgk05sNtro6TlTJKuiMXDaZqPUfjTFcudpCOt00IhOfj+1BFAX+UFAlzCU+6WXr3GLFQ== dependencies: - "@babel/compat-data" "^7.27.2" + "@babel/parser" "^7.29.0" + "@babel/types" "^7.29.0" + "@jridgewell/gen-mapping" "^0.3.12" + "@jridgewell/trace-mapping" "^0.3.28" + jsesc "^3.0.2" + +"@babel/helper-compilation-targets@^7.28.6": + version "7.28.6" + resolved "https://registry.yarnpkg.com/@babel/helper-compilation-targets/-/helper-compilation-targets-7.28.6.tgz#32c4a3f41f12ed1532179b108a4d746e105c2b25" + integrity sha512-JYtls3hqi15fcx5GaSNL7SCTJ2MNmjrkHXg4FSpOA/grxK8KwyZ5bubHsCq8FXCkua6xhuaaBit+3b7+VZRfcA== + dependencies: + "@babel/compat-data" "^7.28.6" "@babel/helper-validator-option" "^7.27.1" browserslist "^4.24.0" lru-cache "^5.1.1" @@ -69,7 +89,7 @@ resolved "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz" integrity sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw== -"@babel/helper-module-imports@^7.16.7", "@babel/helper-module-imports@^7.27.1": +"@babel/helper-module-imports@^7.16.7": version "7.27.1" resolved "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.27.1.tgz" integrity sha512-0gSFWUPNXNopqtIPQvlD5WgXYI5GY2kP2cCvoT8kczjbfcfuIljTbcWrulD1CIPIX2gt1wghbDy08yE1p+/r3w== @@ -77,14 +97,22 @@ "@babel/traverse" "^7.27.1" "@babel/types" "^7.27.1" -"@babel/helper-module-transforms@^7.28.3": - version "7.28.3" - resolved "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.28.3.tgz" - integrity sha512-gytXUbs8k2sXS9PnQptz5o0QnpLL51SwASIORY6XaBKF88nsOT0Zw9szLqlSGQDP/4TljBAD5y98p2U1fqkdsw== +"@babel/helper-module-imports@^7.28.6": + version "7.28.6" + resolved "https://registry.yarnpkg.com/@babel/helper-module-imports/-/helper-module-imports-7.28.6.tgz#60632cbd6ffb70b22823187201116762a03e2d5c" + integrity sha512-l5XkZK7r7wa9LucGw9LwZyyCUscb4x37JWTPz7swwFE/0FMQAGpiWUZn8u9DzkSBWEcK25jmvubfpw2dnAMdbw== dependencies: - "@babel/helper-module-imports" "^7.27.1" - "@babel/helper-validator-identifier" "^7.27.1" - "@babel/traverse" "^7.28.3" + "@babel/traverse" "^7.28.6" + "@babel/types" "^7.28.6" + +"@babel/helper-module-transforms@^7.28.6": + version "7.28.6" + resolved "https://registry.yarnpkg.com/@babel/helper-module-transforms/-/helper-module-transforms-7.28.6.tgz#9312d9d9e56edc35aeb6e95c25d4106b50b9eb1e" + integrity sha512-67oXFAYr2cDLDVGLXTEABjdBJZ6drElUSI7WKp70NrpyISso3plG9SAGEF6y7zbha/wOzUByWWTJvEDVNIUGcA== + dependencies: + "@babel/helper-module-imports" "^7.28.6" + "@babel/helper-validator-identifier" "^7.28.5" + "@babel/traverse" "^7.28.6" "@babel/helper-plugin-utils@^7.27.1": version "7.27.1" @@ -106,13 +134,13 @@ resolved "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz" integrity sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4MaJYbYd9JSg== -"@babel/helpers@^7.28.4": - version "7.28.4" - resolved "https://registry.npmjs.org/@babel/helpers/-/helpers-7.28.4.tgz" - integrity sha512-HFN59MmQXGHVyYadKLVumYsA9dBFun/ldYxipEjzA4196jpLZd8UjEEBLkbEkvfYreDqJhZxYAWFPtrfhNpj4w== +"@babel/helpers@^7.28.6": + version "7.28.6" + resolved "https://registry.yarnpkg.com/@babel/helpers/-/helpers-7.28.6.tgz#fca903a313ae675617936e8998b814c415cbf5d7" + integrity sha512-xOBvwq86HHdB7WUDTfKfT/Vuxh7gElQ+Sfti2Cy6yIWNW05P8iUslOVcZ4/sKbE+/jQaukQAdz/gf3724kYdqw== dependencies: - "@babel/template" "^7.27.2" - "@babel/types" "^7.28.4" + "@babel/template" "^7.28.6" + "@babel/types" "^7.28.6" "@babel/parser@^7.1.0", "@babel/parser@^7.20.7", "@babel/parser@^7.27.2", "@babel/parser@^7.28.5": version "7.28.5" @@ -121,6 +149,13 @@ dependencies: "@babel/types" "^7.28.5" +"@babel/parser@^7.28.6", "@babel/parser@^7.29.0": + version "7.29.0" + resolved "https://registry.yarnpkg.com/@babel/parser/-/parser-7.29.0.tgz#669ef345add7d057e92b7ed15f0bac07611831b6" + integrity sha512-IyDgFV5GeDUVX4YdF/3CPULtVGSXXMLh1xVIgdCgxApktqnQV0r7/8Nqthg+8YLGaAtdyIlo2qIdZrbCv4+7ww== + dependencies: + "@babel/types" "^7.29.0" + "@babel/plugin-transform-react-jsx-self@^7.27.1": version "7.27.1" resolved "https://registry.npmjs.org/@babel/plugin-transform-react-jsx-self/-/plugin-transform-react-jsx-self-7.27.1.tgz" @@ -149,7 +184,16 @@ "@babel/parser" "^7.27.2" "@babel/types" "^7.27.1" -"@babel/traverse@^7.27.1", "@babel/traverse@^7.28.3", "@babel/traverse@^7.28.5": +"@babel/template@^7.28.6": + version "7.28.6" + resolved "https://registry.yarnpkg.com/@babel/template/-/template-7.28.6.tgz#0e7e56ecedb78aeef66ce7972b082fce76a23e57" + integrity sha512-YA6Ma2KsCdGb+WC6UpBVFJGXL58MDA6oyONbjyF/+5sBgxY/dwkhLogbMT2GXXyU84/IhRw/2D1Os1B/giz+BQ== + dependencies: + "@babel/code-frame" "^7.28.6" + "@babel/parser" "^7.28.6" + "@babel/types" "^7.28.6" + +"@babel/traverse@^7.27.1": version "7.28.5" resolved "https://registry.npmjs.org/@babel/traverse/-/traverse-7.28.5.tgz" integrity sha512-TCCj4t55U90khlYkVV/0TfkJkAkUg3jZFA3Neb7unZT8CPok7iiRfaX0F+WnqWqt7OxhOn0uBKXCw4lbL8W0aQ== @@ -162,7 +206,20 @@ "@babel/types" "^7.28.5" debug "^4.3.1" -"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.27.1", "@babel/types@^7.28.2", "@babel/types@^7.28.4", "@babel/types@^7.28.5": +"@babel/traverse@^7.28.6", "@babel/traverse@^7.29.0": + version "7.29.0" + resolved "https://registry.yarnpkg.com/@babel/traverse/-/traverse-7.29.0.tgz#f323d05001440253eead3c9c858adbe00b90310a" + integrity sha512-4HPiQr0X7+waHfyXPZpWPfWL/J7dcN1mx9gL6WdQVMbPnF3+ZhSMs8tCxN7oHddJE9fhNE7+lxdnlyemKfJRuA== + dependencies: + "@babel/code-frame" "^7.29.0" + "@babel/generator" "^7.29.0" + "@babel/helper-globals" "^7.28.0" + "@babel/parser" "^7.29.0" + "@babel/template" "^7.28.6" + "@babel/types" "^7.29.0" + debug "^4.3.1" + +"@babel/types@^7.0.0", "@babel/types@^7.20.7", "@babel/types@^7.27.1", "@babel/types@^7.28.2", "@babel/types@^7.28.5": version "7.28.5" resolved "https://registry.npmjs.org/@babel/types/-/types-7.28.5.tgz" integrity sha512-qQ5m48eI/MFLQ5PxQj4PFaprjyCTLI37ElWMmNs0K8Lk3dVeOdNpB3ks8jc7yM5CDmVC73eMVk/trk3fgmrUpA== @@ -170,6 +227,14 @@ "@babel/helper-string-parser" "^7.27.1" "@babel/helper-validator-identifier" "^7.28.5" +"@babel/types@^7.28.6", "@babel/types@^7.29.0": + version "7.29.0" + resolved "https://registry.yarnpkg.com/@babel/types/-/types-7.29.0.tgz#9f5b1e838c446e72cf3cd4b918152b8c605e37c7" + integrity sha512-LwdZHpScM4Qz8Xw2iKSzS+cfglZzJGvofQICy7W7v4caru4EaAmyUuO6BGrbyQ2mYV11W0U8j5mBhd14dd3B0A== + dependencies: + "@babel/helper-string-parser" "^7.27.1" + "@babel/helper-validator-identifier" "^7.28.5" + "@biomejs/biome@^2.3.13": version "2.3.13" resolved "https://registry.yarnpkg.com/@biomejs/biome/-/biome-2.3.13.tgz#966c015d8610137f65c97c081bf69a44b423963b" @@ -462,10 +527,10 @@ resolved "https://registry.npmjs.org/@floating-ui/utils/-/utils-0.2.10.tgz" integrity sha512-aGTxbpbg8/b5JfU1HXSrbH3wXZuLPJcNEcZQFMxLs3oSzgtVu6nFPkbbGGUvBcUjKV2YyB9Wxxabo+HEH9tcRQ== -"@formatjs/cli@^6.12.0": - version "6.12.0" - resolved "https://registry.yarnpkg.com/@formatjs/cli/-/cli-6.12.0.tgz#8bfb1a500faf53fb220b46bc5c559e0f7acf4a27" - integrity sha512-mF3U8XxwEWR+ttlG5e4onYO+M5T22jnnQq7Ce/WK10CTVYR8Us433hbML6vgBLkiTS/MuCq61L0op3yNRSp2Kg== +"@formatjs/cli@^6.12.2": + version "6.12.2" + resolved "https://registry.yarnpkg.com/@formatjs/cli/-/cli-6.12.2.tgz#0ca91899249f41860deb2b2921e6ad0a4db55de9" + integrity sha512-y215aarLZXei3u1WDRAiet/VajgvUXzvz4ifPENDSPXfIog0aBJKtFvIU7EWbcFWy7rstbn5GcwwQW4F1G3TJg== "@formatjs/ecma402-abstract@3.1.1": version "3.1.1" @@ -684,10 +749,10 @@ uncontrollable "^8.0.4" warning "^4.0.3" -"@rolldown/pluginutils@1.0.0-beta.53": - version "1.0.0-beta.53" - resolved "https://registry.npmjs.org/@rolldown/pluginutils/-/pluginutils-1.0.0-beta.53.tgz" - integrity sha512-vENRlFU4YbrwVqNDZ7fLvy+JR1CRkyr01jhSiDpE1u6py3OMzQfztQU2jxykW3ALNxO4kSlqIDeYyD0Y9RcQeQ== +"@rolldown/pluginutils@1.0.0-rc.2": + version "1.0.0-rc.2" + resolved "https://registry.yarnpkg.com/@rolldown/pluginutils/-/pluginutils-1.0.0-rc.2.tgz#10324e74cb3396cb7b616042ea7e9e6aa7d8d458" + integrity sha512-izyXV/v+cHiRfozX62W9htOAvwMo4/bXKDrQ+vom1L1qRuexPock/7VZDAhnpHCLNejd3NJ6hiab+tO0D44Rgw== "@rollup/rollup-android-arm-eabi@4.50.0": version "4.50.0" @@ -831,17 +896,17 @@ resolved "https://registry.yarnpkg.com/@tanstack/query-core/-/query-core-5.90.20.tgz#e12128e39210715d4ce4fb299c33498ac297771e" integrity sha512-OMD2HLpNouXEfZJWcKeVKUgQ5n+n3A2JFmBaScpNDUqSrQSjiveC7dKMe53uJUg1nDG16ttFPz2xfilz6i2uVg== -"@tanstack/query-devtools@5.92.0": - version "5.92.0" - resolved "https://registry.yarnpkg.com/@tanstack/query-devtools/-/query-devtools-5.92.0.tgz#8fc38b0112c6c136630f54e2f7e77f0c379e66c8" - integrity sha512-N8D27KH1vEpVacvZgJL27xC6yPFUy0Zkezn5gnB3L3gRCxlDeSuiya7fKge8Y91uMTnC8aSxBQhcK6ocY7alpQ== +"@tanstack/query-devtools@5.93.0": + version "5.93.0" + resolved "https://registry.yarnpkg.com/@tanstack/query-devtools/-/query-devtools-5.93.0.tgz#517f61d4e2cfb9af671e34ad5e7e871052bca814" + integrity sha512-+kpsx1NQnOFTZsw6HAFCW3HkKg0+2cepGtAWXjiiSOJJ1CtQpt72EE2nyZb+AjAbLRPoeRmPJ8MtQd8r8gsPdg== -"@tanstack/react-query-devtools@^5.91.2": - version "5.91.2" - resolved "https://registry.yarnpkg.com/@tanstack/react-query-devtools/-/react-query-devtools-5.91.2.tgz#1cadfad644b699b618c0636471d19339bda51ac7" - integrity sha512-ZJ1503ay5fFeEYFUdo7LMNFzZryi6B0Cacrgr2h1JRkvikK1khgIq6Nq2EcblqEdIlgB/r7XDW8f8DQ89RuUgg== +"@tanstack/react-query-devtools@^5.91.3": + version "5.91.3" + resolved "https://registry.yarnpkg.com/@tanstack/react-query-devtools/-/react-query-devtools-5.91.3.tgz#0f65340fa3f7e7d5575de928ad70cfa6b5f74ff1" + integrity sha512-nlahjMtd/J1h7IzOOfqeyDh5LNfG0eULwlltPEonYy0QL+nqrBB+nyzJfULV+moL7sZyxc2sHdNJki+vLA9BSA== dependencies: - "@tanstack/query-devtools" "5.92.0" + "@tanstack/query-devtools" "5.93.0" "@tanstack/react-query@^5.90.20": version "5.90.20" @@ -1094,15 +1159,15 @@ resolved "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.3.0.tgz" integrity sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g== -"@vitejs/plugin-react@^5.1.2": - version "5.1.2" - resolved "https://registry.npmjs.org/@vitejs/plugin-react/-/plugin-react-5.1.2.tgz" - integrity sha512-EcA07pHJouywpzsoTUqNh5NwGayl2PPVEJKUSinGGSxFGYn+shYbqMGBg6FXDqgXum9Ou/ecb+411ssw8HImJQ== +"@vitejs/plugin-react@^5.1.3": + version "5.1.3" + resolved "https://registry.yarnpkg.com/@vitejs/plugin-react/-/plugin-react-5.1.3.tgz#05eba092cc89a6ff89668d3f62258e2c5a8a9122" + integrity sha512-NVUnA6gQCl8jfoYqKqQU5Clv0aPw14KkZYCsX6T9Lfu9slI0LOU10OTwFHS/WmptsMMpshNd/1tuWsHQ2Uk+cg== dependencies: - "@babel/core" "^7.28.5" + "@babel/core" "^7.29.0" "@babel/plugin-transform-react-jsx-self" "^7.27.1" "@babel/plugin-transform-react-jsx-source" "^7.27.1" - "@rolldown/pluginutils" "1.0.0-beta.53" + "@rolldown/pluginutils" "1.0.0-rc.2" "@types/babel__core" "^7.20.5" react-refresh "^0.18.0" From 60404b6f7e3b2cc4f43c1650706347ac8b9d6802 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 3 Feb 2026 13:04:13 +0000 Subject: [PATCH 62/77] Bump pg in /backend in the prod-minor-updates group Bumps the prod-minor-updates group in /backend with 1 update: [pg](https://github.com/brianc/node-postgres/tree/HEAD/packages/pg). Updates `pg` from 8.17.2 to 8.18.0 - [Changelog](https://github.com/brianc/node-postgres/blob/master/CHANGELOG.md) - [Commits](https://github.com/brianc/node-postgres/commits/pg@8.18.0/packages/pg) --- updated-dependencies: - dependency-name: pg dependency-version: 8.18.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: prod-minor-updates ... Signed-off-by: dependabot[bot] --- backend/package.json | 2 +- backend/yarn.lock | 18 +++++++++--------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/backend/package.json b/backend/package.json index 07e82bb0..fd77f79a 100644 --- a/backend/package.json +++ b/backend/package.json @@ -32,7 +32,7 @@ "objection": "3.1.5", "otplib": "^12.0.1", "path": "^0.12.7", - "pg": "^8.17.2", + "pg": "^8.18.0", "proxy-agent": "^6.5.0", "signale": "1.4.0", "sqlite3": "^5.1.7", diff --git a/backend/yarn.lock b/backend/yarn.lock index c917d0ff..4a523961 100644 --- a/backend/yarn.lock +++ b/backend/yarn.lock @@ -2144,10 +2144,10 @@ pg-connection-string@2.6.2: resolved "https://registry.yarnpkg.com/pg-connection-string/-/pg-connection-string-2.6.2.tgz#713d82053de4e2bd166fab70cd4f26ad36aab475" integrity sha512-ch6OwaeaPYcova4kKZ15sbJ2hKb/VP48ZD2gE7i1J+L4MspCtBMAx8nMgz7bksc7IojCIIWuEhHibSMFH8m8oA== -pg-connection-string@^2.10.1: - version "2.10.1" - resolved "https://registry.yarnpkg.com/pg-connection-string/-/pg-connection-string-2.10.1.tgz#34e0bf60333551ae1e76caf47cce633a5b2e4b70" - integrity sha512-iNzslsoeSH2/gmDDKiyMqF64DATUCWj3YJ0wP14kqcsf2TUklwimd+66yYojKwZCA7h2yRNLGug71hCBA2a4sw== +pg-connection-string@^2.11.0: + version "2.11.0" + resolved "https://registry.yarnpkg.com/pg-connection-string/-/pg-connection-string-2.11.0.tgz#5dca53ff595df33ba9db812e181b19909866d10b" + integrity sha512-kecgoJwhOpxYU21rZjULrmrBJ698U2RxXofKVzOn5UDj61BPj/qMb7diYUR1nLScCDbrztQFl1TaQZT0t1EtzQ== pg-int8@1.0.1: version "1.0.1" @@ -2175,12 +2175,12 @@ pg-types@2.2.0: postgres-date "~1.0.4" postgres-interval "^1.1.0" -pg@^8.17.2: - version "8.17.2" - resolved "https://registry.yarnpkg.com/pg/-/pg-8.17.2.tgz#8df8c039c36bb97016be276094fc4991e8683963" - integrity sha512-vjbKdiBJRqzcYw1fNU5KuHyYvdJ1qpcQg1CeBrHFqV1pWgHeVR6j/+kX0E1AAXfyuLUGY1ICrN2ELKA/z2HWzw== +pg@^8.18.0: + version "8.18.0" + resolved "https://registry.yarnpkg.com/pg/-/pg-8.18.0.tgz#e9ee214206f5d9231240f1b82f22d2fa9de5cb75" + integrity sha512-xqrUDL1b9MbkydY/s+VZ6v+xiMUmOUk7SS9d/1kpyQxoJ6U9AO1oIJyUWVZojbfe5Cc/oluutcgFG4L9RDP1iQ== dependencies: - pg-connection-string "^2.10.1" + pg-connection-string "^2.11.0" pg-pool "^3.11.0" pg-protocol "^1.11.0" pg-types "2.2.0" From 7f0c5d4364f697a2a67f7c579c2b78c479e4530c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 3 Feb 2026 13:04:21 +0000 Subject: [PATCH 63/77] Bump happy-dom in /frontend in the dev-minor-updates group Bumps the dev-minor-updates group in /frontend with 1 update: [happy-dom](https://github.com/capricorn86/happy-dom). Updates `happy-dom` from 20.4.0 to 20.5.0 - [Release notes](https://github.com/capricorn86/happy-dom/releases) - [Commits](https://github.com/capricorn86/happy-dom/compare/v20.4.0...v20.5.0) --- updated-dependencies: - dependency-name: happy-dom dependency-version: 20.5.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dev-minor-updates ... Signed-off-by: dependabot[bot] --- frontend/package.json | 2 +- frontend/yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/frontend/package.json b/frontend/package.json index 37f9f169..a1444d49 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -52,7 +52,7 @@ "@types/react-dom": "^19.2.3", "@types/react-table": "^7.7.20", "@vitejs/plugin-react": "^5.1.3", - "happy-dom": "^20.4.0", + "happy-dom": "^20.5.0", "postcss": "^8.5.6", "postcss-simple-vars": "^7.0.1", "sass": "^1.97.3", diff --git a/frontend/yarn.lock b/frontend/yarn.lock index 69d7a735..0d187f63 100644 --- a/frontend/yarn.lock +++ b/frontend/yarn.lock @@ -1632,10 +1632,10 @@ globrex@^0.1.2: resolved "https://registry.npmjs.org/globrex/-/globrex-0.1.2.tgz" integrity sha512-uHJgbwAMwNFf5mLst7IWLNg14x1CkeqglJb/K3doi4dw6q2IvAAmM/Y81kevy83wP+Sst+nutFTYOGg3d1lsxg== -happy-dom@^20.4.0: - version "20.4.0" - resolved "https://registry.yarnpkg.com/happy-dom/-/happy-dom-20.4.0.tgz#83d1aa589cf4b4908a2f14e9596196afeb30e9e6" - integrity sha512-RDeQm3dT9n0A5f/TszjUmNCLEuPnMGv3Tv4BmNINebz/h17PA6LMBcxJ5FrcqltNBMh9jA/8ufgDdBYUdBt+eg== +happy-dom@^20.5.0: + version "20.5.0" + resolved "https://registry.yarnpkg.com/happy-dom/-/happy-dom-20.5.0.tgz#64899aad7272f7e02a728e231bc9c151b872a3a5" + integrity sha512-VQe+Q5CYiGOgcCERXhcfNsbnrN92FDEKciMH/x6LppU9dd0j4aTjCTlqONFOIMcAm/5JxS3+utowbXV1OoFr+g== dependencies: "@types/node" ">=20.0.0" "@types/whatwg-mimetype" "^3.0.2" From 6f0931bed5677a9fdf44c9167cc2232256355bff Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 3 Feb 2026 13:04:48 +0000 Subject: [PATCH 64/77] Bump react-intl in /frontend in the prod-patch-updates group Bumps the prod-patch-updates group in /frontend with 1 update: [react-intl](https://github.com/formatjs/formatjs). Updates `react-intl` from 8.1.2 to 8.1.3 - [Release notes](https://github.com/formatjs/formatjs/releases) - [Commits](https://github.com/formatjs/formatjs/compare/react-intl@8.1.2...react-intl@8.1.3) --- updated-dependencies: - dependency-name: react-intl dependency-version: 8.1.3 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: prod-patch-updates ... Signed-off-by: dependabot[bot] --- frontend/package.json | 2 +- frontend/yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/frontend/package.json b/frontend/package.json index 37f9f169..93390658 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -32,7 +32,7 @@ "react": "^19.2.4", "react-bootstrap": "^2.10.10", "react-dom": "^19.2.4", - "react-intl": "^8.1.2", + "react-intl": "^8.1.3", "react-markdown": "^10.1.0", "react-router-dom": "^7.13.0", "react-select": "^5.10.2", diff --git a/frontend/yarn.lock b/frontend/yarn.lock index 69d7a735..afa3a879 100644 --- a/frontend/yarn.lock +++ b/frontend/yarn.lock @@ -2501,10 +2501,10 @@ react-fast-compare@^2.0.1: resolved "https://registry.npmjs.org/react-fast-compare/-/react-fast-compare-2.0.4.tgz" integrity sha512-suNP+J1VU1MWFKcyt7RtjiSWUjvidmQSlqu+eHslq+342xCbGTYmC0mEhPCOHxlW0CywylOC1u2DFAT+bv4dBw== -react-intl@^8.1.2: - version "8.1.2" - resolved "https://registry.yarnpkg.com/react-intl/-/react-intl-8.1.2.tgz#e8a6dde84d9682bef5fa775077beb9b5b8ff9547" - integrity sha512-mwjljlxC1dpU7G6cznkxMWtYuKZruSNSVHZjiIWfYW6aNsHNDvDWDK54rM8yoF86asNLpk4Y3HxcWhX1AslTGg== +react-intl@^8.1.3: + version "8.1.3" + resolved "https://registry.yarnpkg.com/react-intl/-/react-intl-8.1.3.tgz#216e0a916c40a535c590995c3103fe9e2525d2e4" + integrity sha512-eL1/d+uQdnapirynOGAriW0K9uAoyarjRGL3V9LaTRuohNSvPgCfJX06EZl5M52h/Hu7Gz7A1sD7dNHcos1lNg== dependencies: "@formatjs/ecma402-abstract" "3.1.1" "@formatjs/icu-messageformat-parser" "3.5.1" From bb4b5fb3aa2a2022c3b6307de0a726a234154e6b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 3 Feb 2026 21:22:20 +0000 Subject: [PATCH 65/77] Bump otplib from 12.0.1 to 13.2.1 in /backend Bumps [otplib](https://github.com/yeojz/otplib/tree/HEAD/packages/otplib) from 12.0.1 to 13.2.1. - [Release notes](https://github.com/yeojz/otplib/releases) - [Commits](https://github.com/yeojz/otplib/commits/v13.2.1/packages/otplib) --- updated-dependencies: - dependency-name: otplib dependency-version: 13.2.1 dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] --- backend/package.json | 2 +- backend/yarn.lock | 97 +++++++++++++++++++++++++------------------- 2 files changed, 57 insertions(+), 42 deletions(-) diff --git a/backend/package.json b/backend/package.json index fd77f79a..93ddfdd6 100644 --- a/backend/package.json +++ b/backend/package.json @@ -30,7 +30,7 @@ "mysql2": "^3.16.2", "node-rsa": "^1.1.1", "objection": "3.1.5", - "otplib": "^12.0.1", + "otplib": "^13.2.1", "path": "^0.12.7", "pg": "^8.18.0", "proxy-agent": "^6.5.0", diff --git a/backend/yarn.lock b/backend/yarn.lock index 4a523961..a8688084 100644 --- a/backend/yarn.lock +++ b/backend/yarn.lock @@ -111,6 +111,11 @@ wrap-ansi "^8.1.0" wrap-ansi-cjs "npm:wrap-ansi@^7.0.0" +"@noble/hashes@^2.0.1": + version "2.0.1" + resolved "https://registry.yarnpkg.com/@noble/hashes/-/hashes-2.0.1.tgz#fc1a928061d1232b0a52bb754393c37a5216c89e" + integrity sha512-XlOlEbQcE9fmuXxrVTXCTlG2nlRXa9Rj3rr5Ue/+tX+nmkgbX720YHh0VR3hBF9xDvwnb8D2shVGOwNx+ulArw== + "@npmcli/fs@^1.0.0": version "1.1.1" resolved "https://registry.yarnpkg.com/@npmcli/fs/-/fs-1.1.1.tgz#72f719fe935e687c56a4faecf3c03d06ba593257" @@ -127,49 +132,61 @@ mkdirp "^1.0.4" rimraf "^3.0.2" -"@otplib/core@^12.0.1": - version "12.0.1" - resolved "https://registry.yarnpkg.com/@otplib/core/-/core-12.0.1.tgz#73720a8cedce211fe5b3f683cd5a9c098eaf0f8d" - integrity sha512-4sGntwbA/AC+SbPhbsziRiD+jNDdIzsZ3JUyfZwjtKyc/wufl1pnSIaG4Uqx8ymPagujub0o92kgBnB89cuAMA== +"@otplib/core@13.2.1": + version "13.2.1" + resolved "https://registry.yarnpkg.com/@otplib/core/-/core-13.2.1.tgz#83449322a390b6b4c045b2e799cbd1f7718f1f64" + integrity sha512-IyfHvYNCyipDxhmJdcUUvUeT3Hz84/GgM6G2G6BTEmnAKPzNA7U0kYGkxKZWY9h23W94RJk4qiClJRJN5zKGvg== -"@otplib/plugin-crypto@^12.0.1": - version "12.0.1" - resolved "https://registry.yarnpkg.com/@otplib/plugin-crypto/-/plugin-crypto-12.0.1.tgz#2b42c624227f4f9303c1c041fca399eddcbae25e" - integrity sha512-qPuhN3QrT7ZZLcLCyKOSNhuijUi9G5guMRVrxq63r9YNOxxQjPm59gVxLM+7xGnHnM6cimY57tuKsjK7y9LM1g== +"@otplib/hotp@13.2.1": + version "13.2.1" + resolved "https://registry.yarnpkg.com/@otplib/hotp/-/hotp-13.2.1.tgz#6149c877e5a51fd1c527ada535fe75ca4f525eee" + integrity sha512-iRKqvj0TnemtXXtEswzBX50Z0yMNa0lH9PSdr5N4CJc1mDEuUmFFZQqnu3PfA3fPd3WeAU+mHgmK/xq18+K1QA== dependencies: - "@otplib/core" "^12.0.1" + "@otplib/core" "13.2.1" + "@otplib/uri" "13.2.1" -"@otplib/plugin-thirty-two@^12.0.1": - version "12.0.1" - resolved "https://registry.yarnpkg.com/@otplib/plugin-thirty-two/-/plugin-thirty-two-12.0.1.tgz#5cc9b56e6e89f2a1fe4a2b38900ca4e11c87aa9e" - integrity sha512-MtT+uqRso909UkbrrYpJ6XFjj9D+x2Py7KjTO9JDPhL0bJUYVu5kFP4TFZW4NFAywrAtFRxOVY261u0qwb93gA== +"@otplib/plugin-base32-scure@13.2.1": + version "13.2.1" + resolved "https://registry.yarnpkg.com/@otplib/plugin-base32-scure/-/plugin-base32-scure-13.2.1.tgz#2e7b1849311bfafd630fa87ce2812b7c3c718675" + integrity sha512-vnA2qqgJ/FbFbDNGOLAS8dKfCsJFXwFsZKYklE8yl2INkCOUR0vbVdJ2TVmufzC8R1RRZHW+cDR20ACgc9XFYg== dependencies: - "@otplib/core" "^12.0.1" - thirty-two "^1.0.2" + "@otplib/core" "13.2.1" + "@scure/base" "^2.0.0" -"@otplib/preset-default@^12.0.1": - version "12.0.1" - resolved "https://registry.yarnpkg.com/@otplib/preset-default/-/preset-default-12.0.1.tgz#cb596553c08251e71b187ada4a2246ad2a3165ba" - integrity sha512-xf1v9oOJRyXfluBhMdpOkr+bsE+Irt+0D5uHtvg6x1eosfmHCsCC6ej/m7FXiWqdo0+ZUI6xSKDhJwc8yfiOPQ== +"@otplib/plugin-crypto-noble@13.2.1": + version "13.2.1" + resolved "https://registry.yarnpkg.com/@otplib/plugin-crypto-noble/-/plugin-crypto-noble-13.2.1.tgz#11f6325f4593f57360af2268313b94003b225807" + integrity sha512-Dxjmt4L+5eDWJf5EvbcMp+fxcliyKoB9N9sNQq/vuVAUvq+KiqpiiCQZ/wHyrN0ArB0NdevtK1KByyAq080ldg== dependencies: - "@otplib/core" "^12.0.1" - "@otplib/plugin-crypto" "^12.0.1" - "@otplib/plugin-thirty-two" "^12.0.1" + "@noble/hashes" "^2.0.1" + "@otplib/core" "13.2.1" -"@otplib/preset-v11@^12.0.1": - version "12.0.1" - resolved "https://registry.yarnpkg.com/@otplib/preset-v11/-/preset-v11-12.0.1.tgz#4c7266712e7230500b421ba89252963c838fc96d" - integrity sha512-9hSetMI7ECqbFiKICrNa4w70deTUfArtwXykPUvSHWOdzOlfa9ajglu7mNCntlvxycTiOAXkQGwjQCzzDEMRMg== +"@otplib/totp@13.2.1": + version "13.2.1" + resolved "https://registry.yarnpkg.com/@otplib/totp/-/totp-13.2.1.tgz#2c8f8a8d87cf6e440d9050d363dfd24bc25179d6" + integrity sha512-LzDzAAK3w8rspF3urBnWjOlxso1SCGxX9Pnu/iy+HkC0y0HgiLsW7jhkr2hJ3u4cyBdL/tOKUhhELwsjyvunwQ== dependencies: - "@otplib/core" "^12.0.1" - "@otplib/plugin-crypto" "^12.0.1" - "@otplib/plugin-thirty-two" "^12.0.1" + "@otplib/core" "13.2.1" + "@otplib/hotp" "13.2.1" + "@otplib/uri" "13.2.1" + +"@otplib/uri@13.2.1": + version "13.2.1" + resolved "https://registry.yarnpkg.com/@otplib/uri/-/uri-13.2.1.tgz#50054fe922f3610e7558b0c5337353770c1f382e" + integrity sha512-ssYnfiUrFTs/rPRUW8h59m0MVLYOC+UKk7tVGYgtG15lLaLBrNBQjM2YFanuzn9Jm4iv9JxiNG7TRkwcnyR09A== + dependencies: + "@otplib/core" "13.2.1" "@pkgjs/parseargs@^0.11.0": version "0.11.0" resolved "https://registry.yarnpkg.com/@pkgjs/parseargs/-/parseargs-0.11.0.tgz#a77ea742fab25775145434eb1d2328cf5013ac33" integrity sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg== +"@scure/base@^2.0.0": + version "2.0.0" + resolved "https://registry.yarnpkg.com/@scure/base/-/base-2.0.0.tgz#ba6371fddf92c2727e88ad6ab485db6e624f9a98" + integrity sha512-3E1kpuZginKkek01ovG8krQ0Z44E3DHPjc5S2rjJw9lZn3KSQOs8S7wqikF/AH7iRanHypj85uGyxk0XAyC37w== + "@tootallnate/once@1": version "1.1.2" resolved "https://registry.yarnpkg.com/@tootallnate/once/-/once-1.1.2.tgz#ccb91445360179a04e7fe6aff78c00ffc1eeaf82" @@ -1994,14 +2011,17 @@ once@^1.3.0, once@^1.3.1, once@^1.4.0: dependencies: wrappy "1" -otplib@^12.0.1: - version "12.0.1" - resolved "https://registry.yarnpkg.com/otplib/-/otplib-12.0.1.tgz#c1d3060ab7aadf041ed2960302f27095777d1f73" - integrity sha512-xDGvUOQjop7RDgxTQ+o4pOol0/3xSZzawTiPKRrHnQWAy0WjhNs/5HdIDJCrqC4MBynmjXgULc6YfioaxZeFgg== +otplib@^13.2.1: + version "13.2.1" + resolved "https://registry.yarnpkg.com/otplib/-/otplib-13.2.1.tgz#39cc114228409ff30cfa6779e2f8cb007b535942" + integrity sha512-Cft9h/m34LtvnoB2TjP1E1E6v0biwcUntl6U4e+HgWrTa0bpwmb+u/D9gLFA+U6/ztlvrult0811Bu30nUVUuA== dependencies: - "@otplib/core" "^12.0.1" - "@otplib/preset-default" "^12.0.1" - "@otplib/preset-v11" "^12.0.1" + "@otplib/core" "13.2.1" + "@otplib/hotp" "13.2.1" + "@otplib/plugin-base32-scure" "13.2.1" + "@otplib/plugin-crypto-noble" "13.2.1" + "@otplib/totp" "13.2.1" + "@otplib/uri" "13.2.1" p-limit@^1.1.0: version "1.3.0" @@ -2856,11 +2876,6 @@ text-decoder@^1.1.0: dependencies: b4a "^1.6.4" -thirty-two@^1.0.2: - version "1.0.2" - resolved "https://registry.yarnpkg.com/thirty-two/-/thirty-two-1.0.2.tgz#4ca2fffc02a51290d2744b9e3f557693ca6b627a" - integrity sha512-OEI0IWCe+Dw46019YLl6V10Us5bi574EvlJEOcAkB29IzQ/mYD1A6RyNHLjZPiHCmuodxvgF6U+vZO1L15lxVA== - tildify@2.0.0: version "2.0.0" resolved "https://registry.yarnpkg.com/tildify/-/tildify-2.0.0.tgz#f205f3674d677ce698b7067a99e949ce03b4754a" From f90066822fde1f479482728c9ceb22f7957bb8dc Mon Sep 17 00:00:00 2001 From: Jamie Curnow Date: Wed, 4 Feb 2026 07:47:16 +1000 Subject: [PATCH 66/77] Fix v13 otplib upgrades --- backend/internal/2fa.js | 36 ++++++++++++++++++------------------ 1 file changed, 18 insertions(+), 18 deletions(-) diff --git a/backend/internal/2fa.js b/backend/internal/2fa.js index aba9dd68..279f551a 100644 --- a/backend/internal/2fa.js +++ b/backend/internal/2fa.js @@ -1,6 +1,6 @@ import crypto from "node:crypto"; import bcrypt from "bcrypt"; -import { authenticator } from "otplib"; +import { generateSecret, generateURI, verify } from "otplib"; import errs from "../lib/error.js"; import authModel from "../models/auth.js"; import internalUser from "./user.js"; @@ -27,7 +27,6 @@ const generateBackupCodes = async () => { }; const internal2fa = { - /** * Check if user has 2FA enabled * @param {number} userId @@ -72,8 +71,12 @@ const internal2fa = { startSetup: async (access, userId) => { await access.can("users:password", userId); const user = await internalUser.get(access, { id: userId }); - const secret = authenticator.generateSecret(); - const otpauth_url = authenticator.keyuri(user.email, APP_NAME, secret); + const secret = generateSecret(); + const otpauth_url = generateURI({ + issuer: APP_NAME, + label: user.email, + secret: secret, + }); const auth = await internal2fa.getUserPasswordAuth(userId); // ensure user isn't already setup for 2fa @@ -85,7 +88,8 @@ const internal2fa = { const meta = auth.meta || {}; meta.totp_pending_secret = secret; - await authModel.query() + await authModel + .query() .where("id", auth.id) .andWhere("user_id", userId) .andWhere("type", "password") @@ -112,8 +116,8 @@ const internal2fa = { throw new errs.ValidationError("No pending 2FA setup found"); } - const valid = authenticator.verify({ token: code, secret }); - if (!valid) { + const result = await verify({ token: code, secret }); + if (!result.valid) { throw new errs.ValidationError("Invalid verification code"); } @@ -156,12 +160,12 @@ const internal2fa = { throw new errs.ValidationError("2FA is not enabled"); } - const valid = authenticator.verify({ + const result = await verify({ token: code, secret: auth.meta.totp_secret, }); - if (!valid) { + if (!result.valid) { throw new errs.AuthError("Invalid verification code"); } @@ -195,12 +199,12 @@ const internal2fa = { } // Try TOTP code first - const valid = authenticator.verify({ + const result = await verify({ token, secret, }); - if (valid) { + if (result.valid) { return true; } @@ -248,12 +252,12 @@ const internal2fa = { throw new errs.ValidationError("No 2FA secret found"); } - const valid = authenticator.verify({ + const result = await verify({ token, secret, }); - if (!valid) { + if (!result.valid) { throw new errs.ValidationError("Invalid verification code"); } @@ -271,11 +275,7 @@ const internal2fa = { }, getUserPasswordAuth: async (userId) => { - const auth = await authModel - .query() - .where("user_id", userId) - .andWhere("type", "password") - .first(); + const auth = await authModel.query().where("user_id", userId).andWhere("type", "password").first(); if (!auth) { throw new errs.ItemNotFoundError("Auth not found"); From 3e3d08b68f3b6ce5fc18038502d230241c054f3e Mon Sep 17 00:00:00 2001 From: Jamie Curnow Date: Wed, 4 Feb 2026 07:50:26 +1000 Subject: [PATCH 67/77] Change dependabot interval to weekly --- .github/dependabot.yml | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/dependabot.yml b/.github/dependabot.yml index 4a038f7a..f1b4ffb6 100644 --- a/.github/dependabot.yml +++ b/.github/dependabot.yml @@ -3,7 +3,7 @@ updates: - package-ecosystem: "npm" directory: "/backend" schedule: - interval: "daily" + interval: "weekly" groups: dev-patch-updates: dependency-type: "development" @@ -25,7 +25,7 @@ updates: - package-ecosystem: "npm" directory: "/frontend" schedule: - interval: "daily" + interval: "weekly" groups: dev-patch-updates: dependency-type: "development" @@ -47,7 +47,7 @@ updates: - package-ecosystem: "npm" directory: "/docs" schedule: - interval: "daily" + interval: "weekly" groups: dev-patch-updates: dependency-type: "development" @@ -69,7 +69,7 @@ updates: - package-ecosystem: "npm" directory: "/test" schedule: - interval: "daily" + interval: "weekly" groups: dev-patch-updates: dependency-type: "development" @@ -87,11 +87,11 @@ updates: dependency-type: "production" update-types: - "minor" - + - package-ecosystem: "docker" directory: "/docker" schedule: - interval: "daily" + interval: "weekly" groups: updates: update-types: From 2bcf5e91ce986f97403f6813ec840efd35202c4a Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 3 Feb 2026 21:51:39 +0000 Subject: [PATCH 68/77] Bump @biomejs/biome in /backend in the dev-patch-updates group Bumps the dev-patch-updates group in /backend with 1 update: [@biomejs/biome](https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome). Updates `@biomejs/biome` from 2.3.12 to 2.3.13 - [Release notes](https://github.com/biomejs/biome/releases) - [Changelog](https://github.com/biomejs/biome/blob/main/packages/@biomejs/biome/CHANGELOG.md) - [Commits](https://github.com/biomejs/biome/commits/@biomejs/biome@2.3.13/packages/@biomejs/biome) --- updated-dependencies: - dependency-name: "@biomejs/biome" dependency-version: 2.3.13 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: dev-patch-updates ... Signed-off-by: dependabot[bot] --- backend/package.json | 2 +- backend/yarn.lock | 88 ++++++++++++++++++++++---------------------- 2 files changed, 45 insertions(+), 45 deletions(-) diff --git a/backend/package.json b/backend/package.json index fd77f79a..712513fb 100644 --- a/backend/package.json +++ b/backend/package.json @@ -40,7 +40,7 @@ }, "devDependencies": { "@apidevtools/swagger-parser": "^12.1.0", - "@biomejs/biome": "^2.3.12", + "@biomejs/biome": "^2.3.14", "chalk": "5.6.2", "nodemon": "^3.1.11" }, diff --git a/backend/yarn.lock b/backend/yarn.lock index 4a523961..f1714ea6 100644 --- a/backend/yarn.lock +++ b/backend/yarn.lock @@ -40,59 +40,59 @@ ajv-draft-04 "^1.0.0" call-me-maybe "^1.0.2" -"@biomejs/biome@^2.3.12": - version "2.3.12" - resolved "https://registry.yarnpkg.com/@biomejs/biome/-/biome-2.3.12.tgz#7cf21b69734ac6a310bcd014d3a0b3b1dc5a1758" - integrity sha512-AR7h4aSlAvXj7TAajW/V12BOw2EiS0AqZWV5dGozf4nlLoUF/ifvD0+YgKSskT0ylA6dY1A8AwgP8kZ6yaCQnA== +"@biomejs/biome@^2.3.14": + version "2.3.14" + resolved "https://registry.yarnpkg.com/@biomejs/biome/-/biome-2.3.14.tgz#b879cd5e0495334d4db7c49d6f3cc95b67d2909c" + integrity sha512-QMT6QviX0WqXJCaiqVMiBUCr5WRQ1iFSjvOLoTk6auKukJMvnMzWucXpwZB0e8F00/1/BsS9DzcKgWH+CLqVuA== optionalDependencies: - "@biomejs/cli-darwin-arm64" "2.3.12" - "@biomejs/cli-darwin-x64" "2.3.12" - "@biomejs/cli-linux-arm64" "2.3.12" - "@biomejs/cli-linux-arm64-musl" "2.3.12" - "@biomejs/cli-linux-x64" "2.3.12" - "@biomejs/cli-linux-x64-musl" "2.3.12" - "@biomejs/cli-win32-arm64" "2.3.12" - "@biomejs/cli-win32-x64" "2.3.12" + "@biomejs/cli-darwin-arm64" "2.3.14" + "@biomejs/cli-darwin-x64" "2.3.14" + "@biomejs/cli-linux-arm64" "2.3.14" + "@biomejs/cli-linux-arm64-musl" "2.3.14" + "@biomejs/cli-linux-x64" "2.3.14" + "@biomejs/cli-linux-x64-musl" "2.3.14" + "@biomejs/cli-win32-arm64" "2.3.14" + "@biomejs/cli-win32-x64" "2.3.14" -"@biomejs/cli-darwin-arm64@2.3.12": - version "2.3.12" - resolved "https://registry.yarnpkg.com/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-2.3.12.tgz#ff0029420b0fc307ad0345a4190fe14ca4fd2676" - integrity sha512-cO6fn+KiMBemva6EARDLQBxeyvLzgidaFRJi8G7OeRqz54kWK0E+uSjgFaiHlc3DZYoa0+1UFE8mDxozpc9ieg== +"@biomejs/cli-darwin-arm64@2.3.14": + version "2.3.14" + resolved "https://registry.yarnpkg.com/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-2.3.14.tgz#da942618e1dc2d19322bc11d5dacfe7d7616a502" + integrity sha512-UJGPpvWJMkLxSRtpCAKfKh41Q4JJXisvxZL8ChN1eNW3m/WlPFJ6EFDCE7YfUb4XS8ZFi3C1dFpxUJ0Ety5n+A== -"@biomejs/cli-darwin-x64@2.3.12": - version "2.3.12" - resolved "https://registry.yarnpkg.com/@biomejs/cli-darwin-x64/-/cli-darwin-x64-2.3.12.tgz#5afba38de8b6fc44cfa16cf45b816deead8cab25" - integrity sha512-/fiF/qmudKwSdvmSrSe/gOTkW77mHHkH8Iy7YC2rmpLuk27kbaUOPa7kPiH5l+3lJzTUfU/t6x1OuIq/7SGtxg== +"@biomejs/cli-darwin-x64@2.3.14": + version "2.3.14" + resolved "https://registry.yarnpkg.com/@biomejs/cli-darwin-x64/-/cli-darwin-x64-2.3.14.tgz#3ad06cce8ef6d2b935582011bd0cc3ca98a9554d" + integrity sha512-PNkLNQG6RLo8lG7QoWe/hhnMxJIt1tEimoXpGQjwS/dkdNiKBLPv4RpeQl8o3s1OKI3ZOR5XPiYtmbGGHAOnLA== -"@biomejs/cli-linux-arm64-musl@2.3.12": - version "2.3.12" - resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-2.3.12.tgz#fe98eaca6b3a8b4da1581330a341a9ecb5f49525" - integrity sha512-aqkeSf7IH+wkzFpKeDVPSXy9uDjxtLpYA6yzkYsY+tVjwFFirSuajHDI3ul8en90XNs1NA0n8kgBrjwRi5JeyA== +"@biomejs/cli-linux-arm64-musl@2.3.14": + version "2.3.14" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-2.3.14.tgz#e92681273dc59ac57b75b72f1b64a67543e50f8c" + integrity sha512-LInRbXhYujtL3sH2TMCH/UBwJZsoGwfQjBrMfl84CD4hL/41C/EU5mldqf1yoFpsI0iPWuU83U+nB2TUUypWeg== -"@biomejs/cli-linux-arm64@2.3.12": - version "2.3.12" - resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-arm64/-/cli-linux-arm64-2.3.12.tgz#b3a404700075aab96b7418b0c00e40a35de104fd" - integrity sha512-nbOsuQROa3DLla5vvsTZg+T5WVPGi9/vYxETm9BOuLHBJN3oWQIg3MIkE2OfL18df1ZtNkqXkH6Yg9mdTPem7A== +"@biomejs/cli-linux-arm64@2.3.14": + version "2.3.14" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-arm64/-/cli-linux-arm64-2.3.14.tgz#bab43ee0a88ba15a6d59ec648a4b415d68d6eeb7" + integrity sha512-KT67FKfzIw6DNnUNdYlBg+eU24Go3n75GWK6NwU4+yJmDYFe9i/MjiI+U/iEzKvo0g7G7MZqoyrhIYuND2w8QQ== -"@biomejs/cli-linux-x64-musl@2.3.12": - version "2.3.12" - resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-2.3.12.tgz#beb065ec9802ddcb00e6bb4398be3f06abd309b2" - integrity sha512-kVGWtupRRsOjvw47YFkk5mLiAdpCPMWBo1jOwAzh+juDpUb2sWarIp+iq+CPL1Wt0LLZnYtP7hH5kD6fskcxmg== +"@biomejs/cli-linux-x64-musl@2.3.14": + version "2.3.14" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-2.3.14.tgz#ee90f7110dafdedf4644e0a27ac242975dcd88d3" + integrity sha512-KQU7EkbBBuHPW3/rAcoiVmhlPtDSGOGRPv9js7qJVpYTzjQmVR+C9Rfcz+ti8YCH+zT1J52tuBybtP4IodjxZQ== -"@biomejs/cli-linux-x64@2.3.12": - version "2.3.12" - resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-x64/-/cli-linux-x64-2.3.12.tgz#6cfbc5536e1184966704a0f50385b9121ff473a5" - integrity sha512-CQtqrJ+qEEI8tgRSTjjzk6wJAwfH3wQlkIGsM5dlecfRZaoT+XCms/mf7G4kWNexrke6mnkRzNy6w8ebV177ow== +"@biomejs/cli-linux-x64@2.3.14": + version "2.3.14" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-x64/-/cli-linux-x64-2.3.14.tgz#d152e61c6dc847836ebc741fb70fe305414aa7fe" + integrity sha512-ZsZzQsl9U+wxFrGGS4f6UxREUlgHwmEfu1IrXlgNFrNnd5Th6lIJr8KmSzu/+meSa9f4rzFrbEW9LBBA6ScoMA== -"@biomejs/cli-win32-arm64@2.3.12": - version "2.3.12" - resolved "https://registry.yarnpkg.com/@biomejs/cli-win32-arm64/-/cli-win32-arm64-2.3.12.tgz#ac40d7792708e224c0d5fa5ce1a4beb9e3255bfa" - integrity sha512-Re4I7UnOoyE4kHMqpgtG6UvSBGBbbtvsOvBROgCCoH7EgANN6plSQhvo2W7OCITvTp7gD6oZOyZy72lUdXjqZg== +"@biomejs/cli-win32-arm64@2.3.14": + version "2.3.14" + resolved "https://registry.yarnpkg.com/@biomejs/cli-win32-arm64/-/cli-win32-arm64-2.3.14.tgz#2c59e84f3d172bada2a1df94d6cf7e511c244a4e" + integrity sha512-+IKYkj/pUBbnRf1G1+RlyA3LWiDgra1xpS7H2g4BuOzzRbRB+hmlw0yFsLprHhbbt7jUzbzAbAjK/Pn0FDnh1A== -"@biomejs/cli-win32-x64@2.3.12": - version "2.3.12" - resolved "https://registry.yarnpkg.com/@biomejs/cli-win32-x64/-/cli-win32-x64-2.3.12.tgz#5c710c971f3adc6971e04feb342a70387a6a2d58" - integrity sha512-qqGVWqNNek0KikwPZlOIoxtXgsNGsX+rgdEzgw82Re8nF02W+E2WokaQhpF5TdBh/D/RQ3TLppH+otp6ztN0lw== +"@biomejs/cli-win32-x64@2.3.14": + version "2.3.14" + resolved "https://registry.yarnpkg.com/@biomejs/cli-win32-x64/-/cli-win32-x64-2.3.14.tgz#44405162f255fe153a5ff99379510c058bf7a1e8" + integrity sha512-oizCjdyQ3WJEswpb3Chdngeat56rIdSYK12JI3iI11Mt5T5EXcZ7WLuowzEaFPNJ3zmOQFliMN8QY1Pi+qsfdQ== "@gar/promisify@^1.0.1": version "1.1.3" From a4bc8d5d2176016eab7fc32106252106f3cab6f6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 3 Feb 2026 21:52:25 +0000 Subject: [PATCH 69/77] Bump @biomejs/biome in /frontend in the dev-patch-updates group Bumps the dev-patch-updates group in /frontend with 1 update: [@biomejs/biome](https://github.com/biomejs/biome/tree/HEAD/packages/@biomejs/biome). Updates `@biomejs/biome` from 2.3.13 to 2.3.14 - [Release notes](https://github.com/biomejs/biome/releases) - [Changelog](https://github.com/biomejs/biome/blob/main/packages/@biomejs/biome/CHANGELOG.md) - [Commits](https://github.com/biomejs/biome/commits/@biomejs/biome@2.3.14/packages/@biomejs/biome) --- updated-dependencies: - dependency-name: "@biomejs/biome" dependency-version: 2.3.14 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: dev-patch-updates ... Signed-off-by: dependabot[bot] --- frontend/package.json | 2 +- frontend/yarn.lock | 88 +++++++++++++++++++++---------------------- 2 files changed, 45 insertions(+), 45 deletions(-) diff --git a/frontend/package.json b/frontend/package.json index 11c6a35c..da684a03 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -40,7 +40,7 @@ "rooks": "^9.5.0" }, "devDependencies": { - "@biomejs/biome": "^2.3.13", + "@biomejs/biome": "^2.3.14", "@formatjs/cli": "^6.12.2", "@tanstack/react-query-devtools": "^5.91.3", "@testing-library/dom": "^10.4.1", diff --git a/frontend/yarn.lock b/frontend/yarn.lock index 882f1ef0..ecd07e5a 100644 --- a/frontend/yarn.lock +++ b/frontend/yarn.lock @@ -235,59 +235,59 @@ "@babel/helper-string-parser" "^7.27.1" "@babel/helper-validator-identifier" "^7.28.5" -"@biomejs/biome@^2.3.13": - version "2.3.13" - resolved "https://registry.yarnpkg.com/@biomejs/biome/-/biome-2.3.13.tgz#966c015d8610137f65c97c081bf69a44b423963b" - integrity sha512-Fw7UsV0UAtWIBIm0M7g5CRerpu1eKyKAXIazzxhbXYUyMkwNrkX/KLkGI7b+uVDQ5cLUMfOC9vR60q9IDYDstA== +"@biomejs/biome@^2.3.14": + version "2.3.14" + resolved "https://registry.yarnpkg.com/@biomejs/biome/-/biome-2.3.14.tgz#b879cd5e0495334d4db7c49d6f3cc95b67d2909c" + integrity sha512-QMT6QviX0WqXJCaiqVMiBUCr5WRQ1iFSjvOLoTk6auKukJMvnMzWucXpwZB0e8F00/1/BsS9DzcKgWH+CLqVuA== optionalDependencies: - "@biomejs/cli-darwin-arm64" "2.3.13" - "@biomejs/cli-darwin-x64" "2.3.13" - "@biomejs/cli-linux-arm64" "2.3.13" - "@biomejs/cli-linux-arm64-musl" "2.3.13" - "@biomejs/cli-linux-x64" "2.3.13" - "@biomejs/cli-linux-x64-musl" "2.3.13" - "@biomejs/cli-win32-arm64" "2.3.13" - "@biomejs/cli-win32-x64" "2.3.13" + "@biomejs/cli-darwin-arm64" "2.3.14" + "@biomejs/cli-darwin-x64" "2.3.14" + "@biomejs/cli-linux-arm64" "2.3.14" + "@biomejs/cli-linux-arm64-musl" "2.3.14" + "@biomejs/cli-linux-x64" "2.3.14" + "@biomejs/cli-linux-x64-musl" "2.3.14" + "@biomejs/cli-win32-arm64" "2.3.14" + "@biomejs/cli-win32-x64" "2.3.14" -"@biomejs/cli-darwin-arm64@2.3.13": - version "2.3.13" - resolved "https://registry.yarnpkg.com/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-2.3.13.tgz#417fab5e8b2facf7e289f91d4bbe4275eb2dbbe8" - integrity sha512-0OCwP0/BoKzyJHnFdaTk/i7hIP9JHH9oJJq6hrSCPmJPo8JWcJhprK4gQlhFzrwdTBAW4Bjt/RmCf3ZZe59gwQ== +"@biomejs/cli-darwin-arm64@2.3.14": + version "2.3.14" + resolved "https://registry.yarnpkg.com/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-2.3.14.tgz#da942618e1dc2d19322bc11d5dacfe7d7616a502" + integrity sha512-UJGPpvWJMkLxSRtpCAKfKh41Q4JJXisvxZL8ChN1eNW3m/WlPFJ6EFDCE7YfUb4XS8ZFi3C1dFpxUJ0Ety5n+A== -"@biomejs/cli-darwin-x64@2.3.13": - version "2.3.13" - resolved "https://registry.yarnpkg.com/@biomejs/cli-darwin-x64/-/cli-darwin-x64-2.3.13.tgz#05abe14ced10125091f68da38ec070f7827b6758" - integrity sha512-AGr8OoemT/ejynbIu56qeil2+F2WLkIjn2d8jGK1JkchxnMUhYOfnqc9sVzcRxpG9Ycvw4weQ5sprRvtb7Yhcw== +"@biomejs/cli-darwin-x64@2.3.14": + version "2.3.14" + resolved "https://registry.yarnpkg.com/@biomejs/cli-darwin-x64/-/cli-darwin-x64-2.3.14.tgz#3ad06cce8ef6d2b935582011bd0cc3ca98a9554d" + integrity sha512-PNkLNQG6RLo8lG7QoWe/hhnMxJIt1tEimoXpGQjwS/dkdNiKBLPv4RpeQl8o3s1OKI3ZOR5XPiYtmbGGHAOnLA== -"@biomejs/cli-linux-arm64-musl@2.3.13": - version "2.3.13" - resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-2.3.13.tgz#aa715dbaf3d4cc97682bcb7357f0e15220321eea" - integrity sha512-TUdDCSY+Eo/EHjhJz7P2GnWwfqet+lFxBZzGHldrvULr59AgahamLs/N85SC4+bdF86EhqDuuw9rYLvLFWWlXA== +"@biomejs/cli-linux-arm64-musl@2.3.14": + version "2.3.14" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-2.3.14.tgz#e92681273dc59ac57b75b72f1b64a67543e50f8c" + integrity sha512-LInRbXhYujtL3sH2TMCH/UBwJZsoGwfQjBrMfl84CD4hL/41C/EU5mldqf1yoFpsI0iPWuU83U+nB2TUUypWeg== -"@biomejs/cli-linux-arm64@2.3.13": - version "2.3.13" - resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-arm64/-/cli-linux-arm64-2.3.13.tgz#e3463498bc23ddba306de3e45d8f9722179065e9" - integrity sha512-xvOiFkrDNu607MPMBUQ6huHmBG1PZLOrqhtK6pXJW3GjfVqJg0Z/qpTdhXfcqWdSZHcT+Nct2fOgewZvytESkw== +"@biomejs/cli-linux-arm64@2.3.14": + version "2.3.14" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-arm64/-/cli-linux-arm64-2.3.14.tgz#bab43ee0a88ba15a6d59ec648a4b415d68d6eeb7" + integrity sha512-KT67FKfzIw6DNnUNdYlBg+eU24Go3n75GWK6NwU4+yJmDYFe9i/MjiI+U/iEzKvo0g7G7MZqoyrhIYuND2w8QQ== -"@biomejs/cli-linux-x64-musl@2.3.13": - version "2.3.13" - resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-2.3.13.tgz#579e81f862272ca5a2b9860a2204382767966b7d" - integrity sha512-0bdwFVSbbM//Sds6OjtnmQGp4eUjOTt6kHvR/1P0ieR9GcTUAlPNvPC3DiavTqq302W34Ae2T6u5VVNGuQtGlQ== +"@biomejs/cli-linux-x64-musl@2.3.14": + version "2.3.14" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-2.3.14.tgz#ee90f7110dafdedf4644e0a27ac242975dcd88d3" + integrity sha512-KQU7EkbBBuHPW3/rAcoiVmhlPtDSGOGRPv9js7qJVpYTzjQmVR+C9Rfcz+ti8YCH+zT1J52tuBybtP4IodjxZQ== -"@biomejs/cli-linux-x64@2.3.13": - version "2.3.13" - resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-x64/-/cli-linux-x64-2.3.13.tgz#fa22633de6effcd571fa2b7983cec98b9fce6383" - integrity sha512-s+YsZlgiXNq8XkgHs6xdvKDFOj/bwTEevqEY6rC2I3cBHbxXYU1LOZstH3Ffw9hE5tE1sqT7U23C00MzkXztMw== +"@biomejs/cli-linux-x64@2.3.14": + version "2.3.14" + resolved "https://registry.yarnpkg.com/@biomejs/cli-linux-x64/-/cli-linux-x64-2.3.14.tgz#d152e61c6dc847836ebc741fb70fe305414aa7fe" + integrity sha512-ZsZzQsl9U+wxFrGGS4f6UxREUlgHwmEfu1IrXlgNFrNnd5Th6lIJr8KmSzu/+meSa9f4rzFrbEW9LBBA6ScoMA== -"@biomejs/cli-win32-arm64@2.3.13": - version "2.3.13" - resolved "https://registry.yarnpkg.com/@biomejs/cli-win32-arm64/-/cli-win32-arm64-2.3.13.tgz#06dd89ec17b897e0c774612fbe83a19fabbb949e" - integrity sha512-QweDxY89fq0VvrxME+wS/BXKmqMrOTZlN9SqQ79kQSIc3FrEwvW/PvUegQF6XIVaekncDykB5dzPqjbwSKs9DA== +"@biomejs/cli-win32-arm64@2.3.14": + version "2.3.14" + resolved "https://registry.yarnpkg.com/@biomejs/cli-win32-arm64/-/cli-win32-arm64-2.3.14.tgz#2c59e84f3d172bada2a1df94d6cf7e511c244a4e" + integrity sha512-+IKYkj/pUBbnRf1G1+RlyA3LWiDgra1xpS7H2g4BuOzzRbRB+hmlw0yFsLprHhbbt7jUzbzAbAjK/Pn0FDnh1A== -"@biomejs/cli-win32-x64@2.3.13": - version "2.3.13" - resolved "https://registry.yarnpkg.com/@biomejs/cli-win32-x64/-/cli-win32-x64-2.3.13.tgz#55b8cf3e4a16712855ec0462cbdb3a6e645c9466" - integrity sha512-trDw2ogdM2lyav9WFQsdsfdVy1dvZALymRpgmWsvSez0BJzBjulhOT/t+wyKeh3pZWvwP3VMs1SoOKwO3wecMQ== +"@biomejs/cli-win32-x64@2.3.14": + version "2.3.14" + resolved "https://registry.yarnpkg.com/@biomejs/cli-win32-x64/-/cli-win32-x64-2.3.14.tgz#44405162f255fe153a5ff99379510c058bf7a1e8" + integrity sha512-oizCjdyQ3WJEswpb3Chdngeat56rIdSYK12JI3iI11Mt5T5EXcZ7WLuowzEaFPNJ3zmOQFliMN8QY1Pi+qsfdQ== "@emotion/babel-plugin@^11.13.5": version "11.13.5" From 3c54413752a63331d4bb92e84220ebca0cc0d1c4 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 4 Feb 2026 00:15:00 +0000 Subject: [PATCH 70/77] Bump mysql2 in /backend in the prod-patch-updates group Bumps the prod-patch-updates group in /backend with 1 update: [mysql2](https://github.com/sidorares/node-mysql2). Updates `mysql2` from 3.16.2 to 3.16.3 - [Release notes](https://github.com/sidorares/node-mysql2/releases) - [Changelog](https://github.com/sidorares/node-mysql2/blob/master/Changelog.md) - [Commits](https://github.com/sidorares/node-mysql2/compare/v3.16.2...v3.16.3) --- updated-dependencies: - dependency-name: mysql2 dependency-version: 3.16.3 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: prod-patch-updates ... Signed-off-by: dependabot[bot] --- backend/package.json | 2 +- backend/yarn.lock | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/backend/package.json b/backend/package.json index 93ddfdd6..ecca80dd 100644 --- a/backend/package.json +++ b/backend/package.json @@ -27,7 +27,7 @@ "liquidjs": "10.24.0", "lodash": "^4.17.23", "moment": "^2.30.1", - "mysql2": "^3.16.2", + "mysql2": "^3.16.3", "node-rsa": "^1.1.1", "objection": "3.1.5", "otplib": "^13.2.1", diff --git a/backend/yarn.lock b/backend/yarn.lock index a8688084..7f5a8082 100644 --- a/backend/yarn.lock +++ b/backend/yarn.lock @@ -1853,10 +1853,10 @@ ms@^2.0.0, ms@^2.1.1, ms@^2.1.3: resolved "https://registry.yarnpkg.com/ms/-/ms-2.1.3.tgz#574c8138ce1d2b5861f0b44579dbadd60c6615b2" integrity sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA== -mysql2@^3.16.2: - version "3.16.2" - resolved "https://registry.yarnpkg.com/mysql2/-/mysql2-3.16.2.tgz#b56d8917bfbc01af02f9c301029c019868b6ab6d" - integrity sha512-JsqBpYNy7pH20lGfPuSyRSIcCxSeAIwxWADpV64nP9KeyN3ZKpHZgjKXuBKsh7dH6FbOvf1bOgoVKjSUPXRMTw== +mysql2@^3.16.3: + version "3.16.3" + resolved "https://registry.yarnpkg.com/mysql2/-/mysql2-3.16.3.tgz#59491bfa13f1979c2a87fd1ef68a3eb83fd58fcb" + integrity sha512-+3XhQEt4FEFuvGV0JjIDj4eP2OT/oIj/54dYvqhblnSzlfcxVOuj+cd15Xz6hsG4HU1a+A5+BA9gm0618C4z7A== dependencies: aws-ssl-profiles "^1.1.2" denque "^2.1.0" From 6ba40216cd2e1219c23910051ad6930759b9ecfb Mon Sep 17 00:00:00 2001 From: Jamie Curnow Date: Wed, 4 Feb 2026 10:38:56 +1000 Subject: [PATCH 71/77] Update biome.json to match viome version --- backend/biome.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/backend/biome.json b/backend/biome.json index 17f46b04..5a8a97c5 100644 --- a/backend/biome.json +++ b/backend/biome.json @@ -1,5 +1,5 @@ { - "$schema": "https://biomejs.dev/schemas/2.3.12/schema.json", + "$schema": "https://biomejs.dev/schemas/2.3.14/schema.json", "vcs": { "enabled": true, "clientKind": "git", From c3173d83b8d400bcdbfe25bba396db139619ef0d Mon Sep 17 00:00:00 2001 From: Jamie Curnow Date: Wed, 4 Feb 2026 10:39:43 +1000 Subject: [PATCH 72/77] Update biome.json to match viome version --- frontend/biome.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/biome.json b/frontend/biome.json index 696a4e43..430644db 100644 --- a/frontend/biome.json +++ b/frontend/biome.json @@ -1,5 +1,5 @@ { - "$schema": "https://biomejs.dev/schemas/2.3.12/schema.json", + "$schema": "https://biomejs.dev/schemas/2.3.14/schema.json", "vcs": { "enabled": true, "clientKind": "git", From 0d62c2616415672477c1a7ddba449f5e082fc2cf Mon Sep 17 00:00:00 2001 From: Jamie Curnow Date: Wed, 4 Feb 2026 10:43:14 +1000 Subject: [PATCH 73/77] Fix linting --- frontend/src/modals/RenewCertificateModal.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/frontend/src/modals/RenewCertificateModal.tsx b/frontend/src/modals/RenewCertificateModal.tsx index 8904622e..8f7cc63a 100644 --- a/frontend/src/modals/RenewCertificateModal.tsx +++ b/frontend/src/modals/RenewCertificateModal.tsx @@ -41,7 +41,7 @@ const RenewCertificateModal = EasyModal.create(({ id, visible, remove }: Props) .finally(() => { setIsSubmitting(false); }); - }, [id, data, isFresh, isSubmitting, remove, queryClient.invalidateQueries]); + }, [id, data, isFresh, isSubmitting, remove, queryClient]); return ( From eab38d89345ee0aadbdc3c8c5f337dd4eb44fc69 Mon Sep 17 00:00:00 2001 From: Jamie Curnow Date: Thu, 5 Feb 2026 08:26:49 +1000 Subject: [PATCH 74/77] Bump version --- .version | 2 +- README.md | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.version b/.version index 14239ef1..ea55a03f 100644 --- a/.version +++ b/.version @@ -1 +1 @@ -2.13.6 +2.13.7 diff --git a/README.md b/README.md index a27a58e4..e6f7c056 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@



- + From c88de65d3a15234a8af52ff7c10d6b4eb8514ff7 Mon Sep 17 00:00:00 2001 From: Jamie Curnow Date: Thu, 5 Feb 2026 10:51:15 +1000 Subject: [PATCH 75/77] Fix #5274 2fa backup codes not validating properly --- backend/internal/2fa.js | 19 +++++++++++-------- backend/schema/paths/tokens/2fa/post.json | 2 +- .../users/userID/2fa/backup-codes/post.json | 4 ++-- .../paths/users/userID/2fa/enable/post.json | 4 ++-- 4 files changed, 16 insertions(+), 13 deletions(-) diff --git a/backend/internal/2fa.js b/backend/internal/2fa.js index 279f551a..570cee99 100644 --- a/backend/internal/2fa.js +++ b/backend/internal/2fa.js @@ -198,20 +198,23 @@ const internal2fa = { return false; } - // Try TOTP code first - const result = await verify({ - token, - secret, - }); + // Try TOTP code first, if it's 6 chars. it will throw errors if it's not 6 chars + // and the backup codes are 8 chars. + if (token.length === 6) { + const result = await verify({ + token, + secret, + }); - if (result.valid) { - return true; + if (result.valid) { + return true; + } } // Try backup codes const backupCodes = auth?.meta?.backup_codes || []; for (let i = 0; i < backupCodes.length; i++) { - const match = await bcrypt.compare(code.toUpperCase(), backupCodes[i]); + const match = await bcrypt.compare(token.toUpperCase(), backupCodes[i]); if (match) { // Remove used backup code const updatedCodes = [...backupCodes]; diff --git a/backend/schema/paths/tokens/2fa/post.json b/backend/schema/paths/tokens/2fa/post.json index f6b50022..c37af8d3 100644 --- a/backend/schema/paths/tokens/2fa/post.json +++ b/backend/schema/paths/tokens/2fa/post.json @@ -17,7 +17,7 @@ }, "code": { "minLength": 6, - "maxLength": 6, + "maxLength": 8, "type": "string", "example": "012345" } diff --git a/backend/schema/paths/users/userID/2fa/backup-codes/post.json b/backend/schema/paths/users/userID/2fa/backup-codes/post.json index ebfc8c2a..00cb9d5f 100644 --- a/backend/schema/paths/users/userID/2fa/backup-codes/post.json +++ b/backend/schema/paths/users/userID/2fa/backup-codes/post.json @@ -16,7 +16,7 @@ } ], "requestBody": { - "description": "Verififcation Payload", + "description": "Verification Payload", "required": true, "content": { "application/json": { @@ -25,7 +25,7 @@ "properties": { "code": { "minLength": 6, - "maxLength": 6, + "maxLength": 8, "type": "string", "example": "123456" } diff --git a/backend/schema/paths/users/userID/2fa/enable/post.json b/backend/schema/paths/users/userID/2fa/enable/post.json index f08b681f..74c98540 100644 --- a/backend/schema/paths/users/userID/2fa/enable/post.json +++ b/backend/schema/paths/users/userID/2fa/enable/post.json @@ -16,7 +16,7 @@ } ], "requestBody": { - "description": "Verififcation Payload", + "description": "Verification Payload", "required": true, "content": { "application/json": { @@ -25,7 +25,7 @@ "properties": { "code": { "minLength": 6, - "maxLength": 6, + "maxLength": 8, "type": "string", "example": "123456" } From 77662b4e7f15f48c5fce4e2734444cb985e3c7b7 Mon Sep 17 00:00:00 2001 From: Jamie Curnow Date: Thu, 5 Feb 2026 13:11:57 +1000 Subject: [PATCH 76/77] Use better-sqlite3 package for sqlite databases --- backend/lib/config.js | 3 ++- backend/package.json | 1 + backend/yarn.lock | 8 ++++++++ 3 files changed, 11 insertions(+), 1 deletion(-) diff --git a/backend/lib/config.js b/backend/lib/config.js index 7d20fd02..cb01a0d0 100644 --- a/backend/lib/config.js +++ b/backend/lib/config.js @@ -5,7 +5,7 @@ import { global as logger } from "../logger.js"; const keysFile = '/data/keys.json'; const mysqlEngine = 'mysql2'; const postgresEngine = 'pg'; -const sqliteClientName = 'sqlite3'; +const sqliteClientName = 'better-sqlite3'; let instance = null; @@ -84,6 +84,7 @@ const configure = () => { } const envSqliteFile = process.env.DB_SQLITE_FILE || "/data/database.sqlite"; + logger.info(`Using Sqlite: ${envSqliteFile}`); instance = { database: { diff --git a/backend/package.json b/backend/package.json index 91b7d2cf..9381b272 100644 --- a/backend/package.json +++ b/backend/package.json @@ -17,6 +17,7 @@ "archiver": "^7.0.1", "batchflow": "^0.4.0", "bcrypt": "^6.0.0", + "better-sqlite3": "^12.6.2", "body-parser": "^2.2.2", "compression": "^1.7.4", "express": "^5.2.1", diff --git a/backend/yarn.lock b/backend/yarn.lock index 0c63dd6b..47954da1 100644 --- a/backend/yarn.lock +++ b/backend/yarn.lock @@ -414,6 +414,14 @@ bcrypt@^6.0.0: node-addon-api "^8.3.0" node-gyp-build "^4.8.4" +better-sqlite3@^12.6.2: + version "12.6.2" + resolved "https://registry.yarnpkg.com/better-sqlite3/-/better-sqlite3-12.6.2.tgz#770649f28a62e543a360f3dfa1afe4cc944b1937" + integrity sha512-8VYKM3MjCa9WcaSAI3hzwhmyHVlH8tiGFwf0RlTsZPWJ1I5MkzjiudCo4KC4DxOaL/53A5B1sI/IbldNFDbsKA== + dependencies: + bindings "^1.5.0" + prebuild-install "^7.1.1" + binary-extensions@^2.0.0: version "2.3.0" resolved "https://registry.yarnpkg.com/binary-extensions/-/binary-extensions-2.3.0.tgz#f6e14a97858d327252200242d4ccfe522c445522" From d19f5c196017f8c6ea4065ab0dca66668ff3c6c9 Mon Sep 17 00:00:00 2001 From: Jamie Curnow Date: Thu, 5 Feb 2026 13:12:54 +1000 Subject: [PATCH 77/77] Fix upgrade problem with otplib existing secrets --- backend/internal/2fa.js | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/backend/internal/2fa.js b/backend/internal/2fa.js index 570cee99..4251520c 100644 --- a/backend/internal/2fa.js +++ b/backend/internal/2fa.js @@ -1,6 +1,6 @@ import crypto from "node:crypto"; import bcrypt from "bcrypt"; -import { generateSecret, generateURI, verify } from "otplib"; +import { createGuardrails, generateSecret, generateURI, verify } from "otplib"; import errs from "../lib/error.js"; import authModel from "../models/auth.js"; import internalUser from "./user.js"; @@ -204,6 +204,13 @@ const internal2fa = { const result = await verify({ token, secret, + // These guardrails lower the minimum length requirement for secrets. + // In v12 of otplib the default minimum length is 10 and in v13 it is 16. + // Since there are 2fa secrets in the wild generated with v12 we need to allow shorter secrets + // so people won't be locked out when upgrading. + guardrails: createGuardrails({ + MIN_SECRET_BYTES: 10, + }), }); if (result.valid) { @@ -278,7 +285,11 @@ const internal2fa = { }, getUserPasswordAuth: async (userId) => { - const auth = await authModel.query().where("user_id", userId).andWhere("type", "password").first(); + const auth = await authModel + .query() + .where("user_id", userId) + .andWhere("type", "password") + .first(); if (!auth) { throw new errs.ItemNotFoundError("Auth not found");