Email Sorter Beta
Ich habe soweit automatisiert the Emails sortieren aber ich muss noch schauen was es fur bugs es gibt wenn die app online ist deswegen wurde ich mit diesen Commit die website veroffentlichen obwohjl es sein konnte das es noch nicht fertig ist und verkaufs bereit
This commit is contained in:
78
server/utils/response.mjs
Normal file
78
server/utils/response.mjs
Normal file
@@ -0,0 +1,78 @@
|
||||
/**
|
||||
* Response Utilities
|
||||
* Consistent API response formatting
|
||||
*/
|
||||
|
||||
/**
|
||||
* Success response
|
||||
* @param {Object} res - Express response object
|
||||
* @param {any} data - Response data
|
||||
* @param {string} message - Optional success message
|
||||
* @param {number} statusCode - HTTP status code (default: 200)
|
||||
*/
|
||||
export function success(res, data = null, message = null, statusCode = 200) {
|
||||
const response = {
|
||||
success: true,
|
||||
}
|
||||
|
||||
if (message) {
|
||||
response.message = message
|
||||
}
|
||||
|
||||
if (data !== null) {
|
||||
response.data = data
|
||||
}
|
||||
|
||||
return res.status(statusCode).json(response)
|
||||
}
|
||||
|
||||
/**
|
||||
* Created response (201)
|
||||
*/
|
||||
export function created(res, data, message = 'Erfolgreich erstellt') {
|
||||
return success(res, data, message, 201)
|
||||
}
|
||||
|
||||
/**
|
||||
* No content response (204)
|
||||
*/
|
||||
export function noContent(res) {
|
||||
return res.status(204).send()
|
||||
}
|
||||
|
||||
/**
|
||||
* Paginated response
|
||||
*/
|
||||
export function paginated(res, data, pagination) {
|
||||
return res.status(200).json({
|
||||
success: true,
|
||||
data,
|
||||
pagination: {
|
||||
page: pagination.page || 1,
|
||||
limit: pagination.limit || 25,
|
||||
total: pagination.total || data.length,
|
||||
totalPages: Math.ceil((pagination.total || data.length) / (pagination.limit || 25)),
|
||||
hasMore: pagination.hasMore || false,
|
||||
},
|
||||
})
|
||||
}
|
||||
|
||||
/**
|
||||
* Redirect response
|
||||
*/
|
||||
export function redirect(res, url, statusCode = 302) {
|
||||
return res.redirect(statusCode, url)
|
||||
}
|
||||
|
||||
/**
|
||||
* Response helpers object
|
||||
*/
|
||||
export const respond = {
|
||||
success,
|
||||
created,
|
||||
noContent,
|
||||
paginated,
|
||||
redirect,
|
||||
}
|
||||
|
||||
export default respond
|
||||
Reference in New Issue
Block a user