function parseLoadSubsetOptions(options): object;
function parseLoadSubsetOptions(options): object;
Defined in: packages/db/src/query/expression-helpers.ts:499
Convenience function to get all LoadSubsetOptions in a pre-parsed format. Good starting point for simple use cases.
The LoadSubsetOptions from ctx.meta
{ limit?: number; orderBy?: OrderBy; where?: BasicExpression<boolean>; } | null | undefined
object
Pre-parsed filters, sorts, and limit
filters: SimpleComparison[];
filters: SimpleComparison[];
optional limit: number;
optional limit: number;
sorts: ParsedOrderBy[];
sorts: ParsedOrderBy[];
queryFn: async (ctx) => {
const parsed = parseLoadSubsetOptions(ctx.meta?.loadSubsetOptions)
// Convert to your API format
return api.getProducts({
...Object.fromEntries(
parsed.filters.map(f => [`${f.field.join('.')}_${f.operator}`, f.value])
),
sort: parsed.sorts.map(s => `${s.field.join('.')}:${s.direction}`).join(','),
limit: parsed.limit
})
}
queryFn: async (ctx) => {
const parsed = parseLoadSubsetOptions(ctx.meta?.loadSubsetOptions)
// Convert to your API format
return api.getProducts({
...Object.fromEntries(
parsed.filters.map(f => [`${f.field.join('.')}_${f.operator}`, f.value])
),
sort: parsed.sorts.map(s => `${s.field.join('.')}:${s.direction}`).join(','),
limit: parsed.limit
})
}
Your weekly dose of JavaScript news. Delivered every Monday to over 100,000 devs, for free.
Your weekly dose of JavaScript news. Delivered every Monday to over 100,000 devs, for free.
