mirror of
				https://github.com/karl0ss/homepage.git
				synced 2025-11-04 00:10:57 +00:00 
			
		
		
		
	Chore: another big deps update (#4795)
This commit is contained in:
		
							parent
							
								
									2881114816
								
							
						
					
					
						commit
						1c24bd7449
					
				@ -1,5 +1,9 @@
 | 
			
		||||
{
 | 
			
		||||
  "extends": ["airbnb", "next/core-web-vitals", "prettier"],
 | 
			
		||||
  "extends": [
 | 
			
		||||
    "next/core-web-vitals",
 | 
			
		||||
    "prettier",
 | 
			
		||||
    "plugin:react-hooks/recommended"
 | 
			
		||||
  ],
 | 
			
		||||
  "plugins": ["prettier"],
 | 
			
		||||
  "rules": {
 | 
			
		||||
    "import/no-cycle": [
 | 
			
		||||
@ -27,5 +31,12 @@
 | 
			
		||||
        "paths": ["src"]
 | 
			
		||||
      }
 | 
			
		||||
    }
 | 
			
		||||
  },
 | 
			
		||||
  "parserOptions": {
 | 
			
		||||
    "ecmaVersion": 6,
 | 
			
		||||
    "sourceType": "module",
 | 
			
		||||
    "ecmaFeatures": {
 | 
			
		||||
      "modules": true
 | 
			
		||||
    }
 | 
			
		||||
  }
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										677
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										677
									
								
								package-lock.json
									
									
									
										generated
									
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
							
								
								
									
										39
									
								
								package.json
									
									
									
									
									
								
							
							
						
						
									
										39
									
								
								package.json
									
									
									
									
									
								
							@ -14,17 +14,17 @@
 | 
			
		||||
    "@kubernetes/client-node": "^1.0.0",
 | 
			
		||||
    "cal-parser": "^1.0.2",
 | 
			
		||||
    "classnames": "^2.5.1",
 | 
			
		||||
    "compare-versions": "^6.1.0",
 | 
			
		||||
    "dockerode": "^4.0.2",
 | 
			
		||||
    "compare-versions": "^6.1.1",
 | 
			
		||||
    "dockerode": "^4.0.4",
 | 
			
		||||
    "follow-redirects": "^1.15.9",
 | 
			
		||||
    "gamedig": "^5.1.4",
 | 
			
		||||
    "gamedig": "^5.2.0",
 | 
			
		||||
    "i18next": "^21.10.0",
 | 
			
		||||
    "js-yaml": "^4.1.0",
 | 
			
		||||
    "json-rpc-2.0": "^1.7.0",
 | 
			
		||||
    "luxon": "^3.5.0",
 | 
			
		||||
    "memory-cache": "^0.2.0",
 | 
			
		||||
    "minecraft-ping-js": "^1.0.2",
 | 
			
		||||
    "next": "^15.0.3",
 | 
			
		||||
    "minecraftstatuspinger": "^1.2.1",
 | 
			
		||||
    "next": "^15.1.7",
 | 
			
		||||
    "next-i18next": "^12.1.0",
 | 
			
		||||
    "ping": "^0.4.4",
 | 
			
		||||
    "pretty-bytes": "^6.1.1",
 | 
			
		||||
@ -33,32 +33,31 @@
 | 
			
		||||
    "react-dom": "^18.3.1",
 | 
			
		||||
    "react-i18next": "^11.18.6",
 | 
			
		||||
    "react-icons": "^5.4.0",
 | 
			
		||||
    "recharts": "^2.12.7",
 | 
			
		||||
    "recharts": "^2.15.1",
 | 
			
		||||
    "rrule": "^2.8.1",
 | 
			
		||||
    "swr": "^1.3.0",
 | 
			
		||||
    "systeminformation": "^5.24.3",
 | 
			
		||||
    "systeminformation": "^5.25.11",
 | 
			
		||||
    "tough-cookie": "^4.1.4",
 | 
			
		||||
    "urbackup-server-api": "^0.8.9",
 | 
			
		||||
    "winston": "^3.13.0",
 | 
			
		||||
    "winston": "^3.17.0",
 | 
			
		||||
    "xml-js": "^1.6.11"
 | 
			
		||||
  },
 | 
			
		||||
  "devDependencies": {
 | 
			
		||||
    "@tailwindcss/forms": "^0.5.8",
 | 
			
		||||
    "@tailwindcss/forms": "^0.5.10",
 | 
			
		||||
    "autoprefixer": "^10.4.20",
 | 
			
		||||
    "eslint": "^8.57.1",
 | 
			
		||||
    "eslint-config-airbnb": "^19.0.4",
 | 
			
		||||
    "eslint-config-next": "^14.2.4",
 | 
			
		||||
    "eslint": "^9.20.1",
 | 
			
		||||
    "eslint-config-next": "^15.1.7",
 | 
			
		||||
    "eslint-config-prettier": "^9.1.0",
 | 
			
		||||
    "eslint-plugin-import": "^2.31.0",
 | 
			
		||||
    "eslint-plugin-jsx-a11y": "^6.9.0",
 | 
			
		||||
    "eslint-plugin-prettier": "^5.2.1",
 | 
			
		||||
    "eslint-plugin-react": "^7.37.3",
 | 
			
		||||
    "eslint-plugin-react-hooks": "^4.6.2",
 | 
			
		||||
    "postcss": "^8.4.48",
 | 
			
		||||
    "prettier": "^3.3.2",
 | 
			
		||||
    "tailwind-scrollbar": "^3.0.5",
 | 
			
		||||
    "eslint-plugin-jsx-a11y": "^6.10.2",
 | 
			
		||||
    "eslint-plugin-prettier": "^5.2.3",
 | 
			
		||||
    "eslint-plugin-react": "^7.37.4",
 | 
			
		||||
    "eslint-plugin-react-hooks": "^5.1.0",
 | 
			
		||||
    "postcss": "^8.5.2",
 | 
			
		||||
    "prettier": "^3.5.1",
 | 
			
		||||
    "tailwind-scrollbar": "^3.1.0",
 | 
			
		||||
    "tailwindcss": "^3.4.17",
 | 
			
		||||
    "typescript": "^5.6.3"
 | 
			
		||||
    "typescript": "^5.7.3"
 | 
			
		||||
  },
 | 
			
		||||
  "optionalDependencies": {
 | 
			
		||||
    "osx-temperature-sensor": "^1.0.8"
 | 
			
		||||
 | 
			
		||||
							
								
								
									
										1084
									
								
								pnpm-lock.yaml
									
									
									
										generated
									
									
									
								
							
							
						
						
									
										1084
									
								
								pnpm-lock.yaml
									
									
									
										generated
									
									
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							@ -2,7 +2,6 @@ import { useRef, useEffect } from "react";
 | 
			
		||||
import classNames from "classnames";
 | 
			
		||||
import { Disclosure, Transition } from "@headlessui/react";
 | 
			
		||||
import { MdKeyboardArrowDown } from "react-icons/md";
 | 
			
		||||
 | 
			
		||||
import ErrorBoundary from "components/errorboundry";
 | 
			
		||||
import List from "components/bookmarks/list";
 | 
			
		||||
import ResolvedIcon from "components/resolvedicon";
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,5 @@
 | 
			
		||||
import { useContext } from "react";
 | 
			
		||||
import classNames from "classnames";
 | 
			
		||||
 | 
			
		||||
import { SettingsContext } from "utils/contexts/settings";
 | 
			
		||||
import ResolvedIcon from "components/resolvedicon";
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -1,9 +1,8 @@
 | 
			
		||||
import classNames from "classnames";
 | 
			
		||||
import Item from "components/bookmarks/item";
 | 
			
		||||
 | 
			
		||||
import { columnMap } from "../../utils/layout/columns";
 | 
			
		||||
 | 
			
		||||
import Item from "components/bookmarks/item";
 | 
			
		||||
 | 
			
		||||
export default function List({ bookmarks, layout, bookmarksStyle }) {
 | 
			
		||||
  let classes = layout?.style === "row" ? `grid ${columnMap[layout?.columns]} gap-x-2` : "flex flex-col bookmark-list";
 | 
			
		||||
  const style = {};
 | 
			
		||||
 | 
			
		||||
@ -1,9 +1,9 @@
 | 
			
		||||
/* eslint-disable @next/next/no-img-element */
 | 
			
		||||
/* eslint-disable jsx-a11y/alt-text */
 | 
			
		||||
import { useRef, useEffect, useContext } from "react";
 | 
			
		||||
import { ColorContext } from "utils/contexts/color";
 | 
			
		||||
 | 
			
		||||
import themes from "utils/styles/themes";
 | 
			
		||||
import { ColorContext } from "utils/contexts/color";
 | 
			
		||||
 | 
			
		||||
export function Svg({ svgRef = null }) {
 | 
			
		||||
  const { color } = useContext(ColorContext);
 | 
			
		||||
 | 
			
		||||
@ -2,12 +2,11 @@ import { useTranslation } from "react-i18next";
 | 
			
		||||
import { useEffect, useState, useRef, useCallback, useContext } from "react";
 | 
			
		||||
import classNames from "classnames";
 | 
			
		||||
import useSWR from "swr";
 | 
			
		||||
import { SettingsContext } from "utils/contexts/settings";
 | 
			
		||||
 | 
			
		||||
import ResolvedIcon from "./resolvedicon";
 | 
			
		||||
import { getStoredProvider, searchProviders } from "./widgets/search/search";
 | 
			
		||||
 | 
			
		||||
import { SettingsContext } from "utils/contexts/settings";
 | 
			
		||||
 | 
			
		||||
export default function QuickLaunch({ servicesAndBookmarks, searchString, setSearchString, isOpen, close }) {
 | 
			
		||||
  const { t } = useTranslation();
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,5 @@
 | 
			
		||||
import { useContext } from "react";
 | 
			
		||||
import Image from "next/image";
 | 
			
		||||
 | 
			
		||||
import { SettingsContext } from "utils/contexts/settings";
 | 
			
		||||
import { ThemeContext } from "utils/contexts/theme";
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -2,12 +2,11 @@ import { useRef, useEffect } from "react";
 | 
			
		||||
import classNames from "classnames";
 | 
			
		||||
import { Disclosure, Transition } from "@headlessui/react";
 | 
			
		||||
import { MdKeyboardArrowDown } from "react-icons/md";
 | 
			
		||||
 | 
			
		||||
import { columnMap } from "../../utils/layout/columns";
 | 
			
		||||
 | 
			
		||||
import List from "components/services/list";
 | 
			
		||||
import ResolvedIcon from "components/resolvedicon";
 | 
			
		||||
 | 
			
		||||
import { columnMap } from "../../utils/layout/columns";
 | 
			
		||||
 | 
			
		||||
export default function ServicesGroup({
 | 
			
		||||
  group,
 | 
			
		||||
  layout,
 | 
			
		||||
 | 
			
		||||
@ -1,5 +1,9 @@
 | 
			
		||||
import classNames from "classnames";
 | 
			
		||||
import { useContext, useState } from "react";
 | 
			
		||||
import Docker from "widgets/docker/component";
 | 
			
		||||
import Kubernetes from "widgets/kubernetes/component";
 | 
			
		||||
import { SettingsContext } from "utils/contexts/settings";
 | 
			
		||||
import ResolvedIcon from "components/resolvedicon";
 | 
			
		||||
 | 
			
		||||
import Status from "./status";
 | 
			
		||||
import Widget from "./widget";
 | 
			
		||||
@ -7,11 +11,6 @@ import Ping from "./ping";
 | 
			
		||||
import SiteMonitor from "./site-monitor";
 | 
			
		||||
import KubernetesStatus from "./kubernetes-status";
 | 
			
		||||
 | 
			
		||||
import Docker from "widgets/docker/component";
 | 
			
		||||
import Kubernetes from "widgets/kubernetes/component";
 | 
			
		||||
import { SettingsContext } from "utils/contexts/settings";
 | 
			
		||||
import ResolvedIcon from "components/resolvedicon";
 | 
			
		||||
 | 
			
		||||
export default function Item({ service, groupName, useEqualHeights }) {
 | 
			
		||||
  const hasLink = service.href && service.href !== "#";
 | 
			
		||||
  const { settings } = useContext(SettingsContext);
 | 
			
		||||
 | 
			
		||||
@ -1,9 +1,8 @@
 | 
			
		||||
import classNames from "classnames";
 | 
			
		||||
import Item from "components/services/item";
 | 
			
		||||
 | 
			
		||||
import { columnMap } from "../../utils/layout/columns";
 | 
			
		||||
 | 
			
		||||
import Item from "components/services/item";
 | 
			
		||||
 | 
			
		||||
export default function List({ groupName, services, layout, useEqualHeights, header }) {
 | 
			
		||||
  return (
 | 
			
		||||
    <ul
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
import { useTranslation } from "next-i18next";
 | 
			
		||||
 | 
			
		||||
import ErrorBoundary from "components/errorboundry";
 | 
			
		||||
 | 
			
		||||
import components from "widgets/components";
 | 
			
		||||
 | 
			
		||||
export default function Widget({ widget, service }) {
 | 
			
		||||
 | 
			
		||||
@ -1,9 +1,8 @@
 | 
			
		||||
import { useContext } from "react";
 | 
			
		||||
import { SettingsContext } from "utils/contexts/settings";
 | 
			
		||||
 | 
			
		||||
import Error from "./error";
 | 
			
		||||
 | 
			
		||||
import { SettingsContext } from "utils/contexts/settings";
 | 
			
		||||
 | 
			
		||||
export default function Container({ error = false, children, service }) {
 | 
			
		||||
  const { settings } = useContext(SettingsContext);
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,5 @@
 | 
			
		||||
import { useContext } from "react";
 | 
			
		||||
import classNames from "classnames";
 | 
			
		||||
 | 
			
		||||
import { TabContext } from "utils/contexts/tab";
 | 
			
		||||
 | 
			
		||||
function slugify(tabName) {
 | 
			
		||||
 | 
			
		||||
@ -2,7 +2,6 @@ import { useContext, Fragment } from "react";
 | 
			
		||||
import { IoColorPalette } from "react-icons/io5";
 | 
			
		||||
import { Popover, Transition } from "@headlessui/react";
 | 
			
		||||
import classNames from "classnames";
 | 
			
		||||
 | 
			
		||||
import { ColorContext } from "utils/contexts/color";
 | 
			
		||||
 | 
			
		||||
const colors = [
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,5 @@
 | 
			
		||||
import { useContext } from "react";
 | 
			
		||||
import { MdDarkMode, MdLightMode, MdToggleOff, MdToggleOn } from "react-icons/md";
 | 
			
		||||
 | 
			
		||||
import { ThemeContext } from "utils/contexts/theme";
 | 
			
		||||
 | 
			
		||||
export default function ThemeToggle() {
 | 
			
		||||
 | 
			
		||||
@ -4,14 +4,13 @@ import { FaMemory, FaRegClock, FaThermometerHalf } from "react-icons/fa";
 | 
			
		||||
import { FiCpu, FiHardDrive } from "react-icons/fi";
 | 
			
		||||
import { useTranslation } from "next-i18next";
 | 
			
		||||
import classNames from "classnames";
 | 
			
		||||
import { SettingsContext } from "utils/contexts/settings";
 | 
			
		||||
 | 
			
		||||
import Error from "../widget/error";
 | 
			
		||||
import Resource from "../widget/resource";
 | 
			
		||||
import Resources from "../widget/resources";
 | 
			
		||||
import WidgetLabel from "../widget/widget_label";
 | 
			
		||||
 | 
			
		||||
import { SettingsContext } from "utils/contexts/settings";
 | 
			
		||||
 | 
			
		||||
const cpuSensorLabels = ["cpu_thermal", "Core", "Tctl"];
 | 
			
		||||
 | 
			
		||||
function convertToFahrenheit(t) {
 | 
			
		||||
 | 
			
		||||
@ -1,8 +1,8 @@
 | 
			
		||||
import ResolvedIcon from "components/resolvedicon";
 | 
			
		||||
 | 
			
		||||
import Container from "../widget/container";
 | 
			
		||||
import Raw from "../widget/raw";
 | 
			
		||||
 | 
			
		||||
import ResolvedIcon from "components/resolvedicon";
 | 
			
		||||
 | 
			
		||||
export default function Logo({ options }) {
 | 
			
		||||
  return (
 | 
			
		||||
    <Container
 | 
			
		||||
 | 
			
		||||
@ -1,5 +1,4 @@
 | 
			
		||||
import dynamic from "next/dynamic";
 | 
			
		||||
 | 
			
		||||
import ErrorBoundary from "components/errorboundry";
 | 
			
		||||
 | 
			
		||||
const widgetMappings = {
 | 
			
		||||
 | 
			
		||||
@ -1,13 +1,12 @@
 | 
			
		||||
import classNames from "classnames";
 | 
			
		||||
import { useContext } from "react";
 | 
			
		||||
import { SettingsContext } from "utils/contexts/settings";
 | 
			
		||||
 | 
			
		||||
import WidgetIcon from "./widget_icon";
 | 
			
		||||
import PrimaryText from "./primary_text";
 | 
			
		||||
import SecondaryText from "./secondary_text";
 | 
			
		||||
import Raw from "./raw";
 | 
			
		||||
 | 
			
		||||
import { SettingsContext } from "utils/contexts/settings";
 | 
			
		||||
 | 
			
		||||
export function getAllClasses(options, additionalClassNames = "") {
 | 
			
		||||
  if (options?.style?.header === "boxedWidgets") {
 | 
			
		||||
    if (options?.style?.cardBlur !== undefined) {
 | 
			
		||||
 | 
			
		||||
@ -2,17 +2,16 @@
 | 
			
		||||
import { SWRConfig } from "swr";
 | 
			
		||||
import { appWithTranslation } from "next-i18next";
 | 
			
		||||
import Head from "next/head";
 | 
			
		||||
 | 
			
		||||
import "styles/globals.css";
 | 
			
		||||
import "styles/theme.css";
 | 
			
		||||
import "styles/manrope.css";
 | 
			
		||||
import nextI18nextConfig from "../../next-i18next.config";
 | 
			
		||||
 | 
			
		||||
import { ColorProvider } from "utils/contexts/color";
 | 
			
		||||
import { ThemeProvider } from "utils/contexts/theme";
 | 
			
		||||
import { SettingsProvider } from "utils/contexts/settings";
 | 
			
		||||
import { TabProvider } from "utils/contexts/tab";
 | 
			
		||||
 | 
			
		||||
import nextI18nextConfig from "../../next-i18next.config";
 | 
			
		||||
 | 
			
		||||
function MyApp({ Component, pageProps }) {
 | 
			
		||||
  return (
 | 
			
		||||
    <SWRConfig
 | 
			
		||||
 | 
			
		||||
@ -1,4 +1,5 @@
 | 
			
		||||
import { searchProviders } from "components/widgets/search/search";
 | 
			
		||||
 | 
			
		||||
import cachedFetch from "utils/proxy/cached-fetch";
 | 
			
		||||
import { widgetsFromConfig } from "utils/config/widget-helpers";
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -9,24 +9,24 @@ import { useEffect, useContext, useState, useMemo } from "react";
 | 
			
		||||
import { BiError } from "react-icons/bi";
 | 
			
		||||
import { serverSideTranslations } from "next-i18next/serverSideTranslations";
 | 
			
		||||
import { useRouter } from "next/router";
 | 
			
		||||
 | 
			
		||||
import Tab, { slugifyAndEncode } from "components/tab";
 | 
			
		||||
import ServicesGroup from "components/services/group";
 | 
			
		||||
import BookmarksGroup from "components/bookmarks/group";
 | 
			
		||||
import Widget from "components/widgets/widget";
 | 
			
		||||
import Revalidate from "components/toggles/revalidate";
 | 
			
		||||
import createLogger from "utils/logger";
 | 
			
		||||
import useWindowFocus from "utils/hooks/window-focus";
 | 
			
		||||
import { getSettings } from "utils/config/config";
 | 
			
		||||
import { ColorContext } from "utils/contexts/color";
 | 
			
		||||
import { ThemeContext } from "utils/contexts/theme";
 | 
			
		||||
import { SettingsContext } from "utils/contexts/settings";
 | 
			
		||||
import { TabContext } from "utils/contexts/tab";
 | 
			
		||||
import { bookmarksResponse, servicesResponse, widgetsResponse } from "utils/config/api-response";
 | 
			
		||||
import ErrorBoundary from "components/errorboundry";
 | 
			
		||||
import themes from "utils/styles/themes";
 | 
			
		||||
import QuickLaunch from "components/quicklaunch";
 | 
			
		||||
 | 
			
		||||
import { bookmarksResponse, servicesResponse, widgetsResponse } from "utils/config/api-response";
 | 
			
		||||
import themes from "utils/styles/themes";
 | 
			
		||||
import { getSettings } from "utils/config/config";
 | 
			
		||||
import useWindowFocus from "utils/hooks/window-focus";
 | 
			
		||||
import createLogger from "utils/logger";
 | 
			
		||||
 | 
			
		||||
const ThemeToggle = dynamic(() => import("components/toggles/theme"), {
 | 
			
		||||
  ssr: false,
 | 
			
		||||
});
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,5 +1,6 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -2,13 +2,12 @@ import { useEffect, useMemo, useState, useContext } from "react";
 | 
			
		||||
import dynamic from "next/dynamic";
 | 
			
		||||
import { DateTime } from "luxon";
 | 
			
		||||
import { useTranslation } from "next-i18next";
 | 
			
		||||
import Container from "components/services/widget/container";
 | 
			
		||||
import { SettingsContext } from "utils/contexts/settings";
 | 
			
		||||
 | 
			
		||||
import Monthly from "./monthly";
 | 
			
		||||
import Agenda from "./agenda";
 | 
			
		||||
 | 
			
		||||
import Container from "components/services/widget/container";
 | 
			
		||||
import { SettingsContext } from "utils/contexts/settings";
 | 
			
		||||
 | 
			
		||||
const colorVariants = {
 | 
			
		||||
  // https://tailwindcss.com/docs/content-configuration#dynamic-class-names
 | 
			
		||||
  amber: "bg-amber-500",
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,5 +1,6 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,10 +1,10 @@
 | 
			
		||||
import { useState } from "react";
 | 
			
		||||
import { useTranslation } from "next-i18next";
 | 
			
		||||
import classNames from "classnames";
 | 
			
		||||
 | 
			
		||||
import Container from "components/services/widget/container";
 | 
			
		||||
import Block from "components/services/widget/block";
 | 
			
		||||
import Dropdown from "components/services/dropdown";
 | 
			
		||||
 | 
			
		||||
import useWidgetAPI from "utils/proxy/use-widget-api";
 | 
			
		||||
 | 
			
		||||
export default function Component({ service }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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";
 | 
			
		||||
 | 
			
		||||
function getValue(field, data) {
 | 
			
		||||
 | 
			
		||||
@ -1,9 +1,9 @@
 | 
			
		||||
import { useTranslation } from "next-i18next";
 | 
			
		||||
import Container from "components/services/widget/container";
 | 
			
		||||
import Block from "components/services/widget/block";
 | 
			
		||||
 | 
			
		||||
import QueueEntry from "../../components/widgets/queue/queueEntry";
 | 
			
		||||
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,11 +1,10 @@
 | 
			
		||||
import useSWR from "swr";
 | 
			
		||||
import { useTranslation } from "next-i18next";
 | 
			
		||||
 | 
			
		||||
import { calculateCPUPercent, calculateUsedMemory, calculateThroughput } from "./stats-helpers";
 | 
			
		||||
 | 
			
		||||
import Container from "components/services/widget/container";
 | 
			
		||||
import Block from "components/services/widget/block";
 | 
			
		||||
 | 
			
		||||
import { calculateCPUPercent, calculateUsedMemory, calculateThroughput } from "./stats-helpers";
 | 
			
		||||
 | 
			
		||||
export default function Component({ service }) {
 | 
			
		||||
  const { t } = useTranslation();
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,9 +1,9 @@
 | 
			
		||||
import { useTranslation } from "next-i18next";
 | 
			
		||||
import { BsVolumeMuteFill, BsFillPlayFill, BsPauseFill, BsCpu, BsFillCpuFill } from "react-icons/bs";
 | 
			
		||||
import { MdOutlineSmartDisplay } from "react-icons/md";
 | 
			
		||||
 | 
			
		||||
import Block from "components/services/widget/block";
 | 
			
		||||
import Container from "components/services/widget/container";
 | 
			
		||||
 | 
			
		||||
import { getURLSearchParams } from "utils/proxy/api-helpers";
 | 
			
		||||
import useWidgetAPI from "utils/proxy/use-widget-api";
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
import { useTranslation } from "next-i18next";
 | 
			
		||||
 | 
			
		||||
import Block from "components/services/widget/block";
 | 
			
		||||
import Container from "components/services/widget/container";
 | 
			
		||||
 | 
			
		||||
import useWidgetAPI from "utils/proxy/use-widget-api";
 | 
			
		||||
 | 
			
		||||
export default function Component({ service }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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";
 | 
			
		||||
 | 
			
		||||
function toKilowatts(t, value) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 const fritzboxDefaultFields = ["connectionStatus", "uptime", "maxDown", "maxUp"];
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,9 +1,9 @@
 | 
			
		||||
import { useTranslation } from "next-i18next";
 | 
			
		||||
 | 
			
		||||
import Container from "components/services/widget/container";
 | 
			
		||||
import useWidgetAPI from "utils/proxy/use-widget-api";
 | 
			
		||||
import Block from "components/services/widget/block";
 | 
			
		||||
 | 
			
		||||
import useWidgetAPI from "utils/proxy/use-widget-api";
 | 
			
		||||
 | 
			
		||||
export default function Component({ service }) {
 | 
			
		||||
  const { t } = useTranslation();
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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";
 | 
			
		||||
 | 
			
		||||
function getPerformancePercent(t, performanceRange) {
 | 
			
		||||
 | 
			
		||||
@ -1,5 +1,6 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,10 +1,9 @@
 | 
			
		||||
import { useContext } from "react";
 | 
			
		||||
import classNames from "classnames";
 | 
			
		||||
import { SettingsContext } from "utils/contexts/settings";
 | 
			
		||||
 | 
			
		||||
import Error from "./error";
 | 
			
		||||
 | 
			
		||||
import { SettingsContext } from "utils/contexts/settings";
 | 
			
		||||
 | 
			
		||||
export default function Container({ children, widget, error = null, chart = true, className = "" }) {
 | 
			
		||||
  const { settings } = useContext(SettingsContext);
 | 
			
		||||
  const hideErrors = settings.hideErrors || widget?.hideErrors;
 | 
			
		||||
 | 
			
		||||
@ -1,10 +1,10 @@
 | 
			
		||||
import { useTranslation } from "next-i18next";
 | 
			
		||||
import ResolvedIcon from "components/resolvedicon";
 | 
			
		||||
 | 
			
		||||
import Container from "../components/container";
 | 
			
		||||
import Block from "../components/block";
 | 
			
		||||
 | 
			
		||||
import useWidgetAPI from "utils/proxy/use-widget-api";
 | 
			
		||||
import ResolvedIcon from "components/resolvedicon";
 | 
			
		||||
 | 
			
		||||
const statusMap = {
 | 
			
		||||
  running: <ResolvedIcon icon="mdi-circle" width={32} height={32} />,
 | 
			
		||||
 | 
			
		||||
@ -1,10 +1,10 @@
 | 
			
		||||
import { useTranslation } from "next-i18next";
 | 
			
		||||
import ResolvedIcon from "components/resolvedicon";
 | 
			
		||||
 | 
			
		||||
import Container from "../components/container";
 | 
			
		||||
import Block from "../components/block";
 | 
			
		||||
 | 
			
		||||
import useWidgetAPI from "utils/proxy/use-widget-api";
 | 
			
		||||
import ResolvedIcon from "components/resolvedicon";
 | 
			
		||||
 | 
			
		||||
const statusMap = {
 | 
			
		||||
  R: <ResolvedIcon icon="mdi-circle" width={32} height={32} />, // running
 | 
			
		||||
 | 
			
		||||
@ -1,5 +1,6 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,5 +1,6 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,5 +1,6 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,9 +1,9 @@
 | 
			
		||||
import { useTranslation } from "next-i18next";
 | 
			
		||||
import Block from "components/services/widget/block";
 | 
			
		||||
import Container from "components/services/widget/container";
 | 
			
		||||
 | 
			
		||||
import { i18n } from "../../../next-i18next.config";
 | 
			
		||||
 | 
			
		||||
import Block from "components/services/widget/block";
 | 
			
		||||
import Container from "components/services/widget/container";
 | 
			
		||||
import useWidgetAPI from "utils/proxy/use-widget-api";
 | 
			
		||||
 | 
			
		||||
function formatDate(dateString) {
 | 
			
		||||
 | 
			
		||||
@ -1,5 +1,6 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 const homeboxDefaultFields = ["items", "locations", "totalValue"];
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,5 @@
 | 
			
		||||
import { useState, useEffect } from "react";
 | 
			
		||||
import classNames from "classnames";
 | 
			
		||||
 | 
			
		||||
import Container from "components/services/widget/container";
 | 
			
		||||
 | 
			
		||||
export default function Component({ service }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
import { useTranslation } from "next-i18next";
 | 
			
		||||
 | 
			
		||||
import Block from "components/services/widget/block";
 | 
			
		||||
import Container from "components/services/widget/container";
 | 
			
		||||
 | 
			
		||||
import useWidgetAPI from "utils/proxy/use-widget-api";
 | 
			
		||||
 | 
			
		||||
export default function Component({ service }) {
 | 
			
		||||
 | 
			
		||||
@ -1,5 +1,6 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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";
 | 
			
		||||
 | 
			
		||||
function relativeDate(date) {
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,5 @@
 | 
			
		||||
import useSWR from "swr";
 | 
			
		||||
import { useTranslation } from "next-i18next";
 | 
			
		||||
 | 
			
		||||
import Container from "components/services/widget/container";
 | 
			
		||||
import Block from "components/services/widget/block";
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
import React, { useState, useEffect } from "react";
 | 
			
		||||
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
import { useTranslation } from "react-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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,4 +1,4 @@
 | 
			
		||||
import { pingWithPromise } from "minecraft-ping-js";
 | 
			
		||||
import mc from "minecraftstatuspinger";
 | 
			
		||||
 | 
			
		||||
import createLogger from "utils/logger";
 | 
			
		||||
import getServiceWidget from "utils/config/service-helpers";
 | 
			
		||||
@ -11,11 +11,14 @@ export default async function minecraftProxyHandler(req, res) {
 | 
			
		||||
  const serviceWidget = await getServiceWidget(group, service, index);
 | 
			
		||||
  const url = new URL(serviceWidget.url);
 | 
			
		||||
  try {
 | 
			
		||||
    const pingResponse = await pingWithPromise(url.hostname, url.port || 25565);
 | 
			
		||||
    const pingResponse = await mc.lookup({
 | 
			
		||||
      host: url.hostname,
 | 
			
		||||
      port: url.port || 25565,
 | 
			
		||||
    });
 | 
			
		||||
    res.status(200).send({
 | 
			
		||||
      version: pingResponse.version.name,
 | 
			
		||||
      version: pingResponse.status.version.name,
 | 
			
		||||
      online: true,
 | 
			
		||||
      players: pingResponse.players,
 | 
			
		||||
      players: pingResponse.status.players.online,
 | 
			
		||||
    });
 | 
			
		||||
  } catch (e) {
 | 
			
		||||
    if (e) logger.error(e);
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,6 +1,6 @@
 | 
			
		||||
import { useTranslation } from "next-i18next";
 | 
			
		||||
 | 
			
		||||
import Container from "components/services/widget/container";
 | 
			
		||||
 | 
			
		||||
import useWidgetAPI from "utils/proxy/use-widget-api";
 | 
			
		||||
 | 
			
		||||
function SinglePlayingEntry({ entry }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
@ -1,7 +1,7 @@
 | 
			
		||||
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 }) {
 | 
			
		||||
 | 
			
		||||
Some files were not shown because too many files have changed in this diff Show More
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user