From 8b6dad8a2a1d54cb90f40b503bb8fa41cb22ebb3 Mon Sep 17 00:00:00 2001 From: Oliver Bryan <04oliverbryan@gmail.com> Date: Wed, 31 Dec 2025 18:08:47 +0000 Subject: [PATCH] fixed all warnings :D --- biome.json | 5 +- packages/backend/biome.json | 5 +- packages/backend/drizzle.config.ts | 2 +- packages/backend/src/db/client.ts | 1 + packages/backend/src/routes/issues/all.ts | 2 +- packages/backend/src/routes/project/all.ts | 2 +- packages/backend/src/routes/project/delete.ts | 2 +- .../src/routes/project/with-creators.ts | 2 +- packages/backend/tsconfig.json | 48 +++++++-------- packages/frontend/biome.json | 5 +- .../src-tauri/capabilities/default.json | 13 ++-- packages/frontend/src-tauri/tauri.conf.json | 56 +++++++++--------- packages/frontend/src/Index.tsx | 8 +-- packages/frontend/src/Organisations.tsx | 1 - .../frontend/src/components/issues-table.tsx | 4 +- packages/frontend/src/components/ui/input.tsx | 2 +- packages/frontend/src/components/ui/label.tsx | 33 +++++------ .../frontend/src/components/ui/spinner.tsx | 2 +- packages/frontend/src/components/ui/table.tsx | 2 +- packages/frontend/src/lib/server/index.ts | 4 +- packages/frontend/tsconfig.node.json | 16 ++--- packages/frontend/vite.config.ts | 9 ++- packages/shared/src/index.ts | 59 +++++++++---------- 23 files changed, 138 insertions(+), 145 deletions(-) diff --git a/biome.json b/biome.json index 3730585..ebd75b4 100644 --- a/biome.json +++ b/biome.json @@ -1,5 +1,5 @@ { - "$schema": "https://biomejs.dev/schemas/2.3.8/schema.json", + "$schema": "https://biomejs.dev/schemas/2.3.10/schema.json", "formatter": { "enabled": true, "formatWithErrors": false, @@ -11,5 +11,8 @@ "parser": { "tailwindDirectives": true } + }, + "files": { + "includes": ["**", "!packages/shared/dist"] } } diff --git a/packages/backend/biome.json b/packages/backend/biome.json index 017e555..31e72fa 100644 --- a/packages/backend/biome.json +++ b/packages/backend/biome.json @@ -1,6 +1,6 @@ { "root": false, - "$schema": "https://biomejs.dev/schemas/2.3.8/schema.json", + "$schema": "https://biomejs.dev/schemas/2.3.10/schema.json", "formatter": { "enabled": true, "formatWithErrors": false, @@ -12,5 +12,8 @@ "parser": { "tailwindDirectives": true } + }, + "files": { + "includes": ["**", "!drizzle/meta"] } } diff --git a/packages/backend/drizzle.config.ts b/packages/backend/drizzle.config.ts index 99f4fd6..0e410d1 100644 --- a/packages/backend/drizzle.config.ts +++ b/packages/backend/drizzle.config.ts @@ -6,6 +6,6 @@ export default defineConfig({ schema: "../shared/src/schema.ts", dialect: "postgresql", dbCredentials: { - url: process.env.DATABASE_URL!, + url: process.env.DATABASE_URL || "", }, }); diff --git a/packages/backend/src/db/client.ts b/packages/backend/src/db/client.ts index 54265d7..6f981f7 100644 --- a/packages/backend/src/db/client.ts +++ b/packages/backend/src/db/client.ts @@ -17,6 +17,7 @@ export const testDB = async () => { console.log("db connected"); } catch (err) { console.log("db down"); + console.error(err); process.exit(); } }; diff --git a/packages/backend/src/routes/issues/all.ts b/packages/backend/src/routes/issues/all.ts index 338f1a8..6242eb4 100644 --- a/packages/backend/src/routes/issues/all.ts +++ b/packages/backend/src/routes/issues/all.ts @@ -1,7 +1,7 @@ import type { BunRequest } from "bun"; import { getIssues } from "../../db/queries"; -export default async function issuesAll(req: BunRequest) { +export default async function issuesAll(_req: BunRequest) { const issues = await getIssues(); return Response.json(issues); diff --git a/packages/backend/src/routes/project/all.ts b/packages/backend/src/routes/project/all.ts index c4b8997..b012b46 100644 --- a/packages/backend/src/routes/project/all.ts +++ b/packages/backend/src/routes/project/all.ts @@ -2,7 +2,7 @@ import type { BunRequest } from "bun"; import { getProjectsWithCreators } from "../../db/queries"; // /projects/all -export default async function projectsAll(req: BunRequest) { +export default async function projectsAll(_req: BunRequest) { const projects = await getProjectsWithCreators(); return Response.json(projects); diff --git a/packages/backend/src/routes/project/delete.ts b/packages/backend/src/routes/project/delete.ts index d58bd2d..18ab66f 100644 --- a/packages/backend/src/routes/project/delete.ts +++ b/packages/backend/src/routes/project/delete.ts @@ -1,5 +1,5 @@ import type { BunRequest } from "bun"; -import { getProjectByID, deleteProject } from "../../db/queries"; +import { deleteProject, getProjectByID } from "../../db/queries"; // /project/delete?id=1 export default async function projectDelete(req: BunRequest) { diff --git a/packages/backend/src/routes/project/with-creators.ts b/packages/backend/src/routes/project/with-creators.ts index 6ccffd5..30be226 100644 --- a/packages/backend/src/routes/project/with-creators.ts +++ b/packages/backend/src/routes/project/with-creators.ts @@ -2,7 +2,7 @@ import type { BunRequest } from "bun"; import { getProjectsWithCreators } from "../../db/queries"; // /projects/with-creators -export default async function projectsWithCreators(req: BunRequest) { +export default async function projectsWithCreators(_req: BunRequest) { const projects = await getProjectsWithCreators(); return Response.json(projects); diff --git a/packages/backend/tsconfig.json b/packages/backend/tsconfig.json index bfa0fea..c3c57e2 100644 --- a/packages/backend/tsconfig.json +++ b/packages/backend/tsconfig.json @@ -1,29 +1,29 @@ { - "compilerOptions": { - // Environment setup & latest features - "lib": ["ESNext"], - "target": "ESNext", - "module": "Preserve", - "moduleDetection": "force", - "jsx": "react-jsx", - "allowJs": true, + "compilerOptions": { + // Environment setup & latest features + "lib": ["ESNext"], + "target": "ESNext", + "module": "Preserve", + "moduleDetection": "force", + "jsx": "react-jsx", + "allowJs": true, - // Bundler mode - "moduleResolution": "bundler", - "allowImportingTsExtensions": true, - "verbatimModuleSyntax": true, - "noEmit": true, + // Bundler mode + "moduleResolution": "bundler", + "allowImportingTsExtensions": true, + "verbatimModuleSyntax": true, + "noEmit": true, - // Best practices - "strict": true, - "skipLibCheck": true, - "noFallthroughCasesInSwitch": true, - "noUncheckedIndexedAccess": true, - "noImplicitOverride": true, + // Best practices + "strict": true, + "skipLibCheck": true, + "noFallthroughCasesInSwitch": true, + "noUncheckedIndexedAccess": true, + "noImplicitOverride": true, - // Some stricter flags (disabled by default) - "noUnusedLocals": false, - "noUnusedParameters": false, - "noPropertyAccessFromIndexSignature": false - } + // Some stricter flags (disabled by default) + "noUnusedLocals": false, + "noUnusedParameters": false, + "noPropertyAccessFromIndexSignature": false + } } diff --git a/packages/frontend/biome.json b/packages/frontend/biome.json index 017e555..484aa77 100644 --- a/packages/frontend/biome.json +++ b/packages/frontend/biome.json @@ -1,6 +1,6 @@ { "root": false, - "$schema": "https://biomejs.dev/schemas/2.3.8/schema.json", + "$schema": "https://biomejs.dev/schemas/2.3.10/schema.json", "formatter": { "enabled": true, "formatWithErrors": false, @@ -12,5 +12,8 @@ "parser": { "tailwindDirectives": true } + }, + "files": { + "includes": ["**", "!src-tauri/target", "!src-tauri/gen"] } } diff --git a/packages/frontend/src-tauri/capabilities/default.json b/packages/frontend/src-tauri/capabilities/default.json index 4cdbf49..7943979 100644 --- a/packages/frontend/src-tauri/capabilities/default.json +++ b/packages/frontend/src-tauri/capabilities/default.json @@ -1,10 +1,7 @@ { - "$schema": "../gen/schemas/desktop-schema.json", - "identifier": "default", - "description": "Capability for the main window", - "windows": ["main"], - "permissions": [ - "core:default", - "opener:default" - ] + "$schema": "../gen/schemas/desktop-schema.json", + "identifier": "default", + "description": "Capability for the main window", + "windows": ["main"], + "permissions": ["core:default", "opener:default"] } diff --git a/packages/frontend/src-tauri/tauri.conf.json b/packages/frontend/src-tauri/tauri.conf.json index 105e44e..0d00b23 100644 --- a/packages/frontend/src-tauri/tauri.conf.json +++ b/packages/frontend/src-tauri/tauri.conf.json @@ -1,31 +1,31 @@ { - "$schema": "https://schema.tauri.app/config/2", - "productName": "issue", - "version": "0.1.0", - "identifier": "com.hex248.issue", - "build": { - "beforeDevCommand": "bun run dev", - "devUrl": "http://localhost:1420", - "beforeBuildCommand": "bun run build", - "frontendDist": "../dist" - }, - "app": { - "windows": [ - { - "title": "Issue Project Manager", - "width": 1600, - "height": 900, - "minWidth": 640, - "minHeight": 360, - "decorations": false - } - ], - "security": { - "csp": null + "$schema": "https://schema.tauri.app/config/2", + "productName": "issue", + "version": "0.1.0", + "identifier": "com.hex248.issue", + "build": { + "beforeDevCommand": "bun run dev", + "devUrl": "http://localhost:1420", + "beforeBuildCommand": "bun run build", + "frontendDist": "../dist" + }, + "app": { + "windows": [ + { + "title": "Issue Project Manager", + "width": 1600, + "height": 900, + "minWidth": 640, + "minHeight": 360, + "decorations": false + } + ], + "security": { + "csp": null + } + }, + "bundle": { + "active": true, + "targets": "all" } - }, - "bundle": { - "active": true, - "targets": "all" - } } diff --git a/packages/frontend/src/Index.tsx b/packages/frontend/src/Index.tsx index 1341b9d..5e121ae 100644 --- a/packages/frontend/src/Index.tsx +++ b/packages/frontend/src/Index.tsx @@ -19,7 +19,6 @@ import { } from "@/components/ui/dropdown-menu"; import { ResizablePanel, ResizablePanelGroup, ResizableSeparator } from "@/components/ui/resizable"; import { issue, organisation, project } from "@/lib/server"; -import { getAuthHeaders, getServerURL } from "@/lib/utils"; function Index() { const user = JSON.parse(localStorage.getItem("user") || "{}") as UserRecord; @@ -132,7 +131,7 @@ function Index() { setSelectedProject((prev) => prev || projects[0] || null); }, [projects]); - const refetchIssues = async (projectKey: string) => { + const refetchIssues = async () => { try { await issue.byProject({ projectId: selectedProject?.Project.id || 0, @@ -155,7 +154,7 @@ function Index() { useEffect(() => { if (!selectedProject) return; - void refetchIssues(selectedProject.Project.key); + void refetchIssues(); }, [selectedProject]); return ( @@ -196,7 +195,7 @@ function Index() { projectId={selectedProject?.Project.id} completeAction={async () => { if (!selectedProject) return; - await refetchIssues(selectedProject.Project.key); + await refetchIssues(); }} /> )} @@ -235,7 +234,6 @@ function Index() { {/* issues list (table) */} void; diff --git a/packages/frontend/src/components/ui/input.tsx b/packages/frontend/src/components/ui/input.tsx index bef5e52..983aff6 100644 --- a/packages/frontend/src/components/ui/input.tsx +++ b/packages/frontend/src/components/ui/input.tsx @@ -1,4 +1,4 @@ -import * as React from "react"; +import type * as React from "react"; import { cn } from "@/lib/utils"; diff --git a/packages/frontend/src/components/ui/label.tsx b/packages/frontend/src/components/ui/label.tsx index ef7133a..65d4ada 100644 --- a/packages/frontend/src/components/ui/label.tsx +++ b/packages/frontend/src/components/ui/label.tsx @@ -1,22 +1,19 @@ -import * as React from "react" -import * as LabelPrimitive from "@radix-ui/react-label" +import * as LabelPrimitive from "@radix-ui/react-label"; +import type * as React from "react"; -import { cn } from "@/lib/utils" +import { cn } from "@/lib/utils"; -function Label({ - className, - ...props -}: React.ComponentProps) { - return ( - - ) +function Label({ className, ...props }: React.ComponentProps) { + return ( + + ); } -export { Label } +export { Label }; diff --git a/packages/frontend/src/components/ui/spinner.tsx b/packages/frontend/src/components/ui/spinner.tsx index e057587..4e98503 100644 --- a/packages/frontend/src/components/ui/spinner.tsx +++ b/packages/frontend/src/components/ui/spinner.tsx @@ -1,4 +1,4 @@ -import { Loader2Icon, Loader } from "lucide-react"; +import { Loader } from "lucide-react"; import { cn } from "@/lib/utils"; diff --git a/packages/frontend/src/components/ui/table.tsx b/packages/frontend/src/components/ui/table.tsx index f5ce102..23f8d31 100644 --- a/packages/frontend/src/components/ui/table.tsx +++ b/packages/frontend/src/components/ui/table.tsx @@ -1,4 +1,4 @@ -import * as React from "react"; +import type * as React from "react"; import { cn } from "@/lib/utils"; diff --git a/packages/frontend/src/lib/server/index.ts b/packages/frontend/src/lib/server/index.ts index cf91a68..067c46c 100644 --- a/packages/frontend/src/lib/server/index.ts +++ b/packages/frontend/src/lib/server/index.ts @@ -3,6 +3,6 @@ export * as organisation from "./organisation"; export * as project from "./project"; export type ServerQueryInput = { - onSuccess?: (data: any, res: Response) => void; - onError?: (error: any) => void; + onSuccess?: (data: unknown, res: Response) => void; + onError?: (error: unknown) => void; }; diff --git a/packages/frontend/tsconfig.node.json b/packages/frontend/tsconfig.node.json index 42872c5..26063d8 100644 --- a/packages/frontend/tsconfig.node.json +++ b/packages/frontend/tsconfig.node.json @@ -1,10 +1,10 @@ { - "compilerOptions": { - "composite": true, - "skipLibCheck": true, - "module": "ESNext", - "moduleResolution": "bundler", - "allowSyntheticDefaultImports": true - }, - "include": ["vite.config.ts"] + "compilerOptions": { + "composite": true, + "skipLibCheck": true, + "module": "ESNext", + "moduleResolution": "bundler", + "allowSyntheticDefaultImports": true + }, + "include": ["vite.config.ts"] } diff --git a/packages/frontend/vite.config.ts b/packages/frontend/vite.config.ts index b79709b..3ffc9de 100644 --- a/packages/frontend/vite.config.ts +++ b/packages/frontend/vite.config.ts @@ -1,9 +1,8 @@ -import path from "path"; +import path from "node:path"; import tailwindcss from "@tailwindcss/vite"; -import { defineConfig } from "vite"; import react from "@vitejs/plugin-react"; +import { defineConfig } from "vite"; -// @ts-expect-error process is a nodejs global const host = process.env.TAURI_DEV_HOST; // https://vite.dev/config/ @@ -23,8 +22,8 @@ export default defineConfig(async () => ({ server: { port: 1420, strictPort: true, - allowedHosts: ["issue.ob248.com"], - host: host || false, + allowedHosts: ["issue.ob248.com"], + host: host || false, hmr: host ? { protocol: "ws", diff --git a/packages/shared/src/index.ts b/packages/shared/src/index.ts index a1fa717..8e20670 100644 --- a/packages/shared/src/index.ts +++ b/packages/shared/src/index.ts @@ -1,37 +1,32 @@ -// Drizzle tables -export { User, Project, Issue, Organisation, OrganisationMember } from "./schema"; - -// Types export type { - UserRecord, - UserInsert, - OrganisationRecord, - OrganisationInsert, - OrganisationMemberRecord, - OrganisationMemberInsert, - ProjectRecord, - ProjectInsert, - IssueRecord, IssueInsert, -} from "./schema"; - -// Zod schemas -export { - UserSelectSchema, - UserInsertSchema, - OrganisationSelectSchema, - OrganisationInsertSchema, - OrganisationMemberSelectSchema, - OrganisationMemberInsertSchema, - ProjectSelectSchema, - ProjectInsertSchema, - IssueSelectSchema, - IssueInsertSchema, -} from "./schema"; - -// Responses -export type { + IssueRecord, IssueResponse, - ProjectResponse, + OrganisationInsert, + OrganisationMemberInsert, + OrganisationMemberRecord, + OrganisationRecord, OrganisationResponse, + ProjectInsert, + ProjectRecord, + ProjectResponse, + UserInsert, + UserRecord, +} from "./schema"; +export { + Issue, + IssueInsertSchema, + IssueSelectSchema, + Organisation, + OrganisationInsertSchema, + OrganisationMember, + OrganisationMemberInsertSchema, + OrganisationMemberSelectSchema, + OrganisationSelectSchema, + Project, + ProjectInsertSchema, + ProjectSelectSchema, + User, + UserInsertSchema, + UserSelectSchema, } from "./schema";