diff --git a/src/components/item/SharingBrowser.vue b/src/components/item/SharingBrowser.vue index cdc285a..89c730d 100644 --- a/src/components/item/SharingBrowser.vue +++ b/src/components/item/SharingBrowser.vue @@ -12,6 +12,8 @@
+ +
@@ -27,6 +29,9 @@ import { ItemClass } from '@lib/items/items'; import { ItemFactory } from '@lib/items/factory'; import { FolderClass } from '@lib/items/folders'; import { FileClass } from '@lib/items/files'; +import { ShortcutClass } from '@lib/items/shortcuts'; +import { DocsClass } from '@lib/items/docs'; +import Docs from './docs/Docs.vue'; /** * Items @@ -58,7 +63,7 @@ async function getItems() { for (const rawItem of rawItems) { if (!ItemClass.isItem(rawItem)) continue; - const item = ItemFactory.getItemFromObject(rawItem); + const item = await ItemFactory.getItemFromObject(rawItem); if (item === null) continue; @@ -73,13 +78,29 @@ async function getItems() { * Folders */ const folders = computed(() => { - return Object.values(items.value).filter((item) => item instanceof FolderClass) as FolderClass[]; + return Object.values(items.value).filter( + (item) => + item instanceof FolderClass || + (item instanceof ShortcutClass && item._linkedItem instanceof FolderClass), + ) as FolderClass[]; }); /** * Files */ const files = computed(() => { - return Object.values(items.value).filter((item) => item instanceof FileClass) as FileClass[]; + return Object.values(items.value).filter( + (item) => + item instanceof FileClass || + (item instanceof ShortcutClass && item._linkedItem instanceof FileClass), + ) as FileClass[]; +}); + +const docs = computed(() => { + return Object.values(items.value).filter( + (item) => + item instanceof DocsClass || + (item instanceof ShortcutClass && item._linkedItem instanceof DocsClass), + ) as DocsClass[]; }); diff --git a/src/components/item/docs/Docs.vue b/src/components/item/docs/Docs.vue index 49c9fde..c1560ad 100644 --- a/src/components/item/docs/Docs.vue +++ b/src/components/item/docs/Docs.vue @@ -68,7 +68,7 @@ >{{ t('fileBrowser.shortcut.action.create') }} -
  • +
  • {{ t('fileBrowser.shortcut.action.create') }}
  • -
  • +
  • {{ t('fileBrowser.file.action.share') }}
  • +
  • + {{ t('fileBrowser.file.action.download') }} +