import Str from '@supercharge/strings' function camelCaseKeys(object: { [s: string]: unknown } | ArrayLike): object { return Object .entries(object) .reduce((carry, [key, value]) => { // eslint-disable-next-line no-param-reassign carry[Str(key).camel().get()] = value return carry }, {}) } // eslint-disable-next-line max-len export const convertArrayOfObjsToCamelCase = (arr: any[]) => arr.map((obj: any) => camelCaseKeys(obj)) export const convertObjToCamelCase = (obj: any) => camelCaseKeys(obj) export const camelCaseResponse = (x: any) => { if (Array.isArray(x)) return convertArrayOfObjsToCamelCase(x) if (typeof x === 'string' || typeof x === 'number') return x return convertObjToCamelCase(x) } export default camelCaseResponse