mirror of
https://github.com/20kaushik02/express-sequelize-backend-template.git
synced 2025-12-06 10:44:06 +00:00
overall: formatting check, jsdoc type hints, express res/return stuff utils - changes in logger, dateformatter and removed unneeded ones .env file changes license check, readme update package.json update - version, deps, URLs server cleanup sequelize config check
36 lines
761 B
JavaScript
36 lines
761 B
JavaScript
/**
|
|
* Recursively build a FormData object from a JSON object
|
|
* @param {FormData} formData
|
|
* @param {any} data
|
|
* @param {string} parentKey
|
|
*/
|
|
function buildFormData(formData, data, parentKey) {
|
|
if (data && typeof data === 'object' && !(data instanceof Date)) {
|
|
Object.keys(data).forEach(key => {
|
|
buildFormData(formData, data[key], parentKey ? `${parentKey}[${key}]` : key);
|
|
});
|
|
} else {
|
|
const value = data == null ? '' : data;
|
|
|
|
formData.append(parentKey, value);
|
|
}
|
|
}
|
|
|
|
/**
|
|
* Converts a JSON object to a FormData object
|
|
* @param {any} data
|
|
* @returns {FormData}
|
|
*/
|
|
function jsonToFormData(data) {
|
|
const formData = new FormData();
|
|
|
|
buildFormData(formData, data);
|
|
|
|
return formData;
|
|
}
|
|
|
|
module.exports = {
|
|
jsonToFormData,
|
|
buildFormData,
|
|
};
|