Files
CapaKraken/packages/shared/src/constants/index.ts
T

69 lines
1.7 KiB
TypeScript

export * from "./germanStates.js";
export * from "./publicHolidays.js";
export * from "./columns.js";
export * from "./dispo-import.js";
export * from "./data-classification.js";
export * from "./comment-entities.js";
export const BUDGET_WARNING_THRESHOLDS = {
INFO: 70,
WARNING: 85,
CRITICAL: 95,
} as const;
export const DEFAULT_WORKING_HOURS_PER_DAY = 8;
export const DEFAULT_OPENAI_MODEL = "gpt-5.4";
export const DEFAULT_AVAILABILITY = {
monday: 8,
tuesday: 8,
wednesday: 8,
thursday: 8,
friday: 8,
} as const;
export const VALUE_SCORE_WEIGHTS = {
SKILL_DEPTH: 0.30,
SKILL_BREADTH: 0.15,
COST_EFFICIENCY: 0.25,
CHARGEABILITY: 0.15,
EXPERIENCE: 0.15,
} as const;
export const SCORE_WEIGHTS = {
SKILL: 0.4,
AVAILABILITY: 0.3,
COST: 0.2,
UTILIZATION: 0.1,
} as const;
export const PAGINATION_DEFAULTS = {
PAGE: 1,
LIMIT: 50,
MAX_LIMIT: 500,
} as const;
export const SSE_EVENT_TYPES = {
ALLOCATION_CREATED: "allocation.created",
ALLOCATION_UPDATED: "allocation.updated",
ALLOCATION_DELETED: "allocation.deleted",
PROJECT_SHIFTED: "project.shifted",
BUDGET_WARNING: "budget.warning",
VACATION_CREATED: "vacation.created",
VACATION_UPDATED: "vacation.updated",
VACATION_DELETED: "vacation.deleted",
ROLE_CREATED: "role.created",
ROLE_UPDATED: "role.updated",
ROLE_DELETED: "role.deleted",
NOTIFICATION_CREATED: "notification:created",
TASK_ASSIGNED: "task.assigned",
TASK_COMPLETED: "task.completed",
TASK_STATUS_CHANGED: "task.status_changed",
REMINDER_DUE: "reminder.due",
PING: "ping",
} as const;
export type SseEventType = (typeof SSE_EVENT_TYPES)[keyof typeof SSE_EVENT_TYPES];
export const SSE_NOTIFICATION_CREATED = SSE_EVENT_TYPES.NOTIFICATION_CREATED;