"use strict"; (self["webpackChunk"] = self["webpackChunk"] || []).push([[36270],{ /***/ 75627: /*!****************************************!*\ !*** ./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]); }; /***/ }), /***/ 60055: /*!*******************************************************************!*\ !*** ./src/pages/Classrooms/Lists/Exercise/components/Unlock.tsx ***! \*******************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { /* harmony import */ var _root_workspace_ppte5yg23_local_v9_test4_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_test4_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_test4_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_typeof_js__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var _root_workspace_ppte5yg23_local_v9_test4_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_test4_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_test4_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1__); /* harmony import */ var _root_workspace_ppte5yg23_local_v9_test4_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_test4_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_test4_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2__); /* harmony import */ var _root_workspace_ppte5yg23_local_v9_test4_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_test4_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_test4_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 */ 61998); /* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! antd */ 73782); /* 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 */ 31591); /* 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 */ 97091); /* harmony import */ var _utils_util__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @/utils/util */ 21082); /* harmony import */ var _components_Exercise_ip__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @/components/Exercise/ip */ 55945); /* harmony import */ var _utils_authority__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @/utils/authority */ 93697); /* 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_test4_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_test4_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_test4_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_local_v9_test4_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_test4_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_test4_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_local_v9_test4_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_test4_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_test4_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)); /***/ }), /***/ 16780: /*!*****************************************************************!*\ !*** ./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__(73782); // 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.5.1@@ant-design/icons/es/icons/DownOutlined.js + 1 modules var DownOutlined = __webpack_require__(78386); // EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.5.1@@ant-design/icons/es/icons/UpOutlined.js + 1 modules var UpOutlined = __webpack_require__(20538); // EXTERNAL MODULE: ./src/pages/MyProblem/interface.ts var MyProblem_interface = __webpack_require__(44750); // 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__(70089); // EXTERNAL MODULE: ./src/components/RenderHtml/index.tsx + 2 modules var RenderHtml = __webpack_require__(18672); // EXTERNAL MODULE: ./src/utils/util.tsx var util = __webpack_require__(21082); // 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__(18030); // EXTERNAL MODULE: ./src/.umi-production/exports.ts var _umi_production_exports = __webpack_require__(97091); // 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" })] })] })] }); }); /***/ }), /***/ 42445: /*!****************************************************!*\ !*** ./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.5.1@@ant-design/icons/es/icons/FormOutlined.js + 1 modules var FormOutlined = __webpack_require__(7683); // EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.5.1@@ant-design/icons/es/icons/PoweroffOutlined.js + 1 modules var PoweroffOutlined = __webpack_require__(35423); // EXTERNAL MODULE: ./src/.umi-production/exports.ts var _umi_production_exports = __webpack_require__(97091); // 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__(40278); // EXTERNAL MODULE: ./src/service/exercise.ts var exercise = __webpack_require__(31591); // EXTERNAL MODULE: ./src/utils/fullscreen.ts var fullscreen = __webpack_require__(13275); // EXTERNAL MODULE: ./src/components/SplitContainer/index.tsx + 1 modules var SplitContainer = __webpack_require__(50040); // EXTERNAL MODULE: ./src/utils/env.ts + 1 modules var env = __webpack_require__(92723); // EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.5.1@@ant-design/icons/es/icons/ExclamationCircleOutlined.js + 1 modules var ExclamationCircleOutlined = __webpack_require__(680); // EXTERNAL MODULE: ./src/pages/Problems/OjForm/CodePanel/index.tsx + 1 modules var CodePanel = __webpack_require__(78117); // 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__(64096); ;// 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__(16780); ;// 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__(61998); // 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__(27092); // EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.5.1@@ant-design/icons/es/icons/LoadingOutlined.js + 1 modules var LoadingOutlined = __webpack_require__(42141); // EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.5.1@@ant-design/icons/es/icons/CopyOutlined.js + 1 modules var CopyOutlined = __webpack_require__(73374); // EXTERNAL MODULE: ./src/pages/MyProblem/interface.ts var MyProblem_interface = __webpack_require__(44750); // EXTERNAL MODULE: ./src/utils/util.tsx var util = __webpack_require__(21082); // EXTERNAL MODULE: ./src/components/PreviewAll/index.tsx + 3 modules var PreviewAll = __webpack_require__(51998); // EXTERNAL MODULE: ./src/utils/fetch.ts var utils_fetch = __webpack_require__(18030); // 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__(54313); // 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__(18672); ;// 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__(50021); // 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__(24808); ;// 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__(32818); ;// 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__(53802); ;// 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__(37107); ;// 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__(73782); ;// 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__(55945); // EXTERNAL MODULE: ./src/components/Timepiece/index.tsx var Timepiece = __webpack_require__(4402); // EXTERNAL MODULE: ./src/pages/Classrooms/Lists/Exercise/components/Unlock.tsx var Unlock = __webpack_require__(60055); // EXTERNAL MODULE: ./src/utils/hooks/useRemindModal.tsx var useRemindModal = __webpack_require__(74622); // EXTERNAL MODULE: ./src/components/Exercise/recordScreen.tsx + 3 modules var recordScreen = __webpack_require__(97960); // EXTERNAL MODULE: ./src/components/Hooks/index.tsx var Hooks = __webpack_require__(75627); // EXTERNAL MODULE: ./src/assets/images/question/time.svg var time = __webpack_require__(51900); // EXTERNAL MODULE: ./src/assets/images/question/title.svg var title = __webpack_require__(14858); ;// 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(); // const countDownRef2 = useRef(); 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: , // okText: "知道了" // }) // }, (exerciseData?.exercise?.left_time - 1800) * 1000) // } // if (exerciseData?.exercise?.left_time > 900) { // countDownRef.current = setTimeout(() => { // Modal.info({ // content: "当前距离考试结束还有15分钟", // icon: , // 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))] }); } /***/ }), /***/ 44750: /*!******************************************!*\ !*** ./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" # 如果提交模式 会多这个参数 /***/ }), /***/ 40278: /*!****************************************!*\ !*** ./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_test4_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_test4_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_test4_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 */ 18030); function getProgrammingTopic(id, params) { return (0,_utils_fetch_ts__WEBPACK_IMPORTED_MODULE_1__/* .get */ .U2)("myproblems/".concat(id, ".json"), _root_workspace_ppte5yg23_local_v9_test4_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); } /***/ }), /***/ 74622: /*!********************************************!*\ !*** ./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_test4_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_test4_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_test4_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_test4_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_test4_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="; /***/ }) }]);