diff --git a/frontend/jest.config.ts b/frontend/jest.config.ts index e8039dfa2337..18b0989113ff 100644 --- a/frontend/jest.config.ts +++ b/frontend/jest.config.ts @@ -26,7 +26,7 @@ const config: Config.InitialOptions = { '^.+\\.(js|jsx)$': 'babel-jest', }, transformIgnorePatterns: [ - 'node_modules/(?!(lodash-es|react-dnd|core-dnd|@react-dnd|dnd-core|react-dnd-html5-backend|axios|@signozhq/design-tokens|@signozhq/calendar|@signozhq/input|@signozhq/popover|@signozhq/button|date-fns|d3-interpolate|d3-color|api|@codemirror|@lezer|@marijn)/)', + 'node_modules/(?!(lodash-es|react-dnd|core-dnd|@react-dnd|dnd-core|react-dnd-html5-backend|axios|@signozhq/design-tokens|@signozhq/table|@signozhq/calendar|@signozhq/input|@signozhq/popover|@signozhq/button|@signozhq/sonner|@signozhq/*|date-fns|d3-interpolate|d3-color|api|@codemirror|@lezer|@marijn)/)', ], setupFilesAfterEnv: ['jest.setup.ts'], testPathIgnorePatterns: ['/node_modules/', '/public/'], diff --git a/frontend/package.json b/frontend/package.json index 23ce15c06294..f9694175297e 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -48,6 +48,8 @@ "@signozhq/design-tokens": "1.1.4", "@signozhq/input": "0.0.2", "@signozhq/popover": "0.0.0", + "@signozhq/sonner": "0.1.0", + "@signozhq/table": "0.3.4", "@tanstack/react-table": "8.20.6", "@tanstack/react-virtual": "3.11.2", "@uiw/codemirror-theme-copilot": "4.23.11", diff --git a/frontend/src/components/LogDetail/index.tsx b/frontend/src/components/LogDetail/index.tsx index 8e894cf21836..23a50ca3d75c 100644 --- a/frontend/src/components/LogDetail/index.tsx +++ b/frontend/src/components/LogDetail/index.tsx @@ -23,6 +23,7 @@ import { } from 'container/LogDetailedView/utils'; import useInitialQuery from 'container/LogsExplorerContext/useInitialQuery'; import { useOptionsMenu } from 'container/OptionsMenu'; +import { useCopyLogLink } from 'hooks/logs/useCopyLogLink'; import { useQueryBuilder } from 'hooks/queryBuilder/useQueryBuilder'; import { useIsDarkMode } from 'hooks/useDarkMode'; import { useNotifications } from 'hooks/useNotifications'; @@ -94,6 +95,8 @@ function LogDetailInner({ const { notifications } = useNotifications(); + const { onLogCopy } = useCopyLogLink(log?.id); + const LogJsonData = log ? aggregateAttributesResourcesToString(log) : ''; const handleModeChange = (e: RadioChangeEvent): void => { @@ -333,6 +336,14 @@ function LogDetailInner({ onClick={handleFilterVisible} /> )} + + +