You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

main.js 1.4KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. import './templates.js'
  2. import './legacy/filelistSearch.js'
  3. import processLegacyFilesViews from './legacy/navigationMapper.js'
  4. import Vue from 'vue'
  5. import NavigationService from './services/Navigation.ts'
  6. import NavigationView from './views/Navigation.vue'
  7. import FilesListView from './views/FilesList.vue'
  8. import SettingsService from './services/Settings.js'
  9. import SettingsModel from './models/Setting.js'
  10. import router from './router/router.js'
  11. import store from './store/index.ts'
  12. // Init private and public Files namespace
  13. window.OCA.Files = window.OCA.Files ?? {}
  14. window.OCP.Files = window.OCP.Files ?? {}
  15. // Init Navigation Service
  16. const Navigation = new NavigationService()
  17. Object.assign(window.OCP.Files, { Navigation })
  18. // Init Files App Settings Service
  19. const Settings = new SettingsService()
  20. Object.assign(window.OCA.Files, { Settings })
  21. Object.assign(window.OCA.Files.Settings, { Setting: SettingsModel })
  22. // Init Navigation View
  23. const View = Vue.extend(NavigationView)
  24. const FilesNavigationRoot = new View({
  25. name: 'FilesNavigationRoot',
  26. propsData: {
  27. Navigation,
  28. },
  29. router,
  30. })
  31. FilesNavigationRoot.$mount('#app-navigation-files')
  32. // Init content list view
  33. const ListView = Vue.extend(FilesListView)
  34. const FilesList = new ListView({
  35. name: 'FilesListRoot',
  36. propsData: {
  37. Navigation,
  38. },
  39. router,
  40. store,
  41. })
  42. FilesList.$mount('#app-content-vue')
  43. // Init legacy files views
  44. processLegacyFilesViews()