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.
29 lines • 2.46 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.camelCaseKeys = camelCaseKeys;
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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FtZWwtY2FzZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvY2FtZWwtY2FzZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOztBQUlBLHNDQXVDQztBQXZDRCxTQUFnQixhQUFhLENBQzNCLEdBQTRCLEVBQzVCLE9BQXlCO0lBRXpCLE1BQU0sTUFBTSxHQUE0QixFQUFFLENBQUM7SUFFM0MsS0FBSyxNQUFNLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQztRQUMvQywyQ0FBMkM7UUFDM0MsTUFBTSxRQUFRLEdBQUcsR0FBRyxDQUFDLE9BQU8sQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLEVBQUUsTUFBTSxFQUFFLEVBQUUsQ0FDdEQsTUFBTSxDQUFDLFdBQVcsRUFBRSxDQUNyQixDQUFDO1FBRUYsK0NBQStDO1FBQy9DLElBQ0UsT0FBTyxDQUFDLElBQUk7WUFDWixLQUFLO1lBQ0wsT0FBTyxLQUFLLEtBQUssUUFBUTtZQUN6QixDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQ3JCLENBQUM7WUFDRCxNQUFNLENBQUMsUUFBUSxDQUFDLEdBQUcsYUFBYSxDQUM5QixLQUFnQyxFQUNoQyxPQUFPLENBQ1IsQ0FBQztRQUNKLENBQUM7UUFDRCx1Q0FBdUM7YUFDbEMsSUFBSSxPQUFPLENBQUMsSUFBSSxJQUFJLEtBQUssQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUM5QyxNQUFNLENBQUMsUUFBUSxDQUFDLEdBQUcsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQ3BDLElBQUksSUFBSSxPQUFPLElBQUksS0FBSyxRQUFRO2dCQUM5QixDQUFDLENBQUMsYUFBYSxDQUFDLElBQStCLEVBQUUsT0FBTyxDQUFDO2dCQUN6RCxDQUFDLENBQUMsSUFBSSxDQUNULENBQUM7UUFDSixDQUFDO1FBQ0QsaURBQWlEO2FBQzVDLENBQUM7WUFDSixNQUFNLENBQUMsUUFBUSxDQUFDLEdBQUcsS0FBSyxDQUFDO1FBQzNCLENBQUM7SUFDSCxDQUFDO0lBRUQsT0FBTyxNQUFNLENBQUM7QUFDaEIsQ0FBQyJ9