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:
parent
7d721f9ef0
commit
c89ee359d1
9 changed files with 31 additions and 26 deletions
|
|
@ -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)),
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue