fix(files_sharing): Map sharee information for shared-by-you view

Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
This commit is contained in:
Ferdinand Thiessen 2025-02-20 12:24:49 +01:00
parent 4f50b5f337
commit d565ef4923
2 changed files with 20 additions and 1 deletions

View file

@ -355,6 +355,13 @@ describe('SharingService share to Node mapping', () => {
expect(file.root).toBe('/files/test')
expect(file.attributes).toBeInstanceOf(Object)
expect(file.attributes['has-preview']).toBe(true)
expect(file.attributes.sharees).toEqual({
sharee: {
id: 'user00',
'display-name': 'User00',
type: 0,
},
})
expect(file.attributes.favorite).toBe(0)
})

View file

@ -71,6 +71,17 @@ const ocsEntryToNode = async function(ocsEntry: any): Promise<Folder | File | nu
mtime = new Date((ocsEntry.stime) * 1000)
}
let sharees: { sharee: object } | undefined
if ('share_with' in ocsEntry) {
sharees = {
sharee: {
id: ocsEntry.share_with,
'display-name': ocsEntry.share_with_displayname || ocsEntry.share_with,
type: ocsEntry.share_type,
},
}
}
return new Node({
id: fileid,
source,
@ -88,7 +99,8 @@ const ocsEntryToNode = async function(ocsEntry: any): Promise<Folder | File | nu
'owner-display-name': ocsEntry?.displayname_owner,
'share-types': ocsEntry?.share_type,
'share-attributes': ocsEntry?.attributes || '[]',
favorite: ocsEntry?.tags?.includes((window.OC as Nextcloud.v29.OC & { TAG_FAVORITE: string }).TAG_FAVORITE) ? 1 : 0,
sharees,
favorite: ocsEntry?.tags?.includes((window.OC as { TAG_FAVORITE: string }).TAG_FAVORITE) ? 1 : 0,
},
})
} catch (error) {