aboutsummaryrefslogtreecommitdiffstats
path: root/apps
diff options
context:
space:
mode:
authorFerdinand Thiessen <opensource@fthiessen.de>2024-06-13 15:06:12 +0200
committerFerdinand Thiessen <opensource@fthiessen.de>2024-06-24 12:52:11 +0200
commitd4352fe2ffdafca2e662ddc7f9e7ec8b7eb3bb4a (patch)
treed7d9dbd80f07a8aecd2c3e278c563f48d7b89e7d /apps
parentc76c954f56e085dada9a7e9553408d499993ba79 (diff)
downloadnextcloud-server-d4352fe2ffdafca2e662ddc7f9e7ec8b7eb3bb4a.tar.gz
nextcloud-server-d4352fe2ffdafca2e662ddc7f9e7ec8b7eb3bb4a.zip
fix(files): Properly handle files in failed state
When files are loaded from API the `fileid` might be set to `-1` indicating an error on the API. Signed-off-by: Ferdinand Thiessen <opensource@fthiessen.de>
Diffstat (limited to 'apps')
-rw-r--r--apps/files/src/components/FileEntry.vue2
-rw-r--r--apps/files/src/components/FileEntry/FileEntryActions.vue3
-rw-r--r--apps/files/src/components/FileEntry/FileEntryName.vue2
-rw-r--r--apps/files/src/components/FileEntryGrid.vue2
-rw-r--r--apps/files/src/components/FileEntryMixin.ts7
5 files changed, 12 insertions, 4 deletions
diff --git a/apps/files/src/components/FileEntry.vue b/apps/files/src/components/FileEntry.vue
index 847decd4378..02ddb47f93e 100644
--- a/apps/files/src/components/FileEntry.vue
+++ b/apps/files/src/components/FileEntry.vue
@@ -16,7 +16,7 @@
class="files-list__row"
v-on="rowListeners">
<!-- Failed indicator -->
- <span v-if="source.attributes.failed" class="files-list__row--failed" />
+ <span v-if="isFailedSource" class="files-list__row--failed" />
<!-- Checkbox -->
<FileEntryCheckbox :fileid="fileid"
diff --git a/apps/files/src/components/FileEntry/FileEntryActions.vue b/apps/files/src/components/FileEntry/FileEntryActions.vue
index 24b26bd225e..d0306e5e848 100644
--- a/apps/files/src/components/FileEntry/FileEntryActions.vue
+++ b/apps/files/src/components/FileEntry/FileEntryActions.vue
@@ -93,6 +93,7 @@ import ArrowLeftIcon from 'vue-material-design-icons/ArrowLeft.vue'
import { useNavigation } from '../../composables/useNavigation'
import CustomElementRender from '../CustomElementRender.vue'
+
import logger from '../../logger.js'
// The registered actions list
@@ -160,7 +161,7 @@ export default defineComponent({
// Sorted actions that are enabled for this node
enabledActions() {
- if (this.source.attributes.failed) {
+ if (this.source.status === NodeStatus.FAILED) {
return []
}
diff --git a/apps/files/src/components/FileEntry/FileEntryName.vue b/apps/files/src/components/FileEntry/FileEntryName.vue
index 5e9036ad63d..4e5a3571e74 100644
--- a/apps/files/src/components/FileEntry/FileEntryName.vue
+++ b/apps/files/src/components/FileEntry/FileEntryName.vue
@@ -126,7 +126,7 @@ export default defineComponent({
},
linkTo() {
- if (this.source.attributes.failed) {
+ if (this.source.status === NodeStatus.FAILED) {
return {
is: 'span',
params: {
diff --git a/apps/files/src/components/FileEntryGrid.vue b/apps/files/src/components/FileEntryGrid.vue
index 31df827eea2..1ec4f173a0e 100644
--- a/apps/files/src/components/FileEntryGrid.vue
+++ b/apps/files/src/components/FileEntryGrid.vue
@@ -17,7 +17,7 @@
@dragend="onDragEnd"
@drop="onDrop">
<!-- Failed indicator -->
- <span v-if="source.attributes.failed" class="files-list__row--failed" />
+ <span v-if="isFailedSource" class="files-list__row--failed" />
<!-- Checkbox -->
<FileEntryCheckbox :fileid="fileid"
diff --git a/apps/files/src/components/FileEntryMixin.ts b/apps/files/src/components/FileEntryMixin.ts
index b9cc0398ef5..407df14fa7c 100644
--- a/apps/files/src/components/FileEntryMixin.ts
+++ b/apps/files/src/components/FileEntryMixin.ts
@@ -102,6 +102,13 @@ export default defineComponent({
return String(this.fileid) === String(this.currentFileId)
},
+ /**
+ * Check if the source is in a failed state after an API request
+ */
+ isFailedSource() {
+ return this.source.status === NodeStatus.FAILED
+ },
+
canDrag() {
if (this.isRenaming) {
return false