diff options
author | fenn-cs <fenn25.fn@gmail.com> | 2024-07-05 21:25:54 +0100 |
---|---|---|
committer | fenn-cs <fenn25.fn@gmail.com> | 2024-07-05 21:26:13 +0100 |
commit | 7e208977dcd0aa0ce2b6a51b4a12e6bb98cdc4d9 (patch) | |
tree | d2282d6ae0968177e749c8493c2cec5d73faa69c | |
parent | 656e109d2fe4aa8af3b68350cb1be342c4f4a5b8 (diff) | |
download | nextcloud-server-fix/update-share-entry-quick-select.tar.gz nextcloud-server-fix/update-share-entry-quick-select.zip |
WIP: Update quick share select optionfix/update-share-entry-quick-select
`SharingEntryQuickSelect` should respond to changes and reflect the new state of shares
when updates are done in the `SharingDetailsTab`
Signed-off-by: fenn-cs <fenn25.fn@gmail.com>
-rw-r--r-- | apps/files_sharing/src/components/SharingEntry.vue | 19 | ||||
-rw-r--r-- | apps/files_sharing/src/views/SharingList.vue | 5 | ||||
-rw-r--r-- | apps/files_sharing/src/views/SharingTab.vue | 22 |
3 files changed, 46 insertions, 0 deletions
diff --git a/apps/files_sharing/src/components/SharingEntry.vue b/apps/files_sharing/src/components/SharingEntry.vue index 23127a6fe16..40cae7d1ca3 100644 --- a/apps/files_sharing/src/components/SharingEntry.vue +++ b/apps/files_sharing/src/components/SharingEntry.vue @@ -63,6 +63,20 @@ export default { }, mixins: [SharesMixin, ShareDetails], + props: { + share: { + type: Object, + required: true, + }, + fileInfo: { + type: Object, + required: true, + }, + isUnique: { + type: Boolean, + required: true, + }, + }, computed: { title() { @@ -119,6 +133,11 @@ export default { this.onNoteSubmit() }, }, + watch: { + share(newShare) { + console.log('Shareeeeee prop changed:', newShare) + } + }, } </script> diff --git a/apps/files_sharing/src/views/SharingList.vue b/apps/files_sharing/src/views/SharingList.vue index 7294294afa4..c3d8602382f 100644 --- a/apps/files_sharing/src/views/SharingList.vue +++ b/apps/files_sharing/src/views/SharingList.vue @@ -53,5 +53,10 @@ export default { } }, }, + watch: { + shares(old, newShares) { + console.log('Shares prop changed:', old, newShares) + } + } } </script> diff --git a/apps/files_sharing/src/views/SharingTab.vue b/apps/files_sharing/src/views/SharingTab.vue index 7e58cb6401e..e9d0d4596a4 100644 --- a/apps/files_sharing/src/views/SharingTab.vue +++ b/apps/files_sharing/src/views/SharingTab.vue @@ -77,6 +77,7 @@ :share="shareDetailsData.share" @close-sharing-details="toggleShareDetailsView" @add:share="addShare" + @update:share="handleShareUpdated" @remove:share="removeShare" /> </div> </template> @@ -400,6 +401,27 @@ export default { }) } }, + + handleShareUpdated(updatedShare) { + // Check if the updated share is in the `shares` list + let index = this.shares.findIndex(share => share.id === updatedShare.id) + if (index !== -1) { + console.log("Let us see", this.shares[index].permissions, updatedShare.permissions) + // Update the share in the `shares` list + this.$set(this.shares, index, updatedShare) + console.log('Updated???', updatedShare) + console.log("Let us see (AFTER)", this.shares[index].permissions, updatedShare.permissions) + } else { + // Check if the updated share is in the `linkShares` list + index = this.linkShares.findIndex(share => share.id === updatedShare.id) + if (index !== -1) { + // Update the share in the `linkShares` list + this.$set(this.linkShares, index, updatedShare) + this.linkShares[index] = updatedShare + console.log('Updated link???', updatedShare) + } + } + }, }, } </script> |