refactor: custom fields casing

This commit is contained in:
Carlos Valente
2024-04-27 09:22:54 +02:00
committed by Carlos Valente
parent 95b437e18c
commit 0c3c08ac98
3 changed files with 5 additions and 3 deletions
@@ -46,7 +46,8 @@ const actionHandlers: Record<string, ActionHandler> = {
if (typeof property !== 'string' || value === undefined) {
throw new Error('Invalid property or value');
}
const newObjectProperty = parseProperty(property, value);
// all custom fields keys are lowercase
const newObjectProperty = parseProperty(property.toLowerCase(), value);
if (patchEvent.custom && newObjectProperty.custom) {
Object.assign(patchEvent.custom, newObjectProperty.custom);
@@ -27,7 +27,7 @@ export function parseProperty(property: string, value: unknown) {
throw new Error(`Custom field ${customKey} not found`);
}
const parserFn = whitelistedPayload.custom;
return { custom: { [customKey]: { value: parserFn(value) } } };
return { custom: { [customKey]: parserFn(value) } };
}
if (!isKeyOfType(property, whitelistedPayload)) {
+2 -1
View File
@@ -259,7 +259,8 @@ export const parseCustomFields = (data: Partial<DatabaseModel>): CustomFields =>
console.log('ERROR: missing required field, skipping');
continue;
}
newCustomFields[field.label] = {
const key = field.label.toLowerCase();
newCustomFields[key] = {
type: field.type,
colour: field.colour,
label: field.label,