diff --git a/frontend/app/components/Client/Integrations/Integrations.tsx b/frontend/app/components/Client/Integrations/Integrations.tsx index 65c0ed6e7..e81a7038a 100644 --- a/frontend/app/components/Client/Integrations/Integrations.tsx +++ b/frontend/app/components/Client/Integrations/Integrations.tsx @@ -117,15 +117,7 @@ function Integrations(props: Props) {
0 ? 'p-2' : ''} - grid-cols-1 // default to 1 column - sm:grid-cols-1 // 1 column on small screens and up - md:grid-cols-2 // 2 columns on medium screens and up - lg:grid-cols-3 // 3 columns on large screens and up - xl:grid-cols-3 // 3 columns on extra-large screens + mt-4 grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-3 `)}> {allIntegrations.map((integration: any) => ( -
+

Modules

  • OpenReplay's modules are a collection of advanced features that provide enhanced functionality.
  • @@ -54,7 +54,7 @@ function Modules(props: Props) {
-
+
{modulesState.map((module) => (
diff --git a/frontend/app/components/Dashboard/Widgets/CardSessionsByList.tsx b/frontend/app/components/Dashboard/Widgets/CardSessionsByList.tsx index 63f296cb0..262916873 100644 --- a/frontend/app/components/Dashboard/Widgets/CardSessionsByList.tsx +++ b/frontend/app/components/Dashboard/Widgets/CardSessionsByList.tsx @@ -1,5 +1,5 @@ import React from 'react'; -import {List, Progress, Typography} from "antd"; +import { List, Progress, Typography } from "antd"; import cn from "classnames"; interface Props { @@ -8,7 +8,7 @@ interface Props { onClickHandler: (event: any, data: any) => void; } -function CardSessionsByList({list, selected, onClickHandler}: Props) { +function CardSessionsByList({ list, selected, onClickHandler }: Props) { return ( ( onClickHandler(e, row)} + onClick={(e) => onClickHandler(e, row)} // Remove onClick handler to disable click interaction style={{ borderBottom: '1px dotted rgba(0, 0, 0, 0.05)', padding: '4px 10px', lineHeight: '1px' }} - className={cn('rounded hover:bg-active-blue cursor-pointer', selected === row.name ? 'bg-active-blue' : '')} + className={cn('rounded', selected === row.name ? 'bg-active-blue' : '')} // Remove hover:bg-active-blue and cursor-pointer >
- {row.name} + {row.name} {row.sessionCount}
diff --git a/frontend/app/components/Dashboard/components/DashboardList/DashboardList.tsx b/frontend/app/components/Dashboard/components/DashboardList/DashboardList.tsx index 442ce6790..77350083e 100644 --- a/frontend/app/components/Dashboard/components/DashboardList/DashboardList.tsx +++ b/frontend/app/components/Dashboard/components/DashboardList/DashboardList.tsx @@ -74,46 +74,22 @@ function DashboardList({siteId}: { siteId: string }) { return ( list.length === 0 && !dashboardStore.filter.showMine ? ( } + image={} + imageStyle={{height: 300}} description={(
- {dashboardsSearch !== '' - ? - No matching results +
+ + Create your first dashboard. - : ( -
- - Create your first dashboard. - - {/*
- A Dashboard is a collection of{' '} - - Utilize cards to visualize key user interactions or product - performance metrics. -
- } - className="text-center" - > - cards - {' '} - that can be shared across teams. -
*/} - -
-
- Organize your product and technical insights as cards in dashboards to see the bigger picture,
take action and improve user experience. -
-
- -
- -
-
- )} +
+ Organize your product and technical insights as cards in dashboards to see the bigger picture,
take action and improve user experience. +
+
+ +
+
)} /> @@ -138,6 +114,7 @@ function DashboardList({siteId}: { siteId: string }) { })} />) ); + } export default connect((state: any) => ({ diff --git a/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/CreateCard.tsx b/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/CreateCard.tsx index df4d8a3fb..22ac90d79 100644 --- a/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/CreateCard.tsx +++ b/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/CreateCard.tsx @@ -83,7 +83,7 @@ function CreateCard(props: Props) { -
+
{metric.name}
@@ -94,7 +94,7 @@ function CreateCard(props: Props) {
- +
); } diff --git a/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/ExampleCards.tsx b/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/ExampleCards.tsx index 618a31ab4..58e36baeb 100644 --- a/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/ExampleCards.tsx +++ b/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/ExampleCards.tsx @@ -13,6 +13,7 @@ import ByUrl from "./Examples/SessionsBy/ByUrl"; import {ERRORS, FUNNEL, PERFORMANCE, TABLE, TIMESERIES, USER_PATH, WEB_VITALS} from "App/constants/card"; import {FilterKey} from "Types/filter/filterType"; import {Activity, BarChart, TableCellsMerge, TrendingUp} from "lucide-react"; +import { size } from "@floating-ui/react-dom-interactions"; const TYPE = { FUNNEL: 'funnel', @@ -31,7 +32,7 @@ const TYPE = { export const CARD_CATEGORIES = [ { - key: 'product-analytics', label: 'Product Analytics', icon: TrendingUp, types: [USER_PATH, ERRORS] + key: 'product-analytics', label: 'Product Analytics', icon: TrendingUp, size:32, types: [USER_PATH, ERRORS] }, {key: 'performance-monitoring', label: 'Performance Monitoring', icon: Activity, types: [TIMESERIES]}, {key: 'web-analytics', label: 'Web Analytics', icon: BarChart, types: [TABLE]}, diff --git a/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/Examples/Count.tsx b/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/Examples/Count.tsx index 1f21a6c9a..044824ab0 100644 --- a/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/Examples/Count.tsx +++ b/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/Examples/Count.tsx @@ -9,6 +9,7 @@ import { import React from 'react'; import ExCard from './ExCard'; +import { size } from '@floating-ui/react-dom-interactions'; const TYPES = { Frustrations: 'frustrations', @@ -37,6 +38,7 @@ function ExampleCount(props: any) { { label: 'Errors', value: '1' }, { label: 'Users', value: '2' }, ]} + size='small' onChange={(v) => setType(v)} />
diff --git a/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/Examples/ExCard.tsx b/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/Examples/ExCard.tsx index 92a7db1f4..c36729632 100644 --- a/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/Examples/ExCard.tsx +++ b/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/Examples/ExCard.tsx @@ -13,10 +13,10 @@ function ExCard({ }) { return (
-
{title}
+
{title}
onCard(type)}>{children}
); diff --git a/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/Examples/SessionsBy/ByUrl.tsx b/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/Examples/SessionsBy/ByUrl.tsx index 1b2de44e2..b6d35ef76 100644 --- a/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/Examples/SessionsBy/ByUrl.tsx +++ b/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/Examples/SessionsBy/ByUrl.tsx @@ -58,6 +58,7 @@ function ByUrl(props: any) { { label: 'Page Title', value: '1' }, ]} onChange={(v) => setMode(Number(v))} + size='small' />
diff --git a/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/Examples/Trend.tsx b/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/Examples/Trend.tsx index 5de714619..1e2cb8770 100644 --- a/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/Examples/Trend.tsx +++ b/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/Examples/Trend.tsx @@ -23,6 +23,7 @@ function ExampleTrend(props: any) { { label: 'Multi-Series', value: 'multi' }, ]} onChange={(v) => setIsMulti(v === 'multi')} + size='small' />
@@ -78,14 +79,14 @@ function ExampleTrend(props: any) { ) : null} -
+
-
CTA 1
+
Series 1
-
CTA 2
+
Series 2
diff --git a/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/NewDashboardModal.tsx b/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/NewDashboardModal.tsx index ae48e05af..79b26d019 100644 --- a/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/NewDashboardModal.tsx +++ b/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/NewDashboardModal.tsx @@ -25,7 +25,15 @@ const NewDashboardModal: React.FC = ({ return ( <> - +
{step === 0 && = (props: SelectCardProps) => { {/*/>*/} -
+
{dashboardId ? (isLibrary ? "Add Card" : "Create Card") : "Select a template to create a card"}
{isLibrary && ( @@ -124,6 +124,7 @@ const CategorySelector: React.FC = ({setSelected, selecte }))} value={selected} onChange={setSelected} + className='w-fit' /> ); @@ -134,7 +135,7 @@ interface ExampleCardsGridProps { const ExampleCardsGrid: React.FC = ({items}) => (
{items}
diff --git a/frontend/app/components/Dashboard/components/DashboardSelectionModal/DashboardSelectionModal.tsx b/frontend/app/components/Dashboard/components/DashboardSelectionModal/DashboardSelectionModal.tsx index 2ff69a334..1a1db124d 100644 --- a/frontend/app/components/Dashboard/components/DashboardSelectionModal/DashboardSelectionModal.tsx +++ b/frontend/app/components/Dashboard/components/DashboardSelectionModal/DashboardSelectionModal.tsx @@ -1,6 +1,7 @@ import {useObserver} from 'mobx-react-lite'; import React from 'react'; import {Button, Modal, Form, Icon} from 'UI'; + import {useStore} from 'App/mstore' import Select from 'Shared/Select'; @@ -44,7 +45,7 @@ function DashboardSelectionModal(props: Props) { return useObserver(() => ( -
{'Add to selected dashboard'}
+
{'Add to selected dashboard'}
Add diff --git a/frontend/app/components/Dashboard/components/DashboardView/DashboardView.module.css b/frontend/app/components/Dashboard/components/DashboardView/DashboardView.module.css index 42045607f..cda44bd57 100644 --- a/frontend/app/components/Dashboard/components/DashboardView/DashboardView.module.css +++ b/frontend/app/components/Dashboard/components/DashboardView/DashboardView.module.css @@ -2,4 +2,4 @@ & > tippy-popper > tippy-tooltip { padding: 0!important; } -} +} \ No newline at end of file diff --git a/frontend/app/components/Dashboard/components/FilterSeries/AddStepButton.tsx b/frontend/app/components/Dashboard/components/FilterSeries/AddStepButton.tsx index 7879ff095..cc3c08f92 100644 --- a/frontend/app/components/Dashboard/components/FilterSeries/AddStepButton.tsx +++ b/frontend/app/components/Dashboard/components/FilterSeries/AddStepButton.tsx @@ -23,7 +23,7 @@ function AddStepButton({series, excludeFilterKeys}: Props) { onFilterClick={onAddFilter} excludeFilterKeys={excludeFilterKeys} > - diff --git a/frontend/app/components/Dashboard/components/FilterSeries/FilterSeries.tsx b/frontend/app/components/Dashboard/components/FilterSeries/FilterSeries.tsx index 36eb148f3..aa21ecea8 100644 --- a/frontend/app/components/Dashboard/components/FilterSeries/FilterSeries.tsx +++ b/frontend/app/components/Dashboard/components/FilterSeries/FilterSeries.tsx @@ -115,7 +115,7 @@ function FilterSeries(props: Props) { }; return ( -
+
{canExclude && } {!hideHeader && ( diff --git a/frontend/app/components/Dashboard/components/Funnels/FunnelIssues/FunnelIssues.tsx b/frontend/app/components/Dashboard/components/Funnels/FunnelIssues/FunnelIssues.tsx index da3c83c3f..e0513d416 100644 --- a/frontend/app/components/Dashboard/components/Funnels/FunnelIssues/FunnelIssues.tsx +++ b/frontend/app/components/Dashboard/components/Funnels/FunnelIssues/FunnelIssues.tsx @@ -59,7 +59,7 @@ function FunnelIssues() { return useObserver(() => (
-

Most significant issues identified in this funnel

+

Most significant issues identified in this funnel

diff --git a/frontend/app/components/Dashboard/components/WidgetForm/CardBuilder.tsx b/frontend/app/components/Dashboard/components/WidgetForm/CardBuilder.tsx index 10778d064..867cb03c3 100644 --- a/frontend/app/components/Dashboard/components/WidgetForm/CardBuilder.tsx +++ b/frontend/app/components/Dashboard/components/WidgetForm/CardBuilder.tsx @@ -184,12 +184,13 @@ const SeriesList = observer(() => {
))} {hasSeries && ( - +