1
0
Fork 0
mirror of https://github.com/s-frick/effigenix.git synced 2026-03-28 12:29:36 +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,6 +1,6 @@
import React, { useCallback, useEffect, useState } from 'react';
import { Box, Text, useInput } from 'ink';
import type { ArticleDTO, SalesUnitDTO } from '@effigenix/api-client';
import type { ArticleDTO, SalesUnitDTO, Unit, PriceModel } from '@effigenix/api-client';
import { UNIT_LABELS, PRICE_MODEL_LABELS } from '@effigenix/api-client';
import { useNavigation } from '../../../state/navigation-context.js';
import { useArticles } from '../../../hooks/useArticles.js';
@ -114,7 +114,7 @@ export function ArticleDetailScreen() {
setActionLoading(false);
if (updated) {
setArticle(updated);
setSuccessMessage(`Verkaufseinheit "${UNIT_LABELS[su.unit]}" entfernt.`);
setSuccessMessage(`Verkaufseinheit "${UNIT_LABELS[su.unit as Unit]}" entfernt.`);
}
}, [article, removeSalesUnit]);
@ -150,8 +150,8 @@ export function ArticleDetailScreen() {
{article.salesUnits.map((su) => (
<Box key={su.id} paddingLeft={2} gap={1}>
<Text color="yellow"></Text>
<Text>{UNIT_LABELS[su.unit]}</Text>
<Text color="gray">({PRICE_MODEL_LABELS[su.priceModel]})</Text>
<Text>{UNIT_LABELS[su.unit as Unit]}</Text>
<Text color="gray">({PRICE_MODEL_LABELS[su.priceModel as PriceModel]})</Text>
<Text color="green">{su.price.toFixed(2)} </Text>
</Box>
))}
@ -181,7 +181,7 @@ export function ArticleDetailScreen() {
<Box key={su.id}>
<Text color={i === selectedSuIndex ? 'cyan' : 'white'}>
{i === selectedSuIndex ? '▶ ' : ' '}
{UNIT_LABELS[su.unit]} {su.price.toFixed(2)}
{UNIT_LABELS[su.unit as Unit]} {su.price.toFixed(2)}
</Text>
</Box>
))}