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

1 line
91 KiB

(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([[118],{"5EEG":function(module,__webpack_exports__,__webpack_require__){"use strict";eval('__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var antd_es_button_style__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("+L6B");\n/* harmony import */ var antd_es_button__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("2/Rp");\n/* harmony import */ var antd_es_input_number_style__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("giR+");\n/* harmony import */ var antd_es_input_number__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("fyUT");\n/* harmony import */ var _Users_xiejianxiong_xjx_code_zq_ppte5yg23_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_objectSpread2__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("k1fw");\n/* harmony import */ var antd_es_tooltip_style__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("5Dmo");\n/* harmony import */ var antd_es_tooltip__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("3S7+");\n/* harmony import */ var antd_es_message_style__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__("miYZ");\n/* harmony import */ var antd_es_message__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__("tsqr");\n/* harmony import */ var _Users_xiejianxiong_xjx_code_zq_ppte5yg23_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__("WmNS");\n/* harmony import */ var _Users_xiejianxiong_xjx_code_zq_ppte5yg23_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(_Users_xiejianxiong_xjx_code_zq_ppte5yg23_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_9__);\n/* harmony import */ var _Users_xiejianxiong_xjx_code_zq_ppte5yg23_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_asyncToGenerator__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__("9og8");\n/* harmony import */ var _Users_xiejianxiong_xjx_code_zq_ppte5yg23_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_slicedToArray__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__("tJVT");\n/* harmony import */ var _Users_xiejianxiong_xjx_code_zq_ppte5yg23_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__("PpiC");\n/* harmony import */ var antd_es_input_style__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__("5NDa");\n/* harmony import */ var antd_es_input__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__("5rEg");\n/* harmony import */ var antd_es_select_style__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__("OaEy");\n/* harmony import */ var antd_es_select__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__("2fM7");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__("q1tI");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_17___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_17__);\n/* harmony import */ var umi__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__("9kvl");\n/* harmony import */ var _components_markdown_editor__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__("Ot1p");\n/* harmony import */ var _service_shixuns__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__("HBuW");\n/* harmony import */ var _index_less_modules__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__("E3HF");\n/* harmony import */ var _index_less_modules__WEBPACK_IMPORTED_MODULE_21___default = /*#__PURE__*/__webpack_require__.n(_index_less_modules__WEBPACK_IMPORTED_MODULE_21__);\n/* harmony import */ var _components_FixedButton__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__("9ZNV");\n/* harmony import */ var _components_EditHead__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__("CJF0");\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar Option = antd_es_select__WEBPACK_IMPORTED_MODULE_16__[/* default */ "a"].Option;\nvar TextArea = antd_es_input__WEBPACK_IMPORTED_MODULE_14__[/* default */ "a"].TextArea;\n\nvar EditPracticeAnswer = (_ref) => {\n var shixunsDetail = _ref.shixunsDetail,\n dispatch = _ref.dispatch,\n loading = _ref.loading,\n match = _ref.match,\n props = Object(_Users_xiejianxiong_xjx_code_zq_ppte5yg23_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_12__[/* default */ "a"])(_ref, ["shixunsDetail", "dispatch", "loading", "match"]);\n\n var _useState = Object(react__WEBPACK_IMPORTED_MODULE_17__["useState"])({}),\n _useState2 = Object(_Users_xiejianxiong_xjx_code_zq_ppte5yg23_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_slicedToArray__WEBPACK_IMPORTED_MODULE_11__[/* default */ "a"])(_useState, 2),\n editData = _useState2[0],\n setEditData = _useState2[1];\n\n var _useState3 = Object(react__WEBPACK_IMPORTED_MODULE_17__["useState"])([]),\n _useState4 = Object(_Users_xiejianxiong_xjx_code_zq_ppte5yg23_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_slicedToArray__WEBPACK_IMPORTED_MODULE_11__[/* default */ "a"])(_useState3, 2),\n answerList = _useState4[0],\n setAnswerList = _useState4[1];\n\n Object(react__WEBPACK_IMPORTED_MODULE_17__["useEffect"])(() => {\n dispatch({\n type: \'globalSetting/footerToggle\',\n payload: false\n });\n return () => {\n dispatch({\n type: \'globalSetting/footerToggle\',\n payload: true\n });\n };\n }, []);\n Object(react__WEBPACK_IMPORTED_MODULE_17__["useEffect"])(() => {\n getPracticeData();\n getAnswerData();\n }, []);\n\n var getPracticeData = /*#__PURE__*/function () {\n var _ref2 = Object(_Users_xiejianxiong_xjx_code_zq_ppte5yg23_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_asyncToGenerator__WEBPACK_IMPORTED_MODULE_10__[/* default */ "a"])( /*#__PURE__*/_Users_xiejianxiong_xjx_code_zq_ppte5yg23_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_9___default.a.mark(function _callee() {\n var res;\n return _Users_xiejianxiong_xjx_code_zq_ppte5yg23_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_9___default.a.wrap(function _callee$(_context) {\n while (1) {\n switch (_context.prev = _context.next) {\n case 0:\n _context.next = 2;\n return Object(_service_shixuns__WEBPACK_IMPORTED_MODULE_20__[/* getChallengePractice */ "w"])({\n id: match.params.id,\n challengeId: match.params.challengesId,\n tab: 2\n });\n\n case 2:\n res = _context.sent;\n res && setEditData(res);\n\n case 4:\n case "end":\n return _context.stop();\n }\n }\n }, _callee);\n }));\n\n return function getPracticeData() {\n return _ref2.apply(this, arguments);\n };\n }();\n\n var getAnswerData = /*#__PURE__*/function () {\n var _ref3 = Object(_Users_xiejianxiong_xjx_code_zq_ppte5yg23_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_asyncToGenerator__WEBPACK_IMPORTED_MODULE_10__[/* default */ "a"])( /*#__PURE__*/_Users_xiejianxiong_xjx_code_zq_ppte5yg23_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_9___default.a.mark(function _callee2() {\n var res;\n return _Users_xiejianxiong_xjx_code_zq_ppte5yg23_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_9___default.a.wrap(function _callee2$(_context2) {\n while (1) {\n switch (_context2.prev = _context2.next) {\n case 0:\n _context2.next = 2;\n return Object(_service_shixuns__WEBPACK_IMPORTED_MODULE_20__[/* getChallengesAnswer */ "x"])({\n id: match.params.id,\n challengeId: match.params.challengesId\n });\n\n case 2:\n res = _context2.sent;\n res && setAnswerList(res);\n\n case 4:\n case "end":\n return _context2.stop();\n }\n }\n }, _callee2);\n }));\n\n return function getAnswerData() {\n return _ref3.apply(this, arguments);\n };\n }();\n\n var handleSave = /*#__PURE__*/function () {\n var _ref4 = Object(_Users_xiejianxiong_xjx_code_zq_ppte5yg23_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_asyncToGenerator__WEBPACK_IMPORTED_MODULE_10__[/* default */ "a"])( /*#__PURE__*/_Users_xiejianxiong_xjx_code_zq_ppte5yg23_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_9___default.a.mark(function _callee3() {\n var scoreList, sumScore, res;\n return _Users_xiejianxiong_xjx_code_zq_ppte5yg23_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_regenerator__WEBPACK_IMPORTED_MODULE_9___default.a.wrap(function _callee3$(_context3) {\n while (1) {\n switch (_context3.prev = _context3.next) {\n case 0:\n scoreList = answerList.map(item => item.score);\n sumScore = scoreList.reduce((current, next) => current + next, 0);\n\n if (!(sumScore !== 100)) {\n _context3.next = 5;\n break;\n }\n\n antd_es_message__WEBPACK_IMPORTED_MODULE_8__[/* default */ "a"].info(\'\u6d4b\u8bd5\u96c6\u7684\u8bc4\u5206\u5360\u6bd4\u4e4b\u548c\u5fc5\u987b\u7b49\u4e8e100\');\n\n return _context3.abrupt("return");\n\n case 5:\n if (answerList.every(item => item.name)) {\n _context3.next = 8;\n break;\n }\n\n antd_es_message__WEBPACK_IMPORTED_MODULE_8__[/* default */ "a"].info(\'\u8bf7\u5148\u586b\u5199\u53c2\u8003\u7b54\u6848\u540d\u79f0\');\n\n return _context3.abrupt("return");\n\n case 8:\n if (answerList.every(item => item.contents)) {\n _context3.next = 11;\n break;\n }\n\n antd_es_message__WEBPACK_IMPORTED_MODULE_8__[/* default */ "a"].info(\'\u8bf7\u5148\u586b\u5199\u53c2\u8003\u7b54\u6848\u5185\u5bb9\');\n\n return _context3.abrupt("return");\n\n case 11:\n _context3.next = 13;\n return Object(_service_shixuns__WEBPACK_IMPORTED_MODULE_20__[/* updateChallengesAnswer */ "ib"])({\n id: match.params.id,\n challengeId: match.params.challengesId,\n challenge_answer: answerList\n });\n\n case 13:\n res = _context3.sent;\n\n if (res === null || res === void 0 ? void 0 : res.message) {\n antd_es_message__WEBPACK_IMPORTED_MODULE_8__[/* default */ "a"].info(res.message);\n }\n\n if (res.status === 1) {\n umi__WEBPACK_IMPORTED_MODULE_18__[/* history */ "c"].push("/shixuns/".concat(match.params.id, "/challenges"));\n }\n\n case 16:\n case "end":\n return _context3.stop();\n }\n }\n }, _callee3);\n }));\n\n return function handleSave() {\n return _ref4.apply(this, arguments);\n };\n }();\n\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_17___default.a.createElement("section", {\n className: _index_less_modules__WEBPACK_IMPORTED_MODULE_21___default.a.bg\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_17___default.a.createElement("aside", {\n className: \'bg-white mb10 pl20 pr20 \'\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_17___default.a.createElement(_components_EditHead__WEBPACK_IMPORTED_MODULE_23__[/* default */ "a"], {\n data: editData,\n title: "\\u5B9E\\u8DF5\\u9898"\n })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_17___default.a.createElement("aside", {\n className: ["bg-white", _index_less_modules__WEBPACK_IMPORTED_MODULE_21___default.a.navBar, _index_less_modules__WEBPACK_IMPORTED_MODULE_21___default.a.flexRow].join(\' \')\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_17___default.a.createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_17___default.a.createElement("a", {\n onClick: () => {\n umi__WEBPACK_IMPORTED_MODULE_18__[/* history */ "c"].push("/shixuns/".concat(match.params.id, "/challenges/").concat(match.params.challengesId, "/editcheckpoint"));\n }\n }, "1\\u3001\\u672C\\u5173\\u4EFB\\u52A1")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_17___default.a.createElement("li", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_17___default.a.createElement("a", {\n onClick: () => {\n umi__WEBPACK_IMPORTED_MODULE_18__[/* history */ "c"].push("/shixuns/".concat(match.params.id, "/challenges/").concat(match.params.challengesId, "/tab=2"));\n }\n }, "2\\u3001\\u8BC4\\u6D4B\\u8BBE\\u7F6E")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_17___default.a.createElement("li", {\n className: _index_less_modules__WEBPACK_IMPORTED_MODULE_21___default.a.active\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_17___default.a.createElement("a", null, "3\\u3001\\u53C2\\u8003\\u7B54\\u6848"))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_17___default.a.createElement("div", {\n className: _index_less_modules__WEBPACK_IMPORTED_MODULE_21___default.a.fieldWrap\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_17___default.a.createElement("p", {\n className: "font14"\n }, "\\u53EF\\u4EE5\\u5C06\\u53C2\\u8003\\u7B54\\u6848\\u5206\\u7EA7\\u8BBE\\u7F6E\\uFF0C\\u8BA9\\u5B66\\u5458\\u81EA\\u884C\\u9009\\u62E9\\u7EA7\\u522B\\uFF0C\\u6BCF\\u7EA7\\u67E5\\u770B\\u540E\\u6309\\u7167\\u6BD4\\u4F8B\\u6263\\u5206\\u503C\\uFF08\\u5B66\\u5458\\u5DF2\\u5B8C\\u6210\\u4EFB\\u52A1\\u518D\\u67E5\\u770B\\uFF0C\\u5219\\u4E0D\\u5F71\\u54CD\\u5B66\\u5458\\u5DF2\\u83B7\\u5F97\\u7684\\u6210\\u7EE9\\uFF09"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_17___default.a.createElement("div", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_17___default.a.createElement("div", null, "\\u793A\\u4F8B\\uFF1A\\u7EA7\\u522B1\\uFF0C\\u6263\\u51CF\\u5206\\u503C\\u5360\\u6BD425%\\uFF1B\\u7EA7\\u522B2\\uFF0C\\u6263\\u51CF\\u5206\\u503C\\u5360\\u6BD435%\\uFF1B\\u7EA7\\u522B3\\uFF0C\\u6263\\u51CF\\u5206\\u503C\\u5360\\u6BD440%\\uFF1B"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_17___default.a.createElement("div", {\n className: "mt5 ml40"\n }, "\\u82E5\\u5B66\\u5458\\u9009\\u62E9\\u67E5\\u770B\\u7EA7\\u522B1\\u7684\\u7B54\\u6848\\uFF0C\\u5C06\\u88AB\\u6263\\u51CF25%\\u7684\\u5206\\u503C\\uFF1B\\u9009\\u62E9\\u67E5\\u770B\\u7EA7\\u522B2\\u7684\\u7B54\\u6848\\uFF0C\\u5C06\\u88AB\\u6263\\u51CF60%\\u7684\\u5206\\u503C\\uFF1B\\u9009\\u62E9\\u67E5\\u770B\\u7EA7\\u522B3\\u7684\\u7B54\\u6848\\uFF0C\\u5C06\\u88AB\\u6263\\u51CF100%\\u7684\\u5206\\u503C\\u3002")), answerList === null || answerList === void 0 ? void 0 : answerList.map((item, key) => {\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_17___default.a.createElement("div", {\n className: "mt30"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_17___default.a.createElement("div", {\n className: _index_less_modules__WEBPACK_IMPORTED_MODULE_21___default.a.flexRow\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_17___default.a.createElement("div", {\n className: "font16"\n }, "\\u7EA7\\u522B\\uFF1A", key + 1), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_17___default.a.createElement("div", {\n className: "tr flex1"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_17___default.a.createElement(antd_es_tooltip__WEBPACK_IMPORTED_MODULE_6__[/* default */ "a"], {\n placement: "bottom",\n title: "\u5220\u9664"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_17___default.a.createElement("i", {\n className: "iconfont icon-shanchu_Hover font16 c-red current",\n onClick: () => {\n setAnswerList(answerList.filter((_, index) => index !== key));\n }\n })))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_17___default.a.createElement("div", {\n className: _index_less_modules__WEBPACK_IMPORTED_MODULE_21___default.a.contentWrap\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_17___default.a.createElement("div", {\n className: _index_less_modules__WEBPACK_IMPORTED_MODULE_21___default.a.flexRow\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_17___default.a.createElement("div", null, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_17___default.a.createElement("p", {\n className: "font16"\n }, "\\u540D\\u79F0\\uFF1A"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_17___default.a.createElement(antd_es_input__WEBPACK_IMPORTED_MODULE_14__[/* default */ "a"], {\n style: {\n width: \'200px\'\n },\n value: item.name,\n onChange: e => {\n var answerData = answerList.map((answer, index) => {\n if (index === key) {\n return Object(_Users_xiejianxiong_xjx_code_zq_ppte5yg23_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_objectSpread2__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])(Object(_Users_xiejianxiong_xjx_code_zq_ppte5yg23_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_objectSpread2__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])({}, answer), {}, {\n name: e.target.value\n });\n }\n\n return answer;\n });\n setAnswerList(answerData);\n }\n })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_17___default.a.createElement("div", {\n className: "ml10"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_17___default.a.createElement("p", {\n className: "font16"\n }, "\\u6263\\u51CF\\u5206\\u503C\\u5360\\u6BD4\\uFF1A"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_17___default.a.createElement(antd_es_input_number__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"], {\n style: {\n width: \'200px\'\n },\n value: item.score,\n onChange: e => {\n var answerData = answerList.map((answer, index) => {\n if (index === key) {\n return Object(_Users_xiejianxiong_xjx_code_zq_ppte5yg23_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_objectSpread2__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])(Object(_Users_xiejianxiong_xjx_code_zq_ppte5yg23_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_objectSpread2__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])({}, answer), {}, {\n score: e\n });\n }\n\n return answer;\n });\n setAnswerList(answerData);\n }\n }), " %"))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_17___default.a.createElement("div", {\n className: "mt10 mb10"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_17___default.a.createElement("div", {\n className: "font16 mb10"\n }, "\\u5185\\u5BB9\\uFF1A"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_17___default.a.createElement(_components_markdown_editor__WEBPACK_IMPORTED_MODULE_19__[/* default */ "a"], {\n defaultValue: item.contents,\n onChange: value => {\n var answerData = answerList.map((answer, index) => {\n if (index === key) {\n return Object(_Users_xiejianxiong_xjx_code_zq_ppte5yg23_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_objectSpread2__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])(Object(_Users_xiejianxiong_xjx_code_zq_ppte5yg23_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_objectSpread2__WEBPACK_IMPORTED_MODULE_4__[/* default */ "a"])({}, answer), {}, {\n contents: value\n });\n }\n\n return answer;\n });\n setAnswerList(answerData);\n }\n })));\n }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_17___default.a.createElement("div", {\n className: "tc"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_17___default.a.createElement(antd_es_button__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"], {\n type: "primary",\n ghost: true,\n className: "mt10",\n onClick: () => {\n setAnswerList([...answerList, {\n name: "\\u89E3\\u9898\\u601D\\u8DEF".concat(answerList.length + 1),\n contents: "",\n score: 10,\n id: null,\n level: null\n }]);\n }\n }, "\\u65B0\\u589E\\u53C2\\u8003\\u7B54\\u6848"))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_17___default.a.createElement(_components_FixedButton__WEBPACK_IMPORTED_MODULE_22__[/* FixedButton */ "a"], {\n onOk: handleSave,\n onCancel: () => umi__WEBPACK_IMPORTED_MODULE_18__[/* history */ "c"].push("/shixuns/".concat(match.params.id, "/challenges"))\n }));\n};\n\n/* harmony default export */ __webpack_exports__["default"] = (Object(umi__WEBPACK_IMPORTED_MODULE_18__[/* connect */ "a"])((_ref5) => {\n var shixunsDetail = _ref5.shixunsDetail,\n newCourse = _ref5.newCourse,\n loading = _ref5.loading,\n globalSetting = _ref5.globalSetting;\n return {\n shixunsDetail,\n newCourse,\n globalSetting,\n loading: loading.effects\n };\n})(EditPracticeAnswer));\n\n//# sourceURL=webpack:///./src/pages/Shixuns/Detail/Challenges/EditPracticeAnswer/index.tsx?')},"7ahc":function(module,__webpack_exports__,__webpack_require__){"use strict";eval("/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"a\", function() { return MyCodeMirror; });\n/* harmony import */ var _Users_xiejianxiong_xjx_code_zq_ppte5yg23_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_objectSpread2__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(\"k1fw\");\n/* harmony import */ var _Users_xiejianxiong_xjx_code_zq_ppte5yg23_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(\"0Owb\");\n/* harmony import */ var antd_es_button_style__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(\"+L6B\");\n/* harmony import */ var antd_es_button__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(\"2/Rp\");\n/* harmony import */ var antd_es_form_style__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(\"y8nQ\");\n/* harmony import */ var antd_es_form__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(\"Vl3Y\");\n/* harmony import */ var _Users_xiejianxiong_xjx_code_zq_ppte5yg23_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_slicedToArray__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(\"tJVT\");\n/* harmony import */ var antd_es_select_style__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(\"OaEy\");\n/* harmony import */ var antd_es_select__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(\"2fM7\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(\"q1tI\");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_9__);\n/* harmony import */ var codemirror_lib_codemirror_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(\"VrN/\");\n/* harmony import */ var codemirror_lib_codemirror_js__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(codemirror_lib_codemirror_js__WEBPACK_IMPORTED_MODULE_10__);\n/* harmony import */ var codemirror_lib_codemirror_css__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(\"p77/\");\n/* harmony import */ var codemirror_lib_codemirror_css__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(codemirror_lib_codemirror_css__WEBPACK_IMPORTED_MODULE_11__);\n\n\n\n\n\n\n\n\n\n\n\n\nvar Option = antd_es_select__WEBPACK_IMPORTED_MODULE_8__[/* default */ \"a\"].Option; //https://github.com/codemirror/CodeMirror/issues/4838\n\nvar formItemLayout = {\n labelCol: {\n span: 4\n },\n wrapperCol: {\n span: 20\n }\n};\nvar LanguageDesc = {\n asp: ['ASP', 'vbscript'],\n actionscript: ['ActionScript(3.0)/Flash/Flex', 'clike'],\n bash: ['Bash/Bat', 'shell'],\n css: ['CSS', 'css'],\n c: ['C', 'clike'],\n cpp: ['C++', 'clike'],\n csharp: ['C#', 'clike'],\n coffeescript: ['CoffeeScript', 'coffeescript'],\n d: ['D', 'd'],\n dart: ['Dart', 'dart'],\n delphi: ['Delphi/Pascal', 'pascal'],\n erlang: ['Erlang', 'erlang'],\n go: ['Golang', 'go'],\n groovy: ['Groovy', 'groovy'],\n html: ['HTML', 'text/html'],\n java: ['Java', 'clike'],\n json: ['JSON', 'text/json'],\n javascript: ['Javascript', 'javascript'],\n lua: ['Lua', 'lua'],\n less: ['LESS', 'css'],\n markdown: ['Markdown', 'gfm'],\n 'objective-c': ['Objective-C', 'clike'],\n php: ['PHP', 'php'],\n perl: ['Perl', 'perl'],\n python: ['Python', 'python'],\n r: ['R', 'r'],\n rst: ['reStructedText', 'rst'],\n ruby: ['Ruby', 'ruby'],\n sql: ['SQL', 'sql'],\n sass: ['SASS/SCSS', 'sass'],\n shell: ['Shell', 'shell'],\n scala: ['Scala', 'clike'],\n swift: ['Swift', 'clike'],\n vb: ['VB/VBScript', 'vb'],\n xml: ['XML', 'text/xml'],\n yaml: ['YAML', 'yaml']\n};\n/* harmony default export */ __webpack_exports__[\"b\"] = ((_ref) => {\n var callback = _ref.callback,\n onCancel = _ref.onCancel;\n\n var _useState = Object(react__WEBPACK_IMPORTED_MODULE_9__[\"useState\"])('python'),\n _useState2 = Object(_Users_xiejianxiong_xjx_code_zq_ppte5yg23_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_slicedToArray__WEBPACK_IMPORTED_MODULE_6__[/* default */ \"a\"])(_useState, 2),\n mode = _useState2[0],\n setMode = _useState2[1];\n\n function onSetMode(value) {\n setMode(LanguageDesc[value][1]);\n }\n\n function onSubmit(values) {\n callback(values);\n }\n\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_9___default.a.createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_5__[/* default */ \"a\"], Object(_Users_xiejianxiong_xjx_code_zq_ppte5yg23_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_1__[/* default */ \"a\"])({}, formItemLayout, {\n className: \"code-block-panel\",\n initialValues: {\n language: 'python',\n content: ''\n },\n onFinish: onSubmit\n }), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_9___default.a.createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_5__[/* default */ \"a\"].Item, {\n label: \"\\u4EE3\\u7801\\u8BED\\u8A00\",\n name: \"language\"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_9___default.a.createElement(antd_es_select__WEBPACK_IMPORTED_MODULE_8__[/* default */ \"a\"], {\n onChange: onSetMode\n }, Object.keys(LanguageDesc).map(item => /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_9___default.a.createElement(Option, {\n key: item,\n value: item\n }, LanguageDesc[item][0])))), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_9___default.a.createElement(antd_es_form__WEBPACK_IMPORTED_MODULE_5__[/* default */ \"a\"].Item, {\n label: \"\\u4EE3\\u7801\\u5185\\u5BB9\",\n name: \"content\",\n rules: [{\n required: true,\n message: '\u8bf7\u8f93\u5165\u4ee3\u7801\u5185\u5bb9'\n }]\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_9___default.a.createElement(MyCodeMirror, {\n mode: mode\n })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_9___default.a.createElement(\"div\", {\n className: \"flex-container flex-end\"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_9___default.a.createElement(antd_es_button__WEBPACK_IMPORTED_MODULE_3__[/* default */ \"a\"], {\n type: \"primary\",\n htmlType: \"submit\",\n style: {\n marginRight: 10\n }\n }, \"\\u786E\\u5B9A\"), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_9___default.a.createElement(antd_es_button__WEBPACK_IMPORTED_MODULE_3__[/* default */ \"a\"], {\n type: \"ghost\",\n onClick: onCancel\n }, \"\\u53D6\\u6D88\")));\n});\nfunction MyCodeMirror(_ref2) {\n var value = _ref2.value,\n onChange = _ref2.onChange,\n mode = _ref2.mode,\n _ref2$options = _ref2.options,\n options = _ref2$options === void 0 ? {} : _ref2$options;\n var el = Object(react__WEBPACK_IMPORTED_MODULE_9__[\"useRef\"])();\n\n var _useState3 = Object(react__WEBPACK_IMPORTED_MODULE_9__[\"useState\"])(),\n _useState4 = Object(_Users_xiejianxiong_xjx_code_zq_ppte5yg23_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_slicedToArray__WEBPACK_IMPORTED_MODULE_6__[/* default */ \"a\"])(_useState3, 2),\n cm = _useState4[0],\n setCm = _useState4[1];\n\n Object(react__WEBPACK_IMPORTED_MODULE_9__[\"useEffect\"])(() => {\n if (cm) {\n function onChangeHandler(cm) {\n var content = cm.getValue();\n onChange && onChange(content);\n }\n\n cm.on('change', onChangeHandler);\n return () => {\n cm.off('change', onChangeHandler);\n };\n }\n }, [cm, onChange]);\n Object(react__WEBPACK_IMPORTED_MODULE_9__[\"useEffect\"])(() => {\n if (cm) {\n cm.setOption('mode', mode);\n }\n }, [cm, mode]);\n Object(react__WEBPACK_IMPORTED_MODULE_9__[\"useEffect\"])(() => {\n if (cm) {\n if (value !== cm.getValue()) {\n cm.setValue(value || '');\n }\n }\n }, [cm, value]);\n Object(react__WEBPACK_IMPORTED_MODULE_9__[\"useEffect\"])(() => {\n if (el.current && !cm) {\n var instance = codemirror_lib_codemirror_js__WEBPACK_IMPORTED_MODULE_10___default.a.fromTextArea(el.current, Object(_Users_xiejianxiong_xjx_code_zq_ppte5yg23_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_objectSpread2__WEBPACK_IMPORTED_MODULE_0__[/* default */ \"a\"])({\n mode,\n lineNumbers: true,\n lineWrapping: true,\n autoCloseBrackets: true,\n tabSize: 4,\n autofocus: true,\n autoCloseTags: true\n }, options));\n setCm(instance);\n }\n }, [el.current, cm]);\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_9___default.a.createElement(\"div\", {\n className: \"my-codemirror-container\"\n }, ' ', /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_9___default.a.createElement(\"textarea\", {\n ref: el\n }), ' ');\n}\n\n//# sourceURL=webpack:///./src/components/markdown-editor/code-block/index.tsx?")},"9Bee":function(module,__webpack_exports__,__webpack_require__){"use strict";eval('\n// EXTERNAL MODULE: ./node_modules/react/index.js\nvar react = __webpack_require__("q1tI");\nvar react_default = /*#__PURE__*/__webpack_require__.n(react);\n\n// EXTERNAL MODULE: ./node_modules/katex/dist/katex.min.css\nvar katex_min = __webpack_require__("vg9a");\n\n// EXTERNAL MODULE: ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/helpers/esm/slicedToArray.js + 3 modules\nvar slicedToArray = __webpack_require__("tJVT");\n\n// EXTERNAL MODULE: ./node_modules/marked/lib/marked.js\nvar marked = __webpack_require__("DlQD");\nvar marked_default = /*#__PURE__*/__webpack_require__.n(marked);\n\n// EXTERNAL MODULE: ./node_modules/marked/src/helpers.js\nvar helpers = __webpack_require__("rUJ1");\n\n// CONCATENATED MODULE: ./src/utils/marked.ts\n\n\n\n\nfunction indentCodeCompensation(raw, text) {\n var matchIndentToCode = raw.match(/^(\\s+)(?:```)/);\n\n if (matchIndentToCode === null) {\n return text;\n }\n\n var indentToCode = matchIndentToCode[1];\n return text.split(\'\\n\').map(node => {\n var matchIndentInNode = node.match(/^\\s+/);\n\n if (matchIndentInNode === null) {\n return node;\n }\n\n var _matchIndentInNode = Object(slicedToArray["a" /* default */])(matchIndentInNode, 1),\n indentInNode = _matchIndentInNode[0];\n\n if (indentInNode.length >= indentToCode.length) {\n return node.slice(indentToCode.length);\n }\n\n return node;\n }).join(\'\\n\');\n}\n\n//\u517c\u5bb9\u4e4b\u524d\u7684 ##\u6807\u9898\u5f0f\u5199\u6cd5\nvar toc = [];\nvar ctx = ["<ul>"];\nvar renderer = new marked_default.a.Renderer();\nvar headingRegex = /^ *(#{1,6}) *([^\\n]+?) *(?:#+ *)?(?:\\n+|$)/;\nfunction cleanToc() {\n toc.length = 0;\n ctx = ["<ul>"];\n}\n\nfunction buildToc(coll, k, level, ctx) {\n if (k >= coll.length || coll[k].level <= level) {\n return k;\n }\n\n var node = coll[k];\n ctx.push("<li><a href=\'#" + node.anchor + "\'>" + node.text + "</a>");\n k++;\n var childCtx = [];\n k = buildToc(coll, k, node.level, childCtx);\n\n if (childCtx.length > 0) {\n ctx.push("<ul>");\n childCtx.forEach(function (idm) {\n ctx.push(idm);\n });\n ctx.push("</ul>");\n }\n\n ctx.push("</li>");\n k = buildToc(coll, k, level, ctx);\n return k;\n}\n\nfunction getTocContent() {\n buildToc(toc, 0, 0, ctx);\n ctx.push("</ul>");\n return ctx.join("");\n}\nvar tokenizer = {\n heading(src) {\n var cap = headingRegex.exec(src);\n\n if (cap) {\n return {\n type: \'heading\',\n raw: cap[0],\n depth: cap[1].length,\n text: cap[2]\n };\n }\n },\n\n fences(src) {\n var cap = this.rules.block.fences.exec(src);\n\n if (cap) {\n var raw = cap[0];\n var text = indentCodeCompensation(raw, cap[3] || \'\');\n var lang = cap[2] ? cap[2].trim() : cap[2];\n\n if ([\'latex\', \'katex\', \'math\'].indexOf(lang) >= 0) {\n var id = next_id();\n var expression = text;\n text = id;\n marked_math_expressions[id] = {\n type: \'block\',\n expression\n };\n }\n\n return {\n type: \'code\',\n raw,\n lang,\n text\n };\n }\n }\n\n};\nvar latexRegex = /(?:\\${2})([^\\n`]+?)(?:\\${2})/gi;\nvar katex_count = 0;\n\nvar next_id = () => "__special_katext_id_".concat(katex_count++, "__");\n\nvar marked_math_expressions = {};\nfunction getMathExpressions() {\n return marked_math_expressions;\n}\nfunction resetMathExpressions() {\n katex_count = 0;\n marked_math_expressions = {};\n}\n\nfunction replace_math_with_ids(text) {\n text = text.replace(latexRegex, (_match, expression) => {\n var id = next_id();\n marked_math_expressions[id] = {\n type: \'inline\',\n expression\n };\n return id;\n });\n return text;\n}\n\nvar original_listitem = renderer.listitem;\n\nrenderer.listitem = function (text) {\n return original_listitem(replace_math_with_ids(text));\n};\n\nvar original_paragraph = renderer.paragraph;\n\nrenderer.paragraph = function (text) {\n return original_paragraph(replace_math_with_ids(text));\n};\n\nvar original_tablecell = renderer.tablecell;\n\nrenderer.tablecell = function (content, flags) {\n return original_tablecell(replace_math_with_ids(content), flags);\n};\n\nrenderer.code = function (code, infostring, escaped) {\n var lang = (infostring || \'\').match(/\\S*/)[0];\n\n if (!lang) {\n return \'<pre class="prettyprint linenums"><code>\' + (escaped ? code : Object(helpers["escape"])(code, true)) + \'</code></pre>\';\n }\n\n if ([\'latex\', \'katex\', \'math\'].indexOf(lang) >= 0) {\n return "<p class=\'editormd-tex\'>".concat(code, "</p>");\n } else {\n return "<pre class=\\"prettyprint linenums\\"><code class=\\"language-".concat(infostring, "\\">").concat(escaped ? code : Object(helpers["escape"])(code, true), "</code></pre>\\n");\n }\n};\n\nrenderer.heading = function (text, level, raw) {\n var anchor = this.options.headerPrefix + raw.toLowerCase().replace(/[^\\w\\\\u4e00-\\\\u9fa5]]+/g, \'-\');\n toc.push({\n anchor,\n level,\n text\n });\n return \'<h\' + level + \' id="\' + anchor + \'">\' + text + \'</h\' + level + \'>\';\n};\n\nmarked_default.a.setOptions({\n silent: true,\n smartypants: true,\n gfm: true,\n pedantic: false\n});\nmarked_default.a.use({\n tokenizer,\n renderer\n});\n/* harmony default export */ var utils_marked = (marked_default.a);\n// EXTERNAL MODULE: ./node_modules/code-prettify/src/prettify.js\nvar prettify = __webpack_require__("SJMd");\n\n// EXTERNAL MODULE: ./node_modules/katex/dist/katex.js\nvar katex = __webpack_require__("Oy/b");\n\n// CONCATENATED MODULE: ./src/components/RenderHtml/index.tsx\n\n\n\n\n\nvar preRegex = /<pre[^>]*>/g;\n\nfunction _unescape(str) {\n var div = document.createElement(\'div\');\n div.innerHTML = str;\n return div.childNodes.length === 0 ? "" : div.childNodes[0].nodeValue;\n}\n\n/* harmony default export */ var RenderHtml = __webpack_exports__["a"] = ((_ref) => {\n var _ref$value = _ref.value,\n value = _ref$value === void 0 ? \'\' : _ref$value,\n className = _ref.className,\n _ref$style = _ref.style,\n style = _ref$style === void 0 ? {} : _ref$style;\n var str = String(value);\n var html = Object(react["useMemo"])(() => {\n var rs = utils_marked(str);\n var math_expressions = getMathExpressions();\n\n if (str.match(/\\[TOC\\]/)) {\n rs = rs.replace("<p>[TOC]</p>", getTocContent());\n cleanToc();\n }\n\n rs = rs.replace(/(__special_katext_id_\\d+__)/g, (_match, capture) => {\n var _math_expressions$cap = math_expressions[capture],\n type = _math_expressions$cap.type,\n expression = _math_expressions$cap.expression;\n return Object(katex["renderToString"])(_unescape(expression) || \'\', {\n displayMode: type === \'block\',\n throwOnError: false,\n output: \'html\'\n });\n });\n rs = rs.replace(/\u2581/g, "\u2581\u2581\u2581");\n resetMathExpressions();\n return rs;\n }, [str]);\n var el = Object(react["useRef"])();\n\n function onAncherHandler(e) {\n var target = e.target;\n\n if (target.tagName.toUpperCase() === \'A\') {\n var ancher = target.getAttribute(\'href\');\n\n if (ancher.startsWith(\'#\')) {\n e.preventDefault();\n var viewEl = document.getElementById(ancher.replace(\'#\', \'\'));\n\n if (viewEl) {\n viewEl.parentNode.scrollTop = viewEl.offsetTop;\n }\n }\n }\n }\n\n Object(react["useEffect"])(() => {\n if (el.current && html) {\n if (html.match(preRegex)) {\n window.PR.prettyPrint();\n }\n }\n\n if (el.current) {\n el.current.addEventListener(\'click\', onAncherHandler);\n return () => {\n el.current.removeEventListener(\'click\', onAncherHandler);\n resetMathExpressions();\n cleanToc();\n };\n }\n }, [html, el.current, onAncherHandler]);\n return /*#__PURE__*/react_default.a.createElement("div", {\n ref: el,\n style: style,\n className: "".concat(className ? className : \'\', " markdown-body"),\n dangerouslySetInnerHTML: {\n __html: html\n }\n });\n});\n\n//# sourceURL=webpack:///./src/components/RenderHtml/index.tsx_+_1_modules?')},"9VGf":function(module,__webpack_exports__,__webpack_require__){"use strict";eval('/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return useInterval; });\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("q1tI");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);\n\nfunction useInterval(callback, delay) {\n var savedCallback = Object(react__WEBPACK_IMPORTED_MODULE_0__["useRef"])(); // \u4fdd\u5b58\u65b0\u56de\u8c03\n\n Object(react__WEBPACK_IMPORTED_MODULE_0__["useEffect"])(() => {\n savedCallback.current = callback;\n }); // \u5efa\u7acb interval\n\n Object(react__WEBPACK_IMPORTED_MODULE_0__["useEffect"])(() => {\n function tick() {\n savedCallback.current();\n }\n\n if (delay !== null) {\n var id = setInterval(tick, delay);\n return () => clearInterval(id);\n }\n }, [delay]);\n}\n\n//# sourceURL=webpack:///./src/components/useInterval.tsx?')},"9ZNV":function(module,__webpack_exports__,__webpack_require__){"use strict";eval('/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return FixedButton; });\n/* harmony import */ var _Users_xiejianxiong_xjx_code_zq_ppte5yg23_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("0Owb");\n/* harmony import */ var antd_es_button_style__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("+L6B");\n/* harmony import */ var antd_es_button__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("2/Rp");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("q1tI");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_3__);\n/* harmony import */ var _index_less_modules__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("UUDw");\n/* harmony import */ var _index_less_modules__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_index_less_modules__WEBPACK_IMPORTED_MODULE_4__);\n\n\n\n\n\nvar FixedButton = (_ref) => {\n var _ref$cancelText = _ref.cancelText,\n cancelText = _ref$cancelText === void 0 ? \'\u53d6\u6d88\' : _ref$cancelText,\n _ref$okText = _ref.okText,\n okText = _ref$okText === void 0 ? \'\u786e\u5b9a\' : _ref$okText,\n _ref$loading = _ref.loading,\n loading = _ref$loading === void 0 ? false : _ref$loading,\n _ref$okButtonProps = _ref.okButtonProps,\n okButtonProps = _ref$okButtonProps === void 0 ? {} : _ref$okButtonProps,\n _ref$onCancel = _ref.onCancel,\n onCancel = _ref$onCancel === void 0 ? () => {} : _ref$onCancel,\n _ref$onOk = _ref.onOk,\n onOk = _ref$onOk === void 0 ? () => {} : _ref$onOk;\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement("div", {\n className: _index_less_modules__WEBPACK_IMPORTED_MODULE_4___default.a.buttonFixed\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement("div", {\n className: _index_less_modules__WEBPACK_IMPORTED_MODULE_4___default.a.buttonWrap\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement(antd_es_button__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"], {\n size: "large",\n className: "".concat(_index_less_modules__WEBPACK_IMPORTED_MODULE_4___default.a.button, " mr20"),\n onClick: onCancel\n }, cancelText), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_3___default.a.createElement(antd_es_button__WEBPACK_IMPORTED_MODULE_2__[/* default */ "a"], Object(_Users_xiejianxiong_xjx_code_zq_ppte5yg23_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_extends__WEBPACK_IMPORTED_MODULE_0__[/* default */ "a"])({\n size: "large",\n type: "primary",\n className: "".concat(_index_less_modules__WEBPACK_IMPORTED_MODULE_4___default.a.button, " mr20"),\n loading: loading,\n onClick: onOk\n }, okButtonProps), okText)));\n};\n\n//# sourceURL=webpack:///./src/components/FixedButton/index.tsx?')},BjJ7:function(module,__webpack_exports__,__webpack_require__){"use strict";eval('/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "d", function() { return isCompileOk; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "c", function() { return getTreeData; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "f", function() { return processTreeData; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "b", function() { return debounce; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "e", function() { return isProd; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "a", function() { return apiPref; });\nfunction isCompileOk(rs) {\n var flag = true;\n\n if (rs.length > 0) {\n for (var i = 0; i < rs.length; i++) {\n if (rs[i].compile_success == 0 || !rs[i].compile_success) {\n flag = false;\n break;\n }\n }\n } else {\n flag = false;\n }\n\n return flag;\n}\nfunction getTreeData(data) {\n var parentKey = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : \'\';\n var result = [];\n\n for (var i = 0; i < data.length; i++) {\n var item = data[i];\n var key = parentKey ? "".concat(parentKey, "/").concat(item.name) : "".concat(item.name);\n result.push({\n title: item.name,\n isLeaf: item.type === \'tree\' ? false : true,\n key\n });\n }\n\n return result;\n}\nfunction processTreeData(repos, key, newData) {\n for (var i = 0; i < repos.length; i++) {\n var item = repos[i];\n\n if (item.key === key) {\n item.children = newData;\n break;\n }\n\n if (item.children) {\n processTreeData(item.children, key, newData);\n }\n }\n\n return repos;\n}\nfunction debounce(func, wait, immediate) {\n var timeout;\n return function () {\n var context = this,\n args = arguments;\n\n var later = function later() {\n timeout = null;\n if (!immediate) func.apply(context, args);\n };\n\n var callNow = immediate && !timeout;\n clearTimeout(timeout);\n timeout = setTimeout(later, wait);\n if (callNow) func.apply(context, args);\n };\n}\nvar isProd = window.location.href.indexOf(\'test-\') > 0 || window.location.href.indexOf(\'localhost\') > 0 ? false : true;\nvar apiPref = isProd ? \'https://www.educoder.net\' : \'https://test-newweb.educoder.net\';\n\n//# sourceURL=webpack:///./src/pages/tasks/util.js?')},CJF0:function(module,__webpack_exports__,__webpack_require__){"use strict";eval('/* harmony import */ var antd_es_row_style__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("14J3");\n/* harmony import */ var antd_es_row__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("BMrR");\n/* harmony import */ var antd_es_button_style__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__("+L6B");\n/* harmony import */ var antd_es_button__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__("2/Rp");\n/* harmony import */ var antd_es_col_style__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__("jCWc");\n/* harmony import */ var antd_es_col__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__("kPKH");\n/* harmony import */ var _Users_xiejianxiong_xjx_code_zq_ppte5yg23_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__("PpiC");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__("q1tI");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_7__);\n/* harmony import */ var umi__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__("WHYC");\n/* harmony import */ var umi__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__("9kvl");\n/* harmony import */ var umi__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__("uYtH");\n/* harmony import */ var _index_less_modules__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__("nZ20");\n/* harmony import */ var _index_less_modules__WEBPACK_IMPORTED_MODULE_11___default = /*#__PURE__*/__webpack_require__.n(_index_less_modules__WEBPACK_IMPORTED_MODULE_11__);\n\n\n\n\n\n\n\n\n\n\n\nvar EditHead = (_ref) => {\n var _shixunsDetail$detail, _shixunsDetail$detail2, _shixunsDetail$detail3, _shixunsDetail$detail4;\n\n var shixunsDetail = _ref.shixunsDetail,\n dispatch = _ref.dispatch,\n loading = _ref.loading,\n match = _ref.match,\n _ref$data = _ref.data,\n data = _ref$data === void 0 ? {} : _ref$data,\n title = _ref.title,\n props = Object(_Users_xiejianxiong_xjx_code_zq_ppte5yg23_node_modules_umijs_babel_preset_umi_node_modules_babel_runtime_helpers_esm_objectWithoutProperties__WEBPACK_IMPORTED_MODULE_6__[/* default */ "a"])(_ref, ["shixunsDetail", "dispatch", "loading", "match", "data", "title"]);\n\n var params = Object(umi__WEBPACK_IMPORTED_MODULE_8__[/* useParams */ "m"])();\n var showAddButton = !(((_shixunsDetail$detail = shixunsDetail.detail) === null || _shixunsDetail$detail === void 0 ? void 0 : _shixunsDetail$detail.identity) > 4 || ((_shixunsDetail$detail2 = shixunsDetail.detail) === null || _shixunsDetail$detail2 === void 0 ? void 0 : _shixunsDetail$detail2.identity) === undefined || ((_shixunsDetail$detail3 = shixunsDetail.detail) === null || _shixunsDetail$detail3 === void 0 ? void 0 : _shixunsDetail$detail3.shixun_status) === 2 || ((_shixunsDetail$detail4 = shixunsDetail.detail) === null || _shixunsDetail$detail4 === void 0 ? void 0 : _shixunsDetail$detail4.shixun_status) === 1);\n return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_7___default.a.createElement("aside", {\n className: "bg-white mb10 pl20 pr20 ".concat(_index_less_modules__WEBPACK_IMPORTED_MODULE_11___default.a.wrap)\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_7___default.a.createElement(antd_es_row__WEBPACK_IMPORTED_MODULE_1__[/* default */ "a"], {\n gutter: [20, 20],\n align: "middle"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_7___default.a.createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"], {\n flex: 1\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_7___default.a.createElement("span", {\n className: _index_less_modules__WEBPACK_IMPORTED_MODULE_11___default.a.icons\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_7___default.a.createElement("img", {\n src: __webpack_require__("csWT"),\n width: "14"\n })), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_7___default.a.createElement("span", {\n className: "font16"\n }, "\\u7B2C ", data === null || data === void 0 ? void 0 : data.position, " \\u5173\\uFF1A", title)), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_7___default.a.createElement(antd_es_col__WEBPACK_IMPORTED_MODULE_5__[/* default */ "a"], null, (data === null || data === void 0 ? void 0 : data.prev_challenge) && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_7___default.a.createElement(antd_es_button__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"], {\n type: "primary",\n ghost: true,\n className: "mt10 mr5",\n onClick: () => {\n var _data$prev_challenge;\n\n var stUrl = data.prev_challenge.st === 0 ? \'/editcheckpoint\' : \'/editquestion\';\n var url = "/shixuns/".concat(params.id, "/challenges/").concat(data === null || data === void 0 ? void 0 : (_data$prev_challenge = data.prev_challenge) === null || _data$prev_challenge === void 0 ? void 0 : _data$prev_challenge.id).concat(stUrl);\n umi__WEBPACK_IMPORTED_MODULE_9__[/* history */ "c"].replace(url);\n }\n }, "\\u4E0A\\u4E00\\u5173"), data.next_challenge && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_7___default.a.createElement(antd_es_button__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"], {\n type: "primary",\n ghost: true,\n className: "mt10 mr5",\n onClick: () => {\n var _data$next_challenge;\n\n var stUrl = data.next_challenge.st === 0 ? \'/editcheckpoint\' : \'/editquestion\';\n var url = "/shixuns/".concat(params.id, "/challenges/").concat(data === null || data === void 0 ? void 0 : (_data$next_challenge = data.next_challenge) === null || _data$next_challenge === void 0 ? void 0 : _data$next_challenge.id).concat(stUrl);\n umi__WEBPACK_IMPORTED_MODULE_9__[/* history */ "c"].replace(url);\n }\n }, "\\u4E0B\\u4E00\\u5173"), showAddButton && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_7___default.a.createElement(antd_es_button__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"], {\n type: "primary"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_7___default.a.createElement(umi__WEBPACK_IMPORTED_MODULE_10__["Link"], {\n to: "/shixuns/".concat(params.id, "/challenges/newquestion")\n }, "\\u65B0\\u589E\\u9009\\u62E9\\u9898\\u4EFB\\u52A1")), showAddButton && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_7___default.a.createElement(antd_es_button__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"], {\n type: "primary",\n className: "ml5"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_7___default.a.createElement(umi__WEBPACK_IMPORTED_MODULE_10__["Link"], {\n to: "/shixuns/".concat(params.id, "/challenges/new")\n }, "\\u65B0\\u589E\\u5B9E\\u8DF5\\u4EFB\\u52A1")), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_7___default.a.createElement(antd_es_button__WEBPACK_IMPORTED_MODULE_3__[/* default */ "a"], {\n type: "primary",\n className: "ml5"\n }, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_7___default.a.createElement(umi__WEBPACK_IMPORTED_MODULE_10__["Link"], {\n to: "/shixuns/".concat(params.id, "/challenges")\n }, "\\u8FD4\\u56DE")))));\n};\n\n/* harmony default export */ __webpack_exports__["a"] = (Object(umi__WEBPACK_IMPORTED_MODULE_9__[/* connect */ "a"])((_ref2) => {\n var shixunsDetail = _ref2.shixunsDetail,\n newCourse = _ref2.newCourse,\n loading = _ref2.loading,\n globalSetting = _ref2.globalSetting;\n return {\n shixunsDetail,\n newCourse,\n globalSetting,\n loading: loading.effects\n };\n})(EditHead));\n\n//# sourceURL=webpack:///./src/pages/Shixuns/Detail/Challenges/components/EditHead/index.tsx?')},E3HF:function(module,exports,__webpack_require__){eval('// extracted by mini-css-extract-plugin\nmodule.exports = {"flex_box_center":"flex_box_center___9yD0l","flex_space_between":"flex_space_between___12_t1","flex_box_vertical_center":"flex_box_vertical_center____RzXy","flex_box_center_end":"flex_box_center_end___w5V55","flex_box_column":"flex_box_column___1O69H","bg":"bg___1SAB4","flexRow":"flexRow___TGonw","flexJustifyCenter":"flexJustifyCenter___FdZYv","flexAlignEnd":"flexAlignEnd___2MQGW","flexAlingCenter":"flexAlingCenter___HR4pS","flexAlignCenter":"flexAlignCenter___2tpRP","flexColumn":"flexColumn___2x5QM","formWrap":"formWrap___3nPVX","titleWrap":"titleWrap___2I_px","fieldWrap":"fieldWrap___q51w8","mdWrap":"mdWrap___1_3Z7","backgroundFa":"backgroundFa___3eVc8","button":"button___BK_yA","icons":"icons___FzVfz","navBar":"navBar___3G5De","active":"active___15cJu","tipWrap":"tipWrap___20yI4","tip":"tip___2Y6MS","width300":"width300___-1o3l","popover":"popover___2-F6L","groupWrap":"groupWrap___2_3AK"};\n\n//# sourceURL=webpack:///./src/pages/Shixuns/Detail/Challenges/EditPracticeAnswer/index.less?')},HmJG:function(module,exports,__webpack_require__){eval("// extracted by mini-css-extract-plugin\n\n//# sourceURL=webpack:///./src/components/markdown-editor/upload-image/index.less?")},M8RZ:function(module,__webpack_exports__,__webpack_require__){"use strict";eval('/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__("q1tI");\n/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__("i8i4");\n/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_dom__WEBPACK_IMPORTED_MODULE_1__);\n\n\nvar modalContainer = document.createElement(\'div\');\n/* harmony default export */ __webpack_exports__["a"] = ((_ref) => {\n var children = _ref.children;\n Object(react__WEBPACK_IMPORTED_MODULE_0__["useEffect"])(() => {\n document.body.append(modalContainer);\n return () => {\n try {\n document.body.removeChild(modalContainer);\n } catch (e) {}\n };\n }, []);\n return Object(react_dom__WEBPACK_IMPORTED_MODULE_1__["createPortal"])(children, modalContainer);\n});\n\n//# sourceURL=webpack:///./src/components/modal.tsx?')},Ot1p:function(module,__webpack_exports__,__webpack_require__){"use strict";eval('\n// EXTERNAL MODULE: ./node_modules/antd/es/modal/style/index.js\nvar modal_style = __webpack_require__("2qtc");\n\n// EXTERNAL MODULE: ./node_modules/antd/es/modal/index.js + 10 modules\nvar modal = __webpack_require__("kLXV");\n\n// EXTERNAL MODULE: ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelper.js\nvar createForOfIteratorHelper = __webpack_require__("rAM+");\n\n// EXTERNAL MODULE: ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/helpers/esm/slicedToArray.js + 3 modules\nvar slicedToArray = __webpack_require__("tJVT");\n\n// EXTERNAL MODULE: ./node_modules/react/index.js\nvar react = __webpack_require__("q1tI");\nvar react_default = /*#__PURE__*/__webpack_require__.n(react);\n\n// EXTERNAL MODULE: ./node_modules/codemirror/lib/codemirror.js\nvar codemirror = __webpack_require__("VrN/");\nvar codemirror_default = /*#__PURE__*/__webpack_require__.n(codemirror);\n\n// EXTERNAL MODULE: ./node_modules/resize-observer-polyfill/dist/ResizeObserver.es.js\nvar ResizeObserver_es = __webpack_require__("bdgK");\n\n// EXTERNAL MODULE: ./node_modules/codemirror/lib/codemirror.css\nvar lib_codemirror = __webpack_require__("p77/");\n\n// EXTERNAL MODULE: ./node_modules/codemirror/addon/edit/closetag.js\nvar closetag = __webpack_require__("Bd2K");\n\n// EXTERNAL MODULE: ./node_modules/codemirror/addon/edit/closebrackets.js\nvar closebrackets = __webpack_require__("ELLl");\n\n// EXTERNAL MODULE: ./node_modules/codemirror/addon/display/placeholder.js\nvar display_placeholder = __webpack_require__("19Vz");\n\n// EXTERNAL MODULE: ./node_modules/codemirror/mode/markdown/markdown.js\nvar markdown = __webpack_require__("lZu9");\n\n// EXTERNAL MODULE: ./src/components/markdown-editor/index.less\nvar markdown_editor = __webpack_require__("kSUc");\n\n// EXTERNAL MODULE: ./src/components/RenderHtml/index.tsx + 1 modules\nvar RenderHtml = __webpack_require__("9Bee");\n\n// EXTERNAL MODULE: ./node_modules/@umijs/babel-preset-umi/node_modules/@babel/runtime/helpers/esm/extends.js\nvar esm_extends = __webpack_require__("0Owb");\n\n// EXTERNAL MODULE: ./src/components/markdown-editor/toolbar/index.less\nvar toolbar = __webpack_require__("dejd");\n\n// EXTERNAL MODULE: ./node_modules/@ant-design/icons/es/components/IconFont.js\nvar IconFont = __webpack_require__("R+Pm");\n\n// CONCATENATED MODULE: ./src/components/markdown-editor/toolbar/index.tsx\n\n\n\n\nvar toolbar_IconFont = Object(IconFont["a" /* default */])({\n scriptUrl: \'//at.alicdn.com/t/font_1941035_wtddfbx3cga.js\'\n});\nvar DEFAULTICONS = [{\n title: \'\u7c97\u4f53\',\n icon: \'icon-bold\',\n actionName: \'bold\'\n}, {\n title: \'\u659c\u4f53\',\n icon: \'icon-italic\',\n actionName: \'italic\'\n}, \'|\', {\n title: \'\u65e0\u5e8f\u5217\u8868\',\n icon: \'icon-unorder-list\',\n actionName: \'list-ul\'\n}, {\n title: \'\u6709\u5e8f\u5217\u8868\',\n icon: \'icon-order-list\',\n actionName: \'list-ol\'\n}, \'|\', {\n title: \'\u884c\u5185\u4ee3\u7801\',\n icon: \'icon-code\',\n actionName: \'code\'\n}, {\n title: \'\u4ee3\u7801\u5757\uff08\u591a\u8bed\u8a00\u98ce\u683c\uff09\',\n icon: \'icon-file-code\',\n actionName: \'code-block\'\n}, {\n title: \'\u94fe\u63a5\',\n icon: \'icon-link\',\n actionName: \'link\'\n}, \'|\', {\n title: \'\u884c\u5185\u516c\u5f0f\',\n icon: \'icon-sum\',\n actionName: \'inline-latex\'\n}, {\n title: \'\u591a\u884c\u516c\u5f0f\',\n icon: \'icon-formula\',\n actionName: \'latex\'\n}, \'|\', {\n title: \'\u6dfb\u52a0\u56fe\u7247\',\n icon: \'icon-picture\',\n actionName: \'upload-image\'\n}, {\n title: \'\u8868\u683c\',\n icon: \'icon-table\',\n actionName: \'add-table\'\n}, \'|\', {\n title: \'\u6362\u884c\',\n icon: \'icon-minus\',\n actionName: \'line-break\'\n}, {\n title: \'\u6e05\u7a7a\',\n icon: \'icon-eraser\',\n actionName: \'eraser\'\n}];\n\nfunction AButton(_ref) {\n var onActionCallback = _ref.onActionCallback,\n title = _ref.title,\n icon = _ref.icon,\n actionName = _ref.actionName,\n _ref$className = _ref.className,\n className = _ref$className === void 0 ? \'\' : _ref$className,\n children = _ref.children;\n\n function onAction() {\n onActionCallback(actionName);\n }\n\n return /*#__PURE__*/react_default.a.createElement("a", {\n title: title,\n className: className,\n onClick: onAction\n }, /*#__PURE__*/react_default.a.createElement(toolbar_IconFont, {\n type: icon\n }), children);\n}\n\n/* harmony default export */ var markdown_editor_toolbar = ((_ref2) => {\n var watch = _ref2.watch,\n showNullButton = _ref2.showNullButton,\n onActionCallback = _ref2.onActionCallback;\n var icons = [...DEFAULTICONS, {\n title: "".concat(watch ? \'\u5173\u95ed\u5b9e\u65f6\u9884\u89c8\' : \'\u5f00\u542f\u5b9e\u65f6\u9884\u89c8\'),\n icon: "".concat(watch ? \'icon-eye-slash\' : \'icon-eye\'),\n actionName: \'trigger-watch\'\n }];\n return /*#__PURE__*/react_default.a.createElement("ul", {\n className: "markdown-toolbar-container"\n }, icons.map((item, index) => /*#__PURE__*/react_default.a.createElement("li", {\n key: index\n }, item.actionName ? /*#__PURE__*/react_default.a.createElement(AButton, Object(esm_extends["a" /* default */])({}, item, {\n onActionCallback: onActionCallback\n })) : /*#__PURE__*/react_default.a.createElement("span", {\n className: "v-line"\n }))), showNullButton ? /*#__PURE__*/react_default.a.createElement("li", null, /*#__PURE__*/react_default.a.createElement(AButton, {\n icon: "icon-edit",\n className: "btn-null",\n title: "\\u589E\\u52A0\\u586B\\u7A7A",\n actionName: "add-null-ch",\n onActionCallback: onActionCallback\n }, /*#__PURE__*/react_default.a.createElement("span", {\n className: "fill-tip"\n }, "\\u70B9\\u51FB\\u63D2\\u5165\\b\\u586B\\u7A7A\\u9879"))) : null);\n});\n// EXTERNAL MODULE: ./src/components/modal.tsx\nvar components_modal = __webpack_require__("M8RZ");\n\n// EXTERNAL MODULE: ./node_modules/antd/es/button/style/index.js\nvar button_style = __webpack_require__("+L6B");\n\n// EXTERNAL MODULE: ./node_modules/antd/es/button/index.js\nvar es_button = __webpack_require__("2/Rp");\n\n// EXTERNAL MODULE: ./node_modules/antd/es/form/style/index.js\nvar form_style = __webpack_require__("y8nQ");\n\n// EXTERNAL MODULE: ./node_modules/antd/es/form/index.js + 9 modules\nvar es_form = __webpack_require__("Vl3Y");\n\n// EXTERNAL MODULE: ./node_modules/antd/es/input/style/index.js\nvar input_style = __webpack_require__("5NDa");\n\n// EXTERNAL MODULE: ./node_modules/antd/es/input/index.js + 8 modules\nvar input = __webpack_require__("5rEg");\n\n// CONCATENATED MODULE: ./src/components/markdown-editor/link/index.tsx\n\n\n\n\n\n\n\n\nvar formItemLayout = {\n labelCol: {\n span: 4\n },\n wrapperCol: {\n span: 20\n }\n};\n/* harmony default export */ var markdown_editor_link = ((_ref) => {\n var callback = _ref.callback,\n onCancel = _ref.onCancel;\n\n function onSubmit(values) {\n callback(values);\n }\n\n return /*#__PURE__*/react_default.a.createElement(es_form["a" /* default */], Object(esm_extends["a" /* default */])({}, formItemLayout, {\n initialValues: {\n link: \'http://\',\n title: \'\'\n },\n className: "link-panel",\n onFinish: onSubmit\n }), /*#__PURE__*/react_default.a.createElement(es_form["a" /* default */].Item, {\n label: "\\u94FE\\u63A5\\u5730\\u5740",\n name: "link",\n rules: [{\n required: true,\n message: \'\u8bf7\u8f93\u5165\u94fe\u63a5\u5730\u5740\'\n }]\n }, /*#__PURE__*/react_default.a.createElement(input["a" /* default */], null)), /*#__PURE__*/react_default.a.createElement(es_form["a" /* default */].Item, {\n label: "\\u94FE\\u63A5\\u6807\\u9898",\n name: "title",\n rules: [{\n required: true,\n message: \'\u8bf7\u8f93\u5165\u94fe\u63a5\u6807\u9898\'\n }]\n }, /*#__PURE__*/react_default.a.createElement(input["a" /* default */], null)), /*#__PURE__*/react_default.a.createElement("div", {\n className: "flex-container flex-end"\n }, /*#__PURE__*/react_default.a.createElement(es_button["a" /* default */], {\n type: "primary",\n htmlType: "submit",\n style: {\n marginRight: 10\n }\n }, "\\u786E\\u5B9A"), /*#__PURE__*/react_default.a.createElement(es_button["a" /* default */], {\n type: "ghost",\n onClick: onCancel\n }, "\\u53D6\\u6D88")));\n});\n// EXTERNAL MODULE: ./src/components/markdown-editor/code-block/index.tsx\nvar code_block = __webpack_require__("7ahc");\n\n// EXTERNAL MODULE: ./src/components/markdown-editor/upload-image/index.less\nvar upload_image = __webpack_require__("HmJG");\n\n// EXTERNAL MODULE: ./src/pages/tasks/util.js\nvar util = __webpack_require__("BjJ7");\n\n// CONCATENATED MODULE: ./src/components/markdown-editor/upload-image/index.tsx\n\n\n\n\n\n\n\n\n\n\n\nvar useForm = es_form["a" /* default */].useForm;\nvar upload_image_style = {\n width: 280,\n marginRight: 10\n};\nvar upload_image_formItemLayout = {\n labelCol: {\n span: 5\n },\n wrapperCol: {\n span: 19\n }\n};\n/* harmony default export */ var markdown_editor_upload_image = ((_ref) => {\n var callback = _ref.callback,\n onCancel = _ref.onCancel;\n\n var _useForm = useForm(),\n _useForm2 = Object(slicedToArray["a" /* default */])(_useForm, 1),\n form = _useForm2[0];\n\n function onSubmit(values) {\n callback(values);\n }\n\n function onAddUrl(data) {\n form.setFieldsValue({\n src: "/api/attachments/".concat(data.id)\n });\n }\n\n function onFileChange(e) {\n var file = e.target.files[0];\n uploadImage(file, onAddUrl);\n }\n\n return /*#__PURE__*/react_default.a.createElement(es_form["a" /* default */], Object(esm_extends["a" /* default */])({\n form: form\n }, upload_image_formItemLayout, {\n className: "upload-image-panel",\n onFinish: onSubmit\n }), /*#__PURE__*/react_default.a.createElement(es_form["a" /* default */].Item, {\n label: "\\u56FE\\u7247\\u5730\\u5740",\n required: true\n }, /*#__PURE__*/react_default.a.createElement("div", {\n className: "flex-container"\n }, /*#__PURE__*/react_default.a.createElement(es_form["a" /* default */].Item, {\n noStyle: true,\n name: "src",\n rules: [{\n required: true,\n message: \'\u8bf7\u8f93\u5165\u56fe\u7247\u5730\u5740\'\n }]\n }, /*#__PURE__*/react_default.a.createElement(input["a" /* default */], {\n style: upload_image_style\n })), /*#__PURE__*/react_default.a.createElement(UploadButton, {\n onFileChange: onFileChange\n }))), /*#__PURE__*/react_default.a.createElement(es_form["a" /* default */].Item, {\n label: "\\u56FE\\u7247\\u63CF\\u8FF0",\n name: "alt",\n rules: [{\n required: true,\n message: \'\u8bf7\u8f93\u5165\u56fe\u7247\u63cf\u8ff0\'\n }]\n }, /*#__PURE__*/react_default.a.createElement(input["a" /* default */], {\n style: {\n width: 264\n }\n })), /*#__PURE__*/react_default.a.createElement(es_form["a" /* default */].Item, {\n style: {\n textAlign: "right"\n }\n }, /*#__PURE__*/react_default.a.createElement(es_button["a" /* default */], {\n type: "primary",\n htmlType: "submit",\n style: {\n marginRight: 10\n }\n }, "\\u786E\\u5B9A"), /*#__PURE__*/react_default.a.createElement(es_button["a" /* default */], {\n type: "ghost",\n onClick: onCancel\n }, "\\u53D6\\u6D88")));\n});\n\nfunction UploadButton(_ref2) {\n var onFileChange = _ref2.onFileChange;\n return /*#__PURE__*/react_default.a.createElement("a", {\n className: "upload-button"\n }, "\\u672C\\u5730\\u4E0A\\u4F20", /*#__PURE__*/react_default.a.createElement("input", {\n type: "file",\n accept: "image/*",\n onChange: onFileChange\n }));\n}\n\nfunction uploadImage(file, callback) {\n var formData = new FormData();\n formData.append(\'editormd-image-file\', file);\n formData.append(\'file_param_name\', \'editormd-image-file\');\n formData.append(\'byxhr\', \'true\');\n var xhr = new window.XMLHttpRequest();\n xhr.withCredentials = true;\n xhr.addEventListener(\'load\', function (response) {\n callback(JSON.parse(response.target.responseText));\n }, false);\n xhr.addEventListener(\'error\', function (error) {\n console.error(error);\n }, false);\n xhr.open(\'POST\', "".concat(util["a" /* apiPref */], "/api/attachments.json"));\n xhr.send(formData);\n}\n// EXTERNAL MODULE: ./node_modules/antd/es/input-number/style/index.js\nvar input_number_style = __webpack_require__("giR+");\n\n// EXTERNAL MODULE: ./node_modules/antd/es/input-number/index.js + 1 modules\nvar input_number = __webpack_require__("fyUT");\n\n// EXTERNAL MODULE: ./node_modules/antd/es/radio/style/index.js\nvar radio_style = __webpack_require__("7Kak");\n\n// EXTERNAL MODULE: ./node_modules/antd/es/radio/index.js\nvar es_radio = __webpack_require__("9yH6");\n\n// CONCATENATED MODULE: ./src/components/markdown-editor/add-table-panel/index.tsx\n\n\n\n\n\n\n\n\n\nvar RadioGroup = es_radio["default"].Group;\nvar add_table_panel_style = {\n margin: \'0 8px\'\n};\n/* harmony default export */ var add_table_panel = ((_ref) => {\n var callback = _ref.callback,\n onCancel = _ref.onCancel;\n\n function onSubmit(values) {\n callback(values);\n }\n\n return /*#__PURE__*/react_default.a.createElement(es_form["a" /* default */], {\n className: "add-table-panel",\n initialValues: {\n row: 3,\n col: 2,\n align: \'default\'\n },\n onFinish: onSubmit\n }, /*#__PURE__*/react_default.a.createElement("div", {\n className: "flex-container"\n }, /*#__PURE__*/react_default.a.createElement("span", {\n style: add_table_panel_style\n }, "\\u5355\\u5143\\u683C\\u6570\\uFF1A"), /*#__PURE__*/react_default.a.createElement("span", {\n style: add_table_panel_style\n }, "\\u884C\\u6570"), /*#__PURE__*/react_default.a.createElement(es_form["a" /* default */].Item, {\n name: "row",\n rules: [{\n required: true,\n message: \'\u8bf7\u8f93\u5165\u884c\u6570\'\n }]\n }, /*#__PURE__*/react_default.a.createElement(input_number["a" /* default */], null)), /*#__PURE__*/react_default.a.createElement("span", {\n style: add_table_panel_style\n }, "\\u5217\\u6570"), /*#__PURE__*/react_default.a.createElement(es_form["a" /* default */].Item, {\n name: "col",\n rules: [{\n required: true,\n message: \'\u8bf7\u8f93\u5165\u5217\u6570\'\n }]\n }, /*#__PURE__*/react_default.a.createElement(input_number["a" /* default */], null))), /*#__PURE__*/react_default.a.createElement("div", {\n className: "flex-container",\n style: {\n marginTop: 12\n }\n }, /*#__PURE__*/react_default.a.createElement("span", {\n style: add_table_panel_style\n }, "\\u5BF9\\u9F50\\u65B9\\u5F0F\\uFF1A"), /*#__PURE__*/react_default.a.createElement(es_form["a" /* default */].Item, {\n name: "align"\n }, /*#__PURE__*/react_default.a.createElement(RadioGroup, null, /*#__PURE__*/react_default.a.createElement(es_radio["default"], {\n value: "default"\n }, /*#__PURE__*/react_default.a.createElement("i", {\n className: "fa fa-align-justify"\n })), /*#__PURE__*/react_default.a.createElement(es_radio["default"], {\n value: "left"\n }, /*#__PURE__*/react_default.a.createElement("i", {\n className: "fa fa-align-left"\n })), /*#__PURE__*/react_default.a.createElement(es_radio["default"], {\n value: "center"\n }, /*#__PURE__*/react_default.a.createElement("i", {\n className: "fa fa-align-center"\n })), /*#__PURE__*/react_default.a.createElement(es_radio["default"], {\n value: "right"\n }, /*#__PURE__*/react_default.a.createElement("i", {\n className: "fa fa-align-right"\n }))))), /*#__PURE__*/react_default.a.createElement("div", {\n className: "flex-container flex-end"\n }, /*#__PURE__*/react_default.a.createElement(es_button["a" /* default */], {\n type: "primary",\n htmlType: "submit",\n style: {\n marginRight: 10\n }\n }, \' \', "\\u786E\\u5B9A", \' \'), /*#__PURE__*/react_default.a.createElement(es_button["a" /* default */], {\n type: "ghost",\n onClick: onCancel\n }, \' \', "\\u53D6\\u6D88", \' \')));\n});\n// EXTERNAL MODULE: ./src/.umi-production/core/umiExports.ts + 17 modules\nvar umiExports = __webpack_require__("9kvl");\n\n// CONCATENATED MODULE: ./src/components/markdown-editor/constant.ts\nvar LINK = \'link\';\nvar UPLOAD_IMAGE = \'upload-image\';\nvar CODE_BLOCK = \'code-block\';\nvar ADD_TABLE = \'add-table\';\nvar HRLINE = \'------------\';\nvar ALIGNSIGN = {\n default: HRLINE,\n left: ":".concat(HRLINE),\n center: ":".concat(HRLINE, ":"),\n right: "".concat(HRLINE, ":")\n};\n// EXTERNAL MODULE: ./src/components/useInterval.tsx\nvar useInterval = __webpack_require__("9VGf");\n\n// CONCATENATED MODULE: ./src/components/markdown-editor/index.tsx\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar pending = 0;\nvar TimeTicket = 10;\nvar StorageTimeTicket = 10000;\nvar NULL_CH = \'\u2581\';\n\nfunction processSize(size) {\n return !/^\\d+$/.test(size) ? size : "".concat(size, "px");\n}\n\nvar isMac = navigator.platform.toUpperCase().indexOf(\'MAC\') >= 0;\nvar key = isMac ? \'Cmd\' : \'Ctrl\';\nvar DEFAULTKEYMAP = {\n [key + \'-B\']: \'bold\',\n [key + \'-I\']: \'italic\'\n};\nvar TitleDesc = {\n [LINK]: \'\u6dfb\u52a0\u94fe\u63a5\',\n [CODE_BLOCK]: \'\u6dfb\u52a0\u4ee3\u7801\u5757\',\n [UPLOAD_IMAGE]: \'\u6dfb\u52a0\u56fe\u7247\',\n [ADD_TABLE]: \'\u6dfb\u52a0\u8868\u683c\'\n}; //https://codemirror.net/demo\n//The height can be set through CSS (by giving the .CodeMirror class a height property), or by calling the cm\'s setSize method.\n\n/* harmony default export */ var components_markdown_editor = __webpack_exports__["a"] = ((_ref) => {\n var _ref$defaultValue = _ref.defaultValue,\n defaultValue = _ref$defaultValue === void 0 ? \'\' : _ref$defaultValue,\n onChange = _ref.onChange,\n _ref$width = _ref.width,\n width = _ref$width === void 0 ? \'100%\' : _ref$width,\n _ref$height = _ref.height,\n height = _ref$height === void 0 ? 400 : _ref$height,\n _ref$miniToolbar = _ref.miniToolbar,\n miniToolbar = _ref$miniToolbar === void 0 ? false : _ref$miniToolbar,\n _ref$isFocus = _ref.isFocus,\n isFocus = _ref$isFocus === void 0 ? false : _ref$isFocus,\n watch = _ref.watch,\n _ref$id = _ref.id,\n id = _ref$id === void 0 ? \'markdown-editor-id\' : _ref$id,\n _ref$showResizeBar = _ref.showResizeBar,\n showResizeBar = _ref$showResizeBar === void 0 ? false : _ref$showResizeBar,\n _ref$noStorage = _ref.noStorage,\n noStorage = _ref$noStorage === void 0 ? false : _ref$noStorage,\n _ref$showNullButton = _ref.showNullButton,\n showNullButton = _ref$showNullButton === void 0 ? false : _ref$showNullButton,\n onBlur = _ref.onBlur,\n onCMBeforeChange = _ref.onCMBeforeChange,\n _ref$className = _ref.className,\n className = _ref$className === void 0 ? \'\' : _ref$className,\n _ref$placeholder = _ref.placeholder,\n placeholder = _ref$placeholder === void 0 ? \'\' : _ref$placeholder;\n\n var _useState = Object(react["useState"])(null),\n _useState2 = Object(slicedToArray["a" /* default */])(_useState, 2),\n cm = _useState2[0],\n setCm = _useState2[1];\n\n var _useState3 = Object(react["useState"])(defaultValue),\n _useState4 = Object(slicedToArray["a" /* default */])(_useState3, 2),\n value = _useState4[0],\n setValue = _useState4[1];\n\n var _useState5 = Object(react["useState"])(watch),\n _useState6 = Object(slicedToArray["a" /* default */])(_useState5, 2),\n preview = _useState6[0],\n setPreview = _useState6[1];\n\n var _useState7 = Object(react["useState"])(\'\'),\n _useState8 = Object(slicedToArray["a" /* default */])(_useState7, 2),\n action = _useState8[0],\n setAction = _useState8[1];\n\n var _useState9 = Object(react["useState"])(0),\n _useState10 = Object(slicedToArray["a" /* default */])(_useState9, 2),\n lastedUpdateTime = _useState10[0],\n setLastedUpdateTime = _useState10[1];\n\n var _useState11 = Object(react["useState"])(height),\n _useState12 = Object(slicedToArray["a" /* default */])(_useState11, 2),\n h = _useState12[0],\n setH = _useState12[1];\n\n var _useState13 = Object(react["useState"])(false),\n _useState14 = Object(slicedToArray["a" /* default */])(_useState13, 2),\n tip = _useState14[0],\n setTip = _useState14[1];\n\n var cmEl = Object(react["useRef"])();\n var resizeBarEl = Object(react["useRef"])();\n var previewEl = Object(react["useRef"])();\n Object(react["useEffect"])(() => {\n if (cmEl.current) {\n var instance = codemirror_default.a.fromTextArea(cmEl.current, {\n mode: \'markdown\',\n lineNumbers: miniToolbar ? false : true,\n lineWrapping: true,\n value: defaultValue,\n autoCloseTags: true,\n autoCloseBrackets: true\n });\n\n function onPaste(_, e) {\n var clipboardData = e.clipboardData;\n\n if (clipboardData) {\n var types = clipboardData.types.toString();\n var items = clipboardData.items;\n\n if (types === \'text/html,Files\' || types === \'Files\') {\n var item = items[1];\n\n if (types === \'Files\') {\n item = items[0];\n }\n\n if (item.kind === \'file\' && item.type.match(/^image\\//i)) {\n uploadImage(item.getAsFile(), data => {\n if (data.id) {\n instance.replaceSelection("![,](/api/attachments/".concat(data.id, ")"));\n } else {\n umiExports["c" /* history */].replace(\'/user/login\', {\n from: umiExports["c" /* history */].location.pathname\n });\n }\n });\n }\n } else {\n //toMarkdown ?\n // let html = clipboardData.getData(\'text/html\')\n return true;\n }\n }\n\n return true;\n }\n\n instance.on(\'paste\', onPaste);\n\n function onLayout() {\n var ro = new ResizeObserver_es["default"](entries => {\n var _iterator = Object(createForOfIteratorHelper["a" /* default */])(entries),\n _step;\n\n try {\n for (_iterator.s(); !(_step = _iterator.n()).done;) {\n var entry = _step.value;\n\n if (entry.target.offsetHeight > 0 || entry.target.offsetWidth > 0) {\n instance.setSize(\'100%\', \'100%\');\n instance.refresh();\n }\n }\n } catch (err) {\n _iterator.e(err);\n } finally {\n _iterator.f();\n }\n });\n ro.observe(cmEl.current.parentElement);\n return ro;\n }\n\n var ro = onLayout();\n setCm(instance);\n return () => {\n ro.unobserve(cmEl.current.parentElement);\n instance.off(\'paste\', onPaste);\n };\n }\n }, []); //keymap\n\n Object(react["useEffect"])(() => {\n if (cm) {\n var keymap = [];\n\n var _loop = function _loop() {\n var _ref2 = _Object$entries[_i];\n _ref3 = Object(slicedToArray["a" /* default */])(_ref2, 2);\n var k = _ref3[0];\n var value = _ref3[1];\n var map = {\n [k]: () => {\n onActionCallback(value);\n }\n };\n keymap.push(map);\n cm.addKeyMap(map);\n };\n\n for (var _i = 0, _Object$entries = Object.entries(DEFAULTKEYMAP); _i < _Object$entries.length; _i++) {\n var _ref3;\n\n _loop();\n }\n\n return () => {\n var _iterator2 = Object(createForOfIteratorHelper["a" /* default */])(keymap),\n _step2;\n\n try {\n for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {\n var m = _step2.value;\n cm.removeKeyMap(m);\n }\n } catch (err) {\n _iterator2.e(err);\n } finally {\n _iterator2.f();\n }\n };\n }\n }, [cm]);\n Object(useInterval["a" /* default */])(() => {\n if (!noStorage && lastedUpdateTime > 0) {\n var currentTime = new Date().getTime();\n var lastedValue = window.sessionStorage.getItem(id);\n\n if (currentTime >= lastedUpdateTime + StorageTimeTicket && (!lastedValue || lastedValue !== value)) {\n window.sessionStorage.setItem(id, value);\n setTip(true);\n }\n }\n }, StorageTimeTicket);\n Object(react["useEffect"])(() => {\n setPreview(watch);\n }, [cm, watch]);\n Object(react["useEffect"])(() => {\n if (cm) {\n isFocus && cm.focus();\n }\n }, [cm, isFocus]);\n Object(react["useEffect"])(() => {\n if (preview && cm) {\n var scrollEl = cm.getScrollerElement();\n\n function syncScroll(e) {\n var target = e.target;\n\n if (previewEl.current) {\n previewEl.current.scrollTop = previewEl.current.scrollHeight * target.scrollTop / target.scrollHeight;\n }\n }\n\n scrollEl.addEventListener(\'scroll\', syncScroll);\n return () => {\n scrollEl.removeEventListener(\'scroll\', syncScroll);\n };\n }\n }, [cm, preview]);\n Object(react["useEffect"])(() => {\n if (cm && onCMBeforeChange) {\n function onChangeHandler(cm, change) {\n onCMBeforeChange(cm, change);\n }\n\n cm.on(\'beforeChange\', onChangeHandler);\n return () => {\n cm.off(\'beforeChange\', onChangeHandler);\n };\n }\n }, [cm, onCMBeforeChange]);\n Object(react["useEffect"])(() => {\n if (cm && onBlur) {\n function onBlurHandler() {\n onBlur(cm.getValue());\n }\n\n cm.on(\'blur\', onBlurHandler);\n return () => {\n cm.off(\'blur\', onBlurHandler);\n };\n }\n }, [cm, onBlur]);\n Object(react["useEffect"])(() => {\n if (cm) {\n function onChangeHandler(cm) {\n var content = cm.getValue();\n clearTimeout(pending);\n pending = setTimeout(() => {\n setValue(content);\n setLastedUpdateTime(new Date().getTime());\n cm.getScrollerElement().dispatchEvent(new CustomEvent(\'scroll\'));\n onChange && onChange(content);\n }, TimeTicket);\n }\n\n cm.on(\'change\', onChangeHandler);\n return () => {\n cm.off(\'change\', onChangeHandler);\n };\n }\n }, [cm, onChange]);\n Object(react["useEffect"])(() => {\n if (cm) {\n if (defaultValue === null || defaultValue === undefined) {\n cm.setValue(\'\');\n setValue(\'\');\n } else {\n if (defaultValue !== cm.getValue()) {\n cm.setValue(defaultValue);\n setValue(defaultValue);\n }\n }\n }\n }, [cm, defaultValue]);\n Object(react["useEffect"])(() => {\n if (cm && height) {\n cm.setSize(\'100%\', "calc(".concat(processSize(height), " - ").concat(miniToolbar ? \'28px\' : \'38px\', " )"));\n }\n }, [cm, height]);\n var onActionCallback = Object(react["useCallback"])(actionName => {\n var cursor = cm.getCursor();\n var selection = cm.getSelection();\n var selectionText = selection.split(\'\\n\');\n\n switch (actionName) {\n case \'bold\':\n cm.replaceSelection(\'**\' + selection + \'**\');\n\n if (selection === \'\') {\n cm.setCursor(cursor.line, cursor.ch + 2);\n }\n\n return cm.focus();\n\n case \'italic\':\n cm.replaceSelection(\'*\' + selection + \'*\');\n\n if (selection === \'\') {\n cm.setCursor(cursor.line, cursor.ch + 1);\n }\n\n return cm.focus();\n\n case \'code\':\n cm.replaceSelection(\'`\' + selection + \'`\');\n\n if (selection === \'\') {\n cm.setCursor(cursor.line, cursor.ch + 1);\n }\n\n return cm.focus();\n\n case \'inline-latex\':\n cm.replaceSelection(\'`$$\' + selection + \'$$`\');\n\n if (selection === \'\') {\n cm.setCursor(cursor.line, cursor.ch + 3);\n }\n\n return cm.focus();\n\n case \'latex\':\n cm.replaceSelection("```latex\\n" + selection + "\\n```");\n cm.setCursor(cursor.line + 1, selection.length + 1);\n return cm.focus();\n\n case \'line-break\':\n cm.replaceSelection(\'<br/>\\n\');\n return cm.focus();\n\n case \'list-ul\':\n if (selection === \'\') {\n cm.replaceSelection(\'- \' + selection);\n } else {\n cm.replaceSelection(selectionText.map(item => item === \'\' ? \'\' : "- ".concat(item)).join(\'\\n\'));\n }\n\n return cm.focus();\n\n case \'list-ol\':\n if (selection === \'\') {\n cm.replaceSelection(\'1. \' + selection);\n } else {\n cm.replaceSelection(selectionText.map((item, index) => item === \'\' ? \'\' : "".concat(index + 1, ". ").concat(item)).join(\'\\n\'));\n }\n\n return cm.focus();\n\n case \'add-null-ch\':\n if (selection === \'\') {\n cm.setCursor(cursor.line, cursor.ch + 1);\n }\n\n cm.replaceSelection(NULL_CH);\n return cm.focus();\n\n case \'eraser\':\n cm.setValue(\'\');\n return cm.focus();\n\n case \'trigger-watch\':\n setPreview(!preview);\n return cm.focus();\n\n case LINK:\n setAction(LINK);\n return;\n\n case CODE_BLOCK:\n setAction(CODE_BLOCK);\n return;\n\n case UPLOAD_IMAGE:\n setAction(UPLOAD_IMAGE);\n return;\n\n case ADD_TABLE:\n setAction(ADD_TABLE);\n return;\n\n default:\n throw new Error();\n }\n }, [cm, preview]);\n var ExecutePluginAction = Object(react["useCallback"])(values => {\n setAction(\'\');\n\n switch (action) {\n case LINK:\n var title = values.title,\n link = values.link;\n cm.replaceSelection("[".concat(title, "](").concat(link, ")"));\n return cm.focus();\n\n case CODE_BLOCK:\n var language = values.language,\n content = values.content;\n cm.replaceSelection([\'```\' + language, content, \'```\'].join(\'\\n\'));\n return cm.focus();\n\n case UPLOAD_IMAGE:\n var src = values.src,\n alt = values.alt;\n cm.replaceSelection("![ ".concat(alt, " ]( ").concat(src, " \\"").concat(alt, "\\" )"));\n return cm.focus();\n\n case ADD_TABLE:\n var row = values.row,\n col = values.col,\n align = values.align;\n var table = \'\\n\';\n\n for (var r = 0; r < row; r++) {\n var rows = [];\n var heads = [];\n\n for (var c = 0; c < col; c++) {\n if (r === 1) {\n heads.push(ALIGNSIGN[align]);\n }\n\n rows.push(\' \');\n }\n\n if (r === 1) {\n table += "| ".concat(heads.join(\' | \'), " |\\n");\n }\n\n table += "| ".concat(rows.join(col === 1 ? \'\' : \' | \'), " |\\n");\n }\n\n cm.replaceSelection(table + \'\\n\');\n return cm.focus();\n\n default:\n throw new Error();\n }\n }, [cm, action]);\n var PluginEl = Object(react["useMemo"])(() => {\n switch (action) {\n case LINK:\n return /*#__PURE__*/react_default.a.createElement(markdown_editor_link, {\n callback: ExecutePluginAction,\n onCancel: onCancel\n });\n\n case CODE_BLOCK:\n return /*#__PURE__*/react_default.a.createElement(code_block["b" /* default */], {\n callback: ExecutePluginAction,\n onCancel: onCancel\n });\n\n case UPLOAD_IMAGE:\n return /*#__PURE__*/react_default.a.createElement(markdown_editor_upload_image, {\n callback: ExecutePluginAction,\n onCancel: onCancel\n });\n\n case ADD_TABLE:\n return /*#__PURE__*/react_default.a.createElement(add_table_panel, {\n callback: ExecutePluginAction,\n onCancel: onCancel\n });\n\n default:\n return null;\n }\n }, [action]);\n\n function onCancel() {\n setAction(\'\');\n }\n\n Object(react["useEffect"])(() => {\n if (resizeBarEl.current) {\n var resizeBar = resizeBarEl.current;\n var dragging = false;\n var startY = 0;\n\n function onMouseDown(e) {\n dragging = true;\n startY = e.pageY;\n }\n\n function onMouseUp() {\n dragging = false;\n }\n\n function onMouseMove(e) {\n if (dragging) {\n var delta = e.pageY - startY;\n\n if (delta < 0) {\n delta = 0;\n }\n\n if (delta > 300) {\n delta = 300;\n }\n\n var resizeH = height + delta + \'px\';\n setH(resizeH);\n }\n }\n\n resizeBar.addEventListener(\'mousedown\', onMouseDown);\n document.addEventListener(\'mousemove\', onMouseMove);\n document.addEventListener(\'mouseup\', onMouseUp);\n return () => {\n resizeBar.removeEventListener(\'mousedown\', onMouseDown);\n document.removeEventListener(\'mousemove\', onMouseMove);\n document.removeEventListener(\'mouseup\', onMouseUp);\n };\n }\n }, [cm, resizeBarEl]);\n Object(react["useEffect"])(() => {\n setH(height);\n }, [height]);\n var fixedWidth = processSize(width);\n var fixedHeight = processSize(h);\n var style = {\n width: fixedWidth,\n height: fixedHeight\n };\n var saveTime = Object(react["useMemo"])(() => {\n if (lastedUpdateTime) {\n var d = new Date(lastedUpdateTime);\n\n var _h = d.getHours();\n\n var m = d.getMinutes();\n var s = d.getSeconds();\n _h = _h < 10 ? \'0\' + _h : _h;\n m = m < 10 ? \'0\' + m : m;\n s = s < 10 ? \'0\' + s : s;\n return "".concat(_h, ":").concat(m, ":").concat(s);\n }\n\n return 0;\n }, [lastedUpdateTime]);\n\n function onCancelStorage() {\n window.sessionStorage.removeItem(id);\n setTip(false);\n setLastedUpdateTime(0);\n }\n\n function onReset() {\n setTip(false);\n setLastedUpdateTime(0);\n cm.setValue(window.sessionStorage.getItem(id));\n }\n\n return /*#__PURE__*/react_default.a.createElement(react["Fragment"], null, /*#__PURE__*/react_default.a.createElement("div", {\n className: "markdown-editor-container ".concat(className, " ").concat(preview ? \'on-preview\' : \'\', " ").concat(miniToolbar ? \'mini\' : \'\'),\n style: style\n }, /*#__PURE__*/react_default.a.createElement(markdown_editor_toolbar, {\n watch: preview,\n showNullButton: showNullButton,\n onActionCallback: onActionCallback\n }), /*#__PURE__*/react_default.a.createElement("div", {\n className: "markdown-editor-body"\n }, /*#__PURE__*/react_default.a.createElement("div", {\n className: "codemirror-container"\n }, /*#__PURE__*/react_default.a.createElement("textarea", {\n ref: cmEl,\n placeholder: placeholder\n })), preview ? /*#__PURE__*/react_default.a.createElement("div", {\n ref: previewEl,\n className: "preview-container"\n }, /*#__PURE__*/react_default.a.createElement(RenderHtml["a" /* default */], {\n value: value\n })) : null)), tip ? /*#__PURE__*/react_default.a.createElement("div", {\n className: "markdown-tip"\n }, "\\u60A8\\u4E0A\\u6B21\\u6709\\u5DF2\\u4FDD\\u5B58\\u7684\\u6570\\u5E74\\uFF0C\\u662F\\u5426", /*#__PURE__*/react_default.a.createElement("a", {\n onClick: onReset\n }, "\\u6062\\u590D"), " ? /", \' \', /*#__PURE__*/react_default.a.createElement("a", {\n onClick: onCancelStorage\n }, "\\u4E0D\\u6062\\u590D"), " \\uFF08\\u6570\\u636E\\u5DF2\\u4E8E ", saveTime, " \\u4FDD\\u5B58\\uFF09") : null, showResizeBar ? /*#__PURE__*/react_default.a.createElement("a", {\n ref: resizeBarEl,\n className: "editor-resize"\n }) : null, /*#__PURE__*/react_default.a.createElement(components_modal["a" /* default */], null, TitleDesc[action] ? /*#__PURE__*/react_default.a.createElement(modal["a" /* default */], {\n centered: true,\n title: TitleDesc[action],\n visible: true,\n onCancel: onCancel,\n footer: null\n }, PluginEl) : null));\n});\n\n//# sourceURL=webpack:///./src/components/markdown-editor/index.tsx_+_5_modules?')},UUDw:function(module,exports,__webpack_require__){eval('// extracted by mini-css-extract-plugin\nmodule.exports = {"buttonFixed":"buttonFixed___2zLVJ","button":"button___-JgFH","buttonWrap":"buttonWrap___aZhhk"};\n\n//# sourceURL=webpack:///./src/components/FixedButton/index.less?')},csWT:function(module,exports,__webpack_require__){eval('module.exports = __webpack_require__.p + "static/choose.4ad1045f.svg";\n\n//# sourceURL=webpack:///./src/assets/images/icons/choose.svg?')},dejd:function(module,exports,__webpack_require__){eval("// extracted by mini-css-extract-plugin\n\n//# sourceURL=webpack:///./src/components/markdown-editor/toolbar/index.less?")},kSUc:function(module,exports,__webpack_require__){eval("// extracted by mini-css-extract-plugin\n\n//# sourceURL=webpack:///./src/components/markdown-editor/index.less?")},nZ20:function(module,exports,__webpack_require__){eval('// extracted by mini-css-extract-plugin\nmodule.exports = {"icons":"icons___3O80F"};\n\n//# sourceURL=webpack:///./src/pages/Shixuns/Detail/Challenges/components/EditHead/index.less?')}}]);