diff --git a/README.md b/README.md
index e2c16d572..cb902754f 100644
--- a/README.md
+++ b/README.md
@@ -1,6 +1,8 @@
-
Homarr
+
+
+
@@ -21,128 +23,113 @@
-Join the discord! — Don't forget to star the repo if you are enjoying the project!
-
-
-
- Demo ↗️ • Install ➡️
+
+ Demo ✨
+
+ •
+
+ Install 💻
+ •
+
+ Translations 🈺
+ •
+
+ Discord 👋
+
----
-
-
+Simplify the management of your server with Homarr - a sleek, modern dashboard that puts all of your apps and services at your fingertips. With Homarr, you can access and control everything in one convenient location. Homarr seamlessly integrates with the apps you've added, providing you with valuable information and giving you complete control. Installation is a breeze, and Homarr supports a wide range of deployment methods.
-Homarr is a simple and lightweight homepage for your server, that helps you easily access all of your services in one place.
+
+
-It integrates with the services you use to display information on the homepage (E.g. Show upcoming Sonarr/Radarr releases).
+
+
+
-For a full list of integrations, [head over to our documentation](https://homarr.dev/docs/integrations/).
+- 🖌️ Highly customizeable with extensive drag and drop grid system
+- ✨ Integrates seamlessly with your favorite self-hosted applications
+- 📌 Easy and fast app management - no yaml involved
+- 🙊 Advanced secrets management system for enhanced security
+- 📄 Detailed documentation and active community
+- 🔍 Search though the web or supported integrations in an instant
+- 🏴 Monitor your application with a built in status system
+- 🦞 Comprehensive built-in icon picker with over 1000 icons
+- 🐳 Easy deployment with Docker, Unraid, Synology
+- 🚀 Comatible with any major consumer hardware (x86, Rasperry Pi, ...)
+- 💵 Free and Open-Source - your data stays on your device
-If you have any questions about Homarr or want to share information with us, please go to one of the following places:
+
+
-- [Github Discussions](https://github.com/ajnart/homarr/discussions)
-- [Discord Server](https://discord.gg/aCsmEV5RgA)
+
+
+
-**For more information, [read the documentation!](https://homarr.dev/docs/about)**
+Homarr has a [built in collection of widgets and integrations](https://homarr.dev/docs/integrations/) , that connect to your applications and enable you to control them directly from the dashboard.
+Each widget and integration has a comprehensive documentation for your confort.
+Homarr will integrate with the following applications of yours:
-
- Table of Contents
-
+- 📥 Torrent clients
+ - [Delguge](https://homarr.dev/docs/integrations/#deluge)
+ - [Transmission](https://homarr.dev/docs/integrations/#transmission)
+ - [qBittorrent](https://homarr.dev/docs/integrations/#qbittorrent-integration)
+- 📥 Usenet clients
+ - [SABnzbd](https://homarr.dev/docs/integrations/#sabnzbd)
+ - [NZBGet](https://homarr.dev/docs/integrations/#nzbget)
+- 📚 Media collection managers
+ - [Sonarr](https://homarr.dev/docs/integrations/#sonarr)
+ - [Radarr](https://homarr.dev/docs/integrations/#radarr)
+ - [Lidarr](https://homarr.dev/docs/integrations/#lidarr)
+ - [Readarr](https://homarr.dev/docs/integrations/#readarr)
+- 🎞️ Media request managers
+ - [Overseerr](https://homarr.dev/docs/integrations/#overseerr--jellyseerr)
+ - [Jellyseerr](https://homarr.dev/docs/integrations/#overseerr--jellyseerr)
+- 🔌 [Dash.](https://homarr.dev/docs/integrations/#dash)
+- 🐳 [Docker](https://homarr.dev/docs/integrations/#docker)
-- [✨ Features](#-features)
-- [👀 Preview](#-preview)
-- [🛠️ Running a dev environment](#️-running-a-dev-environment)
-- [💖 Contributing](#-contributing)
-- [📜 License](#-license)
+We're constantly adding new integrations and widgets, which will enhance your experience even further.
-
-
+
+
----
+
+
+
-## ✨ Features
-- Integrates with services you use.
-- Search the web directly from your homepage.
-- Real-time status indicator for every service.
-- Automatically finds icons while you type the name of a service.
-- Widgets that can display all types of information.
-- Easy deployment with Docker.
-- Very light-weight and fast.
-- Free and Open-Source.
-- And more...
+https://user-images.githubusercontent.com/30572287/217098893-5880e7de-13d0-42c5-b505-f7921593396f.mp4
-**[⤴️ Back to Top](#homarr)**
+
+
----
+
+
+
-## 👀 Preview
-
+There are many different ways, how Homarr can be installed.
+Since we are developing Homarr very frequently, we recommend to read our official installation guides:
-**[⤴️ Back to Top](#homarr)**
+
+
+
----
+
+
-### 🛠️ Running a dev environment
+
+
+
+Homarr is maintained by motivated developers in their free-time.
+We work for fun and learning on this project.
-_Requirements_:
-- [Git](https://git-scm.com/downloads)
-- [NodeJS](https://nodejs.org/en/) _(Latest or LTS)_
-- [Yarn](https://yarnpkg.com/)
+Hence, we're glad for all help and support we can get.
+Altough a donation is apprechiated, there are also other ways you can support us.
-**Installing**
+[__](https://ko-fi.com/ajnart)
-- Clone the GitHub repo: `git clone https://github.com/ajnart/homarr.git` & `cd homarr`
-- Install all dependencies: `yarn install`
-- Build the source: `yarn build`
-- Start the NextJS web server: ``yarn start``
-- *Note: If you want to update the code in real time, launch with ``yarn dev``*
+You can also support us [translating the entire project in as many languages as possible](https://homarr.dev/docs/community/translations) or contribute directly to the code or documentation.
-**[⤴️ Back to Top](#homarr)**
-
----
-
-## 💖 Contributing
**Please read our [Contribution Guidelines](/CONTRIBUTING.md)**
-All contributions are highly appreciated.
-
-**[⤴️ Back to Top](#homarr)**
-
----
-
-
-## 📜 License
-Homarr is Licensed under [MIT](https://en.wikipedia.org/wiki/MIT_License)
-
-```txt
-Copyright © 2022 Thomas "ajnart" Camlong
-
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all
-copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
-SOFTWARE.
-```
-
-**[⤴️ Back to Top](#homarr)**
-
----
-
-
- Thank you for visiting! For more information read the documentation!
-
-
-
+All contributions, regardless of their size or scope, are welcome and highly apprechiated! Thank you ❤️
diff --git a/docs/banner.png b/docs/banner.png
new file mode 100644
index 000000000..823bb50b1
Binary files /dev/null and b/docs/banner.png differ
diff --git a/docs/banner.xcf b/docs/banner.xcf
new file mode 100644
index 000000000..f58de314c
Binary files /dev/null and b/docs/banner.xcf differ
diff --git a/docs/installation-button.png b/docs/installation-button.png
new file mode 100644
index 000000000..991cb9b27
Binary files /dev/null and b/docs/installation-button.png differ
diff --git a/docs/section-contribute.png b/docs/section-contribute.png
new file mode 100644
index 000000000..3700fee95
Binary files /dev/null and b/docs/section-contribute.png differ
diff --git a/docs/section-features.png b/docs/section-features.png
new file mode 100644
index 000000000..b1854bf3a
Binary files /dev/null and b/docs/section-features.png differ
diff --git a/docs/section-installation.png b/docs/section-installation.png
new file mode 100644
index 000000000..92fa4474f
Binary files /dev/null and b/docs/section-installation.png differ
diff --git a/docs/section-preview.png b/docs/section-preview.png
new file mode 100644
index 000000000..6e43e043d
Binary files /dev/null and b/docs/section-preview.png differ
diff --git a/docs/section-template.xcf b/docs/section-template.xcf
new file mode 100644
index 000000000..7c2094bd4
Binary files /dev/null and b/docs/section-template.xcf differ
diff --git a/docs/section-widgets-and-integrations.png b/docs/section-widgets-and-integrations.png
new file mode 100644
index 000000000..67fcbc9ea
Binary files /dev/null and b/docs/section-widgets-and-integrations.png differ
diff --git a/next-i18next.config.js b/next-i18next.config.js
index 32d339fe9..097721344 100644
--- a/next-i18next.config.js
+++ b/next-i18next.config.js
@@ -25,11 +25,15 @@ module.exports = {
'uk',
'zh',
'el',
+ 'sk',
+ 'no',
],
localePath: path.resolve('./public/locales'),
fallbackLng: 'en',
localeDetection: true,
returnEmptyString: false,
+ debug: false,
+ appendNamespaceToCIMode: true,
+ reloadOnPrerender: process.env.NODE_ENV === 'development',
},
- reloadOnPrerender: process.env.NODE_ENV === 'development',
};
diff --git a/next.config.js b/next.config.js
index 0abbde49c..dde3ec977 100644
--- a/next.config.js
+++ b/next.config.js
@@ -1,19 +1,14 @@
const { i18n } = require('./next-i18next.config');
-const removeImports = require('next-remove-imports')();
-
const withBundleAnalyzer = require('@next/bundle-analyzer')({
enabled: process.env.ANALYZE === 'true',
});
-module.exports = withBundleAnalyzer(
- removeImports({
- experimental: { esmExternals: true },
- images: {
- domains: ['cdn.jsdelivr.net'],
- },
- reactStrictMode: true,
- output: 'standalone',
- i18n,
- })
-);
+module.exports = withBundleAnalyzer({
+ images: {
+ domains: ['cdn.jsdelivr.net'],
+ },
+ reactStrictMode: true,
+ output: 'standalone',
+ i18n,
+});
diff --git a/package.json b/package.json
index 2fbcf5ff4..c22e98533 100644
--- a/package.json
+++ b/package.json
@@ -27,9 +27,6 @@
"@ctrl/qbittorrent": "^4.1.0",
"@ctrl/shared-torrent": "^4.1.1",
"@ctrl/transmission": "^4.1.1",
- "@dnd-kit/core": "^6.0.5",
- "@dnd-kit/sortable": "^7.0.1",
- "@dnd-kit/utilities": "^3.2.0",
"@emotion/react": "^11.10.5",
"@emotion/server": "^11.10.0",
"@mantine/core": "^5.9.3",
@@ -40,35 +37,28 @@
"@mantine/modals": "^5.9.3",
"@mantine/next": "^5.9.3",
"@mantine/notifications": "^5.9.3",
- "@nivo/core": "^0.79.0",
- "@nivo/line": "^0.79.1",
+ "@nivo/core": "^0.80.0",
+ "@nivo/line": "^0.80.0",
"@tabler/icons": "^1.106.0",
"@tanstack/react-query": "^4.2.1",
"@tanstack/react-query-devtools": "^4.24.4",
- "@uiw/react-textarea-code-editor": "v1.4.4",
"axios": "^0.27.2",
"consola": "^2.15.3",
"cookies-next": "^2.1.1",
"dayjs": "^1.11.7",
"dockerode": "^3.3.2",
- "embla-carousel-react": "^7.0.0",
"fily-publish-gridstack": "^0.0.13",
"framer-motion": "^9.0.2",
"i18next": "^21.9.1",
- "i18next-browser-languagedetector": "^6.1.5",
- "i18next-http-backend": "^1.4.1",
"js-file-download": "^0.4.12",
"next": "^13.1.6",
"next-i18next": "^11.3.0",
- "next-remove-imports": "^1.0.8",
"nzbget-api": "^0.0.3",
- "ping": "^0.4.2",
- "prism-react-renderer": "^1.3.5",
+ "prismjs": "^1.29.0",
"react": "^18.2.0",
"react-dom": "^18.2.0",
+ "react-simple-code-editor": "^0.13.1",
"sabnzbd-api": "^1.5.0",
- "sharp": "^0.30.7",
- "systeminformation": "^5.12.1",
"uuid": "^8.3.2",
"yarn": "^1.22.19",
"zustand": "^4.1.4"
@@ -78,13 +68,12 @@
"@next/eslint-plugin-next": "^12.1.4",
"@types/dockerode": "^3.3.9",
"@types/node": "17.0.1",
- "@types/ping": "^0.4.1",
+ "@types/prismjs": "^1.26.0",
"@types/react": "17.0.1",
"@types/uuid": "^8.3.4",
+ "@types/video.js": "^7.3.51",
"@typescript-eslint/eslint-plugin": "^5.30.7",
"@typescript-eslint/parser": "^5.30.7",
- "babel-loader": "^9.1.2",
- "babel-plugin-transform-remove-imports": "^1.7.0",
"eslint": "^8.20.0",
"eslint-config-airbnb": "^19.0.4",
"eslint-config-airbnb-typescript": "^17.0.0",
@@ -99,7 +88,9 @@
"jest": "^28.1.3",
"prettier": "^2.7.1",
"sass": "^1.56.1",
- "typescript": "^4.7.4"
+ "turbo": "^1.7.4",
+ "typescript": "^4.7.4",
+ "video.js": "^8.0.3"
},
"resolutions": {
"@types/react": "17.0.2",
diff --git a/public/locales/da/modules/dashdot.json b/public/locales/da/modules/dashdot.json
index f78fd8a3f..5842ba00b 100644
--- a/public/locales/da/modules/dashdot.json
+++ b/public/locales/da/modules/dashdot.json
@@ -28,7 +28,11 @@
"title": "Dash.",
"errors": {
"noService": "Ingen Dash. service fundet. Tilføj venligst en til dit Homarr-dashboard eller indstil en Dash. URL i modulindstillingerne",
- "noInformation": "Kan ikke hente information fra dash. - kører du den nyeste version?"
+ "noInformation": "Kan ikke hente information fra dash. - kører du den nyeste version?",
+ "protocolDowngrade": {
+ "title": "Registreret protokolnedgradering",
+ "text": "Protokollen til din Dash. instans bliver nedgraderet. Dette er sikkerhedsrisiko, da HTTP er ukrypteret og angribere kunne misbruge denne forbindelse. Sørg for, at Dash. kører på HTTPS også eller nedgraderer Homarr til HTTP (anbefales ikke)."
+ }
},
"graphs": {
"storage": {
diff --git a/public/locales/de/modules/dashdot.json b/public/locales/de/modules/dashdot.json
index 4a95cf060..eda1d7840 100644
--- a/public/locales/de/modules/dashdot.json
+++ b/public/locales/de/modules/dashdot.json
@@ -28,7 +28,11 @@
"title": "Dash.",
"errors": {
"noService": "Kein Dash. Dienst gefunden. Bitte fügen Sie einen zu Ihrem Homarr Dashboard hinzu oder setzen Sie eine Dash. URL in den Moduloptionen",
- "noInformation": "Es können keine Informationen vom Dash. abgerufen werden. - Verwenden Sie die neueste Version?"
+ "noInformation": "Es können keine Informationen vom Dash. abgerufen werden. - Verwenden Sie die neueste Version?",
+ "protocolDowngrade": {
+ "title": "Protokoll-Downgrade erkannt",
+ "text": "Das Protokoll zu Ihrer Dash.-Instanz wird herabgestuft. Dies ist ein Sicherheitsrisiko, da HTTP unverschlüsselt ist und Angreifer diese Verbindung missbrauchen könnten. Stellen Sie sicher, dass Dash. auch auf HTTPS läuft oder downgraden Sie Homarr auf HTTP (wird nicht empfohlen)."
+ }
},
"graphs": {
"storage": {
diff --git a/public/locales/el/modules/dashdot.json b/public/locales/el/modules/dashdot.json
index 0124ec1f1..047c3fb3a 100644
--- a/public/locales/el/modules/dashdot.json
+++ b/public/locales/el/modules/dashdot.json
@@ -28,7 +28,11 @@
"title": "Dash.",
"errors": {
"noService": "Δεν βρέθηκε υπηρεσία Dash. Παρακαλούμε προσθέστε μία στο ταμπλό Homarr ή ορίστε μια Dash. URL στις επιλογές της ενότητας",
- "noInformation": "Δεν μπορεί να αποκτήσει πληροφορίες από το dash. - τρέχετε την τελευταία έκδοση;"
+ "noInformation": "Δεν μπορεί να αποκτήσει πληροφορίες από το dash. - τρέχετε την τελευταία έκδοση;",
+ "protocolDowngrade": {
+ "title": "",
+ "text": ""
+ }
},
"graphs": {
"storage": {
diff --git a/public/locales/en/modules/video-stream.json b/public/locales/en/modules/video-stream.json
new file mode 100644
index 000000000..a35c740a3
--- /dev/null
+++ b/public/locales/en/modules/video-stream.json
@@ -0,0 +1,24 @@
+{
+ "descriptor": {
+ "name": "Video Stream",
+ "description": "Embed a video stream or video from a camera or a website",
+ "settings": {
+ "title": "Settings for video stream widget",
+ "FeedUrl": {
+ "label": "Feed url"
+ },
+ "autoPlay": {
+ "label": "Auto play"
+ },
+ "muted": {
+ "label": "Muted audio"
+ },
+ "controls": {
+ "label": "Video player controls"
+ }
+ }
+ },
+ "errors": {
+ "invalidStream": "Invalid stream"
+ }
+}
\ No newline at end of file
diff --git a/public/locales/es/modules/dashdot.json b/public/locales/es/modules/dashdot.json
index 67d24a73c..f70aad204 100644
--- a/public/locales/es/modules/dashdot.json
+++ b/public/locales/es/modules/dashdot.json
@@ -28,7 +28,11 @@
"title": "Dash.",
"errors": {
"noService": "No se ha encontrado el servicio Dash. Por favor, añade uno al Panel de Control de Homarr o indica una URL de Dash. en las opciones del módulo",
- "noInformation": "No se puede obtener información de Dash. - ¿estás utilizando la última versión?"
+ "noInformation": "No se puede obtener información de Dash. - ¿estás utilizando la última versión?",
+ "protocolDowngrade": {
+ "title": "Degradación de protocolo detectada",
+ "text": "El protocolo de tu instancia Dash. está siendo degradado. Esto es un riesgo de seguridad, debido a que HTTP no está cifrado, y los atacantes pueden abusar de esta conexión. Asegúrate de que Dash. esté ejecutándo en HTTPS también, o degrada Homarr a HTTP (no recomendado)."
+ }
},
"graphs": {
"storage": {
diff --git a/public/locales/es/settings/customization/general.json b/public/locales/es/settings/customization/general.json
index e35dc4588..40c675e83 100644
--- a/public/locales/es/settings/customization/general.json
+++ b/public/locales/es/settings/customization/general.json
@@ -6,7 +6,7 @@
"description": "Activar y desactivar elementos de tu cabecera y tarjetas del dashboard"
},
"gridstack": {
- "name": "",
+ "name": "Gridstack",
"description": "Personalizar el comportamiento y columnas del área de tu dashboard"
},
"pageMetadata": {
diff --git a/public/locales/fr/layout/modals/about.json b/public/locales/fr/layout/modals/about.json
index 7a8fdbe0e..3fd307bdb 100644
--- a/public/locales/fr/layout/modals/about.json
+++ b/public/locales/fr/layout/modals/about.json
@@ -3,11 +3,11 @@
"contact": "Vous avez des problèmes ou des questions ? Dites-le-nous !",
"addToDashboard": "Ajouter au tableau de bord",
"metrics": {
- "configurationSchemaVersion": "",
+ "configurationSchemaVersion": "Version de schéma de configuration",
"configurationsCount": "Configurations disponibles",
"version": "Version",
- "nodeEnvironment": "",
- "i18n": "",
- "locales": ""
+ "nodeEnvironment": "Environnement Node",
+ "i18n": "Traductions I18n chargées",
+ "locales": "Locales I18n configurées"
}
}
\ No newline at end of file
diff --git a/public/locales/fr/modules/dashdot.json b/public/locales/fr/modules/dashdot.json
index 1ff833147..0ef538f2f 100644
--- a/public/locales/fr/modules/dashdot.json
+++ b/public/locales/fr/modules/dashdot.json
@@ -28,7 +28,11 @@
"title": "Dash.",
"errors": {
"noService": "Aucun service Dash. trouvé. Veuillez en ajouter un à votre tableau de bord Homarr ou définir l'URL du service Dash. dans les options du module",
- "noInformation": "Impossible d'acquérir des informations de Dash. - Utilisez-vous la dernière version ?"
+ "noInformation": "Impossible d'acquérir des informations de Dash. - Utilisez-vous la dernière version ?",
+ "protocolDowngrade": {
+ "title": "Protocole rétrograde détecté (HTTP)",
+ "text": "Le protocole vers votre instance de Dash. n'est pas en mode sécurisé. Ceci est considéré comme étant un risque de sécurité, puisque HTTP ne supporte pas l'encryption, et des attaquants pourraient en abuser. Assurez-vous que Dash. fonctionne en mode HTTPS, ou retirez le mode HTTPS de Homarr (pas recommandé)."
+ }
},
"graphs": {
"storage": {
diff --git a/public/locales/fr/settings/common.json b/public/locales/fr/settings/common.json
index 069646fb8..d87442cbb 100644
--- a/public/locales/fr/settings/common.json
+++ b/public/locales/fr/settings/common.json
@@ -10,7 +10,7 @@
},
"credits": {
"madeWithLove": "Fait avec ❤️ par @",
- "thirdPartyContent": "Voir le contenu tiers",
+ "thirdPartyContent": "Voir le contenu de tierce partie",
"thirdPartyContentTable": {
"dependencyName": "Dépendance",
"dependencyVersion": "Version"
@@ -20,9 +20,9 @@
"layout": {
"preview": {
"title": "Aperçu",
- "subtitle": "Les changements seront sauvegarder automatiquement"
+ "subtitle": "Les changements seront sauvegardés automatiquement"
},
- "divider": "Option de mise en page",
+ "divider": "Options de mise en page",
"main": "Principal",
"sidebar": "Barre latérale",
"cannotturnoff": "Ne peut être désactivé",
diff --git a/public/locales/fr/settings/customization/general.json b/public/locales/fr/settings/customization/general.json
index 1b8be25e6..e35622f92 100644
--- a/public/locales/fr/settings/customization/general.json
+++ b/public/locales/fr/settings/customization/general.json
@@ -1,12 +1,12 @@
{
- "text": "",
+ "text": "Les personnalisations vous permettent de configurer et d'ajuster votre expérience utilisateur dans Homarr.",
"accordeon": {
"layout": {
- "name": "",
+ "name": "Mise en page",
"description": "Activer et désactiver les éléments sur l'en-tête et le titre du tableau de bord"
},
"gridstack": {
- "name": "",
+ "name": "Grille",
"description": "Personnaliser le comportement et les colonnes de la zone de votre tableau de bord"
},
"pageMetadata": {
diff --git a/public/locales/fr/settings/customization/gridstack.json b/public/locales/fr/settings/customization/gridstack.json
index eb5909393..eee241074 100644
--- a/public/locales/fr/settings/customization/gridstack.json
+++ b/public/locales/fr/settings/customization/gridstack.json
@@ -1,6 +1,6 @@
{
"columnsCount": {
- "labelPreset": "",
+ "labelPreset": "Colonnes de taille {{size}}",
"descriptionPreset": "Nombre de colonnes lorsque l'écran a une largeur inférieure à {{pixels}} pixels",
"descriptionExceedsPreset": "Nombre de colonnes lorsque la taille de l'écran dépasse {{pixels}} pixels"
},
diff --git a/public/locales/fr/settings/customization/page-appearance.json b/public/locales/fr/settings/customization/page-appearance.json
index 8dfc947de..201d5e007 100644
--- a/public/locales/fr/settings/customization/page-appearance.json
+++ b/public/locales/fr/settings/customization/page-appearance.json
@@ -22,7 +22,7 @@
"label": "CSS personnalisé",
"description": "Personnaliser tous les éléments du tableau de bord, recommandé seulement pour les utilisateurs expérimentés",
"placeholder": "Le CSS personnalisé sera appliqué en dernier",
- "applying": "Appliquation du CSS..."
+ "applying": "Application du code CSS..."
},
"buttons": {
"submit": "Soumettre"
diff --git a/public/locales/he/modules/dashdot.json b/public/locales/he/modules/dashdot.json
index b4fffea61..36552683b 100644
--- a/public/locales/he/modules/dashdot.json
+++ b/public/locales/he/modules/dashdot.json
@@ -28,7 +28,11 @@
"title": "Dash.",
"errors": {
"noService": "לא נמצא שירות Dash. בבקשה הוסף ל- Homarr או הגדר כתובת באפשרויות המודול ",
- "noInformation": "אין מידע מ- Dash. האם אתה משתמש בגירסה העדכנית"
+ "noInformation": "אין מידע מ- Dash. האם אתה משתמש בגירסה העדכנית",
+ "protocolDowngrade": {
+ "title": "זוהה שדרוג לאחור של פרוטוקול",
+ "text": "הפרוטוקול ל-Dash שלך. המופע נמצא בדירוג לאחור. זהו סיכון אבטחה, מכיוון ש-HTTP אינו מוצפן ותוקפים עלולים לעשות שימוש לרעה בחיבור זה. ודא ש-Dash. פועל גם ב-HTTPS או שדרוג לאחור של Homarr ל-HTTP (לא מומלץ)."
+ }
},
"graphs": {
"storage": {
diff --git a/public/locales/it/modules/dashdot.json b/public/locales/it/modules/dashdot.json
index 02c325dac..68be4c2bb 100644
--- a/public/locales/it/modules/dashdot.json
+++ b/public/locales/it/modules/dashdot.json
@@ -28,7 +28,11 @@
"title": "Dash.",
"errors": {
"noService": "Nessun servizio Dash. trovato. Aggiungine uno alla dashboard di Homarr o imposta un URL nelle impostazioni del modulo",
- "noInformation": "Impossibile reperire informazioni da dash. - è in esecuzione l'ultima versione?"
+ "noInformation": "Impossibile reperire informazioni da dash. - è in esecuzione l'ultima versione?",
+ "protocolDowngrade": {
+ "title": "Rilevato downgrade del protocollo",
+ "text": "Il protocollo all'istanza Dash. è in fase di downgrade. Questo è un rischio per la sicurezza, poiché HTTP non è crittografato e gli aggressori potrebbero abusare di questa connessione. Assicurarsi che Dash. sia in esecuzione anche su HTTPS o fare il downgrade di Homarr su HTTP (non consigliato)."
+ }
},
"graphs": {
"storage": {
diff --git a/public/locales/ja/modules/dashdot.json b/public/locales/ja/modules/dashdot.json
index b4221a29e..88b64c660 100644
--- a/public/locales/ja/modules/dashdot.json
+++ b/public/locales/ja/modules/dashdot.json
@@ -28,7 +28,11 @@
"title": "ダッシュ",
"errors": {
"noService": "Dash.サービスが見当たりません。HOMARダッシュボードに追加するか、モジュールオプションでDash.サービスを設定してください。のURLをモジュールオプションで設定してください。",
- "noInformation": "dashから情報を取得できません。- は最新版ですか?"
+ "noInformation": "dashから情報を取得できません。- は最新版ですか?",
+ "protocolDowngrade": {
+ "title": "",
+ "text": ""
+ }
},
"graphs": {
"storage": {
diff --git a/public/locales/ko/modules/dashdot.json b/public/locales/ko/modules/dashdot.json
index c14078538..29b39ffd1 100644
--- a/public/locales/ko/modules/dashdot.json
+++ b/public/locales/ko/modules/dashdot.json
@@ -28,7 +28,11 @@
"title": "Dash.",
"errors": {
"noService": "Dash. 서비스를 찾을 수 없습니다. Homarr 대시보드에 추가하거나 모듈 옵션에서 Dash. URL을 설정해 주세요.",
- "noInformation": "Dash. 에서 정보를 얻을 수 없습니다. 최신 버전을 사용 중인가요?"
+ "noInformation": "Dash. 에서 정보를 얻을 수 없습니다. 최신 버전을 사용 중인가요?",
+ "protocolDowngrade": {
+ "title": "",
+ "text": ""
+ }
},
"graphs": {
"storage": {
diff --git a/public/locales/lol/modules/dashdot.json b/public/locales/lol/modules/dashdot.json
index ddbefa7fa..5c58b8e2e 100644
--- a/public/locales/lol/modules/dashdot.json
+++ b/public/locales/lol/modules/dashdot.json
@@ -28,7 +28,11 @@
"title": "Dash.",
"errors": {
"noService": "No Dash. survis findz. plz add wan 2 ur Homarr dashboard or set Dash. URL in teh moduel opshuns",
- "noInformation": "Cannot acquier informashun frum dash. - r u runnin teh latest vershun?"
+ "noInformation": "Cannot acquier informashun frum dash. - r u runnin teh latest vershun?",
+ "protocolDowngrade": {
+ "title": "",
+ "text": ""
+ }
},
"graphs": {
"storage": {
diff --git a/public/locales/nl/modules/dashdot.json b/public/locales/nl/modules/dashdot.json
index 64f740d71..e40b1330a 100644
--- a/public/locales/nl/modules/dashdot.json
+++ b/public/locales/nl/modules/dashdot.json
@@ -28,7 +28,11 @@
"title": "Dash.",
"errors": {
"noService": "Geen Dash. service gevonden. Voeg er een toe aan uw Homarr dashboard of stel een Dashdot URL in in de opties van de module",
- "noInformation": "Kan geen informatie verkrijgen van dash. - gebruikt u de laatste versie?"
+ "noInformation": "Kan geen informatie verkrijgen van dash. - gebruikt u de laatste versie?",
+ "protocolDowngrade": {
+ "title": "",
+ "text": ""
+ }
},
"graphs": {
"storage": {
diff --git a/public/locales/no/authentication/login.json b/public/locales/no/authentication/login.json
new file mode 100644
index 000000000..a2f47329a
--- /dev/null
+++ b/public/locales/no/authentication/login.json
@@ -0,0 +1,27 @@
+{
+ "title": "Velkommen tilbake!",
+ "text": "Skriv inn passord",
+ "form": {
+ "fields": {
+ "password": {
+ "label": "Passord",
+ "placeholder": "Ditt passord"
+ }
+ },
+ "buttons": {
+ "submit": "Logg inn"
+ }
+ },
+ "notifications": {
+ "checking": {
+ "title": "Sjekker passordet ditt",
+ "message": "Ditt passord blir sjekket..."
+ },
+ "correct": {
+ "title": "Innlogging vellykket, omdirigerer..."
+ },
+ "wrong": {
+ "title": "Passordet du skrev inn er feil, prøv igjen."
+ }
+ }
+}
diff --git a/public/locales/no/common.json b/public/locales/no/common.json
new file mode 100644
index 000000000..0a3c89969
--- /dev/null
+++ b/public/locales/no/common.json
@@ -0,0 +1,34 @@
+{
+ "save": "Lagre",
+ "about": "Info",
+ "cancel": "Avbryt",
+ "close": "Lukk",
+ "delete": "Slett",
+ "ok": "OK",
+ "edit": "Rediger",
+ "version": "Versjon",
+ "changePosition": "Endre posisjon",
+ "remove": "Fjern",
+ "removeConfirm": "Er du sikker på at du vil fjerne {{item}}?",
+ "sections": {
+ "settings": "Innstillinger",
+ "dangerZone": "Faresonen"
+ },
+ "secrets": {
+ "apiKey": "API-nøkkel",
+ "username": "Brukernavn",
+ "password": "Passord"
+ },
+ "tip": "Tips: ",
+ "time": {
+ "seconds": "sekunder",
+ "minutes": "minutter",
+ "hours": "timer"
+ },
+ "loading": "Laster inn...",
+ "breakPoints": {
+ "small": "liten",
+ "medium": "middels",
+ "large": "stor"
+ }
+}
\ No newline at end of file
diff --git a/public/locales/no/layout/element-selector/selector.json b/public/locales/no/layout/element-selector/selector.json
new file mode 100644
index 000000000..13c2fb908
--- /dev/null
+++ b/public/locales/no/layout/element-selector/selector.json
@@ -0,0 +1,11 @@
+{
+ "modal": {
+ "title": "Legg til en ny flis",
+ "text": "Fliser er det viktigste elementet i Homarr. De brukes til å vise appene og annen informasjon. Du kan legge til så mange fliser som du vil."
+ },
+ "widgetDescription": "Widgets samhandler med appene dine for å gi deg mer kontroll over applikasjonene. De krever vanligvis ekstra konfigurasjon før bruk.",
+ "goBack": "Gå tilbake til forrige steg",
+ "actionIcon": {
+ "tooltip": "Legg til en flis"
+ }
+}
diff --git a/public/locales/no/layout/header/actions/toggle-edit-mode.json b/public/locales/no/layout/header/actions/toggle-edit-mode.json
new file mode 100644
index 000000000..d7d6a2e48
--- /dev/null
+++ b/public/locales/no/layout/header/actions/toggle-edit-mode.json
@@ -0,0 +1,11 @@
+{
+ "description": "I Redigeringsmodus kan du justere fliser og konfigurere apper. Endringer lagres ikke før du avslutter Redigeringsmodus.",
+ "button": {
+ "disabled": "Gå inn i Redigeringsmodus",
+ "enabled": "Avslutt og lagre"
+ },
+ "popover": {
+ "title": "Redigeringsmodus er aktivert for <1>{{size}}1> størrelse",
+ "text": "Du kan justere og konfigurere appene nå. Endringer er ikke lagret før du avslutter redigeringsmodus"
+ }
+}
diff --git a/public/locales/no/layout/mobile/drawer.json b/public/locales/no/layout/mobile/drawer.json
new file mode 100644
index 000000000..225fe6415
--- /dev/null
+++ b/public/locales/no/layout/mobile/drawer.json
@@ -0,0 +1,3 @@
+{
+ "title": "{{position}} sidepanel"
+}
diff --git a/public/locales/no/layout/modals/about.json b/public/locales/no/layout/modals/about.json
new file mode 100644
index 000000000..f6b3b4a07
--- /dev/null
+++ b/public/locales/no/layout/modals/about.json
@@ -0,0 +1,13 @@
+{
+ "description": "Homarr er et sleek , moderne dashbord som legger alle apper og tjenester ved fingertuppene dine. Med Homarr, kan du få tilgang til og kontrollere alt på et bekvemt sted. Homarr sømløst integrerer med appene du har lagt til, gir deg verdifull informasjon og gir deg full kontroll. Installasjon er en lek, og Homarr støtter en lang rekke distribusjonsmetoder.",
+ "contact": "Har du problemer med eller spørsmål? Ta kontakt med oss!",
+ "addToDashboard": "Legg til på dashbord",
+ "metrics": {
+ "configurationSchemaVersion": "Konfigurasjonsskjema versjon",
+ "configurationsCount": "Tilgjengelige konfigurasjoner",
+ "version": "Versjon",
+ "nodeEnvironment": "Node miljø",
+ "i18n": "Lastet I18n oversettelsesnavneområder",
+ "locales": "Konfigurerte I18n-lokasjoner"
+ }
+}
\ No newline at end of file
diff --git a/public/locales/no/layout/modals/add-app.json b/public/locales/no/layout/modals/add-app.json
new file mode 100644
index 000000000..af92d50d6
--- /dev/null
+++ b/public/locales/no/layout/modals/add-app.json
@@ -0,0 +1,68 @@
+{
+ "tabs": {
+ "general": "Generelt",
+ "behaviour": "Oppførsel",
+ "network": "Nettverk",
+ "appearance": "Utseende",
+ "integration": "Integrasjon"
+ },
+ "general": {
+ "appname": {
+ "label": "Navn på app",
+ "description": "Brukes til å vise appen på dashbordet."
+ },
+ "internalAddress": {
+ "label": "Intern adresse",
+ "description": "Intern IP-adresse til appen."
+ },
+ "externalAddress": {
+ "label": "Ekstern adresse",
+ "description": "URL som vil åpnes når du klikker på appen."
+ }
+ },
+ "behaviour": {
+ "isOpeningNewTab": {
+ "label": "Åpne i ny fane",
+ "description": "Åpne appen i en ny fane i stedet for denne."
+ }
+ },
+ "network": {
+ "statusChecker": {
+ "label": "Statussjekk",
+ "description": "Sjekker om appen er online med en enkel HTTP(S) forespørsel."
+ },
+ "statusCodes": {
+ "label": "HTTP statuskoder",
+ "description": "HTTP-statuskoder som regnes som online."
+ }
+ },
+ "appearance": {
+ "icon": {
+ "label": "App ikon",
+ "description": "Ikonet som vises på dashbordet."
+ }
+ },
+ "integration": {
+ "type": {
+ "label": "Integrasjons konfigurasjon",
+ "description": "Integrasjonskonfigurasjonen som blir brukt til å koble til appen din.",
+ "placeholder": "Velg en integrasjon",
+ "defined": "Definert",
+ "undefined": "Undefined",
+ "public": "Offentlig",
+ "private": "Privat",
+ "explanationPrivate": "En privat hemmelighet sendes bare til serveren én gang. Når nettleseren har oppdatert siden, sendes den aldri igjen.",
+ "explanationPublic": "En offentlig hemmelighet vil alltid sendes til klienten og er tilgjengelig over API-et. Det bør ikke inneholde noen konfidensielle verdier som brukernavn, passord, tokens, sertifikater og lignende!"
+ },
+ "secrets": {
+ "description": "For å oppdatere en hemmelig, skriv inn en verdi og klikk på Lagre-knappen for å fjerne en hemmelighet, bruk fjern knappen.",
+ "warning": "Din legitimasjon fungerer som tilgang for dine integrasjoner, og du bør aldri dele dem med noen andre. Homarr teamet vil aldri be om legitimasjon. Sørg for å lagre og behandle hemmeligheter trygt .",
+ "clear": "Fjern hemmelighet",
+ "save": "Lagre hemmelighet",
+ "update": "Oppdater hemmelighet"
+ }
+ },
+ "validation": {
+ "popover": "Skjemaet inneholder ugyldig data. Derfor kan den ikke lagres. Vennligst løs alle problemer og klikk på denne knappen igjen for å lagre endringene dine"
+ }
+}
diff --git a/public/locales/no/layout/modals/change-position.json b/public/locales/no/layout/modals/change-position.json
new file mode 100644
index 000000000..ce60017bb
--- /dev/null
+++ b/public/locales/no/layout/modals/change-position.json
@@ -0,0 +1,8 @@
+{
+ "xPosition": "Posisjon for X akse",
+ "width": "Bredde",
+ "height": "Høyde",
+ "yPosition": "Posisjon for Y akse",
+ "zeroOrHigher": "0 eller høyere",
+ "betweenXandY": "Mellom {{min}} og {{max}}"
+}
\ No newline at end of file
diff --git a/public/locales/no/layout/modals/icon-picker.json b/public/locales/no/layout/modals/icon-picker.json
new file mode 100644
index 000000000..bfd3a8033
--- /dev/null
+++ b/public/locales/no/layout/modals/icon-picker.json
@@ -0,0 +1,7 @@
+{
+ "iconPicker": {
+ "textInputPlaceholder": "Søk noe...",
+ "searchLimitationTitle": "Begrenset til 30 resultater",
+ "searchLimitationMessage": "Søkeresultatene ble begrenset til 30 fordi det var for mange treff"
+ }
+}
\ No newline at end of file
diff --git a/public/locales/no/modules/calendar.json b/public/locales/no/modules/calendar.json
new file mode 100644
index 000000000..e0ded0fe2
--- /dev/null
+++ b/public/locales/no/modules/calendar.json
@@ -0,0 +1,18 @@
+{
+ "descriptor": {
+ "name": "Kalender",
+ "description": "Viser en kalender med kommende utgivelser, fra støttede integrasjoner.",
+ "settings": {
+ "title": "Innstillinger for Kalender widget",
+ "useSonarrv4": {
+ "label": "Bruk Sonarr v4 API"
+ },
+ "sundayStart": {
+ "label": "Start uken på søndag"
+ },
+ "radarrReleaseType": {
+ "label": "Radarr utgivelsestype"
+ }
+ }
+ }
+}
diff --git a/public/locales/no/modules/common-media-cards.json b/public/locales/no/modules/common-media-cards.json
new file mode 100644
index 000000000..23a78e936
--- /dev/null
+++ b/public/locales/no/modules/common-media-cards.json
@@ -0,0 +1,6 @@
+{
+ "buttons": {
+ "play": "Spill",
+ "request": "Forespørsel"
+ }
+}
\ No newline at end of file
diff --git a/public/locales/no/modules/common.json b/public/locales/no/modules/common.json
new file mode 100644
index 000000000..ca115f068
--- /dev/null
+++ b/public/locales/no/modules/common.json
@@ -0,0 +1,10 @@
+{
+ "settings": {
+ "label": "Innstillinger"
+ },
+ "errors": {
+ "unmappedOptions": {
+ "text": "Ubrukt parameter i konfigurasjon oppdaget {{key}}. Homarr kan ikke tolke og bruke dette parameteret. For å unngå uventet oppførsel, sikkerhetskopier din konfigurasjon og korriger konfigurasjonen."
+ }
+ }
+}
diff --git a/public/locales/no/modules/dashdot.json b/public/locales/no/modules/dashdot.json
new file mode 100644
index 000000000..7c7f752bf
--- /dev/null
+++ b/public/locales/no/modules/dashdot.json
@@ -0,0 +1,61 @@
+{
+ "descriptor": {
+ "name": "Dash.",
+ "description": "Viser grafene til en ekstern Dash. Eksempel inni av Homarr.",
+ "settings": {
+ "title": "Innstillinger for Dash. widget",
+ "cpuMultiView": {
+ "label": "CPU flerkjernevisning"
+ },
+ "storageMultiView": {
+ "label": "Lagring flerdiskvisning"
+ },
+ "useCompactView": {
+ "label": "Bruk kompakt visning"
+ },
+ "graphs": {
+ "label": "Grafer"
+ },
+ "url": {
+ "label": "Dash. URL"
+ },
+ "usePercentages": {
+ "label": "Vis prosentandel"
+ }
+ }
+ },
+ "card": {
+ "title": "Dash.",
+ "errors": {
+ "noService": "Ingen Dash.-tjeneste funnet. Vennligst legg til en Homarr dashbordet eller angi en Dash. URL i modulalternativene",
+ "noInformation": "Kan ikke hente informasjon fra dash. - kjører du den nyeste versjonen?",
+ "protocolDowngrade": {
+ "title": "Oppdaget protokollnedgradering",
+ "text": "Protokollen til Dash. instansen blir nedgradert. Dette er sikkerhetsrisiko, siden HTTP er ukryptert og angripere kan misbruke denne tilkoblingen. Kontroller at Dash. kjører på HTTPS for eller nedgraderer Homarr til HTTP (ikke anbefalt)."
+ }
+ },
+ "graphs": {
+ "storage": {
+ "title": "Lagring",
+ "label": "Lagring:"
+ },
+ "network": {
+ "title": "Nettverk",
+ "label": "Nettverk:",
+ "metrics": {
+ "download": "Ned",
+ "upload": "Opp"
+ }
+ },
+ "cpu": {
+ "title": "CPU"
+ },
+ "memory": {
+ "title": "RAM"
+ },
+ "gpu": {
+ "title": "GPU"
+ }
+ }
+ }
+}
diff --git a/public/locales/no/modules/date.json b/public/locales/no/modules/date.json
new file mode 100644
index 000000000..8f1a9d66b
--- /dev/null
+++ b/public/locales/no/modules/date.json
@@ -0,0 +1,12 @@
+{
+ "descriptor": {
+ "name": "Dato og klokkeslett",
+ "description": "Viser gjeldende dato og klokkeslett.",
+ "settings": {
+ "title": "Innstillinger for dato og klokkeslett widget",
+ "display24HourFormat": {
+ "label": "Vis 24 timers formatering"
+ }
+ }
+ }
+}
diff --git a/public/locales/no/modules/dlspeed.json b/public/locales/no/modules/dlspeed.json
new file mode 100644
index 000000000..0f175e30e
--- /dev/null
+++ b/public/locales/no/modules/dlspeed.json
@@ -0,0 +1,35 @@
+{
+ "descriptor": {
+ "name": "Nedlastingshastighet",
+ "description": "Viser nedlastingshastighet og opplastingshastighet av støttede integrasjoner."
+ },
+ "card": {
+ "table": {
+ "header": {
+ "name": "Navn",
+ "size": "Størrelse",
+ "download": "Ned",
+ "upload": "Opp",
+ "estimatedTimeOfArrival": "Gjenstående tid (estimat)",
+ "progress": "Fremgang"
+ },
+ "body": {
+ "nothingFound": "Ingen torrenter funnet"
+ }
+ },
+ "lineChart": {
+ "title": "Gjeldende nedlastingshastighet",
+ "download": "Nedlasting: {{download}}",
+ "upload": "Opplasting: {{upload}}",
+ "timeSpan": "{{seconds}} sekunder siden",
+ "totalDownload": "Nedlasting: {{download}}/s",
+ "totalUpload": "Opplasting: {{upload}}/s"
+ },
+ "errors": {
+ "noDownloadClients": {
+ "title": "Ingen støttede nedlastingsklienter funnet!",
+ "text": "Legg til en nedlastingstjeneste for å se pågående nedlastinger"
+ }
+ }
+ }
+}
diff --git a/public/locales/no/modules/docker.json b/public/locales/no/modules/docker.json
new file mode 100644
index 000000000..766a62b60
--- /dev/null
+++ b/public/locales/no/modules/docker.json
@@ -0,0 +1,83 @@
+{
+ "descriptor": {
+ "name": "Docker",
+ "description": "Lar deg enkelt se og administrere alle dine Docker containere."
+ },
+ "search": {
+ "placeholder": "Søk etter container eller imagenavn"
+ },
+ "table": {
+ "header": {
+ "name": "Navn",
+ "image": "Image",
+ "ports": "Porter",
+ "state": "Status"
+ },
+ "body": {
+ "portCollapse": "{{ports}} flere"
+ },
+ "states": {
+ "running": "Kjører",
+ "created": "Opprettet",
+ "stopped": "Stoppet",
+ "unknown": "Ukjent"
+ }
+ },
+ "actionBar": {
+ "addService": {
+ "title": "Legg til app",
+ "message": "Legg til app i Homarr"
+ },
+ "restart": {
+ "title": "Omstart"
+ },
+ "stop": {
+ "title": "Stopp"
+ },
+ "start": {
+ "title": "Start"
+ },
+ "refreshData": {
+ "title": "Oppdater data"
+ },
+ "remove": {
+ "title": "Fjern"
+ },
+ "addToHomarr": {
+ "title": "Legg til i Homarr"
+ }
+ },
+ "actions": {
+ "start": {
+ "start": "Starter",
+ "end": "Startet"
+ },
+ "stop": {
+ "start": "Stopper",
+ "end": "Stoppet"
+ },
+ "restart": {
+ "start": "Starter på nytt",
+ "end": "Startet på nytt"
+ },
+ "remove": {
+ "start": "Fjerner",
+ "end": "Fjernet"
+ }
+ },
+ "errors": {
+ "integrationFailed": {
+ "title": "Docker-integrasjonen mislyktes",
+ "message": "Har du glemt å koble til Docker socket?"
+ },
+ "unknownError": {
+ "title": "Det oppstod en feil"
+ },
+ "oneServiceAtATime": {
+ "title": "Legg bare til en app eller en tjeneste om gangen!"
+ }
+ },
+ "actionIcon": {
+ "tooltip": "Docker"
+ }
+}
diff --git a/public/locales/no/modules/overseerr.json b/public/locales/no/modules/overseerr.json
new file mode 100644
index 000000000..754d95992
--- /dev/null
+++ b/public/locales/no/modules/overseerr.json
@@ -0,0 +1,30 @@
+{
+ "descriptor": {
+ "name": "Overseerr",
+ "description": "Lar deg søke og legge til media fra Overseerr eller Jellyseerr."
+ },
+ "popup": {
+ "item": {
+ "buttons": {
+ "askFor": "Be om {{title}}",
+ "cancel": "Avbryt",
+ "request": "Forespørsel"
+ },
+ "alerts": {
+ "automaticApproval": {
+ "title": "Bruker API-nøkkel",
+ "text": "Denne forespørselen blir automatisk godkjent"
+ }
+ }
+ },
+ "seasonSelector": {
+ "caption": "Marker sesongen du vil laste ned",
+ "table": {
+ "header": {
+ "season": "Sesong",
+ "numberOfEpisodes": "Antall episoder"
+ }
+ }
+ }
+ }
+}
diff --git a/public/locales/no/modules/ping.json b/public/locales/no/modules/ping.json
new file mode 100644
index 000000000..da858b28e
--- /dev/null
+++ b/public/locales/no/modules/ping.json
@@ -0,0 +1,11 @@
+{
+ "descriptor": {
+ "name": "Ping",
+ "description": "Viser en statusindikator avhengig av HTTP responskoden mottatt fra en URL."
+ },
+ "states": {
+ "online": "Online {{response}}",
+ "offline": "Frakoblet {{response}}",
+ "loading": "Laster inn..."
+ }
+}
diff --git a/public/locales/no/modules/search.json b/public/locales/no/modules/search.json
new file mode 100644
index 000000000..8a4417f15
--- /dev/null
+++ b/public/locales/no/modules/search.json
@@ -0,0 +1,30 @@
+{
+ "descriptor": {
+ "name": "Søkefelt",
+ "description": "Et søkefelt som lar deg søke i din egendefinerte søkemotor, Youtube, og støttede integrasjoner."
+ },
+ "input": {
+ "placeholder": "Søk på nettet..."
+ },
+ "switched-to": "Endret til",
+ "searchEngines": {
+ "search": {
+ "name": "Web",
+ "description": "Søk..."
+ },
+ "youtube": {
+ "name": "Youtube",
+ "description": "Søk på Youtube"
+ },
+ "torrents": {
+ "name": "Torrenter",
+ "description": "Søk etter torrents"
+ },
+ "overseerr": {
+ "name": "Overseerr",
+ "description": "Søk etter filmer og TV-serier på Overseerr"
+ }
+ },
+ "tip": "Du kan velge søkefeltet med snarveien ",
+ "switchedSearchEngine": "Byttet til å søke med {{searchEngine}}"
+}
diff --git a/public/locales/no/modules/torrents-status.json b/public/locales/no/modules/torrents-status.json
new file mode 100644
index 000000000..ac374403a
--- /dev/null
+++ b/public/locales/no/modules/torrents-status.json
@@ -0,0 +1,72 @@
+{
+ "descriptor": {
+ "name": "Torrent",
+ "description": "Viser en liste over torrenter fra støttede Torrent-klienter.",
+ "settings": {
+ "title": "Innstillinger for Torrent widget",
+ "refreshInterval": {
+ "label": "Oppdaterings intervall (i sekunder)"
+ },
+ "displayCompletedTorrents": {
+ "label": "Vis fullførte torrenter"
+ },
+ "displayStaleTorrents": {
+ "label": "Vis gamle torrenter"
+ }
+ }
+ },
+ "card": {
+ "footer": {
+ "error": "Feil",
+ "lastUpdated": "Sist oppdatert for {{time}} siden"
+ },
+ "table": {
+ "header": {
+ "name": "Navn",
+ "size": "Størrelse",
+ "download": "Ned",
+ "upload": "Opp",
+ "estimatedTimeOfArrival": "Gjenstående tid (estimat)",
+ "progress": "Fremgang"
+ },
+ "item": {
+ "text": "Styrt med {{appName}}, {{ratio}} forhold"
+ },
+ "body": {
+ "nothingFound": "Ingen torrenter funnet"
+ }
+ },
+ "lineChart": {
+ "title": "Gjeldende nedlastingshastighet",
+ "download": "Nedlasting: {{download}}",
+ "upload": "Opplasting: {{upload}}",
+ "timeSpan": "{{seconds}} sekunder siden",
+ "totalDownload": "Nedlasting: {{download}}/s",
+ "totalUpload": "Opplasting: {{upload}}/s"
+ },
+ "errors": {
+ "noDownloadClients": {
+ "title": "Ingen støttede Torrent-klienter funnet!",
+ "text": "Legg til en støttet Torrent-klient for å se de nåværende nedlastingene"
+ },
+ "generic": {
+ "title": "En uventet feil har oppstått",
+ "text": "Homarr kunne ikke kommunisere med dine Torrent-klienter. Kontroller konfigurasjonen"
+ }
+ },
+ "loading": {
+ "title": "Laster inn..."
+ },
+ "popover": {
+ "introductionPrefix": "Administrert av",
+ "metrics": {
+ "queuePosition": "Kø posisjon - {{position}}",
+ "progress": "Fremgang - {{progress}}%",
+ "totalSelectedSize": "Totalt - {{totalSize}}",
+ "state": "Status – {{state}}",
+ "ratio": "Forhold -",
+ "completed": "Fullført"
+ }
+ }
+ }
+}
diff --git a/public/locales/no/modules/usenet.json b/public/locales/no/modules/usenet.json
new file mode 100644
index 000000000..c034bbac1
--- /dev/null
+++ b/public/locales/no/modules/usenet.json
@@ -0,0 +1,49 @@
+{
+ "descriptor": {
+ "name": "Usenet",
+ "description": "Lar deg se og administrere din Usenet-forekomst."
+ },
+ "card": {
+ "errors": {
+ "noDownloadClients": {
+ "title": "Ingen støttede nedlastingsklienter funnet!",
+ "text": "Legg til en støttet Usenet Nedlastings-klient for å se de gjeldende nedlastingene"
+ }
+ }
+ },
+ "tabs": {
+ "queue": "Kø",
+ "history": "Logg"
+ },
+ "info": {
+ "sizeLeft": "Størrelse til venstre",
+ "paused": "Pauset"
+ },
+ "queue": {
+ "header": {
+ "name": "Navn",
+ "size": "Størrelse",
+ "eta": "Gjenstående tid (estimat)",
+ "progress": "Fremgang"
+ },
+ "empty": "Tøm",
+ "error": {
+ "title": "Feil",
+ "message": "Det oppstod en feil"
+ },
+ "paused": "Pauset"
+ },
+ "history": {
+ "header": {
+ "name": "Navn",
+ "size": "Størrelse",
+ "duration": "Varighet"
+ },
+ "empty": "Tøm",
+ "error": {
+ "title": "Feil",
+ "message": "Feil under lasting av historikk"
+ },
+ "paused": "Pauset"
+ }
+}
diff --git a/public/locales/no/modules/weather.json b/public/locales/no/modules/weather.json
new file mode 100644
index 000000000..b884e85d6
--- /dev/null
+++ b/public/locales/no/modules/weather.json
@@ -0,0 +1,33 @@
+{
+ "descriptor": {
+ "name": "Vær",
+ "description": "Viser gjeldende værinformasjon for en angitt plassering.",
+ "settings": {
+ "title": "Innstillinger for vær widget",
+ "displayInFahrenheit": {
+ "label": "Vis i Fahrenheit"
+ },
+ "location": {
+ "label": "Vær plassering"
+ }
+ }
+ },
+ "card": {
+ "weatherDescriptions": {
+ "clear": "Tøm",
+ "mainlyClear": "Klar himmel",
+ "fog": "Tåke",
+ "drizzle": "Yr",
+ "freezingDrizzle": "Underkjølt yr",
+ "rain": "Regn",
+ "freezingRain": "Underkjølt regn",
+ "snowFall": "Snø",
+ "snowGrains": "Snø korn",
+ "rainShowers": "Regnbyger",
+ "snowShowers": "Snøbyger",
+ "thunderstorm": "Tordenvær",
+ "thunderstormWithHail": "Tordenvær med hagl",
+ "unknown": "Ukjent"
+ }
+ }
+}
diff --git a/public/locales/no/settings/common.json b/public/locales/no/settings/common.json
new file mode 100644
index 000000000..67820677c
--- /dev/null
+++ b/public/locales/no/settings/common.json
@@ -0,0 +1,38 @@
+{
+ "title": "Innstillinger",
+ "tooltip": "Innstillinger",
+ "tabs": {
+ "common": "Generelt",
+ "customizations": "Tilpasninger"
+ },
+ "tips": {
+ "configTip": "Last opp konfigurasjonsfilen ved å dra og slippe den på siden!"
+ },
+ "credits": {
+ "madeWithLove": "Laget med ❤️ av @",
+ "thirdPartyContent": "Se tredjepartsinnhold",
+ "thirdPartyContentTable": {
+ "dependencyName": "Avhengighet",
+ "dependencyVersion": "Versjon"
+ }
+ },
+ "grow": "Forstørr rutenett (ta all plass)",
+ "layout": {
+ "preview": {
+ "title": "Forhåndsvis",
+ "subtitle": "Endringer lagres automatisk"
+ },
+ "divider": "Alternativer for layout",
+ "main": "Hoved",
+ "sidebar": "Sidepanel",
+ "cannotturnoff": "Kan ikke slås av",
+ "dashboardlayout": "Dashbord layout",
+ "enablersidebar": "Aktiver høyre sidepanel",
+ "enablelsidebar": "Aktiver venstre sidepanel",
+ "enablesearchbar": "Aktiver søkefelt",
+ "enabledocker": "Aktiver dockerintegrering",
+ "enableping": "Aktiver ping",
+ "enablelsidebardesc": "Valgfritt. Kan kun brukes for apper og integrasjoner",
+ "enablersidebardesc": "Valgfritt. Kan kun brukes for apper og integrasjoner"
+ }
+}
diff --git a/public/locales/no/settings/customization/app-width.json b/public/locales/no/settings/customization/app-width.json
new file mode 100644
index 000000000..e2da7dd11
--- /dev/null
+++ b/public/locales/no/settings/customization/app-width.json
@@ -0,0 +1,3 @@
+{
+ "label": "App bredde"
+}
\ No newline at end of file
diff --git a/public/locales/no/settings/customization/color-selector.json b/public/locales/no/settings/customization/color-selector.json
new file mode 100644
index 000000000..8f1505005
--- /dev/null
+++ b/public/locales/no/settings/customization/color-selector.json
@@ -0,0 +1,4 @@
+{
+ "colors": "Farger",
+ "suffix": "{{color}} farge"
+}
\ No newline at end of file
diff --git a/public/locales/no/settings/customization/general.json b/public/locales/no/settings/customization/general.json
new file mode 100644
index 000000000..01370b40f
--- /dev/null
+++ b/public/locales/no/settings/customization/general.json
@@ -0,0 +1,21 @@
+{
+ "text": "Med tilpasninger kan du konfigurere og justere din opplevelse med Homarr etter dine preferanser.",
+ "accordeon": {
+ "layout": {
+ "name": "Oppsett",
+ "description": "Aktiver og deaktiver elementer i headeren din og dashbord fliser"
+ },
+ "gridstack": {
+ "name": "Gridstack",
+ "description": "Tilpass oppførselen og kolonnene i ditt dashbordområde"
+ },
+ "pageMetadata": {
+ "name": "Side metadata",
+ "description": "Juster titler, logo og PWA"
+ },
+ "appereance": {
+ "name": "Utseende",
+ "description": "Tilpass både bakgrunn, farger og apper"
+ }
+ }
+}
\ No newline at end of file
diff --git a/public/locales/no/settings/customization/gridstack.json b/public/locales/no/settings/customization/gridstack.json
new file mode 100644
index 000000000..94d2bcdf2
--- /dev/null
+++ b/public/locales/no/settings/customization/gridstack.json
@@ -0,0 +1,10 @@
+{
+ "columnsCount": {
+ "labelPreset": "Kolonner i {{size}} størrelse",
+ "descriptionPreset": "Antall kolonner når skjermen er mindre enn {{pixels}} piksler bred",
+ "descriptionExceedsPreset": "Antall kolonner når størrelsen på skjermen overstiger {{pixels}} piksler"
+ },
+ "unsavedChanges": "Du har ulagrede endringer. Klikk på Ta i bruk endringer nedenfor for å bruke og lagre.",
+ "applyChanges": "Ta i bruk endringer",
+ "defaultValues": "Standardverdi"
+}
\ No newline at end of file
diff --git a/public/locales/no/settings/customization/opacity-selector.json b/public/locales/no/settings/customization/opacity-selector.json
new file mode 100644
index 000000000..2f6d4ac49
--- /dev/null
+++ b/public/locales/no/settings/customization/opacity-selector.json
@@ -0,0 +1,3 @@
+{
+ "label": "App Gjennomsiktighet"
+}
\ No newline at end of file
diff --git a/public/locales/no/settings/customization/page-appearance.json b/public/locales/no/settings/customization/page-appearance.json
new file mode 100644
index 000000000..b71148926
--- /dev/null
+++ b/public/locales/no/settings/customization/page-appearance.json
@@ -0,0 +1,30 @@
+{
+ "pageTitle": {
+ "label": "Sidetittel",
+ "description": "Tittel på dashbordet øverst til venstre"
+ },
+ "metaTitle": {
+ "label": "Meta tittel",
+ "description": "Tittelen som vises som fanenavn"
+ },
+ "logo": {
+ "label": "Logo",
+ "description": "Dashbord logoen øverst til venstre"
+ },
+ "favicon": {
+ "label": "Favicon",
+ "description": "Ikonet som brukes foran fanenavnet"
+ },
+ "background": {
+ "label": "Bakgrunn"
+ },
+ "customCSS": {
+ "label": "Egendefinert CSS",
+ "description": "Tilpass alle elementer på dashbordet, anbefales bare for erfarne brukere",
+ "placeholder": "Egendefinert CSS vil bli brukt sist",
+ "applying": "Tar i bruk CSS..."
+ },
+ "buttons": {
+ "submit": "Legg til"
+ }
+}
diff --git a/public/locales/no/settings/customization/shade-selector.json b/public/locales/no/settings/customization/shade-selector.json
new file mode 100644
index 000000000..d969294ba
--- /dev/null
+++ b/public/locales/no/settings/customization/shade-selector.json
@@ -0,0 +1,3 @@
+{
+ "label": "Skygge"
+}
\ No newline at end of file
diff --git a/public/locales/no/settings/general/color-schema.json b/public/locales/no/settings/general/color-schema.json
new file mode 100644
index 000000000..7c6d0c9e2
--- /dev/null
+++ b/public/locales/no/settings/general/color-schema.json
@@ -0,0 +1,3 @@
+{
+ "label": "Bytt til {{scheme}} -modus"
+}
\ No newline at end of file
diff --git a/public/locales/no/settings/general/config-changer.json b/public/locales/no/settings/general/config-changer.json
new file mode 100644
index 000000000..7cb25eb33
--- /dev/null
+++ b/public/locales/no/settings/general/config-changer.json
@@ -0,0 +1,86 @@
+{
+ "configSelect": {
+ "label": "Konfigurasjonsendrer",
+ "description": "{{configCount}} konfigurasjoner er tilgjengelige",
+ "loadingNew": "Laster inn din konfigurasjon...",
+ "pleaseWait": "Vennligst vent til den nye konfigurasjonen er lastet!"
+ },
+ "modal": {
+ "copy": {
+ "title": "Velg navnet på den nye konfigurasjonen",
+ "form": {
+ "configName": {
+ "label": "Navn på konfigurasjon",
+ "validation": {
+ "required": "Navn på konfigurasjon er påkrevd",
+ "notUnique": "Navnet på konfigurasjonen er allerede i bruk"
+ },
+ "placeholder": "Ditt nye konfigurasjonsnavn"
+ },
+ "submitButton": "Bekreft"
+ },
+ "events": {
+ "configSaved": {
+ "title": "Konfigurasjon lagret",
+ "message": "Konfigurasjon lagret som {{configName}}"
+ },
+ "configCopied": {
+ "title": "Konfigurasjon kopiert",
+ "message": "Konfigurasjon kopiert som {{configName}}"
+ },
+ "configNotCopied": {
+ "title": "Kan ikke kopiere konfigurasjon",
+ "message": "Din konfigurasjon ble ikke kopiert som {{configName}}"
+ }
+ }
+ },
+ "confirmDeletion": {
+ "title": "Bekreft sletting av konfigurasjonen",
+ "warningText": "Du er i ferd med å slette '{{configName}} '",
+ "text": "Vær oppmerksom på at slettingen ikke er invertikal, og at dataene dine vil gå tapt permanent. Når du klikker på denne knappen, vil filen slettes permanent fra disken. Pass på å opprette en tilstrekkelig sikkerhetskopi av konfigurasjonen.",
+ "buttons": {
+ "confirm": "Ja, slett '{{configName}} '"
+ }
+ }
+ },
+ "buttons": {
+ "download": "Last ned konfigurasjon",
+ "delete": {
+ "text": "Slett konfigurasjon",
+ "notifications": {
+ "deleted": {
+ "title": "Konfigurasjon slettet",
+ "message": "Konfigurasjon slettet"
+ },
+ "deleteFailed": {
+ "title": "Sletting av konfigurasjon mislyktes",
+ "message": "Sletting av konfigurasjon mislyktes"
+ },
+ "deleteFailedDefaultConfig": {
+ "title": "Standard konfigurasjon kan ikke slettes",
+ "message": "Konfigurasjonen ble ikke slettet fra filsystemet"
+ }
+ }
+ },
+ "saveCopy": "Lagre en kopi"
+ },
+ "dropzone": {
+ "notifications": {
+ "invalidConfig": {
+ "title": "Kan ikke laste konfigurasjonen",
+ "message": "Kunne ikke laste inn config. Ugyldig JSON-format."
+ },
+ "loadedSuccessfully": {
+ "title": "Konfigurasjon {{configName}} er lastet inn"
+ }
+ },
+ "accept": {
+ "title": "Konfigurasjon Opplasting",
+ "text": "Dra filer her for å laste opp en config. Støtter kun JSON-filer."
+ },
+ "reject": {
+ "title": "Dra og slipp opplasting avvist",
+ "text": "Dette filformatet støttes ikke. Last bare opp JSON-filer."
+ }
+ }
+}
diff --git a/public/locales/no/settings/general/internationalization.json b/public/locales/no/settings/general/internationalization.json
new file mode 100644
index 000000000..0a479d3fe
--- /dev/null
+++ b/public/locales/no/settings/general/internationalization.json
@@ -0,0 +1,3 @@
+{
+ "label": "Språk"
+}
\ No newline at end of file
diff --git a/public/locales/no/settings/general/search-engine.json b/public/locales/no/settings/general/search-engine.json
new file mode 100644
index 000000000..a896ed864
--- /dev/null
+++ b/public/locales/no/settings/general/search-engine.json
@@ -0,0 +1,19 @@
+{
+ "title": "Søkemotor",
+ "configurationName": "Søkemotor konfigurasjon",
+ "tips": {
+ "generalTip": "Det finnes flere prefikser du kan bruke! Å legge til disse før spørringen vil filtrere resultatene. !s (Web), !t (Torrents), !y (YouTube), og !m (Media).",
+ "placeholderTip": "%s kan brukes som plassholder for spørringen."
+ },
+ "customEngine": {
+ "title": "Egendefinert søkemotor",
+ "label": "SpørringsURL",
+ "placeholder": "Egendefinert spørrings URL"
+ },
+ "searchNewTab": {
+ "label": "Åpne søkeresultater i ny fane"
+ },
+ "searchEnabled": {
+ "label": "Søk aktivert"
+ }
+}
diff --git a/public/locales/no/settings/general/theme-selector.json b/public/locales/no/settings/general/theme-selector.json
new file mode 100644
index 000000000..de3a598ab
--- /dev/null
+++ b/public/locales/no/settings/general/theme-selector.json
@@ -0,0 +1,3 @@
+{
+ "label": "Bytt til {{theme}} -modus"
+}
\ No newline at end of file
diff --git a/public/locales/no/settings/general/widget-positions.json b/public/locales/no/settings/general/widget-positions.json
new file mode 100644
index 000000000..6b39c9c20
--- /dev/null
+++ b/public/locales/no/settings/general/widget-positions.json
@@ -0,0 +1,3 @@
+{
+ "label": "Plasser widgets til venstre"
+}
diff --git a/public/locales/pl/modules/dashdot.json b/public/locales/pl/modules/dashdot.json
index 9f9b690eb..766f4eaf4 100644
--- a/public/locales/pl/modules/dashdot.json
+++ b/public/locales/pl/modules/dashdot.json
@@ -28,7 +28,11 @@
"title": "Dash.",
"errors": {
"noService": "Nie znaleziono usługi Dash. Proszę dodać ją do pulpitu Homarra lub ustawić adres URL usługi Dash. w opcjach modułu",
- "noInformation": "Nie można uzyskać informacji z dash. - używasz najnowszej wersji?"
+ "noInformation": "Nie można uzyskać informacji z dash. - używasz najnowszej wersji?",
+ "protocolDowngrade": {
+ "title": "",
+ "text": ""
+ }
},
"graphs": {
"storage": {
diff --git a/public/locales/pt/modules/dashdot.json b/public/locales/pt/modules/dashdot.json
index fec0b1751..69d8cdda8 100644
--- a/public/locales/pt/modules/dashdot.json
+++ b/public/locales/pt/modules/dashdot.json
@@ -28,7 +28,11 @@
"title": "Dash.",
"errors": {
"noService": "Nenhum serviço Dash. encontrado. Por favor, adicione um ao seu painel Homarr ou defina uma URL para o Dash. nas opções do módulo",
- "noInformation": "Não é possível obter informações do Dash. Você está executando a versão mais recente?"
+ "noInformation": "Não é possível obter informações do Dash. Você está executando a versão mais recente?",
+ "protocolDowngrade": {
+ "title": "",
+ "text": ""
+ }
},
"graphs": {
"storage": {
diff --git a/public/locales/ru/modules/dashdot.json b/public/locales/ru/modules/dashdot.json
index 7d281dcb5..6f5b5783f 100644
--- a/public/locales/ru/modules/dashdot.json
+++ b/public/locales/ru/modules/dashdot.json
@@ -28,7 +28,11 @@
"title": "Dash.",
"errors": {
"noService": "Не найдено ни одной службы Dash. Пожалуйста, добавьте его на панель Homarr или задайте URL-адрес Dash. в настройках модуля",
- "noInformation": "Не удается получить информацию из Dash. - Вы используете последнюю версию?"
+ "noInformation": "Не удается получить информацию из Dash. - Вы используете последнюю версию?",
+ "protocolDowngrade": {
+ "title": "Обнаружено понижение версии протокола соединения",
+ "text": "Понижение версии протокола соединения с Dash. Это является угрозой безопасности, так как протокол HTTP не зашифрован и злоумышленники могут перехватить данное соединение. Убедитесь, что Dash. работает также и на протоколе HTTPS, или переведите Homarr на HTTP (не рекомендуется)."
+ }
},
"graphs": {
"storage": {
diff --git a/public/locales/ru/settings/common.json b/public/locales/ru/settings/common.json
index aa35f78f4..29c10d855 100644
--- a/public/locales/ru/settings/common.json
+++ b/public/locales/ru/settings/common.json
@@ -22,7 +22,7 @@
"title": "Предпросмотр",
"subtitle": "Изменения будут сохранены автоматически"
},
- "divider": "",
+ "divider": "Параметры макета",
"main": "Главная",
"sidebar": "Боковая панель",
"cannotturnoff": "Невозможно отключить",
diff --git a/public/locales/ru/settings/customization/general.json b/public/locales/ru/settings/customization/general.json
index e8b397967..172f0d0dc 100644
--- a/public/locales/ru/settings/customization/general.json
+++ b/public/locales/ru/settings/customization/general.json
@@ -1,9 +1,9 @@
{
- "text": "",
+ "text": "Настройки позволяют вам настроить и скорректировать свой опыт работы с Homarr в соответствии с вашими предпочтениями.",
"accordeon": {
"layout": {
- "name": "",
- "description": ""
+ "name": "Макет",
+ "description": "Включение и отключение элементов в заголовке и на панели"
},
"gridstack": {
"name": "",
diff --git a/public/locales/ru/settings/customization/page-appearance.json b/public/locales/ru/settings/customization/page-appearance.json
index 9143963e8..d4637e6de 100644
--- a/public/locales/ru/settings/customization/page-appearance.json
+++ b/public/locales/ru/settings/customization/page-appearance.json
@@ -5,7 +5,7 @@
},
"metaTitle": {
"label": "Мета-заголовок",
- "description": "Заголовок, отображаемый в качестве имени вашей вкладки"
+ "description": "Заголовок, который отображается как имя вкладки"
},
"logo": {
"label": "Логотип",
@@ -13,16 +13,16 @@
},
"favicon": {
"label": "Иконка",
- "description": "Иконка, отображаемая во вкладке перед названием страницы"
+ "description": "Иконка, которая отображается во вкладке перед названием страницы"
},
"background": {
"label": "Фон"
},
"customCSS": {
"label": "Пользовательский CSS",
- "description": "",
+ "description": "Настройте все элементы панели, рекомендуется только для опытных пользователей",
"placeholder": "Пользовательский CSS будет применяться в последнюю очередь",
- "applying": ""
+ "applying": "Применение CSS..."
},
"buttons": {
"submit": "Подтвердить"
diff --git a/public/locales/sk/authentication/login.json b/public/locales/sk/authentication/login.json
new file mode 100644
index 000000000..3e0e2bdba
--- /dev/null
+++ b/public/locales/sk/authentication/login.json
@@ -0,0 +1,27 @@
+{
+ "title": "Vitaj späť!",
+ "text": "Prosím zadajte heslo",
+ "form": {
+ "fields": {
+ "password": {
+ "label": "Heslo",
+ "placeholder": "Tvoje heslo"
+ }
+ },
+ "buttons": {
+ "submit": "Prihlásiť sa"
+ }
+ },
+ "notifications": {
+ "checking": {
+ "title": "Kontrola hesla",
+ "message": "Vaše heslo sa kontroluje..."
+ },
+ "correct": {
+ "title": "Prihlásenie bolo úspešné, prebieha presmerovanie..."
+ },
+ "wrong": {
+ "title": "Zadané heslo je nesprávne, skúste to znova."
+ }
+ }
+}
diff --git a/public/locales/sk/common.json b/public/locales/sk/common.json
new file mode 100644
index 000000000..04ff7af62
--- /dev/null
+++ b/public/locales/sk/common.json
@@ -0,0 +1,34 @@
+{
+ "save": "Uložiť",
+ "about": "O aplikácii",
+ "cancel": "Zrušiť",
+ "close": "Zatvoriť",
+ "delete": "Vymazať",
+ "ok": "OK",
+ "edit": "Upraviť",
+ "version": "Verzia",
+ "changePosition": "Zmeniť pozíciu",
+ "remove": "Odstrániť",
+ "removeConfirm": "Ste si istý ze chcete odstrániť {{item}} ?",
+ "sections": {
+ "settings": "Nastavenia",
+ "dangerZone": "Nebezpečná zóna"
+ },
+ "secrets": {
+ "apiKey": "Api kľúč",
+ "username": "Používateľské meno",
+ "password": "Heslo"
+ },
+ "tip": "Tip: ",
+ "time": {
+ "seconds": "sekundy",
+ "minutes": "minúty",
+ "hours": "hodiny"
+ },
+ "loading": "Nahrávam...",
+ "breakPoints": {
+ "small": "malý",
+ "medium": "stredný",
+ "large": "veľký"
+ }
+}
\ No newline at end of file
diff --git a/public/locales/sk/layout/element-selector/selector.json b/public/locales/sk/layout/element-selector/selector.json
new file mode 100644
index 000000000..b838e36e1
--- /dev/null
+++ b/public/locales/sk/layout/element-selector/selector.json
@@ -0,0 +1,11 @@
+{
+ "modal": {
+ "title": "Pridajte novú dlaždicu",
+ "text": "Dlaždice sú hlavným prvkom Homarr. Používajú sa na zobrazenie vašich aplikácií a ďalších informácií. Môžete pridať toľko dlaždíc, koľko chcete."
+ },
+ "widgetDescription": "Mini aplikácie spolupracujú s vašimi aplikáciami, aby vám poskytli väčšiu kontrolu nad vašimi aplikáciami. Pred použitím zvyčajne vyžadujú dodatočnú konfiguráciu.",
+ "goBack": "Vráťte sa na predchádzajúci krok",
+ "actionIcon": {
+ "tooltip": "Pridajte dlaždicu"
+ }
+}
diff --git a/public/locales/sk/layout/header/actions/toggle-edit-mode.json b/public/locales/sk/layout/header/actions/toggle-edit-mode.json
new file mode 100644
index 000000000..8e3f2b94f
--- /dev/null
+++ b/public/locales/sk/layout/header/actions/toggle-edit-mode.json
@@ -0,0 +1,11 @@
+{
+ "description": "V režime úprav môžete upravovať dlaždice a konfigurovať aplikácie. Zmeny sa neuložia, kým neukončíte režim úprav.",
+ "button": {
+ "disabled": "Vstúpte do režimu úprav",
+ "enabled": "Ukončiť a uložiť"
+ },
+ "popover": {
+ "title": "Režim úprav je povolený pre veľkosť <1>{{size}}1>",
+ "text": "Teraz môžete svoje aplikácie upravovať a konfigurovať. Zmeny sa neuložia , kým neukončíte režim úprav"
+ }
+}
diff --git a/public/locales/sk/layout/mobile/drawer.json b/public/locales/sk/layout/mobile/drawer.json
new file mode 100644
index 000000000..1c5c99ae5
--- /dev/null
+++ b/public/locales/sk/layout/mobile/drawer.json
@@ -0,0 +1,3 @@
+{
+ "title": "{{position}} bočný panel"
+}
diff --git a/public/locales/sk/layout/modals/about.json b/public/locales/sk/layout/modals/about.json
new file mode 100644
index 000000000..a1c1bfb64
--- /dev/null
+++ b/public/locales/sk/layout/modals/about.json
@@ -0,0 +1,13 @@
+{
+ "description": "Homarr je elegantný , moderný prístrojový panel, ktorý vám poskytne všetky aplikácie a služby na dosah ruky. Pomocou aplikácie Homarr môžete mať prístup ku všetkému a ovládať ho na jednom pohodlnom mieste. Homarr sa bezproblémovo integruje s aplikáciami, ktoré ste pridali, poskytuje vám cenné informácie a umožňuje vám úplnú kontrolu. Inštalácia je jednoduchá a aplikácia Homarr podporuje širokú škálu metód nasadenia.",
+ "contact": "Máte problémy alebo otázky? Spojte sa s nami!",
+ "addToDashboard": "Pridať na prístrojovú dosku",
+ "metrics": {
+ "configurationSchemaVersion": "Verzia konfiguračnej schémy",
+ "configurationsCount": "Dostupné konfigurácie",
+ "version": "Verzia",
+ "nodeEnvironment": "Node prostredie",
+ "i18n": "Načítané prekladové priestory I18n",
+ "locales": "Nakonfigurované lokality I18n"
+ }
+}
\ No newline at end of file
diff --git a/public/locales/sk/layout/modals/add-app.json b/public/locales/sk/layout/modals/add-app.json
new file mode 100644
index 000000000..0620b249f
--- /dev/null
+++ b/public/locales/sk/layout/modals/add-app.json
@@ -0,0 +1,68 @@
+{
+ "tabs": {
+ "general": "Všeobecné",
+ "behaviour": "Správanie",
+ "network": "Sieť",
+ "appearance": "Vzhľad",
+ "integration": "Integrácia"
+ },
+ "general": {
+ "appname": {
+ "label": "Názov aplikácie",
+ "description": "Používa sa na zobrazenie aplikácie na palubnej doske."
+ },
+ "internalAddress": {
+ "label": "Interná adresa",
+ "description": "Interná IP adresa aplikácie."
+ },
+ "externalAddress": {
+ "label": "Externá adresa",
+ "description": "URL, ktorá sa otvorí po kliknutí na aplikáciu."
+ }
+ },
+ "behaviour": {
+ "isOpeningNewTab": {
+ "label": "Otvoriť na novej karte",
+ "description": "Otvorenie aplikácie na novej karte namiesto aktuálnej."
+ }
+ },
+ "network": {
+ "statusChecker": {
+ "label": "Kontrola stavu",
+ "description": "Pomocou jednoduchej požiadavky HTTP skontroluje, či je vaša aplikácia online."
+ },
+ "statusCodes": {
+ "label": "Stavové kódy HTTP",
+ "description": "Stavové kódy HTTP, ktoré sa považujú za online."
+ }
+ },
+ "appearance": {
+ "icon": {
+ "label": "Ikona aplikácie",
+ "description": "Ikona, ktorá sa zobrazí na prístrojovej doske."
+ }
+ },
+ "integration": {
+ "type": {
+ "label": "Konfigurácia integrácií",
+ "description": "Konfigurácia integrácie, ktorá sa použije na pripojenie k vašej aplikácii.",
+ "placeholder": "Výber integrácie",
+ "defined": "Definované",
+ "undefined": "Nedefinované",
+ "public": "Verejné",
+ "private": "Súkromné",
+ "explanationPrivate": "Súkromné tajomstvo sa odošle na server iba raz. Po obnovení stránky prehliadačom sa už nikdy neodošle.",
+ "explanationPublic": "Verejné tajomstvo sa vždy odošle klientovi a je prístupné cez API. Nemalo by obsahovať žiadne dôverné hodnoty, ako sú používateľské mená, heslá, tokeny, certifikáty a podobne!"
+ },
+ "secrets": {
+ "description": "Ak chcete aktualizovať tajomstvo, zadajte hodnotu a kliknite na tlačidlo Uložiť. Ak chcete odstrániť tajomstvo, použite tlačidlo vymazať.",
+ "warning": "Vaše poverovacie údaje slúžia ako prístupové údaje pre vaše integrácie a nikdy by ste ich nemali zdieľať s nikým iným. Tím Homarr vás nikdy nebude žiadať o prístupové údaje. Dbajte na to, aby ste svoje tajné údaje bezpečne uchovávali a spravovali .",
+ "clear": "Vymazať tajomstvo",
+ "save": "Uložiť tajomstvo",
+ "update": "Aktualizovať tajomstvo"
+ }
+ },
+ "validation": {
+ "popover": "Váš formulár obsahuje neplatné údaje. Preto ho nemožno uložiť. Vyriešte všetky problémy a znovu kliknite na toto tlačidlo, aby ste uložili svoje zmeny"
+ }
+}
diff --git a/public/locales/sk/layout/modals/change-position.json b/public/locales/sk/layout/modals/change-position.json
new file mode 100644
index 000000000..05e29163b
--- /dev/null
+++ b/public/locales/sk/layout/modals/change-position.json
@@ -0,0 +1,8 @@
+{
+ "xPosition": "Poloha osi X",
+ "width": "Šírka",
+ "height": "Výška",
+ "yPosition": "Poloha osi Y",
+ "zeroOrHigher": "0 alebo vyššia",
+ "betweenXandY": "Medzi {{min}} a {{max}}"
+}
\ No newline at end of file
diff --git a/public/locales/sk/layout/modals/icon-picker.json b/public/locales/sk/layout/modals/icon-picker.json
new file mode 100644
index 000000000..4b5f8f05d
--- /dev/null
+++ b/public/locales/sk/layout/modals/icon-picker.json
@@ -0,0 +1,7 @@
+{
+ "iconPicker": {
+ "textInputPlaceholder": "Vyhľadajte niečo...",
+ "searchLimitationTitle": "Obmedzené na 30 výsledkov",
+ "searchLimitationMessage": "Výsledky vyhľadávania boli obmedzené na 30, pretože bolo príliš veľa zhod"
+ }
+}
\ No newline at end of file
diff --git a/public/locales/sk/modules/calendar.json b/public/locales/sk/modules/calendar.json
new file mode 100644
index 000000000..133dffedc
--- /dev/null
+++ b/public/locales/sk/modules/calendar.json
@@ -0,0 +1,18 @@
+{
+ "descriptor": {
+ "name": "Kalendár",
+ "description": "Zobraz kalendár s pripravovanými vydaniami z podporovaných integrácií.",
+ "settings": {
+ "title": "Nastavenia mini aplikácie Kalendár",
+ "useSonarrv4": {
+ "label": "Použi Sonarr v4 API"
+ },
+ "sundayStart": {
+ "label": "Začni týždeň v Nedeľu"
+ },
+ "radarrReleaseType": {
+ "label": "Typ Radarr releasu"
+ }
+ }
+ }
+}
diff --git a/public/locales/sk/modules/common-media-cards.json b/public/locales/sk/modules/common-media-cards.json
new file mode 100644
index 000000000..c4c28fcdb
--- /dev/null
+++ b/public/locales/sk/modules/common-media-cards.json
@@ -0,0 +1,6 @@
+{
+ "buttons": {
+ "play": "Prehraj",
+ "request": "Požiadavka"
+ }
+}
\ No newline at end of file
diff --git a/public/locales/sk/modules/common.json b/public/locales/sk/modules/common.json
new file mode 100644
index 000000000..748c7a306
--- /dev/null
+++ b/public/locales/sk/modules/common.json
@@ -0,0 +1,10 @@
+{
+ "settings": {
+ "label": "Nastavenia"
+ },
+ "errors": {
+ "unmappedOptions": {
+ "text": "Zistil sa nepoužitý parameter v konfigurácii {{key}}. Homarr nedokáže interpretovať a použiť tento parameter. Ak sa chcete vyhnúť akémukoľvek neočakávanému správaniu, zálohujte svoju konfiguráciu a opravte ju."
+ }
+ }
+}
diff --git a/public/locales/sk/modules/dashdot.json b/public/locales/sk/modules/dashdot.json
new file mode 100644
index 000000000..2381cb6da
--- /dev/null
+++ b/public/locales/sk/modules/dashdot.json
@@ -0,0 +1,61 @@
+{
+ "descriptor": {
+ "name": "Dash.",
+ "description": "Zobrazovať grafy externej Dash. vo vnútri Homarru.",
+ "settings": {
+ "title": "Nastavenia pre Dash. mini aplikácie",
+ "cpuMultiView": {
+ "label": "CPU Multi-Core Zobrazenie"
+ },
+ "storageMultiView": {
+ "label": "Zobrazenie Multi-Drive úložiska"
+ },
+ "useCompactView": {
+ "label": "Použi kompaktné zobrazenie"
+ },
+ "graphs": {
+ "label": "Grafy"
+ },
+ "url": {
+ "label": "Dash. URL"
+ },
+ "usePercentages": {
+ "label": "Zobraziť percentá"
+ }
+ }
+ },
+ "card": {
+ "title": "Dash.",
+ "errors": {
+ "noService": "Žiadna Dash. služba nájdená. Pridajte službu na svoj informačný panel Homarr alebo nastavte Dash. URL v možnostiach modulu",
+ "noInformation": "Nie je možné získať informácie z Dash. - používate najnovšiu verziu?",
+ "protocolDowngrade": {
+ "title": "Zistený downgrade protokol",
+ "text": "Protokol k vášmu Dash. inštancii sa downgraduje. Ide o bezpečnostné riziko, pretože HTTP je nešifrované a útočníci by mohli toto pripojenie zneužiť. Uistite sa, že Dash. beží aj na HTTPS alebo downgradujte Homarr na HTTP (neodporúča sa)."
+ }
+ },
+ "graphs": {
+ "storage": {
+ "title": "Úložisko",
+ "label": "Úložisko:"
+ },
+ "network": {
+ "title": "Sieť",
+ "label": "Sieť:",
+ "metrics": {
+ "download": "Dole",
+ "upload": "Hore"
+ }
+ },
+ "cpu": {
+ "title": "CPU"
+ },
+ "memory": {
+ "title": "RAM"
+ },
+ "gpu": {
+ "title": "GPU"
+ }
+ }
+ }
+}
diff --git a/public/locales/sk/modules/date.json b/public/locales/sk/modules/date.json
new file mode 100644
index 000000000..31f9c7d70
--- /dev/null
+++ b/public/locales/sk/modules/date.json
@@ -0,0 +1,12 @@
+{
+ "descriptor": {
+ "name": "Dátum a čas",
+ "description": "Zobrazuje aktuálny dátum a čas.",
+ "settings": {
+ "title": "Nastavenia miniaplikácie Dátum a čas",
+ "display24HourFormat": {
+ "label": "Zobraziť celý čas (24 hodín)"
+ }
+ }
+ }
+}
diff --git a/public/locales/sk/modules/dlspeed.json b/public/locales/sk/modules/dlspeed.json
new file mode 100644
index 000000000..9d14cc621
--- /dev/null
+++ b/public/locales/sk/modules/dlspeed.json
@@ -0,0 +1,35 @@
+{
+ "descriptor": {
+ "name": "Rýchlosť sťahovania",
+ "description": "Zobrazuje rýchlosť sťahovania a nahrávania podporovaných integrácií."
+ },
+ "card": {
+ "table": {
+ "header": {
+ "name": "Názov",
+ "size": "Veľkosť",
+ "download": "Dole",
+ "upload": "Hore",
+ "estimatedTimeOfArrival": "Odhad",
+ "progress": "Stav"
+ },
+ "body": {
+ "nothingFound": "Nenašli sa žiadne torrenty"
+ }
+ },
+ "lineChart": {
+ "title": "Aktuálna rýchlosť sťahovania",
+ "download": "Stiahnuť: {{download}}",
+ "upload": "Nahrať: {{upload}}",
+ "timeSpan": "pred {{seconds}} sekundami",
+ "totalDownload": "Stiahnuť: {{download}}/s",
+ "totalUpload": "Nahrať: {{upload}}/s"
+ },
+ "errors": {
+ "noDownloadClients": {
+ "title": "Nenašli sa žiadni podporovaní klienti na sťahovanie!",
+ "text": "Ak chcete zobraziť aktuálne stiahnuté súbory, pridajte službu sťahovania"
+ }
+ }
+ }
+}
diff --git a/public/locales/sk/modules/docker.json b/public/locales/sk/modules/docker.json
new file mode 100644
index 000000000..34ea5f4a1
--- /dev/null
+++ b/public/locales/sk/modules/docker.json
@@ -0,0 +1,83 @@
+{
+ "descriptor": {
+ "name": "Docker",
+ "description": "Umožňuje vám jednoducho zobraziť a spravovať všetky vaše kontajnery Docker."
+ },
+ "search": {
+ "placeholder": "Vyhľadávajte podľa názvu kontajnera alebo obrazu"
+ },
+ "table": {
+ "header": {
+ "name": "Názov",
+ "image": "Obraz",
+ "ports": "Porty",
+ "state": "Stav"
+ },
+ "body": {
+ "portCollapse": "{{ports}} viac"
+ },
+ "states": {
+ "running": "Spustené",
+ "created": "Vytvorené",
+ "stopped": "Zastavené",
+ "unknown": "Neznámy"
+ }
+ },
+ "actionBar": {
+ "addService": {
+ "title": "Pridať aplikáciu",
+ "message": "Pridanie aplikácie do aplikácie Homarr"
+ },
+ "restart": {
+ "title": "Reštartovať"
+ },
+ "stop": {
+ "title": "Zastaviť"
+ },
+ "start": {
+ "title": "Spustiť"
+ },
+ "refreshData": {
+ "title": "Obnoviť údaje"
+ },
+ "remove": {
+ "title": "Odstrániť"
+ },
+ "addToHomarr": {
+ "title": "Pridať do Homarr"
+ }
+ },
+ "actions": {
+ "start": {
+ "start": "Štartuje",
+ "end": "Začaté"
+ },
+ "stop": {
+ "start": "Zastavovanie",
+ "end": "Zastavené"
+ },
+ "restart": {
+ "start": "Reštartovanie",
+ "end": "Reštartované"
+ },
+ "remove": {
+ "start": "Odstraňujem",
+ "end": "Odstránené"
+ }
+ },
+ "errors": {
+ "integrationFailed": {
+ "title": "Integrácia Dockera zlyhala",
+ "message": "Zabudli ste pripojiť docker socket?"
+ },
+ "unknownError": {
+ "title": "Došlo k chybe"
+ },
+ "oneServiceAtATime": {
+ "title": "Prosím, pridávajte vždy len jednu aplikáciu alebo službu!"
+ }
+ },
+ "actionIcon": {
+ "tooltip": "Docker"
+ }
+}
diff --git a/public/locales/sk/modules/overseerr.json b/public/locales/sk/modules/overseerr.json
new file mode 100644
index 000000000..4cb61fa45
--- /dev/null
+++ b/public/locales/sk/modules/overseerr.json
@@ -0,0 +1,30 @@
+{
+ "descriptor": {
+ "name": "Overseerr",
+ "description": "Umožňuje vyhľadávať a pridávať médiá z Overseerr alebo Jellyseerr."
+ },
+ "popup": {
+ "item": {
+ "buttons": {
+ "askFor": "Požiadajte o {{title}}",
+ "cancel": "Zrušiť",
+ "request": "Požiadavka"
+ },
+ "alerts": {
+ "automaticApproval": {
+ "title": "Používanie kľúča API",
+ "text": "Táto žiadosť bude automaticky schválená"
+ }
+ }
+ },
+ "seasonSelector": {
+ "caption": "Označte série, ktoré chcete prevziať",
+ "table": {
+ "header": {
+ "season": "Séria",
+ "numberOfEpisodes": "Počet epizód"
+ }
+ }
+ }
+ }
+}
diff --git a/public/locales/sk/modules/ping.json b/public/locales/sk/modules/ping.json
new file mode 100644
index 000000000..452bbe40c
--- /dev/null
+++ b/public/locales/sk/modules/ping.json
@@ -0,0 +1,11 @@
+{
+ "descriptor": {
+ "name": "Ping",
+ "description": "Zobrazí indikátor stavu v závislosti od kódu odpovede HTTP danej adresy URL."
+ },
+ "states": {
+ "online": "Online {{response}}",
+ "offline": "Offline {{response}}",
+ "loading": "Nahrávam..."
+ }
+}
diff --git a/public/locales/sk/modules/search.json b/public/locales/sk/modules/search.json
new file mode 100644
index 000000000..730319b84
--- /dev/null
+++ b/public/locales/sk/modules/search.json
@@ -0,0 +1,30 @@
+{
+ "descriptor": {
+ "name": "Vyhľadávací panel",
+ "description": "Vyhľadávací panel, ktorý umožňuje vyhľadávať vo vlastnom vyhľadávači, službe YouTube a podporovaných integráciách."
+ },
+ "input": {
+ "placeholder": "Vyhľadajte na webe..."
+ },
+ "switched-to": "Prepnúť na",
+ "searchEngines": {
+ "search": {
+ "name": "Web",
+ "description": "Hľadať..."
+ },
+ "youtube": {
+ "name": "Youtube",
+ "description": "Vyhľadať na Youtube"
+ },
+ "torrents": {
+ "name": "Torrenty",
+ "description": "Vyhľadávanie torrentov"
+ },
+ "overseerr": {
+ "name": "Overseerr",
+ "description": "Vyhľadajte filmy a televízne relácie na Overseerr"
+ }
+ },
+ "tip": "Pomocou skratky môžete vybrať panel vyhľadávania ",
+ "switchedSearchEngine": "Prepnuté na vyhľadávanie pomocou {{searchEngine}}"
+}
diff --git a/public/locales/sk/modules/torrents-status.json b/public/locales/sk/modules/torrents-status.json
new file mode 100644
index 000000000..fffdad718
--- /dev/null
+++ b/public/locales/sk/modules/torrents-status.json
@@ -0,0 +1,72 @@
+{
+ "descriptor": {
+ "name": "Torrent",
+ "description": "Zobrazí zoznam torrentov z podporovaných klientov Torrent.",
+ "settings": {
+ "title": "Nastavenia mini aplikácie Torrent",
+ "refreshInterval": {
+ "label": "Interval obnovovania (v sekundách)"
+ },
+ "displayCompletedTorrents": {
+ "label": "Zobraz dokončené torrenty"
+ },
+ "displayStaleTorrents": {
+ "label": "Zobraz zastarané torrenty"
+ }
+ }
+ },
+ "card": {
+ "footer": {
+ "error": "Chyba",
+ "lastUpdated": "Naposledy aktualizované pred {{time}}"
+ },
+ "table": {
+ "header": {
+ "name": "Názov",
+ "size": "Veľkosť",
+ "download": "Dole",
+ "upload": "Hore",
+ "estimatedTimeOfArrival": "Odhad",
+ "progress": "Stav"
+ },
+ "item": {
+ "text": "Spravuje {{appName}}, {{ratio}} pomer"
+ },
+ "body": {
+ "nothingFound": "Nenašli sa žiadne torrenty"
+ }
+ },
+ "lineChart": {
+ "title": "Aktuálna rýchlosť sťahovania",
+ "download": "Stiahnuť: {{download}}",
+ "upload": "Nahrať: {{upload}}",
+ "timeSpan": "pred {{seconds}} sekundami",
+ "totalDownload": "Stiahnuť: {{download}}/s",
+ "totalUpload": "Nahrať: {{upload}}/s"
+ },
+ "errors": {
+ "noDownloadClients": {
+ "title": "Nenašli sa žiadni podporovaní klienti na sťahovanie!",
+ "text": "Pridanie podporovaného klienta Torrent na zobrazenie aktuálnych stiahnutí"
+ },
+ "generic": {
+ "title": "Vyskytla sa neočakávaná chyba",
+ "text": "Homarr nedokázal komunikovať s vašimi klientmi Torrent. Skontrolujte prosím svoju konfiguráciu"
+ }
+ },
+ "loading": {
+ "title": "Nahrávam..."
+ },
+ "popover": {
+ "introductionPrefix": "Spravovaný",
+ "metrics": {
+ "queuePosition": "Pozícia vo fronte - {{position}}",
+ "progress": "Stav - {{progress}}%",
+ "totalSelectedSize": "Spolu - {{totalSize}}",
+ "state": "Stav - {{state}}",
+ "ratio": "Pomer -",
+ "completed": "Dokončené"
+ }
+ }
+ }
+}
diff --git a/public/locales/sk/modules/usenet.json b/public/locales/sk/modules/usenet.json
new file mode 100644
index 000000000..497134150
--- /dev/null
+++ b/public/locales/sk/modules/usenet.json
@@ -0,0 +1,49 @@
+{
+ "descriptor": {
+ "name": "Usenet",
+ "description": "Umožňuje vám zobraziť a spravovať vašu inštanciu Usenet."
+ },
+ "card": {
+ "errors": {
+ "noDownloadClients": {
+ "title": "Nenašli sa žiadni podporovaní klienti na sťahovanie!",
+ "text": "Ak chcete zobraziť aktuálne stiahnuté súbory, pridajte podporovaného klienta Usenet Download Client"
+ }
+ }
+ },
+ "tabs": {
+ "queue": "Fronta",
+ "history": "História"
+ },
+ "info": {
+ "sizeLeft": "Veľkosť vľavo",
+ "paused": "Pozastavené"
+ },
+ "queue": {
+ "header": {
+ "name": "Názov",
+ "size": "Veľkosť",
+ "eta": "Odhad",
+ "progress": "Stav"
+ },
+ "empty": "Prázdny",
+ "error": {
+ "title": "Chyba",
+ "message": "Došlo k chybe"
+ },
+ "paused": "Pozastavené"
+ },
+ "history": {
+ "header": {
+ "name": "Názov",
+ "size": "Veľkosť",
+ "duration": "Trvanie"
+ },
+ "empty": "Prázdny",
+ "error": {
+ "title": "Chyba",
+ "message": "Chyba pri načítavaní histórie"
+ },
+ "paused": "Pozastavené"
+ }
+}
diff --git a/public/locales/sk/modules/weather.json b/public/locales/sk/modules/weather.json
new file mode 100644
index 000000000..ba48ecce1
--- /dev/null
+++ b/public/locales/sk/modules/weather.json
@@ -0,0 +1,33 @@
+{
+ "descriptor": {
+ "name": "Počasie",
+ "description": "Zobrazí aktuálne informácie o počasí na nastavenom mieste.",
+ "settings": {
+ "title": "Nastavenia mini aplikácie počasia",
+ "displayInFahrenheit": {
+ "label": "Zobrazenie vo stupňoch Fahrenheita"
+ },
+ "location": {
+ "label": "Poloha počasia"
+ }
+ }
+ },
+ "card": {
+ "weatherDescriptions": {
+ "clear": "Jasno",
+ "mainlyClear": "Prevažne jasno",
+ "fog": "Hmla",
+ "drizzle": "Mrholenie",
+ "freezingDrizzle": "Mrznúce mrholenie",
+ "rain": "Dážď",
+ "freezingRain": "Mrznúci dážď",
+ "snowFall": "Sneženie",
+ "snowGrains": "Snehové zrná",
+ "rainShowers": "Prehánky",
+ "snowShowers": "Snehové prehánky",
+ "thunderstorm": "Búrka",
+ "thunderstormWithHail": "Búrka s krúpami",
+ "unknown": "Neznámy"
+ }
+ }
+}
diff --git a/public/locales/sk/settings/common.json b/public/locales/sk/settings/common.json
new file mode 100644
index 000000000..2c42d6169
--- /dev/null
+++ b/public/locales/sk/settings/common.json
@@ -0,0 +1,38 @@
+{
+ "title": "Nastavenia",
+ "tooltip": "Nastavenia",
+ "tabs": {
+ "common": "Spoločné",
+ "customizations": "Prispôsobenia"
+ },
+ "tips": {
+ "configTip": "Nahrajte svoj konfiguračný súbor presunutím myšou na stránku!"
+ },
+ "credits": {
+ "madeWithLove": "Vyrobené z ❤️ od @",
+ "thirdPartyContent": "Pozrite si obsah tretích strán",
+ "thirdPartyContentTable": {
+ "dependencyName": "Závislosť",
+ "dependencyVersion": "Verzia"
+ }
+ },
+ "grow": "Zväčšiť mriežku (zabrať všetok priestor)",
+ "layout": {
+ "preview": {
+ "title": "Náhľad",
+ "subtitle": "Zmeny sa uložia automaticky"
+ },
+ "divider": "Možnosti rozloženia",
+ "main": "Hlavný",
+ "sidebar": "Bočný panel",
+ "cannotturnoff": "Nedá sa vypnúť",
+ "dashboardlayout": "Rozloženie dashboardu",
+ "enablersidebar": "Povoliť pravý bočný panel",
+ "enablelsidebar": "Povoliť ľavý bočný panel",
+ "enablesearchbar": "Povoliť panel vyhľadávania",
+ "enabledocker": "Povoliť Docker integráciu",
+ "enableping": "Povoliť pingy",
+ "enablelsidebardesc": "Voliteľné. Dá sa použiť iba pre aplikácie a integrácie",
+ "enablersidebardesc": "Voliteľné. Dá sa použiť iba pre aplikácie a integrácie"
+ }
+}
diff --git a/public/locales/sk/settings/customization/app-width.json b/public/locales/sk/settings/customization/app-width.json
new file mode 100644
index 000000000..f5f3142e2
--- /dev/null
+++ b/public/locales/sk/settings/customization/app-width.json
@@ -0,0 +1,3 @@
+{
+ "label": "Šírka aplikácie"
+}
\ No newline at end of file
diff --git a/public/locales/sk/settings/customization/color-selector.json b/public/locales/sk/settings/customization/color-selector.json
new file mode 100644
index 000000000..b45164892
--- /dev/null
+++ b/public/locales/sk/settings/customization/color-selector.json
@@ -0,0 +1,4 @@
+{
+ "colors": "Farby",
+ "suffix": "{{color}} farba"
+}
\ No newline at end of file
diff --git a/public/locales/sk/settings/customization/general.json b/public/locales/sk/settings/customization/general.json
new file mode 100644
index 000000000..ebcf73066
--- /dev/null
+++ b/public/locales/sk/settings/customization/general.json
@@ -0,0 +1,21 @@
+{
+ "text": "Prispôsobenia vám umožňujú konfigurovať a prispôsobiť si prácu s aplikáciou Homarr podľa vašich preferencií.",
+ "accordeon": {
+ "layout": {
+ "name": "Rozloženie",
+ "description": "Povolenie a zakázanie prvkov na dlaždiciach záhlavia a prístrojového panela"
+ },
+ "gridstack": {
+ "name": "Gridstack",
+ "description": "Prispôsobenie správania a stĺpcov v oblasti prístrojovej dosky"
+ },
+ "pageMetadata": {
+ "name": "Metadáta stránky",
+ "description": "Úprava názvov, loga a PWA"
+ },
+ "appereance": {
+ "name": "Vzhľad",
+ "description": "Prispôsobenie pozadia, farieb a vzhľadu aplikácií"
+ }
+ }
+}
\ No newline at end of file
diff --git a/public/locales/sk/settings/customization/gridstack.json b/public/locales/sk/settings/customization/gridstack.json
new file mode 100644
index 000000000..a5b541fa3
--- /dev/null
+++ b/public/locales/sk/settings/customization/gridstack.json
@@ -0,0 +1,10 @@
+{
+ "columnsCount": {
+ "labelPreset": "Stĺpce vo veľkosti {{size}}",
+ "descriptionPreset": "Počet stĺpcov, keď je obrazovka široká menej ako {{pixels}} pixelov",
+ "descriptionExceedsPreset": "Počet stĺpcov, keď veľkosť obrazovky presahuje {{pixels}} pixelov"
+ },
+ "unsavedChanges": "Máte neuložené zmeny. Kliknite na tlačidlo Použiť zmeny nižšie, aby ste ich použili a uložili.",
+ "applyChanges": "Použiť zmeny",
+ "defaultValues": "Predvolené hodnoty"
+}
\ No newline at end of file
diff --git a/public/locales/sk/settings/customization/opacity-selector.json b/public/locales/sk/settings/customization/opacity-selector.json
new file mode 100644
index 000000000..410571aa7
--- /dev/null
+++ b/public/locales/sk/settings/customization/opacity-selector.json
@@ -0,0 +1,3 @@
+{
+ "label": "Nepriehľadnosť aplikácie"
+}
\ No newline at end of file
diff --git a/public/locales/sk/settings/customization/page-appearance.json b/public/locales/sk/settings/customization/page-appearance.json
new file mode 100644
index 000000000..f0f5e483b
--- /dev/null
+++ b/public/locales/sk/settings/customization/page-appearance.json
@@ -0,0 +1,30 @@
+{
+ "pageTitle": {
+ "label": "Názov stránky",
+ "description": "Názov hlavného panela vľavo hore"
+ },
+ "metaTitle": {
+ "label": "Meta názov",
+ "description": "Názov, ktorý sa zobrazuje ako názov vašej karty"
+ },
+ "logo": {
+ "label": "Logo",
+ "description": "Logo prístrojovej dosky vľavo hore"
+ },
+ "favicon": {
+ "label": "Favicon",
+ "description": "Ikona, ktorá sa používa pred názvom karty"
+ },
+ "background": {
+ "label": "Pozadie"
+ },
+ "customCSS": {
+ "label": "Vlastné CSS",
+ "description": "Prispôsobenie všetkých prvkov na prístrojovej doske, odporúča sa len skúseným používateľom",
+ "placeholder": "Vlastné CSS sa použije ako posledné",
+ "applying": "Aplikuje sa CSS..."
+ },
+ "buttons": {
+ "submit": "Odoslať"
+ }
+}
diff --git a/public/locales/sk/settings/customization/shade-selector.json b/public/locales/sk/settings/customization/shade-selector.json
new file mode 100644
index 000000000..02eb381d1
--- /dev/null
+++ b/public/locales/sk/settings/customization/shade-selector.json
@@ -0,0 +1,3 @@
+{
+ "label": "Odtieň"
+}
\ No newline at end of file
diff --git a/public/locales/sk/settings/general/color-schema.json b/public/locales/sk/settings/general/color-schema.json
new file mode 100644
index 000000000..8fa3edf55
--- /dev/null
+++ b/public/locales/sk/settings/general/color-schema.json
@@ -0,0 +1,3 @@
+{
+ "label": "Prepnite do {{scheme}} režimu"
+}
\ No newline at end of file
diff --git a/public/locales/sk/settings/general/config-changer.json b/public/locales/sk/settings/general/config-changer.json
new file mode 100644
index 000000000..d7071e548
--- /dev/null
+++ b/public/locales/sk/settings/general/config-changer.json
@@ -0,0 +1,86 @@
+{
+ "configSelect": {
+ "label": "Konfiguračný menič",
+ "description": "{{configCount}} konfigurácie sú k dispozícii",
+ "loadingNew": "Načítanie konfigurácie...",
+ "pleaseWait": "Počkajte, kým sa načíta nová konfigurácia!"
+ },
+ "modal": {
+ "copy": {
+ "title": "Vyberte názov nového konfigurátora",
+ "form": {
+ "configName": {
+ "label": "Názov konfigurácie",
+ "validation": {
+ "required": "Vyžaduje sa názov konfigurácie",
+ "notUnique": "Názov konfigurácie sa už používa"
+ },
+ "placeholder": "Váš nový názov konfigurácie"
+ },
+ "submitButton": "Potvrďte"
+ },
+ "events": {
+ "configSaved": {
+ "title": "Uložená konfigurácia",
+ "message": "Konfigurácia uložená ako {{configName}}"
+ },
+ "configCopied": {
+ "title": "Skopírovaná konfigurácia",
+ "message": "Konfigurácia skopírovaná ako {{configName}}"
+ },
+ "configNotCopied": {
+ "title": "Nie je možné skopírovať konfiguráciu",
+ "message": "Váš konfigurátor nebol skopírovaný ako {{configName}}"
+ }
+ }
+ },
+ "confirmDeletion": {
+ "title": "Potvrdenie odstránenia konfigurácie",
+ "warningText": "Chystáte sa vymazať '{{configName}} '",
+ "text": "Upozorňujeme, že vymazanie nie je možné zvrátiť a vaše údaje budú natrvalo stratené. Po kliknutí na toto tlačidlo sa súbor natrvalo odstráni z vášho disku. Uistite sa, že ste si vytvorili primeranú zálohu konfigurácie.",
+ "buttons": {
+ "confirm": "Áno, vymažte '{{configName}} '"
+ }
+ }
+ },
+ "buttons": {
+ "download": "Stiahnite si konfiguráciu",
+ "delete": {
+ "text": "Odstránenie konfigurácie",
+ "notifications": {
+ "deleted": {
+ "title": "Konfigurácia odstránená",
+ "message": "Konfigurácia odstránená"
+ },
+ "deleteFailed": {
+ "title": "Odstránenie konfigurácie zlyhalo",
+ "message": "Odstránenie konfigurácie zlyhalo"
+ },
+ "deleteFailedDefaultConfig": {
+ "title": "Predvolená konfigurácia sa nedá odstrániť",
+ "message": "Konfigurácia nebola odstránená zo systému súborov"
+ }
+ }
+ },
+ "saveCopy": "Uložiť kópiu"
+ },
+ "dropzone": {
+ "notifications": {
+ "invalidConfig": {
+ "title": "Nie je možné načítať konfiguráciu",
+ "message": "Nepodarilo sa načítať vašu konfiguráciu. Neplatný formát JSON."
+ },
+ "loadedSuccessfully": {
+ "title": "Úspešné načítanie konfigurácie {{configName}}"
+ }
+ },
+ "accept": {
+ "title": "Nahrávanie konfigurácie",
+ "text": "Ak chcete nahrať konfiguráciu, potiahnite sem súbory. Podpora len pre súbory JSON."
+ },
+ "reject": {
+ "title": "Odmietnuté nahranie pomocou funkcie Drag and Drop",
+ "text": "Tento formát súboru nie je podporovaný. Nahrávajte len súbory JSON."
+ }
+ }
+}
diff --git a/public/locales/sk/settings/general/internationalization.json b/public/locales/sk/settings/general/internationalization.json
new file mode 100644
index 000000000..d48b30890
--- /dev/null
+++ b/public/locales/sk/settings/general/internationalization.json
@@ -0,0 +1,3 @@
+{
+ "label": "Jazyk"
+}
\ No newline at end of file
diff --git a/public/locales/sk/settings/general/search-engine.json b/public/locales/sk/settings/general/search-engine.json
new file mode 100644
index 000000000..8087221ec
--- /dev/null
+++ b/public/locales/sk/settings/general/search-engine.json
@@ -0,0 +1,19 @@
+{
+ "title": "Vyhľadávač",
+ "configurationName": "Konfigurácia vyhľadávača",
+ "tips": {
+ "generalTip": "Môžete použiť viacero predpon! Ich pridaním pred dotaz sa budú výsledky filtrovať. !s (Web), !t (Torrenty), !y (YouTube) a !m (Médiá).",
+ "placeholderTip": "%s možno použiť ako zástupný symbol pre dotaz."
+ },
+ "customEngine": {
+ "title": "Vlastný vyhľadávač",
+ "label": "Adresa URL dopytu",
+ "placeholder": "Adresa URL vlastného dopytu"
+ },
+ "searchNewTab": {
+ "label": "Otvoriť výsledky vyhľadávania na novej karte"
+ },
+ "searchEnabled": {
+ "label": "Vyhľadávanie povolené"
+ }
+}
diff --git a/public/locales/sk/settings/general/theme-selector.json b/public/locales/sk/settings/general/theme-selector.json
new file mode 100644
index 000000000..b98fc22a6
--- /dev/null
+++ b/public/locales/sk/settings/general/theme-selector.json
@@ -0,0 +1,3 @@
+{
+ "label": "Prepnite do {{theme}} režimu"
+}
\ No newline at end of file
diff --git a/public/locales/sk/settings/general/widget-positions.json b/public/locales/sk/settings/general/widget-positions.json
new file mode 100644
index 000000000..0892d638f
--- /dev/null
+++ b/public/locales/sk/settings/general/widget-positions.json
@@ -0,0 +1,3 @@
+{
+ "label": "Umiestni widgety vľavo"
+}
diff --git a/public/locales/sl/modules/dashdot.json b/public/locales/sl/modules/dashdot.json
index 3a0564952..0184054f9 100644
--- a/public/locales/sl/modules/dashdot.json
+++ b/public/locales/sl/modules/dashdot.json
@@ -28,7 +28,11 @@
"title": "Dash.",
"errors": {
"noService": "Dash. storitev ni bila najdena. Prosimo, dodajte jo na nadzorno ploščo Homarr ali nastavite Dash. URL naslov v možnostih modula",
- "noInformation": "Ne morem pridobiti informacij iz Dash. - ali uporabljate najnovejšo različico?"
+ "noInformation": "Ne morem pridobiti informacij iz Dash. - ali uporabljate najnovejšo različico?",
+ "protocolDowngrade": {
+ "title": "",
+ "text": ""
+ }
},
"graphs": {
"storage": {
diff --git a/public/locales/sv/modules/dashdot.json b/public/locales/sv/modules/dashdot.json
index c56be2aca..40441c40c 100644
--- a/public/locales/sv/modules/dashdot.json
+++ b/public/locales/sv/modules/dashdot.json
@@ -28,7 +28,11 @@
"title": "Dash.",
"errors": {
"noService": "Ingen Dash-tjänst hittades. Lägg till en i din Homarr-instrumentpanel eller ange en Dash. URL i modulalternativen.",
- "noInformation": "Kan inte få information från dash. - Kör du den senaste versionen?"
+ "noInformation": "Kan inte få information från dash. - Kör du den senaste versionen?",
+ "protocolDowngrade": {
+ "title": "Nedgradering av protokoll upptäcktes",
+ "text": "Protokollet till din Dash.-instans håller på att nedgraderas. Detta är en säkerhetsrisk eftersom HTTP är okrypterat och angripare kan missbruka denna anslutning. Se till att Dash. också körs på HTTPS eller nedgradera Homarr till HTTP (rekommenderas inte)."
+ }
},
"graphs": {
"storage": {
diff --git a/public/locales/uk/modules/dashdot.json b/public/locales/uk/modules/dashdot.json
index bc60817e1..14ab03307 100644
--- a/public/locales/uk/modules/dashdot.json
+++ b/public/locales/uk/modules/dashdot.json
@@ -28,7 +28,11 @@
"title": "Dash.",
"errors": {
"noService": "Dash. сервіс не знайдено. Будь ласка, додайте його до головної панелі чи встановіть Dash. URL в налаштуваннях модулю",
- "noInformation": "Не вдалося отримати інформацію з Dash. - чи ви використовуєте останню версію?"
+ "noInformation": "Не вдалося отримати інформацію з Dash. - чи ви використовуєте останню версію?",
+ "protocolDowngrade": {
+ "title": "",
+ "text": ""
+ }
},
"graphs": {
"storage": {
diff --git a/public/locales/vi/common.json b/public/locales/vi/common.json
index 95ad687d8..ed6a295dc 100644
--- a/public/locales/vi/common.json
+++ b/public/locales/vi/common.json
@@ -1,21 +1,21 @@
{
"save": "Lưu",
- "about": "",
+ "about": "Về chúng tôi",
"cancel": "Hủy",
- "close": "",
+ "close": "Đóng",
"delete": "Xóa",
- "ok": "",
+ "ok": "OK",
"edit": "Sửa",
- "version": "",
- "changePosition": "",
+ "version": "Phiên bản",
+ "changePosition": "Đổi vị trí",
"remove": "Xóa",
- "removeConfirm": "",
+ "removeConfirm": "Bạn có chắc muốn xoá {{item}} ?",
"sections": {
"settings": "Cài đặt",
"dangerZone": "Khu vực nguy hiểm"
},
"secrets": {
- "apiKey": "",
+ "apiKey": "Khóa API",
"username": "Tên người dùng",
"password": "Mật khẩu"
},
diff --git a/public/locales/vi/layout/modals/about.json b/public/locales/vi/layout/modals/about.json
index bd458a81f..de2c1d365 100644
--- a/public/locales/vi/layout/modals/about.json
+++ b/public/locales/vi/layout/modals/about.json
@@ -5,7 +5,7 @@
"metrics": {
"configurationSchemaVersion": "",
"configurationsCount": "",
- "version": "",
+ "version": "Phiên bản",
"nodeEnvironment": "",
"i18n": "",
"locales": ""
diff --git a/public/locales/vi/modules/calendar.json b/public/locales/vi/modules/calendar.json
index 713328420..fcaa077cf 100644
--- a/public/locales/vi/modules/calendar.json
+++ b/public/locales/vi/modules/calendar.json
@@ -5,7 +5,7 @@
"settings": {
"title": "Cài đặt cho tiện ích lịch",
"useSonarrv4": {
- "label": ""
+ "label": "Dùng Sonarr v4 API"
},
"sundayStart": {
"label": "Đặt đầu tuần là Chủ Nhật"
diff --git a/public/locales/vi/modules/common.json b/public/locales/vi/modules/common.json
index 014084f9d..5189d85c8 100644
--- a/public/locales/vi/modules/common.json
+++ b/public/locales/vi/modules/common.json
@@ -4,7 +4,7 @@
},
"errors": {
"unmappedOptions": {
- "text": ""
+ "text": "Đã phát hiện tham số không được sử dụng trong cấu hình {{key}}. Homarr hiện không thể diễn giải và sử dụng tham số này. Để tránh hành vi không mong muốn, vui lòng sao lưu và sửa đổi cấu hình của bạn đúng cách."
}
}
}
diff --git a/public/locales/vi/modules/dashdot.json b/public/locales/vi/modules/dashdot.json
index 2fdb2b81e..2e5f70ff9 100644
--- a/public/locales/vi/modules/dashdot.json
+++ b/public/locales/vi/modules/dashdot.json
@@ -20,7 +20,7 @@
"label": "URL của Dash."
},
"usePercentages": {
- "label": ""
+ "label": "Hiển thị phần trăm"
}
}
},
@@ -28,7 +28,11 @@
"title": "Dash.",
"errors": {
"noService": "Dịch vụ Dash. không được tìm thấy. Vui lòng thêm nó vào bảng Homarr của bạn hoặc thiết lập một đường dẫn Dash. trong tuỳ chọn của mô-đun",
- "noInformation": "Không thể nhận thông tin từ dash. - bạn có đang chạy phiên bản mới nhất không?"
+ "noInformation": "Không thể nhận thông tin từ dash. - bạn có đang chạy phiên bản mới nhất không?",
+ "protocolDowngrade": {
+ "title": "Phát hiện hạ cấp giao thức",
+ "text": "Giao thức cho phiên bản Dash của bạn. không ở chế độ bảo mật. Đây được coi là rủi ro bảo mật vì HTTP không hỗ trợ mã hóa và những kẻ tấn công có thể lạm dụng nó. Hãy chắc chắn rằng Dash. hoạt động ở chế độ HTTPS hoặc xóa chế độ HTTPS khỏi Homarr (không được khuyến nghị)."
+ }
},
"graphs": {
"storage": {
diff --git a/public/locales/vi/modules/dlspeed.json b/public/locales/vi/modules/dlspeed.json
index 53a646394..45295446a 100644
--- a/public/locales/vi/modules/dlspeed.json
+++ b/public/locales/vi/modules/dlspeed.json
@@ -1,7 +1,7 @@
{
"descriptor": {
"name": "Tốc độ tải",
- "description": ""
+ "description": "Hiện thị tốc độ tải xuống và tải lên của các tích hợp được hỗ trợ."
},
"card": {
"table": {
diff --git a/public/locales/vi/modules/docker.json b/public/locales/vi/modules/docker.json
index 59b46b1fa..6ebfe729a 100644
--- a/public/locales/vi/modules/docker.json
+++ b/public/locales/vi/modules/docker.json
@@ -1,7 +1,7 @@
{
"descriptor": {
"name": "Docker",
- "description": ""
+ "description": "Cho phép bạn dễ dàng quản lý các khoang chứa docker."
},
"search": {
"placeholder": "Tìm kiếm bằng tên khoang chứa hoặc tên hình ảnh"
@@ -25,8 +25,8 @@
},
"actionBar": {
"addService": {
- "title": "",
- "message": ""
+ "title": "Thêm ứng dụng",
+ "message": "Thêm ứng dụng vào Homarr"
},
"restart": {
"title": "Khởi động lại"
@@ -68,13 +68,13 @@
"errors": {
"integrationFailed": {
"title": "Tích hợp Docker thất bại",
- "message": ""
+ "message": "Có phải bạn quên gắn ổ cắm docker không?"
},
"unknownError": {
"title": "Có lỗi xảy ra"
},
"oneServiceAtATime": {
- "title": ""
+ "title": "Vui lòng chỉ thêm từng dịch vụ một!"
}
},
"actionIcon": {
diff --git a/public/locales/vi/modules/overseerr.json b/public/locales/vi/modules/overseerr.json
index 797c59496..3066b733e 100644
--- a/public/locales/vi/modules/overseerr.json
+++ b/public/locales/vi/modules/overseerr.json
@@ -1,7 +1,7 @@
{
"descriptor": {
"name": "Overseerr",
- "description": ""
+ "description": "Cho phép bạn tìm và thêm phương tiện truyền thông từ Overseerr hoặc Jellyseerr."
},
"popup": {
"item": {
@@ -18,7 +18,7 @@
}
},
"seasonSelector": {
- "caption": "",
+ "caption": "Đánh dấu các mùa bạn muốn tải về",
"table": {
"header": {
"season": "Mùa",
diff --git a/public/locales/vi/modules/ping.json b/public/locales/vi/modules/ping.json
index 5af9ed697..bc637ceb8 100644
--- a/public/locales/vi/modules/ping.json
+++ b/public/locales/vi/modules/ping.json
@@ -1,7 +1,7 @@
{
"descriptor": {
"name": "Ping",
- "description": ""
+ "description": "Hiển thị chỉ báo trạng thái dựa trên mã phản hồi HTTP của URL được chỉ định."
},
"states": {
"online": "Trực tuyến {{response}}",
diff --git a/public/locales/vi/modules/search.json b/public/locales/vi/modules/search.json
index 7515274db..9dca3789b 100644
--- a/public/locales/vi/modules/search.json
+++ b/public/locales/vi/modules/search.json
@@ -1,7 +1,7 @@
{
"descriptor": {
"name": "Thanh tìm kiếm",
- "description": ""
+ "description": "Thanh tìm kiếm cho phép bạn tìm kiếm công cụ tìm kiếm tùy chỉnh, YouTube và các tích hợp được hỗ trợ."
},
"input": {
"placeholder": "Tìm kiếm trên web..."
@@ -10,7 +10,7 @@
"searchEngines": {
"search": {
"name": "Web",
- "description": ""
+ "description": "Tìm kiếm..."
},
"youtube": {
"name": "YouTube",
@@ -22,7 +22,7 @@
},
"overseerr": {
"name": "Overseerr",
- "description": ""
+ "description": "Tìm kiếm phim lẻ và phim bộ trên Overseerr"
}
},
"tip": "Bạn có thể chọn thanh tìm kiếm bằng phím tắt ",
diff --git a/public/locales/vi/modules/torrents-status.json b/public/locales/vi/modules/torrents-status.json
index a4ef84fa8..7dd69d3cd 100644
--- a/public/locales/vi/modules/torrents-status.json
+++ b/public/locales/vi/modules/torrents-status.json
@@ -1,24 +1,24 @@
{
"descriptor": {
"name": "Torrent",
- "description": "",
+ "description": "Hiển thị danh sách torrent của các ứng dụng torrent được hỗ trợ.",
"settings": {
- "title": "",
+ "title": "Cài đặt cho tiện ích torrent",
"refreshInterval": {
- "label": ""
+ "label": "Khoảng thời gian làm mới (bằng giây)"
},
"displayCompletedTorrents": {
- "label": ""
+ "label": "Hiển thị torrent hoàn thành"
},
"displayStaleTorrents": {
- "label": ""
+ "label": "Hiển thị torrent hết hạn"
}
}
},
"card": {
"footer": {
"error": "Lỗi",
- "lastUpdated": ""
+ "lastUpdated": "Cập nhật cuối cách đây {{time}}"
},
"table": {
"header": {
@@ -30,7 +30,7 @@
"progress": "Tiến độ"
},
"item": {
- "text": ""
+ "text": "Quản lý bởi {{appName}}, tỷ lệ {{ratio}}"
},
"body": {
"nothingFound": "Không tìm thấy torrent nào"
@@ -46,26 +46,26 @@
},
"errors": {
"noDownloadClients": {
- "title": "",
- "text": ""
+ "title": "Không tìm thấy ứng dụng torrent được hỗ trợ nào!",
+ "text": "Thêm ứng dụng torrent được hỗ trợ để xem các bản tải xuống hiện tại"
},
"generic": {
- "title": "",
- "text": ""
+ "title": "Đã xảy ra lỗi không mong muốn",
+ "text": "Homarr không thể giao tiếp với ứng dụng torrent của bạn. Vui lòng kiểm tra lại cấu hình"
}
},
"loading": {
"title": "Đang tải..."
},
"popover": {
- "introductionPrefix": "",
+ "introductionPrefix": "Quản lý bởi",
"metrics": {
- "queuePosition": "",
- "progress": "",
- "totalSelectedSize": "",
- "state": "",
- "ratio": "",
- "completed": ""
+ "queuePosition": "Vị trí hàng đợi - {{position}}",
+ "progress": "Tiến độ - {{progress}}%",
+ "totalSelectedSize": "Tổng - {{totalSize}}",
+ "state": "Trạng thái - {{state}}",
+ "ratio": "Tỷ lệ -",
+ "completed": "Đã hoàn thành"
}
}
}
diff --git a/public/locales/vi/modules/usenet.json b/public/locales/vi/modules/usenet.json
index cc0b9478b..1a423991b 100644
--- a/public/locales/vi/modules/usenet.json
+++ b/public/locales/vi/modules/usenet.json
@@ -1,13 +1,13 @@
{
"descriptor": {
"name": "Usenet",
- "description": ""
+ "description": "Cho phép bạn xem và quản lý phiên bản Usenet của mình."
},
"card": {
"errors": {
"noDownloadClients": {
"title": "Không tìm thấy ứng dụng tải xuống được hỗ trợ nào!",
- "text": ""
+ "text": "Thêm ứng dụng tải xuống Usenet được hỗ trợ để xem các bản tải xuống hiện tại"
}
}
},
diff --git a/public/locales/vi/modules/weather.json b/public/locales/vi/modules/weather.json
index 58c80242c..67f2d322e 100644
--- a/public/locales/vi/modules/weather.json
+++ b/public/locales/vi/modules/weather.json
@@ -1,9 +1,9 @@
{
"descriptor": {
"name": "Thời tiết",
- "description": "",
+ "description": "Hiển thị thông tin thời tiết của vị trí được đặt.",
"settings": {
- "title": "",
+ "title": "Cài đặt cho tiện ích thời tiết",
"displayInFahrenheit": {
"label": "Hiển thị bằng Fahrenheit"
},
diff --git a/public/locales/vi/settings/common.json b/public/locales/vi/settings/common.json
index b35253c94..52e8a0709 100644
--- a/public/locales/vi/settings/common.json
+++ b/public/locales/vi/settings/common.json
@@ -13,7 +13,7 @@
"thirdPartyContent": "",
"thirdPartyContentTable": {
"dependencyName": "",
- "dependencyVersion": ""
+ "dependencyVersion": "Phiên bản"
}
},
"grow": "Khung giãn (chiếm toàn bộ không gian)",
diff --git a/public/locales/vi/settings/customization/color-selector.json b/public/locales/vi/settings/customization/color-selector.json
index a9351916b..da9cfd971 100644
--- a/public/locales/vi/settings/customization/color-selector.json
+++ b/public/locales/vi/settings/customization/color-selector.json
@@ -1,3 +1,4 @@
{
+ "colors": "Màu",
"suffix": "Màu {{color}}"
}
\ No newline at end of file
diff --git a/public/locales/vi/settings/customization/general.json b/public/locales/vi/settings/customization/general.json
index ee9d30b5a..28da46431 100644
--- a/public/locales/vi/settings/customization/general.json
+++ b/public/locales/vi/settings/customization/general.json
@@ -2,7 +2,7 @@
"text": "",
"accordeon": {
"layout": {
- "name": "",
+ "name": "Bố cục",
"description": ""
},
"gridstack": {
@@ -10,11 +10,11 @@
"description": ""
},
"pageMetadata": {
- "name": "",
+ "name": "Metadata trang",
"description": ""
},
"appereance": {
- "name": "",
+ "name": "Hiển thị",
"description": ""
}
}
diff --git a/public/locales/vi/settings/customization/gridstack.json b/public/locales/vi/settings/customization/gridstack.json
index 18c3d8233..af30d7355 100644
--- a/public/locales/vi/settings/customization/gridstack.json
+++ b/public/locales/vi/settings/customization/gridstack.json
@@ -5,6 +5,6 @@
"descriptionExceedsPreset": ""
},
"unsavedChanges": "",
- "applyChanges": "",
- "defaultValues": ""
+ "applyChanges": "Áp dụng thay đổi",
+ "defaultValues": "Giá trị mặc định"
}
\ No newline at end of file
diff --git a/public/locales/vi/settings/customization/page-appearance.json b/public/locales/vi/settings/customization/page-appearance.json
index dd5539671..dd2265cea 100644
--- a/public/locales/vi/settings/customization/page-appearance.json
+++ b/public/locales/vi/settings/customization/page-appearance.json
@@ -21,8 +21,8 @@
"customCSS": {
"label": "CSS tuỳ chỉnh",
"description": "",
- "placeholder": "",
- "applying": ""
+ "placeholder": "CSS tùy chỉnh sẽ được áp dụng sau cùng",
+ "applying": "Đang áp dụng CSS..."
},
"buttons": {
"submit": "Gửi"
diff --git a/public/locales/vi/settings/general/config-changer.json b/public/locales/vi/settings/general/config-changer.json
index 350d8d2a3..6ede7dab7 100644
--- a/public/locales/vi/settings/general/config-changer.json
+++ b/public/locales/vi/settings/general/config-changer.json
@@ -1,9 +1,9 @@
{
"configSelect": {
"label": "",
- "description": "",
- "loadingNew": "",
- "pleaseWait": ""
+ "description": "{{configCount}} cấu hình có sẵn",
+ "loadingNew": "Đang tải cấu hình...",
+ "pleaseWait": "Vui lòng chờ cho đến khi cấu hình mới được tải!"
},
"modal": {
"copy": {
@@ -12,8 +12,8 @@
"configName": {
"label": "Tên cấu hình",
"validation": {
- "required": "",
- "notUnique": ""
+ "required": "Tên cấu hình là bắt buộc",
+ "notUnique": "Tên cấu hình đã được sử dụng"
},
"placeholder": "Tên cấu hình mới của bạn"
},
@@ -25,17 +25,17 @@
"message": "Đã lưu cấu hình thành {{configName}}"
},
"configCopied": {
- "title": "",
- "message": ""
+ "title": "Đã sao chép cấu hình",
+ "message": "Đã sao chép cấu hình thành {{configName}}"
},
"configNotCopied": {
- "title": "",
- "message": ""
+ "title": "Không thể sao chép cấu hình",
+ "message": "Cấu hình chưa được sao chép thành {{configName}}"
}
}
},
"confirmDeletion": {
- "title": "",
+ "title": "Xác nhận xóa cấu hình của bạn",
"warningText": "",
"text": "",
"buttons": {
@@ -57,7 +57,7 @@
"message": "Xoá cấu hình thất bại"
},
"deleteFailedDefaultConfig": {
- "title": "",
+ "title": "Cấu hình mặc định không thể bị xoá",
"message": ""
}
}
diff --git a/public/locales/vi/settings/general/search-engine.json b/public/locales/vi/settings/general/search-engine.json
index 1e93e7d6e..56e852475 100644
--- a/public/locales/vi/settings/general/search-engine.json
+++ b/public/locales/vi/settings/general/search-engine.json
@@ -2,7 +2,7 @@
"title": "Công cụ tìm kiếm",
"configurationName": "Thiết lập công cụ tìm kiếm",
"tips": {
- "generalTip": "",
+ "generalTip": "Có nhiều tiền tố để bạn sử dụng đó! Thêm chúng vào trước truy vấn của bạn để lọc kết quả. !s (Web), !t (torrent), !y (YouTube), !m (đa phương tiện).",
"placeholderTip": "%s có thể được sử dụng làm phần giữ chỗ cho truy vấn."
},
"customEngine": {
diff --git a/public/locales/vi/settings/general/widget-positions.json b/public/locales/vi/settings/general/widget-positions.json
index 0967ef424..29bac0e71 100644
--- a/public/locales/vi/settings/general/widget-positions.json
+++ b/public/locales/vi/settings/general/widget-positions.json
@@ -1 +1,3 @@
-{}
+{
+ "label": "Đặt tiện ích ở bên trái"
+}
diff --git a/public/locales/zh/modules/dashdot.json b/public/locales/zh/modules/dashdot.json
index 8ab72ec98..547fe75a1 100644
--- a/public/locales/zh/modules/dashdot.json
+++ b/public/locales/zh/modules/dashdot.json
@@ -28,7 +28,11 @@
"title": "Dash.",
"errors": {
"noService": "没有找到Dash.服务。请在你的Homarr仪表板上添加,或者设置一个仪表板网址。网址在应用选项中添加",
- "noInformation": "无法从仪表板获取信息。- 你运行的是最新版本吗?"
+ "noInformation": "无法从仪表板获取信息。- 你运行的是最新版本吗?",
+ "protocolDowngrade": {
+ "title": "",
+ "text": ""
+ }
},
"graphs": {
"storage": {
diff --git a/src/components/Dashboard/Tiles/Apps/AppTile.tsx b/src/components/Dashboard/Tiles/Apps/AppTile.tsx
index b11604187..1c9edd328 100644
--- a/src/components/Dashboard/Tiles/Apps/AppTile.tsx
+++ b/src/components/Dashboard/Tiles/Apps/AppTile.tsx
@@ -33,9 +33,10 @@ export const AppTile = ({ className, app }: AppTileProps) => {
justify="space-around"
align="center"
style={{ height: '100%', width: '100%' }}
+ className="dashboard-tile-app"
>
-
+
{app.name}
diff --git a/src/components/Dashboard/Tiles/HomarrCardWrapper.tsx b/src/components/Dashboard/Tiles/HomarrCardWrapper.tsx
index 8958667fc..1a4211fdf 100644
--- a/src/components/Dashboard/Tiles/HomarrCardWrapper.tsx
+++ b/src/components/Dashboard/Tiles/HomarrCardWrapper.tsx
@@ -18,7 +18,7 @@ export const HomarrCardWrapper = ({ ...props }: HomarrCardWrapperProps) => {
return (
{
const { refs, apps, widgets } = useGridstack('category', category.id);
const isEditMode = useEditModeStore((x) => x.enabled);
const { config } = useConfigContext();
- const { classes: cardClasses } = useCardStyles(true);
+ const { classes: cardClasses, cx } = useCardStyles(true);
const categoryList = config?.categories.map((x) => x.name) ?? [];
const [toggledCategories, setToggledCategories] = useLocalStorage({
@@ -28,7 +28,7 @@ export const DashboardCategory = ({ category }: DashboardCategoryProps) => {
return (
{
'settings/customization/general',
'settings/customization/color-selector',
]);
- return [
+ const items = [
{
id: 'layout',
image: ,
@@ -114,4 +114,26 @@ const getItems = () => {
),
},
];
+ if (process.env.NODE_ENV === 'development') {
+ items.push({
+ id: 'dev',
+ image: ,
+ label: 'Developer options',
+ description: 'Options to help when developing',
+ content: (
+
+
+ // Change to CI mode language
+ i18n?.changeLanguage(e.target.checked ? 'cimode' : 'en')
+ }
+ />
+
+ ),
+ });
+ }
+ return items;
};
diff --git a/src/components/Settings/Customization/Theme/CustomCssChanger.tsx b/src/components/Settings/Customization/Theme/CustomCssChanger.tsx
index 97155a688..d829570d1 100644
--- a/src/components/Settings/Customization/Theme/CustomCssChanger.tsx
+++ b/src/components/Settings/Customization/Theme/CustomCssChanger.tsx
@@ -1,24 +1,13 @@
-import {
- Box,
- createStyles,
- Group,
- Loader,
- ScrollArea,
- Stack,
- Text,
- useMantineTheme,
-} from '@mantine/core';
+import { Box, createStyles, Group, Loader, Stack, Text, useMantineTheme } from '@mantine/core';
import { useDebouncedValue } from '@mantine/hooks';
import { useTranslation } from 'next-i18next';
-import dynamic from 'next/dynamic';
-import { ChangeEvent, useEffect, useState } from 'react';
+import { useEffect, useState } from 'react';
+import Editor from 'react-simple-code-editor';
+import { highlight, languages } from 'prismjs';
import { useConfigContext } from '../../../../config/provider';
import { useConfigStore } from '../../../../config/store';
-
-const CodeEditor = dynamic(
- () => import('@uiw/react-textarea-code-editor').then((mod) => mod.default),
- { ssr: false }
-);
+import 'prismjs/components/prism-css';
+import 'prismjs/themes/prism.css';
export const CustomCssChanger = () => {
const { t } = useTranslation('settings/customization/page-appearance');
@@ -53,22 +42,20 @@ export const CustomCssChanger = () => {
{t('customCSS.label')}
- {t('customCSS.description')}
+ {t('customCSS.description')}
-
- ) =>
- setNonDebouncedCustomCSS(event.target.value.trim())
- }
- language="css"
- data-color-mode={colorScheme}
- minHeight={codeEditorHeight}
- />
-
+
setNonDebouncedCustomCSS(code)}
+ highlight={(code) => highlight(code, languages.extend('css', {}), 'css')}
+ padding={10}
+ style={{
+ fontFamily: '"Fira code", "Fira Mono", monospace',
+ fontSize: 12,
+ minHeight: codeEditorHeight,
+ }}
+ />
{codeIsDirty && (
diff --git a/src/components/layout/Layout.tsx b/src/components/layout/Layout.tsx
index 7f8a32615..aa09c783a 100644
--- a/src/components/layout/Layout.tsx
+++ b/src/components/layout/Layout.tsx
@@ -19,6 +19,7 @@ export default function Layout({ children }: any) {
minHeight: 'calc(100vh - var(--mantine-header-height))',
},
}}
+ className="dashboard-app-shell"
>
diff --git a/src/components/layout/Logo.tsx b/src/components/layout/Logo.tsx
index a943f5866..b7d7536bd 100644
--- a/src/components/layout/Logo.tsx
+++ b/src/components/layout/Logo.tsx
@@ -17,12 +17,14 @@ export function Logo({ size = 'md', withoutText = false }: LogoProps) {
width={size === 'md' ? 50 : 12}
src={config?.settings.customization.logoImageUrl || '/imgs/logo/logo-color.svg'}
alt="Homarr Logo"
+ className="dashboard-header-logo-image"
/>
{withoutText ? null : (
{config?.settings.customization.pageTitle || 'Homarr'}
diff --git a/src/components/layout/header/Header.tsx b/src/components/layout/header/Header.tsx
index 8955edf78..52c47bc17 100644
--- a/src/components/layout/header/Header.tsx
+++ b/src/components/layout/header/Header.tsx
@@ -13,7 +13,7 @@ export const HeaderHeight = 64;
export function Header(props: any) {
const { classes } = useStyles();
- const { classes: cardClasses } = useCardStyles(false);
+ const { classes: cardClasses, cx } = useCardStyles(false);
const { attributes } = usePackageAttributesStore();
const { isLoading, error, data } = useQuery({
@@ -27,12 +27,12 @@ export function Header(props: any) {
data?.tag_name > `v${attributes.packageVersion}` ? data?.tag_name : undefined;
return (
-
+
-
+
-
+
diff --git a/src/components/layout/header/Search.tsx b/src/components/layout/header/Search.tsx
index 00d9bd38d..a4a1dc70a 100644
--- a/src/components/layout/header/Search.tsx
+++ b/src/components/layout/header/Search.tsx
@@ -57,7 +57,7 @@ export function Search() {
const { config } = useConfigContext();
const [searchQuery, setSearchQuery] = useState('');
const [debounced] = useDebouncedValue(searchQuery, 250);
- const { classes: cardClasses } = useCardStyles(true);
+ const { classes: cardClasses, cx } = useCardStyles(true);
const isOverseerrEnabled = config?.apps.some(
(x) => x.integration.type === 'overseerr' || x.integration.type === 'jellyseerr'
@@ -216,7 +216,8 @@ export function Search() {
}
}}
classNames={{
- input: cardClasses.card,
+ input: cx(cardClasses.card, 'dashboard-header-search-input'),
+ root: 'dashboard-header-search-root',
}}
radius="lg"
size="md"
diff --git a/src/config/store.ts b/src/config/store.ts
index a3a943030..7a6971344 100644
--- a/src/config/store.ts
+++ b/src/config/store.ts
@@ -1,5 +1,5 @@
import axios from 'axios';
-import create from 'zustand';
+import { create } from 'zustand';
import { ConfigType } from '../types/config';
export const useConfigStore = create((set, get) => ({
diff --git a/src/middleware.ts b/src/middleware.ts
index c0106cfab..79f85b693 100644
--- a/src/middleware.ts
+++ b/src/middleware.ts
@@ -2,19 +2,31 @@ import { NextFetchEvent, NextRequest, NextResponse } from 'next/server';
// eslint-disable-next-line consistent-return
export function middleware(req: NextRequest, ev: NextFetchEvent) {
- const isCorrectPassword = req.cookies.get('password')?.value === process.env.PASSWORD;
+ const { cookies } = req;
+ // Don't even bother with the middleware if there is no defined password
+ if (!process.env.PASSWORD) return NextResponse.next();
+
const url = req.nextUrl.clone();
- const skipURL =
- url.pathname &&
- (url.pathname.includes('login') ||
- url.pathname === '/api/configs/tryPassword' ||
- (url.pathname.includes('/_next/') && !url.pathname.includes('/pages/')) ||
- url.pathname === '/favicon.ico' ||
- url.pathname === '/404' ||
- url.pathname === '/migrate' ||
- url.pathname.includes('pages/_app'));
- if (!skipURL && !isCorrectPassword && process.env.PASSWORD) {
+ const passwordCookie = cookies.get('password')?.value;
+
+ const isCorrectPassword = passwordCookie?.toString() === process.env.PASSWORD;
+ // Skip the middleware if the URL is 'login', 'api/configs/tryPassword', '_next/*', 'favicon.ico', '404', 'migrate' or 'pages/_app'
+ const skippedUrls = [
+ '/login',
+ '/api/configs/tryPassword',
+ '/_next/',
+ '/favicon.ico',
+ '/404',
+ '/migrate',
+ '/pages/_app',
+ ];
+ if (skippedUrls.some((skippedUrl) => url.pathname.startsWith(skippedUrl))) {
+ return NextResponse.next();
+ }
+ // If the password is not correct, redirect to the login page
+ if (!isCorrectPassword && process.env.PASSWORD) {
url.pathname = '/login';
return NextResponse.rewrite(url);
}
+ return NextResponse.next();
}
diff --git a/src/pages/_app.tsx b/src/pages/_app.tsx
index b20595f4f..81107b5f4 100644
--- a/src/pages/_app.tsx
+++ b/src/pages/_app.tsx
@@ -26,9 +26,9 @@ import {
ServerSidePackageAttributesType,
} from '../tools/server/getPackageVersion';
import { usePackageAttributesStore } from '../tools/client/zustands/usePackageAttributesStore';
+import 'video.js/dist/video-js.css';
import '../styles/global.scss';
-import '@uiw/react-textarea-code-editor/dist.css';
function App(
this: any,
diff --git a/src/tools/client/zustands/usePackageAttributesStore.ts b/src/tools/client/zustands/usePackageAttributesStore.ts
index 1949cacfd..da8ff398d 100644
--- a/src/tools/client/zustands/usePackageAttributesStore.ts
+++ b/src/tools/client/zustands/usePackageAttributesStore.ts
@@ -1,4 +1,4 @@
-import create from 'zustand';
+import { create } from 'zustand';
import { ServerSidePackageAttributesType } from '../../server/getPackageVersion';
diff --git a/src/tools/language.ts b/src/tools/language.ts
index f0d0e9471..8974e62a4 100644
--- a/src/tools/language.ts
+++ b/src/tools/language.ts
@@ -75,6 +75,20 @@ export const languages: Language[] = [
translatedName: 'LOLCAT',
emoji: '🐱',
},
+ // Norwegian
+ {
+ shortName: 'no',
+ originalName: 'Norsk',
+ translatedName: 'Norwegian',
+ emoji: '🇳🇴',
+ },
+ // Slovak
+ {
+ shortName: 'sk',
+ originalName: 'Slovenčina',
+ translatedName: 'Slovak',
+ emoji: '🇸🇰',
+ },
{
shortName: 'nl',
originalName: 'Nederlands',
diff --git a/src/tools/server/translation-namespaces.ts b/src/tools/server/translation-namespaces.ts
index dab3acea9..daa866df2 100644
--- a/src/tools/server/translation-namespaces.ts
+++ b/src/tools/server/translation-namespaces.ts
@@ -33,6 +33,7 @@ export const dashboardNamespaces = [
'modules/dashdot',
'modules/overseerr',
'modules/common-media-cards',
+ 'modules/video-stream',
];
export const loginNamespaces = ['authentication/login'];
diff --git a/src/widgets/download-speed/Tile.tsx b/src/widgets/download-speed/Tile.tsx
new file mode 100644
index 000000000..1926b1c8d
--- /dev/null
+++ b/src/widgets/download-speed/Tile.tsx
@@ -0,0 +1,274 @@
+import {
+ Avatar,
+ Box,
+ Card,
+ Group,
+ Stack,
+ Title,
+ Text,
+ Tooltip,
+ useMantineTheme,
+} from '@mantine/core';
+import { useElementSize, useListState } from '@mantine/hooks';
+import { linearGradientDef } from '@nivo/core';
+import { Serie, Datum, ResponsiveLine } from '@nivo/line';
+import { IconDownload, IconUpload } from '@tabler/icons';
+import { useTranslation } from 'next-i18next';
+import { useEffect } from 'react';
+import { useConfigContext } from '../../config/provider';
+import { useGetDownloadClientsQueue } from '../../hooks/widgets/download-speed/useGetNetworkSpeed';
+import { useColorTheme } from '../../tools/color';
+import { humanFileSize } from '../../tools/humanFileSize';
+import {
+ NormalizedDownloadQueueResponse,
+ TorrentTotalDownload,
+} from '../../types/api/downloads/queue/NormalizedDownloadQueueResponse';
+import definition, { ITorrentNetworkTraffic } from './TorrentNetworkTrafficTile';
+
+interface TorrentNetworkTrafficTileProps {
+ widget: ITorrentNetworkTraffic;
+}
+
+export default function TorrentNetworkTrafficTile({ widget }: TorrentNetworkTrafficTileProps) {
+ const { config } = useConfigContext();
+ const { ref: refRoot, height: heightRoot } = useElementSize();
+ const { ref: refTitle, height: heightTitle } = useElementSize();
+ const { ref: refFooter, height: heightFooter } = useElementSize();
+ const { primaryColor, secondaryColor } = useColorTheme();
+ const { t } = useTranslation(`modules/${definition.id}`);
+
+ const [clientDataHistory, setClientDataHistory] = useListState();
+
+ const { data, dataUpdatedAt } = useGetDownloadClientsQueue();
+
+ useEffect(() => {
+ if (data) {
+ setClientDataHistory.append(data);
+ }
+
+ if (clientDataHistory.length < 30) {
+ return;
+ }
+ setClientDataHistory.remove(0);
+ }, [dataUpdatedAt]);
+
+ if (!data) {
+ return null;
+ }
+
+ const recoredAppsOverTime = clientDataHistory.flatMap((x) => x.apps.map((app) => app));
+
+ // removing duplicates the "naive" way: https://stackoverflow.com/a/9229821/15257712
+ const uniqueRecordedAppsOverTime = recoredAppsOverTime
+ .map((x) => x.appId)
+ .filter((item, position) => recoredAppsOverTime.map((y) => y.appId).indexOf(item) === position);
+
+ const lineChartData: Serie[] = uniqueRecordedAppsOverTime.flatMap((appId) => {
+ const records = recoredAppsOverTime.filter((x) => x.appId === appId);
+
+ const series: Serie[] = [
+ {
+ id: `download_${appId}`,
+ data: records.map((record, index) => ({
+ x: index,
+ y: record.totalDownload,
+ })),
+ },
+ ];
+
+ if (records.some((x) => x.type === 'torrent')) {
+ const torrentRecords = records.map((record, index): Datum | null => {
+ if (record.type !== 'torrent') {
+ return null;
+ }
+
+ return {
+ x: index,
+ y: record.totalUpload,
+ };
+ });
+ const filteredRecords = torrentRecords.filter((x) => x !== null) as Datum[];
+ series.push({
+ id: `upload_${appId}`,
+ data: filteredRecords,
+ });
+ }
+
+ return series;
+ });
+
+ const totalDownload = uniqueRecordedAppsOverTime
+ .map((appId) => {
+ const records = recoredAppsOverTime.filter((x) => x.appId === appId);
+ const lastRecord = records.at(-1);
+ return lastRecord?.totalDownload ?? 0;
+ })
+ .reduce((acc, n) => acc + n, 0);
+
+ const totalUpload = uniqueRecordedAppsOverTime
+ .map((appId) => {
+ const records = recoredAppsOverTime.filter((x) => x.appId === appId && x.type === 'torrent');
+ const lastRecord = records.at(-1) as TorrentTotalDownload;
+ return lastRecord?.totalUpload ?? 0;
+ })
+ .reduce((acc, n) => acc + n, 0);
+
+ const graphHeight = heightRoot - heightFooter - heightTitle;
+
+ const { colors } = useMantineTheme();
+
+ return (
+
+
+
+ {t('card.lineChart.title')}
+
+
+
+ {
+ const { points } = slice;
+
+ const recordsFromPoints = uniqueRecordedAppsOverTime.map((appId) => {
+ const records = recoredAppsOverTime.filter((x) => x.appId === appId);
+ const point = points.find((x) => x.id.includes(appId));
+ const pointIndex = Number(point?.data.x) ?? 0;
+ const color = point?.serieColor;
+ return {
+ record: records[pointIndex],
+ color,
+ };
+ });
+
+ return (
+
+
+
+ {recordsFromPoints.map((entry, index) => {
+ const app = config?.apps.find((x) => x.id === entry.record.appId);
+
+ if (!app) {
+ return null;
+ }
+
+ return (
+
+
+
+
+ {app.name}
+
+
+
+
+ {humanFileSize(entry.record.totalDownload, false)}
+
+
+
+ {entry.record.type === 'torrent' && (
+
+
+
+ {humanFileSize(entry.record.totalUpload, false)}
+
+
+ )}
+
+
+
+ );
+ })}
+
+
+
+ );
+ }}
+ data={lineChartData}
+ curve="monotoneX"
+ yFormat=" >-.2f"
+ axisLeft={null}
+ axisBottom={null}
+ axisRight={null}
+ enablePoints={false}
+ enableGridX={false}
+ enableGridY={false}
+ enableArea
+ defs={[
+ linearGradientDef('gradientA', [
+ { offset: 0, color: 'inherit' },
+ { offset: 100, color: 'inherit', opacity: 0 },
+ ]),
+ ]}
+ colors={lineChartData.flatMap((data) =>
+ data.id.toString().startsWith('upload_')
+ ? colors[secondaryColor][5]
+ : colors[primaryColor][5]
+ )}
+ fill={[{ match: '*', id: 'gradientA' }]}
+ margin={{ bottom: 5 }}
+ animate={false}
+ />
+
+
+
+
+
+
+
+
+ {humanFileSize(totalDownload, false)}
+
+
+
+
+
+ {humanFileSize(totalUpload, false)}
+
+
+
+
+ {uniqueRecordedAppsOverTime.map((appId, index) => {
+ const app = config?.apps.find((x) => x.id === appId);
+
+ if (!app) {
+ return null;
+ }
+
+ return (
+
+
+
+ );
+ })}
+
+
+
+ );
+}
+
+const AppAvatar = ({ iconUrl }: { iconUrl: string }) => {
+ const { colors, colorScheme } = useMantineTheme();
+
+ return (
+
+ );
+};
diff --git a/src/widgets/download-speed/TorrentNetworkTrafficTile.tsx b/src/widgets/download-speed/TorrentNetworkTrafficTile.tsx
index 4a0feff0a..85d579a74 100644
--- a/src/widgets/download-speed/TorrentNetworkTrafficTile.tsx
+++ b/src/widgets/download-speed/TorrentNetworkTrafficTile.tsx
@@ -1,31 +1,13 @@
-import {
- Avatar,
- Box,
- Card,
- Group,
- Stack,
- Text,
- Title,
- Tooltip,
- useMantineTheme,
-} from '@mantine/core';
-import { useElementSize, useListState } from '@mantine/hooks';
-import { linearGradientDef } from '@nivo/core';
-import { Datum, ResponsiveLine, Serie } from '@nivo/line';
-import { IconArrowsUpDown, IconDownload, IconUpload } from '@tabler/icons';
-import { useTranslation } from 'next-i18next';
-import { useEffect } from 'react';
-import { useConfigContext } from '../../config/provider';
-import { useGetDownloadClientsQueue } from '../../hooks/widgets/download-speed/useGetNetworkSpeed';
-import { useColorTheme } from '../../tools/color';
-import { humanFileSize } from '../../tools/humanFileSize';
-import {
- NormalizedDownloadQueueResponse,
- TorrentTotalDownload,
-} from '../../types/api/downloads/queue/NormalizedDownloadQueueResponse';
+import { IconArrowsUpDown } from '@tabler/icons';
+
+import dynamic from 'next/dynamic';
import { defineWidget } from '../helper';
import { IWidget } from '../widgets';
+const torrentNetworkTrafficTile = dynamic(() => import('./Tile'), {
+ ssr: false,
+});
+
const definition = defineWidget({
id: 'dlspeed',
icon: IconArrowsUpDown,
@@ -37,257 +19,9 @@ const definition = defineWidget({
maxWidth: 12,
maxHeight: 6,
},
- component: TorrentNetworkTrafficTile,
+ component: torrentNetworkTrafficTile,
});
export type ITorrentNetworkTraffic = IWidget<(typeof definition)['id'], typeof definition>;
-interface TorrentNetworkTrafficTileProps {
- widget: ITorrentNetworkTraffic;
-}
-
-function TorrentNetworkTrafficTile({ widget }: TorrentNetworkTrafficTileProps) {
- const { config } = useConfigContext();
- const { ref: refRoot, height: heightRoot } = useElementSize();
- const { ref: refTitle, height: heightTitle } = useElementSize();
- const { ref: refFooter, height: heightFooter } = useElementSize();
- const { primaryColor, secondaryColor } = useColorTheme();
- const { t } = useTranslation(`modules/${definition.id}`);
-
- const [clientDataHistory, setClientDataHistory] = useListState();
-
- const { data, dataUpdatedAt } = useGetDownloadClientsQueue();
-
- useEffect(() => {
- if (data) {
- setClientDataHistory.append(data);
- }
-
- if (clientDataHistory.length < 30) {
- return;
- }
- setClientDataHistory.remove(0);
- }, [dataUpdatedAt]);
-
- if (!data) {
- return null;
- }
-
- const recoredAppsOverTime = clientDataHistory.flatMap((x) => x.apps.map((app) => app));
-
- // removing duplicates the "naive" way: https://stackoverflow.com/a/9229821/15257712
- const uniqueRecordedAppsOverTime = recoredAppsOverTime
- .map((x) => x.appId)
- .filter((item, position) => recoredAppsOverTime.map((y) => y.appId).indexOf(item) === position);
-
- const lineChartData: Serie[] = uniqueRecordedAppsOverTime.flatMap((appId) => {
- const records = recoredAppsOverTime.filter((x) => x.appId === appId);
-
- const series: Serie[] = [
- {
- id: `download_${appId}`,
- data: records.map((record, index) => ({
- x: index,
- y: record.totalDownload,
- })),
- },
- ];
-
- if (records.some((x) => x.type === 'torrent')) {
- const torrentRecords = records.map((record, index): Datum | null => {
- if (record.type !== 'torrent') {
- return null;
- }
-
- return {
- x: index,
- y: record.totalUpload,
- };
- });
- const filteredRecords = torrentRecords.filter((x) => x !== null) as Datum[];
- series.push({
- id: `upload_${appId}`,
- data: filteredRecords,
- });
- }
-
- return series;
- });
-
- const totalDownload = uniqueRecordedAppsOverTime
- .map((appId) => {
- const records = recoredAppsOverTime.filter((x) => x.appId === appId);
- const lastRecord = records.at(-1);
- return lastRecord?.totalDownload ?? 0;
- })
- .reduce((acc, n) => acc + n, 0);
-
- const totalUpload = uniqueRecordedAppsOverTime
- .map((appId) => {
- const records = recoredAppsOverTime.filter((x) => x.appId === appId && x.type === 'torrent');
- const lastRecord = records.at(-1) as TorrentTotalDownload;
- return lastRecord?.totalUpload ?? 0;
- })
- .reduce((acc, n) => acc + n, 0);
-
- const graphHeight = heightRoot - heightFooter - heightTitle;
-
- const { colors } = useMantineTheme();
-
- return (
-
-
-
- {t('card.lineChart.title')}
-
-
-
- {
- const { points } = slice;
-
- const recordsFromPoints = uniqueRecordedAppsOverTime.map((appId) => {
- const records = recoredAppsOverTime.filter((x) => x.appId === appId);
- const point = points.find((x) => x.id.includes(appId));
- const pointIndex = Number(point?.data.x) ?? 0;
- const color = point?.serieColor;
- return {
- record: records[pointIndex],
- color,
- };
- });
-
- return (
-
-
-
- {recordsFromPoints.map((entry, index) => {
- const app = config?.apps.find((x) => x.id === entry.record.appId);
-
- if (!app) {
- return null;
- }
-
- return (
-
-
-
-
- {app.name}
-
-
-
-
- {humanFileSize(entry.record.totalDownload, false)}
-
-
-
- {entry.record.type === 'torrent' && (
-
-
-
- {humanFileSize(entry.record.totalUpload, false)}
-
-
- )}
-
-
-
- );
- })}
-
-
-
- );
- }}
- data={lineChartData}
- curve="monotoneX"
- yFormat=" >-.2f"
- axisLeft={null}
- axisBottom={null}
- axisRight={null}
- enablePoints={false}
- enableGridX={false}
- enableGridY={false}
- enableArea
- defs={[
- linearGradientDef('gradientA', [
- { offset: 0, color: 'inherit' },
- { offset: 100, color: 'inherit', opacity: 0 },
- ]),
- ]}
- colors={lineChartData.flatMap((data) =>
- data.id.toString().startsWith('upload_')
- ? colors[secondaryColor][5]
- : colors[primaryColor][5]
- )}
- fill={[{ match: '*', id: 'gradientA' }]}
- margin={{ bottom: 5 }}
- animate={false}
- />
-
-
-
-
-
-
-
-
- {humanFileSize(totalDownload, false)}
-
-
-
-
-
- {humanFileSize(totalUpload, false)}
-
-
-
-
- {uniqueRecordedAppsOverTime.map((appId, index) => {
- const app = config?.apps.find((x) => x.id === appId);
-
- if (!app) {
- return null;
- }
-
- return (
-
-
-
- );
- })}
-
-
-
- );
-}
-
-const AppAvatar = ({ iconUrl }: { iconUrl: string }) => {
- const { colors, colorScheme } = useMantineTheme();
-
- return (
-
- );
-};
-
export default definition;
diff --git a/src/widgets/index.ts b/src/widgets/index.ts
index e38a2ba53..aac770ead 100644
--- a/src/widgets/index.ts
+++ b/src/widgets/index.ts
@@ -5,6 +5,7 @@ import usenet from './useNet/UseNetTile';
import weather from './weather/WeatherTile';
import torrent from './torrent/TorrentTile';
import torrentNetworkTraffic from './download-speed/TorrentNetworkTrafficTile';
+import videoStream from './video/VideoStreamTile';
export default {
calendar,
@@ -14,4 +15,5 @@ export default {
'torrents-status': torrent,
dlspeed: torrentNetworkTraffic,
date,
+ 'video-stream': videoStream,
};
diff --git a/src/widgets/video/VideoFeed.tsx b/src/widgets/video/VideoFeed.tsx
new file mode 100644
index 000000000..ab4e4744b
--- /dev/null
+++ b/src/widgets/video/VideoFeed.tsx
@@ -0,0 +1,67 @@
+import { createStyles, LoadingOverlay } from '@mantine/core';
+import { useEffect, useRef, useState } from 'react';
+import videojs from 'video.js';
+import 'video.js/dist/video-js.css';
+
+interface VideoFeedProps {
+ source: string;
+ muted: boolean;
+ autoPlay: boolean;
+ controls: boolean;
+}
+
+const VideoFeed = ({ source, controls, autoPlay, muted }: VideoFeedProps) => {
+ const videoRef = useRef(null);
+ const [player, setPlayer] = useState>();
+
+ const { classes, cx } = useStyles();
+
+ useEffect(() => {
+ // make sure Video.js player is only initialized once
+ if (player) {
+ return;
+ }
+
+ const videoElement = videoRef.current;
+ if (!videoElement) {
+ return;
+ }
+
+ setPlayer(videojs(videoElement, { autoplay: autoPlay, muted, controls }, () => {}));
+ }, [videoRef]);
+
+ useEffect(
+ () => () => {
+ if (!player) {
+ return;
+ }
+
+ if (player.isDisposed()) {
+ return;
+ }
+
+ player.dispose();
+ },
+ [player]
+ );
+
+ return (
+ <>
+
+ {/* eslint-disable-next-line jsx-a11y/media-has-caption */}
+
+
+
+ >
+ );
+};
+
+const useStyles = createStyles(({ radius }) => ({
+ video: {
+ height: '100%',
+ borderRadius: radius.md,
+ overflow: 'hidden',
+ },
+}));
+
+export default VideoFeed;
diff --git a/src/widgets/video/VideoStreamTile.tsx b/src/widgets/video/VideoStreamTile.tsx
new file mode 100644
index 000000000..7db8a2c80
--- /dev/null
+++ b/src/widgets/video/VideoStreamTile.tsx
@@ -0,0 +1,70 @@
+import { Center, Group, Stack, Title } from '@mantine/core';
+import { IconDeviceCctv, IconHeartBroken } from '@tabler/icons';
+import { useTranslation } from 'next-i18next';
+import dynamic from 'next/dynamic';
+import { defineWidget } from '../helper';
+import { IWidget } from '../widgets';
+
+const VideoFeed = dynamic(() => import('./VideoFeed'), { ssr: false });
+
+const definition = defineWidget({
+ id: 'video-stream',
+ icon: IconDeviceCctv,
+ options: {
+ FeedUrl: {
+ type: 'text',
+ defaultValue: '',
+ },
+ autoPlay: {
+ type: 'switch',
+ defaultValue: true,
+ },
+ muted: {
+ type: 'switch',
+ defaultValue: true,
+ },
+ controls: {
+ type: 'switch',
+ defaultValue: false,
+ },
+ },
+ gridstack: {
+ minWidth: 3,
+ minHeight: 2,
+ maxWidth: 12,
+ maxHeight: 12,
+ },
+ component: VideoStreamWidget,
+});
+
+export type VideoStreamWidget = IWidget<(typeof definition)['id'], typeof definition>;
+
+interface VideoStreamWidgetProps {
+ widget: VideoStreamWidget;
+}
+
+function VideoStreamWidget({ widget }: VideoStreamWidgetProps) {
+ const { t } = useTranslation('modules/video-stream');
+ if (!widget.properties.FeedUrl) {
+ return (
+
+
+
+ {t('errors.invalidStream')}
+
+
+ );
+ }
+ return (
+
+
+
+ );
+}
+
+export default definition;
diff --git a/yarn.lock b/yarn.lock
index fd3a0cb01..9eae88698 100644
--- a/yarn.lock
+++ b/yarn.lock
@@ -31,7 +31,7 @@ __metadata:
languageName: node
linkType: hard
-"@babel/core@npm:^7.11.6, @babel/core@npm:^7.12.3, @babel/core@npm:^7.14.3":
+"@babel/core@npm:^7.11.6, @babel/core@npm:^7.12.3":
version: 7.20.12
resolution: "@babel/core@npm:7.20.12"
dependencies:
@@ -362,16 +362,7 @@ __metadata:
languageName: node
linkType: hard
-"@babel/runtime@npm:7.15.3":
- version: 7.15.3
- resolution: "@babel/runtime@npm:7.15.3"
- dependencies:
- regenerator-runtime: ^0.13.4
- checksum: 2f0b8d2d4e36035ab1d84af0ec26aafa098536870f27c8e07de0a0e398f7a394fdea68a88165535ffb52ded6a68912bdc3450bdf91f229eb132e1c89470789f5
- languageName: node
- linkType: hard
-
-"@babel/runtime@npm:^7.10.2, @babel/runtime@npm:^7.12.5, @babel/runtime@npm:^7.13.10, @babel/runtime@npm:^7.14.5, @babel/runtime@npm:^7.17.2, @babel/runtime@npm:^7.18.3, @babel/runtime@npm:^7.18.6, @babel/runtime@npm:^7.19.0, @babel/runtime@npm:^7.20.7, @babel/runtime@npm:^7.5.5, @babel/runtime@npm:^7.8.7":
+"@babel/runtime@npm:^7.10.2, @babel/runtime@npm:^7.11.2, @babel/runtime@npm:^7.12.5, @babel/runtime@npm:^7.13.10, @babel/runtime@npm:^7.14.5, @babel/runtime@npm:^7.17.2, @babel/runtime@npm:^7.18.3, @babel/runtime@npm:^7.18.6, @babel/runtime@npm:^7.20.7, @babel/runtime@npm:^7.5.5, @babel/runtime@npm:^7.8.7":
version: 7.20.13
resolution: "@babel/runtime@npm:7.20.13"
dependencies:
@@ -516,55 +507,6 @@ __metadata:
languageName: node
linkType: hard
-"@dnd-kit/accessibility@npm:^3.0.0":
- version: 3.0.1
- resolution: "@dnd-kit/accessibility@npm:3.0.1"
- dependencies:
- tslib: ^2.0.0
- peerDependencies:
- react: ">=16.8.0"
- checksum: 0afc2c0fce9a1c107453620ca0da1778f182d340e74ffbc6e369ef0ac8943cafb929d3a6c0891d9b915aa23b2b92137ff4fad958f43118466586d8129a3359d5
- languageName: node
- linkType: hard
-
-"@dnd-kit/core@npm:^6.0.5":
- version: 6.0.7
- resolution: "@dnd-kit/core@npm:6.0.7"
- dependencies:
- "@dnd-kit/accessibility": ^3.0.0
- "@dnd-kit/utilities": ^3.2.1
- tslib: ^2.0.0
- peerDependencies:
- react: ">=16.8.0"
- react-dom: ">=16.8.0"
- checksum: f7abe49519da5d60f69bd36ab632ecdedc0372653763065c00b1899f3ed2c1954b5f6ab0bed14790afe11da636b405f8839dc2cad805ef61a3885141f62f9cb1
- languageName: node
- linkType: hard
-
-"@dnd-kit/sortable@npm:^7.0.1":
- version: 7.0.2
- resolution: "@dnd-kit/sortable@npm:7.0.2"
- dependencies:
- "@dnd-kit/utilities": ^3.2.0
- tslib: ^2.0.0
- peerDependencies:
- "@dnd-kit/core": ^6.0.7
- react: ">=16.8.0"
- checksum: 4ce705aceb15766a0deefe25a9d95a87e9413c3fb9088ea3eb0962e57f844895000117fcec7c0944a0d4ae4e1e889cfa69e3d3778164d4d23115fb1edb218283
- languageName: node
- linkType: hard
-
-"@dnd-kit/utilities@npm:^3.2.0, @dnd-kit/utilities@npm:^3.2.1":
- version: 3.2.1
- resolution: "@dnd-kit/utilities@npm:3.2.1"
- dependencies:
- tslib: ^2.0.0
- peerDependencies:
- react: ">=16.8.0"
- checksum: 038fd5cc1328bf4c9dca17cd48046e5a687bbf9d904c7197f851aab869ab52d9dee2734b2e255256fd6158245acd00063a23deed962c7673c0fadfbf061f04ca
- languageName: node
- linkType: hard
-
"@emotion/babel-plugin@npm:^11.10.5":
version: 11.10.5
resolution: "@emotion/babel-plugin@npm:11.10.5"
@@ -1455,58 +1397,58 @@ __metadata:
languageName: node
linkType: hard
-"@nivo/annotations@npm:0.79.1":
- version: 0.79.1
- resolution: "@nivo/annotations@npm:0.79.1"
+"@nivo/annotations@npm:0.80.0":
+ version: 0.80.0
+ resolution: "@nivo/annotations@npm:0.80.0"
dependencies:
- "@nivo/colors": 0.79.1
- "@react-spring/web": 9.3.1
+ "@nivo/colors": 0.80.0
+ "@react-spring/web": 9.4.5
lodash: ^4.17.21
peerDependencies:
- "@nivo/core": 0.79.0
- react: ">= 16.14.0 < 18.0.0"
- checksum: 36b94fc65d82af3657967f8ba0a30ff888f1780e0cd17f39b3b00d5bc042bf9a66d78671baafa139c0caf804ac3c6fd8c6da41a61a0cb3f8cb0952eddb55605b
+ "@nivo/core": 0.80.0
+ react: ">= 16.14.0 < 19.0.0"
+ checksum: 6b2dcc3cc443a660b10feab378b816e84f8aff4390345f8316852d88dcd893af0c8de63aad6bb6296ae13c55e4cce4a57f3f3898f5fdac03bb756df24a81d3fd
languageName: node
linkType: hard
-"@nivo/axes@npm:0.79.0":
- version: 0.79.0
- resolution: "@nivo/axes@npm:0.79.0"
+"@nivo/axes@npm:0.80.0":
+ version: 0.80.0
+ resolution: "@nivo/axes@npm:0.80.0"
dependencies:
- "@nivo/scales": 0.79.0
- "@react-spring/web": 9.3.1
+ "@nivo/scales": 0.80.0
+ "@react-spring/web": 9.4.5
d3-format: ^1.4.4
d3-time-format: ^3.0.0
peerDependencies:
- "@nivo/core": 0.79.0
+ "@nivo/core": 0.80.0
prop-types: ">= 15.5.10 < 16.0.0"
- react: ">= 16.14.0 < 18.0.0"
- checksum: 8f83a1b5623289c5e901e99b708c8326d758fcc64a8687954c95930c6f584599b0c76f8c5b5579e7208348c096a6c12a73736b0d7cb7cb8140107f0f210749ca
+ react: ">= 16.14.0 < 19.0.0"
+ checksum: 59cea2b3f2dc547f3ebbe920b4c789ac8c5dd4b3e5ba3c323d84f63d052faf813655cca8bb861a035ee064a8d71931bb35e956fc581051c0e86c4a80a1e581df
languageName: node
linkType: hard
-"@nivo/colors@npm:0.79.1":
- version: 0.79.1
- resolution: "@nivo/colors@npm:0.79.1"
+"@nivo/colors@npm:0.80.0":
+ version: 0.80.0
+ resolution: "@nivo/colors@npm:0.80.0"
dependencies:
d3-color: ^2.0.0
d3-scale: ^3.2.3
d3-scale-chromatic: ^2.0.0
lodash: ^4.17.21
peerDependencies:
- "@nivo/core": 0.79.0
+ "@nivo/core": 0.80.0
prop-types: ">= 15.5.10 < 16.0.0"
- react: ">= 16.14.0 < 18.0.0"
- checksum: a6ed80b2d8e03ccc1b1a5d16d6bb06150067c01b259e7cf077638cf6bffb543ae2aadd6077add84aa62d6428d48259f52e816d63a34d2c7847cc7dc12317e271
+ react: ">= 16.14.0 < 19.0.0"
+ checksum: 0dc2044c984d8180d2f0a13fba6b6cdda0a18eec6ef71e9e523794f7ba70ed896231840f22c93f7e30b8730fde26ec07fff8e3d08fef120e91c8a9d552aa1fca
languageName: node
linkType: hard
-"@nivo/core@npm:^0.79.0":
- version: 0.79.0
- resolution: "@nivo/core@npm:0.79.0"
+"@nivo/core@npm:^0.80.0":
+ version: 0.80.0
+ resolution: "@nivo/core@npm:0.80.0"
dependencies:
- "@nivo/recompose": 0.79.0
- "@react-spring/web": 9.3.1
+ "@nivo/recompose": 0.80.0
+ "@react-spring/web": 9.4.5
d3-color: ^2.0.0
d3-format: ^1.4.4
d3-interpolate: ^2.0.1
@@ -1516,89 +1458,89 @@ __metadata:
d3-time-format: ^3.0.0
lodash: ^4.17.21
peerDependencies:
- "@nivo/tooltip": 0.79.0
+ "@nivo/tooltip": 0.80.0
prop-types: ">= 15.5.10 < 16.0.0"
- react: ">= 16.14.0 < 18.0.0"
- checksum: 371fa0fd897cf1722e7705e6f58154d5e8efad1f68df2b577c6b26c9261a9f4e02afd506a77bc9041bceec539911f9dad764a8dfdd792ba694785687cd6ad1bd
+ react: ">= 16.14.0 < 19.0.0"
+ checksum: 05fd9ccc9d9876affea17498a2007f5974641c7a2bb1c12c4d8f97bdae48519dd5882c65653074b6756d14eef47dbaeaf8b8243d3e5389efd3d1e180ecbfde75
languageName: node
linkType: hard
-"@nivo/legends@npm:0.79.1":
- version: 0.79.1
- resolution: "@nivo/legends@npm:0.79.1"
+"@nivo/legends@npm:0.80.0":
+ version: 0.80.0
+ resolution: "@nivo/legends@npm:0.80.0"
peerDependencies:
- "@nivo/core": 0.79.0
+ "@nivo/core": 0.80.0
prop-types: ">= 15.5.10 < 16.0.0"
- react: ">= 16.14.0 < 18.0.0"
- checksum: 1f4bb8da28352d81771d50ce6d5929c9fefe1de9f682cd537e4a718c39828aba3df0c8a50887467571d79a36e329e41b0699c1cd9e14fd6e98f0d5771e887b8b
+ react: ">= 16.14.0 < 19.0.0"
+ checksum: 659aba35105143ac7da663a51bc6a69f815e23efd278b8b1314bd48b9c853f4c3b7e9cf61de1439390eff3983b754eaea5dd3923fa2caad97b0fca6133a05ae9
languageName: node
linkType: hard
-"@nivo/line@npm:^0.79.1":
- version: 0.79.1
- resolution: "@nivo/line@npm:0.79.1"
+"@nivo/line@npm:^0.80.0":
+ version: 0.80.0
+ resolution: "@nivo/line@npm:0.80.0"
dependencies:
- "@nivo/annotations": 0.79.1
- "@nivo/axes": 0.79.0
- "@nivo/colors": 0.79.1
- "@nivo/legends": 0.79.1
- "@nivo/scales": 0.79.0
- "@nivo/tooltip": 0.79.0
- "@nivo/voronoi": 0.79.0
- "@react-spring/web": 9.3.1
+ "@nivo/annotations": 0.80.0
+ "@nivo/axes": 0.80.0
+ "@nivo/colors": 0.80.0
+ "@nivo/legends": 0.80.0
+ "@nivo/scales": 0.80.0
+ "@nivo/tooltip": 0.80.0
+ "@nivo/voronoi": 0.80.0
+ "@react-spring/web": 9.4.5
d3-shape: ^1.3.5
peerDependencies:
- "@nivo/core": 0.79.0
+ "@nivo/core": 0.80.0
prop-types: ">= 15.5.10 < 16.0.0"
- react: ">= 16.14.0 < 18.0.0"
- checksum: 3341c70df08d275c57d47e8f7f2eb89c0b584e45971188289e0d5c5a38988650c0fc4e22b2ca51ae4f1ddc4083b718f038a12f2becad7185b79b2fc1cc72a100
+ react: ">= 16.14.0 < 19.0.0"
+ checksum: e2d83971e5d530b4465e628f926d2b311a39ce0fa137b0c942532ca58959d78ced21166e83ce9644c91bf2a2929ac539fdd4307fc7ceda986050346b662de1a3
languageName: node
linkType: hard
-"@nivo/recompose@npm:0.79.0":
- version: 0.79.0
- resolution: "@nivo/recompose@npm:0.79.0"
+"@nivo/recompose@npm:0.80.0":
+ version: 0.80.0
+ resolution: "@nivo/recompose@npm:0.80.0"
dependencies:
react-lifecycles-compat: ^3.0.4
peerDependencies:
- react: ">= 16.14.0 < 18.0.0"
- checksum: acc0dc5bde0b67cdf8e5970cbec7788fbc91e3567b7fbeb5f470e8e0b706aeb5acae885d9413d14d845fc11032611ad1011e3a9fc4055acbc55a2baecd9e16ff
+ react: ">= 16.14.0 < 19.0.0"
+ checksum: 5495eeba137f4d3a46d1ada99948c5b097ccf00c532f10a627bb0525c6fbab14d93c9297a25d90c0041f72432efbd4e9a2ef5d408063e2c4cf25d05f33b1fcc5
languageName: node
linkType: hard
-"@nivo/scales@npm:0.79.0":
- version: 0.79.0
- resolution: "@nivo/scales@npm:0.79.0"
+"@nivo/scales@npm:0.80.0":
+ version: 0.80.0
+ resolution: "@nivo/scales@npm:0.80.0"
dependencies:
d3-scale: ^3.2.3
d3-time: ^1.0.11
d3-time-format: ^3.0.0
lodash: ^4.17.21
- checksum: 4b63b85f842fd21b90252cb1a848aa9772f6a035c2f1b3541d4df795b12db44ca4ac15f59b3cca19c45b5a27042508d32ba491142a517169a580b0d5f397d20b
+ checksum: 75bdc838ab593306268cda2c098430cb5ff1f20ab73dd5d61845fa013e30fd85020c910c9dd0a7641d90ee04f86031af71a250f5f5992fe74a23bcf4fb954f95
languageName: node
linkType: hard
-"@nivo/tooltip@npm:0.79.0":
- version: 0.79.0
- resolution: "@nivo/tooltip@npm:0.79.0"
+"@nivo/tooltip@npm:0.80.0":
+ version: 0.80.0
+ resolution: "@nivo/tooltip@npm:0.80.0"
dependencies:
- "@react-spring/web": 9.3.1
+ "@react-spring/web": 9.4.5
peerDependencies:
- "@nivo/core": 0.79.0
- checksum: ae74abebd077f5e77d041d0845340f1ffcbd2461e55112b8ac81fbf68f58a6d475ae30dc314ca11b99a4b85bbeaa5aecbe39191cc6ce55beddf83f43d1edab8b
+ "@nivo/core": 0.80.0
+ checksum: bc0eec5d0d05f653186b040105d7451c823d8ee0844b7767f3d827424346d6379966452055be168994132ca8610f1956798274701a1bb948d3e8d961f23a07b7
languageName: node
linkType: hard
-"@nivo/voronoi@npm:0.79.0":
- version: 0.79.0
- resolution: "@nivo/voronoi@npm:0.79.0"
+"@nivo/voronoi@npm:0.80.0":
+ version: 0.80.0
+ resolution: "@nivo/voronoi@npm:0.80.0"
dependencies:
d3-delaunay: ^5.3.0
d3-scale: ^3.2.3
peerDependencies:
- "@nivo/core": 0.79.0
- react: ">= 16.14.0 < 18.0.0"
- checksum: d479051850a519c328ce8dd6fbbc5998575cb2fc16351e7e516593be5ad21de0f7effe18ad09a2d596abcd90c055a560a21e125b7c8b2a859a309e7737d028e1
+ "@nivo/core": 0.80.0
+ react: ">= 16.14.0 < 19.0.0"
+ checksum: 7b4f844611f64742c5ed14e94fa7a3f813d0b6cde04c40c3d597e0d4180977db8fe957ff4f4b1c5a131e4c43e20a01e684c8b934e0b9583d726b2b13986e9efb
languageName: node
linkType: hard
@@ -1789,69 +1731,70 @@ __metadata:
languageName: node
linkType: hard
-"@react-spring/animated@npm:~9.3.0":
- version: 9.3.2
- resolution: "@react-spring/animated@npm:9.3.2"
+"@react-spring/animated@npm:~9.4.5":
+ version: 9.4.5
+ resolution: "@react-spring/animated@npm:9.4.5"
dependencies:
- "@react-spring/shared": ~9.3.0
- "@react-spring/types": ~9.3.0
+ "@react-spring/shared": ~9.4.5
+ "@react-spring/types": ~9.4.5
peerDependencies:
- react: ^16.8.0 || ^17.0.0
- checksum: e42fd174403a692d20f9cdc2511f5f4b1eed6282b4160d1eb0d8421ccce0524f4eaee968712f4e5f9b907a9f941ae3dd037ad35f13eacef8860fcfb90243a4fc
+ react: ^16.8.0 || >=17.0.0 || >=18.0.0
+ checksum: e85c0bd65bd76e1c8ca830b22e31956401e29593cbc1df7560f5b77bd7b31acded61e1732717803cdfd993f30c2559ffbd6fb5f0d48b1c749323bee3597d7834
languageName: node
linkType: hard
-"@react-spring/core@npm:~9.3.0":
- version: 9.3.2
- resolution: "@react-spring/core@npm:9.3.2"
+"@react-spring/core@npm:~9.4.5":
+ version: 9.4.5
+ resolution: "@react-spring/core@npm:9.4.5"
dependencies:
- "@react-spring/animated": ~9.3.0
- "@react-spring/shared": ~9.3.0
- "@react-spring/types": ~9.3.0
+ "@react-spring/animated": ~9.4.5
+ "@react-spring/rafz": ~9.4.5
+ "@react-spring/shared": ~9.4.5
+ "@react-spring/types": ~9.4.5
peerDependencies:
- react: ^16.8.0 || ^17.0.0
- checksum: 1504143b9446d32c3877c8224c3fee3b6d18c0218b04b6766de7164ed645932808066ef12af63b06123a3da168f6bbc0fdf325c337b17d7f13d8a09f4a37f608
+ react: ^16.8.0 || >=17.0.0 || >=18.0.0
+ checksum: e5aee7f68f15c9d5d6f230703d22cb34edb8aae3ba0d70c01847f7c78e47f9f8177f87c095aff5ed1b98c2a218238d5ec28f9bf451f3e13bfdad6e3170a60226
languageName: node
linkType: hard
-"@react-spring/rafz@npm:~9.3.0":
- version: 9.3.2
- resolution: "@react-spring/rafz@npm:9.3.2"
- checksum: 8213d4940f23f93057dc2e7dc1e4aeca22622bfcfc9b42ab60d783e82f7ffe067e9537e7a397cfcb5634ea7e46d8ea55d06ffe4bd67a99f09ce06dde5e13957a
+"@react-spring/rafz@npm:~9.4.5":
+ version: 9.4.5
+ resolution: "@react-spring/rafz@npm:9.4.5"
+ checksum: 0ac722881b107baf55338a0123bc889d88faca53f034eb6d26ebab3ae6e4dc1717654b09d0e6e5e9bf587c2ba182d6aae90ca22c833dc55024ee52d88f8579a2
languageName: node
linkType: hard
-"@react-spring/shared@npm:~9.3.0":
- version: 9.3.2
- resolution: "@react-spring/shared@npm:9.3.2"
+"@react-spring/shared@npm:~9.4.5":
+ version: 9.4.5
+ resolution: "@react-spring/shared@npm:9.4.5"
dependencies:
- "@react-spring/rafz": ~9.3.0
- "@react-spring/types": ~9.3.0
+ "@react-spring/rafz": ~9.4.5
+ "@react-spring/types": ~9.4.5
peerDependencies:
- react: ^16.8.0 || ^17.0.0
- checksum: b04dc19fc6a8d585f38af74149e94fbf12b2a9ae9af6254abb02f105a7f77ce6a1e987ff7aaf4bb013786cd0959e41fca45709c4d57094abfca7b12db507a243
+ react: ^16.8.0 || >=17.0.0 || >=18.0.0
+ checksum: 2f20e410c03166de19b2d668d6841d24778c37da3083d37fe70acfcf2cf0cb3bd4a5cf92d42f1590b9de5d0a6603dc75cf8c319c0089df4e713226364a204b51
languageName: node
linkType: hard
-"@react-spring/types@npm:~9.3.0":
- version: 9.3.2
- resolution: "@react-spring/types@npm:9.3.2"
- checksum: 29fb2be7cd44c3de534d6b0d914b1c51fdc6ea354098727e605218b0e733c3c0ab01f54670f1b8b9b1949d984e399ce3ec153640ae9c590aee9622f33900d16b
+"@react-spring/types@npm:~9.4.5":
+ version: 9.4.5
+ resolution: "@react-spring/types@npm:9.4.5"
+ checksum: f8fecb54015de23899cc595d949e3676835e612d4dda05af470cab9ee20dd98c86ebca1c4ba75d2a9f63a4acba4b75febf6bab71da0b2e9556e6ff684b22f139
languageName: node
linkType: hard
-"@react-spring/web@npm:9.3.1":
- version: 9.3.1
- resolution: "@react-spring/web@npm:9.3.1"
+"@react-spring/web@npm:9.4.5":
+ version: 9.4.5
+ resolution: "@react-spring/web@npm:9.4.5"
dependencies:
- "@react-spring/animated": ~9.3.0
- "@react-spring/core": ~9.3.0
- "@react-spring/shared": ~9.3.0
- "@react-spring/types": ~9.3.0
+ "@react-spring/animated": ~9.4.5
+ "@react-spring/core": ~9.4.5
+ "@react-spring/shared": ~9.4.5
+ "@react-spring/types": ~9.4.5
peerDependencies:
- react: ^16.8.0 || ^17.0.0
- react-dom: ^16.8.0 || ^17.0.0
- checksum: 223ce3f849df23a7c4f630ea1e5be91a12257e35e2c8c10b939568302176d3881c1037d50daca4238a6383ddaa477cdc4971163a9da181b790abe91cae4b8c50
+ react: ^16.8.0 || >=17.0.0 || >=18.0.0
+ react-dom: ^16.8.0 || >=17.0.0 || >=18.0.0
+ checksum: 9d7eea4b8b0399c205743acade141679f3f729a64631f8480d44d14bb59781ea807977a4671cbe1d56e31389b69ef325ec975275446f08997f555f2981d220c8
languageName: node
linkType: hard
@@ -2082,15 +2025,6 @@ __metadata:
languageName: node
linkType: hard
-"@types/hast@npm:^2.0.0":
- version: 2.3.4
- resolution: "@types/hast@npm:2.3.4"
- dependencies:
- "@types/unist": "*"
- checksum: fff47998f4c11e21a7454b58673f70478740ecdafd95aaf50b70a3daa7da9cdc57315545bf9c039613732c40b7b0e9e49d11d03fe9a4304721cdc3b29a88141e
- languageName: node
- linkType: hard
-
"@types/hoist-non-react-statics@npm:^3.3.1":
version: 3.3.1
resolution: "@types/hoist-non-react-statics@npm:3.3.1"
@@ -2133,7 +2067,7 @@ __metadata:
languageName: node
linkType: hard
-"@types/json-schema@npm:^7.0.5, @types/json-schema@npm:^7.0.9":
+"@types/json-schema@npm:^7.0.9":
version: 7.0.11
resolution: "@types/json-schema@npm:7.0.11"
checksum: 527bddfe62db9012fccd7627794bd4c71beb77601861055d87e3ee464f2217c85fca7a4b56ae677478367bbd248dbde13553312b7d4dbc702a2f2bbf60c4018d
@@ -2184,20 +2118,6 @@ __metadata:
languageName: node
linkType: hard
-"@types/parse5@npm:^6.0.0":
- version: 6.0.3
- resolution: "@types/parse5@npm:6.0.3"
- checksum: ddb59ee4144af5dfcc508a8dcf32f37879d11e12559561e65788756b95b33e6f03ea027d88e1f5408f9b7bfb656bf630ace31a2169edf44151daaf8dd58df1b7
- languageName: node
- linkType: hard
-
-"@types/ping@npm:^0.4.1":
- version: 0.4.1
- resolution: "@types/ping@npm:0.4.1"
- checksum: 9b94837fe66df70558c5a42b0e0c8371b4950ab56b96c42c8df809ff2cf52477dd0a7e01d2e6b38af8bb6683b3dcb54587960b96b4b1f3d40fdb529aea348ad0
- languageName: node
- linkType: hard
-
"@types/prettier@npm:^2.1.5":
version: 2.7.2
resolution: "@types/prettier@npm:2.7.2"
@@ -2205,6 +2125,13 @@ __metadata:
languageName: node
linkType: hard
+"@types/prismjs@npm:^1.26.0":
+ version: 1.26.0
+ resolution: "@types/prismjs@npm:1.26.0"
+ checksum: cd5e7a6214c1f4213ec512a5fcf6d8fe37a56b813fc57ac95b5ff5ee074742bfdbd2f2730d9fd985205bf4586728e09baa97023f739e5aa1c9735a7c1ecbd11a
+ languageName: node
+ linkType: hard
+
"@types/prop-types@npm:*":
version: 15.7.5
resolution: "@types/prop-types@npm:15.7.5"
@@ -2254,13 +2181,6 @@ __metadata:
languageName: node
linkType: hard
-"@types/unist@npm:*, @types/unist@npm:^2.0.0":
- version: 2.0.6
- resolution: "@types/unist@npm:2.0.6"
- checksum: 25cb860ff10dde48b54622d58b23e66214211a61c84c0f15f88d38b61aa1b53d4d46e42b557924a93178c501c166aa37e28d7f6d994aba13d24685326272d5db
- languageName: node
- linkType: hard
-
"@types/uuid@npm:^8.3.4":
version: 8.3.4
resolution: "@types/uuid@npm:8.3.4"
@@ -2268,6 +2188,13 @@ __metadata:
languageName: node
linkType: hard
+"@types/video.js@npm:^7.3.51":
+ version: 7.3.51
+ resolution: "@types/video.js@npm:7.3.51"
+ checksum: 95b8e75da82b401965bd2b31648f7917495b9f2eda3773e1c50f027ed1f457760731912c71cf2c4e8c4b3087b29844bdcc92577bb56ae5c49b771039f7da819e
+ languageName: node
+ linkType: hard
+
"@types/yargs-parser@npm:*":
version: 21.0.0
resolution: "@types/yargs-parser@npm:21.0.0"
@@ -2405,18 +2332,61 @@ __metadata:
languageName: node
linkType: hard
-"@uiw/react-textarea-code-editor@npm:v1.4.4":
- version: 1.4.4
- resolution: "@uiw/react-textarea-code-editor@npm:1.4.4"
+"@videojs/http-streaming@npm:3.0.0":
+ version: 3.0.0
+ resolution: "@videojs/http-streaming@npm:3.0.0"
dependencies:
- "@babel/runtime": 7.15.3
- "@mapbox/rehype-prism": 0.7.0
- rehype: 12.0.0
+ "@babel/runtime": ^7.12.5
+ "@videojs/vhs-utils": 4.0.0
+ aes-decrypter: 4.0.1
+ global: ^4.4.0
+ m3u8-parser: ^6.0.0
+ mpd-parser: ^1.0.1
+ mux.js: 6.2.0
+ video.js: ^7 || ^8
peerDependencies:
- "@babel/runtime": ">=7.10.0"
- react: ">=16.9.0"
- react-dom: ">=16.9.0"
- checksum: 180f81482664d2f61f3d5af7fe6ddd605e10b84c74f29b42dc315a9760b097ba76f2b955a48b379061eadc4e679dedd17d52603b97d440f774d0cc8146ba74f1
+ video.js: ^7 || ^8
+ checksum: e479cd981a067e9b28c9c90f41936b5587939060690f4eabdbbe5ca54adb509515e03270297a03b545087d76dfd1ab7b9461e5e1ef62a8e0ed57d80fa52bbe2c
+ languageName: node
+ linkType: hard
+
+"@videojs/vhs-utils@npm:4.0.0, @videojs/vhs-utils@npm:^4.0.0":
+ version: 4.0.0
+ resolution: "@videojs/vhs-utils@npm:4.0.0"
+ dependencies:
+ "@babel/runtime": ^7.12.5
+ global: ^4.4.0
+ url-toolkit: ^2.2.1
+ checksum: a824900d0173478c80ee9683f67cc041e204d79ac280ae369adb03357d51d8a51b296bd6aff96b2cce66633a63f05a10d11d53da6ec063ee7c4d6e38dabd826e
+ languageName: node
+ linkType: hard
+
+"@videojs/vhs-utils@npm:^3.0.5":
+ version: 3.0.5
+ resolution: "@videojs/vhs-utils@npm:3.0.5"
+ dependencies:
+ "@babel/runtime": ^7.12.5
+ global: ^4.4.0
+ url-toolkit: ^2.2.1
+ checksum: 637dc9a8848027eab4213d6e85439d216577d0cb0346767c15bbb07a5a730aa30545f0b5d7bfd636f40212e490f34bf103e331f0bc180b4d3c245e77f30b437f
+ languageName: node
+ linkType: hard
+
+"@videojs/xhr@npm:2.6.0":
+ version: 2.6.0
+ resolution: "@videojs/xhr@npm:2.6.0"
+ dependencies:
+ "@babel/runtime": ^7.5.5
+ global: ~4.4.0
+ is-function: ^1.0.1
+ checksum: 217d3d49f8088461959840f93f0b45d713e6d03254d89352e2eb4bfca9501eee03bac25d0ad878e976c9cbec902039210a86906ef57a5f8d86bfdfa1a3999def
+ languageName: node
+ linkType: hard
+
+"@xmldom/xmldom@npm:^0.8.3":
+ version: 0.8.6
+ resolution: "@xmldom/xmldom@npm:0.8.6"
+ checksum: f17ac6d99a971a6aeb831fcfc5cfa86f367664e45815046548814b2deb17ccc421fef4e0d5ba29e66179d112b552f6caa5680064f8e7bd8a389b788a60404c8e
languageName: node
linkType: hard
@@ -2452,6 +2422,18 @@ __metadata:
languageName: node
linkType: hard
+"aes-decrypter@npm:4.0.1, aes-decrypter@npm:^4.0.1":
+ version: 4.0.1
+ resolution: "aes-decrypter@npm:4.0.1"
+ dependencies:
+ "@babel/runtime": ^7.12.5
+ "@videojs/vhs-utils": ^3.0.5
+ global: ^4.4.0
+ pkcs7: ^1.0.4
+ checksum: c09f47e928d88af2387690e47e60001be74095c10007fe44ef57663db17ee8e391310c6f0b023bc63257afe442900cc916f55fba7dd27ec1c394d616b062d664
+ languageName: node
+ linkType: hard
+
"agent-base@npm:6, agent-base@npm:^6.0.2":
version: 6.0.2
resolution: "agent-base@npm:6.0.2"
@@ -2482,40 +2464,6 @@ __metadata:
languageName: node
linkType: hard
-"ajv-formats@npm:^2.1.1":
- version: 2.1.1
- resolution: "ajv-formats@npm:2.1.1"
- dependencies:
- ajv: ^8.0.0
- peerDependencies:
- ajv: ^8.0.0
- peerDependenciesMeta:
- ajv:
- optional: true
- checksum: 4a287d937f1ebaad4683249a4c40c0fa3beed30d9ddc0adba04859026a622da0d317851316ea64b3680dc60f5c3c708105ddd5d5db8fe595d9d0207fd19f90b7
- languageName: node
- linkType: hard
-
-"ajv-keywords@npm:^3.5.2":
- version: 3.5.2
- resolution: "ajv-keywords@npm:3.5.2"
- peerDependencies:
- ajv: ^6.9.1
- checksum: 7dc5e5931677a680589050f79dcbe1fefbb8fea38a955af03724229139175b433c63c68f7ae5f86cf8f65d55eb7c25f75a046723e2e58296707617ca690feae9
- languageName: node
- linkType: hard
-
-"ajv-keywords@npm:^5.0.0":
- version: 5.1.0
- resolution: "ajv-keywords@npm:5.1.0"
- dependencies:
- fast-deep-equal: ^3.1.3
- peerDependencies:
- ajv: ^8.8.2
- checksum: c35193940b853119242c6757787f09ecf89a2c19bcd36d03ed1a615e710d19d450cb448bfda407b939aba54b002368c8bff30529cc50a0536a8e10bcce300421
- languageName: node
- linkType: hard
-
"ajv@npm:^6.10.0, ajv@npm:^6.12.4":
version: 6.12.6
resolution: "ajv@npm:6.12.6"
@@ -2528,18 +2476,6 @@ __metadata:
languageName: node
linkType: hard
-"ajv@npm:^8.0.0, ajv@npm:^8.8.0":
- version: 8.12.0
- resolution: "ajv@npm:8.12.0"
- dependencies:
- fast-deep-equal: ^3.1.1
- json-schema-traverse: ^1.0.0
- require-from-string: ^2.0.2
- uri-js: ^4.2.2
- checksum: 4dc13714e316e67537c8b31bc063f99a1d9d9a497eb4bbd55191ac0dcd5e4985bbb71570352ad6f1e76684fb6d790928f96ba3b2d4fd6e10024be9612fe3f001
- languageName: node
- linkType: hard
-
"ansi-escapes@npm:^4.2.1":
version: 4.3.2
resolution: "ansi-escapes@npm:4.3.2"
@@ -2785,34 +2721,6 @@ __metadata:
languageName: node
linkType: hard
-"babel-loader@npm:^8.2.2":
- version: 8.3.0
- resolution: "babel-loader@npm:8.3.0"
- dependencies:
- find-cache-dir: ^3.3.1
- loader-utils: ^2.0.0
- make-dir: ^3.1.0
- schema-utils: ^2.6.5
- peerDependencies:
- "@babel/core": ^7.0.0
- webpack: ">=2"
- checksum: d48bcf9e030e598656ad3ff5fb85967db2eaaf38af5b4a4b99d25618a2057f9f100e6b231af2a46c1913206db506115ca7a8cbdf52c9c73d767070dae4352ab5
- languageName: node
- linkType: hard
-
-"babel-loader@npm:^9.1.2":
- version: 9.1.2
- resolution: "babel-loader@npm:9.1.2"
- dependencies:
- find-cache-dir: ^3.3.2
- schema-utils: ^4.0.0
- peerDependencies:
- "@babel/core": ^7.12.0
- webpack: ">=5"
- checksum: f0edb8e157f9806b810ba3f2c8ca8fa489d377ae5c2b7b00c2ace900a6925641ce4ec520b9c12f70e37b94aa5366e7003e0f6271b26821643e109966ce741cb7
- languageName: node
- linkType: hard
-
"babel-plugin-istanbul@npm:^6.1.1":
version: 6.1.1
resolution: "babel-plugin-istanbul@npm:6.1.1"
@@ -2849,15 +2757,6 @@ __metadata:
languageName: node
linkType: hard
-"babel-plugin-transform-remove-imports@npm:^1.5.4, babel-plugin-transform-remove-imports@npm:^1.7.0":
- version: 1.7.0
- resolution: "babel-plugin-transform-remove-imports@npm:1.7.0"
- peerDependencies:
- "@babel/core": ^7.0.0-0
- checksum: d50f701edcd6832b21e73b0ed143747a50bb4982c5632c59ab8b8ed2b5163b60402a0beee70e0c5fec1fbf438c074517ff303425b5b9b7f1bee295953f638431
- languageName: node
- linkType: hard
-
"babel-preset-current-node-syntax@npm:^1.0.0":
version: 1.0.1
resolution: "babel-preset-current-node-syntax@npm:1.0.1"
@@ -2892,13 +2791,6 @@ __metadata:
languageName: node
linkType: hard
-"bail@npm:^2.0.0":
- version: 2.0.2
- resolution: "bail@npm:2.0.2"
- checksum: aab4e8ccdc8d762bf3fdfce8e706601695620c0c2eda256dd85088dc0be3cfd7ff126f6e99c2bee1f24f5d418414aacf09d7f9702f16d6963df2fa488cda8824
- languageName: node
- linkType: hard
-
"balanced-match@npm:^1.0.0":
version: 1.0.2
resolution: "balanced-match@npm:1.0.2"
@@ -2922,13 +2814,6 @@ __metadata:
languageName: node
linkType: hard
-"big.js@npm:^5.2.2":
- version: 5.2.2
- resolution: "big.js@npm:5.2.2"
- checksum: b89b6e8419b097a8fb4ed2399a1931a68c612bce3cfd5ca8c214b2d017531191070f990598de2fc6f3f993d91c0f08aa82697717f6b3b8732c9731866d233c9e
- languageName: node
- linkType: hard
-
"binary-extensions@npm:^2.0.0":
version: 2.2.0
resolution: "binary-extensions@npm:2.2.0"
@@ -3137,13 +3022,6 @@ __metadata:
languageName: node
linkType: hard
-"ccount@npm:^2.0.0":
- version: 2.0.1
- resolution: "ccount@npm:2.0.1"
- checksum: 48193dada54c9e260e0acf57fc16171a225305548f9ad20d5471e0f7a8c026aedd8747091dccb0d900cde7df4e4ddbd235df0d8de4a64c71b12f0d3303eeafd4
- languageName: node
- linkType: hard
-
"chalk@npm:^2.0.0":
version: 2.4.2
resolution: "chalk@npm:2.4.2"
@@ -3172,41 +3050,6 @@ __metadata:
languageName: node
linkType: hard
-"character-entities-html4@npm:^2.0.0":
- version: 2.1.0
- resolution: "character-entities-html4@npm:2.1.0"
- checksum: 7034aa7c7fa90309667f6dd50499c8a760c3d3a6fb159adb4e0bada0107d194551cdbad0714302f62d06ce4ed68565c8c2e15fdef2e8f8764eb63fa92b34b11d
- languageName: node
- linkType: hard
-
-"character-entities-legacy@npm:^1.0.0":
- version: 1.1.4
- resolution: "character-entities-legacy@npm:1.1.4"
- checksum: fe03a82c154414da3a0c8ab3188e4237ec68006cbcd681cf23c7cfb9502a0e76cd30ab69a2e50857ca10d984d57de3b307680fff5328ccd427f400e559c3a811
- languageName: node
- linkType: hard
-
-"character-entities-legacy@npm:^3.0.0":
- version: 3.0.0
- resolution: "character-entities-legacy@npm:3.0.0"
- checksum: 7582af055cb488b626d364b7d7a4e46b06abd526fb63c0e4eb35bcb9c9799cc4f76b39f34fdccef2d1174ac95e53e9ab355aae83227c1a2505877893fce77731
- languageName: node
- linkType: hard
-
-"character-entities@npm:^1.0.0":
- version: 1.2.4
- resolution: "character-entities@npm:1.2.4"
- checksum: e1545716571ead57beac008433c1ff69517cd8ca5b336889321c5b8ff4a99c29b65589a701e9c086cda8a5e346a67295e2684f6c7ea96819fe85cbf49bf8686d
- languageName: node
- linkType: hard
-
-"character-reference-invalid@npm:^1.0.0":
- version: 1.1.4
- resolution: "character-reference-invalid@npm:1.1.4"
- checksum: 20274574c70e05e2f81135f3b93285536bc8ff70f37f0809b0d17791a832838f1e49938382899ed4cb444e5bbd4314ca1415231344ba29f4222ce2ccf24fea0b
- languageName: node
- linkType: hard
-
"chokidar@npm:>=3.0.0 <4.0.0":
version: 3.5.3
resolution: "chokidar@npm:3.5.3"
@@ -3334,23 +3177,13 @@ __metadata:
languageName: node
linkType: hard
-"color-name@npm:^1.0.0, color-name@npm:~1.1.4":
+"color-name@npm:~1.1.4":
version: 1.1.4
resolution: "color-name@npm:1.1.4"
checksum: b0445859521eb4021cd0fb0cc1a75cecf67fceecae89b63f62b201cca8d345baf8b952c966862a9d9a2632987d4f6581f0ec8d957dfacece86f0a7919316f610
languageName: node
linkType: hard
-"color-string@npm:^1.9.0":
- version: 1.9.1
- resolution: "color-string@npm:1.9.1"
- dependencies:
- color-name: ^1.0.0
- simple-swizzle: ^0.2.2
- checksum: c13fe7cff7885f603f49105827d621ce87f4571d78ba28ef4a3f1a104304748f620615e6bf065ecd2145d0d9dad83a3553f52bb25ede7239d18e9f81622f1cc5
- languageName: node
- linkType: hard
-
"color-support@npm:^1.1.3":
version: 1.1.3
resolution: "color-support@npm:1.1.3"
@@ -3360,16 +3193,6 @@ __metadata:
languageName: node
linkType: hard
-"color@npm:^4.2.3":
- version: 4.2.3
- resolution: "color@npm:4.2.3"
- dependencies:
- color-convert: ^2.0.1
- color-string: ^1.9.0
- checksum: 0579629c02c631b426780038da929cca8e8d80a40158b09811a0112a107c62e10e4aad719843b791b1e658ab4e800558f2e87ca4522c8b32349d497ecb6adeb4
- languageName: node
- linkType: hard
-
"combined-stream@npm:^1.0.8":
version: 1.0.8
resolution: "combined-stream@npm:1.0.8"
@@ -3379,20 +3202,6 @@ __metadata:
languageName: node
linkType: hard
-"comma-separated-tokens@npm:^1.0.0":
- version: 1.0.8
- resolution: "comma-separated-tokens@npm:1.0.8"
- checksum: 0adcb07174fa4d08cf0f5c8e3aec40a36b5ff0c2c720e5e23f50fe02e6789d1d00a67036c80e0c1e1539f41d3e7f0101b074039dd833b4e4a59031b659d6ca0d
- languageName: node
- linkType: hard
-
-"comma-separated-tokens@npm:^2.0.0":
- version: 2.0.3
- resolution: "comma-separated-tokens@npm:2.0.3"
- checksum: e3bf9e0332a5c45f49b90e79bcdb4a7a85f28d6a6f0876a94f1bb9b2bfbdbbb9292aac50e1e742d8c0db1e62a0229a106f57917e2d067fca951d81737651700d
- languageName: node
- linkType: hard
-
"commander@npm:^6.2.0":
version: 6.2.1
resolution: "commander@npm:6.2.1"
@@ -3400,13 +3209,6 @@ __metadata:
languageName: node
linkType: hard
-"commondir@npm:^1.0.1":
- version: 1.0.1
- resolution: "commondir@npm:1.0.1"
- checksum: 59715f2fc456a73f68826285718503340b9f0dd89bfffc42749906c5cf3d4277ef11ef1cca0350d0e79204f00f1f6d83851ececc9095dc88512a697ac0b9bdcb
- languageName: node
- linkType: hard
-
"concat-map@npm:0.0.1":
version: 0.0.1
resolution: "concat-map@npm:0.0.1"
@@ -3507,15 +3309,6 @@ __metadata:
languageName: node
linkType: hard
-"cross-fetch@npm:3.1.5":
- version: 3.1.5
- resolution: "cross-fetch@npm:3.1.5"
- dependencies:
- node-fetch: 2.6.7
- checksum: f6b8c6ee3ef993ace6277fd789c71b6acf1b504fd5f5c7128df4ef2f125a429e29cd62dc8c127523f04a5f2fa4771ed80e3f3d9695617f441425045f505cf3bb
- languageName: node
- linkType: hard
-
"cross-spawn@npm:^7.0.2, cross-spawn@npm:^7.0.3":
version: 7.0.3
resolution: "cross-spawn@npm:7.0.3"
@@ -3573,14 +3366,7 @@ __metadata:
languageName: node
linkType: hard
-"d3-format@npm:1 - 2":
- version: 2.0.0
- resolution: "d3-format@npm:2.0.0"
- checksum: c4d3c8f9941d097d514d3986f54f21434e08e5876dc08d1d65226447e8e167600d5b9210235bb03fd45327225f04f32d6e365f08f76d2f4b8bff81594851aaf7
- languageName: node
- linkType: hard
-
-"d3-format@npm:^1.4.4":
+"d3-format@npm:1 - 2, d3-format@npm:^1.4.4":
version: 1.4.5
resolution: "d3-format@npm:1.4.5"
checksum: 1b8b2c0bca182173bccd290a43e8b635a83fc8cfe52ec878c7bdabb997d47daac11f2b175cebbe73f807f782ad655f542bdfe18180ca5eb3498a3a82da1e06ab
@@ -3644,7 +3430,14 @@ __metadata:
languageName: node
linkType: hard
-"d3-time@npm:1 - 2, d3-time@npm:^2.1.1":
+"d3-time@npm:1 - 2, d3-time@npm:^1.0.11":
+ version: 1.1.0
+ resolution: "d3-time@npm:1.1.0"
+ checksum: 33fcfff94ff093dde2048c190ecca8b39fe0ec8b3c61e9fc39c5f6072ce5b86dd2b91823f086366995422bbbac7f74fd9abdb7efe4f292a73b1c6197c699cc78
+ languageName: node
+ linkType: hard
+
+"d3-time@npm:^2.1.1":
version: 2.1.1
resolution: "d3-time@npm:2.1.1"
dependencies:
@@ -3653,13 +3446,6 @@ __metadata:
languageName: node
linkType: hard
-"d3-time@npm:^1.0.11":
- version: 1.1.0
- resolution: "d3-time@npm:1.1.0"
- checksum: 33fcfff94ff093dde2048c190ecca8b39fe0ec8b3c61e9fc39c5f6072ce5b86dd2b91823f086366995422bbbac7f74fd9abdb7efe4f292a73b1c6197c699cc78
- languageName: node
- linkType: hard
-
"damerau-levenshtein@npm:^1.0.8":
version: 1.0.8
resolution: "damerau-levenshtein@npm:1.0.8"
@@ -3736,13 +3522,6 @@ __metadata:
languageName: node
linkType: hard
-"deep-extend@npm:^0.6.0":
- version: 0.6.0
- resolution: "deep-extend@npm:0.6.0"
- checksum: 7be7e5a8d468d6b10e6a67c3de828f55001b6eb515d014f7aeb9066ce36bd5717161eb47d6a0f7bed8a9083935b465bc163ee2581c8b128d29bf61092fdf57a7
- languageName: node
- linkType: hard
-
"deep-is@npm:^0.1.3":
version: 0.1.4
resolution: "deep-is@npm:0.1.4"
@@ -3802,13 +3581,6 @@ __metadata:
languageName: node
linkType: hard
-"detect-libc@npm:^2.0.0, detect-libc@npm:^2.0.1":
- version: 2.0.1
- resolution: "detect-libc@npm:2.0.1"
- checksum: ccb05fcabbb555beb544d48080179c18523a343face9ee4e1a86605a8715b4169f94d663c21a03c310ac824592f2ba9a5270218819bb411ad7be578a527593d7
- languageName: node
- linkType: hard
-
"detect-newline@npm:^3.0.0":
version: 3.1.0
resolution: "detect-newline@npm:3.1.0"
@@ -3894,6 +3666,13 @@ __metadata:
languageName: node
linkType: hard
+"dom-walk@npm:^0.1.0":
+ version: 0.1.2
+ resolution: "dom-walk@npm:0.1.2"
+ checksum: 19eb0ce9c6de39d5e231530685248545d9cd2bd97b2cb3486e0bfc0f2a393a9addddfd5557463a932b52fdfcf68ad2a619020cd2c74a5fe46fbecaa8e80872f3
+ languageName: node
+ linkType: hard
+
"domelementtype@npm:^2.0.1, domelementtype@npm:^2.2.0":
version: 2.3.0
resolution: "domelementtype@npm:2.3.0"
@@ -3944,24 +3723,6 @@ __metadata:
languageName: node
linkType: hard
-"embla-carousel-react@npm:^7.0.0":
- version: 7.0.9
- resolution: "embla-carousel-react@npm:7.0.9"
- dependencies:
- embla-carousel: 7.0.9
- peerDependencies:
- react: ^16.8.0 || ^17.0.1 || ^18.0.0
- checksum: 440157b5187428a214c4db25afff296d26ed2412cfcd424bafcccb2c12b468216534b31939486eef24f96e785b24732fb9084ab1a2a06e427b8f958a0e08cd8e
- languageName: node
- linkType: hard
-
-"embla-carousel@npm:7.0.9":
- version: 7.0.9
- resolution: "embla-carousel@npm:7.0.9"
- checksum: dabb371a44c2d67f21aa7a0ff3f452a5c2678b79e80cb251e0a83b707c4b684fbdbe010927142cdcae3d1c9711a269e05655bd05c39608337fd1b6f5d2c20371
- languageName: node
- linkType: hard
-
"emittery@npm:^0.10.2":
version: 0.10.2
resolution: "emittery@npm:0.10.2"
@@ -3983,13 +3744,6 @@ __metadata:
languageName: node
linkType: hard
-"emojis-list@npm:^3.0.0":
- version: 3.0.0
- resolution: "emojis-list@npm:3.0.0"
- checksum: ddaaa02542e1e9436c03970eeed445f4ed29a5337dfba0fe0c38dfdd2af5da2429c2a0821304e8a8d1cadf27fdd5b22ff793571fa803ae16852a6975c65e8e70
- languageName: node
- linkType: hard
-
"encoding@npm:^0.1.13":
version: 0.1.13
resolution: "encoding@npm:0.1.13"
@@ -4561,13 +4315,6 @@ __metadata:
languageName: node
linkType: hard
-"expand-template@npm:^2.0.3":
- version: 2.0.3
- resolution: "expand-template@npm:2.0.3"
- checksum: 588c19847216421ed92befb521767b7018dc88f88b0576df98cb242f20961425e96a92cbece525ef28cc5becceae5d544ae0f5b9b5e2aa05acb13716ca5b3099
- languageName: node
- linkType: hard
-
"expect@npm:^28.1.3":
version: 28.1.3
resolution: "expect@npm:28.1.3"
@@ -4581,13 +4328,6 @@ __metadata:
languageName: node
linkType: hard
-"extend@npm:^3.0.0":
- version: 3.0.2
- resolution: "extend@npm:3.0.2"
- checksum: a50a8309ca65ea5d426382ff09f33586527882cf532931cb08ca786ea3146c0553310bda688710ff61d7668eba9f96b923fe1420cdf56a2c3eaf30fcab87b515
- languageName: node
- linkType: hard
-
"fast-deep-equal@npm:^3.1.1, fast-deep-equal@npm:^3.1.3":
version: 3.1.3
resolution: "fast-deep-equal@npm:3.1.3"
@@ -4674,17 +4414,6 @@ __metadata:
languageName: node
linkType: hard
-"find-cache-dir@npm:^3.3.1, find-cache-dir@npm:^3.3.2":
- version: 3.3.2
- resolution: "find-cache-dir@npm:3.3.2"
- dependencies:
- commondir: ^1.0.1
- make-dir: ^3.0.2
- pkg-dir: ^4.1.0
- checksum: 1e61c2e64f5c0b1c535bd85939ae73b0e5773142713273818cc0b393ee3555fb0fd44e1a5b161b8b6c3e03e98c2fcc9c227d784850a13a90a8ab576869576817
- languageName: node
- linkType: hard
-
"find-root@npm:^1.1.0":
version: 1.1.0
resolution: "find-root@npm:1.1.0"
@@ -4946,13 +4675,6 @@ __metadata:
languageName: node
linkType: hard
-"github-from-package@npm:0.0.0":
- version: 0.0.0
- resolution: "github-from-package@npm:0.0.0"
- checksum: 14e448192a35c1e42efee94c9d01a10f42fe790375891a24b25261246ce9336ab9df5d274585aedd4568f7922246c2a78b8a8cd2571bfe99c693a9718e7dd0e3
- languageName: node
- linkType: hard
-
"glob-parent@npm:^5.1.2, glob-parent@npm:~5.1.2":
version: 5.1.2
resolution: "glob-parent@npm:5.1.2"
@@ -4971,7 +4693,7 @@ __metadata:
languageName: node
linkType: hard
-"glob@npm:7.1.7":
+"glob@npm:7.1.7, glob@npm:^7.1.3, glob@npm:^7.1.4":
version: 7.1.7
resolution: "glob@npm:7.1.7"
dependencies:
@@ -4985,20 +4707,6 @@ __metadata:
languageName: node
linkType: hard
-"glob@npm:^7.1.3, glob@npm:^7.1.4":
- version: 7.2.3
- resolution: "glob@npm:7.2.3"
- dependencies:
- fs.realpath: ^1.0.0
- inflight: ^1.0.4
- inherits: 2
- minimatch: ^3.1.1
- once: ^1.3.0
- path-is-absolute: ^1.0.0
- checksum: 29452e97b38fa704dabb1d1045350fb2467cf0277e155aa9ff7077e90ad81d1ea9d53d3ee63bd37c05b09a065e90f16aec4a65f5b8de401d1dac40bc5605d133
- languageName: node
- linkType: hard
-
"glob@npm:^8.0.1":
version: 8.1.0
resolution: "glob@npm:8.1.0"
@@ -5012,6 +4720,16 @@ __metadata:
languageName: node
linkType: hard
+"global@npm:4.4.0, global@npm:^4.3.1, global@npm:^4.4.0, global@npm:~4.4.0":
+ version: 4.4.0
+ resolution: "global@npm:4.4.0"
+ dependencies:
+ min-document: ^2.19.0
+ process: ^0.11.10
+ checksum: 9c057557c8f5a5bcfbeb9378ba4fe2255d04679452be504608dd5f13b54edf79f7be1db1031ea06a4ec6edd3b9f5f17d2d172fb47e6c69dae57fd84b7e72b77f
+ languageName: node
+ linkType: hard
+
"globals@npm:^11.1.0":
version: 11.12.0
resolution: "globals@npm:11.12.0"
@@ -5190,129 +4908,6 @@ __metadata:
languageName: node
linkType: hard
-"hast-util-from-parse5@npm:^7.0.0":
- version: 7.1.1
- resolution: "hast-util-from-parse5@npm:7.1.1"
- dependencies:
- "@types/hast": ^2.0.0
- "@types/unist": ^2.0.0
- hastscript: ^7.0.0
- property-information: ^6.0.0
- vfile: ^5.0.0
- vfile-location: ^4.0.0
- web-namespaces: ^2.0.0
- checksum: 79431243b65d6fb327988614b3d8addd805cdf620599ce194dce91c1a1c99dc356bfb25494821445ecff49edc3ec3f2ce0b151f5e401e2984fed81a4178b7e79
- languageName: node
- linkType: hard
-
-"hast-util-parse-selector@npm:^2.0.0":
- version: 2.2.5
- resolution: "hast-util-parse-selector@npm:2.2.5"
- checksum: 22ee4afbd11754562144cb3c4f3ec52524dafba4d90ee52512902d17cf11066d83b38f7bdf6ca571bbc2541f07ba30db0d234657b6ecb8ca4631587466459605
- languageName: node
- linkType: hard
-
-"hast-util-parse-selector@npm:^3.0.0":
- version: 3.1.1
- resolution: "hast-util-parse-selector@npm:3.1.1"
- dependencies:
- "@types/hast": ^2.0.0
- checksum: 511d373465f60dd65e924f88bf0954085f4fb6e3a2b062a4b5ac43b93cbfd36a8dce6234b5d1e3e63499d936375687e83fc5da55628b22bd6b581b5ee167d1c4
- languageName: node
- linkType: hard
-
-"hast-util-raw@npm:^7.0.0":
- version: 7.2.3
- resolution: "hast-util-raw@npm:7.2.3"
- dependencies:
- "@types/hast": ^2.0.0
- "@types/parse5": ^6.0.0
- hast-util-from-parse5: ^7.0.0
- hast-util-to-parse5: ^7.0.0
- html-void-elements: ^2.0.0
- parse5: ^6.0.0
- unist-util-position: ^4.0.0
- unist-util-visit: ^4.0.0
- vfile: ^5.0.0
- web-namespaces: ^2.0.0
- zwitch: ^2.0.0
- checksum: 21857eea3ffb8fd92d2d9be7793b56d0b2c40db03c4cfa14828855ae41d7c584917aa83efb7157220b2e41e25e95f81f24679ac342c35145e5f1c1d39015f81f
- languageName: node
- linkType: hard
-
-"hast-util-to-html@npm:^8.0.0":
- version: 8.0.4
- resolution: "hast-util-to-html@npm:8.0.4"
- dependencies:
- "@types/hast": ^2.0.0
- "@types/unist": ^2.0.0
- ccount: ^2.0.0
- comma-separated-tokens: ^2.0.0
- hast-util-raw: ^7.0.0
- hast-util-whitespace: ^2.0.0
- html-void-elements: ^2.0.0
- property-information: ^6.0.0
- space-separated-tokens: ^2.0.0
- stringify-entities: ^4.0.0
- zwitch: ^2.0.4
- checksum: 8f2ae071df2ced5afb4f19f76af8fd3a2f837dc47bcc1c0e0c1578d29dafcd28738f9617505d13c4a2adf13d70e043143e2ad8f130d5554ab4fc11bfa8f74094
- languageName: node
- linkType: hard
-
-"hast-util-to-parse5@npm:^7.0.0":
- version: 7.1.0
- resolution: "hast-util-to-parse5@npm:7.1.0"
- dependencies:
- "@types/hast": ^2.0.0
- comma-separated-tokens: ^2.0.0
- property-information: ^6.0.0
- space-separated-tokens: ^2.0.0
- web-namespaces: ^2.0.0
- zwitch: ^2.0.0
- checksum: 3a7f2175a3db599bbae7e49ba73d3e5e688e5efca7590ff50130ba108ad649f728402815d47db49146f6b94c14c934bf119915da9f6964e38802c122bcc8af6b
- languageName: node
- linkType: hard
-
-"hast-util-to-string@npm:^1.0.4":
- version: 1.0.4
- resolution: "hast-util-to-string@npm:1.0.4"
- checksum: 8132508d5c08d542b64979ad558e474f481011c29d5fce9b1a1fe779fc97e151b734b5c6d94f4937c4ec978b1d641977ee7f9f5ed61ea0611600764abdff7cbb
- languageName: node
- linkType: hard
-
-"hast-util-whitespace@npm:^2.0.0":
- version: 2.0.1
- resolution: "hast-util-whitespace@npm:2.0.1"
- checksum: 431be6b2f35472f951615540d7a53f69f39461e5e080c0190268bdeb2be9ab9b1dddfd1f467dd26c1de7e7952df67beb1307b6ee940baf78b24a71b5e0663868
- languageName: node
- linkType: hard
-
-"hastscript@npm:^6.0.0":
- version: 6.0.0
- resolution: "hastscript@npm:6.0.0"
- dependencies:
- "@types/hast": ^2.0.0
- comma-separated-tokens: ^1.0.0
- hast-util-parse-selector: ^2.0.0
- property-information: ^5.0.0
- space-separated-tokens: ^1.0.0
- checksum: 5e50b85af0d2cb7c17979cb1ddca75d6b96b53019dd999b39e7833192c9004201c3cee6445065620ea05d0087d9ae147a4844e582d64868be5bc6b0232dfe52d
- languageName: node
- linkType: hard
-
-"hastscript@npm:^7.0.0":
- version: 7.2.0
- resolution: "hastscript@npm:7.2.0"
- dependencies:
- "@types/hast": ^2.0.0
- comma-separated-tokens: ^2.0.0
- hast-util-parse-selector: ^3.0.0
- property-information: ^6.0.0
- space-separated-tokens: ^2.0.0
- checksum: 928a21576ff7b9a8c945e7940bcbf2d27f770edb4279d4d04b33dc90753e26ca35c1172d626f54afebd377b2afa32331e399feb3eb0f7b91a399dca5927078ae
- languageName: node
- linkType: hard
-
"hey-listen@npm:^1.0.8":
version: 1.0.8
resolution: "hey-listen@npm:1.0.8"
@@ -5337,9 +4932,6 @@ __metadata:
"@ctrl/qbittorrent": ^4.1.0
"@ctrl/shared-torrent": ^4.1.1
"@ctrl/transmission": ^4.1.1
- "@dnd-kit/core": ^6.0.5
- "@dnd-kit/sortable": ^7.0.1
- "@dnd-kit/utilities": ^3.2.0
"@emotion/react": ^11.10.5
"@emotion/server": ^11.10.0
"@mantine/core": ^5.9.3
@@ -5352,27 +4944,24 @@ __metadata:
"@mantine/notifications": ^5.9.3
"@next/bundle-analyzer": ^12.1.4
"@next/eslint-plugin-next": ^12.1.4
- "@nivo/core": ^0.79.0
- "@nivo/line": ^0.79.1
+ "@nivo/core": ^0.80.0
+ "@nivo/line": ^0.80.0
"@tabler/icons": ^1.106.0
"@tanstack/react-query": ^4.2.1
"@tanstack/react-query-devtools": ^4.24.4
"@types/dockerode": ^3.3.9
"@types/node": 17.0.1
- "@types/ping": ^0.4.1
+ "@types/prismjs": ^1.26.0
"@types/react": 17.0.1
"@types/uuid": ^8.3.4
+ "@types/video.js": ^7.3.51
"@typescript-eslint/eslint-plugin": ^5.30.7
"@typescript-eslint/parser": ^5.30.7
- "@uiw/react-textarea-code-editor": v1.4.4
axios: ^0.27.2
- babel-loader: ^9.1.2
- babel-plugin-transform-remove-imports: ^1.7.0
consola: ^2.15.3
cookies-next: ^2.1.1
dayjs: ^1.11.7
dockerode: ^3.3.2
- embla-carousel-react: ^7.0.0
eslint: ^8.20.0
eslint-config-airbnb: ^19.0.4
eslint-config-airbnb-typescript: ^17.0.0
@@ -5387,25 +4976,22 @@ __metadata:
fily-publish-gridstack: ^0.0.13
framer-motion: ^9.0.2
i18next: ^21.9.1
- i18next-browser-languagedetector: ^6.1.5
- i18next-http-backend: ^1.4.1
jest: ^28.1.3
js-file-download: ^0.4.12
next: ^13.1.6
next-i18next: ^11.3.0
- next-remove-imports: ^1.0.8
nzbget-api: ^0.0.3
- ping: ^0.4.2
prettier: ^2.7.1
- prism-react-renderer: ^1.3.5
+ prismjs: ^1.29.0
react: ^18.2.0
react-dom: ^18.2.0
+ react-simple-code-editor: ^0.13.1
sabnzbd-api: ^1.5.0
sass: ^1.56.1
- sharp: ^0.30.7
- systeminformation: ^5.12.1
+ turbo: ^1.7.4
typescript: ^4.7.4
uuid: ^8.3.2
+ video.js: ^8.0.3
yarn: ^1.22.19
zustand: ^4.1.4
languageName: unknown
@@ -5466,13 +5052,6 @@ __metadata:
languageName: node
linkType: hard
-"html-void-elements@npm:^2.0.0":
- version: 2.0.1
- resolution: "html-void-elements@npm:2.0.1"
- checksum: 06d41f13b9d5d6e0f39861c4bec9a9196fa4906d56cd5cf6cf54ad2e52a85bf960cca2bf9600026bde16c8331db171bedba5e5a35e2e43630c8f1d497b2fb658
- languageName: node
- linkType: hard
-
"htmlparser2@npm:7.2.0":
version: 7.2.0
resolution: "htmlparser2@npm:7.2.0"
@@ -5549,15 +5128,6 @@ __metadata:
languageName: node
linkType: hard
-"i18next-browser-languagedetector@npm:^6.1.5":
- version: 6.1.8
- resolution: "i18next-browser-languagedetector@npm:6.1.8"
- dependencies:
- "@babel/runtime": ^7.19.0
- checksum: dd84d3c9cb693a70662436b06f5554898815df33b7641249a64876c74c38960f11ef17b4d7f49ee2da7262abe0f3ae73abe7f3a3b435a344d0d07e4ca7cb24c6
- languageName: node
- linkType: hard
-
"i18next-fs-backend@npm:^1.1.4":
version: 1.2.0
resolution: "i18next-fs-backend@npm:1.2.0"
@@ -5565,15 +5135,6 @@ __metadata:
languageName: node
linkType: hard
-"i18next-http-backend@npm:^1.4.1":
- version: 1.4.5
- resolution: "i18next-http-backend@npm:1.4.5"
- dependencies:
- cross-fetch: 3.1.5
- checksum: 1978a9d7970cc711e96133553e5f3815cf16c3e2f8db7982036f8c913c5a64eb20953e85e0ab48a88ad3c754f51184b67a778655ed65aeaae46430cdc1f673da
- languageName: node
- linkType: hard
-
"i18next@npm:^21.8.13, i18next@npm:^21.9.1":
version: 21.10.0
resolution: "i18next@npm:21.10.0"
@@ -5649,6 +5210,13 @@ __metadata:
languageName: node
linkType: hard
+"individual@npm:^2.0.0":
+ version: 2.0.0
+ resolution: "individual@npm:2.0.0"
+ checksum: 34f071ade77365e2cdb9e034e7dc92930450ce427415b9ef975a2c2a455b40aa9e071ae7888972f3d2ec7d977a32cf1af46e0b8d602d70d05da5b9bbc9e23392
+ languageName: node
+ linkType: hard
+
"infer-owner@npm:^1.0.4":
version: 1.0.4
resolution: "infer-owner@npm:1.0.4"
@@ -5673,13 +5241,6 @@ __metadata:
languageName: node
linkType: hard
-"ini@npm:~1.3.0":
- version: 1.3.8
- resolution: "ini@npm:1.3.8"
- checksum: dfd98b0ca3a4fc1e323e38a6c8eb8936e31a97a918d3b377649ea15bdb15d481207a0dda1021efbd86b464cae29a0d33c1d7dcaf6c5672bee17fa849bc50a1b3
- languageName: node
- linkType: hard
-
"inline-style-parser@npm:0.1.1":
version: 0.1.1
resolution: "inline-style-parser@npm:0.1.1"
@@ -5712,23 +5273,6 @@ __metadata:
languageName: node
linkType: hard
-"is-alphabetical@npm:^1.0.0":
- version: 1.0.4
- resolution: "is-alphabetical@npm:1.0.4"
- checksum: 6508cce44fd348f06705d377b260974f4ce68c74000e7da4045f0d919e568226dc3ce9685c5a2af272195384df6930f748ce9213fc9f399b5d31b362c66312cb
- languageName: node
- linkType: hard
-
-"is-alphanumerical@npm:^1.0.0":
- version: 1.0.4
- resolution: "is-alphanumerical@npm:1.0.4"
- dependencies:
- is-alphabetical: ^1.0.0
- is-decimal: ^1.0.0
- checksum: e2e491acc16fcf5b363f7c726f666a9538dba0a043665740feb45bba1652457a73441e7c5179c6768a638ed396db3437e9905f403644ec7c468fb41f4813d03f
- languageName: node
- linkType: hard
-
"is-arguments@npm:^1.1.1":
version: 1.1.1
resolution: "is-arguments@npm:1.1.1"
@@ -5757,13 +5301,6 @@ __metadata:
languageName: node
linkType: hard
-"is-arrayish@npm:^0.3.1":
- version: 0.3.2
- resolution: "is-arrayish@npm:0.3.2"
- checksum: 977e64f54d91c8f169b59afcd80ff19227e9f5c791fa28fa2e5bce355cbaf6c2c356711b734656e80c9dd4a854dd7efcf7894402f1031dfc5de5d620775b4d5f
- languageName: node
- linkType: hard
-
"is-bigint@npm:^1.0.1":
version: 1.0.4
resolution: "is-bigint@npm:1.0.4"
@@ -5792,13 +5329,6 @@ __metadata:
languageName: node
linkType: hard
-"is-buffer@npm:^2.0.0":
- version: 2.0.5
- resolution: "is-buffer@npm:2.0.5"
- checksum: 764c9ad8b523a9f5a32af29bdf772b08eb48c04d2ad0a7240916ac2688c983bf5f8504bf25b35e66240edeb9d9085461f9b5dae1f3d2861c6b06a65fe983de42
- languageName: node
- linkType: hard
-
"is-callable@npm:^1.1.3, is-callable@npm:^1.1.4, is-callable@npm:^1.2.7":
version: 1.2.7
resolution: "is-callable@npm:1.2.7"
@@ -5824,13 +5354,6 @@ __metadata:
languageName: node
linkType: hard
-"is-decimal@npm:^1.0.0":
- version: 1.0.4
- resolution: "is-decimal@npm:1.0.4"
- checksum: ed483a387517856dc395c68403a10201fddcc1b63dc56513fbe2fe86ab38766120090ecdbfed89223d84ca8b1cd28b0641b93cb6597b6e8f4c097a7c24e3fb96
- languageName: node
- linkType: hard
-
"is-extglob@npm:^2.1.1":
version: 2.1.1
resolution: "is-extglob@npm:2.1.1"
@@ -5845,6 +5368,13 @@ __metadata:
languageName: node
linkType: hard
+"is-function@npm:^1.0.1":
+ version: 1.0.2
+ resolution: "is-function@npm:1.0.2"
+ checksum: 7d564562e07b4b51359547d3ccc10fb93bb392fd1b8177ae2601ee4982a0ece86d952323fc172a9000743a3971f09689495ab78a1d49a9b14fc97a7e28521dc0
+ languageName: node
+ linkType: hard
+
"is-generator-fn@npm:^2.0.0":
version: 2.1.0
resolution: "is-generator-fn@npm:2.1.0"
@@ -5861,13 +5391,6 @@ __metadata:
languageName: node
linkType: hard
-"is-hexadecimal@npm:^1.0.0":
- version: 1.0.4
- resolution: "is-hexadecimal@npm:1.0.4"
- checksum: a452e047587b6069332d83130f54d30da4faf2f2ebaa2ce6d073c27b5703d030d58ed9e0b729c8e4e5b52c6f1dab26781bb77b7bc6c7805f14f320e328ff8cd5
- languageName: node
- linkType: hard
-
"is-lambda@npm:^1.0.1":
version: 1.0.1
resolution: "is-lambda@npm:1.0.1"
@@ -5912,13 +5435,6 @@ __metadata:
languageName: node
linkType: hard
-"is-plain-obj@npm:^4.0.0":
- version: 4.1.0
- resolution: "is-plain-obj@npm:4.1.0"
- checksum: 6dc45da70d04a81f35c9310971e78a6a3c7a63547ef782e3a07ee3674695081b6ca4e977fbb8efc48dae3375e0b34558d2bcd722aec9bddfa2d7db5b041be8ce
- languageName: node
- linkType: hard
-
"is-regex@npm:^1.1.4":
version: 1.1.4
resolution: "is-regex@npm:1.1.4"
@@ -6609,13 +6125,6 @@ __metadata:
languageName: node
linkType: hard
-"json-schema-traverse@npm:^1.0.0":
- version: 1.0.0
- resolution: "json-schema-traverse@npm:1.0.0"
- checksum: 02f2f466cdb0362558b2f1fd5e15cce82ef55d60cd7f8fa828cf35ba74330f8d767fcae5c5c2adb7851fa811766c694b9405810879bc4e1ddd78a7c0e03658ad
- languageName: node
- linkType: hard
-
"json-stable-stringify-without-jsonify@npm:^1.0.1":
version: 1.0.1
resolution: "json-stable-stringify-without-jsonify@npm:1.0.1"
@@ -6634,7 +6143,7 @@ __metadata:
languageName: node
linkType: hard
-"json5@npm:^2.1.2, json5@npm:^2.2.2":
+"json5@npm:^2.2.2":
version: 2.2.3
resolution: "json5@npm:2.2.3"
bin:
@@ -6653,6 +6162,13 @@ __metadata:
languageName: node
linkType: hard
+"keycode@npm:2.2.0":
+ version: 2.2.0
+ resolution: "keycode@npm:2.2.0"
+ checksum: cb91c2940a892f1444a41fc08339b8831445a6b095af9103e3061ea7d4bdbfc420135dcb5d9257020e35c374468bb7d4495ea9fcea54e5760196daff3c874fa4
+ languageName: node
+ linkType: hard
+
"keyv@npm:^4.0.0, keyv@npm:^4.5.2":
version: 4.5.2
resolution: "keyv@npm:4.5.2"
@@ -6716,17 +6232,6 @@ __metadata:
languageName: node
linkType: hard
-"loader-utils@npm:^2.0.0":
- version: 2.0.4
- resolution: "loader-utils@npm:2.0.4"
- dependencies:
- big.js: ^5.2.2
- emojis-list: ^3.0.0
- json5: ^2.1.2
- checksum: a5281f5fff1eaa310ad5e1164095689443630f3411e927f95031ab4fb83b4a98f388185bb1fe949e8ab8d4247004336a625e9255c22122b815bb9a4c5d8fc3b7
- languageName: node
- linkType: hard
-
"locate-path@npm:^5.0.0":
version: 5.0.0
resolution: "locate-path@npm:5.0.0"
@@ -6809,7 +6314,18 @@ __metadata:
languageName: node
linkType: hard
-"make-dir@npm:^3.0.0, make-dir@npm:^3.0.2, make-dir@npm:^3.1.0":
+"m3u8-parser@npm:^6.0.0":
+ version: 6.0.0
+ resolution: "m3u8-parser@npm:6.0.0"
+ dependencies:
+ "@babel/runtime": ^7.12.5
+ "@videojs/vhs-utils": ^3.0.5
+ global: ^4.4.0
+ checksum: b305dede0595688b32ddfbafe2fc53c650eb89be4f2ceabf717596c3bf5b33e62d3c9b83264846e47f5afb2e863dc6890a2b574d09071083c6f696daa8488ec9
+ languageName: node
+ linkType: hard
+
+"make-dir@npm:^3.0.0":
version: 3.1.0
resolution: "make-dir@npm:3.1.0"
dependencies:
@@ -6919,7 +6435,16 @@ __metadata:
languageName: node
linkType: hard
-"minimatch@npm:^3.0.4, minimatch@npm:^3.0.5, minimatch@npm:^3.1.1, minimatch@npm:^3.1.2":
+"min-document@npm:^2.19.0":
+ version: 2.19.0
+ resolution: "min-document@npm:2.19.0"
+ dependencies:
+ dom-walk: ^0.1.0
+ checksum: da6437562ea2228041542a2384528e74e22d1daa1a4ec439c165abf0b9d8a63e17e3b8a6dc6e0c731845e85301198730426932a0e813d23f932ca668340c9623
+ languageName: node
+ linkType: hard
+
+"minimatch@npm:^3.0.4, minimatch@npm:^3.0.5, minimatch@npm:^3.1.2":
version: 3.1.2
resolution: "minimatch@npm:3.1.2"
dependencies:
@@ -6937,7 +6462,14 @@ __metadata:
languageName: node
linkType: hard
-"minimist@npm:^1.2.0, minimist@npm:^1.2.3, minimist@npm:^1.2.6, minimist@npm:~1.2.5":
+"minimist@npm:^1.2.0, minimist@npm:^1.2.6":
+ version: 1.2.7
+ resolution: "minimist@npm:1.2.7"
+ checksum: 7346574a1038ca23c32e02252f603801f09384dd1d78b69a943a4e8c2c28730b80e96193882d3d3b22a063445f460e48316b29b8a25addca2d7e5e8f75478bec
+ languageName: node
+ linkType: hard
+
+"minimist@npm:~1.2.5":
version: 1.2.8
resolution: "minimist@npm:1.2.8"
checksum: 75a6d645fb122dad29c06a7597bddea977258957ed88d7a6df59b5cd3fe4a527e253e9bbf2e783e4b73657f9098b96a5fe96ab8a113655d4109108577ecf85b0
@@ -7021,7 +6553,7 @@ __metadata:
languageName: node
linkType: hard
-"mkdirp-classic@npm:^0.5.2, mkdirp-classic@npm:^0.5.3":
+"mkdirp-classic@npm:^0.5.2":
version: 0.5.3
resolution: "mkdirp-classic@npm:0.5.3"
checksum: 3f4e088208270bbcc148d53b73e9a5bd9eef05ad2cbf3b3d0ff8795278d50dd1d11a8ef1875ff5aea3fa888931f95bfcb2ad5b7c1061cfefd6284d199e6776ac
@@ -7037,6 +6569,20 @@ __metadata:
languageName: node
linkType: hard
+"mpd-parser@npm:^1.0.1":
+ version: 1.0.1
+ resolution: "mpd-parser@npm:1.0.1"
+ dependencies:
+ "@babel/runtime": ^7.12.5
+ "@videojs/vhs-utils": ^3.0.5
+ "@xmldom/xmldom": ^0.8.3
+ global: ^4.4.0
+ bin:
+ mpd-to-m3u8-json: bin/parse.js
+ checksum: a82c4ba7335d193aa248f4e39d4ad58359c5ff055a50fd574980b2a29318fbaccda9741f2106fe933a46ff5d092a6a78a542912bd3f1046e70b8ae63f80482ee
+ languageName: node
+ linkType: hard
+
"mrmime@npm:^1.0.0":
version: 1.0.1
resolution: "mrmime@npm:1.0.1"
@@ -7044,14 +6590,14 @@ __metadata:
languageName: node
linkType: hard
-"ms@npm:2.1.2":
+"ms@npm:2.1.2, ms@npm:^2.1.1":
version: 2.1.2
resolution: "ms@npm:2.1.2"
checksum: 673cdb2c3133eb050c745908d8ce632ed2c02d85640e2edb3ace856a2266a813b30c613569bf3354fdf4ea7d1a1494add3bfa95e2713baa27d0c2c71fc44f58f
languageName: node
linkType: hard
-"ms@npm:^2.0.0, ms@npm:^2.1.1":
+"ms@npm:^2.0.0":
version: 2.1.3
resolution: "ms@npm:2.1.3"
checksum: aa92de608021b242401676e35cfa5aa42dd70cbdc082b916da7fb925c542173e36bce97ea3e804923fe92c0ad991434e4a38327e15a1b5b5f945d66df615ae6d
@@ -7068,6 +6614,18 @@ __metadata:
languageName: node
linkType: hard
+"mux.js@npm:6.2.0, mux.js@npm:^6.2.0":
+ version: 6.2.0
+ resolution: "mux.js@npm:6.2.0"
+ dependencies:
+ "@babel/runtime": ^7.11.2
+ global: ^4.4.0
+ bin:
+ muxjs-transmux: bin/transmux.js
+ checksum: ecf54ead3480351967cbf6e54b57e38406b0ac5bc6dc194ae59e77e80ae6e6f6ab6fa42c15f0b0938cd0cce866fb7249c571be41d6cf78ee4531ecdfe65cfef9
+ languageName: node
+ linkType: hard
+
"nan@npm:^2.15.0, nan@npm:^2.16.0":
version: 2.17.0
resolution: "nan@npm:2.17.0"
@@ -7086,13 +6644,6 @@ __metadata:
languageName: node
linkType: hard
-"napi-build-utils@npm:^1.0.1":
- version: 1.0.2
- resolution: "napi-build-utils@npm:1.0.2"
- checksum: 06c14271ee966e108d55ae109f340976a9556c8603e888037145d6522726aebe89dd0c861b4b83947feaf6d39e79e08817559e8693deedc2c94e82c5cbd090c7
- languageName: node
- linkType: hard
-
"natural-compare-lite@npm:^1.4.0":
version: 1.4.0
resolution: "natural-compare-lite@npm:1.4.0"
@@ -7132,17 +6683,6 @@ __metadata:
languageName: node
linkType: hard
-"next-remove-imports@npm:^1.0.8":
- version: 1.0.8
- resolution: "next-remove-imports@npm:1.0.8"
- dependencies:
- "@babel/core": ^7.14.3
- babel-loader: ^8.2.2
- babel-plugin-transform-remove-imports: ^1.5.4
- checksum: e13b1ccd3836803658936d5dc90470877b614147446a57643247478956cf3c4d47ecc4dc5fe2f6ee3c6f69d378b09ef17e0b26fbbfaa47f34a6a04263441d1d6
- languageName: node
- linkType: hard
-
"next@npm:^13.1.6":
version: 13.1.6
resolution: "next@npm:13.1.6"
@@ -7236,20 +6776,6 @@ __metadata:
languageName: node
linkType: hard
-"node-fetch@npm:2.6.7":
- version: 2.6.7
- resolution: "node-fetch@npm:2.6.7"
- dependencies:
- whatwg-url: ^5.0.0
- peerDependencies:
- encoding: ^0.1.0
- peerDependenciesMeta:
- encoding:
- optional: true
- checksum: 8d816ffd1ee22cab8301c7756ef04f3437f18dace86a1dae22cf81db8ef29c0bf6655f3215cb0cdb22b420b6fe141e64b26905e7f33f9377a7fa59135ea3e10b
- languageName: node
- linkType: hard
-
"node-gyp@npm:latest":
version: 9.3.1
resolution: "node-gyp@npm:9.3.1"
@@ -7564,20 +7090,6 @@ __metadata:
languageName: node
linkType: hard
-"parse-entities@npm:^2.0.0":
- version: 2.0.0
- resolution: "parse-entities@npm:2.0.0"
- dependencies:
- character-entities: ^1.0.0
- character-entities-legacy: ^1.0.0
- character-reference-invalid: ^1.0.0
- is-alphanumerical: ^1.0.0
- is-decimal: ^1.0.0
- is-hexadecimal: ^1.0.0
- checksum: 7addfd3e7d747521afac33c8121a5f23043c6973809756920d37e806639b4898385d386fcf4b3c8e2ecf1bc28aac5ae97df0b112d5042034efbe80f44081ebce
- languageName: node
- linkType: hard
-
"parse-json@npm:^5.0.0, parse-json@npm:^5.2.0":
version: 5.2.0
resolution: "parse-json@npm:5.2.0"
@@ -7590,13 +7102,6 @@ __metadata:
languageName: node
linkType: hard
-"parse5@npm:^6.0.0":
- version: 6.0.1
- resolution: "parse5@npm:6.0.1"
- checksum: 7d569a176c5460897f7c8f3377eff640d54132b9be51ae8a8fa4979af940830b2b0c296ce75e5bd8f4041520aadde13170dbdec44889975f906098ea0002f4bd
- languageName: node
- linkType: hard
-
"path-exists@npm:^4.0.0":
version: 4.0.0
resolution: "path-exists@npm:4.0.0"
@@ -7646,16 +7151,6 @@ __metadata:
languageName: node
linkType: hard
-"ping@npm:^0.4.2":
- version: 0.4.2
- resolution: "ping@npm:0.4.2"
- dependencies:
- q: 1.x
- underscore: ^1.12.0
- checksum: 43992c76fb3294734248753f2028d9fab3b919dbfae79a5ea6df7e81fc2d6d555dd0b195d6c3dbc5c89aa9dba1cd8eb58d5ecedad103ecfee64df516e5f3665b
- languageName: node
- linkType: hard
-
"pirates@npm:^4.0.4":
version: 4.0.5
resolution: "pirates@npm:4.0.5"
@@ -7663,7 +7158,18 @@ __metadata:
languageName: node
linkType: hard
-"pkg-dir@npm:^4.1.0, pkg-dir@npm:^4.2.0":
+"pkcs7@npm:^1.0.4":
+ version: 1.0.4
+ resolution: "pkcs7@npm:1.0.4"
+ dependencies:
+ "@babel/runtime": ^7.5.5
+ bin:
+ pkcs7: bin/cli.js
+ checksum: 926a713263c7656883d1fcc9fa709e08c26babc76d535dd76ccdf5ad1bc1c5931ecbbe2d7ae6075ad54897e1184be4ec304d295e28953c2ec0f1a04c27f4e838
+ languageName: node
+ linkType: hard
+
+"pkg-dir@npm:^4.2.0":
version: 4.2.0
resolution: "pkg-dir@npm:4.2.0"
dependencies:
@@ -7683,28 +7189,6 @@ __metadata:
languageName: node
linkType: hard
-"prebuild-install@npm:^7.1.1":
- version: 7.1.1
- resolution: "prebuild-install@npm:7.1.1"
- dependencies:
- detect-libc: ^2.0.0
- expand-template: ^2.0.3
- github-from-package: 0.0.0
- minimist: ^1.2.3
- mkdirp-classic: ^0.5.3
- napi-build-utils: ^1.0.1
- node-abi: ^3.3.0
- pump: ^3.0.0
- rc: ^1.2.7
- simple-get: ^4.0.0
- tar-fs: ^2.0.0
- tunnel-agent: ^0.6.0
- bin:
- prebuild-install: bin.js
- checksum: dbf96d0146b6b5827fc8f67f72074d2e19c69628b9a7a0a17d0fad1bf37e9f06922896972e074197fc00a52eae912993e6ef5a0d471652f561df5cb516f3f467
- languageName: node
- linkType: hard
-
"prelude-ls@npm:^1.2.1":
version: 1.2.1
resolution: "prelude-ls@npm:1.2.1"
@@ -7733,19 +7217,10 @@ __metadata:
languageName: node
linkType: hard
-"prism-react-renderer@npm:^1.3.5":
- version: 1.3.5
- resolution: "prism-react-renderer@npm:1.3.5"
- peerDependencies:
- react: ">=0.14.9"
- checksum: c18806dcbc4c0b4fd6fd15bd06b4f7c0a6da98d93af235c3e970854994eb9b59e23315abb6cfc29e69da26d36709a47e25da85ab27fed81b6812f0a52caf6dfa
- languageName: node
- linkType: hard
-
-"prismjs@npm:~1.27.0":
- version: 1.27.0
- resolution: "prismjs@npm:1.27.0"
- checksum: 85c7f4a3e999073502cc9e1882af01e3709706369ec254b60bff1149eda701f40d02512acab956012dc7e61cfd61743a3a34c1bd0737e8dbacd79141e5698bbc
+"prismjs@npm:^1.29.0":
+ version: 1.29.0
+ resolution: "prismjs@npm:1.29.0"
+ checksum: 007a8869d4456ff8049dc59404e32d5666a07d99c3b0e30a18bd3b7676dfa07d1daae9d0f407f20983865fd8da56de91d09cb08e6aa61f5bc420a27c0beeaf93
languageName: node
linkType: hard
@@ -7756,6 +7231,13 @@ __metadata:
languageName: node
linkType: hard
+"process@npm:^0.11.10":
+ version: 0.11.10
+ resolution: "process@npm:0.11.10"
+ checksum: bfcce49814f7d172a6e6a14d5fa3ac92cc3d0c3b9feb1279774708a719e19acd673995226351a082a9ae99978254e320ccda4240ddc474ba31a76c79491ca7c3
+ languageName: node
+ linkType: hard
+
"promise-inflight@npm:^1.0.1":
version: 1.0.1
resolution: "promise-inflight@npm:1.0.1"
@@ -7794,22 +7276,6 @@ __metadata:
languageName: node
linkType: hard
-"property-information@npm:^5.0.0":
- version: 5.6.0
- resolution: "property-information@npm:5.6.0"
- dependencies:
- xtend: ^4.0.0
- checksum: fcf87c6542e59a8bbe31ca0b3255a4a63ac1059b01b04469680288998bcfa97f341ca989566adbb63975f4d85339030b82320c324a511532d390910d1c583893
- languageName: node
- linkType: hard
-
-"property-information@npm:^6.0.0":
- version: 6.2.0
- resolution: "property-information@npm:6.2.0"
- checksum: 23afce07ba821cbe7d926e63cdd680991961c82be4bbb6c0b17c47f48894359c1be6e51cd74485fc10a9d3fd361b475388e1e39311ed2b53127718f72aab1955
- languageName: node
- linkType: hard
-
"psl@npm:^1.1.33":
version: 1.9.0
resolution: "psl@npm:1.9.0"
@@ -7834,7 +7300,7 @@ __metadata:
languageName: node
linkType: hard
-"q@npm:1.x, q@npm:^1.4.1":
+"q@npm:^1.4.1":
version: 1.5.1
resolution: "q@npm:1.5.1"
checksum: 147baa93c805bc1200ed698bdf9c72e9e42c05f96d007e33a558b5fdfd63e5ea130e99313f28efc1783e90e6bdb4e48b67a36fcc026b7b09202437ae88a1fb12
@@ -7862,20 +7328,6 @@ __metadata:
languageName: node
linkType: hard
-"rc@npm:^1.2.7":
- version: 1.2.8
- resolution: "rc@npm:1.2.8"
- dependencies:
- deep-extend: ^0.6.0
- ini: ~1.3.0
- minimist: ^1.2.0
- strip-json-comments: ~2.0.1
- bin:
- rc: ./cli.js
- checksum: 2e26e052f8be2abd64e6d1dabfbd7be03f80ec18ccbc49562d31f617d0015fbdbcf0f9eed30346ea6ab789e0fdfe4337f033f8016efdbee0df5354751842080e
- languageName: node
- linkType: hard
-
"react-dom@npm:^18.2.0":
version: 18.2.0
resolution: "react-dom@npm:18.2.0"
@@ -7947,6 +7399,16 @@ __metadata:
languageName: node
linkType: hard
+"react-simple-code-editor@npm:^0.13.1":
+ version: 0.13.1
+ resolution: "react-simple-code-editor@npm:0.13.1"
+ peerDependencies:
+ react: "*"
+ react-dom: "*"
+ checksum: 1d223e34ccac5d7f91318f28d5edab6ccb13c51b1afb502094b8475214321263bb44258d355978e1714e9360c9081fb9f38d3ae89071a06628407627c362cc45
+ languageName: node
+ linkType: hard
+
"react-textarea-autosize@npm:8.3.4":
version: 8.3.4
resolution: "react-textarea-autosize@npm:8.3.4"
@@ -8031,18 +7493,7 @@ __metadata:
languageName: node
linkType: hard
-"refractor@npm:^3.4.0":
- version: 3.6.0
- resolution: "refractor@npm:3.6.0"
- dependencies:
- hastscript: ^6.0.0
- parse-entities: ^2.0.0
- prismjs: ~1.27.0
- checksum: 39b01c4168c77c5c8486f9bf8907bbb05f257f15026057ba5728535815a2d90eed620468a4bfbb2b8ceefbb3ce3931a1be8b17152dbdbc8b0eef92450ff750a2
- languageName: node
- linkType: hard
-
-"regenerator-runtime@npm:^0.13.11, regenerator-runtime@npm:^0.13.4":
+"regenerator-runtime@npm:^0.13.11":
version: 0.13.11
resolution: "regenerator-runtime@npm:0.13.11"
checksum: 27481628d22a1c4e3ff551096a683b424242a216fee44685467307f14d58020af1e19660bf2e26064de946bad7eff28950eae9f8209d55723e2d9351e632bbb4
@@ -8067,41 +7518,6 @@ __metadata:
languageName: node
linkType: hard
-"rehype-parse@npm:^8.0.0":
- version: 8.0.4
- resolution: "rehype-parse@npm:8.0.4"
- dependencies:
- "@types/hast": ^2.0.0
- hast-util-from-parse5: ^7.0.0
- parse5: ^6.0.0
- unified: ^10.0.0
- checksum: e678a5f9fa7cb91d5957f5f38bc37bc9fb90b8011a1ed6a90541ba6fff9f243c752c88b7f422cba8f5ba83ccb22942b1825654e8c3040970c703b85a6037efdf
- languageName: node
- linkType: hard
-
-"rehype-stringify@npm:^9.0.0":
- version: 9.0.3
- resolution: "rehype-stringify@npm:9.0.3"
- dependencies:
- "@types/hast": ^2.0.0
- hast-util-to-html: ^8.0.0
- unified: ^10.0.0
- checksum: ff4b1f3f88f2747a9f88d84f8cd9811e892a7309574480547ddfd94022725a62e17a9ccc69f9d909620a20f2a6ad750ea74b317f06ab50955209b5c0ede5cd3f
- languageName: node
- linkType: hard
-
-"rehype@npm:12.0.0":
- version: 12.0.0
- resolution: "rehype@npm:12.0.0"
- dependencies:
- "@types/hast": ^2.0.0
- rehype-parse: ^8.0.0
- rehype-stringify: ^9.0.0
- unified: ^10.0.0
- checksum: 469a3c040ce315a3f58663d558930a20fa65356dd653d2adefe8e1a0adbcd728adf050ccad3f046141daca7e538fe27b2fcfb96722b83cbe5d78b61862fade96
- languageName: node
- linkType: hard
-
"remove-accents@npm:0.4.2":
version: 0.4.2
resolution: "remove-accents@npm:0.4.2"
@@ -8116,13 +7532,6 @@ __metadata:
languageName: node
linkType: hard
-"require-from-string@npm:^2.0.2":
- version: 2.0.2
- resolution: "require-from-string@npm:2.0.2"
- checksum: a03ef6895445f33a4015300c426699bc66b2b044ba7b670aa238610381b56d3f07c686251740d575e22f4c87531ba662d06937508f0f3c0f1ddc04db3130560b
- languageName: node
- linkType: hard
-
"requires-port@npm:^1.0.0":
version: 1.0.0
resolution: "requires-port@npm:1.0.0"
@@ -8271,6 +7680,15 @@ __metadata:
languageName: node
linkType: hard
+"rust-result@npm:^1.0.0":
+ version: 1.0.0
+ resolution: "rust-result@npm:1.0.0"
+ dependencies:
+ individual: ^2.0.0
+ checksum: ccad2bdf79d3ff29e9f163db3121342b31e6d3008714851900c59da20489175f389dc3309cb92bfa5fa4d8f8842f0287567021912d37afbe5d379880af4bb95b
+ languageName: node
+ linkType: hard
+
"sabnzbd-api@npm:^1.5.0":
version: 1.5.0
resolution: "sabnzbd-api@npm:1.5.0"
@@ -8281,17 +7699,26 @@ __metadata:
languageName: node
linkType: hard
-"safe-buffer@npm:^5.0.1, safe-buffer@npm:~5.2.0":
+"safe-buffer@npm:~5.1.0, safe-buffer@npm:~5.1.1":
+ version: 5.1.2
+ resolution: "safe-buffer@npm:5.1.2"
+ checksum: f2f1f7943ca44a594893a852894055cf619c1fbcb611237fc39e461ae751187e7baf4dc391a72125e0ac4fb2d8c5c0b3c71529622e6a58f46b960211e704903c
+ languageName: node
+ linkType: hard
+
+"safe-buffer@npm:~5.2.0":
version: 5.2.1
resolution: "safe-buffer@npm:5.2.1"
checksum: b99c4b41fdd67a6aaf280fcd05e9ffb0813654894223afb78a31f14a19ad220bba8aba1cb14eddce1fcfb037155fe6de4e861784eb434f7d11ed58d1e70dd491
languageName: node
linkType: hard
-"safe-buffer@npm:~5.1.0, safe-buffer@npm:~5.1.1":
- version: 5.1.2
- resolution: "safe-buffer@npm:5.1.2"
- checksum: f2f1f7943ca44a594893a852894055cf619c1fbcb611237fc39e461ae751187e7baf4dc391a72125e0ac4fb2d8c5c0b3c71529622e6a58f46b960211e704903c
+"safe-json-parse@npm:4.0.0":
+ version: 4.0.0
+ resolution: "safe-json-parse@npm:4.0.0"
+ dependencies:
+ rust-result: ^1.0.0
+ checksum: dab69dee6cfeeb5735447e4bb79da06054ff46954f9ef7504ade0ae8afe4984d44afb16adbd24adf89a83088fac8cdb07cf4ec0abc94422a1f54a4484cdb5c1a
languageName: node
linkType: hard
@@ -8335,29 +7762,6 @@ __metadata:
languageName: node
linkType: hard
-"schema-utils@npm:^2.6.5":
- version: 2.7.1
- resolution: "schema-utils@npm:2.7.1"
- dependencies:
- "@types/json-schema": ^7.0.5
- ajv: ^6.12.4
- ajv-keywords: ^3.5.2
- checksum: 32c62fc9e28edd101e1bd83453a4216eb9bd875cc4d3775e4452b541908fa8f61a7bbac8ffde57484f01d7096279d3ba0337078e85a918ecbeb72872fb09fb2b
- languageName: node
- linkType: hard
-
-"schema-utils@npm:^4.0.0":
- version: 4.0.0
- resolution: "schema-utils@npm:4.0.0"
- dependencies:
- "@types/json-schema": ^7.0.9
- ajv: ^8.8.0
- ajv-formats: ^2.1.1
- ajv-keywords: ^5.0.0
- checksum: c843e92fdd1a5c145dbb6ffdae33e501867f9703afac67bdf35a685e49f85b1dcc10ea250033175a64bd9d31f0555bc6785b8359da0c90bcea30cf6dfbb55a8f
- languageName: node
- linkType: hard
-
"semver@npm:^6.0.0, semver@npm:^6.3.0":
version: 6.3.0
resolution: "semver@npm:6.3.0"
@@ -8385,23 +7789,6 @@ __metadata:
languageName: node
linkType: hard
-"sharp@npm:^0.30.7":
- version: 0.30.7
- resolution: "sharp@npm:0.30.7"
- dependencies:
- color: ^4.2.3
- detect-libc: ^2.0.1
- node-addon-api: ^5.0.0
- node-gyp: latest
- prebuild-install: ^7.1.1
- semver: ^7.3.7
- simple-get: ^4.0.1
- tar-fs: ^2.1.1
- tunnel-agent: ^0.6.0
- checksum: bbc63ca3c7ea8a5bff32cd77022cfea30e25a03f5bd031e935924bf6cf0e11e3388e8b0e22b3137bf8816aa73407f1e4fbeb190f3a35605c27ffca9f32b91601
- languageName: node
- linkType: hard
-
"shebang-command@npm:^2.0.0":
version: 2.0.0
resolution: "shebang-command@npm:2.0.0"
@@ -8436,33 +7823,6 @@ __metadata:
languageName: node
linkType: hard
-"simple-concat@npm:^1.0.0":
- version: 1.0.1
- resolution: "simple-concat@npm:1.0.1"
- checksum: 4d211042cc3d73a718c21ac6c4e7d7a0363e184be6a5ad25c8a1502e49df6d0a0253979e3d50dbdd3f60ef6c6c58d756b5d66ac1e05cda9cacd2e9fc59e3876a
- languageName: node
- linkType: hard
-
-"simple-get@npm:^4.0.0, simple-get@npm:^4.0.1":
- version: 4.0.1
- resolution: "simple-get@npm:4.0.1"
- dependencies:
- decompress-response: ^6.0.0
- once: ^1.3.1
- simple-concat: ^1.0.0
- checksum: e4132fd27cf7af230d853fa45c1b8ce900cb430dd0a3c6d3829649fe4f2b26574c803698076c4006450efb0fad2ba8c5455fbb5755d4b0a5ec42d4f12b31d27e
- languageName: node
- linkType: hard
-
-"simple-swizzle@npm:^0.2.2":
- version: 0.2.2
- resolution: "simple-swizzle@npm:0.2.2"
- dependencies:
- is-arrayish: ^0.3.1
- checksum: a7f3f2ab5c76c4472d5c578df892e857323e452d9f392e1b5cf74b74db66e6294a1e1b8b390b519fa1b96b5b613f2a37db6cffef52c3f1f8f3c5ea64eb2d54c0
- languageName: node
- linkType: hard
-
"sirv@npm:^1.0.7":
version: 1.0.19
resolution: "sirv@npm:1.0.19"
@@ -8547,20 +7907,6 @@ __metadata:
languageName: node
linkType: hard
-"space-separated-tokens@npm:^1.0.0":
- version: 1.1.5
- resolution: "space-separated-tokens@npm:1.1.5"
- checksum: 8ef68f1cfa8ccad316b7f8d0df0919d0f1f6d32101e8faeee34ea3a923ce8509c1ad562f57388585ee4951e92d27afa211ed0a077d3d5995b5ba9180331be708
- languageName: node
- linkType: hard
-
-"space-separated-tokens@npm:^2.0.0":
- version: 2.0.2
- resolution: "space-separated-tokens@npm:2.0.2"
- checksum: 202e97d7ca1ba0758a0aa4fe226ff98142073bcceeff2da3aad037968878552c3bbce3b3231970025375bbba5aee00c5b8206eda408da837ab2dc9c0f26be990
- languageName: node
- linkType: hard
-
"split-ca@npm:^1.0.1":
version: 1.0.1
resolution: "split-ca@npm:1.0.1"
@@ -8703,16 +8049,6 @@ __metadata:
languageName: node
linkType: hard
-"stringify-entities@npm:^4.0.0":
- version: 4.0.3
- resolution: "stringify-entities@npm:4.0.3"
- dependencies:
- character-entities-html4: ^2.0.0
- character-entities-legacy: ^3.0.0
- checksum: 59e8f523b403bf7d415690e72ae52982decd6ea5426bd8b3f5c66225ddde73e766c0c0d91627df082d0794e30b19dd907ffb5864cef3602e4098d6777d7ca3c2
- languageName: node
- linkType: hard
-
"strip-ansi@npm:^6.0.0, strip-ansi@npm:^6.0.1":
version: 6.0.1
resolution: "strip-ansi@npm:6.0.1"
@@ -8750,13 +8086,6 @@ __metadata:
languageName: node
linkType: hard
-"strip-json-comments@npm:~2.0.1":
- version: 2.0.1
- resolution: "strip-json-comments@npm:2.0.1"
- checksum: 1074ccb63270d32ca28edfb0a281c96b94dc679077828135141f27d52a5a398ef5e78bcf22809d23cadc2b81dfbe345eb5fd8699b385c8b1128907dec4a7d1e1
- languageName: node
- linkType: hard
-
"style-to-js@npm:1.1.0":
version: 1.1.0
resolution: "style-to-js@npm:1.1.0"
@@ -8868,18 +8197,6 @@ __metadata:
languageName: node
linkType: hard
-"tar-fs@npm:^2.0.0, tar-fs@npm:^2.1.1":
- version: 2.1.1
- resolution: "tar-fs@npm:2.1.1"
- dependencies:
- chownr: ^1.1.1
- mkdirp-classic: ^0.5.2
- pump: ^3.0.0
- tar-stream: ^2.1.4
- checksum: f5b9a70059f5b2969e65f037b4e4da2daf0fa762d3d232ffd96e819e3f94665dbbbe62f76f084f1acb4dbdcce16c6e4dac08d12ffc6d24b8d76720f4d9cf032d
- languageName: node
- linkType: hard
-
"tar-fs@npm:~2.0.1":
version: 2.0.1
resolution: "tar-fs@npm:2.0.1"
@@ -8892,7 +8209,7 @@ __metadata:
languageName: node
linkType: hard
-"tar-stream@npm:^2.0.0, tar-stream@npm:^2.1.4":
+"tar-stream@npm:^2.0.0":
version: 2.2.0
resolution: "tar-stream@npm:2.2.0"
dependencies:
@@ -9006,20 +8323,6 @@ __metadata:
languageName: node
linkType: hard
-"tr46@npm:~0.0.3":
- version: 0.0.3
- resolution: "tr46@npm:0.0.3"
- checksum: 726321c5eaf41b5002e17ffbd1fb7245999a073e8979085dacd47c4b4e8068ff5777142fc6726d6ca1fd2ff16921b48788b87225cbc57c72636f6efa8efbffe3
- languageName: node
- linkType: hard
-
-"trough@npm:^2.0.0":
- version: 2.1.0
- resolution: "trough@npm:2.1.0"
- checksum: a577bb561c2b401cc0e1d9e188fcfcdf63b09b151ff56a668da12197fe97cac15e3d77d5b51f426ccfd94255744a9118e9e9935afe81a3644fa1be9783c82886
- languageName: node
- linkType: hard
-
"tsconfig-paths@npm:^3.14.1":
version: 3.14.1
resolution: "tsconfig-paths@npm:3.14.1"
@@ -9057,12 +8360,74 @@ __metadata:
languageName: node
linkType: hard
-"tunnel-agent@npm:^0.6.0":
- version: 0.6.0
- resolution: "tunnel-agent@npm:0.6.0"
+"turbo-darwin-64@npm:1.7.4":
+ version: 1.7.4
+ resolution: "turbo-darwin-64@npm:1.7.4"
+ conditions: os=darwin & cpu=x64
+ languageName: node
+ linkType: hard
+
+"turbo-darwin-arm64@npm:1.7.4":
+ version: 1.7.4
+ resolution: "turbo-darwin-arm64@npm:1.7.4"
+ conditions: os=darwin & cpu=arm64
+ languageName: node
+ linkType: hard
+
+"turbo-linux-64@npm:1.7.4":
+ version: 1.7.4
+ resolution: "turbo-linux-64@npm:1.7.4"
+ conditions: os=linux & cpu=x64
+ languageName: node
+ linkType: hard
+
+"turbo-linux-arm64@npm:1.7.4":
+ version: 1.7.4
+ resolution: "turbo-linux-arm64@npm:1.7.4"
+ conditions: os=linux & cpu=arm64
+ languageName: node
+ linkType: hard
+
+"turbo-windows-64@npm:1.7.4":
+ version: 1.7.4
+ resolution: "turbo-windows-64@npm:1.7.4"
+ conditions: os=win32 & cpu=x64
+ languageName: node
+ linkType: hard
+
+"turbo-windows-arm64@npm:1.7.4":
+ version: 1.7.4
+ resolution: "turbo-windows-arm64@npm:1.7.4"
+ conditions: os=win32 & cpu=arm64
+ languageName: node
+ linkType: hard
+
+"turbo@npm:^1.7.4":
+ version: 1.7.4
+ resolution: "turbo@npm:1.7.4"
dependencies:
- safe-buffer: ^5.0.1
- checksum: 05f6510358f8afc62a057b8b692f05d70c1782b70db86d6a1e0d5e28a32389e52fa6e7707b6c5ecccacc031462e4bc35af85ecfe4bbc341767917b7cf6965711
+ turbo-darwin-64: 1.7.4
+ turbo-darwin-arm64: 1.7.4
+ turbo-linux-64: 1.7.4
+ turbo-linux-arm64: 1.7.4
+ turbo-windows-64: 1.7.4
+ turbo-windows-arm64: 1.7.4
+ dependenciesMeta:
+ turbo-darwin-64:
+ optional: true
+ turbo-darwin-arm64:
+ optional: true
+ turbo-linux-64:
+ optional: true
+ turbo-linux-arm64:
+ optional: true
+ turbo-windows-64:
+ optional: true
+ turbo-windows-arm64:
+ optional: true
+ bin:
+ turbo: bin/turbo
+ checksum: c4387cfee36c57dd1490e9b2452888d8450faa390aec5bc148389b426bc079d03044891d61ad84a6a3a7454e66dfbe9e9cfba05f636b36fef7ece7af275ef9ce
languageName: node
linkType: hard
@@ -9146,28 +8511,6 @@ __metadata:
languageName: node
linkType: hard
-"underscore@npm:^1.12.0":
- version: 1.13.6
- resolution: "underscore@npm:1.13.6"
- checksum: d5cedd14a9d0d91dd38c1ce6169e4455bb931f0aaf354108e47bd46d3f2da7464d49b2171a5cf786d61963204a42d01ea1332a903b7342ad428deaafaf70ec36
- languageName: node
- linkType: hard
-
-"unified@npm:^10.0.0":
- version: 10.1.2
- resolution: "unified@npm:10.1.2"
- dependencies:
- "@types/unist": ^2.0.0
- bail: ^2.0.0
- extend: ^3.0.0
- is-buffer: ^2.0.0
- is-plain-obj: ^4.0.0
- trough: ^2.0.0
- vfile: ^5.0.0
- checksum: 053e7c65ede644607f87bd625a299e4b709869d2f76ec8138569e6e886903b6988b21cd9699e471eda42bee189527be0a9dac05936f1d069a5e65d0125d5d756
- languageName: node
- linkType: hard
-
"unique-filename@npm:^2.0.0":
version: 2.0.1
resolution: "unique-filename@npm:2.0.1"
@@ -9186,80 +8529,6 @@ __metadata:
languageName: node
linkType: hard
-"unist-util-is@npm:^4.0.0":
- version: 4.1.0
- resolution: "unist-util-is@npm:4.1.0"
- checksum: 726484cd2adc9be75a939aeedd48720f88294899c2e4a3143da413ae593f2b28037570730d5cf5fd910ff41f3bc1501e3d636b6814c478d71126581ef695f7ea
- languageName: node
- linkType: hard
-
-"unist-util-is@npm:^5.0.0":
- version: 5.2.0
- resolution: "unist-util-is@npm:5.2.0"
- checksum: b80debe1ce5d40a8d685c510f597e5c8b8f7089540e9e268bda1b05bcce735c10bf36d5b0e4ecded50c63fa43b8a11b0e4b784beecf1559f153a2f2855e8526c
- languageName: node
- linkType: hard
-
-"unist-util-position@npm:^4.0.0":
- version: 4.0.4
- resolution: "unist-util-position@npm:4.0.4"
- dependencies:
- "@types/unist": ^2.0.0
- checksum: e7487b6cec9365299695e3379ded270a1717074fa11fd2407c9b934fb08db6fe1d9077ddeaf877ecf1813665f8ccded5171693d3d9a7a01a125ec5cdd5e88691
- languageName: node
- linkType: hard
-
-"unist-util-stringify-position@npm:^3.0.0":
- version: 3.0.3
- resolution: "unist-util-stringify-position@npm:3.0.3"
- dependencies:
- "@types/unist": ^2.0.0
- checksum: dbd66c15183607ca942a2b1b7a9f6a5996f91c0d30cf8966fb88955a02349d9eefd3974e9010ee67e71175d784c5a9fea915b0aa0b0df99dcb921b95c4c9e124
- languageName: node
- linkType: hard
-
-"unist-util-visit-parents@npm:^3.0.0":
- version: 3.1.1
- resolution: "unist-util-visit-parents@npm:3.1.1"
- dependencies:
- "@types/unist": ^2.0.0
- unist-util-is: ^4.0.0
- checksum: 1170e397dff88fab01e76d5154981666eb0291019d2462cff7a2961a3e76d3533b42eaa16b5b7e2d41ad42a5ea7d112301458283d255993e660511387bf67bc3
- languageName: node
- linkType: hard
-
-"unist-util-visit-parents@npm:^5.1.1":
- version: 5.1.3
- resolution: "unist-util-visit-parents@npm:5.1.3"
- dependencies:
- "@types/unist": ^2.0.0
- unist-util-is: ^5.0.0
- checksum: 8ecada5978994f846b64658cf13b4092cd78dea39e1ba2f5090a5de842ba4852712c02351a8ae95250c64f864635e7b02aedf3b4a093552bb30cf1bd160efbaa
- languageName: node
- linkType: hard
-
-"unist-util-visit@npm:^2.0.3":
- version: 2.0.3
- resolution: "unist-util-visit@npm:2.0.3"
- dependencies:
- "@types/unist": ^2.0.0
- unist-util-is: ^4.0.0
- unist-util-visit-parents: ^3.0.0
- checksum: 1fe19d500e212128f96d8c3cfa3312846e586b797748a1fd195fe6479f06bc90a6f6904deb08eefc00dd58e83a1c8a32fb8677252d2273ad7a5e624525b69b8f
- languageName: node
- linkType: hard
-
-"unist-util-visit@npm:^4.0.0":
- version: 4.1.2
- resolution: "unist-util-visit@npm:4.1.2"
- dependencies:
- "@types/unist": ^2.0.0
- unist-util-is: ^5.0.0
- unist-util-visit-parents: ^5.1.1
- checksum: 95a34e3f7b5b2d4b68fd722b6229972099eb97b6df18913eda44a5c11df8b1e27efe7206dd7b88c4ed244a48c474a5b2e2629ab79558ff9eb936840295549cee
- languageName: node
- linkType: hard
-
"universalify@npm:^0.2.0":
version: 0.2.0
resolution: "universalify@npm:0.2.0"
@@ -9300,6 +8569,13 @@ __metadata:
languageName: node
linkType: hard
+"url-toolkit@npm:^2.2.1":
+ version: 2.2.5
+ resolution: "url-toolkit@npm:2.2.5"
+ checksum: c784040bd4dbd78647a62218b6b8c1abd9a2f7fd8adce1851daf21dc2d98e2a5d69b78a628ec07dcfa112c16a112a182e109b7c872b6e8a1e4a1547b49b81f7b
+ languageName: node
+ linkType: hard
+
"use-composed-ref@npm:^1.3.0":
version: 1.3.0
resolution: "use-composed-ref@npm:1.3.0"
@@ -9400,6 +8676,53 @@ __metadata:
unist-util-stringify-position: ^3.0.0
vfile-message: ^3.0.0
checksum: 642cce703afc186dbe7cabf698dc954c70146e853491086f5da39e1ce850676fc96b169fcf7898aa3ff245e9313aeec40da93acd1e1fcc0c146dc4f6308b4ef9
+
+"video.js@npm:^7 || ^8, video.js@npm:^8.0.3":
+ version: 8.0.3
+ resolution: "video.js@npm:8.0.3"
+ dependencies:
+ "@babel/runtime": ^7.12.5
+ "@videojs/http-streaming": 3.0.0
+ "@videojs/vhs-utils": ^4.0.0
+ "@videojs/xhr": 2.6.0
+ aes-decrypter: ^4.0.1
+ global: 4.4.0
+ keycode: 2.2.0
+ m3u8-parser: ^6.0.0
+ mpd-parser: ^1.0.1
+ mux.js: ^6.2.0
+ safe-json-parse: 4.0.0
+ videojs-contrib-quality-levels: 3.0.0
+ videojs-font: 3.2.0
+ videojs-vtt.js: 0.15.4
+ checksum: 3bb4b334192116c8bcbe254a67fee1655cb829155845afaf274efe5bf8019f9a32081156f697b68b322af91853f0b843ffbbed572cefb307d5f47ea61c6c78b4
+ languageName: node
+ linkType: hard
+
+"videojs-contrib-quality-levels@npm:3.0.0":
+ version: 3.0.0
+ resolution: "videojs-contrib-quality-levels@npm:3.0.0"
+ dependencies:
+ global: ^4.4.0
+ peerDependencies:
+ video.js: ^6 || ^7 || ^8
+ checksum: 06635a74f4c88d7adb7c8e55687b76306432ea5921c4a03cfb9845adc0eef671c9e043706911e761366a41e6a4046cafaa619c645f25858764500e5596ce9b41
+ languageName: node
+ linkType: hard
+
+"videojs-font@npm:3.2.0":
+ version: 3.2.0
+ resolution: "videojs-font@npm:3.2.0"
+ checksum: 3c773d4a64123c237c26029a5d04c51919e3b6e688db0a20c6f9c647198ec815425d96a62dd24989046f27aa583c96cecae715f789f8d98452b4df419c23158a
+ languageName: node
+ linkType: hard
+
+"videojs-vtt.js@npm:0.15.4":
+ version: 0.15.4
+ resolution: "videojs-vtt.js@npm:0.15.4"
+ dependencies:
+ global: ^4.3.1
+ checksum: 10c6c861621d4314e7d4b60b7bef1afc60f1ac438879f6b3f22e8944d694c8e9dfc809a8187ed72f44e06c39a159044d8fa15e80695b9bf7b9bef99ea2740b70
languageName: node
linkType: hard
@@ -9419,13 +8742,6 @@ __metadata:
languageName: node
linkType: hard
-"web-namespaces@npm:^2.0.0":
- version: 2.0.1
- resolution: "web-namespaces@npm:2.0.1"
- checksum: b6d9f02f1a43d0ef0848a812d89c83801d5bbad57d8bb61f02eb6d7eb794c3736f6cc2e1191664bb26136594c8218ac609f4069722c6f56d9fc2d808fa9271c6
- languageName: node
- linkType: hard
-
"web-streams-polyfill@npm:4.0.0-beta.3":
version: 4.0.0-beta.3
resolution: "web-streams-polyfill@npm:4.0.0-beta.3"
@@ -9433,13 +8749,6 @@ __metadata:
languageName: node
linkType: hard
-"webidl-conversions@npm:^3.0.0":
- version: 3.0.1
- resolution: "webidl-conversions@npm:3.0.1"
- checksum: c92a0a6ab95314bde9c32e1d0a6dfac83b578f8fa5f21e675bc2706ed6981bc26b7eb7e6a1fab158e5ce4adf9caa4a0aee49a52505d4d13c7be545f15021b17c
- languageName: node
- linkType: hard
-
"webpack-bundle-analyzer@npm:4.3.0":
version: 4.3.0
resolution: "webpack-bundle-analyzer@npm:4.3.0"
@@ -9459,16 +8768,6 @@ __metadata:
languageName: node
linkType: hard
-"whatwg-url@npm:^5.0.0":
- version: 5.0.0
- resolution: "whatwg-url@npm:5.0.0"
- dependencies:
- tr46: ~0.0.3
- webidl-conversions: ^3.0.0
- checksum: b8daed4ad3356cc4899048a15b2c143a9aed0dfae1f611ebd55073310c7b910f522ad75d727346ad64203d7e6c79ef25eafd465f4d12775ca44b90fa82ed9e2c
- languageName: node
- linkType: hard
-
"which-boxed-primitive@npm:^1.0.2":
version: 1.0.2
resolution: "which-boxed-primitive@npm:1.0.2"
@@ -9677,10 +8976,3 @@ __metadata:
checksum: fe0277ab0ce14849dea254cbdcfe83d4614364d38e616875f75ef2419f29085f5b03605efabeb33189a4557e647efaa294e0984c4f642e0566f445a7b207cdd6
languageName: node
linkType: hard
-
-"zwitch@npm:^2.0.0, zwitch@npm:^2.0.4":
- version: 2.0.4
- resolution: "zwitch@npm:2.0.4"
- checksum: f22ec5fc2d5f02c423c93d35cdfa83573a3a3bd98c66b927c368ea4d0e7252a500df2a90a6b45522be536a96a73404393c958e945fdba95e6832c200791702b6
- languageName: node
- linkType: hard