You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
920 lines
36 KiB
920 lines
36 KiB
"use strict";
|
|
(self["webpackChunk"] = self["webpackChunk"] || []).push([[94498],{
|
|
|
|
/***/ 45544:
|
|
/*!**********************************************************!*\
|
|
!*** ./src/components/FixedButton/index.tsx + 1 modules ***!
|
|
\**********************************************************/
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
// EXPORTS
|
|
__webpack_require__.d(__webpack_exports__, {
|
|
t: function() { return /* binding */ FixedButton; }
|
|
});
|
|
|
|
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/objectSpread2.js
|
|
var objectSpread2 = __webpack_require__(26801);
|
|
var objectSpread2_default = /*#__PURE__*/__webpack_require__.n(objectSpread2);
|
|
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
|
|
var _react_17_0_2_react = __webpack_require__(59301);
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.7.1@antd/es/button/index.js
|
|
var es_button = __webpack_require__(5436);
|
|
;// CONCATENATED MODULE: ./src/components/FixedButton/index.less?modules
|
|
// extracted by mini-css-extract-plugin
|
|
/* harmony default export */ var FixedButtonmodules = ({"buttonFixed":"buttonFixed___vyq30","button":"button___hxmYv","buttonWrap":"buttonWrap___uK8dl"});
|
|
// EXTERNAL MODULE: ./node_modules/_classnames@2.3.2@classnames/index.js
|
|
var _classnames_2_3_2_classnames = __webpack_require__(12124);
|
|
var _classnames_2_3_2_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_3_2_classnames);
|
|
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/jsx-runtime.js
|
|
var jsx_runtime = __webpack_require__(37712);
|
|
;// CONCATENATED MODULE: ./src/components/FixedButton/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var FixedButton = function FixedButton(_ref) {
|
|
var _ref$cancelText = _ref.cancelText,
|
|
cancelText = _ref$cancelText === void 0 ? '取消' : _ref$cancelText,
|
|
_ref$okText = _ref.okText,
|
|
okText = _ref$okText === void 0 ? '确定' : _ref$okText,
|
|
_ref$loading = _ref.loading,
|
|
loading = _ref$loading === void 0 ? false : _ref$loading,
|
|
_ref$hasOkBtn = _ref.hasOkBtn,
|
|
hasOkBtn = _ref$hasOkBtn === void 0 ? true : _ref$hasOkBtn,
|
|
_ref$hasCancelBtn = _ref.hasCancelBtn,
|
|
hasCancelBtn = _ref$hasCancelBtn === void 0 ? true : _ref$hasCancelBtn,
|
|
_ref$okButtonProps = _ref.okButtonProps,
|
|
okButtonProps = _ref$okButtonProps === void 0 ? {} : _ref$okButtonProps,
|
|
_ref$onCancel = _ref.onCancel,
|
|
onCancel = _ref$onCancel === void 0 ? function () {} : _ref$onCancel,
|
|
_ref$onOk = _ref.onOk,
|
|
onOk = _ref$onOk === void 0 ? function () {} : _ref$onOk,
|
|
_ref$className = _ref.className,
|
|
className = _ref$className === void 0 ? '' : _ref$className;
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
className: _classnames_2_3_2_classnames_default()(FixedButtonmodules.buttonFixed, className),
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
className: FixedButtonmodules.buttonWrap,
|
|
children: [hasCancelBtn && /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
size: "middle",
|
|
className: "".concat(FixedButtonmodules.button, " mr20")
|
|
// 点击取消的返回
|
|
,
|
|
onClick: onCancel,
|
|
children: cancelText
|
|
}), hasOkBtn && /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, objectSpread2_default()(objectSpread2_default()({
|
|
size: 'middle',
|
|
type: "primary",
|
|
className: "".concat(FixedButtonmodules.button, " mr20"),
|
|
loading: loading,
|
|
onClick: onOk
|
|
}, okButtonProps), {}, {
|
|
children: okText
|
|
}))]
|
|
})
|
|
});
|
|
};
|
|
|
|
/***/ }),
|
|
|
|
/***/ 65239:
|
|
/*!****************************************************************************************!*\
|
|
!*** ./src/pages/Shixuns/Edit/body/Level/Challenges/NewPractice/index.tsx + 2 modules ***!
|
|
\****************************************************************************************/
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
// ESM COMPAT FLAG
|
|
__webpack_require__.r(__webpack_exports__);
|
|
|
|
// EXPORTS
|
|
__webpack_require__.d(__webpack_exports__, {
|
|
"default": function() { return /* binding */ Challenges_NewPractice; }
|
|
});
|
|
|
|
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/regeneratorRuntime.js
|
|
var regeneratorRuntime = __webpack_require__(10574);
|
|
var regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(regeneratorRuntime);
|
|
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/asyncToGenerator.js
|
|
var asyncToGenerator = __webpack_require__(39343);
|
|
var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator);
|
|
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/objectSpread2.js
|
|
var objectSpread2 = __webpack_require__(26801);
|
|
var objectSpread2_default = /*#__PURE__*/__webpack_require__.n(objectSpread2);
|
|
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/slicedToArray.js
|
|
var slicedToArray = __webpack_require__(11006);
|
|
var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);
|
|
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
|
|
var _react_17_0_2_react = __webpack_require__(59301);
|
|
// EXTERNAL MODULE: ./src/.umi-production/exports.ts
|
|
var _umi_production_exports = __webpack_require__(51649);
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.7.1@antd/es/form/index.js + 17 modules
|
|
var es_form = __webpack_require__(58112);
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.7.1@antd/es/message/index.js + 4 modules
|
|
var message = __webpack_require__(46570);
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.7.1@antd/es/modal/index.js + 9 modules
|
|
var modal = __webpack_require__(13209);
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.7.1@antd/es/input/index.js + 5 modules
|
|
var input = __webpack_require__(56613);
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.7.1@antd/es/radio/index.js + 5 modules
|
|
var es_radio = __webpack_require__(85436);
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.7.1@antd/es/row/index.js
|
|
var row = __webpack_require__(36166);
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.7.1@antd/es/col/index.js
|
|
var col = __webpack_require__(9154);
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.7.1@antd/es/select/index.js
|
|
var es_select = __webpack_require__(24632);
|
|
// EXTERNAL MODULE: ./src/components/markdown-editor/index.tsx + 10 modules
|
|
var markdown_editor = __webpack_require__(20755);
|
|
// EXTERNAL MODULE: ./src/service/shixuns.ts
|
|
var shixuns = __webpack_require__(90935);
|
|
;// CONCATENATED MODULE: ./src/pages/Shixuns/Edit/body/Level/Challenges/NewPractice/index.less?modules
|
|
// extracted by mini-css-extract-plugin
|
|
/* harmony default export */ var NewPracticemodules = ({"flex_box_center":"flex_box_center___GIMe1","flex_space_between":"flex_space_between___gMzN8","flex_box_vertical_center":"flex_box_vertical_center___SgaNa","flex_box_center_end":"flex_box_center_end___N1Baa","flex_box_column":"flex_box_column___hIyfb","bg":"bg___Y4VEx","formWrap":"formWrap___JY9de"});
|
|
// EXTERNAL MODULE: ./node_modules/_lodash@4.17.21@lodash/lodash.js
|
|
var lodash = __webpack_require__(89392);
|
|
// EXTERNAL MODULE: ./src/components/FixedButton/index.tsx + 1 modules
|
|
var FixedButton = __webpack_require__(45544);
|
|
// EXTERNAL MODULE: ./src/pages/Shixuns/Edit/body/Level/Challenges/components/Loading/index.tsx + 1 modules
|
|
var Loading = __webpack_require__(67573);
|
|
// EXTERNAL MODULE: ./src/pages/Shixuns/Edit/body/Level/Challenges/RankingSetting/challenge-nav.tsx + 1 modules
|
|
var challenge_nav = __webpack_require__(60641);
|
|
// EXTERNAL MODULE: ./src/pages/Shixuns/Edit/utils/index.tsx
|
|
var utils = __webpack_require__(78115);
|
|
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/toConsumableArray.js
|
|
var toConsumableArray = __webpack_require__(93923);
|
|
var toConsumableArray_default = /*#__PURE__*/__webpack_require__.n(toConsumableArray);
|
|
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/objectWithoutProperties.js
|
|
var objectWithoutProperties = __webpack_require__(27161);
|
|
var objectWithoutProperties_default = /*#__PURE__*/__webpack_require__.n(objectWithoutProperties);
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.7.1@antd/es/badge/index.js + 4 modules
|
|
var badge = __webpack_require__(12130);
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.7.1@antd/es/button/index.js
|
|
var es_button = __webpack_require__(5436);
|
|
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/jsx-runtime.js
|
|
var jsx_runtime = __webpack_require__(37712);
|
|
;// CONCATENATED MODULE: ./src/components/Form/AddTags/index.tsx
|
|
|
|
|
|
|
|
|
|
var _excluded = ["InputRight", "value", "onChange"];
|
|
|
|
|
|
|
|
|
|
var AddTags = function AddTags(_ref) {
|
|
var InputRight = _ref.InputRight,
|
|
_ref$value = _ref.value,
|
|
value = _ref$value === void 0 ? [] : _ref$value,
|
|
_ref$onChange = _ref.onChange,
|
|
onChange = _ref$onChange === void 0 ? function () {} : _ref$onChange,
|
|
props = objectWithoutProperties_default()(_ref, _excluded);
|
|
var _useState = (0,_react_17_0_2_react.useState)(),
|
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
inputValue = _useState2[0],
|
|
setInputValue = _useState2[1];
|
|
var handleDelete = function handleDelete(index) {
|
|
var values = value.filter(function (_, key) {
|
|
return key !== index;
|
|
});
|
|
onChange(values);
|
|
};
|
|
var handleInputEnter = function handleInputEnter(e) {
|
|
e.preventDefault();
|
|
if (!inputValue) {
|
|
return;
|
|
}
|
|
onChange([].concat(toConsumableArray_default()(value), [inputValue]));
|
|
setInputValue(null);
|
|
};
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z, objectSpread2_default()(objectSpread2_default()({}, props), {}, {
|
|
value: inputValue,
|
|
onChange: function onChange(e) {
|
|
return setInputValue(e.target.value);
|
|
},
|
|
onPressEnter: handleInputEnter,
|
|
onBlur: handleInputEnter
|
|
})), InputRight, /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
className: "mt20",
|
|
children: value === null || value === void 0 ? void 0 : value.map(function (item, index) {
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(badge/* default */.Z, {
|
|
className: "ml10 mr10",
|
|
count: "x",
|
|
onClick: function onClick() {
|
|
return handleDelete(index);
|
|
},
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
type: "primary",
|
|
ghost: true,
|
|
children: item
|
|
})
|
|
});
|
|
})
|
|
})]
|
|
});
|
|
};
|
|
/* harmony default export */ var Form_AddTags = (AddTags);
|
|
;// CONCATENATED MODULE: ./src/pages/Shixuns/Edit/body/Level/Challenges/NewPractice/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var mappingDifficulty = {
|
|
1: [100, 200],
|
|
2: [300, 400, 500, 600],
|
|
3: [700, 800, 900, 1000]
|
|
};
|
|
var NewPractice = function NewPractice(_ref) {
|
|
var _formValue$subject, _shixunsDetail$detail2, _shixunsDetail$detail3, _shixunsDetail$detail4, _shixunsDetail$detail5;
|
|
var shixunsDetail = _ref.shixunsDetail,
|
|
dispatch = _ref.dispatch,
|
|
practiceSetting = _ref.practiceSetting;
|
|
var params = (0,_umi_production_exports.useParams)();
|
|
var _Form$useForm = es_form/* default */.Z.useForm(),
|
|
_Form$useForm2 = slicedToArray_default()(_Form$useForm, 1),
|
|
form = _Form$useForm2[0];
|
|
var _useState = (0,_react_17_0_2_react.useState)({}),
|
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
formValue = _useState2[0],
|
|
setFormValue = _useState2[1];
|
|
var _useState3 = (0,_react_17_0_2_react.useState)([100, 200]),
|
|
_useState4 = slicedToArray_default()(_useState3, 2),
|
|
scoreList = _useState4[0],
|
|
setScoreList = _useState4[1];
|
|
var challengesNew = shixunsDetail.challengesNew;
|
|
var _useState5 = (0,_react_17_0_2_react.useState)(),
|
|
_useState6 = slicedToArray_default()(_useState5, 2),
|
|
editData = _useState6[0],
|
|
setEditData = _useState6[1];
|
|
var _useState7 = (0,_react_17_0_2_react.useState)(),
|
|
_useState8 = slicedToArray_default()(_useState7, 2),
|
|
isEdit = _useState8[0],
|
|
setIsEdit = _useState8[1];
|
|
var _useState9 = (0,_react_17_0_2_react.useState)(true),
|
|
_useState10 = slicedToArray_default()(_useState9, 2),
|
|
loading = _useState10[0],
|
|
setLoading = _useState10[1];
|
|
var _useState11 = (0,_react_17_0_2_react.useState)(1),
|
|
_useState12 = slicedToArray_default()(_useState11, 2),
|
|
updateIndex = _useState12[0],
|
|
setUpdateIndex = _useState12[1];
|
|
var changeData = (0,_react_17_0_2_react.useRef)({
|
|
subject: '',
|
|
difficulty: 1,
|
|
hide_task_pass: false,
|
|
score: 100,
|
|
hide_width_rate: 40,
|
|
task_pass: (0,utils/* formatCodemirrorValue */.S)(challengesNew.task_pass_default)
|
|
});
|
|
var timer = (0,_react_17_0_2_react.useRef)(null);
|
|
var selectQuestionParams = practiceSetting.selectQuestionParams,
|
|
id = practiceSetting.id,
|
|
newQuestion = practiceSetting.newQuestion;
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
if (params.challengesId) {
|
|
setIsEdit(true);
|
|
getEditData();
|
|
} else {
|
|
setLoading(true);
|
|
setIsEdit(false);
|
|
dispatch({
|
|
type: 'shixunsDetail/getChallengesNew',
|
|
payload: objectSpread2_default()({}, params)
|
|
});
|
|
setLoading(false);
|
|
}
|
|
setTimeout(function () {
|
|
var _document$getElementB;
|
|
(_document$getElementB = document.getElementById('practice-scroll')) === null || _document$getElementB === void 0 || _document$getElementB.scrollTo(0, 0);
|
|
}, 300);
|
|
}, [params]);
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
setConfirmValue();
|
|
return function () {
|
|
clearTimeout(timer.current);
|
|
};
|
|
}, [formValue]);
|
|
var getEditData = /*#__PURE__*/function () {
|
|
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
|
|
var resData, res;
|
|
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
|
|
while (1) switch (_context.prev = _context.next) {
|
|
case 0:
|
|
setLoading(true);
|
|
_context.next = 3;
|
|
return (0,shixuns/* getChallengePractice */.ii)({
|
|
id: params.id,
|
|
challengeId: params.challengesId,
|
|
tab: 0
|
|
});
|
|
case 3:
|
|
resData = _context.sent;
|
|
if (resData) {
|
|
res = objectSpread2_default()(objectSpread2_default()({}, resData), {}, {
|
|
task_pass: (0,utils/* formatCodemirrorValue */.S)(resData.task_pass)
|
|
});
|
|
setEditData(res);
|
|
initEditFormData(res);
|
|
setLoading(false);
|
|
changeData.current = {
|
|
subject: res.subject,
|
|
difficulty: res.difficulty,
|
|
score: res.score,
|
|
task_pass: res.task_pass,
|
|
hide_task_pass: res.hide_task_pass,
|
|
hide_width_rate: res.hide_width_rate
|
|
};
|
|
}
|
|
case 5:
|
|
case "end":
|
|
return _context.stop();
|
|
}
|
|
}, _callee);
|
|
}));
|
|
return function getEditData() {
|
|
return _ref2.apply(this, arguments);
|
|
};
|
|
}();
|
|
var initEditFormData = function initEditFormData(res) {
|
|
var data = {
|
|
subject: res.name,
|
|
difficulty: res.difficulty,
|
|
score: res.score,
|
|
challenge_tag: res.tags,
|
|
task_pass: res.task_pass,
|
|
hide_task_pass: res.hide_task_pass,
|
|
hide_width_rate: res.hide_width_rate
|
|
};
|
|
var scores = mappingDifficulty[res.difficulty];
|
|
setScoreList(scores);
|
|
form.setFieldsValue(objectSpread2_default()({}, data));
|
|
setFormValue(objectSpread2_default()({}, data));
|
|
};
|
|
var handleDifficultyChange = function handleDifficultyChange(difficulty) {
|
|
var scores = mappingDifficulty[difficulty];
|
|
var defaultScore = scores === null || scores === void 0 ? void 0 : scores[0];
|
|
setScoreList(scores);
|
|
form.setFieldsValue({
|
|
score: defaultScore
|
|
});
|
|
setFormValue(objectSpread2_default()(objectSpread2_default()({}, form.getFieldsValue()), {
|
|
score: defaultScore
|
|
}));
|
|
};
|
|
var handleValuesChange = function handleValuesChange(changedValues, values) {
|
|
setFormValue(objectSpread2_default()({}, form.getFieldsValue()));
|
|
if ('difficulty' in changedValues) {
|
|
handleDifficultyChange(changedValues.difficulty);
|
|
}
|
|
};
|
|
var handleFinish = /*#__PURE__*/function () {
|
|
var _ref3 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2() {
|
|
var _shixunsDetail$detail;
|
|
var values,
|
|
_res,
|
|
bodyData,
|
|
res,
|
|
_args2 = arguments;
|
|
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
|
|
while (1) switch (_context2.prev = _context2.next) {
|
|
case 0:
|
|
values = _args2.length > 0 && _args2[0] !== undefined ? _args2[0] : {};
|
|
if (!(!isEdit && ((_shixunsDetail$detail = shixunsDetail.detail) === null || _shixunsDetail$detail === void 0 ? void 0 : _shixunsDetail$detail.shixun_status) === 2)) {
|
|
_context2.next = 4;
|
|
break;
|
|
}
|
|
message/* default */.ZP.info('该实训已经发布不能新建');
|
|
return _context2.abrupt("return");
|
|
case 4:
|
|
if (!isEdit) {
|
|
_context2.next = 10;
|
|
break;
|
|
}
|
|
_context2.next = 7;
|
|
return (0,shixuns/* updateChallengesNew */.Rs)(objectSpread2_default()(objectSpread2_default()({}, params), {}, {
|
|
tab: 0,
|
|
challenge: objectSpread2_default()({}, values),
|
|
challenge_tag: values.challenge_tag
|
|
}));
|
|
case 7:
|
|
_res = _context2.sent;
|
|
if (_res) {
|
|
dispatch({
|
|
type: 'practiceSetting/setUpdateIndex'
|
|
});
|
|
_umi_production_exports.history.replace("/shixuns/".concat(params.id, "/edit/").concat(params.challengesId, "/tab=2"));
|
|
}
|
|
return _context2.abrupt("return");
|
|
case 10:
|
|
bodyData = objectSpread2_default()({}, formValue);
|
|
bodyData['identifier'] = params.id;
|
|
bodyData['st'] = 0;
|
|
_context2.next = 15;
|
|
return (0,shixuns/* addChallengesNew */.al)(objectSpread2_default()({}, bodyData));
|
|
case 15:
|
|
res = _context2.sent;
|
|
if (res.status === 1) {
|
|
_umi_production_exports.history.replace("/shixuns/".concat(params.id, "/edit/").concat(res.challenge_id, "/tab=2"));
|
|
setTimeout(function () {
|
|
dispatch({
|
|
type: 'practiceSetting/setParams',
|
|
payload: {
|
|
newQuestion: null
|
|
}
|
|
});
|
|
dispatch({
|
|
type: 'practiceSetting/setUpdateIndex'
|
|
});
|
|
}, 200);
|
|
}
|
|
case 17:
|
|
case "end":
|
|
return _context2.stop();
|
|
}
|
|
}, _callee2);
|
|
}));
|
|
return function handleFinish() {
|
|
return _ref3.apply(this, arguments);
|
|
};
|
|
}();
|
|
var handleCancel = function handleCancel() {
|
|
toExit();
|
|
// setUpdateIndex(updateIndex + 1);
|
|
// dispatch({
|
|
// type: 'practiceSetting/setSideBarTabs',
|
|
// payload: { confirmLeave: false }
|
|
// });
|
|
// if (isEdit) {
|
|
// getEditData();
|
|
// return;
|
|
// }
|
|
|
|
// if (JSON.stringify(selectQuestionParams) === '{}') {
|
|
// const path = `/shixuns/${params.id}/edit?tabId=level`
|
|
// history.push(path)
|
|
// setTimeout(() => {
|
|
// dispatch({ type: 'practiceSetting/setUpdateIndex' });
|
|
// }, 200)
|
|
// return;
|
|
// }
|
|
// const path = `/shixuns/${params.id}/edit/${selectQuestionParams.challenge_id}/${selectQuestionParams.st === 1 ? 'editquestion' : 'editcheckpoint'}`
|
|
// history.push(path)
|
|
// setTimeout(() => {
|
|
// dispatch({ type: 'practiceSetting/setUpdateIndex' });
|
|
// }, 200)
|
|
};
|
|
|
|
var setConfirmValue = function setConfirmValue() {
|
|
clearTimeout(timer.current);
|
|
timer.current = setTimeout(updateValue, 500);
|
|
};
|
|
var updateValue = function updateValue() {
|
|
if ('subject' in formValue && newQuestion) {
|
|
dispatch({
|
|
type: 'practiceSetting/setParams',
|
|
payload: {
|
|
newQuestion: {
|
|
st: 0,
|
|
name: formValue === null || formValue === void 0 ? void 0 : formValue.subject
|
|
}
|
|
}
|
|
});
|
|
}
|
|
var changeKeys = ['subject', 'difficulty', 'score', 'task_pass'];
|
|
var formBool = changeKeys.some(function (key) {
|
|
var a = (0,lodash.isNumber)(formValue[key]) ? String(formValue[key]) : formValue[key];
|
|
var b = (0,lodash.isNumber)(changeData.current[key]) ? String(changeData.current[key]) : changeData.current[key];
|
|
// console.log(a, '=====', b, a === b ? '相等' : '不相等', key)
|
|
return !(0,lodash.isEqual)(a, b);
|
|
});
|
|
if (formBool) {
|
|
dispatch({
|
|
type: 'practiceSetting/setSideBarTabs',
|
|
payload: {
|
|
confirmLeave: true
|
|
}
|
|
});
|
|
} else {
|
|
dispatch({
|
|
type: 'practiceSetting/setSideBarTabs',
|
|
payload: {
|
|
confirmLeave: false
|
|
}
|
|
});
|
|
}
|
|
};
|
|
var toExit = function toExit() {
|
|
var _practiceSetting$side;
|
|
var toNext = function toNext() {
|
|
_umi_production_exports.history.push("/shixuns/".concat(id, "/challenges"));
|
|
dispatch({
|
|
type: 'practiceSetting/setSideBarTabs',
|
|
payload: {
|
|
confirmLeave: false
|
|
}
|
|
});
|
|
};
|
|
if (practiceSetting !== null && practiceSetting !== void 0 && (_practiceSetting$side = practiceSetting.sideBar) !== null && _practiceSetting$side !== void 0 && _practiceSetting$side.confirmLeave) {
|
|
modal/* default */.Z.confirm({
|
|
title: "离开此页提示",
|
|
content: "系统可能不会保存您所做的更改。",
|
|
okText: "离开",
|
|
cancelText: "取消",
|
|
onOk: function onOk() {
|
|
toNext();
|
|
}
|
|
});
|
|
} else {
|
|
toNext();
|
|
}
|
|
};
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)(_react_17_0_2_react.Fragment, {
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("section", {
|
|
className: NewPracticemodules.bg,
|
|
id: "practice-scroll",
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(es_form/* default */.Z, {
|
|
form: form,
|
|
className: NewPracticemodules.formWrap,
|
|
scrollToFirstError: true,
|
|
layout: "vertical",
|
|
onValuesChange: handleValuesChange,
|
|
onFinish: handleFinish,
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(challenge_nav/* default */.Z, {
|
|
activeIndex: 0,
|
|
isEdit: isEdit
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
|
|
initialValue: "",
|
|
name: "subject",
|
|
label: "\u4EFB\u52A1\u540D\u79F0:",
|
|
rules: [{
|
|
required: true,
|
|
message: "请输入任务名称"
|
|
}],
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z, {
|
|
bordered: false,
|
|
maxLength: 60,
|
|
suffix: "".concat(((_formValue$subject = formValue.subject) === null || _formValue$subject === void 0 ? void 0 : _formValue$subject.length) || 0, "/60"),
|
|
placeholder: "\u4F8B\u5982\uFF1A\u4ECEPython\u7A0B\u5E8F\u8BBE\u8BA1-\u5165\u95E8\u7CBE\u901A"
|
|
})
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
|
|
name: "task_pass",
|
|
label: "\u4EFB\u52A1\u8981\u6C42:",
|
|
rules: [{
|
|
required: true,
|
|
message: "请输入作业的简介"
|
|
}, {
|
|
max: 35000,
|
|
message: '过关任务简介最大限制35000个字符'
|
|
}],
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(markdown_editor/* default */.Z, {
|
|
watch: true,
|
|
defaultValue: isEdit ? editData === null || editData === void 0 ? void 0 : editData.task_pass : challengesNew.task_pass_default
|
|
}, params.challengesId || '3')
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
|
|
initialValue: 40,
|
|
name: "hide_width_rate",
|
|
label: "\u4EFB\u52A1\u8981\u6C42\u9ED8\u8BA4\u5C55\u793A\u5BBD\u5EA6:",
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(es_radio/* default.Group */.ZP.Group, {
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
|
|
value: 0,
|
|
children: "0%"
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
|
|
style: {
|
|
marginLeft: 70
|
|
},
|
|
value: 30,
|
|
children: "30%"
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
|
|
style: {
|
|
marginLeft: 70
|
|
},
|
|
value: 40,
|
|
children: "40%"
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
|
|
style: {
|
|
marginLeft: 70
|
|
},
|
|
value: 50,
|
|
children: "50%"
|
|
})]
|
|
})
|
|
}), formValue.unity_3d && ((_shixunsDetail$detail2 = shixunsDetail.detail) === null || _shixunsDetail$detail2 === void 0 ? void 0 : _shixunsDetail$detail2.identity) < 3 && /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
|
|
name: "unity_3d_routes",
|
|
label: "\u8DEF\u5F84:",
|
|
rules: [{
|
|
required: true,
|
|
message: "必填项:不能为空"
|
|
}],
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z, {
|
|
bordered: false,
|
|
disabled: ((_shixunsDetail$detail3 = shixunsDetail.detail) === null || _shixunsDetail$detail3 === void 0 ? void 0 : _shixunsDetail$detail3.shixun_status) === 2,
|
|
placeholder: "\u8BF7\u9009\u62E9\u7248\u672C\u5E93\u4E2D\u7684\u4EE3\u7801\u6587\u4EF6\u3002\u4F8B\uFF1A src/step1/HelloWorld.java"
|
|
})
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
|
|
initialValue: 1,
|
|
name: "difficulty",
|
|
label: "\u96BE\u5EA6\u7CFB\u6570:",
|
|
rules: [{
|
|
required: true,
|
|
message: "请选择难度系数"
|
|
}],
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(es_radio/* default.Group */.ZP.Group, {
|
|
disabled: ((_shixunsDetail$detail4 = shixunsDetail.detail) === null || _shixunsDetail$detail4 === void 0 ? void 0 : _shixunsDetail$detail4.shixun_status) === 2,
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
|
|
value: 1,
|
|
children: "\u7B80\u5355"
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
|
|
style: {
|
|
marginLeft: 70
|
|
},
|
|
value: 2,
|
|
children: "\u4E2D\u7B49"
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
|
|
style: {
|
|
marginLeft: 70
|
|
},
|
|
value: 3,
|
|
children: "\u56F0\u96BE"
|
|
})]
|
|
})
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
|
|
name: "challenge_tag",
|
|
label: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
children: ["\u6280\u80FD\u6807\u7B7E ", /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
className: "pl20 font12 c-light-black",
|
|
children: "\u5B66\u5458\u7B54\u9898\u6B63\u786E\u5C06\u83B7\u5F97\u6280\u80FD\uFF0C\u5426\u5219\u4E0D\u80FD\u83B7\u5F97\u6280\u80FD\uFF08\u56DE\u8F66\u6DFB\u52A0\u6807\u7B7E\uFF09"
|
|
})]
|
|
}),
|
|
rules: [{
|
|
required: true,
|
|
message: "请输入技能标签"
|
|
}],
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(Form_AddTags, {
|
|
placeholder: "\u6DFB\u52A0\u6807\u7B7E",
|
|
style: {
|
|
width: '260px'
|
|
},
|
|
InputRight: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
className: "ml5",
|
|
children: "(\u56DE\u8F66\u6DFB\u52A0\u6807\u7B7E)"
|
|
})
|
|
})
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
className: "customItemSelect",
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
|
|
name: "score",
|
|
initialValue: 100,
|
|
label: "\u5956\u52B1\u91D1\u5E01:",
|
|
rules: [{
|
|
required: true,
|
|
message: "请选择奖励经验值"
|
|
}],
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_select["default"], {
|
|
disabled: ((_shixunsDetail$detail5 = shixunsDetail.detail) === null || _shixunsDetail$detail5 === void 0 ? void 0 : _shixunsDetail$detail5.shixun_status) === 2,
|
|
bordered: false,
|
|
getPopupContainer: function getPopupContainer(trigger) {
|
|
return trigger.parentNode;
|
|
},
|
|
style: {
|
|
width: 260
|
|
},
|
|
children: scoreList === null || scoreList === void 0 ? void 0 : scoreList.map(function (item, index) {
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(es_select["default"].Option, {
|
|
value: item,
|
|
children: item
|
|
}, index);
|
|
})
|
|
})
|
|
})
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
flex: 1,
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
style: {
|
|
marginTop: 88
|
|
},
|
|
className: "font12 c-light-black ml10",
|
|
children: " \u5B66\u5458\u6B63\u786E\u7B54\u9898\u65F6\u83B7\u5F97\u91D1\u5E01\uFF0C\u5E76\u4E14\u83B7\u5F97\u7B49\u91CF\u7684\u7ECF\u9A8C\u503C\u3002\u5982\uFF1A+100\u91D1\u5E01\u3001+100\u7ECF\u9A8C\u503C"
|
|
})
|
|
})]
|
|
})]
|
|
}, updateIndex)
|
|
}, 1), /*#__PURE__*/(0,jsx_runtime.jsx)(FixedButton/* FixedButton */.t, {
|
|
onOk: function onOk() {
|
|
return form.submit();
|
|
},
|
|
className: "customFixedButton",
|
|
onCancel: handleCancel
|
|
}, 2), /*#__PURE__*/(0,jsx_runtime.jsx)(Loading/* default */.Z, {
|
|
loading: loading
|
|
})]
|
|
});
|
|
};
|
|
/* harmony default export */ var Challenges_NewPractice = ((0,_umi_production_exports.connect)(function (_ref4) {
|
|
var shixunsDetail = _ref4.shixunsDetail,
|
|
newCourse = _ref4.newCourse,
|
|
globalSetting = _ref4.globalSetting,
|
|
practiceSetting = _ref4.practiceSetting;
|
|
return {
|
|
shixunsDetail: shixunsDetail,
|
|
newCourse: newCourse,
|
|
globalSetting: globalSetting,
|
|
practiceSetting: practiceSetting
|
|
};
|
|
})(NewPractice));
|
|
|
|
/***/ }),
|
|
|
|
/***/ 60641:
|
|
/*!***************************************************************************************************!*\
|
|
!*** ./src/pages/Shixuns/Edit/body/Level/Challenges/RankingSetting/challenge-nav.tsx + 1 modules ***!
|
|
\***************************************************************************************************/
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
// EXPORTS
|
|
__webpack_require__.d(__webpack_exports__, {
|
|
Z: function() { return /* binding */ challenge_nav; }
|
|
});
|
|
|
|
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
|
|
var _react_17_0_2_react = __webpack_require__(59301);
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.7.1@antd/es/modal/index.js + 9 modules
|
|
var modal = __webpack_require__(13209);
|
|
// EXTERNAL MODULE: ./src/.umi-production/exports.ts
|
|
var _umi_production_exports = __webpack_require__(51649);
|
|
;// CONCATENATED MODULE: ./src/pages/Shixuns/Edit/body/Level/Challenges/RankingSetting/challenge-nav.less
|
|
// extracted by mini-css-extract-plugin
|
|
|
|
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/jsx-runtime.js
|
|
var jsx_runtime = __webpack_require__(37712);
|
|
;// CONCATENATED MODULE: ./src/pages/Shixuns/Edit/body/Level/Challenges/RankingSetting/challenge-nav.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var ChallengeNav = function ChallengeNav(_ref) {
|
|
var activeIndex = _ref.activeIndex,
|
|
_ref$isEdit = _ref.isEdit,
|
|
isEdit = _ref$isEdit === void 0 ? true : _ref$isEdit,
|
|
dispatch = _ref.dispatch,
|
|
practiceSetting = _ref.practiceSetting;
|
|
var params = (0,_umi_production_exports.useParams)();
|
|
var id = params.id,
|
|
challengesId = params.challengesId;
|
|
var navs = (0,_react_17_0_2_react.useMemo)(function () {
|
|
return [{
|
|
name: '本关任务',
|
|
url: "/shixuns/".concat(id, "/edit/").concat(challengesId, "/editcheckpoint")
|
|
}, {
|
|
name: '评测设置',
|
|
url: "/shixuns/".concat(id, "/edit/").concat(challengesId, "/tab=2")
|
|
}, {
|
|
name: '参考答案',
|
|
url: "/shixuns/".concat(id, "/edit/").concat(challengesId, "/tab=3")
|
|
}, {
|
|
name: '关卡排行榜',
|
|
url: "/shixuns/".concat(id, "/edit/").concat(challengesId, "/tab=4")
|
|
}];
|
|
}, [id, challengesId]);
|
|
var handleClick = function handleClick(url) {
|
|
var _practiceSetting$side;
|
|
var toNext = function toNext() {
|
|
_umi_production_exports.history.push(url);
|
|
dispatch({
|
|
type: 'practiceSetting/setSideBarTabs',
|
|
payload: {
|
|
confirmLeave: false
|
|
}
|
|
});
|
|
};
|
|
if (practiceSetting !== null && practiceSetting !== void 0 && (_practiceSetting$side = practiceSetting.sideBar) !== null && _practiceSetting$side !== void 0 && _practiceSetting$side.confirmLeave) {
|
|
modal/* default */.Z.confirm({
|
|
title: "离开此页提示",
|
|
content: "系统可能不会保存您所做的更改。",
|
|
okText: "离开",
|
|
cancelText: "取消",
|
|
onOk: function onOk() {
|
|
toNext();
|
|
}
|
|
});
|
|
} else {
|
|
toNext();
|
|
}
|
|
};
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)("ul", {
|
|
className: "challenge-nav",
|
|
children: isEdit ? navs.map(function (item, index) {
|
|
if (activeIndex === index) {
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("li", {
|
|
children: [" ", /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
|
|
className: "active",
|
|
children: item.name
|
|
}), " "]
|
|
}, item.url);
|
|
} else {
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("li", {
|
|
children: [" ", /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
|
|
onClick: function onClick() {
|
|
return handleClick(item.url);
|
|
},
|
|
children: item.name
|
|
}), " "]
|
|
}, item.url);
|
|
}
|
|
}) : /*#__PURE__*/(0,jsx_runtime.jsxs)("li", {
|
|
children: [" ", /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
|
|
className: "active",
|
|
children: navs[0].name
|
|
}), " "]
|
|
}, navs[0].url)
|
|
});
|
|
};
|
|
/* harmony default export */ var challenge_nav = ((0,_umi_production_exports.connect)(function (_ref2) {
|
|
var globalSetting = _ref2.globalSetting,
|
|
practiceSetting = _ref2.practiceSetting;
|
|
return {
|
|
globalSetting: globalSetting,
|
|
practiceSetting: practiceSetting
|
|
};
|
|
})(ChallengeNav));
|
|
|
|
/***/ }),
|
|
|
|
/***/ 67573:
|
|
/*!***********************************************************************************************!*\
|
|
!*** ./src/pages/Shixuns/Edit/body/Level/Challenges/components/Loading/index.tsx + 1 modules ***!
|
|
\***********************************************************************************************/
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
// EXPORTS
|
|
__webpack_require__.d(__webpack_exports__, {
|
|
Z: function() { return /* binding */ components_Loading; }
|
|
});
|
|
|
|
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
|
|
var _react_17_0_2_react = __webpack_require__(59301);
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.7.1@antd/es/spin/index.js + 1 modules
|
|
var spin = __webpack_require__(927);
|
|
;// CONCATENATED MODULE: ./src/pages/Shixuns/Edit/body/Level/Challenges/components/Loading/index.less?modules
|
|
// extracted by mini-css-extract-plugin
|
|
/* harmony default export */ var Loadingmodules = ({"loading":"loading___lueiN"});
|
|
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/jsx-runtime.js
|
|
var jsx_runtime = __webpack_require__(37712);
|
|
;// CONCATENATED MODULE: ./src/pages/Shixuns/Edit/body/Level/Challenges/components/Loading/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
var Loading = function Loading(_ref) {
|
|
var loading = _ref.loading;
|
|
return loading ? /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
className: Loadingmodules.loading,
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(spin/* default */.Z, {})
|
|
}) : /*#__PURE__*/(0,jsx_runtime.jsx)(jsx_runtime.Fragment, {});
|
|
};
|
|
/* harmony default export */ var components_Loading = (Loading);
|
|
|
|
/***/ }),
|
|
|
|
/***/ 78115:
|
|
/*!************************************************!*\
|
|
!*** ./src/pages/Shixuns/Edit/utils/index.tsx ***!
|
|
\************************************************/
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
/* harmony export */ S: function() { return /* binding */ formatCodemirrorValue; }
|
|
/* harmony export */ });
|
|
var formatCodemirrorValue = function formatCodemirrorValue(value) {
|
|
var dom = document.createElement("textarea");
|
|
dom.value = value;
|
|
return dom.value;
|
|
};
|
|
|
|
/***/ })
|
|
|
|
}]); |