From f3c1891f8124bed320c2fd942a52f1e2a3457849 Mon Sep 17 00:00:00 2001 From: kim Date: Thu, 14 Nov 2024 16:55:02 +0100 Subject: [PATCH] feat: remove is published badge --- cypress/support/commands.ts | 3 --- cypress/support/server.ts | 28 ---------------------------- src/components/table/Badges.tsx | 27 ++++----------------------- 3 files changed, 4 insertions(+), 54 deletions(-) diff --git a/cypress/support/commands.ts b/cypress/support/commands.ts index b8bec30da..079f07a4b 100644 --- a/cypress/support/commands.ts +++ b/cypress/support/commands.ts @@ -53,7 +53,6 @@ import { mockGetItems, mockGetLatestValidationGroup, mockGetLinkMetadata, - mockGetManyPublishItemInformations, mockGetMember, mockGetMemberMentions, mockGetMembershipRequestsForItem, @@ -314,8 +313,6 @@ Cypress.Commands.add( mockGetPublishItemInformations(items); - mockGetManyPublishItemInformations(items); - mockGetLatestValidationGroup(items, itemValidationGroups); mockUpdatePassword(members, updatePasswordError); diff --git a/cypress/support/server.ts b/cypress/support/server.ts index e79c55838..a43f3a994 100644 --- a/cypress/support/server.ts +++ b/cypress/support/server.ts @@ -1823,34 +1823,6 @@ export const mockGetPublishItemInformations = (items: ItemForTest[]): void => { ).as('getPublishItemInformations'); }; -export const mockGetManyPublishItemInformations = ( - items: ItemForTest[], -): void => { - cy.intercept( - { - method: HttpMethod.Get, - url: new RegExp(`${API_HOST}/items/collections/informations`), - }, - ({ reply, url }) => { - const itemIds = new URL(url).searchParams.getAll('itemId'); - const completeItems = items.filter((i) => itemIds.includes(i.id)); - - const result = { - data: {} as { [key: ItemForTest['id']]: ItemPublished }, - errors: new Array<{ statusCode: number }>(), - }; - for (const i of completeItems) { - if (i.published) { - result.data[i.id] = i.published; - } else { - result.errors.push({ statusCode: StatusCodes.NOT_FOUND }); - } - } - return reply(result); - }, - ).as('getManyPublishItemInformations'); -}; - export const mockGetPublishItemsForMember = ( publishedItemData: ItemPublished[], shoulThrow = false, diff --git a/src/components/table/Badges.tsx b/src/components/table/Badges.tsx index a33a43713..d3bd995e9 100644 --- a/src/components/table/Badges.tsx +++ b/src/components/table/Badges.tsx @@ -2,18 +2,14 @@ import { DiscriminatedItem, PackedItem } from '@graasp/sdk'; import { ItemBadges } from '@graasp/ui'; import { useBuilderTranslation } from '../../config/i18n'; -import { hooks } from '../../config/queryClient'; import { BUILDER } from '../../langs/constants'; -const { useManyItemPublishedInformations } = hooks; - type ItemStatuses = { showChatbox: boolean; isPinned: boolean; isCollapsible: boolean; isHidden: boolean; isPublic: boolean; - isPublished: boolean; }; const DEFAULT_ITEM_STATUSES: ItemStatuses = { @@ -22,7 +18,6 @@ const DEFAULT_ITEM_STATUSES: ItemStatuses = { isCollapsible: false, isHidden: false, isPublic: false, - isPublished: false, }; export type ItemsStatuses = { [key: DiscriminatedItem['id']]: ItemStatuses }; @@ -36,19 +31,14 @@ export const useItemsStatuses = ({ items = [], }: { items?: PackedItem[]; -}): ItemsStatuses => { - const { data: publishedInformations } = useManyItemPublishedInformations({ - itemIds: items.map((i) => i.id), - }); - - return items.reduce((acc, r) => { +}): ItemsStatuses => + items.reduce((acc, r) => { const { showChatbox, isPinned, isCollapsible } = { ...DEFAULT_ITEM_STATUSES, ...r.settings, }; const isHidden = Boolean(r.hidden); const isPublic = Boolean(r.public); - const isPublished = Boolean(publishedInformations?.data?.[r.id]); return { ...acc, @@ -58,24 +48,16 @@ export const useItemsStatuses = ({ isCollapsible, isHidden, isPublic, - isPublished, }, }; }, {} as ItemsStatuses); -}; const Badges = ({ itemsStatuses, data: item }: ChildCompProps): JSX.Element => { const { t } = useBuilderTranslation(); // this is useful because the item.id we are looking for may not be present and the itemStatuses will be undefined const itemStatuses = itemsStatuses?.[item.id] || DEFAULT_ITEM_STATUSES; - const { - showChatbox, - isPinned, - isHidden, - isPublic, - isPublished, - isCollapsible, - } = itemStatuses; + const { showChatbox, isPinned, isHidden, isPublic, isCollapsible } = + itemStatuses; return ( { isHiddenTooltip={t(BUILDER.STATUS_TOOLTIP_IS_HIDDEN)} isPublic={isPublic} isPublicTooltip={t(BUILDER.STATUS_TOOLTIP_IS_PUBLIC)} - isPublished={isPublished} isPublishedTooltip={t(BUILDER.STATUS_TOOLTIP_IS_PUBLISHED)} isCollapsible={isCollapsible} isCollapsibleTooltip={t(BUILDER.STATUS_TOOLTIP_IS_COLLAPSIBLE)}