fix: QA audit — lint cleanup, i18n fixes, module visibility, sidebar UX
Some checks failed
Workflow / ʦ TypeScript (push) Failing after 5m40s
Workflow / ⚫️ Test (push) Has been skipped

- Fix 97 lint errors → 0 (unused imports, params, variables across 40+ files)
- Fix i18n key format: colon → dot notation for next-intl compatibility
- Add missing i18n keys (routes.application, routes.home, confirm)
- Fix module visibility: sidebar now respects per-account DB features
- Fix inject function: use dot-notation keys, add collapsed:true defaults
- Fix ConfirmDialog: use useTranslations instead of hardcoded German defaults
- Fix events page: replace placeholder 'Beschreibung' with proper description
- Fix Dockerfile: add NEXT_PUBLIC_CI ARG for Docker builds
- Collapse secondary sidebar sections by default for cleaner UX
This commit is contained in:
Zaid Marzguioui
2026-04-02 14:39:20 +02:00
parent c6d564836f
commit 0bd5d0cf42
56 changed files with 387 additions and 234 deletions

View File

@@ -16,7 +16,7 @@ import { createEventManagementApi } from '../api';
export const createEvent = authActionClient
.inputSchema(CreateEventSchema)
.action(async ({ parsedInput: input, ctx }) => {
.action(async ({ parsedInput: input, ctx: _ctx }) => {
const client = getSupabaseServerClient();
const logger = await getLogger();
const api = createEventManagementApi(client);
@@ -29,7 +29,7 @@ export const createEvent = authActionClient
export const updateEvent = authActionClient
.inputSchema(UpdateEventSchema)
.action(async ({ parsedInput: input, ctx }) => {
.action(async ({ parsedInput: input, ctx: _ctx }) => {
const client = getSupabaseServerClient();
const logger = await getLogger();
const api = createEventManagementApi(client);
@@ -42,7 +42,7 @@ export const updateEvent = authActionClient
export const deleteEvent = authActionClient
.inputSchema(z.object({ eventId: z.string().uuid() }))
.action(async ({ parsedInput: input, ctx }) => {
.action(async ({ parsedInput: input, ctx: _ctx }) => {
const client = getSupabaseServerClient();
const logger = await getLogger();
const api = createEventManagementApi(client);
@@ -55,7 +55,7 @@ export const deleteEvent = authActionClient
export const registerForEvent = authActionClient
.inputSchema(EventRegistrationSchema)
.action(async ({ parsedInput: input, ctx }) => {
.action(async ({ parsedInput: input, ctx: _ctx }) => {
const client = getSupabaseServerClient();
const logger = await getLogger();
const api = createEventManagementApi(client);
@@ -68,7 +68,7 @@ export const registerForEvent = authActionClient
export const createHolidayPass = authActionClient
.inputSchema(CreateHolidayPassSchema)
.action(async ({ parsedInput: input, ctx }) => {
.action(async ({ parsedInput: input, ctx: _ctx }) => {
const client = getSupabaseServerClient();
const logger = await getLogger();
const api = createEventManagementApi(client);

View File

@@ -11,7 +11,7 @@ import type {
export function createEventManagementApi(client: SupabaseClient<Database>) {
const PAGE_SIZE = 25;
const db = client;
const _db = client;
return {
async listEvents(