Add widget for Atsumeru self-hosted media server
This commit is contained in:
parent
dce89f0c01
commit
e687b61e9f
@ -492,6 +492,12 @@
|
||||
"incident": "Incident",
|
||||
"m": "m"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Libraries",
|
||||
"series": "Series",
|
||||
|
||||
@ -492,6 +492,12 @@
|
||||
"incident": "Incident",
|
||||
"m": "m"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Libraries",
|
||||
"series": "Series",
|
||||
|
||||
@ -492,6 +492,12 @@
|
||||
"uptime": "Uptime",
|
||||
"incident": "Incident"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Libraries",
|
||||
"series": "Series",
|
||||
|
||||
@ -492,6 +492,12 @@
|
||||
"incident": "Incident",
|
||||
"m": "m"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Série",
|
||||
"archives": "Archivy",
|
||||
"chapters": "Kapitoly",
|
||||
"categories": "Kategorie"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Knihovny",
|
||||
"series": "Série",
|
||||
|
||||
@ -492,6 +492,12 @@
|
||||
"incident": "Incident",
|
||||
"m": "m"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Libraries",
|
||||
"series": "Series",
|
||||
|
||||
@ -492,6 +492,12 @@
|
||||
"incident": "Vorfall",
|
||||
"m": "m"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Serie",
|
||||
"archives": "Archiv",
|
||||
"chapters": "Kapitel",
|
||||
"categories": "Kategorien"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Bibliotheken",
|
||||
"series": "Serie",
|
||||
|
||||
@ -509,6 +509,12 @@
|
||||
"incident": "Incident",
|
||||
"m": "m"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Libraries",
|
||||
"series": "Series",
|
||||
|
||||
@ -579,6 +579,12 @@
|
||||
"incident": "Incident",
|
||||
"m": "m"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Libraries",
|
||||
"series": "Series",
|
||||
|
||||
@ -492,6 +492,12 @@
|
||||
"incident": "Incident",
|
||||
"m": "m"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Libraries",
|
||||
"series": "Series",
|
||||
|
||||
@ -492,6 +492,12 @@
|
||||
"incident": "Incidencia",
|
||||
"m": "m"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archivos",
|
||||
"chapters": "Capítulos",
|
||||
"categories": "Categorías"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Librerías",
|
||||
"series": "Series",
|
||||
|
||||
@ -570,6 +570,12 @@
|
||||
"incident": "Incident",
|
||||
"m": "m"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Libraries",
|
||||
"series": "Series",
|
||||
|
||||
@ -492,6 +492,12 @@
|
||||
"incident": "Incident",
|
||||
"m": "m"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Libraries",
|
||||
"series": "Series",
|
||||
|
||||
@ -492,6 +492,12 @@
|
||||
"incident": "Incident",
|
||||
"m": "m"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Librairies",
|
||||
"series": "Séries",
|
||||
|
||||
@ -492,6 +492,12 @@
|
||||
"incident": "Incident",
|
||||
"m": "m"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Libraries",
|
||||
"series": "Series",
|
||||
|
||||
@ -492,6 +492,12 @@
|
||||
"incident": "Incident",
|
||||
"m": "m"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Libraries",
|
||||
"series": "Series",
|
||||
|
||||
@ -492,6 +492,12 @@
|
||||
"incident": "Slučaj",
|
||||
"m": "min"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Serije",
|
||||
"archives": "Archívum",
|
||||
"chapters": "Fejezetek",
|
||||
"categories": "Kategóriák"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Biblioteke",
|
||||
"series": "Serije",
|
||||
|
||||
@ -425,6 +425,12 @@
|
||||
"incident": "Incident",
|
||||
"m": "m"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Libraries",
|
||||
"series": "Series",
|
||||
|
||||
@ -492,6 +492,12 @@
|
||||
"incident": "Incidente",
|
||||
"m": "m"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Serie",
|
||||
"archives": "Archivio",
|
||||
"chapters": "Capitoli",
|
||||
"categories": "Categorie"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Librerie",
|
||||
"series": "Serie",
|
||||
|
||||
@ -492,6 +492,12 @@
|
||||
"incident": "Incident",
|
||||
"m": "m"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "シリーズ",
|
||||
"archives": "アーカイブス",
|
||||
"chapters": "各章",
|
||||
"categories": "カテゴリー"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "ライブラリ",
|
||||
"series": "シリーズ",
|
||||
|
||||
@ -513,6 +513,12 @@
|
||||
"incident": "Incident",
|
||||
"m": "m"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "시리즈",
|
||||
"archives": "아카이브",
|
||||
"chapters": "챕터",
|
||||
"categories": "카테고리"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Libraries",
|
||||
"series": "Series",
|
||||
|
||||
@ -492,6 +492,12 @@
|
||||
"incident": "Incident",
|
||||
"m": "m"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Libraries",
|
||||
"series": "Series",
|
||||
|
||||
@ -492,6 +492,12 @@
|
||||
"incident": "Incident",
|
||||
"m": "m"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Libraries",
|
||||
"series": "Series",
|
||||
|
||||
@ -492,6 +492,12 @@
|
||||
"incident": "Incident",
|
||||
"m": "m"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Libraries",
|
||||
"series": "Series",
|
||||
|
||||
@ -492,6 +492,12 @@
|
||||
"incident": "Incident",
|
||||
"m": "m"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Serie",
|
||||
"archives": "Archief",
|
||||
"chapters": "Hoofdstukken",
|
||||
"categories": "Categorieën"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Bibliotheken",
|
||||
"series": "Series",
|
||||
|
||||
@ -492,6 +492,12 @@
|
||||
"incident": "Incydent",
|
||||
"m": "min"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Seria",
|
||||
"archives": "Archiwa",
|
||||
"chapters": "Rozdziały",
|
||||
"categories": "Kategorie"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Biblioteki",
|
||||
"series": "Seriale",
|
||||
|
||||
@ -492,6 +492,12 @@
|
||||
"incident": "Incidente",
|
||||
"m": "m"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Série",
|
||||
"archives": "Arquivos",
|
||||
"chapters": "Capítulos",
|
||||
"categories": "Categorias"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Bibliotecas",
|
||||
"series": "Séries",
|
||||
|
||||
@ -501,6 +501,12 @@
|
||||
"incident": "Incidente",
|
||||
"m": "m"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Série",
|
||||
"archives": "Arquivos",
|
||||
"chapters": "Capítulos",
|
||||
"categories": "Categorias"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Bibliotecas",
|
||||
"series": "Séries",
|
||||
|
||||
@ -492,6 +492,12 @@
|
||||
"incident": "Incident",
|
||||
"m": "m"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Libraries",
|
||||
"series": "Series",
|
||||
|
||||
@ -492,6 +492,12 @@
|
||||
"incident": "Инцидент",
|
||||
"m": "м"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Серии",
|
||||
"archives": "Архивы",
|
||||
"chapters": "Главы",
|
||||
"categories": "Категории"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Библиотеки",
|
||||
"series": "Серии",
|
||||
|
||||
@ -524,6 +524,12 @@
|
||||
"cpu_usage": "CPU",
|
||||
"memory_usage": "Memory"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Libraries",
|
||||
"series": "Series",
|
||||
|
||||
@ -545,6 +545,12 @@
|
||||
"incident": "Incident",
|
||||
"m": "m"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Serija",
|
||||
"archives": "Arhivi",
|
||||
"chapters": "Poglavja",
|
||||
"categories": "Kategorije"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Knjižnice",
|
||||
"series": "Serije",
|
||||
|
||||
@ -492,6 +492,12 @@
|
||||
"incident": "Incident",
|
||||
"m": "m"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Libraries",
|
||||
"series": "Series",
|
||||
|
||||
@ -492,6 +492,12 @@
|
||||
"incident": "Incident",
|
||||
"m": "m"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Libraries",
|
||||
"series": "Series",
|
||||
|
||||
@ -492,6 +492,12 @@
|
||||
"incident": "Incident",
|
||||
"m": "m"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Libraries",
|
||||
"series": "Series",
|
||||
|
||||
@ -492,6 +492,12 @@
|
||||
"incident": "Incident",
|
||||
"m": "m"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Libraries",
|
||||
"series": "Series",
|
||||
|
||||
@ -492,6 +492,12 @@
|
||||
"incident": "Incident",
|
||||
"m": "m"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Seri",
|
||||
"archives": "Arşivler",
|
||||
"chapters": "Bölümler",
|
||||
"categories": "Kategoriler"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Kütüphane",
|
||||
"series": "Series",
|
||||
|
||||
@ -492,6 +492,12 @@
|
||||
"incident": "Інцидент",
|
||||
"m": "хв"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Серії",
|
||||
"archives": "Архіви",
|
||||
"chapters": "Глави",
|
||||
"categories": "Категорії"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Бібліотеки",
|
||||
"series": "Серії",
|
||||
|
||||
@ -492,6 +492,12 @@
|
||||
"incident": "Incident",
|
||||
"m": "m"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Libraries",
|
||||
"series": "Series",
|
||||
|
||||
@ -492,6 +492,12 @@
|
||||
"incident": "Incident",
|
||||
"m": "m"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "Series",
|
||||
"archives": "Archives",
|
||||
"chapters": "Chapters",
|
||||
"categories": "Categories"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "Libraries",
|
||||
"series": "Series",
|
||||
|
||||
@ -492,6 +492,12 @@
|
||||
"incident": "严重事件",
|
||||
"m": "m"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "系列",
|
||||
"archives": "档案",
|
||||
"chapters": "章节",
|
||||
"categories": "类别"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "书库",
|
||||
"series": "系列",
|
||||
|
||||
@ -492,6 +492,12 @@
|
||||
"incident": "事件",
|
||||
"m": "m"
|
||||
},
|
||||
"atsumeru": {
|
||||
"series": "系列",
|
||||
"archives": "档案",
|
||||
"chapters": "章节",
|
||||
"categories": "类别"
|
||||
},
|
||||
"komga": {
|
||||
"libraries": "文庫",
|
||||
"series": "叢刊",
|
||||
|
||||
36
src/widgets/atsumeru/component.jsx
Normal file
36
src/widgets/atsumeru/component.jsx
Normal file
@ -0,0 +1,36 @@
|
||||
import { useTranslation } from "next-i18next";
|
||||
|
||||
import Container from "components/services/widget/container";
|
||||
import Block from "components/services/widget/block";
|
||||
import useWidgetAPI from "utils/proxy/use-widget-api";
|
||||
|
||||
export default function Component({ service }) {
|
||||
const { t } = useTranslation();
|
||||
const { widget } = service;
|
||||
|
||||
const { data: infoData, error: infoError } = useWidgetAPI(widget, "info");
|
||||
|
||||
if (infoError) {
|
||||
return <Container service={service} error={infoError} />;
|
||||
}
|
||||
|
||||
if (!infoData) {
|
||||
return (
|
||||
<Container service={service}>
|
||||
<Block label="atsumeru.series" />
|
||||
<Block label="atsumeru.archives" />
|
||||
<Block label="atsumeru.chapters" />
|
||||
<Block label="atsumeru.categories" />
|
||||
</Container>
|
||||
);
|
||||
}
|
||||
|
||||
return (
|
||||
<Container service={service}>
|
||||
<Block label="atsumeru.series" value={t("common.number", { value: infoData.stats.total_series })} />
|
||||
<Block label="atsumeru.archives" value={t("common.number", { value: infoData.stats.total_archives })} />
|
||||
<Block label="atsumeru.chapters" value={t("common.number", { value: infoData.stats.total_chapters })} />
|
||||
<Block label="atsumeru.categories" value={t("common.number", { value: infoData.stats.total_categories })} />
|
||||
</Container>
|
||||
);
|
||||
}
|
||||
15
src/widgets/atsumeru/widget.js
Normal file
15
src/widgets/atsumeru/widget.js
Normal file
@ -0,0 +1,15 @@
|
||||
import genericProxyHandler from "utils/proxy/handlers/generic";
|
||||
import { jsonArrayFilter, asJson } from "utils/proxy/api-helpers";
|
||||
|
||||
const widget = {
|
||||
api: "{url}/api/server/{endpoint}",
|
||||
proxyHandler: genericProxyHandler,
|
||||
|
||||
mappings: {
|
||||
info: {
|
||||
endpoint: "info"
|
||||
}
|
||||
},
|
||||
};
|
||||
|
||||
export default widget;
|
||||
@ -2,6 +2,7 @@ import dynamic from "next/dynamic";
|
||||
|
||||
const components = {
|
||||
adguard: dynamic(() => import("./adguard/component")),
|
||||
atsumeru: dynamic(() => import("./atsumeru/component")),
|
||||
audiobookshelf: dynamic(() => import("./audiobookshelf/component")),
|
||||
authentik: dynamic(() => import("./authentik/component")),
|
||||
autobrr: dynamic(() => import("./autobrr/component")),
|
||||
|
||||
@ -1,4 +1,5 @@
|
||||
import adguard from "./adguard/widget";
|
||||
import atsumeru from "./atsumeru/widget";
|
||||
import audiobookshelf from "./audiobookshelf/widget";
|
||||
import authentik from "./authentik/widget";
|
||||
import autobrr from "./autobrr/widget";
|
||||
@ -95,6 +96,7 @@ import urbackup from "./urbackup/widget";
|
||||
|
||||
const widgets = {
|
||||
adguard,
|
||||
atsumeru,
|
||||
audiobookshelf,
|
||||
authentik,
|
||||
autobrr,
|
||||
|
||||
Loading…
Reference in New Issue
Block a user