From 9916b24c297d3d56fbae9d91420f5c62a1484d03 Mon Sep 17 00:00:00 2001 From: Jannik Stehle Date: Thu, 29 Jan 2026 17:18:23 +0100 Subject: [PATCH] refactor: move getIndicators to a composable This way we don't need to pass all the data to the method that can easily be retrieves when using other composables. --- .../SideBar/Details/FileDetails.vue | 12 +- .../FilesList/ResourceDetails.spec.ts | 1 - .../FilesList/ResourceStatusIndicators.vue | 17 +- .../src/composables/piniaStores/sideBar.ts | 2 +- .../src/composables/resources/index.ts | 1 + .../resources/useResourceIndicators.ts | 246 ++++++++++++++++++ .../web-pkg/src/helpers/statusIndicators.ts | 244 +---------------- .../ResourceStatusIndicators.spec.ts | 20 +- .../FilesList/ResourceTable.spec.ts | 6 +- .../FilesList/ResourceTiles.spec.ts | 6 +- .../resources/useResourceIndicators.spec.ts | 122 +++++++++ .../unit/helpers/statusIndicator.spec.ts | 123 --------- 12 files changed, 400 insertions(+), 400 deletions(-) create mode 100644 packages/web-pkg/src/composables/resources/useResourceIndicators.ts create mode 100644 packages/web-pkg/tests/unit/composables/resources/useResourceIndicators.spec.ts delete mode 100644 packages/web-pkg/tests/unit/helpers/statusIndicator.spec.ts diff --git a/packages/web-app-files/src/components/SideBar/Details/FileDetails.vue b/packages/web-app-files/src/components/SideBar/Details/FileDetails.vue index 78c9b4f5c5..b98b8898f7 100644 --- a/packages/web-app-files/src/components/SideBar/Details/FileDetails.vue +++ b/packages/web-app-files/src/components/SideBar/Details/FileDetails.vue @@ -138,8 +138,8 @@ import { formatDateFromJSDate, useResourceContents, useLoadPreview, - useInterceptModifierClick, - useSideBar + useSideBar, + useResourceIndicators } from '@opencloud-eu/web-pkg' import upperFirst from 'lodash-es/upperFirst' import { @@ -149,7 +149,6 @@ import { ShareTypes } from '@opencloud-eu/web-client' import { useGetMatchingSpace } from '@opencloud-eu/web-pkg' -import { getIndicators } from '@opencloud-eu/web-pkg' import { formatFileSize, formatRelativeDateFromJSDate } from '@opencloud-eu/web-pkg' import { Resource, SpaceResource } from '@opencloud-eu/web-client' import { useGettext } from 'vue3-gettext' @@ -172,13 +171,13 @@ const { getMatchingSpace } = useGetMatchingSpace() const { resourceContentsText } = useResourceContents({ showSizeInformation: false }) const { loadPreview, previewsLoading } = useLoadPreview() const { openSideBarPanel } = useSideBar() +const { getIndicators } = useResourceIndicators() const language = useGettext() const { $gettext, current: currentLanguage } = language const resourcesStore = useResourcesStore() const { ancestorMetaData, currentFolder } = storeToRefs(resourcesStore) -const { interceptModifierClick } = useInterceptModifierClick() const { user } = storeToRefs(userStore) const resource = inject>('resource') @@ -234,10 +233,7 @@ const hasDeletionDate = computed(() => { const shareIndicators = computed(() => { return getIndicators({ space: unref(space), - resource: unref(resource), - ancestorMetaData: unref(ancestorMetaData), - user: unref(user), - interceptModifierClick + resource: unref(resource) }).filter(({ category }) => category === 'sharing') }) diff --git a/packages/web-app-files/tests/unit/components/FilesList/ResourceDetails.spec.ts b/packages/web-app-files/tests/unit/components/FilesList/ResourceDetails.spec.ts index e5bf3cdb3d..07c4eba700 100644 --- a/packages/web-app-files/tests/unit/components/FilesList/ResourceDetails.spec.ts +++ b/packages/web-app-files/tests/unit/components/FilesList/ResourceDetails.spec.ts @@ -12,7 +12,6 @@ import { ref } from 'vue' vi.mock('@opencloud-eu/web-pkg', async (importOriginal) => ({ ...(await importOriginal()), - getIndicators: vi.fn(() => []), useRouteQuery: vi.fn(), useOpenWithDefaultApp: vi.fn() })) diff --git a/packages/web-pkg/src/components/FilesList/ResourceStatusIndicators.vue b/packages/web-pkg/src/components/FilesList/ResourceStatusIndicators.vue index 4d3c6b24d7..da20734018 100644 --- a/packages/web-pkg/src/components/FilesList/ResourceStatusIndicators.vue +++ b/packages/web-pkg/src/components/FilesList/ResourceStatusIndicators.vue @@ -9,11 +9,9 @@