fix: TypeScript build errors (TS6 enum → const, MUI v9 sx props, theme)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Benjamin Sutter
2026-05-15 01:04:28 +02:00
parent 39427c4835
commit 67e4baf860
5 changed files with 74 additions and 63 deletions
+1 -1
View File
@@ -15,7 +15,7 @@ export function EmptyState({ icon, title, description, action }: EmptyStateProps
return (
<Box className="flex flex-col items-center justify-center gap-3 py-16 px-8 text-center">
{icon && <Box className="text-slate-400 mb-2">{icon}</Box>}
<Typography variant="h6" color="text.primary" fontWeight={500}>{title}</Typography>
<Typography variant="h6" color="text.primary" sx={{ fontWeight: 500 }}>{title}</Typography>
{description && (
<Typography variant="body2" color="text.secondary" className="max-w-sm">{description}</Typography>
)}
+1 -1
View File
@@ -16,7 +16,7 @@ export function SectionContainer({ title, subtitle, action, children, className
{(title || action) && (
<Box className="flex items-center justify-between gap-2">
<Box>
{title && <Typography variant="subtitle1" fontWeight={600} color="text.primary">{title}</Typography>}
{title && <Typography variant="subtitle1" sx={{ fontWeight: 600 }} color="text.primary">{title}</Typography>}
{subtitle && <Typography variant="caption" color="text.secondary">{subtitle}</Typography>}
</Box>
{action}
+66 -57
View File
@@ -1,65 +1,74 @@
export enum AssetType {
OFFICE = 'OFFICE',
RETAIL = 'RETAIL',
GASTRO = 'GASTRO',
LOGISTICS = 'LOGISTICS',
PRODUCTION = 'PRODUCTION',
MIXED = 'MIXED',
}
export const AssetType = {
OFFICE: 'OFFICE',
RETAIL: 'RETAIL',
GASTRO: 'GASTRO',
LOGISTICS: 'LOGISTICS',
PRODUCTION: 'PRODUCTION',
MIXED: 'MIXED',
} as const
export type AssetType = typeof AssetType[keyof typeof AssetType]
export enum ResultType {
VERIFIED_PORTFOLIO = 'VERIFIED_PORTFOLIO',
EXTERNAL_MARKET = 'EXTERNAL_MARKET',
FUTURE_AVAILABILITY = 'FUTURE_AVAILABILITY',
}
export const ResultType = {
VERIFIED_PORTFOLIO: 'VERIFIED_PORTFOLIO',
EXTERNAL_MARKET: 'EXTERNAL_MARKET',
FUTURE_AVAILABILITY: 'FUTURE_AVAILABILITY',
} as const
export type ResultType = typeof ResultType[keyof typeof ResultType]
export enum MatchStrength {
STRONG = 'STRONG',
MODERATE = 'MODERATE',
WEAK = 'WEAK',
}
export const MatchStrength = {
STRONG: 'STRONG',
MODERATE: 'MODERATE',
WEAK: 'WEAK',
} as const
export type MatchStrength = typeof MatchStrength[keyof typeof MatchStrength]
export enum RiskLevel {
LOW = 'LOW',
MEDIUM = 'MEDIUM',
HIGH = 'HIGH',
CRITICAL = 'CRITICAL',
}
export const RiskLevel = {
LOW: 'LOW',
MEDIUM: 'MEDIUM',
HIGH: 'HIGH',
CRITICAL: 'CRITICAL',
} as const
export type RiskLevel = typeof RiskLevel[keyof typeof RiskLevel]
export enum AvailabilityStatus {
AVAILABLE_NOW = 'AVAILABLE_NOW',
AVAILABLE_SOON = 'AVAILABLE_SOON',
FUTURE_SIGNAL = 'FUTURE_SIGNAL',
OCCUPIED = 'OCCUPIED',
UNKNOWN = 'UNKNOWN',
}
export const AvailabilityStatus = {
AVAILABLE_NOW: 'AVAILABLE_NOW',
AVAILABLE_SOON: 'AVAILABLE_SOON',
FUTURE_SIGNAL: 'FUTURE_SIGNAL',
OCCUPIED: 'OCCUPIED',
UNKNOWN: 'UNKNOWN',
} as const
export type AvailabilityStatus = typeof AvailabilityStatus[keyof typeof AvailabilityStatus]
export enum DataFreshness {
FRESH = 'FRESH',
STALE = 'STALE',
OUTDATED = 'OUTDATED',
}
export const DataFreshness = {
FRESH: 'FRESH',
STALE: 'STALE',
OUTDATED: 'OUTDATED',
} as const
export type DataFreshness = typeof DataFreshness[keyof typeof DataFreshness]
export enum UserRole {
SUPER_ADMIN = 'SUPER_ADMIN',
ORGANIZATION_ADMIN = 'ORGANIZATION_ADMIN',
PROPERTY_MANAGER = 'PROPERTY_MANAGER',
REVIEWER = 'REVIEWER',
OWNER_VIEWER = 'OWNER_VIEWER',
DEMAND_USER = 'DEMAND_USER',
}
export const UserRole = {
SUPER_ADMIN: 'SUPER_ADMIN',
ORGANIZATION_ADMIN: 'ORGANIZATION_ADMIN',
PROPERTY_MANAGER: 'PROPERTY_MANAGER',
REVIEWER: 'REVIEWER',
OWNER_VIEWER: 'OWNER_VIEWER',
DEMAND_USER: 'DEMAND_USER',
} as const
export type UserRole = typeof UserRole[keyof typeof UserRole]
export enum SignalType {
EXPANSION = 'EXPANSION',
POSSIBLE_MOVE_OUT = 'POSSIBLE_MOVE_OUT',
CONSTRUCTION_PROJECT = 'CONSTRUCTION_PROJECT',
RESTRUCTURING = 'RESTRUCTURING',
PROJECT_DEVELOPMENT = 'PROJECT_DEVELOPMENT',
SPACE_CONSOLIDATION = 'SPACE_CONSOLIDATION',
}
export const SignalType = {
EXPANSION: 'EXPANSION',
POSSIBLE_MOVE_OUT: 'POSSIBLE_MOVE_OUT',
CONSTRUCTION_PROJECT: 'CONSTRUCTION_PROJECT',
RESTRUCTURING: 'RESTRUCTURING',
PROJECT_DEVELOPMENT: 'PROJECT_DEVELOPMENT',
SPACE_CONSOLIDATION: 'SPACE_CONSOLIDATION',
} as const
export type SignalType = typeof SignalType[keyof typeof SignalType]
export enum WorkspaceType {
SUPPLY = 'SUPPLY',
DEMAND = 'DEMAND',
OPERATIONS = 'OPERATIONS',
}
export const WorkspaceType = {
SUPPLY: 'SUPPLY',
DEMAND: 'DEMAND',
OPERATIONS: 'OPERATIONS',
} as const
export type WorkspaceType = typeof WorkspaceType[keyof typeof WorkspaceType]
+5 -3
View File
@@ -79,9 +79,11 @@ export const theme = createTheme({
defaultProps: { disableElevation: true },
styleOverrides: {
root: { borderRadius: 6, padding: '6px 16px' },
containedPrimary: {
background: '#1e3a5f',
'&:hover': { background: '#142a45' },
contained: {
'&.MuiButton-containedPrimary': {
background: '#1e3a5f',
'&:hover': { background: '#142a45' },
},
},
},
},
+1 -1
View File
@@ -15,7 +15,7 @@ export interface AIServiceProvider {
}
const MockupAIServiceProvider: AIServiceProvider = {
async extractCriteria(input: string): Promise<CriteriaExtractionResult> {
async extractCriteria(_input: string): Promise<CriteriaExtractionResult> {
// Deterministic mock extraction — simulates AI parsing
return {
extractedCriteria: {