{rows.map((r) => (
diff --git a/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/Examples/SessionsBy/ByBrowser.tsx b/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/Examples/SessionsBy/ByBrowser.tsx
new file mode 100644
index 000000000..2416c7768
--- /dev/null
+++ b/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/Examples/SessionsBy/ByBrowser.tsx
@@ -0,0 +1,54 @@
+import React from 'react';
+
+import { Icon } from 'UI';
+
+import ExCard from '../ExCard';
+import ByComponent from './Component';
+
+function ByBrowser({ onCard }: { onCard: (card: string) => void }) {
+ const rows = [
+ {
+ label: 'Chrome',
+ progress: 85,
+ value: '2.5K',
+ icon:
,
+ },
+ {
+ label: 'Edge',
+ progress: 25,
+ value: '405',
+ icon:
,
+ },
+ {
+ label: 'Safari',
+ progress: 5,
+ value: '302',
+ icon:
,
+ },
+ {
+ label: 'Firefox',
+ progress: 3,
+ value: '194',
+ icon:
,
+ },
+ {
+ label: 'Opera',
+ progress: 1,
+ value: '57',
+ icon:
,
+ },
+ ];
+
+ const lineWidth = 200;
+ return (
+
+ );
+}
+
+export default ByBrowser;
diff --git a/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/Examples/SessionsBy/ByCountry.tsx b/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/Examples/SessionsBy/ByCountry.tsx
new file mode 100644
index 000000000..920258f6e
--- /dev/null
+++ b/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/Examples/SessionsBy/ByCountry.tsx
@@ -0,0 +1,52 @@
+import React from 'react';
+
+import { Icon } from 'UI';
+
+import ByComponent from './Component';
+
+function ByCountry({ onCard }: { onCard: (card: string) => void }) {
+ const rows = [
+ {
+ label: 'United States',
+ progress: 70,
+ value: '165K',
+ icon:
,
+ },
+ {
+ label: 'India',
+ progress: 25,
+ value: '100K',
+ icon:
,
+ },
+ {
+ label: 'United Kingdom',
+ progress: 10,
+ value: '50K',
+ icon:
,
+ },
+ {
+ label: 'France',
+ progress: 7,
+ value: '30K',
+ icon:
,
+ },
+ {
+ label: 'Germany',
+ progress: 4,
+ value: '20K',
+ icon:
,
+ },
+ ];
+
+ return (
+
+ );
+}
+
+export default ByCountry;
diff --git a/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/Examples/SessionsBy/BySystem.tsx b/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/Examples/SessionsBy/BySystem.tsx
new file mode 100644
index 000000000..5700d568f
--- /dev/null
+++ b/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/Examples/SessionsBy/BySystem.tsx
@@ -0,0 +1,53 @@
+import React from 'react';
+
+import { Icon } from 'UI';
+
+import ByComponent from './Component';
+
+function BySystem({ onCard }: { onCard: (card: string) => void }) {
+ const rows = [
+ {
+ label: 'Windows',
+ progress: 75,
+ value: '2.5K',
+ icon:
,
+ },
+ {
+ label: 'MacOS',
+ progress: 25,
+ value: '405',
+ icon:
,
+ },
+ {
+ label: 'Ubuntu',
+ progress: 10,
+ value: '302',
+ icon:
,
+ },
+ {
+ label: 'Fedora',
+ progress: 7,
+ value: '302',
+ icon:
,
+ },
+ {
+ label: 'Unknown',
+ progress: 4,
+ value: '194',
+ icon:
,
+ },
+ ];
+
+ const lineWidth = 200;
+ return (
+
+ );
+}
+
+export default BySystem;
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
new file mode 100644
index 000000000..f648beef9
--- /dev/null
+++ b/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/Examples/SessionsBy/ByUrl.tsx
@@ -0,0 +1,104 @@
+import { LinkOutlined } from '@ant-design/icons';
+import { Segmented } from 'antd';
+import React from 'react';
+
+import { Circle } from '../Count';
+import ExCard from '../ExCard';
+
+function ByUrl({ onCard }: { onCard: (card: string) => void }) {
+ const [mode, setMode] = React.useState(0);
+ const rows = [
+ {
+ label: '/category/womens/dresses',
+ ptitle: 'Dresses',
+ value: '500',
+ progress: 75,
+ icon:
,
+ },
+ {
+ label: '/search?q=summer+dresses',
+ ptitle: 'Search: summer dresses',
+ value: '306',
+ progress: 60,
+ icon:
,
+ },
+ {
+ label: '/account/orders',
+ ptitle: 'Account: Orders',
+ value: '198',
+ progress: 30,
+ icon:
,
+ },
+ {
+ label: '/checkout/confirmation',
+ ptitle: 'Checkout: Confirmation',
+ value: '47',
+ progress: 15,
+ icon:
,
+ },
+ {
+ label: '/checkout/payment',
+ ptitle: 'Checkout: Payment',
+ value: '5',
+ progress: 5,
+ icon:
,
+ },
+ ];
+
+ const lineWidth = 240;
+ return (
+
+ Sessions by
+ setMode(Number(v))}
+ />
+
+
+
+ );
+}
+
+export default ByUrl;
diff --git a/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/Examples/SessionsBy/Component.tsx b/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/Examples/SessionsBy/Component.tsx
new file mode 100644
index 000000000..45783145d
--- /dev/null
+++ b/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/Examples/SessionsBy/Component.tsx
@@ -0,0 +1,59 @@
+import ExCard from '../ExCard'
+import React from 'react'
+
+function ByComponent({ title, rows, lineWidth, onCard, type }: {
+ title: string
+ rows: {
+ label: string
+ progress: number
+ value: string
+ icon: React.ReactNode
+ }[]
+ onCard: (card: string) => void
+ type: string
+ lineWidth: number
+}) {
+ return (
+
+ )
+}
+
+export default ByComponent
\ No newline at end of file
diff --git a/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/Examples/SessionsByErrors.tsx b/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/Examples/SessionsByErrors.tsx
index fd8a9f776..e1fbe01ac 100644
--- a/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/Examples/SessionsByErrors.tsx
+++ b/frontend/app/components/Dashboard/components/DashboardList/NewDashModal/Examples/SessionsByErrors.tsx
@@ -2,9 +2,11 @@ import React from 'react'
import ExCard from "./ExCard";
import { Errors } from "./Count";
-function SessionsByErrors() {
+function SessionsByErrors({ onCard }: { onCard: (card: string) => void }) {
return (