const isDev = import.meta.env.MODE === "development"; export const BASE_URL = isDev ? import.meta.env.VITE_API_URL_DEV : "/api"; export const API_ENDPOINTS = { AUTH: { LOGIN: `${BASE_URL}/login`, LOGOUT: `${BASE_URL}/logout`, CHANGE_PASSWORD: `${BASE_URL}/auth/change-password`, CHANGE_PASSWORD_ADMIN: `${BASE_URL}/auth/admin/change-password`, PING: `${BASE_URL}/ping`, CSRF_TOKEN: `${BASE_URL}/csrf-token`, CREATE_ACCOUNT: `${BASE_URL}/auth/create-account`, }, APP_VERSION: { //agent and app api GET_VERSION: `${BASE_URL}/AppVersion/version`, UPLOAD: `${BASE_URL}/AppVersion/upload`, GET_SOFTWARE: `${BASE_URL}/AppVersion/msifiles`, //blacklist api GET_BLACKLIST: `${BASE_URL}/AppVersion/blacklist`, ADD_BLACKLIST: `${BASE_URL}/AppVersion/blacklist/add`, DELETE_BLACKLIST: (appId: number) => `${BASE_URL}/AppVersion/blacklist/remove/${appId}`, UPDATE_BLACKLIST: (appId: string) => `${BASE_URL}/AppVersion/blacklist/update/${appId}`, REQUEST_UPDATE_BLACKLIST: `${BASE_URL}/AppVersion/blacklist/request-update`, //require file api GET_REQUIRED_FILES: `${BASE_URL}/AppVersion/requirefiles`, ADD_REQUIRED_FILE: `${BASE_URL}/AppVersion/requirefile/add`, DELETE_REQUIRED_FILE: (fileId: number) => `${BASE_URL}/AppVersion/requirefile/delete/${fileId}`, DELETE_FILES: (fileId: number) => `${BASE_URL}/AppVersion/delete/${fileId}`, }, DEVICE_COMM: { DOWNLOAD_FILES: (roomName: string) => `${BASE_URL}/DeviceComm/downloadfile/${roomName}`, INSTALL_MSI: (roomName: string) => `${BASE_URL}/DeviceComm/installmsi/${roomName}`, GET_ALL_DEVICES: `${BASE_URL}/DeviceComm/alldevices`, GET_ROOM_LIST: `${BASE_URL}/DeviceComm/rooms`, GET_DEVICE_FROM_ROOM: (roomName: string) => `${BASE_URL}/DeviceComm/room/${roomName}`, UPDATE_AGENT: (roomName: string) => `${BASE_URL}/DeviceComm/updateagent/${roomName}`, UPDATE_BLACKLIST: (roomName: string) => `${BASE_URL}/DeviceComm/updateblacklist/${roomName}`, SEND_COMMAND: (roomName: string) => `${BASE_URL}/DeviceComm/shellcommand/${roomName}`, CHANGE_DEVICE_ROOM: `${BASE_URL}/DeviceComm/changeroom`, REQUEST_GET_CLIENT_FOLDER_STATUS: (roomName: string) => `${BASE_URL}/DeviceComm/clientfolderstatus/${roomName}`, }, COMMAND: { ADD_COMMAND: `${BASE_URL}/Command/add`, GET_COMMANDS: `${BASE_URL}/Command/all`, GET_COMMAND_BY_TYPES: (types: string) => `${BASE_URL}/Command/types/${types}`, UPDATE_COMMAND: (commandId: number) => `${BASE_URL}/Command/update/${commandId}`, DELETE_COMMAND: (commandId: number) => `${BASE_URL}/Command/delete/${commandId}`, }, SSE_EVENTS: { DEVICE_ONLINE: `${BASE_URL}/Sse/events/onlineDevices`, DEVICE_OFFLINE: `${BASE_URL}/Sse/events/offlineDevices`, GET_PROCESSES_LISTS: `${BASE_URL}/Sse/events/processLists`, GET_CLIENT_FOLDER_STATUS: `${BASE_URL}/Sse/events/clientFolderStatuses`, }, PERMISSION: { GET_LIST: `${BASE_URL}/Permission/list`, GET_BY_CATEGORY: `${BASE_URL}/Permission/list-by-category`, GET_BY_VALUE: (value: number) => `${BASE_URL}/Permission/${value}`, SEED_FROM_ENUM: `${BASE_URL}/Permission/seed-from-enum`, GET_DB_LIST: `${BASE_URL}/Permission/db-list`, DELETE: (id: number) => `${BASE_URL}/Permission/${id}`, }, ROLE: { GET_LIST: `${BASE_URL}/Role/list`, GET_BY_ID: (id: number) => `${BASE_URL}/Role/${id}`, CREATE: `${BASE_URL}/Role/create`, UPDATE: (id: number) => `${BASE_URL}/Role/update/${id}`, DELETE: (id: number) => `${BASE_URL}/Role/${id}`, GET_PERMISSIONS: (id: number) => `${BASE_URL}/Role/${id}/permissions`, ASSIGN_PERMISSIONS: (id: number) => `${BASE_URL}/Role/${id}/assign-permissions`, TOGGLE_PERMISSION: (roleId: number, permissionId: number) => `${BASE_URL}/Role/${roleId}/permissions/${permissionId}/toggle`, }, };