Merge pull request #44500 from nextcloud/backport/44484/stable28

[stable28] fix(share): Send correct share attributes upon share creation
This commit is contained in:
Côme Chilliet 2024-04-29 15:25:21 +02:00 committed by GitHub
commit 369247338b
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
10 changed files with 18 additions and 18 deletions

View file

@ -373,10 +373,14 @@ export default {
*/
canDownload: {
get() {
return this.share.hasDownloadPermission
return this.share.attributes.find(attr => attr.key === 'download')?.enabled || false
},
set(checked) {
this.updateAtomicPermissions({ isDownloadChecked: checked })
// Find the 'download' attribute and update its value
const downloadAttr = this.share.attributes.find(attr => attr.key === 'download')
if (downloadAttr) {
downloadAttr.enabled = checked
}
},
},
/**
@ -680,7 +684,6 @@ export default {
isCreateChecked = this.canCreate,
isDeleteChecked = this.canDelete,
isReshareChecked = this.canReshare,
isDownloadChecked = this.canDownload,
} = {}) {
// calc permissions if checked
const permissions = 0
@ -690,9 +693,6 @@ export default {
| (isEditChecked ? ATOMIC_PERMISSIONS.UPDATE : 0)
| (isReshareChecked ? ATOMIC_PERMISSIONS.SHARE : 0)
this.share.permissions = permissions
if (this.share.hasDownloadPermission !== isDownloadChecked) {
this.$set(this.share, 'hasDownloadPermission', isDownloadChecked)
}
},
expandCustomPermissions() {
if (!this.advancedSectionAccordionExpanded) {
@ -854,8 +854,8 @@ export default {
shareType: share.shareType,
shareWith: share.shareWith,
permissions: share.permissions,
attributes: JSON.stringify(fileInfo.shareAttributes),
expireDate: share.expireDate,
attributes: JSON.stringify(share.attributes),
...(share.note ? { note: share.note } : {}),
...(share.password ? { password: share.password } : {}),
})
@ -999,7 +999,7 @@ export default {
flex-direction: column;
}
}
/* Target component based style in NcCheckboxRadioSwitch slot content*/
:deep(span.checkbox-content__text.checkbox-radio-switch__text) {
flex-wrap: wrap;

3
dist/8094-8094.js vendored Normal file

File diff suppressed because one or more lines are too long

1
dist/8094-8094.js.map vendored Normal file

File diff suppressed because one or more lines are too long

3
dist/8718-8718.js vendored

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

4
dist/core-common.js vendored

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long