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__MyProblem__index.fe19825...

4291 lines
186 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

"use strict";
(self["webpackChunk"] = self["webpackChunk"] || []).push([[36270],{
/***/ 58151:
/*!****************************************!*\
!*** ./src/components/Hooks/index.tsx ***!
\****************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ y: function() { return /* binding */ useDisableAction; }
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ 59301);
var useDisableAction = function useDisableAction(disable) {
(0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {
if (disable) {
var handleKeyDown = function handleKeyDown(event) {
if (event.key === "F12") {
event.preventDefault();
// 执行你的自定义行为
console.log('F12被禁用');
}
};
var handleContextmenu = function handleContextmenu(event) {
event.preventDefault();
};
document.addEventListener("keydown", handleKeyDown);
document.addEventListener("contextmenu", handleContextmenu);
return function () {
document.removeEventListener("keydown", handleKeyDown);
document.removeEventListener("contextmenu", handleContextmenu);
};
}
}, [disable]);
};
/***/ }),
/***/ 39910:
/*!*******************************************************************!*\
!*** ./src/pages/Classrooms/Lists/Exercise/components/Unlock.tsx ***!
\*******************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
/* harmony import */ var _root_workspace_ppte5yg23_local_v9_test1_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_typeof_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/typeof.js */ 31468);
/* harmony import */ var _root_workspace_ppte5yg23_local_v9_test1_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_typeof_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_local_v9_test1_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_typeof_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _root_workspace_ppte5yg23_local_v9_test1_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/regeneratorRuntime.js */ 7557);
/* harmony import */ var _root_workspace_ppte5yg23_local_v9_test1_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_local_v9_test1_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _root_workspace_ppte5yg23_local_v9_test1_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/asyncToGenerator.js */ 41498);
/* harmony import */ var _root_workspace_ppte5yg23_local_v9_test1_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_local_v9_test1_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _root_workspace_ppte5yg23_local_v9_test1_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/slicedToArray.js */ 79800);
/* harmony import */ var _root_workspace_ppte5yg23_local_v9_test1_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_local_v9_test1_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3__);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! react */ 59301);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! antd */ 31797);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! antd */ 78241);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! antd */ 43418);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! antd */ 1710);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! antd */ 10249);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! antd */ 95237);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! antd */ 43604);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! antd */ 3113);
/* harmony import */ var _service_exercise__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/service/exercise */ 26613);
/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! moment */ 61186);
/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(moment__WEBPACK_IMPORTED_MODULE_6__);
/* harmony import */ var umi__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! umi */ 80184);
/* harmony import */ var _utils_util__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @/utils/util */ 1079);
/* harmony import */ var _components_Exercise_ip__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @/components/Exercise/ip */ 41889);
/* harmony import */ var _utils_authority__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @/utils/authority */ 13277);
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! react/jsx-runtime */ 37712);
var Countdown = antd__WEBPACK_IMPORTED_MODULE_12__/* ["default"] */ .Z.Countdown;
var Unlock = function Unlock(_ref) {
var _actionTabs$exerciseP9, _actionTabs$exerciseP10, _actionTabs$exerciseP11, _actionTabs$exerciseP12;
var exercise = _ref.exercise,
successCb = _ref.successCb,
dispatch = _ref.dispatch;
var params = (0,umi__WEBPACK_IMPORTED_MODULE_7__.useParams)();
var _Form$useForm = antd__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .Z.useForm(),
_Form$useForm2 = _root_workspace_ppte5yg23_local_v9_test1_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3___default()(_Form$useForm, 1),
form = _Form$useForm2[0];
var _useState = (0,react__WEBPACK_IMPORTED_MODULE_4__.useState)(false),
_useState2 = _root_workspace_ppte5yg23_local_v9_test1_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3___default()(_useState, 2),
isLoading = _useState2[0],
setIsLoading = _useState2[1];
var localIpRef = (0,react__WEBPACK_IMPORTED_MODULE_4__.useRef)();
var actionTabs = exercise.actionTabs;
(0,react__WEBPACK_IMPORTED_MODULE_4__.useEffect)(function () {
if (exercise.actionTabs.key === 'student-unlock') {
// if (actionTabs?.exerciseParams?.ip_limit !== 'no' || actionTabs?.exerciseParams?.ip_bind)
// getLocalIp();
setIsLoading(false);
form.resetFields();
}
}, [exercise.actionTabs.key]);
var getLocalIp = function getLocalIp() {
return new Promise( /*#__PURE__*/function () {
var _ref2 = _root_workspace_ppte5yg23_local_v9_test1_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_local_v9_test1_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1___default()().mark(function _callee(resolve) {
var _actionTabs$exerciseP, _actionTabs$exerciseP2;
return _root_workspace_ppte5yg23_local_v9_test1_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1___default()().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
_context.next = 2;
return (0,_components_Exercise_ip__WEBPACK_IMPORTED_MODULE_9__/* .findLocalIp */ .y)({
ip_limit: actionTabs === null || actionTabs === void 0 || (_actionTabs$exerciseP = actionTabs.exerciseParams) === null || _actionTabs$exerciseP === void 0 ? void 0 : _actionTabs$exerciseP.ip_limit,
ip_bind: actionTabs === null || actionTabs === void 0 || (_actionTabs$exerciseP2 = actionTabs.exerciseParams) === null || _actionTabs$exerciseP2 === void 0 ? void 0 : _actionTabs$exerciseP2.ip_bind
});
case 2:
localIpRef.current = _context.sent;
return _context.abrupt("return", resolve());
case 4:
case "end":
return _context.stop();
}
}, _callee);
}));
return function (_x) {
return _ref2.apply(this, arguments);
};
}());
};
var handleOk = /*#__PURE__*/function () {
var _ref3 = _root_workspace_ppte5yg23_local_v9_test1_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_local_v9_test1_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1___default()().mark(function _callee2() {
var _actionTabs$exerciseP3, _actionTabs$exerciseP4, _actionTabs$exerciseP5, _actionTabs$exerciseP6;
var formValue, unlockRes, _userInfo, _actionTabs$exerciseP7, _actionTabs$exerciseP8, delayedParams, v;
return _root_workspace_ppte5yg23_local_v9_test1_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1___default()().wrap(function _callee2$(_context2) {
while (1) switch (_context2.prev = _context2.next) {
case 0:
_context2.next = 2;
return form.validateFields();
case 2:
formValue = form.getFieldsValue();
setIsLoading(true);
if (!((actionTabs === null || actionTabs === void 0 || (_actionTabs$exerciseP3 = actionTabs.exerciseParams) === null || _actionTabs$exerciseP3 === void 0 ? void 0 : _actionTabs$exerciseP3.ip_limit) !== 'no' || actionTabs !== null && actionTabs !== void 0 && (_actionTabs$exerciseP4 = actionTabs.exerciseParams) !== null && _actionTabs$exerciseP4 !== void 0 && _actionTabs$exerciseP4.ip_bind)) {
_context2.next = 7;
break;
}
_context2.next = 7;
return getLocalIp();
case 7:
_context2.next = 9;
return (0,_service_exercise__WEBPACK_IMPORTED_MODULE_5__/* .unlockUser */ .ZD)(actionTabs === null || actionTabs === void 0 || (_actionTabs$exerciseP5 = actionTabs.exerciseParams) === null || _actionTabs$exerciseP5 === void 0 ? void 0 : _actionTabs$exerciseP5.id, {
exercise_user_id: actionTabs === null || actionTabs === void 0 || (_actionTabs$exerciseP6 = actionTabs.exerciseParams) === null || _actionTabs$exerciseP6 === void 0 ? void 0 : _actionTabs$exerciseP6.exercise_user_id,
unlock_key: formValue.unlock_key,
ip: localIpRef.current
});
case 9:
unlockRes = _context2.sent;
if (!(unlockRes.status === 0)) {
_context2.next = 22;
break;
}
if (!successCb) {
_context2.next = 15;
break;
}
dispatch({
type: 'exercise/setActionTabs',
payload: {}
});
successCb();
return _context2.abrupt("return");
case 15:
if (!formValue.time) {
_context2.next = 19;
break;
}
delayedParams = {
time: moment__WEBPACK_IMPORTED_MODULE_6___default()(formValue.time).format("YYYY-MM-DD HH:mm"),
exercise_user_id: actionTabs === null || actionTabs === void 0 || (_actionTabs$exerciseP7 = actionTabs.exerciseParams) === null || _actionTabs$exerciseP7 === void 0 ? void 0 : _actionTabs$exerciseP7.exercise_user_id,
id: actionTabs === null || actionTabs === void 0 || (_actionTabs$exerciseP8 = actionTabs.exerciseParams) === null || _actionTabs$exerciseP8 === void 0 ? void 0 : _actionTabs$exerciseP8.id
};
_context2.next = 19;
return (0,_service_exercise__WEBPACK_IMPORTED_MODULE_5__/* .delayedTime */ .qz)(delayedParams);
case 19:
v = actionTabs === null || actionTabs === void 0 ? void 0 : actionTabs.exerciseParams;
(0,_utils_util__WEBPACK_IMPORTED_MODULE_8__/* .startExercise */ .nr)({
inner_ip: v.inner_ip,
public_ip: v.public_ip,
open_camera: v.open_camera,
ip_limit: v.ip_limit,
ip_bind: v.ip_bind,
exercise_tips: v.exercise_tips,
exerciseId: v.id,
screen_open: v.screen_open,
screen_num: v.screen_num,
screen_sec: v.screen_sec,
coursesId: params.coursesId,
login: (_userInfo = (0,_utils_authority__WEBPACK_IMPORTED_MODULE_10__/* .userInfo */ .eY)()) === null || _userInfo === void 0 ? void 0 : _userInfo.login,
history: history,
identity_verify: v.identity_verify,
open_phone_video_recording: v.open_phone_video_recording,
current_status: v.current_status
});
dispatch({
type: 'exercise/setActionTabs',
payload: {}
});
case 22:
setIsLoading(false);
case 23:
case "end":
return _context2.stop();
}
}, _callee2);
}));
return function handleOk() {
return _ref3.apply(this, arguments);
};
}();
var columns = [{
title: 'IP地址',
dataIndex: 'ip',
key: 'ip',
render: function render(text) {
return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsx)("span", {
className: text.indexOf("异常") > -1 ? 'c-red' : 'c-green',
children: text
});
}
}, {
title: '浏览器',
dataIndex: 'browser',
key: 'browser',
render: function render(text) {
return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsx)("span", {
className: text.indexOf("异常") > -1 ? 'c-red' : 'c-green',
children: text
});
}
}, {
title: '上次登录时间',
dataIndex: 'last_login_time',
key: 'last_login_time'
}];
var hasError5 = (actionTabs === null || actionTabs === void 0 || (_actionTabs$exerciseP9 = actionTabs.exerciseParams) === null || _actionTabs$exerciseP9 === void 0 ? void 0 : _actionTabs$exerciseP9.errorMessage) && _root_workspace_ppte5yg23_local_v9_test1_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_typeof_js__WEBPACK_IMPORTED_MODULE_0___default()(actionTabs === null || actionTabs === void 0 || (_actionTabs$exerciseP10 = actionTabs.exerciseParams) === null || _actionTabs$exerciseP10 === void 0 ? void 0 : _actionTabs$exerciseP10.errorMessage) === "object";
return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsx)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.Fragment, {
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsxs)(antd__WEBPACK_IMPORTED_MODULE_14__/* ["default"] */ .Z, {
width: 514,
centered: true,
closable: !!(actionTabs !== null && actionTabs !== void 0 && (_actionTabs$exerciseP11 = actionTabs.exerciseParams) !== null && _actionTabs$exerciseP11 !== void 0 && _actionTabs$exerciseP11.unlockClose),
maskClosable: false,
keyboard: false,
maskStyle: {
background: "#000"
},
title: '提示',
open: exercise.actionTabs.key === 'student-unlock',
footer: null,
onCancel: function onCancel() {
dispatch({
type: 'exercise/setActionTabs',
payload: {}
});
},
children: [hasError5 && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsx)("div", {
style: {
marginBottom: 16
},
children: "\u8BE5\u8D26\u53F7\u5DF2\u7ECF\u5B58\u5728\u5F02\u5E38\u60C5\u51B5\uFF0C\u82E5\u975E\u672C\u4EBA\u64CD\u4F5C\uFF0C\u8BF7\u8054\u7CFB\u76D1\u8003\u8001\u5E08\u8BF4\u660E\u60C5\u51B5\u3002 "
}), !hasError5 && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsx)("div", {
style: {
marginBottom: 16
},
children: "\u7CFB\u7EDF\u68C0\u6D4B\u5230\u60A8\u5728\u8003\u8BD5\u65F6\u4E2D\u9014\u9000\u51FA\uFF0C\u73B0\u5DF2\u5C06\u8003\u8BD5\u9501\u5B9A\u3002\u5982\u9700\u7EE7\u7EED\u8FDB\u884C\u8003\u8BD5\uFF0C \u8BF7\u5C3D\u5FEB\u8054\u7CFB\u8BFE\u5802\u8001\u5E08\u8FDB\u884C\u89E3\u9501\uFF01"
}), hasError5 && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsx)(antd__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .Z, {
className: "mb20",
pagination: {
hideOnSinglePage: true
},
dataSource: [(actionTabs === null || actionTabs === void 0 || (_actionTabs$exerciseP12 = actionTabs.exerciseParams) === null || _actionTabs$exerciseP12 === void 0 ? void 0 : _actionTabs$exerciseP12.errorMessage) || {}],
columns: columns
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsx)("div", {
className: "",
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsx)(antd__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .Z, {
form: form,
layout: "vertical",
autoComplete: "off",
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsx)(antd__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .Z.Item, {
label: "\u8003\u8BD5\u89E3\u9501\u7801",
name: "unlock_key",
rules: [{
required: true,
message: '请输入考试解锁码'
}],
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsx)(antd__WEBPACK_IMPORTED_MODULE_16__/* ["default"] */ .Z.Password, {
autoComplete: "off",
placeholder: "\u8BF7\u8F93\u5165\u8003\u8BD5\u89E3\u9501\u7801",
visibilityToggle: false
})
})
})
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsxs)(antd__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .Z, {
justify: "space-between",
align: "middle",
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsx)(antd__WEBPACK_IMPORTED_MODULE_18__/* ["default"] */ .Z, {}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsx)(antd__WEBPACK_IMPORTED_MODULE_18__/* ["default"] */ .Z, {
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_11__.jsx)(antd__WEBPACK_IMPORTED_MODULE_19__/* ["default"] */ .ZP, {
loading: isLoading,
onClick: handleOk,
children: "\u8FDB\u5165\u8003\u8BD5"
})
})]
})]
})
});
};
/* harmony default export */ __webpack_exports__.Z = ((0,umi__WEBPACK_IMPORTED_MODULE_7__.connect)(function (_ref4) {
var exercise = _ref4.exercise;
return {
exercise: exercise
};
})(Unlock));
/***/ }),
/***/ 68641:
/*!*****************************************************************!*\
!*** ./src/pages/MyProblem/TestCasePanel/index.tsx + 1 modules ***!
\*****************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
Y4: function() { return /* binding */ DetailCommitOut; },
Im: function() { return /* binding */ ExecuteDict; },
ZP: function() { return /* binding */ TestCasePanel; }
});
// UNUSED EXPORTS: getCommitOut
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/slicedToArray.js
var slicedToArray = __webpack_require__(79800);
var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/regeneratorRuntime.js
var regeneratorRuntime = __webpack_require__(7557);
var regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(regeneratorRuntime);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/asyncToGenerator.js
var asyncToGenerator = __webpack_require__(41498);
var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectSpread2.js
var objectSpread2 = __webpack_require__(82242);
var objectSpread2_default = /*#__PURE__*/__webpack_require__.n(objectSpread2);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/defineProperty.js
var defineProperty = __webpack_require__(85573);
var defineProperty_default = /*#__PURE__*/__webpack_require__.n(defineProperty);
// 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/input/index.js + 5 modules
var input = __webpack_require__(10249);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
var es_button = __webpack_require__(3113);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.6.1@@ant-design/icons/es/icons/DownOutlined.js + 1 modules
var DownOutlined = __webpack_require__(84105);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.6.1@@ant-design/icons/es/icons/UpOutlined.js + 1 modules
var UpOutlined = __webpack_require__(87395);
// EXTERNAL MODULE: ./src/pages/MyProblem/interface.ts
var MyProblem_interface = __webpack_require__(41403);
// EXTERNAL MODULE: ./node_modules/_js-base64@2.6.4@js-base64/base64.js
var base64 = __webpack_require__(24334);
;// CONCATENATED MODULE: ./src/pages/MyProblem/TestCasePanel/index.less
// extracted by mini-css-extract-plugin
// EXTERNAL MODULE: ./src/components/Spinner/index.tsx + 1 modules
var Spinner = __webpack_require__(13887);
// EXTERNAL MODULE: ./src/components/RenderHtml/index.tsx + 2 modules
var RenderHtml = __webpack_require__(26404);
// EXTERNAL MODULE: ./src/utils/util.tsx
var util = __webpack_require__(1079);
// EXTERNAL MODULE: ./node_modules/_xterm@4.8.1@xterm/lib/xterm.js
var xterm = __webpack_require__(34376);
// EXTERNAL MODULE: ./src/utils/fetch.ts
var utils_fetch = __webpack_require__(35325);
// EXTERNAL MODULE: ./src/.umi-production/exports.ts
var _umi_production_exports = __webpack_require__(80184);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/jsx-runtime.js
var jsx_runtime = __webpack_require__(37712);
;// CONCATENATED MODULE: ./src/pages/MyProblem/TestCasePanel/index.tsx
var TextArea = input/* default */.Z.TextArea;
var initialState = {
visible: false,
tabIndex: '0'
};
var ExecuteDict = defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()({}, MyProblem_interface/* ExecuteStatus */.h.NOMATCH, '测试用例结果不匹配'), MyProblem_interface/* ExecuteStatus */.h.OK, '调试通过'), 2, '调试超时'), 3, '调试pod失败'), 4, '编译失败'), 5, '执行失败');
var Types = /*#__PURE__*/function (Types) {
Types[Types["SET_VISIBLE"] = 0] = "SET_VISIBLE";
Types[Types["SET_TABINDEX"] = 1] = "SET_TABINDEX";
return Types;
}(Types || {});
function Reducer(state, action) {
switch (action.type) {
case Types.SET_VISIBLE:
return objectSpread2_default()(objectSpread2_default()({}, state), {}, {
visible: action.payload
});
case Types.SET_TABINDEX:
return objectSpread2_default()(objectSpread2_default()({}, state), {}, {
tabIndex: action.payload
});
default:
throw new Error();
}
}
function DetailCommitOut(debugResult) {
var status = debugResult.status,
error_msg = debugResult.error_msg,
output = debugResult.output,
input = debugResult.input,
expected_output = debugResult.expected_output,
is_file = debugResult.is_file,
input_file_url = debugResult.input_file_url,
output_file_url = debugResult.output_file_url,
expected_output_file_url = debugResult.expected_output_file_url,
setMonacoValue = debugResult.setMonacoValue,
setData = debugResult.setData;
var outputRef = (0,_react_17_0_2_react.useRef)();
var inputRef = (0,_react_17_0_2_react.useRef)();
var expectedOutputRef = (0,_react_17_0_2_react.useRef)();
var rs = null;
var mdStyle = {
minHeight: 150,
marginBottom: 10,
paddingLeft: 24,
background: '#070f19',
color: '#fff'
};
(0,_react_17_0_2_react.useEffect)(function () {
if (output && !is_file && outputRef.current) {
var term = new xterm.Terminal({
fontSize: 14,
letterSpacing: 1,
cols: 83,
rows: 10
});
term.open(outputRef.current);
var actual_output_format = (0,util/* findEndWhitespace */.pp)(base64.Base64.decode(output));
term.write(actual_output_format);
term.setOption('theme', {
background: '#1e1e1e'
});
}
if (input && !is_file && inputRef.current) {
var term2 = new xterm.Terminal({
fontSize: 14,
letterSpacing: 1,
cols: 83,
rows: 10
});
term2.open(inputRef.current);
term2.write((0,util/* findEndWhitespace */.pp)(input));
term2.setOption('theme', {
background: '#1e1e1e'
});
}
if (expected_output && !is_file && expectedOutputRef.current) {
var term3 = new xterm.Terminal({
fontSize: 14,
letterSpacing: 1,
cols: 83,
rows: 10
});
term3.open(expectedOutputRef.current);
term3.write((0,util/* findEndWhitespace */.pp)(base64.Base64.decode(expected_output)));
term3.setOption('theme', {
background: '#1e1e1e'
});
}
}, [output]);
switch (status) {
case MyProblem_interface/* ExecuteStatus */.h.NOMATCH:
rs = /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("p", {
className: "c-red",
children: "\u5B9E\u9645\u8F93\u5165\uFF1A"
}), !is_file && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
ref: inputRef
}), is_file && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
style: mdStyle,
children: /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
// href={input_file_url}
style: {
fontSize: '16px'
},
onClick: /*#__PURE__*/asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
var res;
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
_context.next = 2;
return fetch(input_file_url, {
method: "Get",
headers: {
"Content-Type": "application/octet-stream",
"Accept": "*/*"
}
});
case 2:
res = _context.sent;
_context.t0 = setMonacoValue;
_context.next = 6;
return res.text();
case 6:
_context.t1 = _context.sent;
(0, _context.t0)(_context.t1);
setTimeout(function () {
setData(input_file_url);
}, 200);
// download(input_file_url, input)
case 9:
case "end":
return _context.stop();
}
}, _callee);
}))
// download={expected_output}
// target="_blank"
,
children: input
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
className: "c-red",
children: "\u5B9E\u9645\u8F93\u51FA\uFF1A"
}), !is_file && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
ref: outputRef
}), is_file && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
style: mdStyle,
children: /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
// href={output_file_url}
style: {
fontSize: '16px'
},
onClick: /*#__PURE__*/asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2() {
var res;
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
while (1) switch (_context2.prev = _context2.next) {
case 0:
_context2.next = 2;
return (0,utils_fetch/* default */.ZP)(output_file_url, {
method: "Get",
headers: {
"Content-Type": "application/xml",
"Accept": "*/*"
}
});
case 2:
res = _context2.sent;
setMonacoValue(res);
setTimeout(function () {
setData(output_file_url);
}, 200);
// download(output_file_url, output)
case 5:
case "end":
return _context2.stop();
}
}, _callee2);
}))
// download={expected_output} target="_blank"
,
children: output
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
className: "c-red",
children: "\u9884\u671F\u8F93\u51FA\uFF1A"
}), !is_file && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
ref: expectedOutputRef
}), is_file && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
style: mdStyle,
children: /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
// href={expected_output_file_url}
style: {
fontSize: '16px'
},
onClick: /*#__PURE__*/asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee3() {
var res;
return regeneratorRuntime_default()().wrap(function _callee3$(_context3) {
while (1) switch (_context3.prev = _context3.next) {
case 0:
_context3.next = 2;
return fetch(expected_output_file_url, {
method: "Get",
headers: {
"Content-Type": "application/octet-stream",
"Accept": "*/*"
}
});
case 2:
res = _context3.sent;
_context3.t0 = setMonacoValue;
_context3.next = 6;
return res.text();
case 6:
_context3.t1 = _context3.sent;
(0, _context3.t0)(_context3.t1);
setTimeout(function () {
setData(expected_output_file_url);
}, 200);
case 9:
case "end":
return _context3.stop();
}
}, _callee3);
}))
// download={expected_output} target="_blank"
,
children: expected_output
})
})]
});
break;
case MyProblem_interface/* ExecuteStatus */.h.EXECUTEFAILURE:
rs = /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
style: {
border: '1px #F6F7F9 solid'
},
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("p", {
style: {
width: '100%',
height: 40,
background: '#F6F7F9',
lineHeight: '40px',
color: "#666666",
paddingLeft: '12px'
},
children: "\u6700\u540E\u6267\u884C\u7684\u8F93\u5165\uFF1A"
}), !is_file && /*#__PURE__*/(0,jsx_runtime.jsx)(RenderHtml/* default */.Z, {
value: input,
style: mdStyle
}), is_file && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
style: mdStyle,
children: /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
// href={input_file_url} style={{fontSize:'16px'}} target="_blank"
onClick: function onClick() {
return (0,util/* download */.LR)(input_file_url, input);
},
children: input
})
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
style: {
border: '1px #F6F7F9 solid',
marginTop: '10px'
},
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("p", {
style: {
width: '100%',
height: 40,
background: '#F6F7F9',
lineHeight: '40px',
color: "#666666",
paddingLeft: '12px'
},
children: "\u6267\u884C\u51FA\u9519\u4FE1\u606F\uFF1A"
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("pre", {
className: "error",
style: {
color: '#E30000',
padding: '0 10px'
},
children: [base64.Base64.decode(error_msg), "111"]
})]
})]
});
break;
case MyProblem_interface/* ExecuteStatus */.h.COMPILEFAILURE:
rs = /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("p", {
children: "\u6700\u540E\u6267\u884C\u7684\u8F93\u5165\uFF1A"
}), !is_file && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
ref: inputRef
}), is_file && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
style: mdStyle,
children: /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
// href={input_file_url} style={{fontSize:'16px'}} target="_blank"
onClick: function onClick() {
return (0,util/* download */.LR)(input_file_url, input);
},
children: input
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
children: "\u6267\u884C\u51FA\u9519\u4FE1\u606F\uFF1A"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("pre", {
className: "error",
children: base64.Base64.decode(error_msg)
})]
});
break;
case MyProblem_interface/* ExecuteStatus */.h.PODFAILURE:
rs = /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
children: "\u521B\u5EFApod\u5931\u8D25\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5"
});
break;
case MyProblem_interface/* ExecuteStatus */.h.TIMEOUT:
rs = /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
children: "\u8BC4\u6D4B\u8D85\u65F6\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5"
});
break;
}
return /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
children: [" ", rs, " "]
});
}
function getCommitOut(debugResult) {
var status = debugResult.status,
error_msg = debugResult.error_msg,
execute_time = debugResult.execute_time,
output = debugResult.output,
input = debugResult.input,
expected_output = debugResult.expected_output,
is_file = debugResult.is_file,
input_file_url = debugResult.input_file_url,
output_file_url = debugResult.output_file_url,
expected_output_file_url = debugResult.expected_output_file_url;
var rs = null;
switch (status) {
case MyProblem_interface/* ExecuteStatus */.h.OK:
rs = /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
children: ["\u6267\u884C\u7528\u65F6\uFF1A", execute_time / 1000, "\u79D2"]
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
children: "\u6267\u884C\u7ED3\u679C\uFF1A"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("pre", {
children: base64.Base64.decode(output)
})]
});
break;
case MyProblem_interface/* ExecuteStatus */.h.NOMATCH:
rs = /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
children: ["\u8F93\u5165\uFF1A", /*#__PURE__*/(0,jsx_runtime.jsx)("pre", {
children: input
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
children: ["\u8F93\u51FA\uFF1A", output && base64.Base64.decode(output)]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
children: ["\u9884\u671F\u8F93\u51FA\uFF1A", expected_output && base64.Base64.decode(expected_output)]
})]
});
break;
case MyProblem_interface/* ExecuteStatus */.h.EXECUTEFAILURE:
rs = /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
children: ["\u6700\u540E\u6267\u884C\u7684\u8F93\u5165\uFF1A", /*#__PURE__*/(0,jsx_runtime.jsx)("pre", {
children: input
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
children: "\u6267\u884C\u51FA\u9519\u4FE1\u606F\uFF1A"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("pre", {
className: "error",
children: base64.Base64.decode(error_msg)
})]
});
break;
case MyProblem_interface/* ExecuteStatus */.h.COMPILEFAILURE:
rs = /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
children: ["\u6700\u540E\u6267\u884C\u7684\u8F93\u5165\uFF1A", /*#__PURE__*/(0,jsx_runtime.jsx)("pre", {
children: input
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
children: "\u6267\u884C\u51FA\u9519\u4FE1\u606F\uFF1A"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("pre", {
className: "error",
children: base64.Base64.decode(error_msg)
})]
});
break;
case MyProblem_interface/* ExecuteStatus */.h.PODFAILURE:
rs = /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
children: "\u521B\u5EFApod\u5931\u8D25\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5"
});
break;
case MyProblem_interface/* ExecuteStatus */.h.TIMEOUT:
rs = /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
children: "\u8BC4\u6D4B\u8D85\u65F6\uFF0C\u8BF7\u7A0D\u540E\u91CD\u8BD5"
});
break;
}
return /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
children: [" ", rs, " "]
});
}
/* harmony default export */ var TestCasePanel = (function (_ref4) {
var input = _ref4.input,
debuging = _ref4.debuging,
submitting = _ref4.submitting,
executingMessage = _ref4.executingMessage,
debugResult = _ref4.debugResult,
onChangeInput = _ref4.onChangeInput,
onDebugCode = _ref4.onDebugCode,
onSubmitCode = _ref4.onSubmitCode,
hack = _ref4.hack,
user = _ref4.user;
var _useReducer = (0,_react_17_0_2_react.useReducer)(Reducer, initialState),
_useReducer2 = slicedToArray_default()(_useReducer, 2),
state = _useReducer2[0],
dispatch = _useReducer2[1];
var visible = state.visible,
tabIndex = state.tabIndex;
var _useSearchParams = (0,_umi_production_exports.useSearchParams)(),
_useSearchParams2 = slicedToArray_default()(_useSearchParams, 1),
searchParams = _useSearchParams2[0];
function onTabIndexChange(e) {
var id = e.target.id;
dispatch({
type: Types.SET_TABINDEX,
payload: id
});
}
function onTriggerCollapse() {
dispatch({
type: Types.SET_VISIBLE,
payload: !visible
});
}
var executeResult = (0,_react_17_0_2_react.useMemo)(function () {
if (debugResult) {
var status = debugResult.status;
return /*#__PURE__*/(0,jsx_runtime.jsx)(jsx_runtime.Fragment, {
children: getCommitOut(debugResult)
});
}
return null;
}, [debugResult]);
function onDebug() {
dispatch({
type: Types.SET_VISIBLE,
payload: true
});
dispatch({
type: Types.SET_TABINDEX,
payload: '1'
});
onDebugCode();
}
var skip = /*#__PURE__*/function () {
var _ref5 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee4(text) {
var res;
return regeneratorRuntime_default()().wrap(function _callee4$(_context4) {
while (1) switch (_context4.prev = _context4.next) {
case 0:
_context4.next = 2;
return (0,utils_fetch/* default */.ZP)("/api/problems/".concat(text, "/start.json"), {
method: 'get',
params: {
hack_user_id: user === null || user === void 0 ? void 0 : user.user_id
}
});
case 2:
res = _context4.sent;
if (res) {
window.location.href = "/myproblems/".concat(res === null || res === void 0 ? void 0 : res.identifier, "?type=1");
}
case 4:
case "end":
return _context4.stop();
}
}, _callee4);
}));
return function skip(_x) {
return _ref5.apply(this, arguments);
};
}();
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: "test-case-panel",
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: "test-case-panel-body ".concat(visible ? 'active' : ''),
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("ul", {
className: "s-navs",
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("li", {
children: /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
className: tabIndex === '0' ? 'active' : '',
id: "0",
onClick: onTabIndexChange,
children: "\u81EA\u5B9A\u4E49\u6D4B\u8BD5\u7528\u4F8B"
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("li", {
children: /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
className: tabIndex === '1' ? 'active' : '',
id: "1",
onClick: onTabIndexChange,
children: "\u4EE3\u7801\u6267\u884C\u7ED3\u679C"
})
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "tab-panel-body ".concat(tabIndex === '0' ? '' : 'hide'),
children: /*#__PURE__*/(0,jsx_runtime.jsx)(TextArea, {
placeholder: "\u8BF7\u586B\u5199\u6D4B\u8BD5\u7528\u4F8B\u7684\u8F93\u5165\u503C\uFF0C\u70B9\u51FB\u201C\u8C03\u8BD5\u4EE3\u7801\u201D",
value: input,
onChange: onChangeInput
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "tab-panel-body ".concat(tabIndex === '1' ? '' : 'hide'),
children: debuging ? /*#__PURE__*/(0,jsx_runtime.jsx)(Spinner/* default */.Z, {
message: executingMessage
}) : debugResult ? /*#__PURE__*/(0,jsx_runtime.jsxs)("section", {
style: {
height: 200
},
children: [" ", executeResult, " "]
}) : /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
className: "tip",
children: "\u8BF7\u586B\u5199\u6D4B\u8BD5\u7528\u4F8B\u7684\u8F93\u5165\u503C\uFF0C\u70B9\u51FB\u201C\u8C03\u8BD5\u4EE3\u7801\u201D"
})
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
className: "btn-collapse ".concat(visible ? 'up' : ''),
onClick: onTriggerCollapse,
children: visible ? /*#__PURE__*/(0,jsx_runtime.jsx)(DownOutlined/* default */.Z, {}) : /*#__PURE__*/(0,jsx_runtime.jsx)(UpOutlined/* default */.Z, {})
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("footer", {
className: "footer",
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: "\u63A7\u5236\u53F0"
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: "flex-container",
children: [(hack === null || hack === void 0 ? void 0 : hack.is_program) && (hack === null || hack === void 0 ? void 0 : hack.above_question) && /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
onClick: function onClick() {
return skip(hack === null || hack === void 0 ? void 0 : hack.above_question);
},
id: "oj-prev",
className: "btn-blue",
type: "ghost",
children: "\u4E0A\u4E00\u9898"
}), (hack === null || hack === void 0 ? void 0 : hack.is_program) && (hack === null || hack === void 0 ? void 0 : hack.under_question) && /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
onClick: function onClick() {
return skip(hack === null || hack === void 0 ? void 0 : hack.under_question);
},
id: "oj-next",
className: "btn-blue",
type: "ghost",
children: "\u4E0B\u4E00\u9898"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
className: "btn-green",
type: "ghost",
loading: debuging,
onClick: onDebug,
children: "\u8C03\u8BD5\u4EE3\u7801"
}), searchParams.get("qtype") !== '8' && /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
type: "primary",
className: "custom-ant-disabled",
loading: submitting,
disabled: submitting,
onClick: function onClick() {
dispatch({
type: Types.SET_VISIBLE,
payload: false
});
// dispatch({
// type: Types.SET_TABINDEX,
// payload: '1'
// })
onSubmitCode();
},
children: "\u8BC4\u6D4B\u5E76\u63D0\u4EA4"
})]
})]
})]
});
});
/***/ }),
/***/ 12455:
/*!****************************************************!*\
!*** ./src/pages/MyProblem/index.tsx + 14 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 */ MyProblem; }
});
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectWithoutProperties.js
var objectWithoutProperties = __webpack_require__(39647);
var objectWithoutProperties_default = /*#__PURE__*/__webpack_require__.n(objectWithoutProperties);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/defineProperty.js
var defineProperty = __webpack_require__(85573);
var defineProperty_default = /*#__PURE__*/__webpack_require__.n(defineProperty);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/regeneratorRuntime.js
var regeneratorRuntime = __webpack_require__(7557);
var regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(regeneratorRuntime);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/asyncToGenerator.js
var asyncToGenerator = __webpack_require__(41498);
var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/slicedToArray.js
var slicedToArray = __webpack_require__(79800);
var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectSpread2.js
var objectSpread2 = __webpack_require__(82242);
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/_@ant-design_icons@5.6.1@@ant-design/icons/es/icons/FormOutlined.js + 1 modules
var FormOutlined = __webpack_require__(10906);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.6.1@@ant-design/icons/es/icons/PoweroffOutlined.js + 1 modules
var PoweroffOutlined = __webpack_require__(76618);
// EXTERNAL MODULE: ./src/.umi-production/exports.ts
var _umi_production_exports = __webpack_require__(80184);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/statistic/index.js + 5 modules
var statistic = __webpack_require__(31797);
// 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/spin/index.js + 1 modules
var spin = __webpack_require__(71418);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
var es_button = __webpack_require__(3113);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/select/index.js
var es_select = __webpack_require__(57809);
// EXTERNAL MODULE: ./src/pages/MyProblem/service.ts
var service = __webpack_require__(93454);
// EXTERNAL MODULE: ./src/service/exercise.ts
var exercise = __webpack_require__(26613);
// EXTERNAL MODULE: ./src/utils/fullscreen.ts
var fullscreen = __webpack_require__(17924);
// EXTERNAL MODULE: ./src/components/SplitContainer/index.tsx + 1 modules
var SplitContainer = __webpack_require__(34650);
// EXTERNAL MODULE: ./src/utils/env.ts + 1 modules
var env = __webpack_require__(67390);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.6.1@@ant-design/icons/es/icons/ExclamationCircleOutlined.js + 1 modules
var ExclamationCircleOutlined = __webpack_require__(87169);
// EXTERNAL MODULE: ./src/pages/Problems/OjForm/CodePanel/index.tsx + 1 modules
var CodePanel = __webpack_require__(71627);
// EXTERNAL MODULE: ./src/pages/tasks/code-repository/action-bar/notice.gif
var notice = __webpack_require__(60141);
// EXTERNAL MODULE: ./node_modules/_js-base64@2.6.4@js-base64/base64.js
var base64 = __webpack_require__(24334);
// EXTERNAL MODULE: ./src/pages/Problems/OjForm/index.less?modules
var OjFormmodules = __webpack_require__(42909);
;// CONCATENATED MODULE: ./src/pages/MyProblem/index.less
// extracted by mini-css-extract-plugin
// EXTERNAL MODULE: ./src/pages/MyProblem/TestCasePanel/index.tsx + 1 modules
var TestCasePanel = __webpack_require__(68641);
;// CONCATENATED MODULE: ./src/pages/MyProblem/LeftPanel/index.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var LeftPanelmodules = ({"flex_box_center":"flex_box_center___rM3g8","flex_space_between":"flex_space_between___Oc7SE","flex_box_vertical_center":"flex_box_vertical_center___MnmYE","flex_box_center_end":"flex_box_center_end___QQh83","flex_box_column":"flex_box_column___ZRFbL","left-panel":"left-panel___SKGyd","tab-panel-body":"tab-panel-body___gABdv","b1":"b1___QpbmK","oj-width-input":"oj-width-input___eJQWT","oj-mr":"oj-mr___AxILO","s-navs":"s-navs___FXwOi","bg-white":"bg-white___kbZ6r","active":"active___QGOnZ","list":"list___PXTsq","btns":"btns___F8yZK","drawer":"drawer___xdGaT"});
;// CONCATENATED MODULE: ./src/pages/MyProblem/LeftPanel/SubmitList/index.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var SubmitListmodules = ({"pagination":"pagination___yDAjZ","info":"info___ATmsa","wrap":"wrap____KX19"});
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/table/index.js + 85 modules
var table = __webpack_require__(1710);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/message/index.js + 4 modules
var message = __webpack_require__(8591);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/pagination/index.js + 10 modules
var pagination = __webpack_require__(58421);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.6.1@@ant-design/icons/es/icons/LoadingOutlined.js + 1 modules
var LoadingOutlined = __webpack_require__(58617);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.6.1@@ant-design/icons/es/icons/CopyOutlined.js + 1 modules
var CopyOutlined = __webpack_require__(81953);
// EXTERNAL MODULE: ./src/pages/MyProblem/interface.ts
var MyProblem_interface = __webpack_require__(41403);
// EXTERNAL MODULE: ./src/utils/util.tsx
var util = __webpack_require__(1079);
// EXTERNAL MODULE: ./src/components/PreviewAll/index.tsx + 3 modules
var PreviewAll = __webpack_require__(31427);
// EXTERNAL MODULE: ./src/utils/fetch.ts
var utils_fetch = __webpack_require__(35325);
// EXTERNAL MODULE: ./node_modules/_xterm@4.8.1@xterm/lib/xterm.js
var xterm = __webpack_require__(34376);
// EXTERNAL MODULE: ./node_modules/_dayjs@1.11.13@dayjs/dayjs.min.js
var dayjs_min = __webpack_require__(61186);
var dayjs_min_default = /*#__PURE__*/__webpack_require__.n(dayjs_min);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/jsx-runtime.js
var jsx_runtime = __webpack_require__(37712);
;// CONCATENATED MODULE: ./src/pages/MyProblem/LeftPanel/SubmitList/index.tsx
var Column = table/* default */.Z.Column;
/* harmony default export */ var SubmitList = (function (_ref) {
var submitResult = _ref.submitResult,
submitting = _ref.submitting,
submitRecords = _ref.submitRecords,
page = _ref.page,
onPageChange = _ref.onPageChange,
topicId = _ref.topicId;
var _ref2 = submitResult || {},
status = _ref2.status,
id = _ref2.id,
input = _ref2.input,
output = _ref2.output,
expected_output = _ref2.expected_output,
is_file = _ref2.is_file,
input_file_url = _ref2.input_file_url,
output_file_url = _ref2.output_file_url,
expected_output_file_url = _ref2.expected_output_file_url,
error_msg = _ref2.error_msg;
var outputRef = (0,_react_17_0_2_react.useRef)();
var inputRef = (0,_react_17_0_2_react.useRef)();
var openTerm = (0,_react_17_0_2_react.useRef)(false);
var errormsgRef = (0,_react_17_0_2_react.useRef)();
var expectedOutputRef = (0,_react_17_0_2_react.useRef)();
var term = (0,_react_17_0_2_react.useRef)(new xterm.Terminal({
fontSize: 14,
letterSpacing: 0,
cols: Math.floor(window.innerWidth * 0.4 / 9),
rows: 6
}));
var term2 = (0,_react_17_0_2_react.useRef)(new xterm.Terminal({
fontSize: 14,
letterSpacing: 0,
cols: Math.floor(window.innerWidth * 0.4 / 9),
rows: 6
}));
var term3 = (0,_react_17_0_2_react.useRef)(new xterm.Terminal({
fontSize: 14,
letterSpacing: 0,
cols: Math.floor(window.innerWidth * 0.4 / 9),
rows: 6
}));
var term4 = (0,_react_17_0_2_react.useRef)(new xterm.Terminal({
fontSize: 14,
letterSpacing: 0,
cols: Math.floor(window.innerWidth * 0.4 / 9),
rows: 6
}));
var ulRef = (0,_react_17_0_2_react.useRef)();
var _useSearchParams = (0,_umi_production_exports.useSearchParams)(),
_useSearchParams2 = slicedToArray_default()(_useSearchParams, 1),
searchParams = _useSearchParams2[0];
var _ref3 = submitRecords || {},
records = _ref3.records,
records_count = _ref3.records_count;
var _useState = (0,_react_17_0_2_react.useState)(""),
_useState2 = slicedToArray_default()(_useState, 2),
data = _useState2[0],
setData = _useState2[1];
var _useState3 = (0,_react_17_0_2_react.useState)(""),
_useState4 = slicedToArray_default()(_useState3, 2),
monacoValue = _useState4[0],
setMonacoValue = _useState4[1];
var location = (0,_umi_production_exports.useLocation)();
var isProgram = searchParams.get("type") === '1';
function onCopy() {
if (!is_file) {
(0,util/* copyToClipboard */.vQ)(base64.Base64.decode(output)).then(function () {
message/* default */.ZP.success('复制错误信息成功');
});
} else {
(0,util/* copyToClipboard */.vQ)(base64.Base64.decode(error_msg)).then(function () {
message/* default */.ZP.success('复制错误信息成功');
});
}
}
(0,_react_17_0_2_react.useEffect)(function () {
if (output && !is_file && status !== MyProblem_interface/* ExecuteStatus */.h.OK && id && outputRef.current) {
if (!openTerm.current) term.current.open(outputRef.current);
var actual_output_format = (0,util/* findEndWhitespace */.pp)(base64.Base64.decode(output)); //.replaceAll("\r\n","\x1b[41m\x1b[37m↵\x1b[0m\r\n").replaceAll("\n","\x1b[41m\x1b[37m↵\x1b[0m\r\n").replaceAll(" ",'\x1b[41m \x1b[0m')
term.current.reset();
term.current.write(actual_output_format);
// term.current.setOption('cols', Math.floor(ulRef.current.clientWidth / 14));
setTimeout(function () {
openTerm.current = true;
}, 100);
window.terms = term;
window.outputs = base64.Base64.decode(output);
term.current.setOption('theme', {
background: '#fafafa',
foreground: "#333"
});
}
if (input && !is_file && status !== MyProblem_interface/* ExecuteStatus */.h.OK && id && inputRef.current) {
if (!openTerm.current) term2.current.open(inputRef.current);
term2.current.reset();
term2.current.write((0,util/* findEndWhitespace */.pp)(input));
// term2.current.setOption('cols', Math.floor(ulRef.current.clientWidth / 14));
term2.current.setOption('theme', {
background: '#fafafa',
foreground: "#333"
});
}
if (expected_output && !is_file && status !== MyProblem_interface/* ExecuteStatus */.h.OK && id) {
if (!openTerm.current) term3.current.open(expectedOutputRef.current);
term3.current.reset();
term3.current.write((0,util/* findEndWhitespace */.pp)(base64.Base64.decode(expected_output)));
// term3.current.setOption('cols', Math.floor(ulRef.current.clientWidth / 14));
term3.current.setOption('theme', {
background: '#fafafa',
selection: "#fff",
foreground: "#333"
});
}
if (errormsgRef.current) {
if (!openTerm.current) term4.current.open(errormsgRef.current);
term4.current.write((0,util/* findEndWhitespace */.pp)(base64.Base64.decode(error_msg)));
term4.current.reset();
// term4.current.setOption('cols', Math.floor(ulRef.current.clientWidth / 14));
term4.current.setOption('theme', {
background: '#fafafa',
selection: "#fff",
foreground: "#333"
});
}
}, [output, error_msg, expected_output, input]);
return /*#__PURE__*/(0,jsx_runtime.jsxs)(spin/* default */.Z, {
spinning: submitting,
tip: "\u8BC4\u6D4B\u4E2D...",
indicator: /*#__PURE__*/(0,jsx_runtime.jsx)(LoadingOutlined/* default */.Z, {
style: {
fontSize: 24
},
spin: true
}),
children: [id ? /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: SubmitListmodules.wrap,
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("ul", {
ref: ulRef,
className: SubmitListmodules.info,
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("li", {
children: ["\u6267\u884C\u7ED3\u679C\uFF1A", /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: status === MyProblem_interface/* ExecuteStatus */.h.OK ? 'c-green' : 'c-red',
children: TestCasePanel/* ExecuteDict */.Im[status]
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)("li", {
className: SubmitListmodules.error,
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("a", {
onClick: onCopy,
children: ["\u590D\u5236\u9519\u8BEF\u4FE1\u606F ", /*#__PURE__*/(0,jsx_runtime.jsx)(CopyOutlined/* default */.Z, {}), ' ']
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("li", {
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(_umi_production_exports.Link, {
to: "/myproblems/".concat(topicId, "/record-detail/").concat(id),
children: ["\u663E\u793A\u8BE6\u60C5 >", ' ']
})
})]
}), status !== MyProblem_interface/* ExecuteStatus */.h.OK ? /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("p", {
className: "c-red",
children: "\u5B9E\u9645\u8F93\u5165\uFF1A"
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("pre", {
children: [!is_file && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
ref: inputRef
}), is_file && /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
// href={input_file_url}
style: {
fontSize: '16px'
},
onClick: /*#__PURE__*/asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
var res;
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
_context.next = 2;
return fetch(input_file_url, {
method: "Get",
headers: {
"Content-Type": "application/octet-stream",
"Accept": "*/*"
}
});
case 2:
res = _context.sent;
_context.t0 = setMonacoValue;
_context.next = 6;
return res.text();
case 6:
_context.t1 = _context.sent;
(0, _context.t0)(_context.t1);
setTimeout(function () {
setData(input_file_url);
}, 200);
// download(input_file_url, input)
case 9:
case "end":
return _context.stop();
}
}, _callee);
}))
// download={expected_output}
// target="_blank"
,
children: input
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
className: "c-red",
children: "\u5B9E\u9645\u8F93\u51FA\uFF1A"
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("pre", {
children: [(status === 4 || status === 5) && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
ref: errormsgRef
}), status != 4 && status != 5 && (is_file ? /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
// href={output_file_url}
style: {
fontSize: '16px'
},
onClick: /*#__PURE__*/asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2() {
var res;
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
while (1) switch (_context2.prev = _context2.next) {
case 0:
_context2.next = 2;
return (0,utils_fetch/* default */.ZP)(output_file_url, {
method: "Get",
headers: {
"Content-Type": "application/xml",
"Accept": "*/*"
}
});
case 2:
res = _context2.sent;
try {
setMonacoValue(res);
} catch (e) {
setMonacoValue("");
}
setTimeout(function () {
setData(output_file_url);
}, 200);
// download(output_file_url, output)
case 5:
case "end":
return _context2.stop();
}
}, _callee2);
}))
// download={expected_output} target="_blank"
,
children: output
}) : /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
ref: outputRef
}))]
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
className: "c-red",
children: "\u9884\u671F\u8F93\u51FA\uFF1A"
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("pre", {
children: [!is_file && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
ref: expectedOutputRef
}), is_file && /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
// href={expected_output_file_url}
style: {
fontSize: '16px'
},
onClick: /*#__PURE__*/asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee3() {
var res;
return regeneratorRuntime_default()().wrap(function _callee3$(_context3) {
while (1) switch (_context3.prev = _context3.next) {
case 0:
_context3.next = 2;
return fetch(expected_output_file_url, {
method: "Get",
headers: {
"Content-Type": "application/octet-stream",
"Accept": "*/*"
}
});
case 2:
res = _context3.sent;
_context3.t0 = setMonacoValue;
_context3.next = 6;
return res.text();
case 6:
_context3.t1 = _context3.sent;
(0, _context3.t0)(_context3.t1);
setTimeout(function () {
setData(expected_output_file_url);
}, 200);
case 9:
case "end":
return _context3.stop();
}
}, _callee3);
}))
// download={expected_output} target="_blank"
,
children: expected_output
})]
})]
}) : null]
}) : null, (records === null || records === void 0 ? void 0 : records.length) > 0 ? /*#__PURE__*/(0,jsx_runtime.jsxs)(table/* default */.Z, {
dataSource: records,
rowKey: "id",
pagination: false,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Column, {
title: "\u63D0\u4EA4\u65F6\u95F4",
dataIndex: "created_at",
render: function render(text, record) {
return /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
children: [" ", dayjs_min_default()(text).format('YYYY-MM-DD HH:mm:ss')]
});
}
}, "created_at"), /*#__PURE__*/(0,jsx_runtime.jsx)(Column, {
title: "\u63D0\u4EA4\u7ED3\u679C",
dataIndex: "status",
render: function render(text, record) {
var _ExecuteDict$text;
return /*#__PURE__*/(0,jsx_runtime.jsx)(_umi_production_exports.Link, {
className: text === 0 ? 'c-green' : 'c-red',
to: "/myproblems/".concat(topicId, "/record-detail/").concat(record.id),
children: (_ExecuteDict$text = TestCasePanel/* ExecuteDict */.Im[text]) === null || _ExecuteDict$text === void 0 ? void 0 : _ExecuteDict$text.replace('调试', '评测')
});
}
}, "status"), /*#__PURE__*/(0,jsx_runtime.jsx)(Column, {
title: "\u6267\u884C\u7528\u65F6 (".concat(isProgram ? 'MS' : 'S', ")"),
dataIndex: "execute_time",
render: function render(e) {
return e ? isProgram ? e : e / 1000 : '';
}
}, "execute_time"), /*#__PURE__*/(0,jsx_runtime.jsx)(Column, {
title: "\u5185\u5B58\u6D88\u8017\uFF08".concat(isProgram ? 'KB' : 'MB', "\uFF09"),
dataIndex: "execute_memory",
render: function render(e) {
return e ? isProgram ? e : parseFloat((e / 1024).toFixed(2)) : '';
}
}, "execute_memory"), /*#__PURE__*/(0,jsx_runtime.jsx)(Column, {
title: "\u8BED\u8A00",
dataIndex: "language"
}, "language"), /*#__PURE__*/(0,jsx_runtime.jsx)(Column, {
title: "\u64CD\u4F5C",
dataIndex: "status",
render: function render(text, record) {
return /*#__PURE__*/(0,jsx_runtime.jsx)(_umi_production_exports.Link, {
className: "c-light-primary",
to: "/myproblems/".concat(topicId, "/record-detail/").concat(record.id),
children: "\u67E5\u770B"
});
}
}, "status")]
}) : /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
style: {
height: 300,
width: '100%'
}
}), records_count > 15 ? /*#__PURE__*/(0,jsx_runtime.jsx)(pagination/* default */.Z, {
className: SubmitListmodules.pagination,
current: page,
pageSize: 15,
total: records_count,
onChange: onPageChange
}) : null, /*#__PURE__*/(0,jsx_runtime.jsx)(PreviewAll/* default */.Z, {
close: true,
data: data,
type: !!data.length ? "txt" : "",
onClose: function onClose() {
return setData("");
},
monacoEditor: {
value: monacoValue,
language: "txt",
onChange: function onChange() {},
options: {
fontSize: 14,
readOnly: true,
minimap: {
enabled: false
}
}
}
})]
});
});
// EXTERNAL MODULE: ./src/components/NoData/index.tsx
var NoData = __webpack_require__(46172);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/tag/index.js + 5 modules
var tag = __webpack_require__(12563);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/space/index.js + 3 modules
var space = __webpack_require__(81327);
;// CONCATENATED MODULE: ./src/pages/MyProblem/LeftPanel/Description/index.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var Descriptionmodules = ({"desc":"desc___iOAgd","info":"info___GPALq","commit-info":"commit-info___Hk6Za"});
// EXTERNAL MODULE: ./src/components/RenderHtml/index.tsx + 2 modules
var RenderHtml = __webpack_require__(26404);
;// CONCATENATED MODULE: ./src/pages/MyProblem/LeftPanel/Description/index.tsx
var DifficultDesc = {
1: {
name: '简单',
color: '#52c41a'
},
2: {
name: '中等',
color: '#faad14'
},
3: {
name: '困难',
color: '#f5222d'
}
};
/* harmony default export */ var Description = (function (_ref) {
var hack = _ref.hack,
onTriggerPraise = _ref.onTriggerPraise,
toDiscuss = _ref.toDiscuss;
var language = hack.language,
difficult = hack.difficult,
time_limit = hack.time_limit,
username = hack.username,
user_path = hack.user_path,
user_praise = hack.user_praise,
comments_count = hack.comments_count,
praises_count = hack.praises_count,
description = hack.description,
pass_count = hack.pass_count,
submit_count = hack.submit_count;
var location = (0,_umi_production_exports.useLocation)();
var _useSearchParams = (0,_umi_production_exports.useSearchParams)(),
_useSearchParams2 = slicedToArray_default()(_useSearchParams, 1),
searchParams = _useSearchParams2[0];
var diffItem = DifficultDesc[difficult];
console.log('----description', hack);
return /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("ul", {
className: Descriptionmodules.info,
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("li", {
children: ["\u7F16\u7A0B\u8BED\uFF1A", /*#__PURE__*/(0,jsx_runtime.jsx)("b", {
children: language
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("li", {
children: ["\u96BE\u5EA6\uFF1A", /*#__PURE__*/(0,jsx_runtime.jsx)(tag/* default */.Z, {
color: diffItem.color,
children: diffItem.name
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("li", {
children: ["\u5355\u4E2A\u6D4B\u8BD5\u96C6\u8BC4\u6D4B\u65F6\u957F\u9650\u5236\uFF1A", /*#__PURE__*/(0,jsx_runtime.jsxs)("b", {
children: [time_limit, "\u79D2"]
})]
})]
}), searchParams.get("qtype") === '8' ? /*#__PURE__*/(0,jsx_runtime.jsx)(RenderHtml/* default */.Z, {
value: description,
showProgramFill: true,
className: Descriptionmodules.desc
}) : /*#__PURE__*/(0,jsx_runtime.jsx)(RenderHtml/* default */.Z, {
value: description,
className: Descriptionmodules.desc
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("ul", {
className: Descriptionmodules['commit-info'],
children: [searchParams.get("type") === '1' || searchParams.get("type") === 'exercises' ? '' : /*#__PURE__*/(0,jsx_runtime.jsx)("li", {
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(space/* default */.Z, {
size: 4,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: "\u901A\u8FC7\u6B21\u6570"
}), " ", /*#__PURE__*/(0,jsx_runtime.jsx)("b", {
children: pass_count
})]
})
}), searchParams.get("type") === '1' || searchParams.get("type") === 'exercises' ? '' : /*#__PURE__*/(0,jsx_runtime.jsxs)("li", {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(space/* default */.Z, {
size: 4,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: "\u63D0\u4EA4\u6B21\u6570"
}), " ", /*#__PURE__*/(0,jsx_runtime.jsx)("b", {
children: submit_count
})]
}), " "]
}), /*#__PURE__*/(0,jsx_runtime.jsx)("li", {
style: {
flex: '1 0 0'
}
}), searchParams.get("type") !== 'exercises' && /*#__PURE__*/(0,jsx_runtime.jsxs)("li", {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(space/* default */.Z, {
size: 4,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "iconfont icon-huifu1",
onClick: toDiscuss
}), " ", /*#__PURE__*/(0,jsx_runtime.jsx)("b", {
children: comments_count
})]
}), " "]
})]
})]
});
});
// EXTERNAL MODULE: ./src/components/mediator.js
var mediator = __webpack_require__(1499);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/toConsumableArray.js
var toConsumableArray = __webpack_require__(37205);
var toConsumableArray_default = /*#__PURE__*/__webpack_require__.n(toConsumableArray);
// EXTERNAL MODULE: ./src/components/modal.tsx
var components_modal = __webpack_require__(33471);
;// CONCATENATED MODULE: ./src/pages/MyProblem/LeftPanel/Discuss/index.less
// extracted by mini-css-extract-plugin
;// CONCATENATED MODULE: ./src/pages/MyProblem/LeftPanel/Discuss/service.ts
function getComments(id, page) {
return (0,utils_fetch/* get */.U2)("/problems/".concat(id, "/comments.json"), {
page: page,
limit: 10
});
}
function plusDiscuss(id) {
return (0,utils_fetch/* post */.v_)("/discusses/".concat(id, "/plus.json"), {
container_type: "Discuss",
type: 1
});
}
function replyDiscuss(identifier, id, value) {
return (0,utils_fetch/* post */.v_)("/problems/".concat(identifier, "/comments/reply.json"), {
comments: {
content: value,
parent_id: id
}
});
}
function createDiscuss(identifier, value) {
return (0,utils_fetch/* post */.v_)("/problems/".concat(identifier, "/comments.json"), {
comments: {
content: value
}
});
}
function hiddenDiscuss(identifier, id, params) {
return (0,utils_fetch/* post */.v_)("/problems/".concat(identifier, "/comments/").concat(id, "/hidden.json"), params);
}
function deleteDiscuss(identifier, id) {
return (0,utils_fetch/* del */.IV)("/problems/".concat(identifier, "/comments/").concat(id));
}
;// CONCATENATED MODULE: ./src/pages/MyProblem/LeftPanel/Discuss/discuss-item/index.less
// extracted by mini-css-extract-plugin
// EXTERNAL MODULE: ./src/pages/tasks/left-panel/discuss/discuss-editor/index.tsx + 1 modules
var discuss_editor = __webpack_require__(93092);
;// CONCATENATED MODULE: ./src/pages/MyProblem/LeftPanel/Discuss/discuss-item/index.tsx
function UserPhoto(_ref) {
var author = _ref.author;
return /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
href: "/users/".concat(author.login),
target: "_blank",
children: /*#__PURE__*/(0,jsx_runtime.jsx)("img", {
alt: "\u7528\u6237\u5934\u50CF",
height: "50",
style: {
borderRadius: '50%'
},
src: "".concat(env/* default */.Z.IMG_SERVER, "/images/").concat(author.image_url),
width: "50"
})
});
}
function SecondLevelDiscuss(_ref2) {
var data = _ref2.data,
index = _ref2.index,
parentDiscussIndex = _ref2.parentDiscussIndex,
user = _ref2.user,
onSetActionType = _ref2.onSetActionType;
var author = data.author,
can_delete = data.can_delete,
content = data.content,
id = data.id,
time = data.time;
function onDeleteDiscuss() {
onSetActionType({
id: id,
index: index,
type: 'delete-discuss',
parentDiscussIndex: parentDiscussIndex,
message: '确定要删除该条回复吗'
});
}
var canDelete = user.admin || can_delete || author.user_id === user.user_id;
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: "discuss-item-container second-discuss ",
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(UserPhoto, {
author: author
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("section", {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: "discuss-info",
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("a", {
href: "/users/".concat(author.login),
target: "_blank",
children: author.name
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "grey",
children: time
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "btn-group",
style: {
marginBottom: 0
},
children: canDelete ? /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
onClick: onDeleteDiscuss,
title: "\u5220\u9664",
children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "iconfont icon-shanchu"
})
}) : null
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)(RenderHtml/* default */.Z, {
className: "discuss-content",
value: content
})]
})]
});
}
/* harmony default export */ var discuss_item = (function (_ref3) {
var user = _ref3.user,
data = _ref3.data,
index = _ref3.index,
onPlusDiscuss = _ref3.onPlusDiscuss,
onSetActionType = _ref3.onSetActionType,
activeDiscussIndex = _ref3.activeDiscussIndex,
onReplyDiscuss = _ref3.onReplyDiscuss,
onSetActiveDiscussIndex = _ref3.onSetActiveDiscussIndex;
var content = data.content,
children = data.children,
hidden = data.hidden,
id = data.id,
praise_count = data.praise_count,
time = data.time,
user_praise = data.user_praise,
can_delete = data.can_delete,
author = data.author;
function onActiveDiscussIndex() {
onSetActiveDiscussIndex(id);
}
function onPlus() {
onPlusDiscuss(id, !user_praise, index);
}
function onDeleteDiscuss() {
onSetActionType({
id: id,
index: index,
type: 'delete-discuss',
message: '确定要删除该条回复吗'
});
}
function onHiddenDiscuss() {
onSetActionType({
id: id,
index: index,
params: {
hidden: !hidden ? '1' : '0'
},
type: 'hidden-discuss',
message: !hidden ? '确定要隐藏该条回复吗' : '确定要取消隐藏该条回复吗'
});
}
var adminOrOperator = user.admin || user.user_id === author.user_id;
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: "discuss-item-container",
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(UserPhoto, {
author: author
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("section", {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: "discuss-info",
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("a", {
href: "/users/".concat(author.login),
target: "_blank",
children: [" ", author.name, " "]
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "grey",
children: time
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)(RenderHtml/* default */.Z, {
className: "discuss-content",
value: content
}), children && children.length > 0 ? /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "reply-discuss-container",
children: children.map(function (item, i) {
return /*#__PURE__*/(0,jsx_runtime.jsx)(SecondLevelDiscuss, {
data: item,
index: i,
user: user,
onSetActionType: onSetActionType,
parentDiscussIndex: index
}, item.id);
})
}) : null, /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: "btn-group",
children: [adminOrOperator ? /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
onClick: onHiddenDiscuss,
title: hidden ? '取消隐藏' : '隐藏评论',
children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: hidden ? 'iconfont icon-yincangbiyan' : 'fa fa-eye'
})
}) : null, can_delete && (!children || children.length == 0) ? /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
onClick: onDeleteDiscuss,
title: "\u5220\u9664",
children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "iconfont icon-shanchu"
})
}) : null, /*#__PURE__*/(0,jsx_runtime.jsxs)("a", {
onClick: onActiveDiscussIndex,
title: "\u56DE\u590D",
children: [" ", /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "iconfont icon-huifu1"
}), " "]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("a", {
onClick: onPlus,
className: user_praise ? 'c-orange' : '',
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: user_praise ? 'iconfont icon-dianzan mr3' : 'iconfont icon-dianzan-xian mr3 '
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: praise_count ? praise_count : ''
})]
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)(discuss_editor/* default */.Z, {
id: id,
activeDiscussIndex: activeDiscussIndex,
onReplyDiscuss: onReplyDiscuss
})]
})]
}, id);
});
// EXTERNAL MODULE: ./src/components/image-preview/index.tsx + 1 modules
var image_preview = __webpack_require__(16854);
;// CONCATENATED MODULE: ./src/pages/MyProblem/LeftPanel/Discuss/discuss-input-editor/index.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var discuss_input_editormodules = ({"dis-input-editor-container":"dis-input-editor-container___nKGxx","active":"active___tmt7T","input-mask":"input-mask___epEle","text-area":"text-area___Vry8W","tip-container":"tip-container___plpA3","hide":"hide___kPfyC","md-container":"md-container___u85aq","btn-send":"btn-send___deQ5v"});
// EXTERNAL MODULE: ./src/components/markdown-editor/index.tsx + 10 modules
var markdown_editor = __webpack_require__(49731);
;// CONCATENATED MODULE: ./src/pages/MyProblem/LeftPanel/Discuss/discuss-input-editor/index.tsx
/* harmony default export */ var discuss_input_editor = (function (_ref) {
var user_praise = _ref.user_praise,
praise_count = _ref.praise_count,
praisePlus = _ref.praisePlus,
onCreateDiscuss = _ref.onCreateDiscuss,
discuss_count = _ref.discuss_count;
var _useState = (0,_react_17_0_2_react.useState)(false),
_useState2 = slicedToArray_default()(_useState, 2),
showMd = _useState2[0],
setShowMd = _useState2[1];
var _useState3 = (0,_react_17_0_2_react.useState)(''),
_useState4 = slicedToArray_default()(_useState3, 2),
value = _useState4[0],
setValue = _useState4[1];
function onChangeHandler(v) {
setValue(v);
}
function onShowMd() {
setShowMd(true);
}
function onCancel() {
setShowMd(false);
}
function onCommit() {
return _onCommit.apply(this, arguments);
}
function _onCommit() {
_onCommit = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
onCreateDiscuss(value);
setValue('');
setShowMd(false);
case 3:
case "end":
return _context.stop();
}
}, _callee);
}));
return _onCommit.apply(this, arguments);
}
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: "".concat(discuss_input_editormodules['dis-input-editor-container'], " ").concat(showMd ? discuss_input_editormodules.active : '', " "),
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: showMd ? "hide ".concat(discuss_input_editormodules['text-area']) : discuss_input_editormodules['text-area'],
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("input", {
placeholder: "\u8BF4\u70B9\u4EC0\u4E48",
onClick: onShowMd
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("a", {
children: [" ", /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "iconfont icon-huifu1"
}), " \xA0 \xA0", discuss_count, " "]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("a", {
className: "c-light-black",
onClick: praisePlus,
title: user_praise ? '取消点赞' : '点赞',
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "mr3 ".concat(user_praise ? 'iconfont icon-dianzan c-orange' : 'iconfont icon-dianzan-xian', " ")
}), praise_count ? /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: praise_count
}) : '']
})]
}), showMd ? /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: discuss_input_editormodules['input-mask'],
onClick: onCancel
}) : null, /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: showMd ? discuss_input_editormodules['md-container'] : "".concat(discuss_input_editormodules['md-container'], " hide"),
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(markdown_editor/* default */.Z, {
id: "discuss-input-editor",
miniToolbar: true,
watch: false,
noStorage: true,
defaultValue: value,
height: 240,
onChange: onChangeHandler
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: discuss_input_editormodules['tip-container'],
onClick: onCancel,
children: /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
className: discuss_input_editormodules['btn-send'],
onClick: onCommit,
children: " \u53D1\u9001 "
})
})]
})]
});
});
;// CONCATENATED MODULE: ./src/pages/MyProblem/LeftPanel/Discuss/index.tsx
var initialState = {
loading: false,
page: 1,
data: [],
count: 0,
actionType: null,
activeDiscussIndex: null
};
var Types = /*#__PURE__*/function (Types) {
Types[Types["GET_DISCUSSES"] = 0] = "GET_DISCUSSES";
Types[Types["TOP_OR_DOWN_DISCUSS"] = 1] = "TOP_OR_DOWN_DISCUSS";
Types[Types["ACTIVE_DISCUSS_INDEX"] = 2] = "ACTIVE_DISCUSS_INDEX";
Types[Types["PLUS_DISCUSS"] = 3] = "PLUS_DISCUSS";
Types[Types["SET_ACTION_TYPE"] = 4] = "SET_ACTION_TYPE";
Types[Types["SET_PAGE"] = 5] = "SET_PAGE";
Types[Types["SHOW_DISCUSSES_LOADING"] = 6] = "SHOW_DISCUSSES_LOADING";
return Types;
}(Types || {});
function reducer(state, action) {
switch (action.type) {
case Types.SHOW_DISCUSSES_LOADING:
return objectSpread2_default()(objectSpread2_default()({}, state), {}, {
loading: true
});
case Types.GET_DISCUSSES:
return objectSpread2_default()(objectSpread2_default()({}, state), action.payload);
case Types.TOP_OR_DOWN_DISCUSS:
return objectSpread2_default()(objectSpread2_default()({}, state), action.payload);
case Types.SET_ACTION_TYPE:
return objectSpread2_default()(objectSpread2_default()({}, state), action.payload);
case Types.PLUS_DISCUSS:
return objectSpread2_default()(objectSpread2_default()({}, state), action.payload);
case Types.SET_PAGE:
return objectSpread2_default()(objectSpread2_default()({}, state), {}, {
page: action.payload
});
case Types.ACTIVE_DISCUSS_INDEX:
return objectSpread2_default()(objectSpread2_default()({}, state), action.payload);
default:
throw new Error();
}
}
/* harmony default export */ var Discuss = (function (_ref) {
var user = _ref.user,
identifier = _ref.identifier,
hack = _ref.hack,
onTriggerPraise = _ref.onTriggerPraise;
var _useReducer = (0,_react_17_0_2_react.useReducer)(reducer, initialState),
_useReducer2 = slicedToArray_default()(_useReducer, 2),
state = _useReducer2[0],
dispatch = _useReducer2[1];
var loading = state.loading,
page = state.page,
data = state.data,
count = state.count,
actionType = state.actionType,
activeDiscussIndex = state.activeDiscussIndex;
var initData = (0,_react_17_0_2_react.useCallback)( /*#__PURE__*/asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
var response, comments, disscuss_count;
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
dispatch({
type: Types.SHOW_DISCUSSES_LOADING
});
_context.next = 3;
return getComments(identifier, page);
case 3:
response = _context.sent;
comments = response.comments, disscuss_count = response.disscuss_count;
dispatch({
type: Types.GET_DISCUSSES,
payload: {
data: comments,
count: disscuss_count,
loading: false
}
});
case 6:
case "end":
return _context.stop();
}
}, _callee);
})), [page, identifier]);
(0,_react_17_0_2_react.useEffect)(function () {
initData();
}, [identifier, page]);
function onPaginationChange(value) {
dispatch({
type: Types.SET_PAGE,
payload: value
});
}
function onSetActionType(value) {
dispatch({
type: Types.SET_ACTION_TYPE,
payload: {
actionType: value
}
});
}
function onSetActiveDiscussIndex(value) {
if (activeDiscussIndex === value) {
dispatch({
type: Types.ACTIVE_DISCUSS_INDEX,
payload: {
activeDiscussIndex: null
}
});
} else {
dispatch({
type: Types.ACTIVE_DISCUSS_INDEX,
payload: {
activeDiscussIndex: value
}
});
}
}
function onPlusDiscuss(_x, _x2, _x3) {
return _onPlusDiscuss.apply(this, arguments);
}
function _onPlusDiscuss() {
_onPlusDiscuss = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2(id, user_praise, index) {
var response;
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
while (1) switch (_context2.prev = _context2.next) {
case 0:
_context2.prev = 0;
_context2.next = 3;
return plusDiscuss(id);
case 3:
response = _context2.sent;
data[index].user_praise = user_praise;
data[index].praise_count = response.praise_count;
dispatch({
type: Types.PLUS_DISCUSS,
payload: {
data: toConsumableArray_default()(data)
}
});
_context2.next = 12;
break;
case 9:
_context2.prev = 9;
_context2.t0 = _context2["catch"](0);
console.log(_context2.t0);
case 12:
case "end":
return _context2.stop();
}
}, _callee2, null, [[0, 9]]);
}));
return _onPlusDiscuss.apply(this, arguments);
}
function onProcessAction() {
return _onProcessAction.apply(this, arguments);
}
function _onProcessAction() {
_onProcessAction = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee3() {
var id, params, type, index, parentDiscussIndex, secondDicusses, i, _i;
return regeneratorRuntime_default()().wrap(function _callee3$(_context3) {
while (1) switch (_context3.prev = _context3.next) {
case 0:
id = actionType.id, params = actionType.params, type = actionType.type, index = actionType.index, parentDiscussIndex = actionType.parentDiscussIndex;
if (!(type === 'hidden-discuss')) {
_context3.next = 6;
break;
}
_context3.next = 4;
return hiddenDiscuss(identifier, id, params);
case 4:
if (!parentDiscussIndex) {
data[index].hidden = params.hidden == 1 ? true : false;
} else {
data[parentDiscussIndex].children[index].hidden = params.hidden == 1 ? true : false;
}
dispatch({
type: Types.SET_ACTION_TYPE,
payload: {
actionType: null,
data: toConsumableArray_default()(data)
}
});
case 6:
if (!(type === 'delete-discuss')) {
_context3.next = 31;
break;
}
_context3.next = 9;
return deleteDiscuss(identifier, id);
case 9:
if (!(parentDiscussIndex || parentDiscussIndex === 0)) {
_context3.next = 22;
break;
}
secondDicusses = data[parentDiscussIndex].children;
i = secondDicusses.length - 1;
case 12:
if (!(i >= 0)) {
_context3.next = 19;
break;
}
if (!(secondDicusses[i].id === id)) {
_context3.next = 16;
break;
}
secondDicusses.splice(i, 1);
return _context3.abrupt("break", 19);
case 16:
i--;
_context3.next = 12;
break;
case 19:
data[parentDiscussIndex].children = secondDicusses;
_context3.next = 30;
break;
case 22:
_i = data.length - 1;
case 23:
if (!(_i >= 0)) {
_context3.next = 30;
break;
}
if (!(data[_i].id === id)) {
_context3.next = 27;
break;
}
data.splice(_i, 1);
return _context3.abrupt("break", 30);
case 27:
_i--;
_context3.next = 23;
break;
case 30:
dispatch({
type: Types.SET_ACTION_TYPE,
payload: {
actionType: null,
data: toConsumableArray_default()(data)
}
});
case 31:
case "end":
return _context3.stop();
}
}, _callee3);
}));
return _onProcessAction.apply(this, arguments);
}
function onCancelAction() {
dispatch({
type: Types.SET_ACTION_TYPE,
payload: {
actionType: null
}
});
}
function onReplyDiscuss(_x4, _x5) {
return _onReplyDiscuss.apply(this, arguments);
}
function _onReplyDiscuss() {
_onReplyDiscuss = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee4(id, value) {
return regeneratorRuntime_default()().wrap(function _callee4$(_context4) {
while (1) switch (_context4.prev = _context4.next) {
case 0:
_context4.prev = 0;
_context4.next = 3;
return replyDiscuss(identifier, id, value);
case 3:
initData();
_context4.next = 9;
break;
case 6:
_context4.prev = 6;
_context4.t0 = _context4["catch"](0);
console.log(_context4.t0);
case 9:
case "end":
return _context4.stop();
}
}, _callee4, null, [[0, 6]]);
}));
return _onReplyDiscuss.apply(this, arguments);
}
function onCreateDiscuss(_x6) {
return _onCreateDiscuss.apply(this, arguments);
}
function _onCreateDiscuss() {
_onCreateDiscuss = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee5(value) {
return regeneratorRuntime_default()().wrap(function _callee5$(_context5) {
while (1) switch (_context5.prev = _context5.next) {
case 0:
dispatch({
type: Types.SHOW_DISCUSSES_LOADING
});
_context5.next = 3;
return createDiscuss(identifier, value);
case 3:
initData();
case 4:
case "end":
return _context5.stop();
}
}, _callee5);
}));
return _onCreateDiscuss.apply(this, arguments);
}
return /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: "discuss-panel",
children: [data.length === 0 ? /*#__PURE__*/(0,jsx_runtime.jsx)(NoData/* default */.Z, {}) : data.map(function (item, index) {
return /*#__PURE__*/(0,jsx_runtime.jsx)(discuss_item, {
onReplyDiscuss: onReplyDiscuss,
onPlusDiscuss: onPlusDiscuss,
onSetActiveDiscussIndex: onSetActiveDiscussIndex,
onSetActionType: onSetActionType,
data: item,
index: index,
user: user,
activeDiscussIndex: activeDiscussIndex
});
}), count > 10 ? /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "pagination-container",
children: /*#__PURE__*/(0,jsx_runtime.jsx)(pagination/* default */.Z, {
showQuickJumper: true,
onChange: onPaginationChange,
current: page,
total: count
})
}) : null]
}), /*#__PURE__*/(0,jsx_runtime.jsx)(discuss_input_editor, {
user_praise: hack.user_praise,
praise_count: hack.praises_count,
praisePlus: onTriggerPraise,
discuss_count: hack.comments_count,
onCreateDiscuss: onCreateDiscuss
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(components_modal/* default */.Z, {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(modal/* default */.Z, {
centered: true,
title: "\u63D0\u793A",
open: !!actionType,
onOk: onProcessAction,
onCancel: onCancelAction,
children: /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
children: actionType ? actionType.message : ''
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)(image_preview/* default */.Z, {})]
})]
});
});
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/drawer/index.js + 9 modules
var drawer = __webpack_require__(43428);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/input/index.js + 5 modules
var input = __webpack_require__(10249);
;// CONCATENATED MODULE: ./src/pages/MyProblem/LeftPanel/index.tsx
var difficultyMapping = {
1: "简单",
2: "适中",
3: "困难"
};
var difficultyMappingcolor = {
1: "#2fa34f",
2: "#0152d9",
3: "#fa6400"
};
/* harmony default export */ var LeftPanel = (function (_ref) {
var _datas$data;
var hack = _ref.hack,
onTriggerPraise = _ref.onTriggerPraise,
topicId = _ref.topicId,
page = _ref.page,
onPageChange = _ref.onPageChange,
user = _ref.user,
submitRecords = _ref.submitRecords,
submitting = _ref.submitting,
submitResult = _ref.submitResult;
var _useSearchParams = (0,_umi_production_exports.useSearchParams)(),
_useSearchParams2 = slicedToArray_default()(_useSearchParams, 1),
searchParams = _useSearchParams2[0];
var _useState = (0,_react_17_0_2_react.useState)('0'),
_useState2 = slicedToArray_default()(_useState, 2),
index = _useState2[0],
setIndex = _useState2[1];
var location = (0,_umi_production_exports.useLocation)();
var _useState3 = (0,_react_17_0_2_react.useState)(false),
_useState4 = slicedToArray_default()(_useState3, 2),
isopen = _useState4[0],
setisopen = _useState4[1];
var _useState5 = (0,_react_17_0_2_react.useState)([]),
_useState6 = slicedToArray_default()(_useState5, 2),
datas = _useState6[0],
setdatas = _useState6[1];
var _useState7 = (0,_react_17_0_2_react.useState)(objectSpread2_default()(objectSpread2_default()({}, (0,_umi_production_exports.useParams)()), {}, {
page: 1,
per_page: 20,
name: ''
})),
_useState8 = slicedToArray_default()(_useState7, 2),
params = _useState8[0],
setparams = _useState8[1];
// const params=useParams();
function onTabIndexChange(e) {
var id = e.target.id;
setIndex(id);
}
(0,_react_17_0_2_react.useEffect)(function () {
var unSub = mediator/* default */.Z.subscribe('to-commit-info', function () {
setIndex('1');
});
return unSub;
}, []);
function toDiscuss() {
setIndex('2');
}
function getdatas() {
return _getdatas.apply(this, arguments);
}
function _getdatas() {
_getdatas = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2() {
var res;
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
while (1) switch (_context2.prev = _context2.next) {
case 0:
_context2.next = 2;
return (0,utils_fetch/* default */.ZP)("/api/problems/my_hack_list.json", {
method: 'get',
params: objectSpread2_default()({
identifier: params === null || params === void 0 ? void 0 : params.id
}, params)
});
case 2:
res = _context2.sent;
setdatas(res);
case 4:
case "end":
return _context2.stop();
}
}, _callee2);
}));
return _getdatas.apply(this, arguments);
}
console.log(submitRecords, 'submitRecords');
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: LeftPanelmodules["left-panel"],
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("ul", {
className: "".concat(LeftPanelmodules["s-navs"], " ").concat(LeftPanelmodules["bg-white"], " ").concat(LeftPanelmodules.b1),
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("li", {
children: /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
className: index === '0' ? LeftPanelmodules.active : '',
id: "0",
onClick: onTabIndexChange,
children: "\u4EFB\u52A1\u63CF\u8FF0"
})
}), searchParams.get("qtype") !== '8' && /*#__PURE__*/(0,jsx_runtime.jsx)("li", {
children: /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
className: index === '1' ? LeftPanelmodules.active : '',
id: "1",
onClick: onTabIndexChange,
children: "\u63D0\u4EA4\u8BB0\u5F55"
})
}), searchParams.get("type") !== 'exercises' && /*#__PURE__*/(0,jsx_runtime.jsx)("li", {
children: /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
className: index === '2' ? LeftPanelmodules.active : '',
id: "2",
onClick: onTabIndexChange,
children: "\u8BC4\u8BBA"
})
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "".concat(LeftPanelmodules["tab-panel-body"], " ").concat(index === '0' ? '' : 'hide'),
children: /*#__PURE__*/(0,jsx_runtime.jsx)(Description, {
hack: hack,
onTriggerPraise: onTriggerPraise,
toDiscuss: toDiscuss
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
style: {
padding: '0 12px'
},
className: "".concat(LeftPanelmodules["tab-panel-body"], " ").concat(index === '1' ? '' : 'hide'),
children: !!(submitRecords !== null && submitRecords !== void 0 && submitRecords.records_count) || submitting ? /*#__PURE__*/(0,jsx_runtime.jsx)(SubmitList, {
page: page,
onPageChange: onPageChange,
topicId: topicId,
submitting: submitting,
submitRecords: submitRecords,
submitResult: submitResult
}) : /*#__PURE__*/(0,jsx_runtime.jsx)(NoData/* default */.Z, {})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "".concat(LeftPanelmodules["tab-panel-body"], " ").concat(index === '2' ? '' : 'hide'),
style: {
padding: 0
},
children: /*#__PURE__*/(0,jsx_runtime.jsx)(Discuss, {
user: user,
identifier: hack.identifier,
hack: hack,
onTriggerPraise: onTriggerPraise
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)(drawer/* default */.Z, {
rootClassName: LeftPanelmodules.drawer,
headerStyle: {
background: '#000',
border: 0
},
closable: false,
title: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
style: {
display: 'flex',
alignItems: 'center'
},
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
style: {
color: '#fff'
},
children: "\u9898\u76EE\u5217\u8868"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z.Search, {
onSearch: function onSearch(e) {
params.name = e;
params.page = 1;
setparams(objectSpread2_default()({}, params));
getdatas();
},
style: {
width: 180,
margin: '0px 20px',
marginLeft: 'auto'
},
placeholder: "\u8BF7\u8F93\u5165\u9898\u76EE\u540D\u79F0\u641C\u7D22"
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(es_select["default"], {
style: {
width: 100
},
placeholder: "\u8BF7\u9009\u62E9\u96BE\u5EA6",
onChange: function onChange(e) {
params.page = 1;
params.difficult = e ? e : null;
setparams(objectSpread2_default()({}, params));
getdatas();
},
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_select["default"].Option, {
value: 0,
children: "\u5168\u90E8"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_select["default"].Option, {
value: 1,
children: "\u7B80\u5355"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_select["default"].Option, {
value: 2,
children: "\u9002\u4E2D"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_select["default"].Option, {
value: 3,
children: "\u56F0\u96BE"
})]
})]
}),
bodyStyle: {
background: '#0f1e31',
padding: '20px 0px'
},
footerStyle: {
background: '#0f1e31',
border: 0,
textAlign: 'center'
},
footer: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: /*#__PURE__*/(0,jsx_runtime.jsx)(pagination/* default */.Z, {
current: params.page,
className: "mt10 mb10",
hideOnSinglePage: true,
total: datas === null || datas === void 0 ? void 0 : datas.count,
pageSize: params.per_page,
onChange: function onChange(page, perpage) {
params.page = page;
params.per_page = perpage;
getdatas();
}
})
}),
width: 530,
placement: "left",
onClose: function onClose() {
return setisopen(false);
},
open: isopen,
children: datas === null || datas === void 0 || (_datas$data = datas.data) === null || _datas$data === void 0 ? void 0 : _datas$data.map(function (item, index) {
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
onClick: /*#__PURE__*/asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
var res;
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
_context.next = 2;
return (0,utils_fetch/* default */.ZP)("/api/problems/".concat(item === null || item === void 0 ? void 0 : item.identifier, "/start.json"), {
method: 'get',
params: {
hack_user_id: user === null || user === void 0 ? void 0 : user.user_id
}
});
case 2:
res = _context.sent;
if (res) {
_umi_production_exports.history.replace("/myproblems/".concat(res === null || res === void 0 ? void 0 : res.identifier, "?type=1"));
window.location.reload();
// localStorage.setItem('program_homework',[params.coursesId,params.categoryId])
}
case 4:
case "end":
return _context.stop();
}
}, _callee);
})),
className: "".concat(LeftPanelmodules.list, " ").concat(item !== null && item !== void 0 && item.checked ? LeftPanelmodules.active : ''),
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: [(item === null || item === void 0 ? void 0 : item.opened) && (item === null || item === void 0 ? void 0 : item.passed) && /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "iconfont icon-wancheng1 c-green-29b"
}), (item === null || item === void 0 ? void 0 : item.opened) && !(item !== null && item !== void 0 && item.passed) && /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "iconfont icon-cuowu c-red"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
style: {
color: 'rgb(186, 196, 205)',
fontWeight: 400,
fontSize: 14,
marginLeft: 10
},
children: item.name
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
style: {
color: difficultyMappingcolor[item.difficult]
},
children: difficultyMapping[item.difficult]
})]
});
})
}), (hack === null || hack === void 0 ? void 0 : hack.is_program) && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
onClick: function onClick() {
getdatas();
setisopen(true);
},
className: LeftPanelmodules.btns,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "iconfont icon-timuliebiao"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: "\u9898\u76EE\u5217\u8868"
})]
})]
});
});
// EXTERNAL MODULE: ./src/assets/images/question/internal.png
var internal = __webpack_require__(62522);
// EXTERNAL MODULE: ./src/components/Exercise/ip.tsx
var Exercise_ip = __webpack_require__(41889);
// EXTERNAL MODULE: ./src/components/Timepiece/index.tsx
var Timepiece = __webpack_require__(20098);
// EXTERNAL MODULE: ./src/pages/Classrooms/Lists/Exercise/components/Unlock.tsx
var Unlock = __webpack_require__(39910);
// EXTERNAL MODULE: ./src/utils/hooks/useRemindModal.tsx
var useRemindModal = __webpack_require__(697);
// EXTERNAL MODULE: ./src/components/Exercise/recordScreen.tsx + 3 modules
var recordScreen = __webpack_require__(94319);
// EXTERNAL MODULE: ./src/components/Hooks/index.tsx
var Hooks = __webpack_require__(58151);
// EXTERNAL MODULE: ./src/assets/images/question/time.svg
var time = __webpack_require__(72139);
// EXTERNAL MODULE: ./src/assets/images/question/title.svg
var title = __webpack_require__(38743);
;// CONCATENATED MODULE: ./src/pages/MyProblem/index.tsx
var _excluded = ["input", "showNote", "onShowNote", "notes", "onCancelNote", "onAddNote", "debugResult", "language", "debuging", "submitting", "executingMessage", "code", "onSubmitCode", "onDebugCode", "onChangeCode", "onChangeInput", "onUpdateCode", "user", "isLoading"];
var Countdown = statistic/* default */.Z.Countdown;
var LanguageSuf = {
'Java': 'java',
'C': 'c',
'Python': 'py',
'C++': 'c'
};
var MyProblem_Types = /*#__PURE__*/function (Types) {
Types[Types["SET_LOADING"] = 0] = "SET_LOADING";
Types[Types["GET_DATA"] = 1] = "GET_DATA";
Types[Types["GET_SUBMIT_RECORDS"] = 2] = "GET_SUBMIT_RECORDS";
Types[Types["SET_DATA"] = 3] = "SET_DATA";
Types[Types["SET_DEBUGING"] = 4] = "SET_DEBUGING";
Types[Types["SET_SUBMITING"] = 5] = "SET_SUBMITING";
Types[Types["SET_EXECUTE_MESSAGE"] = 6] = "SET_EXECUTE_MESSAGE";
Types[Types["SET_EXECUTE_RESULT"] = 7] = "SET_EXECUTE_RESULT";
Types[Types["SET_SUBMIT_RESULT"] = 8] = "SET_SUBMIT_RESULT";
Types[Types["SET_SHOW_NOTE"] = 9] = "SET_SHOW_NOTE";
Types[Types["SET_PAGE"] = 10] = "SET_PAGE";
return Types;
}(MyProblem_Types || {});
function getTimeStamp() {
return new Date().getTime();
}
var initalilState = {
loading: true,
data: undefined,
showNote: false,
debugResult: undefined,
submitResult: undefined,
debuging: false,
submitting: false,
submitRecords: undefined,
submitRecordPage: 1,
executingMessage: ''
};
function MyProblem_reducer(state, action) {
switch (action.type) {
case MyProblem_Types.GET_DATA:
return objectSpread2_default()(objectSpread2_default()({}, state), action.payload);
case MyProblem_Types.SET_DATA:
return objectSpread2_default()(objectSpread2_default()({}, state), {}, {
data: action.payload
});
case MyProblem_Types.SET_LOADING:
return objectSpread2_default()(objectSpread2_default()({}, state), {}, {
loading: action.payload
});
case MyProblem_Types.SET_SHOW_NOTE:
return objectSpread2_default()(objectSpread2_default()({}, state), {}, {
showNote: action.payload
});
case MyProblem_Types.SET_DEBUGING:
return objectSpread2_default()(objectSpread2_default()({}, state), {}, {
debuging: action.payload
});
case MyProblem_Types.SET_SUBMITING:
return objectSpread2_default()(objectSpread2_default()({}, state), {}, {
submitting: action.payload
});
case MyProblem_Types.GET_SUBMIT_RECORDS:
return objectSpread2_default()(objectSpread2_default()({}, state), {}, {
submitRecords: action.payload
});
case MyProblem_Types.SET_PAGE:
return objectSpread2_default()(objectSpread2_default()({}, state), {}, {
submitRecordPage: action.payload
});
case MyProblem_Types.SET_EXECUTE_MESSAGE:
return objectSpread2_default()(objectSpread2_default()({}, state), {}, {
executingMessage: action.payload
});
case MyProblem_Types.SET_EXECUTE_RESULT:
return objectSpread2_default()(objectSpread2_default()({}, state), action.payload);
case MyProblem_Types.SET_SUBMIT_RESULT:
return objectSpread2_default()(objectSpread2_default()({}, state), action.payload);
default:
throw new Error();
}
}
/* harmony default export */ var MyProblem = (function (_ref) {
var _data$test_case, _exerciseData$exercis2, _exerciseData$exercis3, _exerciseData$exercis4;
var children = _ref.children;
var _useReducer = (0,_react_17_0_2_react.useReducer)(MyProblem_reducer, initalilState),
_useReducer2 = slicedToArray_default()(_useReducer, 2),
state = _useReducer2[0],
dispatch = _useReducer2[1];
var _useParams = (0,_umi_production_exports.useParams)(),
id = _useParams.id;
var location = (0,_umi_production_exports.useLocation)();
var _useSearchParams = (0,_umi_production_exports.useSearchParams)(),
_useSearchParams2 = slicedToArray_default()(_useSearchParams, 1),
searchParams = _useSearchParams2[0];
var loading = state.loading,
data = state.data,
debugResult = state.debugResult,
submitResult = state.submitResult,
submitRecords = state.submitRecords,
submitRecordPage = state.submitRecordPage,
showNote = state.showNote,
debuging = state.debuging,
submitting = state.submitting,
executingMessage = state.executingMessage;
var _useState = (0,_react_17_0_2_react.useState)("#37AD83"),
_useState2 = slicedToArray_default()(_useState, 2),
countDownColor = _useState2[0],
setCountDownColor = _useState2[1];
var _useState3 = (0,_react_17_0_2_react.useState)(null),
_useState4 = slicedToArray_default()(_useState3, 2),
countDownTime = _useState4[0],
setCountDownTime = _useState4[1];
var _useState5 = (0,_react_17_0_2_react.useState)({}),
_useState6 = slicedToArray_default()(_useState5, 2),
exerciseData = _useState6[0],
setExerciseData = _useState6[1];
var _useState7 = (0,_react_17_0_2_react.useState)(true),
_useState8 = slicedToArray_default()(_useState7, 2),
isLoading = _useState8[0],
setIsLoading = _useState8[1];
var _useState9 = (0,_react_17_0_2_react.useState)(false),
_useState10 = slicedToArray_default()(_useState9, 2),
passModalData = _useState10[0],
setPassModalData = _useState10[1];
var timer = (0,_react_17_0_2_react.useRef)(null);
var time_save = (0,_react_17_0_2_react.useRef)(0);
var user = data === null || data === void 0 ? void 0 : data.user;
var hack = data === null || data === void 0 ? void 0 : data.hack;
var runTypeRef = (0,_react_17_0_2_react.useRef)(1);
// const countDownRef = useRef<any>();
// const countDownRef2 = useRef<any>();
var lockExitFullRef = (0,_react_17_0_2_react.useRef)(false);
(0,Hooks/* useDisableAction */.y)(searchParams.get("type") === 'exercises');
var clearCountdownTimeout = (0,useRemindModal/* useRemindModal */._)(exerciseData);
// useEffect(() => {
// clearTimeout(countDownRef.current)
// clearTimeout(countDownRef2.current)
// if (exerciseData?.exercise?.left_time) {
// if (exerciseData?.exercise?.left_time > 1800) {
// countDownRef2.current = setTimeout(() => {
// Modal.info({
// content: "当前距离考试结束还有30分钟",
// icon: <ClockCircleOutlined />,
// okText: "知道了"
// })
// }, (exerciseData?.exercise?.left_time - 1800) * 1000)
// }
// if (exerciseData?.exercise?.left_time > 900) {
// countDownRef.current = setTimeout(() => {
// Modal.info({
// content: "当前距离考试结束还有15分钟",
// icon: <ClockCircleOutlined />,
// okText: "知道了"
// })
// }, (exerciseData?.exercise?.left_time - 900) * 1000)
// }
// }
// }, [exerciseData])
(0,_react_17_0_2_react.useEffect)(function () {
function init() {
return _init.apply(this, arguments);
}
function _init() {
_init = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
var response, _res, _res2, res, _res3;
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
setIsLoading(true);
_context.next = 3;
return (0,service/* getProgrammingTopic */.fu)(id, {
exercise_id: searchParams.get("exercisesId")
});
case 3:
response = _context.sent;
setTimeout(function () {
setIsLoading(false);
}, 800);
if (response.status === 401) {
// document.location.href = '/user/login'
// history.replace('/user/login', { from: location.pathname })
} else {
try {
response.hack.code = base64.Base64.decode(response.hack.code);
} catch (e) {
console.log(e);
}
response.hack = objectSpread2_default()(objectSpread2_default()({}, response.hack), {}, {
is_program: searchParams.get("type") === '1'
});
dispatch({
type: MyProblem_Types.GET_DATA,
payload: {
loading: false,
data: response
}
});
}
if (!(searchParams.get("type") === 'exercises')) {
_context.next = 21;
break;
}
if (!(window.self === window.top)) {
_context.next = 10;
break;
}
window.top.location.href = "/";
return _context.abrupt("return");
case 10:
if (!(searchParams.get("coursesId") == 'coursesId')) {
_context.next = 16;
break;
}
_context.next = 13;
return (0,exercise/* startSimulateAnswer */._F)({
categoryId: searchParams.get("exercisesId"),
login: searchParams.get("login")
});
case 13:
res = _context.sent;
_context.next = 19;
break;
case 16:
_context.next = 18;
return (0,exercise/* getExerciseStartAnswer */._B)({
categoryId: searchParams.get("exercisesId"),
login: searchParams.get("login")
});
case 18:
res = _context.sent;
case 19:
setExerciseData(objectSpread2_default()({}, res));
// setDownTime(res.exercise?.left_time)
if ((_res = res) !== null && _res !== void 0 && _res.left_banner_id && (_res2 = res) !== null && _res2 !== void 0 && (_res2 = _res2.exercise) !== null && _res2 !== void 0 && _res2.left_time) {
setCountDownTime(Date.now() + ((_res3 = res) === null || _res3 === void 0 || (_res3 = _res3.exercise) === null || _res3 === void 0 ? void 0 : _res3.left_time) * 1000);
// setTimeout(() => {
// setCountDownColor("red")
// }, (res?.exercise?.left_time - 300 > 0 ? res?.exercise?.left_time - 300 : 0) * 1000)
}
case 21:
case "end":
return _context.stop();
}
}, _callee);
}));
return _init.apply(this, arguments);
}
if (id) {
init();
}
}, [id]);
(0,_react_17_0_2_react.useEffect)(function () {
var _exerciseData$exercis;
if (searchParams.get("type") === 'exercises' && exerciseData !== null && exerciseData !== void 0 && (_exerciseData$exercis = exerciseData.exercise) !== null && _exerciseData$exercis !== void 0 && _exerciseData$exercis.screen_open) {
window.removeEventListener('blur', backExercise, false);
recordScreen/* fullchange */.U.forEach(function (item, index) {
window.addEventListener(item, backExercise, false);
});
window.addEventListener('blur', backExercise, false);
window.focus();
}
return function () {
document.removeEventListener((0,fullscreen/* fullscreenChange */.gH)(), backExercise);
};
}, [exerciseData]);
(0,_react_17_0_2_react.useEffect)(function () {
if (id && hack !== null && hack !== void 0 && hack.language) {
getSubmitRecordsData();
}
}, [id, submitRecordPage, hack === null || hack === void 0 ? void 0 : hack.language]);
//15s秒发一次记录
(0,_react_17_0_2_react.useEffect)(function () {
if (hack !== null && hack !== void 0 && hack.is_program) {
time_save.current = 0;
timer.current = setInterval(function () {
setTime();
}, 15000);
}
return function () {
clearInterval(timer.current);
};
}, [hack === null || hack === void 0 ? void 0 : hack.is_program]);
var setTime = /*#__PURE__*/function () {
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2() {
var res;
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
while (1) switch (_context2.prev = _context2.next) {
case 0:
_context2.next = 2;
return (0,utils_fetch/* default */.ZP)("/api/myproblems/".concat(id, "/save_long_time.json"), {
method: 'get',
params: {
answer_long_time: time_save.current
}
});
case 2:
res = _context2.sent;
case 3:
case "end":
return _context2.stop();
}
}, _callee2);
}));
return function setTime() {
return _ref2.apply(this, arguments);
};
}();
var backExercise = function backExercise() {
if (!lockExitFullRef.current) {
(0,fullscreen/* exitFull */.BU)();
}
window.parent.postMessage('backExercise', '*');
// history.push(`/classrooms/${searchParams.get("coursesId")}/exercise/${searchParams.get("exercisesId")}/users/${searchParams.get("login")}`)
};
function getSubmitRecordsData() {
return _getSubmitRecordsData.apply(this, arguments);
}
function _getSubmitRecordsData() {
_getSubmitRecordsData = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee8() {
var response;
return regeneratorRuntime_default()().wrap(function _callee8$(_context8) {
while (1) switch (_context8.prev = _context8.next) {
case 0:
_context8.prev = 0;
_context8.next = 3;
return (0,service/* getSubmitRecords */.zO)(id, {
limit: 15,
page: submitRecordPage,
language: hack === null || hack === void 0 ? void 0 : hack.language
});
case 3:
response = _context8.sent;
dispatch({
type: MyProblem_Types.GET_SUBMIT_RECORDS,
payload: response
});
_context8.next = 10;
break;
case 7:
_context8.prev = 7;
_context8.t0 = _context8["catch"](0);
console.log(_context8.t0);
case 10:
case "end":
return _context8.stop();
}
}, _callee8, null, [[0, 7]]);
}));
return _getSubmitRecordsData.apply(this, arguments);
}
function onPageChange(value) {
dispatch({
type: MyProblem_Types.SET_PAGE,
payload: value
});
}
function onUpdateCode(_x) {
return _onUpdateCode.apply(this, arguments);
}
function _onUpdateCode() {
_onUpdateCode = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee9(value) {
var ip, response, _exerciseData$exercis5;
return regeneratorRuntime_default()().wrap(function _callee9$(_context9) {
while (1) switch (_context9.prev = _context9.next) {
case 0:
if (!(searchParams.get("ip_limit") === 'inner' || searchParams.get("ip_bind") === "true")) {
_context9.next = 4;
break;
}
_context9.next = 3;
return (0,Exercise_ip/* findLocalIp */.y)({
ip_limit: searchParams.get("ip_limit"),
ip_bind: searchParams.get("ip_bind") === "true" ? true : false
});
case 3:
ip = _context9.sent;
case 4:
_context9.next = 6;
return (0,service/* updateCode */.n4)(id, {
code: base64.Base64.encode(value || hack.code),
language: hack === null || hack === void 0 ? void 0 : hack.language,
exercise_id: searchParams.get("exercisesId"),
question_id: searchParams.get("questionId"),
ip: ip
});
case 6:
response = _context9.sent;
if (response.status === -5) {
(0,_umi_production_exports.getDvaApp)()._store.dispatch({
type: 'exercise/setActionTabs',
payload: {
key: 'student-unlock',
exerciseParams: objectSpread2_default()(objectSpread2_default()({
errorMessage: response === null || response === void 0 ? void 0 : response.message
}, (exerciseData === null || exerciseData === void 0 ? void 0 : exerciseData.exercise) || {}), {}, {
exercise_user_id: exerciseData === null || exerciseData === void 0 || (_exerciseData$exercis5 = exerciseData.exercise) === null || _exerciseData$exercis5 === void 0 ? void 0 : _exerciseData$exercis5.exercise_user_id,
id: searchParams.get("exercisesId")
})
}
});
}
return _context9.abrupt("return", response);
case 9:
case "end":
return _context9.stop();
}
}, _callee9);
}));
return _onUpdateCode.apply(this, arguments);
}
function onSubmitCode() {
return _onSubmitCode.apply(this, arguments);
}
function _onSubmitCode() {
_onSubmitCode = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee11() {
var response, executeCode, submitCodeParams, res, time_limit, test_case_size, startTime;
return regeneratorRuntime_default()().wrap(function _callee11$(_context11) {
while (1) switch (_context11.prev = _context11.next) {
case 0:
runTypeRef.current = 2;
if (!submitting) {
_context11.next = 3;
break;
}
return _context11.abrupt("return");
case 3:
dispatch({
type: MyProblem_Types.SET_SUBMITING,
payload: true
});
_context11.prev = 4;
mediator/* default */.Z.publish('to-commit-info');
_context11.next = 8;
return onUpdateCode();
case 8:
response = _context11.sent;
console.log(response, 1);
if (!(response.status === 0)) {
_context11.next = 30;
break;
}
executeCode = /*#__PURE__*/function () {
var _ref6 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee10() {
var _yield$getOperationRe, status, data, executeTime, isTimeOut, submitResponse;
return regeneratorRuntime_default()().wrap(function _callee10$(_context10) {
while (1) switch (_context10.prev = _context10.next) {
case 0:
_context10.next = 2;
return (0,service/* getOperationResult */.rX)(id, 'submit');
case 2:
_yield$getOperationRe = _context10.sent;
status = _yield$getOperationRe.status;
data = _yield$getOperationRe.data;
executeTime = getTimeStamp();
isTimeOut = executeTime - startTime > (time_limit * test_case_size + 3) * 1000;
if (status !== 0 && !isTimeOut) {
setTimeout(executeCode, 1000);
}
if (!isTimeOut) {
_context10.next = 12;
break;
}
modal/* default */.Z.error(defineProperty_default()({
title: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: "\u9519\u8BEF"
}),
centered: true,
okText: '知道啦'
}, "title", '评测代码超时'));
dispatch({
type: MyProblem_Types.SET_SUBMITING,
payload: false
});
return _context10.abrupt("return");
case 12:
if (!(status === 0)) {
_context10.next = 19;
break;
}
if (data.status === 2) {
modal/* default */.Z.error(defineProperty_default()({
title: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: "\u9519\u8BEF"
}),
centered: true,
okText: '知道啦'
}, "title", '评测代码超时'));
}
if ((data === null || data === void 0 ? void 0 : data.status) === 0 && searchParams.get("type") === '1') {
setPassModalData(true);
}
_context10.next = 17;
return (0,service/* getSubmitRecords */.zO)(id, {
limit: 15,
page: submitRecordPage,
language: hack === null || hack === void 0 ? void 0 : hack.language
});
case 17:
submitResponse = _context10.sent;
dispatch({
type: MyProblem_Types.SET_SUBMIT_RESULT,
payload: objectSpread2_default()(objectSpread2_default()({}, state), {}, {
submitResult: data,
// debugResult: data,
submitting: false,
submitRecords: submitResponse
})
});
case 19:
case "end":
return _context10.stop();
}
}, _callee10);
}));
return function executeCode() {
return _ref6.apply(this, arguments);
};
}();
submitCodeParams = {};
if (!(searchParams.get("type") === 'exercises')) {
_context11.next = 19;
break;
}
submitCodeParams.extras = {
exercise_id: searchParams.get("exercisesId"),
//试卷id
question_id: searchParams.get("questionId") //题目id
};
if (!(searchParams.get("ip_limit") === 'inner' || searchParams.get("ip_bind") === "true")) {
_context11.next = 19;
break;
}
_context11.next = 18;
return (0,Exercise_ip/* findLocalIp */.y)({
ip_limit: searchParams.get("ip_limit"),
ip_bind: searchParams.get("ip_bind") === "true" ? true : false
});
case 18:
submitCodeParams.extras.ip = _context11.sent;
case 19:
_context11.next = 21;
return (0,service/* sumbitCode */.bM)(id, submitCodeParams);
case 21:
res = _context11.sent;
if (!(res.status === -1 && searchParams.get("exercisesId"))) {
_context11.next = 25;
break;
}
window.parent.location.href = "/classrooms/".concat(searchParams.get("coursesId"), "/exercise/").concat(searchParams.get("exercisesId"), "/detail");
return _context11.abrupt("return");
case 25:
time_limit = hack.time_limit, test_case_size = hack.test_case_size;
startTime = getTimeStamp();
if (res.status > -1) {
executeCode();
} else {
dispatch({
type: MyProblem_Types.SET_SUBMITING,
payload: false
});
}
_context11.next = 31;
break;
case 30:
dispatch({
type: MyProblem_Types.SET_SUBMITING,
payload: false
});
case 31:
_context11.next = 37;
break;
case 33:
_context11.prev = 33;
_context11.t0 = _context11["catch"](4);
console.log(_context11.t0);
dispatch({
type: MyProblem_Types.SET_SUBMITING,
payload: false
});
case 37:
case "end":
return _context11.stop();
}
}, _callee11, null, [[4, 33]]);
}));
return _onSubmitCode.apply(this, arguments);
}
function onDebugCode() {
return _onDebugCode.apply(this, arguments);
}
function _onDebugCode() {
_onDebugCode = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee13() {
var response, executeCode, time_limit, submitCodeParams, res, startTime;
return regeneratorRuntime_default()().wrap(function _callee13$(_context13) {
while (1) switch (_context13.prev = _context13.next) {
case 0:
runTypeRef.current = 1;
state.debuging = true;
dispatch({
type: MyProblem_Types.SET_DEBUGING,
payload: true
});
_context13.prev = 3;
_context13.next = 6;
return onUpdateCode();
case 6:
response = _context13.sent;
if (!(response.status === 0)) {
_context13.next = 22;
break;
}
executeCode = /*#__PURE__*/function () {
var _ref7 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee12() {
var _yield$getOperationRe2, status, message, data, executeTime, isTimeOut;
return regeneratorRuntime_default()().wrap(function _callee12$(_context12) {
while (1) switch (_context12.prev = _context12.next) {
case 0:
_context12.next = 2;
return (0,service/* getOperationResult */.rX)(id, 'debug');
case 2:
_yield$getOperationRe2 = _context12.sent;
status = _yield$getOperationRe2.status;
message = _yield$getOperationRe2.message;
data = _yield$getOperationRe2.data;
executeTime = getTimeStamp();
isTimeOut = executeTime - startTime > (time_limit + 3) * 1000;
if (status !== 0 && !isTimeOut) {
dispatch({
type: MyProblem_Types.SET_EXECUTE_MESSAGE,
payload: message
});
setTimeout(executeCode, 1000);
}
if (!isTimeOut) {
_context12.next = 13;
break;
}
modal/* default */.Z.error({
centered: true,
okText: '知道啦',
title: '调试代码超时'
});
dispatch({
type: MyProblem_Types.SET_DEBUGING,
payload: false
});
return _context12.abrupt("return");
case 13:
if (status === 0) {
dispatch({
type: MyProblem_Types.SET_DEBUGING,
payload: false
});
if (data.status === 2) {
modal/* default */.Z.error({
centered: true,
okText: '知道啦',
title: '调试代码超时'
});
}
if (data.status === 2) {
modal/* default */.Z.error({
centered: true,
okText: '知道啦',
title: '调试代码超时'
});
}
dispatch({
type: MyProblem_Types.SET_EXECUTE_RESULT,
payload: objectSpread2_default()(objectSpread2_default()({}, state), {}, {
debugResult: data,
debuging: false
})
});
}
case 14:
case "end":
return _context12.stop();
}
}, _callee12);
}));
return function executeCode() {
return _ref7.apply(this, arguments);
};
}();
time_limit = hack.time_limit;
submitCodeParams = {
input: encodeURIComponent(data.test_case.input)
};
if (searchParams.get("type") === 'exercises') {
submitCodeParams.exercise_id = searchParams.get("exercisesId");
}
_context13.next = 14;
return (0,service/* debugCode */.MU)(id, submitCodeParams);
case 14:
res = _context13.sent;
if (!(res.status === -1 && searchParams.get("exercisesId"))) {
_context13.next = 18;
break;
}
window.parent.location.href = "/classrooms/".concat(searchParams.get("coursesId"), "/exercise/").concat(searchParams.get("exercisesId"), "/detail");
return _context13.abrupt("return");
case 18:
startTime = getTimeStamp();
if ((res === null || res === void 0 ? void 0 : res.status) > -1) {
executeCode();
} else {
dispatch({
type: MyProblem_Types.SET_DEBUGING,
payload: false
});
}
_context13.next = 23;
break;
case 22:
dispatch({
type: MyProblem_Types.SET_DEBUGING,
payload: false
});
case 23:
_context13.next = 28;
break;
case 25:
_context13.prev = 25;
_context13.t0 = _context13["catch"](3);
console.log(_context13.t0);
case 28:
_context13.prev = 28;
return _context13.finish(28);
case 30:
case "end":
return _context13.stop();
}
}, _callee13, null, [[3, 25, 28, 30]]);
}));
return _onDebugCode.apply(this, arguments);
}
function onChangeCode(value) {
dispatch({
type: MyProblem_Types.SET_DATA,
payload: objectSpread2_default()(objectSpread2_default()({}, data), {}, {
hack: objectSpread2_default()(objectSpread2_default()({}, hack), {}, {
code: value
})
})
});
}
var onChangeLanguage = /*#__PURE__*/function () {
var _ref3 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee3(v) {
var res;
return regeneratorRuntime_default()().wrap(function _callee3$(_context3) {
while (1) switch (_context3.prev = _context3.next) {
case 0:
_context3.next = 2;
return (0,utils_fetch/* default */.ZP)("/api/problems/".concat(hack === null || hack === void 0 ? void 0 : hack.identifier, "/start.json"), {
method: 'get',
params: {
language: v === 'C++' || v === 'c++' ? encodeURIComponent(v) : v,
hack_user_id: user === null || user === void 0 ? void 0 : user.user_id
}
});
case 2:
res = _context3.sent;
if (res.status !== -1) {
_umi_production_exports.history.replace("/myproblems/".concat(res === null || res === void 0 ? void 0 : res.identifier, "?type=").concat(searchParams.get("type")));
}
// dispatch({
// type: Types.SET_DATA, payload: {
// ...data,
// hack: {
// ...hack,
// language: v
// },
// }
// })
case 4:
case "end":
return _context3.stop();
}
}, _callee3);
}));
return function onChangeLanguage(_x2) {
return _ref3.apply(this, arguments);
};
}();
function onChangeInput(e) {
var input = e.target.value;
dispatch({
type: MyProblem_Types.SET_DATA,
payload: objectSpread2_default()(objectSpread2_default()({}, data), {}, {
test_case: {
input: input
}
})
});
}
function onResetCode() {
return _onResetCode.apply(this, arguments);
}
function _onResetCode() {
_onResetCode = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee14() {
var response;
return regeneratorRuntime_default()().wrap(function _callee14$(_context14) {
while (1) switch (_context14.prev = _context14.next) {
case 0:
_context14.prev = 0;
_context14.next = 3;
return (0,service/* resetCode */.H7)(id);
case 3:
response = _context14.sent;
if (response.status === 401) {
// history.replace('/login', { from: location.pathname })
} else {
onChangeCode(base64.Base64.decode(response.code));
}
_context14.next = 10;
break;
case 7:
_context14.prev = 7;
_context14.t0 = _context14["catch"](0);
console.log(_context14.t0);
case 10:
case "end":
return _context14.stop();
}
}, _callee14, null, [[0, 7]]);
}));
return _onResetCode.apply(this, arguments);
}
function onSyncCode() {
modal/* default */.Z.confirm({
centered: true,
okText: '确定',
cancelText: '取消',
title: '提示',
content: /*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
children: ["\u521D\u59CB\u4EE3\u7801\u6709\u4FEE\u6539\uFF0C\u66F4\u65B0\u540E\u5C06\u8986\u76D6\u73B0\u6709\u4EE3\u7801\u54E6~ ", /*#__PURE__*/(0,jsx_runtime.jsx)("br", {}), "\u8BF7\u5C06\u60A8\u7F16\u8F91\u7684\u4EE3\u7801\u4FDD\u5B58\u81F3\u672C\u5730\uFF0C\u4EE5\u9632\u4E22\u5931"]
}),
onOk: function onOk() {
return asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee4() {
var response;
return regeneratorRuntime_default()().wrap(function _callee4$(_context4) {
while (1) switch (_context4.prev = _context4.next) {
case 0:
_context4.next = 2;
return (0,service/* syncCode */.fi)(id);
case 2:
response = _context4.sent;
if (response.status === 401) {
// history.replace('/login', { from: location.pathname })
} else {
onChangeCode(base64.Base64.decode(response.code));
}
case 4:
case "end":
return _context4.stop();
}
}, _callee4);
}))();
}
});
}
function onShowNote() {
dispatch({
type: MyProblem_Types.SET_SHOW_NOTE,
payload: true
});
}
function onCancelNote() {
dispatch({
type: MyProblem_Types.SET_SHOW_NOTE,
payload: false
});
}
function onAddNote(_x3) {
return _onAddNote.apply(this, arguments);
}
function _onAddNote() {
_onAddNote = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee15(values) {
return regeneratorRuntime_default()().wrap(function _callee15$(_context15) {
while (1) switch (_context15.prev = _context15.next) {
case 0:
_context15.next = 2;
return (0,service/* addNotes */.MK)(id, values);
case 2:
dispatch({
type: MyProblem_Types.GET_DATA,
payload: {
showNote: false,
data: objectSpread2_default()(objectSpread2_default()({}, data), {}, {
hack: objectSpread2_default()(objectSpread2_default()({}, hack), {}, {
notes: values.notes
})
})
}
});
case 3:
case "end":
return _context15.stop();
}
}, _callee15);
}));
return _onAddNote.apply(this, arguments);
}
var rightPanelOption = {
hack: hack,
isLoading: isLoading,
input: data === null || data === void 0 || (_data$test_case = data.test_case) === null || _data$test_case === void 0 ? void 0 : _data$test_case.input,
language: hack === null || hack === void 0 ? void 0 : hack.language,
code: hack === null || hack === void 0 ? void 0 : hack.code,
title: 'main.' + LanguageSuf[hack === null || hack === void 0 ? void 0 : hack.language],
modify_code: hack === null || hack === void 0 ? void 0 : hack.modify_code,
notes: hack === null || hack === void 0 ? void 0 : hack.notes,
debugResult: debugResult,
debuging: debuging,
submitting: submitting,
executingMessage: executingMessage,
onCancelNote: onCancelNote,
onAddNote: onAddNote,
showNote: showNote,
user: user,
onShowNote: onShowNote,
onSubmitCode: onSubmitCode,
onChangeCode: onChangeCode,
onChangeInput: onChangeInput,
onDebugCode: onDebugCode,
onResetCode: onResetCode,
onSyncCode: onSyncCode,
onUpdateCode: onUpdateCode,
onChangeLanguage: onChangeLanguage
};
function onTriggerPraise() {
return _onTriggerPraise.apply(this, arguments);
}
function _onTriggerPraise() {
_onTriggerPraise = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee16() {
var _yield$triggerPlus, praise_count, rs;
return regeneratorRuntime_default()().wrap(function _callee16$(_context16) {
while (1) switch (_context16.prev = _context16.next) {
case 0:
_context16.next = 2;
return (0,service/* triggerPlus */.vl)(hack.id, {
container_type: 'Hack',
type: 1
});
case 2:
_yield$triggerPlus = _context16.sent;
praise_count = _yield$triggerPlus.praise_count;
rs = objectSpread2_default()(objectSpread2_default()({}, data), {}, {
hack: objectSpread2_default()(objectSpread2_default()({}, hack), {}, {
praises_count: praise_count,
user_praise: !hack.user_praise
})
});
dispatch({
type: MyProblem_Types.SET_DATA,
payload: rs
});
case 6:
case "end":
return _context16.stop();
}
}, _callee16);
}));
return _onTriggerPraise.apply(this, arguments);
}
var leftPanelOption = {
topicId: id,
submitResult: submitResult,
submitRecords: submitRecords,
submitting: submitting,
page: submitRecordPage,
onPageChange: onPageChange,
hack: hack,
user: data === null || data === void 0 ? void 0 : data.user,
onTriggerPraise: onTriggerPraise
};
console.log(exerciseData);
return /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(spin/* default */.Z, {
spinning: loading,
delay: 500,
children: [!data ? null : /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("header", {
className: OjFormmodules/* default */.Z.header,
children: [searchParams.get("type") !== 'exercises' && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("img", {
src: "".concat(env/* default */.Z.IMG_SERVER, "/images/").concat(user === null || user === void 0 ? void 0 : user.image_url),
alt: "user",
width: 30
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: user === null || user === void 0 ? void 0 : user.name
})]
}), searchParams.get("type") === "exercises" && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: "exercise_user_info",
children: ["\u59D3\u540D", /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "ml10",
children: exerciseData === null || exerciseData === void 0 || (_exerciseData$exercis2 = exerciseData.exercise) === null || _exerciseData$exercis2 === void 0 ? void 0 : _exerciseData$exercis2.user_name
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: "exercise_user_info ml30",
children: ["\u5B66\u53F7", /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "ml10",
children: exerciseData === null || exerciseData === void 0 || (_exerciseData$exercis3 = exerciseData.exercise) === null || _exerciseData$exercis3 === void 0 ? void 0 : _exerciseData$exercis3.student_id
})]
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("h2", {
className: "flex-wrp flex_box_column flex_box_center",
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: hack.name
}), (hack === null || hack === void 0 ? void 0 : hack.is_program) && /*#__PURE__*/(0,jsx_runtime.jsx)(Timepiece/* default */.Z, {
defaultValue: hack === null || hack === void 0 ? void 0 : hack.answer_long_time,
onChange: function onChange(v) {
console.log(v);
time_save.current = v;
},
className: "font12 c-grey-999"
})]
}), user !== null && user !== void 0 && user.hack_manager ? /*#__PURE__*/(0,jsx_runtime.jsxs)(_umi_production_exports.Link, {
className: OjFormmodules/* default */.Z.btn_back,
to: searchParams.get("type") === '1' ? "/problems/newedit/".concat(hack.identifier, "?type=1") : "/problems/newedit/".concat(hack.identifier),
style: {
marginRight: 10
},
children: [" ", /*#__PURE__*/(0,jsx_runtime.jsx)(FormOutlined/* default */.Z, {}), " \u7F16\u8F91"]
}) : null, (exerciseData === null || exerciseData === void 0 || (_exerciseData$exercis4 = exerciseData.exercise) === null || _exerciseData$exercis4 === void 0 ? void 0 : _exerciseData$exercis4.left_time) && /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
style: {
color: countDownColor,
marginRight: 6
},
className: "iconfont icon-daojishi"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "c-white mr20",
children: /*#__PURE__*/(0,jsx_runtime.jsx)(Countdown, {
valueStyle: {
color: countDownColor,
fontSize: 20,
fontWeight: 500
},
title: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
style: {
color: countDownColor,
fontSize: 14,
marginRight: 10
},
children: "\u5269\u4F59\u7B54\u9898\u65F6\u957F"
}),
value: countDownTime,
onFinish: /*#__PURE__*/asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee6() {
var res, time;
return regeneratorRuntime_default()().wrap(function _callee6$(_context6) {
while (1) switch (_context6.prev = _context6.next) {
case 0:
_context6.next = 2;
return (0,exercise/* submitExerciseAnswer */.VL)({
categoryId: searchParams.get("exercisesId"),
commit_method: 2
});
case 2:
res = _context6.sent;
if ((res === null || res === void 0 ? void 0 : res.status) === 0) {
onUpdateCode();
modal/* default */.Z.info({
width: 530,
title: '提示',
centered: true,
okText: '确定',
content: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: "tc font16",
children: ["\u7B54\u9898\u7ED3\u675F\u4E86\uFF0C\u7CFB\u7EDF\u5DF2\u81EA\u52A8\u63D0\u4EA4\u8BD5\u5377", /*#__PURE__*/(0,jsx_runtime.jsx)("br", {}), "\u4E0D\u80FD\u518D\u4FEE\u6539\u7B54\u9898"]
}),
onOk: function () {
var _onOk = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee5() {
return regeneratorRuntime_default()().wrap(function _callee5$(_context5) {
while (1) switch (_context5.prev = _context5.next) {
case 0:
window.parent.location.href = "/classrooms/".concat(searchParams.get("coursesId"), "/exercise/").concat(searchParams.get("exercisesId"), "/detail");
case 1:
case "end":
return _context5.stop();
}
}, _callee5);
}));
function onOk() {
return _onOk.apply(this, arguments);
}
return onOk;
}()
});
}
if ((res === null || res === void 0 ? void 0 : res.status) === -3) {
time = parseInt(res === null || res === void 0 ? void 0 : res.message);
setCountDownTime(Date.now() + time * 1000);
}
case 5:
case "end":
return _context6.stop();
}
}, _callee6);
}))
})
})]
}), searchParams.get("type") === "exercises" ? /*#__PURE__*/(0,jsx_runtime.jsxs)(es_button/* default */.ZP, {
type: "primary",
onClick: function onClick() {
onUpdateCode();
modal/* default */.Z.confirm({
centered: true,
okText: '确定',
cancelText: '取消',
icon: null,
title: '提示',
content: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
style: {
color: "#FF0000"
},
children: "\u8BF7\u786E\u8BA4\u4F60\u7684\u7B54\u9898\u5185\u5BB9\u662F\u5426\u8FDB\u884C\u8BC4\u6D4B\u5E76\u63D0\u4EA4\uFF0C\u672A\u8BC4\u6D4B\u5219\u4F1A\u5BFC\u81F4\u8BE5\u9898\u65E0\u6CD5\u83B7\u5F97\u5206\u6570"
}),
onOk: function onOk() {
// window.close()
clearCountdownTimeout();
lockExitFullRef.current = true;
backExercise();
localStorage.setItem('ismain', '2');
}
});
},
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "iconfont icon-yiguanbi mr5 font14"
}), " \u8FD4\u56DE\u8BD5\u5377"]
}) : /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: OjFormmodules/* default */.Z.btn_back,
onClick: function onClick() {
if (searchParams.get("type") === '1') {
var _localStorage$getItem;
var item = (_localStorage$getItem = localStorage.getItem('program_homework')) === null || _localStorage$getItem === void 0 ? void 0 : _localStorage$getItem.split(',');
_umi_production_exports.history.push("/classrooms/".concat(item === null || item === void 0 ? void 0 : item[0], "/program_homework/").concat(item === null || item === void 0 ? void 0 : item[1], "/detail"));
} else {
_umi_production_exports.history.push("/problemset");
}
},
children: [" ", /*#__PURE__*/(0,jsx_runtime.jsx)(PoweroffOutlined/* default */.Z, {}), "\u9000\u51FA"]
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)(spin/* default */.Z, {
size: "large",
spinning: isLoading,
children: /*#__PURE__*/(0,jsx_runtime.jsx)(SplitContainer/* default */.Z, {
className: "my-problems",
leftChild: /*#__PURE__*/(0,jsx_runtime.jsx)(LeftPanel, objectSpread2_default()({}, leftPanelOption)),
rightChild: /*#__PURE__*/(0,jsx_runtime.jsx)(RightPanel, objectSpread2_default()({}, rightPanelOption))
})
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)(modal/* default */.Z, {
centered: true,
closable: false,
width: 680,
footer: null,
open: passModalData,
className: "oj-modal",
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("section", {
className: "oj-modal-content",
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: "oj-modal-head",
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("img", {
src: internal,
alt: ""
}), /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
onClick: function onClick() {
return setPassModalData(false);
},
className: "iconfont icon-guanbi1"
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("img", {
className: "mr30",
src: title/* default */.Z
}), "\u8FD0\u884C\u65F6\u95F4:\xA0", /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
style: {
color: '#75d6ba',
marginRight: 100
},
children: [submitResult === null || submitResult === void 0 ? void 0 : submitResult.execute_time, "ms"]
}), "\u4F18\u4E8E", /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
style: {
color: '#f3b087',
margin: "0 5px"
},
children: [(submitResult === null || submitResult === void 0 ? void 0 : submitResult.time_better_than) || 100, "%"]
}), "\u7684\u7528\u6237"]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
className: "mb50",
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("img", {
src: time/* default */.Z,
className: "mr30"
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: "oj-modal-tt",
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: "\u5360\u7528\u5185\u5B58:\xA0"
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: "c-light-primary",
children: [submitResult === null || submitResult === void 0 ? void 0 : submitResult.execute_memory, "kb"]
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {})
})]
}), "\u4F18\u4E8E", /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
style: {
color: '#f3b087',
margin: "0 5px"
},
children: [(submitResult === null || submitResult === void 0 ? void 0 : submitResult.memory_better_than) || 100, "%"]
}), "\u7684\u7528\u6237"]
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
id: "oj-modal-next",
onClick: /*#__PURE__*/asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee7() {
var res, _localStorage$getItem2, item;
return regeneratorRuntime_default()().wrap(function _callee7$(_context7) {
while (1) switch (_context7.prev = _context7.next) {
case 0:
if (!(submitResult !== null && submitResult !== void 0 && submitResult.next_identifier)) {
_context7.next = 7;
break;
}
_context7.next = 3;
return (0,utils_fetch/* default */.ZP)("/api/problems/".concat(submitResult === null || submitResult === void 0 ? void 0 : submitResult.next_identifier, "/start.json"), {
method: 'get',
params: {
hack_user_id: user === null || user === void 0 ? void 0 : user.user_id
}
});
case 3:
res = _context7.sent;
if (res) {
_umi_production_exports.history.replace("/myproblems/".concat(res === null || res === void 0 ? void 0 : res.identifier, "?type=1"));
window.location.reload();
}
_context7.next = 9;
break;
case 7:
item = (_localStorage$getItem2 = localStorage.getItem('program_homework')) === null || _localStorage$getItem2 === void 0 ? void 0 : _localStorage$getItem2.split(',');
_umi_production_exports.history.push("/classrooms/".concat(item === null || item === void 0 ? void 0 : item[0], "/program_homework/").concat(item === null || item === void 0 ? void 0 : item[1], "/detail"));
case 9:
case "end":
return _context7.stop();
}
}, _callee7);
})),
className: "oj-modal-btn",
children: submitResult !== null && submitResult !== void 0 && submitResult.next_identifier ? '进入下一题' : '回到作业详情页'
})]
})
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)(Unlock/* default */.Z, {
successCb: function successCb() {
if (runTypeRef.current === 1) {
onDebugCode();
} else {
onSubmitCode();
}
}
})]
});
});
function ActionBar(_ref8) {
var _hack$all_language;
var title = _ref8.title,
modify_code = _ref8.modify_code,
onSyncCode = _ref8.onSyncCode,
onShowCodeSetting = _ref8.onShowCodeSetting,
onResetCode = _ref8.onResetCode,
hack = _ref8.hack,
onChangeLanguage = _ref8.onChangeLanguage;
var opneModal = function opneModal() {
modal/* default */.Z.confirm({
title: '恢复初始代码',
icon: /*#__PURE__*/(0,jsx_runtime.jsx)(ExclamationCircleOutlined/* default */.Z, {}),
content: '你在本文件中修改的内容将丢失,是否确定重新加载初始代码?',
centered: true,
okText: '确定',
cancelText: '取消',
onOk: onResetCode
});
};
console.log(hack, 'hack');
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: "action-bar",
style: {
paddingLeft: 0
},
children: [(hack === null || hack === void 0 ? void 0 : hack.is_program) && /*#__PURE__*/(0,jsx_runtime.jsx)(es_select["default"], {
className: "oj-select",
value: hack === null || hack === void 0 ? void 0 : hack.language,
style: {
width: 100
},
placeholder: "\u9009\u62E9\u8BED\u8A00",
onChange: onChangeLanguage,
children: hack === null || hack === void 0 || (_hack$all_language = hack.all_language) === null || _hack$all_language === void 0 ? void 0 : _hack$all_language.map(function (e) {
return /*#__PURE__*/(0,jsx_runtime.jsx)(es_select["default"].Option, {
value: e,
children: e
}, e);
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {}), modify_code ? /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
title: "\u66F4\u65B0\u901A\u77E5",
onClick: onSyncCode,
children: /*#__PURE__*/(0,jsx_runtime.jsx)("img", {
src: notice,
alt: "notice",
style: {
height: 13,
transform: 'translateY(-2px)'
}
})
}) : null, /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
title: "\u6062\u590D\u521D\u59CB\u4EE3\u7801",
onClick: opneModal,
children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "iconfont icon-zhongzhi font-20 "
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
onClick: onShowCodeSetting,
children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "iconfont icon-shezhi"
})
})]
});
}
function RightPanel(_ref9) {
var input = _ref9.input,
showNote = _ref9.showNote,
onShowNote = _ref9.onShowNote,
notes = _ref9.notes,
onCancelNote = _ref9.onCancelNote,
onAddNote = _ref9.onAddNote,
debugResult = _ref9.debugResult,
language = _ref9.language,
debuging = _ref9.debuging,
submitting = _ref9.submitting,
executingMessage = _ref9.executingMessage,
code = _ref9.code,
onSubmitCode = _ref9.onSubmitCode,
onDebugCode = _ref9.onDebugCode,
onChangeCode = _ref9.onChangeCode,
onChangeInput = _ref9.onChangeInput,
onUpdateCode = _ref9.onUpdateCode,
user = _ref9.user,
isLoading = _ref9.isLoading,
actionBarOpation = objectWithoutProperties_default()(_ref9, _excluded);
function ActionBarEL(onShowCodeSetting) {
return /*#__PURE__*/(0,jsx_runtime.jsx)(ActionBar, objectSpread2_default()(objectSpread2_default()({}, actionBarOpation), {}, {
onShowCodeSetting: onShowCodeSetting
}));
}
var testCasePanelOption = objectSpread2_default()({
input: input,
debugResult: debugResult,
debuging: debuging,
submitting: submitting,
executingMessage: executingMessage,
onDebugCode: onDebugCode,
onChangeCode: onChangeCode,
onSubmitCode: onSubmitCode,
onChangeInput: onChangeInput,
user: user
}, actionBarOpation);
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: "right-panel",
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(CodePanel/* default */.Z, {
isLoading: isLoading,
language: language,
value: code,
onChange: onChangeCode,
onUpdateCode: onUpdateCode,
ActionBarRender: ActionBarEL
}), /*#__PURE__*/(0,jsx_runtime.jsx)(TestCasePanel/* default */.ZP, objectSpread2_default()({}, testCasePanelOption))]
});
}
/***/ }),
/***/ 41403:
/*!******************************************!*\
!*** ./src/pages/MyProblem/interface.ts ***!
\******************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ h: function() { return /* binding */ ExecuteStatus; }
/* harmony export */ });
// created_at: "2020-07-09T19:53:54.000+08:00"
// execute_memory: null
// execute_time: 0.269
// id: 872
// language: "C"
// status: 4
var ExecuteStatus = /*#__PURE__*/function (ExecuteStatus) {
ExecuteStatus[ExecuteStatus["NOMATCH"] = -1] = "NOMATCH";
ExecuteStatus[ExecuteStatus["OK"] = 0] = "OK";
ExecuteStatus[ExecuteStatus["TIMEOUT"] = 2] = "TIMEOUT";
ExecuteStatus[ExecuteStatus["PODFAILURE"] = 3] = "PODFAILURE";
ExecuteStatus[ExecuteStatus["COMPILEFAILURE"] = 4] = "COMPILEFAILURE";
ExecuteStatus[ExecuteStatus["EXECUTEFAILURE"] = 5] = "EXECUTEFAILURE";
return ExecuteStatus;
}({});
// "id": "1",
// "status": 2, # -1测试用例结果不匹配; 0: 评测通过; ;2 评测超时;3 创建pod失败; 4 编译失败;5 执行失败
// "error_line": 3, # 错误行数
// "error_msg": "error line 7 input.." , # 报错信息
// "input": "3 4", # 输入
// "output": "7", # 输出
// "execute_time": 3, #执行时间
// "execute_memory": 300, #消耗内存
// "expected_output": "7" # 如果提交模式 会多这个参数
/***/ }),
/***/ 93454:
/*!****************************************!*\
!*** ./src/pages/MyProblem/service.ts ***!
\****************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ H7: function() { return /* binding */ resetCode; },
/* harmony export */ MK: function() { return /* binding */ addNotes; },
/* harmony export */ MU: function() { return /* binding */ debugCode; },
/* harmony export */ X6: function() { return /* binding */ getRecordDetail; },
/* harmony export */ bM: function() { return /* binding */ sumbitCode; },
/* harmony export */ fi: function() { return /* binding */ syncCode; },
/* harmony export */ fu: function() { return /* binding */ getProgrammingTopic; },
/* harmony export */ n4: function() { return /* binding */ updateCode; },
/* harmony export */ rX: function() { return /* binding */ getOperationResult; },
/* harmony export */ vl: function() { return /* binding */ triggerPlus; },
/* harmony export */ zO: function() { return /* binding */ getSubmitRecords; }
/* harmony export */ });
/* harmony import */ var _root_workspace_ppte5yg23_local_v9_test1_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectSpread2.js */ 82242);
/* harmony import */ var _root_workspace_ppte5yg23_local_v9_test1_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_local_v9_test1_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _utils_fetch_ts__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @/utils/fetch.ts */ 35325);
function getProgrammingTopic(id, params) {
return (0,_utils_fetch_ts__WEBPACK_IMPORTED_MODULE_1__/* .get */ .U2)("myproblems/".concat(id, ".json"), _root_workspace_ppte5yg23_local_v9_test1_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({
hidePopLogin: true
}, params || {}));
}
function sumbitCode(id, params) {
return (0,_utils_fetch_ts__WEBPACK_IMPORTED_MODULE_1__/* .post */ .v_)("myproblems/".concat(id, "/code_submit.json"), params);
}
function debugCode(id, params) {
return (0,_utils_fetch_ts__WEBPACK_IMPORTED_MODULE_1__/* .post */ .v_)("myproblems/".concat(id, "/code_debug.json"), params);
}
function getSubmitRecords(id, params) {
if (params.language) {
params.language = encodeURIComponent(params.language);
}
return (0,_utils_fetch_ts__WEBPACK_IMPORTED_MODULE_1__/* .get */ .U2)("myproblems/".concat(id, "/submit_records.json"), params);
}
function getRecordDetail(id) {
return (0,_utils_fetch_ts__WEBPACK_IMPORTED_MODULE_1__/* .get */ .U2)("myproblems/record_detail.json", {
id: id
});
}
function getOperationResult(id, mode) {
return (0,_utils_fetch_ts__WEBPACK_IMPORTED_MODULE_1__/* .get */ .U2)("myproblems/".concat(id, "/result.json"), {
mode: mode
});
}
function addNotes(id, params) {
return (0,_utils_fetch_ts__WEBPACK_IMPORTED_MODULE_1__/* .post */ .v_)("myproblems/".concat(id, "/add_notes.json"), params);
}
function resetCode(id) {
return (0,_utils_fetch_ts__WEBPACK_IMPORTED_MODULE_1__/* .post */ .v_)("myproblems/".concat(id, "/restore_initial_code.json"));
}
function syncCode(id) {
return (0,_utils_fetch_ts__WEBPACK_IMPORTED_MODULE_1__/* .post */ .v_)("myproblems/".concat(id, "/sync_code.json"));
}
function updateCode(id, params) {
return (0,_utils_fetch_ts__WEBPACK_IMPORTED_MODULE_1__/* .post */ .v_)("myproblems/".concat(id, "/update_code.json"), params);
}
function triggerPlus(id, params) {
return (0,_utils_fetch_ts__WEBPACK_IMPORTED_MODULE_1__/* .post */ .v_)("discusses/".concat(id, "/plus.json"), params);
}
/***/ }),
/***/ 697:
/*!********************************************!*\
!*** ./src/utils/hooks/useRemindModal.tsx ***!
\********************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ _: function() { return /* binding */ useRemindModal; }
/* harmony export */ });
/* harmony import */ var _root_workspace_ppte5yg23_local_v9_test1_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_createForOfIteratorHelper_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/createForOfIteratorHelper.js */ 91232);
/* harmony import */ var _root_workspace_ppte5yg23_local_v9_test1_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_createForOfIteratorHelper_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_local_v9_test1_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_createForOfIteratorHelper_js__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ 59301);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! antd */ 43418);
//只需要left_time和exercise_events参数实际上传进来的answerData还有很多其它的属性
var useRemindModal = function useRemindModal(answerData) {
var _answerData$exercise6, _answerData$exercise7;
var countDownRefArr = (0,react__WEBPACK_IMPORTED_MODULE_1__.useRef)([]);
var clearCountdownTimeout = function clearCountdownTimeout() {
var _iterator = _root_workspace_ppte5yg23_local_v9_test1_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_createForOfIteratorHelper_js__WEBPACK_IMPORTED_MODULE_0___default()(countDownRefArr.current),
_step;
try {
for (_iterator.s(); !(_step = _iterator.n()).done;) {
var id = _step.value;
clearTimeout(id);
}
} catch (err) {
_iterator.e(err);
} finally {
_iterator.f();
}
countDownRefArr.current = [];
};
(0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(function () {
var _answerData$exercise, _answerData$exercise2;
clearCountdownTimeout();
if (answerData !== null && answerData !== void 0 && (_answerData$exercise = answerData.exercise) !== null && _answerData$exercise !== void 0 && _answerData$exercise.left_time && (answerData === null || answerData === void 0 || (_answerData$exercise2 = answerData.exercise) === null || _answerData$exercise2 === void 0 || (_answerData$exercise2 = _answerData$exercise2.exercise_events) === null || _answerData$exercise2 === void 0 ? void 0 : _answerData$exercise2.length) > 0) {
var _answerData$exercise3;
var _iterator2 = _root_workspace_ppte5yg23_local_v9_test1_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_createForOfIteratorHelper_js__WEBPACK_IMPORTED_MODULE_0___default()(answerData === null || answerData === void 0 || (_answerData$exercise3 = answerData.exercise) === null || _answerData$exercise3 === void 0 ? void 0 : _answerData$exercise3.exercise_events),
_step2;
try {
var _loop = function _loop() {
var _answerData$exercise4;
var eventItem = _step2.value;
if ((answerData === null || answerData === void 0 || (_answerData$exercise4 = answerData.exercise) === null || _answerData$exercise4 === void 0 ? void 0 : _answerData$exercise4.left_time) > (eventItem === null || eventItem === void 0 ? void 0 : eventItem.reminder_time) * 60) {
var _answerData$exercise5;
var timeoutId = setTimeout(function () {
antd__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z.info({
content: "".concat(eventItem === null || eventItem === void 0 ? void 0 : eventItem.reminder_content),
icon: null,
title: '提示',
centered: true,
okText: "知道了"
});
}, ((answerData === null || answerData === void 0 || (_answerData$exercise5 = answerData.exercise) === null || _answerData$exercise5 === void 0 ? void 0 : _answerData$exercise5.left_time) - (eventItem === null || eventItem === void 0 ? void 0 : eventItem.reminder_time) * 60) * 1000);
countDownRefArr.current.push(timeoutId);
}
};
for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) {
_loop();
}
} catch (err) {
_iterator2.e(err);
} finally {
_iterator2.f();
}
}
}, [answerData === null || answerData === void 0 || (_answerData$exercise6 = answerData.exercise) === null || _answerData$exercise6 === void 0 ? void 0 : _answerData$exercise6.left_time, answerData === null || answerData === void 0 || (_answerData$exercise7 = answerData.exercise) === null || _answerData$exercise7 === void 0 ? void 0 : _answerData$exercise7.exercise_events]);
return clearCountdownTimeout;
};
/***/ }),
/***/ 60141:
/*!***************************************************************!*\
!*** ./src/pages/tasks/code-repository/action-bar/notice.gif ***!
\***************************************************************/
/***/ (function(module) {
module.exports = "data:image/gif;base64,R0lGODlh6QDIAPf/APrMTf789vrMUPvdi/zfkfi4CvvYef713fnKSfzosP7wyvrSZfjAKPzmqf3wzP767fnHPv7xzf3wzvjFOfe2BP767vi8F/i8GPvagfnGO/jDMv3uxv3svfrNUvzkov724fvWcfzinPvbhPi5DfrTZv734vi6EPzglfnKSP3tw/nJR/3qtv3nrPrRYPjAJf/++/702PvVbvrUbfrUafrQX/rOVvnLTfrWcvi+H/i7Fv7y0P3y0/3wyv3uxPzjoPzglvi/I/vejvvZfPe5D/rTaPrPWvrOVPrKSf3vyPzlpPnNU/nKRvnENfe6E/Ly8v3sv+Xl5frZf9ra2vnIQOjo6Pv7+9jY2PX19d7e3tTU1Ovr6/n5+dzc3O7u7uLi4tDQ0M7Oztvb2/j4+N3d3ezs7NHR0f7+/tXV1fHx8fDw8NLS0uHh4d/f3/jAJvb29vT09M/Pz+/v7/f39+rq6uPj49bW1vr6+uDg4NfX1+Tk5PPz89PT0+np6efn59nZ2e3t7frPWfzmqvnFN/39/fz8/P756/723/vdif3ru/745/zhmObm5vrUav3ps/zim/zdiv757Pzlpvzruvzhmfe3Bve3B/zimvvhmvnCK/jAJ//56v/9+f7z1f702vvciPvXdfnBJ/jFN/jDL/735PvZe/e7Ffzjn/e3CPznq/3twf3ruvi+IPnFNvvdjPzps/3psvrOWP702/rQXfvYevnOWfvUav3quPrWdP302//56/i9G/zejP712/778/nIQv3orfnOV/i3BvnGOv/+/frKR/////3nqv3uw/vYd/3y1frUa/713v3ruPvZevrXd/e2BvnEM//+/P7z1v///f3rufnDMPnHQPe2A/i/JPrIQvnMUP3z2PnLSv/88/e8Gv746P7uxfvUa/vgk/vglPzgk/rNVPvaffnBKf3xz/756vi6D/rSYvrVcPe4C/jENvi7E/789PrPWPnIQfzchv3tv/3svvzquf3qufi9Hfi9Hve4DPnCLvjCL/e1AM3Nzf///yH/C05FVFNDQVBFMi4wAwEAAAAh/wtYTVAgRGF0YVhNUDw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQ4IDc5LjE2NDAzNiwgMjAxOS8wOC8xMy0wMTowNjo1NyAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIxLjAgKE1hY2ludG9zaCkiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MDJDNDJCNzNGQjY2MTFFREE3MTFEMUFDMEEzQzRDM0MiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MDJDNDJCNzRGQjY2MTFFREE3MTFEMUFDMEEzQzRDM0MiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDowMkM0MkI3MUZCNjYxMUVEQTcxMUQxQUMwQTNDNEMzQyIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDowMkM0MkI3MkZCNjYxMUVEQTcxMUQxQUMwQTNDNEMzQyIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PgH//v38+/r5+Pf29fTz8vHw7+7t7Ovq6ejn5uXk4+Lh4N/e3dzb2tnY19bV1NPS0dDPzs3My8rJyMfGxcTDwsHAv769vLu6ubi3trW0s7KxsK+urayrqqmop6alpKOioaCfnp2cm5qZmJeWlZSTkpGQj46NjIuKiYiHhoWEg4KBgH9+fXx7enl4d3Z1dHNycXBvbm1sa2ppaGdmZWRjYmFgX15dXFtaWVhXVlVUU1JRUE9OTUxLSklIR0ZFRENCQUA/Pj08Ozo5ODc2NTQzMjEwLy4tLCsqKSgnJiUkIyIhIB8eHRwbGhkYFxYVFBMSERAPDg0MCwoJCAcGBQQDAgEAACH5BAUXAP8ALAAAAADpAMgAAAj/AP8JHEiwoMGDCBMqXMiwocOHBbf0sZLlSxY6XSBq3Mixo8ePIEOK3LjFCxh/KFP6G3NlpMuXMGPKnKmRjxqVOP19SUOzp8+fQIMSjGMlp9EveoTG3PJGThWlUKNuvMLGqFV/WdxI/ZjGyheVeLRsHUtWICEocK5evVNWI5SreHi2nfuTzBm1eJ3QXWiHC15/c/YKfukkzF+8XAYfdIPnsD8yiiNzFOPF8V87kgWi2WPZn5zMoBdSudlZLWTJZEr7k2ImtOuhRVWrHSO5j2zAr127wXIbb5bIdHrTzi25CpSTvdWCGTyId+8vxCNruZv875a9YqRU96c3Ol0nfrf//+3e9g3p6lS8ty0p3jF5snHa+8OifqwZKmXkH36/dY7+3/VF1UVs+o1X1iIFLhegUFQVaBl/UK3hYBkLAnUWcg7ut5UdfmQIYIU0aZFFhp1BCJQb+WVoBYgzFUZiaSb6hMaL/rDF4kuU0QgjVKnRmNGNIhUzmo47CkWFjmA8BSRIAxKpWowyVaVjYkt6dIVzThbp0yAE0ihXlRoZh2GWJf4kxldEUgkmRNOReRuUI71B5pdrMoSGYW6+2VMXZP5Y50JiSJhnb3CChGCWp/2Z0H0pDqqnTFgSGZiiCRHlaHWFdtRYlpmueeWl23UKkR1j6ngdpQZVkUepoMomqkNXkP+pBqoHtdlqqC716KQftBbk4q3ivbrQW1mu0etAgQIrn7AJjUFmesea0UejyuIKEnVOxnHsP01WuyxIZMIhxrGfeqsfswV1SeOHqKpqroPoDpRHllIcK+K78HaURpZsKHVFF1RAIfDABBds8MEIH4wnvgXG+0+kL/bBoKAMV+wqR3o46edPVKRl8cdaQiTli2poFdTIIKesYZg64jGIUMSqLHNeG8n5oppAZTzzzleh+8eLXkDlLM9E44RuzAVKrFR8RTeNErrh6QfGH1F16HTT6EK8XRZvRLXv1VhvFJx8fhAi1ZFgF40u2uLRt5XWaavsc3t5kLVp3Duj64R4fJT/xRneeXM04nMbb+Ux4DLHy7ZqeHTdFuKBbyTHbVwo+TjkiXc0dGfG7oV55hxtQe1fiwz2udwezXgYGIl6fjrIDgu0uFV7oBHZ67CDpLNVWJisGO4fxz7QFlGntIdYmQFvsfAEXaHFGmPwocfLoClfMfMLWs8w9gFqjy/39Xn/LvjqiW8u+d6Z7y360alfLfvEua8s/LnJDyz9r9l/K/6u6d8q/6HxH6gAWD0BOoqAyTPgoBAoGQUucFsFcWCeGHg7CZKJgr+zIKcgSBANbpCDAvGgkzBoOhHqiIBXcIIKV8jCFrrwhTCMYUsSYsITyqQKWuACmkD1BS5owXIDqSGN/+DXhcF563gRFCKJ2Ie0d/UriErMEPqaiC86QDGKDXMJ00B2GizmayRWA9keruPFLIpEVykLWhnPNZKFpawMVVjjt0ISq535R47BEsnsUgY3PD5JJNrZmRH9SKiQmIGQ6sPeFhBpPuzVkZHaw57NIGk97ImBkpEMCSEwWUmRjC5lO+Ske0RSmZ0FUpSjDAmfdjYvVKYSJIP4W+Jc+UqQtFJl9aLlyuh4OC7+Q5cGGsnYQGYjYNJsJFuoA8jOcCpjqgV9clBmxeCQlBA60yrsk0PxvGUFbV3xmkaTCRSkqaw6QKE1HQRnTviHBihwQQrwjKc850nPetrznmOggu0Oov/OdYLQmv1MCQkFE1CVDNR1BeXOP3+ZUIX+s6EOBSFED0qXiS7Uog9tKEXnglGJavSiH81oQjd6uZGC1KQiLShJy9JRDrYUgi/dVkw/Yoc3YKZ/IQXJG+hATjVAwXcVRKlHqkAxnJSBag3MKUeiiRcoJFWokiOnWthAPYIqVSOn/IsUxmVVqEKEing5QzUrelWHXFI1X0DqXELZT8X1BlptUZc64xVG2VixLShr60bssJ3hkOVQKt2I6qqDh8+MRQtlZcgeb6MGOkFlsAFFVynbgzypbE6vGuljb5wqlb0FFqsOslFU8nrNrGUoDFKZ5Fw3MtkCMTMqYAUmuu6YoS//HPQOmIXIWV/UN6jgFpzxkmuB7qoUJ1xWl27VkdugYgc0zCFh0I2udKHgxtfFawu9JBGvIHgv3DmsqC/aw02P5S7rdkQOnyTRWMmlWbDFLrYZat2xuoU44YGXRnXjoLTS6zTmLZZEONtWsvCGva85qQ4L/ZV7RTK5LMFxobbq70jMcB4iOQ6EqmLVzNBXVx2pFYTlIhr7Wqsjzi7UUjyDHx/ItNx/MipyMIFsyxaKrPsubyZuCBeNB3In1M2kCrLUEWp3LJAIX88n1X3RpIgsphv7ZJg62ieR/xHi8QEFsUTKAhCJTN/1BcXANJIvkYVU4fsxKE1TNkiO3qeULWCL/0RbTvM/FPw/qJjhuAVaspwJ0t0BSgW+26nXng1yIT9LZcUZEvSgDdKgA45llQVS9KIN0uUPbsUJ2Q30pBeFHzet9B9ukKqmN50Q9lh6LFXAc28kTeqDgGeEdCFxb1rcaoQYOUOnmgtgk1O4Wh+kyRlS0F6w/BxfO2Q3HlJMGtjaGdEamyEolo9fBXMFUVvGsc8WTZmTI2a6bCHJf1lRtnUr69uMVzFm+K1lPjxuh9BZNgGODKBxMuR2b8QuhXQNovFiBa7aeyNnyfRfnB2aIqqlcv/+SKMdk5XoVMELmT5DH9CZ8I9EWy1IqU8V5uAFLozBC1qgeMVDYhOMY3vkaRAuiYZZgvJWS4QiFsHIoAMCACH5BAUbAP8ALAAAAADpAMgAAAj/AP8JHEiwoMGDCBMqXMiwocOHBUuIEAZkRJsbgSBq3Mixo8ePIEOK3LhMGaV+KFP2E4BupMuXMGPKnKlx1wWVOPuZaESzp8+fQIMS/DUhp9EhKYTGPLABBiSlUKNudFDEqNV+LnZI/ehKmAmV0CZtHUtWYAVSp65ebVFWI6mr0Fy1nQs0xDm1eBHRXZjIBt5+J/YKfskBwV+8NgYf1OHucL8QiiNzPMDI8d9RkgUyw2G5n7TMoBcOuNlZraPMPkr387UptGuCLISpxttBsqfZgF+7jkALN942kUH4rq1b8oNZlXzjpTC4FyDlI4pHdgRK+eEPe3HJs97vifS9HI5w/z/sfW4PfONbfW97oNZ4x+XLonrfD9D6scMGWKBPvu04/sDdFxUqgvAHX1nmGMicgEI58JyBB461AISlMAjUA808A6Fl8UGVCAQbBmghTZdksmFnHQqlQw4nhjLiTIigcGJpKQLFzIz9rPMiTAfMgCONUKWGYyQ7jjTNI/v9iKJSh/xIgSZFhhRIKEqqViNNNCgJQJQfOQBLlbNdGVMvBSrJE5cbQWLASWBa+RMu6lS5JZoaWVJdm2H61EObZ9LZkCQq4OmbmCM10GZGfjIUCxGCKkdoSBi0CVmiCkVzSJKN4vboR1+CSQ6lChlTZqaDylRNm9SAipACwJDK3aYbJf+SHJiGqGpQIQZQ4OqrLynQpje2GjRJG7uOB+tDQlYJQbAEqUJMse8d25ABbS7ArEC8kAAtfdIu1EGbA1z7gicsbhttSAy0mcC1DbBiLn/dItRmOzAwq0AN7xoYr0GyVSmiqrk4o2u+8Hr0CZjZMKuICwRDuO9AroBJg1IORNJKFBhnrPHGHHfscceBNuxwR98qKYJQEmgr8sqacpRKlYgCNY8+LNfs5kYt/GhBS0HJYvPPS2oEyY8aBCAUtUAn/dfDSOCYmFApKC21Wg97MGMtUCkx9dY5PYw0hCcrxQLXZKf0MDcQVuJBVCCWTfbD5RgIBBJRveJ22Q/HwB8EFUj/1eTdXD/8CH32bfUg4FM/nMR7n5DFBOJbP/zEeASUtQrkiXNErG9NoNJWAZhL/fA/f89WzQZzhS46R9Lgxs03dKmu9Oj/aKOatXvJnjTthpTrGAaD6Q407f+s4BgFkwom/M/E/zPAXzisENnyNjf/zzFqGaHV9NSzbP0/H6CNEw6WgNa99yM5MAkJAgSRSjehnb/y9wLKLzL999nfMP7r6U8w/9/xX74AKB0BvouAxTGguRCoGwVui4GvcSC0IOgaCRaLgvGzoKswaD4NkoqDmfHgB69VEBFmCoSSMWGjUMg9FbaJhYpxIZ5gGDwZgomGyrNhlXCYOx0qiYex8+GP/zjogCcY8YhITKISl8jEJvJMXkLEEQMLcQluDKFYJuDGJQphkChKMSYNAALB8qGIEnrxRASMAsviQZAzovElaqzZLQbixg3xb2w/M4VA6jiykbTNZquoFR/1NRJTKI0R/xhkwURimKSVQhOK5JZIeDC1E0TyXCEZnNQOd0lHiWQKU9tcJz0JkheM0oDfG8UpBfg9dKzSf98Dxyv1971OzNJ+36vALeVHv1JMbQS7BFJIKiM1UAaTQyIxlNQOdswIgQQel5tdM50JEmYCbQqJnObS0heMpOlRm9scyS2AxpZsgvMq/CsBJmyWiVqZ85xGASAn1rmyUyRlj/C0CgE5If8+ggliXXTMZzxlEgVRvEsUUWhNGwXaNZrYIgoAmIJEJ0rRilr0ohjNqAAGYA8oMlQlQEzdR0FKwoWOFCUhbctJzVbSgK40pWVZKUpbis+X0vSdI4UpWWTanZvyVKdj+alPZQrUrQiVpkdtaVJLulQSNvVaT2VWVIM1VVtVlSOJQEIiIkhUkRzjBvTshy6ioIMO2vQjhVBZTiywthR21SOcMKhaDODWs3JknoeRhdFqaNeNGPMwvugEX09KuzhaJhP0yGFfHwKD2YygrXNpwls1UjrVeIIuo8opRzKgnBjMpSqLbUgJuEMcsghhsg+RxHjcsQ2yhAC1DmnFe3TRp6j/IAK2DdEbfcq4Fa0RdiP44o8QtsKB0DLkr/QpZ1R8plmNBNdAS5BK05oLEd1C6BzYgcosqPsQS55oCKqIyoQY+rBY/Egc4iUvRzK7IXZE5QklO+fonvejGkilBJIQx8f2y9/+RiFk3RudIUD3I2GUdGEB7gijlISDrV4rYAPTHe1g8BUlXSMVJb2X8IhnWCWdpqTtkl3z1KqkxpV0XL5DnPU0WaWnlTRbmPue3cDEj5s6S8UisSWY3tE3mg7rbvjbBGmqRDea4irCkXuJNdoE2Zay6m0wcQ+YhnvTf4gqyTAhQJvsW2VLYWp4MrlHm6pRZYEsanYzSUabClBmgQAK/8wzeQBnqoSCNgvETtXziXiq9AM7/0NNbLrfT4RTJVv4+R9emh9QFFElF3Dx0FPaX1Bm/KPk+flIX56gUHz1ozkdWiA9OqBSPnCnGUHp0wOJ0QOhsgkB4CgwqCZIiS4oFWTMCJuxJgiGNDRCqQThRLjONUEc1GupRGJDwRY2QQi0QrLUo5v8SbayB5KfTA+xLMnYR7SnjZD2vLAtD4gvd6TNbYKEZ4d0Ccd7uFxuhFDnR9mdS6S4E7N2H+Q4s4LQgvZiCeuYwN4M4U2IFPMKYOJGuQBXSGwMVFrBKIAfuAFowhkyGvp8WDEfALBlBDHxh1DmPZiRzCZy1pkkdBwihWexjoszY2vHIODkG7GLb/Timl//hRWChblGzpKW0iA8NJHAhlq4kQ6dd4QqncmKdBIhAwKrpA0ieIHRP0KUwyDlPpo4ASMAIAAZKGKvUweJTdSyk7DHuiSBVglLzC5siVDEIhhBdUAAADs=";
/***/ })
}]);