export function formatDate(d) {
  if (!d) return '--'
  if (d instanceof Date || (typeof d === 'string' && d.includes('T') && d.endsWith('Z'))) {
    var date = new Date(d)
    if (isNaN(date.getTime())) return '--'
    var pad = function(n) { return String(n).padStart(2, '0') }
    return date.getFullYear() + '-' + pad(date.getMonth() + 1) + '-' + pad(date.getDate()) + ' ' + pad(date.getHours()) + ':' + pad(date.getMinutes()) + ':' + pad(date.getSeconds())
  }
  return String(d).slice(0, 19).replace('T', ' ')
}

export function formatDateShort(d) {
  if (!d) return '--'
  if (d instanceof Date || (typeof d === 'string' && d.includes('T') && d.endsWith('Z'))) {
    var date = new Date(d)
    if (isNaN(date.getTime())) return '--'
    var pad = function(n) { return String(n).padStart(2, '0') }
    return date.getFullYear() + '-' + pad(date.getMonth() + 1) + '-' + pad(date.getDate())
  }
  return String(d).slice(0, 10)
}
