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

5548 lines
232 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([[52806,3725],{
/***/ 25757:
/*!*********************************!*\
!*** ./src/pages/tasks/util.js ***!
\*********************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ Ax: function() { return /* binding */ processTreeData; },
/* harmony export */ Ds: function() { return /* binding */ debounce; },
/* harmony export */ KI: function() { return /* binding */ apiPref; },
/* harmony export */ SI: function() { return /* binding */ getTreeData; },
/* harmony export */ f1: function() { return /* binding */ isCompileOk; }
/* harmony export */ });
/* unused harmony export isProd */
/* harmony import */ var _utils_env__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @/utils/env */ 26078);
function isCompileOk(rs) {
var flag = true;
if (rs.length > 0) {
for (var i = 0; i < rs.length; i++) {
if (rs[i].compile_success == 0 || !rs[i].compile_success) {
flag = false;
break;
}
}
} else {
flag = false;
}
return flag;
}
function getTreeData(data) {
var parentKey = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
var result = [];
for (var i = 0; i < data.length; i++) {
var item = data[i];
var key = parentKey ? "".concat(parentKey, "/").concat(item.name) : "".concat(item.name);
result.push({
title: item.name,
isLeaf: item.type === 'tree' ? false : true,
key: key
});
}
return result;
}
function processTreeData(repos, key, newData) {
for (var i = 0; i < repos.length; i++) {
var item = repos[i];
if (item.key === key) {
item.children = newData;
break;
}
if (item.children) {
processTreeData(item.children, key, newData);
}
}
return repos;
}
function debounce(func, wait, immediate) {
var timeout;
return function () {
var context = this,
args = arguments;
var later = function later() {
timeout = null;
if (!immediate) func.apply(context, args);
};
var callNow = immediate && !timeout;
clearTimeout(timeout);
timeout = setTimeout(later, wait);
if (callNow) func.apply(context, args);
};
}
var isProd = true;
var apiPref = _utils_env__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z.API_SERVER;
// export const isProd =
// window.location.href.indexOf('test-') > 0 ||
// window.location.href.indexOf('localhost') > 0
// ? false
// : true;
// export const apiPref = isProd
// ? 'https://www.educoder.net'
// : 'https://test-newweb.educoder.net';
/***/ }),
/***/ 18223:
/*!*********************************************************************!*\
!*** ./src/components/Editor/NullChildEditor/index.jsx + 1 modules ***!
\*********************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ Editor_NullChildEditor; }
});
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/classCallCheck.js
var classCallCheck = __webpack_require__(94312);
var classCallCheck_default = /*#__PURE__*/__webpack_require__.n(classCallCheck);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/createClass.js
var createClass = __webpack_require__(24127);
var createClass_default = /*#__PURE__*/__webpack_require__.n(createClass);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/inherits.js
var inherits = __webpack_require__(93242);
var inherits_default = /*#__PURE__*/__webpack_require__.n(inherits);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/createSuper.js
var createSuper = __webpack_require__(10564);
var createSuper_default = /*#__PURE__*/__webpack_require__.n(createSuper);
// 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/input/index.js + 5 modules
var input = __webpack_require__(1056);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/tag/index.js + 5 modules
var es_tag = __webpack_require__(12563);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/message/index.js + 4 modules
var message = __webpack_require__(8591);
;// CONCATENATED MODULE: ./src/components/Editor/NullChildEditor/index.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var NullChildEditormodules = ({"flex":"flex___eLcnP","flex1":"flex1___yUTT7","color666":"color666___TiUhG","error":"error___gTTtv","deleteIcon":"deleteIcon___mnZW1","addIcon":"addIcon___JC5NS"});
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/PlusOutlined.js + 1 modules
var PlusOutlined = __webpack_require__(378);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/jsx-runtime.js
var jsx_runtime = __webpack_require__(37712);
;// CONCATENATED MODULE: ./src/components/Editor/NullChildEditor/index.jsx
var TextArea = input/* default */.Z.TextArea;
var NullChildEditor = /*#__PURE__*/function (_Component) {
inherits_default()(NullChildEditor, _Component);
var _super = createSuper_default()(NullChildEditor);
function NullChildEditor(props) {
var _this;
classCallCheck_default()(this, NullChildEditor);
_this = _super.call(this, props);
_this.state = {
inputVisible: false,
EditInputIndex: -1
};
return _this;
}
// componentDidMount() {
// // console.log(`${this.props.index}----`,this.props,e);
// if (this.props.answers[0].length <= 0) {
// this.setState({
// EditInputIndex: 0,
// });
// }
// }
createClass_default()(NullChildEditor, [{
key: "render",
value: function render() {
var _this2 = this;
var _this$props = this.props,
index = _this$props.index,
onAnswerChange = _this$props.onAnswerChange,
addChildAnswer = _this$props.addChildAnswer,
exerciseIsPublish = _this$props.exerciseIsPublish,
answers = _this$props.answers,
activeOptionErrorIndex = _this$props.activeOptionErrorIndex,
_this$props$flex = _this$props.flex,
flex = _this$props$flex === void 0 ? '0 0 1000px' : _this$props$flex;
console.log('----', answers);
var _this$state = this.state,
inputVisible = _this$state.inputVisible,
EditInputIndex = _this$state.EditInputIndex;
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: NullChildEditormodules.flex,
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: "".concat(NullChildEditormodules.color666, " mb5 mt6"),
style: {
flex: '0 0 90px'
},
children: ["\u7B54\u6848(\u586B\u7A7A", index + 1, "):"]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
style: {
border: '1px solid #f6f6f6',
flex: 1,
padding: 10
},
children: [answers === null || answers === void 0 ? void 0 : answers.map(function (tag, itemIndex) {
return /*#__PURE__*/(0,jsx_runtime.jsx)(jsx_runtime.Fragment, {
children: EditInputIndex !== itemIndex ? (tag === null || tag === void 0 ? void 0 : tag.length) > 0 ? /*#__PURE__*/(0,jsx_runtime.jsx)(es_tag/* default */.Z, {
className: "edit-tag",
closable: true,
onClose: function onClose(e) {
e.preventDefault();
if ((answers === null || answers === void 0 ? void 0 : answers.length) === 1 && itemIndex === 0) {
_this2.props.deleteChildAnswermain(index, itemIndex);
} else {
_this2.props.deleteChildAnswer(index, itemIndex);
}
},
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
onDoubleClick: function onDoubleClick(e) {
_this2.setState({
EditInputIndex: itemIndex
});
e.preventDefault();
},
children: tag
})
}, tag) : /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z, {
defaultValue: tag,
style: {
width: 78,
marginRight: 8,
height: 24,
verticalAlign: 'top'
},
onBlur: function onBlur(e) {
if (e.target.value.replaceAll(' ', '').length <= 0) {
message/* default */.ZP.info('内容不能为纯空格');
return;
}
onAnswerChange(index, itemIndex, e.target.value);
_this2.setState({
EditInputIndex: -1,
inputVisible: false
});
}
}) : /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z, {
defaultValue: tag,
style: {
width: 78,
marginRight: 8,
height: 24,
verticalAlign: 'top'
},
onBlur: function onBlur(e) {
if (e.target.value.replaceAll(' ', '').length <= 0) {
message/* default */.ZP.info('内容不能为纯空格');
return;
}
onAnswerChange(index, itemIndex, e.target.value);
_this2.setState({
EditInputIndex: -1,
inputVisible: false
});
}
})
});
}), !inputVisible && /*#__PURE__*/(0,jsx_runtime.jsxs)(es_tag/* default */.Z, {
className: "site-tag-plus",
onClick: function onClick() {
addChildAnswer(index);
// console.log(this.props.index);
_this2.setState({
inputVisible: true
});
},
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(PlusOutlined/* default */.Z, {}), " \u65B0\u589E\u7B54\u6848"]
})]
})]
});
}
}]);
return NullChildEditor;
}(_react_17_0_2_react.Component);
/* harmony default export */ var Editor_NullChildEditor = (NullChildEditor);
/***/ }),
/***/ 35030:
/*!************************************************!*\
!*** ./src/components/Editor/NullMDEditor.jsx ***!
\************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ Z: function() { return /* binding */ NullMDEditor; }
/* harmony export */ });
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/objectSpread2.js */ 26801);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_classCallCheck_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/classCallCheck.js */ 94312);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_classCallCheck_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_classCallCheck_js__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_createClass_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/createClass.js */ 24127);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_createClass_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_createClass_js__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_assertThisInitialized_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/assertThisInitialized.js */ 1300);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_assertThisInitialized_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_assertThisInitialized_js__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_inherits_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/inherits.js */ 93242);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_inherits_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_inherits_js__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_createSuper_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/createSuper.js */ 10564);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_createSuper_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_createSuper_js__WEBPACK_IMPORTED_MODULE_5__);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_defineProperty_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/defineProperty.js */ 22060);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_defineProperty_js__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_defineProperty_js__WEBPACK_IMPORTED_MODULE_6__);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! react */ 59301);
/* harmony import */ var _markdown_editor__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../markdown-editor */ 61816);
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! react/jsx-runtime */ 37712);
var NULL_CH = '▁';
var NullMDEditor = /*#__PURE__*/function (_Component) {
_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_inherits_js__WEBPACK_IMPORTED_MODULE_4___default()(NullMDEditor, _Component);
var _super = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_createSuper_js__WEBPACK_IMPORTED_MODULE_5___default()(NullMDEditor);
function NullMDEditor() {
var _this;
_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_classCallCheck_js__WEBPACK_IMPORTED_MODULE_1___default()(this, NullMDEditor);
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
args[_key] = arguments[_key];
}
_this = _super.call.apply(_super, [this].concat(args));
_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_defineProperty_js__WEBPACK_IMPORTED_MODULE_6___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_assertThisInitialized_js__WEBPACK_IMPORTED_MODULE_3___default()(_this), "getChCountBeforeCursor", function (cm, cursor) {
var currentLine = cursor.line;
var placeholderCountBefore = 0;
for (var _line = 0; _line < currentLine; _line++) {
placeholderCountBefore += cm.getLine(_line).split(NULL_CH).length - 1;
}
var currentLineStringBeforeCursor = cm.getLine(currentLine).substring(0, cursor.ch);
placeholderCountBefore += currentLineStringBeforeCursor.split(NULL_CH).length - 1;
return placeholderCountBefore;
});
_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_defineProperty_js__WEBPACK_IMPORTED_MODULE_6___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_assertThisInitialized_js__WEBPACK_IMPORTED_MODULE_3___default()(_this), "onCMBeforeChange", function (cm, change) {
var rangeText = cm.getRange(change.from, change.to);
var totalPlaceholderCount = 0;
change.text.forEach(function (item) {
totalPlaceholderCount += item.split(NULL_CH).length - 1;
});
if (rangeText && rangeText.indexOf(NULL_CH) != -1) {
var placeholderCountInRange = rangeText.split(NULL_CH).length - 1;
var placeholderCountBefore = _this.getChCountBeforeCursor(cm, change.from);
console.log("\u5220\u9664".concat(placeholderCountInRange, "\u4E2A\uFF0C \u4E4B\u524D\u6709").concat(placeholderCountBefore, "\u4E2A\uFF0C\u65B0\u589E").concat(totalPlaceholderCount, "\u4E2A"));
if (_this.props.deleteEmptyDisabled) {
// 删除空格不检测
change.cancel();
} else {
// const ret = window.confirm(
// `确认要删除第${
// placeholderCountInRange == 1
// ? placeholderCountBefore + 1
// : `${placeholderCountBefore + 1}-${placeholderCountBefore +
// placeholderCountInRange}`
// }个空吗?`,
// );
// if (ret) {
_this.props.onPlaceholderChange && _this.props.onPlaceholderChange(placeholderCountBefore, placeholderCountInRange, totalPlaceholderCount);
// } else {
// change.cancel();
// }
}
} else if (totalPlaceholderCount) {
var _placeholderCountBefore = _this.getChCountBeforeCursor(cm, change.from);
console.log("\u65B0\u589E".concat(totalPlaceholderCount, "\u4E2A\uFF0C\u4E4B\u524D\u6709").concat(_placeholderCountBefore, "\u4E2A"));
_this.props.onPlaceholderChange && _this.props.onPlaceholderChange(_placeholderCountBefore, 0, totalPlaceholderCount);
}
});
return _this;
}
_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_createClass_js__WEBPACK_IMPORTED_MODULE_2___default()(NullMDEditor, [{
key: "render",
value: function render() {
return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_9__.jsx)(_markdown_editor__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Z, _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, this.props), {}, {
onCMBeforeChange: this.onCMBeforeChange
}));
}
}]);
return NullMDEditor;
}(react__WEBPACK_IMPORTED_MODULE_7__.Component);
/***/ }),
/***/ 9746:
/*!*************************************************************!*\
!*** ./src/components/markdown-editor/code-block/index.tsx ***!
\*************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ h: function() { return /* binding */ MyCodeMirror; }
/* harmony export */ });
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/objectSpread2.js */ 26801);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/slicedToArray.js */ 11006);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react */ 59301);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! antd */ 57809);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! antd */ 78241);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! antd */ 3113);
/* harmony import */ var codemirror__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! codemirror */ 89780);
/* harmony import */ var codemirror__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(codemirror__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var codemirror_lib_codemirror_css__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! codemirror/lib/codemirror.css */ 89835);
/* harmony import */ var codemirror_theme_blackboard_css__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! codemirror/theme/blackboard.css */ 49744);
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! react/jsx-runtime */ 37712);
var Option = antd__WEBPACK_IMPORTED_MODULE_7__["default"].Option;
//https://github.com/codemirror/CodeMirror/issues/4838
var formItemLayout = {
labelCol: {
span: 4
},
wrapperCol: {
span: 20
}
};
var LanguageDesc = {
asp: ['ASP', 'vbscript'],
actionscript: ['ActionScript(3.0)/Flash/Flex', 'clike'],
bash: ['Bash/Bat', 'shell'],
css: ['CSS', 'css'],
c: ['C', 'clike'],
cpp: ['C++', 'clike'],
csharp: ['C#', 'clike'],
coffeescript: ['CoffeeScript', 'coffeescript'],
d: ['D', 'd'],
dart: ['Dart', 'dart'],
delphi: ['Delphi/Pascal', 'pascal'],
erlang: ['Erlang', 'erlang'],
go: ['Golang', 'go'],
groovy: ['Groovy', 'groovy'],
html: ['HTML', 'text/html'],
java: ['Java', 'clike'],
json: ['JSON', 'text/json'],
javascript: ['Javascript', 'javascript'],
lua: ['Lua', 'lua'],
less: ['LESS', 'css'],
markdown: ['Markdown', 'gfm'],
'objective-c': ['Objective-C', 'clike'],
php: ['PHP', 'php'],
perl: ['Perl', 'perl'],
python: ['Python', 'python'],
r: ['R', 'r'],
rst: ['reStructedText', 'rst'],
ruby: ['Ruby', 'ruby'],
sql: ['SQL', 'sql'],
sass: ['SASS/SCSS', 'sass'],
shell: ['Shell', 'shell'],
scala: ['Scala', 'clike'],
swift: ['Swift', 'clike'],
vb: ['VB/VBScript', 'vb'],
xml: ['XML', 'text/xml'],
yaml: ['YAML', 'yaml']
};
/* harmony default export */ __webpack_exports__.Z = (function (_ref) {
var callback = _ref.callback,
onCancel = _ref.onCancel;
var _useState = (0,react__WEBPACK_IMPORTED_MODULE_2__.useState)('python'),
_useState2 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_1___default()(_useState, 2),
mode = _useState2[0],
setMode = _useState2[1];
function onSetMode(value) {
setMode(LanguageDesc[value][1]);
}
function onSubmit(values) {
callback(values);
}
return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsxs)(antd__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Z, _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, formItemLayout), {}, {
className: "code-block-panel",
initialValues: {
language: 'python',
content: ''
},
onFinish: onSubmit,
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)(antd__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Z.Item, {
label: "\u4EE3\u7801\u8BED\u8A00",
name: "language",
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)(antd__WEBPACK_IMPORTED_MODULE_7__["default"], {
getPopupContainer: function getPopupContainer(trigger) {
return trigger.parentNode;
},
onChange: onSetMode,
children: Object.keys(LanguageDesc).map(function (item) {
return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)(Option, {
value: item,
children: LanguageDesc[item][0]
}, item);
})
})
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)(antd__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Z.Item, {
label: "\u4EE3\u7801\u5185\u5BB9",
name: "content",
rules: [{
required: true,
message: '请输入代码内容'
}],
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)(MyCodeMirror, {
mode: mode
})
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsxs)("div", {
className: "flex-container flex-end",
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)(antd__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .ZP, {
type: "primary",
htmlType: "submit",
style: {
marginRight: 10
},
children: "\u786E\u5B9A"
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)(antd__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .ZP, {
type: "ghost",
onClick: onCancel,
children: "\u53D6\u6D88"
})]
})]
}));
});
function MyCodeMirror(_ref2) {
var value = _ref2.value,
onChange = _ref2.onChange,
mode = _ref2.mode,
_ref2$options = _ref2.options,
options = _ref2$options === void 0 ? {} : _ref2$options;
var el = (0,react__WEBPACK_IMPORTED_MODULE_2__.useRef)();
var _useState3 = (0,react__WEBPACK_IMPORTED_MODULE_2__.useState)(),
_useState4 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_1___default()(_useState3, 2),
cm = _useState4[0],
setCm = _useState4[1];
(0,react__WEBPACK_IMPORTED_MODULE_2__.useEffect)(function () {
if (cm) {
var onChangeHandler = function onChangeHandler(cm) {
var content = cm.getValue();
onChange && onChange(content);
};
cm.on('change', onChangeHandler);
return function () {
cm.off('change', onChangeHandler);
};
}
}, [cm, onChange]);
(0,react__WEBPACK_IMPORTED_MODULE_2__.useEffect)(function () {
if (cm) {
cm.setOption('mode', mode);
}
}, [cm, mode]);
(0,react__WEBPACK_IMPORTED_MODULE_2__.useEffect)(function () {
if (cm) {
if (value !== cm.getValue() || value === '') {
setTimeout(function () {
cm.setValue(value || '');
}, 300);
}
}
}, [cm, value]);
(0,react__WEBPACK_IMPORTED_MODULE_2__.useEffect)(function () {
if (el.current && !cm) {
var instance = codemirror__WEBPACK_IMPORTED_MODULE_3___default().fromTextArea(el.current, _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({
mode: mode,
lineNumbers: true,
lineWrapping: true,
autoCloseBrackets: true,
tabSize: 4,
autofocus: true,
autoCloseTags: true,
matchBrackets: true,
styleActiveLine: true
}, options));
setCm(instance);
}
}, [el.current, cm]);
return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)("div", {
className: "my-codemirror-container",
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)("textarea", {
ref: el
})
});
}
/***/ }),
/***/ 61816:
/*!***************************************************************!*\
!*** ./src/components/markdown-editor/index.tsx + 10 modules ***!
\***************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ markdown_editor; }
});
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/createForOfIteratorHelper.js
var createForOfIteratorHelper = __webpack_require__(98190);
var createForOfIteratorHelper_default = /*#__PURE__*/__webpack_require__.n(createForOfIteratorHelper);
// 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/_@babel_runtime@7.23.2@@babel/runtime/helpers/defineProperty.js
var defineProperty = __webpack_require__(22060);
var defineProperty_default = /*#__PURE__*/__webpack_require__.n(defineProperty);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
// EXTERNAL MODULE: ./node_modules/_codemirror@5.58.2@codemirror/lib/codemirror.js
var codemirror = __webpack_require__(89780);
var codemirror_default = /*#__PURE__*/__webpack_require__.n(codemirror);
// EXTERNAL MODULE: ./node_modules/_resize-observer-polyfill@1.5.1@resize-observer-polyfill/dist/ResizeObserver.es.js
var ResizeObserver_es = __webpack_require__(76374);
// EXTERNAL MODULE: ./node_modules/_codemirror@5.58.2@codemirror/lib/codemirror.css
var lib_codemirror = __webpack_require__(89835);
// EXTERNAL MODULE: ./node_modules/_codemirror@5.58.2@codemirror/addon/edit/closetag.js
var closetag = __webpack_require__(6313);
// EXTERNAL MODULE: ./node_modules/_codemirror@5.58.2@codemirror/addon/edit/closebrackets.js
var closebrackets = __webpack_require__(25717);
// EXTERNAL MODULE: ./node_modules/_codemirror@5.58.2@codemirror/addon/display/placeholder.js
var placeholder = __webpack_require__(99498);
// EXTERNAL MODULE: ./node_modules/_codemirror@5.58.2@codemirror/mode/markdown/markdown.js
var markdown = __webpack_require__(25419);
// EXTERNAL MODULE: ./node_modules/_codemirror@5.58.2@codemirror/mode/stex/stex.js
var stex = __webpack_require__(67549);
;// CONCATENATED MODULE: ./src/components/markdown-editor/index.less
// extracted by mini-css-extract-plugin
// EXTERNAL MODULE: ./src/components/RenderHtml/index.tsx + 1 modules
var RenderHtml = __webpack_require__(32666);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/jsx-runtime.js
var jsx_runtime = __webpack_require__(37712);
;// CONCATENATED MODULE: ./src/components/RenderHtml/stex.tsx
// const latexjs = require('latex-l.js/dist/latex.js');
// import "latex-l.js/dist/css/base.css"
/* harmony default export */ var RenderHtml_stex = (function (_ref) {
var _ref$value = _ref.value,
value = _ref$value === void 0 ? '' : _ref$value,
className = _ref.className,
showTextOnly = _ref.showTextOnly,
showLines = _ref.showLines,
_ref$style = _ref.style,
style = _ref$style === void 0 ? {} : _ref$style;
var html = (0,_react_17_0_2_react.useMemo)(function () {
// try {
// const latex = value || 'This is some text';
// let generator = new latexjs.default.HtmlGenerator({ hyphenate: true })
// let doc = latexjs.default.parse(latex, { generator: generator }).htmlDocument()
// return doc.body.innerHTML
// }catch(e){
// console.log("e:",e)
// return "错误的latex语法请检查"
// }
return "";
}, [value]);
return /*#__PURE__*/(0,jsx_runtime.jsx)(jsx_runtime.Fragment, {
children: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
dangerouslySetInnerHTML: {
__html: html
}
})
});
});
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/objectSpread2.js
var objectSpread2 = __webpack_require__(26801);
var objectSpread2_default = /*#__PURE__*/__webpack_require__.n(objectSpread2);
;// CONCATENATED MODULE: ./src/components/markdown-editor/toolbar/index.less
// extracted by mini-css-extract-plugin
;// CONCATENATED MODULE: ./src/components/markdown-editor/css/iconfont.css
// extracted by mini-css-extract-plugin
;// CONCATENATED MODULE: ./src/components/markdown-editor/toolbar/index.tsx
var DEFAULTICONS = [{
title: '粗体',
icon: 'icon-bold',
actionName: 'bold'
}, {
title: '斜体',
icon: 'icon-italic',
actionName: 'italic'
}, '|', {
title: '无序列表',
icon: 'icon-unorder-list',
actionName: 'list-ul'
}, {
title: '有序列表',
icon: 'icon-order-list',
actionName: 'list-ol'
}, '|', {
title: '行内代码',
icon: 'icon-code',
actionName: 'code'
}, {
title: '代码块(多语言风格)',
icon: 'icon-file-code',
actionName: 'code-block'
}, {
title: '链接',
icon: 'icon-link',
actionName: 'link'
}, '|', {
title: '行内公式',
icon: 'icon-sum',
actionName: 'inline-latex'
}, {
title: '多行公式',
icon: 'icon-formula',
actionName: 'latex'
}, '|', {
title: '添加图片',
icon: 'icon-picture',
actionName: 'upload-image'
}, {
title: '表格',
icon: 'icon-table',
actionName: 'add-table'
}, '|', {
title: '换行',
icon: 'icon-minus',
actionName: 'line-break'
}, {
title: '清空',
icon: 'icon-eraser',
actionName: 'eraser'
}];
function AButton(_ref) {
var onActionCallback = _ref.onActionCallback,
title = _ref.title,
icon = _ref.icon,
actionName = _ref.actionName,
_ref$className = _ref.className,
className = _ref$className === void 0 ? '' : _ref$className,
children = _ref.children;
function onAction() {
onActionCallback(actionName);
}
return /*#__PURE__*/(0,jsx_runtime.jsxs)("a", {
title: title,
className: className,
onClick: onAction,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "md-iconfont ".concat(icon)
}), children]
});
}
/* harmony default export */ var toolbar = (function (_ref2) {
var watch = _ref2.watch,
showNullButton = _ref2.showNullButton,
showNullProgramButton = _ref2.showNullProgramButton,
onActionCallback = _ref2.onActionCallback,
fullScreen = _ref2.fullScreen,
insertTemp = _ref2.insertTemp,
hidetoolBar = _ref2.hidetoolBar;
var icons = [].concat(DEFAULTICONS, [{
title: "".concat(watch ? '关闭实时预览' : '开启实时预览'),
icon: "".concat(watch ? 'icon-eye-slash' : 'icon-eye'),
actionName: 'trigger-watch'
}]);
return /*#__PURE__*/(0,jsx_runtime.jsxs)("ul", {
className: "markdown-toolbar-container",
children: [!hidetoolBar && icons.map(function (item, index) {
return /*#__PURE__*/(0,jsx_runtime.jsx)("li", {
children: item.actionName ? /*#__PURE__*/(0,jsx_runtime.jsx)(AButton, objectSpread2_default()(objectSpread2_default()({}, item), {}, {
onActionCallback: onActionCallback
})) : /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "v-line"
})
}, index);
}), showNullButton ? /*#__PURE__*/(0,jsx_runtime.jsx)("li", {
children: /*#__PURE__*/(0,jsx_runtime.jsx)(AButton, {
icon: "icon-edit insert-blank",
className: "btn-null",
title: "\u589E\u52A0\u586B\u7A7A",
actionName: "add-null-ch",
onActionCallback: onActionCallback,
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "fill-tip",
children: "\u70B9\u51FB\u63D2\u5165\b\u586B\u7A7A\u9879"
})
})
}) : null, showNullProgramButton ? /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("li", {
children: /*#__PURE__*/(0,jsx_runtime.jsx)(AButton, {
icon: "icon-edit insert-blank",
className: "btn-null",
title: "\u589E\u52A0\u586B\u7A7A",
actionName: "add-signal",
onActionCallback: onActionCallback,
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "fill-tip",
children: "\u6DFB\u52A0\u5355\u884C\u586B\u7A7A\u9879"
})
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("li", {
children: /*#__PURE__*/(0,jsx_runtime.jsx)(AButton, {
icon: "icon-uniE900 insert-blank",
className: "btn-null",
title: "\u589E\u52A0\u586B\u7A7A",
actionName: "add-multiple",
onActionCallback: onActionCallback,
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "fill-tip",
children: "\u6DFB\u52A0\u591A\u884C\u586B\u7A7A\u9879"
})
})
})]
}) : null, insertTemp && /*#__PURE__*/(0,jsx_runtime.jsx)("li", {
children: /*#__PURE__*/(0,jsx_runtime.jsx)(AButton, {
icon: "icon-edit",
className: "btn-null",
title: "\u63D2\u5165\u6A21\u677F",
actionName: "inster-template-".concat(insertTemp),
onActionCallback: onActionCallback,
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "fill-tip",
children: "\u63D2\u5165\u6A21\u677F"
})
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("li", {
className: "btn-full-screen",
children: /*#__PURE__*/(0,jsx_runtime.jsx)(AButton, {
icon: "".concat(fullScreen ? 'icon-shrink' : 'icon-enlarge'),
title: fullScreen ? '关闭全屏' : '开启全屏',
actionName: "trigger-full-screen",
onActionCallback: onActionCallback
})
})]
});
});
// EXTERNAL MODULE: ./src/components/modal.tsx
var modal = __webpack_require__(89953);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/form/index.js + 19 modules
var es_form = __webpack_require__(78241);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/input/index.js + 5 modules
var input = __webpack_require__(1056);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
var es_button = __webpack_require__(3113);
;// CONCATENATED MODULE: ./src/components/markdown-editor/link/index.tsx
var formItemLayout = {
labelCol: {
span: 4
},
wrapperCol: {
span: 20
}
};
/* harmony default export */ var markdown_editor_link = (function (_ref) {
var callback = _ref.callback,
onCancel = _ref.onCancel;
function onSubmit(values) {
callback(values);
}
return /*#__PURE__*/(0,jsx_runtime.jsxs)(es_form/* default */.Z, objectSpread2_default()(objectSpread2_default()({}, formItemLayout), {}, {
initialValues: {
link: 'http://',
title: ''
},
className: "link-panel",
onFinish: onSubmit,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
label: "\u94FE\u63A5\u5730\u5740",
name: "link",
rules: [{
required: true,
message: '请输入链接地址'
}],
children: /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z, {})
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
label: "\u94FE\u63A5\u6807\u9898",
name: "title",
rules: [{
required: true,
message: '请输入链接标题'
}],
children: /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z, {})
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: "flex-container flex-end",
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
type: "primary",
htmlType: "submit",
style: {
marginRight: 10
},
children: "\u786E\u5B9A"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
type: "ghost",
onClick: onCancel,
children: "\u53D6\u6D88"
})]
})]
}));
});
// EXTERNAL MODULE: ./src/components/markdown-editor/code-block/index.tsx
var code_block = __webpack_require__(9746);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/message/index.js + 4 modules
var message = __webpack_require__(8591);
;// CONCATENATED MODULE: ./src/components/markdown-editor/upload-image/index.less
// extracted by mini-css-extract-plugin
// EXTERNAL MODULE: ./src/pages/tasks/util.js
var util = __webpack_require__(25757);
;// CONCATENATED MODULE: ./src/components/markdown-editor/upload-image/index.tsx
var useForm = es_form/* default */.Z.useForm;
var style = {
width: 280,
marginRight: 10
};
var upload_image_formItemLayout = {
labelCol: {
span: 5
},
wrapperCol: {
span: 19
}
};
/* harmony default export */ var upload_image = (function (_ref) {
var callback = _ref.callback,
onCancel = _ref.onCancel;
var _useForm = useForm(),
_useForm2 = slicedToArray_default()(_useForm, 1),
form = _useForm2[0];
function onSubmit(values) {
callback(values);
}
function onAddUrl(data, file) {
if (data.status === -1) {
message/* default */.ZP.error(data.message);
return;
}
form.setFieldsValue({
src: "/api/attachments/".concat(data.id),
type: file.type
});
}
function onFileChange(e) {
var file = e.target.files[0];
uploadImage(file, onAddUrl);
}
return /*#__PURE__*/(0,jsx_runtime.jsxs)(es_form/* default */.Z, objectSpread2_default()(objectSpread2_default()({
form: form
}, upload_image_formItemLayout), {}, {
className: "upload-image-panel",
onFinish: onSubmit,
style: {
width: 470,
overflow: "hidden"
},
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
label: "\u56FE\u7247\u5730\u5740",
required: true,
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: "flex-container",
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
noStyle: true,
name: "src",
rules: [{
required: true,
message: '请输入图片地址'
}],
children: /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z, {
style: style
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)(UploadButton, {
onFileChange: onFileChange
})]
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
label: "\u56FE\u7247\u63CF\u8FF0",
name: "alt"
// rules={[{ required: true, message: '请输入图片描述' }]}
,
children: /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z, {
style: {
width: 264
}
})
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(es_form/* default */.Z.Item, {
style: {
textAlign: "right"
},
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
type: "primary",
htmlType: "submit",
style: {
marginRight: 10
},
children: "\u786E\u5B9A"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
type: "default",
onClick: onCancel,
children: "\u53D6\u6D88"
})]
})]
}));
});
function UploadButton(_ref2) {
var onFileChange = _ref2.onFileChange;
return /*#__PURE__*/(0,jsx_runtime.jsxs)("label", {
className: "upload-button",
style: {
cursor: "pointer"
},
children: ["\u672C\u5730\u4E0A\u4F20", /*#__PURE__*/(0,jsx_runtime.jsx)("input", {
type: "file",
onChange: onFileChange
})]
});
}
function uploadImage(file, callback) {
if (!file) {
throw new String('没有文件');
return;
}
var formData = new FormData();
formData.append('editormd-image-file', file);
formData.append('file_param_name', 'editormd-image-file');
formData.append('byxhr', 'true');
var xhr = new window.XMLHttpRequest();
xhr.withCredentials = true;
xhr.addEventListener('load', function (response) {
callback(JSON.parse(response.target.responseText), file);
}, false);
xhr.addEventListener('error', function (error) {
console.error(error);
}, false);
xhr.open('POST', "".concat(util/* apiPref */.KI, "/api/attachments.json"));
xhr.send(formData);
}
// 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/input-number/index.js + 14 modules
var input_number = __webpack_require__(85731);
;// CONCATENATED MODULE: ./src/components/markdown-editor/add-table-panel/index.tsx
var RadioGroup = es_radio/* default.Group */.ZP.Group;
var add_table_panel_style = {
margin: '0 8px'
};
/* harmony default export */ var add_table_panel = (function (_ref) {
var callback = _ref.callback,
onCancel = _ref.onCancel;
function onSubmit(values) {
callback(values);
}
return /*#__PURE__*/(0,jsx_runtime.jsxs)(es_form/* default */.Z, {
className: "add-table-panel",
initialValues: {
row: 3,
col: 2,
align: 'default'
},
onFinish: onSubmit,
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: "flex-container",
style: {
alignItems: "baseline"
},
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
style: add_table_panel_style,
children: "\u5355\u5143\u683C\u6570\uFF1A"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
style: add_table_panel_style,
children: "\u884C\u6570"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
name: "row",
rules: [{
required: true,
message: '请输入行数'
}],
children: /*#__PURE__*/(0,jsx_runtime.jsx)(input_number/* default */.Z, {})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
style: add_table_panel_style,
children: "\u5217\u6570"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
name: "col",
rules: [{
required: true,
message: '请输入列数'
}],
children: /*#__PURE__*/(0,jsx_runtime.jsx)(input_number/* default */.Z, {})
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: "flex-container",
style: {
marginTop: 12,
alignItems: "baseline"
},
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
style: add_table_panel_style,
children: "\u5BF9\u9F50\u65B9\u5F0F\uFF1A"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
name: "align",
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(RadioGroup, {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
value: "default",
children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "fa fa-align-justify"
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
value: "left",
children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "fa fa-align-left"
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
value: "center",
children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "fa fa-align-center"
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
value: "right",
children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "fa fa-align-right"
})
})]
})
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: "flex-container flex-end",
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
type: "primary",
htmlType: "submit",
style: {
marginRight: 10
},
children: "\u786E\u5B9A"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
type: "ghost",
onClick: onCancel,
children: "\u53D6\u6D88"
})]
})]
});
});
// EXTERNAL MODULE: ./src/utils/env.ts + 1 modules
var env = __webpack_require__(26078);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/modal/index.js + 16 modules
var es_modal = __webpack_require__(43418);
;// CONCATENATED MODULE: ./src/components/markdown-editor/constant.ts
var LINK = 'link';
var UPLOAD_IMAGE = 'upload-image';
var CODE_BLOCK = 'code-block';
var ADD_TABLE = 'add-table';
var HRLINE = '------------';
var ALIGNSIGN = {
"default": HRLINE,
left: ":".concat(HRLINE),
center: ":".concat(HRLINE, ":"),
right: "".concat(HRLINE, ":")
};
// EXTERNAL MODULE: ./src/components/useInterval.tsx
var useInterval = __webpack_require__(52024);
;// CONCATENATED MODULE: ./src/components/markdown-editor/index.tsx
var _DEFAULTKEYMAP, _TitleDesc;
function noop() {}
var pending = 0;
var StorageTimeTicket = 10000;
var NULL_CH = '▁';
var ADD_MULTI = '@▁▁@';
var ADD_SINGLE = '@▁@';
var TEMP1 = '\n**模板标题**\n模板正文内容可输入文本内容和粘贴图片等操作'; //课程须知模板
function processSize(size) {
return !/^\d+$/.test(size) ? size : "".concat(size, "px");
}
var isMac = navigator.platform.toUpperCase().indexOf('MAC') >= 0;
var key = isMac ? 'Cmd' : 'Ctrl';
var DEFAULTKEYMAP = (_DEFAULTKEYMAP = {}, defineProperty_default()(_DEFAULTKEYMAP, key + '-B', 'bold'), defineProperty_default()(_DEFAULTKEYMAP, key + '-I', 'italic'), _DEFAULTKEYMAP);
var TitleDesc = (_TitleDesc = {}, defineProperty_default()(_TitleDesc, LINK, '添加链接'), defineProperty_default()(_TitleDesc, CODE_BLOCK, '添加代码块'), defineProperty_default()(_TitleDesc, UPLOAD_IMAGE, '添加图片'), defineProperty_default()(_TitleDesc, ADD_TABLE, '添加表格'), _TitleDesc);
//https://codemirror.net/demo
//The height can be set through CSS (by giving the .CodeMirror class a height property), or by calling the cm's setSize method.
/* harmony default export */ var markdown_editor = (function (_ref) {
var _ref$defaultValue = _ref.defaultValue,
defaultValue = _ref$defaultValue === void 0 ? '' : _ref$defaultValue,
onChange = _ref.onChange,
_ref$width = _ref.width,
width = _ref$width === void 0 ? '100%' : _ref$width,
_ref$height = _ref.height,
height = _ref$height === void 0 ? 400 : _ref$height,
_ref$miniToolbar = _ref.miniToolbar,
miniToolbar = _ref$miniToolbar === void 0 ? false : _ref$miniToolbar,
_ref$isFocus = _ref.isFocus,
isFocus = _ref$isFocus === void 0 ? false : _ref$isFocus,
watch = _ref.watch,
insertTemp = _ref.insertTemp,
_ref$mode = _ref.mode,
mode = _ref$mode === void 0 ? "markdown" : _ref$mode,
_ref$id = _ref.id,
id = _ref$id === void 0 ? 'markdown-editor-id' : _ref$id,
_ref$showResizeBar = _ref.showResizeBar,
showResizeBar = _ref$showResizeBar === void 0 ? false : _ref$showResizeBar,
_ref$noStorage = _ref.noStorage,
noStorage = _ref$noStorage === void 0 ? false : _ref$noStorage,
_ref$showNullButton = _ref.showNullButton,
showNullButton = _ref$showNullButton === void 0 ? false : _ref$showNullButton,
_ref$showNullProgramB = _ref.showNullProgramButton,
showNullProgramButton = _ref$showNullProgramB === void 0 ? false : _ref$showNullProgramB,
_ref$hidetoolBar = _ref.hidetoolBar,
hidetoolBar = _ref$hidetoolBar === void 0 ? false : _ref$hidetoolBar,
_ref$fullScreen = _ref.fullScreen,
fullScreen = _ref$fullScreen === void 0 ? false : _ref$fullScreen,
onBlur = _ref.onBlur,
onCMBeforeChange = _ref.onCMBeforeChange,
onFullScreen = _ref.onFullScreen,
_ref$className = _ref.className,
className = _ref$className === void 0 ? '' : _ref$className,
_ref$disablePaste = _ref.disablePaste,
disablePaste = _ref$disablePaste === void 0 ? false : _ref$disablePaste,
_ref$disabled = _ref.disabled,
disabled = _ref$disabled === void 0 ? false : _ref$disabled,
_ref$disabledFill = _ref.disabledFill,
disabledFill = _ref$disabledFill === void 0 ? false : _ref$disabledFill,
_ref$placeholder = _ref.placeholder,
placeholder = _ref$placeholder === void 0 ? '' : _ref$placeholder,
_ref$values = _ref.values,
values = _ref$values === void 0 ? '' : _ref$values;
var _useState = (0,_react_17_0_2_react.useState)(null),
_useState2 = slicedToArray_default()(_useState, 2),
cm = _useState2[0],
setCm = _useState2[1];
var _useState3 = (0,_react_17_0_2_react.useState)(defaultValue),
_useState4 = slicedToArray_default()(_useState3, 2),
value = _useState4[0],
setValue = _useState4[1];
var _useState5 = (0,_react_17_0_2_react.useState)(watch),
_useState6 = slicedToArray_default()(_useState5, 2),
preview = _useState6[0],
setPreview = _useState6[1];
var _useState7 = (0,_react_17_0_2_react.useState)(fullScreen),
_useState8 = slicedToArray_default()(_useState7, 2),
isFull = _useState8[0],
setIsFull = _useState8[1];
var _useState9 = (0,_react_17_0_2_react.useState)(''),
_useState10 = slicedToArray_default()(_useState9, 2),
action = _useState10[0],
setAction = _useState10[1];
var _useState11 = (0,_react_17_0_2_react.useState)(0),
_useState12 = slicedToArray_default()(_useState11, 2),
lastedUpdateTime = _useState12[0],
setLastedUpdateTime = _useState12[1];
var _useState13 = (0,_react_17_0_2_react.useState)(height),
_useState14 = slicedToArray_default()(_useState13, 2),
h = _useState14[0],
setH = _useState14[1];
var _useState15 = (0,_react_17_0_2_react.useState)(false),
_useState16 = slicedToArray_default()(_useState15, 2),
tip = _useState16[0],
setTip = _useState16[1];
var cmEl = (0,_react_17_0_2_react.useRef)();
var containerEl = (0,_react_17_0_2_react.useRef)();
var resizeBarEl = (0,_react_17_0_2_react.useRef)();
var previewEl = (0,_react_17_0_2_react.useRef)();
// useEffect(() => {
// setValue(defaultValue)
// cm?.setValue(defaultValue)
// },[])
(0,_react_17_0_2_react.useEffect)(function () {
var scrollTop = window.scrollY || window.pageYOffset;
setValue(values);
cm === null || cm === void 0 || cm.setValue(values);
window.scrollTo(0, scrollTop);
}, [values]);
(0,_react_17_0_2_react.useEffect)(function () {
onFullScreen === null || onFullScreen === void 0 || onFullScreen(isFull);
}, [isFull]);
(0,_react_17_0_2_react.useEffect)(function () {
if (cmEl.current) {
var onPaste = function onPaste(_, e) {
if (disablePaste) {
e.preventDefault();
return;
}
var clipboardData = e.clipboardData;
if (clipboardData) {
var types = clipboardData.types.toString();
var items = clipboardData.items;
var officeSix = ["pptm", "pptx", "ppt", "pot", "pps", "ppa", "potx", "ppsx", "ppam", "pptm", "potm", "ppsm", "doc", "docx", "dot", "dotx", "docm", "dotm", "xls", "xlsx", "csv", "xlt", "xla", "xltx", "xlsm", "xltm", "xlam", "xlsb"];
if (types === 'Files' || clipboardData.types.indexOf("Files") > -1) {
e.preventDefault();
if (mode == "stex") return;
try {
var _items$;
var item = items[1];
if (((_items$ = items[0]) === null || _items$ === void 0 ? void 0 : _items$.kind) === 'file') {
item = items[0];
}
var file = item.getAsFile();
var fileSix = file.name.split(".").pop();
// console.log("item:", item, file, item?.type?.match(/^video\//i))
uploadImage(file, function (data) {
if (data.id) {
var _file$type, _file$type2, _file$type3;
if ((file === null || file === void 0 || (_file$type = file.type) === null || _file$type === void 0 ? void 0 : _file$type.indexOf("image")) > -1) {
instance.replaceSelection("![,](/api/attachments/".concat(data.id, "?type=").concat(data.content_type, ")"));
} else if ((file === null || file === void 0 || (_file$type2 = file.type) === null || _file$type2 === void 0 ? void 0 : _file$type2.indexOf("video")) > -1) {
instance.replaceSelection("<video width=\"100%\" controls src=\"".concat(env/* default */.Z.API_SERVER, "/api/attachments/").concat(data.id, "\"></video>"));
} else if ((file === null || file === void 0 || (_file$type3 = file.type) === null || _file$type3 === void 0 ? void 0 : _file$type3.indexOf("pdf")) > -1) {
instance.replaceSelection("<a href=\"".concat(env/* default */.Z.API_SERVER, "/api/attachments/").concat(data.id, "?type=").concat(file.type, "&disposition=inline\" target=\"_blank\">").concat(file.name, "</a>"));
} else if (officeSix.includes(fileSix)) {
instance.replaceSelection("<a href=\"".concat(env/* default */.Z.API_SERVER, "/api/attachments/").concat(data.id, "?type=office&disposition=inline\" target=\"_blank\">").concat(file.name, "</a>"));
} else {
instance.replaceSelection("[".concat(file.name, "](").concat(env/* default */.Z.API_SERVER, "/api/attachments/").concat(data.id, "?type=").concat(data.content_type, ")"));
}
} else {
if ((data === null || data === void 0 ? void 0 : data.status) === 401) document.location.href = '/user/login';
}
});
} catch (e) {
message/* default */.ZP.warning("请使用chrome浏览器粘贴");
}
return true;
} else {
//toMarkdown ?
// let html = clipboardData.getData('text/html')
return true;
}
}
return true;
};
var instance = codemirror_default().fromTextArea(cmEl.current, {
mode: mode,
// inputStyle: 'contenteditable',
lineNumbers: miniToolbar ? false : true,
lineWrapping: true,
value: defaultValue,
autoCloseTags: true,
autoCloseBrackets: true
});
instance.on("keyup", function (cm, event) {
if (event.keyCode === 8) {
if (cm.getValue() == "") {
instance.setOption("placeholder", placeholder);
} else {
instance.setOption("placeholder", null);
}
}
});
instance.on("keydown", function (cm, event) {
if (event.keyCode === 8) {
var pos = deleteAtSymbol(cm);
if (pos) {
event.preventDefault();
}
}
});
isFocus && instance.focus();
instance.on('paste', onPaste);
if (disabled) {
instance.on("beforeChange", function (instances, change) {
if (change.origin === "paste" || change.origin === "+input") {
change.cancel();
}
});
}
setCm(instance);
return function () {
instance.off('paste', onPaste);
};
}
}, []);
var resizeEditorBodyHeight = (0,_react_17_0_2_react.useCallback)(function () {
if (containerEl.current) {
try {
// let toolH = containerEl.current.getElementsByClassName('markdown-toolbar-container')[0].offsetHeight
// let mdBody = containerEl.current.getElementsByClassName('markdown-editor-body')[0]
// if (!isFull) {
// mdBody.style.height = `${h - toolH}px`
// } else {
// mdBody.style.height = `calc(100vh - ${toolH}px)`
// }
} catch (error) {
console.log(error, '---- to set md editor body height');
}
}
}, [h, containerEl, isFull]);
(0,_react_17_0_2_react.useEffect)(function () {
function onLayout() {
var ro = new ResizeObserver_es/* default */.Z(function (entries) {
var _iterator = createForOfIteratorHelper_default()(entries),
_step;
try {
for (_iterator.s(); !(_step = _iterator.n()).done;) {
var entry = _step.value;
if (entry.target.offsetHeight > 0 || entry.target.offsetWidth > 0) {
resizeEditorBodyHeight();
cm.setSize('100%', '100%');
cm.refresh();
}
}
} catch (err) {
_iterator.e(err);
} finally {
_iterator.f();
}
});
ro.observe(cmEl.current.parentElement);
return ro;
}
if (cm) {
var ro = onLayout();
return function () {
var _cmEl$current, _cmEl$current2;
if ((_cmEl$current = cmEl.current) !== null && _cmEl$current !== void 0 && _cmEl$current.parentElement) ro.unobserve((_cmEl$current2 = cmEl.current) === null || _cmEl$current2 === void 0 ? void 0 : _cmEl$current2.parentElement);
};
}
}, [cm, resizeEditorBodyHeight]);
//keymap
(0,_react_17_0_2_react.useEffect)(function () {
if (cm) {
var keymap = [];
var _loop = function _loop() {
var _Object$entries$_i = slicedToArray_default()(_Object$entries[_i], 2),
k = _Object$entries$_i[0],
value = _Object$entries$_i[1];
var map = defineProperty_default()({}, k, function () {
onActionCallback(value);
});
keymap.push(map);
cm.addKeyMap(map);
};
for (var _i = 0, _Object$entries = Object.entries(DEFAULTKEYMAP); _i < _Object$entries.length; _i++) {
_loop();
}
return function () {
for (var _i2 = 0, _keymap = keymap; _i2 < _keymap.length; _i2++) {
var m = _keymap[_i2];
cm.removeKeyMap(m);
}
};
}
}, [cm]);
(0,_react_17_0_2_react.useEffect)(function () {
if (fullScreen !== isFull) {
setIsFull(fullScreen);
}
}, [fullScreen]);
(0,useInterval/* default */.Z)(function () {
if (!noStorage && lastedUpdateTime > 0) {
var currentTime = new Date().getTime();
var lastedValue = window.sessionStorage.getItem(id);
if (currentTime >= lastedUpdateTime + StorageTimeTicket && (!lastedValue || lastedValue !== value)) {
window.sessionStorage.setItem(id, value);
setTip(true);
}
}
}, StorageTimeTicket);
(0,_react_17_0_2_react.useEffect)(function () {
setPreview(watch);
}, [cm, watch]);
(0,_react_17_0_2_react.useEffect)(function () {
if (cm) {
isFocus && cm.focus();
}
}, [cm, isFocus]);
(0,_react_17_0_2_react.useEffect)(function () {
if (preview && cm) {
var syncScroll = function syncScroll(e) {
var target = e.target;
if (previewEl.current) {
var ratio = target.scrollTop / target.scrollHeight;
previewEl.current.scrollTop = previewEl.current.scrollHeight * ratio;
}
};
var scrollEl = cm.getScrollerElement();
scrollEl.addEventListener('scroll', syncScroll);
return function () {
scrollEl.removeEventListener('scroll', syncScroll);
};
}
}, [cm, preview]);
(0,_react_17_0_2_react.useEffect)(function () {
if (cm && onCMBeforeChange) {
var onChangeHandler = function onChangeHandler(cm, change) {
onCMBeforeChange(cm, change);
};
cm.on('beforeChange', onChangeHandler);
return function () {
cm.off('beforeChange', onChangeHandler);
};
}
}, [cm, onCMBeforeChange]);
(0,_react_17_0_2_react.useEffect)(function () {
if (cm && onBlur) {
var onBlurHandler = function onBlurHandler() {
onBlur(cm.getValue());
};
cm.on('blur', onBlurHandler);
return function () {
cm.off('blur', onBlurHandler);
};
}
}, [cm, onBlur]);
function deleteAtSymbol(cm, change) {
var doc = cm.getDoc();
var cursor = doc.getCursor();
var line = doc.getLine(cursor.line);
var ch = line.charAt(cursor.ch - 1);
var p1 = line.lastIndexOf("@▁@", cursor.ch);
var p2 = line.lastIndexOf("@▁▁@", cursor.ch);
var posStart = p1 > p2 ? p1 : p2;
var n = p1 > p2 ? 3 : 4;
if (ADD_MULTI.indexOf(ch) === -1) return null;
console.log("change1:", change, cm, line, cursor, posStart, p1, p2, ch);
if (posStart >= 0 && cursor.ch - posStart < 5) {
var posEnd = posStart + n;
doc.replaceRange("", {
line: cursor.line,
ch: posStart
}, {
line: cursor.line,
ch: posEnd
});
return {
line: cursor.line,
ch: posEnd
};
}
return null;
}
(0,_react_17_0_2_react.useEffect)(function () {
if (cm) {
var onChangeHandler = function onChangeHandler(cm, change) {
var content = cm.getValue();
setValue(content);
setLastedUpdateTime(new Date().getTime());
cm.getScrollerElement().dispatchEvent(new CustomEvent('scroll'));
if (onChange) {
if (showNullProgramButton) {
onChange(content, formatProgramFill(content));
} else {
onChange(content);
}
}
};
cm.on('change', onChangeHandler);
return function () {
cm.off('change', onChangeHandler);
};
}
}, [cm, onChange]);
(0,_react_17_0_2_react.useEffect)(function () {
if (cm) {
// isFocus && cm.focus()
if (defaultValue === null || defaultValue === undefined) {
cm.setValue('');
setValue('');
} else {
var scrollTop = window.scrollY || window.pageYOffset;
if (defaultValue !== cm.getValue()) {
cm.setValue(defaultValue);
setValue(defaultValue);
cm.setCursor(disabled ? 1 : cm.lineCount(), 0);
window.scrollTo(0, scrollTop);
}
}
}
}, [cm, defaultValue]);
var onActionCallback = (0,_react_17_0_2_react.useCallback)(function (actionName) {
var cursor = cm.getCursor();
var selection = cm.getSelection();
var selectionText = selection.split('\n');
switch (actionName) {
case 'bold':
cm.replaceSelection('**' + selection + '**');
if (selection === '') {
cm.setCursor(cursor.line, cursor.ch + 2);
}
return cm.focus();
case 'italic':
cm.replaceSelection('*' + selection + '*');
if (selection === '') {
cm.setCursor(cursor.line, cursor.ch + 1);
}
return cm.focus();
case 'code':
cm.replaceSelection('`' + selection + '`');
if (selection === '') {
cm.setCursor(cursor.line, cursor.ch + 1);
}
return cm.focus();
case 'inline-latex':
cm.replaceSelection('`$$' + selection + '$$`');
if (selection === '') {
cm.setCursor(cursor.line, cursor.ch + 3);
}
return cm.focus();
case 'latex':
cm.replaceSelection("```latex\n" + selection + "\n```");
cm.setCursor(cursor.line + 1, selection.length + 1);
return cm.focus();
case 'line-break':
cm.replaceSelection('<br/>\n');
return cm.focus();
case 'list-ul':
if (selection === '') {
cm.replaceSelection('- ' + selection);
} else {
cm.replaceSelection(selectionText.map(function (item) {
return item === '' ? '' : "- ".concat(item);
}).join('\n'));
}
return cm.focus();
case 'list-ol':
if (selection === '') {
cm.replaceSelection('1. ' + selection);
} else {
cm.replaceSelection(selectionText.map(function (item, index) {
return item === '' ? '' : "".concat(index + 1, ". ").concat(item);
}).join('\n'));
}
return cm.focus();
case 'add-null-ch':
if (selection === '') {
cm.setCursor(cursor.line, cursor.ch);
}
cm.replaceSelection(NULL_CH);
return cm.focus();
case 'add-signal':
if (selection === '') {
cm.setCursor(cursor.line, cursor.ch);
}
cm.replaceSelection(ADD_SINGLE);
return cm.focus();
case 'add-multiple':
if (selection === '') {
cm.setCursor(cursor.line, cursor.ch);
}
cm.replaceSelection(ADD_MULTI);
return cm.focus();
case 'inster-template-1':
if (selection === '') {
cm.setCursor(cursor.line, cursor.ch);
}
cm.replaceSelection(TEMP1);
return cm.focus();
case 'eraser':
cm.setValue('');
return cm.focus();
case 'trigger-watch':
setPreview(!preview);
return cm.focus();
case 'trigger-full-screen':
setIsFull(!isFull);
return cm.focus();
case LINK:
setAction(LINK);
return;
case CODE_BLOCK:
setAction(CODE_BLOCK);
return;
case UPLOAD_IMAGE:
setAction(UPLOAD_IMAGE);
return;
case ADD_TABLE:
setAction(ADD_TABLE);
return;
default:
throw new Error();
}
}, [cm, preview, isFull]);
var ExecutePluginAction = (0,_react_17_0_2_react.useCallback)(function (values) {
setAction('');
switch (action) {
case LINK:
var title = values.title,
link = values.link;
cm.replaceSelection("[".concat(title, "](").concat(link, ")"));
return cm.focus();
case CODE_BLOCK:
var language = values.language,
content = values.content;
cm.replaceSelection(['```' + language, content, '```'].join('\n'));
return cm.focus();
case UPLOAD_IMAGE:
var src = values.src,
alt = values.alt;
if (alt) {
cm.replaceSelection("![ ".concat(alt, " ]( ").concat(src, " \"").concat(alt, "\" )"));
} else {
cm.replaceSelection("![,](".concat(src, ")"));
}
return cm.focus();
case ADD_TABLE:
var row = values.row,
col = values.col,
align = values.align;
var table = '\n';
for (var r = 0; r < row; r++) {
var rows = [];
var heads = [];
for (var c = 0; c < col; c++) {
if (r === 1) {
heads.push(ALIGNSIGN[align]);
}
rows.push(' ');
}
if (r === 1) {
table += "| ".concat(heads.join(' | '), " |\n");
}
table += "| ".concat(rows.join(col === 1 ? '' : ' | '), " |\n");
}
cm.replaceSelection(table + '\n');
return cm.focus();
default:
throw new Error();
}
}, [cm, action]);
var PluginEl = (0,_react_17_0_2_react.useMemo)(function () {
switch (action) {
case LINK:
return /*#__PURE__*/(0,jsx_runtime.jsx)(markdown_editor_link, {
callback: ExecutePluginAction,
onCancel: onCancel
});
case CODE_BLOCK:
return /*#__PURE__*/(0,jsx_runtime.jsx)(code_block/* default */.Z, {
callback: ExecutePluginAction,
onCancel: onCancel
});
case UPLOAD_IMAGE:
return /*#__PURE__*/(0,jsx_runtime.jsx)(upload_image, {
callback: ExecutePluginAction,
onCancel: onCancel
});
case ADD_TABLE:
return /*#__PURE__*/(0,jsx_runtime.jsx)(add_table_panel, {
callback: ExecutePluginAction,
onCancel: onCancel
});
default:
return null;
}
}, [action]);
function onCancel() {
setAction('');
}
(0,_react_17_0_2_react.useEffect)(function () {
if (resizeBarEl.current) {
var onMouseDown = function onMouseDown(e) {
dragging = true;
startY = e.pageY;
};
var onMouseUp = function onMouseUp() {
dragging = false;
};
var onMouseMove = function onMouseMove(e) {
if (dragging) {
var delta = e.pageY - startY;
if (delta < 0) {
delta = 0;
}
if (delta > 300) {
delta = 300;
}
var resizeH = height + delta + 'px';
setH(resizeH);
}
};
var resizeBar = resizeBarEl.current;
var dragging = false;
var startY = 0;
resizeBar.addEventListener('mousedown', onMouseDown);
document.addEventListener('mousemove', onMouseMove);
document.addEventListener('mouseup', onMouseUp);
return function () {
resizeBar.removeEventListener('mousedown', onMouseDown);
document.removeEventListener('mousemove', onMouseMove);
document.removeEventListener('mouseup', onMouseUp);
};
}
}, [cm, resizeBarEl]);
(0,_react_17_0_2_react.useEffect)(function () {
setH(height);
}, [height]);
var fixedWidth = processSize(width);
var fixedHeight = processSize(h);
var style = {
width: fixedWidth,
height: fixedHeight
};
var saveTime = (0,_react_17_0_2_react.useMemo)(function () {
if (lastedUpdateTime) {
var d = new Date(lastedUpdateTime);
var _h = d.getHours();
var m = d.getMinutes();
var s = d.getSeconds();
_h = _h < 10 ? '0' + _h : _h;
m = m < 10 ? '0' + m : m;
s = s < 10 ? '0' + s : s;
return "".concat(_h, ":").concat(m, ":").concat(s);
}
return 0;
}, [lastedUpdateTime]);
var formatProgramFill = function formatProgramFill(str) {
var arr = [];
if (showNullProgramButton) {
var num = -1;
str = str.replace(/(@▁▁@|@▁@)/g, function (a, b, c) {
arr.push({
multiLine: !(a === ADD_SINGLE)
});
});
}
return arr;
};
function onCancelStorage() {
window.sessionStorage.removeItem(id);
setTip(false);
setLastedUpdateTime(0);
}
function onReset() {
setTip(false);
setLastedUpdateTime(0);
cm.setValue(window.sessionStorage.getItem(id));
}
return /*#__PURE__*/(0,jsx_runtime.jsxs)(_react_17_0_2_react.Fragment, {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "markdown-editor-wrapper",
ref: containerEl,
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: "markdown-editor-container ".concat(className, " ").concat(preview ? 'on-preview' : '', " ").concat(miniToolbar ? 'mini' : '', " ").concat(isFull ? 'full-screen' : ''),
style: style,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(toolbar, {
insertTemp: insertTemp,
watch: preview,
fullScreen: isFull,
showNullButton: showNullButton,
showNullProgramButton: showNullProgramButton,
onActionCallback: onActionCallback,
hidetoolBar: hidetoolBar
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: "markdown-editor-body",
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "codemirror-container",
children: /*#__PURE__*/(0,jsx_runtime.jsx)("textarea", {
ref: cmEl,
placeholder: placeholder
})
}), preview ? /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
ref: previewEl,
className: "preview-container",
children: [mode === "stex" && /*#__PURE__*/(0,jsx_runtime.jsx)(RenderHtml_stex, {
value: value
}), mode !== "stex" && /*#__PURE__*/(0,jsx_runtime.jsx)(RenderHtml/* default */.Z, {
disabledFill: disabledFill,
showProgramFill: showNullProgramButton,
value: value
})]
}) : null]
})]
})
}), showResizeBar ? /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
ref: resizeBarEl,
className: "editor-resize"
}) : null, /*#__PURE__*/(0,jsx_runtime.jsx)(modal/* default */.Z, {
children: TitleDesc[action] ? /*#__PURE__*/(0,jsx_runtime.jsx)(es_modal/* default */.Z, {
centered: true,
title: TitleDesc[action],
open: true,
onCancel: onCancel,
footer: null,
className: "markdown-popup-form",
children: PluginEl
}) : null
})]
});
});
/***/ }),
/***/ 89953:
/*!**********************************!*\
!*** ./src/components/modal.tsx ***!
\**********************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ Z: function() { return /* binding */ Dialog; }
/* harmony export */ });
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_classCallCheck_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/classCallCheck.js */ 94312);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_classCallCheck_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_classCallCheck_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_createClass_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/createClass.js */ 24127);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_createClass_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_createClass_js__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_inherits_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/inherits.js */ 93242);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_inherits_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_inherits_js__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_createSuper_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/createSuper.js */ 10564);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_createSuper_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_createSuper_js__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! react */ 59301);
/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! react-dom */ 4676);
var Dialog = /*#__PURE__*/function (_React$Component) {
_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_inherits_js__WEBPACK_IMPORTED_MODULE_2___default()(Dialog, _React$Component);
var _super = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_createSuper_js__WEBPACK_IMPORTED_MODULE_3___default()(Dialog);
function Dialog(props) {
var _this;
_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_classCallCheck_js__WEBPACK_IMPORTED_MODULE_0___default()(this, Dialog);
_this = _super.call(this, props);
var doc = window.document;
_this.node = doc.createElement('div');
doc.body.appendChild(_this.node);
return _this;
}
_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_createClass_js__WEBPACK_IMPORTED_MODULE_1___default()(Dialog, [{
key: "render",
value: function render() {
var children = this.props.children;
return /*#__PURE__*/(0,react_dom__WEBPACK_IMPORTED_MODULE_5__.createPortal)(children, this.node);
}
}, {
key: "componentWillUnmount",
value: function componentWillUnmount() {
window.document.body.removeChild(this.node);
}
}]);
return Dialog;
}(react__WEBPACK_IMPORTED_MODULE_4__.Component);
/***/ }),
/***/ 52024:
/*!****************************************!*\
!*** ./src/components/useInterval.tsx ***!
\****************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ Z: function() { return /* binding */ useInterval; }
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ 59301);
function useInterval(callback, delay) {
var savedCallback = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)();
// 保存新回调
(0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {
savedCallback.current = callback;
});
// 建立 interval
(0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {
function tick() {
savedCallback.current();
}
if (delay !== null) {
var id = setInterval(tick, delay);
return function () {
return clearInterval(id);
};
}
}, [delay]);
}
/***/ }),
/***/ 89199:
/*!****************************************************************************!*\
!*** ./src/pages/User/Detail/Topics/Exercise/Detail/index.tsx + 8 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 */ Detail; }
});
// 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/objectSpread2.js
var objectSpread2 = __webpack_require__(26801);
var objectSpread2_default = /*#__PURE__*/__webpack_require__.n(objectSpread2);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/toConsumableArray.js
var toConsumableArray = __webpack_require__(93923);
var toConsumableArray_default = /*#__PURE__*/__webpack_require__.n(toConsumableArray);
// 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/_@babel_runtime@7.23.2@@babel/runtime/helpers/objectWithoutProperties.js
var objectWithoutProperties = __webpack_require__(27161);
var objectWithoutProperties_default = /*#__PURE__*/__webpack_require__.n(objectWithoutProperties);
// 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 + 8 modules
var _umi_production_exports = __webpack_require__(7181);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/menu/index.js + 11 modules
var menu = __webpack_require__(20834);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/layout/index.js
var layout = __webpack_require__(44000);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/form/index.js + 19 modules
var es_form = __webpack_require__(78241);
// 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/divider/index.js + 1 modules
var divider = __webpack_require__(28103);
// 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/row/index.js
var row = __webpack_require__(95237);
// 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/modal/index.js + 16 modules
var modal = __webpack_require__(43418);
// 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/input/index.js + 5 modules
var input = __webpack_require__(1056);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
var es_button = __webpack_require__(3113);
// EXTERNAL MODULE: ./src/service/polls.ts
var service_polls = __webpack_require__(65469);
// EXTERNAL MODULE: ./src/service/user.ts
var service_user = __webpack_require__(43916);
// EXTERNAL MODULE: ./src/components/NoData/index.tsx
var NoData = __webpack_require__(31917);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/tooltip/index.js + 3 modules
var tooltip = __webpack_require__(6848);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/checkbox/index.js + 3 modules
var es_checkbox = __webpack_require__(24905);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/input-number/index.js + 14 modules
var input_number = __webpack_require__(85731);
// EXTERNAL MODULE: ./src/service/exercise.ts
var exercise = __webpack_require__(65398);
// EXTERNAL MODULE: ./src/components/markdown-editor/index.tsx + 10 modules
var markdown_editor = __webpack_require__(61816);
// EXTERNAL MODULE: ./src/components/RenderHtml/index.tsx + 1 modules
var RenderHtml = __webpack_require__(32666);
;// CONCATENATED MODULE: ./src/pages/User/Detail/Topics/Exercise/Detail/components/editor.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var editormodules = ({"flex_box_center":"flex_box_center___p1qG1","flex_space_between":"flex_space_between___EHoRl","flex_box_vertical_center":"flex_box_vertical_center___c0u2d","flex_box_center_end":"flex_box_center_end___ueiDD","flex_box_column":"flex_box_column___tyRHS","wrap":"wrap___ce8sS","modal":"modal___yzD47","titleWrap":"titleWrap___OBPcs","required":"required___ncxFF","title":"title___cxIaz","colorGray":"colorGray___NXXsn","choiceWrap":"choiceWrap___AhJbr","answer":"answer____f42Z","activeAnswer":"activeAnswer___BqxNg","deleteIcon":"deleteIcon___iHXv4","addIcon":"addIcon___Kb1l4","editorWrap":"editorWrap___UmeId","htmlWrap":"htmlWrap____EtjV","radio":"radio___zqqhF","color333":"color333___PUxW5","color999":"color999___Uiwst","questionType":"questionType___GcJoU","questionChoices":"questionChoices___WgikS"});
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/jsx-runtime.js
var jsx_runtime = __webpack_require__(37712);
;// CONCATENATED MODULE: ./src/pages/User/Detail/Topics/Exercise/Detail/components/MultipleEditor/index.tsx
var _excluded = ["problemset", "globalSetting", "loading", "dispatch", "onRef", "editData"];
var tagList = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'];
var SingleEditor = function SingleEditor(_ref, ref) {
var problemset = _ref.problemset,
globalSetting = _ref.globalSetting,
loading = _ref.loading,
dispatch = _ref.dispatch,
_ref$onRef = _ref.onRef,
onRef = _ref$onRef === void 0 ? function () {} : _ref$onRef,
editData = _ref.editData,
props = objectWithoutProperties_default()(_ref, _excluded);
var _useState = (0,_react_17_0_2_react.useState)([]),
_useState2 = slicedToArray_default()(_useState, 2),
questionChoiceList = _useState2[0],
setQuestionChoiceList = _useState2[1];
var _useState3 = (0,_react_17_0_2_react.useState)(),
_useState4 = slicedToArray_default()(_useState3, 2),
activeEditor = _useState4[0],
setActiveEditor = _useState4[1];
var _useState5 = (0,_react_17_0_2_react.useState)([]),
_useState6 = slicedToArray_default()(_useState5, 2),
activeAnswer = _useState6[0],
setActiveAnswer = _useState6[1];
var _useState7 = (0,_react_17_0_2_react.useState)(''),
_useState8 = slicedToArray_default()(_useState7, 2),
title = _useState8[0],
setTitle = _useState8[1];
var _useState9 = (0,_react_17_0_2_react.useState)(5),
_useState10 = slicedToArray_default()(_useState9, 2),
score = _useState10[0],
setScore = _useState10[1];
var _useState11 = (0,_react_17_0_2_react.useState)(false),
_useState12 = slicedToArray_default()(_useState11, 2),
isEdit = _useState12[0],
setIsEdit = _useState12[1];
var params = (0,_umi_production_exports.useParams)();
(0,_react_17_0_2_react.useEffect)(function () {
setQuestionChoiceList(['', '', '', '']);
}, []);
(0,_react_17_0_2_react.useEffect)(function () {
if (!(editData !== null && editData !== void 0 && editData.question_choices)) {
setIsEdit(true);
return;
}
setTitle(editData === null || editData === void 0 ? void 0 : editData.question_title);
setScore(parseInt(editData === null || editData === void 0 ? void 0 : editData.question_score));
setQuestionChoiceList(editData === null || editData === void 0 ? void 0 : editData.question_choices.map(function (item) {
return item.choice_text;
}));
var answerIndexs = [];
editData === null || editData === void 0 || editData.standard_answer.map(function (item, index) {
answerIndexs.push(item - 1);
});
setActiveAnswer(answerIndexs);
}, [editData]);
(0,_react_17_0_2_react.useImperativeHandle)(ref, function () {
return {
onSave: onSave,
isEdit: isEdit
};
});
var onSave = /*#__PURE__*/function () {
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
var findNotAnswerIndex, choices, res;
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
if (title) {
_context.next = 3;
break;
}
message/* default */.ZP.info("请您输入题目");
return _context.abrupt("return", false);
case 3:
findNotAnswerIndex = questionChoiceList.findIndex(function (item) {
return !item;
});
if (!(findNotAnswerIndex > -1)) {
_context.next = 7;
break;
}
message/* default */.ZP.info("\u8BF7\u5148\u8F93\u5165 ".concat(tagList[findNotAnswerIndex], " \u9009\u9879\u7684\u5185\u5BB9"));
return _context.abrupt("return", false);
case 7:
if (activeAnswer.length) {
_context.next = 10;
break;
}
message/* default */.ZP.info("请设置本题的正确答案点击选项A/B...即可完成设置");
return _context.abrupt("return", false);
case 10:
if (!(activeAnswer.length < 1)) {
_context.next = 13;
break;
}
message/* default */.ZP.info("请选择答案");
return _context.abrupt("return", false);
case 13:
choices = questionChoiceList.map(function (item, index) {
return {
choice_text: item,
is_answer: activeAnswer.includes(index) ? index + 1 : 0
};
});
if (!editData.question_id) {
_context.next = 20;
break;
}
_context.next = 17;
return dispatch({
type: "exercise/editExerciseQuestion",
payload: {
"id": editData.question_id,
"question_title": title,
"question_type": 1,
"question_score": "5.0",
"question_choices": choices.map(function (item) {
return item.choice_text;
}),
"standard_answers": choices.filter(function (item) {
return item.is_answer;
}).map(function (item) {
return item.is_answer;
})
}
});
case 17:
res = _context.sent;
_context.next = 23;
break;
case 20:
_context.next = 22;
return dispatch({
type: "exercise/addExerciseQuestion",
payload: {
"categoryId": params.categoryId,
"question_title": title,
"question_type": 1,
"question_score": "5.0",
"question_choices": choices.map(function (item) {
return item.choice_text;
}),
"standard_answers": choices.filter(function (item) {
return item.is_answer;
}).map(function (item) {
return item.is_answer;
})
}
});
case 22:
res = _context.sent;
case 23:
if (res.status === 0) {
message/* default */.ZP.success("保存成功");
setIsEdit(false);
dispatch({
type: "exercise/editExercise",
payload: objectSpread2_default()({}, params)
});
}
case 24:
case "end":
return _context.stop();
}
}, _callee);
}));
return function onSave() {
return _ref2.apply(this, arguments);
};
}();
var actionArr = [{
name: "删除",
icon: "iconfont c-light-black ml30 icon-shanchu",
id: "del"
}, {
name: "上移",
icon: "iconfont c-green ml30 icon-shangyi_Hover",
id: "up"
}, {
name: "下移",
icon: "iconfont c-green ml30 icon-xiayi_moren",
id: "down"
}, {
name: "编辑",
icon: "iconfont c-green ml30 icon-bianjishijuan3x",
id: "edit"
}];
var actionClick = /*#__PURE__*/function () {
var _ref3 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee3(item) {
return regeneratorRuntime_default()().wrap(function _callee3$(_context3) {
while (1) switch (_context3.prev = _context3.next) {
case 0:
_context3.t0 = item.id;
_context3.next = _context3.t0 === "del" ? 3 : _context3.t0 === "up" ? 5 : _context3.t0 === "down" ? 5 : _context3.t0 === "edit" ? 9 : 11;
break;
case 3:
modal/* default */.Z.confirm({
centered: true,
okText: '确定',
cancelText: '取消',
title: '确认要删除这个问题吗?',
onOk: function onOk() {
return asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2() {
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
while (1) switch (_context2.prev = _context2.next) {
case 0:
_context2.next = 2;
return (0,exercise/* exeriseQuestionDelete */.Fl)({
id: editData.question_id
});
case 2:
dispatch({
type: "exercise/editExercise",
payload: objectSpread2_default()({}, params)
});
case 3:
case "end":
return _context2.stop();
}
}, _callee2);
}))();
}
});
return _context3.abrupt("break", 11);
case 5:
_context3.next = 7;
return dispatch({
type: "exercise/exeriseMoveUpDown",
payload: {
id: editData.question_id,
opr: item.id
}
});
case 7:
dispatch({
type: "exercise/editExercise",
payload: objectSpread2_default()({}, params)
});
return _context3.abrupt("break", 11);
case 9:
setIsEdit(true);
return _context3.abrupt("break", 11);
case 11:
case "end":
return _context3.stop();
}
}, _callee3);
}));
return function actionClick(_x) {
return _ref3.apply(this, arguments);
};
}();
var showList = function showList() {
var _editData$question_ch;
return /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: editormodules.questionType,
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: "font16 c-blue",
children: [editData.key, "\u3001\u591A\u9009\u9898"]
}), "\uFF08", editData.question_score, "\u5206\uFF09"]
}), !editData.hideAction && actionArr.map(function (item, index) {
if (item.id === "up" && editData.key === 1) return null;
if (item.id === "down" && editData.key === editData.len) return null;
return /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
placement: "bottom",
title: item.name,
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
onClick: function onClick() {
return actionClick(item);
},
className: item.icon
})
}, index);
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "mt5",
children: /*#__PURE__*/(0,jsx_runtime.jsx)(RenderHtml/* default */.Z, {
value: editData.question_title
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: editormodules.questionChoices,
children: editData === null || editData === void 0 || (_editData$question_ch = editData.question_choices) === null || _editData$question_ch === void 0 ? void 0 : _editData$question_ch.map(function (item, index) {
return /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(es_checkbox/* default */.Z, {
checked: editData.standard_answer.includes(index + 1),
disabled: true,
children: [tagList[index], "."]
}, index)
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
flex: "1",
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "c-black font14",
children: /*#__PURE__*/(0,jsx_runtime.jsx)(RenderHtml/* default */.Z, {
value: item.choice_text
})
})
})]
});
})
})]
});
};
var showEdit = function showEdit() {
return /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: editormodules.questionType,
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "font16 c-blue",
children: "\u9009\u62E9\u9898"
}), "\uFF08\u5BA2\u89C2\u9898\uFF0C\u7531\u7CFB\u7EDF\u81EA\u52A8\u8BC4\u5206\uFF0C\u8BF7\u8BBE\u7F6E\u6807\u51C6\u7B54\u6848\uFF09"]
})
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
className: editormodules.titleWrap,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: editormodules.required,
children: "*"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: editormodules.title,
children: "\u9898\u5E72\uFF1A"
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)(markdown_editor/* default */.Z, {
id: "single-question-title",
watch: true,
height: 155,
placeholder: "\u8BF7\u60A8\u8F93\u5165\u9898\u5E72",
defaultValue: title,
onChange: function onChange(value) {
return setTitle(value);
}
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
className: editormodules.titleWrap,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: editormodules.required,
children: "*"
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: editormodules.title,
children: ["\u7B54\u6848\u9009\u9879\uFF1A", /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: editormodules.colorGray,
children: "\u70B9\u51FB\u9009\u9879\u53EF\u8BBE\u7F6E\u6B63\u786E\u7B54\u6848"
})]
})]
}), questionChoiceList.map(function (item, index) {
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: editormodules.choiceWrap,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
title: "\u70B9\u51FB\u8BBE\u7F6E\u4E3A\u6807\u51C6\u7B54\u6848",
placement: "left",
children: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "".concat(editormodules.answer, " ").concat(activeAnswer.includes(index) ? editormodules.activeAnswer : ''),
onClick: function onClick() {
if (activeAnswer.includes(index)) {
setActiveAnswer(activeAnswer.filter(function (item) {
return item !== index;
}));
} else {
setActiveAnswer([].concat(toConsumableArray_default()(activeAnswer), [index]));
}
},
children: tagList[index]
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: editormodules.editorWrap,
children: activeEditor === index ? /*#__PURE__*/(0,jsx_runtime.jsx)(markdown_editor/* default */.Z, {
id: "single-question-option-".concat(index),
watch: true,
height: 155,
placeholder: "\u8BF7\u60A8\u8F93\u5165\u9009\u9879",
defaultValue: item,
onChange: function onChange(value) {
questionChoiceList[index] = value;
setQuestionChoiceList(questionChoiceList);
}
}) : /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: editormodules.htmlWrap,
onClick: function onClick() {
return setActiveEditor(index);
},
children: /*#__PURE__*/(0,jsx_runtime.jsx)(RenderHtml/* default */.Z, {
value: item
})
})
}), index > 1 && /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
title: "\u5220\u9664",
children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "".concat(editormodules.deleteIcon, " iconfont icon-htmal5icon19"),
onClick: function onClick() {
return setQuestionChoiceList(questionChoiceList.filter(function (_, key) {
return key !== index;
}));
}
})
}), index < 7 && index === questionChoiceList.length - 1 && /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
title: "\u65B0\u589E\u53C2\u8003\u7B54\u6848",
children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "".concat(editormodules.addIcon, " iconfont icon-roundaddfill ml6"),
onClick: function onClick() {
return setQuestionChoiceList([].concat(toConsumableArray_default()(questionChoiceList), ['']));
}
})
})]
}, index);
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
className: "c-orange",
children: "\u6E29\u99A8\u63D0\u793A\uFF1A\u70B9\u51FB\u9009\u9879\u8F93\u5165\u6846\u53EF\u8BBE\u7F6E\u7B54\u6848\uFF1B\u9009\u4E2D\u7684\u9009\u9879\u5373\u4E3A\u6B63\u786E\u7B54\u6848\uFF0C\u9009\u62E9\u591A\u4E2A\u7B54\u6848\u5373\u4E3A\u591A\u9009\u9898"
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
className: "",
children: ["\u5206\u503C\uFF1A", /*#__PURE__*/(0,jsx_runtime.jsx)(input_number/* default */.Z, {
value: score,
max: 10000,
min: -1,
onChange: function onChange(value) {
setScore(value);
}
}), " \u5206"]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
className: "tr",
children: [editData.question_id && /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
type: "default",
onClick: function onClick() {
return setIsEdit(false);
},
children: "\u53D6\u6D88"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
className: "ml20",
type: "primary",
onClick: function onClick() {
return onSave();
},
children: "\u4FDD\u5B58"
})]
})]
});
};
return /*#__PURE__*/(0,jsx_runtime.jsxs)("section", {
className: editormodules.wrap,
children: [!isEdit && showList(), isEdit && showEdit()]
});
};
/* harmony default export */ var MultipleEditor = ((0,_umi_production_exports.connect)(function (_ref4) {
var problemset = _ref4.problemset,
loading = _ref4.loading,
globalSetting = _ref4.globalSetting;
return {
problemset: problemset,
globalSetting: globalSetting,
loading: loading.effects
};
}, null, null, {
forwardRef: true
})( /*#__PURE__*/(0,_react_17_0_2_react.forwardRef)(SingleEditor)));
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/radio/index.js + 5 modules
var es_radio = __webpack_require__(5112);
;// CONCATENATED MODULE: ./src/pages/User/Detail/Topics/Exercise/Detail/components/SingleEditor/index.tsx
var SingleEditor_excluded = ["problemset", "globalSetting", "loading", "dispatch", "onRef", "editData"];
var SingleEditor_tagList = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'];
var SingleEditor_SingleEditor = function SingleEditor(_ref, ref) {
var problemset = _ref.problemset,
globalSetting = _ref.globalSetting,
loading = _ref.loading,
dispatch = _ref.dispatch,
_ref$onRef = _ref.onRef,
onRef = _ref$onRef === void 0 ? function () {} : _ref$onRef,
editData = _ref.editData,
props = objectWithoutProperties_default()(_ref, SingleEditor_excluded);
var _useState = (0,_react_17_0_2_react.useState)([]),
_useState2 = slicedToArray_default()(_useState, 2),
questionChoiceList = _useState2[0],
setQuestionChoiceList = _useState2[1];
var _useState3 = (0,_react_17_0_2_react.useState)(),
_useState4 = slicedToArray_default()(_useState3, 2),
activeEditor = _useState4[0],
setActiveEditor = _useState4[1];
var _useState5 = (0,_react_17_0_2_react.useState)([]),
_useState6 = slicedToArray_default()(_useState5, 2),
activeAnswer = _useState6[0],
setActiveAnswer = _useState6[1];
var _useState7 = (0,_react_17_0_2_react.useState)(''),
_useState8 = slicedToArray_default()(_useState7, 2),
title = _useState8[0],
setTitle = _useState8[1];
var _useState9 = (0,_react_17_0_2_react.useState)(0),
_useState10 = slicedToArray_default()(_useState9, 2),
score = _useState10[0],
setScore = _useState10[1];
var _useState11 = (0,_react_17_0_2_react.useState)(false),
_useState12 = slicedToArray_default()(_useState11, 2),
isEdit = _useState12[0],
setIsEdit = _useState12[1];
var params = (0,_umi_production_exports.useParams)();
(0,_react_17_0_2_react.useEffect)(function () {
setQuestionChoiceList(['', '', '', '']);
}, []);
(0,_react_17_0_2_react.useEffect)(function () {
if (!(editData !== null && editData !== void 0 && editData.question_choices)) {
setIsEdit(true);
return;
}
setTitle(editData === null || editData === void 0 ? void 0 : editData.question_title);
setScore(parseInt(editData === null || editData === void 0 ? void 0 : editData.question_score));
setQuestionChoiceList(editData === null || editData === void 0 ? void 0 : editData.question_choices.map(function (item) {
return item.choice_text;
}));
var answerIndexs = [];
editData === null || editData === void 0 || editData.standard_answer.map(function (item, index) {
answerIndexs.push(item - 1);
});
setActiveAnswer(answerIndexs);
}, [editData]);
(0,_react_17_0_2_react.useImperativeHandle)(ref, function () {
return {
onSave: onSave,
isEdit: isEdit
};
});
var onSave = /*#__PURE__*/function () {
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
var findNotAnswerIndex, choices, res;
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
if (title) {
_context.next = 3;
break;
}
message/* default */.ZP.info("请您输入题目");
return _context.abrupt("return", false);
case 3:
findNotAnswerIndex = questionChoiceList.findIndex(function (item) {
return !item;
});
if (!(findNotAnswerIndex > -1)) {
_context.next = 7;
break;
}
message/* default */.ZP.info("\u8BF7\u5148\u8F93\u5165 ".concat(SingleEditor_tagList[findNotAnswerIndex], " \u9009\u9879\u7684\u5185\u5BB9"));
return _context.abrupt("return", false);
case 7:
if (activeAnswer.length) {
_context.next = 10;
break;
}
message/* default */.ZP.info("请设置本题的正确答案点击选项A/B...即可完成设置");
return _context.abrupt("return", false);
case 10:
if (!(activeAnswer.length < 1)) {
_context.next = 13;
break;
}
message/* default */.ZP.info("请选择答案");
return _context.abrupt("return", false);
case 13:
choices = questionChoiceList.map(function (item, index) {
return {
choice_text: item,
is_answer: activeAnswer.includes(index) ? index + 1 : 0
};
});
if (!editData.question_id) {
_context.next = 20;
break;
}
_context.next = 17;
return (0,service_polls/* putExerciseBankQuestions */.Kc)({
"id": editData.question_id,
"question_title": title,
"question_type": 1,
"question_score": score,
"question_choices": choices.map(function (item) {
return item.choice_text;
}),
"standard_answers": choices.filter(function (item) {
return item.is_answer;
}).map(function (item) {
return item.is_answer;
})
});
case 17:
res = _context.sent;
_context.next = 23;
break;
case 20:
_context.next = 22;
return (0,service_polls/* addExerciseBankQuestions */.iV)({
"exercise_bank_id": params.topicId,
"question_title": title,
"question_type": 1,
"question_score": "5.0",
"question_choices": choices.map(function (item) {
return item.choice_text;
}),
"standard_answers": choices.filter(function (item) {
return item.is_answer;
}).map(function (item) {
return item.is_answer;
})
});
case 22:
res = _context.sent;
case 23:
if (res.status === 0) {
message/* default */.ZP.success("保存成功");
setIsEdit(false);
}
_context.next = 26;
return dispatch({
type: "polls/getExerciseBanks",
payload: objectSpread2_default()({}, params)
});
case 26:
case "end":
return _context.stop();
}
}, _callee);
}));
return function onSave() {
return _ref2.apply(this, arguments);
};
}();
var actionArr = [{
name: "删除",
icon: "iconfont c-light-black ml30 icon-shanchu",
id: "del"
}, {
name: "上移",
icon: "iconfont c-green ml30 icon-shangyi_Hover",
id: "up"
}, {
name: "下移",
icon: "iconfont c-green ml30 icon-xiayi_moren",
id: "down"
}, {
name: "编辑",
icon: "iconfont c-green ml30 icon-bianjishijuan3x",
id: "edit"
}];
var actionClick = /*#__PURE__*/function () {
var _ref3 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee3(item) {
return regeneratorRuntime_default()().wrap(function _callee3$(_context3) {
while (1) switch (_context3.prev = _context3.next) {
case 0:
_context3.t0 = item.id;
_context3.next = _context3.t0 === "del" ? 3 : _context3.t0 === "up" ? 5 : _context3.t0 === "down" ? 5 : _context3.t0 === "edit" ? 9 : 11;
break;
case 3:
modal/* default */.Z.confirm({
centered: true,
okText: '确定',
cancelText: '取消',
title: '确认要删除这个问题吗?',
onOk: function onOk() {
return asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2() {
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
while (1) switch (_context2.prev = _context2.next) {
case 0:
_context2.next = 2;
return (0,service_polls/* deleteExerciseBanksQuestion */.x$)({
pollsId: editData.question_id
});
case 2:
dispatch({
type: "polls/getExerciseBanks",
payload: objectSpread2_default()({}, params)
});
case 3:
case "end":
return _context2.stop();
}
}, _callee2);
}))();
}
});
return _context3.abrupt("break", 11);
case 5:
_context3.next = 7;
return (0,service_polls/* exercisesBanksMoveUpDown */.W)({
exerciseId: editData === null || editData === void 0 ? void 0 : editData.question_id,
opr: item.id
});
case 7:
dispatch({
type: "polls/getExerciseBanks",
payload: objectSpread2_default()({}, params)
});
return _context3.abrupt("break", 11);
case 9:
setIsEdit(true);
return _context3.abrupt("break", 11);
case 11:
case "end":
return _context3.stop();
}
}, _callee3);
}));
return function actionClick(_x) {
return _ref3.apply(this, arguments);
};
}();
var showList = function showList() {
var _editData$question_ch;
return /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: editormodules.questionType,
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: "font16 c-blue",
children: [editData.key, "\u3001\u5355\u9009\u9898"]
}), "\uFF08", editData.question_score, "\u5206\uFF09"]
}), !editData.hideAction && actionArr.map(function (item, index) {
if (item.id === "up" && editData.key === 1) return null;
if (item.id === "down" && editData.key === editData.len) return null;
return /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
placement: "bottom",
title: item.name,
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
onClick: function onClick() {
return actionClick(item);
},
className: item.icon
})
}, index);
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "mt5",
children: /*#__PURE__*/(0,jsx_runtime.jsx)(RenderHtml/* default */.Z, {
value: editData.question_title
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: editormodules.questionChoices,
children: editData === null || editData === void 0 || (_editData$question_ch = editData.question_choices) === null || _editData$question_ch === void 0 ? void 0 : _editData$question_ch.map(function (item, index) {
return /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(es_radio/* default */.ZP, {
checked: editData.standard_answer.includes(index + 1),
disabled: true,
children: [SingleEditor_tagList[index], "."]
}, index)
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
flex: "1",
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "c-black font14",
children: /*#__PURE__*/(0,jsx_runtime.jsx)(RenderHtml/* default */.Z, {
value: item.choice_text
})
})
})]
});
})
})]
});
};
var showEdit = function showEdit() {
return /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: editormodules.questionType,
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "font16 c-blue",
children: "\u9009\u62E9\u9898"
}), "\uFF08\u5BA2\u89C2\u9898\uFF0C\u7531\u7CFB\u7EDF\u81EA\u52A8\u8BC4\u5206\uFF0C\u8BF7\u8BBE\u7F6E\u6807\u51C6\u7B54\u6848\uFF09"]
})
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
className: editormodules.titleWrap,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: editormodules.required,
children: "*"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: editormodules.title,
children: "\u9898\u5E72\uFF1A"
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)(markdown_editor/* default */.Z, {
id: "single-question-title",
watch: true,
height: 155,
placeholder: "\u8BF7\u60A8\u8F93\u5165\u9898\u5E72",
defaultValue: title,
onChange: function onChange(value) {
return setTitle(value);
}
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
className: editormodules.titleWrap,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: editormodules.required,
children: "*"
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: editormodules.title,
children: ["\u7B54\u6848\u9009\u9879\uFF1A", /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: editormodules.colorGray,
children: "\u70B9\u51FB\u9009\u9879\u53EF\u8BBE\u7F6E\u6B63\u786E\u7B54\u6848"
})]
})]
}), questionChoiceList.map(function (item, index) {
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: editormodules.choiceWrap,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
title: "\u70B9\u51FB\u8BBE\u7F6E\u4E3A\u6807\u51C6\u7B54\u6848",
placement: "left",
children: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "".concat(editormodules.answer, " ").concat(activeAnswer.includes(index) ? editormodules.activeAnswer : ''),
onClick: function onClick() {
if (activeAnswer.includes(index)) {
setActiveAnswer(activeAnswer.filter(function (item) {
return item !== index;
}));
} else {
setActiveAnswer([].concat(toConsumableArray_default()(activeAnswer), [index]));
}
},
children: SingleEditor_tagList[index]
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: editormodules.editorWrap,
children: activeEditor === index ? /*#__PURE__*/(0,jsx_runtime.jsx)(markdown_editor/* default */.Z, {
id: "single-question-option-".concat(index),
watch: true,
height: 155,
placeholder: "\u8BF7\u60A8\u8F93\u5165\u9009\u9879",
defaultValue: item,
onChange: function onChange(value) {
questionChoiceList[index] = value;
setQuestionChoiceList(questionChoiceList);
}
}) : /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: editormodules.htmlWrap,
onClick: function onClick() {
return setActiveEditor(index);
},
children: /*#__PURE__*/(0,jsx_runtime.jsx)(RenderHtml/* default */.Z, {
value: item
})
})
}), index > 1 && /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
title: "\u5220\u9664",
children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "".concat(editormodules.deleteIcon, " iconfont icon-htmal5icon19"),
onClick: function onClick() {
return setQuestionChoiceList(questionChoiceList.filter(function (_, key) {
return key !== index;
}));
}
})
}), index < 7 && index === questionChoiceList.length - 1 && /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
title: "\u65B0\u589E\u53C2\u8003\u7B54\u6848",
children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "".concat(editormodules.addIcon, " iconfont icon-roundaddfill ml6"),
onClick: function onClick() {
return setQuestionChoiceList([].concat(toConsumableArray_default()(questionChoiceList), ['']));
}
})
})]
}, index);
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
className: "c-orange",
children: "\u6E29\u99A8\u63D0\u793A\uFF1A\u70B9\u51FB\u9009\u9879\u8F93\u5165\u6846\u53EF\u8BBE\u7F6E\u7B54\u6848\uFF1B\u9009\u4E2D\u7684\u9009\u9879\u5373\u4E3A\u6B63\u786E\u7B54\u6848\uFF0C\u9009\u62E9\u591A\u4E2A\u7B54\u6848\u5373\u4E3A\u591A\u9009\u9898"
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
className: "",
children: ["\u5206\u503C\uFF1A", /*#__PURE__*/(0,jsx_runtime.jsx)(input_number/* default */.Z, {
value: score,
max: 10000,
min: -1,
onChange: function onChange(value) {
setScore(value);
}
}), " \u5206"]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
className: "tr",
children: [editData.question_id && /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
type: "default",
onClick: function onClick() {
return setIsEdit(false);
},
children: "\u53D6\u6D88"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
className: "ml20",
type: "primary",
onClick: function onClick() {
return onSave();
},
children: "\u4FDD\u5B58"
})]
})]
});
};
return /*#__PURE__*/(0,jsx_runtime.jsxs)("section", {
className: editormodules.wrap,
children: [!isEdit && showList(), isEdit && showEdit()]
});
};
/* harmony default export */ var components_SingleEditor = ((0,_umi_production_exports.connect)(function (_ref4) {
var problemset = _ref4.problemset,
loading = _ref4.loading,
globalSetting = _ref4.globalSetting;
return {
problemset: problemset,
globalSetting: globalSetting,
loading: loading.effects
};
}, null, null, {
forwardRef: true
})( /*#__PURE__*/(0,_react_17_0_2_react.forwardRef)(SingleEditor_SingleEditor)));
;// CONCATENATED MODULE: ./src/pages/User/Detail/Topics/Exercise/Detail/components/JudgmentEditor/index.tsx
var JudgmentEditor_excluded = ["problemset", "globalSetting", "loading", "dispatch", "onRef", "editData"];
var JudgmentEditor_tagList = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z'];
var JudgmentEditor = function JudgmentEditor(_ref, ref) {
var problemset = _ref.problemset,
globalSetting = _ref.globalSetting,
loading = _ref.loading,
dispatch = _ref.dispatch,
_ref$onRef = _ref.onRef,
onRef = _ref$onRef === void 0 ? function () {} : _ref$onRef,
editData = _ref.editData,
props = objectWithoutProperties_default()(_ref, JudgmentEditor_excluded);
var _useState = (0,_react_17_0_2_react.useState)(),
_useState2 = slicedToArray_default()(_useState, 2),
activeAnswer = _useState2[0],
setActiveAnswer = _useState2[1];
var _useState3 = (0,_react_17_0_2_react.useState)(''),
_useState4 = slicedToArray_default()(_useState3, 2),
title = _useState4[0],
setTitle = _useState4[1];
var _useState5 = (0,_react_17_0_2_react.useState)(false),
_useState6 = slicedToArray_default()(_useState5, 2),
isEdit = _useState6[0],
setIsEdit = _useState6[1];
var _useState7 = (0,_react_17_0_2_react.useState)(5),
_useState8 = slicedToArray_default()(_useState7, 2),
score = _useState8[0],
setScore = _useState8[1];
var params = (0,_umi_production_exports.useParams)();
(0,_react_17_0_2_react.useEffect)(function () {
if (!(editData !== null && editData !== void 0 && editData.question_choices)) {
setIsEdit(true);
return;
}
setTitle(editData === null || editData === void 0 ? void 0 : editData.question_title);
setScore(editData === null || editData === void 0 ? void 0 : editData.question_score);
// const answer = editData?.question_choices.find(item => item.is_answer);
setActiveAnswer(editData.standard_answer[0] + '');
}, [editData]);
(0,_react_17_0_2_react.useImperativeHandle)(ref, function () {
return {
onSave: onSave,
isEdit: isEdit
};
});
var onSave = /*#__PURE__*/function () {
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
var choices, res;
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
if (title) {
_context.next = 3;
break;
}
message/* default */.ZP.info("请您输入题干");
return _context.abrupt("return", false);
case 3:
if (activeAnswer) {
_context.next = 6;
break;
}
message/* default */.ZP.info("请先点击选择本选择题的正确选项");
return _context.abrupt("return", false);
case 6:
choices = [{
choice_text: "正确",
is_answer: activeAnswer === "1" ? 1 : 0
}, {
choice_text: "错误",
is_answer: activeAnswer === "2" ? 2 : 0
}];
if (!editData.question_id) {
_context.next = 13;
break;
}
_context.next = 10;
return (0,service_polls/* putExerciseBankQuestions */.Kc)({
"id": editData.question_id,
"question_title": title,
"question_type": 2,
"question_score": score,
"question_choices": choices.map(function (item) {
return item.choice_text;
}),
"standard_answers": choices.filter(function (item) {
return item.is_answer;
}).map(function (item) {
return item.is_answer;
})
});
case 10:
res = _context.sent;
_context.next = 16;
break;
case 13:
_context.next = 15;
return (0,service_polls/* addExerciseBankQuestions */.iV)({
"exercise_bank_id": params.topicId,
"question_title": title,
"question_type": 2,
"question_score": score,
"question_choices": choices.map(function (item) {
return item.choice_text;
}),
"standard_answers": choices.filter(function (item) {
return item.is_answer;
}).map(function (item) {
return item.is_answer;
})
});
case 15:
res = _context.sent;
case 16:
if (res.status === 0) {
message/* default */.ZP.success("保存成功");
setIsEdit(false);
}
dispatch({
type: "polls/getExerciseBanks",
payload: objectSpread2_default()({}, params)
});
return _context.abrupt("return", {
name: title,
choices: choices
});
case 19:
case "end":
return _context.stop();
}
}, _callee);
}));
return function onSave() {
return _ref2.apply(this, arguments);
};
}();
var actionArr = [{
name: "删除",
icon: "iconfont c-light-black ml30 icon-shanchu",
id: "del"
}, {
name: "上移",
icon: "iconfont c-green ml30 icon-shangyi_Hover",
id: "up"
}, {
name: "下移",
icon: "iconfont c-green ml30 icon-xiayi_moren",
id: "down"
}, {
name: "编辑",
icon: "iconfont c-green ml30 icon-bianjishijuan3x",
id: "edit"
}];
var actionClick = /*#__PURE__*/function () {
var _ref3 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee3(item) {
return regeneratorRuntime_default()().wrap(function _callee3$(_context3) {
while (1) switch (_context3.prev = _context3.next) {
case 0:
_context3.t0 = item.id;
_context3.next = _context3.t0 === "del" ? 3 : _context3.t0 === "up" ? 5 : _context3.t0 === "down" ? 5 : _context3.t0 === "edit" ? 9 : 11;
break;
case 3:
modal/* default */.Z.confirm({
centered: true,
okText: '确定',
cancelText: '取消',
title: '确认要删除这个问题吗?',
onOk: function onOk() {
return asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2() {
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
while (1) switch (_context2.prev = _context2.next) {
case 0:
_context2.next = 2;
return (0,service_polls/* deleteExerciseBanksQuestion */.x$)({
pollsId: editData.question_id
});
case 2:
dispatch({
type: "polls/getExerciseBanks",
payload: objectSpread2_default()({}, params)
});
case 3:
case "end":
return _context2.stop();
}
}, _callee2);
}))();
}
});
return _context3.abrupt("break", 11);
case 5:
_context3.next = 7;
return (0,service_polls/* exercisesBanksMoveUpDown */.W)({
exerciseId: editData === null || editData === void 0 ? void 0 : editData.question_id,
opr: item.id
});
case 7:
dispatch({
type: "polls/getExerciseBanks",
payload: objectSpread2_default()({}, params)
});
return _context3.abrupt("break", 11);
case 9:
setIsEdit(true);
return _context3.abrupt("break", 11);
case 11:
case "end":
return _context3.stop();
}
}, _callee3);
}));
return function actionClick(_x) {
return _ref3.apply(this, arguments);
};
}();
var showList = function showList() {
var _editData$question_ch;
return /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: editormodules.questionType,
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: "font16 c-blue",
children: [editData.key, "\u3001\u5224\u65AD\u9898"]
}), "\uFF08", editData.question_score, "\u5206\uFF09"]
}), !editData.hideAction && actionArr.map(function (item, index) {
if (item.id === "up" && editData.key === 1) return null;
if (item.id === "down" && editData.key === editData.len) return null;
return /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
placement: "bottom",
title: item.name,
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
onClick: function onClick() {
return actionClick(item);
},
className: item.icon
})
}, index);
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "mt5",
children: editData.question_title
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: editormodules.questionChoices,
children: editData === null || editData === void 0 || (_editData$question_ch = editData.question_choices) === null || _editData$question_ch === void 0 ? void 0 : _editData$question_ch.map(function (item, index) {
return /*#__PURE__*/(0,jsx_runtime.jsxs)(es_radio/* default */.ZP, {
checked: editData.standard_answer.includes(index + 1),
disabled: true,
children: [JudgmentEditor_tagList[index], ". ", /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "c-black font14",
children: item.choice_text
})]
}, index);
})
})]
});
};
var showEdit = function showEdit() {
return /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "font16 c-blue",
children: "\u5224\u65AD\u9898"
}), "\uFF08\u5BA2\u89C2\u9898\uFF0C\u7531\u7CFB\u7EDF\u81EA\u52A8\u8BC4\u5206\uFF0C\u8BF7\u8BBE\u7F6E\u6807\u51C6\u7B54\u6848\uFF09"]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
className: editormodules.titleWrap,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: editormodules.required,
children: "*"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: editormodules.title,
children: "\u9898\u5E72\uFF1A"
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)(markdown_editor/* default */.Z, {
id: "single-question-title",
watch: true,
height: 155,
placeholder: "\u8BF7\u60A8\u8F93\u5165\u9898\u5E72",
defaultValue: title,
onChange: function onChange(value) {
return setTitle(value);
}
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
className: editormodules.titleWrap,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: editormodules.required,
children: "*"
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: editormodules.title,
children: ["\u7B54\u6848\u9009\u9879\uFF1A", /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: editormodules.colorGray,
children: "\u70B9\u51FB\u9009\u9879\u53EF\u8BBE\u7F6E\u6B63\u786E\u7B54\u6848"
})]
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(es_radio/* default.Group */.ZP.Group, {
buttonStyle: "solid",
value: activeAnswer,
onChange: function onChange(e) {
return setActiveAnswer(e.target.value);
},
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default.Button */.ZP.Button, {
value: "1",
className: "".concat(editormodules.radio, " mr40"),
children: "\u6B63\u786E"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default.Button */.ZP.Button, {
value: "2",
className: editormodules.radio,
children: "\u9519\u8BEF"
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
className: "c-orange",
children: "\u6E29\u99A8\u63D0\u793A\uFF1A\u70B9\u51FB\u9009\u9879\uFF0C\u53EF\u4EE5\u76F4\u63A5\u8BBE\u7F6E\u6807\u51C6\u7B54\u6848"
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
className: "",
children: ["\u5206\u503C\uFF1A", /*#__PURE__*/(0,jsx_runtime.jsx)(input_number/* default */.Z, {
value: score,
max: 10000,
min: -1,
onChange: function onChange(value) {
setScore(value);
}
}), " \u5206"]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
className: "tr",
children: [editData.question_id && /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
type: "default",
onClick: function onClick() {
return setIsEdit(false);
},
children: "\u53D6\u6D88"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
className: "ml20",
type: "primary",
onClick: function onClick() {
return onSave();
},
children: "\u4FDD\u5B58"
})]
})]
});
};
return /*#__PURE__*/(0,jsx_runtime.jsxs)("section", {
className: editormodules.wrap,
children: [!isEdit && showList(), isEdit && showEdit()]
});
};
/* harmony default export */ var components_JudgmentEditor = ((0,_umi_production_exports.connect)(function (_ref4) {
var problemset = _ref4.problemset,
loading = _ref4.loading,
globalSetting = _ref4.globalSetting;
return {
problemset: problemset,
globalSetting: globalSetting,
loading: loading.effects
};
}, null, null, {
forwardRef: true
})( /*#__PURE__*/(0,_react_17_0_2_react.forwardRef)(JudgmentEditor)));
// EXTERNAL MODULE: ./src/components/Editor/NullMDEditor.jsx
var NullMDEditor = __webpack_require__(35030);
// EXTERNAL MODULE: ./src/components/Editor/NullChildEditor/index.jsx + 1 modules
var NullChildEditor = __webpack_require__(18223);
// EXTERNAL MODULE: ./src/utils/util.tsx
var util = __webpack_require__(87885);
;// CONCATENATED MODULE: ./src/pages/User/Detail/Topics/Exercise/Detail/components/CompletionEditor/index.tsx
var CompletionEditor_excluded = ["problemset", "globalSetting", "loading", "dispatch", "editData"];
var CompletionEditor_tagList = (/* unused pure expression or super */ null && (['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z']));
var CompletionEditor = function CompletionEditor(_ref, ref) {
var problemset = _ref.problemset,
globalSetting = _ref.globalSetting,
loading = _ref.loading,
dispatch = _ref.dispatch,
editData = _ref.editData,
props = objectWithoutProperties_default()(_ref, CompletionEditor_excluded);
var _useState = (0,_react_17_0_2_react.useState)(''),
_useState2 = slicedToArray_default()(_useState, 2),
title = _useState2[0],
setTitle = _useState2[1];
var _useState3 = (0,_react_17_0_2_react.useState)(''),
_useState4 = slicedToArray_default()(_useState3, 2),
analysis = _useState4[0],
setAnalysis = _useState4[1];
var _useState5 = (0,_react_17_0_2_react.useState)([]),
_useState6 = slicedToArray_default()(_useState5, 2),
answerList = _useState6[0],
setAnswerList = _useState6[1];
var _useState7 = (0,_react_17_0_2_react.useState)(''),
_useState8 = slicedToArray_default()(_useState7, 2),
activeOptionErrorIndex = _useState8[0],
setActiveOptionErrorIndex = _useState8[1];
var _useState9 = (0,_react_17_0_2_react.useState)(),
_useState10 = slicedToArray_default()(_useState9, 2),
checked = _useState10[0],
setChecked = _useState10[1];
var _useState11 = (0,_react_17_0_2_react.useState)(false),
_useState12 = slicedToArray_default()(_useState11, 2),
firstSetAnswerFlag = _useState12[0],
setFirstSetAnswerFlag = _useState12[1];
var _useState13 = (0,_react_17_0_2_react.useState)(5),
_useState14 = slicedToArray_default()(_useState13, 2),
score = _useState14[0],
setScore = _useState14[1];
var _useState15 = (0,_react_17_0_2_react.useState)(false),
_useState16 = slicedToArray_default()(_useState15, 2),
isEdit = _useState16[0],
setIsEdit = _useState16[1];
var params = (0,_umi_production_exports.useParams)();
(0,_react_17_0_2_react.useEffect)(function () {
if (!(editData !== null && editData !== void 0 && editData.question_title)) {
setIsEdit(true);
return;
}
setTitle(editData === null || editData === void 0 ? void 0 : editData.question_title);
setChecked(editData === null || editData === void 0 ? void 0 : editData.is_ordered);
setScore(editData === null || editData === void 0 ? void 0 : editData.question_score);
var answer = editData === null || editData === void 0 ? void 0 : editData.standard_answer.map(function (item) {
return item.answer_text;
});
setAnswerList(answer);
}, [problemset.editData]);
(0,_react_17_0_2_react.useEffect)(function () {
setFirstSetAnswerFlag(false);
}, [isEdit]);
(0,_react_17_0_2_react.useImperativeHandle)(ref, function () {
return {
onSave: onSave,
isEdit: isEdit
};
});
var onSave = /*#__PURE__*/function () {
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
var answerArray, isEmpty, res;
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
answerArray = [];
isEmpty = false;
answerList.forEach(function (answers, index) {
answerArray.push({
choice_id: index + 1,
answer_text: []
});
answers.forEach(function (item, itemIndex) {
answerArray[index].answer_text.push(item);
if (!item || !(0,util/* validateLength */.eR)(item, 10000)) {
setActiveOptionErrorIndex("".concat(index, "-").concat(itemIndex));
message/* default */.ZP.info(!item ? "\u7B54\u6848\uFF1A\u4E0D\u80FD\u4E3A\u7A7A" : "答案不能超过10000字符");
isEmpty = true;
}
});
});
if (!isEmpty) {
_context.next = 5;
break;
}
return _context.abrupt("return", false);
case 5:
if (!editData.question_id) {
_context.next = 11;
break;
}
_context.next = 8;
return (0,service_polls/* putExerciseBankQuestions */.Kc)({
"id": editData.question_id,
"question_title": title,
"question_type": 3,
"question_score": score,
"is_ordered": checked,
"standard_answers": answerArray
});
case 8:
res = _context.sent;
_context.next = 14;
break;
case 11:
_context.next = 13;
return (0,service_polls/* addExerciseBankQuestions */.iV)({
"exercise_bank_id": params.topicId,
"question_title": title,
"question_type": 3,
"question_score": score,
"is_ordered": checked,
"standard_answers": answerArray
});
case 13:
res = _context.sent;
case 14:
if (res.status === 0) {
message/* default */.ZP.success("保存成功");
setIsEdit(false);
}
dispatch({
type: "polls/getExerciseBanks",
payload: objectSpread2_default()({}, params)
});
return _context.abrupt("return", {
name: title,
analysis: analysis,
standard_answers: answerArray,
is_ordered: checked
});
case 17:
case "end":
return _context.stop();
}
}, _callee);
}));
return function onSave() {
return _ref2.apply(this, arguments);
};
}();
var handlePlaceholderChange = function handlePlaceholderChange(placeholderCountBefore, placeholderCountInRange, totalPlaceholderCount) {
var newStandardAnswers = answerList.slice();
if (placeholderCountInRange) {
newStandardAnswers.splice(placeholderCountBefore, placeholderCountInRange);
}
if (totalPlaceholderCount && firstSetAnswerFlag) {
for (var i = 0; i < totalPlaceholderCount; i++) {
newStandardAnswers.splice(placeholderCountBefore + i, 0, [""]);
}
}
setFirstSetAnswerFlag(true);
setAnswerList(newStandardAnswers);
};
var handleAnswerChange = function handleAnswerChange(index, itemIndex, val) {
setActiveOptionErrorIndex('');
var newStandardAnswers = answerList.slice();
newStandardAnswers[index][itemIndex] = val;
setAnswerList(newStandardAnswers);
};
var handleAddChildAnswer = function handleAddChildAnswer(index) {
var newStandardAnswers = answerList.slice();
newStandardAnswers[index] = [].concat(toConsumableArray_default()(newStandardAnswers[index]), ['']);
setAnswerList(newStandardAnswers);
};
var handleDeleteChildAnswer = function handleDeleteChildAnswer(index, childIndex) {
var newStandardAnswers = answerList.slice();
if (!newStandardAnswers[index][childIndex]) {
newStandardAnswers[index] = newStandardAnswers[index].filter(function (_, key) {
return key !== childIndex;
});
setAnswerList(newStandardAnswers);
return;
}
modal/* default */.Z.confirm({
centered: true,
okText: '确定',
cancelText: '取消',
title: '提示',
content: '确认要删除这个参考答案吗?',
className: editormodules.modal,
onOk: function onOk() {
newStandardAnswers[index] = newStandardAnswers[index].filter(function (_, key) {
return key !== childIndex;
});
setAnswerList(newStandardAnswers);
}
});
};
var handleDeleteChildAnswermain = function handleDeleteChildAnswermain(index) {
modal/* default */.Z.confirm({
centered: true,
okText: '确定',
cancelText: '取消',
title: '提示',
content: '确认要删除这个参考答案吗?',
className: editormodules.modal,
onOk: function onOk() {
var newStandardAnswers = answerList.slice();
newStandardAnswers = answerList.filter(function (_, key) {
return index !== key;
});
setAnswerList(newStandardAnswers);
}
});
};
var showEdit = function showEdit() {
return /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: editormodules.questionType,
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "font16 c-blue",
children: "\u586B\u7A7A\u9898"
}), "\uFF08\u5BA2\u89C2\u9898\uFF0C\u7531\u7CFB\u7EDF\u81EA\u52A8\u8BC4\u5206\uFF0C\u5141\u8BB8\u624B\u52A8\u8C03\u5206\uFF0C\u8BF7\u8BBE\u7F6E\u6807\u51C6\u7B54\u6848 \uFF1B\u652F\u6301\u6700\u591A5\u4E2A\u7A7A\uFF0C\u6BCF\u7A7A\u5F97\u5206\u6309\u7167\u672C\u9898\u7684\u603B\u5206\u5E73\u5747\u8BA1\u7B97\uFF09"]
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: /*#__PURE__*/(0,jsx_runtime.jsx)(NullMDEditor/* default */.Z, {
id: "completion-question-tittle",
placeholder: "\u8BF7\u60A8\u8F93\u5165\u9898\u76EE",
height: 155,
defaultValue: title,
onChange: function onChange(value) {
return setTitle(value);
},
showNullButton: true,
onPlaceholderChange: handlePlaceholderChange
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "mt20",
children: answerList.map(function (answers, index) {
return /*#__PURE__*/(0,jsx_runtime.jsx)(NullChildEditor/* default */.Z, {
answers: answers,
index: index,
is_md: true,
activeOptionErrorIndex: activeOptionErrorIndex,
onAnswerChange: handleAnswerChange,
addChildAnswer: handleAddChildAnswer,
deleteChildAnswer: handleDeleteChildAnswer,
deleteChildAnswermain: handleDeleteChildAnswermain
}, index);
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "mt20",
children: answerList.length > 1 && /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_checkbox/* default */.Z, {
checked: checked,
onChange: function onChange(e) {
return setChecked(e.target.checked);
},
className: "".concat(editormodules.color333, " font14"),
children: "\u591A\u4E2A\u586B\u7A7A\u7684\u7B54\u6848\u6709\u987A\u5E8F\u8981\u6C42"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "".concat(editormodules.color999, " font12"),
children: "\uFF08\u9009\u4E2D\uFF0C\u6BCF\u4E2A\u586B\u7A7A\u7684\u7B54\u6848\u987A\u5E8F\u5FC5\u987B\u4E0E\u53C2\u8003\u7B54\u6848\u4E00\u81F4\uFF09"
})]
})
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
className: "",
children: ["\u5206\u503C\uFF1A", /*#__PURE__*/(0,jsx_runtime.jsx)(input_number/* default */.Z, {
value: score,
max: 10000,
min: -1,
onChange: function onChange(value) {
setScore(value);
}
}), " \u5206"]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
className: "tr",
children: [editData.question_id && /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
type: "default",
onClick: function onClick() {
return setIsEdit(false);
},
children: "\u53D6\u6D88"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
className: "ml20",
type: "primary",
onClick: function onClick() {
return onSave();
},
children: "\u4FDD\u5B58"
})]
})]
});
};
var actionArr = [{
name: "删除",
icon: "iconfont c-light-black ml30 icon-shanchu",
id: "del"
}, {
name: "上移",
icon: "iconfont c-green ml30 icon-shangyi_Hover",
id: "up"
}, {
name: "下移",
icon: "iconfont c-green ml30 icon-xiayi_moren",
id: "down"
}, {
name: "编辑",
icon: "iconfont c-green ml30 icon-bianjishijuan3x",
id: "edit"
}];
var actionClick = /*#__PURE__*/function () {
var _ref3 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee3(item) {
return regeneratorRuntime_default()().wrap(function _callee3$(_context3) {
while (1) switch (_context3.prev = _context3.next) {
case 0:
_context3.t0 = item.id;
_context3.next = _context3.t0 === "del" ? 3 : _context3.t0 === "up" ? 5 : _context3.t0 === "down" ? 5 : _context3.t0 === "edit" ? 9 : 11;
break;
case 3:
modal/* default */.Z.confirm({
centered: true,
okText: '确定',
cancelText: '取消',
title: '确认要删除这个问题吗?',
onOk: function onOk() {
return asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2() {
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
while (1) switch (_context2.prev = _context2.next) {
case 0:
_context2.next = 2;
return (0,service_polls/* deleteExerciseBanksQuestion */.x$)({
pollsId: editData.question_id
});
case 2:
dispatch({
type: "polls/getExerciseBanks",
payload: objectSpread2_default()({}, params)
});
case 3:
case "end":
return _context2.stop();
}
}, _callee2);
}))();
}
});
return _context3.abrupt("break", 11);
case 5:
_context3.next = 7;
return (0,service_polls/* exercisesBanksMoveUpDown */.W)({
exerciseId: editData === null || editData === void 0 ? void 0 : editData.question_id,
opr: item.id
});
case 7:
dispatch({
type: "polls/getExerciseBanks",
payload: objectSpread2_default()({}, params)
});
return _context3.abrupt("break", 11);
case 9:
setIsEdit(true);
return _context3.abrupt("break", 11);
case 11:
case "end":
return _context3.stop();
}
}, _callee3);
}));
return function actionClick(_x) {
return _ref3.apply(this, arguments);
};
}();
var showList = function showList() {
var _editData$standard_an;
return /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: editormodules.questionType,
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: "font16 c-blue",
children: [editData.key, "\u3001\u586B\u7A7A\u9898"]
}), "\uFF08", editData.question_score, "\u5206\uFF09"]
}), !editData.hideAction && actionArr.map(function (item, index) {
if (item.id === "up" && editData.key === 1) return null;
if (item.id === "down" && editData.key === editData.len) return null;
return /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
placement: "bottom",
title: item.name,
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
onClick: function onClick() {
return actionClick(item);
},
className: item.icon
})
}, index);
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "mt5",
children: editData.question_title
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: editormodules.questionChoices,
children: editData === null || editData === void 0 || (_editData$standard_an = editData.standard_answer) === null || _editData$standard_an === void 0 ? void 0 : _editData$standard_an.map(function (item, index) {
return /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(col/* default */.Z, {
children: ["\u7B54\u6848\uFF08\u586B\u7A7A", item.choice_id, "\uFF09\uFF1A"]
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
flex: "1",
children: /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z, {
checked: editData.standard_answer.includes(index),
disabled: true,
value: item.answer_text
}, index)
})]
});
})
})]
});
};
return /*#__PURE__*/(0,jsx_runtime.jsxs)("section", {
className: editormodules.wrap,
children: [!isEdit && showList(), isEdit && showEdit()]
});
};
/* harmony default export */ var components_CompletionEditor = ((0,_umi_production_exports.connect)(function (_ref4) {
var problemset = _ref4.problemset,
loading = _ref4.loading,
globalSetting = _ref4.globalSetting;
return {
problemset: problemset,
globalSetting: globalSetting,
loading: loading.effects
};
}, null, null, {
forwardRef: true
})( /*#__PURE__*/(0,_react_17_0_2_react.forwardRef)(CompletionEditor)));
;// CONCATENATED MODULE: ./src/pages/User/Detail/Topics/Exercise/Detail/components/SubjectiveEditor/index.tsx
var SubjectiveEditor_excluded = ["problemset", "globalSetting", "loading", "dispatch", "onRef", "editData"];
var SubjectiveEditor_tagList = (/* unused pure expression or super */ null && (['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z']));
var SubjectiveEditor = function SubjectiveEditor(_ref, ref) {
var problemset = _ref.problemset,
globalSetting = _ref.globalSetting,
loading = _ref.loading,
dispatch = _ref.dispatch,
_ref$onRef = _ref.onRef,
onRef = _ref$onRef === void 0 ? function () {} : _ref$onRef,
editData = _ref.editData,
props = objectWithoutProperties_default()(_ref, SubjectiveEditor_excluded);
var _useState = (0,_react_17_0_2_react.useState)(''),
_useState2 = slicedToArray_default()(_useState, 2),
title = _useState2[0],
setTitle = _useState2[1];
var _useState3 = (0,_react_17_0_2_react.useState)(''),
_useState4 = slicedToArray_default()(_useState3, 2),
analysis = _useState4[0],
setAnalysis = _useState4[1];
var _useState5 = (0,_react_17_0_2_react.useState)(''),
_useState6 = slicedToArray_default()(_useState5, 2),
answer = _useState6[0],
setAnswer = _useState6[1];
var _useState7 = (0,_react_17_0_2_react.useState)(5),
_useState8 = slicedToArray_default()(_useState7, 2),
score = _useState8[0],
setScore = _useState8[1];
var _useState9 = (0,_react_17_0_2_react.useState)(false),
_useState10 = slicedToArray_default()(_useState9, 2),
isEdit = _useState10[0],
setIsEdit = _useState10[1];
var params = (0,_umi_production_exports.useParams)();
(0,_react_17_0_2_react.useEffect)(function () {
var _editData$standard_an;
if (!(editData !== null && editData !== void 0 && editData.question_title)) {
setIsEdit(true);
return;
}
setTitle(editData === null || editData === void 0 ? void 0 : editData.question_title);
setAnswer(editData === null || editData === void 0 || (_editData$standard_an = editData.standard_answer) === null || _editData$standard_an === void 0 ? void 0 : _editData$standard_an[0]);
setScore(editData === null || editData === void 0 ? void 0 : editData.question_score);
}, [problemset.editData]);
(0,_react_17_0_2_react.useImperativeHandle)(ref, function () {
return {
onSave: onSave,
isEdit: isEdit
};
});
var onSave = /*#__PURE__*/function () {
var _ref2 = 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:
if (title) {
_context.next = 3;
break;
}
message/* default */.ZP.info("请您输入题干");
return _context.abrupt("return", false);
case 3:
if (!editData.question_id) {
_context.next = 9;
break;
}
_context.next = 6;
return (0,service_polls/* putExerciseBankQuestions */.Kc)({
"id": editData.question_id,
"question_title": title,
"question_type": 4,
"question_score": score,
"standard_answers": [answer]
});
case 6:
res = _context.sent;
_context.next = 12;
break;
case 9:
_context.next = 11;
return (0,service_polls/* addExerciseBankQuestions */.iV)({
"exercise_bank_id": params.topicId,
"question_title": title,
"question_type": 4,
"question_score": score,
"standard_answers": [answer]
});
case 11:
res = _context.sent;
case 12:
if (res.status === 0) {
message/* default */.ZP.success("保存成功");
setIsEdit(false);
dispatch({
type: "polls/getExerciseBanks",
payload: objectSpread2_default()({}, params)
});
}
return _context.abrupt("return", {
name: title,
answer_texts: [answer],
analysis: analysis
});
case 14:
case "end":
return _context.stop();
}
}, _callee);
}));
return function onSave() {
return _ref2.apply(this, arguments);
};
}();
var showEdit = function showEdit() {
return /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: editormodules.questionType,
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "font16 c-blue",
children: "\u7B80\u7B54\u9898"
}), "\uFF08\u4E3B\u89C2\u9898\uFF0C\u672A\u4F5C\u7B54\u7684\u60C5\u51B5\u4E0B\u81EA\u52A8\u8BC4\u4E3A\u96F6\u5206\uFF09"]
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)(markdown_editor/* default */.Z, {
id: "single-question-title",
watch: true,
height: 155,
placeholder: "\u8BF7\u60A8\u8F93\u5165\u9898\u5E72",
defaultValue: title,
onChange: function onChange(value) {
return setTitle(value);
}
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
className: editormodules.titleWrap,
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: editormodules.title,
children: "\u53C2\u8003\u7B54\u6848\uFF1A"
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)(markdown_editor/* default */.Z, {
id: "single-question-reference-answer",
watch: true,
height: 155,
placeholder: "\u8BF7\u60A8\u8F93\u5165\u53C2\u8003\u7B54\u6848",
defaultValue: answer,
onChange: function onChange(value) {
return setAnswer(value);
}
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
className: "",
children: ["\u5206\u503C\uFF1A", /*#__PURE__*/(0,jsx_runtime.jsx)(input_number/* default */.Z, {
value: score,
max: 10000,
min: -1,
onChange: function onChange(value) {
setScore(value);
}
}), " \u5206"]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
className: "tr",
children: [editData.question_id && /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
type: "default",
onClick: function onClick() {
return setIsEdit(false);
},
children: "\u53D6\u6D88"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
className: "ml20",
type: "primary",
onClick: function onClick() {
return onSave();
},
children: "\u4FDD\u5B58"
})]
})]
});
};
var actionArr = [{
name: "删除",
icon: "iconfont c-light-black ml30 icon-shanchu",
id: "del"
}, {
name: "上移",
icon: "iconfont c-green ml30 icon-shangyi_Hover",
id: "up"
}, {
name: "下移",
icon: "iconfont c-green ml30 icon-xiayi_moren",
id: "down"
}, {
name: "编辑",
icon: "iconfont c-green ml30 icon-bianjishijuan3x",
id: "edit"
}];
var actionClick = /*#__PURE__*/function () {
var _ref3 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee3(item) {
return regeneratorRuntime_default()().wrap(function _callee3$(_context3) {
while (1) switch (_context3.prev = _context3.next) {
case 0:
_context3.t0 = item.id;
_context3.next = _context3.t0 === "del" ? 3 : _context3.t0 === "up" ? 5 : _context3.t0 === "down" ? 5 : _context3.t0 === "edit" ? 9 : 11;
break;
case 3:
modal/* default */.Z.confirm({
centered: true,
okText: '确定',
cancelText: '取消',
title: '确认要删除这个问题吗?',
onOk: function onOk() {
return asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2() {
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
while (1) switch (_context2.prev = _context2.next) {
case 0:
_context2.next = 2;
return (0,service_polls/* deleteExerciseBanksQuestion */.x$)({
pollsId: editData.question_id
});
case 2:
dispatch({
type: "polls/getExerciseBanks",
payload: objectSpread2_default()({}, params)
});
case 3:
case "end":
return _context2.stop();
}
}, _callee2);
}))();
}
});
return _context3.abrupt("break", 11);
case 5:
_context3.next = 7;
return (0,service_polls/* exercisesBanksMoveUpDown */.W)({
exerciseId: editData === null || editData === void 0 ? void 0 : editData.question_id,
opr: item.id
});
case 7:
dispatch({
type: "polls/getExerciseBanks",
payload: objectSpread2_default()({}, params)
});
return _context3.abrupt("break", 11);
case 9:
setIsEdit(true);
return _context3.abrupt("break", 11);
case 11:
case "end":
return _context3.stop();
}
}, _callee3);
}));
return function actionClick(_x) {
return _ref3.apply(this, arguments);
};
}();
var showList = function showList() {
return /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: editormodules.questionType,
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: "font16 c-blue",
children: [editData.key, "\u3001\u7B80\u7B54\u9898"]
}), "\uFF08", editData.question_score, "\u5206\uFF09"]
}), !editData.hideAction && actionArr.map(function (item, index) {
if (item.id === "up" && editData.key === 1) return null;
if (item.id === "down" && editData.key === editData.len) return null;
return /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
placement: "bottom",
title: item.name,
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
onClick: function onClick() {
return actionClick(item);
},
className: item.icon
})
}, index);
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "mt5",
children: editData.question_title
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: editormodules.questionChoices,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("p", {
children: /*#__PURE__*/(0,jsx_runtime.jsx)("strong", {
children: "\u53C2\u8003\u7B54\u6848\uFF1A"
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)(RenderHtml/* default */.Z, {
value: answer
})]
})]
});
};
return /*#__PURE__*/(0,jsx_runtime.jsxs)("section", {
className: editormodules.wrap,
children: [!isEdit && showList(), isEdit && showEdit()]
});
};
/* harmony default export */ var components_SubjectiveEditor = ((0,_umi_production_exports.connect)(function (_ref4) {
var problemset = _ref4.problemset,
loading = _ref4.loading,
globalSetting = _ref4.globalSetting;
return {
problemset: problemset,
globalSetting: globalSetting,
loading: loading.effects
};
}, null, null, {
forwardRef: true
})( /*#__PURE__*/(0,_react_17_0_2_react.forwardRef)(SubjectiveEditor)));
;// CONCATENATED MODULE: ./src/pages/User/Detail/Topics/Exercise/Detail/components/ShixunEditor/index.tsx
var ShixunEditor_excluded = ["problemset", "globalSetting", "loading", "dispatch", "editData"];
var ShixunEditor_tagList = (/* unused pure expression or super */ null && (['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z']));
var ShixunEditor = function ShixunEditor(_ref, ref) {
var problemset = _ref.problemset,
globalSetting = _ref.globalSetting,
loading = _ref.loading,
dispatch = _ref.dispatch,
editData = _ref.editData,
props = objectWithoutProperties_default()(_ref, ShixunEditor_excluded);
var _useState = (0,_react_17_0_2_react.useState)(''),
_useState2 = slicedToArray_default()(_useState, 2),
name = _useState2[0],
setName = _useState2[1];
var _useState3 = (0,_react_17_0_2_react.useState)(''),
_useState4 = slicedToArray_default()(_useState3, 2),
title = _useState4[0],
setTitle = _useState4[1];
var _useState5 = (0,_react_17_0_2_react.useState)(''),
_useState6 = slicedToArray_default()(_useState5, 2),
analysis = _useState6[0],
setAnalysis = _useState6[1];
var _useState7 = (0,_react_17_0_2_react.useState)([]),
_useState8 = slicedToArray_default()(_useState7, 2),
answerList = _useState8[0],
setAnswerList = _useState8[1];
var _useState9 = (0,_react_17_0_2_react.useState)(''),
_useState10 = slicedToArray_default()(_useState9, 2),
activeOptionErrorIndex = _useState10[0],
setActiveOptionErrorIndex = _useState10[1];
var _useState11 = (0,_react_17_0_2_react.useState)(),
_useState12 = slicedToArray_default()(_useState11, 2),
checked = _useState12[0],
setChecked = _useState12[1];
var _useState13 = (0,_react_17_0_2_react.useState)(false),
_useState14 = slicedToArray_default()(_useState13, 2),
firstSetAnswerFlag = _useState14[0],
setFirstSetAnswerFlag = _useState14[1];
var _useState15 = (0,_react_17_0_2_react.useState)([]),
_useState16 = slicedToArray_default()(_useState15, 2),
score = _useState16[0],
setScore = _useState16[1];
var _useState17 = (0,_react_17_0_2_react.useState)(false),
_useState18 = slicedToArray_default()(_useState17, 2),
isEdit = _useState18[0],
setIsEdit = _useState18[1];
var params = (0,_umi_production_exports.useParams)();
(0,_react_17_0_2_react.useEffect)(function () {
var _editData$shixun;
if (editData.edit) {
setIsEdit(true);
}
setName(editData.shixun_name);
setTitle(editData.question_title);
var arr = [];
(_editData$shixun = editData.shixun) === null || _editData$shixun === void 0 || _editData$shixun.map(function (item) {
arr.push(item.challenge_score);
});
setScore(arr);
}, [editData]);
(0,_react_17_0_2_react.useEffect)(function () {
setFirstSetAnswerFlag(false);
}, [isEdit]);
(0,_react_17_0_2_react.useImperativeHandle)(ref, function () {
return {
onSave: onSave,
isEdit: isEdit
};
});
var onSave = /*#__PURE__*/function () {
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
var answerArray, isEmpty, res;
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
answerArray = [];
isEmpty = false;
if (!isEmpty) {
_context.next = 4;
break;
}
return _context.abrupt("return", false);
case 4:
if (!editData.question_id) {
_context.next = 10;
break;
}
_context.next = 7;
return (0,service_polls/* putExerciseBankQuestions */.Kc)({
"id": editData.question_id,
"question_title": title,
"shixun_name": name,
"shixun_id": editData.shixun_id,
"question_type": 5,
"question_scores": score
});
case 7:
res = _context.sent;
_context.next = 13;
break;
case 10:
_context.next = 12;
return (0,service_polls/* addExerciseBankQuestions */.iV)({
"exercise_bank_id": params.topicId,
"question_title": title,
"shixun_name": name,
"shixun_id": editData.shixun_id,
"question_type": 5,
"question_scores": score
});
case 12:
res = _context.sent;
case 13:
if (res.status === 0) {
message/* default */.ZP.success("保存成功");
setIsEdit(false);
}
_context.next = 16;
return dispatch({
type: "polls/getExerciseBanks",
payload: objectSpread2_default()({}, params)
});
case 16:
return _context.abrupt("return", {
name: title,
analysis: analysis,
standard_answers: answerArray,
is_ordered: checked
});
case 17:
case "end":
return _context.stop();
}
}, _callee);
}));
return function onSave() {
return _ref2.apply(this, arguments);
};
}();
var showEdit = function showEdit() {
var _editData$shixun2;
return /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: editormodules.questionType,
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "font16 c-blue",
children: "\u5B9E\u8BAD\u9898"
}), "\uFF08\u5BA2\u89C2\u9898\uFF0C\u7531\u7CFB\u7EDF\u81EA\u52A8\u8BC4\u5206\uFF0C\u5141\u8BB8\u624B\u52A8\u8C03\u5206\uFF09"]
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "mt10",
children: /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z, {
defaultValue: name,
onChange: function onChange(e) {
;
setName(e.target.value);
}
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "mt10",
children: /*#__PURE__*/(0,jsx_runtime.jsx)(markdown_editor/* default */.Z, {
id: "single-question-option-0",
height: 155,
placeholder: "\u8BF7\u8F93\u5165\u5B9E\u8BAD\u9898\u5B8C\u6210\u8981\u6C42",
defaultValue: title,
onChange: function onChange(value) {
setTitle(value);
}
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "mt20",
children: (_editData$shixun2 = editData.shixun) === null || _editData$shixun2 === void 0 ? void 0 : _editData$shixun2.map(function (item, index) {
return /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
gutter: [20, 20],
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(col/* default */.Z, {
flex: "1",
children: [index + 1, ".", item.challenge_name]
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
children: /*#__PURE__*/(0,jsx_runtime.jsx)(input_number/* default */.Z, {
defaultValue: score[index],
onChange: function onChange(value) {
score[index] = value;
setScore(score);
console.log("srore:L", score[index]);
}
})
})]
});
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "mt20",
children: answerList.length > 1 && /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_checkbox/* default */.Z, {
checked: checked,
onChange: function onChange(e) {
return setChecked(e.target.checked);
},
className: "".concat(editormodules.color333, " font14"),
children: "\u591A\u4E2A\u586B\u7A7A\u7684\u7B54\u6848\u6709\u987A\u5E8F\u8981\u6C42"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "".concat(editormodules.color999, " font12"),
children: "\uFF08\u9009\u4E2D\uFF0C\u6BCF\u4E2A\u586B\u7A7A\u7684\u7B54\u6848\u987A\u5E8F\u5FC5\u987B\u4E0E\u53C2\u8003\u7B54\u6848\u4E00\u81F4\uFF09"
})]
})
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
className: "tr",
children: [!(editData !== null && editData !== void 0 && editData.edit) && /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
type: "default",
onClick: function onClick() {
return setIsEdit(false);
},
children: "\u53D6\u6D88"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
className: "ml20",
type: "primary",
onClick: function onClick() {
return onSave();
},
children: "\u4FDD\u5B58"
})]
})]
});
};
var actionArr = [{
name: "删除",
icon: "iconfont c-light-black ml30 icon-shanchu",
id: "del"
}, {
name: "上移",
icon: "iconfont c-green ml30 icon-shangyi_Hover",
id: "up"
}, {
name: "下移",
icon: "iconfont c-green ml30 icon-xiayi_moren",
id: "down"
}, {
name: "编辑",
icon: "iconfont c-green ml30 icon-bianjishijuan3x",
id: "edit"
}];
var actionClick = /*#__PURE__*/function () {
var _ref3 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee3(item) {
return regeneratorRuntime_default()().wrap(function _callee3$(_context3) {
while (1) switch (_context3.prev = _context3.next) {
case 0:
_context3.t0 = item.id;
_context3.next = _context3.t0 === "del" ? 3 : _context3.t0 === "up" ? 5 : _context3.t0 === "down" ? 5 : _context3.t0 === "edit" ? 9 : 11;
break;
case 3:
modal/* default */.Z.confirm({
centered: true,
okText: '确定',
cancelText: '取消',
title: '确认要删除这个问题吗?',
onOk: function onOk() {
return asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2() {
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
while (1) switch (_context2.prev = _context2.next) {
case 0:
_context2.next = 2;
return (0,service_polls/* deleteExerciseBanksQuestion */.x$)({
pollsId: editData.question_id
});
case 2:
dispatch({
type: "polls/getExerciseBanks",
payload: objectSpread2_default()({}, params)
});
case 3:
case "end":
return _context2.stop();
}
}, _callee2);
}))();
}
});
return _context3.abrupt("break", 11);
case 5:
_context3.next = 7;
return (0,service_polls/* exercisesBanksMoveUpDown */.W)({
exerciseId: editData === null || editData === void 0 ? void 0 : editData.question_id,
opr: item.id
});
case 7:
dispatch({
type: "polls/getExerciseBanks",
payload: objectSpread2_default()({}, params)
});
return _context3.abrupt("break", 11);
case 9:
setIsEdit(true);
return _context3.abrupt("break", 11);
case 11:
case "end":
return _context3.stop();
}
}, _callee3);
}));
return function actionClick(_x) {
return _ref3.apply(this, arguments);
};
}();
var showList = function showList() {
var _editData$shixun3;
return /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: editormodules.questionType,
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: "font16 c-blue",
children: [editData.key, "\u3001\u5B9E\u8BAD\u9898"]
}), "\uFF08", editData.question_score, "\u5206\uFF09"]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: "tr",
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(_umi_production_exports.Link, {
target: "_blank",
to: "/shixuns/".concat(editData.shixun_identifier, "/challenges"),
children: "\u5B9E\u8BAD\u8BE6\u60C5"
}), !editData.hideAction && actionArr.map(function (item, index) {
if (item.id === "up" && editData.key === 1) return null;
if (item.id === "down" && editData.key === editData.len) return null;
return /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
placement: "bottom",
title: item.name,
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
onClick: function onClick() {
return actionClick(item);
},
className: item.icon
})
}, index);
})]
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "font16",
children: editData.shixun_name
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "mt30"
}), (_editData$shixun3 = editData.shixun) === null || _editData$shixun3 === void 0 ? void 0 : _editData$shixun3.map(function (item, index) {
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: ["\u7B2C", index + 1, "\u5173 ", /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "ml10",
children: item.challenge_name
}), " ", /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "ml10",
children: item.challenge_score
})]
}, index);
})]
});
};
return /*#__PURE__*/(0,jsx_runtime.jsxs)("section", {
className: editormodules.wrap,
children: [!isEdit && showList(), isEdit && showEdit()]
});
};
// export default connect(
// ({
// problemset,
// loading,
// globalSetting,
// }: {
// problemset: ProblemsetModelState;
// loading: Loading;
// globalSetting: GlobalSettingModelState;
// }) => ({
// problemset,
// globalSetting,
// loading: loading.effects,
// }),
// )(ShixunEditor);
/* harmony default export */ var components_ShixunEditor = ((0,_umi_production_exports.connect)(function (_ref4) {
var problemset = _ref4.problemset,
loading = _ref4.loading,
globalSetting = _ref4.globalSetting;
return {
problemset: problemset,
globalSetting: globalSetting,
loading: loading.effects
};
}, null, null, {
forwardRef: true
})( /*#__PURE__*/(0,_react_17_0_2_react.forwardRef)(ShixunEditor)));
;// CONCATENATED MODULE: ./src/pages/User/Detail/Topics/Exercise/Detail/index.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var Detailmodules = ({"flex_box_center":"flex_box_center___eWsYC","flex_space_between":"flex_space_between___RALuo","flex_box_vertical_center":"flex_box_vertical_center___f7uVp","flex_box_center_end":"flex_box_center_end___UxPR3","flex_box_column":"flex_box_column___YUFuv","bg":"bg___zWTsF","containerTitle":"containerTitle___DzTZh","containerDesc":"containerDesc___a3TiA","listItem":"listItem____nHKG","info":"info___LWlgA","title":"title___gtaI4","titleLeft":"titleLeft___Ce3h9","titleRight":"titleRight___gARIc","acitons":"acitons___MrR2u","export":"export___u_8cL"});
// EXTERNAL MODULE: ./src/pages/User/Detail/Topics/components/SendToClassModal.tsx + 2 modules
var SendToClassModal = __webpack_require__(50160);
;// CONCATENATED MODULE: ./src/pages/User/Detail/Topics/Exercise/Detail/index.tsx
var Detail_excluded = ["polls", "globalSetting", "loading", "user", "dispatch"];
var SubMenu = menu/* default */.Z.SubMenu;
var Content = layout/* default */.Z.Content,
Sider = layout/* default */.Z.Sider;
var ShixunsListPage = function ShixunsListPage(_ref) {
var _polls$exerciseBanks6, _polls$exerciseBanks7, _polls$exerciseBanks8, _polls$exerciseBanks9, _polls$exerciseBanks10, _polls$exerciseBanks11, _polls$exerciseBanks12, _polls$exerciseBanks13, _polls$exerciseBanks14, _polls$exerciseBanks15, _polls$exerciseBanks16, _polls$exerciseBanks17, _polls$exerciseBanks18, _polls$exerciseBanks19, _polls$exerciseBanks20, _polls$exerciseBanks21, _polls$exerciseBanks22, _polls$exerciseBanks23, _polls$exerciseBanks24, _polls$exerciseBanks25, _polls$exerciseBanks26, _polls$exerciseBanks27, _polls$exerciseBanks28, _polls$exerciseBanks29, _polls$exerciseBanks30, _polls$exerciseBanks31, _polls$exerciseBanks32, _polls$exerciseBanks33, _polls$exerciseBanks34;
var polls = _ref.polls,
globalSetting = _ref.globalSetting,
loading = _ref.loading,
user = _ref.user,
dispatch = _ref.dispatch,
props = objectWithoutProperties_default()(_ref, Detail_excluded);
var params = (0,_umi_production_exports.useParams)();
var location = (0,_umi_production_exports.useLocation)();
var userInfo = user.userInfo;
var _Form$useForm = es_form/* default */.Z.useForm(),
_Form$useForm2 = slicedToArray_default()(_Form$useForm, 1),
form = _Form$useForm2[0];
var _useState = (0,_react_17_0_2_react.useState)([]),
_useState2 = slicedToArray_default()(_useState, 2),
editData = _useState2[0],
setEditData = _useState2[1];
var _useState3 = (0,_react_17_0_2_react.useState)(false),
_useState4 = slicedToArray_default()(_useState3, 2),
isEdit = _useState4[0],
setIsEdit = _useState4[1];
var questionType = [{
name: "选择题",
id: 0
}, {
name: "判断题",
id: 2
}, {
name: "填空题",
id: 3
}, {
name: "简答题",
id: 4
}, {
name: "实训题",
id: 5
}];
var childrenRef = (0,_react_17_0_2_react.useRef)();
(0,_react_17_0_2_react.useEffect)(function () {
var _polls$exerciseBanks;
if ((_polls$exerciseBanks = polls.exerciseBanks) !== null && _polls$exerciseBanks !== void 0 && _polls$exerciseBanks.exercise_questions) {
var _polls$exerciseBanks2, _polls$exerciseBanks3, _polls$exerciseBanks4;
setEditData(toConsumableArray_default()((_polls$exerciseBanks2 = polls.exerciseBanks) === null || _polls$exerciseBanks2 === void 0 ? void 0 : _polls$exerciseBanks2.exercise_questions));
form.setFieldsValue({
exercise_name: (_polls$exerciseBanks3 = polls.exerciseBanks) === null || _polls$exerciseBanks3 === void 0 || (_polls$exerciseBanks3 = _polls$exerciseBanks3.exercise) === null || _polls$exerciseBanks3 === void 0 ? void 0 : _polls$exerciseBanks3.exercise_name,
exercise_description: (_polls$exerciseBanks4 = polls.exerciseBanks) === null || _polls$exerciseBanks4 === void 0 || (_polls$exerciseBanks4 = _polls$exerciseBanks4.exercise) === null || _polls$exerciseBanks4 === void 0 ? void 0 : _polls$exerciseBanks4.exercise_description
});
}
}, [polls.exerciseBanks]);
(0,_react_17_0_2_react.useEffect)(function () {
dispatch({
type: "polls/getExerciseBanks",
payload: objectSpread2_default()({}, params)
});
}, [params.categoryId]);
var save = /*#__PURE__*/function () {
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
var _polls$exerciseBanks5;
var value;
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
_context.next = 2;
return form.validateFields();
case 2:
value = form.getFieldValue();
value.is_md = true;
value.topicId = (_polls$exerciseBanks5 = polls.exerciseBanks) === null || _polls$exerciseBanks5 === void 0 || (_polls$exerciseBanks5 = _polls$exerciseBanks5.exercise) === null || _polls$exerciseBanks5 === void 0 ? void 0 : _polls$exerciseBanks5.id;
setIsEdit(false);
_context.next = 8;
return (0,service_polls/* putExerciseBanks */.hO)(objectSpread2_default()({}, value));
case 8:
dispatch({
type: "polls/getExerciseBanks",
payload: objectSpread2_default()({}, params)
});
case 9:
case "end":
return _context.stop();
}
}, _callee);
}));
return function save() {
return _ref2.apply(this, arguments);
};
}();
var addQuestion = /*#__PURE__*/function () {
var _ref3 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2(type) {
var d;
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
while (1) switch (_context2.prev = _context2.next) {
case 0:
_context2.next = 2;
return childrenRef === null || childrenRef === void 0 ? void 0 : childrenRef.current;
case 2:
d = _context2.sent;
if (!(d !== null && d !== void 0 && d.isEdit)) {
_context2.next = 6;
break;
}
message/* default */.ZP.error("不能同时编辑两题");
return _context2.abrupt("return");
case 6:
if (type === 5) {
dispatch({
type: "classroomList/setActionTabs",
payload: {
key: "选用实践项目"
}
});
} else {
setEditData([].concat(toConsumableArray_default()(editData), [{
question_type: type
}]));
}
case 7:
case "end":
return _context2.stop();
}
}, _callee2);
}));
return function addQuestion(_x) {
return _ref3.apply(this, arguments);
};
}();
var handleSend = function handleSend() {
dispatch({
type: 'userDetail/setActionTabs',
payload: {
key: 'UserDetail-SendToClass',
params: {
object_id: [params.topicId],
object_type: 'exercise'
}
}
});
};
var renderQuestion = function renderQuestion() {
return editData === null || editData === void 0 ? void 0 : editData.map(function (v, k) {
v.key = k + 1;
v.len = editData.length;
if (v.question_type === 0) {
return /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(components_SingleEditor, {
ref: childrenRef,
editData: v
}), /*#__PURE__*/(0,jsx_runtime.jsx)(divider/* default */.Z, {})]
});
}
if (v.question_type === 1) {
return /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(MultipleEditor, {
ref: childrenRef,
editData: v
}), /*#__PURE__*/(0,jsx_runtime.jsx)(divider/* default */.Z, {})]
});
}
if (v.question_type === 2) {
return /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(components_JudgmentEditor, {
ref: childrenRef,
editData: v
}), /*#__PURE__*/(0,jsx_runtime.jsx)(divider/* default */.Z, {})]
});
}
if (v.question_type === 3) {
return /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(components_CompletionEditor, {
editData: v
}), /*#__PURE__*/(0,jsx_runtime.jsx)(divider/* default */.Z, {})]
});
}
if (v.question_type === 4) {
return /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(components_SubjectiveEditor, {
editData: v
}), /*#__PURE__*/(0,jsx_runtime.jsx)(divider/* default */.Z, {})]
});
}
if (v.question_type === 5) {
return /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(components_ShixunEditor, {
editData: v
}), /*#__PURE__*/(0,jsx_runtime.jsx)(divider/* default */.Z, {})]
});
}
});
};
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: "/users/".concat(params.username, "/").concat(params.topictype === 'personal' ? 'topics' : 'topicbank', "/").concat(params.topictype),
children: params.topictype === 'personal' ? '我的题库' : '公共题库'
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)(breadcrumb/* default */.Z.Item, {
children: "\u8BE6\u60C5"
})]
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("aside", {
className: [Detailmodules.title, 'mt20'].join(' '),
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
style: {
width: "100%"
},
align: "middle",
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(col/* default */.Z, {
flex: "1",
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("strong", {
className: "font20 ml5",
children: (_polls$exerciseBanks6 = polls.exerciseBanks) === null || _polls$exerciseBanks6 === void 0 || (_polls$exerciseBanks6 = _polls$exerciseBanks6.exercise) === null || _polls$exerciseBanks6 === void 0 ? void 0 : _polls$exerciseBanks6.exercise_name
}), /*#__PURE__*/(0,jsx_runtime.jsx)(util/* StatusClassroomsTags */.VV, {
status: [(_polls$exerciseBanks7 = polls.exerciseBanks) !== null && _polls$exerciseBanks7 !== void 0 && (_polls$exerciseBanks7 = _polls$exerciseBanks7.exercise) !== null && _polls$exerciseBanks7 !== void 0 && _polls$exerciseBanks7.is_public ? "公开" : "私有"]
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
children: /*#__PURE__*/(0,jsx_runtime.jsx)(_umi_production_exports.Link, {
className: "font16 c-light-black",
to: "/users/".concat(userInfo.login, "/topics/").concat(params.topictype),
children: "\u8FD4\u56DE"
})
})]
})
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("section", {
className: [Detailmodules.bg, 'pl30', 'pr30', 'pb30', 'mt20 relative'].join(' '),
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: Detailmodules["export"],
children: [((_polls$exerciseBanks8 = polls.exerciseBanks) === null || _polls$exerciseBanks8 === void 0 ? void 0 : _polls$exerciseBanks8.authorize) && /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("a", {
onClick: function onClick(e) {
e.preventDefault();
modal/* default */.Z.confirm({
centered: true,
okText: '确定',
cancelText: '取消',
title: "提示",
content: "是否确认删除?",
onOk: function () {
var _onOk = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee3() {
var res;
return regeneratorRuntime_default()().wrap(function _callee3$(_context3) {
while (1) switch (_context3.prev = _context3.next) {
case 0:
_context3.next = 2;
return (0,service_user/* deleteQuestionBanks */.Tv)({
object_type: "normal",
object_id: [params.topicId]
});
case 2:
res = _context3.sent;
if (res.status === 0) {
_umi_production_exports.history.push("/users/".concat(params.username, "/topics/personal"));
}
case 4:
case "end":
return _context3.stop();
}
}, _callee3);
}));
function onOk() {
return _onOk.apply(this, arguments);
}
return onOk;
}()
});
},
children: "\u5220\u9664"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(_umi_production_exports.Link, {
to: "/users/".concat(userInfo.login, "/topics/").concat(params.topicId, "/").concat(params.topictype, "/exercise/edit"),
children: "\u7F16\u8F91"
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
onClick: function onClick(e) {
e.preventDefault();
handleSend();
},
children: "\u53D1\u9001"
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)(tabs/* default */.Z, {
className: Detailmodules.tabs,
children: /*#__PURE__*/(0,jsx_runtime.jsx)(tabs/* default */.Z.TabPane, {
tab: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "font16 pt10 pb12",
children: "\u5185\u5BB9\u8BE6\u60C5"
}),
children: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "c-light-black",
children: (_polls$exerciseBanks9 = polls.exerciseBanks) === null || _polls$exerciseBanks9 === void 0 || (_polls$exerciseBanks9 = _polls$exerciseBanks9.exercise) === null || _polls$exerciseBanks9 === void 0 ? void 0 : _polls$exerciseBanks9.exercise_description
})
}, "1")
}), isEdit && /*#__PURE__*/(0,jsx_runtime.jsxs)(es_form/* default */.Z, {
layout: "vertical",
form: form,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
name: "exercise_name",
label: "\u8BD5\u5377\u6807\u9898\uFF1A",
rules: [{
required: true,
message: "请填写试卷标题"
}],
children: /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z, {
maxLength: 60,
placeholder: "\u8BD5\u5377\u6807\u9898\uFF0C\u6700\u5927\u9650\u523660\u4E2A\u5B57\u7B26"
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
label: "\u8BD5\u5377\u987B\u77E5\uFF1A",
name: "exercise_description",
children: /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z.TextArea, {
rows: 6,
placeholder: "\u8BF7\u5728\u6B64\u8F93\u5165\u672C\u6B21\u8BD5\u5377\u7B54\u9898\u7684\u76F8\u5173\u8BF4\u660E\uFF0C\u6700\u5927\u9650\u5236100\u4E2A\u5B57\u7B26"
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
className: "tr",
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
type: "primary",
onClick: function onClick() {
save();
},
children: "\u4FDD\u5B58"
})
})]
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
className: "mt10",
style: {
display: 'flex'
},
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: "fl",
style: {
flex: '1'
},
children: [!!((_polls$exerciseBanks10 = polls.exerciseBanks) !== null && _polls$exerciseBanks10 !== void 0 && (_polls$exerciseBanks10 = _polls$exerciseBanks10.exercise_types) !== null && _polls$exerciseBanks10 !== void 0 && _polls$exerciseBanks10.q_singles) && /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: "ml20",
children: ["\u5355\u9009\u9898", (_polls$exerciseBanks11 = polls.exerciseBanks) === null || _polls$exerciseBanks11 === void 0 || (_polls$exerciseBanks11 = _polls$exerciseBanks11.exercise_types) === null || _polls$exerciseBanks11 === void 0 ? void 0 : _polls$exerciseBanks11.q_singles, "\u9898\uFF0C\u5171", (_polls$exerciseBanks12 = polls.exerciseBanks) === null || _polls$exerciseBanks12 === void 0 || (_polls$exerciseBanks12 = _polls$exerciseBanks12.exercise_types) === null || _polls$exerciseBanks12 === void 0 ? void 0 : _polls$exerciseBanks12.q_singles_scores, "\u5206"]
}), !!((_polls$exerciseBanks13 = polls.exerciseBanks) !== null && _polls$exerciseBanks13 !== void 0 && (_polls$exerciseBanks13 = _polls$exerciseBanks13.exercise_types) !== null && _polls$exerciseBanks13 !== void 0 && _polls$exerciseBanks13.q_doubles) && /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: "ml20",
children: ["\u591A\u9009\u9898", (_polls$exerciseBanks14 = polls.exerciseBanks) === null || _polls$exerciseBanks14 === void 0 || (_polls$exerciseBanks14 = _polls$exerciseBanks14.exercise_types) === null || _polls$exerciseBanks14 === void 0 ? void 0 : _polls$exerciseBanks14.q_doubles, "\u9898\uFF0C\u5171", (_polls$exerciseBanks15 = polls.exerciseBanks) === null || _polls$exerciseBanks15 === void 0 || (_polls$exerciseBanks15 = _polls$exerciseBanks15.exercise_types) === null || _polls$exerciseBanks15 === void 0 ? void 0 : _polls$exerciseBanks15.q_doubles_scores, "\u5206"]
}), !!((_polls$exerciseBanks16 = polls.exerciseBanks) !== null && _polls$exerciseBanks16 !== void 0 && (_polls$exerciseBanks16 = _polls$exerciseBanks16.exercise_types) !== null && _polls$exerciseBanks16 !== void 0 && _polls$exerciseBanks16.q_judges) && /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: "ml20",
children: ["\u5224\u65AD\u9898", (_polls$exerciseBanks17 = polls.exerciseBanks) === null || _polls$exerciseBanks17 === void 0 || (_polls$exerciseBanks17 = _polls$exerciseBanks17.exercise_types) === null || _polls$exerciseBanks17 === void 0 ? void 0 : _polls$exerciseBanks17.q_judges, "\u9898\uFF0C\u5171", (_polls$exerciseBanks18 = polls.exerciseBanks) === null || _polls$exerciseBanks18 === void 0 || (_polls$exerciseBanks18 = _polls$exerciseBanks18.exercise_types) === null || _polls$exerciseBanks18 === void 0 ? void 0 : _polls$exerciseBanks18.q_judges_scores, "\u5206"]
}), !!((_polls$exerciseBanks19 = polls.exerciseBanks) !== null && _polls$exerciseBanks19 !== void 0 && (_polls$exerciseBanks19 = _polls$exerciseBanks19.exercise_types) !== null && _polls$exerciseBanks19 !== void 0 && _polls$exerciseBanks19.q_nulls) && /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: "ml20",
children: ["\u586B\u7A7A\u9898", (_polls$exerciseBanks20 = polls.exerciseBanks) === null || _polls$exerciseBanks20 === void 0 || (_polls$exerciseBanks20 = _polls$exerciseBanks20.exercise_types) === null || _polls$exerciseBanks20 === void 0 ? void 0 : _polls$exerciseBanks20.q_nulls, "\u9898\uFF0C\u5171", (_polls$exerciseBanks21 = polls.exerciseBanks) === null || _polls$exerciseBanks21 === void 0 || (_polls$exerciseBanks21 = _polls$exerciseBanks21.exercise_types) === null || _polls$exerciseBanks21 === void 0 ? void 0 : _polls$exerciseBanks21.q_nulls_scores, "\u5206"]
}), !!((_polls$exerciseBanks22 = polls.exerciseBanks) !== null && _polls$exerciseBanks22 !== void 0 && (_polls$exerciseBanks22 = _polls$exerciseBanks22.exercise_types) !== null && _polls$exerciseBanks22 !== void 0 && _polls$exerciseBanks22.q_mains) && /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: "ml20",
children: ["\u7B80\u7B54\u9898", (_polls$exerciseBanks23 = polls.exerciseBanks) === null || _polls$exerciseBanks23 === void 0 || (_polls$exerciseBanks23 = _polls$exerciseBanks23.exercise_types) === null || _polls$exerciseBanks23 === void 0 ? void 0 : _polls$exerciseBanks23.q_mains, "\u9898\uFF0C\u5171", (_polls$exerciseBanks24 = polls.exerciseBanks) === null || _polls$exerciseBanks24 === void 0 || (_polls$exerciseBanks24 = _polls$exerciseBanks24.exercise_types) === null || _polls$exerciseBanks24 === void 0 ? void 0 : _polls$exerciseBanks24.q_mains_scores, "\u5206"]
}), !!((_polls$exerciseBanks25 = polls.exerciseBanks) !== null && _polls$exerciseBanks25 !== void 0 && (_polls$exerciseBanks25 = _polls$exerciseBanks25.exercise_types) !== null && _polls$exerciseBanks25 !== void 0 && _polls$exerciseBanks25.q_shixuns) && /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: "ml20",
children: ["\u5B9E\u8BAD\u9898", (_polls$exerciseBanks26 = polls.exerciseBanks) === null || _polls$exerciseBanks26 === void 0 || (_polls$exerciseBanks26 = _polls$exerciseBanks26.exercise_types) === null || _polls$exerciseBanks26 === void 0 ? void 0 : _polls$exerciseBanks26.q_shixuns, "\u9898\uFF0C\u5171", (_polls$exerciseBanks27 = polls.exerciseBanks) === null || _polls$exerciseBanks27 === void 0 || (_polls$exerciseBanks27 = _polls$exerciseBanks27.exercise_types) === null || _polls$exerciseBanks27 === void 0 ? void 0 : _polls$exerciseBanks27.q_shixuns_scores, "\u5206"]
}), !!((_polls$exerciseBanks28 = polls.exerciseBanks) !== null && _polls$exerciseBanks28 !== void 0 && (_polls$exerciseBanks28 = _polls$exerciseBanks28.exercise_types) !== null && _polls$exerciseBanks28 !== void 0 && _polls$exerciseBanks28.q_pros) && /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: "ml20",
children: ["\u7F16\u7A0B\u9898", (_polls$exerciseBanks29 = polls.exerciseBanks) === null || _polls$exerciseBanks29 === void 0 || (_polls$exerciseBanks29 = _polls$exerciseBanks29.exercise_types) === null || _polls$exerciseBanks29 === void 0 ? void 0 : _polls$exerciseBanks29.q_pros, "\u9898\uFF0C\u5171", (_polls$exerciseBanks30 = polls.exerciseBanks) === null || _polls$exerciseBanks30 === void 0 || (_polls$exerciseBanks30 = _polls$exerciseBanks30.exercise_types) === null || _polls$exerciseBanks30 === void 0 ? void 0 : _polls$exerciseBanks30.q_pros_scores, "\u5206"]
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "fr",
children: !!((_polls$exerciseBanks31 = polls.exerciseBanks) !== null && _polls$exerciseBanks31 !== void 0 && (_polls$exerciseBanks31 = _polls$exerciseBanks31.exercise_types) !== null && _polls$exerciseBanks31 !== void 0 && _polls$exerciseBanks31.q_counts) && /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
children: ["\u5408\u8BA1 ", /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "color-blue",
children: (_polls$exerciseBanks32 = polls.exerciseBanks) === null || _polls$exerciseBanks32 === void 0 || (_polls$exerciseBanks32 = _polls$exerciseBanks32.exercise_types) === null || _polls$exerciseBanks32 === void 0 ? void 0 : _polls$exerciseBanks32.q_counts
}), " \u9898\uFF0C \u5171 ", /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "".concat(((_polls$exerciseBanks33 = polls.exerciseBanks) === null || _polls$exerciseBanks33 === void 0 || (_polls$exerciseBanks33 = _polls$exerciseBanks33.exercise_types) === null || _polls$exerciseBanks33 === void 0 ? void 0 : _polls$exerciseBanks33.q_scores) > 100 ? 'color-red font-bd' : 'color-orange'),
children: (_polls$exerciseBanks34 = polls.exerciseBanks) === null || _polls$exerciseBanks34 === void 0 || (_polls$exerciseBanks34 = _polls$exerciseBanks34.exercise_types) === null || _polls$exerciseBanks34 === void 0 ? void 0 : _polls$exerciseBanks34.q_scores
}), " \u5206"]
})
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("section", {
className: [Detailmodules.bg, 'pt30', 'pl20', 'pr20', 'pb20', 'mt20'].join(' '),
children: [editData != '' && renderQuestion(), editData == '' && /*#__PURE__*/(0,jsx_runtime.jsx)(NoData/* default */.Z, {})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)(SendToClassModal/* default */.Z, {})]
});
};
/* harmony default export */ var Detail = ((0,_umi_production_exports.connect)(function (_ref4) {
var polls = _ref4.polls,
loading = _ref4.loading,
user = _ref4.user,
globalSetting = _ref4.globalSetting;
return {
polls: polls,
globalSetting: globalSetting,
user: user,
loading: loading.effects
};
})(ShixunsListPage));
/***/ }),
/***/ 50160:
/*!**********************************************************************************!*\
!*** ./src/pages/User/Detail/Topics/components/SendToClassModal.tsx + 2 modules ***!
\**********************************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ components_SendToClassModal; }
});
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/objectSpread2.js
var objectSpread2 = __webpack_require__(26801);
var objectSpread2_default = /*#__PURE__*/__webpack_require__.n(objectSpread2);
// 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/_@babel_runtime@7.23.2@@babel/runtime/helpers/objectWithoutProperties.js
var objectWithoutProperties = __webpack_require__(27161);
var objectWithoutProperties_default = /*#__PURE__*/__webpack_require__.n(objectWithoutProperties);
// 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 + 8 modules
var _umi_production_exports = __webpack_require__(7181);
// 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/modal/index.js + 16 modules
var modal = __webpack_require__(43418);
// 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/skeleton/index.js + 12 modules
var skeleton = __webpack_require__(59981);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/radio/index.js + 5 modules
var es_radio = __webpack_require__(5112);
;// CONCATENATED MODULE: ./src/pages/User/Detail/Topics/components/SendToClassModal.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var SendToClassModalmodules = ({"title":"title___XAxiE","radioWrap":"radioWrap___k0pOB","radio":"radio___x9kMt","colorFF0000":"colorFF0000___IMgd0","pagination":"pagination___ou2ht","checkboxWrapper":"checkboxWrapper___kF7xI"});
// EXTERNAL MODULE: ./src/utils/util.tsx
var util = __webpack_require__(87885);
// EXTERNAL MODULE: ./src/components/ui-customization/index.tsx + 34 modules
var ui_customization = __webpack_require__(56782);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/toConsumableArray.js
var toConsumableArray = __webpack_require__(93923);
var toConsumableArray_default = /*#__PURE__*/__webpack_require__.n(toConsumableArray);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/spin/index.js + 1 modules
var spin = __webpack_require__(71418);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/checkbox/index.js + 3 modules
var es_checkbox = __webpack_require__(24905);
// EXTERNAL MODULE: ./src/service/user.ts
var user = __webpack_require__(43916);
// EXTERNAL MODULE: ./node_modules/_react-infinite-scroller@1.2.4@react-infinite-scroller/index.js
var _react_infinite_scroller_1_2_4_react_infinite_scroller = __webpack_require__(26724);
var _react_infinite_scroller_1_2_4_react_infinite_scroller_default = /*#__PURE__*/__webpack_require__.n(_react_infinite_scroller_1_2_4_react_infinite_scroller);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/jsx-runtime.js
var jsx_runtime = __webpack_require__(37712);
;// CONCATENATED MODULE: ./src/pages/User/Detail/Topics/components/SendToSubject.tsx
var SendToSubject = function SendToSubject(_ref) {
var username = _ref.username,
setStages = _ref.setStages,
stages = _ref.stages,
hasError = _ref.hasError,
setHasError = _ref.setHasError;
var _useState = (0,_react_17_0_2_react.useState)(''),
_useState2 = slicedToArray_default()(_useState, 2),
searchValue = _useState2[0],
setSearchValue = _useState2[1];
var _useState3 = (0,_react_17_0_2_react.useState)(1),
_useState4 = slicedToArray_default()(_useState3, 2),
page = _useState4[0],
setPage = _useState4[1];
var _useState5 = (0,_react_17_0_2_react.useState)([]),
_useState6 = slicedToArray_default()(_useState5, 2),
subjectList = _useState6[0],
setSubjectList = _useState6[1];
var _useState7 = (0,_react_17_0_2_react.useState)(false),
_useState8 = slicedToArray_default()(_useState7, 2),
listLoading = _useState8[0],
setListLoading = _useState8[1];
var _useState9 = (0,_react_17_0_2_react.useState)(0),
_useState10 = slicedToArray_default()(_useState9, 2),
totalCount = _useState10[0],
setTotalCount = _useState10[1];
(0,_react_17_0_2_react.useEffect)(function () {
getSubjectList({
page: 1,
search: ''
}, true);
}, []);
var getSubjectList = /*#__PURE__*/function () {
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee(params, reset) {
var res;
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
setListLoading(true);
_context.next = 3;
return (0,user/* getPaths */.w3)({
username: username,
category: 'manage',
page: params.page,
search: params.search
});
case 3:
res = _context.sent;
setListLoading(false);
setSubjectList(function (pre) {
return reset ? res === null || res === void 0 ? void 0 : res.subjects : [].concat(toConsumableArray_default()(pre), toConsumableArray_default()(res === null || res === void 0 ? void 0 : res.subjects));
});
setTotalCount(res === null || res === void 0 ? void 0 : res.count);
case 7:
case "end":
return _context.stop();
}
}, _callee);
}));
return function getSubjectList(_x, _x2) {
return _ref2.apply(this, arguments);
};
}();
var scrollElementRef = (0,_react_17_0_2_react.useRef)();
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: SendToClassModalmodules.wrap,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "mb10",
children: /*#__PURE__*/(0,jsx_runtime.jsx)(ui_customization/* CustomInput */.t7, {
placeholder: "\u8BF7\u8F93\u5165\u5B9E\u8DF5\u8BFE\u7A0B\u540D\u79F0\u7684\u5173\u952E\u5B57\u8FDB\u884C\u641C\u7D22",
value: searchValue,
style: {
width: 500
},
onChange: function onChange(value) {
setSearchValue(value);
setPage(1);
scrollElementRef.current.scrollTo({
behavior: 'smooth',
top: 0
});
getSubjectList({
page: 1,
search: value
}, true);
}
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)(spin/* default */.Z, {
spinning: listLoading,
children: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: SendToClassModalmodules.radioWrap,
ref: scrollElementRef,
children: /*#__PURE__*/(0,jsx_runtime.jsx)((_react_infinite_scroller_1_2_4_react_infinite_scroller_default()), {
initialLoad: false,
pageStart: 1,
threshold: 6,
loadMore: function loadMore() {
setPage(page + 1);
getSubjectList({
page: page + 1,
search: searchValue
}, false);
},
hasMore: subjectList.length < totalCount,
useWindow: false,
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default.Group */.ZP.Group, {
value: stages.subjectId,
onChange: function onChange(e) {
setStages({
subjectId: e.target.value,
stage_ids: []
});
setHasError(false);
},
children: subjectList.map(function (item) {
var options = item.stages.map(function (stage) {
return {
label: stage.name,
value: stage.id
};
});
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
className: SendToClassModalmodules.radio,
value: item.id,
children: item.name
}), item.id === stages.subjectId && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: SendToClassModalmodules.checkboxWrapper,
children: [options.length > 0 && /*#__PURE__*/(0,jsx_runtime.jsx)(es_checkbox/* default */.Z, {
indeterminate: stages.stage_ids.length > 0 && stages.stage_ids.length < options.length,
onChange: function onChange(e) {
setStages({
subjectId: item.id,
stage_ids: e.target.checked ? options.map(function (option) {
return option.value;
}) : []
});
},
checked: stages.stage_ids.length === options.length,
children: "\u5168\u9009"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_checkbox/* default */.Z.Group, {
options: options,
value: stages.stage_ids,
onChange: function onChange(checkedValue) {
return setStages({
subjectId: item.id,
stage_ids: checkedValue
});
}
})]
})]
}, item.id);
})
})
})
})
}), hasError && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: SendToClassModalmodules.colorFF0000,
children: "\u8BF7\u5148\u9009\u62E9\u5B9E\u8DF5\u8BFE\u7A0B\u53CA\u7AE0\u8282"
})]
});
};
/* harmony default export */ var components_SendToSubject = (SendToSubject);
// EXTERNAL MODULE: ./src/components/ui-customization/reset.less?modules
var resetmodules = __webpack_require__(42175);
// EXTERNAL MODULE: ./src/service/account.ts
var account = __webpack_require__(50969);
;// CONCATENATED MODULE: ./src/pages/User/Detail/Topics/components/SendToClassModal.tsx
var _excluded = ["userDetail", "globalSetting", "loading", "user", "dispatch"];
var SendToClassModal = function SendToClassModal(_ref) {
var _userDetail$actionTab4, _user$userInfo2, _userDetail$actionTab5;
var userDetail = _ref.userDetail,
globalSetting = _ref.globalSetting,
loading = _ref.loading,
user = _ref.user,
dispatch = _ref.dispatch,
props = objectWithoutProperties_default()(_ref, _excluded);
var _useState = (0,_react_17_0_2_react.useState)('course'),
_useState2 = slicedToArray_default()(_useState, 2),
activeKey = _useState2[0],
setActiveKey = _useState2[1];
var _useState3 = (0,_react_17_0_2_react.useState)(''),
_useState4 = slicedToArray_default()(_useState3, 2),
searchValue = _useState4[0],
setSearchValue = _useState4[1];
var _useState5 = (0,_react_17_0_2_react.useState)([]),
_useState6 = slicedToArray_default()(_useState5, 2),
courseList = _useState6[0],
setCourseList = _useState6[1];
var _useState7 = (0,_react_17_0_2_react.useState)(),
_useState8 = slicedToArray_default()(_useState7, 2),
radioValue = _useState8[0],
setRadioValue = _useState8[1];
var _useState9 = (0,_react_17_0_2_react.useState)(false),
_useState10 = slicedToArray_default()(_useState9, 2),
listLoading = _useState10[0],
setListLoading = _useState10[1];
var _useState11 = (0,_react_17_0_2_react.useState)(false),
_useState12 = slicedToArray_default()(_useState11, 2),
hasError = _useState12[0],
setHasError = _useState12[1];
(0,_react_17_0_2_react.useEffect)(function () {
if (userDetail.actionTabs.key === 'UserDetail-SendToClass') {
getCourseList(searchValue);
}
}, [userDetail.actionTabs.key]);
var getCourseList = /*#__PURE__*/function () {
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee(value) {
var res;
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
setListLoading(true);
_context.next = 3;
return dispatch({
type: 'userDetail/topicGetCourseList',
payload: {
search: value
}
});
case 3:
res = _context.sent;
if (res) {
setCourseList((res === null || res === void 0 ? void 0 : res.courses) || []);
}
setListLoading(false);
case 6:
case "end":
return _context.stop();
}
}, _callee);
}));
return function getCourseList(_x) {
return _ref2.apply(this, arguments);
};
}();
var _useState13 = (0,_react_17_0_2_react.useState)({
subjectId: '',
stage_ids: []
}),
_useState14 = slicedToArray_default()(_useState13, 2),
stages = _useState14[0],
setStages = _useState14[1];
var handleOk = /*#__PURE__*/function () {
var _ref3 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2() {
var _userDetail$actionTab, res, _userDetail$actionTab2, urlMapping, _userDetail$actionTab3, _user$userInfo, _res;
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
while (1) switch (_context2.prev = _context2.next) {
case 0:
if (!(activeKey === 'course')) {
_context2.next = 11;
break;
}
if (radioValue) {
_context2.next = 4;
break;
}
setHasError(true);
return _context2.abrupt("return");
case 4:
_context2.next = 6;
return dispatch({
type: 'userDetail/topicSendToClass',
payload: objectSpread2_default()({
course_id: radioValue
}, (_userDetail$actionTab = userDetail.actionTabs) === null || _userDetail$actionTab === void 0 ? void 0 : _userDetail$actionTab.params)
});
case 6:
res = _context2.sent;
dispatch({
type: 'userDetail/setActionTabs',
payload: {}
});
if (res && res.status === 0) {
urlMapping = {
'normal': 'common_homework',
'group': 'group_homework',
'exercise': 'exercise',
'poll': 'poll',
'videos': 'video'
};
(0,util/* openNewWindow */.xg)("/classrooms/".concat(radioValue, "/").concat(urlMapping[(_userDetail$actionTab2 = userDetail.actionTabs) === null || _userDetail$actionTab2 === void 0 || (_userDetail$actionTab2 = _userDetail$actionTab2.params) === null || _userDetail$actionTab2 === void 0 ? void 0 : _userDetail$actionTab2.object_type]));
}
_context2.next = 18;
break;
case 11:
if (!(!stages.subjectId || !stages.stage_ids.length)) {
_context2.next = 14;
break;
}
setHasError(true);
return _context2.abrupt("return");
case 14:
_context2.next = 16;
return (0,account/* createSubjectVideo */.nI)({
id: (_userDetail$actionTab3 = userDetail.actionTabs) === null || _userDetail$actionTab3 === void 0 || (_userDetail$actionTab3 = _userDetail$actionTab3.params) === null || _userDetail$actionTab3 === void 0 ? void 0 : _userDetail$actionTab3.object_id,
login: (_user$userInfo = user.userInfo) === null || _user$userInfo === void 0 ? void 0 : _user$userInfo.login
}, {
stage_ids: stages.stage_ids
});
case 16:
_res = _context2.sent;
if (_res.status === 0) {
message/* default */.ZP.success('发送成功');
dispatch({
type: 'userDetail/setActionTabs',
payload: {}
});
(0,util/* openNewWindow */.xg)("/paths/".concat(stages.subjectId));
}
case 18:
case "end":
return _context2.stop();
}
}, _callee2);
}));
return function handleOk() {
return _ref3.apply(this, arguments);
};
}();
return /*#__PURE__*/(0,jsx_runtime.jsx)(modal/* default */.Z, {
centered: true,
keyboard: false,
closable: false,
destroyOnClose: true,
open: userDetail.actionTabs.key === 'UserDetail-SendToClass',
title: "\u53D1\u9001",
okText: "\u786E\u5B9A",
cancelText: "\u53D6\u6D88",
confirmLoading: loading['userDetail/sendToClass'],
width: 600,
afterClose: function afterClose() {
setHasError(false);
setCourseList([]);
setStages({
subjectId: '',
stage_ids: []
});
setSearchValue('');
},
onOk: handleOk,
wrapClassName: resetmodules/* default */.Z.CustomCss,
onCancel: function onCancel() {
dispatch({
type: 'userDetail/setActionTabs',
payload: {}
});
},
children: /*#__PURE__*/(0,jsx_runtime.jsx)(tabs/* default */.Z, {
activeKey: activeKey,
onChange: function onChange(key) {
setHasError(false);
setActiveKey(key);
},
items: [{
label: '课堂',
key: 'course',
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: SendToClassModalmodules.wrap,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "mb10",
children: /*#__PURE__*/(0,jsx_runtime.jsx)(ui_customization/* CustomInput */.t7, {
placeholder: "\u8BF7\u8F93\u5165\u8BFE\u5802\u540D\u79F0\u7684\u5173\u952E\u5B57\u8FDB\u884C\u641C\u7D22",
value: searchValue,
style: {
width: 500
},
onChange: function onChange(value) {
setSearchValue(value);
getCourseList(value);
}
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)(skeleton/* default */.Z, {
active: true,
loading: listLoading,
children: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: SendToClassModalmodules.radioWrap,
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default.Group */.ZP.Group, {
value: radioValue,
onChange: function onChange(e) {
setRadioValue(e.target.value);
setHasError(false);
},
children: courseList.map(function (item, key) {
return /*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
className: SendToClassModalmodules.radio,
value: item.course_id,
children: item.course_name
}, item.course_id);
})
})
})
}), ((_userDetail$actionTab4 = userDetail.actionTabs) === null || _userDetail$actionTab4 === void 0 || (_userDetail$actionTab4 = _userDetail$actionTab4.params) === null || _userDetail$actionTab4 === void 0 ? void 0 : _userDetail$actionTab4.object_type) !== 'videos' && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: SendToClassModalmodules.title,
children: "\u6E29\u99A8\u63D0\u793A\uFF1A\u9009\u62E9\u7684\u9898\u5C06\u4F1A\u53D1\u9001\u5230\u6307\u5B9A\u8BFE\u5802"
}), hasError && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: SendToClassModalmodules.colorFF0000,
children: "\u8BF7\u5148\u9009\u62E9\u8BFE\u5802"
})]
}),
show: true
}, {
label: '实践课程',
key: 'subject',
children: /*#__PURE__*/(0,jsx_runtime.jsx)(components_SendToSubject, {
username: (_user$userInfo2 = user.userInfo) === null || _user$userInfo2 === void 0 ? void 0 : _user$userInfo2.login,
stages: stages,
setStages: setStages,
hasError: hasError,
setHasError: setHasError
}),
show: ((_userDetail$actionTab5 = userDetail.actionTabs) === null || _userDetail$actionTab5 === void 0 || (_userDetail$actionTab5 = _userDetail$actionTab5.params) === null || _userDetail$actionTab5 === void 0 ? void 0 : _userDetail$actionTab5.object_type) === 'videos'
}].filter(function (item) {
return item.show;
})
})
});
};
/* harmony default export */ var components_SendToClassModal = ((0,_umi_production_exports.connect)(function (_ref4) {
var userDetail = _ref4.userDetail,
loading = _ref4.loading,
globalSetting = _ref4.globalSetting,
user = _ref4.user;
return {
userDetail: userDetail,
globalSetting: globalSetting,
loading: loading.effects,
user: user
};
})(SendToClassModal));
/***/ }),
/***/ 42175:
/*!************************************************************!*\
!*** ./src/components/ui-customization/reset.less?modules ***!
\************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__) {
// extracted by mini-css-extract-plugin
/* harmony default export */ __webpack_exports__.Z = ({"flex_box_center":"flex_box_center___vG4eV","flex_space_between":"flex_space_between___qVVxe","flex_box_vertical_center":"flex_box_vertical_center___P8Z8s","flex_box_center_end":"flex_box_center_end___VMme3","flex_box_column":"flex_box_column___VMHwm","dropdownmenus":"dropdownmenus___oVzoj","popupClassNames":"popupClassNames___OcZq7","selectdown":"selectdown___mmcA8"});
/***/ })
}]);