Fix TypeScript compilation errors in frontend components

- Remove unused variables in ApplicationInfo, ArchitectureDebugPage
- Fix type errors in Dashboard, GovernanceAnalysis, GovernanceModelHelper (PageHeader description prop)
- Add null checks and explicit types in DataValidationDashboard
- Fix ObjectDetailModal type errors for _jiraCreatedAt and Date constructor
- Remove unused imports and variables in SchemaConfigurationSettings
- Update PageHeader to accept string | ReactNode for description prop
This commit is contained in:
2026-01-21 23:19:06 +01:00
parent c4fa18ed55
commit 73660cdf66
9 changed files with 494 additions and 37 deletions

View File

@@ -79,7 +79,7 @@ export default function ObjectDetailModal({ objectId, onClose, onObjectClick, on
}
};
const renderAttributeValue = (key: string, value: any) => {
const renderAttributeValue = (key: string, value: any): React.ReactNode | null => {
// Skip internal/system fields
if (key.startsWith('_')) return null;
@@ -296,24 +296,36 @@ export default function ObjectDetailModal({ objectId, onClose, onObjectClick, on
Metadata
</h3>
<div className="bg-white rounded-xl border border-gray-200 p-6 shadow-sm">
{objectData.object._jiraUpdatedAt && (
<div className="grid grid-cols-2 gap-6">
<div>
<div className="text-xs font-semibold text-gray-500 uppercase tracking-wider mb-2">Laatst bijgewerkt (Jira)</div>
<div className="text-sm font-medium text-gray-900 bg-gray-50 px-3 py-2 rounded-lg border border-gray-200">
{new Date(objectData.object._jiraUpdatedAt).toLocaleString('nl-NL')}
</div>
</div>
{objectData.object._jiraCreatedAt && (
<div>
<div className="text-xs font-semibold text-gray-500 uppercase tracking-wider mb-2">Aangemaakt (Jira)</div>
<div className="text-sm font-medium text-gray-900 bg-gray-50 px-3 py-2 rounded-lg border border-gray-200">
{new Date(objectData.object._jiraCreatedAt).toLocaleString('nl-NL')}
{(() => {
const obj = objectData.object as Record<string, unknown>;
const updatedAt = obj._jiraUpdatedAt;
const createdAt = obj._jiraCreatedAt;
const hasUpdatedAt = updatedAt && (typeof updatedAt === 'string' || typeof updatedAt === 'number' || updatedAt instanceof Date);
const hasCreatedAt = createdAt && (typeof createdAt === 'string' || typeof createdAt === 'number' || createdAt instanceof Date);
if (!hasUpdatedAt && !hasCreatedAt) return null;
return (
<div className="grid grid-cols-2 gap-6">
{hasUpdatedAt && (
<div>
<div className="text-xs font-semibold text-gray-500 uppercase tracking-wider mb-2">Laatst bijgewerkt (Jira)</div>
<div className="text-sm font-medium text-gray-900 bg-gray-50 px-3 py-2 rounded-lg border border-gray-200">
{new Date(updatedAt as string | number | Date).toLocaleString('nl-NL')}
</div>
</div>
</div>
)}
</div>
)}
)}
{hasCreatedAt && (
<div>
<div className="text-xs font-semibold text-gray-500 uppercase tracking-wider mb-2">Aangemaakt (Jira)</div>
<div className="text-sm font-medium text-gray-900 bg-gray-50 px-3 py-2 rounded-lg border border-gray-200">
{new Date(createdAt as string | number | Date).toLocaleString('nl-NL')}
</div>
</div>
)}
</div>
);
})()}
</div>
</div>
)}