"use strict"; (self["webpackChunk"] = self["webpackChunk"] || []).push([[34994],{ /***/ 62752: /*!*********************************************************!*\ !*** ./src/components/CustomTree/index.tsx + 1 modules ***! \*********************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { // EXPORTS __webpack_require__.d(__webpack_exports__, { "Z": function() { return /* binding */ components_CustomTree; } }); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/objectSpread2.js var objectSpread2 = __webpack_require__(42122); var objectSpread2_default = /*#__PURE__*/__webpack_require__.n(objectSpread2); // EXTERNAL MODULE: ./node_modules/antd/es/tree/style/index.js + 1 modules var style = __webpack_require__(62216); // EXTERNAL MODULE: ./node_modules/antd/es/tree/index.js + 9 modules var tree = __webpack_require__(54205); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/regeneratorRuntime.js var regeneratorRuntime = __webpack_require__(17061); var regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(regeneratorRuntime); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/asyncToGenerator.js var asyncToGenerator = __webpack_require__(17156); var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/slicedToArray.js var slicedToArray = __webpack_require__(27424); var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/objectWithoutProperties.js var objectWithoutProperties = __webpack_require__(70215); var objectWithoutProperties_default = /*#__PURE__*/__webpack_require__.n(objectWithoutProperties); // EXTERNAL MODULE: ./node_modules/react/index.js var react = __webpack_require__(67294); // EXTERNAL MODULE: ./src/service/problemset.ts var problemset = __webpack_require__(75968); ;// CONCATENATED MODULE: ./src/components/CustomTree/index.less?modules // extracted by mini-css-extract-plugin /* harmony default export */ var CustomTreemodules = ({"flex_box_center":"flex_box_center___SFmJH","flex_space_between":"flex_space_between___f2H1D","flex_box_vertical_center":"flex_box_vertical_center___hW_hp","flex_box_center_end":"flex_box_center_end___yklmJ","flex_box_column":"flex_box_column___m0oUw","customTree":"customTree___ZhEHU","name":"name___RIkn2"}); // EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js var jsx_runtime = __webpack_require__(85893); ;// CONCATENATED MODULE: ./src/components/CustomTree/index.tsx var _excluded = ["value", "onChange", "defaultValue", "disabled"]; var CustomTree = function CustomTree(_ref) { var value = _ref.value, onChange = _ref.onChange, defaultValue = _ref.defaultValue, disabled = _ref.disabled, props = objectWithoutProperties_default()(_ref, _excluded); var _useState = (0,react.useState)([]), _useState2 = slicedToArray_default()(_useState, 2), treeData = _useState2[0], setTreeData = _useState2[1]; var _useState3 = (0,react.useState)('1'), _useState4 = slicedToArray_default()(_useState3, 2), keyIndex = _useState4[0], setKeyIndex = _useState4[1]; // const sign = useRef(true) (0,react.useEffect)(function () { getData(); }, []); var getData = /*#__PURE__*/function () { var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() { var res, item; return regeneratorRuntime_default()().wrap(function _callee$(_context) { while (1) switch (_context.prev = _context.next) { case 0: _context.next = 2; return (0,problemset/* getPaperList */.NZ)({}); case 2: res = _context.sent; // setFolderLoading(false) if (res !== null && res !== void 0 && res.data) { item = [{ title: /*#__PURE__*/(0,jsx_runtime.jsx)("div", { title: '根目录', className: CustomTreemodules.name, children: "\u6839\u76EE\u5F55" }), value: 0, key: 0, icon: /*#__PURE__*/(0,jsx_runtime.jsx)("i", { className: "iconfont icon-wenjianjia2 c-light-primary mr10", style: { lineHeight: '19px' } }), children: transformTreeKey(res.data || []) }]; setTreeData(item); setKeyIndex('2'); } case 4: case "end": return _context.stop(); } }, _callee); })); return function getData() { return _ref2.apply(this, arguments); }; }(); var transformTreeKey = function transformTreeKey(items) { function mapTree(org) { var realChildren = org.children; var haveChildren = Array.isArray(realChildren) && realChildren.length > 0; var key = org === null || org === void 0 ? void 0 : org.group_id; return { //分别将我们查询出来的值做出改变他的key title: /*#__PURE__*/(0,jsx_runtime.jsx)("div", { title: org === null || org === void 0 ? void 0 : org.name, className: CustomTreemodules.name, children: org === null || org === void 0 ? void 0 : org.name }), value: key, key: key, icon: /*#__PURE__*/(0,jsx_runtime.jsx)("i", { className: "iconfont icon-wenjianjia2 c-light-primary mr10", style: { lineHeight: '19px' } }), //判断它是否存在子集,若果存在就进行再次进行遍历操作,知道不存在子集便对其他的元素进行操作 children: haveChildren ? realChildren === null || realChildren === void 0 ? void 0 : realChildren.map(function (e) { return mapTree(e); }) : [] }; } return items === null || items === void 0 ? void 0 : items.map(function (org) { return mapTree(org); }); }; var param = defaultValue ? { defaultExpandedKeys: [0] } : { selectedKeys: value, defaultExpandedKeys: value }; return /*#__PURE__*/(0,jsx_runtime.jsx)("div", { className: CustomTreemodules.customTree, children: /*#__PURE__*/(0,jsx_runtime.jsx)(tree/* default */.Z, objectSpread2_default()(objectSpread2_default()({}, param), {}, { showIcon: true, treeData: treeData, onSelect: onChange, disabled: disabled }, props), keyIndex) }); }; /* harmony default export */ var components_CustomTree = (CustomTree); /***/ }), /***/ 90525: /*!********************************************************!*\ !*** ./src/components/Knowledge/index.tsx + 2 modules ***! \********************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { // EXPORTS __webpack_require__.d(__webpack_exports__, { "N": function() { return /* binding */ Knowledge; } }); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/regeneratorRuntime.js var regeneratorRuntime = __webpack_require__(17061); var regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(regeneratorRuntime); // EXTERNAL MODULE: ./node_modules/antd/es/message/style/index.js + 1 modules var style = __webpack_require__(14934); // EXTERNAL MODULE: ./node_modules/antd/es/message/index.js + 1 modules var message = __webpack_require__(12461); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/asyncToGenerator.js var asyncToGenerator = __webpack_require__(17156); var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator); // EXTERNAL MODULE: ./node_modules/antd/es/input/style/index.js + 1 modules var input_style = __webpack_require__(69463); // EXTERNAL MODULE: ./node_modules/antd/es/input/index.js + 5 modules var input = __webpack_require__(75008); // EXTERNAL MODULE: ./node_modules/antd/es/modal/style/index.js + 1 modules var modal_style = __webpack_require__(35611); // EXTERNAL MODULE: ./node_modules/antd/es/modal/index.js + 7 modules var modal = __webpack_require__(85402); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/toConsumableArray.js var toConsumableArray = __webpack_require__(861); var toConsumableArray_default = /*#__PURE__*/__webpack_require__.n(toConsumableArray); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/slicedToArray.js var slicedToArray = __webpack_require__(27424); var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray); // EXTERNAL MODULE: ./node_modules/antd/es/select/style/index.js + 1 modules var select_style = __webpack_require__(95985); // EXTERNAL MODULE: ./node_modules/antd/es/select/index.js var es_select = __webpack_require__(34041); // EXTERNAL MODULE: ./node_modules/react/index.js var react = __webpack_require__(67294); // EXTERNAL MODULE: ./src/utils/fetch.ts var fetch = __webpack_require__(84519); ;// CONCATENATED MODULE: ./src/components/Knowledge/index.less?modules // extracted by mini-css-extract-plugin /* harmony default export */ var Knowledgemodules = ({"wrap":"wrap___F7E3F","addKnowledge":"addKnowledge___LyKCQ","disabled":"disabled___P1Ph9"}); ;// CONCATENATED MODULE: ./src/components/Knowledge/icon.png var icon_namespaceObject = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGwAAABsCAYAAACPZlfNAAALdklEQVR4Xu2dC2wc1RVAzx1nDXFiO4SEhqxtxS0JHzX94TS0FEKLALX8WkKbqrRVKQrh15Zfq0IqIaSGSOXb8ktANFJbKqUFWigEAUohfFRQDC1KxS8UR/7wDbZ3TRxix3urN951No7Xnt15M7Mbz0hRImXevffds/PmzXv33StU0KWqTlcfh6mwkCHmq8M8B5oUZosyS6EeOCD7x/Rsl/kjkFJhu8AHGWiXDNuoYqsoW5K1vCkimUpxg5SzoW+r1gylOUGErygci9IC1Fi2uR+hVeA5VZ6tquOpuSL9lnVYE1d2wNo+0jnVylLNcKYKx6EcaK23XgQJH4vyjDg8OCDc3zxd3vXSLKx7ygJYW5seOGUmZ6GcJ8IShaqwHDCeHoEhVTYh3LO7mweam+XjqO2KFNjWPp09VblUlQuAmVE7YwL93SKs2SncMr9WPojK1kiAdWzXpCa40oHlCtOi6nwpegV2ZOBuGeSGxlnSVYoMP21CBfZmnx5SneFagXPzZnJ+7I+y7S6FdQMO1xxWK++HZUgowNzpeIoVKqwCDgqrcyHp6RFlZbKetWF8HgQOrD2liwTuAHdKvj9frVVTuHDuNGkNspOBAWtt1cShC1ilcLlqecz6gnSkkS3CkMBN77zBypYWGQxCXyDAuvq1KTPIeuCYIIyuAJnPOwmWJWuk3bat1oF1pfWMjLKuAqbptn05Wl63I5ybrJOHbCqyCqw9ratEucqMDjaNrGBZqsLqpjpZaasPVhyrqlVdKe5Wcafr8TXKA6KsS9azXESG/DrHN7CODp0qdaxXON2vMftze4F/aJpljY2y008/fQFr69EZCYeH3ZX0+JrQA2ZHYDDDac0HSe+ENxe4oWRg2SfriRhWca53t3HSnFTqk1YSMPedleZv8TBYHKzc3WZ4TNbxrVLeaSUB6+zV38cTjNJgjUBT1jXMkB8XK6VoYNmp+9XFKorv39cDKlxX7JS/KGDZj+K/x99Z1n5+6gjfLObj2jOw7HLTv+MVDGuwcoK6nQSf97qM5QmYWcj9xHyensRrg9YpjRL4/HtbOd7LgrEnYF1p/U1G+XnQVk9m+Y5wfbJOfjGRDyYEZvazHOFfk2WLZCKHBfX/Zmsmo3ypqV42j6djXGBmp7gzzQuTYPMxKA7Fym1tqGPxeDvX4wLr7NULVdzd4vgKyQOiXNQwQ+4spK4gMBMwc0CG1/bDGIyQXF+ymp5dDkcUCuwpCKwzpXcqbrxgfIXsAYU1TfVy4VhqxwRm4gZJ8L/9IBQtZFdbU7eLQT41VtzjmMDaU3qzwKXW1MeCivaAwi1N9XLZ6Ib7AHPDpzO0hRmR+/L78Ict8J93IT1QdN+sN6irhs/NgR8uhM8eYl28J4EmwninQ/PosPB9gHWmdZUqoS3u/uUVuPEFKMcDWg5wxWL4zlGefGz9JhGuaxgVD7IXsOwpEhMvHsrBBPNknf9IecLKed9Au+vUyJ607t3dJPNPzewFrCOl3wPutf5TKSDwio3wdF7k3imfhMNnugGZkV2q8Ho3PPbWHhOOb4IbT4zMpHMa6+XPOe17A+vVjQhfC8u0E+/d884ysH69JCzNE+v51aY90Mw7beM5E7cJ5A7ln40zZOTnMgLMnHxMDNEZ5mG6RSbcNHv9tAV+sDCQLpck9I9b4Hd5UfKbIwrgM4cKB6toyJ0EHQHWkdJLgFtL6l2JjfKB/WwRfP/TJQoKoNmf/gu/zVuGjQqY6ZrjcEmyVm43/x4B1pnSxxVOCqDvBUXGwLx5W+CJhno5eQSYe1q/jw/DPgAeA/MGDOHjqloONtkN3CesI6XfAB7x2NzabV6B3fca3LoZ+ndbU+0KmpaAn7TA0iP2lVtOQ2LWulMb62WDC6wzrdfp8CGGUC+vwL56L3wU0ArI9Gp4cowZYLkBE2F1Q51cPfyEpXUTyvGh0gK8ArvgUXgxoGwZX5gDa79eAU+Y8HRjnSyR7K5yXwAZZibk7xXYjkHY2Abmb5uXGRJPnAfTqisAGPQ31FErnWldoMrrNh3hVZZXYF7l2byv3IZEd4YoHC4dfbqUDPfZ7KxXWTEwr57K3udwtnT06i8RVhfZ1MrtMbAi3ahcJe1pXSPKiiKbWrk9BlacG1VYa95hG1QZY55UnLBS7vYK7JXtwxuc/ZYnHTWJ4U3Ko2ZVxKTDvMMelY60bs7mISzF577aeAV25l/h7Y98qSrYeO50ePDblQHMzevYmVITDjAvGHeMLzUGVpzXBbZJR0p7gBnFNbVzt1dgr+aGRMtLUzVThofEI8cYEh9/C1ZuGu7n7BrYsMxOn31K6TXAdkTx0WwM9wrMZydLaj6UgTtegje64UefgaPnlCTGdqN+A8z8biPJAFrOwGx72pK8oRiYJU+GJMYFFg+JIXnbghp3SOyO6sCD1yFxxwBs3BbA4m91dvE3YcGV4YjoqYhp/YpH4aWAtlfMZGJNJMsGxRMentZXwIdzFBuYxbszhBbuh3MFLE25IQKtwSxNmRCBs8cIEQjB/UWrcJem4sXfvf32Qhdc8jjcdjIsThbt00AbuIu/8fZK5QDDbK/EG5gVBMxsYMYhApUDzA0RqIQgnEBfDKOEl/E7bDgIx9hb7mFuMTA3qH44zM04o9wDSWNgbsRUXiBpmYdq2wZmhr1C16sfwu0vwsVHw5EHF74vgin/nlDtcjgMEeb5sPw1zFJ/DKEePxp9GMIdFiM4bhTVCUyvT9gR4zxhx4T4Ub3PcSMDrKtPL85kuK3UX1wp7fyccTaHGE5uBhP5ZPMqx1nimAf6ojgy+/J7cP6G0rMILJ4Lt51iExeUG7CCR2bd6X3Ih9KNTj95OmZOhce+u38Do9ChdBdYyGkfcq4uJRPO9ARc9kU4Y8F+DgwKp30IO7GKXVfbkVZmQ+L4iVWyH9Ghpi6y42Z7UsoJ2ISpi0y3o0gOZs/d/iWVCzDPycFMl+P0e/7B+5XgOf2eO/mIE1z69bff9sUluMw+ZXdKnELWr+NLal90ClmjJU7SXJKvbTQqLUmzO2OM06DbAFCUjJLToBstcaGBonxt42Z/hQay77K4lIcNFBPIsFLKI6cjLpYTBjGub7RRLMeYGpejChyY3XJUxty44Ftg0OwXfMsbGs/IKHFJRXvsgiupmLMxLlpqkVbQRUtzpsZlgf1Dk7DKAme/z+LC2z6YhV54210g7tCpUkdc2r5IcJGUts/Z2NajMxIODyscW6Tdk/J2A2sww2nNB0lvqQ7wXTQj+6StVzi9VCMmQzszDGqaZY2NstNPf30DM8qfVJ0yP8VdKkRUP8GPC4JvayYYyXqWi8iQX21WgI2a8pvs3Fbl+u1khO1VhdVNo0pK+bHHumO70mo+rk1VlVBKWvnpfMBtux3h3GSdPGRTj3VgectY64FjbBpbQbKedxIsS9ZIXrEtO9YHAsyYZhaMD13AKoXLJ0uVdbNFInDTO2+wsqVFLOdPHQYeGLCR91pKFwlu8e4WO7+xspXSqnDRRKXp/VofODBjoNm57kqxQoVVUeW18uuocdr3iLIyWc/a8UrS29IfCrCcsSawpzrDtYI7/T/AVicikrNLYd2AwzWFqpoHYVeowHIdMHGPmuBKB5aHWX7YhgNNRG4G7pZBbhirMLYNHePJiARYziA3LFy5VJULKuAzoFuENTuFW0bXVg4aUr78SIHlDMmemjkL5TwRloRZh3OCX/OQKpsQ7tndzQP55XnDhFR2wPINMidBq5WlmuFMFY4Lu2qgqYYnyjPi8OCAcH+uWGhUgEbrLYsnrJAz3OwGaU5AOQ6HL2cLItRYdl6/m8AfnlPl2ao6njKlCy3rsCaurIGN7qX7edDHYSosZIj56jDPgSaF2aLM0uH8+6YaWG4GugsYEOhVYbvABxlolwzbqGKrKFuStbwZxnTcFrH/A8wNv8JI/KKJAAAAAElFTkSuQmCC"; // EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js var jsx_runtime = __webpack_require__(85893); ;// CONCATENATED MODULE: ./src/components/Knowledge/index.tsx var Option = es_select/* default.Option */.Z.Option; var Knowledge = function Knowledge(_ref) { var subId = _ref.subId, value = _ref.value, selectvalues = _ref.selectvalues, disabled = _ref.disabled, _ref$knowledgeOptions = _ref.knowledgeOptions, knowledgeOptions = _ref$knowledgeOptions === void 0 ? [] : _ref$knowledgeOptions, _ref$onChange = _ref.onChange, onChange = _ref$onChange === void 0 ? function () {} : _ref$onChange, _ref$onAddKnowledgeFi = _ref.onAddKnowledgeFinish, onAddKnowledgeFinish = _ref$onAddKnowledgeFi === void 0 ? function () {} : _ref$onAddKnowledgeFi; var addValue = (0,react.useRef)(); var _useState = (0,react.useState)([]), _useState2 = slicedToArray_default()(_useState, 2), values = _useState2[0], setValues = _useState2[1]; value = value || []; var handleChange = function handleChange(e, valuesmap) { if (e) { //获取选中的数据 setValues([valuesmap.key]); onChange([valuesmap.key]); } else { //获取选中的数据 setValues([]); onChange([]); } }; (0,react.useEffect)(function () { if ((selectvalues === null || selectvalues === void 0 ? void 0 : selectvalues.length) > 0) { setValues(toConsumableArray_default()(selectvalues)); onChange(toConsumableArray_default()(selectvalues)); } }, [knowledgeOptions]); (0,react.useEffect)(function () { var _value; if (((_value = value) === null || _value === void 0 ? void 0 : _value.length) > 0) { onChange(toConsumableArray_default()(value)); } }, [knowledgeOptions]); var handleAdd = function handleAdd(e) { e.preventDefault(); addValue.current = ''; modal/* default.confirm */.Z.confirm({ centered: true, width: 700, okText: '确定', cancelText: '取消', icon: null, title: '新建知识点', className: 'custom-modal-divider', content: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", { className: "font14", children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", { style: { display: 'flex', marginTop: '48px', marginBottom: '36px' }, children: [/*#__PURE__*/(0,jsx_runtime.jsx)("img", { src: icon_namespaceObject, style: { width: '108px', height: "108px", marginRight: '29px' } }), "\u60A8\u586B\u5199\u7684\u77E5\u8BC6\u70B9\u6682\u65F6\u4EC5\u5BF9\u672C\u4EBA\u53EF\u89C1\uFF0C\u5E73\u53F0\u5BA1\u6838\u901A\u8FC7\u540E\u5C06\u5217\u5165\u516C\u5F00\u77E5\u8BC6\u70B9\uFF0C\u5BF9\u6240\u6709\u7528\u6237\u53EF\u89C1\uFF1B", /*#__PURE__*/(0,jsx_runtime.jsx)("br", {}), "\u5E73\u53F0\u5BA1\u6838\u8FC7\u7A0B\u4E2D\u6709\u6743\u5220\u9664\u4E0D\u5408\u9002\u7684\u77E5\u8BC6\u70B9\uFF08\u5305\u62EC\u4F46\u4E0D\u9650\u4E8E\u9519\u8BEF\u3001\u975E\u6CD5\u3001\u4E0D\u96C5\u3001\u4E0D\u5339\u914D\u5F53\u524D\u8BFE\u7A0B\u7B49\u60C5\u5F62\uFF09\uFF0C\u5220\u9664\u540E\u53EF\u80FD\u5F71\u54CD\u60A8\u7684\u8BD5\u9898\u7684\u6B63\u5E38\u4F7F\u7528\u3002", /*#__PURE__*/(0,jsx_runtime.jsx)("br", {}), "\u8BF7\u8BA4\u771F\u586B\u5199\u4E0E\u6559\u5B66\u5185\u5BB9\u76F8\u5173\u7684\u771F\u5B9E\u77E5\u8BC6\u70B9 ", /*#__PURE__*/(0,jsx_runtime.jsx)("br", {})] }), /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z, { className: "mt5", maxLength: 20, style: { marginBottom: '42px' }, placeholder: "\u8BF7\u8F93\u5165\u4E0D\u8D85\u8FC720\u5B57\u7684\u77E5\u8BC6\u70B9\u540D\u79F0", defaultValue: addValue.current, onChange: function onChange(e) { addValue.current = e.target.value; } })] }), onOk: function onOk() { return new Promise( /*#__PURE__*/function () { var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee(resolve, reject) { var res, _value2; return regeneratorRuntime_default()().wrap(function _callee$(_context) { while (1) switch (_context.prev = _context.next) { case 0: if (addValue.current) { _context.next = 3; break; } message/* default.warn */.ZP.warn("请输入知识点名称"); return _context.abrupt("return", reject()); case 3: if (!(addValue.current.length > 20)) { _context.next = 6; break; } message/* default.warn */.ZP.warn("请输入不超过20字的知识点名称"); return _context.abrupt("return", reject()); case 6: _context.next = 8; return (0,fetch/* default */.ZP)("/api/tag_disciplines.json", { method: 'post', body: { name: addValue.current, sub_discipline_id: subId } }); case 8: res = _context.sent; if ((res === null || res === void 0 ? void 0 : res.status) === 0) { onAddKnowledgeFinish({ id: res.tag_discipline_id, name: addValue.current, type: 'personal' }); // values.push(res.tag_discipline_id) // value.push(res.tag_discipline_id) _value2 = []; _value2.push(res.tag_discipline_id); onChange([].concat(_value2)); setValues([res.tag_discipline_id]); onChange([].concat(_value2)); } return _context.abrupt("return", resolve()); case 11: case "end": return _context.stop(); } }, _callee); })); return function (_x, _x2) { return _ref2.apply(this, arguments); }; }()); } }); }; return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", { className: Knowledgemodules.wrap, children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_select/* default */.Z, { disabled: !subId || disabled // mode="multiple" , className: "mr5", style: { width: '242px' }, onChange: handleChange, showSearch: true, allowClear: true // showSearch={true} , value: knowledgeOptions === null || knowledgeOptions === void 0 ? void 0 : knowledgeOptions.filter(function (item) { return (values === null || values === void 0 ? void 0 : values.includes(item === null || item === void 0 ? void 0 : item.id)) || (values === null || values === void 0 ? void 0 : values.includes((item === null || item === void 0 ? void 0 : item.id) + '')); }).map(function (item) { return item.name; }), children: knowledgeOptions === null || knowledgeOptions === void 0 ? void 0 : knowledgeOptions.map(function (item) { return /*#__PURE__*/(0,jsx_runtime.jsx)(Option, { value: item.name, children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", { style: { display: 'flex', justifyContent: 'space-between' }, children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", { style: { overflow: "hidden", whiteSpace: "nowrap", textOverflow: "ellipsis" }, children: item.name }), /*#__PURE__*/(0,jsx_runtime.jsx)("span", { children: item.type === 'personal' ? '(自用)' : '' })] }) }, item.id); }) }), /*#__PURE__*/(0,jsx_runtime.jsx)("button", { disabled: !subId, className: "".concat(Knowledgemodules.addKnowledge, " ").concat(subId ? '' : Knowledgemodules.disabled), onClick: handleAdd, children: "\u65B0\u5EFA\u77E5\u8BC6\u70B9" })] }); }; /***/ }), /***/ 76695: /*!*************************************************************!*\ !*** ./src/components/SplitContainer/index.tsx + 1 modules ***! \*************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { // EXPORTS __webpack_require__.d(__webpack_exports__, { "Z": function() { return /* binding */ SplitContainer; } }); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/slicedToArray.js var slicedToArray = __webpack_require__(27424); var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray); // EXTERNAL MODULE: ./node_modules/react/index.js var react = __webpack_require__(67294); ;// CONCATENATED MODULE: ./src/components/SplitContainer/index.less // extracted by mini-css-extract-plugin // EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js var jsx_runtime = __webpack_require__(85893); ;// CONCATENATED MODULE: ./src/components/SplitContainer/index.tsx /* harmony default export */ var SplitContainer = (function (_ref) { var _ref$defaultX = _ref.defaultX, defaultX = _ref$defaultX === void 0 ? '40%' : _ref$defaultX, leftChild = _ref.leftChild, rightChild = _ref.rightChild, className = _ref.className, _ref$hideResize = _ref.hideResize, hideResize = _ref$hideResize === void 0 ? false : _ref$hideResize; var _useState = (0,react.useState)(defaultX), _useState2 = slicedToArray_default()(_useState, 2), moveX = _useState2[0], setMoveX = _useState2[1]; var resizeXFlag = (0,react.useRef)(); function onResizeStart() { resizeXFlag.current = true; } (0,react.useEffect)(function () { function onMove(e) { if (resizeXFlag.current) { setMoveX(e.pageX); } } function onMouseUp() { resizeXFlag.current = false; } window.addEventListener('mousemove', onMove); window.addEventListener('mouseup', onMouseUp); return function () { window.removeEventListener('mousemove', onMove); window.removeEventListener('mouseup', onMouseUp); }; }, []); var leftPanelWidth = typeof moveX === 'number' && moveX !== 0.01 ? "".concat(moveX, "px") : defaultX; var rightPanelWidth = "calc(100% - ".concat(hideResize ? "0px" : "4px", " - ").concat(leftPanelWidth, ")"); return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", { className: "split-panel-container ".concat(className), children: [/*#__PURE__*/(0,jsx_runtime.jsx)("section", { style: { width: leftPanelWidth, display: moveX === 0.01 ? 'none' : '' }, children: leftChild }), /*#__PURE__*/(0,jsx_runtime.jsx)("section", { className: "resize-x-bar", onMouseDown: onResizeStart, children: /*#__PURE__*/(0,jsx_runtime.jsx)("a", { className: "btn-resize", children: /*#__PURE__*/(0,jsx_runtime.jsx)("svg", { width: "16", height: "13", viewBox: "0 0 16 13", children: /*#__PURE__*/(0,jsx_runtime.jsx)("path", { d: "M12.245 7.53H5.647v1.882h6.598v2.823L16 8.471l-3.755-3.765V7.53zM10.353 4.706H3.755v2.823L0 3.765 3.755 0v2.824h6.598v1.882z" }) }) }) }), /*#__PURE__*/(0,jsx_runtime.jsx)("section", { style: { width: rightPanelWidth }, children: rightChild })] }); }); /***/ }), /***/ 77696: /*!*********************************************************!*\ !*** ./src/components/tpi-code-setting/CodeSetting.tsx ***! \*********************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { /* harmony import */ var antd_es_switch_style__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! antd/es/switch/style */ 5812); /* harmony import */ var antd_es_switch__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! antd/es/switch */ 94594); /* harmony import */ var antd_es_select_style__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! antd/es/select/style */ 95985); /* harmony import */ var antd_es_select__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! antd/es/select */ 34041); /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react */ 67294); /* harmony import */ var _index_less__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./index.less */ 12867); /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! react/jsx-runtime */ 85893); var Option = antd_es_select__WEBPACK_IMPORTED_MODULE_5__/* ["default"].Option */ .Z.Option; /* harmony default export */ __webpack_exports__["Z"] = (function (_ref) { var onFontSizeChange = _ref.onFontSizeChange, cmFontSize = _ref.cmFontSize, cmCodeMode = _ref.cmCodeMode, autoFormat = _ref.autoFormat, onCodeModeChange = _ref.onCodeModeChange, onTabToSpace = _ref.onTabToSpace, onAutoFormat = _ref.onAutoFormat, _ref$className = _ref.className, className = _ref$className === void 0 ? '' : _ref$className, tabToSpace = _ref.tabToSpace, children = _ref.children; return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsxs)("div", { className: "tpi-code-setting ".concat(className), children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)("h3", { children: "\u4EE3\u7801\u683C\u5F0F" }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsxs)("section", { children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsxs)("div", { className: "file-item", children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)("b", { children: "\u663E\u793A\u6A21\u5F0F" }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsxs)(antd_es_select__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, { bordered: false, size: "small", value: cmCodeMode, onChange: onCodeModeChange, children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)(Option, { value: 'vs', children: "\u767D\u8272\u80CC\u666F" }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)(Option, { value: 'vs-dark', children: "\u9ED1\u8272\u80CC\u666F" })] })] }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsxs)("div", { className: "file-item", children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)("b", { children: "\u5B57\u4F53\u5927\u5C0F" }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsxs)(antd_es_select__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, { bordered: false, size: "small", value: cmFontSize, onChange: onFontSizeChange, children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)(Option, { value: 12, children: "12px" }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)(Option, { value: 14, children: "14px" }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)(Option, { value: 16, children: "16px" }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)(Option, { value: 18, children: "18px" }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)(Option, { value: 20, children: "20px" }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)(Option, { value: 22, children: "22px" })] })] }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsxs)("div", { className: "file-item", children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)("b", { children: "Tab\u8F6C\u6362" }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)(antd_es_switch__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z, { checked: tabToSpace, onChange: onTabToSpace })] }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsxs)("div", { className: "file-item", children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)("b", { children: "\u4EE3\u7801\u81EA\u52A8\u683C\u5F0F\u5316" }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)(antd_es_switch__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z, { checked: autoFormat, onChange: onAutoFormat })] })] }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)("h3", { children: "\u5FEB\u6377\u952E" }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsxs)("section", { children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsxs)("div", { className: "file-item", children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)("b", { children: "\u4FDD\u5B58\u4EE3\u7801" }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)("span", { children: "Ctrl + S" })] }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsxs)("div", { className: "file-item", children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)("b", { children: "\u5524\u51FA\u5FEB\u6377\u952E\u5217\u8868" }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)("span", { children: "F1 / Alt + F1" })] }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsxs)("div", { className: "file-item", children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)("b", { children: "\u5DE6\u53F3\u7F29\u8FDB" }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)("span", { children: "Ctrl + ]/[" })] }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsxs)("div", { className: "file-item", children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)("b", { children: "\u8DF3\u5230\u5339\u914D\u7684\u62EC\u53F7" }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)("span", { children: "Ctrl + Shift + \\" })] }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsxs)("div", { className: "file-item", children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)("b", { children: "\u8F6C\u5230\u884C\u9996" }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)("span", { children: "Home" })] }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsxs)("div", { className: "file-item", children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)("b", { children: "\u8F6C\u5230\u884C\u5C3E" }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)("span", { children: "End" })] })] }), children] }); }); /***/ }), /***/ 20654: /*!*******************************************************************!*\ !*** ./src/pages/Problems/OjForm/CodePanel/index.tsx + 1 modules ***! \*******************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { // EXPORTS __webpack_require__.d(__webpack_exports__, { "Z": function() { return /* binding */ CodePanel; } }); // EXTERNAL MODULE: ./node_modules/antd/es/drawer/style/index.js + 1 modules var style = __webpack_require__(11400); // EXTERNAL MODULE: ./node_modules/antd/es/drawer/index.js + 6 modules var drawer = __webpack_require__(63463); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/slicedToArray.js var slicedToArray = __webpack_require__(27424); var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/objectSpread2.js var objectSpread2 = __webpack_require__(42122); var objectSpread2_default = /*#__PURE__*/__webpack_require__.n(objectSpread2); // EXTERNAL MODULE: ./node_modules/react/index.js var react = __webpack_require__(67294); // EXTERNAL MODULE: ./src/components/monaco-editor/index.jsx + 3 modules var monaco_editor = __webpack_require__(8691); // EXTERNAL MODULE: ./src/components/tpi-code-setting/CodeSetting.tsx var CodeSetting = __webpack_require__(77696); // EXTERNAL MODULE: ./src/components/modal.tsx var modal = __webpack_require__(12264); // EXTERNAL MODULE: ./src/utils/urlTool.ts var urlTool = __webpack_require__(63778); ;// CONCATENATED MODULE: ./src/pages/Problems/OjForm/CodePanel/index.less // extracted by mini-css-extract-plugin // EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js var jsx_runtime = __webpack_require__(85893); ;// CONCATENATED MODULE: ./src/pages/Problems/OjForm/CodePanel/index.tsx //@ts-ignore var initialState = { theme: (0,urlTool/* fromStore */.G)('cmCodeMode', 'vs-dark'), fontSize: (0,urlTool/* fromStore */.G)('cmFontSize', 14), showEditorSetting: false, tabToSpace: (0,urlTool/* fromStore */.G)('cmTabToSpace', true) }; var Types; (function (Types) { Types[Types["set_font_size"] = 0] = "set_font_size"; Types[Types["set_theme"] = 1] = "set_theme"; Types[Types["on_tab_to_space"] = 2] = "on_tab_to_space"; Types[Types["set_show_editor_setting"] = 3] = "set_show_editor_setting"; })(Types || (Types = {})); function reducer(state, action) { switch (action.type) { case Types.set_show_editor_setting: return objectSpread2_default()(objectSpread2_default()({}, state), {}, { showEditorSetting: action.payload }); case Types.set_theme: return objectSpread2_default()(objectSpread2_default()({}, state), {}, { theme: action.payload }); case Types.set_font_size: return objectSpread2_default()(objectSpread2_default()({}, state), {}, { fontSize: action.payload }); case Types.on_tab_to_space: return objectSpread2_default()(objectSpread2_default()({}, state), {}, { tabToSpace: action.payload }); default: throw new Error(); } } /* harmony default export */ var CodePanel = (function (_ref) { var isLoading = _ref.isLoading, value = _ref.value, _onChange = _ref.onChange, language = _ref.language, onUpdateCode = _ref.onUpdateCode, _ref$ActionBarRender = _ref.ActionBarRender, ActionBarRender = _ref$ActionBarRender === void 0 ? function (onShowCodeSetting) { return /*#__PURE__*/(0,jsx_runtime.jsx)(DefaultActionBar, { onShowCodeSetting: onShowCodeSetting }); } : _ref$ActionBarRender; var _useReducer = (0,react.useReducer)(reducer, initialState), _useReducer2 = slicedToArray_default()(_useReducer, 2), state = _useReducer2[0], dispatch = _useReducer2[1]; var theme = state.theme, fontSize = state.fontSize, showEditorSetting = state.showEditorSetting, tabToSpace = state.tabToSpace; var timeRef = (0,react.useRef)(); var valueRef = (0,react.useRef)(); var codeSettingOption = { onFontSizeChange: function onFontSizeChange(val) { dispatch({ type: Types.set_font_size, payload: val }); (0,urlTool/* toStore */.t)('cmFontSize', val); }, tabToSpace: tabToSpace, cmFontSize: fontSize, className: 'oj', cmCodeMode: theme, onTabToSpace: function onTabToSpace(checked) { dispatch({ type: Types.on_tab_to_space, payload: checked }); (0,urlTool/* toStore */.t)('cmTabToSpace', checked); }, onCodeModeChange: function onCodeModeChange(val) { dispatch({ type: Types.set_theme, payload: val }); (0,urlTool/* toStore */.t)('cmCodeMode', val); } }; function onHideCodeSetting() { dispatch({ type: Types.set_show_editor_setting, payload: false }); } function onShowCodeSetting() { dispatch({ type: Types.set_show_editor_setting, payload: true }); } var editorOption = { value: value, language: language, // onChange, theme: theme, height: 'calc(100% - 56px)', options: { fontSize: fontSize, insertSpaces: tabToSpace }, onChange: function onChange(value) { _onChange(value); valueRef.current = value; clearTimeout(timeRef.current); timeRef.current = setTimeout(function () { onUpdateCode(valueRef.current); }, 10000); }, onEditBlur: function onEditBlur(value) { if (!!valueRef.current) onUpdateCode(valueRef.current); } }; return /*#__PURE__*/(0,jsx_runtime.jsxs)(react.Fragment, { children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", { className: "code-panel-container", children: [ActionBarRender(onShowCodeSetting), !isLoading && /*#__PURE__*/(0,jsx_runtime.jsx)(monaco_editor/* default */.ZP, objectSpread2_default()({}, editorOption))] }), /*#__PURE__*/(0,jsx_runtime.jsx)(modal/* default */.Z, { children: /*#__PURE__*/(0,jsx_runtime.jsx)(drawer/* default */.Z, { className: "oj", title: null, placement: "right", closable: false, open: showEditorSetting, onClose: onHideCodeSetting, children: /*#__PURE__*/(0,jsx_runtime.jsx)(CodeSetting/* default */.Z, objectSpread2_default()({}, codeSettingOption)) }) })] }); }); function DefaultActionBar(_ref2) { var onShowCodeSetting = _ref2.onShowCodeSetting; return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", { className: "action-bar", children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", { children: "\u5B66\u5458\u521D\u59CB\u4EE3\u7801\u6587\u4EF6" }), /*#__PURE__*/(0,jsx_runtime.jsx)("a", { onClick: onShowCodeSetting, children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", { className: "iconfont icon-shezhi" }) })] }); } /***/ }), /***/ 66304: /*!*********************************************************!*\ !*** ./src/pages/Problems/OjForm/index.tsx + 4 modules ***! \*********************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { // ESM COMPAT FLAG __webpack_require__.r(__webpack_exports__); // EXPORTS __webpack_require__.d(__webpack_exports__, { "Types": function() { return /* binding */ OjForm_Types; }, "default": function() { return /* binding */ OjForm; } }); // EXTERNAL MODULE: ./node_modules/antd/es/popconfirm/style/index.js + 1 modules var style = __webpack_require__(33219); // EXTERNAL MODULE: ./node_modules/antd/es/popconfirm/index.js + 1 modules var popconfirm = __webpack_require__(65360); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/objectDestructuringEmpty.js var objectDestructuringEmpty = __webpack_require__(13012); var objectDestructuringEmpty_default = /*#__PURE__*/__webpack_require__.n(objectDestructuringEmpty); // EXTERNAL MODULE: ./node_modules/antd/es/space/style/index.js + 1 modules var space_style = __webpack_require__(6516); // EXTERNAL MODULE: ./node_modules/antd/es/space/index.js + 1 modules var space = __webpack_require__(26713); // EXTERNAL MODULE: ./node_modules/antd/es/radio/style/index.js + 1 modules var radio_style = __webpack_require__(83822); // EXTERNAL MODULE: ./node_modules/antd/es/radio/index.js + 4 modules var es_radio = __webpack_require__(29924); // EXTERNAL MODULE: ./node_modules/antd/es/checkbox/style/index.js + 1 modules var checkbox_style = __webpack_require__(82000); // EXTERNAL MODULE: ./node_modules/antd/es/checkbox/index.js + 2 modules var es_checkbox = __webpack_require__(32808); // EXTERNAL MODULE: ./node_modules/antd/es/input-number/style/index.js + 1 modules var input_number_style = __webpack_require__(25359); // EXTERNAL MODULE: ./node_modules/antd/es/input-number/index.js + 9 modules var input_number = __webpack_require__(87799); // EXTERNAL MODULE: ./node_modules/antd/es/cascader/style/index.js + 1 modules var cascader_style = __webpack_require__(95847); // EXTERNAL MODULE: ./node_modules/antd/es/cascader/index.js + 17 modules var cascader = __webpack_require__(45239); // EXTERNAL MODULE: ./node_modules/antd/es/select/style/index.js + 1 modules var select_style = __webpack_require__(95985); // EXTERNAL MODULE: ./node_modules/antd/es/select/index.js var es_select = __webpack_require__(34041); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/createForOfIteratorHelper.js var createForOfIteratorHelper = __webpack_require__(74704); var createForOfIteratorHelper_default = /*#__PURE__*/__webpack_require__.n(createForOfIteratorHelper); // EXTERNAL MODULE: ./node_modules/antd/es/spin/style/index.js + 1 modules var spin_style = __webpack_require__(22536); // EXTERNAL MODULE: ./node_modules/antd/es/spin/index.js var spin = __webpack_require__(11382); // EXTERNAL MODULE: ./node_modules/antd/es/button/style/index.js + 1 modules var button_style = __webpack_require__(29913); // EXTERNAL MODULE: ./node_modules/antd/es/button/index.js var es_button = __webpack_require__(71577); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/toConsumableArray.js var toConsumableArray = __webpack_require__(861); var toConsumableArray_default = /*#__PURE__*/__webpack_require__.n(toConsumableArray); // EXTERNAL MODULE: ./node_modules/antd/es/message/style/index.js + 1 modules var message_style = __webpack_require__(14934); // EXTERNAL MODULE: ./node_modules/antd/es/message/index.js + 1 modules var message = __webpack_require__(12461); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/regeneratorRuntime.js var regeneratorRuntime = __webpack_require__(17061); var regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(regeneratorRuntime); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/asyncToGenerator.js var asyncToGenerator = __webpack_require__(17156); var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator); // EXTERNAL MODULE: ./node_modules/antd/es/form/style/index.js + 1 modules var form_style = __webpack_require__(75627); // EXTERNAL MODULE: ./node_modules/antd/es/form/index.js + 17 modules var es_form = __webpack_require__(51018); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/slicedToArray.js var slicedToArray = __webpack_require__(27424); var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/objectSpread2.js var objectSpread2 = __webpack_require__(42122); var objectSpread2_default = /*#__PURE__*/__webpack_require__.n(objectSpread2); // EXTERNAL MODULE: ./node_modules/antd/es/collapse/style/index.js + 1 modules var collapse_style = __webpack_require__(49263); // EXTERNAL MODULE: ./node_modules/antd/es/collapse/index.js + 6 modules var collapse = __webpack_require__(54907); // EXTERNAL MODULE: ./node_modules/antd/es/modal/style/index.js + 1 modules var modal_style = __webpack_require__(35611); // EXTERNAL MODULE: ./node_modules/antd/es/modal/index.js + 7 modules var modal = __webpack_require__(85402); // EXTERNAL MODULE: ./node_modules/antd/es/input/style/index.js + 1 modules var input_style = __webpack_require__(69463); // EXTERNAL MODULE: ./node_modules/antd/es/input/index.js + 5 modules var input = __webpack_require__(75008); // EXTERNAL MODULE: ./node_modules/react/index.js var react = __webpack_require__(67294); // EXTERNAL MODULE: ./src/pages/Problems/OjForm/index.less?modules var OjFormmodules = __webpack_require__(77969); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/defineProperty.js var defineProperty = __webpack_require__(38416); var defineProperty_default = /*#__PURE__*/__webpack_require__.n(defineProperty); // EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js var jsx_runtime = __webpack_require__(85893); ;// CONCATENATED MODULE: ./src/pages/Problems/OjForm/util.tsx var _Options; var Option = es_select/* default.Option */.Z.Option; var Keys; (function (Keys) { Keys[Keys["language"] = 0] = "language"; Keys[Keys["difficult"] = 1] = "difficult"; Keys[Keys["category"] = 2] = "category"; Keys[Keys["openOrNot"] = 3] = "openOrNot"; })(Keys || (Keys = {})); var Options = (_Options = {}, defineProperty_default()(_Options, Keys.language, [{ title: 'C', key: 'C' }, { title: 'C++', key: 'C++' }, { title: 'Python', key: 'Python' }, { title: 'Java', key: 'Java' }, { title: 'JavaScript', key: 'JavaScript' }, { title: 'Ruby', key: 'Ruby' }]), defineProperty_default()(_Options, Keys.difficult, [{ title: '简单', key: 1 }, { title: '中等', key: 2 }, { title: '困难', key: 3 }]), defineProperty_default()(_Options, Keys.category, [{ title: '程序设计', key: 1 }, { title: '算法', key: 2 }]), defineProperty_default()(_Options, Keys.openOrNot, [{ title: '公开', key: 1 }, { title: '私有', key: 0 }]), _Options); function getSelectOptions(name) { return Options[name].map(function (item) { return /*#__PURE__*/(0,jsx_runtime.jsxs)(Option, { value: item.key, children: [" ", item.title, " "] }, item.title); }); } function getDisciplineOptions(data, result) { data.map(function (value) { var id = value.id, name = value.name, sub_disciplines = value.sub_disciplines; var item = { value: id, label: name }; result.push(item); if (sub_disciplines && sub_disciplines.length > 0) { item.children = []; getDisciplineOptions(sub_disciplines, item.children); } }); } function getDisciplineIds(data, sub_disciplines_id) { var rs = []; for (var index = 0; index < data.length; index++) { var _value$sub_discipline; var value = data[index]; if (((_value$sub_discipline = value.sub_disciplines) === null || _value$sub_discipline === void 0 ? void 0 : _value$sub_discipline.length) > 0) { rs[0] = value.id; for (var j = 0; j < value.sub_disciplines.length; j++) { var item = value.sub_disciplines[j]; if (item.id === sub_disciplines_id) { rs[1] = item.id; return [rs, item.tag_disciplines || item.sub_disciplines || []]; } } } } return [rs, []]; } // EXTERNAL MODULE: ./src/.umi-production/exports.ts + 8 modules var _umi_production_exports = __webpack_require__(89214); // EXTERNAL MODULE: ./node_modules/js-base64/base64.js var base64 = __webpack_require__(19575); // EXTERNAL MODULE: ./node_modules/@ant-design/icons/es/icons/PoweroffOutlined.js + 1 modules var PoweroffOutlined = __webpack_require__(81088); // EXTERNAL MODULE: ./node_modules/@ant-design/icons/es/icons/CloseCircleOutlined.js var CloseCircleOutlined = __webpack_require__(31662); // EXTERNAL MODULE: ./src/components/markdown-editor/index.tsx + 10 modules var markdown_editor = __webpack_require__(55373); // EXTERNAL MODULE: ./src/utils/fetch.ts var fetch = __webpack_require__(84519); ;// CONCATENATED MODULE: ./src/pages/Problems/OjForm/service.ts function getUser() { return (0,fetch/* get */.U2)('problems/new.json'); } function getDisciplines() { var source = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'question'; return (0,fetch/* get */.U2)("disciplines.json", { source: source }); } function getProgrammingTopic(id) { return (0,fetch/* get */.U2)("problems/".concat(id, "/edit.json")); } function updateProgrammingTopic(id, params) { return (0,fetch/* put */.gz)("problems/".concat(id, ".json"), params); } function addProgrammingTopic(params) { return (0,fetch/* post */.v_)("problems.json", params); } function addExerciseQuestion(exerciseId, params) { return (0,fetch/* post */.v_)("exercises/".concat(exerciseId, "/exercise_questions.json"), params); } function updateExerciseQuestion(id, params) { return (0,fetch/* put */.gz)("exercise_questions/".concat(id, ".json"), params); } function publishProgrammingTopic(id) { return (0,fetch/* post */.v_)("problems/".concat(id, "/publish.json")); } function cancelPublishProgrammingTopic(id) { return (0,fetch/* post */.v_)("problems/".concat(id, "/cancel_publish.json")); } function startChallenge(id) { return (0,fetch/* get */.U2)("problems/".concat(id, "/start.json")); } function addTag(sub_discipline_id, name) { return post("tag_disciplines.json", { name: name, sub_discipline_id: sub_discipline_id }); } // EXTERNAL MODULE: ./src/service/exercise.ts var exercise = __webpack_require__(51412); // EXTERNAL MODULE: ./src/components/SplitContainer/index.tsx + 1 modules var SplitContainer = __webpack_require__(76695); // EXTERNAL MODULE: ./src/pages/Problems/OjForm/CodePanel/index.tsx + 1 modules var CodePanel = __webpack_require__(20654); // EXTERNAL MODULE: ./node_modules/antd/es/drawer/style/index.js + 1 modules var drawer_style = __webpack_require__(11400); // EXTERNAL MODULE: ./node_modules/antd/es/drawer/index.js + 6 modules var drawer = __webpack_require__(63463); // EXTERNAL MODULE: ./src/components/monaco-editor/index.jsx + 3 modules var monaco_editor = __webpack_require__(8691); // EXTERNAL MODULE: ./src/components/tpi-code-setting/CodeSetting.tsx var CodeSetting = __webpack_require__(77696); // EXTERNAL MODULE: ./src/components/modal.tsx var components_modal = __webpack_require__(12264); // EXTERNAL MODULE: ./src/utils/urlTool.ts var urlTool = __webpack_require__(63778); ;// CONCATENATED MODULE: ./src/pages/Problems/OjForm/CodeProgramPanel/index.less?modules // extracted by mini-css-extract-plugin /* harmony default export */ var CodeProgramPanelmodules = ({"code-panel-container":"code-panel-container___RFtv_","action-oj-bar":"action-oj-bar___ByFmZ","active":"active___s9gT5"}); // EXTERNAL MODULE: ./node_modules/lodash/lodash.js var lodash = __webpack_require__(96486); ;// CONCATENATED MODULE: ./src/pages/Problems/OjForm/CodeProgramPanel/index.tsx //@ts-ignore var initialState = { theme: (0,urlTool/* fromStore */.G)('cmCodeMode', 'vs-dark'), fontSize: (0,urlTool/* fromStore */.G)('cmFontSize', 14), showEditorSetting: false, tabToSpace: (0,urlTool/* fromStore */.G)('cmTabToSpace', true) }; var Types; (function (Types) { Types[Types["set_font_size"] = 0] = "set_font_size"; Types[Types["set_theme"] = 1] = "set_theme"; Types[Types["on_tab_to_space"] = 2] = "on_tab_to_space"; Types[Types["set_show_editor_setting"] = 3] = "set_show_editor_setting"; })(Types || (Types = {})); function reducer(state, action) { switch (action.type) { case Types.set_show_editor_setting: return objectSpread2_default()(objectSpread2_default()({}, state), {}, { showEditorSetting: action.payload }); case Types.set_theme: return objectSpread2_default()(objectSpread2_default()({}, state), {}, { theme: action.payload }); case Types.set_font_size: return objectSpread2_default()(objectSpread2_default()({}, state), {}, { fontSize: action.payload }); case Types.on_tab_to_space: return objectSpread2_default()(objectSpread2_default()({}, state), {}, { tabToSpace: action.payload }); default: throw new Error(); } } /* harmony default export */ var CodeProgramPanel = (function (_ref) { var _value$find; var isLoading = _ref.isLoading, _ref$value = _ref.value, value = _ref$value === void 0 ? [] : _ref$value, onChange = _ref.onChange; var _useReducer = (0,react.useReducer)(reducer, initialState), _useReducer2 = slicedToArray_default()(_useReducer, 2), state = _useReducer2[0], dispatch = _useReducer2[1]; var theme = state.theme, fontSize = state.fontSize, showEditorSetting = state.showEditorSetting, tabToSpace = state.tabToSpace; var _useState = (0,react.useState)('c'), _useState2 = slicedToArray_default()(_useState, 2), language = _useState2[0], setLanguage = _useState2[1]; var saveLanguageItems = (0,react.useRef)([]); (0,react.useEffect)(function () { if (!!(value !== null && value !== void 0 && value.length)) { saveLanguageItems.current = (0,lodash.cloneDeep)(value); } }, [value]); var codeSettingOption = { onFontSizeChange: function onFontSizeChange(val) { dispatch({ type: Types.set_font_size, payload: val }); (0,urlTool/* toStore */.t)('cmFontSize', val); }, tabToSpace: tabToSpace, cmFontSize: fontSize, className: 'oj', cmCodeMode: theme, onTabToSpace: function onTabToSpace(checked) { dispatch({ type: Types.on_tab_to_space, payload: checked }); (0,urlTool/* toStore */.t)('cmTabToSpace', checked); }, onCodeModeChange: function onCodeModeChange(val) { dispatch({ type: Types.set_theme, payload: val }); (0,urlTool/* toStore */.t)('cmCodeMode', val); } }; function onHideCodeSetting() { dispatch({ type: Types.set_show_editor_setting, payload: false }); } function onShowCodeSetting() { dispatch({ type: Types.set_show_editor_setting, payload: true }); } function onCodeChange(v) { var _saveLanguageItems$cu; var item = (_saveLanguageItems$cu = saveLanguageItems.current) === null || _saveLanguageItems$cu === void 0 ? void 0 : _saveLanguageItems$cu.map(function (e) { if (e.language === language) { e.code = v; return e; } return e; }); saveLanguageItems.current = (0,lodash.cloneDeep)(item); onChange(item); } var editorOption = { key: language, value: value === null || value === void 0 ? void 0 : (_value$find = value.find(function (e) { return e.language === language; })) === null || _value$find === void 0 ? void 0 : _value$find.code, language: language, onChange: onCodeChange, theme: theme, height: 'calc(100% - 56px)', options: { fontSize: fontSize, insertSpaces: tabToSpace } }; return /*#__PURE__*/(0,jsx_runtime.jsxs)(react.Fragment, { children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", { className: CodeProgramPanelmodules["code-panel-container"], children: [/*#__PURE__*/(0,jsx_runtime.jsx)(DefaultActionBar, { languageItems: value, onLanguage: function onLanguage(v) { return setLanguage(v); }, language: language, onShowCodeSetting: onShowCodeSetting }), !isLoading && /*#__PURE__*/(0,jsx_runtime.jsx)(monaco_editor/* default */.ZP, objectSpread2_default()({}, editorOption))] }), /*#__PURE__*/(0,jsx_runtime.jsx)(components_modal/* default */.Z, { children: /*#__PURE__*/(0,jsx_runtime.jsx)(drawer/* default */.Z, { className: "oj", title: null, placement: "right", closable: false, open: showEditorSetting, onClose: onHideCodeSetting, children: /*#__PURE__*/(0,jsx_runtime.jsx)(CodeSetting/* default */.Z, objectSpread2_default()({}, codeSettingOption)) }) })] }); }); function DefaultActionBar(_ref2) { var languageItems = _ref2.languageItems, language = _ref2.language, onShowCodeSetting = _ref2.onShowCodeSetting, onLanguage = _ref2.onLanguage; return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", { className: CodeProgramPanelmodules["action-oj-bar"], children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", { children: "\u5B66\u5458\u521D\u59CB\u4EE3\u7801\u6587\u4EF6" }), languageItems === null || languageItems === void 0 ? void 0 : languageItems.map(function (e) { return /*#__PURE__*/(0,jsx_runtime.jsx)("div", { className: language === (e === null || e === void 0 ? void 0 : e.language) ? CodeProgramPanelmodules.active : '', onClick: function onClick() { return onLanguage(e === null || e === void 0 ? void 0 : e.language); }, children: e === null || e === void 0 ? void 0 : e.language }, e === null || e === void 0 ? void 0 : e.language); }), /*#__PURE__*/(0,jsx_runtime.jsx)("a", { onClick: onShowCodeSetting, children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", { className: "iconfont icon-shezhi" }) })] }); } // EXTERNAL MODULE: ./src/utils/util.tsx var util = __webpack_require__(29427); // EXTERNAL MODULE: ./src/utils/env.ts + 1 modules var env = __webpack_require__(59758); // EXTERNAL MODULE: ./src/components/Knowledge/index.tsx + 2 modules var Knowledge = __webpack_require__(90525); // EXTERNAL MODULE: ./src/components/CustomTree/index.tsx + 1 modules var CustomTree = __webpack_require__(62752); // EXTERNAL MODULE: ./src/pages/Shixuns/Edit/body/Level/Challenges/components/UploadFile/index.tsx + 2 modules var UploadFile = __webpack_require__(70528); // EXTERNAL MODULE: ./src/service/paperlibrary.ts var paperlibrary = __webpack_require__(24410); // EXTERNAL MODULE: ./src/utils/enum.ts var utils_enum = __webpack_require__(70960); ;// CONCATENATED MODULE: ./src/pages/Problems/OjForm/index.tsx //@ts-ignore var TextArea = input/* default.TextArea */.Z.TextArea; var OjForm_confirm = modal/* default.confirm */.Z.confirm; var Panel = collapse/* default.Panel */.Z.Panel; function getTimeStamp() { return new Date().getTime(); } var OjForm_initialState = { loading: true, user: null, disciplines: [], dicts: null, status: 0, data: undefined, lastedUpdateTime: 0 }; var OjForm_Types; (function (Types) { Types[Types["SET_INITAL_DATA"] = 0] = "SET_INITAL_DATA"; Types[Types["SET_LOADING"] = 1] = "SET_LOADING"; Types[Types["SET_STATUS"] = 2] = "SET_STATUS"; })(OjForm_Types || (OjForm_Types = {})); function OjForm_reducer(state, action) { switch (action.type) { case OjForm_Types.SET_INITAL_DATA: return objectSpread2_default()(objectSpread2_default()({}, state), action.payload); case OjForm_Types.SET_LOADING: return objectSpread2_default()(objectSpread2_default()({}, state), {}, { loading: action.payload }); case OjForm_Types.SET_STATUS: return objectSpread2_default()(objectSpread2_default()({}, state), {}, { status: action.payload }); default: throw new Error(); } } //problems/new?difficult=3&sub_discipline_id=95&tag_discipline_id=105&newoj=1&pages=1 ///problems/p2mblri6/edit //* 从课堂试卷编辑入口进来 http://localhost:8000/problems/i4b5wuhn/edit?type=exercises&express_id=2510&callback_url=/classrooms/1309/exercise/2510/edit /* harmony default export */ var OjForm = (function () { var _data$hack, _data$hack4; var _useSearchParams = (0,_umi_production_exports.useSearchParams)(), _useSearchParams2 = slicedToArray_default()(_useSearchParams, 1), searchParams = _useSearchParams2[0]; var location = (0,_umi_production_exports.useLocation)(); var _useParams = (0,_umi_production_exports.useParams)(), id = _useParams.id; var _Form$useForm = es_form/* default.useForm */.Z.useForm(), _Form$useForm2 = slicedToArray_default()(_Form$useForm, 1), form = _Form$useForm2[0]; var _useState = (0,react.useState)(), _useState2 = slicedToArray_default()(_useState, 2), formValue = _useState2[0], setFormValue = _useState2[1]; var _useState3 = (0,react.useState)([]), _useState4 = slicedToArray_default()(_useState3, 2), knowledgeOptions = _useState4[0], setKnowledgeOptions = _useState4[1]; var _useState5 = (0,react.useState)([]), _useState6 = slicedToArray_default()(_useState5, 2), uploadData = _useState6[0], setUploadData = _useState6[1]; var _useReducer = (0,react.useReducer)(OjForm_reducer, OjForm_initialState), _useReducer2 = slicedToArray_default()(_useReducer, 2), state = _useReducer2[0], dispatch = _useReducer2[1]; var loading = state.loading, data = state.data, user = state.user, disciplines = state.disciplines, dicts = state.dicts, status = state.status; var hack_sets = data === null || data === void 0 ? void 0 : data.hack_sets; var test_set_average = data === null || data === void 0 ? void 0 : (_data$hack = data.hack) === null || _data$hack === void 0 ? void 0 : _data$hack.test_set_average; var _getJsonFromUrl = (0,util/* getJsonFromUrl */.oP)(), callback_url = _getJsonFromUrl.callback_url, express_id = _getJsonFromUrl.express_id, score = _getJsonFromUrl.score, question_id = _getJsonFromUrl.question_id, type = _getJsonFromUrl.type; var _useState7 = (0,react.useState)([]), _useState8 = slicedToArray_default()(_useState7, 2), MyGroup = _useState8[0], setMyGroup = _useState8[1]; var _useState9 = (0,react.useState)(false), _useState10 = slicedToArray_default()(_useState9, 2), ischecked = _useState10[0], setischecked = _useState10[1]; var _useState11 = (0,react.useState)(false), _useState12 = slicedToArray_default()(_useState11, 2), isshows = _useState12[0], setisshows = _useState12[1]; var isProgram = type === '1'; var categorys = (0,react.useMemo)(function () { var rs = []; if (disciplines) { getDisciplineOptions(disciplines, rs); } return rs; }, [disciplines]); var initData = (0,react.useCallback)( /*#__PURE__*/asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() { var timeStamp, discips, response, rs, res, category, _user, code, language, _hack_sets, description, difficult, name, open_or_not, sub_discipline_id, tag_discipline_id, time_limit, _test_set_average, test_set_score, _status, tag_discipline_ids, item_banks_group_id, _res$is_file, is_file, hide_actual_output, code_compile_score, languages, is_my, codes, _getDisciplineIds, _getDisciplineIds2, ids, dictData, new_hack_sets, _getJsonFromUrl2, lastedUpdateTime, newCodes, _tagIds$split, _tagIds$split2, _yield$getUser, _user2, _getJsonFromUrl3, _difficult, _sub_discipline_id, _tag_discipline_id, tagIds, banksIds, _getDisciplineIds3, _getDisciplineIds4, _ids, _dictData, bankstime, _args = arguments; return regeneratorRuntime_default()().wrap(function _callee$(_context) { while (1) switch (_context.prev = _context.next) { case 0: timeStamp = _args.length > 0 && _args[0] !== undefined ? _args[0] : 0; discips = disciplines; if (!(discips.length === 0)) { _context.next = 7; break; } _context.next = 5; return getDisciplines('new_question'); case 5: response = _context.sent; discips = response.disciplines; case 7: if (!id) { _context.next = 15; break; } rs = { disciplines: discips }; _context.next = 11; return getProgrammingTopic(id); case 11: res = _context.sent; if (res.message) { if (res.status === '401') { // history.push('/user/login') document.location.href = '/user/login'; } } else { // console.log(res.hack_sets, 'response1') category = res.category, _user = res.user, code = res.code, language = res.language, _hack_sets = res.hack_sets, description = res.description, difficult = res.difficult, name = res.name, open_or_not = res.open_or_not, sub_discipline_id = res.sub_discipline_id, tag_discipline_id = res.tag_discipline_id, time_limit = res.time_limit, _test_set_average = res.test_set_average, test_set_score = res.test_set_score, _status = res.status, tag_discipline_ids = res.tag_discipline_ids, item_banks_group_id = res.item_banks_group_id, _res$is_file = res.is_file, is_file = _res$is_file === void 0 ? false : _res$is_file, hide_actual_output = res.hide_actual_output, code_compile_score = res.code_compile_score, languages = res.languages, is_my = res.is_my, codes = res.codes; // _getDisciplineIds = getDisciplineIds(discips, sub_discipline_id), _getDisciplineIds2 = slicedToArray_default()(_getDisciplineIds, 2), ids = _getDisciplineIds2[0], dictData = _getDisciplineIds2[1]; setischecked(hide_actual_output); // console.log('----',hack_sets); new_hack_sets = is_file ? [{ input: '', output: '', score: 100, position: 1 }] : _hack_sets; if (is_file) { setUploadData(_hack_sets); form.setFieldsValue({ 'hack_sets': new_hack_sets }); } else { setUploadData([]); } //@ts-ignore _getJsonFromUrl2 = (0,util/* getJsonFromUrl */.oP)(), lastedUpdateTime = _getJsonFromUrl2.lastedUpdateTime; newCodes = codes === null || codes === void 0 ? void 0 : codes.map(function (e) { return objectSpread2_default()(objectSpread2_default()({}, e), {}, { code: base64.Base64.decode(e === null || e === void 0 ? void 0 : e.code) }); }); rs = objectSpread2_default()(objectSpread2_default()({}, rs), {}, { loading: false, user: _user, dicts: dictData, status: _status, lastedUpdateTime: timeStamp ? timeStamp : lastedUpdateTime ? lastedUpdateTime : 0, data: { hack_codes: { language: language, code: base64.Base64.decode(code) }, hack: { category: category, difficult: difficult, name: name, description: description, open_or_not: open_or_not, time_limit: time_limit, test_set_average: _test_set_average, test_set_score: test_set_score, sub_discipline_id: ids, tag_discipline_ids: tag_discipline_ids, languages: languages, score: score || 1, item_banks_group_ids: item_banks_group_id, is_file: is_file, is_my: is_my, code_compile_score: code_compile_score }, hack_sets: new_hack_sets, tags: tag_discipline_ids, codes: newCodes } }); if (parseInt(code_compile_score) > 0) { setisshows(true); } dispatch({ type: OjForm_Types.SET_INITAL_DATA, payload: rs }); setFormValue({ hack: { category: category, difficult: difficult, name: name, description: description, open_or_not: open_or_not, time_limit: time_limit, test_set_average: _test_set_average, test_set_score: test_set_score, sub_discipline_id: ids, tag_discipline_ids: tag_discipline_ids, score: score || 1, item_banks_group_ids: item_banks_group_id, is_file: is_file }, codes: newCodes }); handleSetKnowledge(ids === null || ids === void 0 ? void 0 : ids[0], ids === null || ids === void 0 ? void 0 : ids[1], discips); } _context.next = 25; break; case 15: _context.next = 17; return getUser(); case 17: _yield$getUser = _context.sent; _user2 = _yield$getUser.user; //@ts-ignore _getJsonFromUrl3 = (0,util/* getJsonFromUrl */.oP)(), _difficult = _getJsonFromUrl3.difficult, _sub_discipline_id = _getJsonFromUrl3.sub_discipline_id, _tag_discipline_id = _getJsonFromUrl3.tag_discipline_id, tagIds = _getJsonFromUrl3.tagIds, banksIds = _getJsonFromUrl3.banksIds; _getDisciplineIds3 = getDisciplineIds(discips, parseInt(_sub_discipline_id, 10)), _getDisciplineIds4 = slicedToArray_default()(_getDisciplineIds3, 2), _ids = _getDisciplineIds4[0], _dictData = _getDisciplineIds4[1]; bankstime = [Number(banksIds)]; dispatch({ type: OjForm_Types.SET_INITAL_DATA, payload: { loading: false, user: _user2, disciplines: discips, status: 0, dicts: _dictData, data: { hack_codes: { language: 'C', code: '' }, hack: { category: null, difficult: parseInt(_difficult, 10), time_limit: 3, description: '', test_set_score: true, test_set_average: true, open_or_not: true, sub_discipline_id: _ids, tag_discipline_id: tagIds && (tagIds === null || tagIds === void 0 ? void 0 : (_tagIds$split = tagIds.split(',')) === null || _tagIds$split === void 0 ? void 0 : _tagIds$split.map(function (x) { return Number(x); })), name: '', item_banks_group_ids: bankstime, is_file: false }, tags: _tag_discipline_id ? _tag_discipline_id === null || _tag_discipline_id === void 0 ? void 0 : _tag_discipline_id.split(',').map(function (t) { return parseInt(t, 10); }) : [], hack_sets: [{ input: '', output: '', score: 100, position: 1 }] } } }); setFormValue({ hack: { category: null, difficult: parseInt(_difficult, 10), time_limit: 3, description: '', test_set_average: true, open_or_not: true, sub_discipline_id: _ids, tag_discipline_id: tagIds && (tagIds === null || tagIds === void 0 ? void 0 : (_tagIds$split2 = tagIds.split(',')) === null || _tagIds$split2 === void 0 ? void 0 : _tagIds$split2.map(function (x) { return Number(x); })), name: '', item_banks_group_id: bankstime, is_file: false } }); handleSetKnowledge(_ids === null || _ids === void 0 ? void 0 : _ids[0], _ids === null || _ids === void 0 ? void 0 : _ids[1], discips); case 25: case "end": return _context.stop(); } }, _callee); })), [id, disciplines]); (0,react.useEffect)(function () { try { initData(); } catch (error) { console.log(error, '----'); // history.replace('/user/login', { from: location.pathname }) } }, []); (0,react.useEffect)(function () { //获取我的分组信息 function init() { return _init.apply(this, arguments); } function _init() { _init = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2() { var data; return regeneratorRuntime_default()().wrap(function _callee2$(_context2) { while (1) switch (_context2.prev = _context2.next) { case 0: _context2.next = 2; return (0,fetch/* get */.U2)('item_banks_groups/mine.json'); case 2: data = _context2.sent; setMyGroup(data); case 4: case "end": return _context2.stop(); } }, _callee2); })); return _init.apply(this, arguments); } init(); }, []); var handleSetKnowledge = function handleSetKnowledge(id, subId, discips) { var _discips$find, _discips$find$sub_dis, _discips$find$sub_dis2; var options = discips === null || discips === void 0 ? void 0 : (_discips$find = discips.find(function (item) { return item.id === id; })) === null || _discips$find === void 0 ? void 0 : (_discips$find$sub_dis = _discips$find.sub_disciplines) === null || _discips$find$sub_dis === void 0 ? void 0 : (_discips$find$sub_dis2 = _discips$find$sub_dis.find(function (subItem) { return subItem.id === subId; })) === null || _discips$find$sub_dis2 === void 0 ? void 0 : _discips$find$sub_dis2.tag_disciplines; // setKnowledgeOptions(options || []); }; function onSubmit(_x, _x2, _x3) { return _onSubmit.apply(this, arguments); } function _onSubmit() { _onSubmit = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee5(values, type, is_cover) { var _values, hack_sets, hack_codes, hack, tags, codes, update_hack_sets, new_hack_sets, sumScore, new_list, _iterator, _step, item, newCodes, res, _yield$updateExercise, _status2, _yield$addProgramming, identifier, exam_identifier, _res, _yield$addExerciseQue, _status3; return regeneratorRuntime_default()().wrap(function _callee5$(_context5) { while (1) switch (_context5.prev = _context5.next) { case 0: _values = objectSpread2_default()({}, values), hack_sets = _values.hack_sets, hack_codes = _values.hack_codes, hack = _values.hack, tags = _values.tags, codes = _values.codes; hack.hide_actual_output = ischecked; update_hack_sets = []; new_hack_sets = []; sumScore = 0; new_list = hack !== null && hack !== void 0 && hack.is_file ? uploadData.map(function (e, i) { return objectSpread2_default()(objectSpread2_default()({}, e), {}, { position: i + 1 }); }) : hack_sets.map(function (e) { return objectSpread2_default()(objectSpread2_default()({}, e), {}, { is_file: false }); }); _iterator = createForOfIteratorHelper_default()(new_list); try { for (_iterator.s(); !(_step = _iterator.n()).done;) { item = _step.value; sumScore += item.score; if (item.id && item.id >= 0) { update_hack_sets.push(item); } else { new_hack_sets.push(item); } } } catch (err) { _iterator.e(err); } finally { _iterator.f(); } if (new_list !== null && new_list !== void 0 && new_list.length) { _context5.next = 11; break; } message/* default.error */.ZP.error('测试集不能为空'); return _context5.abrupt("return"); case 11: sumScore += parseInt(hack.code_compile_score || 0); if (!(sumScore !== 100 && !hack.test_set_score)) { _context5.next = 15; break; } message/* default.error */.ZP.error('测试集的评分占比之和必须等于100'); return _context5.abrupt("return"); case 15: if (!(new_list !== null && new_list !== void 0 && new_list.some(function (e) { return !e.output; }))) { _context5.next = 18; break; } message/* default.error */.ZP.error('测试集输出不能为空'); return _context5.abrupt("return"); case 18: newCodes = {}; if (isProgram) { codes === null || codes === void 0 ? void 0 : codes.forEach(function (e) { newCodes[e.language] = e !== null && e !== void 0 && e.code ? base64.Base64.encode(e === null || e === void 0 ? void 0 : e.code) : ''; }); } else { hack_codes.code = base64.Base64.encode(hack_codes === null || hack_codes === void 0 ? void 0 : hack_codes.code); } hack.sub_discipline_id = hack.sub_discipline_id[1]; dispatch({ type: OjForm_Types.SET_LOADING, payload: true }); if (!callback_url) { hack.score = hack.difficult * 100; } //编辑 if (!id) { _context5.next = 50; break; } _context5.next = 26; return updateProgrammingTopic(id, { hack: hack, hack_codes: hack_codes, hack_sets: new_hack_sets, update_hack_sets: update_hack_sets, tags: tags, is_cover: is_cover, languages: hack.languages, codes: newCodes }); case 26: if (!callback_url) { _context5.next = 45; break; } _context5.next = 29; return publishProgrammingTopic(id); case 29: if (!callback_url.includes('paperlibrary')) { _context5.next = 35; break; } _context5.next = 32; return (0,paperlibrary/* createOrModifyQuestion */.oF)({ id: express_id, question_id: question_id, item_type: utils_enum/* QuestionType.Program */.c.Program, name: hack.name, question_score: hack.score, difficulty: hack.difficult, sub_discipline_id: hack.sub_discipline_id, tag_discipline_ids: hack.tag_discipline_ids, item_banks_group_ids: hack.item_banks_group_ids // identifier: id }); case 32: res = _context5.sent; if (res.status === 0) { _umi_production_exports.history.replace(callback_url); } return _context5.abrupt("return"); case 35: _context5.next = 37; return updateExerciseQuestion(question_id, { question_type: 6, question_score: hack.score, question_title: hack.name, description: hack.description, sub_discipline_id: hack.sub_discipline_id, tag_discipline_ids: hack.tag_discipline_ids, item_banks_group_ids: hack.item_banks_group_ids, identifier: id }); case 37: _yield$updateExercise = _context5.sent; _status2 = _yield$updateExercise.status; if (!(_status2 === 0)) { _context5.next = 43; break; } if (!(type === 'start')) { _context5.next = 42; break; } return _context5.abrupt("return"); case 42: _umi_production_exports.history.replace(callback_url); case 43: _context5.next = 47; break; case 45: // window.location.reload() message/* default.success */.ZP.success('保存成功'); initData(getTimeStamp()); case 47: dispatch({ type: OjForm_Types.SET_LOADING, payload: false }); _context5.next = 80; break; case 50: _context5.next = 52; return addProgrammingTopic({ hack: hack, hack_codes: hack_codes, hack_sets: new_list, tags: tags, examination_bank_id: express_id || null }); case 52: _yield$addProgramming = _context5.sent; identifier = _yield$addProgramming.identifier; exam_identifier = _yield$addProgramming.exam_identifier; dispatch({ type: OjForm_Types.SET_LOADING, payload: false }); if (!(type === 'start')) { _context5.next = 58; break; } return _context5.abrupt("return"); case 58: if (!identifier) { _context5.next = 80; break; } if (callback_url) { _context5.next = 63; break; } _umi_production_exports.history.replace("/problems/".concat(identifier, "/edit?lastedUpdateTime=").concat(getTimeStamp())); _context5.next = 80; break; case 63: _context5.next = 65; return publishProgrammingTopic(identifier); case 65: if (id) { _context5.next = 79; break; } if (!callback_url.includes('paperlibrary')) { _context5.next = 72; break; } _context5.next = 69; return (0,paperlibrary/* createOrModifyQuestion */.oF)({ id: express_id, item_type: utils_enum/* QuestionType.Program */.c.Program, name: hack.name, question_score: hack.score, difficulty: hack.difficult, sub_discipline_id: hack.sub_discipline_id, tag_discipline_ids: hack.tag_discipline_ids, identifier: exam_identifier }); case 69: _res = _context5.sent; if (_res.status === 0) { _umi_production_exports.history.replace(callback_url); } return _context5.abrupt("return"); case 72: _context5.next = 74; return addExerciseQuestion(parseInt(express_id, 10), { question_type: 6, question_score: hack.score, question_title: hack.name, identifier: identifier, tag_discipline_ids: hack.tag_discipline_ids }); case 74: _yield$addExerciseQue = _context5.sent; _status3 = _yield$addExerciseQue.status; if (_status3 === 0) { _umi_production_exports.history.replace(callback_url); } _context5.next = 80; break; case 79: _umi_production_exports.history.replace(callback_url); case 80: case "end": return _context5.stop(); } }, _callee5); })); return _onSubmit.apply(this, arguments); } function onPublish() { form.submit(); setTimeout( /*#__PURE__*/asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee3() { var response; return regeneratorRuntime_default()().wrap(function _callee3$(_context3) { while (1) switch (_context3.prev = _context3.next) { case 0: _context3.next = 2; return publishProgrammingTopic(id); case 2: response = _context3.sent; if (response.status === 0) { message/* default.success */.ZP.success('发布成功'); dispatch({ type: OjForm_Types.SET_STATUS, payload: 1 }); } else { message/* default.info */.ZP.info(response.message); } case 4: case "end": return _context3.stop(); } }, _callee3); })), 400); } function onCancelPublish() { return _onCancelPublish.apply(this, arguments); } function _onCancelPublish() { _onCancelPublish = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee6() { var response; return regeneratorRuntime_default()().wrap(function _callee6$(_context6) { while (1) switch (_context6.prev = _context6.next) { case 0: _context6.next = 2; return cancelPublishProgrammingTopic(id); case 2: response = _context6.sent; if (response.status === 0) { message/* default.success */.ZP.success('撤销发布成功'); dispatch({ type: OjForm_Types.SET_STATUS, payload: 0 }); } else { message/* default.info */.ZP.info(response.message); } case 4: case "end": return _context6.stop(); } }, _callee6); })); return _onCancelPublish.apply(this, arguments); } function onTriggerPublish() { //立即发布 if (status === 0) { OjForm_confirm({ title: '提示', content: /*#__PURE__*/(0,jsx_runtime.jsxs)(react.Fragment, { children: [" ", /*#__PURE__*/(0,jsx_runtime.jsx)("div", { children: "\u53D1\u5E03\u540E\u5373\u53EF\u5E94\u7528\u5230\u81EA\u5DF1\u7BA1\u7406\u7684\u8BFE\u5802" }), " ", /*#__PURE__*/(0,jsx_runtime.jsx)("div", { children: " \u662F\u5426\u786E\u8BA4\u53D1\u5E03?" }), " "] }), okText: '确定', cancelText: '取消', onOk: function onOk() { onPublish(); } }); } else { OjForm_confirm({ title: '提示', content: /*#__PURE__*/(0,jsx_runtime.jsx)("p", { children: "\u662F\u5426\u786E\u8BA4\u64A4\u9500\u53D1\u5E03\uFF1F" }), okText: '确定', cancelText: '取消', onOk: function onOk() { onCancelPublish(); } }); } } function onChallenge() { return _onChallenge.apply(this, arguments); } function _onChallenge() { _onChallenge = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee8() { return regeneratorRuntime_default()().wrap(function _callee8$(_context8) { while (1) switch (_context8.prev = _context8.next) { case 0: _context8.t0 = onSubmit; _context8.next = 3; return form.getFieldValue(); case 3: _context8.t1 = _context8.sent; (0, _context8.t0)(_context8.t1, 'start'); setTimeout( /*#__PURE__*/asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee7() { var _yield$startChallenge, identifier; return regeneratorRuntime_default()().wrap(function _callee7$(_context7) { while (1) switch (_context7.prev = _context7.next) { case 0: _context7.next = 2; return startChallenge(id); case 2: _yield$startChallenge = _context7.sent; identifier = _yield$startChallenge.identifier; if (isProgram) { window.location.href = "/myproblems/".concat(identifier, "?type=1"); } else { window.location.href = "/myproblems/".concat(identifier); } case 5: case "end": return _context7.stop(); } }, _callee7); })), 400); case 6: case "end": return _context8.stop(); } }, _callee8); })); return _onChallenge.apply(this, arguments); } function onBack() { if (callback_url) { _umi_production_exports.history.replace(callback_url); } else { if (isProgram) { var _localStorage$getItem; var item = (_localStorage$getItem = localStorage.getItem('program_homework')) === null || _localStorage$getItem === void 0 ? void 0 : _localStorage$getItem.split(','); _umi_production_exports.history.push("/classrooms/".concat(item === null || item === void 0 ? void 0 : item[0], "/program_homework/").concat(item === null || item === void 0 ? void 0 : item[1], "/detail")); } else { _umi_production_exports.history.replace("/problemset"); } } } var handleUploadRatio = function handleUploadRatio(testSetData) { var code_compile_score = parseInt(form.getFieldValue('hack').code_compile_score) || 0; var score = Math.floor((100 - code_compile_score) / testSetData.length); var lastScore = score + (100 - code_compile_score) % testSetData.length; // const score = Math.floor(100 / testSetData.length) // const lastScore = score + 100 % testSetData.length testSetData = testSetData.map(function (item, index) { if (index === testSetData.length - 1) { return objectSpread2_default()(objectSpread2_default()({}, item), {}, { score: lastScore }); } return objectSpread2_default()(objectSpread2_default()({}, item), {}, { score: score }); }); setUploadData(testSetData); }; function onChangeScore(e) { if (!e.target.value) { handleUploadRatio(uploadData); } dispatch({ type: OjForm_Types.SET_INITAL_DATA, payload: { data: objectSpread2_default()(objectSpread2_default()({}, data), {}, { hack: objectSpread2_default()(objectSpread2_default()({}, data.hack), {}, { test_set_score: e.target.value }) }) } }); } function onChangeFile(e) { dispatch({ type: OjForm_Types.SET_INITAL_DATA, payload: { data: objectSpread2_default()(objectSpread2_default()({}, data), {}, { hack: objectSpread2_default()(objectSpread2_default()({}, data.hack), {}, { is_file: e.target.value }) }) } }); } function onChangehide(e) { setischecked(e.target.checked); } function onChangeAverage(e) { var value = e.target.value; if (value) { handleUploadRatio(uploadData); } dispatch({ type: OjForm_Types.SET_INITAL_DATA, payload: { data: objectSpread2_default()(objectSpread2_default()({}, data), {}, { hack: objectSpread2_default()(objectSpread2_default()({}, data.hack), {}, { test_set_average: value }) }) } }); } function onAddTestCase() { var rs = form.getFieldValue('hack_sets'); var by = parseInt(form.getFieldValue('hack').code_compile_score) || 0; var len = rs.length + 1; var averageMark = Math.floor((100 - by) / len); var remainder = (100 - by) % len; rs.map(function (item, index) { if (test_set_average) { item.score = averageMark; } item.position = index + 1; return item; }); rs.push({ input: '', output: '', position: len, score: test_set_average ? averageMark + remainder : 0 }); form.setFieldsValue({ 'hack_sets': rs }); dispatch({ type: OjForm_Types.SET_INITAL_DATA, payload: { data: objectSpread2_default()(objectSpread2_default()({}, data), {}, { hack_sets: rs }) } }); } function onAddTestCases() { var rs = form.getFieldValue('hack_sets'); var by = parseInt(form.getFieldValue('hack').code_compile_score) || 0; var len = rs.length; var averageMark = Math.floor((100 - by) / len); var remainder = (100 - by) % len; rs.map(function (item, index) { if (test_set_average) { item.score = averageMark; if (index === rs.length - 1) { item.score = averageMark + remainder; } } item.position = index + 1; return item; }); form.setFieldsValue({ 'hack_sets': rs }); dispatch({ type: OjForm_Types.SET_INITAL_DATA, payload: { data: objectSpread2_default()(objectSpread2_default()({}, data), {}, { hack_sets: rs }) } }); } (0,react.useEffect)(function () { if (test_set_average) { var by = parseInt(form.getFieldValue('hack').code_compile_score) || 0; var len = hack_sets === null || hack_sets === void 0 ? void 0 : hack_sets.length; var averageMark = Math.floor((100 - by) / len); var remainder = (100 - by) % len; hack_sets === null || hack_sets === void 0 ? void 0 : hack_sets.map(function (item, index) { item.score = averageMark; item.position = index + 1; if (index === len - 1) { item.score = averageMark + remainder; } return item; }); dispatch({ type: OjForm_Types.SET_INITAL_DATA, payload: { data: objectSpread2_default()(objectSpread2_default()({}, data), {}, { hack_sets: hack_sets }) } }); form.setFieldsValue({ 'hack_sets': hack_sets }); } }, [test_set_average]); function onRemoveTestCase(index) { var sets = form.getFieldValue('hack_sets'); var by = parseInt(form.getFieldValue('hack').code_compile_score) || 0; var len = (sets === null || sets === void 0 ? void 0 : sets.length) - 1; var averageMark = Math.floor((100 - by) / len); var remainder = (100 - by) % len; sets.splice(index, 1); sets === null || sets === void 0 ? void 0 : sets.map(function (item, index) { if (test_set_average) { item.score = averageMark; if (index === len - 1) { item.score = averageMark + remainder; } } item.position = index + 1; return item; }); dispatch({ type: OjForm_Types.SET_INITAL_DATA, payload: { data: objectSpread2_default()(objectSpread2_default()({}, data), {}, { hack_sets: sets }) } }); form.setFieldsValue({ 'hack_sets': sets }); } function onChangeLanguage(language) { dispatch({ type: OjForm_Types.SET_INITAL_DATA, payload: { data: objectSpread2_default()(objectSpread2_default()({}, data), {}, { hack_codes: objectSpread2_default()(objectSpread2_default()({}, data.hack_codes), {}, { language: language }) }) } }); } var handleValuesChange = function handleValuesChange(changedValues) { var _changedValues$hack; if (changedValues !== null && changedValues !== void 0 && (_changedValues$hack = changedValues.hack) !== null && _changedValues$hack !== void 0 && _changedValues$hack.sub_discipline_id) { var _changedValues$hack2, _disciplines$find, _disciplines$find$sub, _disciplines$find$sub2, _form$getFieldsValue; var _changedValues$hack$s = changedValues === null || changedValues === void 0 ? void 0 : (_changedValues$hack2 = changedValues.hack) === null || _changedValues$hack2 === void 0 ? void 0 : _changedValues$hack2.sub_discipline_id, _changedValues$hack$s2 = slicedToArray_default()(_changedValues$hack$s, 2), _id = _changedValues$hack$s2[0], subId = _changedValues$hack$s2[1]; var options = disciplines === null || disciplines === void 0 ? void 0 : (_disciplines$find = disciplines.find(function (item) { return item.id === _id; })) === null || _disciplines$find === void 0 ? void 0 : (_disciplines$find$sub = _disciplines$find.sub_disciplines) === null || _disciplines$find$sub === void 0 ? void 0 : (_disciplines$find$sub2 = _disciplines$find$sub.find(function (subItem) { return subItem.id === subId; })) === null || _disciplines$find$sub2 === void 0 ? void 0 : _disciplines$find$sub2.tag_disciplines; // setKnowledgeOptions(options); var fieldData = objectSpread2_default()(objectSpread2_default()({}, form.getFieldsValue()), {}, { hack: objectSpread2_default()(objectSpread2_default()({}, (_form$getFieldsValue = form.getFieldsValue()) === null || _form$getFieldsValue === void 0 ? void 0 : _form$getFieldsValue.hack), {}, { tag_discipline_ids: [] }) }); form.setFieldsValue(fieldData); setFormValue(fieldData); } else { setFormValue(objectSpread2_default()({}, form.getFieldsValue())); } }; var handleAddKnowledgeFinish = function handleAddKnowledgeFinish(item) { setKnowledgeOptions([].concat(toConsumableArray_default()(knowledgeOptions), [objectSpread2_default()({}, item)])); }; (0,react.useEffect)(function () { var _data$hack2, _data$hack2$sub_disci; if (data !== null && data !== void 0 && (_data$hack2 = data.hack) !== null && _data$hack2 !== void 0 && (_data$hack2$sub_disci = _data$hack2.sub_discipline_id) !== null && _data$hack2$sub_disci !== void 0 && _data$hack2$sub_disci[1]) { var _data$hack3, _data$hack3$sub_disci; getTagData(data === null || data === void 0 ? void 0 : (_data$hack3 = data.hack) === null || _data$hack3 === void 0 ? void 0 : (_data$hack3$sub_disci = _data$hack3.sub_discipline_id) === null || _data$hack3$sub_disci === void 0 ? void 0 : _data$hack3$sub_disci[1]); } }, [data === null || data === void 0 ? void 0 : (_data$hack4 = data.hack) === null || _data$hack4 === void 0 ? void 0 : _data$hack4.sub_discipline_id]); //进来的时候 取一次值 var getTagData = /*#__PURE__*/function () { var _ref3 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee4(id) { var res; return regeneratorRuntime_default()().wrap(function _callee4$(_context4) { while (1) switch (_context4.prev = _context4.next) { case 0: _context4.next = 2; return (0,exercise/* getTagDiscipline */.YY)({ sub_discipline_id: id }); case 2: res = _context4.sent; setKnowledgeOptions(res.tag_disciplines); case 4: case "end": return _context4.stop(); } }, _callee4); })); return function getTagData(_x4) { return _ref3.apply(this, arguments); }; }(); //调用接口 获取knowledgeOptions function onChangeSubDiscipline(values) { // getTagData(values?.[1]) var subId = values[1]; var _getDisciplineIds5 = getDisciplineIds(disciplines, subId), _getDisciplineIds6 = slicedToArray_default()(_getDisciplineIds5, 2), dictData = _getDisciplineIds6[1]; form.setFieldsValue({ tags: [] }); dispatch({ type: OjForm_Types.SET_INITAL_DATA, payload: { dicts: dictData, data: objectSpread2_default()(objectSpread2_default()({}, data), {}, { hack: objectSpread2_default()(objectSpread2_default()({}, data.hack), {}, { sub_discipline_id: values }), tags: [] }) } }); } var addUploadFnc = function addUploadFnc(files) { var _form$getFieldValue, _form$getFieldValue$f; var isFuc = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; if (isFuc) { return function () { dispatch({ type: OjForm_Types.SET_INITAL_DATA, payload: { data: objectSpread2_default()(objectSpread2_default()({}, data), {}, { hack: objectSpread2_default()(objectSpread2_default()({}, data.hack), {}, { is_file: true }) }) } }); form.setFieldsValue({ hack: { is_file: true } }); }; } var newFiles = files === null || files === void 0 ? void 0 : files.map(function (e) { return { input: e.input, output: e.output, score: 0, position: 1 }; }); var sets = (_form$getFieldValue = form.getFieldValue('hack_sets')) === null || _form$getFieldValue === void 0 ? void 0 : (_form$getFieldValue$f = _form$getFieldValue.filter(function (e) { return e.input || e.output; })) === null || _form$getFieldValue$f === void 0 ? void 0 : _form$getFieldValue$f.concat(newFiles); var by = parseInt(form.getFieldValue('hack').code_compile_score) || 0; var len = sets === null || sets === void 0 ? void 0 : sets.length; var averageMark = Math.floor((100 - by) / len); var remainder = (100 - by) % len; sets === null || sets === void 0 ? void 0 : sets.map(function (item, index) { if (test_set_average) { item.score = averageMark; if (index === len - 1) { item.score = averageMark + remainder; } } item.position = index + 1; return item; }); dispatch({ type: OjForm_Types.SET_INITAL_DATA, payload: { data: objectSpread2_default()(objectSpread2_default()({}, data), {}, { hack_sets: sets, hack: objectSpread2_default()(objectSpread2_default()({}, data.hack), {}, { is_file: false }) }) } }); form.setFieldsValue({ 'hack_sets': sets, hack: { is_file: false } }); }; return /*#__PURE__*/(0,jsx_runtime.jsx)(spin/* default */.Z, { spinning: loading, delay: 500, children: !data ? null : /*#__PURE__*/(0,jsx_runtime.jsxs)(react.Fragment, { children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("header", { className: OjFormmodules/* default.header */.Z.header, children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", { children: [/*#__PURE__*/(0,jsx_runtime.jsx)("img", { src: "".concat(env/* default.IMG_SERVER */.Z.IMG_SERVER, "/images/").concat(user === null || user === void 0 ? void 0 : user.image_url), alt: "user", width: 30 }), /*#__PURE__*/(0,jsx_runtime.jsx)("span", { children: user === null || user === void 0 ? void 0 : user.name })] }), /*#__PURE__*/(0,jsx_runtime.jsxs)("h2", { children: [" ", data === null || data === void 0 ? void 0 : data.hack.name, " "] }), id ? /*#__PURE__*/(0,jsx_runtime.jsxs)("a", { className: OjFormmodules/* default.btn_back */.Z.btn_back, onClick: onBack, children: [" ", /*#__PURE__*/(0,jsx_runtime.jsx)(PoweroffOutlined/* default */.Z, {}), "\u9000\u51FA"] }) : null] }), /*#__PURE__*/(0,jsx_runtime.jsxs)(es_form/* default */.Z, { form: form, initialValues: data, layout: "vertical", className: OjFormmodules/* default.oj-form-container */.Z["oj-form-container"], onValuesChange: handleValuesChange, onFinish: function onFinish(v, s) { if (searchParams.get("exercise") && !callback_url.includes('paperlibrary')) { modal/* default.confirm */.Z.confirm({ title: '保存提示', content: '此题目已存在试题库中,是否将修改后的试题覆盖试题库的原题?', okText: '覆盖原题', cancelText: '不覆盖', onOk: function onOk() { return onSubmit(v, s, 1); }, onCancel: function onCancel() { return onSubmit(v, s, 0); } }); return; } // if (data?.hack?.is_my) { // Modal.confirm({ // title: '保存提示', // content: '此题目已存在试题库中,是否将修改后的试题覆盖试题库的原题?', // okText: '确认', // cancelText: '取消', // onOk: () => onSubmit(v, s,1), // onCancel:()=>onSubmit(v, s,0), // }) // return // } onSubmit(v, s); }, children: [/*#__PURE__*/(0,jsx_runtime.jsx)(SplitContainer/* default */.Z, { leftChild: /*#__PURE__*/(0,jsx_runtime.jsx)(LeftPanel, { onAddTestCases: onAddTestCases, form: form, handleAddKnowledgeFinish: handleAddKnowledgeFinish, MyGroup: MyGroup, formValue: formValue, knowledgeOptions: knowledgeOptions, onChangeLanguage: onChangeLanguage, onChangeSubDiscipline: onChangeSubDiscipline, onRemoveTestCase: onRemoveTestCase, onAddTestCase: onAddTestCase, dicts: dicts, categorys: categorys, callback_url: callback_url, hack: data.hack, onChangeScore: onChangeScore, onChangehide: onChangehide, onChangeAverage: onChangeAverage, onChangeFile: onChangeFile, uploadData: uploadData, setUploadData: setUploadData, handleUploadRatio: handleUploadRatio, ischecked: ischecked, isshows: isshows, isProgram: isProgram, addUploadFnc: addUploadFnc }), rightChild: isProgram ? /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default.Item */.Z.Item, { name: "codes", style: { marginBottom: 0 }, children: /*#__PURE__*/(0,jsx_runtime.jsx)(CodeProgramPanel, {}) }) : /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default.Item */.Z.Item, { name: ['hack_codes', 'code'], style: { marginBottom: 0 }, children: /*#__PURE__*/(0,jsx_runtime.jsx)(CodePanel/* default */.Z, { language: data.hack_codes.language }) }) }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", { className: OjFormmodules/* default.footer */.Z.footer, children: !id ? /*#__PURE__*/(0,jsx_runtime.jsxs)(react.Fragment, { children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.Z, { onClick: onBack, children: "\u53D6\u6D88" }), /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.Z, { loading: loading, type: "primary", htmlType: "submit", children: "\u4FDD\u5B58" })] }) : /*#__PURE__*/(0,jsx_runtime.jsxs)(react.Fragment, { children: [isProgram && /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.Z, { onClick: onBack, type: "primary", ghost: true, children: "\u9000\u51FA\u7F16\u8F91" }), callback_url ? null : isProgram ? null : /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.Z, { type: status ? 'default' : 'primary', onClick: onTriggerPublish, children: status ? '撤销发布' : '立即发布' }), /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.Z, { loading: loading, type: "primary", htmlType: "submit", children: "\u4FDD\u5B58" }), /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.Z, { type: "primary", onClick: onChallenge, children: status ? '开始挑战' : '模拟挑战' })] }) })] })] }) }); }); function LeftPanel(_ref5) { var _location, _location$search, _formValue$hack, _formValue$hack$sub_d; var form = _ref5.form, onAddTestCases = _ref5.onAddTestCases, handleAddKnowledgeFinish = _ref5.handleAddKnowledgeFinish, ischecked = _ref5.ischecked, MyGroup = _ref5.MyGroup, formValue = _ref5.formValue, knowledgeOptions = _ref5.knowledgeOptions, categorys = _ref5.categorys, hack = _ref5.hack, callback_url = _ref5.callback_url, onChangeAverage = _ref5.onChangeAverage, onChangeScore = _ref5.onChangeScore, onChangehide = _ref5.onChangehide, onChangeFile = _ref5.onChangeFile, onAddTestCase = _ref5.onAddTestCase, onRemoveTestCase = _ref5.onRemoveTestCase, onChangeSubDiscipline = _ref5.onChangeSubDiscipline, onChangeLanguage = _ref5.onChangeLanguage, uploadData = _ref5.uploadData, setUploadData = _ref5.setUploadData, handleUploadRatio = _ref5.handleUploadRatio, isshows = _ref5.isshows, isProgram = _ref5.isProgram, addUploadFnc = _ref5.addUploadFnc; var is_random = ((_location = location) === null || _location === void 0 ? void 0 : (_location$search = _location.search) === null || _location$search === void 0 ? void 0 : _location$search.includes('select')) || false; var _useState13 = (0,react.useState)(isshows), _useState14 = slicedToArray_default()(_useState13, 2), isshow = _useState14[0], setisshow = _useState14[1]; var test_set_average = hack.test_set_average, test_set_score = hack.test_set_score; var _useState15 = (0,react.useState)(false), _useState16 = slicedToArray_default()(_useState15, 2), showUploadFile = _useState16[0], setShowUploadFile = _useState16[1]; var handleRemove = function handleRemove(item, key) { var newList = toConsumableArray_default()(uploadData); newList.splice(key, 1); if (test_set_average) { handleUploadRatio(newList); } else { setUploadData(newList); } }; var handleInputChange = function handleInputChange(e, key) { console.log(e, key); var testData = uploadData.map(function (test, testIndex) { if (testIndex === key) { return objectSpread2_default()(objectSpread2_default()({}, test), {}, { score: e.target.value ? Number(e.target.value) : 0 }); } return test; }); setUploadData(testData); }; var addUploadData = function addUploadData(files) { if (!(files !== null && files !== void 0 && files.length)) return; //文件 if (files !== null && files !== void 0 && files[0].is_file) { addUploadFnc(files, true)(); var newList = uploadData.concat(files); if (hack.test_set_average) { handleUploadRatio(newList); } else { setUploadData(newList); } } //文本 if (!(files !== null && files !== void 0 && files[0].is_file)) { addUploadFnc(files); } }; function onStopPropagation(e) { e.stopPropagation(); } return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", { className: OjFormmodules/* default.oj-left-panel */.Z["oj-left-panel"], children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", { className: OjFormmodules/* default.oj-form-info */.Z["oj-form-info"], children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", { className: OjFormmodules/* default.field */.Z.field, children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default.Item */.Z.Item, { label: "\u96BE\u6613\u5EA6", name: ['hack', 'difficult'], rules: [{ required: true, message: '请选择难易度' }], children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_select/* default */.Z, { disabled: is_random, children: getSelectOptions(Keys.difficult) }) }), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default.Item */.Z.Item, { label: "\u8BFE\u7A0B(\u5408\u7406\u7684\u8BFE\u7A0B\u5206\u7C7B\u6709\u5229\u4E8E\u5FEB\u901F\u68C0\u7D22)", name: ['hack', 'sub_discipline_id'], rules: [{ required: true, message: '请选择课程' }], children: /*#__PURE__*/(0,jsx_runtime.jsx)(cascader/* default */.Z, { disabled: is_random, allowClear: false, options: categorys, placeholder: "\u8BF7\u9009\u62E9", onChange: onChangeSubDiscipline }) })] }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", { className: OjFormmodules/* default.field */.Z.field, children: [callback_url && /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default.Item */.Z.Item, { label: "\u5206\u6570", name: ['hack', 'score'], rules: [{ required: true, message: '请输入分数' }], extra: /*#__PURE__*/(0,jsx_runtime.jsx)("span", { style: { position: "absolute", left: 100, top: 5 }, children: "\u5206" }), children: /*#__PURE__*/(0,jsx_runtime.jsx)(input_number/* default */.Z, { disabled: is_random, min: 1, max: 100 }) }), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default.Item */.Z.Item, { label: /*#__PURE__*/(0,jsx_runtime.jsx)("div", { children: "\u5355\u4E2A\u6D4B\u8BD5\u96C6\u8BC4\u6D4B\u65F6\u957F\u9650\u5236 " }), name: ['hack', 'time_limit'], rules: [{ required: true, message: '请输入单个测试集评测时长限制' }, { type: 'number', min: 3, message: '最小限制时间是3秒' }], extra: /*#__PURE__*/(0,jsx_runtime.jsx)("span", { style: { position: "absolute", left: 100, top: 5 }, children: "\u79D2" }), children: /*#__PURE__*/(0,jsx_runtime.jsx)(input_number/* default */.Z, { min: 3 }) }), isProgram ? /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default.Item */.Z.Item, { label: "\u7F16\u7A0B\u8BED\u8A00", style: { paddingBottom: 16 }, name: ['hack', 'languages'], rules: [{ required: true, message: '请选择编程语言' }], children: /*#__PURE__*/(0,jsx_runtime.jsxs)(es_checkbox/* default.Group */.Z.Group, { children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_checkbox/* default */.Z, { value: 'C', children: "C" }), /*#__PURE__*/(0,jsx_runtime.jsx)(es_checkbox/* default */.Z, { value: 'C++', children: "C++" }), /*#__PURE__*/(0,jsx_runtime.jsx)(es_checkbox/* default */.Z, { value: 'Java', children: "Java" }), /*#__PURE__*/(0,jsx_runtime.jsx)(es_checkbox/* default */.Z, { value: 'Python', children: "Python" })] }) }) : /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default.Item */.Z.Item, { label: "\u7F16\u7A0B\u8BED\u8A00", name: ['hack_codes', 'language'], style: { paddingBottom: 16 }, rules: [{ required: true, message: '请选择编程语言' }], children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_select/* default */.Z, { onChange: onChangeLanguage, children: getSelectOptions(Keys.language) }) })] }), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default.Item */.Z.Item, { label: /*#__PURE__*/(0,jsx_runtime.jsxs)("span", { children: ["\u77E5\u8BC6\u70B9\uFF1A", /*#__PURE__*/(0,jsx_runtime.jsx)("span", { className: "c-grey-999", children: "\uFF08\u6240\u6709\u81EA\u5EFA\u77E5\u8BC6\u70B9\u4EC5\u672C\u4EBA\u53EF\u89C1\uFF0C\u88ABEduCoder\u5E73\u53F0\u5BA1\u6838\u901A\u8FC7\u4E3A\u5B98\u65B9\u77E5\u8BC6\u70B9\u540E\u6240\u6709\u7528\u6237\u53EF\u89C1\uFF09" })] }), name: ['hack', 'tag_discipline_ids'] // rules={[{ message: '请选择知识点' }]} , children: /*#__PURE__*/(0,jsx_runtime.jsx)(Knowledge/* Knowledge */.N, { selectvalues: (hack === null || hack === void 0 ? void 0 : hack.tag_discipline_id) || (hack === null || hack === void 0 ? void 0 : hack.tag_discipline_ids) // value={[]} , disabled: is_random, subId: formValue === null || formValue === void 0 ? void 0 : (_formValue$hack = formValue.hack) === null || _formValue$hack === void 0 ? void 0 : (_formValue$hack$sub_d = _formValue$hack.sub_discipline_id) === null || _formValue$hack$sub_d === void 0 ? void 0 : _formValue$hack$sub_d[1], knowledgeOptions: knowledgeOptions, onAddKnowledgeFinish: handleAddKnowledgeFinish }) }), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default.Item */.Z.Item, { label: '加入文件夹目录', name: ['hack', 'item_banks_group_ids'], labelCol: { span: 24 }, wrapperCol: { span: 24 }, children: /*#__PURE__*/(0,jsx_runtime.jsx)(CustomTree/* default */.Z, { disabled: is_random }) }), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default.Item */.Z.Item, { label: "\u4EFB\u52A1\u540D\u79F0", name: ['hack', 'name'], rules: [{ required: true, message: '请输入任务名称' }], children: /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z, { maxLength: 60, placeholder: "\u8BF7\u8F93\u5165\u4EFB\u52A1\u540D\u79F0", suffix: /*#__PURE__*/(0,jsx_runtime.jsx)("span", { children: 60 - hack.name.length }) }) }), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default.Item */.Z.Item, { name: ['hack', "description"], valuePropName: "defaultValue", rules: [{ required: true, message: '请输入描述内容' }], children: /*#__PURE__*/(0,jsx_runtime.jsx)(markdown_editor/* default */.Z, { miniToolbar: true, id: "moop_cases_content", noStorage: true, height: 200 }) }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", { className: "tst-case-info", children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("h3", { className: "flex-container", style: { justifyContent: 'space-between' }, children: [" \u6D4B\u8BD5\u7528\u4F8B\u4E0E\u7CFB\u7EDF\u8BC4\u5206\u89C4\u5219", !hack.is_file && /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.Z, { type: "primary", ghost: true, onClick: onAddTestCase, children: "\u6DFB\u52A0\u6D4B\u8BD5\u7528\u4F8B" })] }), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default.Item */.Z.Item, { name: ['hack', 'test_set_score'], children: /*#__PURE__*/(0,jsx_runtime.jsxs)(es_radio/* default.Group */.ZP.Group, { onChange: onChangeScore, children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(es_radio/* default */.ZP, { value: true, children: ["\u901A\u8FC7\u5168\u90E8\u6D4B\u8BD5\u96C6", /*#__PURE__*/(0,jsx_runtime.jsx)("span", { className: "tip", children: " \uFF08\u5B66\u5458\u8BC4\u6D4B\uFF0C\u4EC5\u5F53\u6240\u6709\u6D4B\u8BD5\u96C6\u90FD\u6B63\u786E\u65F6\uFF0C\u624D\u83B7\u5F97\u4E00\u6B21\u6027\u5956\u52B1\uFF09" })] }), /*#__PURE__*/(0,jsx_runtime.jsxs)(es_radio/* default */.ZP, { value: false, children: ["\u901A\u8FC7\u90E8\u5206\u6D4B\u8BD5\u96C6", /*#__PURE__*/(0,jsx_runtime.jsx)("span", { className: "tip", children: " \uFF08\u5B66\u5458\u8BC4\u6D4B\uFF0C\u901A\u8FC7\u6D4B\u8BD5\u96C6\u5373\u53EF\u83B7\u5F97\u5BF9\u5E94\u5956\u52B1\uFF09" })] })] }) }), /*#__PURE__*/(0,jsx_runtime.jsx)(es_checkbox/* default */.Z, { style: { marginBottom: '5px' }, checked: ischecked, onChange: onChangehide, children: "\u9690\u85CF\u5B9E\u9645\u8F93\u51FA \uFF08\u9009\u4E2D\uFF0C\u5219\u5728\u5B66\u751F\u8003\u8BD5\u8FC7\u7A0B\u4E2D\u65E0\u6CD5\u770B\u5230\u5B9E\u9645\u8F93\u51FA\u7ED3\u679C\uFF0C\u4EC5\u5C55\u793A\u662F\u5426\u8BC4\u6D4B\u662F\u5426\u901A\u8FC7\uFF09" }), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default.Item */.Z.Item, { className: OjFormmodules/* default.testJi */.Z.testJi, name: ['hack', 'is_file'], label: "\u7528\u4F8B\u7C7B\u578B:", children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default.Group */.ZP.Group, { onChange: onChangeFile, children: /*#__PURE__*/(0,jsx_runtime.jsxs)(space/* default */.Z, { direction: "horizontal", children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, { value: false, children: "\u6587\u672C" }), /*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, { value: true, children: "\u6587\u4EF6" })] }) }) }), !hack.test_set_score && /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default.Item */.Z.Item, { name: ['hack', 'test_set_average'], label: "\u7CFB\u7EDF\u8BC4\u5206\u5360\u6BD4", children: /*#__PURE__*/(0,jsx_runtime.jsxs)(es_radio/* default.Group */.ZP.Group, { onChange: onChangeAverage, children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, { value: true, children: "\u5747\u5206\u6BD4\u4F8B" }), /*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, { value: false, children: "\u81EA\u5B9A\u4E49\u6BD4\u4F8B" })] }) }), !hack.test_set_score && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", { style: { marginBottom: '20px', marginTop: '-10px' }, children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", { style: { display: 'flex', height: '30px', marginBottom: '10px' }, children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_checkbox/* default */.Z, { checked: isshow, style: { display: 'flex', alignItems: 'center' }, className: OjFormmodules/* default.checkboxs */.Z.checkboxs, onChange: function onChange(e) { setisshow(e.target.checked); form.setFieldsValue({ hack: { code_compile_score: 0 } }); if (hack.test_set_average) { if (hack.is_file) { handleUploadRatio(uploadData); } else { onAddTestCases(); // handleShareRatio(testSetList) } } }, children: "\u542F\u7528\u7F16\u8BD1\u901A\u8FC7\u5373\u53EF\u5F97\u5206" }), isshow && /*#__PURE__*/(0,jsx_runtime.jsxs)("span", { style: { display: 'flex' }, children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default.Item */.Z.Item, { rules: [{ required: true, message: '请输入编译得分' }], name: ['hack', 'code_compile_score'], children: /*#__PURE__*/(0,jsx_runtime.jsx)(input_number/* default */.Z, { onChange: function onChange() { if (hack.test_set_average) { if (hack.is_file) { handleUploadRatio(uploadData); } else { onAddTestCases(); } } }, parser: function parser(e) { return isNaN(parseInt(e)) ? '' : parseInt(e); }, min: 0, max: 100, style: { width: '90px', margin: '5px 0px' } }) }), " ", /*#__PURE__*/(0,jsx_runtime.jsx)("span", { style: { display: 'flex', alignItems: 'center', marginLeft: '5px' }, children: "%" })] })] }), /*#__PURE__*/(0,jsx_runtime.jsx)("span", { style: { color: '#999', fontSize: '12px', marginLeft: '-8px' }, children: "\uFF08\u8BF7\u6CE8\u610F\u8BE5\u5B9E\u8BAD\u9898\u662F\u5426\u6709\u7F16\u8BD1\u8FC7\u7A0B\uFF0C\u82E5\u6CA1\u6709\u5219\u65E0\u6CD5\u83B7\u5F97\u7F16\u8BD1\u5F97\u5206\uFF09" })] }), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", { className: OjFormmodules/* default.upBtn */.Z.upBtn, children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.Z, { ghost: true, type: "primary", className: "mb20", onClick: function onClick() { return setShowUploadFile(true); }, children: "\u6279\u91CF\u4E0A\u4F20\u6D4B\u8BD5\u7528\u4F8B" }), (hack === null || hack === void 0 ? void 0 : hack.is_file) && /*#__PURE__*/(0,jsx_runtime.jsx)(UploadFile/* UploadTable */.Y2, { disabled: hack === null || hack === void 0 ? void 0 : hack.test_set_average, inputChange: handleInputChange, showScore: !hack.test_set_score, data: uploadData, onRemove: handleRemove })] }), !hack.is_file && /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default.List */.Z.List, { name: "hack_sets", children: function children(fields, _ref6) { objectDestructuringEmpty_default()(_ref6); return /*#__PURE__*/(0,jsx_runtime.jsx)(collapse/* default */.Z, { accordion: true, children: fields.map(function (field, index) { return /*#__PURE__*/(0,jsx_runtime.jsxs)(Panel, { header: /*#__PURE__*/(0,jsx_runtime.jsxs)("a", { className: OjFormmodules/* default.test-case-name */.Z["test-case-name"], children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("span", { children: ["\u6D4B\u8BD5\u7528\u4F8B", index + 1] }), !test_set_score ? /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default.Item */.Z.Item, { name: [field.name, 'score'], fieldKey: [field.fieldKey, 'score'], rules: [{ required: true, message: "\u8BF7\u8F93\u5165\u6D4B\u8BD5\u96C6".concat(index + 1, "\u8BC4\u5206") }], children: /*#__PURE__*/(0,jsx_runtime.jsx)(input_number/* default */.Z, { onClick: onStopPropagation, min: 0, max: 100, disabled: test_set_average }) }), /*#__PURE__*/(0,jsx_runtime.jsx)("span", { children: "%" })] }) : null] }), extra: index > 0 ? /*#__PURE__*/(0,jsx_runtime.jsx)("div", { onClick: onStopPropagation, children: /*#__PURE__*/(0,jsx_runtime.jsx)(popconfirm/* default */.Z, { okText: "\u786E\u5B9A", cancelText: "\u53D6\u6D88", title: '确定删除测试集' + (index + 1), onConfirm: function onConfirm() { onRemoveTestCase(index); }, children: /*#__PURE__*/(0,jsx_runtime.jsx)(CloseCircleOutlined/* default */.Z, { className: OjFormmodules/* default.btn-remove-case */.Z["btn-remove-case"] }) }) }) : null, children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default.Item */.Z.Item, { label: "\u8F93\u5165", name: [field.name, 'input'], fieldKey: [field.fieldKey, 'input'], children: /*#__PURE__*/(0,jsx_runtime.jsx)(TextArea, {}) }), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default.Item */.Z.Item, { label: "\u8F93\u51FA", name: [field.name, 'output'], fieldKey: [field.fieldKey, 'output'], rules: [{ required: true, message: '请输入输出内容' }], children: /*#__PURE__*/(0,jsx_runtime.jsx)(TextArea, {}) })] }, "".concat(field.key, "--").concat(index)); }) }); } })] })] }), /*#__PURE__*/(0,jsx_runtime.jsx)(UploadFile/* default */.ZP, { rootIdentifier: null, visible: showUploadFile, onClose: function onClose() { return setShowUploadFile(false); }, onOK: addUploadData, multiple: true, defaultMultipleValue: hack === null || hack === void 0 ? void 0 : hack.is_file })] }); } /***/ }), /***/ 70960: /*!***************************!*\ !*** ./src/utils/enum.ts ***! \***************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "c": function() { return /* binding */ QuestionType; } /* harmony export */ }); /* unused harmony export PageType */ var PageType; (function (PageType) { PageType["FirstPage"] = "firstPage"; PageType["PrevPage"] = "prevPage"; PageType["NextPage"] = "nextPage"; })(PageType || (PageType = {})); var QuestionType; (function (QuestionType) { QuestionType[QuestionType["Single"] = 0] = "Single"; QuestionType[QuestionType["Multiple"] = 1] = "Multiple"; QuestionType[QuestionType["Judge"] = 2] = "Judge"; QuestionType[QuestionType["Fill"] = 3] = "Fill"; QuestionType[QuestionType["Subjective"] = 4] = "Subjective"; QuestionType[QuestionType["Shixun"] = 5] = "Shixun"; QuestionType[QuestionType["Program"] = 6] = "Program"; QuestionType[QuestionType["Combine"] = 7] = "Combine"; })(QuestionType || (QuestionType = {})); /***/ }), /***/ 63778: /*!******************************!*\ !*** ./src/utils/urlTool.ts ***! \******************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { /* harmony export */ __webpack_require__.d(__webpack_exports__, { /* harmony export */ "G": function() { return /* binding */ fromStore; }, /* harmony export */ "t": function() { return /* binding */ toStore; } /* harmony export */ }); /* harmony import */ var store__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! store */ 58971); /* harmony import */ var store__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(store__WEBPACK_IMPORTED_MODULE_0__); var isDev = (/* unused pure expression or super */ null && ("production" === 'development')); function toStore(key, val) { var _config = store__WEBPACK_IMPORTED_MODULE_0___default().get('__ec'); if (!_config) _config = {}; _config[key] = val; store__WEBPACK_IMPORTED_MODULE_0___default().set('__ec', _config); } function fromStore(key, defaultVal) { var _config = store__WEBPACK_IMPORTED_MODULE_0___default().get('__ec'); if (!_config) return defaultVal; return _config[key] === undefined ? defaultVal : _config[key]; } /***/ }), /***/ 77969: /*!******************************************************!*\ !*** ./src/pages/Problems/OjForm/index.less?modules ***! \******************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__) { // extracted by mini-css-extract-plugin /* harmony default export */ __webpack_exports__["Z"] = ({"header":"header___HqHSe","checkboxs":"checkboxs___ObBnD","field":"field___w_sM6","oj-form-container":"oj-form-container____odYP","oj-left-panel":"oj-left-panel___emEB2","oj-form-info":"oj-form-info___m00Ag","footer":"footer___O4iSJ","test-case-name":"test-case-name___miZcb","btn-remove-case":"btn-remove-case___cHap2","icon-tag":"icon-tag___gmyTb","btn_back":"btn_back___tNmX3","testJi":"testJi___L3fHb","upBtn":"upBtn___RGH6X"}); /***/ }), /***/ 12867: /*!****************************************************!*\ !*** ./src/components/tpi-code-setting/index.less ***! \****************************************************/ /***/ (function() { // extracted by mini-css-extract-plugin /***/ }) }]);