metis-desk/modules/assets/src/api/domain/asset-state.ts

14 lines
575 B
TypeScript
Raw Normal View History

import type { AssetInput, AssetRecordedInput } from "./asset-values";
export function assetTechnicalStatus(status: AssetRecordedInput["status"]): AssetInput["status"] {
return status === "available" || status === "in_use" ? "operational" : status;
}
export function assetDisplayStatus(status: AssetInput["status"], assigned: boolean) {
return status === "operational" ? (assigned ? "in_use" : "available") : status;
}
export function canAssignAsset(status: AssetInput["status"], assignedElsewhere: boolean) {
return status === "operational" && !assignedElsewhere;
}