diff options
Diffstat (limited to 'apps/files_sharing/src/views/SharingList.vue')
-rw-r--r-- | apps/files_sharing/src/views/SharingList.vue | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/apps/files_sharing/src/views/SharingList.vue b/apps/files_sharing/src/views/SharingList.vue index b8f12f6ef15..5c2a21c8bf8 100644 --- a/apps/files_sharing/src/views/SharingList.vue +++ b/apps/files_sharing/src/views/SharingList.vue @@ -26,6 +26,7 @@ :key="share.id" :file-info="fileInfo" :share="share" + :is-unique="isUnique(share)" @remove:share="removeShare" /> </ul> </template> @@ -34,6 +35,7 @@ // eslint-disable-next-line no-unused-vars import Share from '../models/Share' import SharingEntry from '../components/SharingEntry' +import ShareTypes from '../mixins/ShareTypes' export default { name: 'SharingList', @@ -42,6 +44,8 @@ export default { SharingEntry, }, + mixins: [ShareTypes], + props: { fileInfo: { type: Object, @@ -59,6 +63,13 @@ export default { hasShares() { return this.shares.length === 0 }, + isUnique() { + return (share) => { + return [...this.shares].filter((item) => { + return share.type === this.SHARE_TYPES.SHARE_TYPE_USER && share.shareWithDisplayName === item.shareWithDisplayName + }).length <= 1 + } + }, }, methods: { |