diff --git a/frontend/app/components/Client/CustomFields/CustomFields.tsx b/frontend/app/components/Client/CustomFields/CustomFields.tsx
index 7effb17cc..98844e9a5 100644
--- a/frontend/app/components/Client/CustomFields/CustomFields.tsx
+++ b/frontend/app/components/Client/CustomFields/CustomFields.tsx
@@ -1,5 +1,4 @@
import React, { useEffect, useState } from 'react';
-import { NoContent } from 'UI';
import CustomFieldForm from './CustomFieldForm';
import AnimatedSVG, { ICONS } from 'Shared/AnimatedSVG/AnimatedSVG';
import { useModal } from 'App/components/Modal';
@@ -8,6 +7,7 @@ import { observer } from 'mobx-react-lite';
import { List, Space, Typography, Button, Tooltip } from 'antd';
import { PencilIcon, PlusIcon, Tags } from 'lucide-react';
import usePageTitle from '@/hooks/usePageTitle';
+import { Empty } from '.store/antd-virtual-7db13b4af6/package';
const CustomFields = () => {
usePageTitle('Metadata - OpenReplay Preferences');
@@ -59,36 +59,26 @@ const CustomFields = () => {
-
-
-
- None added yet
-
- }
- size="small"
- show={fields.length === 0}
- >
- (
- handleInit(field)}
- className="cursor-pointer group hover:bg-active-blue !px-4"
- actions={[
- } />
- ]}
- >
- }
- />
-
- )} />
-
+
} />
+ }}
+ loading={loading}
+ dataSource={fields}
+ renderItem={(field: any) => (
+ handleInit(field)}
+ className="cursor-pointer group hover:bg-active-blue !px-4"
+ actions={[
+ } />
+ ]}
+ >
+ }
+ />
+
+ )} />
);
};
diff --git a/frontend/app/components/Client/Projects/ProjectList.tsx b/frontend/app/components/Client/Projects/ProjectList.tsx
index 5de3166f1..37de225c8 100644
--- a/frontend/app/components/Client/Projects/ProjectList.tsx
+++ b/frontend/app/components/Client/Projects/ProjectList.tsx
@@ -1,5 +1,5 @@
import React from 'react';
-import { Avatar, Input, Menu, List, Typography } from 'antd';
+import { Avatar, Input, Menu, Progress } from 'antd';
import { useStore } from '@/mstore';
import Project from '@/mstore/types/project';
import { observer } from 'mobx-react-lite';
@@ -21,30 +21,65 @@ function ProjectList() {
return (
-
+
setSearch('')}
allowClear
- // className="m-4"
/>
-
);
}
export default observer(ProjectList);
+
+
+const ProjectIconWithProgress: React.FC<{
+ platform: string; progress: number
+}> = ({ platform, progress }) => {
+ return (
+
+
+ );
+};
diff --git a/frontend/app/components/Client/Projects/ProjectTags.tsx b/frontend/app/components/Client/Projects/ProjectTags.tsx
index f5a29f387..4d59a3ceb 100644
--- a/frontend/app/components/Client/Projects/ProjectTags.tsx
+++ b/frontend/app/components/Client/Projects/ProjectTags.tsx
@@ -1,10 +1,11 @@
import React, { useEffect } from 'react';
import { useStore } from '@/mstore';
-import { List, Button, Typography, Space } from 'antd';
+import { List, Button, Typography, Space, Empty } from 'antd';
import { observer } from 'mobx-react-lite';
import { PencilIcon, ScanSearch } from 'lucide-react';
import { useModal } from 'Components/ModalContext';
import TagForm from 'Components/Client/Projects/TagForm';
+import AnimatedSVG, { ICONS } from 'Shared/AnimatedSVG/AnimatedSVG';
function ProjectTags() {
const { tagWatchStore, projectsStore } = useStore();
@@ -36,6 +37,9 @@ function ProjectTags() {
} />
+ }}
loading={tagWatchStore.isLoading}
dataSource={list}
renderItem={(item) => (
diff --git a/frontend/app/components/Client/Projects/Projects.tsx b/frontend/app/components/Client/Projects/Projects.tsx
index 6f1ba03f3..89644f354 100644
--- a/frontend/app/components/Client/Projects/Projects.tsx
+++ b/frontend/app/components/Client/Projects/Projects.tsx
@@ -58,7 +58,8 @@ function Projects() {
]}
>
-
+
diff --git a/frontend/app/layout/SideMenu.tsx b/frontend/app/layout/SideMenu.tsx
index afe132432..901da31f1 100644
--- a/frontend/app/layout/SideMenu.tsx
+++ b/frontend/app/layout/SideMenu.tsx
@@ -9,11 +9,7 @@ import * as routes from 'App/routes';
import {
CLIENT_DEFAULT_TAB,
CLIENT_TABS,
- bookmarks,
client,
- fflags,
- notes,
- sessions,
withSiteId
} from 'App/routes';
import { MODULES } from 'Components/Client/Modules';
@@ -33,13 +29,6 @@ import { useStore } from 'App/mstore';
const { Text } = Typography;
-const TabToUrlMap = {
- all: sessions() as '/sessions',
- bookmark: bookmarks() as '/bookmarks',
- notes: notes() as '/notes',
- flags: fflags() as '/feature-flags'
-};
-
interface Props extends RouteComponentProps {
siteId?: string;
isCollapsed?: boolean;
@@ -135,16 +124,6 @@ function SideMenu(props: Props) {
});
}, [isAdmin, isEnterprise, isPreferencesActive, modules, spotOnly, siteId]);
- React.useEffect(() => {
- const currentLocation = location.pathname;
- // const tab = Object.keys(TabToUrlMap).find((tab: keyof typeof TabToUrlMap) =>
- // currentLocation.includes(TabToUrlMap[tab])
- // );
- // if (tab && tab !== searchStore.activeTab && siteId) {
- // searchStore.setActiveTab({ type: tab });
- // }
- }, [location.pathname]);
-
const menuRoutes: any = {
[MENU.EXIT]: () =>
props.history.push(withSiteId(routes.sessions(), siteId)),
@@ -164,7 +143,6 @@ function SideMenu(props: Props) {
[PREFERENCES_MENU.SESSION_LISTING]: () =>
client(CLIENT_TABS.SESSIONS_LISTING),
[PREFERENCES_MENU.INTEGRATIONS]: () => client(CLIENT_TABS.INTEGRATIONS),
- [PREFERENCES_MENU.METADATA]: () => client(CLIENT_TABS.CUSTOM_FIELDS),
[PREFERENCES_MENU.WEBHOOKS]: () => client(CLIENT_TABS.WEBHOOKS),
[PREFERENCES_MENU.PROJECTS]: () => client(CLIENT_TABS.SITES),
[PREFERENCES_MENU.ROLES_ACCESS]: () => client(CLIENT_TABS.MANAGE_ROLES),
diff --git a/frontend/app/layout/data.ts b/frontend/app/layout/data.ts
index c17c51bc9..7a1c92302 100644
--- a/frontend/app/layout/data.ts
+++ b/frontend/app/layout/data.ts
@@ -24,7 +24,6 @@ export const enum PREFERENCES_MENU {
ACCOUNT = 'account',
SESSION_LISTING = 'session-listing',
INTEGRATIONS = 'integrations',
- METADATA = 'metadata',
WEBHOOKS = 'webhooks',
MODULES = 'modules',
PROJECTS = 'projects',
@@ -131,7 +130,6 @@ export const preferences: Category[] = [
{ label: 'Account', key: PREFERENCES_MENU.ACCOUNT, icon: 'person' },
{ label: 'Sessions Listing', key: PREFERENCES_MENU.SESSION_LISTING, icon: 'card-list' },
{ label: 'Integrations', key: PREFERENCES_MENU.INTEGRATIONS, icon: 'plug' },
- { label: 'Metadata', key: PREFERENCES_MENU.METADATA, icon: 'tags' },
{ label: 'Webhooks', key: PREFERENCES_MENU.WEBHOOKS, icon: 'link-45deg' },
{ label: 'Modules', key: PREFERENCES_MENU.MODULES, icon: 'puzzle' },
{ label: 'Projects', key: PREFERENCES_MENU.PROJECTS, icon: 'folder2' },
@@ -159,4 +157,4 @@ export const spotOnlyCats = [
MENU.PREFERENCES,
MENU.SUPPORT,
MENU.SPOTS,
-]
\ No newline at end of file
+]