You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
NewEduCoderBuild/p__Classrooms__Lists__Exerc...

1435 lines
62 KiB

"use strict";
(self["webpackChunk"] = self["webpackChunk"] || []).push([[95125],{
/***/ 40362:
/*!***********************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.4.0@@ant-design/icons/es/icons/ArrowLeftOutlined.js + 1 modules ***!
\***********************************************************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_ArrowLeftOutlined; }
});
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.25.6@@babel/runtime/helpers/esm/extends.js
var esm_extends = __webpack_require__(33614);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.4.2@@ant-design/icons-svg/es/asn/ArrowLeftOutlined.js
// This icon file is generated automatically.
var ArrowLeftOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M872 474H286.9l350.2-304c5.6-4.9 2.2-14-5.2-14h-88.5c-3.9 0-7.6 1.4-10.5 3.9L155 487.8a31.96 31.96 0 000 48.3L535.1 866c1.5 1.3 3.3 2 5.2 2h91.5c7.4 0 10.8-9.2 5.2-14L286.9 550H872c4.4 0 8-3.6 8-8v-60c0-4.4-3.6-8-8-8z" } }] }, "name": "arrow-left", "theme": "outlined" };
/* harmony default export */ var asn_ArrowLeftOutlined = (ArrowLeftOutlined);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.4.0@@ant-design/icons/es/components/AntdIcon.js + 3 modules
var AntdIcon = __webpack_require__(1393);
;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.4.0@@ant-design/icons/es/icons/ArrowLeftOutlined.js
// GENERATE BY ./scripts/generate.ts
// DON NOT EDIT IT MANUALLY
var ArrowLeftOutlined_ArrowLeftOutlined = function ArrowLeftOutlined(props, ref) {
return /*#__PURE__*/_react_17_0_2_react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
ref: ref,
icon: asn_ArrowLeftOutlined
}));
};
/**![arrow-left](data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTAiIGhlaWdodD0iNTAiIGZpbGw9IiNjYWNhY2EiIHZpZXdCb3g9IjY0IDY0IDg5NiA4OTYiIGZvY3VzYWJsZT0iZmFsc2UiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTg3MiA0NzRIMjg2LjlsMzUwLjItMzA0YzUuNi00LjkgMi4yLTE0LTUuMi0xNGgtODguNWMtMy45IDAtNy42IDEuNC0xMC41IDMuOUwxNTUgNDg3LjhhMzEuOTYgMzEuOTYgMCAwMDAgNDguM0w1MzUuMSA4NjZjMS41IDEuMyAzLjMgMiA1LjIgMmg5MS41YzcuNCAwIDEwLjgtOS4yIDUuMi0xNEwyODYuOSA1NTBIODcyYzQuNCAwIDgtMy42IDgtOHYtNjBjMC00LjQtMy42LTgtOC04eiIgLz48L3N2Zz4=) */
var RefIcon = /*#__PURE__*/_react_17_0_2_react.forwardRef(ArrowLeftOutlined_ArrowLeftOutlined);
if (false) {}
/* harmony default export */ var icons_ArrowLeftOutlined = (RefIcon);
/***/ }),
/***/ 35064:
/*!************************************************************************************!*\
!*** ./src/pages/Classrooms/Lists/Exercise/DetailedAnalysis/index.tsx + 1 modules ***!
\************************************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
"default": function() { return /* binding */ DetailedAnalysis; }
});
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectSpread2.js
var objectSpread2 = __webpack_require__(82242);
var objectSpread2_default = /*#__PURE__*/__webpack_require__.n(objectSpread2);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/regeneratorRuntime.js
var regeneratorRuntime = __webpack_require__(7557);
var regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(regeneratorRuntime);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/asyncToGenerator.js
var asyncToGenerator = __webpack_require__(41498);
var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/slicedToArray.js
var slicedToArray = __webpack_require__(79800);
var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
// EXTERNAL MODULE: ./src/.umi-production/exports.ts
var _umi_production_exports = __webpack_require__(80608);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/row/index.js
var row = __webpack_require__(95237);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/index.js + 6 modules
var breadcrumb = __webpack_require__(66104);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/col/index.js
var col = __webpack_require__(43604);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/tabs/index.js + 24 modules
var tabs = __webpack_require__(99313);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/radio/index.js + 5 modules
var es_radio = __webpack_require__(5112);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/table/index.js + 85 modules
var table = __webpack_require__(51945);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/modal/index.js + 16 modules
var modal = __webpack_require__(43418);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.4.0@@ant-design/icons/es/icons/ArrowLeftOutlined.js + 1 modules
var ArrowLeftOutlined = __webpack_require__(40362);
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/Exercise/DetailedAnalysis/index.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var DetailedAnalysismodules = ({"flex_box_center":"flex_box_center___Qx5by","flex_space_between":"flex_space_between___Jovvb","flex_box_vertical_center":"flex_box_vertical_center___ZgKxt","flex_box_center_end":"flex_box_center_end___rLoZQ","flex_box_column":"flex_box_column___H7gvw","title":"title___mKlZQ","link":"link____MbLK","wrap":"wrap___M54Mm","info":"info___LS1sD","name":"name___XFTyf","box":"box___MY5TN","tab":"tab___Pts7W","group":"group___KTR8B","modal":"modal___wynb6","head":"head___rpYjK","des":"des___PNfp8","sub":"sub___LF5wd","tags":"tags___tdrDl"});
// EXTERNAL MODULE: ./src/utils/fetch.ts
var fetch = __webpack_require__(49105);
// EXTERNAL MODULE: ./node_modules/_dayjs@1.11.13@dayjs/dayjs.min.js
var dayjs_min = __webpack_require__(61186);
var dayjs_min_default = /*#__PURE__*/__webpack_require__.n(dayjs_min);
// EXTERNAL MODULE: ./src/utils/env.ts + 1 modules
var env = __webpack_require__(71681);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/jsx-runtime.js
var jsx_runtime = __webpack_require__(37712);
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/Exercise/DetailedAnalysis/index.tsx
var Export = function Export(_ref) {
var _window$location$path, _userInfo$course, _modalData$tags;
var exercise = _ref.exercise,
user = _ref.user,
dispatch = _ref.dispatch;
var isExam = (_window$location$path = window.location.pathname) === null || _window$location$path === void 0 ? void 0 : _window$location$path.includes('exercise');
var path = isExam ? 'exercise' : 'shixun_homework';
var urlParams = (0,_umi_production_exports.useParams)();
var userInfo = user.userInfo;
var _useState = (0,_react_17_0_2_react.useState)({}),
_useState2 = slicedToArray_default()(_useState, 2),
data = _useState2[0],
setData = _useState2[1];
var _useState3 = (0,_react_17_0_2_react.useState)(),
_useState4 = slicedToArray_default()(_useState3, 2),
modalData = _useState4[0],
setModalData = _useState4[1];
var _useState5 = (0,_react_17_0_2_react.useState)(0),
_useState6 = slicedToArray_default()(_useState5, 2),
height = _useState6[0],
setHeight = _useState6[1];
var _useState7 = (0,_react_17_0_2_react.useState)([]),
_useState8 = slicedToArray_default()(_useState7, 2),
list = _useState8[0],
setList = _useState8[1];
var _useState9 = (0,_react_17_0_2_react.useState)(true),
_useState10 = slicedToArray_default()(_useState9, 2),
tableLoading = _useState10[0],
setTableLoading = _useState10[1];
var _useState11 = (0,_react_17_0_2_react.useState)(false),
_useState12 = slicedToArray_default()(_useState11, 2),
qualityshow = _useState12[0],
setqualityshow = _useState12[1];
var _useState13 = (0,_react_17_0_2_react.useState)(0),
_useState14 = slicedToArray_default()(_useState13, 2),
total = _useState14[0],
setTotal = _useState14[1];
var _useState15 = (0,_react_17_0_2_react.useState)({
type: '2',
degree: 0,
page: 1,
limit: 10,
id: urlParams.studentId
}),
_useState16 = slicedToArray_default()(_useState15, 2),
params = _useState16[0],
setParams = _useState16[1];
var _ref2 = (data === null || data === void 0 ? void 0 : data.analysis_data) || {},
bug = _ref2.bug,
vulnerability = _ref2.vulnerability,
codeSmall = _ref2.codeSmall;
(0,_react_17_0_2_react.useEffect)(function () {
getData();
getList(params);
}, []);
var getData = /*#__PURE__*/function () {
var _ref3 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
var res;
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
_context.next = 2;
return (0,fetch/* default */.ZP)('/api/code_analyses_detail/analyse_detail.json', {
method: "get",
params: {
id: urlParams.studentId
}
});
case 2:
res = _context.sent;
if (res.status === 0) {
setData(res.data);
}
case 4:
case "end":
return _context.stop();
}
}, _callee);
}));
return function getData() {
return _ref3.apply(this, arguments);
};
}();
var getList = /*#__PURE__*/function () {
var _ref4 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2(params) {
var res, _res$data;
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
while (1) switch (_context2.prev = _context2.next) {
case 0:
setTableLoading(true);
_context2.next = 3;
return (0,fetch/* default */.ZP)('/api/code_analyses_detail/analyse_detail_list.json', {
method: "get",
params: params
});
case 3:
res = _context2.sent;
if (res.status === 0) {
setList(res.data.recordList);
setTotal((_res$data = res.data) === null || _res$data === void 0 ? void 0 : _res$data.recordSum);
}
setTableLoading(false);
case 6:
case "end":
return _context2.stop();
}
}, _callee2);
}));
return function getList(_x) {
return _ref4.apply(this, arguments);
};
}();
var iconJson = {
'阻断': /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
style: {
color: '#D4333F'
},
className: "iconfont icon-zuduan font14"
}),
'严重': /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
style: {
color: '#D4333F'
},
className: "iconfont icon-yanzhong font14"
}),
'主要': /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
style: {
color: '#D4333F'
},
className: "iconfont icon-zhuyao font14"
}),
'次要': /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
style: {
color: '#B0D513'
},
className: "iconfont icon-ciyao font14"
}),
'提示': /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
style: {
color: '#4B9FD5'
},
className: "iconfont icon-tishi10 font14"
}),
'Bug': /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "iconfont icon-bug"
}),
'漏洞': /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "iconfont icon-loudong1"
}),
'代码规范': /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "iconfont icon-yiwei"
})
};
var columns = [{
title: '序号',
dataIndex: 'name',
align: 'left',
width: 80,
render: function render(text, record, index) {
return params.limit * (params.page - 1) + index + 1;
}
}, {
title: "".concat(params.type === '2' ? 'Bug' : params.type === '3' ? '漏洞' : '规范异常', "\u540D\u79F0"),
align: 'left',
ellipsis: true,
dataIndex: 'name',
render: function render(r, v) {
return /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
target: "_blank",
href: "/classrooms/".concat(urlParams.coursesId, "/").concat(path, "/").concat(urlParams.exerciseId, "/analysis/").concat(urlParams.studentId, "/code?name=").concat(data === null || data === void 0 ? void 0 : data.user_name, "&rule_id=").concat(v.ruleId, "&uuid=").concat(v.uuid, "&issueId=").concat(v.issueId, "&language=").concat(v.language, "&rowNumber=").concat(v.rowNumber),
className: DetailedAnalysismodules.link,
children: r
});
}
}, {
title: '文件路径',
align: 'left',
ellipsis: true,
dataIndex: 'filePath'
}, {
title: '严重程度',
align: 'left',
width: 90,
dataIndex: 'level',
render: function render(v) {
return /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
children: [iconJson[v], /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "ml5",
children: v
})]
});
}
}, {
title: '操作',
width: 154,
align: 'left',
dataIndex: 'action',
render: function render(record, v) {
return /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
justify: "space-between",
align: "middle",
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
onClick: function onClick() {
return getModalData(v);
},
className: "current c-light-primary",
children: "\u95EE\u9898\u5206\u6790"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
target: "_blank",
href: "/classrooms/".concat(urlParams.coursesId, "/").concat(path, "/").concat(urlParams.exerciseId, "/analysis/").concat(urlParams.studentId, "/code?name=").concat(data === null || data === void 0 ? void 0 : data.user_name, "&rule_id=").concat(v.ruleId, "&uuid=").concat(v.uuid, "&issueId=").concat(v.issueId, "&language=").concat(v.language, "&rowNumber=").concat(v.rowNumber),
className: "current c-light-primary",
children: "\u4EE3\u7801\u8BE6\u60C5"
})]
});
}
}];
var handleTabsChange = function handleTabsChange(activeKey) {
params.page = 1;
params.type = activeKey;
setParams(objectSpread2_default()({}, params));
getList(params);
};
var handleCheck = function handleCheck(e) {
params.page = 1;
params.degree = e.target.value;
setParams(objectSpread2_default()({}, params));
getList(params);
};
var handleChangePage = function handleChangePage(param) {
params.page = param === null || param === void 0 ? void 0 : param.current;
params.limit = param === null || param === void 0 ? void 0 : param.pageSize;
setParams(objectSpread2_default()({}, params));
getList(params);
};
var getModalData = /*#__PURE__*/function () {
var _ref5 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee3(v) {
var res;
return regeneratorRuntime_default()().wrap(function _callee3$(_context3) {
while (1) switch (_context3.prev = _context3.next) {
case 0:
_context3.next = 2;
return (0,fetch/* default */.ZP)('/api/code_analyses_detail/problem_analysis.json', {
method: "get",
params: {
rule_id: v.ruleId
}
});
case 2:
res = _context3.sent;
if (res.status === 0) {
setModalData(objectSpread2_default()(objectSpread2_default()({}, res.data), {}, {
level: v.level,
type: params.type === '2' ? 'Bug' : params.type === '3' ? '漏洞' : '代码规范'
}));
setHeight(32);
}
case 4:
case "end":
return _context3.stop();
}
}, _callee3);
}));
return function getModalData(_x2) {
return _ref5.apply(this, arguments);
};
}();
var qualityList = [{
live: 'A',
gz: '0个错误',
ld: '0个漏洞',
gf: '0 - 5%'
}, {
live: 'B',
gz: '至少1个次要错误',
ld: '至少1个次要漏洞',
gf: '6% - 10%'
}, {
live: 'C',
gz: '至少1个主要错误',
ld: '至少1个主要漏洞',
gf: '11% - 20%'
}, {
live: 'D',
gz: '至少1个严重错误',
ld: '至少1个严重漏洞',
gf: '21% - 50%'
}, {
live: 'E',
gz: '至少1个阻断错误',
ld: '至少1个阻断漏洞',
gf: '超过50%'
}];
return /*#__PURE__*/(0,jsx_runtime.jsxs)("section", {
className: "edu-container",
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("section", {
className: "animated fadeIn",
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("aside", {
className: "mt10",
children: userInfo && /*#__PURE__*/(0,jsx_runtime.jsxs)(breadcrumb/* default */.Z, {
separator: ">",
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(breadcrumb/* default */.Z.Item, {
children: /*#__PURE__*/(0,jsx_runtime.jsx)(_umi_production_exports.Link, {
to: "/classrooms/".concat(urlParams.coursesId, "/").concat(path),
children: userInfo === null || userInfo === void 0 || (_userInfo$course = userInfo.course) === null || _userInfo$course === void 0 ? void 0 : _userInfo$course.course_name
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)(breadcrumb/* default */.Z.Item, {
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(_umi_production_exports.Link, {
to: "/classrooms/".concat(urlParams.coursesId, "/").concat(path),
children: [isExam ? '考试' : '实训', "\u5217\u8868"]
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)(breadcrumb/* default */.Z.Item, {
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(_umi_production_exports.Link, {
to: "/classrooms/".concat(urlParams.coursesId, "/").concat(path, "/").concat(urlParams === null || urlParams === void 0 ? void 0 : urlParams.exerciseId, "/detail"),
children: [isExam ? '试卷' : '作业', "\u8BE6\u60C5"]
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)(breadcrumb/* default */.Z.Item, {
children: data === null || data === void 0 ? void 0 : data.user_name
})]
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("aside", {
className: [DetailedAnalysismodules.title, 'mt20'].join(' '),
children: /*#__PURE__*/(0,jsx_runtime.jsx)(row/* default */.Z, {
style: {
width: "100%"
},
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(col/* default */.Z, {
flex: "1",
style: {
lineHeight: '24px'
},
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(_umi_production_exports.Link, {
to: "/classrooms/".concat(urlParams.coursesId, "/").concat(path, "/").concat(urlParams === null || urlParams === void 0 ? void 0 : urlParams.exerciseId, "/detail"),
children: /*#__PURE__*/(0,jsx_runtime.jsx)(ArrowLeftOutlined/* default */.Z, {
className: "font16 c-black"
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("strong", {
className: "font20 ml5",
children: data === null || data === void 0 ? void 0 : data.name
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "iconfont icon-a-wenhaobeifen2",
onClick: function onClick() {
setqualityshow(true);
},
style: {
fontWeight: 800,
color: "#0152d9",
"float": 'right',
cursor: 'pointer'
},
children: "\u89C4\u5219\u8BF4\u660E"
})]
})
})
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("section", {
className: DetailedAnalysismodules.wrap,
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: DetailedAnalysismodules.info,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("img", {
src: "".concat(env/* default */.Z.IMG_SERVER, "/images/").concat(data === null || data === void 0 ? void 0 : data.avatar),
alt: ""
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("ul", {
style: {
marginLeft: 30
},
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("li", {
className: DetailedAnalysismodules.name,
children: data === null || data === void 0 ? void 0 : data.user_name
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("li", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: "\u5B66\u53F7\uFF1A"
}), data === null || data === void 0 ? void 0 : data.student_number]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("li", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: "\u4EE3\u7801\u884C\u6570\uFF1A"
}), data === null || data === void 0 ? void 0 : data.total_row_number]
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("ul", {
style: {
marginTop: 65
},
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("li", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: "\u5206\u73ED\uFF1A"
}), data === null || data === void 0 ? void 0 : data.group_course_name]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("li", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: "\u590D\u6742\u4EE3\u7801\uFF1A"
}), data === null || data === void 0 ? void 0 : data.complexity]
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("ol", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("li", {
children: "\u8D28\u91CF\u8BC4\u5206\uFF1A"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("li", {
children: data === null || data === void 0 ? void 0 : data.quality_score
})]
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: DetailedAnalysismodules.box,
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("ul", {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("li", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("p", {
className: "mb20",
children: bug === null || bug === void 0 ? void 0 : bug.total
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: "\u7F3A\u9677"
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("li", {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: ["\u7B49\u7EA7\uFF1A", /*#__PURE__*/(0,jsx_runtime.jsx)("b", {
children: bug === null || bug === void 0 ? void 0 : bug.levelStr
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: "\u963B\u65AD"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: /*#__PURE__*/(0,jsx_runtime.jsx)("aside", {
style: {
background: '#A73E38',
width: (bug === null || bug === void 0 ? void 0 : bug.blocker) === 0 ? 0 : "".concat((bug === null || bug === void 0 ? void 0 : bug.blocker) / (bug === null || bug === void 0 ? void 0 : bug.total) * 100, "%")
}
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: bug === null || bug === void 0 ? void 0 : bug.blocker
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: "\u4E25\u91CD"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: /*#__PURE__*/(0,jsx_runtime.jsx)("aside", {
style: {
background: '#DB544D',
width: (bug === null || bug === void 0 ? void 0 : bug.critical) === 0 ? 0 : "".concat((bug === null || bug === void 0 ? void 0 : bug.critical) / (bug === null || bug === void 0 ? void 0 : bug.total) * 100, "%")
}
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: bug === null || bug === void 0 ? void 0 : bug.critical
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: "\u4E3B\u8981"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: /*#__PURE__*/(0,jsx_runtime.jsx)("aside", {
style: {
background: '#F7AB3E',
width: (bug === null || bug === void 0 ? void 0 : bug.major) === 0 ? 0 : "".concat((bug === null || bug === void 0 ? void 0 : bug.major) / (bug === null || bug === void 0 ? void 0 : bug.total) * 100, "%")
}
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: bug === null || bug === void 0 ? void 0 : bug.major
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: "\u6B21\u8981"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: /*#__PURE__*/(0,jsx_runtime.jsx)("aside", {
style: {
background: '#E7DF37',
width: (bug === null || bug === void 0 ? void 0 : bug.minor) === 0 ? 0 : "".concat((bug === null || bug === void 0 ? void 0 : bug.minor) / (bug === null || bug === void 0 ? void 0 : bug.total) * 100, "%")
}
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: bug === null || bug === void 0 ? void 0 : bug.minor
})]
})]
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("ul", {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("li", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("p", {
className: "mb20",
children: vulnerability === null || vulnerability === void 0 ? void 0 : vulnerability.total
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: "\u6F0F\u6D1E"
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("li", {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: ["\u7B49\u7EA7\uFF1A", /*#__PURE__*/(0,jsx_runtime.jsx)("b", {
children: vulnerability === null || vulnerability === void 0 ? void 0 : vulnerability.levelStr
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: "\u963B\u65AD"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: /*#__PURE__*/(0,jsx_runtime.jsx)("aside", {
style: {
background: '#A73E38',
width: (vulnerability === null || vulnerability === void 0 ? void 0 : vulnerability.blocker) === 0 ? 0 : "".concat((vulnerability === null || vulnerability === void 0 ? void 0 : vulnerability.blocker) / (vulnerability === null || vulnerability === void 0 ? void 0 : vulnerability.total) * 100, "%")
}
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: vulnerability === null || vulnerability === void 0 ? void 0 : vulnerability.blocker
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: "\u4E25\u91CD"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: /*#__PURE__*/(0,jsx_runtime.jsx)("aside", {
style: {
background: '#DB544D',
width: (vulnerability === null || vulnerability === void 0 ? void 0 : vulnerability.critical) === 0 ? 0 : "".concat((vulnerability === null || vulnerability === void 0 ? void 0 : vulnerability.critical) / (vulnerability === null || vulnerability === void 0 ? void 0 : vulnerability.total) * 100, "%")
}
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: vulnerability === null || vulnerability === void 0 ? void 0 : vulnerability.critical
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: "\u4E3B\u8981"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: /*#__PURE__*/(0,jsx_runtime.jsx)("aside", {
style: {
background: '#F7AB3E',
width: (vulnerability === null || vulnerability === void 0 ? void 0 : vulnerability.major) === 0 ? 0 : "".concat((vulnerability === null || vulnerability === void 0 ? void 0 : vulnerability.major) / (vulnerability === null || vulnerability === void 0 ? void 0 : vulnerability.total) * 100, "%")
}
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: vulnerability === null || vulnerability === void 0 ? void 0 : vulnerability.major
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: "\u6B21\u8981"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: /*#__PURE__*/(0,jsx_runtime.jsx)("aside", {
style: {
background: '#E7DF37',
width: (vulnerability === null || vulnerability === void 0 ? void 0 : vulnerability.minor) === 0 ? 0 : "".concat((vulnerability === null || vulnerability === void 0 ? void 0 : vulnerability.minor) / (vulnerability === null || vulnerability === void 0 ? void 0 : vulnerability.total) * 100, "%")
}
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: vulnerability === null || vulnerability === void 0 ? void 0 : vulnerability.minor
})]
})]
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("ul", {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("li", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("p", {
className: "mb20",
children: codeSmall === null || codeSmall === void 0 ? void 0 : codeSmall.total
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: "\u4EE3\u7801\u89C4\u8303"
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("li", {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: ["\u7B49\u7EA7\uFF1A", /*#__PURE__*/(0,jsx_runtime.jsx)("b", {
children: codeSmall === null || codeSmall === void 0 ? void 0 : codeSmall.levelStr
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: "\u963B\u65AD"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: /*#__PURE__*/(0,jsx_runtime.jsx)("aside", {
style: {
background: '#A73E38',
width: (codeSmall === null || codeSmall === void 0 ? void 0 : codeSmall.blocker) === 0 ? 0 : "".concat((codeSmall === null || codeSmall === void 0 ? void 0 : codeSmall.blocker) / (codeSmall === null || codeSmall === void 0 ? void 0 : codeSmall.total) * 100, "%")
}
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: codeSmall === null || codeSmall === void 0 ? void 0 : codeSmall.blocker
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: "\u4E25\u91CD"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: /*#__PURE__*/(0,jsx_runtime.jsx)("aside", {
style: {
background: '#DB544D',
width: (codeSmall === null || codeSmall === void 0 ? void 0 : codeSmall.critical) === 0 ? 0 : "".concat((codeSmall === null || codeSmall === void 0 ? void 0 : codeSmall.critical) / (codeSmall === null || codeSmall === void 0 ? void 0 : codeSmall.total) * 100, "%")
}
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: codeSmall === null || codeSmall === void 0 ? void 0 : codeSmall.critical
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: "\u4E3B\u8981"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: /*#__PURE__*/(0,jsx_runtime.jsx)("aside", {
style: {
background: '#F7AB3E',
width: (codeSmall === null || codeSmall === void 0 ? void 0 : codeSmall.major) === 0 ? 0 : "".concat((codeSmall === null || codeSmall === void 0 ? void 0 : codeSmall.major) / (codeSmall === null || codeSmall === void 0 ? void 0 : codeSmall.total) * 100, "%")
}
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: codeSmall === null || codeSmall === void 0 ? void 0 : codeSmall.major
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: "\u6B21\u8981"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: /*#__PURE__*/(0,jsx_runtime.jsx)("aside", {
style: {
background: '#E7DF37',
width: (codeSmall === null || codeSmall === void 0 ? void 0 : codeSmall.minor) === 0 ? 0 : "".concat((codeSmall === null || codeSmall === void 0 ? void 0 : codeSmall.minor) / (codeSmall === null || codeSmall === void 0 ? void 0 : codeSmall.total) * 100, "%")
}
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: codeSmall === null || codeSmall === void 0 ? void 0 : codeSmall.minor
})]
})]
})]
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(tabs/* default */.Z, {
className: DetailedAnalysismodules.tab,
activeKey: params.type,
onChange: handleTabsChange,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(tabs/* default */.Z.TabPane, {
tab: "Bug (".concat((bug === null || bug === void 0 ? void 0 : bug.total) || 0, ")")
}, '2'), /*#__PURE__*/(0,jsx_runtime.jsx)(tabs/* default */.Z.TabPane, {
tab: "\u6F0F\u6D1E (".concat((vulnerability === null || vulnerability === void 0 ? void 0 : vulnerability.total) || 0, ")")
}, '3'), /*#__PURE__*/(0,jsx_runtime.jsx)(tabs/* default */.Z.TabPane, {
tab: "\u4EE3\u7801\u89C4\u8303 (".concat((codeSmall === null || codeSmall === void 0 ? void 0 : codeSmall.total) || 0, ")")
}, '1')]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: DetailedAnalysismodules.group,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "mr5",
children: "\u4E25\u91CD\u7A0B\u5EA6:"
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(es_radio/* default.Group */.ZP.Group, {
value: params.degree,
onChange: handleCheck,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
value: 0,
children: "\u5168\u90E8"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
value: 1,
children: "\u963B\u65AD"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
value: 2,
children: "\u4E25\u91CD"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
value: 3,
children: "\u4E3B\u8981"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
value: 4,
children: "\u6B21\u8981"
})]
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)(table/* default */.Z, {
style: {
padding: '30px 30px 0 30px'
},
dataSource: list,
columns: columns,
onChange: handleChangePage,
loading: tableLoading,
pagination: {
pageSize: params.limit,
total: total,
current: params.page,
showQuickJumper: true,
hideOnSinglePage: true,
position: ["bottomCenter"],
showTotal: function showTotal(total) {
return /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: "mr10",
children: ["\u5171", /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "c-orange",
children: total
}), "\u6761\u6570\u636E"]
});
}
}
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: DetailedAnalysismodules.modal,
style: {
height: "".concat(height, "vh")
},
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: DetailedAnalysismodules.head,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: "\u95EE\u9898\u5206\u6790"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "icon-zuixiaohua iconfont mt10",
onClick: function onClick() {
return setHeight(32);
}
}), /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
style: {
margin: '0 18px'
},
className: "icon-fangda iconfont",
onClick: function onClick() {
return setHeight(80);
}
}), /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "icon-guanbi7 iconfont",
onClick: function onClick() {
return setHeight(0);
}
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: DetailedAnalysismodules.des,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: DetailedAnalysismodules.sub,
children: modalData === null || modalData === void 0 ? void 0 : modalData.title
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: DetailedAnalysismodules.tags,
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
children: [iconJson[modalData === null || modalData === void 0 ? void 0 : modalData.type], "\xA0", modalData === null || modalData === void 0 ? void 0 : modalData.type]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
children: [iconJson[modalData === null || modalData === void 0 ? void 0 : modalData.level], "\xA0", modalData === null || modalData === void 0 ? void 0 : modalData.level]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "iconfont icon-biaoqian4 mr5"
}), modalData === null || modalData === void 0 || (_modalData$tags = modalData.tags) === null || _modalData$tags === void 0 ? void 0 : _modalData$tags.join(',')]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
children: ["\u751F\u6548\u65F6\u95F4", dayjs_min_default()(modalData === null || modalData === void 0 ? void 0 : modalData.createTime).format('ll')]
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: modalData === null || modalData === void 0 ? void 0 : modalData.language
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
children: ["\u5E38\u91CF/\u4EFB\u52A1:", modalData === null || modalData === void 0 ? void 0 : modalData.constantIssue]
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: DetailedAnalysismodules.example,
dangerouslySetInnerHTML: {
__html: (modalData === null || modalData === void 0 ? void 0 : modalData.example) || ''
}
})]
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(modal/* default */.Z, {
open: qualityshow,
title: "\u89C4\u5219\u8BF4\u660E",
width: 800,
footer: null,
onCancel: function onCancel() {
setqualityshow(false);
},
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("p", {
children: "\u4E00\u3001\u7B49\u7EA7\u89C4\u5219"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
style: {
marginLeft: '10px'
},
children: "1. \u7F3A\u9677\u7B49\u7EA7"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
style: {
marginLeft: '10px'
},
children: /*#__PURE__*/(0,jsx_runtime.jsx)(table/* default */.Z, {
dataSource: qualityList,
columns: [{
title: '等级',
dataIndex: 'live'
}, {
title: '缺陷评估规则',
dataIndex: 'gz'
}, {
title: '漏洞评估规则',
dataIndex: 'ld'
}, {
title: '代码规范评估规则',
dataIndex: 'gf'
}],
pagination: false
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
style: {
marginLeft: '10px'
},
children: "\u6CE8\uFF1A\u4EE3\u7801\u89C4\u8303\u8BC4\u4F30\u89C4\u5219\u4E2D\u6570\u503C\u6765\u6E90\u4E3A\u8BA1\u7B97\u6280\u672F\u503A\u52A1\u65F6\u95F4\u5360\u5F00\u53D1\u6240\u6709\u4EE3\u7801\u6240\u9700\u8981\u7684\u65F6\u95F4\u7684\u6BD4\u4F8B\uFF08Technical Debt Ratio\uFF09"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
style: {
marginLeft: '20px'
},
children: "Technical Debt Ratio = \u6280\u672F\u503A\u52A1\u65F6\u95F4 / \u5F00\u53D1\u65F6\u95F4"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
style: {
marginLeft: '20px'
},
children: "\u6280\u672F\u503A\u52A1\u65F6\u95F4\u4E3A\u4FEE\u590D\u6240\u6709\u95EE\u9898\u6240\u9700\u8981\u7684\u65F6\u95F4\u3002"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
children: "\u4E8C\u3001\u590D\u6742\u5EA6\u89C4\u5219"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
style: {
marginLeft: '10px'
},
children: "\u6839\u636E\u4EE3\u7801\u8DEF\u5F84\u6570\u8BA1\u7B97\u7684\u6570\u503C\uFF0C\u6BCF\u5F53\u4E00\u4E2A\u51FD\u6570\u7684\u63A7\u5236\u6D41\u5206\u53C9\u65F6\uFF0C\u590D\u6742\u5EA6\u8BA1\u6570\u5668\u5C31\u4F1A\u81EA\u589E\u4E00\u3002"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
style: {
marginLeft: '10px'
},
children: "\u6BCF\u4E2A\u7A0B\u5E8F\u8BED\u8A00\u7684\u5173\u952E\u5B57\u5BF9\u5E94\u7684\u590D\u6742\u5EA6\u6570\u636E\u4E0D\u540C\uFF0C\u4F46\u6BCF\u4E2A\u51FD\u6570\u7684\u6700\u5C0F\u590D\u6742\u5EA6\u4E3A1\u3002\uFF08\u7279\u5B9A\u8BED\u8A00\u7684\u8BE6\u7EC6\u6570\u636E\u7565\uFF09"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
children: "\u4E09\u3001\u4EE3\u7801\u8D28\u91CF\u5206\u89C4\u5219"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
style: {
marginLeft: '10px'
},
children: "\u4EE3\u7801\u8D28\u91CF\u5206 = 0.5*\u7F3A\u9677\u5206\u6570 + 0.3*\u6F0F\u6D1E\u5206\u6570 + 0.2*\u4EE3\u7801\u89C4\u8303\u6027\u5206\u6570"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
style: {
marginLeft: '10px'
},
children: "\u5176\u4E2D\uFF1A"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
style: {
marginLeft: '10px'
},
children: "\u7F3A\u9677/\u6F0F\u6D1E/\u4EE3\u7801\u89C4\u8303\u6027\u5206\u6570\u8BA1\u7B97\u89C4\u5219\u4E3A\uFF1A100 - 100 *((100*\u963B\u65AD\u6570 + 5*\u4E25\u91CD\u6570 + 3*\u4E3B\u8981\u6570 + 1*\u6B21\u6570\uFF09/ \u4EE3\u7801\u884C\u6570\uFF09"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
style: {
marginLeft: '10px'
},
children: "\u6CE8\uFF1A\u5206\u6570\u4E3A\u7A7A\u7684\u4EE3\u8868\u4E0D\u652F\u6301\u7684\u6587\u4EF6\u683C\u5F0F\u3002"
})]
})]
});
};
/* harmony default export */ var DetailedAnalysis = ((0,_umi_production_exports.connect)(function (_ref6) {
var exercise = _ref6.exercise,
user = _ref6.user;
return {
exercise: exercise,
user: user
};
})(Export));
/***/ }),
/***/ 66104:
/*!**************************************************************************!*\
!*** ./node_modules/_antd@5.9.0@antd/es/breadcrumb/index.js + 6 modules ***!
\**************************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ breadcrumb; }
});
// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
var _classnames_2_5_1_classnames = __webpack_require__(92310);
var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.43.0@rc-util/es/Children/toArray.js
var toArray = __webpack_require__(75440);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.43.0@rc-util/es/pickAttrs.js
var pickAttrs = __webpack_require__(47413);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/reactNode.js
var reactNode = __webpack_require__(92343);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
var context = __webpack_require__(36355);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.4.0@@ant-design/icons/es/icons/DownOutlined.js + 1 modules
var DownOutlined = __webpack_require__(46952);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/dropdown/dropdown.js
var dropdown = __webpack_require__(91857);
;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/BreadcrumbSeparator.js
"use client";
const BreadcrumbSeparator = _ref => {
let {
children
} = _ref;
const {
getPrefixCls
} = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
const prefixCls = getPrefixCls('breadcrumb');
return /*#__PURE__*/_react_17_0_2_react.createElement("li", {
className: `${prefixCls}-separator`,
"aria-hidden": "true"
}, children === '' ? children : children || '/');
};
BreadcrumbSeparator.__ANT_BREADCRUMB_SEPARATOR = true;
/* harmony default export */ var breadcrumb_BreadcrumbSeparator = (BreadcrumbSeparator);
;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/useItemRender.js
"use client";
var __rest = undefined && undefined.__rest || function (s, e) {
var t = {};
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
}
return t;
};
function getBreadcrumbName(route, params) {
if (route.title === undefined || route.title === null) {
return null;
}
const paramsKeys = Object.keys(params).join('|');
return typeof route.title === 'object' ? route.title : String(route.title).replace(new RegExp(`:(${paramsKeys})`, 'g'), (replacement, key) => params[key] || replacement);
}
function renderItem(prefixCls, item, children, href) {
if (children === null || children === undefined) {
return null;
}
const {
className,
onClick
} = item,
restItem = __rest(item, ["className", "onClick"]);
const passedProps = Object.assign(Object.assign({}, (0,pickAttrs/* default */.Z)(restItem, {
data: true,
aria: true
})), {
onClick
});
if (href !== undefined) {
return /*#__PURE__*/_react_17_0_2_react.createElement("a", Object.assign({}, passedProps, {
className: _classnames_2_5_1_classnames_default()(`${prefixCls}-link`, className),
href: href
}), children);
}
return /*#__PURE__*/_react_17_0_2_react.createElement("span", Object.assign({}, passedProps, {
className: _classnames_2_5_1_classnames_default()(`${prefixCls}-link`, className)
}), children);
}
function useItemRender(prefixCls, itemRender) {
const mergedItemRender = (item, params, routes, path, href) => {
if (itemRender) {
return itemRender(item, params, routes, path);
}
const name = getBreadcrumbName(item, params);
return renderItem(prefixCls, item, name, href);
};
return mergedItemRender;
}
;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/BreadcrumbItem.js
"use client";
var BreadcrumbItem_rest = undefined && undefined.__rest || function (s, e) {
var t = {};
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
}
return t;
};
const InternalBreadcrumbItem = props => {
const {
prefixCls,
separator = '/',
children,
menu,
overlay,
dropdownProps,
href
} = props;
// Warning for deprecated usage
if (false) {}
/** If overlay is have Wrap a Dropdown */
const renderBreadcrumbNode = breadcrumbItem => {
if (menu || overlay) {
const mergeDropDownProps = Object.assign({}, dropdownProps);
if (menu) {
const _a = menu || {},
{
items
} = _a,
menuProps = BreadcrumbItem_rest(_a, ["items"]);
mergeDropDownProps.menu = Object.assign(Object.assign({}, menuProps), {
items: items === null || items === void 0 ? void 0 : items.map((_a, index) => {
var {
key,
title,
label,
path
} = _a,
itemProps = BreadcrumbItem_rest(_a, ["key", "title", "label", "path"]);
let mergedLabel = label !== null && label !== void 0 ? label : title;
if (path) {
mergedLabel = /*#__PURE__*/_react_17_0_2_react.createElement("a", {
href: `${href}${path}`
}, mergedLabel);
}
return Object.assign(Object.assign({}, itemProps), {
key: key !== null && key !== void 0 ? key : index,
label: mergedLabel
});
})
});
} else if (overlay) {
mergeDropDownProps.overlay = overlay;
}
return /*#__PURE__*/_react_17_0_2_react.createElement(dropdown/* default */.Z, Object.assign({
placement: "bottom"
}, mergeDropDownProps), /*#__PURE__*/_react_17_0_2_react.createElement("span", {
className: `${prefixCls}-overlay-link`
}, breadcrumbItem, /*#__PURE__*/_react_17_0_2_react.createElement(DownOutlined/* default */.Z, null)));
}
return breadcrumbItem;
};
// wrap to dropDown
const link = renderBreadcrumbNode(children);
if (link !== undefined && link !== null) {
return /*#__PURE__*/_react_17_0_2_react.createElement(_react_17_0_2_react.Fragment, null, /*#__PURE__*/_react_17_0_2_react.createElement("li", null, link), separator && /*#__PURE__*/_react_17_0_2_react.createElement(breadcrumb_BreadcrumbSeparator, null, separator));
}
return null;
};
const BreadcrumbItem = props => {
const {
prefixCls: customizePrefixCls,
children,
href
} = props,
restProps = BreadcrumbItem_rest(props, ["prefixCls", "children", "href"]);
const {
getPrefixCls
} = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
const prefixCls = getPrefixCls('breadcrumb', customizePrefixCls);
return /*#__PURE__*/_react_17_0_2_react.createElement(InternalBreadcrumbItem, Object.assign({}, restProps, {
prefixCls: prefixCls
}), renderItem(prefixCls, restProps, children, href));
};
BreadcrumbItem.__ANT_BREADCRUMB_ITEM = true;
/* harmony default export */ var breadcrumb_BreadcrumbItem = (BreadcrumbItem);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/style/index.js
var style = __webpack_require__(17313);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/genComponentStyleHook.js
var genComponentStyleHook = __webpack_require__(83116);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/statistic.js
var statistic = __webpack_require__(37613);
;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/style/index.js
const genBreadcrumbStyle = token => {
const {
componentCls,
iconCls
} = token;
return {
[componentCls]: Object.assign(Object.assign({}, (0,style/* resetComponent */.Wf)(token)), {
color: token.itemColor,
fontSize: token.fontSize,
[iconCls]: {
fontSize: token.iconFontSize
},
ol: {
display: 'flex',
flexWrap: 'wrap',
margin: 0,
padding: 0,
listStyle: 'none'
},
a: Object.assign({
color: token.linkColor,
transition: `color ${token.motionDurationMid}`,
padding: `0 ${token.paddingXXS}px`,
borderRadius: token.borderRadiusSM,
height: token.lineHeight * token.fontSize,
display: 'inline-block',
marginInline: -token.marginXXS,
'&:hover': {
color: token.linkHoverColor,
backgroundColor: token.colorBgTextHover
}
}, (0,style/* genFocusStyle */.Qy)(token)),
[`li:last-child`]: {
color: token.lastItemColor
},
[`${componentCls}-separator`]: {
marginInline: token.separatorMargin,
color: token.separatorColor
},
[`${componentCls}-link`]: {
[`
> ${iconCls} + span,
> ${iconCls} + a
`]: {
marginInlineStart: token.marginXXS
}
},
[`${componentCls}-overlay-link`]: {
borderRadius: token.borderRadiusSM,
height: token.lineHeight * token.fontSize,
display: 'inline-block',
padding: `0 ${token.paddingXXS}px`,
marginInline: -token.marginXXS,
[`> ${iconCls}`]: {
marginInlineStart: token.marginXXS,
fontSize: token.fontSizeIcon
},
'&:hover': {
color: token.linkHoverColor,
backgroundColor: token.colorBgTextHover,
a: {
color: token.linkHoverColor
}
},
a: {
'&:hover': {
backgroundColor: 'transparent'
}
}
},
// rtl style
[`&${token.componentCls}-rtl`]: {
direction: 'rtl'
}
})
};
};
// ============================== Export ==============================
/* harmony default export */ var breadcrumb_style = ((0,genComponentStyleHook/* default */.Z)('Breadcrumb', token => {
const BreadcrumbToken = (0,statistic/* merge */.TS)(token, {});
return [genBreadcrumbStyle(BreadcrumbToken)];
}, token => ({
itemColor: token.colorTextDescription,
lastItemColor: token.colorText,
iconFontSize: token.fontSize,
linkColor: token.colorTextDescription,
linkHoverColor: token.colorText,
separatorColor: token.colorTextDescription,
separatorMargin: token.marginXS
})));
;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/useItems.js
var useItems_rest = undefined && undefined.__rest || function (s, e) {
var t = {};
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
}
return t;
};
function route2item(route) {
const {
breadcrumbName,
children
} = route,
rest = useItems_rest(route, ["breadcrumbName", "children"]);
const clone = Object.assign({
title: breadcrumbName
}, rest);
if (children) {
clone.menu = {
items: children.map(_a => {
var {
breadcrumbName: itemBreadcrumbName
} = _a,
itemProps = useItems_rest(_a, ["breadcrumbName"]);
return Object.assign(Object.assign({}, itemProps), {
title: itemBreadcrumbName
});
})
};
}
return clone;
}
function useItems(items, routes) {
return (0,_react_17_0_2_react.useMemo)(() => {
if (items) {
return items;
}
if (routes) {
return routes.map(route2item);
}
return null;
}, [items, routes]);
}
;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/Breadcrumb.js
"use client";
var Breadcrumb_rest = undefined && undefined.__rest || function (s, e) {
var t = {};
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
}
return t;
};
const getPath = (params, path) => {
if (path === undefined) {
return path;
}
let mergedPath = (path || '').replace(/^\//, '');
Object.keys(params).forEach(key => {
mergedPath = mergedPath.replace(`:${key}`, params[key]);
});
return mergedPath;
};
const Breadcrumb = props => {
const {
prefixCls: customizePrefixCls,
separator = '/',
style,
className,
rootClassName,
routes: legacyRoutes,
items,
children,
itemRender,
params = {}
} = props,
restProps = Breadcrumb_rest(props, ["prefixCls", "separator", "style", "className", "rootClassName", "routes", "items", "children", "itemRender", "params"]);
const {
getPrefixCls,
direction,
breadcrumb
} = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
let crumbs;
const prefixCls = getPrefixCls('breadcrumb', customizePrefixCls);
const [wrapSSR, hashId] = breadcrumb_style(prefixCls);
const mergedItems = useItems(items, legacyRoutes);
if (false) {}
const mergedItemRender = useItemRender(prefixCls, itemRender);
if (mergedItems && mergedItems.length > 0) {
// generated by route
const paths = [];
const itemRenderRoutes = items || legacyRoutes;
crumbs = mergedItems.map((item, index) => {
const {
path,
key,
type,
menu,
overlay,
onClick,
className: itemClassName,
separator: itemSeparator,
dropdownProps
} = item;
const mergedPath = getPath(params, path);
if (mergedPath !== undefined) {
paths.push(mergedPath);
}
const mergedKey = key !== null && key !== void 0 ? key : index;
if (type === 'separator') {
return /*#__PURE__*/_react_17_0_2_react.createElement(breadcrumb_BreadcrumbSeparator, {
key: mergedKey
}, itemSeparator);
}
const itemProps = {};
const isLastItem = index === mergedItems.length - 1;
if (menu) {
itemProps.menu = menu;
} else if (overlay) {
itemProps.overlay = overlay;
}
let {
href
} = item;
if (paths.length && mergedPath !== undefined) {
href = `#/${paths.join('/')}`;
}
return /*#__PURE__*/_react_17_0_2_react.createElement(InternalBreadcrumbItem, Object.assign({
key: mergedKey
}, itemProps, (0,pickAttrs/* default */.Z)(item, {
data: true,
aria: true
}), {
className: itemClassName,
dropdownProps: dropdownProps,
href: href,
separator: isLastItem ? '' : separator,
onClick: onClick,
prefixCls: prefixCls
}), mergedItemRender(item, params, itemRenderRoutes, paths, href));
});
} else if (children) {
const childrenLength = (0,toArray/* default */.Z)(children).length;
crumbs = (0,toArray/* default */.Z)(children).map((element, index) => {
if (!element) {
return element;
}
// =================== Warning =====================
if (false) {}
false ? 0 : void 0;
const isLastItem = index === childrenLength - 1;
return (0,reactNode/* cloneElement */.Tm)(element, {
separator: isLastItem ? '' : separator,
key: index
});
});
}
const breadcrumbClassName = _classnames_2_5_1_classnames_default()(prefixCls, breadcrumb === null || breadcrumb === void 0 ? void 0 : breadcrumb.className, {
[`${prefixCls}-rtl`]: direction === 'rtl'
}, className, rootClassName, hashId);
const mergedStyle = Object.assign(Object.assign({}, breadcrumb === null || breadcrumb === void 0 ? void 0 : breadcrumb.style), style);
return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement("nav", Object.assign({
className: breadcrumbClassName,
style: mergedStyle
}, restProps), /*#__PURE__*/_react_17_0_2_react.createElement("ol", null, crumbs)));
};
Breadcrumb.Item = breadcrumb_BreadcrumbItem;
Breadcrumb.Separator = breadcrumb_BreadcrumbSeparator;
if (false) {}
/* harmony default export */ var breadcrumb_Breadcrumb = (Breadcrumb);
;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/index.js
"use client";
/* harmony default export */ var breadcrumb = (breadcrumb_Breadcrumb);
/***/ })
}]);