UNPKG

pagamio-frontend-commons-lib

Version:

Pagamio library for Frontend reusable components like the form engine and table container

59 lines (58 loc) 1.68 kB
export const createQueryConfig = (startDate, endDate, options, filters) => { return { startDate, endDate, filters, metrics: options.metrics ?? [], aggregationType: options.aggregationType ?? 'SUM', dimensions: options.dimensions, limit: options.limit, sortBy: options.sortBy, sortDirection: options.sortDirection, page: options.page, size: options.size, }; }; /** * Helper function to get nested object value by path */ export const getNestedValue = (obj, path) => { return path.split('.').reduce((acc, part) => acc?.[part], obj); }; /** * Converts a simple array to a SpringBoot response format * * @param {T[]} response - The array to convert into SpringBoot response format * @returns {SpringBootResponse<T>} A SpringBoot paginated response object with the array as content * @template T - The type of items in the array */ export function arrayToSpringBootResponse(response) { return { content: response, empty: response.length === 0, first: true, last: true, number: 0, numberOfElements: response.length, pageable: { sort: { empty: true, sorted: false, unsorted: true, }, offset: 0, pageNumber: 0, pageSize: response.length, paged: false, unpaged: true, }, size: response.length, sort: { empty: true, sorted: false, unsorted: true, }, totalElements: response.length, totalPages: 1, }; }