From f112198cfddd8ab4e2fc9bc98ddf8c09a5d1cce4 Mon Sep 17 00:00:00 2001 From: Ian Bolton Date: Wed, 15 Nov 2023 16:42:42 -0500 Subject: [PATCH 1/3] :bug: Consistent search input ID for QE (#1543) - Requested by QE Signed-off-by: ibolton336 --- client/src/app/components/FilterToolbar/SearchFilterControl.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/client/src/app/components/FilterToolbar/SearchFilterControl.tsx b/client/src/app/components/FilterToolbar/SearchFilterControl.tsx index d34f9b0751..33c782af4e 100644 --- a/client/src/app/components/FilterToolbar/SearchFilterControl.tsx +++ b/client/src/app/components/FilterToolbar/SearchFilterControl.tsx @@ -51,7 +51,7 @@ export const SearchFilterControl = ({ setInputValue(value)} aria-label={`${category.title} filter`} From d83857156a56457f0eee6485b4265c15cf3e6c9f Mon Sep 17 00:00:00 2001 From: Ian Bolton Date: Wed, 15 Nov 2023 16:44:38 -0500 Subject: [PATCH 2/3] :sparkles: Add link for jira ticket in drawer view (#1546) - Adds missing link for https://issues.redhat.com/browse/MTA-1539 ![image](https://github.com/konveyor/tackle2-ui/assets/11218376/ebe510fa-c198-4451-9abf-a0fe850e923f) --------- Signed-off-by: ibolton336 --- client/src/app/api/models.ts | 1 + .../application-detail-fields.tsx | 52 ++++++++++++++++++- client/src/app/queries/migration-waves.ts | 3 +- 3 files changed, 53 insertions(+), 3 deletions(-) diff --git a/client/src/app/api/models.ts b/client/src/app/api/models.ts index 09a2e85683..2f2c071027 100644 --- a/client/src/app/api/models.ts +++ b/client/src/app/api/models.ts @@ -619,6 +619,7 @@ export interface Ticket { reference?: string | null; readonly status?: TicketStatus | null; error?: boolean; + link?: string; } export type Role = "Owner" | "Contributor" | null; diff --git a/client/src/app/pages/applications/components/application-detail-drawer/application-detail-fields.tsx b/client/src/app/pages/applications/components/application-detail-drawer/application-detail-fields.tsx index 33acc20d92..fd1a083491 100644 --- a/client/src/app/pages/applications/components/application-detail-drawer/application-detail-fields.tsx +++ b/client/src/app/pages/applications/components/application-detail-drawer/application-detail-fields.tsx @@ -8,12 +8,16 @@ import { Button, Grid, GridItem, + Spinner, } from "@patternfly/react-core"; import { Application } from "@app/api/models"; import spacing from "@patternfly/react-styles/css/utilities/Spacing/spacing"; import { ApplicationBusinessService } from "../application-business-service"; import { EmptyTextMessage } from "@app/components/EmptyTextMessage"; import { EditIcon } from "@patternfly/react-icons"; +import { useFetchTickets } from "@app/queries/tickets"; +import { useDeleteTicketMutation } from "@app/queries/migration-waves"; +import { UnlinkIcon } from "@patternfly/react-icons"; export const ApplicationDetailFields: React.FC<{ application: Application | null; @@ -21,7 +25,11 @@ export const ApplicationDetailFields: React.FC<{ onCloseClick: () => void; }> = ({ application, onEditClick, onCloseClick }) => { const { t } = useTranslation(); - + const { tickets } = useFetchTickets(); + const { mutate: deleteTicket, isLoading } = useDeleteTicketMutation(); + const matchingTicket = tickets?.find( + (ticket) => ticket.application?.id === application?.id + ); return ( <> @@ -143,11 +151,51 @@ export const ApplicationDetailFields: React.FC<{ {t("terms.migrationWave")} - + + Wave name{": "} + + {application?.migrationWave ? application.migrationWave.name : t("terms.unassigned")} +
+ + Ticket{": "} + + + {matchingTicket ? ( + + {matchingTicket?.link} + + ) : ( + t("terms.unassigned") + )} + {matchingTicket?.id ? ( + isLoading ? ( + + ) : ( +