From 7d47e7e512fba82c1ea9ee74bb378909d6964b4f Mon Sep 17 00:00:00 2001 From: Phil Kuang Date: Wed, 15 Jun 2022 12:33:41 -0400 Subject: [PATCH] feat(adrs): track discover event and result rank in AdrSearchResultListItem Signed-off-by: Phil Kuang --- .changeset/thick-radios-drive.md | 5 +++++ plugins/adr/api-report.md | 2 ++ plugins/adr/src/search/AdrSearchResultListItem.tsx | 13 ++++++++++++- 3 files changed, 19 insertions(+), 1 deletion(-) create mode 100644 .changeset/thick-radios-drive.md diff --git a/.changeset/thick-radios-drive.md b/.changeset/thick-radios-drive.md new file mode 100644 index 0000000000..130030be59 --- /dev/null +++ b/.changeset/thick-radios-drive.md @@ -0,0 +1,5 @@ +--- +'@backstage/plugin-adr': patch +--- + +Track discover event and result rank for `AdrSearchResultListItem` diff --git a/plugins/adr/api-report.md b/plugins/adr/api-report.md index 61cf231784..fbe04b1dc4 100644 --- a/plugins/adr/api-report.md +++ b/plugins/adr/api-report.md @@ -47,10 +47,12 @@ export const AdrReader: { export const AdrSearchResultListItem: ({ lineClamp, highlight, + rank, result, }: { lineClamp?: number | undefined; highlight?: ResultHighlight | undefined; + rank?: number | undefined; result: AdrDocument; }) => JSX.Element; diff --git a/plugins/adr/src/search/AdrSearchResultListItem.tsx b/plugins/adr/src/search/AdrSearchResultListItem.tsx index 484bac336e..677e39fc11 100644 --- a/plugins/adr/src/search/AdrSearchResultListItem.tsx +++ b/plugins/adr/src/search/AdrSearchResultListItem.tsx @@ -24,6 +24,7 @@ import { makeStyles, } from '@material-ui/core'; import { Link } from '@backstage/core-components'; +import { useAnalytics } from '@backstage/core-plugin-api'; import { AdrDocument } from '@backstage/plugin-adr-common'; import { ResultHighlight } from '@backstage/plugin-search-common'; import { HighlightedSearchResultText } from '@backstage/plugin-search-react'; @@ -46,16 +47,26 @@ const useStyles = makeStyles({ export const AdrSearchResultListItem = ({ lineClamp = 5, highlight, + rank, result, }: { lineClamp?: number; highlight?: ResultHighlight; + rank?: number; result: AdrDocument; }) => { const classes = useStyles(); + const analytics = useAnalytics(); + + const handleClick = () => { + analytics.captureEvent('discover', result.title, { + attributes: { to: result.location }, + value: rank, + }); + }; return ( - +