You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
NewEduCoderBuild/p__Problemset__Preview__ind...

748 lines
42 KiB

"use strict";
(self["webpackChunk"] = self["webpackChunk"] || []).push([[1581],{
/***/ 53549:
/*!**************************************************************************!*\
!*** ./src/components/EcListItems/Problemset/Card/index.tsx + 1 modules ***!
\**************************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ Problemset_Card; }
});
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/radio/index.js + 5 modules
var es_radio = __webpack_require__(5112);
// EXTERNAL MODULE: ./src/components/RenderHtml/index.tsx
var RenderHtml = __webpack_require__(16921);
;// CONCATENATED MODULE: ./src/components/EcListItems/Problemset/Card/index.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var Cardmodules = ({"flexRow":"flexRow____Sm4b","flexColumn":"flexColumn___mQNZs","action":"action___QUVEn","setScore":"setScore___yZ0Yb","delete":"delete___e4taL","content":"content___jR4Y6","titleWrap":"titleWrap___zsXYY","titleNumber":"titleNumber___p60vi","score":"score___DbCHw","titleHtml":"titleHtml___FALbj","answerWrap":"answerWrap___uPjYq","answer":"answer___pfiPk","answerText":"answerText___K3TNr"});
// EXTERNAL MODULE: ./node_modules/_js-base64@2.6.4@js-base64/base64.js
var base64 = __webpack_require__(24334);
// EXTERNAL MODULE: ./src/components/MathsLatexKeybords/index.tsx
var MathsLatexKeybords = __webpack_require__(14233);
;// CONCATENATED MODULE: ./src/components/EcListItems/Problemset/Card/index.tsx
/* provided dependency */ var React = __webpack_require__(/*! react */ 59301);
const tagDotList = [
"A\uFF0E",
"B\uFF0E",
"C\uFF0E",
"D\uFF0E",
"E\uFF0E",
"F\uFF0E",
"G\uFF0E",
"H\uFF0E",
"I\uFF0E",
"J\uFF0E",
"K\uFF0E",
"L\uFF0E",
"M\uFF0E",
"N\uFF0E",
"O\uFF0E",
"P\uFF0E",
"Q\uFF0E",
"R\uFF0E",
"S\uFF0E",
"T\uFF0E",
"U\uFF0E",
"V\uFF0E",
"W\uFF0E",
"X\uFF0E",
"Y\uFF0E",
"Z\uFF0E"
];
const questionType = [
{ type: "single", name: "\u5355\u9009\u9898" },
{ type: "multiple", name: "\u591A\u9009\u9898" },
{ type: "judgement", name: "\u5224\u65AD\u9898" },
{ type: "completion", name: "\u586B\u7A7A\u9898" },
{ type: "subjective", name: "\u7B80\u7B54\u9898" }
];
const Card = ({
index,
typeName,
type,
data = {},
inMouseId,
isshow,
onSetScore = () => {
},
onDelete = () => {
},
onMouseEnter = () => {
},
showAnswer = false
}) => {
var _a;
const [isopen, setisopen] = (0,_react_17_0_2_react.useState)(false);
const renderSingleOrMultiple = () => {
var _a2;
return /* @__PURE__ */ React.createElement("div", { className: Cardmodules.answerWrap }, (_a2 = data == null ? void 0 : data.choices) == null ? void 0 : _a2.map((item, index2) => {
return /* @__PURE__ */ React.createElement("div", { className: `${Cardmodules.flexRow} mt15`, key: index2 }, /* @__PURE__ */ React.createElement("div", { style: { lineHeight: "24px", flexShrink: 0 } }, tagDotList[index2]), /* @__PURE__ */ React.createElement("div", { className: `${Cardmodules.answer} ml5` }, /* @__PURE__ */ React.createElement(RenderHtml/* default */.Z, { value: item == null ? void 0 : item.choice_text })));
}), showAnswer && /* @__PURE__ */ React.createElement("div", { className: `mt10 ${Cardmodules.answerText}` }, "\u53C2\u8003\u7B54\u6848\uFF1A", data == null ? void 0 : data.standard_answer_show));
};
const renderJudgment = () => {
var _a2;
return /* @__PURE__ */ React.createElement("div", { className: Cardmodules.answerWrap }, /* @__PURE__ */ React.createElement("div", { className: `${Cardmodules.flexRow} mt15` }, (_a2 = data == null ? void 0 : data.choices) == null ? void 0 : _a2.map((item, index2) => {
return /* @__PURE__ */ React.createElement(es_radio/* default */.ZP, { disabled: true, key: index2 }, item == null ? void 0 : item.choice_text);
})), showAnswer && /* @__PURE__ */ React.createElement("div", { className: `mt10 ${Cardmodules.answerText}` }, "\u53C2\u8003\u7B54\u6848\uFF1A", data == null ? void 0 : data.standard_answer_show));
};
const renderProgram = () => {
var _a2;
return /* @__PURE__ */ React.createElement("div", { className: Cardmodules.answerWrap }, /* @__PURE__ */ React.createElement("div", { className: `${Cardmodules.flexRow} mt15` }, /* @__PURE__ */ React.createElement(RenderHtml/* default */.Z, { value: (_a2 = data == null ? void 0 : data.program_attr) == null ? void 0 : _a2.description })), showAnswer && /* @__PURE__ */ React.createElement("div", { className: `mt15` }, /* @__PURE__ */ React.createElement("div", { className: Cardmodules.answerText }, "\u53C2\u8003\u7B54\u6848\uFF1A", !(data == null ? void 0 : data.answer_text) && "\u6682\u65E0"), /* @__PURE__ */ React.createElement(RenderHtml/* default */.Z, { value: (data == null ? void 0 : data.answer_text) || "" })));
};
const renderCompletion = () => {
var _a2;
return /* @__PURE__ */ React.createElement("div", { className: Cardmodules.answerWrap }, showAnswer && /* @__PURE__ */ React.createElement("div", { className: `${Cardmodules.flexColumn} mt15` }, (_a2 = data == null ? void 0 : data.standard_answer) == null ? void 0 : _a2.map((item, index2) => {
return /* @__PURE__ */ React.createElement("div", null, (item == null ? void 0 : item.model) === 1 ? /* @__PURE__ */ React.createElement(RenderHtml/* default */.Z, { key: index2, value: `\u53C2\u8003\u7B54\u6848\uFF08\u586B\u7A7A${item.position}\uFF09\uFF1A${item.answer_text.join("\u3001")}`, className: Cardmodules.answerText }) : /* @__PURE__ */ React.createElement("span", { style: { display: "inline-flex", alignItems: "center", marginBottom: 5 } }, "\u53C2\u8003\u7B54\u6848\uFF08\u586B\u7A7A ", item.position, "\uFF09\uFF1A", /* @__PURE__ */ React.createElement(MathsLatexKeybords/* default */.Z, { disabled: true, width: "180px", value: item.answer_text.join("\u3001") })));
})));
};
const renderSubjective = () => {
var _a2;
return /* @__PURE__ */ React.createElement("div", { className: Cardmodules.answerWrap }, showAnswer && /* @__PURE__ */ React.createElement("div", { className: `mt15` }, /* @__PURE__ */ React.createElement("div", { className: Cardmodules.answerText }, "\u53C2\u8003\u7B54\u6848\uFF1A"), /* @__PURE__ */ React.createElement(RenderHtml/* default */.Z, { value: (_a2 = data == null ? void 0 : data.answer_texts) == null ? void 0 : _a2[0], className: Cardmodules.answerText })));
};
const renderBProgram = () => {
var _a2, _b;
return /* @__PURE__ */ React.createElement("div", { className: Cardmodules.answerWrap, style: { marginTop: 10 } }, /* @__PURE__ */ React.createElement(RenderHtml/* default */.Z, { showProgramFill: true, disabledFill: true, value: base64.Base64.decode((_a2 = data == null ? void 0 : data.program_attr) == null ? void 0 : _a2.code) }), showAnswer && /* @__PURE__ */ React.createElement("div", { className: `${Cardmodules.flexColumn} mt15` }, (_b = data == null ? void 0 : data.standard_answer) == null ? void 0 : _b.map((item, index2) => {
return /* @__PURE__ */ React.createElement(RenderHtml/* default */.Z, { key: index2, value: `\u53C2\u8003\u7B54\u6848\uFF08\u586B\u7A7A${item.position}\uFF09\uFF1A${item.answer_text}` });
})));
};
const renderShixun = () => {
var _a2;
return /* @__PURE__ */ React.createElement("div", { className: Cardmodules.answerWrap }, /* @__PURE__ */ React.createElement("div", { className: "mt10" }, "\u9636\u6BB5\u6210\u7EE9"), (_a2 = data == null ? void 0 : data.shixun) == null ? void 0 : _a2.map((item, index2) => {
var _a3, _b;
return /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement("div", { className: "mt10 font14", key: index2 }, "\u7B2C", index2 + 1, "\u5173 ", item == null ? void 0 : item.challenge_name, " \uFF08", item.challenge_score, "\u5206\uFF09"), showAnswer && /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement("div", { className: Cardmodules.answerText }, "\u53C2\u8003\u7B54\u6848\uFF1A", ((_a3 = item.challenge_answers) == null ? void 0 : _a3.length) === 0 ? "\u6682\u65E0" : ""), (_b = item.challenge_answers) == null ? void 0 : _b.map((item2, index3) => {
return /* @__PURE__ */ React.createElement("div", { className: `mt15` }, /* @__PURE__ */ React.createElement("div", null, "\u7EA7\u522B", index3 + 1, "\uFF1A", item2.name), /* @__PURE__ */ React.createElement(RenderHtml/* default */.Z, { value: (item2 == null ? void 0 : item2.contents) || "", className: Cardmodules.answerText }));
})));
}));
};
const renderCombination = () => {
var _a2;
return /* @__PURE__ */ React.createElement("div", { className: Cardmodules.answerWrap, style: { display: isopen && "none" } }, (_a2 = data == null ? void 0 : data.sub_questions) == null ? void 0 : _a2.map((e, i) => {
var _a3, _b, _c, _d, _e;
const str = `<span style="margin-right: 10px">${index + 1}.${i + 1}</span><span>\uFF08${(_a3 = questionType.find((i2) => i2.type == e.item_type)) == null ? void 0 : _a3.name}\uFF09</span><span class="c-grey-999">\uFF08${e.score}\u5206\uFF09</span>`;
return /* @__PURE__ */ React.createElement(_react_17_0_2_react.Fragment, { key: e == null ? void 0 : e.id }, /* @__PURE__ */ React.createElement("div", { className: Cardmodules.titleWrap, style: { marginTop: 16 } }, /* @__PURE__ */ React.createElement(RenderHtml/* default */.Z, { className: Cardmodules.titleHtml, value: str + e.name })), (e.item_type == "single" || e.item_type == "multiple") && /* @__PURE__ */ React.createElement(React.Fragment, null, (_b = e == null ? void 0 : e.choices) == null ? void 0 : _b.map((item, index2) => {
return /* @__PURE__ */ React.createElement("div", { className: `${Cardmodules.flexRow} mt15`, key: index2 }, /* @__PURE__ */ React.createElement("div", { style: { lineHeight: "24px", flexShrink: 0 } }, tagDotList[index2]), /* @__PURE__ */ React.createElement("div", { className: `${Cardmodules.answer} ml5` }, /* @__PURE__ */ React.createElement(RenderHtml/* default */.Z, { value: item == null ? void 0 : item.choice_text })));
}), showAnswer && /* @__PURE__ */ React.createElement("div", { className: `mt10 ${Cardmodules.answerText}` }, "\u53C2\u8003\u7B54\u6848\uFF1A", e == null ? void 0 : e.standard_answer_show)), e.item_type == "judgement" && /* @__PURE__ */ React.createElement("div", { className: Cardmodules.answerWrap }, /* @__PURE__ */ React.createElement("div", { className: `${Cardmodules.flexRow} mt15` }, (_c = e == null ? void 0 : e.choices) == null ? void 0 : _c.map((item, index2) => {
return /* @__PURE__ */ React.createElement(es_radio/* default */.ZP, { disabled: true, key: index2 }, item == null ? void 0 : item.choice_text);
})), showAnswer && /* @__PURE__ */ React.createElement("div", { className: `mt10 ${Cardmodules.answerText}` }, "\u53C2\u8003\u7B54\u6848\uFF1A", e == null ? void 0 : e.standard_answer_show)), e.item_type == "completion" && /* @__PURE__ */ React.createElement("div", { className: Cardmodules.answerWrap }, showAnswer && /* @__PURE__ */ React.createElement("div", { className: `${Cardmodules.flexColumn} mt15` }, (_d = e == null ? void 0 : e.standard_answer) == null ? void 0 : _d.map((item, index2) => {
return /* @__PURE__ */ React.createElement("div", null, (item == null ? void 0 : item.model) === 1 ? /* @__PURE__ */ React.createElement(RenderHtml/* default */.Z, { key: index2, value: `\u53C2\u8003\u7B54\u6848\uFF08\u586B\u7A7A${item.position}\uFF09\uFF1A${item.answer_text.join("\u3001")}`, className: Cardmodules.answerText }) : /* @__PURE__ */ React.createElement("span", null, "\u53C2\u8003\u7B54\u6848\uFF08\u586B\u7A7A$", item.position, "\uFF09\uFF1A", /* @__PURE__ */ React.createElement(MathsLatexKeybords/* default */.Z, { value: item.answer_text.join("\u3001") })));
}))), e.item_type == "subjective" && /* @__PURE__ */ React.createElement("div", { className: Cardmodules.answerWrap }, showAnswer && /* @__PURE__ */ React.createElement("div", { className: `mt15` }, /* @__PURE__ */ React.createElement("div", { className: Cardmodules.answerText }, "\u53C2\u8003\u7B54\u6848\uFF1A"), /* @__PURE__ */ React.createElement(RenderHtml/* default */.Z, { value: (_e = e == null ? void 0 : e.answer_texts) == null ? void 0 : _e[0], className: Cardmodules.answerText }))));
}));
};
const renderAnswer = () => {
const mapping = {
"SINGLE": renderSingleOrMultiple,
"MULTIPLE": renderSingleOrMultiple,
"JUDGMENT": renderJudgment,
"PROGRAM": renderProgram,
"COMPLETION": renderCompletion,
"SUBJECTIVE": renderSubjective,
"PRACTICAL": renderShixun,
"COMBINATION": renderCombination,
"BPROGRAM": renderBProgram
};
return mapping[type] ? mapping[type]() : null;
};
const getDomString = (data2, i) => {
var _a2;
const str = `<span style="margin-right: -10px">${i + 1}\u3001</span><span class="c-grey-999">\uFF08${(data2 == null ? void 0 : data2.item_type) === "combination" ? `\u5171${(_a2 = data2 == null ? void 0 : data2.sub_questions) == null ? void 0 : _a2.length}\u5C0F\u9898\uFF0C` : ""}${data2.score}\u5206\uFF09</span> `;
return str;
};
return /* @__PURE__ */ React.createElement(
"div",
{
onMouseEnter: () => onMouseEnter(data.id)
},
inMouseId === data.id && /* @__PURE__ */ React.createElement("div", { className: Cardmodules.action }, /* @__PURE__ */ React.createElement("div", { className: Cardmodules.setScore, onClick: () => onSetScore(data.id, typeName, data == null ? void 0 : data.shixun, data.score, data) }, "\u8BBE\u7F6E\u5F97\u5206"), /* @__PURE__ */ React.createElement("div", { className: Cardmodules.delete, onClick: () => onDelete(data.id) }, "\u5220\u9664")),
/* @__PURE__ */ React.createElement("div", { className: Cardmodules.content }, /* @__PURE__ */ React.createElement("div", { className: Cardmodules.titleWrap, style: { justifyContent: "space-between" } }, (data == null ? void 0 : data.item_type) === "bprogram" ? /* @__PURE__ */ React.createElement(RenderHtml/* default */.Z, { className: Cardmodules.titleHtml, value: getDomString(data, index) + ((_a = data == null ? void 0 : data.program_attr) == null ? void 0 : _a.description) }) : /* @__PURE__ */ React.createElement(RenderHtml/* default */.Z, { className: Cardmodules.titleHtml, value: getDomString(data, index) + ((data == null ? void 0 : data.item_type) === "combination" ? `\uFF08\u9898\u5E72\uFF09` : "") + (data.name || (data == null ? void 0 : data.shixun_name)) }), (data == null ? void 0 : data.item_type) === "combination" && !isshow && /* @__PURE__ */ React.createElement("span", { onClick: (e) => {
setisopen(!isopen);
}, style: { textAlign: "end", flexShrink: 0, cursor: "pointer" } }, isopen ? "\u5C55\u5F00" : "\u6536\u8D77")), renderAnswer())
);
};
/* harmony default export */ var Problemset_Card = (Card);
/***/ }),
/***/ 98629:
/*!**********************************************************!*\
!*** ./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/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
var es_button = __webpack_require__(3113);
;// 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.5.1@classnames/index.js
var _classnames_2_5_1_classnames = __webpack_require__(92310);
var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
;// CONCATENATED MODULE: ./src/components/FixedButton/index.tsx
var __defProp = Object.defineProperty;
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __propIsEnum = Object.prototype.propertyIsEnumerable;
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
var __spreadValues = (a, b) => {
for (var prop in b || (b = {}))
if (__hasOwnProp.call(b, prop))
__defNormalProp(a, prop, b[prop]);
if (__getOwnPropSymbols)
for (var prop of __getOwnPropSymbols(b)) {
if (__propIsEnum.call(b, prop))
__defNormalProp(a, prop, b[prop]);
}
return a;
};
const FixedButton = ({
cancelText = "\u53D6\u6D88",
okText = "\u786E\u5B9A",
loading = false,
hasOkBtn = true,
hasCancelBtn = true,
okButtonProps = {},
onCancel = () => {
},
onOk = () => {
},
className = ""
}) => {
return /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: _classnames_2_5_1_classnames_default()(FixedButtonmodules.buttonFixed, className) }, /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: FixedButtonmodules.buttonWrap }, hasCancelBtn && /* @__PURE__ */ _react_17_0_2_react.createElement(
es_button/* default */.ZP,
{
size: "middle",
className: `${FixedButtonmodules.button} mr20`,
onClick: onCancel
},
cancelText
), hasOkBtn && /* @__PURE__ */ _react_17_0_2_react.createElement(
es_button/* default */.ZP,
__spreadValues({
size: "middle",
type: "primary",
className: `${FixedButtonmodules.button} mr20`,
loading,
onClick: onOk
}, okButtonProps),
okText
)));
};
/***/ }),
/***/ 14233:
/*!*****************************************************!*\
!*** ./src/components/MathsLatexKeybords/index.tsx ***!
\*****************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ 59301);
/* harmony import */ var _index_less_modules__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./index.less?modules */ 44499);
/* harmony import */ var mathlatex__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! mathlatex */ 48136);
/* harmony import */ var _keybords__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./keybords */ 68585);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! antd */ 43418);
/* provided dependency */ var React = __webpack_require__(/*! react */ 59301);
const MathsLatex = (0,react__WEBPACK_IMPORTED_MODULE_0__.forwardRef)(({ callback, width, onChange, disabled, readOnly, type = "", value = "", style = {} }, ref) => {
const GraphicsRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)();
const KeybordsRef = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)();
const [styleLeft, setStyleLeft] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(0);
const [styleTop, setStyleTop] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(0);
const [showLatex, setShowLatex] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(false);
const getData = () => {
var dom = document.createElement("div");
dom.innerHTML = GraphicsRef.current.getValue();
var str = dom.innerText;
callback && callback(str);
return str;
};
(0,react__WEBPACK_IMPORTED_MODULE_0__.useImperativeHandle)(ref, () => ({
getData
}));
const onTitleMouseDown = (e) => {
e.preventDefault();
const startPosX = e.clientX - styleLeft;
const startPosY = e.clientY - styleTop;
document.body.onmousemove = (e2) => {
let left = e2.clientX - startPosX;
let top = e2.clientY - startPosY;
const modal = document.getElementsByClassName("ant-modal")[0];
const maxWidth = window.innerWidth - modal.offsetWidth;
const maxHeight = window.innerHeight - modal.offsetHeight;
left = Math.max(0, Math.min(left, maxWidth));
top = Math.max(0, Math.min(top, maxHeight));
if (inWindow(e2.clientX, e2.clientY, startPosX, startPosY)) {
setStyleLeft(left);
setStyleTop(top);
}
};
document.body.onmouseup = function() {
document.body.onmousemove = null;
};
};
const inWindow = (left, top, startPosX, startPosY) => {
const H = document.body.clientHeight;
const W = document.body.clientWidth;
if (left < 20 && startPosX > left || left > W - 20 && startPosX < left || top < 20 && startPosY > top || top > H - 20 && startPosY < top) {
document.body.onmousemove = null;
document.body.onmouseup = null;
return false;
}
return true;
};
(0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {
if (showLatex) {
setTimeout(() => {
const modal = document.getElementsByClassName("ant-modal")[0];
const centerX = window.innerWidth / 2 - modal.offsetWidth / 2;
const centerY = window.innerHeight / 2 - modal.offsetHeight / 2;
setStyleLeft(centerX);
setStyleTop(centerY);
}, 0);
}
}, [showLatex]);
const showInput = () => {
if (disabled || readOnly)
return;
setShowLatex(true);
};
return /* @__PURE__ */ React.createElement("div", { style }, /* @__PURE__ */ React.createElement("div", { style: { width: width || "100%", position: "relative" }, className: `${_index_less_modules__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z.mathFillWrap} ${disabled || readOnly ? "cursorDefault" : ""}`, onClick: () => showInput() }, /* @__PURE__ */ React.createElement("math-field", { disabled, locale: "zh_cn", class: `${_index_less_modules__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z.mathField} ${type}`, readOnly, placeholder: "\u8BF7\u8F93\u5165\u516C\u5F0F", ref: GraphicsRef, style: { width: "100%", fontSize: value ? 18 : 14 }, value: value || "" })), /* @__PURE__ */ React.createElement(
antd__WEBPACK_IMPORTED_MODULE_4__["default"],
{
maskClosable: false,
centered: true,
width: 860,
style: { position: "absolute", left: styleLeft, top: styleTop },
title: /* @__PURE__ */ React.createElement("div", { style: { cursor: "move" }, onMouseDown: onTitleMouseDown }, "\u8F93\u5165\u516C\u5F0F"),
open: showLatex,
onOk: () => {
const val = KeybordsRef.current.getData();
GraphicsRef.current.setValue(val);
onChange(val);
setShowLatex(false);
},
onCancel: () => {
setShowLatex(false);
},
destroyOnClose: true,
className: "markdown-popup-form"
},
/* @__PURE__ */ React.createElement(_keybords__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z, { value, ref: KeybordsRef, onChange, showSaveButton: false })
));
});
/* harmony default export */ __webpack_exports__.Z = (MathsLatex);
/***/ }),
/***/ 96687:
/*!************************************************************!*\
!*** ./src/pages/Problemset/Preview/index.tsx + 1 modules ***!
\************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
"default": function() { return /* binding */ Problemset_Preview; },
formatTypeNameToDefaultScore: function() { return /* binding */ formatTypeNameToDefaultScore; }
});
// 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 + 15 modules
var _umi_production_exports = __webpack_require__(67866);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/modal/index.js + 16 modules
var modal = __webpack_require__(43418);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/input-number/index.js + 14 modules
var input_number = __webpack_require__(54449);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/index.js + 6 modules
var breadcrumb = __webpack_require__(66104);
// EXTERNAL MODULE: ./node_modules/_react-beautiful-dnd@13.0.0@react-beautiful-dnd/dist/react-beautiful-dnd.esm.js + 27 modules
var react_beautiful_dnd_esm = __webpack_require__(47766);
// EXTERNAL MODULE: ./src/components/EcListItems/Problemset/Card/index.tsx + 1 modules
var Card = __webpack_require__(53549);
;// CONCATENATED MODULE: ./src/pages/Problemset/Preview/index.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var Previewmodules = ({"bg":"bg___uBTSf","wrap":"wrap___u47s7","flexRow":"flexRow___QK3mq","flexColumn":"flexColumn___IEH4c","flexJustifyBetween":"flexJustifyBetween___VROqY","relative":"relative___iGg_n","questionNumber":"questionNumber___CYWUo","score":"score___pHhZR","selectTopicButton":"selectTopicButton___aNhaw","line":"line___zzL1y","dragTip":"dragTip___eJpug","typeActive":"typeActive___cHbxQ","mouseTypeActive":"mouseTypeActive___THFkb","typeName":"typeName___PsYTO","typeNumber":"typeNumber___IW6t9","typeAction":"typeAction___gdIEg","setScore":"setScore___ftbgZ","delete":"delete___d1fFi","modal":"modal___COzbG","modalColumn":"modalColumn___Z8nDu","shixunModal":"shixunModal___xxSWV","shixunScore":"shixunScore___zrpkw"});
// EXTERNAL MODULE: ./src/components/FixedButton/index.tsx + 1 modules
var FixedButton = __webpack_require__(98629);
// EXTERNAL MODULE: ./node_modules/_lodash@4.17.21@lodash/lodash.js
var lodash = __webpack_require__(89392);
var lodash_default = /*#__PURE__*/__webpack_require__.n(lodash);
// EXTERNAL MODULE: ./src/service/problemset.ts
var problemset = __webpack_require__(66401);
;// CONCATENATED MODULE: ./src/pages/Problemset/Preview/index.tsx
var __defProp = Object.defineProperty;
var __defProps = Object.defineProperties;
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __propIsEnum = Object.prototype.propertyIsEnumerable;
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
var __spreadValues = (a, b) => {
for (var prop in b || (b = {}))
if (__hasOwnProp.call(b, prop))
__defNormalProp(a, prop, b[prop]);
if (__getOwnPropSymbols)
for (var prop of __getOwnPropSymbols(b)) {
if (__propIsEnum.call(b, prop))
__defNormalProp(a, prop, b[prop]);
}
return a;
};
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
var __objRest = (source, exclude) => {
var target = {};
for (var prop in source)
if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
target[prop] = source[prop];
if (source != null && __getOwnPropSymbols)
for (var prop of __getOwnPropSymbols(source)) {
if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
target[prop] = source[prop];
}
return target;
};
var __async = (__this, __arguments, generator) => {
return new Promise((resolve, reject) => {
var fulfilled = (value) => {
try {
step(generator.next(value));
} catch (e) {
reject(e);
}
};
var rejected = (value) => {
try {
step(generator.throw(value));
} catch (e) {
reject(e);
}
};
var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
step((generator = generator.apply(__this, __arguments)).next());
});
};
const formatTypeNameToDefaultScore = (typeName) => {
const mapping = {
"\u5355\u9009\u9898": 2,
"\u591A\u9009\u9898": 5,
"\u586B\u7A7A\u9898": 2,
"\u5224\u65AD\u9898": 2,
"\u7B80\u7B54\u9898": 10,
"\u7F16\u7A0B\u9898": 10,
"\u5B9E\u8BAD\u9898": 5,
"\u7EC4\u5408\u9898": 10
};
return mapping[typeName] || 0;
};
const Preview = (_a) => {
var _b = _a, {
problemsetPreview,
user,
globalSetting,
loading,
dispatch
} = _b, props = __objRest(_b, [
"problemsetPreview",
"user",
"globalSetting",
"loading",
"dispatch"
]);
var _a2, _b2, _c, _d;
const [inMouseId, setInMouseId] = (0,_react_17_0_2_react.useState)();
const [inMouseBatchType, setInMouseBatchType] = (0,_react_17_0_2_react.useState)();
const score = (0,_react_17_0_2_react.useRef)();
console.log(problemsetPreview, "problemsetPreview");
(0,_react_17_0_2_react.useEffect)(() => {
dispatch({
type: "globalSetting/footerToggle",
payload: false
});
return () => {
dispatch({
type: "globalSetting/footerToggle",
payload: true
});
};
}, []);
(0,_react_17_0_2_react.useEffect)(() => {
getPaperData();
}, []);
const getPaperData = () => {
dispatch({
type: "problemsetPreview/getPaperData"
});
};
const handleSetScore = (id, typeName, shixun = [], originScore, param) => {
var _a3;
const cloneData = lodash_default().cloneDeep(param);
const shixunData = lodash_default().cloneDeep(shixun).map((item) => __spreadProps(__spreadValues({}, item), { challenge_score: item.challenge_score || 5 }));
score.current = originScore || formatTypeNameToDefaultScore(typeName);
if (typeName === "\u5B9E\u8BAD\u9898") {
return modal["default"].confirm({
centered: true,
width: 530,
title: "\u8BBE\u7F6E\u5206\u6570",
content: /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Previewmodules.shixunModal }, /* @__PURE__ */ _react_17_0_2_react.createElement("div", null, "\u5173\u5361\uFF1A"), shixunData == null ? void 0 : shixunData.map((item, index) => {
return /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Previewmodules.shixunScore }, index + 1, "\u3001", item.challenge_name, /* @__PURE__ */ _react_17_0_2_react.createElement("div", { style: { minWidth: "130px" } }, /* @__PURE__ */ _react_17_0_2_react.createElement(input_number/* default */.Z, { defaultValue: item.challenge_score, min: 1, onChange: (value) => {
item.challenge_score = value;
} }), /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: "ml5" }, "\u5206/\u9898")));
})),
okText: "\u786E\u8BA4",
cancelText: "\u53D6\u6D88",
onOk: () => __async(void 0, null, function* () {
yield (0,problemset/* setChallengeScore */.Cc)({
id,
challenge_scores: shixunData.map((item) => ({
challenge_id: item.challenge_id,
score: item.challenge_score
}))
});
score.current = null;
getPaperData();
})
});
}
if (typeName === "\u7EC4\u5408\u9898") {
return modal["default"].confirm({
centered: true,
width: 530,
title: "\u8BBE\u7F6E\u5206\u6570",
content: /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Previewmodules.shixunModal, style: { maxHeight: 200, overflow: "auto" } }, (_a3 = cloneData == null ? void 0 : cloneData.sub_questions) == null ? void 0 : _a3.map((item, index) => {
return /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Previewmodules.shixunScore }, "\u7B2C", index + 1, "\u5C0F\u9898", /* @__PURE__ */ _react_17_0_2_react.createElement("div", { style: { minWidth: "130px" } }, /* @__PURE__ */ _react_17_0_2_react.createElement(input_number/* default */.Z, { defaultValue: item.score, min: 1, onChange: (value) => {
item.score = value;
} }), /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: "ml5" }, "\u5206")));
})),
okText: "\u786E\u8BA4",
cancelText: "\u53D6\u6D88",
onOk: () => __async(void 0, null, function* () {
var _a4;
yield (0,problemset/* setCombinationScore */.Vl)({
id,
subs: (_a4 = cloneData == null ? void 0 : cloneData.sub_questions) == null ? void 0 : _a4.map((item) => ({
basket_id: item.basket_id,
score: item.score
}))
});
score.current = null;
getPaperData();
})
});
}
modal["default"].confirm({
centered: true,
title: "\u8BBE\u7F6E\u5206\u6570",
content: /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: "" }, /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, "\u672C\u9898\u5206\u503C\uFF1A"), /* @__PURE__ */ _react_17_0_2_react.createElement(input_number/* default */.Z, { min: 1, defaultValue: score.current, onChange: (value) => {
score.current = value;
} }), /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: "ml5" }, "\u5206/\u9898"), /* @__PURE__ */ _react_17_0_2_react.createElement("br", null), typeName === "\u586B\u7A7A\u9898" && /* @__PURE__ */ _react_17_0_2_react.createElement("div", { style: { color: "rgb(255, 0, 0)" } }, "\u6BCF\u7A7A\u5206\u503C\u6309\u6BCF\u9898\u5206\u503C\u53D6\u5E73\u5747\u5206\u8BA1\u7B97")),
okText: "\u786E\u8BA4",
cancelText: "\u53D6\u6D88",
onOk: () => __async(void 0, null, function* () {
yield dispatch({
type: "problemsetPreview/setScore",
payload: { id, score: score.current }
});
score.current = null;
getPaperData();
})
});
};
const handleDelete = (id) => {
modal["default"].confirm({
centered: true,
title: "\u63D0\u793A",
content: /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Previewmodules.modal }, "\u786E\u8BA4\u5220\u9664\u8BE5\u8BD5\u9898\uFF1F"),
okText: "\u786E\u8BA4",
cancelText: "\u53D6\u6D88",
onOk: () => __async(void 0, null, function* () {
yield dispatch({
type: "problemsetPreview/handleDelete",
payload: { id }
});
getPaperData();
})
});
};
const handleBatchSetScore = (type, typeName) => {
score.current = formatTypeNameToDefaultScore(typeName);
modal["default"].confirm({
centered: true,
title: "\u6279\u91CF\u8BBE\u7F6E\u5206\u6570",
content: /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: "" }, /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, typeName === "\u7EC4\u5408\u9898" ? "\u7EC4\u5408\u9898\u4E2D\u7684\u6BCF\u5C0F\u9898" : typeName, "\uFF1A"), /* @__PURE__ */ _react_17_0_2_react.createElement(input_number/* default */.Z, { min: 1, defaultValue: score.current, onChange: (value) => {
score.current = value;
} }), /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: "ml5" }, "\u5206/\u9898"), /* @__PURE__ */ _react_17_0_2_react.createElement("br", null), typeName === "\u586B\u7A7A\u9898" && /* @__PURE__ */ _react_17_0_2_react.createElement("div", { style: { color: "rgb(255, 0, 0)" } }, "\u6BCF\u7A7A\u5206\u503C\u6309\u6BCF\u9898\u5206\u503C\u53D6\u5E73\u5747\u5206\u8BA1\u7B97")),
okText: "\u786E\u8BA4",
cancelText: "\u53D6\u6D88",
onOk: () => __async(void 0, null, function* () {
yield dispatch({
type: "problemsetPreview/batchSetScore",
payload: { item_type: type, score: score.current }
});
score.current = null;
getPaperData();
})
});
};
const handleBatchDelete = (type) => {
modal["default"].confirm({
centered: true,
title: "\u63D0\u793A",
content: /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Previewmodules.modalColumn }, /* @__PURE__ */ _react_17_0_2_react.createElement("p", null, "\u5220\u9664\u5927\u9898\uFF0C\u5C06\u5220\u9664\u8BE5\u5927\u9898\u4E0B\u6240\u6709\u5C0F\u9898"), /* @__PURE__ */ _react_17_0_2_react.createElement("p", null, "\u786E\u8BA4\u5220\u9664\u8BE5\u5927\u9898\uFF1F")),
okText: "\u786E\u8BA4",
cancelText: "\u53D6\u6D88",
onOk: () => __async(void 0, null, function* () {
yield dispatch({
type: "problemsetPreview/batchDelete",
payload: { item_type: type }
});
getPaperData();
})
});
};
const handleDragEnd = (data, paperItem) => __async(void 0, null, function* () {
if (!data.destination || !data.source) {
return;
}
const id = paperItem.questions[data.source.index].id;
const position = data.destination.index + 1;
const res = yield dispatch({
type: "problemsetPreview/adjustPosition",
payload: { id, position }
});
if (res.status === -1) {
return;
}
getPaperData();
});
return /* @__PURE__ */ _react_17_0_2_react.createElement("section", { className: Previewmodules.bg }, /* @__PURE__ */ _react_17_0_2_react.createElement(breadcrumb/* default */.Z, { className: "mt30", separator: ">" }, /* @__PURE__ */ _react_17_0_2_react.createElement(breadcrumb/* default */.Z.Item, null, "\u8BD5\u9898\u5E93"), /* @__PURE__ */ _react_17_0_2_react.createElement(breadcrumb/* default */.Z.Item, { href: "/problemset" }, "\u4EBA\u5DE5\u7EC4\u5377"), /* @__PURE__ */ _react_17_0_2_react.createElement(breadcrumb/* default */.Z.Item, null, "\u8BD5\u5377\u9884\u89C8")), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Previewmodules.wrap }, /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: "pt20 pb20" }, /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: `${Previewmodules.flexRow} ${Previewmodules.flexJustifyBetween}` }, /* @__PURE__ */ _react_17_0_2_react.createElement("div", null, /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: Previewmodules.questionNumber }, "\u9898\u6570\uFF1A", (_a2 = problemsetPreview.paperData) == null ? void 0 : _a2.all_questions_count), /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: Previewmodules.score }, "\u603B\u5206\uFF1A", (_b2 = problemsetPreview.paperData) == null ? void 0 : _b2.all_score)), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Previewmodules.selectTopicButton, onClick: () => _umi_production_exports.history.push("/problemset/preview_select") }, "\u7EE7\u7EED\u9009\u9898")), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Previewmodules.line }), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Previewmodules.dragTip }, "\u5C0F\u9898\u4E4B\u95F4\u53EF\u4EE5\u62D6\u52A8\u6392\u5E8F"), (_d = (_c = problemsetPreview.paperData) == null ? void 0 : _c.questionList) == null ? void 0 : _d.map((paperItem, paperKey) => {
const inMouseBatch = paperItem.type === inMouseBatchType;
console.log(paperItem, "paperItem");
return /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: `${Previewmodules.relative} mt20 mb20`, key: paperKey }, /* @__PURE__ */ _react_17_0_2_react.createElement(
"div",
{
className: `${Previewmodules.typeActive} ${inMouseBatch ? Previewmodules.mouseTypeActive : ""}`,
onMouseEnter: () => {
setInMouseBatchType(paperItem.type);
setInMouseId(null);
}
},
/* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: `${Previewmodules.typeName} ${inMouseBatch ? "ml20" : ""}` }, paperItem.number, "\u3001", paperItem.name),
/* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: Previewmodules.typeNumber }, "\uFF08\u5171", paperItem.questions_count, "\u9898\uFF0C", (paperItem == null ? void 0 : paperItem.type) === "COMBINATION" ? `\u5305\u542B${paperItem == null ? void 0 : paperItem.sub_questions_count}\u5C0F\u9898\uFF0C` : "", "\u5171", paperItem.questions_score, "\u5206\uFF09")
), inMouseBatch && /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: `${Previewmodules.typeAction} ${Previewmodules.flexRow}` }, paperItem.type !== "PRACTICAL" && /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Previewmodules.setScore, onClick: () => handleBatchSetScore(paperItem.type, paperItem.name) }, "\u6279\u91CF\u8BBE\u7F6E\u5F97\u5206"), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Previewmodules.delete, onClick: () => handleBatchDelete(paperItem.type) }, "\u5220\u9664")), /* @__PURE__ */ _react_17_0_2_react.createElement(react_beautiful_dnd_esm/* DragDropContext */.Z5, { onDragEnd: (result) => handleDragEnd(result, paperItem) }, /* @__PURE__ */ _react_17_0_2_react.createElement(react_beautiful_dnd_esm/* Droppable */.bK, { droppableId: paperKey.toString() }, (provided, snapshot) => {
var _a3;
return /* @__PURE__ */ _react_17_0_2_react.createElement(
"div",
__spreadProps(__spreadValues({
className: "mt20",
ref: provided.innerRef
}, provided.droppableProps), {
onScroll: () => {
}
}),
(_a3 = paperItem.questions) == null ? void 0 : _a3.map((questionItem, qeustionKey) => {
return /* @__PURE__ */ _react_17_0_2_react.createElement(
react_beautiful_dnd_esm/* Draggable */._l,
{
draggableId: questionItem.id.toString(),
index: qeustionKey,
key: questionItem.id
},
(provided2) => {
return /* @__PURE__ */ _react_17_0_2_react.createElement(
"div",
__spreadValues(__spreadValues({
ref: provided2.innerRef
}, provided2.draggableProps), provided2.dragHandleProps),
/* @__PURE__ */ _react_17_0_2_react.createElement(
Card/* default */.Z,
{
index: qeustionKey,
typeName: paperItem.name,
type: paperItem.type,
data: questionItem,
inMouseId,
onSetScore: handleSetScore,
onDelete: handleDelete,
onMouseEnter: (id) => {
setInMouseId(id);
setInMouseBatchType(null);
}
}
)
);
}
);
})
);
})));
}))), /* @__PURE__ */ _react_17_0_2_react.createElement(
FixedButton/* FixedButton */.t,
{
okText: "\u4FDD\u5B58\u8BD5\u5377",
onCancel: () => _umi_production_exports.history.replace("/problemset"),
onOk: () => _umi_production_exports.history.push("/problemset/preview_new")
}
));
};
/* harmony default export */ var Problemset_Preview = ((0,_umi_production_exports.connect)(
({
problemsetPreview,
user,
loading,
globalSetting
}) => ({
problemsetPreview,
user,
globalSetting,
loading: loading.effects
})
)(Preview));
/***/ })
}]);