/** 기반업무(구: 상시업무) 여부 */
export function isRoutineTask(taskType: string | null | undefined): boolean {
  return taskType === '상시업무' || taskType === '기반업무';
}

/** 실행과제(구: 프로젝트) 여부 */
export function isProjectTask(taskType: string | null | undefined): boolean {
  return !isRoutineTask(taskType);
}

/** DB/폼 값 정규화 */
export function normalizeTaskType(taskType: string | null | undefined): string {
  if (!taskType || taskType === '프로젝트') return '실행과제';
  if (taskType === '상시업무') return '기반업무';
  return taskType;
}

/** 업무 수정·추가 폼 — 표시 순서·라벨 */
export const TASK_TYPE_OPTIONS = [
  { value: '실행과제', label: '프로젝트' },
  { value: '기반업무', label: '상시업무' },
] as const;

export function taskTypeDisplayLabel(taskType: string | null | undefined): string {
  if (isRoutineTask(taskType)) return '상시업무';
  return '프로젝트';
}

/** 실행과제 카드에 표시할 필드 플래그 (기반업무는 모두 숨김) */
export function displayFlagsForTaskType(taskType: string | null | undefined) {
  const visible = isProjectTask(taskType);
  return {
    showDate: visible,
    showDescription: visible,
    showStatus: visible,
    showIssue: visible,
    showProgress: visible,
  };
}
