Fixing an issue that aptkingston found with relationships were links on the way out would be multiplied (due to the bi-directional nature).

This commit is contained in:
mike12345567 2021-01-28 14:03:19 +00:00
parent 79277f0ee0
commit 561ce349f9
1 changed files with 13 additions and 3 deletions

View File

@ -77,11 +77,21 @@ exports.getLinkDocuments = async function({
}
params.include_docs = !!includeDocs
try {
const response = await db.query(getQueryIndex(ViewNames.LINK), params)
let linkRows = (await db.query(getQueryIndex(ViewNames.LINK), params)).rows
// filter to get unique entries
const foundIds = []
linkRows = linkRows.filter(link => {
const unique = foundIds.indexOf(link.id) === -1
if (unique) {
foundIds.push(link.id)
}
return unique
})
if (includeDocs) {
return response.rows.map(row => row.doc)
return linkRows.map(row => row.doc)
} else {
return response.rows.map(row => row.value)
return linkRows.map(row => row.value)
}
} catch (err) {
// check if the view doesn't exist, it should for all new instances