UNPKG

earningscall

Version:

The EarningsCall JavaScript library provides convenient access to the EarningsCall API. It includes a pre-defined set of classes for API resources that initialize themselves dynamically from API responses.

26 lines 2.34 kB
export function camelCaseKeys(obj, options) { const result = {}; for (const [key, value] of Object.entries(obj)) { // Convert key from snake_case to camelCase const camelKey = key.replace(/_([a-z])/g, (_, letter) => letter.toUpperCase()); // Handle nested objects if deep option is true if (options.deep && value && typeof value === 'object' && !Array.isArray(value)) { result[camelKey] = camelCaseKeys(value, options); } // Handle arrays if deep option is true else if (options.deep && Array.isArray(value)) { result[camelKey] = value.map((item) => item && typeof item === 'object' ? camelCaseKeys(item, options) : item); } // Handle primitive values and shallow conversion else { result[camelKey] = value; } } return result; } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FtZWwtY2FzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvY2FtZWwtY2FzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQSxNQUFNLFVBQVUsYUFBYSxDQUMzQixHQUE0QixFQUM1QixPQUF5QjtJQUV6QixNQUFNLE1BQU0sR0FBNEIsRUFBRSxDQUFDO0lBRTNDLEtBQUssTUFBTSxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsSUFBSSxNQUFNLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUM7UUFDL0MsMkNBQTJDO1FBQzNDLE1BQU0sUUFBUSxHQUFHLEdBQUcsQ0FBQyxPQUFPLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQyxFQUFFLE1BQU0sRUFBRSxFQUFFLENBQ3RELE1BQU0sQ0FBQyxXQUFXLEVBQUUsQ0FDckIsQ0FBQztRQUVGLCtDQUErQztRQUMvQyxJQUNFLE9BQU8sQ0FBQyxJQUFJO1lBQ1osS0FBSztZQUNMLE9BQU8sS0FBSyxLQUFLLFFBQVE7WUFDekIsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUNyQixDQUFDO1lBQ0QsTUFBTSxDQUFDLFFBQVEsQ0FBQyxHQUFHLGFBQWEsQ0FDOUIsS0FBZ0MsRUFDaEMsT0FBTyxDQUNSLENBQUM7UUFDSixDQUFDO1FBQ0QsdUNBQXVDO2FBQ2xDLElBQUksT0FBTyxDQUFDLElBQUksSUFBSSxLQUFLLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDOUMsTUFBTSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUNwQyxJQUFJLElBQUksT0FBTyxJQUFJLEtBQUssUUFBUTtnQkFDOUIsQ0FBQyxDQUFDLGFBQWEsQ0FBQyxJQUErQixFQUFFLE9BQU8sQ0FBQztnQkFDekQsQ0FBQyxDQUFDLElBQUksQ0FDVCxDQUFDO1FBQ0osQ0FBQztRQUNELGlEQUFpRDthQUM1QyxDQUFDO1lBQ0osTUFBTSxDQUFDLFFBQVEsQ0FBQyxHQUFHLEtBQUssQ0FBQztRQUMzQixDQUFDO0lBQ0gsQ0FBQztJQUVELE9BQU8sTUFBTSxDQUFDO0FBQ2hCLENBQUMifQ==