diff --git a/apps/files/js/dist/sidebar.js b/apps/files/js/dist/sidebar.js index b446496096f256c4f62c019b8667349361077376..c1704dab68058548ac36cc2127ce29cf26fe54f9 100644 Binary files a/apps/files/js/dist/sidebar.js and b/apps/files/js/dist/sidebar.js differ diff --git a/apps/files/js/dist/sidebar.js.map b/apps/files/js/dist/sidebar.js.map index 44dbfd7e00a2cabf70f4df02e5621b87f49c1843..2f40bb02061fa4fa66bbfb46b48e405e657b4815 100644 Binary files a/apps/files/js/dist/sidebar.js.map and b/apps/files/js/dist/sidebar.js.map differ diff --git a/apps/files/src/views/Sidebar.vue b/apps/files/src/views/Sidebar.vue index 4b9e7b514ff174c8cbd78ee991952854a633128c..1758b510b1775ef19b6eea1684b0faee771f7d40 100644 --- a/apps/files/src/views/Sidebar.vue +++ b/apps/files/src/views/Sidebar.vue @@ -274,11 +274,42 @@ export default { } }) }, + getPreviewIfAny(fileInfo) { if (fileInfo.hasPreview) { return OC.generateUrl(`/core/preview?fileId=${fileInfo.id}&x=${screen.width}&y=${screen.height}&a=true`) } - return OCA.Files.App.fileList._getIconUrl(fileInfo) + return this.getIconUrl(fileInfo) + }, + + /** + * Copied from https://github.com/nextcloud/server/blob/16e0887ec63591113ee3f476e0c5129e20180cde/apps/files/js/filelist.js#L1377 + * TODO: We also need this as a standalone library + * + * @param {Object} fileInfo the fileinfo + * @returns {string} Url to the icon for mimeType + */ + getIconUrl(fileInfo) { + var mimeType = fileInfo.mimetype || 'application/octet-stream' + if (mimeType === 'httpd/unix-directory') { + // use default folder icon + if (fileInfo.mountType === 'shared' || fileInfo.mountType === 'shared-root') { + return OC.MimeType.getIconUrl('dir-shared') + } else if (fileInfo.mountType === 'external-root') { + return OC.MimeType.getIconUrl('dir-external') + } else if (fileInfo.mountType !== undefined && fileInfo.mountType !== '') { + return OC.MimeType.getIconUrl('dir-' + fileInfo.mountType) + } else if (fileInfo.shareTypes && ( + fileInfo.shareTypes.indexOf(OC.Share.SHARE_TYPE_LINK) > -1 + || fileInfo.shareTypes.indexOf(OC.Share.SHARE_TYPE_EMAIL) > -1) + ) { + return OC.MimeType.getIconUrl('dir-public') + } else if (fileInfo.shareTypes && fileInfo.shareTypes.length > 0) { + return OC.MimeType.getIconUrl('dir-shared') + } + return OC.MimeType.getIconUrl('dir') + } + return OC.MimeType.getIconUrl(mimeType) }, tabComponent(tab) {