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.
907 lines
41 KiB
907 lines
41 KiB
"use strict";
|
|
(self["webpackChunk"] = self["webpackChunk"] || []).push([[8785],{
|
|
|
|
/***/ 3921:
|
|
/*!**********************************************************!*\
|
|
!*** ./src/components/QuestionEditor/index.less?modules ***!
|
|
\**********************************************************/
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__) {
|
|
|
|
// extracted by mini-css-extract-plugin
|
|
/* harmony default export */ __webpack_exports__.Z = ({"wrap":"wrap___ilWvf","deleteIcon":"deleteIcon___JBDG8","keywordTag":"keywordTag___iieCb","questionTitleEditorWrap":"questionTitleEditorWrap___MHB5s","choiceWrap":"choiceWrap___QFkTc","choiceIndex":"choiceIndex___Mr2YO","judgementIndex":"judgementIndex___fUVWK","setAnswerBtn":"setAnswerBtn___Whox5","activeAnswer":"activeAnswer___fGU6Y","activeJudgementAnswer":"activeJudgementAnswer___wJv8P","actionWrapper":"actionWrapper___ERQ7k","addIcon":"addIcon___L9TE0","inputBorder":"inputBorder___Q5tRE","placeholder":"placeholder___p9sFY","blankWrapper":"blankWrapper___nC45e","blankInput":"blankInput___pEHsx","blankInputNumberWrapper":"blankInputNumberWrapper___uEHb0","addBtn":"addBtn___WR5ZI","blankIndex":"blankIndex___x9Pny","baseInputWrapper":"baseInputWrapper___eVsG7","collapseWrapper":"collapseWrapper___ZTysU","panelHeader":"panelHeader___QSN9g","open":"open___B6FU9","close":"close___QX19r","hide":"hide___mn25n"});
|
|
|
|
/***/ }),
|
|
|
|
/***/ 82520:
|
|
/*!****************************************************!*\
|
|
!*** ./src/components/tpi-code-setting/index.less ***!
|
|
\****************************************************/
|
|
/***/ (function() {
|
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
|
|
|
/***/ }),
|
|
|
|
/***/ 87346:
|
|
/*!********************************************************!*\
|
|
!*** ./src/components/Knowledge/index.tsx + 1 modules ***!
|
|
\********************************************************/
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
// EXPORTS
|
|
__webpack_require__.d(__webpack_exports__, {
|
|
N: function() { return /* binding */ Knowledge; }
|
|
});
|
|
|
|
// 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/select/index.js
|
|
var es_select = __webpack_require__(57809);
|
|
// 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/row/index.js
|
|
var row = __webpack_require__(95237);
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/col/index.js
|
|
var col = __webpack_require__(43604);
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/input/index.js + 5 modules
|
|
var input = __webpack_require__(20008);
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/message/index.js + 4 modules
|
|
var message = __webpack_require__(8591);
|
|
// EXTERNAL MODULE: ./src/utils/fetch.ts
|
|
var fetch = __webpack_require__(64841);
|
|
;// CONCATENATED MODULE: ./src/components/Knowledge/index.less?modules
|
|
// extracted by mini-css-extract-plugin
|
|
/* harmony default export */ var Knowledgemodules = ({"wrap":"wrap___F7E3F","selectWrapper":"selectWrapper____kESB","tips":"tips___aHjQY","linkBtn":"linkBtn___uggVr","mainText":"mainText____S1I0"});
|
|
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.3.1@@ant-design/icons/es/icons/ExclamationCircleOutlined.js + 1 modules
|
|
var ExclamationCircleOutlined = __webpack_require__(6246);
|
|
;// CONCATENATED MODULE: ./src/components/Knowledge/index.tsx
|
|
/* provided dependency */ var React = __webpack_require__(/*! react */ 59301);
|
|
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 { Option } = es_select["default"];
|
|
const Knowledge = ({
|
|
subId,
|
|
value,
|
|
selectvalues,
|
|
disabled,
|
|
knowledgeOptions = [],
|
|
onChange = () => {
|
|
},
|
|
onAddKnowledgeFinish = () => {
|
|
}
|
|
}) => {
|
|
const addValue = (0,_react_17_0_2_react.useRef)();
|
|
const [values, setValues] = (0,_react_17_0_2_react.useState)([]);
|
|
value = value || [];
|
|
const handleChange = (e, valuesmap) => {
|
|
if (e) {
|
|
setValues([...valuesmap]);
|
|
onChange([...valuesmap]);
|
|
} else {
|
|
setValues([]);
|
|
onChange([]);
|
|
}
|
|
};
|
|
(0,_react_17_0_2_react.useEffect)(() => {
|
|
if ((selectvalues == null ? void 0 : selectvalues.length) > 0) {
|
|
setValues([...selectvalues]);
|
|
onChange([...selectvalues]);
|
|
}
|
|
}, [knowledgeOptions]);
|
|
(0,_react_17_0_2_react.useEffect)(() => {
|
|
if ((value == null ? void 0 : value.length) > 0) {
|
|
onChange([...value]);
|
|
}
|
|
}, [knowledgeOptions]);
|
|
const handleAdd = (e) => {
|
|
e.preventDefault();
|
|
addValue.current = "";
|
|
modal["default"].confirm({
|
|
centered: true,
|
|
width: 640,
|
|
okText: "\u786E\u5B9A",
|
|
cancelText: "\u53D6\u6D88",
|
|
icon: null,
|
|
title: "\u65B0\u5EFA\u77E5\u8BC6\u70B9",
|
|
className: "custom-modal-divider",
|
|
content: /* @__PURE__ */ React.createElement("div", { className: "font14" }, /* @__PURE__ */ React.createElement(row/* default */.Z, { className: "mb20" }, /* @__PURE__ */ React.createElement(col/* default */.Z, null, /* @__PURE__ */ React.createElement(ExclamationCircleOutlined/* default */.Z, { style: { color: "#FF8C29" } })), /* @__PURE__ */ React.createElement(col/* default */.Z, { className: `ml10 ${Knowledgemodules.mainText}` }, "\u65B0\u5EFA\u7684\u77E5\u8BC6\u70B9\u4EC5\u672C\u4EBA\u53EF\u89C1\uFF0C\u5E73\u53F0\u5BA1\u6838\u5217\u5165\u516C\u5F00\u77E5\u8BC6\u70B9\u540E\uFF0C\u5BF9\u6240\u6709\u7528\u6237\u53EF\u89C1\u3002", /* @__PURE__ */ React.createElement("br", null), "\u5E73\u53F0\u6709\u6743\u5220\u9664\u4E0D\u5408\u9002\u7684\u77E5\u8BC6\u70B9\uFF0C\u8BF7\u8BA4\u771F\u586B\u5199\u77E5\u8BC6\u70B9\u540D\u79F0\u3002")), /* @__PURE__ */ React.createElement(
|
|
input["default"],
|
|
{
|
|
maxLength: 20,
|
|
size: "middle",
|
|
showCount: true,
|
|
placeholder: "\u8BF7\u8F93\u5165\u77E5\u8BC6\u70B9\u540D\u79F0",
|
|
defaultValue: addValue.current,
|
|
onChange: (e2) => {
|
|
addValue.current = e2.target.value;
|
|
}
|
|
}
|
|
)),
|
|
onOk: () => {
|
|
return new Promise((resolve, reject) => __async(void 0, null, function* () {
|
|
if (!addValue.current) {
|
|
message/* default */.ZP.warning("\u8BF7\u8F93\u5165\u77E5\u8BC6\u70B9\u540D\u79F0");
|
|
return reject();
|
|
}
|
|
if (addValue.current.length > 20) {
|
|
message/* default */.ZP.warning("\u8BF7\u8F93\u5165\u4E0D\u8D85\u8FC720\u5B57\u7684\u77E5\u8BC6\u70B9\u540D\u79F0");
|
|
return reject();
|
|
}
|
|
const res = yield (0,fetch/* default */.ZP)(
|
|
`/api/tag_disciplines.json`,
|
|
{
|
|
method: "post",
|
|
body: {
|
|
name: addValue.current,
|
|
sub_discipline_id: subId
|
|
}
|
|
}
|
|
);
|
|
if ((res == null ? void 0 : res.status) === 0) {
|
|
onAddKnowledgeFinish({ id: res.tag_discipline_id, name: addValue.current, type: "personal" });
|
|
let value2 = selectvalues;
|
|
value2.push(res.tag_discipline_id);
|
|
onChange([...value2]);
|
|
setValues([...value2]);
|
|
onChange([...value2]);
|
|
}
|
|
return resolve();
|
|
}));
|
|
}
|
|
});
|
|
};
|
|
return /* @__PURE__ */ React.createElement(row/* default */.Z, { wrap: false, align: "middle", className: Knowledgemodules.wrap }, /* @__PURE__ */ React.createElement(col/* default */.Z, null, /* @__PURE__ */ React.createElement(
|
|
es_select["default"],
|
|
{
|
|
mode: "multiple",
|
|
disabled: !subId || disabled,
|
|
className: Knowledgemodules.selectWrapper,
|
|
placeholder: "\u8BF7\u9009\u62E9\u77E5\u8BC6\u70B9\uFF0C\u652F\u6301\u9009\u62E9\u591A\u4E2A",
|
|
onChange: handleChange,
|
|
style: {
|
|
width: 490
|
|
},
|
|
showSearch: true,
|
|
allowClear: true,
|
|
value: values
|
|
},
|
|
knowledgeOptions == null ? void 0 : knowledgeOptions.map((item) => /* @__PURE__ */ React.createElement(Option, { key: item.id, value: item.id }, /* @__PURE__ */ React.createElement("div", { style: { display: "flex", alignItems: "center" } }, /* @__PURE__ */ React.createElement("span", { style: { overflow: "hidden", whiteSpace: "nowrap", textOverflow: "ellipsis" } }, item.name), (item == null ? void 0 : item.type) === "personal" && /* @__PURE__ */ React.createElement("div", { style: { marginLeft: "5px", border: "1px solid #24C074", color: "#24C074", padding: "0 4px", borderRadius: "2px", fontSize: "12px", height: "20px", lineHeight: "20px" } }, "\u81EA\u7528"))))
|
|
)), subId && /* @__PURE__ */ React.createElement(col/* default */.Z, { className: "ml20" }, /* @__PURE__ */ React.createElement("span", { className: Knowledgemodules.tips }, "\u6CA1\u6709\u5408\u9002\u7684\u77E5\u8BC6\u70B9\uFF1F"), /* @__PURE__ */ React.createElement("span", { className: Knowledgemodules.linkBtn, onClick: handleAdd }, "\u65B0\u5EFA\u77E5\u8BC6\u70B9")));
|
|
};
|
|
|
|
|
|
/***/ }),
|
|
|
|
/***/ 98243:
|
|
/*!**********************************************************!*\
|
|
!*** ./src/components/QuestionEditor/MdEditorInForm.tsx ***!
|
|
\**********************************************************/
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
/* harmony export */ h: function() { return /* binding */ MdEditorInForm; },
|
|
/* harmony export */ x: function() { return /* binding */ RegularInput; }
|
|
/* harmony export */ });
|
|
/* harmony import */ var _components_markdown_editor__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @/components/markdown-editor */ 16393);
|
|
/* harmony import */ var _index_less_modules__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./index.less?modules */ 3921);
|
|
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react */ 59301);
|
|
/* harmony import */ var _components_RenderHtml__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/components/RenderHtml */ 92936);
|
|
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;
|
|
};
|
|
|
|
|
|
|
|
|
|
const MdEditorInForm = (_a) => {
|
|
var _b = _a, { value, onChange, scrollId } = _b, props = __objRest(_b, ["value", "onChange", "scrollId"]);
|
|
return /* @__PURE__ */ react__WEBPACK_IMPORTED_MODULE_2__.createElement("div", { id: scrollId || "" }, /* @__PURE__ */ react__WEBPACK_IMPORTED_MODULE_2__.createElement(
|
|
_components_markdown_editor__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z,
|
|
__spreadProps(__spreadValues({}, props), {
|
|
defaultValue: value,
|
|
onChange: (a, b) => {
|
|
console.log("a:", a, b);
|
|
if (!!(b == null ? void 0 : b.length))
|
|
onChange(a, b);
|
|
else
|
|
onChange(a);
|
|
}
|
|
})
|
|
));
|
|
};
|
|
const RegularInput = ({ value, onChange, placeholder, height = 140, isEdit }) => {
|
|
return isEdit ? /* @__PURE__ */ react__WEBPACK_IMPORTED_MODULE_2__.createElement(
|
|
_components_markdown_editor__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z,
|
|
{
|
|
watch: true,
|
|
isFocus: true,
|
|
height,
|
|
placeholder,
|
|
defaultValue: value,
|
|
onChange
|
|
}
|
|
) : /* @__PURE__ */ react__WEBPACK_IMPORTED_MODULE_2__.createElement("div", { style: { cursor: "pointer" } }, value ? /* @__PURE__ */ react__WEBPACK_IMPORTED_MODULE_2__.createElement(_components_RenderHtml__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .Z, { className: _index_less_modules__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z.inputBorder, value }) : /* @__PURE__ */ react__WEBPACK_IMPORTED_MODULE_2__.createElement("div", { className: `${_index_less_modules__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z.inputBorder} ${_index_less_modules__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z.placeholder}` }, placeholder));
|
|
};
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
|
/***/ 40004:
|
|
/*!*********************************************************!*\
|
|
!*** ./src/components/tpi-code-setting/CodeSetting.tsx ***!
|
|
\*********************************************************/
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
/* harmony import */ var _index_less__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./index.less */ 82520);
|
|
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! antd */ 57809);
|
|
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! antd */ 78673);
|
|
/* provided dependency */ var React = __webpack_require__(/*! react */ 59301);
|
|
|
|
|
|
const Option = antd__WEBPACK_IMPORTED_MODULE_1__["default"].Option;
|
|
/* harmony default export */ __webpack_exports__.Z = (({
|
|
isTheoretical,
|
|
onFontSizeChange,
|
|
cmFontSize,
|
|
cmCodeMode,
|
|
autoFormat,
|
|
onCodeModeChange,
|
|
onTabToSpace,
|
|
onAutoFormat,
|
|
formatDocument,
|
|
className = "",
|
|
tabToSpace,
|
|
children,
|
|
code_editor,
|
|
challenge
|
|
}) => {
|
|
const difficultyDesc = {
|
|
1: "\u7B80\u5355",
|
|
2: "\u4E2D\u7B49",
|
|
3: "\u56F0\u96BE"
|
|
};
|
|
return /* @__PURE__ */ React.createElement("div", { className: `tpi-code-setting ${className}` }, /* @__PURE__ */ React.createElement("h3", null, "\u4EE3\u7801\u683C\u5F0F"), /* @__PURE__ */ React.createElement("section", null, /* @__PURE__ */ React.createElement("div", { className: "file-item" }, /* @__PURE__ */ React.createElement("b", null, "\u663E\u793A\u6A21\u5F0F"), /* @__PURE__ */ React.createElement(
|
|
antd__WEBPACK_IMPORTED_MODULE_1__["default"],
|
|
{
|
|
bordered: false,
|
|
size: "small",
|
|
value: cmCodeMode,
|
|
onChange: onCodeModeChange
|
|
},
|
|
/* @__PURE__ */ React.createElement(Option, { value: "vs" }, "\u767D\u8272\u80CC\u666F"),
|
|
/* @__PURE__ */ React.createElement(Option, { value: "vs-dark" }, "\u9ED1\u8272\u80CC\u666F")
|
|
)), !isTheoretical && /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement("div", { className: "file-item" }, /* @__PURE__ */ React.createElement("b", null, "\u5B57\u4F53\u5927\u5C0F"), /* @__PURE__ */ React.createElement(
|
|
antd__WEBPACK_IMPORTED_MODULE_1__["default"],
|
|
{
|
|
bordered: false,
|
|
size: "small",
|
|
value: cmFontSize,
|
|
onChange: onFontSizeChange
|
|
},
|
|
/* @__PURE__ */ React.createElement(Option, { value: 12 }, "12px"),
|
|
/* @__PURE__ */ React.createElement(Option, { value: 14 }, "14px"),
|
|
/* @__PURE__ */ React.createElement(Option, { value: 16 }, "16px"),
|
|
/* @__PURE__ */ React.createElement(Option, { value: 18 }, "18px"),
|
|
/* @__PURE__ */ React.createElement(Option, { value: 20 }, "20px"),
|
|
/* @__PURE__ */ React.createElement(Option, { value: 22 }, "22px")
|
|
)), /* @__PURE__ */ React.createElement("div", { className: "file-item" }, /* @__PURE__ */ React.createElement("b", null, "Tab\u8F6C\u6362"), /* @__PURE__ */ React.createElement(antd__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z, { checked: tabToSpace, onChange: onTabToSpace })), /* @__PURE__ */ React.createElement("div", { className: "file-item", onClick: formatDocument }, /* @__PURE__ */ React.createElement("b", { style: { cursor: "pointer" } }, "\u683C\u5F0F\u5316\u4EE3\u7801")))), !isTheoretical && /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement("h3", null, "\u5FEB\u6377\u952E"), /* @__PURE__ */ React.createElement("section", null, /* @__PURE__ */ React.createElement("div", { className: "file-item" }, /* @__PURE__ */ React.createElement("b", null, "\u4FDD\u5B58\u4EE3\u7801"), /* @__PURE__ */ React.createElement("span", null, "Ctrl + S")), /* @__PURE__ */ React.createElement("div", { className: "file-item" }, /* @__PURE__ */ React.createElement("b", null, "\u5524\u51FA\u5FEB\u6377\u952E\u5217\u8868"), /* @__PURE__ */ React.createElement("span", null, "F1 / Alt + F1")), /* @__PURE__ */ React.createElement("div", { className: "file-item" }, /* @__PURE__ */ React.createElement("b", null, "\u5DE6\u53F3\u7F29\u8FDB"), /* @__PURE__ */ React.createElement("span", null, "Ctrl + ]/[")), /* @__PURE__ */ React.createElement("div", { className: "file-item" }, /* @__PURE__ */ React.createElement("b", null, "\u8DF3\u5230\u5339\u914D\u7684\u62EC\u53F7"), /* @__PURE__ */ React.createElement("span", null, "Ctrl + Shift + \\")), /* @__PURE__ */ React.createElement("div", { className: "file-item" }, /* @__PURE__ */ React.createElement("b", null, "\u8F6C\u5230\u884C\u9996"), /* @__PURE__ */ React.createElement("span", null, "Home")), /* @__PURE__ */ React.createElement("div", { className: "file-item" }, /* @__PURE__ */ React.createElement("b", null, "\u8F6C\u5230\u884C\u5C3E"), /* @__PURE__ */ React.createElement("span", null, "End"))), children), !isTheoretical && /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement("h3", null, "\u5FEB\u6377\u952E"), /* @__PURE__ */ React.createElement("section", null, /* @__PURE__ */ React.createElement("div", { className: "file-item" }, /* @__PURE__ */ React.createElement("b", null, "\u5B9E\u8BAD\u96BE\u6613\u5EA6"), /* @__PURE__ */ React.createElement("span", null, difficultyDesc[challenge == null ? void 0 : challenge.difficulty])), /* @__PURE__ */ React.createElement("div", { className: "file-item" }, /* @__PURE__ */ React.createElement("b", null, "\u5B9E\u9A8C\u73AF\u5883"), /* @__PURE__ */ React.createElement("span", null, code_editor == null ? void 0 : code_editor.name)), /* @__PURE__ */ React.createElement("div", { className: "file-item" }, /* @__PURE__ */ React.createElement("b", null, "\u5B9E\u9A8C\u5BB9\u5668\u7F51\u7EDC"), /* @__PURE__ */ React.createElement("span", null, (code_editor == null ? void 0 : code_editor.close_internet) ? "\u5173\u95ED\u5916\u7F51" : "\u5F00\u542F\u5916\u7F51")))));
|
|
});
|
|
|
|
|
|
/***/ }),
|
|
|
|
/***/ 48458:
|
|
/*!*******************************************************************!*\
|
|
!*** ./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/_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/drawer/index.js + 9 modules
|
|
var drawer = __webpack_require__(43428);
|
|
// EXTERNAL MODULE: ./src/components/monaco-editor/index.jsx + 4 modules
|
|
var monaco_editor = __webpack_require__(16162);
|
|
// EXTERNAL MODULE: ./src/components/modal.tsx
|
|
var modal = __webpack_require__(9805);
|
|
// EXTERNAL MODULE: ./src/utils/urlTool.ts
|
|
var urlTool = __webpack_require__(23930);
|
|
;// CONCATENATED MODULE: ./src/pages/Problems/OjForm/CodePanel/index.less
|
|
// extracted by mini-css-extract-plugin
|
|
|
|
// EXTERNAL MODULE: ./src/components/tpi-code-setting/CodeSetting.tsx
|
|
var CodeSetting = __webpack_require__(40004);
|
|
;// CONCATENATED MODULE: ./src/pages/Problems/OjForm/CodePanel/index.tsx
|
|
/* provided dependency */ var React = __webpack_require__(/*! react */ 59301);
|
|
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));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
const 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 = /* @__PURE__ */ ((Types2) => {
|
|
Types2[Types2["set_font_size"] = 0] = "set_font_size";
|
|
Types2[Types2["set_theme"] = 1] = "set_theme";
|
|
Types2[Types2["on_tab_to_space"] = 2] = "on_tab_to_space";
|
|
Types2[Types2["set_show_editor_setting"] = 3] = "set_show_editor_setting";
|
|
return Types2;
|
|
})(Types || {});
|
|
function reducer(state, action) {
|
|
switch (action.type) {
|
|
case 3 /* set_show_editor_setting */:
|
|
return __spreadProps(__spreadValues({}, state), { showEditorSetting: action.payload });
|
|
case 1 /* set_theme */:
|
|
return __spreadProps(__spreadValues({}, state), { theme: action.payload });
|
|
case 0 /* set_font_size */:
|
|
return __spreadProps(__spreadValues({}, state), { fontSize: action.payload });
|
|
case 2 /* on_tab_to_space */:
|
|
return __spreadProps(__spreadValues({}, state), { tabToSpace: action.payload });
|
|
default:
|
|
throw new Error();
|
|
}
|
|
}
|
|
/* harmony default export */ var CodePanel = (({ isLoading, value, onChange, language, onUpdateCode, ActionBarRender = (onShowCodeSetting) => {
|
|
return /* @__PURE__ */ React.createElement(DefaultActionBar, { onShowCodeSetting });
|
|
} }) => {
|
|
const [state, dispatch] = (0,_react_17_0_2_react.useReducer)(reducer, initialState);
|
|
const { theme, fontSize, showEditorSetting, tabToSpace } = state;
|
|
const timeRef = (0,_react_17_0_2_react.useRef)();
|
|
const valueRef = (0,_react_17_0_2_react.useRef)();
|
|
const codeSettingOption = {
|
|
onFontSizeChange: (val) => {
|
|
dispatch({
|
|
type: 0 /* set_font_size */,
|
|
payload: val
|
|
});
|
|
(0,urlTool/* toStore */.t)("cmFontSize", val);
|
|
},
|
|
tabToSpace,
|
|
cmFontSize: fontSize,
|
|
className: "oj",
|
|
cmCodeMode: theme,
|
|
onTabToSpace: (checked) => {
|
|
dispatch({
|
|
type: 2 /* on_tab_to_space */,
|
|
payload: checked
|
|
});
|
|
(0,urlTool/* toStore */.t)("cmTabToSpace", checked);
|
|
},
|
|
onCodeModeChange: (val) => {
|
|
dispatch({
|
|
type: 1 /* set_theme */,
|
|
payload: val
|
|
});
|
|
(0,urlTool/* toStore */.t)("cmCodeMode", val);
|
|
}
|
|
};
|
|
function onHideCodeSetting() {
|
|
dispatch({
|
|
type: 3 /* set_show_editor_setting */,
|
|
payload: false
|
|
});
|
|
}
|
|
function onShowCodeSetting() {
|
|
dispatch({
|
|
type: 3 /* set_show_editor_setting */,
|
|
payload: true
|
|
});
|
|
}
|
|
const editorOption = {
|
|
value,
|
|
language,
|
|
// onChange,
|
|
theme,
|
|
height: "calc(100% - 56px)",
|
|
options: {
|
|
fontSize,
|
|
insertSpaces: tabToSpace
|
|
},
|
|
onChange: (value2) => {
|
|
onChange(value2);
|
|
valueRef.current = value2;
|
|
clearTimeout(timeRef.current);
|
|
timeRef.current = setTimeout(() => {
|
|
onUpdateCode(valueRef.current);
|
|
}, 1e4);
|
|
},
|
|
onEditBlur: (value2) => {
|
|
if (!!valueRef.current)
|
|
onUpdateCode(valueRef.current);
|
|
}
|
|
};
|
|
return /* @__PURE__ */ React.createElement(_react_17_0_2_react.Fragment, null, /* @__PURE__ */ React.createElement("div", { className: "code-panel-container" }, ActionBarRender(onShowCodeSetting), !isLoading && /* @__PURE__ */ React.createElement(monaco_editor/* default */.ZP, __spreadValues({}, editorOption))), /* @__PURE__ */ React.createElement(modal/* default */.Z, null, /* @__PURE__ */ React.createElement(
|
|
drawer/* default */.Z,
|
|
{
|
|
rootClassName: "oj",
|
|
title: null,
|
|
placement: "right",
|
|
closable: false,
|
|
open: showEditorSetting,
|
|
onClose: onHideCodeSetting
|
|
},
|
|
/* @__PURE__ */ React.createElement(CodeSetting/* default */.Z, __spreadValues({}, codeSettingOption))
|
|
)));
|
|
});
|
|
function DefaultActionBar({ onShowCodeSetting }) {
|
|
return /* @__PURE__ */ React.createElement("div", { className: "action-bar" }, /* @__PURE__ */ React.createElement("span", null, "\u5B66\u5458\u521D\u59CB\u4EE3\u7801\u6587\u4EF6"), /* @__PURE__ */ React.createElement("a", { onClick: onShowCodeSetting }, /* @__PURE__ */ React.createElement("i", { className: "iconfont icon-shezhi" })));
|
|
}
|
|
|
|
|
|
/***/ }),
|
|
|
|
/***/ 52604:
|
|
/*!**************************************************************************!*\
|
|
!*** ./src/pages/Problems/OjForm/CodeProgramPanel/index.tsx + 1 modules ***!
|
|
\**************************************************************************/
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
// EXPORTS
|
|
__webpack_require__.d(__webpack_exports__, {
|
|
Z: function() { return /* binding */ CodeProgramPanel; }
|
|
});
|
|
|
|
// 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/drawer/index.js + 9 modules
|
|
var drawer = __webpack_require__(43428);
|
|
// EXTERNAL MODULE: ./src/components/monaco-editor/index.jsx + 4 modules
|
|
var monaco_editor = __webpack_require__(16162);
|
|
// EXTERNAL MODULE: ./src/components/tpi-code-setting/CodeSetting.tsx
|
|
var CodeSetting = __webpack_require__(40004);
|
|
// EXTERNAL MODULE: ./src/components/modal.tsx
|
|
var modal = __webpack_require__(9805);
|
|
// EXTERNAL MODULE: ./src/utils/urlTool.ts
|
|
var urlTool = __webpack_require__(23930);
|
|
;// 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@4.17.21@lodash/lodash.js
|
|
var lodash = __webpack_require__(89392);
|
|
;// CONCATENATED MODULE: ./src/pages/Problems/OjForm/CodeProgramPanel/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));
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
const 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 = /* @__PURE__ */ ((Types2) => {
|
|
Types2[Types2["set_font_size"] = 0] = "set_font_size";
|
|
Types2[Types2["set_theme"] = 1] = "set_theme";
|
|
Types2[Types2["on_tab_to_space"] = 2] = "on_tab_to_space";
|
|
Types2[Types2["set_show_editor_setting"] = 3] = "set_show_editor_setting";
|
|
return Types2;
|
|
})(Types || {});
|
|
function reducer(state, action) {
|
|
switch (action.type) {
|
|
case 3 /* set_show_editor_setting */:
|
|
return __spreadProps(__spreadValues({}, state), { showEditorSetting: action.payload });
|
|
case 1 /* set_theme */:
|
|
return __spreadProps(__spreadValues({}, state), { theme: action.payload });
|
|
case 0 /* set_font_size */:
|
|
return __spreadProps(__spreadValues({}, state), { fontSize: action.payload });
|
|
case 2 /* on_tab_to_space */:
|
|
return __spreadProps(__spreadValues({}, state), { tabToSpace: action.payload });
|
|
default:
|
|
throw new Error();
|
|
}
|
|
}
|
|
/* harmony default export */ var CodeProgramPanel = (({ isLoading, value = [], onChange }) => {
|
|
var _a;
|
|
const [state, dispatch] = (0,_react_17_0_2_react.useReducer)(reducer, initialState);
|
|
const { theme, fontSize, showEditorSetting, tabToSpace } = state;
|
|
const [language, setLanguage] = (0,_react_17_0_2_react.useState)("c");
|
|
const saveLanguageItems = (0,_react_17_0_2_react.useRef)([]);
|
|
(0,_react_17_0_2_react.useEffect)(() => {
|
|
if (!!(value == null ? void 0 : value.length)) {
|
|
saveLanguageItems.current = (0,lodash.cloneDeep)(value);
|
|
}
|
|
}, [value]);
|
|
const codeSettingOption = {
|
|
onFontSizeChange: (val) => {
|
|
dispatch({
|
|
type: 0 /* set_font_size */,
|
|
payload: val
|
|
});
|
|
(0,urlTool/* toStore */.t)("cmFontSize", val);
|
|
},
|
|
tabToSpace,
|
|
cmFontSize: fontSize,
|
|
className: "oj",
|
|
cmCodeMode: theme,
|
|
onTabToSpace: (checked) => {
|
|
dispatch({
|
|
type: 2 /* on_tab_to_space */,
|
|
payload: checked
|
|
});
|
|
(0,urlTool/* toStore */.t)("cmTabToSpace", checked);
|
|
},
|
|
onCodeModeChange: (val) => {
|
|
dispatch({
|
|
type: 1 /* set_theme */,
|
|
payload: val
|
|
});
|
|
(0,urlTool/* toStore */.t)("cmCodeMode", val);
|
|
}
|
|
};
|
|
function onHideCodeSetting() {
|
|
dispatch({
|
|
type: 3 /* set_show_editor_setting */,
|
|
payload: false
|
|
});
|
|
}
|
|
function onShowCodeSetting() {
|
|
dispatch({
|
|
type: 3 /* set_show_editor_setting */,
|
|
payload: true
|
|
});
|
|
}
|
|
function onCodeChange(v) {
|
|
var _a2;
|
|
const item = (_a2 = saveLanguageItems.current) == null ? void 0 : _a2.map((e) => {
|
|
if (e.language === language) {
|
|
e.code = v;
|
|
return e;
|
|
}
|
|
return e;
|
|
});
|
|
saveLanguageItems.current = (0,lodash.cloneDeep)(item);
|
|
onChange(item);
|
|
}
|
|
const editorOption = {
|
|
key: language,
|
|
value: (_a = value == null ? void 0 : value.find((e) => e.language === language)) == null ? void 0 : _a.code,
|
|
language,
|
|
onChange: onCodeChange,
|
|
theme,
|
|
height: "calc(100% - 56px)",
|
|
options: {
|
|
fontSize,
|
|
insertSpaces: tabToSpace
|
|
}
|
|
};
|
|
return /* @__PURE__ */ _react_17_0_2_react.createElement(_react_17_0_2_react.Fragment, null, /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: CodeProgramPanelmodules["code-panel-container"] }, /* @__PURE__ */ _react_17_0_2_react.createElement(DefaultActionBar, { languageItems: value, onLanguage: (v) => setLanguage(v), language, onShowCodeSetting }), !isLoading && /* @__PURE__ */ _react_17_0_2_react.createElement(monaco_editor/* default */.ZP, __spreadValues({}, editorOption))), /* @__PURE__ */ _react_17_0_2_react.createElement(modal/* default */.Z, null, /* @__PURE__ */ _react_17_0_2_react.createElement(
|
|
drawer/* default */.Z,
|
|
{
|
|
rootClassName: "oj",
|
|
title: null,
|
|
placement: "right",
|
|
closable: false,
|
|
open: showEditorSetting,
|
|
onClose: onHideCodeSetting
|
|
},
|
|
/* @__PURE__ */ _react_17_0_2_react.createElement(CodeSetting/* default */.Z, __spreadValues({}, codeSettingOption))
|
|
)));
|
|
});
|
|
function DefaultActionBar({ languageItems, language, onShowCodeSetting, onLanguage }) {
|
|
return /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: CodeProgramPanelmodules["action-oj-bar"] }, /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, "\u5B66\u5458\u521D\u59CB\u4EE3\u7801\u6587\u4EF6"), languageItems == null ? void 0 : languageItems.map((e) => {
|
|
return /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: language === (e == null ? void 0 : e.language) ? CodeProgramPanelmodules.active : "", onClick: () => onLanguage(e == null ? void 0 : e.language), key: e == null ? void 0 : e.language }, e == null ? void 0 : e.language);
|
|
}), /* @__PURE__ */ _react_17_0_2_react.createElement("a", { onClick: onShowCodeSetting }, /* @__PURE__ */ _react_17_0_2_react.createElement("i", { className: "iconfont icon-shezhi" })));
|
|
}
|
|
|
|
|
|
/***/ }),
|
|
|
|
/***/ 25842:
|
|
/*!**********************************************!*\
|
|
!*** ./src/pages/Problems/OjForm/service.ts ***!
|
|
\**********************************************/
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
/* harmony export */ GM: function() { return /* binding */ updateExerciseQuestion; },
|
|
/* harmony export */ MK: function() { return /* binding */ addExerciseQuestion; },
|
|
/* harmony export */ PR: function() { return /* binding */ getUser; },
|
|
/* harmony export */ ZS: function() { return /* binding */ cancelPublishProgrammingTopic; },
|
|
/* harmony export */ d1: function() { return /* binding */ getDisciplines; },
|
|
/* harmony export */ fu: function() { return /* binding */ getProgrammingTopic; },
|
|
/* harmony export */ j2: function() { return /* binding */ publishProgrammingTopic; },
|
|
/* harmony export */ l_: function() { return /* binding */ updateProgrammingTopic; },
|
|
/* harmony export */ uE: function() { return /* binding */ startChallenge; },
|
|
/* harmony export */ zQ: function() { return /* binding */ addProgrammingTopic; }
|
|
/* harmony export */ });
|
|
/* unused harmony export addTag */
|
|
/* harmony import */ var _utils_fetch_ts__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @/utils/fetch.ts */ 64841);
|
|
|
|
function getUser() {
|
|
return (0,_utils_fetch_ts__WEBPACK_IMPORTED_MODULE_0__/* .get */ .U2)("problems/new.json");
|
|
}
|
|
function getDisciplines(source = "question") {
|
|
return (0,_utils_fetch_ts__WEBPACK_IMPORTED_MODULE_0__/* .get */ .U2)(`disciplines.json`, { source });
|
|
}
|
|
function getProgrammingTopic(id) {
|
|
return (0,_utils_fetch_ts__WEBPACK_IMPORTED_MODULE_0__/* .get */ .U2)(`problems/${id}/edit.json`);
|
|
}
|
|
function updateProgrammingTopic(id, params) {
|
|
return (0,_utils_fetch_ts__WEBPACK_IMPORTED_MODULE_0__/* .put */ .gz)(`problems/${id}.json`, params);
|
|
}
|
|
function addProgrammingTopic(params) {
|
|
return (0,_utils_fetch_ts__WEBPACK_IMPORTED_MODULE_0__/* .post */ .v_)(`problems.json`, params);
|
|
}
|
|
function addExerciseQuestion(exerciseId, params) {
|
|
return (0,_utils_fetch_ts__WEBPACK_IMPORTED_MODULE_0__/* .post */ .v_)(`exercises/${exerciseId}/exercise_questions.json`, params);
|
|
}
|
|
function updateExerciseQuestion(id, params) {
|
|
return (0,_utils_fetch_ts__WEBPACK_IMPORTED_MODULE_0__/* .put */ .gz)(`exercise_questions/${id}.json`, params);
|
|
}
|
|
function publishProgrammingTopic(id) {
|
|
return (0,_utils_fetch_ts__WEBPACK_IMPORTED_MODULE_0__/* .post */ .v_)(`problems/${id}/publish.json`);
|
|
}
|
|
function cancelPublishProgrammingTopic(id) {
|
|
return (0,_utils_fetch_ts__WEBPACK_IMPORTED_MODULE_0__/* .post */ .v_)(`problems/${id}/cancel_publish.json`);
|
|
}
|
|
function startChallenge(id) {
|
|
return (0,_utils_fetch_ts__WEBPACK_IMPORTED_MODULE_0__/* .get */ .U2)(`problems/${id}/start.json`);
|
|
}
|
|
function addTag(sub_discipline_id, name) {
|
|
return post(`tag_disciplines.json`, {
|
|
name,
|
|
sub_discipline_id
|
|
});
|
|
}
|
|
|
|
|
|
/***/ }),
|
|
|
|
/***/ 4309:
|
|
/*!********************************************!*\
|
|
!*** ./src/pages/Problems/OjForm/util.tsx ***!
|
|
\********************************************/
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
/* harmony export */ D0: function() { return /* binding */ getDisciplineOptions; },
|
|
/* harmony export */ R8: function() { return /* binding */ Keys; },
|
|
/* harmony export */ jw: function() { return /* binding */ getSelectOptions; },
|
|
/* harmony export */ y3: function() { return /* binding */ getDisciplineIds; }
|
|
/* harmony export */ });
|
|
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! antd */ 57809);
|
|
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ 59301);
|
|
|
|
|
|
const { Option } = antd__WEBPACK_IMPORTED_MODULE_1__["default"];
|
|
var Keys = /* @__PURE__ */ ((Keys2) => {
|
|
Keys2[Keys2["language"] = 0] = "language";
|
|
Keys2[Keys2["difficult"] = 1] = "difficult";
|
|
Keys2[Keys2["category"] = 2] = "category";
|
|
Keys2[Keys2["openOrNot"] = 3] = "openOrNot";
|
|
return Keys2;
|
|
})(Keys || {});
|
|
const Options = {
|
|
[0 /* 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" }
|
|
],
|
|
[1 /* difficult */]: [
|
|
{ title: "\u7B80\u5355", key: 1 },
|
|
{ title: "\u4E2D\u7B49", key: 2 },
|
|
{ title: "\u56F0\u96BE", key: 3 }
|
|
],
|
|
[2 /* category */]: [
|
|
{ title: "\u7A0B\u5E8F\u8BBE\u8BA1", key: 1 },
|
|
{ title: "\u7B97\u6CD5", key: 2 }
|
|
],
|
|
[3 /* openOrNot */]: [
|
|
{ title: "\u516C\u5F00", key: 1 },
|
|
{ title: "\u79C1\u6709", key: 0 }
|
|
]
|
|
};
|
|
function getSelectOptions(name) {
|
|
return Options[name].map((item) => /* @__PURE__ */ react__WEBPACK_IMPORTED_MODULE_0__.createElement(Option, { key: item.title, value: item.key }, " ", item.title, " "));
|
|
}
|
|
function getDisciplineOptions(data, result) {
|
|
data.map((value) => {
|
|
const { id, name, sub_disciplines } = value;
|
|
let 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 _a;
|
|
let rs = [];
|
|
for (let index = 0; index < data.length; index++) {
|
|
const value = data[index];
|
|
if (((_a = value.sub_disciplines) == null ? void 0 : _a.length) > 0) {
|
|
rs[0] = value.id;
|
|
for (let j = 0; j < value.sub_disciplines.length; j++) {
|
|
const 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, []];
|
|
}
|
|
|
|
|
|
/***/ }),
|
|
|
|
/***/ 47464:
|
|
/*!***************************!*\
|
|
!*** ./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 = /* @__PURE__ */ ((PageType2) => {
|
|
PageType2["FirstPage"] = "firstPage";
|
|
PageType2["PrevPage"] = "prevPage";
|
|
PageType2["NextPage"] = "nextPage";
|
|
return PageType2;
|
|
})(PageType || {});
|
|
var QuestionType = /* @__PURE__ */ ((QuestionType2) => {
|
|
QuestionType2[QuestionType2["Single"] = 0] = "Single";
|
|
QuestionType2[QuestionType2["Multiple"] = 1] = "Multiple";
|
|
QuestionType2[QuestionType2["Judge"] = 2] = "Judge";
|
|
QuestionType2[QuestionType2["Fill"] = 3] = "Fill";
|
|
QuestionType2[QuestionType2["Subjective"] = 4] = "Subjective";
|
|
QuestionType2[QuestionType2["Shixun"] = 5] = "Shixun";
|
|
QuestionType2[QuestionType2["Program"] = 6] = "Program";
|
|
QuestionType2[QuestionType2["Combine"] = 7] = "Combine";
|
|
return QuestionType2;
|
|
})(QuestionType || {});
|
|
|
|
|
|
/***/ }),
|
|
|
|
/***/ 23930:
|
|
/*!******************************!*\
|
|
!*** ./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 */ 7062);
|
|
/* harmony import */ var store__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(store__WEBPACK_IMPORTED_MODULE_0__);
|
|
const isDev = (/* unused pure expression or super */ null && ("production" === "development"));
|
|
|
|
function toStore(key, val) {
|
|
let _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) {
|
|
let _config = store__WEBPACK_IMPORTED_MODULE_0___default().get("__ec");
|
|
if (!_config)
|
|
return defaultVal;
|
|
return _config[key] === void 0 ? defaultVal : _config[key];
|
|
}
|
|
|
|
|
|
/***/ })
|
|
|
|
}]); |