fix(ui): add RecentItem type + ad protection while building items

This commit is contained in:
Edouard Vanbelle
2026-05-18 23:06:50 +02:00
parent 79a12018b1
commit 82561a2b90
3 changed files with 41 additions and 10 deletions
+12 -7
View File
@@ -12,7 +12,7 @@ import { i18n } from '../../core/i18n.js';
import { multiSelect } from '../files/multiSelect.js';
import * as pathTooltip from '../pathTooltip.js';
/** @import {FileItem, FolderItem, ItemTypeEnum} from '../../core/types.js' */
/** @import {FileItem, FolderItem, ItemTypeEnum, RecentItem} from '../../core/types.js' */
const recent = {
/** Maximum items to request from the server */
@@ -95,7 +95,7 @@ const recent = {
throw new Error(`Server returned ${response.status}`);
}
const recentItems = await response.json();
const recentItems = /** @type {RecentItem[]} */ (await response.json());
ui.resetFilesList(); // ensure also list visible & error hidden
const filesList = document.getElementById('files-list');
@@ -141,13 +141,18 @@ const recent = {
modified_at: item.accessed_at,
path: item.item_path || '',
category: 'folder',
created_at: item.created_at,
icon_class: '',
icon_special_class: '',
created_at: item.accessed_at, //Wrong information
icon_class: item.icon_class,
icon_special_class: item.icon_special_class,
owner_id: '',
is_root: false
});
} else {
if (item.item_mime_type === undefined || item.item_mime_type === null) {
// FIXME: this case should not be possible, is it an information badly cleaned up on server ?
console.warn('Broken information for RecentItem: ', item);
//continue;
}
files.push({
id: item.item_id,
name: item.item_name || item.item_id,
@@ -161,8 +166,8 @@ const recent = {
modified_at: item.accessed_at,
path: item.item_path || '',
owner_id: '',
created_at: item.created_at,
sort_date: item.created_at
created_at: item.accessed_at, //wrong information
sort_date: item.accessed_at
});
}
}