diff --git a/apps/files/src/sidebar.js b/apps/files/src/sidebar.ts similarity index 84% rename from apps/files/src/sidebar.js rename to apps/files/src/sidebar.ts index 61f8be419b6..35a379ad649 100644 --- a/apps/files/src/sidebar.js +++ b/apps/files/src/sidebar.ts @@ -23,6 +23,8 @@ window.addEventListener('DOMContentLoaded', function() { const contentElement = document.querySelector('body > .content') || document.querySelector('body > #content') + let vueParent + // Make sure we have a proper layout if (contentElement) { // Make sure we have a mountpoint @@ -31,14 +33,20 @@ window.addEventListener('DOMContentLoaded', function() { sidebarElement.id = 'app-sidebar' contentElement.appendChild(sidebarElement) } + + // Helps with vue debug, as we mount the sidebar to the + // content element which is a vue instance itself + vueParent = contentElement.__vue__ as Vue } // Init vue app const View = Vue.extend(SidebarView) const AppSidebar = new View({ name: 'SidebarRoot', - }) - AppSidebar.$mount('#app-sidebar') + parent: vueParent, + }).$mount('#app-sidebar') + + // Expose Sidebar methods window.OCA.Files.Sidebar.open = AppSidebar.open window.OCA.Files.Sidebar.close = AppSidebar.close window.OCA.Files.Sidebar.setFullScreenMode = AppSidebar.setFullScreenMode diff --git a/apps/files/src/views/Sidebar.vue b/apps/files/src/views/Sidebar.vue index 1867ea6a591..fbbd2df4bb9 100644 --- a/apps/files/src/views/Sidebar.vue +++ b/apps/files/src/views/Sidebar.vue @@ -38,8 +38,7 @@ + :file-id="fileInfo.id" /> -