Merge pull request #541 from GraceWalk/dev

前端代码打包优化 & bug 修复
This commit is contained in:
lucasun
2022-09-02 11:08:05 +08:00
committed by GitHub
31 changed files with 86 additions and 73 deletions

View File

@@ -2,8 +2,8 @@ import React from 'react';
import { BrowserRouter as Router, Redirect, Switch } from 'react-router-dom'; import { BrowserRouter as Router, Redirect, Switch } from 'react-router-dom';
import _ from 'lodash'; import _ from 'lodash';
import './constants/axiosConfig'; import './constants/axiosConfig';
import dantdZhCN from 'knowdesign/lib/locale/zh_CN'; import dantdZhCN from 'knowdesign/es/locale/zh_CN';
import dantdEnUS from 'knowdesign/lib/locale/en_US'; import dantdEnUS from 'knowdesign/es/locale/en_US';
import intlZhCN from './locales/zh'; import intlZhCN from './locales/zh';
import intlEnUS from './locales/en'; import intlEnUS from './locales/en';
import { AppContainer, RouteGuard, DProLayout } from 'knowdesign'; import { AppContainer, RouteGuard, DProLayout } from 'knowdesign';

View File

@@ -1,6 +1,6 @@
import { DownOutlined } from '@ant-design/icons'; import { DownOutlined } from '@ant-design/icons';
import { Popover } from 'knowdesign'; import { Popover } from 'knowdesign';
import { TooltipPlacement } from 'knowdesign/lib/basic/tooltip'; import { TooltipPlacement } from 'knowdesign/es/basic/tooltip';
import React, { useState, useRef, useEffect } from 'react'; import React, { useState, useRef, useEffect } from 'react';
import './index.less'; import './index.less';
@@ -90,8 +90,9 @@ export default (props: PropsType) => {
return ( return (
<div <div
key={i} key={i}
className={`container-item ${curState.calculated ? (curState.isHideExpandNode ? 'show' : i >= curState.endI ? 'hide' : 'show') : '' className={`container-item ${
}`} curState.calculated ? (curState.isHideExpandNode ? 'show' : i >= curState.endI ? 'hide' : 'show') : ''
}`}
> >
{item} {item}
</div> </div>

View File

@@ -77,6 +77,7 @@ const RoleDetailAndUpdate = forwardRef((props, ref): JSX.Element => {
const onSubmit = () => { const onSubmit = () => {
form.validateFields().then((formData) => { form.validateFields().then((formData) => {
formData.permissionIdList = formData.permissionIdList.filter((l) => l);
formData.permissionIdList.forEach((arr, i) => { formData.permissionIdList.forEach((arr, i) => {
// 如果分配的系统下的子权限,自动赋予该系统的权限 // 如果分配的系统下的子权限,自动赋予该系统的权限
if (arr !== null && arr.length) { if (arr !== null && arr.length) {
@@ -212,7 +213,7 @@ const RoleDetailAndUpdate = forwardRef((props, ref): JSX.Element => {
rules={[ rules={[
() => ({ () => ({
validator(_, value) { validator(_, value) {
if (Array.isArray(value) && value.some((item) => !!item.length)) { if (Array.isArray(value) && value.some((item) => !!item?.length)) {
return Promise.resolve(); return Promise.resolve();
} }
return Promise.reject(new Error('请为角色至少分配一项权限')); return Promise.reject(new Error('请为角色至少分配一项权限'));

View File

@@ -86,12 +86,12 @@ class CoverHtmlWebpackPlugin {
assetJson.reverse().forEach((item) => { assetJson.reverse().forEach((item) => {
if (/\.js$/.test(item)) { if (/\.js$/.test(item)) {
// if (item.includes('vendor~')) { if (item.includes('vendor~')) {
// vendors += `<script async src="${item}"></script>`; vendors += `<script async src="${item}"></script>`;
// } else { } else {
// TODO: entry 只有一个 // TODO: entry 只有一个
portalMap['@portal/layout'] = item; portalMap['@portal/layout'] = item;
// } }
} else if (/\.css$/.test(item)) { } else if (/\.css$/.test(item)) {
links += `<link href="${item}" rel="stylesheet">`; links += `<link href="${item}" rel="stylesheet">`;
} }

View File

@@ -9,7 +9,6 @@ const TerserJSPlugin = require('terser-webpack-plugin');
const OptimizeCSSAssetsPlugin = require('optimize-css-assets-webpack-plugin'); const OptimizeCSSAssetsPlugin = require('optimize-css-assets-webpack-plugin');
const theme = require('./theme'); const theme = require('./theme');
const ReactRefreshWebpackPlugin = require('@pmmmwh/react-refresh-webpack-plugin'); const ReactRefreshWebpackPlugin = require('@pmmmwh/react-refresh-webpack-plugin');
const HardSourceWebpackPlugin = require('hard-source-webpack-plugin');
const isProd = process.env.NODE_ENV === 'production'; const isProd = process.env.NODE_ENV === 'production';
const babelOptions = { const babelOptions = {
@@ -43,7 +42,6 @@ const babelOptions = {
module.exports = () => { module.exports = () => {
const cssFileName = isProd ? '[name]-[chunkhash].css' : '[name].css'; const cssFileName = isProd ? '[name]-[chunkhash].css' : '[name].css';
const plugins = [ const plugins = [
// !isProd && new HardSourceWebpackPlugin(),
new CoverHtmlWebpackPlugin(), new CoverHtmlWebpackPlugin(),
new ProgressBarPlugin(), new ProgressBarPlugin(),
new CaseSensitivePathsPlugin(), new CaseSensitivePathsPlugin(),
@@ -150,23 +148,21 @@ module.exports = () => {
], ],
}, },
optimization: Object.assign( optimization: Object.assign(
// {
// splitChunks: {
// cacheGroups: {
// vendor: {
// test: /[\\/]node_modules[\\/]/,
// chunks: 'all',
// name: 'vendor',
// priority: 10,
// enforce: true,
// minChunks: 1,
// maxSize: 3500000,
// },
// },
// },
// },
isProd isProd
? { ? {
splitChunks: {
cacheGroups: {
vendor: {
test: /[\\/]node_modules[\\/]/,
chunks: 'all',
name: 'vendor',
priority: 10,
enforce: true,
minChunks: 1,
maxSize: 3000000,
},
},
},
minimizer: [ minimizer: [
new TerserJSPlugin({ new TerserJSPlugin({
cache: true, cache: true,

View File

@@ -4,8 +4,8 @@ import React, { useState, useEffect, useLayoutEffect } from 'react';
import { BrowserRouter, Switch, Route, useLocation, useHistory } from 'react-router-dom'; import { BrowserRouter, Switch, Route, useLocation, useHistory } from 'react-router-dom';
import { get as lodashGet } from 'lodash'; import { get as lodashGet } from 'lodash';
import { DProLayout, AppContainer, IconFont, Menu, Utils, Page403, Page404, Page500, Modal } from 'knowdesign'; import { DProLayout, AppContainer, IconFont, Menu, Utils, Page403, Page404, Page500, Modal } from 'knowdesign';
import dantdZhCN from 'knowdesign/lib/locale/zh_CN'; import dantdZhCN from 'knowdesign/es/locale/zh_CN';
import dantdEnUS from 'knowdesign/lib/locale/en_US'; import dantdEnUS from 'knowdesign/es/locale/en_US';
import { DotChartOutlined } from '@ant-design/icons'; import { DotChartOutlined } from '@ant-design/icons';
import { licenseEventBus } from './constants/axiosConfig'; import { licenseEventBus } from './constants/axiosConfig';
import intlZhCN from './locales/zh'; import intlZhCN from './locales/zh';

View File

@@ -1,6 +1,6 @@
import { DownOutlined } from '@ant-design/icons'; import { DownOutlined } from '@ant-design/icons';
import { Popover } from 'knowdesign'; import { Popover } from 'knowdesign';
import { TooltipPlacement } from 'knowdesign/lib/basic/tooltip'; import { TooltipPlacement } from 'knowdesign/es/basic/tooltip';
import React, { useState, useRef, useEffect } from 'react'; import React, { useState, useRef, useEffect } from 'react';
import './index.less'; import './index.less';
@@ -93,8 +93,9 @@ export default (props: PropsType) => {
return ( return (
<div <div
key={i} key={i}
className={`container-item ${curState.calculated ? (curState.isHideExpandNode ? 'show' : i >= curState.endI ? 'hide' : 'show') : '' className={`container-item ${
}`} curState.calculated ? (curState.isHideExpandNode ? 'show' : i >= curState.endI ? 'hide' : 'show') : ''
}`}
> >
{item} {item}
</div> </div>

View File

@@ -5,7 +5,7 @@ import API from '../../api';
import { getControllerChangeLogListColumns, defaultPagination } from './config'; import { getControllerChangeLogListColumns, defaultPagination } from './config';
import BrokerDetail from '../BrokerDetail'; import BrokerDetail from '../BrokerDetail';
import BrokerHealthCheck from '@src/components/CardBar/BrokerHealthCheck'; import BrokerHealthCheck from '@src/components/CardBar/BrokerHealthCheck';
import DBreadcrumb from 'knowdesign/lib/extend/d-breadcrumb'; import DBreadcrumb from 'knowdesign/es/extend/d-breadcrumb';
import './index.less'; import './index.less';
const { request } = Utils; const { request } = Utils;

View File

@@ -2,7 +2,7 @@ import React from 'react';
import { MetricType } from '@src/api'; import { MetricType } from '@src/api';
import BrokerHealthCheck from '@src/components/CardBar/BrokerHealthCheck'; import BrokerHealthCheck from '@src/components/CardBar/BrokerHealthCheck';
import DashboardDragChart from '@src/components/DashboardDragChart'; import DashboardDragChart from '@src/components/DashboardDragChart';
import DBreadcrumb from 'knowdesign/lib/extend/d-breadcrumb'; import DBreadcrumb from 'knowdesign/es/extend/d-breadcrumb';
import { AppContainer } from 'knowdesign'; import { AppContainer } from 'knowdesign';
const BrokerDashboard = (): JSX.Element => { const BrokerDashboard = (): JSX.Element => {

View File

@@ -7,7 +7,7 @@ import { dealTableRequestParams } from '../../constants/common';
import BrokerDetail from '../BrokerDetail'; import BrokerDetail from '../BrokerDetail';
import CardBar from '@src/components/CardBar'; import CardBar from '@src/components/CardBar';
import BrokerHealthCheck from '@src/components/CardBar/BrokerHealthCheck'; import BrokerHealthCheck from '@src/components/CardBar/BrokerHealthCheck';
import DBreadcrumb from 'knowdesign/lib/extend/d-breadcrumb'; import DBreadcrumb from 'knowdesign/es/extend/d-breadcrumb';
import './index.less'; import './index.less';
const { request } = Utils; const { request } = Utils;

View File

@@ -7,7 +7,7 @@ import { getOperatingStateListParams } from './interface';
import { useParams } from 'react-router-dom'; import { useParams } from 'react-router-dom';
import ConsumerGroupDetail from './ConsumerGroupDetail'; import ConsumerGroupDetail from './ConsumerGroupDetail';
import ConsumerGroupHealthCheck from '@src/components/CardBar/ConsumerGroupHealthCheck'; import ConsumerGroupHealthCheck from '@src/components/CardBar/ConsumerGroupHealthCheck';
import DBreadcrumb from 'knowdesign/lib/extend/d-breadcrumb'; import DBreadcrumb from 'knowdesign/es/extend/d-breadcrumb';
import { hashDataParse } from '@src/constants/common'; import { hashDataParse } from '@src/constants/common';
const { Option } = Select; const { Option } = Select;

View File

@@ -19,9 +19,9 @@ export const jobType = [
}, },
process.env.BUSSINESS_VERSION process.env.BUSSINESS_VERSION
? { ? {
label: '集群均衡', label: '集群均衡',
value: 2, value: 2,
} }
: undefined, : undefined,
].filter((t) => t); ].filter((t) => t);
@@ -75,6 +75,7 @@ export const getJobsListColumns = (arg?: any) => {
title: '任务ID', title: '任务ID',
dataIndex: 'id', dataIndex: 'id',
key: 'id', key: 'id',
width: 70,
}, },
{ {
title: '任务类型', title: '任务类型',

View File

@@ -4,7 +4,7 @@ import { ProTable, Drawer, Utils, AppContainer, Form, Select, Input, Button, mes
import API from '../../api'; import API from '../../api';
import { getJobsListColumns, defaultPagination, runningStatus, jobType } from './config'; import { getJobsListColumns, defaultPagination, runningStatus, jobType } from './config';
import JobsCheck from '@src/components/CardBar/JobsCheck'; import JobsCheck from '@src/components/CardBar/JobsCheck';
import DBreadcrumb from 'knowdesign/lib/extend/d-breadcrumb'; import DBreadcrumb from 'knowdesign/es/extend/d-breadcrumb';
import { ViewJobsProgress } from './ViewJobsProgress'; import { ViewJobsProgress } from './ViewJobsProgress';
import './index.less'; import './index.less';
import ReplicaChange from '@src/components/TopicJob/ReplicaChange'; import ReplicaChange from '@src/components/TopicJob/ReplicaChange';

View File

@@ -2,7 +2,7 @@ import React, { useState, useEffect, useRef } from 'react';
import { Select, Form, Utils, AppContainer, Input, Button, ProTable, Badge, Tag, SearchInput } from 'knowdesign'; import { Select, Form, Utils, AppContainer, Input, Button, ProTable, Badge, Tag, SearchInput } from 'knowdesign';
import BalanceDrawer from './BalanceDrawer'; import BalanceDrawer from './BalanceDrawer';
import HistoryDrawer from './HistoryDrawer'; import HistoryDrawer from './HistoryDrawer';
import DBreadcrumb from 'knowdesign/lib/extend/d-breadcrumb'; import DBreadcrumb from 'knowdesign/es/extend/d-breadcrumb';
import { getSizeAndUnit } from '../../constants/common'; import { getSizeAndUnit } from '../../constants/common';
import api from '../../api'; import api from '../../api';
import './index.less'; import './index.less';

View File

@@ -1,5 +1,3 @@
/* eslint-disable react/display-name */
import { Button, Divider, Drawer, Form, Input, InputNumber, message, Radio, Select, Spin, Space, Utils } from 'knowdesign'; import { Button, Divider, Drawer, Form, Input, InputNumber, message, Radio, Select, Spin, Space, Utils } from 'knowdesign';
import * as React from 'react'; import * as React from 'react';
import { useIntl } from 'react-intl'; import { useIntl } from 'react-intl';
@@ -16,10 +14,9 @@ const clientPropertiesPlaceholder = `用于创建Kafka客户端进行信息获
{ {
"security.protocol": "SASL_PLAINTEXT", "security.protocol": "SASL_PLAINTEXT",
"sasl.mechanism": "SCRAM-SHA-256", "sasl.mechanism": "SCRAM-SHA-256",
"sasl.jaas.config": "sasl.jaas.config": "org.apache.kafka.common.security.
"org.apache.kafka.common.security.scram. scram.ScramLoginModule required username=\\"xxxxxx\\" pass
ScramLoginModule required username="xxxxxx" word=\\"xxxxxx\\";"
password="xxxxxx";"
} }
`; `;

View File

@@ -93,7 +93,10 @@ const MultiClusterPage = () => {
setVersionLoading(true); setVersionLoading(true);
Utils.request(API.getClustersVersion) Utils.request(API.getClustersVersion)
.then((versions: string[]) => { .then((versions: string[]) => {
setExistKafkaVersion(versions || []); if (!Array.isArray(versions)) {
versions = [];
}
setExistKafkaVersion(versions.sort().reverse() || []);
setVersionLoading(false); setVersionLoading(false);
setCheckedKafkaVersions(versions || []); setCheckedKafkaVersions(versions || []);
}) })
@@ -299,7 +302,9 @@ const MultiClusterPage = () => {
<div className="test-modal-23"></div> <div className="test-modal-23"></div>
</div> </div>
</div> </div>
<Spin spinning={clusterLoading}>{renderList}</Spin> <div className="multi-cluster-page-dashboard">
<Spin spinning={clusterLoading}>{renderList}</Spin>
</div>
</div> </div>
); );
}; };

View File

@@ -147,9 +147,9 @@ const ListScroll = (props: { loadMoreData: any; list: any; pagination: any; getP
}} }}
> >
{[ {[
['BytesIn', loadReBalanceEnable && loadReBalanceNwIn], ['BytesIn', loadReBalanceNwIn === 1],
['BytesOut', loadReBalanceEnable && loadReBalanceNwOut], ['BytesOut', loadReBalanceNwOut === 1],
['Disk', loadReBalanceEnable && loadReBalanceDisk], ['Disk', loadReBalanceDisk === 1],
].map(([name, isBalanced]) => { ].map(([name, isBalanced]) => {
return isBalanced ? ( return isBalanced ? (
<div className="balance-box balanced">{name} </div> <div className="balance-box balanced">{name} </div>

View File

@@ -1,4 +1,4 @@
import { FormItemType, IFormItem } from 'knowdesign/lib/extend/x-form'; import { FormItemType, IFormItem } from 'knowdesign/es/extend/x-form';
export const bootstrapServersErrCodes = [10, 11, 12]; export const bootstrapServersErrCodes = [10, 11, 12];
export const zkErrCodes = [20, 21]; export const zkErrCodes = [20, 21];

View File

@@ -329,6 +329,11 @@
} }
} }
} }
&-dashboard {
& > .dcloud-spin-nested-loading > .dcloud-spin-container::after {
background: transparent;
}
}
.multi-cluster-list { .multi-cluster-list {
box-sizing: content-box; box-sizing: content-box;

View File

@@ -201,6 +201,8 @@ const DetailChart = (props: { children: JSX.Element }): JSX.Element => {
if (Number.isNaN(parsedValue)) { if (Number.isNaN(parsedValue)) {
parsedValue = values.MessagesIn; parsedValue = values.MessagesIn;
} else { } else {
// 为避免出现过小的数字影响图表展示效果,图表值统一只保留到小数点后三位
parsedValue = parseFloat(parsedValue.toFixed(3));
if (maxValue < parsedValue) maxValue = parsedValue; if (maxValue < parsedValue) maxValue = parsedValue;
} }
const valuesWithUnit = Object.entries(values).map(([key, value]) => { const valuesWithUnit = Object.entries(values).map(([key, value]) => {
@@ -287,8 +289,8 @@ const DetailChart = (props: { children: JSX.Element }): JSX.Element => {
checkboxProps: (record: MetricInfo) => { checkboxProps: (record: MetricInfo) => {
return record.name === DEFAULT_METRIC return record.name === DEFAULT_METRIC
? { ? {
disabled: true, disabled: true,
} }
: {}; : {};
}, },
submitCallback: indicatorChangeCallback, submitCallback: indicatorChangeCallback,

View File

@@ -165,9 +165,9 @@ const LeftSider = () => {
<div className="tag default">{clusterInfo?.kafkaVersion ?? '-'}</div> <div className="tag default">{clusterInfo?.kafkaVersion ?? '-'}</div>
{clusterMetrics?.LoadReBalanceEnable !== undefined && {clusterMetrics?.LoadReBalanceEnable !== undefined &&
[ [
['BytesIn', clusterMetrics?.LoadReBalanceEnable && clusterMetrics?.LoadReBalanceNwIn], ['BytesIn', clusterMetrics?.LoadReBalanceNwIn === 1],
['BytesOut', clusterMetrics?.LoadReBalanceEnable && clusterMetrics?.LoadReBalanceNwOut], ['BytesOut', clusterMetrics?.LoadReBalanceNwOut === 1],
['Disk', clusterMetrics?.LoadReBalanceEnable && clusterMetrics?.LoadReBalanceDisk], ['Disk', clusterMetrics?.LoadReBalanceDisk === 1],
].map(([name, isBalanced]) => { ].map(([name, isBalanced]) => {
return isBalanced ? ( return isBalanced ? (
<div className="tag balanced">{name} </div> <div className="tag balanced">{name} </div>

View File

@@ -1,4 +1,4 @@
import DBreadcrumb from 'knowdesign/lib/extend/d-breadcrumb'; import DBreadcrumb from 'knowdesign/es/extend/d-breadcrumb';
import React from 'react'; import React from 'react';
import TourGuide, { ClusterDetailSteps } from '@src/components/TourGuide'; import TourGuide, { ClusterDetailSteps } from '@src/components/TourGuide';
import './index.less'; import './index.less';

View File

@@ -192,8 +192,10 @@ const ConsumeClientTest = () => {
// 过滤出消费数量不足设定值的partition // 过滤出消费数量不足设定值的partition
const filtersPartition = _partitionList.filter((item: any) => item.recordCount < untilMsgNum); const filtersPartition = _partitionList.filter((item: any) => item.recordCount < untilMsgNum);
curPartitionList.current = filtersPartition; // 用作下一次请求的入参 curPartitionList.current = filtersPartition; // 用作下一次请求的入参
setIsStop(filtersPartition.length < 1); if (!isStop) {
isStopStatus.current = filtersPartition.length < 1; setIsStop(filtersPartition.length < 1);
isStopStatus.current = filtersPartition.length < 1;
}
break; break;
case 'max size': case 'max size':
setIsStop(+recordSizeCur.current >= unitMsgSize); setIsStop(+recordSizeCur.current >= unitMsgSize);
@@ -202,8 +204,10 @@ const ConsumeClientTest = () => {
case 'max size per partition': case 'max size per partition':
// 过滤出消费size不足设定值的partition // 过滤出消费size不足设定值的partition
const filters = partitionConsumedList.filter((item: any) => item.recordSizeUnitB < unitMsgSize); const filters = partitionConsumedList.filter((item: any) => item.recordSizeUnitB < unitMsgSize);
setIsStop(filters.length < 1); if (!isStop) {
isStopStatus.current = filters.length < 1; setIsStop(filters.length < 1);
isStopStatus.current = filters.length < 1;
}
curPartitionList.current = filters; curPartitionList.current = filters;
break; break;
} }

View File

@@ -1,5 +1,5 @@
import { Button, XForm } from 'knowdesign'; import { Button, XForm } from 'knowdesign';
import { IFormItem } from 'knowdesign/lib/extend/x-form'; import { IFormItem } from 'knowdesign/es/extend/x-form';
import * as React from 'react'; import * as React from 'react';
import './style/form.less'; import './style/form.less';
import { useIntl } from 'react-intl'; import { useIntl } from 'react-intl';

View File

@@ -1,4 +1,4 @@
import { FormItemType, IFormItem } from 'knowdesign/lib/extend/x-form'; import { FormItemType, IFormItem } from 'knowdesign/es/extend/x-form';
import moment from 'moment'; import moment from 'moment';
import React from 'react'; import React from 'react';
import { timeFormat } from '../../constants/common'; import { timeFormat } from '../../constants/common';

View File

@@ -1,5 +1,5 @@
import { AppContainer } from 'knowdesign'; import { AppContainer } from 'knowdesign';
import DBreadcrumb from 'knowdesign/lib/extend/d-breadcrumb'; import DBreadcrumb from 'knowdesign/es/extend/d-breadcrumb';
import * as React from 'react'; import * as React from 'react';
import { useParams } from 'react-router-dom'; import { useParams } from 'react-router-dom';
import TaskTabs from './component/TaskTabs'; import TaskTabs from './component/TaskTabs';

View File

@@ -1,5 +1,5 @@
import { Button, Col, Form, Row } from 'knowdesign'; import { Button, Col, Form, Row } from 'knowdesign';
import { FormItemType, handleFormItem, IFormItem, renderFormItem } from 'knowdesign/lib/extend/x-form'; import { FormItemType, handleFormItem, IFormItem, renderFormItem } from 'knowdesign/es/extend/x-form';
import * as React from 'react'; import * as React from 'react';
import './style/form.less'; import './style/form.less';
import EditTable from './EditTable'; import EditTable from './EditTable';

View File

@@ -1,6 +1,6 @@
import { QuestionCircleOutlined } from '@ant-design/icons'; import { QuestionCircleOutlined } from '@ant-design/icons';
import { IconFont, Switch, Tooltip } from 'knowdesign'; import { IconFont, Switch, Tooltip } from 'knowdesign';
import { FormItemType, IFormItem } from 'knowdesign/lib/extend/x-form'; import { FormItemType, IFormItem } from 'knowdesign/es/extend/x-form';
import moment from 'moment'; import moment from 'moment';
import React from 'react'; import React from 'react';
import { timeFormat, getRandomStr } from '@src/constants/common'; import { timeFormat, getRandomStr } from '@src/constants/common';

View File

@@ -3,7 +3,7 @@ import * as React from 'react';
import ProduceClientTest from './Produce'; import ProduceClientTest from './Produce';
import './index.less'; import './index.less';
import TaskTabs from '../TestingConsumer/component/TaskTabs'; import TaskTabs from '../TestingConsumer/component/TaskTabs';
import DBreadcrumb from 'knowdesign/lib/extend/d-breadcrumb'; import DBreadcrumb from 'knowdesign/es/extend/d-breadcrumb';
import { useParams } from 'react-router-dom'; import { useParams } from 'react-router-dom';
const Produce = () => { const Produce = () => {

View File

@@ -3,7 +3,7 @@ import { MetricType } from '@src/api';
import TopicHealthCheck from '@src/components/CardBar/TopicHealthCheck'; import TopicHealthCheck from '@src/components/CardBar/TopicHealthCheck';
import DashboardDragChart from '@src/components/DashboardDragChart'; import DashboardDragChart from '@src/components/DashboardDragChart';
import { AppContainer } from 'knowdesign'; import { AppContainer } from 'knowdesign';
import DBreadcrumb from 'knowdesign/lib/extend/d-breadcrumb'; import DBreadcrumb from 'knowdesign/es/extend/d-breadcrumb';
const TopicDashboard = () => { const TopicDashboard = () => {
const [global] = AppContainer.useGlobalValue(); const [global] = AppContainer.useGlobalValue();

View File

@@ -10,7 +10,7 @@ import TopicHealthCheck from '@src/components/CardBar/TopicHealthCheck';
import TopicDetail from '../TopicDetail'; import TopicDetail from '../TopicDetail';
import Delete from './Delete'; import Delete from './Delete';
import { ClustersPermissionMap } from '../CommonConfig'; import { ClustersPermissionMap } from '../CommonConfig';
import DBreadcrumb from 'knowdesign/lib/extend/d-breadcrumb'; import DBreadcrumb from 'knowdesign/es/extend/d-breadcrumb';
import ReplicaChange from '@src/components/TopicJob/ReplicaChange'; import ReplicaChange from '@src/components/TopicJob/ReplicaChange';
import SmallChart from '@src/components/SmallChart'; import SmallChart from '@src/components/SmallChart';
import ReplicaMove from '@src/components/TopicJob/ReplicaMove'; import ReplicaMove from '@src/components/TopicJob/ReplicaMove';