style: some minor style improvements

This commit is contained in:
2026-03-06 20:53:05 +02:00
parent 10661f3127
commit 437ae2c16c
10 changed files with 44 additions and 29 deletions

View File

@@ -27,21 +27,26 @@ export default tseslint.config(
"react-refresh/only-export-components": ["warn", { allowConstantExport: true }],
// imports
"simple-import-sort/imports": "error",
"simple-import-sort/exports": "error",
"simple-import-sort/imports": "error",
// brackets
// core
"curly": "error",
"@stylistic/brace-style": ["error", "1tbs"],
"eqeqeq": "error",
"no-console": "error",
"no-eval": "error",
// stylistic
"@stylistic/array-bracket-spacing": ["error", "never"],
"@stylistic/arrow-parens": ["error", "as-needed"],
"@stylistic/brace-style": ["error", "1tbs"],
"@stylistic/comma-dangle": ["error", "always-multiline"],
"@stylistic/comma-spacing": ["error", { before: false, after: true }],
"@stylistic/eol-last": ["error", "always"],
"@stylistic/indent": ["error", 4],
"@stylistic/jsx-curly-brace-presence": ["error", { props: "never", children: "never" }],
"@stylistic/jsx-quotes": ["error", "prefer-double"],
"@stylistic/jsx-self-closing-comp": ["error", { component: true, html: true }],
"@stylistic/max-len": ["error", {
code: 120,
ignoreComments: true,
@@ -49,6 +54,7 @@ export default tseslint.config(
ignoreTemplateLiterals: true,
ignoreUrls: true,
}],
"@stylistic/member-delimiter-style": ["error", { multiline: { delimiter: "semi" }, singleline: { delimiter: "semi" } }],
"@stylistic/no-extra-parens": ["error", "all"],
"@stylistic/no-multi-spaces": "error",
"@stylistic/no-multiple-empty-lines": ["error", { max: 1 }],
@@ -58,10 +64,14 @@ export default tseslint.config(
"@stylistic/semi": ["error", "always"],
// typescript
"@typescript-eslint/consistent-type-definitions": ["error", "interface"],
"@typescript-eslint/consistent-type-imports": ["error", { prefer: "type-imports" }],
"@typescript-eslint/explicit-function-return-type": ["error", { allowExpressions: true }],
"@typescript-eslint/no-deprecated": "error",
"@typescript-eslint/no-unused-vars": ["error", { argsIgnorePattern: "^_" }],
"@typescript-eslint/prefer-nullish-coalescing": "error",
"@typescript-eslint/prefer-optional-chain": "error",
"@typescript-eslint/switch-exhaustiveness-check": "error",
},
},
);

View File

@@ -11,30 +11,30 @@
"preview": "vite preview"
},
"dependencies": {
"@emotion/react": "^11.11.0",
"@emotion/styled": "^11.11.0",
"@mui/icons-material": "^7.3.8",
"@mui/material": "^7.3.8",
"@mui/x-data-grid": "^8.27.3",
"@tanstack/react-query": "^5.0.0",
"chart.js": "^4.5.0",
"@emotion/react": "^11.14.0",
"@emotion/styled": "^11.14.1",
"@mui/icons-material": "^7.3.9",
"@mui/material": "^7.3.9",
"@mui/x-data-grid": "^8.27.4",
"@tanstack/react-query": "^5.90.21",
"chart.js": "^4.5.1",
"react": "^19.2.4",
"react-chartjs-2": "^5.2.0",
"react-chartjs-2": "^5.3.1",
"react-dom": "^19.2.4",
"react-syntax-highlighter": "^16.1.1"
},
"devDependencies": {
"@eslint/js": "^9.39.3",
"@stylistic/eslint-plugin": "^5.9.0",
"@stylistic/eslint-plugin": "^5.10.0",
"@types/react": "^19.2.14",
"@types/react-dom": "^19.2.3",
"@types/react-syntax-highlighter": "^15.5.13",
"@vitejs/plugin-react": "^5.0.0",
"@vitejs/plugin-react": "^5.1.4",
"eslint": "^9.39.3",
"eslint-plugin-react-hooks": "^7.0.1",
"eslint-plugin-react-refresh": "^0.5.2",
"eslint-plugin-simple-import-sort": "^12.1.1",
"typescript": "^5.3.0",
"typescript": "^5.9.3",
"typescript-eslint": "^8.56.1",
"vite": "^7.3.1",
"vite-tsconfig-paths": "^6.1.1"

View File

@@ -49,7 +49,7 @@ export class Client {
const timeoutId = setTimeout(() => controller.abort(), timeout);
const requestInit: RequestInit = {
method: method || (json ? "POST" : "GET"),
method: method ?? (json ? "POST" : "GET"),
headers,
signal: controller.signal,
};

View File

@@ -52,7 +52,7 @@ export default function AppLayout(): React.JSX.Element {
return <Container maxWidth="xl">
<Box sx={{ display: "flex", alignItems: "center", py: 1, gap: 1 }}>
<a href="https://github.com/arcan1s/ahriman" title="logo">
<a href="https://ahriman.readthedocs.io/" title="logo">
<img src="/static/logo.svg" width={30} height={30} alt="" />
</a>
<Box sx={{ flex: 1 }}>

View File

@@ -1,22 +1,22 @@
import { defineConfig, type Plugin } from "vite";
import react from "@vitejs/plugin-react";
import tsconfigPaths from "vite-tsconfig-paths";
import path from "path";
import { defineConfig, type Plugin } from "vite";
import tsconfigPaths from "vite-tsconfig-paths";
function renameHtml(newName: string): Plugin {
function rename(oldName: string, newName: string): Plugin {
return {
name: "rename-html",
name: "rename",
enforce: "post",
generateBundle(_, bundle) {
if (bundle["index.html"]) {
bundle["index.html"].fileName = newName;
if (bundle[oldName]) {
bundle[oldName].fileName = newName;
}
},
};
}
export default defineConfig({
plugins: [react(), tsconfigPaths(), renameHtml("build-status.jinja2")],
plugins: [react(), tsconfigPaths(), rename("index.html", "build-status.jinja2")],
base: "/",
build: {
chunkSizeWarningLimit: 10000,