86 lines
1.8 KiB
TypeScript
86 lines
1.8 KiB
TypeScript
export type ConditionId =
|
|
| "blinded"
|
|
| "charmed"
|
|
| "deafened"
|
|
| "exhaustion"
|
|
| "frightened"
|
|
| "grappled"
|
|
| "incapacitated"
|
|
| "invisible"
|
|
| "paralyzed"
|
|
| "petrified"
|
|
| "poisoned"
|
|
| "prone"
|
|
| "restrained"
|
|
| "stunned"
|
|
| "unconscious";
|
|
|
|
export interface ConditionDefinition {
|
|
readonly id: ConditionId;
|
|
readonly label: string;
|
|
readonly iconName: string;
|
|
readonly color: string;
|
|
}
|
|
|
|
export const CONDITION_DEFINITIONS: readonly ConditionDefinition[] = [
|
|
{ id: "blinded", label: "Blinded", iconName: "EyeOff", color: "neutral" },
|
|
{ id: "charmed", label: "Charmed", iconName: "Heart", color: "pink" },
|
|
{ id: "deafened", label: "Deafened", iconName: "EarOff", color: "neutral" },
|
|
{
|
|
id: "exhaustion",
|
|
label: "Exhaustion",
|
|
iconName: "BatteryLow",
|
|
color: "amber",
|
|
},
|
|
{
|
|
id: "frightened",
|
|
label: "Frightened",
|
|
iconName: "Siren",
|
|
color: "orange",
|
|
},
|
|
{ id: "grappled", label: "Grappled", iconName: "Hand", color: "neutral" },
|
|
{
|
|
id: "incapacitated",
|
|
label: "Incapacitated",
|
|
iconName: "Ban",
|
|
color: "gray",
|
|
},
|
|
{
|
|
id: "invisible",
|
|
label: "Invisible",
|
|
iconName: "Ghost",
|
|
color: "violet",
|
|
},
|
|
{
|
|
id: "paralyzed",
|
|
label: "Paralyzed",
|
|
iconName: "ZapOff",
|
|
color: "yellow",
|
|
},
|
|
{
|
|
id: "petrified",
|
|
label: "Petrified",
|
|
iconName: "Gem",
|
|
color: "slate",
|
|
},
|
|
{ id: "poisoned", label: "Poisoned", iconName: "Droplet", color: "green" },
|
|
{ id: "prone", label: "Prone", iconName: "ArrowDown", color: "neutral" },
|
|
{
|
|
id: "restrained",
|
|
label: "Restrained",
|
|
iconName: "Link",
|
|
color: "neutral",
|
|
},
|
|
{ id: "stunned", label: "Stunned", iconName: "Sparkles", color: "yellow" },
|
|
{
|
|
id: "unconscious",
|
|
label: "Unconscious",
|
|
iconName: "Moon",
|
|
color: "indigo",
|
|
},
|
|
] as const;
|
|
|
|
export const VALID_CONDITION_IDS: ReadonlySet<string> = new Set(
|
|
CONDITION_DEFINITIONS.map((d) => d.id),
|
|
);
|