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__Assis...

1158 lines
41 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

"use strict";
(self["webpackChunk"] = self["webpackChunk"] || []).push([[33356],{
/***/ 80354:
/*!************************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/FolderOpenOutlined.js + 1 modules ***!
\************************************************************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_FolderOpenOutlined; }
});
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/esm/extends.js
var esm_extends = __webpack_require__(26508);
// 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.3.1@@ant-design/icons-svg/es/asn/FolderOpenOutlined.js
// This icon file is generated automatically.
var FolderOpenOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M928 444H820V330.4c0-17.7-14.3-32-32-32H473L355.7 186.2a8.15 8.15 0 00-5.5-2.2H96c-17.7 0-32 14.3-32 32v592c0 17.7 14.3 32 32 32h698c13 0 24.8-7.9 29.7-20l134-332c1.5-3.8 2.3-7.9 2.3-12 0-17.7-14.3-32-32-32zM136 256h188.5l119.6 114.4H748V444H238c-13 0-24.8 7.9-29.7 20L136 643.2V256zm635.3 512H159l103.3-256h612.4L771.3 768z" } }] }, "name": "folder-open", "theme": "outlined" };
/* harmony default export */ var asn_FolderOpenOutlined = (FolderOpenOutlined);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/components/AntdIcon.js + 3 modules
var AntdIcon = __webpack_require__(91851);
;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/FolderOpenOutlined.js
// GENERATE BY ./scripts/generate.ts
// DON NOT EDIT IT MANUALLY
var FolderOpenOutlined_FolderOpenOutlined = function FolderOpenOutlined(props, ref) {
return /*#__PURE__*/_react_17_0_2_react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
ref: ref,
icon: asn_FolderOpenOutlined
}));
};
if (false) {}
/* harmony default export */ var icons_FolderOpenOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(FolderOpenOutlined_FolderOpenOutlined));
/***/ }),
/***/ 34270:
/*!********************************************************************!*\
!*** ./src/pages/Classrooms/Lists/Assistant/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 */ Assistant; }
});
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/regeneratorRuntime.js
var regeneratorRuntime = __webpack_require__(10574);
var regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(regeneratorRuntime);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/asyncToGenerator.js
var asyncToGenerator = __webpack_require__(39343);
var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/slicedToArray.js
var slicedToArray = __webpack_require__(11006);
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: ./node_modules/_antd@5.9.0@antd/es/message/index.js + 4 modules
var message = __webpack_require__(8591);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/tree/index.js + 8 modules
var tree = __webpack_require__(51218);
// EXTERNAL MODULE: ./src/components/ManageHead/index.tsx + 1 modules
var ManageHead = __webpack_require__(17256);
// EXTERNAL MODULE: ./src/utils/authority.ts
var authority = __webpack_require__(76107);
// EXTERNAL MODULE: ./src/utils/export.ts
var utils_export = __webpack_require__(64125);
// EXTERNAL MODULE: ./src/.umi-production/exports.ts + 8 modules
var _umi_production_exports = __webpack_require__(66660);
// EXTERNAL MODULE: ./src/pages/Classrooms/Lists/Teachers/components/ChangeAdmin.tsx
var ChangeAdmin = __webpack_require__(23913);
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/Assistant/index.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var Assistantmodules = ({"banner_spacing":"banner_spacing___olJ2m","tree_line_height":"tree_line_height___RdE5b","title":"title___Srrsx"});
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/jsx-runtime.js
var jsx_runtime = __webpack_require__(37712);
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/Assistant/index.tsx
// 实训作业
var ZhujiaoPage = function ZhujiaoPage(_ref) {
var teachers = _ref.teachers,
globalSetting = _ref.globalSetting,
classroomList = _ref.classroomList,
loading = _ref.loading,
dispatch = _ref.dispatch;
var params = (0,_umi_production_exports.useParams)();
// 图文作业
var _useState = (0,_react_17_0_2_react.useState)([{
title: '全选',
key: 'normal',
children: [{
title: '作业管理',
key: 'basic',
children: [{
title: '创建作业(可新建、重命名和编辑作业)',
key: 'can_create'
}, {
title: '发布和截止作业',
key: 'can_publish'
}, {
title: '开启补交',
key: 'can_late'
}, {
title: '开启匿评',
key: 'can_anonymous_comment'
}, {
title: '开启匿评申诉',
key: 'can_anonymous_appeal'
}, {
title: "立即截止(可将“进行中”的作业立即截止)",
key: 'can_stop'
}]
}, {
title: '作业评定',
key: 'setting',
children: [{
title: "查看学生作业",
key: 'can_view'
}, {
title: "评阅作业(可使用评阅、调分和一键点评功能)",
key: 'can_appraise'
}, {
title: "打回重做(可使用打回重做、一键打回功能)",
key: 'can_redo'
}]
}]
}]),
_useState2 = slicedToArray_default()(_useState, 2),
tuwenTree = _useState2[0],
setTuWenTree = _useState2[1];
var _useState3 = (0,_react_17_0_2_react.useState)([]),
_useState4 = slicedToArray_default()(_useState3, 2),
tuwenDefChecked = _useState4[0],
setTuWenDefChecked = _useState4[1];
// 实训作业
var _useState5 = (0,_react_17_0_2_react.useState)([{
title: '全选',
key: 'practice',
children: [{
title: '作业管理',
key: 'basic',
children: [{
title: '创建作业(可选用实验创建、重命名、编辑作业)',
key: 'can_create'
}, {
title: '发布和截止作业',
key: 'can_publish'
}, {
title: '开启补交',
key: 'can_late'
}, {
title: "立即截止(可将“进行中”的作业立即截止)",
key: 'can_stop'
}]
}, {
title: '作业评定',
key: 'setting',
children: [{
title: "查看学生作业",
key: 'can_view'
}, {
title: "评阅作业(可使用一键点评、追加点评功能)",
key: 'can_appraise'
}, {
title: "打回重做(可使用打回重做、一键打回功能)",
key: 'can_redo'
}]
}]
}]),
_useState6 = slicedToArray_default()(_useState5, 2),
shixunTree = _useState6[0],
setShiXunTree = _useState6[1];
var _useState7 = (0,_react_17_0_2_react.useState)([]),
_useState8 = slicedToArray_default()(_useState7, 2),
shixunDefChecked = _useState8[0],
setShiXunDefChecked = _useState8[1];
// 分组作业
var _useState9 = (0,_react_17_0_2_react.useState)([{
title: '全选',
key: 'group',
children: [{
title: '作业管理',
key: 'basic',
children: [{
title: '创建作业(可新建、重命名、编辑作业和发布截止作业)',
key: 'can_create'
}, {
title: '发布和截止作业',
key: 'can_publish'
}, {
title: '开启补交',
key: 'can_late'
}, {
title: '开启匿评',
key: 'can_anonymous_comment'
}, {
title: '开启匿评申诉',
key: 'can_anonymous_appeal'
}, {
title: "立即截止(可将“进行中”的作业立即截止)",
key: 'can_stop'
}]
}, {
title: '作业评定',
key: 'setting',
children: [{
title: "查看学生作业",
key: 'can_view'
}, {
title: "评阅作业(可使用评阅、调分功能)",
key: 'can_appraise'
}]
}]
}]),
_useState10 = slicedToArray_default()(_useState9, 2),
fenzuTree = _useState10[0],
setFenZuTree = _useState10[1];
var _useState11 = (0,_react_17_0_2_react.useState)([]),
_useState12 = slicedToArray_default()(_useState11, 2),
fenzuDefChecked = _useState12[0],
setFenZuDefChecked = _useState12[1];
// 编程作业
var _useState13 = (0,_react_17_0_2_react.useState)([{
title: '全选',
key: 'hack',
children: [{
title: '作业管理',
key: 'basic',
// disabled: false,
children: [{
title: '创建作业(可新建作业、重命名、编辑作业)',
key: 'can_create'
// disableCheckbox: false,
}, {
title: '发布和截止作业',
key: 'can_publish'
}, {
title: '开启补交',
key: 'can_late'
}, {
title: "立即截止(可将“进行中”的作业立即截止)",
key: 'can_stop'
}]
}, {
title: '作业评定',
key: 'setting',
children: [{
title: "查看学生作业",
key: 'can_view'
}, {
title: "作业排行榜",
key: 'can_exam_leaderboard'
}, {
title: "题目排行榜",
key: 'can_question_eaderboard'
}, {
title: "评阅作业(可使用点评作业、点评代码、调分功能)",
key: 'can_appraise'
}]
}]
}]),
_useState14 = slicedToArray_default()(_useState13, 2),
bianchengTree = _useState14[0],
setBianChengTree = _useState14[1];
var _useState15 = (0,_react_17_0_2_react.useState)([]),
_useState16 = slicedToArray_default()(_useState15, 2),
bianchengDefChecked = _useState16[0],
setBianChengDefChecked = _useState16[1];
// 在线考试
var _useState17 = (0,_react_17_0_2_react.useState)([{
title: '全选',
key: 'exercise',
children: [{
title: '试卷管理',
key: 'basic',
children: [{
title: '创建试卷(可创建试卷、编辑试卷)',
key: 'can_create'
}, {
title: '发布和截止考试',
key: 'can_publish'
}, {
title: '开启补考',
key: 'can_late'
}, {
title: "结束考试(可将“进行中”的考试立即结束)",
key: 'can_stop'
}]
}, {
title: "试卷预览",
key: 'can_preview'
}, {
title: "强制交卷",
key: 'can_forcing_commit'
}, {
title: '试卷评定',
key: 'setting',
children: [{
title: "查看学生试卷",
key: 'can_view'
}, {
title: "评阅试卷(可使用评阅、集中批量批阅、组内顺序评阅功能)",
key: 'can_appraise'
}, {
title: "打回重做",
key: 'can_redo'
}, {
title: "延时",
key: 'can_delay'
}]
}]
}]),
_useState18 = slicedToArray_default()(_useState17, 2),
kaoshiTree = _useState18[0],
setKaoShiTree = _useState18[1];
var _useState19 = (0,_react_17_0_2_react.useState)([]),
_useState20 = slicedToArray_default()(_useState19, 2),
kaoshiDefChecked = _useState20[0],
setKaoShiDefChecked = _useState20[1];
// 请求参数
var _useState21 = (0,_react_17_0_2_react.useState)({
"normal": {
"basic": {
"can_create": true,
"can_publish": true,
"can_late": true,
"can_stop": true,
"can_anonymous_comment": true,
"can_anonymous_appeal": true
},
"setting": {
"can_view": true,
"can_appraise": true,
"can_redo": true
}
},
"group": {
"basic": {
"can_create": true,
"can_publish": true,
"can_late": true,
"can_stop": true,
"can_anonymous_comment": true,
"can_anonymous_appeal": true
},
"setting": {
"can_view": true,
"can_appraise": true
}
},
"practice": {
"basic": {
"can_create": true,
"can_publish": true,
"can_late": true,
"can_stop": true
},
"setting": {
"can_view": true,
"can_appraise": true,
"can_redo": true
}
},
"hack": {
"basic": {
"can_create": true,
"can_publish": true,
"can_late": true,
"can_stop": true,
"can_delete": true
},
"setting": {
"can_view": true,
"can_appraise": true,
"can_exam_leaderboard": true,
"can_question_eaderboard": true
}
},
"exercise": {
"basic": {
"can_create": true,
"can_publish": true,
"can_late": true,
"can_stop": true
},
"can_preview": true,
"can_forcing_commit": true,
"setting": {
"can_view": true,
"can_appraise": true,
"can_redo": true,
"can_delay": true
}
}
}),
_useState22 = slicedToArray_default()(_useState21, 2),
permissions = _useState22[0],
setPermissions = _useState22[1];
(0,_react_17_0_2_react.useEffect)(function () {
console.log((0,authority/* isLogin */.bg)());
dispatch({
type: 'classroomList/getAssistantPermissions',
payload: {
course_id: params.course_id
}
});
}, [(0,authority/* isLogin */.bg)()]);
(0,_react_17_0_2_react.useEffect)(function () {
if (classroomList.AssistantObject.normal) {
var _Object$keys, _Object$keys2, _Object$keys3, _Object$keys4, _Object$keys5;
setTuWenDefChecked((_Object$keys = Object.keys(classroomList.AssistantObject.normal)) === null || _Object$keys === void 0 ? void 0 : _Object$keys.map(function (i) {
if (classroomList.AssistantObject.normal[i] === true) return i;
}).filter(function (i) {
return !!i;
}));
setFenZuDefChecked((_Object$keys2 = Object.keys(classroomList.AssistantObject.group)) === null || _Object$keys2 === void 0 ? void 0 : _Object$keys2.map(function (i) {
if (classroomList.AssistantObject.group[i] === true) return i;
}).filter(function (i) {
return !!i;
}));
setShiXunDefChecked((_Object$keys3 = Object.keys(classroomList.AssistantObject.practice)) === null || _Object$keys3 === void 0 ? void 0 : _Object$keys3.map(function (i) {
if (classroomList.AssistantObject.practice[i] === true) return i;
}).filter(function (i) {
return !!i;
}));
setBianChengDefChecked((_Object$keys4 = Object.keys(classroomList.AssistantObject.hack)) === null || _Object$keys4 === void 0 ? void 0 : _Object$keys4.map(function (i) {
if (classroomList.AssistantObject.hack[i] === true) return i;
}).filter(function (i) {
return !!i;
}));
setKaoShiDefChecked((_Object$keys5 = Object.keys(classroomList.AssistantObject.exercise)) === null || _Object$keys5 === void 0 ? void 0 : _Object$keys5.map(function (i) {
if (classroomList.AssistantObject.exercise[i] === true) return i;
}).filter(function (i) {
return !!i;
}));
}
setPermissions(classroomList.AssistantObject);
}, [classroomList.AssistantObject]);
// 选中触发事件:
var _onCheck = /*#__PURE__*/function () {
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee(checkedKeys, name) {
var i;
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
for (i in permissions[name]) {
permissions[name][i] = false;
}
;
checkedKeys.map(function (item) {
permissions[name][item] = !permissions[name][item];
});
_context.t0 = name;
_context.next = _context.t0 === 'normal' ? 6 : _context.t0 === 'group' ? 8 : _context.t0 === 'practice' ? 10 : _context.t0 === 'hack' ? 12 : _context.t0 === 'exercise' ? 14 : 16;
break;
case 6:
setTuWenDefChecked(checkedKeys);
return _context.abrupt("break", 16);
case 8:
setFenZuDefChecked(checkedKeys);
return _context.abrupt("break", 16);
case 10:
setShiXunDefChecked(checkedKeys);
return _context.abrupt("break", 16);
case 12:
setBianChengDefChecked(checkedKeys);
return _context.abrupt("break", 16);
case 14:
setKaoShiDefChecked(checkedKeys);
return _context.abrupt("break", 16);
case 16:
dispatch({
type: 'classroomList/setAssistantPermissions',
payload: {
permissions: {
permissions: permissions
},
course_id: params.course_id
}
});
message/* default */.ZP.success("操作成功"); //提示操作成功
case 18:
case "end":
return _context.stop();
}
}, _callee);
}));
return function onCheck(_x, _x2) {
return _ref2.apply(this, arguments);
};
}();
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(ManageHead/* default */.Z, {
active: 3,
children: [(0,authority/* isAdminOrCreator */.aN)() && /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "font16 mr20 current c-blue",
onClick: function onClick() {
dispatch({
type: 'teachers/setActionTabs',
payload: {
key: "更换管理员"
}
});
},
children: "\u66F4\u6362\u7BA1\u7406\u5458"
}), (0,authority/* isAdmins */.eB)() && /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "font16 current c-blue",
onClick: function onClick(e) {
(0,utils_export/* ExportCourseStudentsInfo */.eV)(params);
},
children: "\u5BFC\u51FA\u5B66\u751F"
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)(ChangeAdmin/* default */.Z, {}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
style: {
background: "#fafafa",
marginBottom: "20px"
},
children: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
style: {
padding: "20px",
background: "white"
},
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
style: {
background: "#fafafa",
padding: "10px",
color: "#605d5d"
},
children: ["\u52A9\u6559\u57FA\u7840\u7BA1\u7406\u6743\u9650\uFF1A", /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: "1\u3001\u73ED\u7EA7\u7BA1\u7406\uFF08\u53EF\u65B0\u5EFA\u548C\u5220\u9664\u5206\u73ED\u3001\u5206\u73ED\u91CD\u547D\u540D\u548C\u79FB\u52A8\u5B66\u751F\u5206\u73ED\uFF09;"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: "2\u3001\u5B66\u751F\u7BA1\u7406\uFF08\u53EF\u6DFB\u52A0\u548C\u5220\u9664\u5B66\u751F\uFF09;"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: "3\u3001\u4F5C\u4E1A\u5217\u8868\u7BA1\u7406\uFF08\u53EF\u65B0\u5EFA\u5B50\u76EE\u5F55\u3001\u79FB\u52A8\u4F5C\u4E1A\u5230\u76EE\u5F55\uFF09\u3002"
})]
})
})
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: Assistantmodules.banner_spacing,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: Assistantmodules.title,
children: "\u8BFE\u5802\u5B9E\u9A8C"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(tree/* default */.Z, {
selectable: false,
className: Assistantmodules.tree_line_height,
checkable: true,
checkedKeys: shixunDefChecked,
onCheck: function onCheck(checkedKeys) {
return _onCheck(checkedKeys, 'practice');
},
treeData: shixunTree
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: Assistantmodules.banner_spacing,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: Assistantmodules.title,
children: "\u56FE\u6587\u4F5C\u4E1A"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(tree/* default */.Z, {
selectable: false,
className: Assistantmodules.tree_line_height,
checkable: true,
checkedKeys: tuwenDefChecked,
onCheck: function onCheck(checkedKeys) {
return _onCheck(checkedKeys, 'normal');
},
treeData: tuwenTree
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: Assistantmodules.banner_spacing,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: Assistantmodules.title,
children: "\u5206\u7EC4\u4F5C\u4E1A"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(tree/* default */.Z, {
selectable: false,
className: Assistantmodules.tree_line_height,
checkable: true,
checkedKeys: fenzuDefChecked,
onCheck: function onCheck(checkedKeys) {
return _onCheck(checkedKeys, 'group');
},
treeData: fenzuTree
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: Assistantmodules.banner_spacing,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: Assistantmodules.title,
children: "\u7F16\u7A0B\u4F5C\u4E1A"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(tree/* default */.Z, {
selectable: false,
className: Assistantmodules.tree_line_height,
checkable: true,
checkedKeys: bianchengDefChecked,
onCheck: function onCheck(checkedKeys) {
return _onCheck(checkedKeys, 'hack');
},
treeData: bianchengTree
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: Assistantmodules.banner_spacing,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: Assistantmodules.title,
children: "\u5728\u7EBF\u8003\u8BD5"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(tree/* default */.Z, {
selectable: false,
className: Assistantmodules.tree_line_height,
checkable: true,
checkedKeys: kaoshiDefChecked,
onCheck: function onCheck(checkedKeys) {
return _onCheck(checkedKeys, 'exercise');
},
treeData: kaoshiTree
})]
})]
});
};
/* harmony default export */ var Assistant = ((0,_umi_production_exports.connect)(function (_ref3) {
var teachers = _ref3.teachers,
loading = _ref3.loading,
globalSetting = _ref3.globalSetting,
classroomList = _ref3.classroomList;
return {
teachers: teachers,
globalSetting: globalSetting,
classroomList: classroomList,
loading: loading.effects
};
})(ZhujiaoPage));
/***/ }),
/***/ 8378:
/*!*******************************************************************!*\
!*** ./node_modules/_antd@5.9.0@antd/es/style/motion/collapse.js ***!
\*******************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__) {
const genCollapseMotion = token => ({
[token.componentCls]: {
// For common/openAnimation
[`${token.antCls}-motion-collapse-legacy`]: {
overflow: 'hidden',
'&-active': {
transition: `height ${token.motionDurationMid} ${token.motionEaseInOut},
opacity ${token.motionDurationMid} ${token.motionEaseInOut} !important`
}
},
[`${token.antCls}-motion-collapse`]: {
overflow: 'hidden',
transition: `height ${token.motionDurationMid} ${token.motionEaseInOut},
opacity ${token.motionDurationMid} ${token.motionEaseInOut} !important`
}
}
});
/* harmony default export */ __webpack_exports__.Z = (genCollapseMotion);
/***/ }),
/***/ 51218:
/*!********************************************************************!*\
!*** ./node_modules/_antd@5.9.0@antd/es/tree/index.js + 8 modules ***!
\********************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ tree; }
});
// EXTERNAL MODULE: ./node_modules/_rc-tree@5.7.12@rc-tree/es/index.js + 7 modules
var es = __webpack_require__(10253);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/esm/toConsumableArray.js + 2 modules
var toConsumableArray = __webpack_require__(42371);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/FileOutlined.js + 1 modules
var FileOutlined = __webpack_require__(87970);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/FolderOpenOutlined.js + 1 modules
var FolderOpenOutlined = __webpack_require__(80354);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/esm/extends.js
var esm_extends = __webpack_require__(26508);
// 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.3.1@@ant-design/icons-svg/es/asn/FolderOutlined.js
// This icon file is generated automatically.
var FolderOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M880 298.4H521L403.7 186.2a8.15 8.15 0 00-5.5-2.2H144c-17.7 0-32 14.3-32 32v592c0 17.7 14.3 32 32 32h736c17.7 0 32-14.3 32-32V330.4c0-17.7-14.3-32-32-32zM840 768H184V256h188.5l119.6 114.4H840V768z" } }] }, "name": "folder", "theme": "outlined" };
/* harmony default export */ var asn_FolderOutlined = (FolderOutlined);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/components/AntdIcon.js + 3 modules
var AntdIcon = __webpack_require__(91851);
;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/FolderOutlined.js
// GENERATE BY ./scripts/generate.ts
// DON NOT EDIT IT MANUALLY
var FolderOutlined_FolderOutlined = function FolderOutlined(props, ref) {
return /*#__PURE__*/_react_17_0_2_react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
ref: ref,
icon: asn_FolderOutlined
}));
};
if (false) {}
/* harmony default export */ var icons_FolderOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(FolderOutlined_FolderOutlined));
// EXTERNAL MODULE: ./node_modules/_classnames@2.3.2@classnames/index.js
var _classnames_2_3_2_classnames = __webpack_require__(12124);
var _classnames_2_3_2_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_3_2_classnames);
// EXTERNAL MODULE: ./node_modules/_rc-tree@5.7.12@rc-tree/es/util.js
var util = __webpack_require__(35654);
// EXTERNAL MODULE: ./node_modules/_rc-tree@5.7.12@rc-tree/es/utils/treeUtil.js
var treeUtil = __webpack_require__(71430);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
var context = __webpack_require__(36355);
;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.3.1@@ant-design/icons-svg/es/asn/HolderOutlined.js
// This icon file is generated automatically.
var HolderOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M300 276.5a56 56 0 1056-97 56 56 0 00-56 97zm0 284a56 56 0 1056-97 56 56 0 00-56 97zM640 228a56 56 0 10112 0 56 56 0 00-112 0zm0 284a56 56 0 10112 0 56 56 0 00-112 0zM300 844.5a56 56 0 1056-97 56 56 0 00-56 97zM640 796a56 56 0 10112 0 56 56 0 00-112 0z" } }] }, "name": "holder", "theme": "outlined" };
/* harmony default export */ var asn_HolderOutlined = (HolderOutlined);
;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/HolderOutlined.js
// GENERATE BY ./scripts/generate.ts
// DON NOT EDIT IT MANUALLY
var HolderOutlined_HolderOutlined = function HolderOutlined(props, ref) {
return /*#__PURE__*/_react_17_0_2_react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
ref: ref,
icon: asn_HolderOutlined
}));
};
if (false) {}
/* harmony default export */ var icons_HolderOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(HolderOutlined_HolderOutlined));
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/motion.js
var _util_motion = __webpack_require__(62892);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/tree/style/index.js
var tree_style = __webpack_require__(20648);
;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/tree/utils/dropIndicator.js
"use client";
const offset = 4;
function dropIndicatorRender(props) {
const {
dropPosition,
dropLevelOffset,
prefixCls,
indent,
direction = 'ltr'
} = props;
const startPosition = direction === 'ltr' ? 'left' : 'right';
const endPosition = direction === 'ltr' ? 'right' : 'left';
const style = {
[startPosition]: -dropLevelOffset * indent + offset,
[endPosition]: 0
};
switch (dropPosition) {
case -1:
style.top = -3;
break;
case 1:
style.bottom = -3;
break;
default:
// dropPosition === 0
style.bottom = -3;
style[startPosition] = indent + offset;
break;
}
return /*#__PURE__*/_react_17_0_2_react.createElement("div", {
style: style,
className: `${prefixCls}-drop-indicator`
});
}
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/tree/utils/iconUtil.js + 2 modules
var iconUtil = __webpack_require__(1711);
;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/tree/Tree.js
"use client";
const Tree = /*#__PURE__*/_react_17_0_2_react.forwardRef((props, ref) => {
const {
getPrefixCls,
direction,
virtual,
tree
} = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
const {
prefixCls: customizePrefixCls,
className,
showIcon = false,
showLine,
switcherIcon,
blockNode = false,
children,
checkable = false,
selectable = true,
draggable,
motion: customMotion,
style
} = props;
const prefixCls = getPrefixCls('tree', customizePrefixCls);
const rootPrefixCls = getPrefixCls();
const motion = customMotion !== null && customMotion !== void 0 ? customMotion : Object.assign(Object.assign({}, (0,_util_motion/* default */.Z)(rootPrefixCls)), {
motionAppear: false
});
const newProps = Object.assign(Object.assign({}, props), {
checkable,
selectable,
showIcon,
motion,
blockNode,
showLine: Boolean(showLine),
dropIndicatorRender: dropIndicatorRender
});
const [wrapSSR, hashId] = (0,tree_style/* default */.ZP)(prefixCls);
const draggableConfig = _react_17_0_2_react.useMemo(() => {
if (!draggable) {
return false;
}
let mergedDraggable = {};
switch (typeof draggable) {
case 'function':
mergedDraggable.nodeDraggable = draggable;
break;
case 'object':
mergedDraggable = Object.assign({}, draggable);
break;
default:
break;
// Do nothing
}
if (mergedDraggable.icon !== false) {
mergedDraggable.icon = mergedDraggable.icon || /*#__PURE__*/_react_17_0_2_react.createElement(icons_HolderOutlined, null);
}
return mergedDraggable;
}, [draggable]);
const renderSwitcherIcon = nodeProps => /*#__PURE__*/_react_17_0_2_react.createElement(iconUtil/* default */.Z, {
prefixCls: prefixCls,
switcherIcon: switcherIcon,
treeNodeProps: nodeProps,
showLine: showLine
});
return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement(es/* default */.Z, Object.assign({
itemHeight: 20,
ref: ref,
virtual: virtual
}, newProps, {
// newProps may contain style so declare style below it
style: Object.assign(Object.assign({}, tree === null || tree === void 0 ? void 0 : tree.style), style),
prefixCls: prefixCls,
className: _classnames_2_3_2_classnames_default()({
[`${prefixCls}-icon-hide`]: !showIcon,
[`${prefixCls}-block-node`]: blockNode,
[`${prefixCls}-unselectable`]: !selectable,
[`${prefixCls}-rtl`]: direction === 'rtl'
}, tree === null || tree === void 0 ? void 0 : tree.className, className, hashId),
direction: direction,
checkable: checkable ? /*#__PURE__*/_react_17_0_2_react.createElement("span", {
className: `${prefixCls}-checkbox-inner`
}) : checkable,
selectable: selectable,
switcherIcon: renderSwitcherIcon,
draggable: draggableConfig
}), children));
});
if (false) {}
/* harmony default export */ var tree_Tree = (Tree);
;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/tree/utils/dictUtil.js
var Record;
(function (Record) {
Record[Record["None"] = 0] = "None";
Record[Record["Start"] = 1] = "Start";
Record[Record["End"] = 2] = "End";
})(Record || (Record = {}));
function traverseNodesKey(treeData, callback) {
function processNode(dataNode) {
const {
key,
children
} = dataNode;
if (callback(key, dataNode) !== false) {
traverseNodesKey(children || [], callback);
}
}
treeData.forEach(processNode);
}
/** 计算选中范围只考虑expanded情况以优化性能 */
function calcRangeKeys(_ref) {
let {
treeData,
expandedKeys,
startKey,
endKey
} = _ref;
const keys = [];
let record = Record.None;
if (startKey && startKey === endKey) {
return [startKey];
}
if (!startKey || !endKey) {
return [];
}
function matchKey(key) {
return key === startKey || key === endKey;
}
traverseNodesKey(treeData, key => {
if (record === Record.End) {
return false;
}
if (matchKey(key)) {
// Match test
keys.push(key);
if (record === Record.None) {
record = Record.Start;
} else if (record === Record.Start) {
record = Record.End;
return false;
}
} else if (record === Record.Start) {
// Append selection
keys.push(key);
}
return expandedKeys.includes(key);
});
return keys;
}
function convertDirectoryKeysToNodes(treeData, keys) {
const restKeys = (0,toConsumableArray/* default */.Z)(keys);
const nodes = [];
traverseNodesKey(treeData, (key, node) => {
const index = restKeys.indexOf(key);
if (index !== -1) {
nodes.push(node);
restKeys.splice(index, 1);
}
return !!restKeys.length;
});
return nodes;
}
;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/tree/DirectoryTree.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 getIcon(props) {
const {
isLeaf,
expanded
} = props;
if (isLeaf) {
return /*#__PURE__*/_react_17_0_2_react.createElement(FileOutlined/* default */.Z, null);
}
return expanded ? /*#__PURE__*/_react_17_0_2_react.createElement(FolderOpenOutlined/* default */.Z, null) : /*#__PURE__*/_react_17_0_2_react.createElement(icons_FolderOutlined, null);
}
function getTreeData(_ref) {
let {
treeData,
children
} = _ref;
return treeData || (0,treeUtil/* convertTreeToData */.zn)(children);
}
const DirectoryTree = (_a, ref) => {
var {
defaultExpandAll,
defaultExpandParent,
defaultExpandedKeys
} = _a,
props = __rest(_a, ["defaultExpandAll", "defaultExpandParent", "defaultExpandedKeys"]);
// Shift click usage
const lastSelectedKey = _react_17_0_2_react.useRef();
const cachedSelectedKeys = _react_17_0_2_react.useRef();
const getInitExpandedKeys = () => {
const {
keyEntities
} = (0,treeUtil/* convertDataToEntities */.I8)(getTreeData(props));
let initExpandedKeys;
// Expanded keys
if (defaultExpandAll) {
initExpandedKeys = Object.keys(keyEntities);
} else if (defaultExpandParent) {
initExpandedKeys = (0,util/* conductExpandParent */.r7)(props.expandedKeys || defaultExpandedKeys || [], keyEntities);
} else {
initExpandedKeys = props.expandedKeys || defaultExpandedKeys;
}
return initExpandedKeys;
};
const [selectedKeys, setSelectedKeys] = _react_17_0_2_react.useState(props.selectedKeys || props.defaultSelectedKeys || []);
const [expandedKeys, setExpandedKeys] = _react_17_0_2_react.useState(() => getInitExpandedKeys());
_react_17_0_2_react.useEffect(() => {
if ('selectedKeys' in props) {
setSelectedKeys(props.selectedKeys);
}
}, [props.selectedKeys]);
_react_17_0_2_react.useEffect(() => {
if ('expandedKeys' in props) {
setExpandedKeys(props.expandedKeys);
}
}, [props.expandedKeys]);
const onExpand = (keys, info) => {
var _a;
if (!('expandedKeys' in props)) {
setExpandedKeys(keys);
}
// Call origin function
return (_a = props.onExpand) === null || _a === void 0 ? void 0 : _a.call(props, keys, info);
};
const onSelect = (keys, event) => {
var _a;
const {
multiple
} = props;
const {
node,
nativeEvent
} = event;
const {
key = ''
} = node;
const treeData = getTreeData(props);
// const newState: DirectoryTreeState = {};
// We need wrap this event since some value is not same
const newEvent = Object.assign(Object.assign({}, event), {
selected: true
});
// Windows / Mac single pick
const ctrlPick = (nativeEvent === null || nativeEvent === void 0 ? void 0 : nativeEvent.ctrlKey) || (nativeEvent === null || nativeEvent === void 0 ? void 0 : nativeEvent.metaKey);
const shiftPick = nativeEvent === null || nativeEvent === void 0 ? void 0 : nativeEvent.shiftKey;
// Generate new selected keys
let newSelectedKeys;
if (multiple && ctrlPick) {
// Control click
newSelectedKeys = keys;
lastSelectedKey.current = key;
cachedSelectedKeys.current = newSelectedKeys;
newEvent.selectedNodes = convertDirectoryKeysToNodes(treeData, newSelectedKeys);
} else if (multiple && shiftPick) {
// Shift click
newSelectedKeys = Array.from(new Set([].concat((0,toConsumableArray/* default */.Z)(cachedSelectedKeys.current || []), (0,toConsumableArray/* default */.Z)(calcRangeKeys({
treeData,
expandedKeys,
startKey: key,
endKey: lastSelectedKey.current
})))));
newEvent.selectedNodes = convertDirectoryKeysToNodes(treeData, newSelectedKeys);
} else {
// Single click
newSelectedKeys = [key];
lastSelectedKey.current = key;
cachedSelectedKeys.current = newSelectedKeys;
newEvent.selectedNodes = convertDirectoryKeysToNodes(treeData, newSelectedKeys);
}
(_a = props.onSelect) === null || _a === void 0 ? void 0 : _a.call(props, newSelectedKeys, newEvent);
if (!('selectedKeys' in props)) {
setSelectedKeys(newSelectedKeys);
}
};
const {
getPrefixCls,
direction
} = _react_17_0_2_react.useContext(context/* ConfigContext */.E_);
const {
prefixCls: customizePrefixCls,
className,
showIcon = true,
expandAction = 'click'
} = props,
otherProps = __rest(props, ["prefixCls", "className", "showIcon", "expandAction"]);
const prefixCls = getPrefixCls('tree', customizePrefixCls);
const connectClassName = _classnames_2_3_2_classnames_default()(`${prefixCls}-directory`, {
[`${prefixCls}-directory-rtl`]: direction === 'rtl'
}, className);
return /*#__PURE__*/_react_17_0_2_react.createElement(tree_Tree, Object.assign({
icon: getIcon,
ref: ref,
blockNode: true
}, otherProps, {
showIcon: showIcon,
expandAction: expandAction,
prefixCls: prefixCls,
className: connectClassName,
expandedKeys: expandedKeys,
selectedKeys: selectedKeys,
onSelect: onSelect,
onExpand: onExpand
}));
};
const ForwardDirectoryTree = /*#__PURE__*/_react_17_0_2_react.forwardRef(DirectoryTree);
if (false) {}
/* harmony default export */ var tree_DirectoryTree = (ForwardDirectoryTree);
;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/tree/index.js
"use client";
const es_tree_Tree = tree_Tree;
es_tree_Tree.DirectoryTree = tree_DirectoryTree;
es_tree_Tree.TreeNode = es/* TreeNode */.O;
/* harmony default export */ var tree = (es_tree_Tree);
/***/ })
}]);