const USER_ENTRY_EVENT = 'User Entry'; const ENABLE_PASSAGE_MODE = 'Enable Passage Mode by Group 2'; const DISABLE_PASSAGE_MODE = 'Disable Passage Mode by Group 2'; const VALID_CSV_HEADERS = ['Date', 'Time', 'User No', 'Name', 'Event']; const doorLockEvents = { USER_LOCKED: 'locked', USER_UNLOCKED: 'unlocked', }; const unlockedIncidentLevelsPrices = { UNLOCKED_0: { id: 0, title: 'UNLOCKED_0', price: parseInt(process.env.UNLOCK_0) || 0 }, UNLOCKED_1: { id: 1, title: 'UNLOCKED_1', price: parseInt(process.env.UNLOCK_1) || 10 }, UNLOCKED_2: { id: 2, title: 'UNLOCKED_2', price: parseInt(process.env.UNLOCK_2) || 20 }, UNLOCKED_3: { id: 3, title: 'UNLOCKED_3', price: parseInt(process.env.UNLOCK_3) || 30 }, UNLOCKED_4: { id: 4, title: 'UNLOCKED_4', price: parseInt(process.env.UNLOCK_4) || 40 }, UNLOCKED_5: { id: 5, title: 'UNLOCKED_5', price: parseInt(process.env.UNLOCK_5) || 50 } }; const csvParserErrors = { INVALID_HEADERS: 'Invalid headers', INVALID_ENTRY_EXPECTED_USER: 'Invalid entry type. Expected user entry type', INVALID_ENTRY_EXPECTED_PASSAGE_MODE: 'Invalid entry type. Expected enable/disable passage mode following user entry', UNKNOWN_MEMBER: 'Member is not registered in OfficeRnD system', GENERIC_ERROR: 'There was error while parsing uploaded file(s)', }; const officeRnDAPIErrors = { FAILED_TO_FETCH_MEMBERS: 'Failed to fetch members', FAILED_TO_FETCH_BOOKINGS: 'Failed to fetch booking reservations' }; const integrationServiceErrors = { FAILED_TO_SAVE_BOOKINGS: 'Failed to save booking reservations', FAILED_TO_SAVE_DOOR_LOCK_ENTRIES: 'Failed to save door lock entries', FAILED_TO_SAVE_DATA_GENERIC: 'Failed to save data', INVALID_DATE_RANGE: 'Dates in date range are invalid', }; const incidentType = { NOT_AN_INCIDENT: 1, UNLOCKED_INCIDENT: 2, UNSCHEDULED_INCIDENT: 3, }; const UI_TIMEZONE = process.env.UI_TIMEZONE || 'America/Los_Angeles'; const DEFAULT_DATE_FORMAT = 'YYYY-MM-DD'; const MAX_BACK_TO_BACK_DIFFERENCE = parseInt(process.env.MAX_BACK_TO_BACK_DIFFERENCE) || 0; const UNSCHEDULED_TIME_RESOLUTION = parseInt(process.env.UNSCHEDULED_USE_TIME_RESOLUTION) || 5; const UNSCHEDULED_CHARGE_PRICE = parseFloat(process.env.UNSCHEDULED_USE_CHARGE_PRICE) || 5; module.exports = { VALID_CSV_HEADERS, USER_ENTRY_EVENT, ENABLE_PASSAGE_MODE, DISABLE_PASSAGE_MODE, csvParserErrors, officeRnDAPIErrors, doorLockEvents, unlockedIncidentLevelsPrices, integrationServiceErrors, incidentType, UI_TIMEZONE, DEFAULT_DATE_FORMAT, MAX_BACK_TO_BACK_DIFFERENCE, UNSCHEDULED_TIME_RESOLUTION, UNSCHEDULED_CHARGE_PRICE, };