From ff812fe183d1957fde549d1c960aeed0351d4e33 Mon Sep 17 00:00:00 2001 From: cp3hnu Date: Thu, 18 Jul 2024 15:13:41 +0800 Subject: [PATCH] =?UTF-8?q?feat:=20=E6=95=B4=E7=90=86=E8=B7=AF=E7=94=B1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- react-ui/config/routes.ts | 7 +-- .../src/components/KFBreadcrumb/index.tsx | 54 +------------------ .../Pipeline/{editPipeline => Info}/index.jsx | 7 ++- .../{editPipeline => Info}/index.less | 0 .../Pipeline/{editPipeline => Info}/utils.tsx | 0 .../PipelineNodeDrawer/index.less} | 0 .../PipelineNodeDrawer/index.tsx} | 8 +-- react-ui/src/pages/User/Login/login.less | 2 + react-ui/src/services/session.ts | 11 ++-- react-ui/src/utils/localStorage.ts | 25 +++++++++ react-ui/src/utils/sessionStorage.ts | 2 +- 11 files changed, 42 insertions(+), 74 deletions(-) rename react-ui/src/pages/Pipeline/{editPipeline => Info}/index.jsx (99%) rename react-ui/src/pages/Pipeline/{editPipeline => Info}/index.less (100%) rename react-ui/src/pages/Pipeline/{editPipeline => Info}/utils.tsx (100%) rename react-ui/src/pages/Pipeline/{editPipeline/props.less => components/PipelineNodeDrawer/index.less} (100%) rename react-ui/src/pages/Pipeline/{editPipeline/props.tsx => components/PipelineNodeDrawer/index.tsx} (98%) diff --git a/react-ui/config/routes.ts b/react-ui/config/routes.ts index c6162f9..c93f43a 100644 --- a/react-ui/config/routes.ts +++ b/react-ui/config/routes.ts @@ -67,11 +67,6 @@ export default [ path: 'datasetAnnotation', component: './DatasetPreparation/DatasetAnnotation/index', }, - { - name: '训练', - path: 'pytorchtext/:id/:name', - component: './Pipeline/editPipeline/index', - }, ], }, { @@ -115,7 +110,7 @@ export default [ { name: '流水线详情', path: 'info/:id', - component: './Pipeline/editPipeline/index', + component: './Pipeline/Info/index', }, ], }, diff --git a/react-ui/src/components/KFBreadcrumb/index.tsx b/react-ui/src/components/KFBreadcrumb/index.tsx index 963be67..c632202 100644 --- a/react-ui/src/components/KFBreadcrumb/index.tsx +++ b/react-ui/src/components/KFBreadcrumb/index.tsx @@ -12,59 +12,7 @@ type Route = { key?: string; }; -const routes: Route[] = [ - { - name: 'pipeline', - path: '/pipeline', - breadcrumb: '流水线', - routes: [ - { - name: '流水线模板', - path: 'template', - breadcrumb: '流水线模板', - routes: [ - { - name: '流水线模板', - path: '', - component: './Pipeline/index', - breadcrumb: '流水线模板', - }, - { - name: '流水线详情', - path: ':id', - component: './Pipeline/editPipeline/index', - breadcrumb: '流水线详情', - }, - ], - }, - { - name: '实验', - path: 'experiment', - breadcrumb: '实验', - routes: [ - { - name: '实验', - path: '', - component: './Experiment/index', - breadcrumb: '实验', - }, - { - name: '实验训练', - path: ':workflowId/:id', - component: './Experiment/Info/index', - breadcrumb: '实验训练', - }, - { - name: '实验对比', - path: 'compare', - component: './Experiment/Comparison/index', - breadcrumb: '实验对比', - }, - ], - }, - ], - }, -]; +const routes: Route[] = []; const KFBreadcrumb = () => { const location = useLocation(); diff --git a/react-ui/src/pages/Pipeline/editPipeline/index.jsx b/react-ui/src/pages/Pipeline/Info/index.jsx similarity index 99% rename from react-ui/src/pages/Pipeline/editPipeline/index.jsx rename to react-ui/src/pages/Pipeline/Info/index.jsx index e7a7ea1..9af2c42 100644 --- a/react-ui/src/pages/Pipeline/editPipeline/index.jsx +++ b/react-ui/src/pages/Pipeline/Info/index.jsx @@ -2,17 +2,16 @@ import KFIcon from '@/components/KFIcon'; import { useStateRef, useVisible } from '@/hooks'; import { getWorkflowById, saveWorkflow } from '@/services/pipeline/index.js'; import themes from '@/styles/theme.less'; -import { fittingString } from '@/utils'; +import { fittingString, s8 } from '@/utils'; import { to } from '@/utils/promise'; import G6 from '@antv/g6'; +import { useNavigate, useParams } from '@umijs/max'; import { App, Button } from 'antd'; import { useEffect, useRef } from 'react'; -import { useNavigate, useParams } from 'react-router-dom'; -import { s8 } from '../../../utils'; import GlobalParamsDrawer from '../components/GlobalParamsDrawer'; import ModelMenu from '../components/ModelMenu'; +import Props from '../components/PipelineNodeDrawer'; import styles from './index.less'; -import Props from './props'; import { findAllParentNodes } from './utils'; let graph = null; diff --git a/react-ui/src/pages/Pipeline/editPipeline/index.less b/react-ui/src/pages/Pipeline/Info/index.less similarity index 100% rename from react-ui/src/pages/Pipeline/editPipeline/index.less rename to react-ui/src/pages/Pipeline/Info/index.less diff --git a/react-ui/src/pages/Pipeline/editPipeline/utils.tsx b/react-ui/src/pages/Pipeline/Info/utils.tsx similarity index 100% rename from react-ui/src/pages/Pipeline/editPipeline/utils.tsx rename to react-ui/src/pages/Pipeline/Info/utils.tsx diff --git a/react-ui/src/pages/Pipeline/editPipeline/props.less b/react-ui/src/pages/Pipeline/components/PipelineNodeDrawer/index.less similarity index 100% rename from react-ui/src/pages/Pipeline/editPipeline/props.less rename to react-ui/src/pages/Pipeline/components/PipelineNodeDrawer/index.less diff --git a/react-ui/src/pages/Pipeline/editPipeline/props.tsx b/react-ui/src/pages/Pipeline/components/PipelineNodeDrawer/index.tsx similarity index 98% rename from react-ui/src/pages/Pipeline/editPipeline/props.tsx rename to react-ui/src/pages/Pipeline/components/PipelineNodeDrawer/index.tsx index ba49c76..362fcc0 100644 --- a/react-ui/src/pages/Pipeline/editPipeline/props.tsx +++ b/react-ui/src/pages/Pipeline/components/PipelineNodeDrawer/index.tsx @@ -4,6 +4,7 @@ import ParameterSelect from '@/components/ParameterSelect'; import SubAreaTitle from '@/components/SubAreaTitle'; import { CommonTabKeys } from '@/enums'; import { useComputingResource } from '@/hooks/resource'; +import { canInput, createMenuItems } from '@/pages/Pipeline/Info/utils'; import { PipelineGlobalParam, PipelineNodeModel, @@ -16,13 +17,12 @@ import { INode } from '@antv/g6'; import { Button, Drawer, Form, Input, MenuProps, Select } from 'antd'; import { NamePath } from 'antd/es/form/interface'; import { forwardRef, useImperativeHandle, useState } from 'react'; -import PropsLabel from '../components/PropsLabel'; +import PropsLabel from '../PropsLabel'; import ResourceSelectorModal, { ResourceSelectorType, selectorTypeConfig, -} from '../components/ResourceSelectorModal'; -import styles from './props.less'; -import { canInput, createMenuItems } from './utils'; +} from '../ResourceSelectorModal'; +import styles from './index.less'; const { TextArea } = Input; type PipelineNodeParameterProps = { diff --git a/react-ui/src/pages/User/Login/login.less b/react-ui/src/pages/User/Login/login.less index 956cd6d..6ca332b 100644 --- a/react-ui/src/pages/User/Login/login.less +++ b/react-ui/src/pages/User/Login/login.less @@ -49,7 +49,9 @@ &__bottom-img { width: 100%; + height: calc(100% - 300px); margin-top: 50px; + object-fit: contain; } } diff --git a/react-ui/src/services/session.ts b/react-ui/src/services/session.ts index 8a0696b..a412f35 100644 --- a/react-ui/src/services/session.ts +++ b/react-ui/src/services/session.ts @@ -2,7 +2,7 @@ import { MenuDataItem } from '@ant-design/pro-components'; import { request } from '@umijs/max'; import React, { lazy } from 'react'; -let remoteMenu: any = null; +let remoteMenu: any = []; export function getRemoteMenu() { return remoteMenu; @@ -22,6 +22,7 @@ function patchRouteItems(route: any, menu: any, parentPath: string) { if (routeChild.path === menuItem.path) { hasItem = true; newItem = routeChild; + break; } } if (!hasItem) { @@ -42,7 +43,7 @@ function patchRouteItems(route: any, menu: any, parentPath: string) { path += '/'; } if (name !== 'index') { - path += name.at(0)?.toUpperCase() + name.substr(1); + path += name.at(0)?.toUpperCase() + name.substring(1); } else { path += name; } @@ -101,10 +102,8 @@ export function convertCompatRouters(childrens: API.RoutersMenuItem[]): any[] { return childrens.map((item: API.RoutersMenuItem) => { return { path: item.path, - // icon:'icon-a-057_fenlei', - icon: 'icon-' + item.meta.icon, - // icon: item.meta.icon, - name: item.meta.title, + icon: item.meta?.icon ? 'icon-' + item.meta.icon : undefined, + name: item.meta?.title, routes: item.children ? convertCompatRouters(item.children) : undefined, hideChildrenInMenu: item.hidden, hideInMenu: item.hidden, diff --git a/react-ui/src/utils/localStorage.ts b/react-ui/src/utils/localStorage.ts index b69f466..4b3d312 100644 --- a/react-ui/src/utils/localStorage.ts +++ b/react-ui/src/utils/localStorage.ts @@ -4,3 +4,28 @@ export const loginUserKey = 'login-user'; export const loginPasswordKey = 'login-password'; // 记住密码 export const rememberPasswordKey = 'login-remember-password'; + +export const getLocalStorageItem = (key: string, isObject: boolean = false) => { + const jsonStr = localStorage.getItem(key); + if (!isObject) { + return jsonStr; + } + if (jsonStr) { + try { + return JSON.parse(jsonStr); + } catch (error) { + return undefined; + } + } + return undefined; +}; + +export const setLocalStorageItem = (key: string, state?: any, isObject: boolean = false) => { + if (state) { + localStorage.setItem(key, isObject ? JSON.stringify(state) : state); + } +}; + +export const removeLocalStorageItem = (key: string) => { + localStorage.removeItem(key); +}; diff --git a/react-ui/src/utils/sessionStorage.ts b/react-ui/src/utils/sessionStorage.ts index a863207..00b2e31 100644 --- a/react-ui/src/utils/sessionStorage.ts +++ b/react-ui/src/utils/sessionStorage.ts @@ -3,7 +3,7 @@ export const mirrorNameKey = 'mirror-name'; // 模型部署 export const modelDeploymentInfoKey = 'model-deployment-info'; // 编辑器 url -export const editorUrl = 'editor-url'; +export const editorUrlKey = 'editor-url'; export const getSessionStorageItem = (key: string, isObject: boolean = false) => { const jsonStr = sessionStorage.getItem(key);