Fix listview (#3586)

Signed-off-by: Andrey Sobolev <haiodo@gmail.com>
This commit is contained in:
Andrey Sobolev 2023-08-14 19:34:56 +07:00 committed by GitHub
parent ccaf66f179
commit e92918c6c7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -57,16 +57,23 @@
resultQuery = { ...p, ...query }
})
$: queryNoLookup = noLookup(resultQuery)
$: if (documents === undefined) {
docsQuery.query(
_class,
noLookup(resultQuery),
queryNoLookup,
(res) => {
docs = res
},
{
...resultOptions,
projection: { ...resultOptions.projection, _id: 1, _class: 1, ...getProjection(viewOptions.groupBy) }
projection: {
...resultOptions.projection,
_id: 1,
_class: 1,
...getProjection(viewOptions.groupBy, queryNoLookup)
}
}
)
} else {
@ -74,11 +81,14 @@
docs = documents
}
function getProjection (fields: string[]): Record<string, number> {
function getProjection (fields: string[], query: DocumentQuery<Doc>): Record<string, number> {
const res: Record<string, number> = {}
for (const f of fields) {
res[f] = 1
}
for (const f of Object.keys(query)) {
res[f] = 1
}
return res
}