22 lines
479 B
TypeScript
22 lines
479 B
TypeScript
import { Where } from '../../types';
|
|
|
|
export const appendVersionToQueryKey = (query: Where): Where => {
|
|
return Object.entries(query).reduce((res, [key, val]) => {
|
|
if (['and', 'or'].includes(key) && Array.isArray(val)) {
|
|
return {
|
|
...res,
|
|
[key]: val.map((subQuery) => appendVersionToQueryKey(subQuery)),
|
|
};
|
|
}
|
|
|
|
if (key !== 'id') {
|
|
return {
|
|
...res,
|
|
[`version.${key}`]: val,
|
|
};
|
|
}
|
|
|
|
return res;
|
|
}, {});
|
|
};
|