HarborForge.Frontend: proposal/essential tests on current branch head #11
@@ -252,6 +252,17 @@ export default function CalendarPage() {
|
||||
const detail = err.response?.data?.detail
|
||||
if (typeof detail === 'string' && detail.toLowerCase().includes('overlap')) {
|
||||
setError(`⚠️ Overlap conflict: ${detail}`)
|
||||
} else if (detail && typeof detail === 'object') {
|
||||
const message = typeof detail.message === 'string' ? detail.message : 'Save failed'
|
||||
const conflicts = Array.isArray(detail.conflicts) ? detail.conflicts : []
|
||||
if (conflicts.length > 0) {
|
||||
const summary = conflicts
|
||||
.map((conflict: any) => `${conflict.slot_type || 'slot'} at ${conflict.scheduled_at || 'unknown time'}`)
|
||||
.join(', ')
|
||||
setError(`⚠️ ${message}: ${summary}`)
|
||||
} else {
|
||||
setError(`⚠️ ${message}`)
|
||||
}
|
||||
} else {
|
||||
setError(detail || 'Save failed')
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user