ProjectCard.utils.ts53 lines · main
| 1 | import { PROJECT_STATUS } from '@/lib/constants' |
| 2 | |
| 3 | export const inferProjectStatus = (projectStatus: string) => { |
| 4 | let status = undefined |
| 5 | switch (projectStatus) { |
| 6 | case PROJECT_STATUS.ACTIVE_HEALTHY: |
| 7 | status = 'isHealthy' |
| 8 | break |
| 9 | case PROJECT_STATUS.GOING_DOWN: |
| 10 | case PROJECT_STATUS.PAUSING: |
| 11 | status = 'isPausing' |
| 12 | break |
| 13 | case PROJECT_STATUS.INACTIVE: |
| 14 | status = 'isPaused' |
| 15 | break |
| 16 | case PROJECT_STATUS.PAUSE_FAILED: |
| 17 | status = 'isPauseFailed' |
| 18 | break |
| 19 | case PROJECT_STATUS.RESTARTING: |
| 20 | status = 'isRestarting' |
| 21 | break |
| 22 | case PROJECT_STATUS.RESIZING: |
| 23 | status = 'isResizing' |
| 24 | break |
| 25 | case PROJECT_STATUS.RESTORING: |
| 26 | status = 'isRestoring' |
| 27 | break |
| 28 | case PROJECT_STATUS.RESTORE_FAILED: |
| 29 | status = 'isRestoreFailed' |
| 30 | break |
| 31 | case PROJECT_STATUS.UPGRADING: |
| 32 | status = 'isUpgrading' |
| 33 | break |
| 34 | case PROJECT_STATUS.UNKNOWN: |
| 35 | case PROJECT_STATUS.COMING_UP: |
| 36 | status = 'isComingUp' |
| 37 | break |
| 38 | } |
| 39 | return status as InferredProjectStatus |
| 40 | } |
| 41 | |
| 42 | export type InferredProjectStatus = |
| 43 | | 'isHealthy' |
| 44 | | 'isPausing' |
| 45 | | 'isPaused' |
| 46 | | 'isPauseFailed' |
| 47 | | 'isRestarting' |
| 48 | | 'isResizing' |
| 49 | | 'isRestoring' |
| 50 | | 'isRestoreFailed' |
| 51 | | 'isComingUp' |
| 52 | | 'isUpgrading' |
| 53 | | undefined |