From 628766e3ad722fa5db57ed7b6ee066102d429a30 Mon Sep 17 00:00:00 2001 From: Laurent Bonnet Date: Thu, 4 Apr 2024 16:04:47 +0200 Subject: [PATCH] [frontend] move trash page to root menu level --- .../opencti-front/src/private/Index.tsx | 2 ++ .../src/private/components/data/Root.jsx | 6 ----- .../src/private/components/nav/LeftBar.jsx | 22 +++++++++++++++++- .../src/private/components/trash/Root.tsx | 23 +++++++++++++++++++ .../components/{data => trash}/Trash.tsx | 10 ++++---- .../all}/DeleteOperationLine.tsx | 0 .../all}/DeleteOperationPopover.tsx | 2 +- .../all}/DeleteOperationsLines.tsx | 2 +- 8 files changed, 53 insertions(+), 14 deletions(-) create mode 100644 opencti-platform/opencti-front/src/private/components/trash/Root.tsx rename opencti-platform/opencti-front/src/private/components/{data => trash}/Trash.tsx (92%) rename opencti-platform/opencti-front/src/private/components/{data/trash => trash/all}/DeleteOperationLine.tsx (100%) rename opencti-platform/opencti-front/src/private/components/{data/trash => trash/all}/DeleteOperationPopover.tsx (98%) rename opencti-platform/opencti-front/src/private/components/{data/trash => trash/all}/DeleteOperationsLines.tsx (98%) diff --git a/opencti-platform/opencti-front/src/private/Index.tsx b/opencti-platform/opencti-front/src/private/Index.tsx index 1cd8f80ee41ae..e885456179835 100644 --- a/opencti-platform/opencti-front/src/private/Index.tsx +++ b/opencti-platform/opencti-front/src/private/Index.tsx @@ -30,6 +30,7 @@ const RootTechnique = lazy(() => import('./components/techniques/Root')); const RootEntities = lazy(() => import('./components/entities/Root')); const RootLocation = lazy(() => import('./components/locations/Root')); const RootData = lazy(() => import('./components/data/Root')); +const RootTrash = lazy(() => import('./components/trash/Root')); const RootWorkspaces = lazy(() => import('./components/workspaces/Root')); const RootSettings = lazy(() => import('./components/settings/Root')); const RootActivity = lazy(() => import('./components/settings/activity/Root')); @@ -140,6 +141,7 @@ const Index = ({ settings }: IndexProps) => { component={RootLocation} /> + import('../../../utils/Security')); const Connectors = lazy(() => import('./Connectors')); const IngestionCsv = lazy(() => import('./IngestionCsv')); const Entities = lazy(() => import('./Entities')); -const Trash = lazy(() => import('./Trash')); const Relationships = lazy(() => import('./Relationships')); const Tasks = lazy(() => import('./Tasks')); const Taxii = lazy(() => import('./Taxii')); @@ -42,11 +41,6 @@ const Root = () => { path="/dashboard/data/relationships" component={Relationships} /> - { [ { granted: isGrantedToKnowledge, link: '/dashboard/data/entities', label: 'Entities' }, { granted: isGrantedToKnowledge, link: '/dashboard/data/relationships', label: 'Relationships' }, - { granted: isGrantedToKnowledge, link: '/dashboard/data/trash', label: 'Trash' }, { granted: isGrantedToIngestion, link: '/dashboard/data/ingestion', label: 'Ingestion' }, { granted: isGrantedToImport, link: '/dashboard/data/import', label: 'Import' }, { granted: isGrantedToProcessing, link: '/dashboard/data/processing', label: 'Processing' }, @@ -816,6 +816,26 @@ const LeftBar = () => { ], )} + {/* TODO: check */} + + + + + + {navOpen && ( + + )} + + diff --git a/opencti-platform/opencti-front/src/private/components/trash/Root.tsx b/opencti-platform/opencti-front/src/private/components/trash/Root.tsx new file mode 100644 index 0000000000000..282f877419c11 --- /dev/null +++ b/opencti-platform/opencti-front/src/private/components/trash/Root.tsx @@ -0,0 +1,23 @@ +import React, { Suspense, lazy } from 'react'; +import { Switch } from 'react-router-dom'; +import { BoundaryRoute } from '../Error'; +import Loader from '../../../components/Loader'; + +const Trash = lazy(() => import('./Trash')); + +const Root = () => { + // TODO: check + return ( + }> + + + + + ); +}; + +export default Root; diff --git a/opencti-platform/opencti-front/src/private/components/data/Trash.tsx b/opencti-platform/opencti-front/src/private/components/trash/Trash.tsx similarity index 92% rename from opencti-platform/opencti-front/src/private/components/data/Trash.tsx rename to opencti-platform/opencti-front/src/private/components/trash/Trash.tsx index ae131c44689a6..85a997b66d4df 100644 --- a/opencti-platform/opencti-front/src/private/components/data/Trash.tsx +++ b/opencti-platform/opencti-front/src/private/components/trash/Trash.tsx @@ -1,6 +1,6 @@ import React from 'react'; -import DeleteOperationsLines, { deleteOperationsLinesQuery } from '@components/data/trash/DeleteOperationsLines'; -import { DeleteOperationLineDummy } from '@components/data/trash/DeleteOperationLine'; +import DeleteOperationsLines, { deleteOperationsLinesQuery } from '@components/trash/all/DeleteOperationsLines'; +import { DeleteOperationLineDummy } from '@components/trash/all/DeleteOperationLine'; import ListLines from '../../../components/list_lines/ListLines'; import ExportContextProvider from '../../../utils/ExportContextProvider'; import { usePaginationLocalStorage } from '../../../utils/hooks/useLocalStorage'; @@ -8,7 +8,7 @@ import useQueryLoading from '../../../utils/hooks/useQueryLoading'; import { emptyFilterGroup } from '../../../utils/filters/filtersUtils'; import { useFormatter } from '../../../components/i18n'; import Breadcrumbs from '../../../components/Breadcrumbs'; -import type { DeleteOperationsLinesPaginationQuery, DeleteOperationsLinesPaginationQuery$variables } from './trash/__generated__/DeleteOperationsLinesPaginationQuery.graphql'; +import type { DeleteOperationsLinesPaginationQuery, DeleteOperationsLinesPaginationQuery$variables } from './all/__generated__/DeleteOperationsLinesPaginationQuery.graphql'; import { DataColumns } from '../../../components/list_lines'; const LOCAL_STORAGE_KEY = 'trash'; @@ -45,12 +45,12 @@ const Trash: React.FC = () => { const renderLines = () => { const dataColumns: DataColumns = { main_entity_type: { - label: 'Type', + label: 'Element Type', width: '12.5%', isSortable: false, }, main_entity_name: { - label: 'Name', + label: 'Representation', width: '37.5%', isSortable: false, }, diff --git a/opencti-platform/opencti-front/src/private/components/data/trash/DeleteOperationLine.tsx b/opencti-platform/opencti-front/src/private/components/trash/all/DeleteOperationLine.tsx similarity index 100% rename from opencti-platform/opencti-front/src/private/components/data/trash/DeleteOperationLine.tsx rename to opencti-platform/opencti-front/src/private/components/trash/all/DeleteOperationLine.tsx diff --git a/opencti-platform/opencti-front/src/private/components/data/trash/DeleteOperationPopover.tsx b/opencti-platform/opencti-front/src/private/components/trash/all/DeleteOperationPopover.tsx similarity index 98% rename from opencti-platform/opencti-front/src/private/components/data/trash/DeleteOperationPopover.tsx rename to opencti-platform/opencti-front/src/private/components/trash/all/DeleteOperationPopover.tsx index 7314cfc6f8e60..7e204ee3da3aa 100644 --- a/opencti-platform/opencti-front/src/private/components/data/trash/DeleteOperationPopover.tsx +++ b/opencti-platform/opencti-front/src/private/components/trash/all/DeleteOperationPopover.tsx @@ -10,7 +10,7 @@ import MoreVert from '@mui/icons-material/MoreVert'; import { graphql, useMutation } from 'react-relay'; import { PopoverProps } from '@mui/material/Popover'; import IconButton from '@mui/material/IconButton'; -import { DeleteOperationsLinesPaginationQuery$variables } from '@components/data/trash/__generated__/DeleteOperationsLinesPaginationQuery.graphql'; +import { DeleteOperationsLinesPaginationQuery$variables } from './__generated__/DeleteOperationsLinesPaginationQuery.graphql'; import { useFormatter } from '../../../../components/i18n'; import Transition from '../../../../components/Transition'; import useDeletion from '../../../../utils/hooks/useDeletion'; diff --git a/opencti-platform/opencti-front/src/private/components/data/trash/DeleteOperationsLines.tsx b/opencti-platform/opencti-front/src/private/components/trash/all/DeleteOperationsLines.tsx similarity index 98% rename from opencti-platform/opencti-front/src/private/components/data/trash/DeleteOperationsLines.tsx rename to opencti-platform/opencti-front/src/private/components/trash/all/DeleteOperationsLines.tsx index aac47f58b0abe..e6326ea2d3387 100644 --- a/opencti-platform/opencti-front/src/private/components/data/trash/DeleteOperationsLines.tsx +++ b/opencti-platform/opencti-front/src/private/components/trash/all/DeleteOperationsLines.tsx @@ -1,6 +1,6 @@ import React, { FunctionComponent } from 'react'; import { graphql, PreloadedQuery } from 'react-relay'; -import { DeleteOperationLine, DeleteOperationLineDummy } from '@components/data/trash/DeleteOperationLine'; +import { DeleteOperationLine, DeleteOperationLineDummy } from '@components/trash/all/DeleteOperationLine'; import type { DeleteOperationsLines_data$key } from './__generated__/DeleteOperationsLines_data.graphql'; import type { DeleteOperationsLinesPaginationQuery, DeleteOperationsLinesPaginationQuery$variables } from './__generated__/DeleteOperationsLinesPaginationQuery.graphql'; import ListLinesContent from '../../../../components/list_lines/ListLinesContent';