1
0
Fork 0
mirror of https://github.com/s-frick/effigenix.git synced 2026-03-28 15:29:34 +01:00

fix(tui): TypeScript-Fehler durch strikte generierte OpenAPI-Typen beheben

RoleDTO auf generierten Typ umgestellt, exactOptionalPropertyTypes-Konflikte
gelöst, Null-Checks für nullable AddressResponse ergänzt und Enum-Casts
für string-basierte SalesUnit-Felder hinzugefügt.
This commit is contained in:
Sebastian Frick 2026-02-25 17:34:14 +01:00
parent 7d721f9ef0
commit c89ee359d1
9 changed files with 31 additions and 26 deletions

View file

@ -1,7 +1,9 @@
import { useState, useCallback } from 'react';
import type { UserDTO } from '@effigenix/api-client';
import type { UserDTO, CreateUserRequest } from '@effigenix/api-client';
import { client } from '../utils/api-client.js';
type RoleName = CreateUserRequest['roleNames'][number];
interface UsersState {
users: UserDTO[];
loading: boolean;
@ -37,7 +39,7 @@ export function useUsers() {
username,
email,
password,
roleNames: roleName ? [roleName] : [],
roleNames: roleName ? [roleName as RoleName] : [],
});
setState((s) => ({ users: [...s.users, user], loading: false, error: null }));
return user;
@ -79,7 +81,7 @@ export function useUsers() {
const assignRole = useCallback(async (id: string, roleName: string) => {
try {
const user = await client.users.assignRole(id, { roleName });
const user = await client.users.assignRole(id, { roleName: roleName as RoleName });
setState((s) => ({
...s,
users: s.users.map((u) => (u.id === id ? user : u)),