@zerda_lab/zedralab-ui-kit
Version:
UI components for zerdalab projects
109 lines (103 loc) • 3.97 kB
text/typescript
import { StatusLabelTypeT, StatusLabelStatusT } from "../types/commonTypes";
//phase icons
const PrimaryPhaseIcon = require("../assets/icons/bitStatus/phase_out_primary.svg")
const SecondaryPhaseIcon = require("../assets/icons/bitStatus/phase_out_secondary.svg")
const TertiaryPhaseIcon = require("../assets/icons/bitStatus/phase_out_tertiary.svg")
const QuaternaryPhaseIcon = require("../assets/icons/bitStatus/phase_out_quaternary.svg")
//concept icons
const PrimaryConceptIcon = require("../assets/icons/bitStatus/concept_primary.svg")
const SecondaryConceptIcon = require("../assets/icons/bitStatus/concept_secondary.svg")
const TertiaryConceptIcon = require("../assets/icons/bitStatus/concept_tertiary.svg")
const QuaternaryConceptIcon = require("../assets/icons/bitStatus/concept_quaternary.svg")
//obsolete icons
const PrimaryObsoleteIcon = require("../assets/icons/bitStatus/obsolete_primary.svg")
const SecondaryObsoleteIcon = require("../assets/icons/bitStatus/obsolete_secondary.svg")
const TertiaryObsoleteIcon = require("../assets/icons/bitStatus/obsolete_tertiary.svg")
const QuaternaryObsoleteIcon = require("../assets/icons/bitStatus/obsolete_quaternary.svg")
//standart icons
const PrimaryStandartIcon = require("../assets/icons/bitStatus/standart_primary.svg")
const SecondaryStandartIcon = require("../assets/icons/bitStatus/standart_secondary.svg")
const TertiaryStandartIcon = require("../assets/icons/bitStatus/standart_tertiary.svg")
const QuaternaryStandartIcon = require("../assets/icons/bitStatus/standart_quaternary.svg")
//tender ready icons
const PrimaryTenderReadyIcon = require("../assets/icons/bitStatus/tender_ready_primary.svg")
const SecondaryTenderReadyIcon = require("../assets/icons/bitStatus/tender_ready_secondary.svg")
const TertiaryTenderReadyIcon = require("../assets/icons/bitStatus/tender_ready_tertinary.svg")
const QuaternaryTenderReadyIcon = require("../assets/icons/bitStatus/tender_ready_quaternary.svg")
export const StatusLabelIconPathHandler = ({
type,
status,
}: {
type: StatusLabelTypeT;
status: StatusLabelStatusT;
}) => {
switch (status) {
case "phase out":
switch (type) {
case "primary":
return PrimaryPhaseIcon;
case "secondary":
return SecondaryPhaseIcon;
case "tertiary":
return TertiaryPhaseIcon;
case "quaternary":
return QuaternaryPhaseIcon;
default:
return PrimaryPhaseIcon;
}
case "concept":
switch (type) {
case "primary":
return PrimaryConceptIcon;
case "secondary":
return SecondaryConceptIcon;
case "tertiary":
return TertiaryConceptIcon;
case "quaternary":
return QuaternaryConceptIcon;
default:
return PrimaryConceptIcon;
}
case "obsolete":
switch (type) {
case "primary":
return PrimaryObsoleteIcon;
case "secondary":
return SecondaryObsoleteIcon;
case "tertiary":
return TertiaryObsoleteIcon;
case "quaternary":
return QuaternaryObsoleteIcon;
default:
return PrimaryObsoleteIcon;
}
case "standart":
switch (type) {
case "primary":
return PrimaryStandartIcon;
case "secondary":
return SecondaryStandartIcon;
case "tertiary":
return TertiaryStandartIcon;
case "quaternary":
return QuaternaryStandartIcon;
default:
return PrimaryStandartIcon;
}
case "tender ready":
switch (type) {
case "primary":
return PrimaryTenderReadyIcon;
case "secondary":
return SecondaryTenderReadyIcon;
case "tertiary":
return TertiaryTenderReadyIcon;
case "quaternary":
return QuaternaryTenderReadyIcon;
default:
return PrimaryTenderReadyIcon;
}
default:
break;
}
};