|
|
(self["webpackChunk"] = self["webpackChunk"] || []).push([[86634,4977,72377,64768],{
|
|
|
|
|
|
/***/ 64082:
|
|
|
/*!******************************************************************************!*\
|
|
|
!*** ./node_modules/@ant-design/icons/es/icons/InboxOutlined.js + 1 modules ***!
|
|
|
\******************************************************************************/
|
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
|
|
|
// EXPORTS
|
|
|
__webpack_require__.d(__webpack_exports__, {
|
|
|
"Z": function() { return /* binding */ icons_InboxOutlined; }
|
|
|
});
|
|
|
|
|
|
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js
|
|
|
var esm_extends = __webpack_require__(87462);
|
|
|
// EXTERNAL MODULE: ./node_modules/react/index.js
|
|
|
var react = __webpack_require__(67294);
|
|
|
;// CONCATENATED MODULE: ./node_modules/@ant-design/icons-svg/es/asn/InboxOutlined.js
|
|
|
// This icon file is generated automatically.
|
|
|
var InboxOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "0 0 1024 1024", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M885.2 446.3l-.2-.8-112.2-285.1c-5-16.1-19.9-27.2-36.8-27.2H281.2c-17 0-32.1 11.3-36.9 27.6L139.4 443l-.3.7-.2.8c-1.3 4.9-1.7 9.9-1 14.8-.1 1.6-.2 3.2-.2 4.8V830a60.9 60.9 0 0060.8 60.8h627.2c33.5 0 60.8-27.3 60.9-60.8V464.1c0-1.3 0-2.6-.1-3.7.4-4.9 0-9.6-1.3-14.1zm-295.8-43l-.3 15.7c-.8 44.9-31.8 75.1-77.1 75.1-22.1 0-41.1-7.1-54.8-20.6S436 441.2 435.6 419l-.3-15.7H229.5L309 210h399.2l81.7 193.3H589.4zm-375 76.8h157.3c24.3 57.1 76 90.8 140.4 90.8 33.7 0 65-9.4 90.3-27.2 22.2-15.6 39.5-37.4 50.7-63.6h156.5V814H214.4V480.1z" } }] }, "name": "inbox", "theme": "outlined" };
|
|
|
/* harmony default export */ var asn_InboxOutlined = (InboxOutlined);
|
|
|
|
|
|
// EXTERNAL MODULE: ./node_modules/@ant-design/icons/es/components/AntdIcon.js + 8 modules
|
|
|
var AntdIcon = __webpack_require__(74643);
|
|
|
;// CONCATENATED MODULE: ./node_modules/@ant-design/icons/es/icons/InboxOutlined.js
|
|
|
|
|
|
// GENERATE BY ./scripts/generate.ts
|
|
|
// DON NOT EDIT IT MANUALLY
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var InboxOutlined_InboxOutlined = function InboxOutlined(props, ref) {
|
|
|
return /*#__PURE__*/react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
|
|
|
ref: ref,
|
|
|
icon: asn_InboxOutlined
|
|
|
}));
|
|
|
};
|
|
|
if (false) {}
|
|
|
/* harmony default export */ var icons_InboxOutlined = (/*#__PURE__*/react.forwardRef(InboxOutlined_InboxOutlined));
|
|
|
|
|
|
/***/ }),
|
|
|
|
|
|
/***/ 81088:
|
|
|
/*!*********************************************************************************!*\
|
|
|
!*** ./node_modules/@ant-design/icons/es/icons/PoweroffOutlined.js + 1 modules ***!
|
|
|
\*********************************************************************************/
|
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
|
|
|
// EXPORTS
|
|
|
__webpack_require__.d(__webpack_exports__, {
|
|
|
"Z": function() { return /* binding */ icons_PoweroffOutlined; }
|
|
|
});
|
|
|
|
|
|
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js
|
|
|
var esm_extends = __webpack_require__(87462);
|
|
|
// EXTERNAL MODULE: ./node_modules/react/index.js
|
|
|
var react = __webpack_require__(67294);
|
|
|
;// CONCATENATED MODULE: ./node_modules/@ant-design/icons-svg/es/asn/PoweroffOutlined.js
|
|
|
// This icon file is generated automatically.
|
|
|
var PoweroffOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M705.6 124.9a8 8 0 00-11.6 7.2v64.2c0 5.5 2.9 10.6 7.5 13.6a352.2 352.2 0 0162.2 49.8c32.7 32.8 58.4 70.9 76.3 113.3a355 355 0 0127.9 138.7c0 48.1-9.4 94.8-27.9 138.7a355.92 355.92 0 01-76.3 113.3 353.06 353.06 0 01-113.2 76.4c-43.8 18.6-90.5 28-138.5 28s-94.7-9.4-138.5-28a353.06 353.06 0 01-113.2-76.4A355.92 355.92 0 01184 650.4a355 355 0 01-27.9-138.7c0-48.1 9.4-94.8 27.9-138.7 17.9-42.4 43.6-80.5 76.3-113.3 19-19 39.8-35.6 62.2-49.8 4.7-2.9 7.5-8.1 7.5-13.6V132c0-6-6.3-9.8-11.6-7.2C178.5 195.2 82 339.3 80 506.3 77.2 745.1 272.5 943.5 511.2 944c239 .5 432.8-193.3 432.8-432.4 0-169.2-97-315.7-238.4-386.7zM480 560h64c4.4 0 8-3.6 8-8V88c0-4.4-3.6-8-8-8h-64c-4.4 0-8 3.6-8 8v464c0 4.4 3.6 8 8 8z" } }] }, "name": "poweroff", "theme": "outlined" };
|
|
|
/* harmony default export */ var asn_PoweroffOutlined = (PoweroffOutlined);
|
|
|
|
|
|
// EXTERNAL MODULE: ./node_modules/@ant-design/icons/es/components/AntdIcon.js + 8 modules
|
|
|
var AntdIcon = __webpack_require__(74643);
|
|
|
;// CONCATENATED MODULE: ./node_modules/@ant-design/icons/es/icons/PoweroffOutlined.js
|
|
|
|
|
|
// GENERATE BY ./scripts/generate.ts
|
|
|
// DON NOT EDIT IT MANUALLY
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var PoweroffOutlined_PoweroffOutlined = function PoweroffOutlined(props, ref) {
|
|
|
return /*#__PURE__*/react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
|
|
|
ref: ref,
|
|
|
icon: asn_PoweroffOutlined
|
|
|
}));
|
|
|
};
|
|
|
if (false) {}
|
|
|
/* harmony default export */ var icons_PoweroffOutlined = (/*#__PURE__*/react.forwardRef(PoweroffOutlined_PoweroffOutlined));
|
|
|
|
|
|
/***/ }),
|
|
|
|
|
|
/***/ 64768:
|
|
|
/*!**********************************************************!*\
|
|
|
!*** ./src/components/MultiUpload/index.tsx + 3 modules ***!
|
|
|
\**********************************************************/
|
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
|
|
|
// EXPORTS
|
|
|
__webpack_require__.d(__webpack_exports__, {
|
|
|
"z": function() { return /* binding */ coverToFileList; },
|
|
|
"Z": function() { return /* binding */ MultiUpload; }
|
|
|
});
|
|
|
|
|
|
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/regeneratorRuntime.js
|
|
|
var regeneratorRuntime = __webpack_require__(17061);
|
|
|
var regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(regeneratorRuntime);
|
|
|
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/asyncToGenerator.js
|
|
|
var asyncToGenerator = __webpack_require__(17156);
|
|
|
var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator);
|
|
|
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/objectSpread2.js
|
|
|
var objectSpread2 = __webpack_require__(42122);
|
|
|
var objectSpread2_default = /*#__PURE__*/__webpack_require__.n(objectSpread2);
|
|
|
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/toConsumableArray.js
|
|
|
var toConsumableArray = __webpack_require__(861);
|
|
|
var toConsumableArray_default = /*#__PURE__*/__webpack_require__.n(toConsumableArray);
|
|
|
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/slicedToArray.js
|
|
|
var slicedToArray = __webpack_require__(27424);
|
|
|
var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);
|
|
|
// EXTERNAL MODULE: ./node_modules/react/index.js
|
|
|
var react = __webpack_require__(67294);
|
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/upload/index.js + 24 modules
|
|
|
var upload = __webpack_require__(31365);
|
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/message/index.js + 4 modules
|
|
|
var es_message = __webpack_require__(2453);
|
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/modal/index.js + 39 modules
|
|
|
var modal = __webpack_require__(72423);
|
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/button/index.js
|
|
|
var es_button = __webpack_require__(71577);
|
|
|
// EXTERNAL MODULE: ./src/utils/env.ts + 1 modules
|
|
|
var env = __webpack_require__(59758);
|
|
|
// EXTERNAL MODULE: ./src/pages/MoopCases/FormPanel/service.ts
|
|
|
var service = __webpack_require__(39507);
|
|
|
// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
|
|
|
var jsx_runtime = __webpack_require__(85893);
|
|
|
;// CONCATENATED MODULE: ./src/components/SingleUpload/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var uploadNameSizeSeperator = ' ';
|
|
|
function bytesToSize(bytes) {
|
|
|
var sizes = ['Bytes', 'KB', 'MB', 'GB', 'TB'];
|
|
|
if (bytes == 0) return '0 Byte';
|
|
|
var i = parseInt('' + Math.floor(Math.log(bytes) / Math.log(1024)), 10);
|
|
|
return (bytes / Math.pow(1024, i)).toFixed(1) + ' ' + sizes[i];
|
|
|
}
|
|
|
/* harmony default export */ var SingleUpload = (function (_ref) {
|
|
|
var _ref$value = _ref.value,
|
|
|
value = _ref$value === void 0 ? [] : _ref$value,
|
|
|
action = _ref.action,
|
|
|
_onChange = _ref.onChange,
|
|
|
className = _ref.className,
|
|
|
_ref$maxSize = _ref.maxSize,
|
|
|
maxSize = _ref$maxSize === void 0 ? 150 : _ref$maxSize,
|
|
|
_ref$title = _ref.title,
|
|
|
title = _ref$title === void 0 ? '文件上传' : _ref$title,
|
|
|
_ref$accept = _ref.accept,
|
|
|
accept = _ref$accept === void 0 ? null : _ref$accept;
|
|
|
var uploadProps = {
|
|
|
multiple: false,
|
|
|
fileList: value,
|
|
|
accept: accept,
|
|
|
withCredentials: true,
|
|
|
beforeUpload: function beforeUpload(file) {
|
|
|
var fileSize = file.size / 1024 / 1024;
|
|
|
if (!(fileSize < maxSize)) {
|
|
|
message.error("\u8BE5\u6587\u4EF6\u65E0\u6CD5\u4E0A\u4F20\u3002\u8D85\u8FC7\u6587\u4EF6\u5927\u5C0F\u9650\u5236(".concat(maxSize, "MB),\u5EFA\u8BAE\u4E0A\u4F20\u5230\u767E\u5EA6\u4E91\u7B49\u5176\u5B83\u5171\u4EAB\u5DE5\u5177\u91CC\uFF0C\u7136\u540E\u518Dtxt\u6587\u6863\u91CC\u7ED9\u51FA\u94FE\u63A5\u4EE5\u53CA\u5171\u4EAB\u5BC6\u7801\u5E76\u4E0A\u4F20"));
|
|
|
return Promise.reject();
|
|
|
}
|
|
|
return true;
|
|
|
},
|
|
|
action: "".concat(ENV.API_SERVER, "/api/attachments.json"),
|
|
|
// ?debug=student&randomcode=undefined&client_key=6d57f8c3dd186c5ada392546ace9620a
|
|
|
onChange: function onChange(info) {
|
|
|
var _info$file, _info$file$response;
|
|
|
var fileList = _toConsumableArray(info.fileList);
|
|
|
fileList = fileList.map(function (file) {
|
|
|
if (file.name.indexOf(uploadNameSizeSeperator) === -1) {
|
|
|
file.name = "".concat(file.name).concat(uploadNameSizeSeperator).concat(bytesToSize(file.size));
|
|
|
}
|
|
|
return _objectSpread({}, file);
|
|
|
});
|
|
|
if (info.file.status === 'done' && ((_info$file = info.file) === null || _info$file === void 0 ? void 0 : (_info$file$response = _info$file.response) === null || _info$file$response === void 0 ? void 0 : _info$file$response.status) === -1) {
|
|
|
var _info$file2, _info$file2$response;
|
|
|
message.error((_info$file2 = info.file) === null || _info$file2 === void 0 ? void 0 : (_info$file2$response = _info$file2.response) === null || _info$file2$response === void 0 ? void 0 : _info$file2$response.message);
|
|
|
_onChange([]);
|
|
|
return;
|
|
|
}
|
|
|
_onChange(fileList);
|
|
|
},
|
|
|
onRemove: function () {
|
|
|
var _onRemove = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(file) {
|
|
|
var fileSize, id, rs;
|
|
|
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
|
while (1) switch (_context.prev = _context.next) {
|
|
|
case 0:
|
|
|
fileSize = file.size / 1024 / 1024;
|
|
|
if (!(file.status === 'uploading')) {
|
|
|
_context.next = 3;
|
|
|
break;
|
|
|
}
|
|
|
return _context.abrupt("return", true);
|
|
|
case 3:
|
|
|
if (fileSize < maxSize) {
|
|
|
_context.next = 7;
|
|
|
break;
|
|
|
}
|
|
|
return _context.abrupt("return", true);
|
|
|
case 7:
|
|
|
id = file.response ? file.response.id : file.uid;
|
|
|
if (!id) {
|
|
|
_context.next = 15;
|
|
|
break;
|
|
|
}
|
|
|
_context.next = 11;
|
|
|
return removeAttachment(file.response ? file.response.id : file.id);
|
|
|
case 11:
|
|
|
rs = _context.sent;
|
|
|
return _context.abrupt("return", rs);
|
|
|
case 15:
|
|
|
return _context.abrupt("return", true);
|
|
|
case 16:
|
|
|
case "end":
|
|
|
return _context.stop();
|
|
|
}
|
|
|
}, _callee);
|
|
|
}));
|
|
|
function onRemove(_x) {
|
|
|
return _onRemove.apply(this, arguments);
|
|
|
}
|
|
|
return onRemove;
|
|
|
}()
|
|
|
};
|
|
|
function onCancel(e) {
|
|
|
e.preventDefault();
|
|
|
e.stopPropagation();
|
|
|
}
|
|
|
return /*#__PURE__*/_jsx("div", {
|
|
|
className: "single-upload ".concat(className ? className : ''),
|
|
|
children: /*#__PURE__*/_jsxs(Upload, _objectSpread(_objectSpread({}, uploadProps), {}, {
|
|
|
children: [/*#__PURE__*/_jsx(Button, {
|
|
|
type: "primary",
|
|
|
title: value.length > 0 ? '每次只能上传一个资源, 删除下面资源可重新上传 ' : '',
|
|
|
disabled: value.length > 0,
|
|
|
ghost: true,
|
|
|
children: title
|
|
|
}), /*#__PURE__*/_jsxs("span", {
|
|
|
onClick: onCancel,
|
|
|
style: {
|
|
|
marginLeft: 10
|
|
|
},
|
|
|
children: ["(\u5355\u4E2A\u6587\u4EF6\u6700\u5927", maxSize, "M)", ' ']
|
|
|
})]
|
|
|
}))
|
|
|
});
|
|
|
});
|
|
|
// EXTERNAL MODULE: ./node_modules/@ant-design/icons/es/icons/InboxOutlined.js + 1 modules
|
|
|
var InboxOutlined = __webpack_require__(64082);
|
|
|
// EXTERNAL MODULE: ./node_modules/lodash/lodash.js
|
|
|
var lodash = __webpack_require__(96486);
|
|
|
;// CONCATENATED MODULE: ./src/components/MultiUpload/index.less
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
|
|
|
;// CONCATENATED MODULE: ./src/assets/images/uploadImg.svg
|
|
|
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
|
|
|
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
|
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
|
var __defProp = Object.defineProperty;
|
|
|
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
|
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
|
var __propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
|
var __defNormalProp = function __defNormalProp(obj, key, value) {
|
|
|
return key in obj ? __defProp(obj, key, {
|
|
|
enumerable: true,
|
|
|
configurable: true,
|
|
|
writable: true,
|
|
|
value: value
|
|
|
}) : obj[key] = value;
|
|
|
};
|
|
|
var __spreadValues = function __spreadValues(a, b) {
|
|
|
for (var prop in b || (b = {})) if (__hasOwnProp.call(b, prop)) __defNormalProp(a, prop, b[prop]);
|
|
|
if (__getOwnPropSymbols) {
|
|
|
var _iterator = _createForOfIteratorHelper(__getOwnPropSymbols(b)),
|
|
|
_step;
|
|
|
try {
|
|
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
|
var prop = _step.value;
|
|
|
if (__propIsEnum.call(b, prop)) __defNormalProp(a, prop, b[prop]);
|
|
|
}
|
|
|
} catch (err) {
|
|
|
_iterator.e(err);
|
|
|
} finally {
|
|
|
_iterator.f();
|
|
|
}
|
|
|
}
|
|
|
return a;
|
|
|
};
|
|
|
|
|
|
var SvgUploadImg = function SvgUploadImg(props) {
|
|
|
return /* @__PURE__ */React.createElement("svg", __spreadValues({
|
|
|
width: 14,
|
|
|
height: 14,
|
|
|
xmlns: "http://www.w3.org/2000/svg"
|
|
|
}, props), /* @__PURE__ */React.createElement("title", null, "\u5F62\u72B6"), /* @__PURE__ */React.createElement("path", {
|
|
|
d: "M10.354 3.5h-2.77v8.167H6.416V3.5H3.646L7 0l3.354 3.5ZM14 7h-1.167v5.833H1.167V7H0v7h14V7Z",
|
|
|
fill: "#3061D0",
|
|
|
fillRule: "nonzero"
|
|
|
}));
|
|
|
};
|
|
|
|
|
|
/* harmony default export */ var uploadImg = ("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEwLjM1NCAzLjVoLTIuNzd2OC4xNjdINi40MTZWMy41SDMuNjQ2TDcgMGwzLjM1NCAzLjVaTTE0IDdoLTEuMTY3djUuODMzSDEuMTY3VjdIMHY3aDE0VjdaIiBmaWxsPSIjMzA2MUQwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz48L3N2Zz4=");
|
|
|
;// CONCATENATED MODULE: ./src/components/MultiUpload/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var Dragger = upload/* default.Dragger */.Z.Dragger;
|
|
|
function coverToFileList(data) {
|
|
|
var rs = [];
|
|
|
if (data && data.length > 0) {
|
|
|
rs = data.map(function (item) {
|
|
|
return {
|
|
|
uid: item.id,
|
|
|
id: item.id,
|
|
|
name: item.title + uploadNameSizeSeperator + item.filesize,
|
|
|
url: item.url,
|
|
|
filesize: item.filesize,
|
|
|
status: 'done',
|
|
|
response: {
|
|
|
id: item.id
|
|
|
}
|
|
|
};
|
|
|
});
|
|
|
}
|
|
|
return rs;
|
|
|
}
|
|
|
/* harmony default export */ var MultiUpload = (function (_ref) {
|
|
|
var value = _ref.value,
|
|
|
_onChange = _ref.onChange,
|
|
|
action = _ref.action,
|
|
|
data = _ref.data,
|
|
|
className = _ref.className,
|
|
|
_ref$maxSize = _ref.maxSize,
|
|
|
maxSize = _ref$maxSize === void 0 ? 150 : _ref$maxSize,
|
|
|
_ref$title = _ref.title,
|
|
|
title = _ref$title === void 0 ? '上传附件' : _ref$title,
|
|
|
_ref$showRemoveModal = _ref.showRemoveModal,
|
|
|
showRemoveModal = _ref$showRemoveModal === void 0 ? false : _ref$showRemoveModal,
|
|
|
_ref$accept = _ref.accept,
|
|
|
accept = _ref$accept === void 0 ? '' : _ref$accept,
|
|
|
additionalText = _ref.additionalText,
|
|
|
isDragger = _ref.isDragger,
|
|
|
_ref$number = _ref.number,
|
|
|
number = _ref$number === void 0 ? 1000 : _ref$number,
|
|
|
_ref$aloneClear = _ref.aloneClear,
|
|
|
aloneClear = _ref$aloneClear === void 0 ? false : _ref$aloneClear;
|
|
|
var _useState = (0,react.useState)(false),
|
|
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
|
disabled = _useState2[0],
|
|
|
setDisabled = _useState2[1];
|
|
|
var _useState3 = (0,react.useState)(value || []),
|
|
|
_useState4 = slicedToArray_default()(_useState3, 2),
|
|
|
fileList = _useState4[0],
|
|
|
setFileList = _useState4[1];
|
|
|
var _useState5 = (0,react.useState)(1),
|
|
|
_useState6 = slicedToArray_default()(_useState5, 2),
|
|
|
nums = _useState6[0],
|
|
|
setnums = _useState6[1];
|
|
|
(0,react.useEffect)(function () {
|
|
|
if (value) {
|
|
|
if (nums === 1) {
|
|
|
setFileList(toConsumableArray_default()(value));
|
|
|
}
|
|
|
setnums(2);
|
|
|
if (number === (value === null || value === void 0 ? void 0 : value.length)) {
|
|
|
setDisabled(true);
|
|
|
}
|
|
|
}
|
|
|
}, [value]);
|
|
|
var clearLastFile = function clearLastFile() {
|
|
|
setTimeout(function () {
|
|
|
fileList.pop();
|
|
|
setFileList(toConsumableArray_default()(fileList));
|
|
|
}, 500);
|
|
|
};
|
|
|
var uploadProps = {
|
|
|
multiple: true,
|
|
|
disabled: disabled,
|
|
|
accept: accept,
|
|
|
withCredentials: true,
|
|
|
fileList: fileList,
|
|
|
// fileList: fileList?.length ? fileList : value,
|
|
|
beforeUpload: function beforeUpload(file, fileArr) {
|
|
|
var fileSize = file.size / 1024 / 1024;
|
|
|
if (fileList.concat(fileArr).length > number) {
|
|
|
fileList.pop();
|
|
|
setFileList(toConsumableArray_default()(fileList));
|
|
|
es_message/* default.error */.ZP.error("\u6700\u591A\u53EA\u80FD\u4E0A\u4F20".concat(number, "\u4E2A\u6587\u4EF6"));
|
|
|
if (aloneClear) {
|
|
|
return Promise.reject();
|
|
|
}
|
|
|
clearLastFile();
|
|
|
return false;
|
|
|
}
|
|
|
if (!(fileSize < maxSize)) {
|
|
|
es_message/* default.error */.ZP.error("\u8BE5\u6587\u4EF6\u65E0\u6CD5\u4E0A\u4F20\u3002\u8D85\u8FC7\u6587\u4EF6\u5927\u5C0F\u9650\u5236(".concat(maxSize, "MB)."));
|
|
|
if (aloneClear) {
|
|
|
return Promise.reject();
|
|
|
}
|
|
|
clearLastFile();
|
|
|
return false;
|
|
|
}
|
|
|
return true;
|
|
|
},
|
|
|
data: data,
|
|
|
action: action || "".concat(env/* default.API_SERVER */.Z.API_SERVER, "/api/attachments.json"),
|
|
|
// ?debug=student&randomcode=undefined&client_key=6d57f8c3dd186c5ada392546ace9620a
|
|
|
onChange: function onChange(info) {
|
|
|
var _info$file, _info$file$response;
|
|
|
if (info.file.status === "removed") {
|
|
|
fileList = info.fileList;
|
|
|
} else {
|
|
|
fileList = (0,lodash.uniqBy)([].concat(toConsumableArray_default()(info.fileList), toConsumableArray_default()(fileList)), 'uid');
|
|
|
}
|
|
|
if (info.file.status === 'done' && ((_info$file = info.file) === null || _info$file === void 0 ? void 0 : (_info$file$response = _info$file.response) === null || _info$file$response === void 0 ? void 0 : _info$file$response.status) === -1) {
|
|
|
var _info$file2, _info$file2$response;
|
|
|
es_message/* default.error */.ZP.error((_info$file2 = info.file) === null || _info$file2 === void 0 ? void 0 : (_info$file2$response = _info$file2.response) === null || _info$file2$response === void 0 ? void 0 : _info$file2$response.message);
|
|
|
return;
|
|
|
}
|
|
|
if (fileList.length >= number) setDisabled(true);else setDisabled(false);
|
|
|
setFileList(toConsumableArray_default()(fileList));
|
|
|
fileList = fileList.map(function (file) {
|
|
|
var _file$response;
|
|
|
if (file !== null && file !== void 0 && (_file$response = file.response) !== null && _file$response !== void 0 && _file$response.id) {
|
|
|
var _file$response2;
|
|
|
file.url = "/api/attachments/".concat(file === null || file === void 0 ? void 0 : (_file$response2 = file.response) === null || _file$response2 === void 0 ? void 0 : _file$response2.id);
|
|
|
}
|
|
|
if (file.name.indexOf(uploadNameSizeSeperator) === -1) {
|
|
|
file.name = "".concat(file.name).concat(uploadNameSizeSeperator).concat(bytesToSize(file.size));
|
|
|
}
|
|
|
return objectSpread2_default()({}, file);
|
|
|
});
|
|
|
console.log('info:', info, fileList);
|
|
|
_onChange(fileList);
|
|
|
},
|
|
|
onRemove: function () {
|
|
|
var _onRemove = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee3(file) {
|
|
|
var remove;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee3$(_context3) {
|
|
|
while (1) switch (_context3.prev = _context3.next) {
|
|
|
case 0:
|
|
|
remove = /*#__PURE__*/function () {
|
|
|
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
|
|
|
var id, rs;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
|
|
|
while (1) switch (_context.prev = _context.next) {
|
|
|
case 0:
|
|
|
id = file.response ? file.response.id : file.id;
|
|
|
if (!id) {
|
|
|
_context.next = 8;
|
|
|
break;
|
|
|
}
|
|
|
_context.next = 4;
|
|
|
return (0,service/* removeAttachment */.JZ)(file.response ? file.response.id : file.uid);
|
|
|
case 4:
|
|
|
rs = _context.sent;
|
|
|
return _context.abrupt("return", Promise.resolve(rs));
|
|
|
case 8:
|
|
|
return _context.abrupt("return", true);
|
|
|
case 9:
|
|
|
case "end":
|
|
|
return _context.stop();
|
|
|
}
|
|
|
}, _callee);
|
|
|
}));
|
|
|
return function remove() {
|
|
|
return _ref2.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
if (!showRemoveModal) {
|
|
|
_context3.next = 5;
|
|
|
break;
|
|
|
}
|
|
|
return _context3.abrupt("return", new Promise(function (resolve, reject) {
|
|
|
modal/* default.confirm */.Z.confirm({
|
|
|
centered: true,
|
|
|
width: 530,
|
|
|
okText: '确定',
|
|
|
cancelText: '取消',
|
|
|
title: '提示',
|
|
|
content: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: "tc font16",
|
|
|
children: "\u662F\u5426\u786E\u8BA4\u5220\u9664?"
|
|
|
}),
|
|
|
onOk: function () {
|
|
|
var _onOk = 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 remove();
|
|
|
case 2:
|
|
|
res = _context2.sent;
|
|
|
es_message/* default.success */.ZP.success('删除成功');
|
|
|
resolve(true);
|
|
|
case 5:
|
|
|
case "end":
|
|
|
return _context2.stop();
|
|
|
}
|
|
|
}, _callee2);
|
|
|
}));
|
|
|
function onOk() {
|
|
|
return _onOk.apply(this, arguments);
|
|
|
}
|
|
|
return onOk;
|
|
|
}(),
|
|
|
onCancel: function onCancel() {
|
|
|
return resolve(false);
|
|
|
}
|
|
|
});
|
|
|
}));
|
|
|
case 5:
|
|
|
_context3.next = 7;
|
|
|
return remove();
|
|
|
case 7:
|
|
|
return _context3.abrupt("return", _context3.sent);
|
|
|
case 8:
|
|
|
case "end":
|
|
|
return _context3.stop();
|
|
|
}
|
|
|
}, _callee3);
|
|
|
}));
|
|
|
function onRemove(_x) {
|
|
|
return _onRemove.apply(this, arguments);
|
|
|
}
|
|
|
return onRemove;
|
|
|
}()
|
|
|
};
|
|
|
function onCancel(e) {
|
|
|
e.preventDefault();
|
|
|
e.stopPropagation();
|
|
|
}
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: "multi-upload ".concat(className ? className : ''),
|
|
|
children: [isDragger && /*#__PURE__*/(0,jsx_runtime.jsxs)(Dragger, objectSpread2_default()(objectSpread2_default()({}, uploadProps), {}, {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("p", {
|
|
|
className: "ant-upload-drag-icon",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(InboxOutlined/* default */.Z, {})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
|
|
|
className: "ant-upload-text",
|
|
|
children: ["\u70B9\u51FB\u4E0A\u4F20\u56FE\u6807\uFF0C\u9009\u62E9\u8981\u4E0A\u4F20\u7684\u6587\u4EF6\u6216\u5C06\u6587\u4EF6\u62D6\u62FD\u5230\u6B64", /*#__PURE__*/(0,jsx_runtime.jsx)("br", {}), "(\u5355\u4E2A\u6587\u4EF6\u6700\u5927\u9650\u5236\u4E3A", maxSize, "MB)", ' ']
|
|
|
}), additionalText]
|
|
|
})), !isDragger && /*#__PURE__*/(0,jsx_runtime.jsxs)(upload/* default */.Z, objectSpread2_default()(objectSpread2_default()({}, uploadProps), {}, {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(es_button/* default */.ZP, {
|
|
|
disabled: disabled,
|
|
|
className: "upload_button",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("img", {
|
|
|
className: "aBtn_img",
|
|
|
src: uploadImg
|
|
|
}), title]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
onClick: onCancel,
|
|
|
className: "upload_text",
|
|
|
children: ["(\u5355\u4E2A\u6587\u4EF6\u6700\u5927", maxSize, "MB)", ' ']
|
|
|
})]
|
|
|
}))]
|
|
|
});
|
|
|
});
|
|
|
|
|
|
/***/ }),
|
|
|
|
|
|
/***/ 3842:
|
|
|
/*!*********************************************!*\
|
|
|
!*** ./src/components/SelectUser/index.tsx ***!
|
|
|
\*********************************************/
|
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/regeneratorRuntime.js */ 17061);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0__);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_toConsumableArray_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/toConsumableArray.js */ 861);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_toConsumableArray_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_toConsumableArray_js__WEBPACK_IMPORTED_MODULE_1__);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/asyncToGenerator.js */ 17156);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2__);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/slicedToArray.js */ 27424);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3__);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/objectSpread2.js */ 42122);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_4__);
|
|
|
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! react */ 67294);
|
|
|
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! antd */ 25159);
|
|
|
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! antd */ 71230);
|
|
|
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! antd */ 79035);
|
|
|
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! antd */ 79531);
|
|
|
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! antd */ 49288);
|
|
|
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! antd */ 71577);
|
|
|
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! antd */ 84567);
|
|
|
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! antd */ 83062);
|
|
|
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! antd */ 2453);
|
|
|
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! antd */ 63889);
|
|
|
/* harmony import */ var umi__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! umi */ 89214);
|
|
|
/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! moment */ 94699);
|
|
|
/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(moment__WEBPACK_IMPORTED_MODULE_7__);
|
|
|
/* harmony import */ var react_infinite_scroller__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! react-infinite-scroller */ 246);
|
|
|
/* harmony import */ var react_infinite_scroller__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(react_infinite_scroller__WEBPACK_IMPORTED_MODULE_8__);
|
|
|
/* harmony import */ var _assets_images_icons_search_png__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @/assets/images/icons/search.png */ 58143);
|
|
|
/* harmony import */ var _service_classrooms__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @/service/classrooms */ 73290);
|
|
|
/* harmony import */ var _components_ui_customization__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @/components/ui-customization */ 72377);
|
|
|
/* harmony import */ var _components_ui_customization_reset_less_modules__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! @/components/ui-customization/reset.less?modules */ 39132);
|
|
|
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! react/jsx-runtime */ 85893);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var no_data = [];
|
|
|
function SearchForm(_ref) {
|
|
|
var onSearch = _ref.onSearch,
|
|
|
schools = _ref.schools;
|
|
|
return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)(antd__WEBPACK_IMPORTED_MODULE_14__/* ["default"] */ .Z, {
|
|
|
colon: false,
|
|
|
layout: "horizontal",
|
|
|
onFinish: onSearch,
|
|
|
initialValues: {
|
|
|
keyword: '',
|
|
|
school_name: '',
|
|
|
search_type: '1'
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsxs)(antd__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .Z, {
|
|
|
style: {
|
|
|
flexWrap: 'nowrap'
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)(antd__WEBPACK_IMPORTED_MODULE_14__/* ["default"].Item */ .Z.Item, {
|
|
|
name: "search_type",
|
|
|
label: "\u641C\u7D22\u7C7B\u578B",
|
|
|
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsxs)(antd__WEBPACK_IMPORTED_MODULE_16__/* ["default"] */ .Z, {
|
|
|
popupClassName: _components_ui_customization_reset_less_modules__WEBPACK_IMPORTED_MODULE_12__/* ["default"].selectdown */ .Z.selectdown,
|
|
|
style: {
|
|
|
width: 106
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)(antd__WEBPACK_IMPORTED_MODULE_16__/* ["default"].Option */ .Z.Option, {
|
|
|
value: "1",
|
|
|
children: "\u59D3\u540D"
|
|
|
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)(antd__WEBPACK_IMPORTED_MODULE_16__/* ["default"].Option */ .Z.Option, {
|
|
|
value: "2",
|
|
|
children: "\u624B\u673A\u53F7"
|
|
|
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)(antd__WEBPACK_IMPORTED_MODULE_16__/* ["default"].Option */ .Z.Option, {
|
|
|
value: "3",
|
|
|
children: "\u90AE\u7BB1"
|
|
|
})]
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)(antd__WEBPACK_IMPORTED_MODULE_14__/* ["default"].Item */ .Z.Item, {
|
|
|
style: {
|
|
|
marginLeft: 20
|
|
|
},
|
|
|
label: "\u641C\u7D22\u5185\u5BB9",
|
|
|
name: "keyword",
|
|
|
rules: [{
|
|
|
required: true,
|
|
|
message: '请输入搜索内容'
|
|
|
}],
|
|
|
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)(antd__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .Z, {
|
|
|
allowClear: true,
|
|
|
style: {
|
|
|
width: 300
|
|
|
},
|
|
|
size: "middle"
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)(antd__WEBPACK_IMPORTED_MODULE_14__/* ["default"].Item */ .Z.Item, {
|
|
|
style: {
|
|
|
marginLeft: 20
|
|
|
},
|
|
|
label: "\u5355\u4F4D",
|
|
|
name: "school_name",
|
|
|
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)(antd__WEBPACK_IMPORTED_MODULE_18__/* ["default"] */ .Z, {
|
|
|
options: schools,
|
|
|
style: {
|
|
|
width: 300
|
|
|
},
|
|
|
size: "middle",
|
|
|
showSearch: true,
|
|
|
filterOption: function filterOption(inputValue, option) {
|
|
|
return option.value.toUpperCase().indexOf(inputValue.toUpperCase()) !== -1;
|
|
|
},
|
|
|
placeholder: "\u8BF7\u8F93\u5165\u5355\u4F4D\u540D\u79F0"
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)(antd__WEBPACK_IMPORTED_MODULE_19__/* ["default"] */ .ZP, {
|
|
|
type: "primary",
|
|
|
style: {
|
|
|
background: '#F6F7F9 linear-gradient(180deg, #FFFFFF 0%, #F6F7F9 100%)',
|
|
|
boxShadow: '0px 2px 4px 0px #E0DFE1, inset 0px 1px 3px 0px rgba(255,255,255,0.5)',
|
|
|
borderRadius: 16,
|
|
|
color: '#165DFF',
|
|
|
marginLeft: 40,
|
|
|
border: '1px solid #BACFFE'
|
|
|
},
|
|
|
htmlType: "submit",
|
|
|
children: "\u641C\u7D22"
|
|
|
})]
|
|
|
})
|
|
|
});
|
|
|
}
|
|
|
var Types = /*#__PURE__*/function (Types) {
|
|
|
Types[Types["INITDATA"] = 0] = "INITDATA";
|
|
|
Types[Types["INITSCHOOLS"] = 1] = "INITSCHOOLS";
|
|
|
Types[Types["SHOWLOADING"] = 2] = "SHOWLOADING";
|
|
|
Types[Types["SELECTEDIDS"] = 3] = "SELECTEDIDS";
|
|
|
Types[Types["SETQUERY"] = 4] = "SETQUERY";
|
|
|
Types[Types["SETPAGE"] = 5] = "SETPAGE";
|
|
|
return Types;
|
|
|
}(Types || {});
|
|
|
function reducer(state, action) {
|
|
|
switch (action.type) {
|
|
|
case Types.INITDATA:
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_4___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_4___default()({}, state), action.payload);
|
|
|
case Types.SETQUERY:
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_4___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_4___default()({}, state), action.payload);
|
|
|
case Types.SETPAGE:
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_4___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_4___default()({}, state), {}, {
|
|
|
page: action.payload,
|
|
|
reload: false
|
|
|
});
|
|
|
case Types.SHOWLOADING:
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_4___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_4___default()({}, state), {}, {
|
|
|
loading: action.payload
|
|
|
});
|
|
|
case Types.INITSCHOOLS:
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_4___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_4___default()({}, state), {}, {
|
|
|
schools: action.payload
|
|
|
});
|
|
|
case Types.SELECTEDIDS:
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_4___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_4___default()({}, state), {}, {
|
|
|
selectedIds: action.payload
|
|
|
});
|
|
|
default:
|
|
|
throw new Error();
|
|
|
}
|
|
|
}
|
|
|
var initialState = {
|
|
|
data: [],
|
|
|
schools: [],
|
|
|
loading: false,
|
|
|
selectedIds: [],
|
|
|
query: null,
|
|
|
page: 1,
|
|
|
count: 0,
|
|
|
reload: false
|
|
|
};
|
|
|
/* harmony default export */ __webpack_exports__["Z"] = (function (_ref2) {
|
|
|
var onSelect = _ref2.onSelect,
|
|
|
onCancel = _ref2.onCancel,
|
|
|
container_id = _ref2.container_id,
|
|
|
container_type = _ref2.container_type;
|
|
|
var _useReducer = (0,react__WEBPACK_IMPORTED_MODULE_5__.useReducer)(reducer, initialState),
|
|
|
_useReducer2 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_3___default()(_useReducer, 2),
|
|
|
state = _useReducer2[0],
|
|
|
dispatch = _useReducer2[1];
|
|
|
var data = state.data,
|
|
|
schools = state.schools,
|
|
|
loading = state.loading,
|
|
|
selectedIds = state.selectedIds,
|
|
|
page = state.page,
|
|
|
count = state.count,
|
|
|
query = state.query,
|
|
|
reload = state.reload;
|
|
|
(0,react__WEBPACK_IMPORTED_MODULE_5__.useEffect)(function () {
|
|
|
function init() {
|
|
|
return _init.apply(this, arguments);
|
|
|
}
|
|
|
function _init() {
|
|
|
_init = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee() {
|
|
|
var _yield$searchSchoolTe, users, user_count;
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee$(_context) {
|
|
|
while (1) switch (_context.prev = _context.next) {
|
|
|
case 0:
|
|
|
_context.next = 2;
|
|
|
return (0,_service_classrooms__WEBPACK_IMPORTED_MODULE_10__/* .searchSchoolTeacherList */ .nQ)(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_4___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_4___default()({}, query), {}, {
|
|
|
page: page,
|
|
|
container_type: container_type,
|
|
|
container_id: container_id
|
|
|
}));
|
|
|
case 2:
|
|
|
_yield$searchSchoolTe = _context.sent;
|
|
|
users = _yield$searchSchoolTe.users;
|
|
|
user_count = _yield$searchSchoolTe.user_count;
|
|
|
dispatch({
|
|
|
type: Types.INITDATA,
|
|
|
payload: {
|
|
|
data: reload ? users : [].concat(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_toConsumableArray_js__WEBPACK_IMPORTED_MODULE_1___default()(data), _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_toConsumableArray_js__WEBPACK_IMPORTED_MODULE_1___default()(users)),
|
|
|
count: user_count
|
|
|
}
|
|
|
});
|
|
|
case 6:
|
|
|
case "end":
|
|
|
return _context.stop();
|
|
|
}
|
|
|
}, _callee);
|
|
|
}));
|
|
|
return _init.apply(this, arguments);
|
|
|
}
|
|
|
if (query) {
|
|
|
init();
|
|
|
}
|
|
|
}, [page, query, reload, container_id, container_type]);
|
|
|
(0,react__WEBPACK_IMPORTED_MODULE_5__.useEffect)(function () {
|
|
|
function initSchools() {
|
|
|
return _initSchools.apply(this, arguments);
|
|
|
}
|
|
|
function _initSchools() {
|
|
|
_initSchools = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee2() {
|
|
|
var _yield$getSchoolList, school_names;
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee2$(_context2) {
|
|
|
while (1) switch (_context2.prev = _context2.next) {
|
|
|
case 0:
|
|
|
_context2.next = 2;
|
|
|
return (0,_service_classrooms__WEBPACK_IMPORTED_MODULE_10__/* .getSchoolList */ .K$)({});
|
|
|
case 2:
|
|
|
_yield$getSchoolList = _context2.sent;
|
|
|
school_names = _yield$getSchoolList.school_names;
|
|
|
dispatch({
|
|
|
type: Types.INITSCHOOLS,
|
|
|
payload: school_names.map(function (item) {
|
|
|
return {
|
|
|
value: item
|
|
|
};
|
|
|
})
|
|
|
});
|
|
|
case 5:
|
|
|
case "end":
|
|
|
return _context2.stop();
|
|
|
}
|
|
|
}, _callee2);
|
|
|
}));
|
|
|
return _initSchools.apply(this, arguments);
|
|
|
}
|
|
|
initSchools();
|
|
|
}, []);
|
|
|
var columns = [{
|
|
|
title: "",
|
|
|
dataIndex: "added",
|
|
|
width: 40,
|
|
|
ellipsis: true,
|
|
|
render: function render(add, record) {
|
|
|
return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)(antd__WEBPACK_IMPORTED_MODULE_20__/* ["default"] */ .Z, {
|
|
|
value: record.numid,
|
|
|
checked: selectedIds.includes(record.numid),
|
|
|
disabled: !!add
|
|
|
});
|
|
|
}
|
|
|
}, {
|
|
|
title: "姓名",
|
|
|
width: 100,
|
|
|
ellipsis: true,
|
|
|
align: 'left',
|
|
|
dataIndex: "username",
|
|
|
render: function render(text, record) {
|
|
|
return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)("div", {
|
|
|
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)(antd__WEBPACK_IMPORTED_MODULE_21__/* ["default"] */ .Z, {
|
|
|
placement: "bottom",
|
|
|
title: text,
|
|
|
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)(umi__WEBPACK_IMPORTED_MODULE_6__.Link, {
|
|
|
style: {
|
|
|
color: '#000000'
|
|
|
},
|
|
|
className: "bold c-black",
|
|
|
to: "/users/".concat(record.login),
|
|
|
target: "_blank",
|
|
|
children: text || '--'
|
|
|
})
|
|
|
})
|
|
|
});
|
|
|
}
|
|
|
}, {
|
|
|
title: "手机",
|
|
|
width: 100,
|
|
|
dataIndex: "phone",
|
|
|
ellipsis: true,
|
|
|
render: function render(text) {
|
|
|
return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)(antd__WEBPACK_IMPORTED_MODULE_21__/* ["default"] */ .Z, {
|
|
|
placement: "bottom",
|
|
|
title: text,
|
|
|
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)("span", {
|
|
|
style: {
|
|
|
color: '#000000'
|
|
|
},
|
|
|
children: text || '--'
|
|
|
})
|
|
|
});
|
|
|
}
|
|
|
}, {
|
|
|
title: "邮箱",
|
|
|
dataIndex: "email",
|
|
|
width: 100,
|
|
|
ellipsis: true,
|
|
|
render: function render(text) {
|
|
|
return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)(antd__WEBPACK_IMPORTED_MODULE_21__/* ["default"] */ .Z, {
|
|
|
placement: "bottom",
|
|
|
title: text,
|
|
|
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)("span", {
|
|
|
style: {
|
|
|
color: '#000000'
|
|
|
},
|
|
|
children: text || '--'
|
|
|
})
|
|
|
});
|
|
|
}
|
|
|
}, {
|
|
|
title: "学号/工号",
|
|
|
width: 100,
|
|
|
dataIndex: "student_number",
|
|
|
ellipsis: true,
|
|
|
render: function render(text) {
|
|
|
return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)(antd__WEBPACK_IMPORTED_MODULE_21__/* ["default"] */ .Z, {
|
|
|
placement: "bottom",
|
|
|
title: text,
|
|
|
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)("span", {
|
|
|
style: {
|
|
|
color: '#000000'
|
|
|
},
|
|
|
children: text || '--'
|
|
|
})
|
|
|
});
|
|
|
}
|
|
|
}, {
|
|
|
title: "学校/单位",
|
|
|
width: 150,
|
|
|
dataIndex: "school_name",
|
|
|
ellipsis: true,
|
|
|
render: function render(text) {
|
|
|
return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)(antd__WEBPACK_IMPORTED_MODULE_21__/* ["default"] */ .Z, {
|
|
|
placement: "bottom",
|
|
|
title: text,
|
|
|
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)("span", {
|
|
|
style: {
|
|
|
color: '#000000'
|
|
|
},
|
|
|
children: text || '--'
|
|
|
})
|
|
|
});
|
|
|
}
|
|
|
}, {
|
|
|
title: "院系/部门",
|
|
|
dataIndex: "depart_name",
|
|
|
width: 130,
|
|
|
ellipsis: true,
|
|
|
render: function render(text) {
|
|
|
return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)(antd__WEBPACK_IMPORTED_MODULE_21__/* ["default"] */ .Z, {
|
|
|
placement: "bottom",
|
|
|
title: text,
|
|
|
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)("span", {
|
|
|
style: {
|
|
|
color: '#000000'
|
|
|
},
|
|
|
children: text || '--'
|
|
|
})
|
|
|
});
|
|
|
}
|
|
|
}, {
|
|
|
title: "实名认证",
|
|
|
dataIndex: "auth",
|
|
|
width: 100,
|
|
|
render: function render(text) {
|
|
|
return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)("span", {
|
|
|
style: {
|
|
|
color: '#000000'
|
|
|
},
|
|
|
children: text ? '是' : "否"
|
|
|
});
|
|
|
}
|
|
|
}, {
|
|
|
title: "最后登录时间",
|
|
|
dataIndex: "last_login_on",
|
|
|
width: 140,
|
|
|
ellipsis: true,
|
|
|
render: function render(text) {
|
|
|
return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)(antd__WEBPACK_IMPORTED_MODULE_21__/* ["default"] */ .Z, {
|
|
|
placement: "bottom",
|
|
|
title: text,
|
|
|
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)("span", {
|
|
|
style: {
|
|
|
color: '#000000'
|
|
|
},
|
|
|
children: moment__WEBPACK_IMPORTED_MODULE_7___default()(text).format("YYYY-MM-DD HH:mm")
|
|
|
})
|
|
|
});
|
|
|
}
|
|
|
}, {
|
|
|
title: "状态",
|
|
|
dataIndex: "added",
|
|
|
width: 80,
|
|
|
render: function render(text) {
|
|
|
if (text === 1) {
|
|
|
return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)("span", {
|
|
|
style: {
|
|
|
color: '#000000'
|
|
|
},
|
|
|
children: "\u5DF2\u6DFB\u52A0"
|
|
|
});
|
|
|
}
|
|
|
}
|
|
|
}];
|
|
|
function onSearch(values) {
|
|
|
dispatch({
|
|
|
type: Types.SETQUERY,
|
|
|
payload: {
|
|
|
page: 1,
|
|
|
reload: true,
|
|
|
query: values
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
function onLoadMore(nextPage) {
|
|
|
dispatch({
|
|
|
type: Types.SETPAGE,
|
|
|
payload: nextPage
|
|
|
});
|
|
|
}
|
|
|
function onTriggerUser(id) {
|
|
|
var index = selectedIds.indexOf(id);
|
|
|
if (index >= 0) {
|
|
|
selectedIds.splice(index, 1);
|
|
|
} else {
|
|
|
selectedIds.push(id);
|
|
|
}
|
|
|
dispatch({
|
|
|
type: Types.SELECTEDIDS,
|
|
|
payload: _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_toConsumableArray_js__WEBPACK_IMPORTED_MODULE_1___default()(selectedIds)
|
|
|
});
|
|
|
}
|
|
|
function onOk() {
|
|
|
if (selectedIds.length === 0) {
|
|
|
antd__WEBPACK_IMPORTED_MODULE_22__/* ["default"].warning */ .ZP.warning('请先在下面列表中选择要添加成员');
|
|
|
} else {
|
|
|
onSelect(selectedIds, container_id);
|
|
|
//*添加成功后,清空选项
|
|
|
dispatch({
|
|
|
type: Types.INITDATA,
|
|
|
payload: {
|
|
|
data: [],
|
|
|
count: 0,
|
|
|
page: 1,
|
|
|
selectedIds: [],
|
|
|
query: null,
|
|
|
reload: false
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
}
|
|
|
var hasMore = count > page * 10;
|
|
|
return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsxs)("div", {
|
|
|
className: "select-user-container",
|
|
|
style: {
|
|
|
paddingBottom: 20
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)(SearchForm, {
|
|
|
onSearch: onSearch,
|
|
|
schools: schools
|
|
|
}), !query ? /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsxs)("div", {
|
|
|
className: "tc font16 c-light-black mt40 pb30",
|
|
|
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)("img", {
|
|
|
src: _assets_images_icons_search_png__WEBPACK_IMPORTED_MODULE_9__,
|
|
|
width: "100",
|
|
|
alt: ""
|
|
|
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)("br", {}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)("p", {
|
|
|
className: "mt20",
|
|
|
children: "\u8BF7\u641C\u7D22\u8981\u6DFB\u52A0\u7684\u4EBA\u5458"
|
|
|
})]
|
|
|
}) : /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.Fragment, {
|
|
|
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)("div", {
|
|
|
className: "flexd-table-header mt20",
|
|
|
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)(_components_ui_customization__WEBPACK_IMPORTED_MODULE_11__/* .CustomTable */ .Gi, {
|
|
|
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)(antd__WEBPACK_IMPORTED_MODULE_23__/* ["default"] */ .Z, {
|
|
|
pagination: false,
|
|
|
dataSource: no_data,
|
|
|
columns: columns
|
|
|
})
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)("div", {
|
|
|
style: {
|
|
|
maxHeight: 260,
|
|
|
overflow: 'auto',
|
|
|
marginBottom: 20
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)((react_infinite_scroller__WEBPACK_IMPORTED_MODULE_8___default()), {
|
|
|
initialLoad: false,
|
|
|
pageStart: 1,
|
|
|
threshold: 20,
|
|
|
loadMore: onLoadMore,
|
|
|
hasMore: hasMore,
|
|
|
useWindow: false,
|
|
|
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)(_components_ui_customization__WEBPACK_IMPORTED_MODULE_11__/* .CustomTable */ .Gi, {
|
|
|
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)(antd__WEBPACK_IMPORTED_MODULE_23__/* ["default"] */ .Z, {
|
|
|
loading: loading,
|
|
|
showHeader: false,
|
|
|
pagination: false,
|
|
|
dataSource: data,
|
|
|
columns: columns,
|
|
|
onRow: function onRow(record) {
|
|
|
return {
|
|
|
onClick: function onClick(_) {
|
|
|
if (record.added !== 1) {
|
|
|
onTriggerUser(record.numid);
|
|
|
}
|
|
|
}
|
|
|
};
|
|
|
}
|
|
|
})
|
|
|
})
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsxs)("div", {
|
|
|
className: "flex-container flex-end",
|
|
|
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)(antd__WEBPACK_IMPORTED_MODULE_19__/* ["default"] */ .ZP, {
|
|
|
type: "ghost",
|
|
|
style: {
|
|
|
marginRight: 10,
|
|
|
border: '1px solid #C3CFE0',
|
|
|
color: '#464F66'
|
|
|
},
|
|
|
onClick: onCancel,
|
|
|
children: "\u53D6\u6D88"
|
|
|
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_13__.jsx)(antd__WEBPACK_IMPORTED_MODULE_19__/* ["default"] */ .ZP, {
|
|
|
style: {
|
|
|
background: '#F6F7F9 linear-gradient(180deg, #FFFFFF 0%, #F6F7F9 100%)',
|
|
|
boxShadow: '0px 2px 4px 0px #E0DFE1, inset 0px 1px 3px 0px rgba(255,255,255,0.5)',
|
|
|
borderRadius: 2,
|
|
|
color: '#165DFF',
|
|
|
border: '1px solid #BACFFE'
|
|
|
},
|
|
|
type: "primary",
|
|
|
onClick: onOk,
|
|
|
children: "\u786E\u5B9A"
|
|
|
})]
|
|
|
})]
|
|
|
})]
|
|
|
});
|
|
|
});
|
|
|
|
|
|
/***/ }),
|
|
|
|
|
|
/***/ 38054:
|
|
|
/*!******************************************************!*\
|
|
|
!*** ./src/components/Spinner/index.tsx + 1 modules ***!
|
|
|
\******************************************************/
|
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
|
|
|
// EXPORTS
|
|
|
__webpack_require__.d(__webpack_exports__, {
|
|
|
"Z": function() { return /* binding */ Spinner; }
|
|
|
});
|
|
|
|
|
|
// EXTERNAL MODULE: ./node_modules/react/index.js
|
|
|
var react = __webpack_require__(67294);
|
|
|
// EXTERNAL MODULE: ./src/.umi-production/exports.ts + 8 modules
|
|
|
var _umi_production_exports = __webpack_require__(89214);
|
|
|
;// CONCATENATED MODULE: ./src/components/Spinner/index.less?modules
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
/* harmony default export */ var Spinnermodules = ({"ldsRing":"ldsRing___mpBZC","idsRingWrapper":"idsRingWrapper___Of9_n","ldsring":"ldsring___o0w2t"});
|
|
|
// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
|
|
|
var jsx_runtime = __webpack_require__(85893);
|
|
|
;// CONCATENATED MODULE: ./src/components/Spinner/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/* harmony default export */ var Spinner = (function (_ref) {
|
|
|
var message = _ref.message,
|
|
|
className = _ref.className,
|
|
|
children = _ref.children,
|
|
|
_ref$style = _ref.style,
|
|
|
style = _ref$style === void 0 ? {} : _ref$style;
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: "".concat(Spinnermodules.idsRingWrapper, " ").concat(className),
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: Spinnermodules.ldsRing,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {})]
|
|
|
}), message ? /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
|
|
|
style: style,
|
|
|
children: message
|
|
|
}) : null, /*#__PURE__*/(0,jsx_runtime.jsx)(_umi_production_exports.Outlet, {})]
|
|
|
});
|
|
|
});
|
|
|
|
|
|
/***/ }),
|
|
|
|
|
|
/***/ 72377:
|
|
|
/*!****************************************************************!*\
|
|
|
!*** ./src/components/ui-customization/index.tsx + 37 modules ***!
|
|
|
\****************************************************************/
|
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
|
|
|
// EXPORTS
|
|
|
__webpack_require__.d(__webpack_exports__, {
|
|
|
"jL": function() { return /* reexport */ ui_customization_Banner; },
|
|
|
"w9": function() { return /* reexport */ Cards_ClassroomList; },
|
|
|
"QD": function() { return /* reexport */ ui_customization_ConfirmAndCancel; },
|
|
|
"cQ": function() { return /* reexport */ Cards_CourseList; },
|
|
|
"op": function() { return /* reexport */ ui_customization_CustomButton; },
|
|
|
"O5": function() { return /* reexport */ ui_customization_CustomCountdown; },
|
|
|
"_b": function() { return /* reexport */ CustomCrumbs; },
|
|
|
"t7": function() { return /* reexport */ ui_customization_CustomInput; },
|
|
|
"Gi": function() { return /* reexport */ CustomTable; },
|
|
|
"YG": function() { return /* reexport */ CustomTabs; },
|
|
|
"qp": function() { return /* reexport */ ui_customization_CustomTags; },
|
|
|
"vr": function() { return /* reexport */ ui_customization_FixedBottom; },
|
|
|
"qE": function() { return /* reexport */ HeadBack; },
|
|
|
"Je": function() { return /* reexport */ QuickPager; },
|
|
|
"wb": function() { return /* reexport */ Cards_ShixunList; },
|
|
|
"cq": function() { return /* reexport */ ui_customization_SuperiorSort; },
|
|
|
"tp": function() { return /* reexport */ ui_customization_SuperiorTabs; }
|
|
|
});
|
|
|
|
|
|
// EXTERNAL MODULE: ./node_modules/react/index.js
|
|
|
var react = __webpack_require__(67294);
|
|
|
;// CONCATENATED MODULE: ./src/components/ui-customization/Banner/index.less?modules
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
/* harmony default export */ var Bannermodules = ({"flex_box_center":"flex_box_center___NeSU8","flex_space_between":"flex_space_between___ImTGl","flex_box_vertical_center":"flex_box_vertical_center___BtRd9","flex_box_center_end":"flex_box_center_end___qcLe3","flex_box_column":"flex_box_column___Ze_3q","banner":"banner___PoUBO","content":"content___XoDjy","btns":"btns___Pb35j"});
|
|
|
;// CONCATENATED MODULE: ./src/components/ui-customization/Banner/robot.png
|
|
|
var robot_namespaceObject = "data:image/png;base64,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";
|
|
|
// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
|
|
|
var jsx_runtime = __webpack_require__(85893);
|
|
|
;// CONCATENATED MODULE: ./src/components/ui-customization/Banner/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var Banner = function Banner(_ref) {
|
|
|
var _ref$dataSource = _ref.dataSource,
|
|
|
dataSource = _ref$dataSource === void 0 ? [] : _ref$dataSource,
|
|
|
img = _ref.img,
|
|
|
_ref$imgWidth = _ref.imgWidth,
|
|
|
imgWidth = _ref$imgWidth === void 0 ? 346 : _ref$imgWidth,
|
|
|
title = _ref.title,
|
|
|
sunTitle = _ref.sunTitle,
|
|
|
bannerExtraContent = _ref.bannerExtraContent;
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: Bannermodules.banner,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: Bannermodules.content,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("b", {
|
|
|
children: title
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
children: sunTitle
|
|
|
})]
|
|
|
}), dataSource.length > 0 && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: Bannermodules.btns,
|
|
|
children: dataSource.map(function (e, i) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
onClick: e.click,
|
|
|
children: [e.name, e.sign ? /*#__PURE__*/(0,jsx_runtime.jsx)("img", {
|
|
|
src: robot_namespaceObject,
|
|
|
width: 39
|
|
|
}) : null]
|
|
|
}, i);
|
|
|
})
|
|
|
}), bannerExtraContent]
|
|
|
}), img && /*#__PURE__*/(0,jsx_runtime.jsx)("img", {
|
|
|
style: {
|
|
|
marginTop: 33,
|
|
|
marginRight: 38
|
|
|
},
|
|
|
src: img,
|
|
|
width: imgWidth
|
|
|
})]
|
|
|
})
|
|
|
});
|
|
|
};
|
|
|
/* harmony default export */ var ui_customization_Banner = (Banner);
|
|
|
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/slicedToArray.js
|
|
|
var slicedToArray = __webpack_require__(27424);
|
|
|
var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);
|
|
|
;// CONCATENATED MODULE: ./src/components/ui-customization/CustomTags/index.less?modules
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
/* harmony default export */ var CustomTagsmodules = ({"flex_box_center":"flex_box_center___hG6RI","flex_space_between":"flex_space_between___ss3Fh","flex_box_vertical_center":"flex_box_vertical_center___K80p9","flex_box_center_end":"flex_box_center_end___qmXX3","flex_box_column":"flex_box_column___GFV8F","row":"row___aXJjm","title":"title___HUKL0","tagsWrap":"tagsWrap___XB2W3","action":"action___VdHb1","bar":"bar___t1kKC","tag":"tag___V7Eft","name":"name___Hk1Ip","num":"num___xQpcH","active":"active___XryTX","tagsBorderWrap":"tagsBorderWrap___OMxjs"});
|
|
|
// EXTERNAL MODULE: ./node_modules/classnames/index.js
|
|
|
var classnames = __webpack_require__(94184);
|
|
|
var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames);
|
|
|
// EXTERNAL MODULE: ./node_modules/lodash/lodash.js
|
|
|
var lodash = __webpack_require__(96486);
|
|
|
;// CONCATENATED MODULE: ./src/components/ui-customization/CustomTags/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var CustomTags = function CustomTags(_ref) {
|
|
|
var _ref$dataSource = _ref.dataSource,
|
|
|
dataSource = _ref$dataSource === void 0 ? [] : _ref$dataSource,
|
|
|
value = _ref.value,
|
|
|
onChange = _ref.onChange,
|
|
|
onTitleChange = _ref.onTitleChange,
|
|
|
className = _ref.className,
|
|
|
title = _ref.title,
|
|
|
_ref$titleWidth = _ref.titleWidth,
|
|
|
titleWidth = _ref$titleWidth === void 0 ? 41 : _ref$titleWidth,
|
|
|
_ref$style = _ref.style,
|
|
|
style = _ref$style === void 0 ? {} : _ref$style,
|
|
|
_ref$fontColor = _ref.fontColor,
|
|
|
fontColor = _ref$fontColor === void 0 ? '#6A7283' : _ref$fontColor,
|
|
|
showCount = _ref.showCount;
|
|
|
var _useState = (0,react.useState)(0),
|
|
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
|
show = _useState2[0],
|
|
|
setShow = _useState2[1];
|
|
|
var _useState3 = (0,react.useState)(false),
|
|
|
_useState4 = slicedToArray_default()(_useState3, 2),
|
|
|
showBorder = _useState4[0],
|
|
|
setShowBorder = _useState4[1];
|
|
|
var tagsRef = (0,react.useRef)(null);
|
|
|
var scrollRef = (0,react.useRef)(null);
|
|
|
(0,react.useEffect)(function () {
|
|
|
if (dataSource.length !== 0) {
|
|
|
var _tagsRef$current;
|
|
|
if ((tagsRef === null || tagsRef === void 0 ? void 0 : (_tagsRef$current = tagsRef.current) === null || _tagsRef$current === void 0 ? void 0 : _tagsRef$current.clientHeight) > 97) {
|
|
|
setShow(1);
|
|
|
} else {
|
|
|
setShow(0);
|
|
|
}
|
|
|
}
|
|
|
if (dataSource.length === 0) {
|
|
|
setShow(0);
|
|
|
}
|
|
|
setShowBorder(false);
|
|
|
}, [dataSource]);
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: classnames_default()(CustomTagsmodules.row, className),
|
|
|
style: style,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
onClick: (0,lodash.throttle)(function () {
|
|
|
return onTitleChange === null || onTitleChange === void 0 ? void 0 : onTitleChange();
|
|
|
}, 2000),
|
|
|
style: {
|
|
|
width: titleWidth,
|
|
|
marginTop: showBorder ? 12 : 4
|
|
|
},
|
|
|
className: "".concat(CustomTagsmodules.title, " ").concat(onTitleChange ? "current" : ""),
|
|
|
children: title
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: showBorder ? "".concat(CustomTagsmodules.tagsWrap, " ").concat(CustomTagsmodules.tagsBorderWrap) : CustomTagsmodules.tagsWrap,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: CustomTagsmodules.bar,
|
|
|
ref: scrollRef,
|
|
|
style: show > 0 ? {
|
|
|
height: show === 1 ? 97 : 'auto',
|
|
|
overflow: show === 1 ? 'hidden' : 'auto',
|
|
|
paddingRight: 55
|
|
|
} : {
|
|
|
paddingRight: 0
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: CustomTagsmodules.tag,
|
|
|
ref: tagsRef,
|
|
|
children: dataSource === null || dataSource === void 0 ? void 0 : dataSource.map(function (e) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
onClick: function onClick() {
|
|
|
return onChange(e.id);
|
|
|
},
|
|
|
style: {
|
|
|
color: fontColor
|
|
|
},
|
|
|
className: value === e.id ? CustomTagsmodules.active : '',
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
title: e.name,
|
|
|
className: CustomTagsmodules.name,
|
|
|
children: e.name
|
|
|
}), !!showCount && /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: CustomTagsmodules.num,
|
|
|
children: e.count
|
|
|
})]
|
|
|
}, e.id);
|
|
|
})
|
|
|
})
|
|
|
}), !!show && /*#__PURE__*/(0,jsx_runtime.jsx)(react.Fragment, {
|
|
|
children: show === 1 ? /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
onClick: function onClick() {
|
|
|
var _tagsRef$current2;
|
|
|
setShow(2);
|
|
|
if ((tagsRef === null || tagsRef === void 0 ? void 0 : (_tagsRef$current2 = tagsRef.current) === null || _tagsRef$current2 === void 0 ? void 0 : _tagsRef$current2.clientHeight) > 245) {
|
|
|
setShowBorder(true);
|
|
|
} else {
|
|
|
setShowBorder(false);
|
|
|
}
|
|
|
},
|
|
|
className: CustomTagsmodules.action,
|
|
|
children: ["\u5C55\u5F00", /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
|
style: {
|
|
|
transform: 'translateY(1px) scale(0.6)'
|
|
|
},
|
|
|
className: "iconfont icon-zhankai4"
|
|
|
})]
|
|
|
}) : /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
onClick: function onClick() {
|
|
|
scrollRef.current.scrollTop = 0;
|
|
|
setShow(1);
|
|
|
setShowBorder(false);
|
|
|
},
|
|
|
className: CustomTagsmodules.action,
|
|
|
children: ["\u6536\u8D77", /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
|
style: {
|
|
|
transform: 'translateY(0px) scale(0.6)'
|
|
|
},
|
|
|
className: "iconfont icon-shouqi3"
|
|
|
})]
|
|
|
})
|
|
|
})]
|
|
|
})]
|
|
|
});
|
|
|
};
|
|
|
/* harmony default export */ var ui_customization_CustomTags = (CustomTags);
|
|
|
;// CONCATENATED MODULE: ./src/components/ui-customization/SuperiorTabs/index.less?modules
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
/* harmony default export */ var SuperiorTabsmodules = ({"flex_box_center":"flex_box_center___aK2n3","flex_space_between":"flex_space_between___HX0Oh","flex_box_vertical_center":"flex_box_vertical_center___LJOJr","flex_box_center_end":"flex_box_center_end___SCakF","flex_box_column":"flex_box_column___AYv4m","tabs":"tabs___GTqPV","active":"active___F26E8"});
|
|
|
;// CONCATENATED MODULE: ./src/components/ui-customization/SuperiorTabs/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var SuperiorTabs = function SuperiorTabs(_ref) {
|
|
|
var _ref$dataSource = _ref.dataSource,
|
|
|
dataSource = _ref$dataSource === void 0 ? [] : _ref$dataSource,
|
|
|
value = _ref.value,
|
|
|
onChange = _ref.onChange,
|
|
|
className = _ref.className,
|
|
|
_ref$style = _ref.style,
|
|
|
style = _ref$style === void 0 ? {} : _ref$style;
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
style: style,
|
|
|
className: classnames_default()(SuperiorTabsmodules.tabs, className),
|
|
|
children: dataSource.map(function (e) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
onClick: function onClick() {
|
|
|
return onChange(e.id);
|
|
|
},
|
|
|
className: value === e.id ? SuperiorTabsmodules.active : '',
|
|
|
children: e.name
|
|
|
}, e.id);
|
|
|
})
|
|
|
});
|
|
|
};
|
|
|
/* harmony default export */ var ui_customization_SuperiorTabs = (SuperiorTabs);
|
|
|
;// CONCATENATED MODULE: ./src/components/ui-customization/CustomInput/index.less?modules
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
/* harmony default export */ var CustomInputmodules = ({"flex_box_center":"flex_box_center___yX6Oa","flex_space_between":"flex_space_between___t7oqF","flex_box_vertical_center":"flex_box_vertical_center___dEIHy","flex_box_center_end":"flex_box_center_end___taQDF","flex_box_column":"flex_box_column___xY_Lr","input":"input___PW2zI","dropdown":"dropdown___vSy8B","menu":"menu___NiyBu","text":"text___Grueu","b1":"b1___ZKryM","b2":"b2___aKyGa"});
|
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/input/index.js + 5 modules
|
|
|
var input = __webpack_require__(79531);
|
|
|
;// CONCATENATED MODULE: ./src/components/ui-customization/CustomInput/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var CustomInput = function CustomInput(_ref) {
|
|
|
var _dataSource$find;
|
|
|
var _ref$dataSource = _ref.dataSource,
|
|
|
dataSource = _ref$dataSource === void 0 ? [] : _ref$dataSource,
|
|
|
value = _ref.value,
|
|
|
onChange = _ref.onChange,
|
|
|
className = _ref.className,
|
|
|
_ref$style = _ref.style,
|
|
|
style = _ref$style === void 0 ? {} : _ref$style,
|
|
|
placeholder = _ref.placeholder;
|
|
|
var _useState = (0,react.useState)(''),
|
|
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
|
dropValue = _useState2[0],
|
|
|
setDropValue = _useState2[1];
|
|
|
var _useState3 = (0,react.useState)(''),
|
|
|
_useState4 = slicedToArray_default()(_useState3, 2),
|
|
|
inputValue = _useState4[0],
|
|
|
setInputValue = _useState4[1];
|
|
|
(0,react.useEffect)(function () {
|
|
|
var _JSON$stringify;
|
|
|
if ((_JSON$stringify = JSON.stringify(value)) !== null && _JSON$stringify !== void 0 && _JSON$stringify.includes('{')) {
|
|
|
setDropValue(value.id);
|
|
|
setInputValue(value.value);
|
|
|
} else {
|
|
|
setInputValue(value);
|
|
|
}
|
|
|
}, [value]);
|
|
|
var handleChange = function handleChange() {
|
|
|
onChange(inputValue, dropValue || null);
|
|
|
};
|
|
|
var handleDropValue = function handleDropValue(id) {
|
|
|
if (id === dropValue) return;
|
|
|
setDropValue(id);
|
|
|
onChange(inputValue, id);
|
|
|
};
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: classnames_default()(CustomInputmodules.input, className),
|
|
|
style: style,
|
|
|
children: [!!dataSource.length && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: CustomInputmodules.dropdown,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: CustomInputmodules.text,
|
|
|
children: [(_dataSource$find = dataSource.find(function (e) {
|
|
|
return e.id === dropValue;
|
|
|
})) === null || _dataSource$find === void 0 ? void 0 : _dataSource$find.name, /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
|
className: "iconfont icon-zhankai4"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("b", {
|
|
|
className: CustomInputmodules.b1
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("b", {
|
|
|
className: CustomInputmodules.b2
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: CustomInputmodules.menu,
|
|
|
children: dataSource.map(function (e, i) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
onClick: function onClick() {
|
|
|
return handleDropValue(e.id);
|
|
|
},
|
|
|
children: e.name
|
|
|
}, i);
|
|
|
})
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z, {
|
|
|
onPressEnter: handleChange,
|
|
|
value: decodeURIComponent(inputValue || ""),
|
|
|
onChange: function onChange(e) {
|
|
|
return setInputValue(e.target.value);
|
|
|
},
|
|
|
bordered: false,
|
|
|
placeholder: placeholder
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
|
onClick: handleChange,
|
|
|
className: "iconfont icon-sousuo9 font14 pl10 current"
|
|
|
})]
|
|
|
});
|
|
|
};
|
|
|
/* harmony default export */ var ui_customization_CustomInput = (CustomInput);
|
|
|
;// CONCATENATED MODULE: ./src/components/ui-customization/QuickPager/index.less?modules
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
/* harmony default export */ var QuickPagermodules = ({"flex_box_center":"flex_box_center___tol8o","flex_space_between":"flex_space_between___Z235C","flex_box_vertical_center":"flex_box_vertical_center___Wq1sZ","flex_box_center_end":"flex_box_center_end___LLxom","flex_box_column":"flex_box_column___DbMSN","quickPager":"quickPager___GM30J","disabled":"disabled___Ozc8I"});
|
|
|
;// CONCATENATED MODULE: ./src/components/ui-customization/QuickPager/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var QuickPager_SuperiorTabs = function SuperiorTabs(_ref) {
|
|
|
var value = _ref.value,
|
|
|
onChange = _ref.onChange,
|
|
|
className = _ref.className,
|
|
|
total = _ref.total,
|
|
|
pageSize = _ref.pageSize,
|
|
|
_ref$style = _ref.style,
|
|
|
style = _ref$style === void 0 ? {} : _ref$style;
|
|
|
var prevPageDisabled = value < 2;
|
|
|
var nextPageDisabled = value >= Math.ceil(total / pageSize);
|
|
|
if (total <= pageSize) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(jsx_runtime.Fragment, {});
|
|
|
}
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: classnames_default()(QuickPagermodules.quickPager, className),
|
|
|
style: style,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
onClick: function onClick() {
|
|
|
if (!prevPageDisabled) {
|
|
|
onChange(value - 1, 'prev');
|
|
|
}
|
|
|
},
|
|
|
className: prevPageDisabled ? QuickPagermodules.disabled : '',
|
|
|
children: "\u4E0A\u4E00\u9875"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
onClick: function onClick() {
|
|
|
if (!nextPageDisabled) {
|
|
|
onChange(value + 1, 'next');
|
|
|
}
|
|
|
},
|
|
|
className: nextPageDisabled ? QuickPagermodules.disabled : '',
|
|
|
children: "\u4E0B\u4E00\u9875"
|
|
|
})]
|
|
|
});
|
|
|
};
|
|
|
/* harmony default export */ var QuickPager = (QuickPager_SuperiorTabs);
|
|
|
;// CONCATENATED MODULE: ./src/components/ui-customization/Cards/ShixunList/index.less?modules
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
/* harmony default export */ var ShixunListmodules = ({"flex_box_center":"flex_box_center___FO7TP","flex_space_between":"flex_space_between___LotYx","flex_box_vertical_center":"flex_box_vertical_center___bWdaw","flex_box_center_end":"flex_box_center_end___mVJ1o","flex_box_column":"flex_box_column___M83Mm","list":"list___oOsiS","wrap":"wrap___G6T7F","lockWrap":"lockWrap___Rl79E","li":"li___oZZ7l","cover":"cover___b2bYW","img":"img___IQX7w","sign":"sign___HkT6C","name":"name___SsJx8","e":"e___TMqq0","tags":"tags___bcjyo","rate":"rate___YACg7"});
|
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/spin/index.js + 1 modules
|
|
|
var spin = __webpack_require__(57953);
|
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/tooltip/index.js + 3 modules
|
|
|
var tooltip = __webpack_require__(83062);
|
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/rate/index.js + 8 modules
|
|
|
var rate = __webpack_require__(59606);
|
|
|
// EXTERNAL MODULE: ./src/utils/env.ts + 1 modules
|
|
|
var env = __webpack_require__(59758);
|
|
|
// EXTERNAL MODULE: ./src/utils/util.tsx
|
|
|
var util = __webpack_require__(29427);
|
|
|
// EXTERNAL MODULE: ./src/components/ui-customization/Cards/ShixunList/img/Jupyter.png
|
|
|
var Jupyter = __webpack_require__(96908);
|
|
|
// EXTERNAL MODULE: ./src/components/ui-customization/Cards/ShixunList/img/JupyterLab.png
|
|
|
var JupyterLab = __webpack_require__(57177);
|
|
|
// EXTERNAL MODULE: ./src/components/ui-customization/Cards/ShixunList/img/unity.png
|
|
|
var unity = __webpack_require__(81378);
|
|
|
// EXTERNAL MODULE: ./src/components/NoData/index.tsx
|
|
|
var NoData = __webpack_require__(82982);
|
|
|
;// CONCATENATED MODULE: ./src/components/ui-customization/Cards/ShixunList/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var ShixunList = function ShixunList(_ref) {
|
|
|
var className = _ref.className,
|
|
|
_ref$dataSource = _ref.dataSource,
|
|
|
dataSource = _ref$dataSource === void 0 ? [] : _ref$dataSource,
|
|
|
_ref$col = _ref.col,
|
|
|
col = _ref$col === void 0 ? 4 : _ref$col,
|
|
|
right = _ref.right,
|
|
|
_ref$bottom = _ref.bottom,
|
|
|
bottom = _ref$bottom === void 0 ? 23 : _ref$bottom,
|
|
|
_ref$precision = _ref.precision,
|
|
|
precision = _ref$precision === void 0 ? 0 : _ref$precision,
|
|
|
_ref$wrapWidth = _ref.wrapWidth,
|
|
|
wrapWidth = _ref$wrapWidth === void 0 ? 1200 : _ref$wrapWidth,
|
|
|
trackEventItems = _ref.trackEventItems,
|
|
|
loading = _ref.loading;
|
|
|
var width = Math.floor((wrapWidth - (col - 1) * right) / col);
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(spin/* default */.Z, {
|
|
|
spinning: loading,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: classnames_default()(ShixunListmodules.list, className),
|
|
|
children: [!!dataSource.length && dataSource.map(function (item, index) {
|
|
|
var name = item.name,
|
|
|
id = item.id,
|
|
|
identifier = item.identifier,
|
|
|
power = item.power,
|
|
|
cover_image_id = item.cover_image_id,
|
|
|
pic = item.pic;
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: ShixunListmodules.wrap,
|
|
|
style: {
|
|
|
width: width,
|
|
|
marginRight: (1 + index) % col === 0 ? 0 : right + precision,
|
|
|
marginBottom: bottom
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("a", {
|
|
|
target: "_blank",
|
|
|
href: "/shixuns/".concat(identifier, "/challenges"),
|
|
|
className: ShixunListmodules.li,
|
|
|
onClick: function onClick(e) {
|
|
|
e.preventDefault();
|
|
|
if (trackEventItems) {
|
|
|
(0,util/* trackEvent */.L9)([trackEventItems]);
|
|
|
}
|
|
|
power && (0,util/* openNewWindow */.xg)("/shixuns/".concat(identifier, "/challenges"));
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: ShixunListmodules.img,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("img", {
|
|
|
className: ShixunListmodules.cover,
|
|
|
src: cover_image_id ? "".concat(env/* default.API_SERVER */.Z.API_SERVER, "/api/attachments/").concat(cover_image_id) : "".concat(env/* default.IMG_SERVER */.Z.IMG_SERVER, "/").concat(pic)
|
|
|
}), item.is_jupyter && /*#__PURE__*/(0,jsx_runtime.jsx)("img", {
|
|
|
className: ShixunListmodules.sign,
|
|
|
src: Jupyter
|
|
|
}), item.is_jupyter_lab && /*#__PURE__*/(0,jsx_runtime.jsx)("img", {
|
|
|
className: ShixunListmodules.sign,
|
|
|
src: JupyterLab
|
|
|
}), item.is_unity_3d && /*#__PURE__*/(0,jsx_runtime.jsx)("img", {
|
|
|
className: ShixunListmodules.sign,
|
|
|
src: unity
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: ShixunListmodules.name,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
|
|
|
title: name || '实践项目名称-未填写',
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: ShixunListmodules.e,
|
|
|
children: name || '实践项目名称-未填写'
|
|
|
})
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: ShixunListmodules.tags,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
|
|
|
placement: "bottom",
|
|
|
title: "\u5173\u5361\u6570",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
|
className: "iconfont icon-shixunguanqia font14 mr2"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
children: item.challenges_count
|
|
|
})]
|
|
|
})
|
|
|
}), !!item.myshixuns_count && /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
|
|
|
placement: "bottom",
|
|
|
title: "\u5B66\u4E60\u4EBA\u6570",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
|
className: "iconfont icon-chengyuan font14 mr2"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
children: item.myshixuns_count
|
|
|
})]
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
|
|
|
placement: "bottom",
|
|
|
title: "\u96BE\u5EA6\u7B49\u7EA7",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
children: item.level
|
|
|
})
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: ShixunListmodules.rate,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(rate/* default */.Z, {
|
|
|
allowHalf: true,
|
|
|
disabled: true,
|
|
|
defaultValue: item.score_info
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
children: ["\xA0", item.score_info ? "".concat(item.score_info, "\u5206") : '5分']
|
|
|
})]
|
|
|
})]
|
|
|
})]
|
|
|
}), !power && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: ShixunListmodules.lockWrap,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("img", {
|
|
|
src: "".concat(env/* default.IMG_SERVER */.Z.IMG_SERVER, "/images/educoder/icon/lockclose.svg")
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "mt15 font16 c-white",
|
|
|
children: "\u5B9A\u5411\u5F00\u653E\u5185\u5BB9\uFF0C\u9700\u8981\u6388\u6743"
|
|
|
})]
|
|
|
})]
|
|
|
}, id);
|
|
|
}), !dataSource.length && /*#__PURE__*/(0,jsx_runtime.jsx)(NoData/* default */.Z, {})]
|
|
|
})
|
|
|
});
|
|
|
};
|
|
|
/* harmony default export */ var Cards_ShixunList = (ShixunList);
|
|
|
;// CONCATENATED MODULE: ./src/components/ui-customization/Cards/CourseList/index.less?modules
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
/* harmony default export */ var CourseListmodules = ({"flex_box_center":"flex_box_center___AQ53o","flex_space_between":"flex_space_between___i2aIa","flex_box_vertical_center":"flex_box_vertical_center___sPEKB","flex_box_center_end":"flex_box_center_end___GhSSH","flex_box_column":"flex_box_column___R9_Hb","list":"list___jb2Ay","wrap":"wrap___VsQDr","lockWrap":"lockWrap___g1k1T","li":"li___IxCLC","cover":"cover___Mu8wr","img":"img___IpFLA","sign":"sign___DXJ4d","name":"name___l7FoJ","e":"e___pXQUG","unit":"unit___wCIFR","tags":"tags___w_Mil","tag1":"tag1___dxm7r","tag2":"tag2___llZkf"});
|
|
|
;// CONCATENATED MODULE: ./src/components/ui-customization/Cards/CourseList/img/gg.png
|
|
|
var gg_namespaceObject = "data:image/png;base64,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";
|
|
|
;// CONCATENATED MODULE: ./src/components/ui-customization/Cards/CourseList/img/sg.png
|
|
|
var sg_namespaceObject = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJgAAAA4CAYAAAAB3jHPAAAAAXNSR0IArs4c6QAAIABJREFUeF7VXQm4VVXZfvc+5yKzMqiAgpggqGihoBI4Zz+iQA7VX2Fa+GeFmjnmjAZmDlnmDGaDY5KzJmmWAiKIoCihmAN/ySTDvRcF4e691v+s4VvrW2vvcwFB8r/lcy/n7LP32nu9+/3e7/2+tU+CLfwjpaw0NmJfIcRBSYK+Uoq+QNIdEu0AtJMSLaSUABJzZPWn+iUlEiRQb6l37MvsfbOdfs+9qf5htnav6ffsvoP9+mPSsej4+iM0Jr5vPR4aIF0o9po6ziccPx1GnbWQZvzqNfef/rd9j7+uXhPmIqn36XN6H+rf+n/+dTV+2o/6kNq/39YfT72m3le7Vj/Cnq76tx4TGx9tS2Olz5RByc/EZgBNSlm3enU+TAiMkhJHSshtHULchKkrok5WnUY8SQxwNNf2hAmMRWD5ARMG9H4tWAxQ/XHoPQ5kt4cAVBZrHgF2Mw/kePwBYC2ozUDo+OoTFosMr24y7eTpCbY3SzzBZvLN9TMAor/55DMAWYAawHkwanAkBkgejAROvy8POPOe+r/+DL8R2N+14LNZAJNStmpoEGcikWdLKTvpiTbjt0zkJ5z4J5hgDjhiEY01zwyOXAL2spNtZ8GAx5wtAdgxEk14xJh6v3qGOdvFLGlhwW4SN/4YyHRw4lkGWn8DEPsyINkhqG2ILYhBPBNZkEjzOQNcYiILngCYFoAJ387MhQZm8Lq5ERzg1DW078cMZdjPMxyBrTlu+kQAU2GwYXV+shS4HJA7xUwQhjB+J9vwVRIiOZB8fCSgxmGxVriii2+ugmeamD1jINn9EbtE4GiWcdm5hGHa7LOMMQtA4myjgMNkgLmHolDpmMO8Xgh9jOk8Y9kwrMFTZCweBl1YJEC60OrBpc8tlislSNtkgDU0ZEcJyGshsSftj3RTyDY8DHqQ0WT5z/gwYmck0Gc018EkW6qOgU0hyQQkAiVjKQ6gCBh0IYJwG9wpZpyffPwsvBCI7CxpQLEJKw2DFmQObIEmsmAmIKoIYNkmABPTUoEOY4Ar01c0Bxx4zekujrONBpiUMmlYnY2TAhcWgUoXn7NVOCFmxi2DWZo3UcVPWnPC338+DIMUEnniwIFg1bANoYkN3z6hKN4kHvDhfuz4Kf5bgV82fv45SlzcHR8JZhNmiInY30onCQpnkoXPKEzaa8kBw/WT0Vs8iSiGT7eNvTEJSGXsSMB101nCWpsMMCll2/rG/C5IObJ0fyWhhYtcg2LOVDrQM3CVZYf2rmThylxLC1wmjHkmZ47EjhUzldWHPAz7z7OzY+cUjJ8BrBD+SliRk6AGkxXLjmFi9rLb+OyQ2I2HNgMYCp8UqoIkwF7dECTm/Hxm6PUY6asCW0Xj4aF0A9iys76BrVatlT2xLnsUwN5lmxb1lmUp+0aYzTGms0K+jHn03UFnGv12IcwCLdZrBl5G+xj28rosAB7p9xjAdFk2afz+BgrDM7G2DY8MXJQJhnrHgsnpJBLVnuGcfrPMRKHKC/DYiiDbwtsVOiu0VgQPobXA6DJIpsk2BlwUr2puq8CVrM9nSCl3qLmRmyDLGnzCYpvATToPjc2xBhf3BJaIDaOEgbJJCrfcQii7GYpa0CcWnnUjVqwh3mNPjN8onCE4CxBTkYfFAVfbmvDivuBpSRNODdN7z8sDisS5YS8OUGLF5kAXTO9GoKymBtNhsSF7oRZz6X2T2CaTx56YeZ1pKworLMTpKbPbkS2hJ5v8VzKC7ElocOj3ufnJw6yJmep9PTRrQXiNZGmxhgXiVLb+eKI/7w1fm4UGx4+Z0t805vj+6rsQZl8KssiCkekZiMJZoKMYu3EDlYdH87nQYCV/zYGWrAhrW5BN4TPSyGB1IXkjUMU2KQWYEvT1jflDNTVXs5NOe+ci36KxTBgrUcKse5/FhWGSxDyZtT5jbJ7ROIvEZm1pxhgxctGi2FBiYs6fH4tsB+e0Ry49N1hdNunMVHMdvV0RG6TceCU7g7JIprGYliL7j0BIQA6YtcTzcopjEzBWCrD6xqbx5dmiDR8MEH4CS7LGguC2zGbvHjdOJ6iL2R0HErGYByTZEVEm6mKhf59nk5p7GNebzb0+5KG0zEujffnxxzovZK8yc5JPJoU0o4GYCLcOPL3uhT1tw4BEmShljZqwrQPvslFrtFpfi8Acu/Y+bJvLxLXZJmDL3WjBZ7TPJeWTNXfEtHPsTbl7l4Q1p48S9gpSeDvhzbEM2RpcvLvXLEj0GALw2AHTCTkwc13FP8MSg3j8gfYKb4aAee0YYkbwQtyK94KFELIRTa4BAnPimScWbxOzkQuNTpOZC0EVgbJaowdeWBraVHARk7MbUVbqG7O53EQNdhqAi9XsotQ9ZCYSVZy9aEf+tTKroCDACSuMccxJGEFrwBXXO0krkX/WXHUgMocj0BY8L+bjheMPC85xCOSMRTmKYTnmWZVlnAQ0MkZZ6ORsZBiIFb6t/OSuvjkWD7dec3HwEdkHCdImIC0IkfWN2Wgp5MTm2ctncz5k+QzS1QV5GHJWga9TEtOQsHf74gdnnRLhfhlAuVHLAeHxFjAakVLIlLwo7uuFjg0dI0ch3NU+mS3C2Ysm1o4lAFHg3PtSkGEXA7ZiVhdZDsyOCQvhvjLw8cdAUxPQqq1zbJgPxrsmmi8fbQKmgk0dwFThur4hfyuoLbJNiU3M1Na2JEJR7N1773f5SVKvzZ4JTLxVYP9BCU4+JQ3EcZ4DaWozx6A2wZnGhzTuef36VwJ990hw8CEpttnGZHUkHeMwzNlHZ6n8WPqE7Ws1XXwm6tVwBCv92EvAOyeK7jrP2JjnRX6gdfXfe0eiW/cElbpY+JtZ8cxjwDJ3Zo6/PJCj5+4pRo6uOFarxV5e/IcZ5CcFVxAi6+vzCyTElbV25sNV5E3RHattCSILJqKd5lHuc4L6lUCHjl4XvThN4pZfCQwakuDU01J3+OeelXj8YYHvn57ic7txUe6TCdrYsJ/f57zXJa67Ose22wJXX1tFtc68ffcfBJYuZQItYMvimQ/6YooD91dn1Uy9lJ2/895cOch3TVAI4zqMd0sEhmuUQartXpmV4+F7BXbomuCEkyrYrpPVZA7AFmT29BQLrl8H3D6uSf/+zgVVtN2WWyD+8/rYrMuCj/WThka6mprBVD9XQ2O+WLXc1Ear94LcNoFg9njVbEU6yTfQ4De3CsyaIXHWT1Ls1tuEgBkveIB9/zR1l5nP3jlBQIGsWgW+/s0UXxqaGn1FfV52O8dLOpyanxt+meOV2RLHfzXFUUcrTjXvXTE2x8L3agCs5MSPO66CoUOpUGR1novpTMtZkCmCM5PlGcx7XrU6Ivj2UT+XJWc14iWLgT/+tgkrlgHbtEpw/EkV9FTXEAnynIU3GzYpHD/3eIY5UwUOPLKK/Q5PSzspFBgTe2/rsLwRfV4by2r66jU2ZiNzIR/eMHsxK8Ig00x4oWzDpJ29O/5wh8QzT0m0aw9cNLaCrjubC/viCxK3EoONSakMrn9PnyLxuzsE1q0DBgxM8N3vVdCylTRmKpm0etD+3x8sBy44J8c2LYFrf1FFq1YeCMuWAuvXS+QiwRVjM7RsBfzkJ5WwAVICkyYJvD5PYsyYKr7w+Zi9yOTyuotCriNS3hHq2IwVsq0Ad2Ak8zSoL/pEgfwqdR0euz/DvFcEKpUEI0dV0LlLgtt/3rSx811zu+9c3gKpZnrfkLjZO6W+mPr6bJKEPL5sh1x7ufTfkYANipY9uM4iBssyibvvlPjrZIk2bYELxqbYuTtxCjCdA0yFSCI/e4w3/iFxzZUCQgA77Zzg7PMr2K6DVYLRtmr8990t8JfJAkcNS3HC19QdyxILu08len9waobWrYEbfl01p22L7+r3pZc2YfFi4Oc/r0OH7QygQ1amYFg0g4m9uJ5Ruy+tOQadqWUMZ/UYszOUfpv8cIaZzwv0H1TBoMMr+NPvsmDqPl4j0LASqNsmQYfO5gY0p+5lBP2LPjji1CqS6pbTXrTfRDUP1jfkK6DanEsR5jYNCshuqK6rwTKJupK2XLN8KXDjLwTe+adEq9bA+Zek2NXqKTITlAa79QavwQjQWZbg6acEHnlQ4OO1QMuWgMqIOnUCzjqviq7dCOWeYVYuBy48P0OaAFddW0X79uaaNjYA7ZX+sILiww+BM8/I9Pu/uL7KevwTrFsnccbpBnzX/6LOnXPRn2OTxa6BBxJ1P1C4jOqHzfZzmWvp22xIL3lWe/N1gV57mRAZ1w4fnJjjvQUCXzqhij0HmthH2k/9XrUMaL+9Gb953bZFsxthS7CXPouGBrm/kNmMmuxVs72lhotuNcCcl4DbbxRY8xHQc9cEY85KsMOO9BnPANMJYIONyFeJwMsvCTxwr8DSJUDrNsCxx6cYcmiCCTcJzH5Zok0b4MxzKtitV9gtcdstEjNfFFp7DTvasNf6JuCi8zNUqsAll1XRpjXwwVLgggsydOoIXHV1NWjvefddiSuvzLDXXgl+dEbFsleYRIRt0+bKFboanI9lgKKth6Bdx/hUResiBOIG+7ksKxFI5r4o8PSfMnTdJcVXf1gpFL2nPJLjtek5Dv9aFb36m2ukW4i0EPMMtsUAtqoxPwtCXFdrhy57DPqvLOE6wW0/zcT93FckrhsvcMR/JfjGSSmqFX8El5lIYHUjsHiR2d+CN4Hn/irwwTJDgocenuLYryZo184AM88kJtwq8cocgXPOUwCzrAngnXckxo3N0a0bMPanVVTs8R55SODRRwQOOTTFid9Wd3OChQsFfnp5js6dgauuqvPGv5T4+98E7r5HYMTICoZrkIZMpXFC5ElJTuBphWGmEBpLWnH04gvbb28uoTdJqUwzf67Ex+sE9hlQYauCQkO3foXE767PkGXAN8+oolOXotm6cIHEk3dm+vqM+EEVnbqR4eqTjS0FLj079fXZBAl5SmGnPENkHQzerih6YZThmUmQWPR+gm7Use/2Z/UTEqxfJ6E01rTnJWbNlPrCpBXgC/0TjDw+QY8elCz45EJ1eS5ZBHTdyQv7rCnB1VflePufEudfWMHuuydYtRJYvFjixl/l2qYY/7Mq2lqzccEbEtdck+tTvu46G0otcCZOFJg5U+DHP65gj74KkBZgZLba307Ys1BHbEBi3/+u3c8VZ5yG6EI9tmwJcPt1TRA5cOBhKQ4ZVkGSWmDYysXatQkeuK0Jy96XOPiYKvofZBKm4vIziVnPSMz6a4b2HROMHFOHOpsIkWzZogBb1dD0PCQO4jstgEi/WezHCgrBtAPWqkNAcwFRAh98AMydLfHqHAMulRmpn+23Bw4+PMVBhyTav3KekvXXyNl243QTDvzxXoHJTwnU1UGz0vLlxr2mnxNPSnHIIRVHPXPmADfdaITxySenGDzY0+u55zahvj68xHv3S3D6aUYBE58Ri2kQsUzxk/ZzqSOargvWz6VeU4VqAHNmSvz5gUyHsr5fqGD4N1IkFWOdrFkDPHB7hmXvC+y8W4pDh6f46KMEa1ZLfPSRxNrV0FJlzYf27w8lPqw3d3zvfSs46ARlD3F/c8tBTDHYuxKyZ7jLks4Cd3Fru+jETQSstR8n+N93BN57N8G7b0u8+0+p/Rz+Q8Dacy8TFn1HKIlQ3ymxQ5cEbVoz595OyLSpEr+ZIDRTbd8Z2H6HRIdepacUm533EwUuAkeCaVNz3Hmnubf33TfBD36gwCOx+kPglpsNs6mjf7haYslS4KAhKUZ9S4Gw2O1RKzvknRHBmsLSfi6+ZC0U3q7TARIL35KY9Nsc6z6W2OMLFQz7ptKIEk/cIzB/jhn3hn6q1QSt2gOt2yVYuViiab3El0+qQ7fdSxtrNrS7Db6f1DdkywODlfRFjGj9epmwt6+zkKrM04fuFxpMTq9scCgb3mDMGRXsNzAU9mpM69cbLdexoxmhuqMvvTjTgBl7eRVduviSlQLJI48IPPaoAZjKTn/5yzpUnNHoNdefHswxebLA/5xSwYD9Urfec9EiiVWruGaxWicyKJ0k5fVFtwo9XOhB4Ym6H7brkKLjjlxjmb///a7E/ROatGYbdUYVHXdM8MYrArOnCrRsDbRsnWCbVkDLVgnq1L9bAa3aJWjd1gCrrqUddwLMmy4w/dEMHbumGKEY+lP4UQBbJ6VsYVjH1+tI+SpGUXcR4TsUuEXAKc/og6US554utNnZ83MJeu4KvDpbaTLg4MMSdIzqBaTdvAbg3keC2S9J/OtfEgpg+w6wtVAFdwZqHcFVF2qSYMJtAi9OFzj+hBTDhhlRzMd/469zvPqqxF79Eqiy0tlnVdB3j9R9njyvSy/P9E1y3TVVtGvrFxHfdY/AlKlRy+0WnpyBB6UY+pWKaWtmq4vUtVr4tmHY7ruFpR/fPm2SBgrfngVtScjaE7kAZjyeY++DK2hdblJt9lkFADMCI2IIx2glYHJL9dUJm3yXPq7u8A7beQa7ZrzAvLkSF12eoncfqi0aozYAbVxQllIDZvpUidMswKg2aAxQVwDVF2P2LImbbszRp0+iM01P/H78552baQa6bGwVP78qw/4DU4w60WSYJN6VVrzo4iZ03znBxRcpK8P8qOM986zAa6+bvN7cFPY9/Yv3k7FwEJmdwWIXtg/ypvrunWK/wanzwniPPVkXpsBtxrRymcQDt2bYvluCEaOreo8v/DnHgjkC+x1RQd+BRvS/+GSOt+cKDD62ip13N9ePj3KzERXtoBAigwkLwMXqgC5196+5i8ysCr7g4moLsG+PTtG9h5kIqjsWWnHouDYsP/awwGuvSYw5PcV+6kIpRnLg8iFNsdxV43Mt9pXn1bGDme81axIsWSSw6+cSrF4NnPXjTJeQbrihirvuEpgyReCSS6rYeSefGT/9jMQDk3J8+cgUJxxfCYDsskVbtyONpc6KazLvjfHuB7ZSyN5csS3BM0u3Asgu4FDgWrNGQmXOrduZG5tC56RbmtCjT4rh31F6McHfHszwj5kCXzymin6Djef1/IM53pyV44hRdeixBzn8WxpWfn9O5BOLhI71hjPHwiJXfZuzAds7hBhsc07ltNMr2Hcgay5kx1qxAvjZuAwNjcD3Tq3oNp8Fb0osWCDxr/+V6N4jwSWXVDDvdaW5MsNw51S1JzZuXI7evROce46ZGNV9cMllTZrlzj27il7K0GXHKvO2KNvTIHOMFrvxcT8XsXf0YJPoCTnxQtrpzwpMeyrHoSMr2GeQ6fZ463WBJ36foU//Cr70dZMV/v2hHP+YkeOLR1fRb4hiQ2AKA1j3PT4dYc/nONE2hTA2hdZCwaod2pRljiT2g85Rq93MDhzAOGiJwYaNSLBjl7AnngDpLIAw5mDKc1J7XApg/ZUGi9hrxXJg7KWZFvfKR1N+Ef0ooO3SM8HAAQmO/HKKhx8SeOIJgWOOSTFihOo/S3DDrzPNkKNHpzhg/woefSTH408K7LVngjNON+GRziXomeIemLMqavRz0fMiyEh13ai+wTDsjQ+7LHg2+ZtrMh0S/3tMFV12Mcw07yWBZyZl2GdwBUOGW4A9mGH+TIFBCmCDTVlJMdiCWTkO/1Ydeuy5FQBGRqtuyHOEZYvYpCeoEMy6Fny5mrSJhUcU0GliuAbr1dtoNfNsL/KRjAXgmgapaUHCajChAaYZjOqd9lgKUKp+uHYN0KED0LVbgu7dE/Tpk2L33iaj0vU6qbonMqxcAVx6WVXrKwVu1YEx9rImXS8980dV/OxnGbIcuOTiKrp19ezlRbMntNIFtAxspk5IPfjq9Cxb6UN7DRSwFFuU4XvmDfstWihx941N2LZTgu+eb6oQ6rxmPJPjxadzHKDaco4weksx2PwZuQbYXipEwjDYVgWYKhXJ3JSKaLUNFYWJ1eg9/7p10Ws8VyKwJiwIVEeEEvnDj03QRZUwainLEoD+/VnDYGMUwAaQkPYspfa1eBGw3XYJWrfyz2HgzKPObd48geuvz7Wpe+V4I4TJLH7iSWVf5FqbrV3LvC+nN2t1RNTo5yqUj4pdqAawvijuRTurUbo0wjj3f5mUYe4MgUFHVnHAkYa9VEh+7LcZ3psvcNSoOvTsZ/b53EMC82dagA0x2075U44FL29FBmtokAOFyGbWzOSsmekqoa50Qv1QNEmeySiEEQ+qjxDANleD9R/AFnFYMAa6MYizvoapQufttwm89JLA0KEpjj9OCXdCc4KsCTj/giadBLRoAYy/ok5XFPQWcTko6ufiRqrXX56hqF/eACju8zI3DPlfHnSG4DWALMjVGG++okkbrd85vwXadzTsqEA68YomrP1I4qQL69C6vQHj84rBZuY4kDHY1BKAvfOqQPe+Keq22ZzZKf+sadepV+062NZdcNuVSXos6MGnh4840zUU9Jz1uDDWIfI1iVEnp9jJPVGMheIAyH7i1ZiefFxqv0plkfsOMD1j7of9zW+SNWuhi+Ivz5JQvf2jR1dw7rmZnrBxP62ic2ff2aFC7B/uzjFtmve2hg1VGs3bHJ+sn6u4PM0/ycYCK3hWlwFfuIDDP2Fn/hyBJ+7J0XWXBF8fY8KjGteSf0k8cGMT2nVIMEqFTctqCmBvWIDt+UUTIqc+mOOtiMHuGdeENtsmGHn6ljdb9VVetSqbJKVqOCxmjWYiPWsQaMIuA28VeGHPS0qewS66vIJevcNMs/iZUPdMVD7YNGFDJBW5aWTmLv9oDfDO2yaUqv/eessUz9VP//4JWrVO8MI0gSFDUpz0bWKvRPeY3XJrhvnzDVIP2D/FrJeFBuU++yQYfXJVG8Y8lHldZLDOWYtbEw4oUYcE1RvjEBn0dkXspbZV9caFbwkcflwV/Q4w2aN6/cHbm/D+2xL9D67ggKMUkMz1e84C7ABiMFkOsN9f1oQOOyYY/sNPCWCNjXJk1pQ9bNIlW4e0K2nK2qFDH8p6izZJ0AxGCYP2Is2V0iHyNYljv5qiqyrdEHlRbhCHO3uB1WZ/fUZqy2HMaUqDGf1mkgQDrl9en+P110LxppoJBwxUWWGKxkaJm27KdYY5flwdOnU0PtqcVyT+eH+G5Sug21e+fWIFgw5MMWeOxO0TMw2yLl2BH55ah07bWwnger8+nX4udRTnyLOFGI31EhOubEKaJjjl4ipatjFh8I3ZAk/fn+ny0LfOa4EWrXxv2vMPZXhjpoACGDHYNMtgh32rDrvsmWDdGuDe8evRZdcUQ0/5lACmFn3U14vFUghbxGG990zkugyP5rKGLcFDo94ElsEiEGxqxCeAOVvDAu3663LdD6ay0969EuzeJ0HPngkqqTJWJS4bm+mu1mOOTjFyZEUXsO+7L8O8eeZEVPfq90+tog8r+KpS0sQ7Mt2wqN4fPbqqvTPz/FKWGZKYL31aNO9qZY2Etv+LTFIyVkOtZq4OgW3GswJT/5yhV78UR59oEpS35wk8eXcOmUsMGV5FPxsGKbOc8rAJkRxgL0/O8drzObr1StFn/wreXyB0VtmrfwVDTmBNe5s6OTW2d0bIypX5BVKIK023M1voYAEWG6qOgOxTdIwQprwsbspLcM2VuWawI45M0Hn7Ev8lzh6ZTTFjusTChYbB+u9HIdtXApQwb6d6vVw53ofnV+ZI3Hxzjt12U0ZqVXcfzJgpcMcdJrANHpziuK9U7OfD8f/7fYkJd2RYsgQ44MAUJ46qmNKMlQ2+pdmGSnsOcT8XD33uORO1njzI2phJ/Kvfj92VYcGrQoNrt35GT02+J8eCV3N8fnAFg44xK7K4868A9ubMHPtbBlPDXrlI4tGb4kUiCQ77ZhW77LXlfTG3R7XwdtVK8ZaUwkpwq7vIWWSt0y5rc2miha8NWR7M5FkB9/3eaKOTvptg5x683GP9LzIzLVBd246QmPyUxD/mSQwfkWqWotDofTsDOvO6TxDMOCXmzJbo0TM1pSMdw4F778tx4IEpdt2FXdRo/GpPaz8G/vxUjqFDK6hrYT07FiZj1vH9XEa3mUK1GV9BvEf99CTa4x570lrvL5TYYafEmMkSaFoPvPqCQP9DDeA8E5rTbFgBfNgo0bZjgjZqfYL9Wb0K+PebAmtXS70EbsddEnTuvuXBZWfFH7h+RTZaSOhHBzgRTwxmc/W4yZBCIKXzZm8+WXBR1Chat0ranA5fEkYNWxwoJMRKQOXCtMOM3n+4pM1/njokfKXCH8fUQml8Roe6fi57ecqzSPZYb9ZSboDCDVZfMuJZZCDqo+dMBDqMWqhtskC2hTuOe9aXtTZKwOZneev+FcBWWRYrV9qHn9jnQjhmYCHLWWGW3RyTxGGO2n/c62xVAVuiX9YVYUDuGcddFm6hUMrGqMwbuKwxkbGift+inh5SFzBhwfOyXhTdEDUWajhd5sbNPS/vVxkLwYTigP3ouPEjxtli3rBx0fpjKimzp+oYMDJ5ty6kwqMVeLFhpTwqyzP7+CbrFdk+Kzc5rAmGgMDNTj/J1oTVpR2f9fnISvaHueClhXOdlfLFtvHlKvkcH4Dabzz+kqcc8vHHK5u5LcF73A3pUenHHMc8ltI38fgwGQr+sjComSnQZlG/l40spvvCh2ueJBjg+vf+k+AqhEgazMrl+XgppX5cOQ8tpH0cqAg0FF6C8GjeNKAku4Jub2aF8IyUmbcOhO7zHqD+ooWh2JxQWIaqOX5b5iKX3mWmLLxwRgjARNvYjLK8D58/z4u5+oy9eGnIEGsZG1Hpi/YXeW/sixsC0PEI8B9EWamyU4/QXLU8f0hIOdL3yDNwBOEy7KDgIKTzIt1m9JrJ/uLqALceyA7heWFxvwZc5qYPWYyySTqeC7cUGtkXbzlTzQK9Occ+YK/gKc/hMjNiFJrwWODHXRMOaPaGdmslLRiL4p+Vm2gby1qfJfaqyWCWudqu+kC8ICH3DrQQN0i9nAkeemuA5QviBjyR4LbvF/SQswH8Hy6RKGkncgAjPeYcXN42ZCHnkGelm2E6AAAD+0lEQVRGSOzKH1qiXo+deQ0Yp3N4qAsfM24AxdYiukm3mivQXoZpm9VjkZYKWoVKmJYCCQH8P0hc7tDN5qarVsme+fp8RgLsEJSG2OTwk3AMRYhk4t7oK+Ik3zlqxBlNeLhqh3bD9ZEHL3XTel/KG8H2wPYXz3w5u3mmtJqFgGSf7+U9L/7lBfRlUdTxsBH9XLavPmh1LnxzWvH5XqTTNOi5+Heds+HCW34jfBbA1SyD0QAVyMR68aiU0n0RA4GNWw3crqAJDSaWDFnSdTxRcP5V6EkZmmFs44BIsLTbB59nbBVkogQtb8HQ0TST1GgeNKuuoy5V620V+7lIXId9XoEdET1Ul8KotyWYeGcsFQAsAhuNn7du/78BmJ7jZbLtCqm+SgYjOZBo8t1vJ9L9SgLanr4CxoVLF6O8KOfCnodFfSfU/GYPHlNt1utiBLMqXBZrWTICLw9vG6vDnKhmHliweJYW01rJ4Jz/Gs+6D8AWe16u+G2g4x+NXgTkZwVcG8VgLHwlqz4Q4/JcXrjhDI9NrGUsvqCWjM3Q/CSghAzkcGgnKQhrBCT2RQ/m074gHlsr8Q2i3yevKXqIietWdRgmC8LqJ7Ijyso+Ud8XufFkRRjWKfpjhrCN1UD3QHENAPWJ+c4l2uazBK5NAhgNfOUyeZTIxbVSyj1rtvcUtBdv3YnB51UYTyYCrRSFRseKhUdbUjilAYQt2AqcBRuDhyEunEmg22PzCfR/M8DZG0n7Xny1kOuI8N/XGDrxJUCyxjB5bKGdUe6BGZvjswYvrrA3YWza8V+anyzz5HIJuZMX4xGQ7IUOrA57W9I6SnObcn1kB1X21ES7HW/pdnVJe+c7fchqp56Frd/L2CHUV/wxTNED4aLnpjbbgOj67X3rs7YaeFYYfWmoL1KzgnWUKRJhUxh2hqtXJJswi1tn082qcKoC+YrF4kzI5GwhTatPmbCn9Y/mlLxnRdiKs8TAlmB1OKJcl60ycFIVwLxEYbYo7F3csZPtPKc4q3PPzOJLz7jeKa6q5mHQCfvIjCVPzGSUZqy+Bah8nzGg4vAZ9IluHdxs9FE2C2CeGWTdikUYJmR+YiKTL0lg29AyiA7jMsNIcFO9O8j+yNWNDFq2AolAEyxKYUzpFrMwg1gzCmeyWo+5dNmlLYAHX9VCvhfvnbflo9jzYiHUM5H1x+w4wkyRHHuzDWfaoKOWNyFv9LRvvQ23CMD4cFX4XLEE+8lcDIHEHlLKPkDaXUrZDkjaSSlaGJ4jozNkmbJw6r6ElAGPVweIGXmo5fZGWTHbuevMniAjM+jnonbnuMmwpExEwAn6vwrmKhP2hcdXhv1cpKvCLzEtbrP14LLpR/o/JBqhquSiLD0AAAAASUVORK5CYII=";
|
|
|
;// CONCATENATED MODULE: ./src/components/ui-customization/Cards/CourseList/img/jg.png
|
|
|
var jg_namespaceObject = "data:image/png;base64,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";
|
|
|
;// CONCATENATED MODULE: ./src/components/ui-customization/Cards/CourseList/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var CourseList = function CourseList(_ref) {
|
|
|
var className = _ref.className,
|
|
|
_ref$dataSource = _ref.dataSource,
|
|
|
dataSource = _ref$dataSource === void 0 ? [] : _ref$dataSource,
|
|
|
_ref$col = _ref.col,
|
|
|
col = _ref$col === void 0 ? 4 : _ref$col,
|
|
|
right = _ref.right,
|
|
|
_ref$bottom = _ref.bottom,
|
|
|
bottom = _ref$bottom === void 0 ? 23 : _ref$bottom,
|
|
|
_ref$precision = _ref.precision,
|
|
|
precision = _ref$precision === void 0 ? 0 : _ref$precision,
|
|
|
_ref$wrapWidth = _ref.wrapWidth,
|
|
|
wrapWidth = _ref$wrapWidth === void 0 ? 1200 : _ref$wrapWidth,
|
|
|
trackEventItems = _ref.trackEventItems,
|
|
|
loading = _ref.loading;
|
|
|
var width = Math.floor((wrapWidth - (col - 1) * right) / col);
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(spin/* default */.Z, {
|
|
|
spinning: loading,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: classnames_default()(CourseListmodules.list, className),
|
|
|
children: [!!dataSource.length && dataSource.map(function (item, index) {
|
|
|
var name = item.name,
|
|
|
id = item.id,
|
|
|
identifier = item.identifier,
|
|
|
featured = item.featured,
|
|
|
school_name = item.school_name,
|
|
|
image_url = item.image_url,
|
|
|
excellent = item.excellent,
|
|
|
is_plan = item.is_plan;
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: CourseListmodules.wrap,
|
|
|
style: {
|
|
|
width: width,
|
|
|
marginRight: (1 + index) % col === 0 ? 0 : right + precision,
|
|
|
marginBottom: bottom
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("a", {
|
|
|
target: "_blank",
|
|
|
href: "/paths/".concat(identifier),
|
|
|
className: CourseListmodules.li,
|
|
|
onClick: function onClick(e) {
|
|
|
e.preventDefault();
|
|
|
if (trackEventItems) {
|
|
|
(0,util/* trackEvent */.L9)([trackEventItems]);
|
|
|
}
|
|
|
(0,util/* openNewWindow */.xg)("/paths/".concat(identifier));
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: CourseListmodules.img,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("img", {
|
|
|
className: CourseListmodules.cover,
|
|
|
src: "".concat(env/* default.IMG_SERVER */.Z.IMG_SERVER, "/").concat(image_url)
|
|
|
}), featured === 1 && /*#__PURE__*/(0,jsx_runtime.jsx)("img", {
|
|
|
className: CourseListmodules.sign,
|
|
|
src: gg_namespaceObject
|
|
|
}), featured === 2 && /*#__PURE__*/(0,jsx_runtime.jsx)("img", {
|
|
|
className: CourseListmodules.sign,
|
|
|
src: ''
|
|
|
}), featured === 3 && /*#__PURE__*/(0,jsx_runtime.jsx)("img", {
|
|
|
className: CourseListmodules.sign,
|
|
|
src: sg_namespaceObject
|
|
|
}), featured === 4 && /*#__PURE__*/(0,jsx_runtime.jsx)("img", {
|
|
|
className: CourseListmodules.sign,
|
|
|
src: jg_namespaceObject
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: CourseListmodules.name,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
|
|
|
title: name,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: CourseListmodules.e,
|
|
|
children: name
|
|
|
})
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
|
|
|
title: "\u53D1\u5E03\u5355\u4F4D\uFF1A".concat(school_name),
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: CourseListmodules.unit,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
|
className: "iconfont icon-danwei1 font14 mr3"
|
|
|
}), school_name]
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: CourseListmodules.tags,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
|
|
|
placement: "bottom",
|
|
|
title: "\u7AE0\u8282\u6570",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
|
className: "iconfont icon-zhangjie1 font14 mr3"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
children: item.stages_count
|
|
|
})]
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
|
|
|
placement: "bottom",
|
|
|
title: "\u5B66\u4E60\u4EBA\u6570",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
|
className: "iconfont icon-chengyuan font14 mr3"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
children: item.members_count
|
|
|
})]
|
|
|
})
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
children: [is_plan && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: CourseListmodules.tag1,
|
|
|
children: "101\u8BA1\u5212"
|
|
|
}), excellent && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: CourseListmodules.tag2,
|
|
|
children: "\u5F00\u653E\u8BFE\u7A0B"
|
|
|
})]
|
|
|
})]
|
|
|
})]
|
|
|
})
|
|
|
}, id);
|
|
|
}), !dataSource.length && /*#__PURE__*/(0,jsx_runtime.jsx)(NoData/* default */.Z, {})]
|
|
|
})
|
|
|
});
|
|
|
};
|
|
|
/* harmony default export */ var Cards_CourseList = (CourseList);
|
|
|
;// CONCATENATED MODULE: ./src/components/ui-customization/Cards/ClassroomList/index.less?modules
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
/* harmony default export */ var ClassroomListmodules = ({"flex_box_center":"flex_box_center___eMcr7","flex_space_between":"flex_space_between___HcNca","flex_box_vertical_center":"flex_box_vertical_center___ZnvVN","flex_box_center_end":"flex_box_center_end___fdgDf","flex_box_column":"flex_box_column___SEKvd","list":"list___L1hmU","wrap":"wrap___pKgcW","lockWrap":"lockWrap___SMhkK","top":"top___udHSB","sign":"sign___uwRpq","name":"name___Fpf90","img":"img___AMLhL","text":"text___KiTb7","btns":"btns___i6IuZ","bottom":"bottom____k2sh"});
|
|
|
;// CONCATENATED MODULE: ./src/components/ui-customization/Cards/ClassroomList/img/privately.png
|
|
|
var privately_namespaceObject = "data:image/png;base64,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";
|
|
|
;// CONCATENATED MODULE: ./src/components/ui-customization/Cards/ClassroomList/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var ClassroomList = function ClassroomList(_ref) {
|
|
|
var className = _ref.className,
|
|
|
_ref$dataSource = _ref.dataSource,
|
|
|
dataSource = _ref$dataSource === void 0 ? [] : _ref$dataSource,
|
|
|
_ref$col = _ref.col,
|
|
|
col = _ref$col === void 0 ? 4 : _ref$col,
|
|
|
right = _ref.right,
|
|
|
_ref$bottom = _ref.bottom,
|
|
|
bottom = _ref$bottom === void 0 ? 23 : _ref$bottom,
|
|
|
_ref$precision = _ref.precision,
|
|
|
precision = _ref$precision === void 0 ? 0 : _ref$precision,
|
|
|
_ref$wrapWidth = _ref.wrapWidth,
|
|
|
wrapWidth = _ref$wrapWidth === void 0 ? 1200 : _ref$wrapWidth,
|
|
|
trackEventItems = _ref.trackEventItems,
|
|
|
loading = _ref.loading;
|
|
|
var width = Math.floor((wrapWidth - (col - 1) * right) / col);
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(spin/* default */.Z, {
|
|
|
spinning: loading,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: classnames_default()(ClassroomListmodules.list, className),
|
|
|
children: [!!dataSource.length && dataSource.map(function (item, index) {
|
|
|
var subject_identifier = item.subject_identifier,
|
|
|
id = item.id,
|
|
|
identifier = item.identifier,
|
|
|
power = item.power;
|
|
|
var is_public = item.is_public != 0 && item.is_public;
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: ClassroomListmodules.wrap,
|
|
|
style: {
|
|
|
width: width,
|
|
|
marginRight: (1 + index) % col === 0 ? 0 : right + precision,
|
|
|
marginBottom: bottom
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("a", {
|
|
|
className: ClassroomListmodules.li,
|
|
|
onClick: function onClick(e) {
|
|
|
e.preventDefault();
|
|
|
if (trackEventItems) {
|
|
|
(0,util/* trackEvent */.L9)([trackEventItems]);
|
|
|
}
|
|
|
(0,util/* openNewWindow */.xg)(item.first_category_url);
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: ClassroomListmodules.top,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
|
|
|
title: item.name,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: ClassroomListmodules.name,
|
|
|
children: item.name
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("img", {
|
|
|
className: ClassroomListmodules.img,
|
|
|
src: true ? env/* default.IMG_SERVER */.Z.IMG_SERVER + '/images/' + item.avatar_url : 0
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: ClassroomListmodules.text,
|
|
|
title: item.creator,
|
|
|
children: item.creator
|
|
|
}), subject_identifier && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: ClassroomListmodules.btns,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
children: "\u5F00\u653E\u8BFE\u7A0B"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("aside", {
|
|
|
children: "\u5F00\u653E\u8BFE\u5802"
|
|
|
})]
|
|
|
}), is_public && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: ClassroomListmodules.sign,
|
|
|
children: "\u516C\u5F00"
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: ClassroomListmodules.bottom,
|
|
|
children: [item.visits > 0 && /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
|
|
|
title: "\u8BBF\u95EE\u91CF",
|
|
|
placement: "bottom",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
|
className: "iconfont icon-liulanyan"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
children: item.visits
|
|
|
})]
|
|
|
})
|
|
|
}), item.course_members_count > 0 && /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
|
|
|
title: "\u6210\u5458",
|
|
|
placement: "bottom",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
|
className: "iconfont icon-chengyuan"
|
|
|
}), item.course_members_count]
|
|
|
})
|
|
|
}), item.tasks_count > 0 && /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
|
|
|
title: "\u4F5C\u4E1A",
|
|
|
placement: "bottom",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
|
className: "iconfont icon-zuoye"
|
|
|
}), item.tasks_count]
|
|
|
})
|
|
|
}), item.is_end ? /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
style: {
|
|
|
color: '#6B758B'
|
|
|
},
|
|
|
children: "\u5DF2\u7ED3\u675F"
|
|
|
}) : /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
style: {
|
|
|
color: '#00B187'
|
|
|
},
|
|
|
children: "\u8FDB\u884C\u4E2D"
|
|
|
})]
|
|
|
})]
|
|
|
}), !item.is_accessible && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: ClassroomListmodules.lockWrap,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("img", {
|
|
|
src: "".concat(env/* default.IMG_SERVER */.Z.IMG_SERVER, "/images/educoder/icon/lockclose.svg")
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "mt15 font16 c-white",
|
|
|
children: "\u975E\u8BFE\u5802\u6210\u5458\u4E0D\u53EF\u8FDB\u5165"
|
|
|
})]
|
|
|
})]
|
|
|
}, id);
|
|
|
}), !dataSource.length && /*#__PURE__*/(0,jsx_runtime.jsx)(NoData/* default */.Z, {})]
|
|
|
})
|
|
|
});
|
|
|
};
|
|
|
/* harmony default export */ var Cards_ClassroomList = (ClassroomList);
|
|
|
;// CONCATENATED MODULE: ./src/components/ui-customization/CustomTabs/index.less?modules
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
/* harmony default export */ var CustomTabsmodules = ({"flex_box_center":"flex_box_center___d27mZ","flex_space_between":"flex_space_between___qfRU9","flex_box_vertical_center":"flex_box_vertical_center___fCRld","flex_box_center_end":"flex_box_center_end___ORMV8","flex_box_column":"flex_box_column___PNKtZ","tabs":"tabs___alpa7","tabsWrap":"tabsWrap___aCQjw","tab":"tab___MKLr4","active":"active___nl_4v"});
|
|
|
;// CONCATENATED MODULE: ./src/components/ui-customization/CustomTabs/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var FixedBottom = function FixedBottom(_ref) {
|
|
|
var _ref$dataSource = _ref.dataSource,
|
|
|
dataSource = _ref$dataSource === void 0 ? [] : _ref$dataSource,
|
|
|
value = _ref.value,
|
|
|
onChange = _ref.onChange,
|
|
|
className = _ref.className,
|
|
|
_ref$style = _ref.style,
|
|
|
style = _ref$style === void 0 ? {} : _ref$style,
|
|
|
tabBarExtraContent = _ref.tabBarExtraContent;
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: classnames_default()(CustomTabsmodules.tabs, className),
|
|
|
style: style,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: CustomTabsmodules.tabsWrap,
|
|
|
children: dataSource.map(function (item, index) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
|
|
|
className: CustomTabsmodules.tab,
|
|
|
onClick: function onClick() {
|
|
|
onChange(item.id);
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: value === item.id ? CustomTabsmodules.active : '',
|
|
|
children: item.name
|
|
|
}), (item === null || item === void 0 ? void 0 : item.resetCount) == undefined && (item === null || item === void 0 ? void 0 : item.total) !== undefined && /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
children: ["\uFF08", item === null || item === void 0 ? void 0 : item.total, "\uFF09"]
|
|
|
}), (item === null || item === void 0 ? void 0 : item.resetCount) !== undefined && (item === null || item === void 0 ? void 0 : item.total) !== undefined && /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
|
|
|
title: (item === null || item === void 0 ? void 0 : item.tip) != undefined ? item === null || item === void 0 ? void 0 : item.tip : '',
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
style: {
|
|
|
color: "#9096A3"
|
|
|
},
|
|
|
children: ["\uFF08", /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
style: {
|
|
|
color: "#000"
|
|
|
},
|
|
|
children: item === null || item === void 0 ? void 0 : item.resetCount
|
|
|
}), "/", /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
children: item === null || item === void 0 ? void 0 : item.total
|
|
|
}), "\uFF09"]
|
|
|
})
|
|
|
})]
|
|
|
}, index);
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: CustomTabsmodules.tabBar,
|
|
|
children: tabBarExtraContent
|
|
|
})]
|
|
|
});
|
|
|
};
|
|
|
/* harmony default export */ var CustomTabs = (FixedBottom);
|
|
|
;// CONCATENATED MODULE: ./src/components/ui-customization/CustomTable/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
var CustomCountdown = function CustomCountdown(_ref) {
|
|
|
var className = _ref.className,
|
|
|
_ref$style = _ref.style,
|
|
|
style = _ref$style === void 0 ? {} : _ref$style,
|
|
|
children = _ref.children;
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: classnames_default()(className),
|
|
|
style: style,
|
|
|
children: children
|
|
|
});
|
|
|
};
|
|
|
/* harmony default export */ var CustomTable = (CustomCountdown);
|
|
|
;// CONCATENATED MODULE: ./src/components/ui-customization/SuperiorSort/index.less?modules
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
/* harmony default export */ var SuperiorSortmodules = ({"flex_box_center":"flex_box_center___e6HxQ","flex_space_between":"flex_space_between___RnXYe","flex_box_vertical_center":"flex_box_vertical_center___lVxPk","flex_box_center_end":"flex_box_center_end___bu8yv","flex_box_column":"flex_box_column___JczGj","orderWrap":"orderWrap___ZfyGX","orderIconWrap":"orderIconWrap___XTB_O","orderAsc":"orderAsc___KWHmA","orderDesc":"orderDesc___rHdbB","active":"active___a7eSP","cursorPointer":"cursorPointer___gs9kL","orderTextWrap":"orderTextWrap___teAKn"});
|
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/dropdown/index.js + 1 modules
|
|
|
var dropdown = __webpack_require__(85418);
|
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/menu/index.js + 11 modules
|
|
|
var menu = __webpack_require__(68508);
|
|
|
;// CONCATENATED MODULE: ./src/components/ui-customization/SuperiorSort/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var dropItem = [{
|
|
|
id: 'updated_at',
|
|
|
name: '最新动态'
|
|
|
}, {
|
|
|
id: 'created_at',
|
|
|
name: '最新创建'
|
|
|
}, {
|
|
|
id: 'name',
|
|
|
name: '名称排序'
|
|
|
}];
|
|
|
var SuperiorSort = function SuperiorSort(_ref) {
|
|
|
var _dataSource$find;
|
|
|
var sortValue = _ref.sortValue,
|
|
|
dropValue = _ref.dropValue,
|
|
|
className = _ref.className,
|
|
|
onSort = _ref.onSort,
|
|
|
onDrop = _ref.onDrop,
|
|
|
_ref$dataSource = _ref.dataSource,
|
|
|
dataSource = _ref$dataSource === void 0 ? dropItem : _ref$dataSource;
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: classnames_default()(SuperiorSortmodules.orderWrap, className),
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(dropdown/* default */.Z, {
|
|
|
dropdownRender: function dropdownRender() {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(menu/* default */.Z, {
|
|
|
children: dataSource.map(function (e, i) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(menu/* default.Item */.Z.Item, {
|
|
|
onClick: function onClick() {
|
|
|
return onDrop(e.id);
|
|
|
},
|
|
|
children: e.name
|
|
|
}, i);
|
|
|
})
|
|
|
});
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: SuperiorSortmodules.orderTextWrap,
|
|
|
children: (_dataSource$find = dataSource.find(function (e) {
|
|
|
return dropValue === e.id;
|
|
|
})) === null || _dataSource$find === void 0 ? void 0 : _dataSource$find.name
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
className: SuperiorSortmodules.orderIconWrap,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: SuperiorSortmodules.orderAsc,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
|
className: sortValue === 'asc' ? "iconfont icon-sanjiaoxing-up font12 ".concat(SuperiorSortmodules.cursorPointer, " ").concat(SuperiorSortmodules.active) : "iconfont icon-sanjiaoxing-up font12 ".concat(SuperiorSortmodules.cursorPointer),
|
|
|
onClick: function onClick() {
|
|
|
return onSort(sortValue === 'asc' ? 'desc' : 'asc');
|
|
|
}
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: SuperiorSortmodules.orderDesc,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
|
className: sortValue === 'desc' ? "iconfont icon-sanjiaoxing-down font12 ".concat(SuperiorSortmodules.cursorPointer, " ").concat(SuperiorSortmodules.active) : "iconfont icon-sanjiaoxing-down font12 ".concat(SuperiorSortmodules.cursorPointer),
|
|
|
onClick: function onClick() {
|
|
|
return onSort(sortValue === 'asc' ? 'desc' : 'asc');
|
|
|
}
|
|
|
})
|
|
|
})]
|
|
|
})]
|
|
|
});
|
|
|
};
|
|
|
/* harmony default export */ var ui_customization_SuperiorSort = (SuperiorSort);
|
|
|
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/objectSpread2.js
|
|
|
var objectSpread2 = __webpack_require__(42122);
|
|
|
var objectSpread2_default = /*#__PURE__*/__webpack_require__.n(objectSpread2);
|
|
|
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/regeneratorRuntime.js
|
|
|
var regeneratorRuntime = __webpack_require__(17061);
|
|
|
var regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(regeneratorRuntime);
|
|
|
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/asyncToGenerator.js
|
|
|
var asyncToGenerator = __webpack_require__(17156);
|
|
|
var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator);
|
|
|
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/objectWithoutProperties.js
|
|
|
var objectWithoutProperties = __webpack_require__(70215);
|
|
|
var objectWithoutProperties_default = /*#__PURE__*/__webpack_require__.n(objectWithoutProperties);
|
|
|
;// CONCATENATED MODULE: ./src/components/ui-customization/CustomButton/index.less?modules
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
/* harmony default export */ var CustomButtonmodules = ({"flex_box_center":"flex_box_center___LCi0B","flex_space_between":"flex_space_between___hzONe","flex_box_vertical_center":"flex_box_vertical_center___ZyQRE","flex_box_center_end":"flex_box_center_end___XKM74","flex_box_column":"flex_box_column___p8LCU","btn":"btn___In02G","mediacy-round":"mediacy-round___uveEv","mediacy-default":"mediacy-default___dDxsd","default":"default___K791v"});
|
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/button/index.js
|
|
|
var es_button = __webpack_require__(71577);
|
|
|
;// CONCATENATED MODULE: ./src/components/ui-customization/CustomButton/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var _excluded = ["className", "style", "children", "loading", "openLoading", "onClick", "size", "shape"];
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var CustomButton = function CustomButton(_ref) {
|
|
|
var className = _ref.className,
|
|
|
style = _ref.style,
|
|
|
children = _ref.children,
|
|
|
_ref$loading = _ref.loading,
|
|
|
loading = _ref$loading === void 0 ? false : _ref$loading,
|
|
|
openLoading = _ref.openLoading,
|
|
|
_ref$onClick = _ref.onClick,
|
|
|
onClick = _ref$onClick === void 0 ? function () {} : _ref$onClick,
|
|
|
_ref$size = _ref.size,
|
|
|
size = _ref$size === void 0 ? 'middle' : _ref$size,
|
|
|
_ref$shape = _ref.shape,
|
|
|
shape = _ref$shape === void 0 ? 'round' : _ref$shape,
|
|
|
props = objectWithoutProperties_default()(_ref, _excluded);
|
|
|
var _useState = (0,react.useState)(false),
|
|
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
|
btnLoading = _useState2[0],
|
|
|
setBtnLoading = _useState2[1];
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, objectSpread2_default()(objectSpread2_default()({
|
|
|
onClick: (0,lodash.throttle)( /*#__PURE__*/function () {
|
|
|
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee(e) {
|
|
|
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
|
|
|
while (1) switch (_context.prev = _context.next) {
|
|
|
case 0:
|
|
|
openLoading && setBtnLoading(true);
|
|
|
_context.prev = 1;
|
|
|
_context.next = 4;
|
|
|
return onClick(e);
|
|
|
case 4:
|
|
|
_context.next = 9;
|
|
|
break;
|
|
|
case 6:
|
|
|
_context.prev = 6;
|
|
|
_context.t0 = _context["catch"](1);
|
|
|
console.log("error", _context.t0);
|
|
|
case 9:
|
|
|
openLoading && setBtnLoading(false);
|
|
|
case 10:
|
|
|
case "end":
|
|
|
return _context.stop();
|
|
|
}
|
|
|
}, _callee, null, [[1, 6]]);
|
|
|
}));
|
|
|
return function (_x) {
|
|
|
return _ref2.apply(this, arguments);
|
|
|
};
|
|
|
}(), 2000, {
|
|
|
leading: true,
|
|
|
trailing: false
|
|
|
}),
|
|
|
className: classnames_default()(CustomButtonmodules.btn, CustomButtonmodules["".concat(size, "-").concat(shape)], className),
|
|
|
style: style,
|
|
|
size: size,
|
|
|
shape: shape,
|
|
|
loading: btnLoading || loading
|
|
|
}, props), {}, {
|
|
|
children: children
|
|
|
}));
|
|
|
};
|
|
|
/* harmony default export */ var ui_customization_CustomButton = (CustomButton);
|
|
|
;// CONCATENATED MODULE: ./src/components/ui-customization/HeadBack/index.less?modules
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
/* harmony default export */ var HeadBackmodules = ({"flex_box_center":"flex_box_center___TB7bQ","flex_space_between":"flex_space_between___oBlTb","flex_box_vertical_center":"flex_box_vertical_center___b5XbB","flex_box_center_end":"flex_box_center_end___CNhe7","flex_box_column":"flex_box_column___yHXKW","head":"head___ghH72","node":"node___mjPEy"});
|
|
|
;// CONCATENATED MODULE: ./src/components/ui-customization/HeadBack/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var HeadBack_CustomButton = function CustomButton(_ref) {
|
|
|
var className = _ref.className,
|
|
|
style = _ref.style,
|
|
|
_ref$children = _ref.children,
|
|
|
children = _ref$children === void 0 ? null : _ref$children,
|
|
|
onClick = _ref.onClick,
|
|
|
title = _ref.title;
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: classnames_default()(HeadBackmodules.head, className),
|
|
|
style: style,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
className: "primary-hover",
|
|
|
onClick: onClick,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
|
className: "iconfont icon-fanhui2 font12"
|
|
|
}), "\u8FD4\u56DE"]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("b", {
|
|
|
title: title,
|
|
|
children: title
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: HeadBackmodules.node,
|
|
|
children: children
|
|
|
})]
|
|
|
});
|
|
|
};
|
|
|
/* harmony default export */ var HeadBack = (HeadBack_CustomButton);
|
|
|
;// CONCATENATED MODULE: ./src/components/ui-customization/ConfirmAndCancel/index.less?modules
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
/* harmony default export */ var ConfirmAndCancelmodules = ({"flex_box_center":"flex_box_center___AlHuF","flex_space_between":"flex_space_between___vN2LW","flex_box_vertical_center":"flex_box_vertical_center___Ac7D2","flex_box_center_end":"flex_box_center_end___y38I7","flex_box_column":"flex_box_column___iQE6P","btns":"btns___sNgTb","confirm":"confirm___Ozirl","cancel":"cancel___aiq1I"});
|
|
|
;// CONCATENATED MODULE: ./src/components/ui-customization/ConfirmAndCancel/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var ConfirmAndCancel = function ConfirmAndCancel(_ref) {
|
|
|
var _ref$confirmShow = _ref.confirmShow,
|
|
|
confirmShow = _ref$confirmShow === void 0 ? true : _ref$confirmShow,
|
|
|
confirmTitle = _ref.confirmTitle,
|
|
|
confirmClick = _ref.confirmClick,
|
|
|
_ref$cancelShow = _ref.cancelShow,
|
|
|
cancelShow = _ref$cancelShow === void 0 ? true : _ref$cancelShow,
|
|
|
cancelTitle = _ref.cancelTitle,
|
|
|
cancelClick = _ref.cancelClick,
|
|
|
className = _ref.className,
|
|
|
style = _ref.style,
|
|
|
_ref$confirmLoading = _ref.confirmLoading,
|
|
|
confirmLoading = _ref$confirmLoading === void 0 ? false : _ref$confirmLoading;
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: classnames_default()(ConfirmAndCancelmodules.btns, className),
|
|
|
style: style,
|
|
|
children: [confirmShow && /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
|
loading: confirmLoading,
|
|
|
onClick: confirmClick,
|
|
|
type: "primary",
|
|
|
className: ConfirmAndCancelmodules.confirm,
|
|
|
children: confirmTitle
|
|
|
}), cancelShow && /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
|
onClick: cancelClick,
|
|
|
className: ConfirmAndCancelmodules.cancel,
|
|
|
children: cancelTitle
|
|
|
})]
|
|
|
});
|
|
|
};
|
|
|
/* harmony default export */ var ui_customization_ConfirmAndCancel = (ConfirmAndCancel);
|
|
|
;// CONCATENATED MODULE: ./src/components/ui-customization/FixedBottom/index.less?modules
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
/* harmony default export */ var FixedBottommodules = ({"flex_box_center":"flex_box_center___jkpdr","flex_space_between":"flex_space_between___OtsL8","flex_box_vertical_center":"flex_box_vertical_center___rbcb_","flex_box_center_end":"flex_box_center_end___zBR21","flex_box_column":"flex_box_column___nS_eP","fixedBottom":"fixedBottom___oJl7m","wrap":"wrap___A3Oq1","center":"center____VL1y"});
|
|
|
;// CONCATENATED MODULE: ./src/components/ui-customization/FixedBottom/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var FixedBottom_CustomTabs = function CustomTabs(_ref) {
|
|
|
var className = _ref.className,
|
|
|
_ref$style = _ref.style,
|
|
|
style = _ref$style === void 0 ? {} : _ref$style,
|
|
|
LeftContent = _ref.LeftContent,
|
|
|
children = _ref.children,
|
|
|
RightContent = _ref.RightContent;
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: classnames_default()(FixedBottommodules.fixedBottom, className),
|
|
|
style: style,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: FixedBottommodules.wrap,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: FixedBottommodules.left,
|
|
|
children: LeftContent
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: FixedBottommodules.center,
|
|
|
children: children
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: FixedBottommodules.right,
|
|
|
children: RightContent
|
|
|
})]
|
|
|
})
|
|
|
});
|
|
|
};
|
|
|
/* harmony default export */ var ui_customization_FixedBottom = (FixedBottom_CustomTabs);
|
|
|
;// CONCATENATED MODULE: ./src/components/ui-customization/CustomCrumbs/index.less?modules
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
/* harmony default export */ var CustomCrumbsmodules = ({"flex_box_center":"flex_box_center___tY8Yn","flex_space_between":"flex_space_between___vHdYA","flex_box_vertical_center":"flex_box_vertical_center___pa61F","flex_box_center_end":"flex_box_center_end___HyDXt","flex_box_column":"flex_box_column___UjZek","crumbs":"crumbs___V41Oe","hover":"hover___bEIVd"});
|
|
|
// EXTERNAL MODULE: ./src/.umi-production/exports.ts + 8 modules
|
|
|
var _umi_production_exports = __webpack_require__(89214);
|
|
|
;// CONCATENATED MODULE: ./src/components/ui-customization/CustomCrumbs/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var CustomCrumbs_CustomTabs = function CustomTabs(_ref) {
|
|
|
var className = _ref.className,
|
|
|
_ref$style = _ref.style,
|
|
|
style = _ref$style === void 0 ? {} : _ref$style,
|
|
|
_ref$dataSource = _ref.dataSource,
|
|
|
dataSource = _ref$dataSource === void 0 ? [] : _ref$dataSource;
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: classnames_default()(CustomCrumbsmodules.crumbs, className),
|
|
|
style: style,
|
|
|
children: dataSource.map(function (e, i) {
|
|
|
if (i < dataSource.length - 1) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)(react.Fragment, {
|
|
|
children: [e.path ? /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: CustomCrumbsmodules.hover,
|
|
|
onClick: function onClick() {
|
|
|
return _umi_production_exports.history.push(e.path);
|
|
|
},
|
|
|
children: e.name
|
|
|
}) : /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
children: e.name
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
children: ["\xA0", '>', "\xA0"]
|
|
|
})]
|
|
|
}, i);
|
|
|
}
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
style: {
|
|
|
color: '#5F6368'
|
|
|
},
|
|
|
children: e.name
|
|
|
}, i);
|
|
|
})
|
|
|
});
|
|
|
};
|
|
|
/* harmony default export */ var CustomCrumbs = (CustomCrumbs_CustomTabs);
|
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/statistic/index.js + 5 modules
|
|
|
var statistic = __webpack_require__(55054);
|
|
|
;// CONCATENATED MODULE: ./src/components/ui-customization/CustomCountdown/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
var CustomCountdown_excluded = ["onChange"];
|
|
|
|
|
|
|
|
|
|
|
|
var Countdown = statistic/* default.Countdown */.Z.Countdown;
|
|
|
|
|
|
// value输入是antd的Countdown
|
|
|
// onChange自带的是毫秒,不好做判断,现在被更改了,输出是秒
|
|
|
var CustomCountdown_CustomCountdown = function CustomCountdown(_ref) {
|
|
|
var onChange = _ref.onChange,
|
|
|
props = objectWithoutProperties_default()(_ref, CustomCountdown_excluded);
|
|
|
var _useState = (0,react.useState)(null),
|
|
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
|
time = _useState2[0],
|
|
|
setTime = _useState2[1];
|
|
|
(0,react.useEffect)(function () {
|
|
|
if (typeof time === 'number' && time >= 0) {
|
|
|
onChange(time);
|
|
|
}
|
|
|
}, [time]);
|
|
|
var onTimeChange = function onTimeChange(c) {
|
|
|
var currentTime = Math.floor(c / 1000);
|
|
|
setTime(currentTime);
|
|
|
};
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(Countdown, objectSpread2_default()(objectSpread2_default()({}, props), {}, {
|
|
|
onChange: onTimeChange
|
|
|
}));
|
|
|
};
|
|
|
/* harmony default export */ var ui_customization_CustomCountdown = (CustomCountdown_CustomCountdown);
|
|
|
;// CONCATENATED MODULE: ./src/components/ui-customization/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
|
|
|
/***/ 1310:
|
|
|
/*!**********************************************************************!*\
|
|
|
!*** ./src/pages/Innovation/Detail/components/DataSetPane/index.tsx ***!
|
|
|
\**********************************************************************/
|
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/slicedToArray.js */ 27424);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_0__);
|
|
|
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! antd */ 83062);
|
|
|
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! antd */ 2453);
|
|
|
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! antd */ 71577);
|
|
|
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! antd */ 63889);
|
|
|
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ 67294);
|
|
|
/* harmony import */ var _service_innovation__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/service/innovation */ 33265);
|
|
|
/* harmony import */ var react_copy_to_clipboard__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! react-copy-to-clipboard */ 74855);
|
|
|
/* harmony import */ var react_copy_to_clipboard__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(react_copy_to_clipboard__WEBPACK_IMPORTED_MODULE_3__);
|
|
|
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! react/jsx-runtime */ 85893);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var columns = [{
|
|
|
title: '文件名',
|
|
|
dataIndex: 'filename',
|
|
|
width: '19%',
|
|
|
ellipsis: true
|
|
|
}, {
|
|
|
title: '备注',
|
|
|
dataIndex: 'description',
|
|
|
width: '19%',
|
|
|
ellipsis: true
|
|
|
}, {
|
|
|
title: '创建时间',
|
|
|
dataIndex: 'created_on',
|
|
|
width: '19%',
|
|
|
ellipsis: true
|
|
|
}, {
|
|
|
title: '文件路径',
|
|
|
dataIndex: 'path',
|
|
|
width: '19%',
|
|
|
render: function render(text) {
|
|
|
return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsxs)("div", {
|
|
|
style: {
|
|
|
display: 'flex'
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)(antd__WEBPACK_IMPORTED_MODULE_5__/* ["default"] */ .Z, {
|
|
|
title: text,
|
|
|
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)("span", {
|
|
|
style: {
|
|
|
width: '80%',
|
|
|
display: 'inline-block',
|
|
|
whiteSpace: 'nowrap',
|
|
|
overflow: 'hidden',
|
|
|
textOverflow: 'ellipsis'
|
|
|
},
|
|
|
children: text
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)(react_copy_to_clipboard__WEBPACK_IMPORTED_MODULE_3__.CopyToClipboard, {
|
|
|
text: text,
|
|
|
onCopy: function onCopy() {
|
|
|
return antd__WEBPACK_IMPORTED_MODULE_6__/* ["default"].success */ .ZP.success('复制成功');
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)("i", {
|
|
|
className: "iconfont icon-fuzhi2 current ml5 mr40",
|
|
|
style: {
|
|
|
color: '#165DFF',
|
|
|
marginLeft: 30
|
|
|
}
|
|
|
})
|
|
|
})]
|
|
|
});
|
|
|
}
|
|
|
}, {
|
|
|
title: '最后修改人',
|
|
|
dataIndex: 'author',
|
|
|
width: '14%',
|
|
|
ellipsis: true
|
|
|
}, {
|
|
|
title: '大小',
|
|
|
dataIndex: 'filesize',
|
|
|
// align: 'right',
|
|
|
width: '10%',
|
|
|
ellipsis: true
|
|
|
}];
|
|
|
var DataSetPane = function DataSetPane(_ref) {
|
|
|
var detail = _ref.detail;
|
|
|
var _useState = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(detail),
|
|
|
_useState2 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_0___default()(_useState, 2),
|
|
|
dataSource = _useState2[0],
|
|
|
setDataSource = _useState2[1];
|
|
|
var _useState3 = (0,react__WEBPACK_IMPORTED_MODULE_1__.useState)(1),
|
|
|
_useState4 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_0___default()(_useState3, 2),
|
|
|
currentPage = _useState4[0],
|
|
|
setCurrentPage = _useState4[1];
|
|
|
(0,react__WEBPACK_IMPORTED_MODULE_1__.useEffect)(function () {
|
|
|
if (detail) {
|
|
|
setDataSource(detail);
|
|
|
}
|
|
|
}, [detail]);
|
|
|
var pagination = (0,react__WEBPACK_IMPORTED_MODULE_1__.useMemo)(function () {
|
|
|
return {
|
|
|
position: ['bottomCenter'],
|
|
|
pageSize: 10,
|
|
|
showSizeChanger: false,
|
|
|
current: currentPage,
|
|
|
showQuickJumper: {
|
|
|
goButton: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)(antd__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .ZP, {
|
|
|
children: "GO"
|
|
|
})
|
|
|
},
|
|
|
total: dataSource === null || dataSource === void 0 ? void 0 : dataSource.data_sets_count,
|
|
|
onChange: function onChange(page) {
|
|
|
setCurrentPage(page);
|
|
|
(0,_service_innovation__WEBPACK_IMPORTED_MODULE_2__/* .getProjectDataSet */ .pV)("".concat(detail === null || detail === void 0 ? void 0 : detail.id), {
|
|
|
limit: 10,
|
|
|
page: page
|
|
|
}).then(function (res) {
|
|
|
setDataSource(res);
|
|
|
});
|
|
|
}
|
|
|
};
|
|
|
}, [currentPage, dataSource]);
|
|
|
return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_4__.jsx)(antd__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Z, {
|
|
|
columns: columns,
|
|
|
dataSource: dataSource === null || dataSource === void 0 ? void 0 : dataSource.data_sets,
|
|
|
rowKey: "attachment_id",
|
|
|
pagination: pagination
|
|
|
});
|
|
|
};
|
|
|
/* harmony default export */ __webpack_exports__["Z"] = (/*#__PURE__*/(0,react__WEBPACK_IMPORTED_MODULE_1__.memo)(DataSetPane));
|
|
|
|
|
|
/***/ }),
|
|
|
|
|
|
/***/ 94214:
|
|
|
/*!**********************************************************************!*\
|
|
|
!*** ./src/pages/Innovation/Tasks/Collaborate/index.tsx + 4 modules ***!
|
|
|
\**********************************************************************/
|
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
|
|
|
// EXPORTS
|
|
|
__webpack_require__.d(__webpack_exports__, {
|
|
|
"Z": function() { return /* binding */ Collaborate; }
|
|
|
});
|
|
|
|
|
|
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/objectSpread2.js
|
|
|
var objectSpread2 = __webpack_require__(42122);
|
|
|
var objectSpread2_default = /*#__PURE__*/__webpack_require__.n(objectSpread2);
|
|
|
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/regeneratorRuntime.js
|
|
|
var regeneratorRuntime = __webpack_require__(17061);
|
|
|
var regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(regeneratorRuntime);
|
|
|
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/asyncToGenerator.js
|
|
|
var asyncToGenerator = __webpack_require__(17156);
|
|
|
var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator);
|
|
|
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/slicedToArray.js
|
|
|
var slicedToArray = __webpack_require__(27424);
|
|
|
var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);
|
|
|
// EXTERNAL MODULE: ./node_modules/react/index.js
|
|
|
var react = __webpack_require__(67294);
|
|
|
// EXTERNAL MODULE: ./src/.umi-production/exports.ts + 8 modules
|
|
|
var _umi_production_exports = __webpack_require__(89214);
|
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/modal/index.js + 39 modules
|
|
|
var modal = __webpack_require__(72423);
|
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/message/index.js + 4 modules
|
|
|
var message = __webpack_require__(2453);
|
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/button/index.js
|
|
|
var es_button = __webpack_require__(71577);
|
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/skeleton/index.js + 12 modules
|
|
|
var skeleton = __webpack_require__(21687);
|
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/pagination/index.js + 11 modules
|
|
|
var pagination = __webpack_require__(83338);
|
|
|
// EXTERNAL MODULE: ./src/utils/env.ts + 1 modules
|
|
|
var env = __webpack_require__(59758);
|
|
|
// EXTERNAL MODULE: ./src/utils/authority.ts
|
|
|
var authority = __webpack_require__(7);
|
|
|
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/objectWithoutProperties.js
|
|
|
var objectWithoutProperties = __webpack_require__(70215);
|
|
|
var objectWithoutProperties_default = /*#__PURE__*/__webpack_require__.n(objectWithoutProperties);
|
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/radio/index.js + 5 modules
|
|
|
var es_radio = __webpack_require__(78045);
|
|
|
;// CONCATENATED MODULE: ./src/pages/Innovation/Tasks/Collaborate/components/ChangeManagerModal/index.less?modules
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
/* harmony default export */ var ChangeManagerModalmodules = ({"title":"title___rpaor","content":"content___Hb0l5","add":"add___THwHB","colorBlue":"colorBlue___yc4F8","radio":"radio___hn9Vt"});
|
|
|
// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
|
|
|
var jsx_runtime = __webpack_require__(85893);
|
|
|
;// CONCATENATED MODULE: ./src/pages/Innovation/Tasks/Collaborate/components/ChangeManagerModal/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var _excluded = ["shixunsDetail", "globalSetting", "loading", "dispatch", "onReloadData"];
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var ChangeManagerModal = function ChangeManagerModal(_ref) {
|
|
|
var shixunsDetail = _ref.shixunsDetail,
|
|
|
globalSetting = _ref.globalSetting,
|
|
|
loading = _ref.loading,
|
|
|
dispatch = _ref.dispatch,
|
|
|
onReloadData = _ref.onReloadData,
|
|
|
props = objectWithoutProperties_default()(_ref, _excluded);
|
|
|
var _useState = (0,react.useState)(),
|
|
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
|
radioValue = _useState2[0],
|
|
|
setRadioValue = _useState2[1];
|
|
|
var _useState3 = (0,react.useState)([]),
|
|
|
_useState4 = slicedToArray_default()(_useState3, 2),
|
|
|
managerList = _useState4[0],
|
|
|
setManagerList = _useState4[1];
|
|
|
(0,react.useEffect)(function () {
|
|
|
if (shixunsDetail.actionTabs.key === 'Collaborators-ChangeManager') {
|
|
|
handleGetChangeManager();
|
|
|
}
|
|
|
}, [shixunsDetail.actionTabs.key]);
|
|
|
var handleGetChangeManager = /*#__PURE__*/function () {
|
|
|
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
|
|
|
var _shixunsDetail$action;
|
|
|
var res;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
|
|
|
while (1) switch (_context.prev = _context.next) {
|
|
|
case 0:
|
|
|
_context.next = 2;
|
|
|
return dispatch({
|
|
|
type: 'shixunsDetail/getChangeManager',
|
|
|
payload: {
|
|
|
id: (_shixunsDetail$action = shixunsDetail.actionTabs.params) === null || _shixunsDetail$action === void 0 ? void 0 : _shixunsDetail$action.id
|
|
|
}
|
|
|
});
|
|
|
case 2:
|
|
|
res = _context.sent;
|
|
|
setManagerList(res || []);
|
|
|
case 4:
|
|
|
case "end":
|
|
|
return _context.stop();
|
|
|
}
|
|
|
}, _callee);
|
|
|
}));
|
|
|
return function handleGetChangeManager() {
|
|
|
return _ref2.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var handleAddCollaborator = function handleAddCollaborator() {
|
|
|
var _shixunsDetail$action2;
|
|
|
dispatch({
|
|
|
type: 'shixunsDetail/setActionTabs',
|
|
|
payload: {
|
|
|
key: 'Collaborators-AddCollaborator',
|
|
|
params: {
|
|
|
id: (_shixunsDetail$action2 = shixunsDetail.actionTabs.params) === null || _shixunsDetail$action2 === void 0 ? void 0 : _shixunsDetail$action2.id
|
|
|
}
|
|
|
}
|
|
|
});
|
|
|
};
|
|
|
var handleOk = /*#__PURE__*/function () {
|
|
|
var _ref3 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2() {
|
|
|
var _shixunsDetail$action3;
|
|
|
var res;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
|
|
|
while (1) switch (_context2.prev = _context2.next) {
|
|
|
case 0:
|
|
|
if (radioValue) {
|
|
|
_context2.next = 3;
|
|
|
break;
|
|
|
}
|
|
|
message/* default.info */.ZP.info('所选人员为空,没有更换成功');
|
|
|
return _context2.abrupt("return");
|
|
|
case 3:
|
|
|
_context2.next = 5;
|
|
|
return dispatch({
|
|
|
type: 'shixunsDetail/changeManager',
|
|
|
payload: {
|
|
|
id: (_shixunsDetail$action3 = shixunsDetail.actionTabs.params) === null || _shixunsDetail$action3 === void 0 ? void 0 : _shixunsDetail$action3.id,
|
|
|
user_id: radioValue
|
|
|
}
|
|
|
});
|
|
|
case 5:
|
|
|
res = _context2.sent;
|
|
|
handleCancel();
|
|
|
if (res) {
|
|
|
onReloadData();
|
|
|
message/* default.info */.ZP.info(res.message);
|
|
|
}
|
|
|
case 8:
|
|
|
case "end":
|
|
|
return _context2.stop();
|
|
|
}
|
|
|
}, _callee2);
|
|
|
}));
|
|
|
return function handleOk() {
|
|
|
return _ref3.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var handleCancel = function handleCancel() {
|
|
|
dispatch({
|
|
|
type: 'shixunsDetail/setActionTabs',
|
|
|
payload: {}
|
|
|
});
|
|
|
setRadioValue(null);
|
|
|
};
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(modal/* default */.Z, {
|
|
|
centered: true,
|
|
|
keyboard: false,
|
|
|
closable: false,
|
|
|
title: "\u66F4\u6362\u7BA1\u7406\u5458",
|
|
|
open: shixunsDetail.actionTabs.key === 'Collaborators-ChangeManager',
|
|
|
confirmLoading: loading.effects['shixunsDetail/changeManager'],
|
|
|
onOk: handleOk,
|
|
|
onCancel: handleCancel,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: ChangeManagerModalmodules.title,
|
|
|
children: ["\u9009\u62E9\u7684\u6210\u5458\u5C06\u4F1A\u6210\u4E3A\u65B0\u7684\u7BA1\u7406\u5458", /*#__PURE__*/(0,jsx_runtime.jsx)("br", {}), "\u60A8\u5C06\u4E0D\u518D\u62E5\u6709\u7BA1\u7406\u5458\u7684\u6743\u9650\uFF0C\u4F46\u60A8\u4ECD\u662F\u5408\u4F5C\u56E2\u961F\u7684\u4E00\u5458"]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: ChangeManagerModalmodules.content,
|
|
|
children: managerList.length ? /*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default.Group */.ZP.Group, {
|
|
|
value: radioValue,
|
|
|
onChange: function onChange(e) {
|
|
|
return setRadioValue(e.target.value);
|
|
|
},
|
|
|
children: managerList.map(function (item, index) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
|
|
|
className: ChangeManagerModalmodules.radio,
|
|
|
value: item.user_id,
|
|
|
children: item.name
|
|
|
}, index);
|
|
|
})
|
|
|
}) : /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: ChangeManagerModalmodules.add,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
children: ["\u8BF7\u5148\u5C06\u65B0\u7684\u7BA1\u7406\u5458\u901A\u8FC7", /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
|
|
|
className: ChangeManagerModalmodules.colorBlue,
|
|
|
onClick: handleAddCollaborator,
|
|
|
children: "\"\u6DFB\u52A0\u5408\u4F5C\u8005\""
|
|
|
}), "\u52A0\u5165\u5408\u4F5C\u8005\u5217\u8868"]
|
|
|
})
|
|
|
})
|
|
|
})]
|
|
|
})
|
|
|
});
|
|
|
};
|
|
|
/* harmony default export */ var components_ChangeManagerModal = ((0,_umi_production_exports.connect)(function (_ref4) {
|
|
|
var shixunsDetail = _ref4.shixunsDetail,
|
|
|
loading = _ref4.loading,
|
|
|
globalSetting = _ref4.globalSetting;
|
|
|
return {
|
|
|
shixunsDetail: shixunsDetail,
|
|
|
globalSetting: globalSetting,
|
|
|
loading: loading
|
|
|
};
|
|
|
})(ChangeManagerModal));
|
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/tabs/index.js + 28 modules
|
|
|
var tabs = __webpack_require__(34755);
|
|
|
// EXTERNAL MODULE: ./src/components/SelectUser/index.tsx
|
|
|
var SelectUser = __webpack_require__(3842);
|
|
|
;// CONCATENATED MODULE: ./src/pages/Innovation/Tasks/Collaborate/components/AddCollaborator/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var TabPane = tabs/* default.TabPane */.Z.TabPane;
|
|
|
/* harmony default export */ var AddCollaborator = (function (_ref) {
|
|
|
var visible = _ref.visible,
|
|
|
onCancel = _ref.onCancel,
|
|
|
onSelectGroup = _ref.onSelectGroup,
|
|
|
shixunId = _ref.shixunId,
|
|
|
onSelectCollaborator = _ref.onSelectCollaborator;
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(modal/* default */.Z, {
|
|
|
title: "\u6DFB\u52A0\u5408\u4F5C\u8005",
|
|
|
open: visible,
|
|
|
width: 1100,
|
|
|
centered: true,
|
|
|
keyboard: false,
|
|
|
onCancel: onCancel,
|
|
|
maskClosable: false,
|
|
|
destroyOnClose: true,
|
|
|
forceRender: true,
|
|
|
bodyStyle: {
|
|
|
minHeight: 400,
|
|
|
padding: '0 20px 20px 20px'
|
|
|
},
|
|
|
footer: null,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(tabs/* default */.Z, {
|
|
|
defaultActiveKey: "1",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(TabPane, {
|
|
|
tab: "\u641C\u7D22\u6DFB\u52A0",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(SelectUser/* default */.Z, {
|
|
|
type: 1,
|
|
|
onCancel: onCancel,
|
|
|
container_type: 2,
|
|
|
container_id: shixunId,
|
|
|
onSelect: onSelectCollaborator
|
|
|
})
|
|
|
}, "1")
|
|
|
})
|
|
|
});
|
|
|
});
|
|
|
;// CONCATENATED MODULE: ./src/pages/Innovation/Tasks/Collaborate/index.less?modules
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
/* harmony default export */ var Collaboratemodules = ({"bg":"bg___Onnmh","wrap":"wrap___VTtdp","modal":"modal___MArZa","content":"content___a69LK","head":"head____zVzr","headCount":"headCount___GhK7o","button":"button___DoAh3","itemWrap":"itemWrap___UR35k","imgWrap":"imgWrap___DpS0R","img":"img___N9se3","manager":"manager___m4Mzg","itemContent":"itemContent___Ut7hr","nameWrap":"nameWrap___y73uS","name":"name___hJUHg","actionGroup":"actionGroup___QEytf","deleteIcon":"deleteIcon___XGFcN","schoolWrap":"schoolWrap___qsoOp","school":"school___yh8l2","countWrap":"countWrap___MQKPn","deletetitle":"deletetitle___nAICN","yseTitle":"yseTitle___t5fzp"});
|
|
|
// EXTERNAL MODULE: ./node_modules/@ant-design/icons/es/icons/PlusOutlined.js + 1 modules
|
|
|
var PlusOutlined = __webpack_require__(24969);
|
|
|
// EXTERNAL MODULE: ./src/components/Header/index.tsx + 11 modules
|
|
|
var Header = __webpack_require__(53057);
|
|
|
// EXTERNAL MODULE: ./src/utils/fetch.ts
|
|
|
var fetch = __webpack_require__(84519);
|
|
|
;// CONCATENATED MODULE: ./src/pages/Innovation/Tasks/Collaborate/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var Collaborators = function Collaborators(_ref) {
|
|
|
var shixunsDetail = _ref.shixunsDetail,
|
|
|
globalSetting = _ref.globalSetting,
|
|
|
loading = _ref.loading,
|
|
|
user = _ref.user,
|
|
|
dispatch = _ref.dispatch,
|
|
|
position = _ref.position;
|
|
|
var shixunId = (0,react.useRef)();
|
|
|
var _useState = (0,react.useState)(0),
|
|
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
|
count = _useState2[0],
|
|
|
setCount = _useState2[1];
|
|
|
var _useState3 = (0,react.useState)([]),
|
|
|
_useState4 = slicedToArray_default()(_useState3, 2),
|
|
|
collaboratorList = _useState4[0],
|
|
|
setCollaboratorList = _useState4[1];
|
|
|
var _useState5 = (0,react.useState)({
|
|
|
id: null,
|
|
|
page: 1
|
|
|
}),
|
|
|
_useState6 = slicedToArray_default()(_useState5, 2),
|
|
|
params = _useState6[0],
|
|
|
setParams = _useState6[1];
|
|
|
var param = (0,_umi_production_exports.useParams)();
|
|
|
var _useState7 = (0,react.useState)({}),
|
|
|
_useState8 = slicedToArray_default()(_useState7, 2),
|
|
|
items = _useState8[0],
|
|
|
setitems = _useState8[1];
|
|
|
|
|
|
// const editable = user.userInfo?.shixun?.editable;
|
|
|
// const isAdminOrCreator =
|
|
|
// user.userInfo?.role <= 2 || user.userInfo?.shixun?.is_creator;
|
|
|
|
|
|
//添加合作者权限
|
|
|
var addAuth = (0,react.useMemo)(function () {
|
|
|
return (0,authority/* isSuperAdmins */.Ny)() || (items === null || items === void 0 ? void 0 : items.current_user_is_creator) || (items === null || items === void 0 ? void 0 : items.current_user_is_partner);
|
|
|
}, [authority/* isSuperAdmins */.Ny, items]);
|
|
|
//删除合作者权限
|
|
|
var deleteAuth = (0,react.useMemo)(function () {
|
|
|
return (0,authority/* isSuperAdmins */.Ny)() || (items === null || items === void 0 ? void 0 : items.current_user_is_creator);
|
|
|
}, [authority/* isSuperAdmins */.Ny, items]);
|
|
|
(0,react.useEffect)(function () {
|
|
|
shixunId.current = param === null || param === void 0 ? void 0 : param.taskId;
|
|
|
params.id = param === null || param === void 0 ? void 0 : param.taskId;
|
|
|
setParams(params);
|
|
|
getCollaboratorsData(params);
|
|
|
}, []);
|
|
|
var getCollaboratorsData = /*#__PURE__*/function () {
|
|
|
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee(query) {
|
|
|
var res;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
|
|
|
while (1) switch (_context.prev = _context.next) {
|
|
|
case 0:
|
|
|
_context.next = 2;
|
|
|
return (0,fetch/* default */.ZP)("/api/sci/projects/".concat(param === null || param === void 0 ? void 0 : param.taskId, "/get_project_partners.json"), {
|
|
|
method: 'get'
|
|
|
});
|
|
|
case 2:
|
|
|
res = _context.sent;
|
|
|
if (res) {
|
|
|
setCollaboratorList(res.users || []);
|
|
|
setCount(res.users_count);
|
|
|
setitems(res);
|
|
|
}
|
|
|
case 4:
|
|
|
case "end":
|
|
|
return _context.stop();
|
|
|
}
|
|
|
}, _callee);
|
|
|
}));
|
|
|
return function getCollaboratorsData(_x) {
|
|
|
return _ref2.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var handleReloadData = /*#__PURE__*/function () {
|
|
|
var _ref3 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2() {
|
|
|
var courseParams;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
|
|
|
while (1) switch (_context2.prev = _context2.next) {
|
|
|
case 0:
|
|
|
params.page = 1;
|
|
|
setParams(params);
|
|
|
courseParams = (0,Header/* getCourseParam */.g)();
|
|
|
_context2.next = 5;
|
|
|
return dispatch({
|
|
|
type: 'user/getUserInfo',
|
|
|
payload: courseParams
|
|
|
});
|
|
|
case 5:
|
|
|
_context2.next = 7;
|
|
|
return getCollaboratorsData(params);
|
|
|
case 7:
|
|
|
case "end":
|
|
|
return _context2.stop();
|
|
|
}
|
|
|
}, _callee2);
|
|
|
}));
|
|
|
return function handleReloadData() {
|
|
|
return _ref3.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var handleChangePage = function handleChangePage(page) {
|
|
|
params.page = page;
|
|
|
setParams(params);
|
|
|
getCollaboratorsData(params);
|
|
|
};
|
|
|
var handleDelete = function handleDelete(userId) {
|
|
|
modal/* default.confirm */.Z.confirm({
|
|
|
centered: true,
|
|
|
okText: '确定',
|
|
|
cancelText: '取消',
|
|
|
title: '提示',
|
|
|
content: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: Collaboratemodules.modal,
|
|
|
children: "\u786E\u5B9A\u8981\u5220\u9664\u5417\uFF1F"
|
|
|
}),
|
|
|
onOk: function () {
|
|
|
var _onOk = 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 (0,fetch/* default */.ZP)("/api/sci/projects/".concat(param === null || param === void 0 ? void 0 : param.taskId, "/del_project_partner.json"), {
|
|
|
method: 'DELETE',
|
|
|
body: {
|
|
|
user_id: userId
|
|
|
}
|
|
|
});
|
|
|
case 2:
|
|
|
res = _context3.sent;
|
|
|
message/* default.info */.ZP.info('删除成功');
|
|
|
params.page = 1;
|
|
|
setParams(params);
|
|
|
getCollaboratorsData(params);
|
|
|
case 7:
|
|
|
case "end":
|
|
|
return _context3.stop();
|
|
|
}
|
|
|
}, _callee3);
|
|
|
}));
|
|
|
function onOk() {
|
|
|
return _onOk.apply(this, arguments);
|
|
|
}
|
|
|
return onOk;
|
|
|
}()
|
|
|
});
|
|
|
};
|
|
|
var handleAddCollaborator = function handleAddCollaborator() {
|
|
|
dispatch({
|
|
|
type: 'shixunsDetail/setActionTabs',
|
|
|
payload: {
|
|
|
key: 'Collaborators-AddCollaborator',
|
|
|
params: {
|
|
|
id: shixunId.current
|
|
|
}
|
|
|
}
|
|
|
});
|
|
|
};
|
|
|
function onCancel() {
|
|
|
dispatch({
|
|
|
type: 'shixunsDetail/setActionTabs',
|
|
|
payload: {}
|
|
|
});
|
|
|
}
|
|
|
var AddCollaboratorOption = {
|
|
|
visible: shixunsDetail.actionTabs.key === 'Collaborators-AddCollaborator',
|
|
|
onCancel: onCancel,
|
|
|
shixunId: shixunId.current,
|
|
|
onSelectCollaborator: function () {
|
|
|
var _onSelectCollaborator = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee4(user_ids) {
|
|
|
var res;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee4$(_context4) {
|
|
|
while (1) switch (_context4.prev = _context4.next) {
|
|
|
case 0:
|
|
|
onCancel();
|
|
|
_context4.next = 3;
|
|
|
return (0,fetch/* default */.ZP)("/api/sci/projects/".concat(shixunId.current, "/bacht_add_project_partners.json"), {
|
|
|
method: 'POST',
|
|
|
body: {
|
|
|
user_ids: user_ids
|
|
|
}
|
|
|
});
|
|
|
case 3:
|
|
|
res = _context4.sent;
|
|
|
if (res) {
|
|
|
message/* default.success */.ZP.success('添加成功');
|
|
|
handleReloadData();
|
|
|
}
|
|
|
case 5:
|
|
|
case "end":
|
|
|
return _context4.stop();
|
|
|
}
|
|
|
}, _callee4);
|
|
|
}));
|
|
|
function onSelectCollaborator(_x2) {
|
|
|
return _onSelectCollaborator.apply(this, arguments);
|
|
|
}
|
|
|
return onSelectCollaborator;
|
|
|
}(),
|
|
|
onSelectGroup: function () {
|
|
|
var _onSelectGroup = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee5(group_id) {
|
|
|
var res;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee5$(_context5) {
|
|
|
while (1) switch (_context5.prev = _context5.next) {
|
|
|
case 0:
|
|
|
onCancel();
|
|
|
_context5.next = 3;
|
|
|
return dispatch({
|
|
|
type: 'shixunsDetail/addTeachGroupMember',
|
|
|
payload: {
|
|
|
identifier: shixunId.current,
|
|
|
group_id: group_id.group_id
|
|
|
}
|
|
|
});
|
|
|
case 3:
|
|
|
res = _context5.sent;
|
|
|
if (res) {
|
|
|
message/* default.success */.ZP.success('添加成功');
|
|
|
handleReloadData();
|
|
|
}
|
|
|
case 5:
|
|
|
case "end":
|
|
|
return _context5.stop();
|
|
|
}
|
|
|
}, _callee5);
|
|
|
}));
|
|
|
function onSelectGroup(_x3) {
|
|
|
return _onSelectGroup.apply(this, arguments);
|
|
|
}
|
|
|
return onSelectGroup;
|
|
|
}()
|
|
|
};
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("section", {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: Collaboratemodules.wrap,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: Collaboratemodules.content,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: Collaboratemodules.head,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
className: Collaboratemodules.headCount,
|
|
|
children: ["\u5408\u4F5C\u8005\uFF08", count, "\u4EBA\uFF09"]
|
|
|
}), addAuth && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
|
className: Collaboratemodules.button,
|
|
|
style: {
|
|
|
marginRight: position === 'detail' ? 0 : '20px'
|
|
|
},
|
|
|
onClick: handleAddCollaborator,
|
|
|
icon: /*#__PURE__*/(0,jsx_runtime.jsx)(PlusOutlined/* default */.Z, {}),
|
|
|
children: "\u6DFB\u52A0\u5408\u4F5C\u8005"
|
|
|
})
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: Collaboratemodules.list,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(skeleton/* default */.Z, {
|
|
|
loading: false,
|
|
|
active: true,
|
|
|
avatar: {
|
|
|
size: 40
|
|
|
},
|
|
|
paragraph: {
|
|
|
rows: 3
|
|
|
},
|
|
|
className: "mt30",
|
|
|
children: collaboratorList.map(function (item, index) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
style: {
|
|
|
display: 'inline-block',
|
|
|
width: '50%'
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: Collaboratemodules.itemWrap,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("a", {
|
|
|
target: "_blank",
|
|
|
className: Collaboratemodules.imgWrap,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("img", {
|
|
|
alt: "\u7528\u6237\u5934\u50CF",
|
|
|
height: "48",
|
|
|
width: "48",
|
|
|
className: Collaboratemodules.img,
|
|
|
src: "".concat(env/* default.IMG_SERVER */.Z.IMG_SERVER, "/images/").concat(item === null || item === void 0 ? void 0 : item.image_url)
|
|
|
}), (item === null || item === void 0 ? void 0 : item.is_creator) && /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: Collaboratemodules.manager,
|
|
|
children: "\u521B\u5EFA\u8005"
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: Collaboratemodules.itemContent,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: Collaboratemodules.nameWrap,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("a", {
|
|
|
target: "_blank",
|
|
|
className: Collaboratemodules.name,
|
|
|
children: item === null || item === void 0 ? void 0 : item.user_name
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: Collaboratemodules.actionGroup,
|
|
|
children: !(item !== null && item !== void 0 && item.is_creator) && deleteAuth ? /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
|
|
|
className: Collaboratemodules.deletetitle,
|
|
|
onClick: function onClick() {
|
|
|
return handleDelete(item.id);
|
|
|
},
|
|
|
children: "\u5220\u9664"
|
|
|
}) : null
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
|
|
|
className: Collaboratemodules.schoolWrap,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: Collaboratemodules.school,
|
|
|
children: item === null || item === void 0 ? void 0 : item.school_name
|
|
|
})
|
|
|
})]
|
|
|
})]
|
|
|
})
|
|
|
}, index);
|
|
|
})
|
|
|
})
|
|
|
})]
|
|
|
}), count > 10 && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: Collaboratemodules.countWrap,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(pagination/* default */.Z, {
|
|
|
showQuickJumper: false,
|
|
|
showSizeChanger: false,
|
|
|
total: count,
|
|
|
onChange: function onChange(page) {
|
|
|
return handleChangePage(page);
|
|
|
},
|
|
|
pageSize: 10,
|
|
|
current: params.page
|
|
|
})
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(components_ChangeManagerModal, {
|
|
|
onReloadData: handleReloadData
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(AddCollaborator, objectSpread2_default()({}, AddCollaboratorOption))]
|
|
|
});
|
|
|
};
|
|
|
/* harmony default export */ var Collaborate = ((0,_umi_production_exports.connect)(function (_ref4) {
|
|
|
var shixunsDetail = _ref4.shixunsDetail,
|
|
|
loading = _ref4.loading,
|
|
|
globalSetting = _ref4.globalSetting,
|
|
|
user = _ref4.user;
|
|
|
return {
|
|
|
shixunsDetail: shixunsDetail,
|
|
|
globalSetting: globalSetting,
|
|
|
user: user,
|
|
|
loading: loading
|
|
|
};
|
|
|
})(Collaborators));
|
|
|
|
|
|
/***/ }),
|
|
|
|
|
|
/***/ 11198:
|
|
|
/*!***********************************************************!*\
|
|
|
!*** ./src/pages/Innovation/Tasks/index.jsx + 25 modules ***!
|
|
|
\***********************************************************/
|
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
// ESM COMPAT FLAG
|
|
|
__webpack_require__.r(__webpack_exports__);
|
|
|
|
|
|
// EXPORTS
|
|
|
__webpack_require__.d(__webpack_exports__, {
|
|
|
"default": function() { return /* binding */ Tasks; }
|
|
|
});
|
|
|
|
|
|
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/toConsumableArray.js
|
|
|
var toConsumableArray = __webpack_require__(861);
|
|
|
var toConsumableArray_default = /*#__PURE__*/__webpack_require__.n(toConsumableArray);
|
|
|
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/defineProperty.js
|
|
|
var defineProperty = __webpack_require__(38416);
|
|
|
var defineProperty_default = /*#__PURE__*/__webpack_require__.n(defineProperty);
|
|
|
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/regeneratorRuntime.js
|
|
|
var regeneratorRuntime = __webpack_require__(17061);
|
|
|
var regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(regeneratorRuntime);
|
|
|
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/asyncToGenerator.js
|
|
|
var asyncToGenerator = __webpack_require__(17156);
|
|
|
var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator);
|
|
|
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/slicedToArray.js
|
|
|
var slicedToArray = __webpack_require__(27424);
|
|
|
var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);
|
|
|
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/objectWithoutProperties.js
|
|
|
var objectWithoutProperties = __webpack_require__(70215);
|
|
|
var objectWithoutProperties_default = /*#__PURE__*/__webpack_require__.n(objectWithoutProperties);
|
|
|
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/objectSpread2.js
|
|
|
var objectSpread2 = __webpack_require__(42122);
|
|
|
var objectSpread2_default = /*#__PURE__*/__webpack_require__.n(objectSpread2);
|
|
|
// EXTERNAL MODULE: ./node_modules/react/index.js
|
|
|
var react = __webpack_require__(67294);
|
|
|
// EXTERNAL MODULE: ./src/.umi-production/exports.ts + 8 modules
|
|
|
var _umi_production_exports = __webpack_require__(89214);
|
|
|
;// CONCATENATED MODULE: ./src/pages/Innovation/Tasks/index.less
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
|
|
|
// EXTERNAL MODULE: ./src/components/Spinner/index.tsx + 1 modules
|
|
|
var Spinner = __webpack_require__(38054);
|
|
|
// EXTERNAL MODULE: ./src/components/modal.tsx
|
|
|
var modal = __webpack_require__(12264);
|
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/statistic/index.js + 5 modules
|
|
|
var statistic = __webpack_require__(55054);
|
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/form/index.js + 17 modules
|
|
|
var es_form = __webpack_require__(25159);
|
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/modal/index.js + 39 modules
|
|
|
var es_modal = __webpack_require__(72423);
|
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/button/index.js
|
|
|
var es_button = __webpack_require__(71577);
|
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/drawer/index.js + 16 modules
|
|
|
var drawer = __webpack_require__(35479);
|
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/message/index.js + 4 modules
|
|
|
var message = __webpack_require__(2453);
|
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/input/index.js + 5 modules
|
|
|
var input = __webpack_require__(79531);
|
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/input-number/index.js + 21 modules
|
|
|
var input_number = __webpack_require__(31795);
|
|
|
;// CONCATENATED MODULE: ./src/pages/Innovation/Tasks/header/index.less
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
|
|
|
// EXTERNAL MODULE: ./src/components/tpi-code-setting/index.less
|
|
|
var tpi_code_setting = __webpack_require__(12867);
|
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/row/index.js
|
|
|
var row = __webpack_require__(71230);
|
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/col/index.js
|
|
|
var col = __webpack_require__(15746);
|
|
|
// EXTERNAL MODULE: ./node_modules/@ant-design/icons/es/icons/PoweroffOutlined.js + 1 modules
|
|
|
var PoweroffOutlined = __webpack_require__(81088);
|
|
|
// EXTERNAL MODULE: ./node_modules/react-copy-to-clipboard/lib/index.js
|
|
|
var lib = __webpack_require__(74855);
|
|
|
// EXTERNAL MODULE: ./src/service/task.ts
|
|
|
var task = __webpack_require__(48632);
|
|
|
// EXTERNAL MODULE: ./node_modules/@ant-design/icons/es/icons/ExclamationCircleOutlined.js + 1 modules
|
|
|
var ExclamationCircleOutlined = __webpack_require__(11475);
|
|
|
// EXTERNAL MODULE: ./src/components/MultiUpload/index.tsx + 3 modules
|
|
|
var MultiUpload = __webpack_require__(64768);
|
|
|
// EXTERNAL MODULE: ./src/utils/env.ts + 1 modules
|
|
|
var env = __webpack_require__(59758);
|
|
|
// EXTERNAL MODULE: ./src/utils/fetch.ts
|
|
|
var fetch = __webpack_require__(84519);
|
|
|
// EXTERNAL MODULE: ./src/utils/util.tsx
|
|
|
var util = __webpack_require__(29427);
|
|
|
// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
|
|
|
var jsx_runtime = __webpack_require__(85893);
|
|
|
;// CONCATENATED MODULE: ./src/components/vnc-setting2/record.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var ScreenRecord = /*#__PURE__*/(0,react.forwardRef)(function (_ref, ref) {
|
|
|
var time = _ref.time;
|
|
|
console.log("ScreenRecord:", ref);
|
|
|
var previewRef = (0,react.useRef)();
|
|
|
var _useState = (0,react.useState)(),
|
|
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
|
recorder = _useState2[0],
|
|
|
setRecorder = _useState2[1];
|
|
|
var recorderRef = (0,react.useRef)();
|
|
|
var recordingTimeMS = 2000;
|
|
|
var recordingArr = [];
|
|
|
(0,react.useImperativeHandle)(ref, function () {
|
|
|
return {
|
|
|
startScreenRecord: startScreenRecord,
|
|
|
downloadFile: downloadFile
|
|
|
};
|
|
|
});
|
|
|
function startRecording(_x, _x2) {
|
|
|
return _startRecording.apply(this, arguments);
|
|
|
}
|
|
|
function _startRecording() {
|
|
|
_startRecording = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee(stream, lengthInMS) {
|
|
|
var data, re;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
|
|
|
while (1) switch (_context.prev = _context.next) {
|
|
|
case 0:
|
|
|
data = [];
|
|
|
_context.next = 3;
|
|
|
return new MediaRecorder(stream);
|
|
|
case 3:
|
|
|
re = _context.sent;
|
|
|
re.ondataavailable = function (event) {
|
|
|
data.push(event.data);
|
|
|
};
|
|
|
re.start();
|
|
|
recorderRef.current = re;
|
|
|
window.recorderRefs = re;
|
|
|
re.addEventListener('stop', function (event) {
|
|
|
var videoUrl = URL.createObjectURL(data[0], {
|
|
|
type: 'video/mp4'
|
|
|
});
|
|
|
(0,util/* downLoadLink */.Nd)("xxx.webm", videoUrl);
|
|
|
});
|
|
|
case 9:
|
|
|
case "end":
|
|
|
return _context.stop();
|
|
|
}
|
|
|
}, _callee);
|
|
|
}));
|
|
|
return _startRecording.apply(this, arguments);
|
|
|
}
|
|
|
function downloadFile() {
|
|
|
if (!window.recorderRefs) {
|
|
|
message/* default.warning */.ZP.warning("您还没有开启视频录制,请先去录制视频吧!");
|
|
|
return;
|
|
|
}
|
|
|
var tracks = previewRef.current.srcObject.getTracks();
|
|
|
tracks.forEach(function (track) {
|
|
|
track.stop();
|
|
|
});
|
|
|
window.recorderRefs.addEventListener('dataavailable', function (event) {
|
|
|
var videoUrl = URL.createObjectURL(event.data, {
|
|
|
type: 'video/mp4'
|
|
|
});
|
|
|
(0,util/* downLoadLink */.Nd)("屏幕录制视频.webm", videoUrl);
|
|
|
});
|
|
|
}
|
|
|
;
|
|
|
function startScreenRecord() {
|
|
|
navigator.mediaDevices.getDisplayMedia({
|
|
|
video: true,
|
|
|
audio: true
|
|
|
}).then(function (stream) {
|
|
|
previewRef.current.srcObject = stream;
|
|
|
// downloadButton.href = stream;
|
|
|
recordingArr.push(stream);
|
|
|
previewRef.current.captureStream = previewRef.current.captureStream || previewRef.current.mozCaptureStream;
|
|
|
return new Promise(function (resolve) {
|
|
|
return previewRef.current.onplaying = resolve;
|
|
|
});
|
|
|
}).then(function () {
|
|
|
return startRecording(previewRef.current.captureStream(), recordingTimeMS);
|
|
|
}).then(function (recordedChunks) {})["catch"](function (error) {
|
|
|
if (error.name === "NotFoundError") {
|
|
|
message/* default.warning */.ZP.warning("找不到摄像头或麦克风。无法录制.");
|
|
|
} else {
|
|
|
message/* default.warning */.ZP.warning(error.name);
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
|
|
|
// stop(previewRef.current.srcObject);
|
|
|
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
style: {
|
|
|
position: "absolute",
|
|
|
top: "0",
|
|
|
zIndex: -1
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("video", {
|
|
|
onPause: function onPause() {},
|
|
|
width: "60",
|
|
|
height: "120",
|
|
|
autoPlay: true,
|
|
|
muted: true,
|
|
|
ref: previewRef
|
|
|
})
|
|
|
});
|
|
|
});
|
|
|
/* harmony default export */ var record = (ScreenRecord);
|
|
|
;// CONCATENATED MODULE: ./src/components/vnc-setting2/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var difficultyDesc = {
|
|
|
1: '简单',
|
|
|
2: '中等',
|
|
|
3: '困难'
|
|
|
};
|
|
|
/* harmony default export */ var vnc_setting2 = (function (_ref) {
|
|
|
var className = _ref.className,
|
|
|
mirror_description = _ref.mirror_description,
|
|
|
git_url = _ref.git_url,
|
|
|
difficulty = _ref.difficulty,
|
|
|
task_pass = _ref.task_pass,
|
|
|
test_set_permission = _ref.test_set_permission,
|
|
|
onVncAction = _ref.onVncAction,
|
|
|
shixun = _ref.shixun,
|
|
|
window_vnc_url = _ref.window_vnc_url,
|
|
|
linux_vnc = _ref.linux_vnc,
|
|
|
vnc_url = _ref.vnc_url,
|
|
|
unity_3d_routes = _ref.unity_3d_routes,
|
|
|
taskData = _ref.taskData;
|
|
|
console.log(taskData);
|
|
|
var params = (0,_umi_production_exports.useParams)();
|
|
|
var _useState = (0,react.useState)("8082"),
|
|
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
|
portValue = _useState2[0],
|
|
|
setPortValue = _useState2[1];
|
|
|
var _useState3 = (0,react.useState)(false),
|
|
|
_useState4 = slicedToArray_default()(_useState3, 2),
|
|
|
isLoading = _useState4[0],
|
|
|
setIsLoading = _useState4[1];
|
|
|
var _useState5 = (0,react.useState)(false),
|
|
|
_useState6 = slicedToArray_default()(_useState5, 2),
|
|
|
isLoading2 = _useState6[0],
|
|
|
setIsLoading2 = _useState6[1];
|
|
|
var recordRef = (0,react.useRef)();
|
|
|
var uploadWorkspace = window_vnc_url ? "C:\/Windows\/AppReadiness\/userfiles" : "/data/workspace/userfiles";
|
|
|
var downloadWorkspace = window_vnc_url ? "C:\/Windows\/AppReadiness\/downloadfiles" : "/data/workspace/downloadfiles";
|
|
|
var restartVac = function restartVac() {
|
|
|
es_modal/* default.confirm */.Z.confirm({
|
|
|
title: '重启云主机',
|
|
|
icon: /*#__PURE__*/(0,jsx_runtime.jsx)(ExclamationCircleOutlined/* default */.Z, {}),
|
|
|
content: '您确定要重启云主机吗?',
|
|
|
centered: true,
|
|
|
okText: '确定',
|
|
|
cancelText: '取消',
|
|
|
onOk: function () {
|
|
|
var _onOk = 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,task/* rebootEsc */.Jd)({
|
|
|
identifier: params.taskId
|
|
|
});
|
|
|
case 2:
|
|
|
res = _context.sent;
|
|
|
if ((res === null || res === void 0 ? void 0 : res.status) === 0) {
|
|
|
message/* default.info */.ZP.info("重启成功");
|
|
|
}
|
|
|
return _context.abrupt("return", '');
|
|
|
case 5:
|
|
|
case "end":
|
|
|
return _context.stop();
|
|
|
}
|
|
|
}, _callee);
|
|
|
}));
|
|
|
function onOk() {
|
|
|
return _onOk.apply(this, arguments);
|
|
|
}
|
|
|
return onOk;
|
|
|
}()
|
|
|
});
|
|
|
};
|
|
|
var uploadFile = function uploadFile() {
|
|
|
es_modal/* default.info */.Z.info({
|
|
|
title: "文件上传",
|
|
|
icon: null,
|
|
|
okText: "关闭",
|
|
|
width: 600,
|
|
|
centered: true,
|
|
|
content: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: "pt10",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(MultiUpload/* default */.Z, {
|
|
|
isDragger: true,
|
|
|
maxSize: 1024,
|
|
|
additionalText: "\u9ED8\u8BA4\u5B58\u653E\u76EE\u5F55\u8DEF\u5F84\u4E3A\"".concat(uploadWorkspace, "\""),
|
|
|
action: "".concat(env/* default.API_SERVER */.Z.API_SERVER, "/api/sci/projects/").concat(params.taskId, "/upload_file.json"),
|
|
|
onChange: function onChange(fileList) {
|
|
|
if (fileList.every(function (item) {
|
|
|
var _item$response;
|
|
|
return ((_item$response = item.response) === null || _item$response === void 0 ? void 0 : _item$response.status) === 0;
|
|
|
})) {
|
|
|
es_modal/* default.destroyAll */.Z.destroyAll();
|
|
|
message/* default.info */.ZP.info("文件上传成功");
|
|
|
}
|
|
|
}
|
|
|
})
|
|
|
})
|
|
|
});
|
|
|
};
|
|
|
var serverPreview = /*#__PURE__*/function () {
|
|
|
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2() {
|
|
|
var _res$data;
|
|
|
var res, _res$data2;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
|
|
|
while (1) switch (_context2.prev = _context2.next) {
|
|
|
case 0:
|
|
|
setIsLoading2(true);
|
|
|
_context2.next = 3;
|
|
|
return (0,fetch/* default */.ZP)("/api/sci/projects/".concat(params.taskId, "/port_proxy.json"), {
|
|
|
method: "post",
|
|
|
body: {
|
|
|
port: portValue,
|
|
|
position: 1
|
|
|
}
|
|
|
});
|
|
|
case 3:
|
|
|
res = _context2.sent;
|
|
|
if (res !== null && res !== void 0 && (_res$data = res.data) !== null && _res$data !== void 0 && _res$data.url) {
|
|
|
(0,util/* openNewWindow */.xg)(res === null || res === void 0 ? void 0 : (_res$data2 = res.data) === null || _res$data2 === void 0 ? void 0 : _res$data2.url);
|
|
|
}
|
|
|
setIsLoading2(false);
|
|
|
case 6:
|
|
|
case "end":
|
|
|
return _context2.stop();
|
|
|
}
|
|
|
}, _callee2);
|
|
|
}));
|
|
|
return function serverPreview() {
|
|
|
return _ref2.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var downloadFile = function downloadFile() {
|
|
|
es_modal/* default.confirm */.Z.confirm({
|
|
|
title: "下载代码",
|
|
|
centered: true,
|
|
|
width: 600,
|
|
|
content: "\u4EE3\u7801\u4E0B\u8F7D\u529F\u80FD\uFF1A\u5C06\u201C".concat(downloadWorkspace, "\u201D\u76EE\u5F55\u8FDB\u884C\u6253\u5305\u5E76\u4E0B\u8F7D"),
|
|
|
onOk: function () {
|
|
|
var _onOk2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee3() {
|
|
|
return regeneratorRuntime_default()().wrap(function _callee3$(_context3) {
|
|
|
while (1) switch (_context3.prev = _context3.next) {
|
|
|
case 0:
|
|
|
_context3.next = 2;
|
|
|
return (0,fetch/* default */.ZP)("/api/sci/projects/".concat(params.taskId, "/download_file.json"), {
|
|
|
method: 'post',
|
|
|
body: {
|
|
|
autoDownload: true
|
|
|
},
|
|
|
headers: {
|
|
|
responseType: 'arraybuffer',
|
|
|
Accept: 'application/vnd.ms-excel;charset=utf-8'
|
|
|
}
|
|
|
});
|
|
|
case 2:
|
|
|
return _context3.abrupt("return", true);
|
|
|
case 3:
|
|
|
case "end":
|
|
|
return _context3.stop();
|
|
|
}
|
|
|
}, _callee3);
|
|
|
}));
|
|
|
function onOk() {
|
|
|
return _onOk2.apply(this, arguments);
|
|
|
}
|
|
|
return onOk;
|
|
|
}()
|
|
|
});
|
|
|
};
|
|
|
var onStartRecord = function onStartRecord() {
|
|
|
var _recordRef$current, _recordRef$current$st;
|
|
|
(_recordRef$current = recordRef.current) === null || _recordRef$current === void 0 ? void 0 : (_recordRef$current$st = _recordRef$current.startScreenRecord) === null || _recordRef$current$st === void 0 ? void 0 : _recordRef$current$st.call(_recordRef$current);
|
|
|
};
|
|
|
|
|
|
// const serverPreview = async () => {
|
|
|
// setIsLoading(true)
|
|
|
// const res = await Fetch(`/api/tasks/${params.taskId}/port_proxy`, { method: "post", body: { port: portValue } })
|
|
|
// if (res?.data?.url) {
|
|
|
// openNewWindow(res?.data?.url);
|
|
|
// }
|
|
|
// setIsLoading(false)
|
|
|
// }
|
|
|
|
|
|
var getSSH = function getSSH() {
|
|
|
var webssh = taskData.webssh;
|
|
|
es_modal/* default.info */.Z.info({
|
|
|
title: 'SSH直连',
|
|
|
width: 600,
|
|
|
centered: true,
|
|
|
content: /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
flex: "50px",
|
|
|
children: "\u8D26\u53F7"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
children: webssh === null || webssh === void 0 ? void 0 : webssh.username
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
flex: "50px",
|
|
|
children: "\u5730\u5740"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
children: webssh === null || webssh === void 0 ? void 0 : webssh.address
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
flex: "50px",
|
|
|
children: "\u7AEF\u53E3"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
children: webssh === null || webssh === void 0 ? void 0 : webssh.servicePort
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
flex: "50px",
|
|
|
children: "\u5BC6\u7801"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
children: webssh === null || webssh === void 0 ? void 0 : webssh.password
|
|
|
})]
|
|
|
})]
|
|
|
})
|
|
|
});
|
|
|
};
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: "tpi-code-setting ".concat(className),
|
|
|
style: {
|
|
|
height: "calc(100vh - 54px )"
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("h3", {
|
|
|
children: "\u529F\u80FD"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("section", {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("a", {
|
|
|
id: "full-screen",
|
|
|
title: "\u5168\u5C4F",
|
|
|
className: "file-item action",
|
|
|
onClick: function onClick() {
|
|
|
onVncAction('full-screen');
|
|
|
},
|
|
|
children: [" ", /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
|
className: "iconfont icon-quanping"
|
|
|
}), "\u5F00\u542F / \u9000\u51FA\u5168\u5C4F "]
|
|
|
}), !unity_3d_routes && /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("a", {
|
|
|
id: "reset-task",
|
|
|
onClick: function onClick() {
|
|
|
return onVncAction('reset-task');
|
|
|
},
|
|
|
className: "file-item action",
|
|
|
title: "\u91CD\u7F6E\u73AF\u5883",
|
|
|
children: [" ", /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
|
className: "iconfont icon-zhongzhishixun"
|
|
|
}), "\u91CD\u7F6E\u73AF\u5883 "]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("a", {
|
|
|
onClick: function onClick() {
|
|
|
return uploadFile();
|
|
|
},
|
|
|
className: "file-item action",
|
|
|
title: "\u4E0A\u4F20\u6587\u4EF6",
|
|
|
children: [" ", /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
|
className: "iconfont icon-shangchuanshipin1"
|
|
|
}), "\u4E0A\u4F20\u6587\u4EF6"]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("a", {
|
|
|
onClick: function onClick() {
|
|
|
return downloadFile();
|
|
|
},
|
|
|
className: "file-item action",
|
|
|
title: "\u4E0B\u8F7D\u6587\u4EF6",
|
|
|
children: [" ", /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
|
className: "iconfont icon-xiazai3"
|
|
|
}), "\u4E0B\u8F7D\u6587\u4EF6"]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("a", {
|
|
|
onClick: function onClick() {
|
|
|
return onStartRecord();
|
|
|
},
|
|
|
className: "file-item action",
|
|
|
title: "\u5C4F\u5E55\u5F55\u5236",
|
|
|
children: [" ", /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
|
className: "iconfont icon-jiaruketang1"
|
|
|
}), "\u5C4F\u5E55\u5F55\u5236"]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("a", {
|
|
|
className: "file-item action w100",
|
|
|
title: "ssh\u76F4\u8FDE",
|
|
|
children: [" ", /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
|
className: "iconfont icon-wodegongzuotai"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(row/* default */.Z, {
|
|
|
align: "middle",
|
|
|
className: "w100",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
flex: "1",
|
|
|
onClick: getSSH,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
|
type: "text",
|
|
|
loading: isLoading,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
style: {
|
|
|
color: "#ddd",
|
|
|
marginLeft: -11
|
|
|
},
|
|
|
children: "ssh\u76F4\u8FDE"
|
|
|
})
|
|
|
})
|
|
|
})
|
|
|
})]
|
|
|
}), (vnc_url || taskData.mirror_type === "webssh") && /*#__PURE__*/(0,jsx_runtime.jsxs)("a", {
|
|
|
className: "file-item action w100",
|
|
|
title: "\u670D\u52A1\u9884\u89C8",
|
|
|
children: [" ", /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
|
className: "iconfont icon-suanfasheji"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
align: "middle",
|
|
|
className: "w100",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
flex: "1",
|
|
|
onClick: serverPreview,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
|
type: "text",
|
|
|
loading: isLoading2,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
style: {
|
|
|
color: "#ddd",
|
|
|
marginLeft: -11
|
|
|
},
|
|
|
children: "\u670D\u52A1\u9884\u89C8"
|
|
|
})
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(col/* default */.Z, {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("a", {
|
|
|
href: "javascript:;",
|
|
|
onClick: serverPreview,
|
|
|
className: "c-blue",
|
|
|
children: "\u7AEF\u53E3\u53F7"
|
|
|
}), " ", /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z, {
|
|
|
onChange: function onChange(e) {
|
|
|
return setPortValue(e.target.value);
|
|
|
},
|
|
|
style: {
|
|
|
width: 50
|
|
|
},
|
|
|
value: portValue
|
|
|
})]
|
|
|
})]
|
|
|
})]
|
|
|
}), window_vnc_url && /*#__PURE__*/(0,jsx_runtime.jsxs)("a", {
|
|
|
id: "reset-task",
|
|
|
onClick: restartVac,
|
|
|
className: "file-item action",
|
|
|
title: "\u91CD\u542F\u4E91\u4E3B\u673A",
|
|
|
children: [" ", /*#__PURE__*/(0,jsx_runtime.jsx)(PoweroffOutlined/* default */.Z, {
|
|
|
style: {
|
|
|
marginRight: 21,
|
|
|
color: "#FFF"
|
|
|
},
|
|
|
className: "c-white font16"
|
|
|
}), "\u91CD\u542F\u4E91\u4E3B\u673A "]
|
|
|
}), git_url ? /*#__PURE__*/(0,jsx_runtime.jsx)(lib.CopyToClipboard, {
|
|
|
text: git_url,
|
|
|
onCopy: function onCopy() {
|
|
|
return message/* default.success */.ZP.success('复制成功');
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("a", {
|
|
|
id: "copy-git",
|
|
|
title: "\u590D\u5236\u7248\u672C\u5E93\u5730\u5740",
|
|
|
className: "file-item action",
|
|
|
children: [" ", /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
|
className: "iconfont icon-fuzhibanbenkudizhi1"
|
|
|
}), "\u590D\u5236\u7248\u672C\u5E93\u5730\u5740 "]
|
|
|
})
|
|
|
}) : null]
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(record, {
|
|
|
ref: recordRef
|
|
|
})]
|
|
|
});
|
|
|
});
|
|
|
// EXTERNAL MODULE: ./src/components/useInterval.tsx
|
|
|
var useInterval = __webpack_require__(61891);
|
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/tooltip/index.js + 3 modules
|
|
|
var tooltip = __webpack_require__(83062);
|
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/pagination/index.js + 11 modules
|
|
|
var pagination = __webpack_require__(83338);
|
|
|
;// CONCATENATED MODULE: ./src/pages/Innovation/Tasks/data-sets/index.less?modules
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
/* harmony default export */ var data_setsmodules = ({"flex_box_center":"flex_box_center___ayVLf","flex_space_between":"flex_space_between___pLloZ","flex_box_vertical_center":"flex_box_vertical_center___eX0c1","flex_box_center_end":"flex_box_center_end___KU45M","flex_box_column":"flex_box_column___cZiLo","wrap":"wrap___x0TPJ","list":"list___Bn7Fe","page":"page___zVCLY"});
|
|
|
;// CONCATENATED MODULE: ./src/pages/Innovation/Tasks/service/index.js
|
|
|
|
|
|
|
|
|
|
|
|
var _getJsonFromUrl, _getJsonFromUrl2;
|
|
|
|
|
|
|
|
|
|
|
|
//判断是否来自教学课堂助教查看实训
|
|
|
var urlParams = (_getJsonFromUrl = (0,util/* getJsonFromUrl */.oP)()) !== null && _getJsonFromUrl !== void 0 && _getJsonFromUrl.homework_common_id ? {
|
|
|
homework_common_id: (_getJsonFromUrl2 = (0,util/* getJsonFromUrl */.oP)()) === null || _getJsonFromUrl2 === void 0 ? void 0 : _getJsonFromUrl2.homework_common_id
|
|
|
} : {};
|
|
|
function fetchTaskInfo(id) {
|
|
|
return get("tasks/".concat(id, ".json"), urlParams);
|
|
|
}
|
|
|
function fetchDataList(id) {
|
|
|
return (0,fetch/* get */.U2)("sci/projects/".concat(id, "/get_data_sets.json"));
|
|
|
}
|
|
|
function fetchTaskList(id) {
|
|
|
return get("myshixuns/".concat(id, "/challenges.json"));
|
|
|
}
|
|
|
function fetchPathsTaskList(id, params) {
|
|
|
return get("myshixuns/".concat(id, "/subject_challenges.json"), params);
|
|
|
}
|
|
|
function saveTaskStar(id, shixunId, star) {
|
|
|
return (0,fetch/* get */.U2)("tasks/".concat(id, "/star.json"), {
|
|
|
star: star,
|
|
|
shixun_id: shixunId
|
|
|
});
|
|
|
}
|
|
|
function fetchCode(id, params) {
|
|
|
return (0,fetch/* get */.U2)("tasks/".concat(id, "/rep_content.json"), objectSpread2_default()(objectSpread2_default()({}, params), urlParams));
|
|
|
}
|
|
|
function updateCode(id, params) {
|
|
|
return (0,fetch/* post */.v_)("myshixuns/".concat(id, "/update_file.json"), params);
|
|
|
}
|
|
|
function restoreCode(id, params) {
|
|
|
return (0,fetch/* get */.U2)("tasks/".concat(id, "/reset_original_code.json"), objectSpread2_default()(objectSpread2_default()({}, params), urlParams));
|
|
|
}
|
|
|
function resetGitCode(id, params) {
|
|
|
return (0,fetch/* post */.v_)("myshixuns/".concat(id, "/reset_repository.json"), params);
|
|
|
}
|
|
|
function resetPassedCode(id, params) {
|
|
|
return (0,fetch/* get */.U2)("tasks/".concat(id, "/reset_passed_code.json"), objectSpread2_default()(objectSpread2_default()({}, params), urlParams));
|
|
|
}
|
|
|
function codeGameBuild(id, params) {
|
|
|
return (0,fetch/* post */.v_)("tasks/".concat(id, "/game_build.json"), objectSpread2_default()(objectSpread2_default()({}, params), urlParams));
|
|
|
}
|
|
|
function getCodeGameStatus(id, params) {
|
|
|
return (0,fetch/* get */.U2)("tasks/".concat(id, "/game_status.json"), objectSpread2_default()(objectSpread2_default()({}, params), urlParams));
|
|
|
}
|
|
|
function evalateChooseGame(id, params) {
|
|
|
return post("tasks/".concat(id, "/choose_build.json"), _objectSpread(_objectSpread({}, params), urlParams));
|
|
|
}
|
|
|
function fetchPictures(id) {
|
|
|
return get("tasks/".concat(id, "/picture_display.json"), urlParams);
|
|
|
}
|
|
|
function updateCostTime(id, params) {
|
|
|
return get("tasks/".concat(id, "/cost_time.json"), _objectSpread(_objectSpread({}, params), urlParams));
|
|
|
}
|
|
|
function getNoticeDetail(id, params) {
|
|
|
return get("courses/".concat(id, "/inform_detail.json"), params);
|
|
|
}
|
|
|
function plusOrCancelPraise(id) {
|
|
|
return (0,fetch/* post */.v_)("tasks/".concat(id, "/plus_or_cancel_praise.json"));
|
|
|
}
|
|
|
function fetchRepos(id) {
|
|
|
var params = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
|
return (0,fetch/* post */.v_)("myshixuns/".concat(id, "/repository.json"), params);
|
|
|
}
|
|
|
function openSSh(id, params) {
|
|
|
return get("myshixuns/".concat(id, "/open_webssh.json"), params || {});
|
|
|
}
|
|
|
function openVmSSh(id, params) {
|
|
|
return get("myshixuns/".concat(id, "/open_vm_webssh.json"), params);
|
|
|
}
|
|
|
function closeSSh(id) {
|
|
|
return get("tasks/".concat(id, "/close_webssh.json"));
|
|
|
}
|
|
|
function resetVnc(_x) {
|
|
|
return _resetVnc.apply(this, arguments);
|
|
|
}
|
|
|
// 所有环境重置都可以使用此方法
|
|
|
function _resetVnc() {
|
|
|
_resetVnc = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee(id) {
|
|
|
var res;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
|
|
|
while (1) switch (_context.prev = _context.next) {
|
|
|
case 0:
|
|
|
_context.next = 2;
|
|
|
return (0,fetch/* post */.v_)("/sci/projects/".concat(id, "/delete_pod.json"));
|
|
|
case 2:
|
|
|
res = _context.sent;
|
|
|
if (!((res === null || res === void 0 ? void 0 : res.status) >= 0)) {
|
|
|
_context.next = 5;
|
|
|
break;
|
|
|
}
|
|
|
return _context.abrupt("return", (0,fetch/* post */.v_)("/sci/projects/".concat(id, "/start_environment.json"), urlParams));
|
|
|
case 5:
|
|
|
case "end":
|
|
|
return _context.stop();
|
|
|
}
|
|
|
}, _callee);
|
|
|
}));
|
|
|
return _resetVnc.apply(this, arguments);
|
|
|
}
|
|
|
function resetWindowsVnc(id) {
|
|
|
// return post(`tasks/${id}/reset_windows_vnc_link.json`);
|
|
|
return post("tasks/".concat(id, "/reset_environment"));
|
|
|
}
|
|
|
function resetLinuxVnc(id, params) {
|
|
|
return post("tasks/".concat(id, "/reset_linux_vnc_link.json"), params || {});
|
|
|
}
|
|
|
function unlockTestCase(id) {
|
|
|
return (0,fetch/* get */.U2)("tasks/".concat(id, "/check_test_sets.json"));
|
|
|
}
|
|
|
function getAnswerInfo(id) {
|
|
|
return get("tasks/".concat(id, "/get_answer_info.json"));
|
|
|
}
|
|
|
function getChooseAnswerInfo(id) {
|
|
|
return get("tasks/".concat(id, "/get_choose_answer.json"));
|
|
|
}
|
|
|
function getChooseUnlockAnswer(id) {
|
|
|
return get("tasks/".concat(id, "/unlock_choose_answer.json"));
|
|
|
}
|
|
|
function getUnlockAnswer(id, aid) {
|
|
|
return get("tasks/".concat(id, "/unlock_answer.json"), {
|
|
|
answer_id: aid
|
|
|
});
|
|
|
}
|
|
|
function setUnity3dStatus(id, result, data) {
|
|
|
return (0,fetch/* post */.v_)("tasks/".concat(id, "/set_games_status.json"), {
|
|
|
result: result,
|
|
|
data: data
|
|
|
});
|
|
|
}
|
|
|
function addVncTime(id) {
|
|
|
return (0,fetch/* post */.v_)("/sci/projects/".concat(id, "/extend_release.json"));
|
|
|
}
|
|
|
function saveEnv(id, data) {
|
|
|
return (0,fetch/* post */.v_)("/sci/projects/".concat(id, "/save_mirror.json"), objectSpread2_default()({}, data));
|
|
|
}
|
|
|
// 所有延时都改成了此接口,旧接口依旧可用
|
|
|
function addWindowsVncTime(id) {
|
|
|
return Fetch("/api/tasks/".concat(id, "/active.json"), {
|
|
|
method: 'post',
|
|
|
body: {
|
|
|
template_id: window.sessionStorage.imageId
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
function addLinuxVncTime(id) {
|
|
|
return post("tasks/".concat(id, "/extend_linux_vnc.json"), urlParams);
|
|
|
}
|
|
|
function getRanking(id, params) {
|
|
|
return get("tasks/".concat(id, "/rank_list.json"), params);
|
|
|
}
|
|
|
function closeWindowsVnc(id, tpi_id) {
|
|
|
return (0,fetch/* post */.v_)("tasks/".concat(id, "/close_windows_vnc.json"), {
|
|
|
tpi_id: tpi_id
|
|
|
});
|
|
|
}
|
|
|
function pullFiles(id) {
|
|
|
return get("tasks/".concat(id, "/pull_files.json"));
|
|
|
}
|
|
|
function logOutput(id, params) {
|
|
|
return post("tasks/".concat(id, "/log_output"), params);
|
|
|
}
|
|
|
function stopLogOutput(id) {
|
|
|
return get("tasks/".concat(id, "/stop_log_output.json"));
|
|
|
}
|
|
|
|
|
|
// myshixuns start
|
|
|
function addMyRepositoryFile(_x2) {
|
|
|
return _addMyRepositoryFile.apply(this, arguments);
|
|
|
}
|
|
|
function _addMyRepositoryFile() {
|
|
|
_addMyRepositoryFile = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(params) {
|
|
|
return _regeneratorRuntime().wrap(function _callee2$(_context2) {
|
|
|
while (1) switch (_context2.prev = _context2.next) {
|
|
|
case 0:
|
|
|
return _context2.abrupt("return", Fetch("/api/myshixuns/".concat(params.id, "/add_file.json"), {
|
|
|
method: 'post',
|
|
|
body: params
|
|
|
}));
|
|
|
case 1:
|
|
|
case "end":
|
|
|
return _context2.stop();
|
|
|
}
|
|
|
}, _callee2);
|
|
|
}));
|
|
|
return _addMyRepositoryFile.apply(this, arguments);
|
|
|
}
|
|
|
function deleteMyGitFile(_x3) {
|
|
|
return _deleteMyGitFile.apply(this, arguments);
|
|
|
}
|
|
|
function _deleteMyGitFile() {
|
|
|
_deleteMyGitFile = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee3(params) {
|
|
|
return _regeneratorRuntime().wrap(function _callee3$(_context3) {
|
|
|
while (1) switch (_context3.prev = _context3.next) {
|
|
|
case 0:
|
|
|
return _context3.abrupt("return", Fetch("/api/myshixuns/".concat(params.id, "/delete_git_file.json"), {
|
|
|
method: 'Delete',
|
|
|
body: params
|
|
|
}));
|
|
|
case 1:
|
|
|
case "end":
|
|
|
return _context3.stop();
|
|
|
}
|
|
|
}, _callee3);
|
|
|
}));
|
|
|
return _deleteMyGitFile.apply(this, arguments);
|
|
|
}
|
|
|
function moveMyGitFile(_x4) {
|
|
|
return _moveMyGitFile.apply(this, arguments);
|
|
|
}
|
|
|
function _moveMyGitFile() {
|
|
|
_moveMyGitFile = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4(params) {
|
|
|
return _regeneratorRuntime().wrap(function _callee4$(_context4) {
|
|
|
while (1) switch (_context4.prev = _context4.next) {
|
|
|
case 0:
|
|
|
return _context4.abrupt("return", Fetch("/api/myshixuns/".concat(params.id, "/mv_file.json"), {
|
|
|
method: 'post',
|
|
|
body: params
|
|
|
}));
|
|
|
case 1:
|
|
|
case "end":
|
|
|
return _context4.stop();
|
|
|
}
|
|
|
}, _callee4);
|
|
|
}));
|
|
|
return _moveMyGitFile.apply(this, arguments);
|
|
|
}
|
|
|
function getMyFileContent(_x5) {
|
|
|
return _getMyFileContent.apply(this, arguments);
|
|
|
}
|
|
|
function _getMyFileContent() {
|
|
|
_getMyFileContent = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee5(params) {
|
|
|
return _regeneratorRuntime().wrap(function _callee5$(_context5) {
|
|
|
while (1) switch (_context5.prev = _context5.next) {
|
|
|
case 0:
|
|
|
return _context5.abrupt("return", Fetch("/api/tasks/".concat(params.id, "/rep_content.json"), {
|
|
|
method: 'get',
|
|
|
params: params
|
|
|
}));
|
|
|
case 1:
|
|
|
case "end":
|
|
|
return _context5.stop();
|
|
|
}
|
|
|
}, _callee5);
|
|
|
}));
|
|
|
return _getMyFileContent.apply(this, arguments);
|
|
|
}
|
|
|
;// CONCATENATED MODULE: ./src/pages/Innovation/Tasks/data-sets/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var _excluded = ["userDetail", "user", "globalSetting", "loading", "dispatch", "onClose", "shixun"];
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var NavType = /*#__PURE__*/function (NavType) {
|
|
|
NavType["Classrooms"] = "classrooms";
|
|
|
NavType["Shixuns"] = "shixuns";
|
|
|
NavType["Paths"] = "paths";
|
|
|
NavType["Projects"] = "projects";
|
|
|
NavType["Videos"] = "videos";
|
|
|
NavType["Topics"] = "topics";
|
|
|
NavType["Teach"] = "teach-group";
|
|
|
return NavType;
|
|
|
}(NavType || {});
|
|
|
var Banner = function Banner(_ref) {
|
|
|
var userDetail = _ref.userDetail,
|
|
|
user = _ref.user,
|
|
|
globalSetting = _ref.globalSetting,
|
|
|
loading = _ref.loading,
|
|
|
dispatch = _ref.dispatch,
|
|
|
onClose = _ref.onClose,
|
|
|
shixun = _ref.shixun,
|
|
|
props = objectWithoutProperties_default()(_ref, _excluded);
|
|
|
var params = (0,_umi_production_exports.useParams)();
|
|
|
var _useState = (0,react.useState)([]),
|
|
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
|
dataList = _useState2[0],
|
|
|
setDataList = _useState2[1];
|
|
|
var _useState3 = (0,react.useState)(""),
|
|
|
_useState4 = slicedToArray_default()(_useState3, 2),
|
|
|
folderName = _useState4[0],
|
|
|
setFolderName = _useState4[1];
|
|
|
var _useState5 = (0,react.useState)(0),
|
|
|
_useState6 = slicedToArray_default()(_useState5, 2),
|
|
|
count = _useState6[0],
|
|
|
setCount = _useState6[1];
|
|
|
var _useState7 = (0,react.useState)(objectSpread2_default()({
|
|
|
page: 1,
|
|
|
limit: 20
|
|
|
}, params)),
|
|
|
_useState8 = slicedToArray_default()(_useState7, 2),
|
|
|
query = _useState8[0],
|
|
|
setQuery = _useState8[1];
|
|
|
var visible = (0,react.useCallback)(function () {
|
|
|
return props.visible;
|
|
|
}, [props.visible]);
|
|
|
(0,react.useEffect)(function () {
|
|
|
query.page = 1;
|
|
|
getSetData();
|
|
|
}, [props.visible]);
|
|
|
var getSetData = /*#__PURE__*/function () {
|
|
|
var _ref2 = 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 fetchDataList(params.taskId);
|
|
|
case 2:
|
|
|
res = _context.sent;
|
|
|
if (res) {
|
|
|
setDataList(toConsumableArray_default()(res.data_sets));
|
|
|
setCount(res.data_sets_count);
|
|
|
setFolderName(res.folder_name);
|
|
|
}
|
|
|
case 4:
|
|
|
case "end":
|
|
|
return _context.stop();
|
|
|
}
|
|
|
}, _callee);
|
|
|
}));
|
|
|
return function getSetData() {
|
|
|
return _ref2.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
style: {
|
|
|
height: "calc(100vh - 51px)",
|
|
|
padding: "20px 15px"
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: "c-grey-999 font14 ml5 mb5",
|
|
|
children: "\u6570\u636E\u96C6"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("dl", {
|
|
|
className: data_setsmodules.list,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
|
|
|
title: folderName,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("dt", {
|
|
|
className: "c-white",
|
|
|
children: folderName
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("dd", {
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(lib.CopyToClipboard, {
|
|
|
text: folderName,
|
|
|
onCopy: function onCopy() {
|
|
|
return message/* default.success */.ZP.success('复制成功');
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "".concat(data_setsmodules.copy, " current"),
|
|
|
children: "\u70B9\u51FB\u590D\u5236"
|
|
|
})
|
|
|
})
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: "c-grey-999 font14 ml5 mb5",
|
|
|
children: "\u6587\u4EF6\u8DEF\u5F84"
|
|
|
}), dataList === null || dataList === void 0 ? void 0 : dataList.map(function (item, key) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("dl", {
|
|
|
className: data_setsmodules.list,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
|
|
|
title: item.filename,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("dt", {
|
|
|
className: "c-white",
|
|
|
children: item.filename
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("dd", {
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(lib.CopyToClipboard, {
|
|
|
text: item.file_path,
|
|
|
onCopy: function onCopy() {
|
|
|
return message/* default.success */.ZP.success('复制成功');
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "".concat(data_setsmodules.copy, " current"),
|
|
|
children: "\u70B9\u51FB\u590D\u5236"
|
|
|
})
|
|
|
})
|
|
|
})]
|
|
|
});
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: "tc",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(pagination/* default */.Z, {
|
|
|
onChange: function onChange(page) {
|
|
|
query.page = page;
|
|
|
getSetData();
|
|
|
},
|
|
|
className: data_setsmodules.page,
|
|
|
size: "small",
|
|
|
total: count,
|
|
|
pageSize: query.limit,
|
|
|
hideOnSinglePage: true
|
|
|
})
|
|
|
})]
|
|
|
});
|
|
|
};
|
|
|
/* harmony default export */ var data_sets = ((0,_umi_production_exports.connect)(function (_ref3) {
|
|
|
var user = _ref3.user,
|
|
|
userDetail = _ref3.userDetail,
|
|
|
loading = _ref3.loading,
|
|
|
shixunsDetail = _ref3.shixunsDetail,
|
|
|
globalSetting = _ref3.globalSetting;
|
|
|
return {
|
|
|
user: user,
|
|
|
userDetail: userDetail,
|
|
|
shixunsDetail: shixunsDetail,
|
|
|
globalSetting: globalSetting,
|
|
|
loading: loading.models.index
|
|
|
};
|
|
|
})(Banner));
|
|
|
// EXTERNAL MODULE: ./src/components/mediator.js
|
|
|
var mediator = __webpack_require__(91562);
|
|
|
;// CONCATENATED MODULE: ./src/pages/Innovation/Tasks/header/tool.png
|
|
|
var tool_namespaceObject = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACQAAAAgCAYAAAB6kdqOAAABZ0lEQVRYR+2YrU7FQBBGzzwEPAMSi+M6MARDggNJgiIkWLiSBIFCkyCuQECCQFIcEstb8AYf2ZvmhpbuT9ttUpJWdma+OZ3O7k5rRC5Jh8ARsBPzjdhvgXczew75WSyJpCdgP+aXaP8ws63OQJK2gbdSYJ6Y1Od2WRpmZlb4nIIVqgEFhUKwbXTGByRpDzgBdnu+kr7hD8CLSboGLvqqZYp/dEDK1LR9mZZNXwEys6u+ql3iJbm8E5C3eFOFYn2VrUKS1oADYL1M+gW8mtl3DOK3PQuQpE1gAWzUkn8CZ6Hzqg6bC+gcuPFU4s7MTlOrlAvITQFuGijMbOaSS/pzLwXKB+QdCQKiXqAUkJqP06rs1B00liFNFeqqVQEaXYXmbc6ypn7J3UNtgUa3ysa1D5XLfDw7dedl1BCYZWOcgHJWIKb1f15Z7EkGtq+G/NXEP3DCFPl79xnkTln3u+U4JWJAH/czo/gBVkc5pun3NGoAAAAASUVORK5CYII=";
|
|
|
;// CONCATENATED MODULE: ./src/pages/Innovation/Tasks/header/data.png
|
|
|
var data_namespaceObject = "data:image/png;base64,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";
|
|
|
// EXTERNAL MODULE: ./src/utils/fullscreen.ts
|
|
|
var fullscreen = __webpack_require__(15994);
|
|
|
// EXTERNAL MODULE: ./src/components/Exercise/recordScreen.tsx + 3 modules
|
|
|
var recordScreen = __webpack_require__(78806);
|
|
|
;// CONCATENATED MODULE: ./src/pages/Innovation/Tasks/header/index.jsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// import { Timer } from '../code-repository/ssh-action-bar';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var Countdown = statistic/* default.Countdown */.Z.Countdown;
|
|
|
function TipContent() {
|
|
|
return /*#__PURE__*/_jsx("p", {
|
|
|
children: "\u684C\u9762\u7CFB\u7EDF\u5C06\u6062\u590D\u5230\u521D\u59CB\u72B6\u6001\uFF0C\u60A8\u5728\u7CFB\u7EDF\u4E2D\u521B\u5EFA\u7684\u6570\u636E\u53EF\u80FD\u4F1A\u4E22\u5931\u3002\u8BF7\u786E\u4FDD\u60A8\u7684\u6570\u636E\u5DF2\u4FDD\u5B58\uFF08\u5982\uFF1A\u7248\u672C\u5E93\u4EE3\u7801\u5DF2\u63A8\u9001\u5230\u670D\u52A1\u5668\uFF09\u3002\u662F\u5426\u786E\u8BA4\u91CD\u7F6E\uFF1F"
|
|
|
});
|
|
|
}
|
|
|
/* harmony default export */ var header = (function (_ref) {
|
|
|
var mirror_description = _ref.mirror_description,
|
|
|
difficulty = _ref.difficulty,
|
|
|
git_url = _ref.git_url,
|
|
|
vnc_url = _ref.vnc_url,
|
|
|
window_vnc_url = _ref.window_vnc_url,
|
|
|
linux_vnc = _ref.linux_vnc,
|
|
|
isNotice = _ref.isNotice,
|
|
|
user = _ref.user,
|
|
|
game = _ref.game,
|
|
|
_ref$shixun = _ref.shixun,
|
|
|
shixun = _ref$shixun === void 0 ? {} : _ref$shixun,
|
|
|
_ref$taskData = _ref.taskData,
|
|
|
taskData = _ref$taskData === void 0 ? {} : _ref$taskData,
|
|
|
resetVncLoading = _ref.resetVncLoading,
|
|
|
onUpdateCostTime = _ref.onUpdateCostTime,
|
|
|
lastedGetTaskInfoTime = _ref.lastedGetTaskInfoTime,
|
|
|
onShowNotice = _ref.onShowNotice,
|
|
|
onResetGitCode = _ref.onResetGitCode,
|
|
|
onResetVnc = _ref.onResetVnc,
|
|
|
onBack = _ref.onBack,
|
|
|
onAddVncTime = _ref.onAddVncTime,
|
|
|
onUpdateCode = _ref.onUpdateCode,
|
|
|
unity_3d_routes = _ref.unity_3d_routes,
|
|
|
remaining_time = _ref.remaining_time,
|
|
|
st = _ref.st;
|
|
|
var _useSearchParams = (0,_umi_production_exports.useSearchParams)(),
|
|
|
_useSearchParams2 = slicedToArray_default()(_useSearchParams, 1),
|
|
|
searchParams = _useSearchParams2[0];
|
|
|
var name = shixun.name,
|
|
|
identifier = shixun.identifier,
|
|
|
task_pass = shixun.task_pass,
|
|
|
test_set_permission = shixun.test_set_permission;
|
|
|
// const { remaining_time, status } = taskData;
|
|
|
// const { user_url, image_url, grade = 0 } = user;
|
|
|
var _useState = (0,react.useState)(false),
|
|
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
|
isToolBar = _useState2[0],
|
|
|
setIsToolBar = _useState2[1];
|
|
|
var _useState3 = (0,react.useState)(false),
|
|
|
_useState4 = slicedToArray_default()(_useState3, 2),
|
|
|
isDataBar = _useState4[0],
|
|
|
setIsDataBar = _useState4[1];
|
|
|
var _useState5 = (0,react.useState)({}),
|
|
|
_useState6 = slicedToArray_default()(_useState5, 2),
|
|
|
exerciseData = _useState6[0],
|
|
|
setExerciseData = _useState6[1];
|
|
|
var _useState7 = (0,react.useState)(false),
|
|
|
_useState8 = slicedToArray_default()(_useState7, 2),
|
|
|
showSave = _useState8[0],
|
|
|
setShowSave = _useState8[1];
|
|
|
var _useState9 = (0,react.useState)(null),
|
|
|
_useState10 = slicedToArray_default()(_useState9, 2),
|
|
|
countDownTime = _useState10[0],
|
|
|
setCountDownTime = _useState10[1];
|
|
|
var _useState11 = (0,react.useState)(1800),
|
|
|
_useState12 = slicedToArray_default()(_useState11, 2),
|
|
|
vncTime = _useState12[0],
|
|
|
setVncTime = _useState12[1];
|
|
|
var _useState13 = (0,react.useState)(false),
|
|
|
_useState14 = slicedToArray_default()(_useState13, 2),
|
|
|
dataSetsVisiable = _useState14[0],
|
|
|
setdataSetsVisiable = _useState14[1];
|
|
|
var _useState15 = (0,react.useState)(false),
|
|
|
_useState16 = slicedToArray_default()(_useState15, 2),
|
|
|
isshowmodal = _useState16[0],
|
|
|
setisshowmodal = _useState16[1];
|
|
|
var query = (0,_umi_production_exports.useLocation)().query;
|
|
|
var params = (0,_umi_production_exports.useParams)();
|
|
|
var _useState17 = (0,react.useState)(false),
|
|
|
_useState18 = slicedToArray_default()(_useState17, 2),
|
|
|
isloading = _useState18[0],
|
|
|
setisloading = _useState18[1];
|
|
|
var _Form$useForm = es_form/* default.useForm */.Z.useForm(),
|
|
|
_Form$useForm2 = slicedToArray_default()(_Form$useForm, 1),
|
|
|
form = _Form$useForm2[0];
|
|
|
var timers = (0,react.useMemo)(function () {
|
|
|
return Date.now() + remaining_time;
|
|
|
}, [remaining_time]);
|
|
|
(0,react.useEffect)(function () {
|
|
|
if (!showSave) {
|
|
|
setTimeout(function () {
|
|
|
setShowSave(true);
|
|
|
}, 1000 * 60);
|
|
|
}
|
|
|
}, [showSave]);
|
|
|
(0,react.useEffect)(function () {
|
|
|
mediator/* default.subscribe */.Z.subscribe('update-windows-time', function (data) {
|
|
|
setVncTime(parseInt(remaining_time / 1000));
|
|
|
});
|
|
|
setVncTime(remaining_time / 1000);
|
|
|
}, []);
|
|
|
(0,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) {
|
|
|
recordScreen/* fullchange.forEach */.U.forEach(function (item, index) {
|
|
|
document.addEventListener(item, backExercise, false);
|
|
|
document.addEventListener('blur', backExercise, false);
|
|
|
});
|
|
|
window.focus();
|
|
|
window.onblur = function () {
|
|
|
if ((0,fullscreen/* IsFull */.vp)()) {
|
|
|
backExercise();
|
|
|
(0,fullscreen/* exitFull */.BU)();
|
|
|
}
|
|
|
};
|
|
|
}
|
|
|
return function () {
|
|
|
recordScreen/* fullchange.forEach */.U.forEach(function (item, index) {
|
|
|
document.removeEventListener(item, backExercise, false);
|
|
|
});
|
|
|
};
|
|
|
}, [exerciseData]);
|
|
|
var handleToggleDatasets = function handleToggleDatasets() {
|
|
|
setdataSetsVisiable(!dataSetsVisiable);
|
|
|
};
|
|
|
var backExercise = function backExercise(type) {
|
|
|
window.parent.postMessage('backExercise', '*');
|
|
|
if (type !== 'back') (0,fullscreen/* exitFull */.BU)();
|
|
|
// window.top.location.href = `/classrooms/${searchParams.get("coursesId")}/exercise/${searchParams.get("exercisesId")}/users/${searchParams.get("login")}`;
|
|
|
};
|
|
|
|
|
|
function triggerToolBar() {
|
|
|
setIsToolBar(!isToolBar);
|
|
|
}
|
|
|
function onHideToolBar() {
|
|
|
setIsToolBar(false);
|
|
|
setIsDataBar(false);
|
|
|
}
|
|
|
function toShixun() {
|
|
|
// onBack();
|
|
|
(0,_umi_production_exports.getDvaApp)()._store.dispatch({
|
|
|
type: 'globalSetting/headerFooterToggle',
|
|
|
payload: true
|
|
|
});
|
|
|
_umi_production_exports.history.replace("/innovation/project/detail/".concat(params.taskId));
|
|
|
}
|
|
|
function onReset() {
|
|
|
if (resetVncLoading) {
|
|
|
return;
|
|
|
}
|
|
|
onResetVnc();
|
|
|
}
|
|
|
function onCancelShixun() {
|
|
|
es_modal/* default.confirm */.Z.confirm({
|
|
|
title: '退出',
|
|
|
icon: /*#__PURE__*/(0,jsx_runtime.jsx)(ExclamationCircleOutlined/* default */.Z, {}),
|
|
|
content: '您确定要退出制作镜像吗?',
|
|
|
centered: true,
|
|
|
okText: '确定',
|
|
|
cancelText: '取消',
|
|
|
onOk: toShixun
|
|
|
});
|
|
|
}
|
|
|
function onVncAction(name) {
|
|
|
onHideToolBar();
|
|
|
if (name === 'reset-task') {
|
|
|
if (!resetVncLoading) {
|
|
|
es_modal/* default.confirm */.Z.confirm({
|
|
|
title: '重置环境',
|
|
|
icon: /*#__PURE__*/(0,jsx_runtime.jsx)(ExclamationCircleOutlined/* default */.Z, {}),
|
|
|
content: '是否确定重置环境?',
|
|
|
centered: true,
|
|
|
okText: '确定',
|
|
|
cancelText: '取消',
|
|
|
onOk: function onOk() {
|
|
|
onReset();
|
|
|
setShowSave(false);
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
}
|
|
|
if (name === 'reset-code') {
|
|
|
if (!resetVncLoading) {
|
|
|
es_modal/* default.confirm */.Z.confirm({
|
|
|
title: '恢复初始代码',
|
|
|
icon: /*#__PURE__*/(0,jsx_runtime.jsx)(ExclamationCircleOutlined/* default */.Z, {}),
|
|
|
content: '您在本文件中修改的内容将丢失,是否确定重新加载初始代码?',
|
|
|
centered: true,
|
|
|
okText: '确定',
|
|
|
cancelText: '取消',
|
|
|
onOk: onResetGitCode
|
|
|
});
|
|
|
}
|
|
|
}
|
|
|
if (name === 'full-screen') {
|
|
|
if ((0,fullscreen/* IsFull */.vp)()) {
|
|
|
(0,fullscreen/* exitFull */.BU)();
|
|
|
} else {
|
|
|
var _document, _document$getElementB;
|
|
|
(0,fullscreen/* requestFullScreen */.Dj)((_document = document) === null || _document === void 0 ? void 0 : (_document$getElementB = _document.getElementById) === null || _document$getElementB === void 0 ? void 0 : _document$getElementB.call(_document, 'task-right-panel'));
|
|
|
}
|
|
|
}
|
|
|
if (name === 'show-clipboard-box') {
|
|
|
mediator/* default.publish */.Z.publish('show-clipboard-box');
|
|
|
}
|
|
|
}
|
|
|
var vncSettingOption = {
|
|
|
task_pass: task_pass,
|
|
|
test_set_permission: test_set_permission,
|
|
|
mirror_description: mirror_description,
|
|
|
difficulty: difficulty,
|
|
|
resetVncLoading: resetVncLoading,
|
|
|
git_url: git_url,
|
|
|
onVncAction: onVncAction,
|
|
|
window_vnc_url: window_vnc_url,
|
|
|
linux_vnc: linux_vnc,
|
|
|
vnc_url: vnc_url,
|
|
|
shixun: shixun,
|
|
|
unity_3d_routes: unity_3d_routes
|
|
|
};
|
|
|
var cutTime = (0,react.useCallback)(function () {
|
|
|
if (!vncTime) {
|
|
|
return null;
|
|
|
}
|
|
|
console.log('VncTimer:', vncTime);
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(VncTimer, {
|
|
|
defaultTime: vncTime,
|
|
|
onAddVncTime: onAddVncTime,
|
|
|
onReset: onReset,
|
|
|
toShixun: toShixun,
|
|
|
title: vnc_url ? '' : ''
|
|
|
});
|
|
|
}, [vncTime]);
|
|
|
(0,react.useEffect)(function () {
|
|
|
if (isshowmodal) {
|
|
|
form.setFieldsValue({
|
|
|
name: '',
|
|
|
version: '',
|
|
|
description: ''
|
|
|
});
|
|
|
}
|
|
|
}, [isshowmodal]);
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: "task-header-container",
|
|
|
children: [searchParams.get("type") !== 'exercises' && /*#__PURE__*/(0,jsx_runtime.jsx)(jsx_runtime.Fragment, {
|
|
|
children: taskData.name
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("h2", {
|
|
|
className: "shixun-info",
|
|
|
children: name
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(jsx_runtime.Fragment, {
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: "flex-container",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
|
|
|
children: [window_vnc_url && /*#__PURE__*/(0,jsx_runtime.jsx)(_umi_production_exports.Link, {
|
|
|
onClick: function onClick(e) {
|
|
|
e.preventDefault();
|
|
|
mediator/* default.publish */.Z.publish('send-ctrl-alt-delete');
|
|
|
},
|
|
|
className: "c-grey-c mr20",
|
|
|
children: "\u53D1\u9001CTRL+ALT+DELETE"
|
|
|
}), cutTime()]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
|
className: "iconfont icon-shijian1"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(Countdown, {
|
|
|
valueStyle: {
|
|
|
color: 'white',
|
|
|
fontSize: '12px'
|
|
|
},
|
|
|
style: {
|
|
|
marginRight: 20,
|
|
|
marginLeft: 5
|
|
|
},
|
|
|
value: timers
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("a", {
|
|
|
className: "btn-vnc",
|
|
|
title: "\u5DE5\u5177\u680F",
|
|
|
onClick: triggerToolBar,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("img", {
|
|
|
alt: "tool",
|
|
|
src: tool_namespaceObject,
|
|
|
width: 16
|
|
|
}), "\u5DE5\u5177\u680F"]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("a", {
|
|
|
className: "btn-vnc",
|
|
|
title: "\u6570\u636E\u96C6",
|
|
|
onClick: function onClick() {
|
|
|
return setIsDataBar(true);
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("img", {
|
|
|
alt: "tool",
|
|
|
src: data_namespaceObject,
|
|
|
width: 18
|
|
|
}), "\u6570\u636E\u96C6"]
|
|
|
})]
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
|
type: "primary",
|
|
|
disabled: !showSave,
|
|
|
className: "save-innovation",
|
|
|
onClick: /*#__PURE__*/asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
|
|
|
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
|
|
|
while (1) switch (_context.prev = _context.next) {
|
|
|
case 0:
|
|
|
setisshowmodal(true);
|
|
|
// const res = await saveEnv(params.taskId);
|
|
|
// if (res?.status == 200) {
|
|
|
// message.info('保存成功');
|
|
|
// }
|
|
|
case 1:
|
|
|
case "end":
|
|
|
return _context.stop();
|
|
|
}
|
|
|
}, _callee);
|
|
|
})),
|
|
|
children: "\u4FDD\u5B58\u955C\u50CF"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
|
|
|
className: "btn-out",
|
|
|
onClick: onCancelShixun,
|
|
|
title: "\u9000\u51FA\u5B9E\u8BAD",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
|
className: "iconfont icon-kaiguan"
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(modal/* default */.Z, {
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(drawer/* default */.Z, {
|
|
|
rootClassName: "setting-drawer",
|
|
|
title: null,
|
|
|
placement: "right",
|
|
|
closable: false,
|
|
|
open: isToolBar,
|
|
|
onClose: onHideToolBar,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(vnc_setting2, objectSpread2_default()(objectSpread2_default()({}, vncSettingOption), {}, {
|
|
|
taskData: taskData
|
|
|
}))
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(modal/* default */.Z, {
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(drawer/* default */.Z, {
|
|
|
rootClassName: "setting-drawer",
|
|
|
title: null,
|
|
|
placement: "right",
|
|
|
closable: false,
|
|
|
open: isDataBar,
|
|
|
onClose: onHideToolBar,
|
|
|
style: {
|
|
|
height: '100%'
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(data_sets, {})
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_modal/* default */.Z, {
|
|
|
title: '保存镜像',
|
|
|
open: isshowmodal,
|
|
|
okButtonProps: {
|
|
|
loading: isloading
|
|
|
},
|
|
|
onCancel: function onCancel() {
|
|
|
setisshowmodal(false);
|
|
|
},
|
|
|
onOk: function onOk() {
|
|
|
form.submit();
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("p", {
|
|
|
style: {
|
|
|
color: '#6B758B'
|
|
|
},
|
|
|
children: "\u628A\u5F53\u524D\u7684\u73AF\u5883\u5B58\u4E3A\u4E00\u4E2A\u65B0\u7684\u955C\u50CF\u3002\u786E\u5B9A\u4FDD\u5B58\u540E\uFF0C\u5728\u6211\u7684\u955C\u50CF\u53EF\u4EE5\u770B\u5230\u8BE5\u955C\u50CF\u7684\u4FDD\u5B58\u72B6\u6001\u3002"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(es_form/* default */.Z, {
|
|
|
labelCol: {
|
|
|
span: 4
|
|
|
},
|
|
|
wrapperCol: {
|
|
|
span: 20
|
|
|
},
|
|
|
form: form,
|
|
|
onFinish: /*#__PURE__*/function () {
|
|
|
var _ref3 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee3(value) {
|
|
|
var res;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee3$(_context3) {
|
|
|
while (1) switch (_context3.prev = _context3.next) {
|
|
|
case 0:
|
|
|
setisloading(true);
|
|
|
_context3.next = 3;
|
|
|
return saveEnv(params.taskId, value);
|
|
|
case 3:
|
|
|
res = _context3.sent;
|
|
|
if ((res === null || res === void 0 ? void 0 : res.status) == 0) {
|
|
|
message/* default.info */.ZP.info('保存成功');
|
|
|
setisshowmodal(false);
|
|
|
}
|
|
|
if ((res === null || res === void 0 ? void 0 : res.status) === -5) {
|
|
|
es_modal/* default.confirm */.Z.confirm({
|
|
|
title: '覆盖镜像提示',
|
|
|
content: '系统检测到你的【镜像列表】存在同名且同版本号的镜像, 您确定要覆盖原来的镜像?',
|
|
|
okText: '确认',
|
|
|
cancelText: '取消',
|
|
|
onOk: function () {
|
|
|
var _onOk = 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 saveEnv(params.taskId, objectSpread2_default()({
|
|
|
is_cover: true
|
|
|
}, value));
|
|
|
case 2:
|
|
|
res = _context2.sent;
|
|
|
if ((res === null || res === void 0 ? void 0 : res.status) == 0) {
|
|
|
message/* default.info */.ZP.info('覆盖成功');
|
|
|
setisshowmodal(false);
|
|
|
}
|
|
|
case 4:
|
|
|
case "end":
|
|
|
return _context2.stop();
|
|
|
}
|
|
|
}, _callee2);
|
|
|
}));
|
|
|
function onOk() {
|
|
|
return _onOk.apply(this, arguments);
|
|
|
}
|
|
|
return onOk;
|
|
|
}()
|
|
|
});
|
|
|
}
|
|
|
setisloading(false);
|
|
|
case 7:
|
|
|
case "end":
|
|
|
return _context3.stop();
|
|
|
}
|
|
|
}, _callee3);
|
|
|
}));
|
|
|
return function (_x) {
|
|
|
return _ref3.apply(this, arguments);
|
|
|
};
|
|
|
}(),
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default.Item */.Z.Item, {
|
|
|
label: "\u955C\u50CF\u540D\u79F0",
|
|
|
name: "name",
|
|
|
rules: [{
|
|
|
required: true,
|
|
|
message: '请输入镜像名称'
|
|
|
}, {
|
|
|
pattern: /^[a-z0-9_]+$/,
|
|
|
message: '只允许输入数字或小写字母'
|
|
|
}],
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z, {
|
|
|
type: "text",
|
|
|
maxLength: 60
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default.Item */.Z.Item, {
|
|
|
label: " \u7248\u672C\u53F7",
|
|
|
name: "version",
|
|
|
rules: [{
|
|
|
required: true,
|
|
|
message: '请输入版本号'
|
|
|
}],
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(input_number/* default */.Z, {
|
|
|
style: {
|
|
|
width: '100%'
|
|
|
}
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default.Item */.Z.Item, {
|
|
|
label: "\u955C\u50CF\u63CF\u8FF0",
|
|
|
name: "description",
|
|
|
rules: [{
|
|
|
required: true,
|
|
|
message: '请输入镜像描述'
|
|
|
}],
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default.TextArea */.Z.TextArea, {})
|
|
|
})]
|
|
|
})]
|
|
|
})
|
|
|
})]
|
|
|
});
|
|
|
});
|
|
|
var FiveMinute = 300;
|
|
|
function VncTimer(_ref4) {
|
|
|
var onAddVncTime = _ref4.onAddVncTime,
|
|
|
onReset = _ref4.onReset,
|
|
|
toShixun = _ref4.toShixun,
|
|
|
_ref4$title = _ref4.title,
|
|
|
title = _ref4$title === void 0 ? '' : _ref4$title,
|
|
|
defaultTime = _ref4.defaultTime;
|
|
|
var _useState19 = (0,react.useState)(defaultTime),
|
|
|
_useState20 = slicedToArray_default()(_useState19, 2),
|
|
|
time = _useState20[0],
|
|
|
setTime = _useState20[1];
|
|
|
var _useState21 = (0,react.useState)(false),
|
|
|
_useState22 = slicedToArray_default()(_useState21, 2),
|
|
|
isPlusTime = _useState22[0],
|
|
|
setIsPlusTime = _useState22[1];
|
|
|
(0,useInterval/* default */.Z)(function () {
|
|
|
setTime(time - 1);
|
|
|
}, time > 0 ? 1000 : null);
|
|
|
(0,react.useEffect)(function () {
|
|
|
if (time === FiveMinute) {
|
|
|
setIsPlusTime(true);
|
|
|
}
|
|
|
}, [time]);
|
|
|
(0,react.useEffect)(function () {
|
|
|
if (defaultTime < FiveMinute) {
|
|
|
setIsPlusTime(true);
|
|
|
}
|
|
|
setTime(defaultTime);
|
|
|
}, [defaultTime]);
|
|
|
function onCancel() {
|
|
|
if (time !== 0) {
|
|
|
setIsPlusTime(false);
|
|
|
} else {
|
|
|
toShixun();
|
|
|
}
|
|
|
}
|
|
|
function onAddTime() {
|
|
|
return _onAddTime.apply(this, arguments);
|
|
|
}
|
|
|
function _onAddTime() {
|
|
|
_onAddTime = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee4() {
|
|
|
var res;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee4$(_context4) {
|
|
|
while (1) switch (_context4.prev = _context4.next) {
|
|
|
case 0:
|
|
|
setIsPlusTime(false);
|
|
|
if (!(time > 0)) {
|
|
|
_context4.next = 8;
|
|
|
break;
|
|
|
}
|
|
|
_context4.next = 4;
|
|
|
return onAddVncTime();
|
|
|
case 4:
|
|
|
res = _context4.sent;
|
|
|
setTime((res === null || res === void 0 ? void 0 : res.remaining_time) / 1000);
|
|
|
_context4.next = 10;
|
|
|
break;
|
|
|
case 8:
|
|
|
setTime(defaultTime);
|
|
|
onReset();
|
|
|
case 10:
|
|
|
case "end":
|
|
|
return _context4.stop();
|
|
|
}
|
|
|
}, _callee4);
|
|
|
}));
|
|
|
return _onAddTime.apply(this, arguments);
|
|
|
}
|
|
|
function callback() {
|
|
|
if (time < FiveMinute) {
|
|
|
setIsPlusTime(true);
|
|
|
}
|
|
|
}
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(react.Fragment, {
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(modal/* default */.Z, {
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_modal/* default */.Z, {
|
|
|
title: [/*#__PURE__*/(0,jsx_runtime.jsx)(ExclamationCircleOutlined/* default */.Z, {
|
|
|
className: "modalIconYellow"
|
|
|
}), time !== 0 ? '实验环境延时提醒' : '实验环境重置提醒'],
|
|
|
closable: false,
|
|
|
centered: true,
|
|
|
open: isPlusTime,
|
|
|
onOk: onAddTime,
|
|
|
onCancel: onCancel,
|
|
|
okText: time !== 0 ? '立即延长' : '重置',
|
|
|
cancelText: time !== 0 ? '不需要' : '退出',
|
|
|
children: time !== 0 ? "\u5F53\u524D\u5B9E\u9A8C\u73AF\u5883\u5C06\u4E8E ".concat(Math.round(time / 60), " \u5206\u949F\u540E\u5173\u95ED\uFF0C\u9700\u8981\u5EF6\u957F\u4F7F\u7528\u65F6\u95F4\u5417\uFF1F") : '由于长时间没有使用,资源已经被回收。如有需要,可以重置实验环境。'
|
|
|
})
|
|
|
})
|
|
|
});
|
|
|
}
|
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/tree/index.js + 35 modules
|
|
|
var tree = __webpack_require__(282);
|
|
|
;// CONCATENATED MODULE: ./src/pages/Innovation/Tasks/util.js
|
|
|
|
|
|
function isCompileOk(rs) {
|
|
|
var flag = true;
|
|
|
if (rs.length > 0) {
|
|
|
for (var i = 0; i < rs.length; i++) {
|
|
|
if (rs[i].compile_success == 0 || !rs[i].compile_success) {
|
|
|
flag = false;
|
|
|
break;
|
|
|
}
|
|
|
}
|
|
|
} else {
|
|
|
flag = false;
|
|
|
}
|
|
|
return flag;
|
|
|
}
|
|
|
function getTreeData(data) {
|
|
|
var parentKey = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
|
|
|
var result = [];
|
|
|
for (var i = 0; i < data.length; i++) {
|
|
|
var item = data[i];
|
|
|
var key = parentKey ? "".concat(parentKey, "/").concat(item.name) : "".concat(item.name);
|
|
|
result.push({
|
|
|
title: item.name,
|
|
|
isLeaf: item.type === 'tree' ? false : true,
|
|
|
key: key
|
|
|
});
|
|
|
}
|
|
|
return result;
|
|
|
}
|
|
|
function processTreeData(repos, key, newData) {
|
|
|
for (var i = 0; i < repos.length; i++) {
|
|
|
var item = repos[i];
|
|
|
if (item.key === key) {
|
|
|
item.children = newData;
|
|
|
break;
|
|
|
}
|
|
|
if (item.children) {
|
|
|
processTreeData(item.children, key, newData);
|
|
|
}
|
|
|
}
|
|
|
return repos;
|
|
|
}
|
|
|
function debounce(func, wait, immediate) {
|
|
|
var timeout;
|
|
|
return function () {
|
|
|
var context = this,
|
|
|
args = arguments;
|
|
|
var later = function later() {
|
|
|
timeout = null;
|
|
|
if (!immediate) func.apply(context, args);
|
|
|
};
|
|
|
var callNow = immediate && !timeout;
|
|
|
clearTimeout(timeout);
|
|
|
timeout = setTimeout(later, wait);
|
|
|
if (callNow) func.apply(context, args);
|
|
|
};
|
|
|
}
|
|
|
var isProd = true;
|
|
|
var apiPref = env/* default.API_SERVER */.Z.API_SERVER;
|
|
|
// export const isProd =
|
|
|
// window.location.href.indexOf('test-') > 0 ||
|
|
|
// window.location.href.indexOf('localhost') > 0
|
|
|
// ? false
|
|
|
// : true;
|
|
|
|
|
|
// export const apiPref = isProd
|
|
|
// ? 'https://www.educoder.net'
|
|
|
// : 'https://test-newweb.educoder.net';
|
|
|
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/createForOfIteratorHelper.js
|
|
|
var createForOfIteratorHelper = __webpack_require__(74704);
|
|
|
var createForOfIteratorHelper_default = /*#__PURE__*/__webpack_require__.n(createForOfIteratorHelper);
|
|
|
// EXTERNAL MODULE: ./node_modules/js-base64/base64.js
|
|
|
var base64 = __webpack_require__(19575);
|
|
|
// EXTERNAL MODULE: ./node_modules/xterm/lib/xterm.js
|
|
|
var xterm = __webpack_require__(12320);
|
|
|
// EXTERNAL MODULE: ./node_modules/xterm/css/xterm.css
|
|
|
var css_xterm = __webpack_require__(89629);
|
|
|
;// CONCATENATED MODULE: ./src/pages/Innovation/Tasks/xterm-panel/index.less?modules
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
/* harmony default export */ var xterm_panelmodules = ({"xterm-panel-wrp":"xterm-panel-wrp___hg9up","xterm-panel":"xterm-panel___QKpsc"});
|
|
|
// EXTERNAL MODULE: ./node_modules/resize-observer-polyfill/dist/ResizeObserver.es.js
|
|
|
var ResizeObserver_es = __webpack_require__(91033);
|
|
|
;// CONCATENATED MODULE: ./src/pages/Innovation/Tasks/xterm-panel/index.jsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function getColsAndRows(width, height, term) {
|
|
|
var w = term._core._renderService.dimensions.actualCellWidth || 9.5;
|
|
|
var h = term._core._renderService.dimensions.actualCellHeight || 18;
|
|
|
var rows = Math.floor(height / h);
|
|
|
var cols = Math.floor(width / w);
|
|
|
return [cols, rows];
|
|
|
}
|
|
|
function onLayout(term, el) {
|
|
|
var ro = new ResizeObserver_es/* default */.Z(function (entries) {
|
|
|
console.log('entries:', entries);
|
|
|
var _iterator = createForOfIteratorHelper_default()(entries),
|
|
|
_step;
|
|
|
try {
|
|
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
|
var entry = _step.value;
|
|
|
if (entry.target.offsetHeight > 0 || entry.target.offsetWidth > 0) {
|
|
|
var _getColsAndRows = getColsAndRows(entry.target.offsetWidth, entry.target.offsetHeight, term),
|
|
|
_getColsAndRows2 = slicedToArray_default()(_getColsAndRows, 2),
|
|
|
cols = _getColsAndRows2[0],
|
|
|
rows = _getColsAndRows2[1];
|
|
|
console.log('cols, rows', cols, rows);
|
|
|
mediator/* default.publish */.Z.publish('ssh-xterm-resize', {
|
|
|
columns: cols,
|
|
|
rows: rows,
|
|
|
width: entry.target.offsetWidth,
|
|
|
height: entry.target.offsetHeight
|
|
|
});
|
|
|
term.resize(cols, rows);
|
|
|
var data1 = base64.Base64.decode('IA==');
|
|
|
var data = base64.Base64.decode('CBtbSw==');
|
|
|
term.write(data1);
|
|
|
term.write(data);
|
|
|
}
|
|
|
}
|
|
|
} catch (err) {
|
|
|
_iterator.e(err);
|
|
|
} finally {
|
|
|
_iterator.f();
|
|
|
}
|
|
|
});
|
|
|
ro.observe(el);
|
|
|
return ro;
|
|
|
}
|
|
|
var TimeTicket = 30000;
|
|
|
|
|
|
//建立 websockt 来交互
|
|
|
//根据容器大小计算行数和列数并做到自适应
|
|
|
//socket 与 term 需要分开初始化 因为socket 可能重置连接
|
|
|
//mediator 监听消息,如果和id匹配,则建立连接,重置,或关闭连接
|
|
|
|
|
|
/* harmony default export */ var xterm_panel = (function (_ref) {
|
|
|
var sshConfigData = _ref.sshConfigData,
|
|
|
sid = _ref.sid;
|
|
|
var _useState = (0,react.useState)(null),
|
|
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
|
term = _useState2[0],
|
|
|
setTerm = _useState2[1];
|
|
|
var ws_url = sshConfigData.ws_url,
|
|
|
password = sshConfigData.password,
|
|
|
port = sshConfigData.port;
|
|
|
var el = (0,react.useRef)();
|
|
|
var socket = (0,react.useRef)();
|
|
|
var isFirstConnected = (0,react.useRef)(false);
|
|
|
|
|
|
//term init
|
|
|
(0,react.useEffect)(function () {
|
|
|
if (el.current && ws_url) {
|
|
|
var _term = new xterm.Terminal({
|
|
|
fontSize: 16,
|
|
|
rendererType: 'dom'
|
|
|
});
|
|
|
console.log('el.current:', el.current);
|
|
|
_term.open(el.current);
|
|
|
_term.onData(function (data) {
|
|
|
console.log('data:', data);
|
|
|
if (socket.current) {
|
|
|
if (socket.current.readyState === 1) {
|
|
|
socket.current.send(JSON.stringify({
|
|
|
tp: 'client',
|
|
|
data: data
|
|
|
}));
|
|
|
mediator/* default.publish */.Z.publish('on-operating-ssh'); //有操作则自动延时
|
|
|
} else {
|
|
|
//断开连接后重连
|
|
|
// socket.current = null
|
|
|
// mediator.publish('create-socket', sid)
|
|
|
}
|
|
|
}
|
|
|
});
|
|
|
_term.write('Connecting...');
|
|
|
setTerm(_term);
|
|
|
var ro = onLayout(_term, el.current);
|
|
|
return function () {
|
|
|
_term === null || _term === void 0 ? void 0 : _term.dispose();
|
|
|
ro === null || ro === void 0 ? void 0 : ro.unobserve(el.current);
|
|
|
};
|
|
|
}
|
|
|
}, [ws_url, el.current]);
|
|
|
(0,react.useEffect)(function () {
|
|
|
if (term && ws_url) {
|
|
|
var createSocket = function createSocket() {
|
|
|
var socketInstance = new WebSocket(ws_url);
|
|
|
console.log('socketInstance:', ws_url);
|
|
|
socket.current = socketInstance;
|
|
|
socketInstance.onopen = function () {
|
|
|
var container = term.element.parentElement;
|
|
|
if (container) {
|
|
|
var width = container.offsetWidth;
|
|
|
var height = container.offsetHeight;
|
|
|
console.log('init', {
|
|
|
tp: 'init',
|
|
|
data: objectSpread2_default()(objectSpread2_default()({}, sshConfigData), {}, {
|
|
|
secret: password,
|
|
|
width: width,
|
|
|
height: height,
|
|
|
rows: term.rows,
|
|
|
columns: term.cols
|
|
|
})
|
|
|
});
|
|
|
socketInstance.send(JSON.stringify({
|
|
|
tp: 'init',
|
|
|
data: objectSpread2_default()(objectSpread2_default()({}, sshConfigData), {}, {
|
|
|
secret: password,
|
|
|
width: width,
|
|
|
height: height,
|
|
|
rows: term.rows,
|
|
|
columns: term.cols
|
|
|
})
|
|
|
}));
|
|
|
}
|
|
|
term.focus();
|
|
|
};
|
|
|
socketInstance.onerror = function (error) {
|
|
|
console.log('------in socket error----', error, socketInstance, ws_url);
|
|
|
//连接报错后,重新请求资源
|
|
|
// mediator.publish('on-recreate-socket')
|
|
|
};
|
|
|
|
|
|
socketInstance.onmessage = function (event) {
|
|
|
if (!isFirstConnected.current) {
|
|
|
term.write('\r');
|
|
|
// term.focus()
|
|
|
setTimeout(function () {
|
|
|
// term.clear();
|
|
|
}, 1000);
|
|
|
}
|
|
|
isFirstConnected.current = true;
|
|
|
console.log('event:', event);
|
|
|
var data = base64.Base64.decode(event.data.toString());
|
|
|
var w = term._core._renderService.dimensions.actualCellWidth || 9.5;
|
|
|
console.log('data:', data, w, term);
|
|
|
term.write(data);
|
|
|
};
|
|
|
socketInstance.onclose = function (evt) {
|
|
|
if (tid) {
|
|
|
clearInterval(tid);
|
|
|
}
|
|
|
term.write('\r\nconnection closed');
|
|
|
};
|
|
|
};
|
|
|
var tid = setInterval(function () {
|
|
|
if (socket.current) {
|
|
|
socket.current.send(JSON.stringify({
|
|
|
tp: 'h'
|
|
|
}));
|
|
|
}
|
|
|
}, TimeTicket);
|
|
|
var unSubCreate = mediator/* default.subscribe */.Z.subscribe('create-socket', function (id) {
|
|
|
if (sid == id) {
|
|
|
if (socket.current && socket.current.readyState === 1) {
|
|
|
term.focus();
|
|
|
} else {
|
|
|
createSocket();
|
|
|
}
|
|
|
term.focus();
|
|
|
}
|
|
|
});
|
|
|
var unSubClose = mediator/* default.subscribe */.Z.subscribe('close-socket', function (id) {
|
|
|
if (sid === id) {
|
|
|
if (socket.current) {
|
|
|
socket.current.close();
|
|
|
isFirstConnected.current = false;
|
|
|
term.clear();
|
|
|
}
|
|
|
socket.current = null;
|
|
|
}
|
|
|
});
|
|
|
var unSubResize = mediator/* default.subscribe */.Z.subscribe('ssh-xterm-resize', function (option) {
|
|
|
if (socket.current && socket.current.readyState === 1) {
|
|
|
socket.current.send(JSON.stringify({
|
|
|
tp: 'resize',
|
|
|
data: objectSpread2_default()({}, option)
|
|
|
}));
|
|
|
}
|
|
|
});
|
|
|
var unSubAddTime = mediator/* default.subscribe */.Z.subscribe('ssh-add-connect-time', function () {
|
|
|
if (socket.current && socket.current.readyState === 1) {
|
|
|
socket.current.send(JSON.stringify({
|
|
|
tp: 'overtime'
|
|
|
}));
|
|
|
}
|
|
|
});
|
|
|
return function () {
|
|
|
unSubClose();
|
|
|
unSubCreate();
|
|
|
unSubResize();
|
|
|
unSubAddTime();
|
|
|
if (socket.current) {
|
|
|
socket.current.close();
|
|
|
isFirstConnected.current = false;
|
|
|
}
|
|
|
};
|
|
|
}
|
|
|
}, [term, ws_url, port]);
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: xterm_panelmodules["xterm-panel-wrp"],
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
ref: el,
|
|
|
className: xterm_panelmodules["xterm-panel"],
|
|
|
children: !ws_url ? /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
|
|
|
style: {
|
|
|
color: '#fff'
|
|
|
},
|
|
|
children: "\u6B63\u5728\u8FDE\u63A5\u547D\u4EE4\u884C\u670D\u52A1..."
|
|
|
}) : null
|
|
|
})
|
|
|
});
|
|
|
});
|
|
|
;// CONCATENATED MODULE: ./src/pages/Innovation/Tasks/vnc-view/index.less
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
|
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/progress/index.js + 11 modules
|
|
|
var progress = __webpack_require__(69814);
|
|
|
// EXTERNAL MODULE: ./node_modules/@novnc/novnc/lib/rfb.js
|
|
|
var lib_rfb = __webpack_require__(2176);
|
|
|
;// CONCATENATED MODULE: ./src/pages/Innovation/Tasks/vnc-view/clipboard-box/index.less
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
|
|
|
;// CONCATENATED MODULE: ./src/pages/Innovation/Tasks/vnc-view/clipboard-box/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var TextArea = input/* default.TextArea */.Z.TextArea;
|
|
|
/* harmony default export */ var clipboard_box = (function (_ref) {
|
|
|
var onCancel = _ref.onCancel,
|
|
|
onSave = _ref.onSave,
|
|
|
content = _ref.content;
|
|
|
var _useState = (0,react.useState)(content),
|
|
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
|
value = _useState2[0],
|
|
|
setValue = _useState2[1];
|
|
|
function onChangeValue(e) {
|
|
|
setValue(e.target.value);
|
|
|
}
|
|
|
function onSaveContent() {
|
|
|
onSave(value);
|
|
|
}
|
|
|
(0,react.useEffect)(function () {
|
|
|
setValue(content);
|
|
|
}, [content]);
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: "clipboard-box",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("h3", {
|
|
|
children: "\u5B9E\u9A8C\u73AF\u5883\u526A\u5207\u677F\uFF1A"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(TextArea, {
|
|
|
value: value,
|
|
|
onChange: onChangeValue,
|
|
|
className: "clipboard"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
|
|
|
children: [" ", /*#__PURE__*/(0,jsx_runtime.jsx)("b", {
|
|
|
children: " 1.\u4ECE\u5916\u90E8\u590D\u5236\u5185\u5BB9\u5230\u5B9E\u9A8C\u73AF\u5883\u5185\uFF1A "
|
|
|
}), " \u7C98\u8D34\u5185\u5BB9\u5230\u4E0A\u9762\u6587\u672C\u6846\uFF0C\u70B9\u51FB\u4FDD\u5B58\uFF0C\u7136\u540E\u5728\u5B9E\u9A8C\u73AF\u5883\u4E2D\u8FDB\u884C\u7C98\u8D34\u3002 "]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
|
|
|
children: [" ", /*#__PURE__*/(0,jsx_runtime.jsx)("b", {
|
|
|
children: " 2.\u83B7\u53D6\u5B9E\u9A8C\u73AF\u5883\u4E2D\u7684\u5185\u5BB9\uFF1A "
|
|
|
}), " \u8BF7\u5148\u5728\u73AF\u5883\u4E2D\u590D\u5236\u5185\u5BB9\uFF0C\u590D\u5236\u52A8\u4F5C\u5B8C\u6210\u540E\u5185\u5BB9\u4F1A\u663E\u793A\u5728\u4E0A\u9762\u6587\u672C\u6846\uFF0C\u7136\u540E\u5728\u4E0A\u9762\u6587\u672C\u6846\u4E2D\u518D\u6B21\u590D\u5236\u3002 "]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: "btn-action-container",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
|
type: "ghost",
|
|
|
onClick: onCancel,
|
|
|
style: {
|
|
|
marginRight: 10
|
|
|
},
|
|
|
children: "\u53D6\u6D88"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
|
type: "primary",
|
|
|
onClick: onSaveContent,
|
|
|
children: "\u4FDD\u5B58"
|
|
|
})]
|
|
|
})]
|
|
|
});
|
|
|
});
|
|
|
// EXTERNAL MODULE: ./node_modules/@ant-design/icons/es/icons/LoadingOutlined.js + 1 modules
|
|
|
var LoadingOutlined = __webpack_require__(50888);
|
|
|
;// CONCATENATED MODULE: ./src/pages/Innovation/Tasks/vnc-view/vnc-panel/index.less?modules
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
/* harmony default export */ var vnc_panelmodules = ({"selectImage":"selectImage___t63KU","container":"container___WChhl"});
|
|
|
// EXTERNAL MODULE: ./node_modules/@umijs/plugins/node_modules/dayjs/dayjs.min.js
|
|
|
var dayjs_min = __webpack_require__(94699);
|
|
|
var dayjs_min_default = /*#__PURE__*/__webpack_require__.n(dayjs_min);
|
|
|
;// CONCATENATED MODULE: ./src/pages/Innovation/Tasks/vnc-view/vnc-panel/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var antIcon = /*#__PURE__*/(0,jsx_runtime.jsx)(LoadingOutlined/* default */.Z, {
|
|
|
style: {
|
|
|
fontSize: 24
|
|
|
},
|
|
|
spin: true
|
|
|
});
|
|
|
function unicodeUnEscape(str) {
|
|
|
return str.replace(/\\u([\dA-Za-z]{4})/g, function (_, m1) {
|
|
|
return String.fromCharCode(parseInt("0x" + m1));
|
|
|
});
|
|
|
}
|
|
|
function getJsonFromUrl(url) {
|
|
|
if (!url) url = window.location.search;
|
|
|
var query = url.substr(1);
|
|
|
var result = {};
|
|
|
query.split('&').forEach(function (part) {
|
|
|
var item = part.split('=');
|
|
|
result[item[0]] = decodeURIComponent(item[1]);
|
|
|
});
|
|
|
return result;
|
|
|
}
|
|
|
var initialState = {
|
|
|
loading: true,
|
|
|
isLarge: false,
|
|
|
showClipBoardBox: false,
|
|
|
transferContent: '',
|
|
|
mes: '实验环境准备中'
|
|
|
};
|
|
|
var Types = /*#__PURE__*/function (Types) {
|
|
|
Types[Types["SET_LOADING"] = 0] = "SET_LOADING";
|
|
|
Types[Types["SET_IS_LARGE"] = 1] = "SET_IS_LARGE";
|
|
|
Types[Types["SET_MES"] = 2] = "SET_MES";
|
|
|
Types[Types["SET_STATE"] = 3] = "SET_STATE";
|
|
|
Types[Types["SHOW_CLIPBOARD_BOX"] = 4] = "SHOW_CLIPBOARD_BOX";
|
|
|
Types[Types["SET_TRANSFER_CONTENT"] = 5] = "SET_TRANSFER_CONTENT";
|
|
|
Types[Types["UPDATE_ALL"] = 6] = "UPDATE_ALL";
|
|
|
return Types;
|
|
|
}(Types || {});
|
|
|
function reducer(state, action) {
|
|
|
switch (action.type) {
|
|
|
case Types.SET_LOADING:
|
|
|
return objectSpread2_default()(objectSpread2_default()({}, state), {}, {
|
|
|
loading: action.payload
|
|
|
});
|
|
|
case Types.SET_IS_LARGE:
|
|
|
return objectSpread2_default()({}, objectSpread2_default()(objectSpread2_default()({}, state), {}, {
|
|
|
isLarge: action.payload
|
|
|
}));
|
|
|
case Types.SET_MES:
|
|
|
return objectSpread2_default()(objectSpread2_default()({}, state), {}, {
|
|
|
mes: action.payload
|
|
|
});
|
|
|
case Types.SET_STATE:
|
|
|
return objectSpread2_default()(objectSpread2_default()({}, state), action.payload);
|
|
|
case Types.SET_TRANSFER_CONTENT:
|
|
|
return objectSpread2_default()(objectSpread2_default()({}, state), {}, {
|
|
|
transferContent: action.payload
|
|
|
});
|
|
|
case Types.SHOW_CLIPBOARD_BOX:
|
|
|
return objectSpread2_default()(objectSpread2_default()({}, state), {}, {
|
|
|
showClipBoardBox: action.payload
|
|
|
});
|
|
|
case Types.UPDATE_ALL:
|
|
|
return objectSpread2_default()({
|
|
|
loading: state.loading
|
|
|
}, action.payload);
|
|
|
default:
|
|
|
throw new Error();
|
|
|
}
|
|
|
}
|
|
|
/* harmony default export */ var vnc_panel = (function (_ref) {
|
|
|
var _taskData$shixun_virt5;
|
|
|
var vnc_url = _ref.vnc_url,
|
|
|
window_vnc_url = _ref.window_vnc_url,
|
|
|
linux_vnc = _ref.linux_vnc,
|
|
|
virtual_machine = _ref.virtual_machine,
|
|
|
taskId = _ref.taskId,
|
|
|
taskData = _ref.taskData;
|
|
|
var el = (0,react.useRef)();
|
|
|
var guacaRef = (0,react.useRef)();
|
|
|
var rfbRef = (0,react.useRef)();
|
|
|
var iframeRef = (0,react.useRef)();
|
|
|
var _useState = (0,react.useState)(),
|
|
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
|
imageId = _useState2[0],
|
|
|
setImageId = _useState2[1];
|
|
|
var _useState3 = (0,react.useState)(false),
|
|
|
_useState4 = slicedToArray_default()(_useState3, 2),
|
|
|
showImage = _useState4[0],
|
|
|
setShowImage = _useState4[1];
|
|
|
var _useReducer = (0,react.useReducer)(reducer, initialState),
|
|
|
_useReducer2 = slicedToArray_default()(_useReducer, 2),
|
|
|
state = _useReducer2[0],
|
|
|
dispatch = _useReducer2[1];
|
|
|
var _useState5 = (0,react.useState)(0),
|
|
|
_useState6 = slicedToArray_default()(_useState5, 2),
|
|
|
linkNum = _useState6[0],
|
|
|
setLinkNum = _useState6[1];
|
|
|
var mes = state.mes,
|
|
|
loading = state.loading,
|
|
|
showClipBoardBox = state.showClipBoardBox,
|
|
|
isLarge = state.isLarge,
|
|
|
transferContent = state.transferContent;
|
|
|
var _useState7 = (0,react.useState)(0),
|
|
|
_useState8 = slicedToArray_default()(_useState7, 2),
|
|
|
percent = _useState8[0],
|
|
|
setPercent = _useState8[1];
|
|
|
var timeout = (0,react.useRef)();
|
|
|
var params = (0,_umi_production_exports.useParams)();
|
|
|
var paramsd = params;
|
|
|
(0,react.useEffect)(function () {
|
|
|
window.addEventListener("visibilitychange", handleFocus);
|
|
|
return function () {
|
|
|
var _guacaRef$current, _guacaRef$current$dis;
|
|
|
(_guacaRef$current = guacaRef.current) === null || _guacaRef$current === void 0 ? void 0 : (_guacaRef$current$dis = _guacaRef$current.disconnect) === null || _guacaRef$current$dis === void 0 ? void 0 : _guacaRef$current$dis.call(_guacaRef$current);
|
|
|
window.removeEventListener("visibilitychange", handleFocus);
|
|
|
};
|
|
|
}, []);
|
|
|
(0,react.useEffect)(function () {
|
|
|
window.sessionStorage.imageId = imageId;
|
|
|
return function () {
|
|
|
window.sessionStorage.removeItem("imageId");
|
|
|
};
|
|
|
}, [imageId]);
|
|
|
var fullChange = function fullChange() {
|
|
|
var _taskData$shixun, _rfbRef$current;
|
|
|
// setIsFull(IsFull())
|
|
|
if ((taskData === null || taskData === void 0 ? void 0 : (_taskData$shixun = taskData.shixun) === null || _taskData$shixun === void 0 ? void 0 : _taskData$shixun.windows_connection_mode) === "rdp") {
|
|
|
setTimeout(function () {
|
|
|
doResize();
|
|
|
}, 1500);
|
|
|
} else if ((rfbRef === null || rfbRef === void 0 ? void 0 : (_rfbRef$current = rfbRef.current) === null || _rfbRef$current === void 0 ? void 0 : _rfbRef$current.resizeSession) !== undefined) {
|
|
|
if ((0,fullscreen/* IsFull */.vp)()) {
|
|
|
rfbRef.current.resizeSession = true;
|
|
|
} else {
|
|
|
setTimeout(function () {
|
|
|
rfbRef.current.resizeSession = false;
|
|
|
}, 900);
|
|
|
}
|
|
|
}
|
|
|
};
|
|
|
(0,react.useEffect)(function () {
|
|
|
window.addEventListener("visibilitychange", handleFocus);
|
|
|
document.addEventListener((0,fullscreen/* fullscreenChange */.gH)(), fullChange);
|
|
|
return function () {
|
|
|
document.removeEventListener((0,fullscreen/* fullscreenChange */.gH)(), fullChange);
|
|
|
window.removeEventListener("visibilitychange", handleFocus);
|
|
|
};
|
|
|
}, []);
|
|
|
var handleFocus = function handleFocus(e) {
|
|
|
if (document.visibilityState === 'visible') {
|
|
|
var time = sessionStorage.vncPageLeaveTime;
|
|
|
if (dayjs_min_default()(new Date()).diff(dayjs_min_default()(time), "minutes") > 2) setLinkNum(new Date().getTime());
|
|
|
sessionStorage.removeItem("vncPageLeaveTime");
|
|
|
} else {
|
|
|
sessionStorage.vncPageLeaveTime = new Date();
|
|
|
}
|
|
|
};
|
|
|
function onCancelClipboardBox() {
|
|
|
dispatch({
|
|
|
type: Types.SHOW_CLIPBOARD_BOX,
|
|
|
payload: false
|
|
|
});
|
|
|
}
|
|
|
function onResizeSet() {
|
|
|
dispatch({
|
|
|
type: Types.SET_IS_LARGE,
|
|
|
payload: !isLarge
|
|
|
});
|
|
|
}
|
|
|
function onLayout(rfb) {
|
|
|
var ro;
|
|
|
if (el.current) {
|
|
|
ro = new ResizeObserver_es/* default */.Z(function (entries) {
|
|
|
var _iterator = createForOfIteratorHelper_default()(entries),
|
|
|
_step;
|
|
|
try {
|
|
|
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
|
var _taskData$shixun2;
|
|
|
var entry = _step.value;
|
|
|
if ((taskData === null || taskData === void 0 ? void 0 : (_taskData$shixun2 = taskData.shixun) === null || _taskData$shixun2 === void 0 ? void 0 : _taskData$shixun2.windows_connection_mode) === "rdp") {
|
|
|
doResize();
|
|
|
}
|
|
|
if (entry.target.offsetHeight > 0 || entry.target.offsetWidth > 0) {
|
|
|
var _rfb$_eventHandlers;
|
|
|
rfb === null || rfb === void 0 ? void 0 : (_rfb$_eventHandlers = rfb._eventHandlers) === null || _rfb$_eventHandlers === void 0 ? void 0 : _rfb$_eventHandlers.windowResize();
|
|
|
}
|
|
|
}
|
|
|
} catch (err) {
|
|
|
_iterator.e(err);
|
|
|
} finally {
|
|
|
_iterator.f();
|
|
|
}
|
|
|
});
|
|
|
ro.observe(el.current);
|
|
|
}
|
|
|
return ro;
|
|
|
}
|
|
|
var getWindowVnc = /*#__PURE__*/function () {
|
|
|
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee3() {
|
|
|
var _getJsonFromUrl, _getJsonFromUrl2;
|
|
|
var urlParams, res, _res$data;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee3$(_context3) {
|
|
|
while (1) switch (_context3.prev = _context3.next) {
|
|
|
case 0:
|
|
|
urlParams = (_getJsonFromUrl = getJsonFromUrl()) !== null && _getJsonFromUrl !== void 0 && _getJsonFromUrl.homework_common_id ? {
|
|
|
homework_common_id: (_getJsonFromUrl2 = getJsonFromUrl()) === null || _getJsonFromUrl2 === void 0 ? void 0 : _getJsonFromUrl2.homework_common_id
|
|
|
} : {};
|
|
|
_context3.next = 3;
|
|
|
return (0,fetch/* default */.ZP)("/api/tasks/".concat(params.taskId || taskId, "/get_vnc_link.json"), {
|
|
|
method: "post",
|
|
|
body: objectSpread2_default()(objectSpread2_default()(objectSpread2_default()({}, params), urlParams), {}, {
|
|
|
template_id: imageId
|
|
|
})
|
|
|
});
|
|
|
case 3:
|
|
|
res = _context3.sent;
|
|
|
if (!((res === null || res === void 0 ? void 0 : res.status) === -3)) {
|
|
|
_context3.next = 6;
|
|
|
break;
|
|
|
}
|
|
|
return _context3.abrupt("return", new Promise( /*#__PURE__*/function () {
|
|
|
var _ref3 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2(resolve, reject) {
|
|
|
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
|
|
|
while (1) switch (_context2.prev = _context2.next) {
|
|
|
case 0:
|
|
|
es_modal/* default.confirm */.Z.confirm({
|
|
|
content: "检测到您已经开启了其他实验环境,请先关闭环境后,再连接",
|
|
|
okText: "立即关闭",
|
|
|
cancelText: "稍后关闭",
|
|
|
onOk: function () {
|
|
|
var _onOk = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
|
|
|
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
|
|
|
while (1) switch (_context.prev = _context.next) {
|
|
|
case 0:
|
|
|
clearTimeout(timeout.current);
|
|
|
setPercent(0);
|
|
|
_context.next = 4;
|
|
|
return closeWindowsVnc(params.taskId, res === null || res === void 0 ? void 0 : res.message);
|
|
|
case 4:
|
|
|
// resolve(await getWindowVnc());
|
|
|
setLinkNum(linkNum + 1);
|
|
|
return _context.abrupt("return");
|
|
|
case 6:
|
|
|
case "end":
|
|
|
return _context.stop();
|
|
|
}
|
|
|
}, _callee);
|
|
|
}));
|
|
|
function onOk() {
|
|
|
return _onOk.apply(this, arguments);
|
|
|
}
|
|
|
return onOk;
|
|
|
}()
|
|
|
});
|
|
|
case 1:
|
|
|
case "end":
|
|
|
return _context2.stop();
|
|
|
}
|
|
|
}, _callee2);
|
|
|
}));
|
|
|
return function (_x, _x2) {
|
|
|
return _ref3.apply(this, arguments);
|
|
|
};
|
|
|
}()));
|
|
|
case 6:
|
|
|
if (!((res === null || res === void 0 ? void 0 : res.status) === -1)) {
|
|
|
_context3.next = 8;
|
|
|
break;
|
|
|
}
|
|
|
throw new String(res === null || res === void 0 ? void 0 : res.message);
|
|
|
case 8:
|
|
|
if (virtual_machine) {
|
|
|
(0,util/* setCookie */.d8)("PVEAuthCookie", res === null || res === void 0 ? void 0 : (_res$data = res.data) === null || _res$data === void 0 ? void 0 : _res$data.cookies_value, 1);
|
|
|
(0,util/* setCookie */.d8)("PVELangCookie", "zh_CN", 1);
|
|
|
}
|
|
|
mediator/* default.publish */.Z.publish('update-windows-time', res === null || res === void 0 ? void 0 : res.data);
|
|
|
return _context3.abrupt("return", res);
|
|
|
case 11:
|
|
|
case "end":
|
|
|
return _context3.stop();
|
|
|
}
|
|
|
}, _callee3);
|
|
|
}));
|
|
|
return function getWindowVnc() {
|
|
|
return _ref2.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
(0,react.useEffect)(function () {
|
|
|
var rfb;
|
|
|
var ro;
|
|
|
function onDisconnect(e) {
|
|
|
if (window_vnc_url) {
|
|
|
message/* default.warning */.ZP.warning('由于长时间未操作,连接失效,正在重新连接Windows VNC服务');
|
|
|
dispatch({
|
|
|
type: Types.SET_LOADING,
|
|
|
payload: true
|
|
|
});
|
|
|
setLinkNum(linkNum + 1);
|
|
|
}
|
|
|
}
|
|
|
mediator/* default.subscribe */.Z.subscribe('reset-linux-windows-loading', function () {
|
|
|
dispatch({
|
|
|
type: Types.SET_LOADING,
|
|
|
payload: true
|
|
|
});
|
|
|
});
|
|
|
mediator/* default.subscribe */.Z.subscribe('reset-linux-windos-vnc', function () {
|
|
|
setLinkNum(linkNum + 1);
|
|
|
});
|
|
|
function onConnect() {
|
|
|
setPercent(100);
|
|
|
clearTimeout(timeout.current);
|
|
|
setTimeout(function () {
|
|
|
var _rfb, _rfb$_eventHandlers2;
|
|
|
(_rfb = rfb) === null || _rfb === void 0 ? void 0 : (_rfb$_eventHandlers2 = _rfb._eventHandlers) === null || _rfb$_eventHandlers2 === void 0 ? void 0 : _rfb$_eventHandlers2.windowResize();
|
|
|
// doResize()
|
|
|
// rfbRef.current.resizeSession = false;
|
|
|
dispatch({
|
|
|
type: Types.SET_LOADING,
|
|
|
payload: false
|
|
|
});
|
|
|
}, 1300);
|
|
|
mediator/* default.subscribe */.Z.subscribe('send-ctrl-alt-delete', function () {
|
|
|
var _rfb2;
|
|
|
(_rfb2 = rfb) === null || _rfb2 === void 0 ? void 0 : _rfb2.sendCtrlAltDel();
|
|
|
});
|
|
|
}
|
|
|
function onClipboardReceive(e) {
|
|
|
var rs = unicodeUnEscape(e.detail.text);
|
|
|
dispatch({
|
|
|
type: Types.SET_TRANSFER_CONTENT,
|
|
|
payload: rs
|
|
|
});
|
|
|
}
|
|
|
if ((window_vnc_url || vnc_url || linux_vnc || virtual_machine && imageId) && el.current) {
|
|
|
var _taskData$shixun3;
|
|
|
clearTimeout(timeout.current);
|
|
|
if ((taskData === null || taskData === void 0 ? void 0 : (_taskData$shixun3 = taskData.shixun) === null || _taskData$shixun3 === void 0 ? void 0 : _taskData$shixun3.windows_connection_mode) === "rdp") {
|
|
|
doResize();
|
|
|
}
|
|
|
new Promise( /*#__PURE__*/asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee4() {
|
|
|
var params, socketUrl, password, urlParser, protocol, searchParams, host;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee4$(_context4) {
|
|
|
while (1) switch (_context4.prev = _context4.next) {
|
|
|
case 0:
|
|
|
params = getJsonFromUrl();
|
|
|
socketUrl = '';
|
|
|
// let res = await getWindowVnc()
|
|
|
// if (linux_vnc || virtual_machine) {
|
|
|
// iframeRef.current.src = res?.data?.vnc_url + '&time=' + Date.now();
|
|
|
// dispatch({
|
|
|
// type: Types.SET_STATE,
|
|
|
// payload: {
|
|
|
// loading: false,
|
|
|
// mes: '实验环境重置中'
|
|
|
// }
|
|
|
// })
|
|
|
// return;
|
|
|
// } else if (window_vnc_url) {
|
|
|
// password = 'Edu123';
|
|
|
// socketUrl = decodeURIComponent(res?.data?.vnc_url)
|
|
|
// } else {
|
|
|
urlParser = new URL(decodeURIComponent(taskData === null || taskData === void 0 ? void 0 : taskData.vnc_url)); //no IE11 support
|
|
|
protocol = urlParser.protocol, searchParams = urlParser.searchParams, host = urlParser.host;
|
|
|
password = searchParams.get('password');
|
|
|
socketUrl = "".concat(protocol === 'https:' ? 'wss' : 'ws', "://").concat(host, "/").concat(params.path || 'websockify');
|
|
|
// }
|
|
|
|
|
|
// if (taskData?.shixun?.windows_connection_mode === "rdp") {
|
|
|
// onLayout()
|
|
|
// iframeRef.current.style.cssText = iframeRef.current.style.cssText + "width:1920px;height:1080px;position:initial"
|
|
|
// iframeRef.current.src = `/rdp.html?tpiId=${taskData?.myshixun?.id}`
|
|
|
|
|
|
// // guacaRef.current = new Guacamole.Client(new Guacamole.WebSocketTunnel(`wss://pre-webssh.educoder.net/tunnel?tpiID=${taskData?.myshixun?.id}&width=500&height=400&`));
|
|
|
// // // guacaRef.current = new Guacamole.Client(new Guacamole.WebSocketTunnel(`wss://pre-webssh.educoder.net/tunnel?tpiID=4232620&width=1920&height=1080&`));
|
|
|
// // guacaRef.current.onerror = function (error:any) {
|
|
|
// // console.log("onerror",error);
|
|
|
// // };
|
|
|
// // el.current.appendChild(guacaRef.current.getDisplay().getElement());
|
|
|
// // guacaRef.current.connect();
|
|
|
// dispatch({
|
|
|
// type: Types.SET_LOADING,
|
|
|
// payload: false
|
|
|
// })
|
|
|
// return;
|
|
|
// }
|
|
|
|
|
|
rfb = new lib_rfb/* default */.Z(el.current, socketUrl, {
|
|
|
credentials: {
|
|
|
password: password
|
|
|
},
|
|
|
wsProtocols: ['binary'],
|
|
|
resize: "scale",
|
|
|
show_dot: true
|
|
|
});
|
|
|
ro = onLayout(rfb);
|
|
|
rfb.viewOnly = params.view_only || false;
|
|
|
if (window_vnc_url) {
|
|
|
rfb.scaleViewport = true;
|
|
|
} else {
|
|
|
rfb.scaleViewport = params.scale || false;
|
|
|
}
|
|
|
rfb.scaleViewport = true;
|
|
|
rfb.showDotCursor = true;
|
|
|
rfb.resizeSession = true;
|
|
|
rfbRef.current = rfb;
|
|
|
rfb.addEventListener('disconnect', onDisconnect);
|
|
|
rfb.addEventListener('connect', onConnect);
|
|
|
rfb.addEventListener('clipboard', onClipboardReceive);
|
|
|
case 17:
|
|
|
case "end":
|
|
|
return _context4.stop();
|
|
|
}
|
|
|
}, _callee4);
|
|
|
})));
|
|
|
var unsub = mediator/* default.subscribe */.Z.subscribe('vnc-reseting', function () {
|
|
|
setPercent(0);
|
|
|
dispatch({
|
|
|
type: Types.SET_STATE,
|
|
|
payload: {
|
|
|
loading: true,
|
|
|
mes: '实验环境重置中'
|
|
|
}
|
|
|
});
|
|
|
});
|
|
|
var unSub2 = mediator/* default.subscribe */.Z.subscribe('vnc-enlarge', function (data) {
|
|
|
// if (data) {
|
|
|
// state.isLarge = !state.isLarge;
|
|
|
// }else{
|
|
|
// state.isLarge = true;
|
|
|
// }
|
|
|
// dispatch({
|
|
|
// type: Types.SET_IS_LARGE,
|
|
|
// payload:state.isLarge
|
|
|
// })
|
|
|
});
|
|
|
var unSub3 = mediator/* default.subscribe */.Z.subscribe('show-clipboard-box', function () {
|
|
|
dispatch({
|
|
|
type: Types.SHOW_CLIPBOARD_BOX,
|
|
|
payload: true
|
|
|
});
|
|
|
});
|
|
|
setPercent(0);
|
|
|
return function () {
|
|
|
var _rfb3, _rfb4, _rfb5, _ro;
|
|
|
(_rfb3 = rfb) === null || _rfb3 === void 0 ? void 0 : _rfb3.removeEventListener('disconnect', onDisconnect);
|
|
|
(_rfb4 = rfb) === null || _rfb4 === void 0 ? void 0 : _rfb4.removeEventListener('connect', onConnect);
|
|
|
(_rfb5 = rfb) === null || _rfb5 === void 0 ? void 0 : _rfb5.removeEventListener('clipboard', onClipboardReceive);
|
|
|
unsub();
|
|
|
unSub2();
|
|
|
unSub3();
|
|
|
(_ro = ro) === null || _ro === void 0 ? void 0 : _ro.unobserve(el.current);
|
|
|
};
|
|
|
}
|
|
|
}, [vnc_url, window_vnc_url, linux_vnc, linkNum, imageId]);
|
|
|
(0,react.useEffect)(function () {
|
|
|
var _taskData$shixun_virt, _taskData$shixun_virt4;
|
|
|
if (virtual_machine && (taskData === null || taskData === void 0 ? void 0 : (_taskData$shixun_virt = taskData.shixun_virtual_templates) === null || _taskData$shixun_virt === void 0 ? void 0 : _taskData$shixun_virt.length) === 1) {
|
|
|
var _taskData$shixun_virt2, _taskData$shixun_virt3;
|
|
|
setImageId(taskData === null || taskData === void 0 ? void 0 : (_taskData$shixun_virt2 = taskData.shixun_virtual_templates) === null || _taskData$shixun_virt2 === void 0 ? void 0 : (_taskData$shixun_virt3 = _taskData$shixun_virt2[0]) === null || _taskData$shixun_virt3 === void 0 ? void 0 : _taskData$shixun_virt3.template_id);
|
|
|
} else if (virtual_machine && (taskData === null || taskData === void 0 ? void 0 : (_taskData$shixun_virt4 = taskData.shixun_virtual_templates) === null || _taskData$shixun_virt4 === void 0 ? void 0 : _taskData$shixun_virt4.length) > 1) {
|
|
|
setShowImage(true);
|
|
|
}
|
|
|
}, [virtual_machine]);
|
|
|
function clipboardSend(content) {
|
|
|
var _rfbRef$current2;
|
|
|
(_rfbRef$current2 = rfbRef.current) === null || _rfbRef$current2 === void 0 ? void 0 : _rfbRef$current2.clipboardPasteFrom(content);
|
|
|
dispatch({
|
|
|
type: Types.SET_TRANSFER_CONTENT,
|
|
|
payload: content
|
|
|
});
|
|
|
message/* default.success */.ZP.success('保存成功!你可以在实验环境中粘贴该内容');
|
|
|
onCancelClipboardBox();
|
|
|
}
|
|
|
function doResize() {
|
|
|
// function doResize(event, ui) {
|
|
|
var scale, origin;
|
|
|
scale = Math.min(document.getElementById("task-right-panel").clientWidth / 1920, document.getElementById("task-right-panel").clientHeight / 1260);
|
|
|
iframeRef.current.parentElement.className = "wh1080p";
|
|
|
iframeRef.current.parentElement.style.cssText = "transform:scale(".concat(scale, ");transform-origin:center center");
|
|
|
el.current.style.cssText = "translate(-50%, -50%) " + "scale(" + scale + ")";
|
|
|
}
|
|
|
(0,react.useEffect)(function () {
|
|
|
if (percent == 0) {
|
|
|
clearTimeout(timeout.current);
|
|
|
increase();
|
|
|
}
|
|
|
}, [percent]);
|
|
|
var increase = function increase() {
|
|
|
if (percent > 99) {
|
|
|
percent = 99;
|
|
|
} else {
|
|
|
percent = percent + 1;
|
|
|
timeout.current = setTimeout(function () {
|
|
|
increase();
|
|
|
}, 1500);
|
|
|
}
|
|
|
if (percent < 100) setPercent(percent);
|
|
|
};
|
|
|
var showIframe = (0,react.useMemo)(function () {
|
|
|
var _taskData$shixun4;
|
|
|
if (loading) {
|
|
|
return 'none';
|
|
|
}
|
|
|
if (linux_vnc || virtual_machine || window_vnc_url && (taskData === null || taskData === void 0 ? void 0 : (_taskData$shixun4 = taskData.shixun) === null || _taskData$shixun4 === void 0 ? void 0 : _taskData$shixun4.windows_connection_mode) === "rdp") {
|
|
|
return 'block';
|
|
|
} else {
|
|
|
return 'none';
|
|
|
}
|
|
|
}, [linux_vnc, loading, virtual_machine, window_vnc_url]);
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)(react.Fragment, {
|
|
|
children: [showImage && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: vnc_panelmodules.selectImage,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("section", {
|
|
|
className: vnc_panelmodules.container,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("h1", {
|
|
|
children: "\u9009\u62E9\u89D2\u8272"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("aside", {
|
|
|
children: taskData === null || taskData === void 0 ? void 0 : (_taskData$shixun_virt5 = taskData.shixun_virtual_templates) === null || _taskData$shixun_virt5 === void 0 ? void 0 : _taskData$shixun_virt5.map(function (item, key) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
align: "middle",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
flex: "1",
|
|
|
children: item.template_name
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
|
type: "primary",
|
|
|
onClick: function onClick() {
|
|
|
setImageId(item.template_id);
|
|
|
setShowImage(false);
|
|
|
},
|
|
|
children: "\u5F00\u59CB\u5B9E\u9A8C"
|
|
|
})
|
|
|
})]
|
|
|
}, key);
|
|
|
})
|
|
|
})]
|
|
|
})
|
|
|
}), isLarge && /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
|
|
|
className: "btn-vnc-resize",
|
|
|
onClick: onResizeSet,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
|
className: "iconfont icon-tuichuquanping"
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
style: {
|
|
|
width: "100%",
|
|
|
height: "calc(100% - 50px)",
|
|
|
overflow: "hidden",
|
|
|
position: "absolute",
|
|
|
display: showIframe === "block" ? "flex" : "none",
|
|
|
alignItems: "center",
|
|
|
justifyContent: "center",
|
|
|
zIndex: 6
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("iframe", {
|
|
|
style: {
|
|
|
position: isLarge ? "fixed" : "absolute",
|
|
|
left: 0,
|
|
|
top: isLarge ? 54 : 40,
|
|
|
width: "100%",
|
|
|
height: "calc(100% - ".concat(isLarge ? "100px" : "45px", ")")
|
|
|
},
|
|
|
frameBorder: "0",
|
|
|
ref: iframeRef,
|
|
|
allowFullScreen: true
|
|
|
})
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
style: {
|
|
|
position: isLarge ? "fixed" : "absolute",
|
|
|
left: 0,
|
|
|
top: 0,
|
|
|
zIndex: 5,
|
|
|
width: "100%",
|
|
|
height: "calc(100% - ".concat(isLarge ? "100px" : "0", ")")
|
|
|
},
|
|
|
className: "".concat(window_vnc_url ? "vnc-panel-wrapper-windows" : "vnc-panel-wrapper", " ").concat(isLarge ? 'full-screen' : ''),
|
|
|
children: [loading ? /*#__PURE__*/(0,jsx_runtime.jsx)(Spinner/* default */.Z, {
|
|
|
message: mes,
|
|
|
style: {
|
|
|
color: '#0152d9'
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: "tc",
|
|
|
style: {
|
|
|
width: 500,
|
|
|
margin: "0 auto",
|
|
|
color: "#FFF"
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(progress/* default */.Z, {
|
|
|
percent: percent,
|
|
|
format: function format(p) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
className: "c-white",
|
|
|
children: [p, "%"]
|
|
|
});
|
|
|
}
|
|
|
})
|
|
|
})
|
|
|
}) : null, /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
ref: el,
|
|
|
className: "vnc-panel ".concat(loading ? "hidden zIndexf1" : "animated fadeIn")
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(modal/* default */.Z, {
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_modal/* default */.Z, {
|
|
|
title: "\u590D\u5236\u7C98\u8D34",
|
|
|
centered: true,
|
|
|
maskClosable: false,
|
|
|
open: showClipBoardBox,
|
|
|
onCancel: onCancelClipboardBox,
|
|
|
footer: null,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(clipboard_box, {
|
|
|
onCancel: onCancelClipboardBox,
|
|
|
onSave: clipboardSend,
|
|
|
content: transferContent
|
|
|
})
|
|
|
})
|
|
|
})]
|
|
|
});
|
|
|
});
|
|
|
;// CONCATENATED MODULE: ./src/pages/Innovation/Tasks/vnc-view/index.jsx
|
|
|
|
|
|
|
|
|
|
|
|
// import FooterBar from '../footer-bar';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/* harmony default export */ var vnc_view = (function (_ref) {
|
|
|
var taskData = _ref.taskData,
|
|
|
evaluateLoading = _ref.evaluateLoading,
|
|
|
evaluateMessage = _ref.evaluateMessage,
|
|
|
language = _ref.language,
|
|
|
onEval = _ref.onEval;
|
|
|
var vnc_url = taskData.vnc_url,
|
|
|
shixun = taskData.shixun,
|
|
|
test_sets = taskData.test_sets,
|
|
|
test_sets_count = taskData.test_sets_count,
|
|
|
sets_error_count = taskData.sets_error_count,
|
|
|
last_compile_output = taskData.last_compile_output,
|
|
|
game = taskData.game,
|
|
|
allowed_unlock = taskData.allowed_unlock,
|
|
|
user = taskData.user;
|
|
|
var _useState = (0,react.useState)(false),
|
|
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
|
isLarge = _useState2[0],
|
|
|
setIsLarge = _useState2[1];
|
|
|
var _useState3 = (0,react.useState)(false),
|
|
|
_useState4 = slicedToArray_default()(_useState3, 2),
|
|
|
isPop = _useState4[0],
|
|
|
setIsPop = _useState4[1];
|
|
|
function onPop() {
|
|
|
setIsPop(!isPop);
|
|
|
}
|
|
|
console.log('vnc_url:', vnc_url);
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)(react.Fragment, {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(vnc_panel, {
|
|
|
vnc_url: vnc_url,
|
|
|
window_vnc_url: taskData.windows_vnc,
|
|
|
virtual_machine: taskData === null || taskData === void 0 ? void 0 : taskData.virtual_machine,
|
|
|
linux_vnc: taskData.linux_vnc,
|
|
|
taskData: taskData
|
|
|
}), isPop ? /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: "vnc-mask"
|
|
|
}) : null, /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: "vnc-test-list ".concat(isLarge ? 'large' : isPop ? 'pop' : ''),
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: "vnc-test-list-body",
|
|
|
children: !isLarge ? /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "arrow-container",
|
|
|
onClick: onPop,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
|
className: "iconfont ".concat(isPop ? 'icon-xiajiantou' : 'icon-shangjiantou', " ")
|
|
|
})
|
|
|
}) : null
|
|
|
})
|
|
|
})]
|
|
|
});
|
|
|
});
|
|
|
;// CONCATENATED MODULE: ./src/pages/Innovation/Tasks/Jupyter/index.less?modules
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
/* harmony default export */ var Jupytermodules = ({"bg":"bg___xjZP4","header":"header___S_AU0","dragingMask":"dragingMask___MuMgB","content":"content___sS5Wc","leftContainer":"leftContainer___pbkhe","tabNav":"tabNav___QTkA2","mdContent":"mdContent___p39IM","resizeBar":"resizeBar___UvVzB","has-unity-3d":"has-unity-3d___EQEWx","btn-resize":"btn-resize___XVPBl","rightCotainer":"rightCotainer___Z2h3Y","user":"user___du0m1","titleWrap":"titleWrap___dDrU9","title":"title___Id58q","endTimeWrap":"endTimeWrap___O3i6z","colorGray":"colorGray___SHbxz","main":"main___t6BMk","loadFail":"loadFail___ubRWw","reload":"reload___m8wjw","failIcon":"failIcon___q_CjJ","failWrap":"failWrap___EEJNl","failReload":"failReload___SiyZT","dataSetButton":"dataSetButton___H1Oqu","dataSetText":"dataSetText___p9NRw","dataSetOpen":"dataSetOpen___bT5j8","mymove":"mymove___qtayT","footer":"footer___rdX6y","start":"start___s0r2G","liWarp":"liWarp___N3c6S","li":"li___mKv9C"});
|
|
|
;// CONCATENATED MODULE: ./src/pages/Innovation/Tasks/Jupyter/reducer.ts
|
|
|
|
|
|
var reducer_reducer = function reducer(state, action) {
|
|
|
switch (action.type) {
|
|
|
case 'MOVE_X':
|
|
|
return objectSpread2_default()(objectSpread2_default()({}, state), {}, {
|
|
|
moveX: action.payload
|
|
|
});
|
|
|
case 'SET_DRAGMODULE':
|
|
|
return objectSpread2_default()(objectSpread2_default()({}, state), {}, {
|
|
|
showDragModule: action.payload
|
|
|
});
|
|
|
case 'TRIGGER_RIGHT_PANEL_MASK':
|
|
|
return objectSpread2_default()(objectSpread2_default()({}, state), {}, {
|
|
|
showDragMask: action.payload
|
|
|
});
|
|
|
}
|
|
|
};
|
|
|
;// CONCATENATED MODULE: ./src/pages/Innovation/Tasks/Jupyter/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var Jupyter_excluded = ["globalSetting", "loading", "taskData", "dispatch"];
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var Jupyter_Countdown = statistic/* default.Countdown */.Z.Countdown;
|
|
|
var Status = /*#__PURE__*/function (Status) {
|
|
|
Status[Status["LoadFail"] = 1] = "LoadFail";
|
|
|
Status[Status["ReLoad"] = 2] = "ReLoad";
|
|
|
Status[Status["Success"] = 3] = "Success";
|
|
|
return Status;
|
|
|
}(Status || {});
|
|
|
/**
|
|
|
*
|
|
|
*/
|
|
|
var Jupyter_initialState = {
|
|
|
moveX: '40%',
|
|
|
showDragModule: false,
|
|
|
showDragMask: false
|
|
|
};
|
|
|
var TaskJupyterPage = function TaskJupyterPage(_ref) {
|
|
|
var globalSetting = _ref.globalSetting,
|
|
|
loading = _ref.loading,
|
|
|
taskData = _ref.taskData,
|
|
|
dispatch = _ref.dispatch,
|
|
|
props = objectWithoutProperties_default()(_ref, Jupyter_excluded);
|
|
|
var params = (0,_umi_production_exports.useParams)();
|
|
|
var token = (0,react.useRef)();
|
|
|
var _useState = (0,react.useState)(true),
|
|
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
|
spinning = _useState2[0],
|
|
|
setSpinning = _useState2[1];
|
|
|
var _useState3 = (0,react.useState)(false),
|
|
|
_useState4 = slicedToArray_default()(_useState3, 2),
|
|
|
btnLoading = _useState4[0],
|
|
|
setBtnLoading = _useState4[1];
|
|
|
var _useState5 = (0,react.useState)(0),
|
|
|
_useState6 = slicedToArray_default()(_useState5, 2),
|
|
|
btnTime = _useState6[0],
|
|
|
setBtnTime = _useState6[1];
|
|
|
var _useState7 = (0,react.useState)(0),
|
|
|
_useState8 = slicedToArray_default()(_useState7, 2),
|
|
|
active = _useState8[0],
|
|
|
setActive = _useState8[1];
|
|
|
var _useState9 = (0,react.useState)(true),
|
|
|
_useState10 = slicedToArray_default()(_useState9, 2),
|
|
|
urlSign = _useState10[0],
|
|
|
setUrlSign = _useState10[1];
|
|
|
var _useState11 = (0,react.useState)(false),
|
|
|
_useState12 = slicedToArray_default()(_useState11, 2),
|
|
|
caseVisible = _useState12[0],
|
|
|
setCaseVisible = _useState12[1];
|
|
|
var jupyterMessageFlag = (0,react.useRef)(true);
|
|
|
var _useState13 = (0,react.useState)({}),
|
|
|
_useState14 = slicedToArray_default()(_useState13, 2),
|
|
|
jupyterData = _useState14[0],
|
|
|
setJupyterData = _useState14[1];
|
|
|
var _useState15 = (0,react.useState)({}),
|
|
|
_useState16 = slicedToArray_default()(_useState15, 2),
|
|
|
gamesData = _useState16[0],
|
|
|
setGamesData = _useState16[1];
|
|
|
var _useState17 = (0,react.useState)(),
|
|
|
_useState18 = slicedToArray_default()(_useState17, 2),
|
|
|
url = _useState18[0],
|
|
|
setUrl = _useState18[1];
|
|
|
var port = (0,react.useRef)();
|
|
|
var _useState19 = (0,react.useState)(Status.Success),
|
|
|
_useState20 = slicedToArray_default()(_useState19, 2),
|
|
|
status = _useState20[0],
|
|
|
setStatus = _useState20[1];
|
|
|
var _useState21 = (0,react.useState)(),
|
|
|
_useState22 = slicedToArray_default()(_useState21, 2),
|
|
|
time = _useState22[0],
|
|
|
setTime = _useState22[1];
|
|
|
var _useState23 = (0,react.useState)(),
|
|
|
_useState24 = slicedToArray_default()(_useState23, 2),
|
|
|
endTime = _useState24[0],
|
|
|
setEndTime = _useState24[1];
|
|
|
var _useState25 = (0,react.useState)(false),
|
|
|
_useState26 = slicedToArray_default()(_useState25, 2),
|
|
|
isOpenDrawer = _useState26[0],
|
|
|
setIsOpenDrawer = _useState26[1];
|
|
|
var _useState27 = (0,react.useState)(''),
|
|
|
_useState28 = slicedToArray_default()(_useState27, 2),
|
|
|
codeMessage = _useState28[0],
|
|
|
setCodeMessage = _useState28[1];
|
|
|
var timer = (0,react.useRef)(null);
|
|
|
var saveJupyterData = (0,react.useRef)({});
|
|
|
var clickEvaluating = (0,react.useRef)(false);
|
|
|
var _useReducer = (0,react.useReducer)(reducer_reducer, Jupyter_initialState),
|
|
|
_useReducer2 = slicedToArray_default()(_useReducer, 2),
|
|
|
state = _useReducer2[0],
|
|
|
redcuerDispatch = _useReducer2[1];
|
|
|
|
|
|
// const noDragging = useMemo(() => {
|
|
|
// return (
|
|
|
// (unity_3d_routes && !with_code_file) || challenge?.thiry_party || vnc_url
|
|
|
// );
|
|
|
// }, [vnc_url, with_code_file, unity_3d_routes]);
|
|
|
|
|
|
(0,react.useEffect)(function () {
|
|
|
window.addEventListener('message', handleJupyterMessage);
|
|
|
return function () {
|
|
|
window.removeEventListener('message', handleJupyterMessage);
|
|
|
};
|
|
|
}, []);
|
|
|
var handleJupyterMessage = function handleJupyterMessage(e) {
|
|
|
if ((e === null || e === void 0 ? void 0 : e.data) === 'jupytermessage' && jupyterMessageFlag.current) {
|
|
|
jupyterMessageFlag.current = false;
|
|
|
handleSaveWithTPI();
|
|
|
if (!clickEvaluating.current) {
|
|
|
setTimeout(function () {
|
|
|
return jupyterMessageFlag.current = true;
|
|
|
}, 500);
|
|
|
}
|
|
|
// setTimeout(() => jupyterMessageFlag.current = true, 500)
|
|
|
}
|
|
|
};
|
|
|
|
|
|
var handleSaveWithTPI = /*#__PURE__*/function () {
|
|
|
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
|
|
|
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
|
|
|
while (1) switch (_context.prev = _context.next) {
|
|
|
case 0:
|
|
|
case "end":
|
|
|
return _context.stop();
|
|
|
}
|
|
|
}, _callee);
|
|
|
}));
|
|
|
return function handleSaveWithTPI() {
|
|
|
return _ref2.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var handleGetJupyterData = /*#__PURE__*/function () {
|
|
|
var _ref3 = 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,task/* getJupyterData */.dU)({
|
|
|
identifier: params.identifier
|
|
|
});
|
|
|
case 2:
|
|
|
res = _context2.sent;
|
|
|
if (res) {
|
|
|
setJupyterData(res);
|
|
|
saveJupyterData.current = objectSpread2_default()({}, res);
|
|
|
setGamesData(objectSpread2_default()(objectSpread2_default()({}, gamesData), {}, {
|
|
|
test_sets: (res === null || res === void 0 ? void 0 : res.test_sets) || []
|
|
|
}));
|
|
|
redcuerDispatch({
|
|
|
type: 'SET_DRAGMODULE',
|
|
|
payload: res.jupyter_show_description
|
|
|
});
|
|
|
}
|
|
|
case 4:
|
|
|
case "end":
|
|
|
return _context2.stop();
|
|
|
}
|
|
|
}, _callee2);
|
|
|
}));
|
|
|
return function handleGetJupyterData() {
|
|
|
return _ref3.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var handleGetJupyterTPIUrl = /*#__PURE__*/function () {
|
|
|
var _ref4 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee3() {
|
|
|
var res, _parseUrl, _res$url, _res$url$, _res$url2;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee3$(_context3) {
|
|
|
while (1) switch (_context3.prev = _context3.next) {
|
|
|
case 0:
|
|
|
_context3.next = 2;
|
|
|
return (0,task/* getInfoWithTPI */.rV)({
|
|
|
identifier: params.identifier
|
|
|
});
|
|
|
case 2:
|
|
|
res = _context3.sent;
|
|
|
setSpinning(false);
|
|
|
if (!(res !== null && res !== void 0 && res.url)) {
|
|
|
_context3.next = 14;
|
|
|
break;
|
|
|
}
|
|
|
setUrl(res.url);
|
|
|
token.current = (_parseUrl = (0,util/* parseUrl */.en)(res === null || res === void 0 ? void 0 : (_res$url = res.url) === null || _res$url === void 0 ? void 0 : (_res$url$ = _res$url[0]) === null || _res$url$ === void 0 ? void 0 : _res$url$["url"])) === null || _parseUrl === void 0 ? void 0 : _parseUrl.token;
|
|
|
port.current = res.port;
|
|
|
if (!(((_res$url2 = res.url) === null || _res$url2 === void 0 ? void 0 : _res$url2.length) > 1)) {
|
|
|
_context3.next = 10;
|
|
|
break;
|
|
|
}
|
|
|
return _context3.abrupt("return");
|
|
|
case 10:
|
|
|
setUrlSign(false);
|
|
|
handleGetTPITimeInfo();
|
|
|
setStatus(Status.Success);
|
|
|
return _context3.abrupt("return");
|
|
|
case 14:
|
|
|
if (res.status === -1) {
|
|
|
setStatus(Status.LoadFail);
|
|
|
setUrlSign(false);
|
|
|
} else {
|
|
|
setStatus(Status.ReLoad);
|
|
|
}
|
|
|
case 15:
|
|
|
case "end":
|
|
|
return _context3.stop();
|
|
|
}
|
|
|
}, _callee3);
|
|
|
}));
|
|
|
return function handleGetJupyterTPIUrl() {
|
|
|
return _ref4.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var handleUrlClick = function handleUrlClick(num) {
|
|
|
setUrlSign(false);
|
|
|
setActive(num);
|
|
|
handleGetTPITimeInfo();
|
|
|
setStatus(Status.Success);
|
|
|
};
|
|
|
var handleGetTPITimeInfo = /*#__PURE__*/function () {
|
|
|
var _ref5 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee4() {
|
|
|
var res;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee4$(_context4) {
|
|
|
while (1) switch (_context4.prev = _context4.next) {
|
|
|
case 0:
|
|
|
_context4.next = 2;
|
|
|
return (0,task/* getTimeInfoWithTPI */.x4)({
|
|
|
identifier: params.identifier
|
|
|
});
|
|
|
case 2:
|
|
|
res = _context4.sent;
|
|
|
if (!((res === null || res === void 0 ? void 0 : res.status) !== 0)) {
|
|
|
_context4.next = 5;
|
|
|
break;
|
|
|
}
|
|
|
return _context4.abrupt("return");
|
|
|
case 5:
|
|
|
if (res !== null && res !== void 0 && res.useSeconds) {
|
|
|
_context4.next = 8;
|
|
|
break;
|
|
|
}
|
|
|
handleResetEnvModal();
|
|
|
return _context4.abrupt("return");
|
|
|
case 8:
|
|
|
if (res !== null && res !== void 0 && res.remainingSeconds) {
|
|
|
setTime(Date.now() + res.remainingSeconds * 1000);
|
|
|
setEndTime(res.remainingSeconds - 300 <= 0 ? Date.now() + 1000 : Date.now() + (res.remainingSeconds - 300) * 1000);
|
|
|
}
|
|
|
case 9:
|
|
|
case "end":
|
|
|
return _context4.stop();
|
|
|
}
|
|
|
}, _callee4);
|
|
|
}));
|
|
|
return function handleGetTPITimeInfo() {
|
|
|
return _ref5.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var handleResetEnvModal = function handleResetEnvModal() {
|
|
|
postMessageToIframe(true);
|
|
|
setSpinning(true);
|
|
|
es_modal/* default.confirm */.Z.confirm({
|
|
|
centered: true,
|
|
|
title: '重置环境',
|
|
|
content: ' 是否确定重置环境?',
|
|
|
okText: '确定',
|
|
|
cancelText: '取消',
|
|
|
onOk: function onOk() {
|
|
|
handleResetEnv();
|
|
|
},
|
|
|
onCancel: function onCancel() {
|
|
|
postMessageToIframe(false);
|
|
|
setSpinning(false);
|
|
|
}
|
|
|
});
|
|
|
};
|
|
|
var handleResetEnv = /*#__PURE__*/function () {
|
|
|
var _ref6 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee5() {
|
|
|
var res;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee5$(_context5) {
|
|
|
while (1) switch (_context5.prev = _context5.next) {
|
|
|
case 0:
|
|
|
_context5.next = 2;
|
|
|
return (0,task/* resetWithTPI */.m_)({
|
|
|
identifier: params.identifier
|
|
|
});
|
|
|
case 2:
|
|
|
res = _context5.sent;
|
|
|
if (!((res === null || res === void 0 ? void 0 : res.status) !== 0)) {
|
|
|
_context5.next = 5;
|
|
|
break;
|
|
|
}
|
|
|
return _context5.abrupt("return");
|
|
|
case 5:
|
|
|
message/* default.success */.ZP.success('重置成功!');
|
|
|
setSpinning(false);
|
|
|
setTimeout(function () {
|
|
|
return window.location.reload();
|
|
|
}, 300);
|
|
|
case 8:
|
|
|
case "end":
|
|
|
return _context5.stop();
|
|
|
}
|
|
|
}, _callee5);
|
|
|
}));
|
|
|
return function handleResetEnv() {
|
|
|
return _ref6.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var handleEndTimeFinish = function handleEndTimeFinish() {
|
|
|
es_modal/* default.destroyAll */.Z.destroyAll();
|
|
|
es_modal/* default.confirm */.Z.confirm({
|
|
|
centered: true,
|
|
|
title: '服务中断提醒',
|
|
|
content: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: "tc font14",
|
|
|
children: ["jupyter\u5C06\u4E8E", /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(Jupyter_Countdown, {
|
|
|
value: time,
|
|
|
format: "HH:mm:ss",
|
|
|
onFinish: handleTimeFinish
|
|
|
})
|
|
|
}), "\u65F6\u95F4\u540E\u670D\u52A1\u4E2D\u65AD\uFF0C\u662F\u5426\u9700\u8981\u5EF6\u957F\u4F7F\u7528\u65F6\u95F4\uFF1F"]
|
|
|
}),
|
|
|
okText: '立即延长',
|
|
|
cancelText: '不需要',
|
|
|
onOk: function () {
|
|
|
var _onOk = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee6() {
|
|
|
var res;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee6$(_context6) {
|
|
|
while (1) switch (_context6.prev = _context6.next) {
|
|
|
case 0:
|
|
|
_context6.next = 2;
|
|
|
return (0,task/* activeWithTPI */.rB)({
|
|
|
identifier: params.identifier
|
|
|
});
|
|
|
case 2:
|
|
|
res = _context6.sent;
|
|
|
if (!(res.status === 0)) {
|
|
|
_context6.next = 7;
|
|
|
break;
|
|
|
}
|
|
|
_context6.next = 6;
|
|
|
return handleGetTPITimeInfo();
|
|
|
case 6:
|
|
|
message/* default.success */.ZP.success('延长成功!');
|
|
|
case 7:
|
|
|
case "end":
|
|
|
return _context6.stop();
|
|
|
}
|
|
|
}, _callee6);
|
|
|
}));
|
|
|
function onOk() {
|
|
|
return _onOk.apply(this, arguments);
|
|
|
}
|
|
|
return onOk;
|
|
|
}()
|
|
|
});
|
|
|
};
|
|
|
var handleTimeFinish = function handleTimeFinish() {
|
|
|
es_modal/* default.destroyAll */.Z.destroyAll();
|
|
|
es_modal/* default.confirm */.Z.confirm({
|
|
|
centered: true,
|
|
|
title: '倒计时截止',
|
|
|
content: /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
|
|
|
className: "tc font14",
|
|
|
children: "\u670D\u52A1\u5DF2\u4E2D\u65AD\uFF0C\u662F\u5426\u786E\u8BA4\u91CD\u7F6E\u5B9E\u9A8C\u73AF\u5883\uFF1F"
|
|
|
}),
|
|
|
okText: '确定',
|
|
|
cancelText: '取消',
|
|
|
onOk: function onOk() {
|
|
|
handleResetEnv();
|
|
|
}
|
|
|
});
|
|
|
};
|
|
|
var postMessageToIframe = function postMessageToIframe(stopParent) {
|
|
|
var iframe = document.getElementById('taskJupyterIframe');
|
|
|
if (!iframe) {
|
|
|
return;
|
|
|
}
|
|
|
if (stopParent) {
|
|
|
iframe.contentWindow.postMessage('stopParent', '*');
|
|
|
} else {
|
|
|
iframe.contentWindow.postMessage('clonsParent', '*');
|
|
|
}
|
|
|
};
|
|
|
var handleResetTPI = function handleResetTPI() {
|
|
|
setSpinning(true);
|
|
|
postMessageToIframe(true);
|
|
|
tipReset({
|
|
|
title: '重置实训',
|
|
|
content: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: "tc font14",
|
|
|
children: ["\u4F60\u5728\u672C\u6587\u4EF6\u4E2D\u4FEE\u6539\u7684\u5185\u5BB9\u5C06\u4E22\u5931,", /*#__PURE__*/(0,jsx_runtime.jsx)("br", {}), "\u662F\u5426\u786E\u5B9A\u91CD\u65B0\u52A0\u8F7D\u521D\u59CB\u4EE3\u7801\uFF1F"]
|
|
|
})
|
|
|
});
|
|
|
};
|
|
|
var evaluating = function evaluating() {
|
|
|
var iframe = document.getElementById('taskJupyterIframe');
|
|
|
if (!iframe) {
|
|
|
return;
|
|
|
}
|
|
|
//底下触发保存事件 Ctrl+S
|
|
|
iframe.contentWindow.postMessage('saveCode', '*');
|
|
|
clickEvaluating.current = true;
|
|
|
setBtnLoading(true);
|
|
|
setCaseVisible(true);
|
|
|
// handleSaveWithTPI()
|
|
|
};
|
|
|
|
|
|
var tipReset = function tipReset(obj) {
|
|
|
es_modal/* default.confirm */.Z.confirm({
|
|
|
centered: true,
|
|
|
title: obj.title,
|
|
|
content: obj.content,
|
|
|
okText: '确定',
|
|
|
cancelText: '取消',
|
|
|
onOk: function () {
|
|
|
var _onOk2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee7() {
|
|
|
var res;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee7$(_context7) {
|
|
|
while (1) switch (_context7.prev = _context7.next) {
|
|
|
case 0:
|
|
|
_context7.next = 2;
|
|
|
return (0,task/* syncCode */.fi)({
|
|
|
identifier: params.identifier
|
|
|
});
|
|
|
case 2:
|
|
|
res = _context7.sent;
|
|
|
if (!(res.status !== 0)) {
|
|
|
_context7.next = 5;
|
|
|
break;
|
|
|
}
|
|
|
return _context7.abrupt("return");
|
|
|
case 5:
|
|
|
message/* default.success */.ZP.success('操作成功');
|
|
|
setSpinning(false);
|
|
|
setTimeout(function () {
|
|
|
return window.location.reload();
|
|
|
}, 300);
|
|
|
case 8:
|
|
|
case "end":
|
|
|
return _context7.stop();
|
|
|
}
|
|
|
}, _callee7);
|
|
|
}));
|
|
|
function onOk() {
|
|
|
return _onOk2.apply(this, arguments);
|
|
|
}
|
|
|
return onOk;
|
|
|
}(),
|
|
|
onCancel: function onCancel() {
|
|
|
postMessageToIframe(false);
|
|
|
setSpinning(false);
|
|
|
}
|
|
|
});
|
|
|
};
|
|
|
(0,react.useEffect)(function () {
|
|
|
function onMove(e) {
|
|
|
redcuerDispatch({
|
|
|
type: 'MOVE_X',
|
|
|
payload: e.pageX
|
|
|
});
|
|
|
}
|
|
|
function onMouseUp() {
|
|
|
redcuerDispatch({
|
|
|
type: 'TRIGGER_RIGHT_PANEL_MASK',
|
|
|
payload: false
|
|
|
});
|
|
|
document.onselectstart = null;
|
|
|
}
|
|
|
if (state.showDragMask) {
|
|
|
document.addEventListener('mousemove', onMove);
|
|
|
document.addEventListener('mouseup', onMouseUp);
|
|
|
}
|
|
|
return function () {
|
|
|
document.removeEventListener('mousemove', onMove);
|
|
|
document.removeEventListener('mouseup', onMouseUp);
|
|
|
};
|
|
|
}, [state.showDragMask]);
|
|
|
var leftPanelWidth = typeof state.moveX === 'number' && state.moveX !== 0.01 ? "".concat(state.moveX, "px") : '40%';
|
|
|
var rightPanelWidth = "calc(100% - 4px - ".concat(leftPanelWidth, ")");
|
|
|
|
|
|
/**
|
|
|
*
|
|
|
*/
|
|
|
var onResizeStart = function onResizeStart(status) {
|
|
|
redcuerDispatch({
|
|
|
type: 'TRIGGER_RIGHT_PANEL_MASK',
|
|
|
payload: status
|
|
|
});
|
|
|
};
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)("section", {
|
|
|
className: Jupytermodules.bg,
|
|
|
style: {
|
|
|
userSelect: state.showDragMask ? 'none' : 'unset'
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("section", {
|
|
|
className: Jupytermodules.content,
|
|
|
style: {
|
|
|
height: jupyterData !== null && jupyterData !== void 0 && jupyterData.open_evaluate ? 'calc(100vh - 130px)' : 'calc(100vh - 60px)'
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("section", {
|
|
|
className: Jupytermodules.rightCotainer,
|
|
|
style: {
|
|
|
width: rightPanelWidth
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("main", {
|
|
|
className: Jupytermodules.main,
|
|
|
style: {
|
|
|
height: '100%'
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(react.Fragment, {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: "".concat(Jupytermodules.dataSetButton, " ").concat(isOpenDrawer ? Jupytermodules.dataSetOpen : ''),
|
|
|
onClick: function onClick() {
|
|
|
return setIsOpenDrawer(!isOpenDrawer);
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: Jupytermodules.dataSetText,
|
|
|
children: "\u6570\u636E\u96C6"
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("iframe", {
|
|
|
frameBorder: 0,
|
|
|
id: "taskJupyterIframe",
|
|
|
width: "100%",
|
|
|
height: "100%",
|
|
|
allow: "geolocation; microphone; camera; midi; encrypted-media;",
|
|
|
src: taskData === null || taskData === void 0 ? void 0 : taskData.url
|
|
|
})]
|
|
|
})
|
|
|
})
|
|
|
})
|
|
|
})
|
|
|
});
|
|
|
};
|
|
|
/* harmony default export */ var Jupyter = ((0,_umi_production_exports.connect)(function (_ref7) {
|
|
|
var loading = _ref7.loading,
|
|
|
globalSetting = _ref7.globalSetting;
|
|
|
return {
|
|
|
globalSetting: globalSetting,
|
|
|
loading: loading
|
|
|
};
|
|
|
})(TaskJupyterPage));
|
|
|
;// CONCATENATED MODULE: ./src/pages/Innovation/Tasks/resize-enlarge.png
|
|
|
var resize_enlarge_namespaceObject = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAACgCAYAAAB+HS7YAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTM4IDc5LjE1OTgyNCwgMjAxNi8wOS8xNC0wMTowOTowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjczMUZFNjhCMDE3NzExRUJCOEU5RDg5RTZBOTI5QTU3IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjczMUZFNjhDMDE3NzExRUJCOEU5RDg5RTZBOTI5QTU3Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6NzMxRkU2ODkwMTc3MTFFQkI4RTlEODlFNkE5MjlBNTciIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6NzMxRkU2OEEwMTc3MTFFQkI4RTlEODlFNkE5MjlBNTciLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz7zBaLcAAACAElEQVR42uzdzyvDcRzH8ffsZiVc/IjbkOTuShN/gXIgYi5y2AlpFBL/AAdLiXBgBwfUxplmyU2tRK4sTey0+H6+RbKD7Gtfb/V817t963t59Nnn9f58+7aap6LO/yq6KmN13OoJq1MehcD3erS6rUT0VrnVC5qBpgLagWXagQIQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAABUCD6Lbkr5L2W2uv9bS3LR4vd6iAb/9BaaBfa7K+oa8+0exEwmOheT5+UXnV9zd2SEHeztSU12ldw+2tjRLbH/X/lQbktqaansluwLtelPs85XKZmRFggN9eseMSbVJ9+Js2HHCizoHRwb7ZWN12V5VtYPaacJdOUmcJNy1o67QhLt6FheScNcfFkyqmxr9eoGHsWMZD8/qBCYvLmV4NCS5XE4f8PrmVnoHRySbzeoLyf1DWnr6huxPdWPGrJhZObOC6ga12Wtmz5m9p/Kom5yZt1Or8mFhbWNLIuubOh+3fjrrXAUWMutcAxY661wBOpl1RQc6nXVFBf7GrHMEPEskP65PE+d5901anc46R68+/rp4/QYQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAAECBAgQIECAAP8dMKMdGNcMNH9eMaUR+GR11Oo2q6/eBBgA/5+hicfO9/sAAAAASUVORK5CYII=";
|
|
|
;// CONCATENATED MODULE: ./src/pages/Innovation/Tasks/resize-small.png
|
|
|
var resize_small_namespaceObject = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAACgCAYAAAB+HS7YAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTM4IDc5LjE1OTgyNCwgMjAxNi8wOS8xNC0wMTowOTowMSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTcgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjc0MDQ0OTA3MDE3NzExRUJCNjY1QzBDMDY3NUI5QTQ3IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjc0MDQ0OTA4MDE3NzExRUJCNjY1QzBDMDY3NUI5QTQ3Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6NzQwNDQ5MDUwMTc3MTFFQkI2NjVDMEMwNjc1QjlBNDciIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6NzQwNDQ5MDYwMTc3MTFFQkI2NjVDMEMwNjc1QjlBNDciLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz4CEd39AAACAklEQVR42uzYvyuFURjA8Yf7TpSw+BHbvSTZrXTFX6AMRLiLySSE8ismg8FAIsKAwcCA/eqSbEqJrEgMd7pxzi3iUgbn8KTvU0/37b7Lp/Oe5+k5JygoC4uJiMkpk1GTeaIoApOVJuMm80VhZJuc1Ip7BUZFcWRr23NfAQUgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQL8FWAoFJLpseFP/+9ur8v9zUU67fN3kVVQFn52jcvNzZH52RlpaqiXwvLIh3cW9j4y32dG4BpXUlwkG0vzUlNdpe8TW9T+zqYznFNgY7ROdrc2pLSkWF+RdLe3yurCXHrvuY7gp5U6MTIgsY42b20mcFGpPiPQUKlO96CPSnUG9FWpToA+K9UJsLIinK5atcNC39Co7O0f6gWmUinp6umVk9MzveNWMpmUlo6YXF5d650Hb+/upbm1M/2rdmC1K2hX0q6o2ona7kW7J+3eVDvy26ruHxnXfSZZWF6VxZU13Ycmnz3SCdBnj3Q28vvqkU4PTT56pPODu+se6eVmwWWP9Hb1YavaVndmxBPHb89HiZO/ufpQWyQAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECBAgQIAAAQIECPD/AB+1Aw+0AwdNPmgGnpusNblt8kkb8EWAAQAq85VNhqprywAAAABJRU5ErkJggg==";
|
|
|
// EXTERNAL MODULE: ./src/pages/Innovation/Detail/components/DataSetPane/index.tsx
|
|
|
var DataSetPane = __webpack_require__(1310);
|
|
|
// EXTERNAL MODULE: ./src/pages/Innovation/Tasks/Collaborate/index.tsx + 4 modules
|
|
|
var Collaborate = __webpack_require__(94214);
|
|
|
// EXTERNAL MODULE: ./src/service/innovation.ts
|
|
|
var innovation = __webpack_require__(33265);
|
|
|
;// CONCATENATED MODULE: ./src/pages/Innovation/Tasks/constant.js
|
|
|
var FETCH_TASK_START = 'FETCH_TASK_START';
|
|
|
var FETCH_TASK_FAILURE = 'FETCH_TASK_FAILURE';
|
|
|
var FETCH_TASK_SUCCESS = 'FETCH_TASK_SUCCESS';
|
|
|
var UPDATE_TASK_DATA = 'UPDATE_TASK_DATA';
|
|
|
var HIDE_EVALUATE_RESULT = 'HIDE_EVALUATE_RESULT';
|
|
|
var SHOW_EVALUATE_RESULT = 'SHOW_EVALUATE_RESULT';
|
|
|
var UPDATE_TIMESTRAP = 'UPDATE_TIMESTRAP';
|
|
|
var MOVE_X = 'MOVE_X';
|
|
|
var MOVE_Y = 'MOVE_Y';
|
|
|
var TRIGGER_RIGHT_PANEL_MASK = 'TRIGGER_RIGHT_PANEL_MASK ';
|
|
|
|
|
|
//left_panel_action
|
|
|
var SET_ACTIVE_INDEX = 'SET_ACTIVE_INDEX';
|
|
|
var GET_TASK_LIST = 'GET_TASK_LIST';
|
|
|
var SHOW_TASK_LIST = 'SHOW_TASK_LIST';
|
|
|
var HIDE_TASK_LIST = 'HIDE_TASK_LIST';
|
|
|
var SET_TASK_STAR = 'SET_TASK_STAR';
|
|
|
var TRIGGER_ENLARGE_UNITY3D = 'TRIGGER_ENLARGE_UNITY3D ';
|
|
|
var TRIGGER_TAB_FIXED = 'TRIGGER_TAB_FIXED ';
|
|
|
|
|
|
//discuss action
|
|
|
var GET_DISCUSSES = 'GET_DISCUSSES';
|
|
|
var SHOW_DISCUSSES_LOADING = 'SHOW_DISCUSSES_LOADING';
|
|
|
var TOP_OR_DOWN_DISCUSS = 'TOP_OR_DOWN_DISCUSS';
|
|
|
var PLUS_DISCUSS = 'PLUS_DISCUSS';
|
|
|
var SET_ACTION_TYPE = 'SET_ACTION_TYPE';
|
|
|
var SHOW_REWARD_DIALOG = 'SHOW_REWARD_DIALOG';
|
|
|
var CANCEL_REWARD_DIALOG = 'CANCEL_REWARD_DIALOG';
|
|
|
var SET_REWARD = 'SET_REWARD';
|
|
|
var ACTIVE_DISCUSS_INDEX = 'ACTIVE_DISCUSS_INDEX';
|
|
|
var CREATE_DISCUSS = 'CREATE_DISCUSS';
|
|
|
var DISABLE_DISCUSS = 'DISABLE_DISCUSS';
|
|
|
|
|
|
//answer_panel_action
|
|
|
var SHOW_ANSWER_LOADING = 'SHOW_ANSWER_LOADING';
|
|
|
var FETCH_ANSWER_INFO = 'FETCH_ANSWER_INFO';
|
|
|
var HIDE_TIP_MODAL = 'HIGH_TIP_MODAL';
|
|
|
var SHOW_TIP_MODAL = 'SHOW_TIP_MODAL';
|
|
|
var SELECT_UNLOCK_ANSWER = 'SELECT_UNLOCK_ANSWER';
|
|
|
|
|
|
//choose_repository_action
|
|
|
var SET_CHOOSE_ANSWERS = 'SET_CHOOSE_ANSWERS';
|
|
|
var EVAL_CHOOSE_START = 'EVAL_CHOOSE_START';
|
|
|
var EVAL_CHOOSE_END = 'EVAL_CHOOSE_END';
|
|
|
|
|
|
//code_repository_action
|
|
|
var SHOW_REP_LOADING = 'SHOW_REP_loading';
|
|
|
var FETCH_REP_CONTENT = 'FETCH_REP_CONTENT';
|
|
|
var EDIT_REP_CODE = 'EDIT_REP_CONTENT';
|
|
|
var SET_REP_PATH = 'SET_REP_PATH';
|
|
|
var SHOW_EVALUATE_LOADING = 'SHOW_EVALUATE_LOADING';
|
|
|
var HIDE_EVALUATE_LOADING = 'HIDE_EVALUATE_LOADING';
|
|
|
var SET_EVALUATE_MESSAGE = 'SET_EVALUATE_MESSAGE';
|
|
|
var SET_SHOW_DIR = 'SET_SHOW_DIR';
|
|
|
var SET_EDITOR_SETTING = 'SET_EDITOR_SETTING';
|
|
|
var SET_EDITOR_THEME = 'SET_EDITOR_THEME';
|
|
|
var SET_EDITOR_FONTSIZE = 'SET_EDITOR_FONTSIZE';
|
|
|
var SET_REPOS = 'SET_REPOS';
|
|
|
var SHOW_PATH_LIST = 'SHOW_PATH_LIST';
|
|
|
var HIDE_PATH_LIST = 'HIDE_PATH_LIST';
|
|
|
var HIDE_PICTURE_VIEW = 'HIDE_PICTURE_VIEW';
|
|
|
var SHOW_PICTURE_VIEW = 'SHOW_PICTURE_VIEW';
|
|
|
var SHOW_NOTICE = 'SHOW_NOTICE';
|
|
|
var HIDE_NOTICE = 'HIDE_NOTICE';
|
|
|
var SET_TAB_INDEX = 'SET_TAB_INDEX';
|
|
|
var SET_SSH_TABS = 'SET_SSH_TABS';
|
|
|
var SET_SSH_CONFIGDATA = 'SET_SSH_CONFIGDATA';
|
|
|
var SET_SSH_CONFIGDATAARR = 'SET_SSH_CONFIGDATAARR';
|
|
|
var SET_VNC_LOADING = 'SET_VNC_LOADING ';
|
|
|
var ON_TAB_TO_SPACE = 'ON_TAB_TO_SPACE ';
|
|
|
;// CONCATENATED MODULE: ./src/pages/Innovation/Tasks/index.jsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var Tasks_excluded = ["match", "history"],
|
|
|
_excluded2 = ["gold", "experience", "next_game", "next_shixun", "subject_done"];
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// import EvaluateResult from './evaluate-result';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var DirectoryTree = tree/* default.DirectoryTree */.Z.DirectoryTree;
|
|
|
var BADSUFS = (/* unused pure expression or super */ null && (['jpg', 'png', 'gif', 'jpeg', 'jar', 'doc', 'pdf', 'xsl', 'ppt', 'mp3', 'mp4']));
|
|
|
var Tasks_initialState = {
|
|
|
moveX: '40%',
|
|
|
moveY: 0,
|
|
|
loading: true,
|
|
|
isError: false,
|
|
|
taskData: {
|
|
|
game: {}
|
|
|
},
|
|
|
evalData: null,
|
|
|
lastedGetTaskInfoTime: 0,
|
|
|
codeRepData: {
|
|
|
content: '',
|
|
|
language: 'c',
|
|
|
currentPath: '',
|
|
|
paths: [],
|
|
|
lastedUpdateTime: 0,
|
|
|
loading: false
|
|
|
},
|
|
|
showEvalResult: false,
|
|
|
showPictureView: false,
|
|
|
isPictureView: false,
|
|
|
showDragMask: false,
|
|
|
webDisplayUrl: '',
|
|
|
evaluateLoading: false,
|
|
|
resetVncLoading: false,
|
|
|
evaluateMessage: '',
|
|
|
showNotice: false,
|
|
|
timestamp: '',
|
|
|
showDocuments: false,
|
|
|
repos: null
|
|
|
};
|
|
|
function Tasks_reducer(state, action) {
|
|
|
switch (action.type) {
|
|
|
case MOVE_X:
|
|
|
return objectSpread2_default()(objectSpread2_default()({}, state), {}, {
|
|
|
moveX: action.payload
|
|
|
});
|
|
|
case MOVE_Y:
|
|
|
return objectSpread2_default()(objectSpread2_default()({}, state), {}, {
|
|
|
moveY: action.payload
|
|
|
});
|
|
|
case SHOW_REP_LOADING:
|
|
|
return objectSpread2_default()(objectSpread2_default()({}, state), {}, {
|
|
|
codeRepData: action.payload
|
|
|
});
|
|
|
case FETCH_REP_CONTENT:
|
|
|
return objectSpread2_default()(objectSpread2_default()({}, state), {}, {
|
|
|
codeRepData: action.payload
|
|
|
});
|
|
|
case EDIT_REP_CODE:
|
|
|
return objectSpread2_default()(objectSpread2_default()({}, state), {}, {
|
|
|
codeRepData: objectSpread2_default()(objectSpread2_default()({}, state.codeRepData), action.payload)
|
|
|
});
|
|
|
case SHOW_EVALUATE_RESULT:
|
|
|
return objectSpread2_default()(objectSpread2_default()({}, state), {}, {
|
|
|
evaluateLoading: false,
|
|
|
showEvalResult: true
|
|
|
});
|
|
|
case UPDATE_TIMESTRAP:
|
|
|
return objectSpread2_default()(objectSpread2_default()({}, state), {}, {
|
|
|
timestamp: action.payload
|
|
|
});
|
|
|
case HIDE_EVALUATE_RESULT:
|
|
|
return objectSpread2_default()(objectSpread2_default()({}, state), {}, {
|
|
|
showEvalResult: false
|
|
|
});
|
|
|
case FETCH_TASK_START:
|
|
|
return objectSpread2_default()(objectSpread2_default()({}, state), {}, {
|
|
|
loading: true
|
|
|
});
|
|
|
case UPDATE_TASK_DATA:
|
|
|
return objectSpread2_default()(objectSpread2_default()({}, state), action.payload);
|
|
|
case TRIGGER_RIGHT_PANEL_MASK:
|
|
|
return objectSpread2_default()(objectSpread2_default()({}, state), {}, {
|
|
|
showDragMask: action.payload
|
|
|
});
|
|
|
case FETCH_TASK_FAILURE:
|
|
|
return objectSpread2_default()(objectSpread2_default()({}, state), {}, {
|
|
|
loading: false,
|
|
|
isError: true
|
|
|
});
|
|
|
case FETCH_TASK_SUCCESS:
|
|
|
return objectSpread2_default()(objectSpread2_default()({}, state), action.payload);
|
|
|
case SHOW_EVALUATE_LOADING:
|
|
|
return objectSpread2_default()(objectSpread2_default()({}, state), {}, {
|
|
|
evaluateLoading: true
|
|
|
});
|
|
|
case HIDE_EVALUATE_LOADING:
|
|
|
return objectSpread2_default()(objectSpread2_default()({}, state), {}, {
|
|
|
evaluateLoading: false
|
|
|
});
|
|
|
case SET_EVALUATE_MESSAGE:
|
|
|
return objectSpread2_default()(objectSpread2_default()({}, state), {}, {
|
|
|
evaluateMessage: action.payload
|
|
|
});
|
|
|
case SET_SHOW_DIR:
|
|
|
return objectSpread2_default()(objectSpread2_default()({}, state), {}, {
|
|
|
showDocuments: action.payload
|
|
|
});
|
|
|
case SET_REPOS:
|
|
|
return objectSpread2_default()(objectSpread2_default()({}, state), action.payload);
|
|
|
case SHOW_NOTICE:
|
|
|
return objectSpread2_default()(objectSpread2_default()({}, state), {}, {
|
|
|
showNotice: true
|
|
|
});
|
|
|
case HIDE_NOTICE:
|
|
|
return objectSpread2_default()(objectSpread2_default()({}, state), {}, {
|
|
|
showNotice: false
|
|
|
});
|
|
|
case HIDE_PICTURE_VIEW:
|
|
|
return objectSpread2_default()(objectSpread2_default()({}, state), {}, {
|
|
|
showPictureView: false
|
|
|
});
|
|
|
case SHOW_PICTURE_VIEW:
|
|
|
return objectSpread2_default()(objectSpread2_default()({}, state), {}, {
|
|
|
showPictureView: true
|
|
|
});
|
|
|
case SET_VNC_LOADING:
|
|
|
return objectSpread2_default()(objectSpread2_default()({}, state), {}, {
|
|
|
resetVncLoading: action.payload
|
|
|
});
|
|
|
default:
|
|
|
throw new Error();
|
|
|
}
|
|
|
}
|
|
|
//切换关卡或者用户关闭页面时需要保存用户计时与代码
|
|
|
//评测时,刷新测试集,用户金币与关卡任务信息
|
|
|
//react 缺少keep-alive 机制,所以文件目录树也需要放在顶层,在code-repository 中管理,会因为react的组件卸载导致状态丢失。
|
|
|
|
|
|
/* harmony default export */ var Tasks = (function (_ref) {
|
|
|
var _leftPanelOption;
|
|
|
var match = _ref.match,
|
|
|
history = _ref.history,
|
|
|
props = objectWithoutProperties_default()(_ref, Tasks_excluded);
|
|
|
console.log('props:', props);
|
|
|
var _params = (0,_umi_production_exports.useParams)();
|
|
|
var _useSearchParams = (0,_umi_production_exports.useSearchParams)(),
|
|
|
_useSearchParams2 = slicedToArray_default()(_useSearchParams, 1),
|
|
|
searchParams = _useSearchParams2[0];
|
|
|
var query = (0,_umi_production_exports.useLocation)().query;
|
|
|
var _useReducer = (0,react.useReducer)(Tasks_reducer, Tasks_initialState),
|
|
|
_useReducer2 = slicedToArray_default()(_useReducer, 2),
|
|
|
state = _useReducer2[0],
|
|
|
dispatch = _useReducer2[1];
|
|
|
var _useState = (0,react.useState)(1),
|
|
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
|
showTab = _useState2[0],
|
|
|
setShowTab = _useState2[1];
|
|
|
var _useState3 = (0,react.useState)(_params.taskId),
|
|
|
_useState4 = slicedToArray_default()(_useState3, 2),
|
|
|
taskId = _useState4[0],
|
|
|
setTaskId = _useState4[1];
|
|
|
var resizeXFlag = (0,react.useRef)();
|
|
|
var resizeYFlag = (0,react.useRef)();
|
|
|
var fullscreenOrExit = (0,react.useRef)();
|
|
|
var _useState5 = (0,react.useState)(),
|
|
|
_useState6 = slicedToArray_default()(_useState5, 2),
|
|
|
datas = _useState6[0],
|
|
|
setdatas = _useState6[1];
|
|
|
var location = (0,_umi_production_exports.useLocation)();
|
|
|
(0,react.useEffect)(function () {
|
|
|
console.log('_params:', _params);
|
|
|
setTaskId(_params.taskId);
|
|
|
(0,_umi_production_exports.getDvaApp)()._store.dispatch({
|
|
|
type: 'globalSetting/headerFooterToggle',
|
|
|
payload: false
|
|
|
});
|
|
|
}, [_params]);
|
|
|
var moveX = state.moveX,
|
|
|
taskData = state.taskData,
|
|
|
moveY = state.moveY,
|
|
|
evalData = state.evalData,
|
|
|
showEvalResult = state.showEvalResult,
|
|
|
codeRepData = state.codeRepData,
|
|
|
loading = state.loading,
|
|
|
evaluateLoading = state.evaluateLoading,
|
|
|
evaluateMessage = state.evaluateMessage,
|
|
|
showDocuments = state.showDocuments,
|
|
|
repos = state.repos,
|
|
|
showPictureView = state.showPictureView,
|
|
|
showNotice = state.showNotice,
|
|
|
webDisplayUrl = state.webDisplayUrl,
|
|
|
isPictureView = state.isPictureView,
|
|
|
resetVncLoading = state.resetVncLoading,
|
|
|
timestamp = state.timestamp,
|
|
|
lastedGetTaskInfoTime = state.lastedGetTaskInfoTime,
|
|
|
showDragMask = state.showDragMask;
|
|
|
var st = taskData.st,
|
|
|
challenge = taskData.challenge,
|
|
|
shixun = taskData.shixun,
|
|
|
is_teacher = taskData.is_teacher,
|
|
|
game = taskData.game,
|
|
|
has_answer = taskData.has_answer,
|
|
|
vnc_url = taskData.vnc_url,
|
|
|
git_url = taskData.git_url,
|
|
|
user = taskData.user,
|
|
|
myshixun = taskData.myshixun,
|
|
|
discusses_count = taskData.discusses_count,
|
|
|
user_praise = taskData.user_praise,
|
|
|
praise_count = taskData.praise_count,
|
|
|
tpm_cases_modified = taskData.tpm_cases_modified,
|
|
|
tpm_modified = taskData.tpm_modified,
|
|
|
tpm_script_modified = taskData.tpm_script_modified,
|
|
|
mirror_name = taskData.mirror_name,
|
|
|
mirror_description = taskData.mirror_description,
|
|
|
tomcat_url = taskData.tomcat_url,
|
|
|
unity_3d_routes = taskData.unity_3d_routes,
|
|
|
with_code_file = taskData.with_code_file,
|
|
|
unity_3d_result = taskData.unity_3d_result,
|
|
|
next_game = taskData.next_game,
|
|
|
prev_game = taskData.prev_game;
|
|
|
var currentPath = codeRepData.currentPath,
|
|
|
paths = codeRepData.paths,
|
|
|
content = codeRepData.content,
|
|
|
language = codeRepData.language,
|
|
|
lastedUpdateTime = codeRepData.lastedUpdateTime;
|
|
|
var isUpdateScript = (tpm_modified || tpm_script_modified) && st === 0;
|
|
|
var isNotice = (tpm_cases_modified || isUpdateScript) && myshixun.system_tip === true;
|
|
|
var isHtml = (mirror_name || []).indexOf('Html') !== -1;
|
|
|
var isEditPath = (0,react.useMemo)(function () {
|
|
|
if (currentPath && paths) {
|
|
|
return paths.indexOf(currentPath) >= 0;
|
|
|
}
|
|
|
return false;
|
|
|
}, [currentPath, paths]);
|
|
|
var noDragging = (0,react.useMemo)(function () {
|
|
|
return unity_3d_routes && !with_code_file || (challenge === null || challenge === void 0 ? void 0 : challenge.thiry_party) || vnc_url;
|
|
|
}, [vnc_url, with_code_file, unity_3d_routes]);
|
|
|
(0,react.useEffect)(function () {
|
|
|
if (unity_3d_routes && with_code_file) {
|
|
|
dispatch({
|
|
|
type: SHOW_EVALUATE_LOADING
|
|
|
});
|
|
|
var unsub = mediator/* default.subscribe */.Z.subscribe('unity3d-load-end', function () {
|
|
|
dispatch({
|
|
|
type: HIDE_EVALUATE_LOADING
|
|
|
});
|
|
|
});
|
|
|
return unsub;
|
|
|
}
|
|
|
}, [taskId, unity_3d_routes, challenge === null || challenge === void 0 ? void 0 : challenge.thiry_party, with_code_file, dispatch]);
|
|
|
(0,react.useEffect)(function () {
|
|
|
getdata();
|
|
|
}, []);
|
|
|
function getdata() {
|
|
|
return _getdata.apply(this, arguments);
|
|
|
}
|
|
|
function _getdata() {
|
|
|
_getdata = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee5() {
|
|
|
var res;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee5$(_context5) {
|
|
|
while (1) switch (_context5.prev = _context5.next) {
|
|
|
case 0:
|
|
|
_context5.next = 2;
|
|
|
return (0,fetch/* default */.ZP)("/api/sci/projects/".concat(taskId, ".json"), {
|
|
|
method: 'get'
|
|
|
});
|
|
|
case 2:
|
|
|
res = _context5.sent;
|
|
|
setdatas(res);
|
|
|
case 4:
|
|
|
case "end":
|
|
|
return _context5.stop();
|
|
|
}
|
|
|
}, _callee5);
|
|
|
}));
|
|
|
return _getdata.apply(this, arguments);
|
|
|
}
|
|
|
function init(_x) {
|
|
|
return _init.apply(this, arguments);
|
|
|
}
|
|
|
function _init() {
|
|
|
_init = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee6(didCancel) {
|
|
|
var response, status, payload;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee6$(_context6) {
|
|
|
while (1) switch (_context6.prev = _context6.next) {
|
|
|
case 0:
|
|
|
_context6.prev = 0;
|
|
|
_context6.next = 3;
|
|
|
return (0,innovation/* startEnvironment */.ie)(taskId);
|
|
|
case 3:
|
|
|
response = _context6.sent;
|
|
|
status = response.status;
|
|
|
if (!(status === 401)) {
|
|
|
_context6.next = 10;
|
|
|
break;
|
|
|
}
|
|
|
history.replace('/user/login', {
|
|
|
from: location.pathname
|
|
|
});
|
|
|
return _context6.abrupt("return");
|
|
|
case 10:
|
|
|
if (!(status === -3)) {
|
|
|
_context6.next = 14;
|
|
|
break;
|
|
|
}
|
|
|
(0,util/* bindPhone */.eF)({
|
|
|
onCancel: function onCancel() {
|
|
|
window.location.href = '/';
|
|
|
}
|
|
|
});
|
|
|
_context6.next = 25;
|
|
|
break;
|
|
|
case 14:
|
|
|
if (!(status === 403)) {
|
|
|
_context6.next = 18;
|
|
|
break;
|
|
|
}
|
|
|
history.replace('/403');
|
|
|
_context6.next = 25;
|
|
|
break;
|
|
|
case 18:
|
|
|
if (!(status === 404)) {
|
|
|
_context6.next = 23;
|
|
|
break;
|
|
|
}
|
|
|
history.replace('/404');
|
|
|
return _context6.abrupt("return");
|
|
|
case 23:
|
|
|
payload = {
|
|
|
loading: false,
|
|
|
isError: false,
|
|
|
taskData: response
|
|
|
};
|
|
|
if (!didCancel) {
|
|
|
dispatch({
|
|
|
type: FETCH_TASK_SUCCESS,
|
|
|
payload: payload
|
|
|
});
|
|
|
}
|
|
|
case 25:
|
|
|
if (response.mirror_type === 'webssh') {
|
|
|
setTimeout(function () {
|
|
|
mediator/* default.publish */.Z.publish('create-socket', 1);
|
|
|
}, 1000);
|
|
|
}
|
|
|
_context6.next = 32;
|
|
|
break;
|
|
|
case 28:
|
|
|
_context6.prev = 28;
|
|
|
_context6.t0 = _context6["catch"](0);
|
|
|
console.log(_context6.t0);
|
|
|
if (!didCancel) {
|
|
|
dispatch({
|
|
|
type: FETCH_TASK_FAILURE
|
|
|
});
|
|
|
}
|
|
|
case 32:
|
|
|
case "end":
|
|
|
return _context6.stop();
|
|
|
}
|
|
|
}, _callee6, null, [[0, 28]]);
|
|
|
}));
|
|
|
return _init.apply(this, arguments);
|
|
|
}
|
|
|
(0,react.useEffect)(function () {
|
|
|
var didCancel = false;
|
|
|
init(didCancel);
|
|
|
return function () {
|
|
|
didCancel = true;
|
|
|
};
|
|
|
}, [dispatch, taskId]);
|
|
|
(0,react.useEffect)(function () {
|
|
|
var didCancel = false;
|
|
|
function init() {
|
|
|
return _init2.apply(this, arguments);
|
|
|
}
|
|
|
function _init2() {
|
|
|
_init2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
|
|
|
var data, _content, _content2, _data$content, _data$content2, _data$content3;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
|
|
|
while (1) switch (_context.prev = _context.next) {
|
|
|
case 0:
|
|
|
dispatch({
|
|
|
type: SHOW_REP_LOADING,
|
|
|
payload: objectSpread2_default()(objectSpread2_default()({}, codeRepData), {}, {
|
|
|
loading: true
|
|
|
})
|
|
|
});
|
|
|
if (!(unity_3d_routes && !with_code_file || challenge !== null && challenge !== void 0 && challenge.thiry_party)) {
|
|
|
_context.next = 3;
|
|
|
break;
|
|
|
}
|
|
|
return _context.abrupt("return");
|
|
|
case 3:
|
|
|
_context.next = 5;
|
|
|
return fetchCode(taskId, {
|
|
|
path: currentPath
|
|
|
});
|
|
|
case 5:
|
|
|
data = _context.sent;
|
|
|
if (!didCancel) {
|
|
|
if (data.status === 0) {
|
|
|
message/* default.info */.ZP.info(data.message);
|
|
|
dispatch({
|
|
|
type: FETCH_REP_CONTENT,
|
|
|
payload: objectSpread2_default()(objectSpread2_default()({}, codeRepData), {}, {
|
|
|
loading: false
|
|
|
})
|
|
|
});
|
|
|
} else {
|
|
|
try {
|
|
|
// if (!!data?.content?.content?.length) {
|
|
|
if ((data === null || data === void 0 ? void 0 : data.file_type) === 'txt') {
|
|
|
_content = ((_content2 = _content) === null || _content2 === void 0 ? void 0 : _content2.length) === 0 ? _content : window.decodeURIComponent(escape(window.atob(data === null || data === void 0 ? void 0 : (_data$content = data.content) === null || _data$content === void 0 ? void 0 : _data$content.content)));
|
|
|
} else {
|
|
|
_content = data === null || data === void 0 ? void 0 : (_data$content2 = data.content) === null || _data$content2 === void 0 ? void 0 : _data$content2.content;
|
|
|
}
|
|
|
// }
|
|
|
} catch (e) {
|
|
|
_content = window.atob(data === null || data === void 0 ? void 0 : (_data$content3 = data.content) === null || _data$content3 === void 0 ? void 0 : _data$content3.content);
|
|
|
message/* default.warning */.ZP.warning('请确认文件字符集编码是否为UTF-8');
|
|
|
console.log('err:', e);
|
|
|
}
|
|
|
dispatch({
|
|
|
type: FETCH_REP_CONTENT,
|
|
|
payload: objectSpread2_default()(objectSpread2_default()({}, codeRepData), {}, {
|
|
|
content: _content,
|
|
|
language: data.language,
|
|
|
file_type: data.file_type,
|
|
|
filename: data.filename,
|
|
|
lastedUpdateTime: 0,
|
|
|
loading: false
|
|
|
})
|
|
|
});
|
|
|
}
|
|
|
}
|
|
|
case 7:
|
|
|
case "end":
|
|
|
return _context.stop();
|
|
|
}
|
|
|
}, _callee);
|
|
|
}));
|
|
|
return _init2.apply(this, arguments);
|
|
|
}
|
|
|
if (st === 0 && currentPath && shixun.hide_code !== 1) {
|
|
|
// if (vnc_url || taskData?.windows_vnc) {
|
|
|
// return;
|
|
|
// }
|
|
|
init();
|
|
|
return function () {
|
|
|
didCancel = true;
|
|
|
};
|
|
|
}
|
|
|
}, [st, currentPath, lastedGetTaskInfoTime, timestamp]);
|
|
|
var onUpdateCode = /*#__PURE__*/function () {
|
|
|
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2() {
|
|
|
var evaluate,
|
|
|
response,
|
|
|
_args2 = arguments;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
|
|
|
while (1) switch (_context2.prev = _context2.next) {
|
|
|
case 0:
|
|
|
evaluate = _args2.length > 0 && _args2[0] !== undefined ? _args2[0] : 0;
|
|
|
console.log('lastedUpdateTime:', isEditPath, evaluate);
|
|
|
if (!(
|
|
|
// shixun?.hide_code !== 1 &&
|
|
|
st === 0 && lastedUpdateTime > 0 && isEditPath || evaluate)) {
|
|
|
_context2.next = 8;
|
|
|
break;
|
|
|
}
|
|
|
_context2.next = 5;
|
|
|
return updateCode(myshixun.identifier, {
|
|
|
path: currentPath,
|
|
|
evaluate: evaluate,
|
|
|
content: content,
|
|
|
game_id: game.id
|
|
|
});
|
|
|
case 5:
|
|
|
response = _context2.sent;
|
|
|
dispatch({
|
|
|
type: EDIT_REP_CODE,
|
|
|
payload: {
|
|
|
lastedUpdateTime: 0
|
|
|
}
|
|
|
});
|
|
|
return _context2.abrupt("return", response);
|
|
|
case 8:
|
|
|
return _context2.abrupt("return", true);
|
|
|
case 9:
|
|
|
case "end":
|
|
|
return _context2.stop();
|
|
|
}
|
|
|
}, _callee2);
|
|
|
}));
|
|
|
return function onUpdateCode() {
|
|
|
return _ref2.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
|
|
|
// useEffect(() => {
|
|
|
// onUpdateCode();
|
|
|
// }, [st, lastedUpdateTime, currentPath, content, game?.id, isEditPath])
|
|
|
|
|
|
//保存上下文
|
|
|
var onSaveContent = (0,react.useCallback)(function () {
|
|
|
// if (game) {
|
|
|
// if (game.status !== 2) {
|
|
|
// mediator.publish('update-cost-time');
|
|
|
// }
|
|
|
// }
|
|
|
// try {
|
|
|
// if (myshixun?.identifier) {
|
|
|
// let bodys = {
|
|
|
// path: currentPath,
|
|
|
// evaluate: 0,
|
|
|
// content,
|
|
|
// game_id: game.id,
|
|
|
// };
|
|
|
// let headers = {
|
|
|
// type: 'application/json',
|
|
|
// };
|
|
|
// let blob = new Blob([JSON.stringify(bodys)], headers);
|
|
|
// window.navigator.sendBeacon(
|
|
|
// `${ENV.API_SERVER}/api/myshixuns/${myshixun?.identifier}/update_file.json`,
|
|
|
// blob,
|
|
|
// );
|
|
|
// }
|
|
|
// } catch (e) {}
|
|
|
// onUpdateCode();
|
|
|
}, [onUpdateCode]);
|
|
|
|
|
|
//解锁测试集
|
|
|
(0,react.useEffect)(function () {
|
|
|
var unSub = mediator/* default.subscribe */.Z.subscribe('unlock-test-case', function () {
|
|
|
var _Modal$confirm;
|
|
|
es_modal/* default.confirm */.Z.confirm((_Modal$confirm = {
|
|
|
centered: true,
|
|
|
okText: '确定',
|
|
|
cancelText: '取消',
|
|
|
title: '提示',
|
|
|
content: /*#__PURE__*/(0,jsx_runtime.jsx)(UnLockTestTip, {
|
|
|
score: challenge.score,
|
|
|
is_teacher: is_teacher
|
|
|
})
|
|
|
}, defineProperty_default()(_Modal$confirm, "centered", true), defineProperty_default()(_Modal$confirm, "onOk", onUnlockTestCase), _Modal$confirm));
|
|
|
});
|
|
|
return unSub;
|
|
|
}, [onUnlockTestCase, challenge, is_teacher]);
|
|
|
var onUnlockTestCase = (0,react.useCallback)( /*#__PURE__*/asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee3() {
|
|
|
var response, test_sets, message, status, grade;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee3$(_context3) {
|
|
|
while (1) switch (_context3.prev = _context3.next) {
|
|
|
case 0:
|
|
|
_context3.next = 2;
|
|
|
return unlockTestCase(game.identifier);
|
|
|
case 2:
|
|
|
response = _context3.sent;
|
|
|
test_sets = response.test_sets, message = response.message, status = response.status;
|
|
|
if (!(status === -1)) {
|
|
|
_context3.next = 7;
|
|
|
break;
|
|
|
}
|
|
|
message.info(message);
|
|
|
return _context3.abrupt("return");
|
|
|
case 7:
|
|
|
grade = taskData['user'].grade;
|
|
|
taskData['user'].grade = grade - challenge.score * 2;
|
|
|
taskData['test_sets'] = test_sets;
|
|
|
taskData['game']['test_sets_view'] = true;
|
|
|
dispatch({
|
|
|
type: UPDATE_TASK_DATA,
|
|
|
payload: {
|
|
|
taskData: taskData
|
|
|
}
|
|
|
});
|
|
|
case 12:
|
|
|
case "end":
|
|
|
return _context3.stop();
|
|
|
}
|
|
|
}, _callee3);
|
|
|
})), [game, challenge, dispatch]);
|
|
|
(0,react.useEffect)(function () {
|
|
|
if (!noDragging || vnc_url) {
|
|
|
var onMove = function onMove(e) {
|
|
|
if (resizeXFlag.current) {
|
|
|
dispatch({
|
|
|
type: MOVE_X,
|
|
|
payload: e.pageX
|
|
|
});
|
|
|
}
|
|
|
if (resizeYFlag.current) {
|
|
|
dispatch({
|
|
|
type: MOVE_Y,
|
|
|
payload: e.pageY
|
|
|
});
|
|
|
}
|
|
|
};
|
|
|
var onMouseUp = function onMouseUp() {
|
|
|
resizeXFlag.current = false;
|
|
|
resizeYFlag.current = false;
|
|
|
dispatch({
|
|
|
type: TRIGGER_RIGHT_PANEL_MASK,
|
|
|
payload: false
|
|
|
});
|
|
|
document.onselectstart = null;
|
|
|
};
|
|
|
document.addEventListener('mousemove', onMove);
|
|
|
document.addEventListener('mouseup', onMouseUp);
|
|
|
return function () {
|
|
|
document.removeEventListener('mousemove', onMove);
|
|
|
document.removeEventListener('mouseup', onMouseUp);
|
|
|
};
|
|
|
}
|
|
|
}, [resizeYFlag.current, resizeXFlag.current, noDragging, dispatch]);
|
|
|
function minuxUserGrade(value) {
|
|
|
var grade = taskData['user'].grade;
|
|
|
taskData['user'].grade = grade - value;
|
|
|
dispatch({
|
|
|
type: UPDATE_TASK_DATA,
|
|
|
payload: {
|
|
|
taskData: taskData
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
fullscreenOrExit.current = function () {
|
|
|
state.moveX = state.moveX !== 0.01 ? 0.01 : '40%';
|
|
|
dispatch({
|
|
|
type: MOVE_X,
|
|
|
payload: state.moveX
|
|
|
});
|
|
|
};
|
|
|
function onResizeStart() {
|
|
|
if (noDragging) {
|
|
|
fullscreenOrExit.current();
|
|
|
} else {
|
|
|
document.onselectstart = function () {
|
|
|
return false;
|
|
|
};
|
|
|
resizeXFlag.current = true;
|
|
|
dispatch({
|
|
|
type: TRIGGER_RIGHT_PANEL_MASK,
|
|
|
payload: true
|
|
|
});
|
|
|
}
|
|
|
}
|
|
|
function onResizeYStart() {
|
|
|
document.onselectstart = function () {
|
|
|
return false;
|
|
|
};
|
|
|
resizeYFlag.current = true;
|
|
|
if (taskData !== null && taskData !== void 0 && taskData.vnc_url || taskData !== null && taskData !== void 0 && taskData.windows_vnc || taskData !== null && taskData !== void 0 && taskData.linux_vnc || taskData !== null && taskData !== void 0 && taskData.virtual_machine || (shixun === null || shixun === void 0 ? void 0 : shixun.hide_code) === 2) {
|
|
|
dispatch({
|
|
|
type: TRIGGER_RIGHT_PANEL_MASK,
|
|
|
payload: true
|
|
|
});
|
|
|
}
|
|
|
}
|
|
|
function onResizeSetContainer(value) {
|
|
|
if (value === 0.01) {
|
|
|
dispatch({
|
|
|
type: MOVE_Y,
|
|
|
payload: 0
|
|
|
});
|
|
|
} else {
|
|
|
dispatch({
|
|
|
type: MOVE_Y,
|
|
|
payload: 0.01
|
|
|
});
|
|
|
}
|
|
|
}
|
|
|
function onResizeCodeArea(value) {
|
|
|
if (value === 0) {
|
|
|
dispatch({
|
|
|
type: MOVE_Y,
|
|
|
payload: '100%'
|
|
|
});
|
|
|
} else {
|
|
|
dispatch({
|
|
|
type: MOVE_Y,
|
|
|
payload: 0
|
|
|
});
|
|
|
}
|
|
|
}
|
|
|
(0,react.useEffect)(function () {
|
|
|
var unSub = mediator/* default.subscribe */.Z.subscribe('vnc-enlarge', function () {
|
|
|
fullscreenOrExit.current();
|
|
|
});
|
|
|
return unSub;
|
|
|
}, []);
|
|
|
function onFinishDisplayHtml() {
|
|
|
onUpdateCode();
|
|
|
}
|
|
|
function onResetCode() {
|
|
|
return _onResetCode.apply(this, arguments);
|
|
|
}
|
|
|
function _onResetCode() {
|
|
|
_onResetCode = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee7() {
|
|
|
var response, content, language;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee7$(_context7) {
|
|
|
while (1) switch (_context7.prev = _context7.next) {
|
|
|
case 0:
|
|
|
_context7.next = 2;
|
|
|
return restoreCode(taskId, {
|
|
|
path: currentPath
|
|
|
});
|
|
|
case 2:
|
|
|
response = _context7.sent;
|
|
|
content = response.content, language = response.language;
|
|
|
dispatch({
|
|
|
type: FETCH_REP_CONTENT,
|
|
|
payload: objectSpread2_default()(objectSpread2_default()({}, codeRepData), {}, {
|
|
|
content: content,
|
|
|
language: language,
|
|
|
lastedUpdateTime: 0,
|
|
|
loading: false
|
|
|
})
|
|
|
});
|
|
|
case 5:
|
|
|
case "end":
|
|
|
return _context7.stop();
|
|
|
}
|
|
|
}, _callee7);
|
|
|
}));
|
|
|
return _onResetCode.apply(this, arguments);
|
|
|
}
|
|
|
function onResetGitCode() {
|
|
|
return _onResetGitCode.apply(this, arguments);
|
|
|
}
|
|
|
function _onResetGitCode() {
|
|
|
_onResetGitCode = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee8() {
|
|
|
var _taskData$myshixun;
|
|
|
var response;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee8$(_context8) {
|
|
|
while (1) switch (_context8.prev = _context8.next) {
|
|
|
case 0:
|
|
|
_context8.next = 2;
|
|
|
return resetGitCode(taskData === null || taskData === void 0 ? void 0 : (_taskData$myshixun = taskData.myshixun) === null || _taskData$myshixun === void 0 ? void 0 : _taskData$myshixun.identifier, {});
|
|
|
case 2:
|
|
|
response = _context8.sent;
|
|
|
init();
|
|
|
return _context8.abrupt("return", response);
|
|
|
case 5:
|
|
|
case "end":
|
|
|
return _context8.stop();
|
|
|
}
|
|
|
}, _callee8);
|
|
|
}));
|
|
|
return _onResetGitCode.apply(this, arguments);
|
|
|
}
|
|
|
function onResetPassedCode() {
|
|
|
return _onResetPassedCode.apply(this, arguments);
|
|
|
}
|
|
|
function _onResetPassedCode() {
|
|
|
_onResetPassedCode = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee9() {
|
|
|
var response, content, language;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee9$(_context9) {
|
|
|
while (1) switch (_context9.prev = _context9.next) {
|
|
|
case 0:
|
|
|
_context9.next = 2;
|
|
|
return resetPassedCode(taskId, {
|
|
|
path: currentPath
|
|
|
});
|
|
|
case 2:
|
|
|
response = _context9.sent;
|
|
|
content = response.content, language = response.language;
|
|
|
dispatch({
|
|
|
type: FETCH_REP_CONTENT,
|
|
|
payload: objectSpread2_default()(objectSpread2_default()({}, codeRepData), {}, {
|
|
|
content: content,
|
|
|
language: language,
|
|
|
lastedUpdateTime: 0,
|
|
|
loading: false
|
|
|
})
|
|
|
});
|
|
|
case 5:
|
|
|
case "end":
|
|
|
return _context9.stop();
|
|
|
}
|
|
|
}, _callee9);
|
|
|
}));
|
|
|
return _onResetPassedCode.apply(this, arguments);
|
|
|
}
|
|
|
(0,react.useEffect)(function () {
|
|
|
if (st === 0 && challenge && challenge.path) {
|
|
|
var _paths = challenge.path.split(';').filter(function (item) {
|
|
|
return !!item;
|
|
|
});
|
|
|
dispatch({
|
|
|
type: EDIT_REP_CODE,
|
|
|
payload: {
|
|
|
currentPath: _paths[0],
|
|
|
paths: _paths
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
}, [challenge, st]);
|
|
|
(0,react.useEffect)(function () {
|
|
|
if (shixun) {
|
|
|
(0,util/* setDocumentTitle */.Dk)(shixun.name || '实践项目名称-未填写');
|
|
|
}
|
|
|
}, [shixun]);
|
|
|
function onPlusOrCancelPraise() {
|
|
|
return _onPlusOrCancelPraise.apply(this, arguments);
|
|
|
}
|
|
|
function _onPlusOrCancelPraise() {
|
|
|
_onPlusOrCancelPraise = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee10() {
|
|
|
var response, praise_count, praise;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee10$(_context10) {
|
|
|
while (1) switch (_context10.prev = _context10.next) {
|
|
|
case 0:
|
|
|
_context10.next = 2;
|
|
|
return plusOrCancelPraise(taskId);
|
|
|
case 2:
|
|
|
response = _context10.sent;
|
|
|
praise_count = response.praise_count, praise = response.praise;
|
|
|
taskData.praise_count = praise_count;
|
|
|
taskData['user_praise'] = praise;
|
|
|
dispatch({
|
|
|
type: UPDATE_TASK_DATA,
|
|
|
payload: {
|
|
|
taskData: taskData
|
|
|
}
|
|
|
});
|
|
|
case 7:
|
|
|
case "end":
|
|
|
return _context10.stop();
|
|
|
}
|
|
|
}, _callee10);
|
|
|
}));
|
|
|
return _onPlusOrCancelPraise.apply(this, arguments);
|
|
|
}
|
|
|
var onUpdateCostTime = (0,react.useCallback)(function (time) {
|
|
|
function init(_x2) {
|
|
|
return _init3.apply(this, arguments);
|
|
|
}
|
|
|
function _init3() {
|
|
|
_init3 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee4(time) {
|
|
|
return regeneratorRuntime_default()().wrap(function _callee4$(_context4) {
|
|
|
while (1) switch (_context4.prev = _context4.next) {
|
|
|
case 0:
|
|
|
try {
|
|
|
window.navigator.sendBeacon("".concat(env/* default.API_SERVER */.Z.API_SERVER, "/api/tasks/").concat(taskId, "/cost_time.json?time=").concat(time), JSON.stringify({
|
|
|
time: time
|
|
|
}));
|
|
|
} catch (e) {}
|
|
|
// await updateCostTime(taskId, { time });
|
|
|
case 1:
|
|
|
case "end":
|
|
|
return _context4.stop();
|
|
|
}
|
|
|
}, _callee4);
|
|
|
}));
|
|
|
return _init3.apply(this, arguments);
|
|
|
}
|
|
|
init(time);
|
|
|
}, [taskId]);
|
|
|
function onSaveTaskStar(_x3) {
|
|
|
return _onSaveTaskStar.apply(this, arguments);
|
|
|
}
|
|
|
function _onSaveTaskStar() {
|
|
|
_onSaveTaskStar = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee11(value) {
|
|
|
return regeneratorRuntime_default()().wrap(function _callee11$(_context11) {
|
|
|
while (1) switch (_context11.prev = _context11.next) {
|
|
|
case 0:
|
|
|
_context11.next = 2;
|
|
|
return saveTaskStar(taskId, shixun.id, value);
|
|
|
case 2:
|
|
|
taskData['game']['star'] = value;
|
|
|
dispatch({
|
|
|
type: UPDATE_TASK_DATA,
|
|
|
payload: {
|
|
|
taskData: taskData
|
|
|
}
|
|
|
});
|
|
|
case 4:
|
|
|
case "end":
|
|
|
return _context11.stop();
|
|
|
}
|
|
|
}, _callee11);
|
|
|
}));
|
|
|
return _onSaveTaskStar.apply(this, arguments);
|
|
|
}
|
|
|
function onShowDir() {
|
|
|
return _onShowDir.apply(this, arguments);
|
|
|
}
|
|
|
function _onShowDir() {
|
|
|
_onShowDir = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee12() {
|
|
|
var response, trees;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee12$(_context12) {
|
|
|
while (1) switch (_context12.prev = _context12.next) {
|
|
|
case 0:
|
|
|
if (repos) {
|
|
|
_context12.next = 8;
|
|
|
break;
|
|
|
}
|
|
|
_context12.next = 3;
|
|
|
return fetchRepos(myshixun.identifier);
|
|
|
case 3:
|
|
|
response = _context12.sent;
|
|
|
trees = response.trees;
|
|
|
dispatch({
|
|
|
type: SET_REPOS,
|
|
|
payload: {
|
|
|
showDocuments: true,
|
|
|
repos: getTreeData(trees)
|
|
|
}
|
|
|
});
|
|
|
_context12.next = 9;
|
|
|
break;
|
|
|
case 8:
|
|
|
dispatch({
|
|
|
type: SET_SHOW_DIR,
|
|
|
payload: true
|
|
|
});
|
|
|
case 9:
|
|
|
case "end":
|
|
|
return _context12.stop();
|
|
|
}
|
|
|
}, _callee12);
|
|
|
}));
|
|
|
return _onShowDir.apply(this, arguments);
|
|
|
}
|
|
|
function onLoadTreeData(_x4) {
|
|
|
return _onLoadTreeData.apply(this, arguments);
|
|
|
}
|
|
|
function _onLoadTreeData() {
|
|
|
_onLoadTreeData = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee14(node) {
|
|
|
var _node$props, children, eventKey;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee14$(_context14) {
|
|
|
while (1) switch (_context14.prev = _context14.next) {
|
|
|
case 0:
|
|
|
_node$props = node.props, children = _node$props.children, eventKey = _node$props.eventKey;
|
|
|
return _context14.abrupt("return", new Promise( /*#__PURE__*/function () {
|
|
|
var _ref4 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee13(resolve) {
|
|
|
var response, trees, newRepos;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee13$(_context13) {
|
|
|
while (1) switch (_context13.prev = _context13.next) {
|
|
|
case 0:
|
|
|
if (children && children.length > 0) {
|
|
|
resolve();
|
|
|
}
|
|
|
_context13.next = 3;
|
|
|
return fetchRepos(myshixun.identifier, {
|
|
|
path: eventKey
|
|
|
});
|
|
|
case 3:
|
|
|
response = _context13.sent;
|
|
|
trees = response.trees;
|
|
|
newRepos = processTreeData(repos, eventKey, getTreeData(trees, eventKey));
|
|
|
dispatch({
|
|
|
type: SET_REPOS,
|
|
|
payload: {
|
|
|
repos: toConsumableArray_default()(newRepos)
|
|
|
}
|
|
|
});
|
|
|
resolve();
|
|
|
case 8:
|
|
|
case "end":
|
|
|
return _context13.stop();
|
|
|
}
|
|
|
}, _callee13);
|
|
|
}));
|
|
|
return function (_x9) {
|
|
|
return _ref4.apply(this, arguments);
|
|
|
};
|
|
|
}()));
|
|
|
case 2:
|
|
|
case "end":
|
|
|
return _context14.stop();
|
|
|
}
|
|
|
}, _callee14);
|
|
|
}));
|
|
|
return _onLoadTreeData.apply(this, arguments);
|
|
|
}
|
|
|
function onHideDocuments() {
|
|
|
dispatch({
|
|
|
type: SET_SHOW_DIR,
|
|
|
payload: false
|
|
|
});
|
|
|
}
|
|
|
function onEvalChoose(value) {
|
|
|
var gold = value.gold,
|
|
|
experience = value.experience,
|
|
|
next_game = value.next_game,
|
|
|
next_shixun = value.next_shixun,
|
|
|
subject_done = value.subject_done,
|
|
|
rest = objectWithoutProperties_default()(value, _excluded2);
|
|
|
var isOk = rest.challenge_chooses_count === rest.choose_correct_num;
|
|
|
var new_test_cases = {
|
|
|
had_submmit: true,
|
|
|
test_sets: rest.test_sets,
|
|
|
challenge_chooses_count: rest.challenge_chooses_count,
|
|
|
choose_correct_num: rest.choose_correct_num
|
|
|
};
|
|
|
taskData['choose_test_cases'] = new_test_cases;
|
|
|
if (isOk) {
|
|
|
taskData['game'].status = 2;
|
|
|
taskData['next_game'] = next_game;
|
|
|
taskData['user']['grade'] += gold;
|
|
|
}
|
|
|
if (isOk && game.status !== 2) {
|
|
|
mediator/* default.publish */.Z.publish('update-cost-time');
|
|
|
}
|
|
|
dispatch({
|
|
|
type: UPDATE_TASK_DATA,
|
|
|
payload: {
|
|
|
taskData: taskData,
|
|
|
evalData: {
|
|
|
gold: gold,
|
|
|
experience: experience,
|
|
|
next_game: next_game,
|
|
|
next_shixun: next_shixun,
|
|
|
subject_done: subject_done
|
|
|
// had_done,
|
|
|
},
|
|
|
|
|
|
showEvalResult: isOk
|
|
|
}
|
|
|
});
|
|
|
//*评测完成后有10秒倒计时
|
|
|
mediator/* default.publish */.Z.publish('eval-code-finish');
|
|
|
}
|
|
|
function onEvalCode() {
|
|
|
return _onEvalCode.apply(this, arguments);
|
|
|
}
|
|
|
function _onEvalCode() {
|
|
|
_onEvalCode = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee16() {
|
|
|
var response, resubmit, sec_key, content_modified, params, _taskData$challenge, rs, getGameStatus, count, intervalTime, time_out;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee16$(_context16) {
|
|
|
while (1) switch (_context16.prev = _context16.next) {
|
|
|
case 0:
|
|
|
_context16.prev = 0;
|
|
|
dispatch({
|
|
|
type: SHOW_EVALUATE_LOADING
|
|
|
});
|
|
|
_context16.next = 4;
|
|
|
return onUpdateCode(1);
|
|
|
case 4:
|
|
|
response = _context16.sent;
|
|
|
resubmit = response.resubmit, sec_key = response.sec_key, content_modified = response.content_modified;
|
|
|
if (!(response.status && response.status < 0)) {
|
|
|
_context16.next = 10;
|
|
|
break;
|
|
|
}
|
|
|
// message.warning(response?.message,'message-key');
|
|
|
mediator/* default.publish */.Z.publish('eval-code-finish');
|
|
|
dispatch({
|
|
|
type: UPDATE_TASK_DATA,
|
|
|
payload: {
|
|
|
evaluateLoading: false
|
|
|
}
|
|
|
});
|
|
|
return _context16.abrupt("return");
|
|
|
case 10:
|
|
|
params = {
|
|
|
sec_key: sec_key,
|
|
|
resubmit: resubmit,
|
|
|
first: 1,
|
|
|
content_modified: content_modified
|
|
|
}; // 只有试卷考试才需要下面参数
|
|
|
if (query.type === 'exercises') {
|
|
|
params.extras = {
|
|
|
exercise_id: query.exercisesId,
|
|
|
//试卷id
|
|
|
question_id: query.questionId,
|
|
|
// 题目id
|
|
|
challenge_id: (_taskData$challenge = taskData.challenge) === null || _taskData$challenge === void 0 ? void 0 : _taskData$challenge.id,
|
|
|
// 关卡id
|
|
|
subject_id: query.subject_id || ''
|
|
|
};
|
|
|
}
|
|
|
_context16.next = 14;
|
|
|
return codeGameBuild(taskId, params);
|
|
|
case 14:
|
|
|
rs = _context16.sent;
|
|
|
if (!(rs.status === -1 && query.type === 'exercises')) {
|
|
|
_context16.next = 18;
|
|
|
break;
|
|
|
}
|
|
|
window.parent.location.href = "/classrooms/".concat(searchParams.get("coursesId"), "/exercise/").concat(searchParams.get("exercisesId"), "/detail");
|
|
|
return _context16.abrupt("return");
|
|
|
case 18:
|
|
|
if (rs.status === 1) {
|
|
|
getGameStatus = /*#__PURE__*/function () {
|
|
|
var _ref5 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee15(intervalTime, finalTime, count) {
|
|
|
var _taskData$challenge2;
|
|
|
var excuteTime, source, ds, status, running_code_message, port, web_route, playUrl, isWeb, isOk, isPicture, isShowEvalResult, payload;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee15$(_context15) {
|
|
|
while (1) switch (_context15.prev = _context15.next) {
|
|
|
case 0:
|
|
|
excuteTime = count++ * intervalTime;
|
|
|
if (excuteTime / 1000 > finalTime) {
|
|
|
time_out = true;
|
|
|
}
|
|
|
_context15.next = 4;
|
|
|
return getCodeGameStatus(taskId, {
|
|
|
resubmit: resubmit,
|
|
|
time_out: time_out,
|
|
|
port: rs.port,
|
|
|
sec_key: sec_key,
|
|
|
challenge_id: taskData === null || taskData === void 0 ? void 0 : (_taskData$challenge2 = taskData.challenge) === null || _taskData$challenge2 === void 0 ? void 0 : _taskData$challenge2.id,
|
|
|
subject_id: query.subject_id || ''
|
|
|
});
|
|
|
case 4:
|
|
|
source = _context15.sent;
|
|
|
ds = source;
|
|
|
status = ds.status, running_code_message = ds.running_code_message, port = ds.port, web_route = ds.web_route;
|
|
|
dispatch({
|
|
|
type: SET_EVALUATE_MESSAGE,
|
|
|
payload: running_code_message
|
|
|
});
|
|
|
if (+status > -1 || excuteTime / 1000 > finalTime) {
|
|
|
//第一次通关
|
|
|
if (game.status !== 2 && status === 2) {
|
|
|
taskData['game'].status = 2;
|
|
|
taskData['user']['grade'] += ds.gold;
|
|
|
mediator/* default.publish */.Z.publish('update-cost-time');
|
|
|
}
|
|
|
taskData['test_sets'] = ds.test_sets || [];
|
|
|
taskData['last_compile_output'] = ds.last_compile_output;
|
|
|
taskData['test_sets_count'] = ds.test_sets_count;
|
|
|
taskData['sets_error_count'] = ds.sets_error_count;
|
|
|
taskData['record_consume_time'] = ds.record_consume_time;
|
|
|
taskData['next_game'] = ds.next_game;
|
|
|
taskData['prev_game'] = ds.prev_game;
|
|
|
playUrl = '';
|
|
|
isWeb = mirror_name.indexOf('Web') !== -1 || mirror_name.indexOf('JFinal') !== -1;
|
|
|
if (isWeb && port != -1 && web_route) {
|
|
|
playUrl = "".concat(tomcat_url, ":").concat(port, "/").concat(web_route);
|
|
|
}
|
|
|
isOk = isCompileOk(ds.test_sets);
|
|
|
isPicture = ds.picture > 0 && isOk;
|
|
|
isShowEvalResult = status === 2 && !time_out;
|
|
|
if (time_out) {
|
|
|
message/* default.info */.ZP.info('本次评测超时');
|
|
|
} else {
|
|
|
if (!isShowEvalResult) {
|
|
|
message/* default.info */.ZP.info('评测未通过,详情参见“测试结果”');
|
|
|
}
|
|
|
}
|
|
|
payload = {
|
|
|
taskData: taskData,
|
|
|
evalData: {
|
|
|
gold: ds.gold,
|
|
|
experience: ds.experience,
|
|
|
next_game: ds.next_game,
|
|
|
next_shixun: ds.next_shixun
|
|
|
// had_done: ds.had_done,
|
|
|
},
|
|
|
|
|
|
evaluateLoading: false,
|
|
|
evaluateMessage: '',
|
|
|
webDisplayUrl: playUrl,
|
|
|
showPictureView: unity_3d_routes || challenge !== null && challenge !== void 0 && challenge.thiry_party ? false : isPicture,
|
|
|
isPictureView: isPicture
|
|
|
};
|
|
|
if (unity_3d_routes && with_code_file || challenge !== null && challenge !== void 0 && challenge.thiry_party) {
|
|
|
//* 新需求
|
|
|
mediator/* default.publish */.Z.publish('evaluate-unity3d-result', {
|
|
|
state: 'user',
|
|
|
data: {
|
|
|
user: user
|
|
|
}
|
|
|
});
|
|
|
mediator/* default.publish */.Z.publish('evaluate-unity3d-finish');
|
|
|
//*评测结果由unity3d给出, 在评测时需要格外等待unity3d给出的消息
|
|
|
if (unity_3d_result) {
|
|
|
mediator/* default.publish */.Z.publish('evaluate-unity3d-result', ds.unity_3d_result);
|
|
|
} else {
|
|
|
if (isOk) {
|
|
|
mediator/* default.publish */.Z.publish('evaluate-unity3d-result', ds.unity_3d_result);
|
|
|
}
|
|
|
}
|
|
|
} else {
|
|
|
payload['showEvalResult'] = isShowEvalResult;
|
|
|
}
|
|
|
dispatch({
|
|
|
type: UPDATE_TASK_DATA,
|
|
|
payload: payload
|
|
|
});
|
|
|
//*评测完成后有10秒倒计时
|
|
|
mediator/* default.publish */.Z.publish('eval-code-finish');
|
|
|
} else {
|
|
|
setTimeout(function () {
|
|
|
getGameStatus(intervalTime, challenge.exec_time + 11, count++);
|
|
|
}, intervalTime);
|
|
|
}
|
|
|
case 9:
|
|
|
case "end":
|
|
|
return _context15.stop();
|
|
|
}
|
|
|
}, _callee15);
|
|
|
}));
|
|
|
return function getGameStatus(_x10, _x11, _x12) {
|
|
|
return _ref5.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
count = 1;
|
|
|
intervalTime = 1000;
|
|
|
time_out = false;
|
|
|
getGameStatus(intervalTime, challenge.exec_time + 11, count++);
|
|
|
//* 前端检查评测结果的总时间为关卡设置的评测时长限制 +10s+1s(时间差)
|
|
|
// let timerId = setInterval(() => {
|
|
|
// getGameStatus(
|
|
|
// intervalTime,
|
|
|
// challenge.exec_time + 11,
|
|
|
// count++,
|
|
|
// timerId,
|
|
|
// );
|
|
|
// }, intervalTime);
|
|
|
}
|
|
|
return _context16.abrupt("return", res);
|
|
|
case 22:
|
|
|
_context16.prev = 22;
|
|
|
_context16.t0 = _context16["catch"](0);
|
|
|
console.log('-------eval code', _context16.t0);
|
|
|
case 25:
|
|
|
case "end":
|
|
|
return _context16.stop();
|
|
|
}
|
|
|
}, _callee16, null, [[0, 22]]);
|
|
|
}));
|
|
|
return _onEvalCode.apply(this, arguments);
|
|
|
}
|
|
|
function onEditRepCode(value) {
|
|
|
dispatch({
|
|
|
type: EDIT_REP_CODE,
|
|
|
payload: {
|
|
|
content: value,
|
|
|
lastedUpdateTime: new Date().getTime()
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
function onCloseResult() {
|
|
|
dispatch({
|
|
|
type: HIDE_EVALUATE_RESULT
|
|
|
});
|
|
|
}
|
|
|
function onHidePictureView() {
|
|
|
dispatch({
|
|
|
type: HIDE_PICTURE_VIEW
|
|
|
});
|
|
|
}
|
|
|
function onShowPictureView() {
|
|
|
dispatch({
|
|
|
type: SHOW_PICTURE_VIEW
|
|
|
});
|
|
|
}
|
|
|
function onShowNotice() {
|
|
|
dispatch({
|
|
|
type: SHOW_NOTICE
|
|
|
});
|
|
|
}
|
|
|
function onSelectRepo(_x5, _x6) {
|
|
|
return _onSelectRepo.apply(this, arguments);
|
|
|
}
|
|
|
function _onSelectRepo() {
|
|
|
_onSelectRepo = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee17(selectedKeys, event) {
|
|
|
var node, path, suf;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee17$(_context17) {
|
|
|
while (1) switch (_context17.prev = _context17.next) {
|
|
|
case 0:
|
|
|
node = event.node;
|
|
|
if (!node.isLeaf) {
|
|
|
_context17.next = 7;
|
|
|
break;
|
|
|
}
|
|
|
path = selectedKeys[0];
|
|
|
suf = path.split('.').pop().toLowerCase(); // if (BADSUFS.indexOf(suf) >= 0) {
|
|
|
// message.info(`不支持加载${suf}类型的文件。`);
|
|
|
// return;
|
|
|
// } else {
|
|
|
_context17.next = 6;
|
|
|
return onUpdateCode();
|
|
|
case 6:
|
|
|
dispatch({
|
|
|
type: EDIT_REP_CODE,
|
|
|
payload: {
|
|
|
currentPath: path
|
|
|
}
|
|
|
});
|
|
|
// }
|
|
|
case 7:
|
|
|
case "end":
|
|
|
return _context17.stop();
|
|
|
}
|
|
|
}, _callee17);
|
|
|
}));
|
|
|
return _onSelectRepo.apply(this, arguments);
|
|
|
}
|
|
|
function onChangePath(_x7) {
|
|
|
return _onChangePath.apply(this, arguments);
|
|
|
}
|
|
|
function _onChangePath() {
|
|
|
_onChangePath = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee18(value) {
|
|
|
return regeneratorRuntime_default()().wrap(function _callee18$(_context18) {
|
|
|
while (1) switch (_context18.prev = _context18.next) {
|
|
|
case 0:
|
|
|
_context18.next = 2;
|
|
|
return onUpdateCode();
|
|
|
case 2:
|
|
|
dispatch({
|
|
|
type: EDIT_REP_CODE,
|
|
|
payload: {
|
|
|
currentPath: value
|
|
|
}
|
|
|
});
|
|
|
case 3:
|
|
|
case "end":
|
|
|
return _context18.stop();
|
|
|
}
|
|
|
}, _callee18);
|
|
|
}));
|
|
|
return _onChangePath.apply(this, arguments);
|
|
|
}
|
|
|
function onNextCallback() {
|
|
|
taskData['myshixun'].system_tip = true;
|
|
|
dispatch({
|
|
|
type: UPDATE_TASK_DATA,
|
|
|
payload: {
|
|
|
taskData: taskData,
|
|
|
showNotice: false
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
function onUpdateCallback(newPath, timestamp) {
|
|
|
taskData['challenge'].path = newPath;
|
|
|
taskData['myshixun'].system_tip = false;
|
|
|
dispatch({
|
|
|
type: UPDATE_TASK_DATA,
|
|
|
payload: {
|
|
|
taskData: objectSpread2_default()(objectSpread2_default()({}, taskData), {}, {
|
|
|
tpm_cases_modified: false,
|
|
|
tpm_modified: false,
|
|
|
tpm_script_modified: false
|
|
|
}),
|
|
|
showNotice: false,
|
|
|
timestamp: timestamp
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
function onUpdateFailure() {
|
|
|
dispatch({
|
|
|
type: HIDE_NOTICE
|
|
|
});
|
|
|
}
|
|
|
function onResetVnc() {
|
|
|
return _onResetVnc.apply(this, arguments);
|
|
|
}
|
|
|
function _onResetVnc() {
|
|
|
_onResetVnc = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee19() {
|
|
|
var response, new_vnc_url;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee19$(_context19) {
|
|
|
while (1) switch (_context19.prev = _context19.next) {
|
|
|
case 0:
|
|
|
_context19.prev = 0;
|
|
|
dispatch({
|
|
|
type: SET_VNC_LOADING,
|
|
|
payload: true
|
|
|
});
|
|
|
mediator/* default.publish */.Z.publish('vnc-reseting');
|
|
|
_context19.next = 5;
|
|
|
return resetVnc(_params.taskId);
|
|
|
case 5:
|
|
|
response = _context19.sent;
|
|
|
new_vnc_url = response.vnc_url;
|
|
|
taskData['vnc_url'] = new_vnc_url + '×tamp=' + new Date().getTime();
|
|
|
mediator/* default.publish */.Z.publish('vnc-reseting-done', response);
|
|
|
dispatch({
|
|
|
type: UPDATE_TASK_DATA,
|
|
|
payload: {
|
|
|
taskData: taskData,
|
|
|
resetVncLoading: false
|
|
|
}
|
|
|
});
|
|
|
_context19.next = 15;
|
|
|
break;
|
|
|
case 12:
|
|
|
_context19.prev = 12;
|
|
|
_context19.t0 = _context19["catch"](0);
|
|
|
console.log(_context19.t0);
|
|
|
case 15:
|
|
|
case "end":
|
|
|
return _context19.stop();
|
|
|
}
|
|
|
}, _callee19, null, [[0, 12]]);
|
|
|
}));
|
|
|
return _onResetVnc.apply(this, arguments);
|
|
|
}
|
|
|
function onGetUnity3dMessage(_x8) {
|
|
|
return _onGetUnity3dMessage.apply(this, arguments);
|
|
|
} //代码评测后回调
|
|
|
function _onGetUnity3dMessage() {
|
|
|
_onGetUnity3dMessage = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee20(mes) {
|
|
|
var GameState, Data, challenge, response, status, data;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee20$(_context20) {
|
|
|
while (1) switch (_context20.prev = _context20.next) {
|
|
|
case 0:
|
|
|
GameState = mes.GameState, Data = mes.Data, challenge = mes.challenge;
|
|
|
console.log('match:', match);
|
|
|
if (!(challenge === 'info')) {
|
|
|
_context20.next = 6;
|
|
|
break;
|
|
|
}
|
|
|
mediator/* default.publish */.Z.publish('evaluate-unity3d-result', {
|
|
|
state: '3d_callback',
|
|
|
data: {
|
|
|
challenge_info: objectSpread2_default()({}, taskData.challenge)
|
|
|
}
|
|
|
});
|
|
|
//taskData.challenge
|
|
|
_context20.next = 16;
|
|
|
break;
|
|
|
case 6:
|
|
|
if (!(GameState === 'Success')) {
|
|
|
_context20.next = 16;
|
|
|
break;
|
|
|
}
|
|
|
if (!(unity_3d_result || !with_code_file)) {
|
|
|
_context20.next = 15;
|
|
|
break;
|
|
|
}
|
|
|
_context20.next = 10;
|
|
|
return setUnity3dStatus(taskId, base64.Base64.encode(taskId + new Date().getTime()), Data);
|
|
|
case 10:
|
|
|
response = _context20.sent;
|
|
|
status = response.status, data = response.data;
|
|
|
if (status == 0) {
|
|
|
if (game.status !== 2) {
|
|
|
taskData['game'].status = 2;
|
|
|
taskData['user']['grade'] += data.gold;
|
|
|
mediator/* default.publish */.Z.publish('update-cost-time');
|
|
|
}
|
|
|
//* 新需求,无代码评测通关需要发送用户和通关时间信息
|
|
|
mediator/* default.publish */.Z.publish('evaluate-unity3d-result', {
|
|
|
state: 'userAndtime',
|
|
|
data: {
|
|
|
user: user,
|
|
|
open_time: data.open_time,
|
|
|
end_time: data.end_time
|
|
|
}
|
|
|
});
|
|
|
dispatch({
|
|
|
type: UPDATE_TASK_DATA,
|
|
|
payload: {
|
|
|
taskData: taskData,
|
|
|
evalData: {
|
|
|
gold: data.gold,
|
|
|
experience: data.experience,
|
|
|
next_game: data.next_game
|
|
|
// had_done: data.had_done,
|
|
|
},
|
|
|
|
|
|
evaluateLoading: false,
|
|
|
showEvalResult: true
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
_context20.next = 16;
|
|
|
break;
|
|
|
case 15:
|
|
|
dispatch({
|
|
|
type: SHOW_EVALUATE_RESULT
|
|
|
});
|
|
|
case 16:
|
|
|
case "end":
|
|
|
return _context20.stop();
|
|
|
}
|
|
|
}, _callee20);
|
|
|
}));
|
|
|
return _onGetUnity3dMessage.apply(this, arguments);
|
|
|
}
|
|
|
function onEvaluateCallback() {}
|
|
|
function onAddVncTime() {
|
|
|
return _onAddVncTime.apply(this, arguments);
|
|
|
}
|
|
|
function _onAddVncTime() {
|
|
|
_onAddVncTime = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee21() {
|
|
|
var _res, _res$data, _res3;
|
|
|
var res, _res2;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee21$(_context21) {
|
|
|
while (1) switch (_context21.prev = _context21.next) {
|
|
|
case 0:
|
|
|
_context21.next = 2;
|
|
|
return addVncTime(taskId);
|
|
|
case 2:
|
|
|
res = _context21.sent;
|
|
|
// }
|
|
|
if ((_res = res) !== null && _res !== void 0 && (_res$data = _res.data) !== null && _res$data !== void 0 && _res$data.remaining_time) {
|
|
|
mediator/* default.publish */.Z.publish('update-windows-time', (_res2 = res) === null || _res2 === void 0 ? void 0 : _res2.data);
|
|
|
}
|
|
|
return _context21.abrupt("return", (_res3 = res) === null || _res3 === void 0 ? void 0 : _res3.data);
|
|
|
case 5:
|
|
|
case "end":
|
|
|
return _context21.stop();
|
|
|
}
|
|
|
}, _callee21);
|
|
|
}));
|
|
|
return _onAddVncTime.apply(this, arguments);
|
|
|
}
|
|
|
var leftPanelWidth = '80px';
|
|
|
var rightPanelWidth = "calc(100vw - 4px - ".concat(leftPanelWidth, ")");
|
|
|
var leftPanelOption = (_leftPanelOption = {
|
|
|
game: game,
|
|
|
taskId: taskId,
|
|
|
user_praise: user_praise,
|
|
|
praise_count: praise_count,
|
|
|
st: st,
|
|
|
challenge: challenge,
|
|
|
rank_name: taskData.rank_name,
|
|
|
shixun: shixun,
|
|
|
is_teacher: is_teacher,
|
|
|
has_answer: has_answer,
|
|
|
unity_3d_routes: unity_3d_routes,
|
|
|
with_code_file: with_code_file,
|
|
|
onEvaluateCallback: onEvaluateCallback,
|
|
|
onGetUnity3dMessage: onGetUnity3dMessage
|
|
|
}, defineProperty_default()(_leftPanelOption, "taskId", taskId), defineProperty_default()(_leftPanelOption, "myshixun", myshixun), defineProperty_default()(_leftPanelOption, "user", user), defineProperty_default()(_leftPanelOption, "discusses_count", discusses_count), defineProperty_default()(_leftPanelOption, "onPlusOrCancelPraise", onPlusOrCancelPraise), defineProperty_default()(_leftPanelOption, "minuxUserGrade", minuxUserGrade), defineProperty_default()(_leftPanelOption, "taskData", taskData), _leftPanelOption);
|
|
|
var noticeOption = {
|
|
|
showNotice: showNotice || (tpm_cases_modified || isUpdateScript) && myshixun.system_tip === false,
|
|
|
tpm_cases_modified: tpm_cases_modified,
|
|
|
tpm_modified: tpm_modified,
|
|
|
tpm_script_modified: tpm_script_modified,
|
|
|
st: st,
|
|
|
taskId: taskId,
|
|
|
myshixunId: (myshixun || {}).id,
|
|
|
onNextCallback: onNextCallback,
|
|
|
onUpdateCallback: onUpdateCallback,
|
|
|
onUpdateFailure: onUpdateFailure
|
|
|
};
|
|
|
var evaluateResultOption = objectSpread2_default()(objectSpread2_default()({}, evalData), {}, {
|
|
|
isPictureView: isPictureView,
|
|
|
history: history,
|
|
|
webDisplayUrl: webDisplayUrl,
|
|
|
onShowPictureView: onShowPictureView,
|
|
|
star: game && game.star,
|
|
|
onStarChange: onSaveTaskStar,
|
|
|
onCloseResult: onCloseResult
|
|
|
});
|
|
|
var repositoryOption = {
|
|
|
lastedGetTaskInfoTime: lastedGetTaskInfoTime,
|
|
|
isEditPath: isEditPath,
|
|
|
taskData: taskData,
|
|
|
codeRepData: codeRepData,
|
|
|
moveY: moveY,
|
|
|
evaluateMessage: evaluateMessage,
|
|
|
evaluateLoading: evaluateLoading,
|
|
|
isNotice: isNotice,
|
|
|
isHtml: isHtml,
|
|
|
onChangePath: onChangePath,
|
|
|
onResizeSetContainer: onResizeSetContainer,
|
|
|
onEditRepCode: onEditRepCode,
|
|
|
onUpdateCode: onUpdateCode,
|
|
|
onResizeYStart: onResizeYStart,
|
|
|
onShowDir: onShowDir,
|
|
|
onResetCode: onResetCode,
|
|
|
onResetGitCode: onResetGitCode,
|
|
|
onResizeCodeArea: onResizeCodeArea,
|
|
|
onResetPassedCode: onResetPassedCode,
|
|
|
onFinishDisplayHtml: onFinishDisplayHtml,
|
|
|
onShowNotice: onShowNotice
|
|
|
};
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(react.Fragment, {
|
|
|
children: !loading ? /*#__PURE__*/(0,jsx_runtime.jsxs)(react.Fragment, {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: "task-wrapper",
|
|
|
children: [showDragMask && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: "draging-mask"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(header, {
|
|
|
difficulty: challenge === null || challenge === void 0 ? void 0 : challenge.difficulty,
|
|
|
mirror_description: mirror_description,
|
|
|
history: history,
|
|
|
git_url: git_url,
|
|
|
shixun: shixun,
|
|
|
taskData: taskData,
|
|
|
lastedGetTaskInfoTime: lastedGetTaskInfoTime,
|
|
|
onAddVncTime: onAddVncTime,
|
|
|
taskId: taskId,
|
|
|
isNotice: isNotice,
|
|
|
resetVncLoading: resetVncLoading,
|
|
|
onResetVnc: onResetVnc,
|
|
|
onResetGitCode: onResetGitCode,
|
|
|
vnc_url: vnc_url,
|
|
|
linux_vnc: taskData === null || taskData === void 0 ? void 0 : taskData.linux_vnc,
|
|
|
window_vnc_url: (taskData === null || taskData === void 0 ? void 0 : taskData.windows_vnc) || (taskData === null || taskData === void 0 ? void 0 : taskData.virtual_machine),
|
|
|
remaining_time: taskData === null || taskData === void 0 ? void 0 : taskData.remaining_time,
|
|
|
onShowNotice: onShowNotice,
|
|
|
game: game,
|
|
|
user: user,
|
|
|
st: st,
|
|
|
onUpdateCode: onUpdateCode,
|
|
|
onUpdateCostTime: onUpdateCostTime,
|
|
|
unity_3d_routes: unity_3d_routes && !with_code_file || (challenge === null || challenge === void 0 ? void 0 : challenge.thiry_party)
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: "tasks-body2",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("section", {
|
|
|
className: "left-panel",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("ul", {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("li", {
|
|
|
onClick: function onClick() {
|
|
|
return setShowTab(1);
|
|
|
},
|
|
|
className: showTab == 1 ? 'on' : '',
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "iconfont icon-huanjing"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
children: "\u73AF\u5883"
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("li", {
|
|
|
onClick: function onClick() {
|
|
|
return setShowTab(2);
|
|
|
},
|
|
|
className: showTab == 2 ? 'on' : '',
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "iconfont icon-shujuwajue"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
children: "\u6570\u636E\u96C6"
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("li", {
|
|
|
onClick: function onClick() {
|
|
|
return setShowTab(3);
|
|
|
},
|
|
|
className: showTab == 3 ? 'on' : '',
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "iconfont icon-a-chengyuan1"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
children: "\u5408\u4F5C\u8005"
|
|
|
})]
|
|
|
})]
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("section", {
|
|
|
id: "task-right-panel",
|
|
|
className: "right-panel ".concat(vnc_url || taskData !== null && taskData !== void 0 && taskData.windows_vnc || taskData !== null && taskData !== void 0 && taskData.linux_vnc || taskData !== null && taskData !== void 0 && taskData.virtual_machine ? 'vnc' : ''),
|
|
|
style: {
|
|
|
width: rightPanelWidth,
|
|
|
minWidth: '500px'
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
style: {
|
|
|
height: '100%'
|
|
|
// , overflow: 'auto'
|
|
|
},
|
|
|
|
|
|
className: showTab === 1 ? '' : 'hide',
|
|
|
children: [taskData.mirror_type === 'webssh' && /*#__PURE__*/(0,jsx_runtime.jsx)(xterm_panel, {
|
|
|
sshConfigData: taskData || {},
|
|
|
sid: 1
|
|
|
}), taskData.mirror_type === 'graph' && /*#__PURE__*/(0,jsx_runtime.jsx)(vnc_view, {
|
|
|
taskData: taskData,
|
|
|
evaluateMessage: evaluateMessage,
|
|
|
language: language,
|
|
|
evaluateLoading: evaluateLoading,
|
|
|
onEval: props.onEvalCode
|
|
|
}), (taskData.mirror_type === 'jupyterlab' || taskData.mirror_type === 'jupyternotebook') && /*#__PURE__*/(0,jsx_runtime.jsx)(Jupyter, {
|
|
|
taskData: taskData,
|
|
|
evaluateMessage: evaluateMessage,
|
|
|
language: language,
|
|
|
evaluateLoading: evaluateLoading,
|
|
|
onEval: props.onEvalCode
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: showTab === 2 ? 'data_env_lists' : 'hide',
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: "data_header",
|
|
|
children: ["\u6570\u636E\u96C6 \uFF08", datas === null || datas === void 0 ? void 0 : datas.data_count, "\uFF09"]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
style: {
|
|
|
padding: 20
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(DataSetPane/* default */.Z, {
|
|
|
detail: datas
|
|
|
})
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: showTab === 3 ? 'data_env_lists' : 'hide',
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(Collaborate/* default */.Z, {})
|
|
|
})
|
|
|
})]
|
|
|
})]
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(modal/* default */.Z, {
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(drawer/* default */.Z, {
|
|
|
rootClassName: "setting-drawer",
|
|
|
title: null,
|
|
|
placement: "right",
|
|
|
width: 400,
|
|
|
closable: false,
|
|
|
open: showDocuments,
|
|
|
onClose: onHideDocuments,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(DirectoryTree, {
|
|
|
className: "dir-tree",
|
|
|
selectedKeys: ["".concat(currentPath)],
|
|
|
treeData: repos,
|
|
|
onSelect: onSelectRepo,
|
|
|
loadData: onLoadTreeData
|
|
|
})
|
|
|
})
|
|
|
})]
|
|
|
}) : /*#__PURE__*/(0,jsx_runtime.jsx)(Spinner/* default */.Z, {
|
|
|
message: "\u52AA\u529B\u8BF7\u6C42\u6570\u636E\u4E2D..",
|
|
|
className: "tpi-spin"
|
|
|
})
|
|
|
});
|
|
|
});
|
|
|
function UnLockTestTip(_ref6) {
|
|
|
var is_teacher = _ref6.is_teacher,
|
|
|
score = _ref6.score;
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(react.Fragment, {
|
|
|
children: is_teacher ? /*#__PURE__*/(0,jsx_runtime.jsxs)(react.Fragment, {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
children: "\u5DF2\u7ECF\u8FC7\u804C\u4E1A\u8BA4\u8BC1\u7684\u6559\u5E08\u53EF\u4EE5\u514D\u91D1\u5E01\u67E5\u770B\u9690\u85CF\u6D4B\u8BD5\u96C6\u3002"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
children: "\u89E3\u9501\u672C\u5173\u6240\u6709\u6D4B\u8BD5\u96C6\u9700\u8981\u6263\u9664".concat(score * 2, "\u91D1\u5E01\uFF0C\u786E\u5B9A\u8981\u89E3\u9501\u5417\uFF1F")
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
|
|
|
href: "/account/certification",
|
|
|
"class": "to-certification-link",
|
|
|
target: "_blank",
|
|
|
children: "\u7ACB\u5373\u8BA4\u8BC1"
|
|
|
})]
|
|
|
}) : /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
children: "\u89E3\u9501\u672C\u5173\u6240\u6709\u6D4B\u8BD5\u96C6\u9700\u8981\u6263\u9664".concat(score * 2, "\u91D1\u5E01\uFF0C\u786E\u5B9A\u8981\u89E3\u9501\u5417\uFF1F")
|
|
|
})
|
|
|
});
|
|
|
}
|
|
|
function ResizeIcon(_ref7) {
|
|
|
var noDragging = _ref7.noDragging,
|
|
|
moveX = _ref7.moveX,
|
|
|
vnc_url = _ref7.vnc_url;
|
|
|
return /*#__PURE__*/_jsx(Fragment, {
|
|
|
children: noDragging ? /*#__PURE__*/_jsx("a", {
|
|
|
className: "trapezoid ".concat(moveX === 0.01 ? 'enlarge' : ''),
|
|
|
children: /*#__PURE__*/_jsx("img", {
|
|
|
src: moveX === 0.01 ? resizeEnlargeUrl : resizeSmallUrl,
|
|
|
alt: "resize-icon",
|
|
|
width: 20
|
|
|
})
|
|
|
}) : /*#__PURE__*/_jsx("a", {
|
|
|
className: "btn-resize",
|
|
|
draggable: false,
|
|
|
children: /*#__PURE__*/_jsx("svg", {
|
|
|
width: "16",
|
|
|
height: "13",
|
|
|
viewBox: "0 0 16 13",
|
|
|
draggable: false,
|
|
|
children: /*#__PURE__*/_jsx("path", {
|
|
|
draggable: false,
|
|
|
d: "M12.245 7.53H5.647v1.882h6.598v2.823L16 8.471l-3.755-3.765V7.53zM10.353 4.706H3.755v2.823L0 3.765 3.755 0v2.824h6.598v1.882z"
|
|
|
})
|
|
|
})
|
|
|
})
|
|
|
});
|
|
|
}
|
|
|
|
|
|
/***/ }),
|
|
|
|
|
|
/***/ 39507:
|
|
|
/*!**************************************************!*\
|
|
|
!*** ./src/pages/MoopCases/FormPanel/service.ts ***!
|
|
|
\**************************************************/
|
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
|
/* harmony export */ "$J": function() { return /* binding */ getMoopCase; },
|
|
|
/* harmony export */ "JZ": function() { return /* binding */ removeAttachment; },
|
|
|
/* harmony export */ "bN": function() { return /* binding */ updateMoopCase; },
|
|
|
/* harmony export */ "jP": function() { return /* binding */ addMoopCase; },
|
|
|
/* harmony export */ "rO": function() { return /* binding */ getLibraryTags; }
|
|
|
/* harmony export */ });
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/regeneratorRuntime.js */ 17061);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0__);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/asyncToGenerator.js */ 17156);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_1__);
|
|
|
/* harmony import */ var _utils_fetch__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/utils/fetch */ 84519);
|
|
|
|
|
|
|
|
|
|
|
|
function getMoopCase(id) {
|
|
|
return (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_2__/* .get */ .U2)("libraries/".concat(id, ".json"));
|
|
|
}
|
|
|
function getLibraryTags() {
|
|
|
return (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_2__/* .get */ .U2)('library_tags.json');
|
|
|
}
|
|
|
function removeAttachment(_x) {
|
|
|
return _removeAttachment.apply(this, arguments);
|
|
|
}
|
|
|
function _removeAttachment() {
|
|
|
_removeAttachment = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_1___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee(id) {
|
|
|
var response;
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee$(_context) {
|
|
|
while (1) switch (_context.prev = _context.next) {
|
|
|
case 0:
|
|
|
_context.next = 2;
|
|
|
return (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_2__/* .del */ .IV)("attachments/".concat(id, ".json"));
|
|
|
case 2:
|
|
|
response = _context.sent;
|
|
|
return _context.abrupt("return", response.status === 0);
|
|
|
case 4:
|
|
|
case "end":
|
|
|
return _context.stop();
|
|
|
}
|
|
|
}, _callee);
|
|
|
}));
|
|
|
return _removeAttachment.apply(this, arguments);
|
|
|
}
|
|
|
function addMoopCase(params) {
|
|
|
return (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_2__/* .post */ .v_)("libraries.json", params);
|
|
|
}
|
|
|
function updateMoopCase(id, params) {
|
|
|
return (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_2__/* .put */ .gz)("libraries/".concat(id, ".json"), params);
|
|
|
}
|
|
|
|
|
|
/***/ }),
|
|
|
|
|
|
/***/ 33265:
|
|
|
/*!***********************************!*\
|
|
|
!*** ./src/service/innovation.ts ***!
|
|
|
\***********************************/
|
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
|
/* harmony export */ "$L": function() { return /* binding */ createProject; },
|
|
|
/* harmony export */ "M3": function() { return /* binding */ forkProject; },
|
|
|
/* harmony export */ "NV": function() { return /* binding */ editProject; },
|
|
|
/* harmony export */ "T": function() { return /* binding */ getProjectDetail; },
|
|
|
/* harmony export */ "V1": function() { return /* binding */ getMirrorRepos; },
|
|
|
/* harmony export */ "ie": function() { return /* binding */ startEnvironment; },
|
|
|
/* harmony export */ "ln": function() { return /* binding */ getDataSetList; },
|
|
|
/* harmony export */ "pV": function() { return /* binding */ getProjectDataSet; },
|
|
|
/* harmony export */ "th": function() { return /* binding */ deleteProject; }
|
|
|
/* harmony export */ });
|
|
|
/* unused harmony exports getProjectList, removeDataSets */
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/regeneratorRuntime.js */ 17061);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0__);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/asyncToGenerator.js */ 17156);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_1__);
|
|
|
/* harmony import */ var _utils_fetch__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/utils/fetch */ 84519);
|
|
|
|
|
|
|
|
|
|
|
|
//创建项目与编辑项目
|
|
|
|
|
|
function createProject(_x) {
|
|
|
return _createProject.apply(this, arguments);
|
|
|
}
|
|
|
function _createProject() {
|
|
|
_createProject = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_1___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee(params) {
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee$(_context) {
|
|
|
while (1) switch (_context.prev = _context.next) {
|
|
|
case 0:
|
|
|
return _context.abrupt("return", (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .ZP)('/api/sci/projects.json', {
|
|
|
method: 'post',
|
|
|
body: params
|
|
|
}));
|
|
|
case 1:
|
|
|
case "end":
|
|
|
return _context.stop();
|
|
|
}
|
|
|
}, _callee);
|
|
|
}));
|
|
|
return _createProject.apply(this, arguments);
|
|
|
}
|
|
|
function editProject(_x2, _x3) {
|
|
|
return _editProject.apply(this, arguments);
|
|
|
}
|
|
|
function _editProject() {
|
|
|
_editProject = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_1___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee2(params, id) {
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee2$(_context2) {
|
|
|
while (1) switch (_context2.prev = _context2.next) {
|
|
|
case 0:
|
|
|
return _context2.abrupt("return", (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .ZP)("/api/sci/projects/".concat(id, ".json"), {
|
|
|
method: 'put',
|
|
|
body: params
|
|
|
}));
|
|
|
case 1:
|
|
|
case "end":
|
|
|
return _context2.stop();
|
|
|
}
|
|
|
}, _callee2);
|
|
|
}));
|
|
|
return _editProject.apply(this, arguments);
|
|
|
}
|
|
|
function getMirrorRepos(_x4) {
|
|
|
return _getMirrorRepos.apply(this, arguments);
|
|
|
}
|
|
|
|
|
|
//获取项目列表
|
|
|
function _getMirrorRepos() {
|
|
|
_getMirrorRepos = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_1___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee3(params) {
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee3$(_context3) {
|
|
|
while (1) switch (_context3.prev = _context3.next) {
|
|
|
case 0:
|
|
|
return _context3.abrupt("return", (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .ZP)('/api/sci/projects/sci_mirror_repositories.json', {
|
|
|
method: 'get',
|
|
|
params: params
|
|
|
}));
|
|
|
case 1:
|
|
|
case "end":
|
|
|
return _context3.stop();
|
|
|
}
|
|
|
}, _callee3);
|
|
|
}));
|
|
|
return _getMirrorRepos.apply(this, arguments);
|
|
|
}
|
|
|
function getProjectList(_x5) {
|
|
|
return _getProjectList.apply(this, arguments);
|
|
|
}
|
|
|
function _getProjectList() {
|
|
|
_getProjectList = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4(params) {
|
|
|
return _regeneratorRuntime().wrap(function _callee4$(_context4) {
|
|
|
while (1) switch (_context4.prev = _context4.next) {
|
|
|
case 0:
|
|
|
return _context4.abrupt("return", Fetch('/api/sci/projects.json', {
|
|
|
method: 'get',
|
|
|
params: params
|
|
|
}));
|
|
|
case 1:
|
|
|
case "end":
|
|
|
return _context4.stop();
|
|
|
}
|
|
|
}, _callee4);
|
|
|
}));
|
|
|
return _getProjectList.apply(this, arguments);
|
|
|
}
|
|
|
function deleteProject(_x6, _x7) {
|
|
|
return _deleteProject.apply(this, arguments);
|
|
|
}
|
|
|
function _deleteProject() {
|
|
|
_deleteProject = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_1___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee5(id, params) {
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee5$(_context5) {
|
|
|
while (1) switch (_context5.prev = _context5.next) {
|
|
|
case 0:
|
|
|
return _context5.abrupt("return", (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .ZP)("/api/sci/projects/".concat(id, ".json"), {
|
|
|
method: 'delete',
|
|
|
body: params
|
|
|
}));
|
|
|
case 1:
|
|
|
case "end":
|
|
|
return _context5.stop();
|
|
|
}
|
|
|
}, _callee5);
|
|
|
}));
|
|
|
return _deleteProject.apply(this, arguments);
|
|
|
}
|
|
|
function getProjectDetail(_x8) {
|
|
|
return _getProjectDetail.apply(this, arguments);
|
|
|
}
|
|
|
function _getProjectDetail() {
|
|
|
_getProjectDetail = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_1___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee6(id) {
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee6$(_context6) {
|
|
|
while (1) switch (_context6.prev = _context6.next) {
|
|
|
case 0:
|
|
|
return _context6.abrupt("return", (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .ZP)("/api/sci/projects/".concat(id, ".json"), {
|
|
|
method: 'get'
|
|
|
}));
|
|
|
case 1:
|
|
|
case "end":
|
|
|
return _context6.stop();
|
|
|
}
|
|
|
}, _callee6);
|
|
|
}));
|
|
|
return _getProjectDetail.apply(this, arguments);
|
|
|
}
|
|
|
function getDataSetList(_x9) {
|
|
|
return _getDataSetList.apply(this, arguments);
|
|
|
}
|
|
|
function _getDataSetList() {
|
|
|
_getDataSetList = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_1___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee7(params) {
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee7$(_context7) {
|
|
|
while (1) switch (_context7.prev = _context7.next) {
|
|
|
case 0:
|
|
|
return _context7.abrupt("return", (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .ZP)('/api/sci/projects/data_sets.json', {
|
|
|
method: 'get',
|
|
|
params: params
|
|
|
}));
|
|
|
case 1:
|
|
|
case "end":
|
|
|
return _context7.stop();
|
|
|
}
|
|
|
}, _callee7);
|
|
|
}));
|
|
|
return _getDataSetList.apply(this, arguments);
|
|
|
}
|
|
|
function removeDataSets(_x10) {
|
|
|
return _removeDataSets.apply(this, arguments);
|
|
|
}
|
|
|
function _removeDataSets() {
|
|
|
_removeDataSets = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee8(id) {
|
|
|
return _regeneratorRuntime().wrap(function _callee8$(_context8) {
|
|
|
while (1) switch (_context8.prev = _context8.next) {
|
|
|
case 0:
|
|
|
return _context8.abrupt("return", Fetch("/api/sci/projects/".concat(id, "/remove_data_sets.json"), {
|
|
|
method: 'get'
|
|
|
}));
|
|
|
case 1:
|
|
|
case "end":
|
|
|
return _context8.stop();
|
|
|
}
|
|
|
}, _callee8);
|
|
|
}));
|
|
|
return _removeDataSets.apply(this, arguments);
|
|
|
}
|
|
|
function startEnvironment(_x11) {
|
|
|
return _startEnvironment.apply(this, arguments);
|
|
|
}
|
|
|
function _startEnvironment() {
|
|
|
_startEnvironment = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_1___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee9(id) {
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee9$(_context9) {
|
|
|
while (1) switch (_context9.prev = _context9.next) {
|
|
|
case 0:
|
|
|
return _context9.abrupt("return", (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .ZP)("/api/sci/projects/".concat(id, "/start_environment.json"), {
|
|
|
method: 'post'
|
|
|
}));
|
|
|
case 1:
|
|
|
case "end":
|
|
|
return _context9.stop();
|
|
|
}
|
|
|
}, _callee9);
|
|
|
}));
|
|
|
return _startEnvironment.apply(this, arguments);
|
|
|
}
|
|
|
function forkProject(_x12, _x13) {
|
|
|
return _forkProject.apply(this, arguments);
|
|
|
}
|
|
|
function _forkProject() {
|
|
|
_forkProject = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_1___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee10(id, params) {
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee10$(_context10) {
|
|
|
while (1) switch (_context10.prev = _context10.next) {
|
|
|
case 0:
|
|
|
return _context10.abrupt("return", (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .ZP)("/api/sci/projects/".concat(id, "/fork_sci_project.json"), {
|
|
|
method: 'post',
|
|
|
body: params
|
|
|
}));
|
|
|
case 1:
|
|
|
case "end":
|
|
|
return _context10.stop();
|
|
|
}
|
|
|
}, _callee10);
|
|
|
}));
|
|
|
return _forkProject.apply(this, arguments);
|
|
|
}
|
|
|
function getProjectDataSet(_x14, _x15) {
|
|
|
return _getProjectDataSet.apply(this, arguments);
|
|
|
}
|
|
|
function _getProjectDataSet() {
|
|
|
_getProjectDataSet = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_1___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee11(id, params) {
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee11$(_context11) {
|
|
|
while (1) switch (_context11.prev = _context11.next) {
|
|
|
case 0:
|
|
|
return _context11.abrupt("return", (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .ZP)("/api/sci/projects/".concat(id, "/get_data_sets.json"), {
|
|
|
method: 'get',
|
|
|
params: params
|
|
|
}));
|
|
|
case 1:
|
|
|
case "end":
|
|
|
return _context11.stop();
|
|
|
}
|
|
|
}, _callee11);
|
|
|
}));
|
|
|
return _getProjectDataSet.apply(this, arguments);
|
|
|
}
|
|
|
|
|
|
/***/ }),
|
|
|
|
|
|
/***/ 48632:
|
|
|
/*!*****************************!*\
|
|
|
!*** ./src/service/task.ts ***!
|
|
|
\*****************************/
|
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
|
/* harmony export */ "Jd": function() { return /* binding */ rebootEsc; },
|
|
|
/* harmony export */ "a$": function() { return /* binding */ getDataSets; },
|
|
|
/* harmony export */ "dU": function() { return /* binding */ getJupyterData; },
|
|
|
/* harmony export */ "fi": function() { return /* binding */ syncCode; },
|
|
|
/* harmony export */ "m_": function() { return /* binding */ resetWithTPI; },
|
|
|
/* harmony export */ "rB": function() { return /* binding */ activeWithTPI; },
|
|
|
/* harmony export */ "rV": function() { return /* binding */ getInfoWithTPI; },
|
|
|
/* harmony export */ "x4": function() { return /* binding */ getTimeInfoWithTPI; },
|
|
|
/* harmony export */ "zE": function() { return /* binding */ saveWithTPI; }
|
|
|
/* harmony export */ });
|
|
|
/* unused harmony export getLatexFileTree */
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/objectSpread2.js */ 42122);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/regeneratorRuntime.js */ 17061);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1__);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/asyncToGenerator.js */ 17156);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2__);
|
|
|
/* harmony import */ var _utils_fetch__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/utils/fetch */ 84519);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function saveWithTPI(_x) {
|
|
|
return _saveWithTPI.apply(this, arguments);
|
|
|
}
|
|
|
function _saveWithTPI() {
|
|
|
_saveWithTPI = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1___default()().mark(function _callee(params) {
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1___default()().wrap(function _callee$(_context) {
|
|
|
while (1) switch (_context.prev = _context.next) {
|
|
|
case 0:
|
|
|
return _context.abrupt("return", (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .ZP)("/api/jupyters/save_with_tpi.json", {
|
|
|
method: 'Get',
|
|
|
params: params
|
|
|
}));
|
|
|
case 1:
|
|
|
case "end":
|
|
|
return _context.stop();
|
|
|
}
|
|
|
}, _callee);
|
|
|
}));
|
|
|
return _saveWithTPI.apply(this, arguments);
|
|
|
}
|
|
|
function getJupyterData(_x2) {
|
|
|
return _getJupyterData.apply(this, arguments);
|
|
|
}
|
|
|
function _getJupyterData() {
|
|
|
_getJupyterData = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1___default()().mark(function _callee2(params) {
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1___default()().wrap(function _callee2$(_context2) {
|
|
|
while (1) switch (_context2.prev = _context2.next) {
|
|
|
case 0:
|
|
|
return _context2.abrupt("return", (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .ZP)("/api/tasks/".concat(params.identifier, "/jupyter.json"), {
|
|
|
method: 'Get',
|
|
|
params: params
|
|
|
}));
|
|
|
case 1:
|
|
|
case "end":
|
|
|
return _context2.stop();
|
|
|
}
|
|
|
}, _callee2);
|
|
|
}));
|
|
|
return _getJupyterData.apply(this, arguments);
|
|
|
}
|
|
|
function getInfoWithTPI(_x3) {
|
|
|
return _getInfoWithTPI.apply(this, arguments);
|
|
|
}
|
|
|
function _getInfoWithTPI() {
|
|
|
_getInfoWithTPI = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1___default()().mark(function _callee3(params) {
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1___default()().wrap(function _callee3$(_context3) {
|
|
|
while (1) switch (_context3.prev = _context3.next) {
|
|
|
case 0:
|
|
|
return _context3.abrupt("return", (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .ZP)("/api/myshixuns/".concat(params.identifier, "/start.json"), {
|
|
|
method: 'Get',
|
|
|
params: params
|
|
|
}));
|
|
|
case 1:
|
|
|
case "end":
|
|
|
return _context3.stop();
|
|
|
}
|
|
|
}, _callee3);
|
|
|
}));
|
|
|
return _getInfoWithTPI.apply(this, arguments);
|
|
|
}
|
|
|
function getTimeInfoWithTPI(_x4) {
|
|
|
return _getTimeInfoWithTPI.apply(this, arguments);
|
|
|
}
|
|
|
function _getTimeInfoWithTPI() {
|
|
|
_getTimeInfoWithTPI = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1___default()().mark(function _callee4(params) {
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1___default()().wrap(function _callee4$(_context4) {
|
|
|
while (1) switch (_context4.prev = _context4.next) {
|
|
|
case 0:
|
|
|
return _context4.abrupt("return", (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .ZP)("/api/jupyters/timeinfo_with_tpi.json", {
|
|
|
method: 'Get',
|
|
|
params: params
|
|
|
}));
|
|
|
case 1:
|
|
|
case "end":
|
|
|
return _context4.stop();
|
|
|
}
|
|
|
}, _callee4);
|
|
|
}));
|
|
|
return _getTimeInfoWithTPI.apply(this, arguments);
|
|
|
}
|
|
|
function resetWithTPI(_x5) {
|
|
|
return _resetWithTPI.apply(this, arguments);
|
|
|
}
|
|
|
function _resetWithTPI() {
|
|
|
_resetWithTPI = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1___default()().mark(function _callee5(params) {
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1___default()().wrap(function _callee5$(_context5) {
|
|
|
while (1) switch (_context5.prev = _context5.next) {
|
|
|
case 0:
|
|
|
return _context5.abrupt("return", (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .ZP)("/api/myshixuns/".concat(params.identifier, "/reset_pod.json"), {
|
|
|
method: 'Get'
|
|
|
// params
|
|
|
}));
|
|
|
case 1:
|
|
|
case "end":
|
|
|
return _context5.stop();
|
|
|
}
|
|
|
}, _callee5);
|
|
|
}));
|
|
|
return _resetWithTPI.apply(this, arguments);
|
|
|
}
|
|
|
function activeWithTPI(_x6, _x7) {
|
|
|
return _activeWithTPI.apply(this, arguments);
|
|
|
}
|
|
|
function _activeWithTPI() {
|
|
|
_activeWithTPI = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1___default()().mark(function _callee6(id, params) {
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1___default()().wrap(function _callee6$(_context6) {
|
|
|
while (1) switch (_context6.prev = _context6.next) {
|
|
|
case 0:
|
|
|
return _context6.abrupt("return", (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .ZP)("/api/myshixuns/".concat(id, "/active_pod.json"), {
|
|
|
method: 'Get',
|
|
|
params: params
|
|
|
}));
|
|
|
case 1:
|
|
|
case "end":
|
|
|
return _context6.stop();
|
|
|
}
|
|
|
}, _callee6);
|
|
|
}));
|
|
|
return _activeWithTPI.apply(this, arguments);
|
|
|
}
|
|
|
function syncCode(_x8) {
|
|
|
return _syncCode.apply(this, arguments);
|
|
|
}
|
|
|
function _syncCode() {
|
|
|
_syncCode = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1___default()().mark(function _callee7(params) {
|
|
|
var p;
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1___default()().wrap(function _callee7$(_context7) {
|
|
|
while (1) switch (_context7.prev = _context7.next) {
|
|
|
case 0:
|
|
|
p = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, params);
|
|
|
delete p.identifier;
|
|
|
return _context7.abrupt("return", (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .ZP)("/api/myshixuns/".concat(params.identifier, "/sync_code.json"), {
|
|
|
method: 'Post',
|
|
|
body: p
|
|
|
}));
|
|
|
case 3:
|
|
|
case "end":
|
|
|
return _context7.stop();
|
|
|
}
|
|
|
}, _callee7);
|
|
|
}));
|
|
|
return _syncCode.apply(this, arguments);
|
|
|
}
|
|
|
function getDataSets(_x9) {
|
|
|
return _getDataSets.apply(this, arguments);
|
|
|
}
|
|
|
|
|
|
// 重启window 云主机
|
|
|
function _getDataSets() {
|
|
|
_getDataSets = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1___default()().mark(function _callee8(params) {
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1___default()().wrap(function _callee8$(_context8) {
|
|
|
while (1) switch (_context8.prev = _context8.next) {
|
|
|
case 0:
|
|
|
return _context8.abrupt("return", (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .ZP)("/api/shixuns/".concat(params.identifier, "/get_data_sets.json"), {
|
|
|
method: 'Get',
|
|
|
params: params
|
|
|
}));
|
|
|
case 1:
|
|
|
case "end":
|
|
|
return _context8.stop();
|
|
|
}
|
|
|
}, _callee8);
|
|
|
}));
|
|
|
return _getDataSets.apply(this, arguments);
|
|
|
}
|
|
|
function rebootEsc(_x10) {
|
|
|
return _rebootEsc.apply(this, arguments);
|
|
|
}
|
|
|
function _rebootEsc() {
|
|
|
_rebootEsc = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1___default()().mark(function _callee9(params) {
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1___default()().wrap(function _callee9$(_context9) {
|
|
|
while (1) switch (_context9.prev = _context9.next) {
|
|
|
case 0:
|
|
|
return _context9.abrupt("return", (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .ZP)("/api/tasks/".concat(params.identifier, "/reboot_esc.json"), {
|
|
|
method: 'post',
|
|
|
body: params
|
|
|
}));
|
|
|
case 1:
|
|
|
case "end":
|
|
|
return _context9.stop();
|
|
|
}
|
|
|
}, _callee9);
|
|
|
}));
|
|
|
return _rebootEsc.apply(this, arguments);
|
|
|
}
|
|
|
function getLatexFileTree(_x11) {
|
|
|
return _getLatexFileTree.apply(this, arguments);
|
|
|
}
|
|
|
function _getLatexFileTree() {
|
|
|
_getLatexFileTree = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee10(params) {
|
|
|
return _regeneratorRuntime().wrap(function _callee10$(_context10) {
|
|
|
while (1) switch (_context10.prev = _context10.next) {
|
|
|
case 0:
|
|
|
return _context10.abrupt("return", Fetch("/api/tasks/".concat(params.taskId, "/get_latex_file_tree.json"), {
|
|
|
method: 'Get',
|
|
|
params: params
|
|
|
}));
|
|
|
case 1:
|
|
|
case "end":
|
|
|
return _context10.stop();
|
|
|
}
|
|
|
}, _callee10);
|
|
|
}));
|
|
|
return _getLatexFileTree.apply(this, arguments);
|
|
|
}
|
|
|
|
|
|
/***/ }),
|
|
|
|
|
|
/***/ 39132:
|
|
|
/*!************************************************************!*\
|
|
|
!*** ./src/components/ui-customization/reset.less?modules ***!
|
|
|
\************************************************************/
|
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__) {
|
|
|
|
|
|
"use strict";
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
/* harmony default export */ __webpack_exports__["Z"] = ({"flex_box_center":"flex_box_center___vG4eV","flex_space_between":"flex_space_between___qVVxe","flex_box_vertical_center":"flex_box_vertical_center___P8Z8s","flex_box_center_end":"flex_box_center_end___VMme3","flex_box_column":"flex_box_column___VMHwm","dropdownmenus":"dropdownmenus___oVzoj","popupClassNames":"popupClassNames___OcZq7","selectdown":"selectdown___mmcA8"});
|
|
|
|
|
|
/***/ }),
|
|
|
|
|
|
/***/ 12867:
|
|
|
/*!****************************************************!*\
|
|
|
!*** ./src/components/tpi-code-setting/index.less ***!
|
|
|
\****************************************************/
|
|
|
/***/ (function() {
|
|
|
|
|
|
"use strict";
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
|
|
|
/***/ 20640:
|
|
|
/*!*************************************************!*\
|
|
|
!*** ./node_modules/copy-to-clipboard/index.js ***!
|
|
|
\*************************************************/
|
|
|
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
|
|
|
|
|
|
var deselectCurrent = __webpack_require__(/*! toggle-selection */ 11742);
|
|
|
|
|
|
var clipboardToIE11Formatting = {
|
|
|
"text/plain": "Text",
|
|
|
"text/html": "Url",
|
|
|
"default": "Text"
|
|
|
}
|
|
|
|
|
|
var defaultMessage = "Copy to clipboard: #{key}, Enter";
|
|
|
|
|
|
function format(message) {
|
|
|
var copyKey = (/mac os x/i.test(navigator.userAgent) ? "⌘" : "Ctrl") + "+C";
|
|
|
return message.replace(/#{\s*key\s*}/g, copyKey);
|
|
|
}
|
|
|
|
|
|
function copy(text, options) {
|
|
|
var debug,
|
|
|
message,
|
|
|
reselectPrevious,
|
|
|
range,
|
|
|
selection,
|
|
|
mark,
|
|
|
success = false;
|
|
|
if (!options) {
|
|
|
options = {};
|
|
|
}
|
|
|
debug = options.debug || false;
|
|
|
try {
|
|
|
reselectPrevious = deselectCurrent();
|
|
|
|
|
|
range = document.createRange();
|
|
|
selection = document.getSelection();
|
|
|
|
|
|
mark = document.createElement("span");
|
|
|
mark.textContent = text;
|
|
|
// avoid screen readers from reading out loud the text
|
|
|
mark.ariaHidden = "true"
|
|
|
// reset user styles for span element
|
|
|
mark.style.all = "unset";
|
|
|
// prevents scrolling to the end of the page
|
|
|
mark.style.position = "fixed";
|
|
|
mark.style.top = 0;
|
|
|
mark.style.clip = "rect(0, 0, 0, 0)";
|
|
|
// used to preserve spaces and line breaks
|
|
|
mark.style.whiteSpace = "pre";
|
|
|
// do not inherit user-select (it may be `none`)
|
|
|
mark.style.webkitUserSelect = "text";
|
|
|
mark.style.MozUserSelect = "text";
|
|
|
mark.style.msUserSelect = "text";
|
|
|
mark.style.userSelect = "text";
|
|
|
mark.addEventListener("copy", function(e) {
|
|
|
e.stopPropagation();
|
|
|
if (options.format) {
|
|
|
e.preventDefault();
|
|
|
if (typeof e.clipboardData === "undefined") { // IE 11
|
|
|
debug && console.warn("unable to use e.clipboardData");
|
|
|
debug && console.warn("trying IE specific stuff");
|
|
|
window.clipboardData.clearData();
|
|
|
var format = clipboardToIE11Formatting[options.format] || clipboardToIE11Formatting["default"]
|
|
|
window.clipboardData.setData(format, text);
|
|
|
} else { // all other browsers
|
|
|
e.clipboardData.clearData();
|
|
|
e.clipboardData.setData(options.format, text);
|
|
|
}
|
|
|
}
|
|
|
if (options.onCopy) {
|
|
|
e.preventDefault();
|
|
|
options.onCopy(e.clipboardData);
|
|
|
}
|
|
|
});
|
|
|
|
|
|
document.body.appendChild(mark);
|
|
|
|
|
|
range.selectNodeContents(mark);
|
|
|
selection.addRange(range);
|
|
|
|
|
|
var successful = document.execCommand("copy");
|
|
|
if (!successful) {
|
|
|
throw new Error("copy command was unsuccessful");
|
|
|
}
|
|
|
success = true;
|
|
|
} catch (err) {
|
|
|
debug && console.error("unable to copy using execCommand: ", err);
|
|
|
debug && console.warn("trying IE specific stuff");
|
|
|
try {
|
|
|
window.clipboardData.setData(options.format || "text", text);
|
|
|
options.onCopy && options.onCopy(window.clipboardData);
|
|
|
success = true;
|
|
|
} catch (err) {
|
|
|
debug && console.error("unable to copy using clipboardData: ", err);
|
|
|
debug && console.error("falling back to prompt");
|
|
|
message = format("message" in options ? options.message : defaultMessage);
|
|
|
window.prompt(message, text);
|
|
|
}
|
|
|
} finally {
|
|
|
if (selection) {
|
|
|
if (typeof selection.removeRange == "function") {
|
|
|
selection.removeRange(range);
|
|
|
} else {
|
|
|
selection.removeAllRanges();
|
|
|
}
|
|
|
}
|
|
|
|
|
|
if (mark) {
|
|
|
document.body.removeChild(mark);
|
|
|
}
|
|
|
reselectPrevious();
|
|
|
}
|
|
|
|
|
|
return success;
|
|
|
}
|
|
|
|
|
|
module.exports = copy;
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
|
|
|
/***/ 11742:
|
|
|
/*!************************************************!*\
|
|
|
!*** ./node_modules/toggle-selection/index.js ***!
|
|
|
\************************************************/
|
|
|
/***/ (function(module) {
|
|
|
|
|
|
|
|
|
module.exports = function () {
|
|
|
var selection = document.getSelection();
|
|
|
if (!selection.rangeCount) {
|
|
|
return function () {};
|
|
|
}
|
|
|
var active = document.activeElement;
|
|
|
|
|
|
var ranges = [];
|
|
|
for (var i = 0; i < selection.rangeCount; i++) {
|
|
|
ranges.push(selection.getRangeAt(i));
|
|
|
}
|
|
|
|
|
|
switch (active.tagName.toUpperCase()) { // .toUpperCase handles XHTML
|
|
|
case 'INPUT':
|
|
|
case 'TEXTAREA':
|
|
|
active.blur();
|
|
|
break;
|
|
|
|
|
|
default:
|
|
|
active = null;
|
|
|
break;
|
|
|
}
|
|
|
|
|
|
selection.removeAllRanges();
|
|
|
return function () {
|
|
|
selection.type === 'Caret' &&
|
|
|
selection.removeAllRanges();
|
|
|
|
|
|
if (!selection.rangeCount) {
|
|
|
ranges.forEach(function(range) {
|
|
|
selection.addRange(range);
|
|
|
});
|
|
|
}
|
|
|
|
|
|
active &&
|
|
|
active.focus();
|
|
|
};
|
|
|
};
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
|
|
|
/***/ 4977:
|
|
|
/*!********************************************!*\
|
|
|
!*** ./src/assets/images/icons/nodata.png ***!
|
|
|
\********************************************/
|
|
|
/***/ (function(module) {
|
|
|
|
|
|
"use strict";
|
|
|
module.exports = "data:image/png;base64,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";
|
|
|
|
|
|
/***/ }),
|
|
|
|
|
|
/***/ 96908:
|
|
|
/*!**************************************************************************!*\
|
|
|
!*** ./src/components/ui-customization/Cards/ShixunList/img/Jupyter.png ***!
|
|
|
\**************************************************************************/
|
|
|
/***/ (function(module) {
|
|
|
|
|
|
"use strict";
|
|
|
module.exports = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKQAAAA8CAYAAADogBFvAAAAAXNSR0IArs4c6QAADzxJREFUeF7tnQl4VcUVx3/3JSEBARFEFllcQAMJuKDUD7FqtVbFtUqtS6ufS1soxaW1Si0KBaFVWy2ittqqdQ9xpYq4tLgVFWUThYQlJIEkkJXs63u333lzL+/mrfeF9/KSeM/35Xv3zZw5c+bM/83MOTN3ouGQY4EuZAGtC+niqOJYAAeQDgi6lAU0fUayHqCR5gJXEriS/T6TICkZNOMzIN/gFx7/8vvLiFxDtpfP4G2Xb5Ej6SaPKddav6mPtb5g9e/PF9nSvmTVlpD1S36Sr63WOj1ukD/d+PR+b1NpAekmj5Gve8Dd5lc2ivK4G2lzV4K7Eo/8eSrQ3ZW424rw6J/ST1utTb2jtkuhLAplwgDS7BDj09txdgFqgsjCbwVOKMCYAPH+IAzABIDf8qPYz+OygMus0+8HFQDmYDpaypj1mp+m/qKbgMoKQO+zxwIyCzhNPhOIQQFrAas/uK3l5dlt/SEY9bbn0ZsrS1obynfXNJQXFTeUbPugua5utQZrM7PZHgU2EsIaHJAJUcWp1JYFklKgVx/fX0oqpPSBgw6BASOh/xAlxgC+u6WJqh0bqdi2nrb66gI0sjQXL2W8xHpb9XUykwPITjZ43KuTpcnBw2HA4TBwFBw81Dt66+42aoq2U7FjAw0Ve8R52KxpLB6v86KWjTvuetmswAGkTUN1W7aDBsHIieiHjkVDlhpuavbkU7ThE9wtjQLMbTosyFzGc5pGoD/RyQ13ANnJBk9YdSm9YVg6+tB0NC2ZtqZ6dn/1P+rKirwqaRqrknVuSM9mZ8J0FD2CetmJ1MipO74WkPXn0VOg72CvY1ZRuJU9uRvQPW4ZLes0jdszlvG3+CoRWroDyERZPtH1Dk1HH56B5vHQWFvJzrUf42lrUaMlPJ4BMxOxtnQAmWhgJLL+3gPQR5+E1qsPDdXl5G9YjUdipIreGpzGFUOfpb4zVXQA2ZnW7op1paSiH30qWlIqdVWlFGz6Al1ipmqkXH0wnD0ym8bOUt0BZGdZuivXk9IH/ajJaK4Uasr3UJizUQX/Fb2WOZ7LtfniosefHEDG38bdo4bUvuijJqG5XFQU5VOSv22/3hr8NTObWzqjIQ4gO8PK3aWO3v3RR57gHR13blpHQ121FZTTM7N5Od5NcQAZbwt3N/mDjvDu8jQ11rHj6/XoskevqKxXMuOPfZHyeDbJAWQ8rdsdZct2zYjj0VJS2bu7gLLiXdZRMiszmx/Hs1kOIONp3e4qO60/+rBx6O5WdmzeRHOTz8lO0pg2fhkr4tU0B5Dxsmx3lytTd99B1FZVUZC31dqanMzxTNDmsz9gGcumOoCMpTV7kixXEvrwCV4HZ1vuZlqamqytu2VCNn+NR3MdQMbDqj1Epj5wBFqfgVSU7qWkWB3CENKgEhibme39jCklBpCysf/H3aohrY1w64CYNqrLCJOziRJg1hN+qqtjJklJQx88xrudmJuzBY+cVveBcmlmNr/qmODQpRIHyPuKlVYtjXBL/1i3K7HyDh4Gp94IU2+Ee0+A+pgPJJ3WPn3QEWgpvSkpKaaiosJabxsuJk7IYksslXEAGUtrmrIW5sHAkerb7UO6NSBJ6wcDhnvXkFu354HlDK8GKzOzOS+WJnQAGUtrmrIW5atXCHoCIDXwDDwSlyuJvIICGhran7OIdRjIAaQDyIgW0PsNRkvtR2l5OaXlAcuPmIaBuh4gp1wP/QYrI338ODRUBRpM0+Cc36p0OVT6nwd9PIcdAydcqr7nroL8NXDi5TBmKoyepPgL16n0dS+3dzgGjoaTjY0If7n+Wow+GdK/p1Jr9sC+Ihg1SX0X3Xob6+K3F0FLg0r/egUUbWovSRy8SdNh5PEw4jho2Ae71sOuDbDhVaWvP1nbWLIZvvo3TLwQvjtDvdQlaf+eB2Uxeuu1V2/oP4yGhnryCn3etqmWS+PmjGUsiYhsGwxdD5C/WwsjJirV7xkX3KjyPvZSY+poqoXbBvqaetzF8HPjDMAbc2HIWDjlp8FNsfldePIaH+iTU2FxIRxkyHvgu5D3afCyM5dDprF8emuBN4jM6TPDm/zZG+HTf/l4xpwG1z/nXaMFpYIv4fHpUGVEJEwmaxu/eBFyP4Br/t5exMPnwZb3bUDADouGPmiU9+3FnLxC3BZvW0rHMgzUswEpI5O8Q9LaDAVroHgzDE2H0SdB6kGqJyryYdFJ0GicbLnsfjjLOGn1yT/ghRmBPSajmgBXLg+Qwwd3j4WzboXTDV4J95jkPZxghH2e+xl89ozKEVDdlKVu8RAq/lqNikm91Eg++GiVXlsGD52tRr1ggCz+BgaPAXk/20oxBSTo/YagJfdiV8lequuMEd9SnwYxCQP1bECKwerK4ZELQUYbk2RbbNZbMOQYlbJyMSy/Wz3LdDjvG/XcWAN3Hg6t7XYp4IxZ8CNjmSCj7NJp7cEQyamRH8m8zT7H54WZ8MkTPhlyO4ZM+xcvUGkb3oDHLw8OSDP1m3fgw0ehtlSBWUb2ysL2eh3It7T+iMddVV1LUVnQMFZMwkA9H5CPXQqb3gzsChlVBBSyHm2uh7ljFHiFbn4Pjj1DPT/1U5Bp0Uq/XQ1HnKxSnrgC1r8aHSAvnAfn3aXKfPYsPHN9cKiYywIJrC+a5Ft/WqfsSDIOBITWsnJjRr/DaG1pIbewJKjUWISBejYgZTqeOzZ0l9zyPhxzusp/7BLY9JZ6FifjhhfUc85/YckPfDKsI6iMRnNGq3t+rBRphJyzBuQgrNBD34etHwTXcfLVcN3TKu/d++H136lnKyDlx3TXkcGdv1iB0ZTT7zDv0/aiMppaWoNKP9AwUM8G5Fdvwt8MjzuY+ab/Bc40dr+yfw2rDEdRRgMBlXSArAFl9KwyzgVaR7f3HoDX5gRKjgTIh6rV2lZow+uBSwJTojhX489R32QUltHYH5A7P4P7T4s19ILLk2k7JY3SqhpK99WFqvOAwkA9G5Af/R1emhW6s865HS5ZpPJXLYXsW328Fy+EH9yhvi+/B1YafH/YCoceqdLnZUBpu6NZKj0cICVgLvnRkoSCFk8OBOSXy+DJq6OV1jH+5F6Q1p/G5mZ2lAQJxxlSDyQMFHtATpgGR56iVNvyHmz7KLDxstcrXqpQUx3cdoiPJ5ZhnzUvwNPXhjb+tLth2lyV/86f4I3f+3jF8Zmfq+6SLNsB96TDUVPgNx8qHmnXg2cFlx0OkDIyPrhPrV2FJNbqe8MvtK4S3go2Zcv6Vta5nUGicp9B3vuBcooraXMHfxHxQMJAsQfkRQvg3DuVeazeq9Vgo06EOz9XKXu3wvwMX651fbXgeCgxPF5reQlgLzSCvuHikOJpSiwxFF3zBEy5TuU+exN8aqzXTP5fvgkZxvrxz2fC5CvhtJ+p3KevgzXPRw9IKWHd6w41yoYDmH8csrMAKTql9vWGqoqr6qisaw6pZUfDQLEH5Hd+Atc+qRRdmw3/vCpQaStPzn9gybk+nl+8BhMvUN+XXgCb3wksf+1T8J1rVHo4QMoux7xxwcMfElwXUJt7zg+cDnmr29clux+/MDxoGW0zzlVBc9lNmTMy9Nov0hpy1goY/31Vl3/Ix6rB8ZfACT9UKRJe+vw59ZxIQMq0nZJGbUMzBRVhL7XoUBgo9oCUoPMdxu6GBKQXTIByy4VaKWnwm4/VVpnQf5fAy7/2dcP0B+FMY90XbMo9fCLM+UJNpZEAKflfZqndGH8SZ0acGiEJSC82wjhWPokH3pvnA62ZJ/G+rJsDZZop1nWmePni7VvpuIvg56+oFNlynJ8JzX5OgswCd63zbUH+5Xuw/ePEA1KWGvIOt9vNlr21eDyhz3p2JAwUe0CKyWavhHRjfVVXoUAni38x8ik/geHGFC33yMgIZu2wcWfDr972dZ/slnz+PNTuhaNPhUvuVd6vSeFGSPGQBbjrXoH3/gxl22BIOpz0I593LXIevQi+ttRpBc/5c+ECI2hupt8rMcGvQgPSGk6SsFHO+2rPXLxyk2a8DrLeFirdrtaHEryXy0ZlmTD5Kt9uzTcrVXDfpESOkKKD7G3rOruqmqhuCv9qjcvF+RlZhDBuoAnjA0iJ1ckoaR4wCNV1794HrxsBYivPze/CsWcGLyUgWz5XAVMoHCAFiEInXhZcloBkxQKQvehQJFP6wh2+Lb78L+C+KaH5JUeWE7Ks8KdZaeqqZaFDRsCMN3z79qEk7t4IMjo21XQdQLpSvP8QoKaxlcJ9odeRorCmsSVjHBPtvhQWH0CKJtKRVz3mO4BgNXhFgQrHyC8/GMmhUNlTPvWG9rnVJarcphX2DleIByrOxxVL1Mhsxv5EqkyVWbNh4/Lw4JLc2e/4TvbI3raM2pFo6k1wxkwYPNa3z2wFpJSXeOf5v1d751bdJE/WqfJDkeWBf+A90SOkTNtJvdA9bWwpa8ET4RWNaMJA8QOk2WF9DlEHGmS6FhDszVX7rXao76EwdJy6yF2OjJXLieUIFKqzpPMlHCWjdsFadWTMDglQFhVAnwFqi/HOEYHrPTtywvFIBx96FAzPVODbk6PW3XbCQQdad0fLiz11D7urW9nXHP4eqmjCQPEHZEcb3NFysR49JMxz5SNKm9VPgZzYcQjE4ZOzKy1u8qtt3Jmv8fCEZcyOZDoHkJEsNHcjDBuvuO6bCvlG/DRSuW9Dvly74tHZUumOOG3LUWo7L4U5gAwHHHGsxMESkvOKC40DEd8GsEXRxqI6D1VNka+P1ODtzGzOD7t66XGX3sdyypaguATHhbJvg1UPR9FN3x7WxjbYsc/ezSqRwkA9b4QclqE8aiEJeH/5UseQITs5F81X/+tQSPa6g73f0zHpPaqUhMa3VrppDRMkNxscKQzU8wDZo7q6+zSmtFGntN6GcwOECwM5gOw+fd6lNW31QG6lADLytTHhwkAOILt0N3cv5XZWe6gXZNqhEGEgB5B2jOfw2LLAvmad3bX2pu1QYSAHkLZM7TDZsYD4NDn2YpJeccHCQA4g7Vja4bFtgeJ6D5WNNqdtcXD8TgM5gLRtaofRjgWa3LC9yl5M0jtK+p0GcgBpx8oOT1QWyKt209Aa2ds2hbpczM7Iwrvr4AAyKlM7zHYsEKVz0+5uIAeQdizs8Ni2gIyL8icxSbeNnZv9go0wkANI26Z2GKOxwJ56D+VRODdmGMgBZDRWdnhtW6C6WWeX/Zjk/jDQ/wHkSLPJ/mcrgQAAAABJRU5ErkJggg==";
|
|
|
|
|
|
/***/ }),
|
|
|
|
|
|
/***/ 57177:
|
|
|
/*!*****************************************************************************!*\
|
|
|
!*** ./src/components/ui-customization/Cards/ShixunList/img/JupyterLab.png ***!
|
|
|
\*****************************************************************************/
|
|
|
/***/ (function(module) {
|
|
|
|
|
|
"use strict";
|
|
|
module.exports = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAANQAAAA8CAYAAAAeyZT3AAAAAXNSR0IArs4c6QAAEpJJREFUeF7tXQeYFdUV/mcbS1F6UUEsoLC7IGKNJWpERbEgSoxGo7HEQFDRWCAGgdASNBbEhglqsC1rAxVBNGg0qNgLsJRddmFhe3vby3uT7393ZmfeezOv7M57W3LP9/EtM3Pn3DPn3n/uvf85c58CKdID0gOOeUBxTJNUJD0gPQAJKNkJpAcc9EALoNRpCaqt3rh4QIkDvH/jxV/zuZZjrVy8uRzvSzDdrx3HxWnnEnz1eevhOf/79HpNdrAs6wrQr9VvtiMc+/kc0HSan9Nrq8Uzt9hquuZjv8kPev26r8x16X5VPYDHDYT7Vy/L8vo94d7P8u5mcV+w+1U34GEZ7a+5Tg/vV31tbrmu36ff23JcB9VdBo9a5v2rekq14/1wN30GNXGzctPKKgf7eExVKUGBpJsSEkgWYPMHXEuH0sHlB5iW8jrAtE6sd9AW8GidVD9mR/fvxDrAzJ3Yp/ObAGL3srC1XweJnf0awHUQWgGJ52i3P+D9OyOP/QHSAjYT8Lwd3gRGH3Bp5dza34D7LUDsD04vmPzuN9cZGkSAF3xm4JttNoFWdasNlRVNta4SV21l6YHakvyPGurrNivA12kZ2B1TdLSisvAA1QrF8hbpAUsP8EWVkAwkdgMSugHxiUB8EpDcC+g1AOjeG+BciSBWPXA3NaA8Pxel+7LRXF+bCwXpShxeTX0V33ZED0tAdcRW+X+2iaN3j35Ar/7iX/e+XnCpbg9cZfkozctBrauci/9tioIlKSpeUTLg7iguk4DqKC0h7bD2QPJBQP/hUHsNhsIVv+qBq7QI+7O2w93USGDtUoEFaavxoqJ4x7Z2FQmodnW/rDxsD3Ba2PcwqL0PhaLEobmxAXnZmaiuKPOqUBRsSlBx06gM7AlbZxQKSkBFwalSZRQ9kJAEDD4GSD7Yyz6WFu5HQV4uVI+Ho1W1ouCe1NV4OooWBFUtAdVenpf1ts0DfQ6F2mcoOMurq6nCnp2Z8DAMwNEKWJEKTG+PtZUEVNuaVd7dnh5I6gF1wFFQEpJQW+1CTtYueBgeEPLuwGRcNWQVamJpogRULL0t63LeA/GJUAeNhBKXgOpqF3Kzs6Ey3iVGqs29gQnDMlDnfMXWGiWgYuVpWU/0PBCfBHXQ0VCUeLgqK7B3b67I4BDyZloKrlTmQ6AsyiIBFWUHS/Ux8kBCMtT+w70MYGlJMfILCloqVoDH0jIwMxaWSEDFwsuyjth4IKk71D7DGKzCnj05qK0zZnoKMDUtA69F2xAJqGh7WOqPrQeYvtSjL+rr65C1JxeqMfUrTkpAyrGvoCSaBklARdO7UnfsPaAAat/DocTFo7C4FMWlIvBLUYD0tAz8KppGSUBF07tSd/t4ILE71N5DoHrcyMrJQ0NjY4sd8QompazGumgZJgEVLc9Kve3rgZ79gW49UVVdg9wDhWZbMtNSMEaZDxEFdlgkoBx2qFTXQTygxHnz/gAPdu3NR2Njk9mwmWMy8Fg0LJWAioZXpU7DA/0OB479hTguyQZ2/Sdm3lF79IWS2B2llVXILylvqVcBuLAamZbh/euotA+geg0E/ponHqSpDrizj6MP1WGU8WM671eq7fhVweTFwIQ/Cpe8PRfY8NfYuue4y4BbNbb6y1eA534Tu/rjEqEeNAAejxs7cgvg4VfGmijA8rQM3Oa0Me0HqKUHxLM01gEzD3b6udpXX+9DgNNvBs64GVh0PFDj+Isw/Oe7fAlw3t2i/NoHgPVLwr/XiZLtCShGpHr29zJ++aWVKHX5pPU1Iw5jx6RjuxOP2QLUsPaUcLJG6uII1ZUBtTAb6McAI4B7BktAtdcIRf/zM/vkg9HY3IydeQxBGbMFBVifloELnezecoRy0pu6rsU5QJ/DJKDogXYeoWiCp2c/7mWF7MJy1Nb7kBNwmkaXgJKAioYHDJ0dAFBqt55Q4ruhyFWDooqArzkcpdE7HqBOuxE4aKBokE9WALUGO9PSStxc4Px7xWFzI/DhI0YDDjoGOP5ycbxjE5CzBRh/JTDiDGD4CaL83m/E+W9e8yUM+g0HTtIC6f56/bvd8JOAURp75SoAKvYDh58gStG27tq68L3FQGOtOP/TOmD/j76aOP09YSowbBww9DigtgLY9y2w7zvguzeEvf5ifsb8bcAPbwNjLwF+Pg3oPQTgubfnAcW7ASfXUAOOBH52PTB0nKiHn6UXZwFFu4DPVwEFFssRK0BRz7gpwn/0U+7XQM6XwFfpYrsxpyUhEUjqhdqGJmQXVgRoj1NwR+pqLHOi2o4HqD99DQwdK55t7mjRKfyF++4t1xIf66uAu/oZJcwNuGYOMHgkcKoNs7TtfWDltQZoOd9eshfoqel76OdA9mfWfp6+FkjTpt/vLhA79Jw1PXibrLoZ+OwFo8yIM4EbXwT6MF5iIblfASumAuUaI6oX8e+kOz4Crn3GV8HjFwLbP3AOUJfMBybO9m7eYCnuJmDjQ4L4MIu/rR8+Bty2zvCxuezuT4AVVwHVxU70bR8dao8+XsY1c38F3Ca2j4WcpNG7NqA4MiT1AJoagNwtwIFtwJBRwPATvVF0r5TmAItPBOoqxfEVDwLnapn+n/4DeHlaYONyVCHw4hPErqoPjATOvRM4Syvr3RVWE2/jaQvhF38HfP4vcYEd7ZZ0sWsu5cBPYlTiW58j6cCjxfmqYuDRCWLU0cXcSQ9sBQaOEPvcmcVJQF08F7joz4b2sr3iRcOX2eHjxT9dVl4HfPWqta0cnRmX4r58WZ8CRbsD24Mvj8UnOE7kqN16eT/t2FdWjcrawFHfKRq9awOKzVpdAjxxCcC3vS79jwBmvCs2+6CQStbfrJxOzdsqzte5gFmHAU31vp317BnAL7VpJke55ZN8r4ciJQjyedsM4uLl6cCnzxo6uDcdp42XLRDnvlsDrLjSupPqZ7duAD5+EqgqEmBkh2fHb+uUjy+eJXliI0rK6/f6TrF5ji+TK5aK65wCzh1lbyvb48nJQM4XRpkBRwHT3gIOGS3Obfw78OYsX5+29YgvnLgklNc0YH+FNgX31ekIjd71AfXU5cCP7wQ2B9/q7NScwjTUAHNGCPBR7tgIHHu2+D8DkQxImuXezcARJ4kzz14FfPuG7/VQgLpkHnDh/eIerj3+daN1d9GnlQwM862tr7/MI1QoHW0FFNdLE+8ToQ6uFTlFtpJFe4C+Q8WVmb2NdaO/rS/cCHyxyro95m4Ve9ozNsn24MvBKeHW10nd0dTsxo5C663TnaDRuzagOJ2bM9K+SWZ+ABxzlrj+1GTgx3fF/0kS3PSy+H/mv4FlFxg6zCMYG3z28MCFdChAzd4CDDte6Hz0PGDnR9Y2nvxr4IbnxbX3HwTe+pP4v7mT8mVw/5HW5A3LthVQ4XboO94Hjj1HlF403hr8ZfsEULQ9HwJUz1gHpJwnTj89RZAtTgpHW9WD3cU1qG+y/iK+rTR61wbUD+8AT2uMn1XDTH0YOEfLPsn4I7BJI3q43zZBcdAgsUZiJyjfJzSYRxcuwt+cHag5FKAerRRrO8p3bwVOKXWNJEdSzhdHHAU5GvoDas/nwINn2nc7JwHF2NrxUwCydP2PFEQMiRzulcdjfV1Ke2iXv61b14vpt52Y169v3Ad88LCTcBJ2KvEoqmpAUbUFeypqaxON3rUB9Z9ngFdn2DfK+fcAzHWjbFoOZNxplL1sIXDBfeJ47VxgvVbuLztFh6LMSwWKdgbqDwYodkpej1RIpS85ObCTfrUaWPnr6AKKDNlVy4DxUwURE0rsABWqPZhzOEXLNfz4KSD99lA1RXbd+1NCiahrdCOrzH4jpLbQ6M4Daswk4MhTxYNu32idXcxcN7JklPpq4K6+hmOcpM23vAw8f7290yc9AEyaI65v+BuwxsRkkbiYv0PM6fWF9lGnAXd/LMoza/qRc611BwMUR6ZHKgz6mbE2uymQWTsZNaspX6iE07aOUInJwO0bgKNPM9qL8bHCXUBVoRhdmxuAibOMaawdoL54EXjht/btYR791y0E3pkfGWBClSbjH0c21IPM4no0e6yTlttCozsPqEsXCOdSzOyZ+WFJs87SWJ7CncD8VOOqeX2xYByQrzFu5vsZgF2oxaeCxaHIdDGWZCfXPgucdoO4uuoW4DNtvaKX/8M7QKq2fvr7OcDJVwNn/k5cff4GYMtLkQOKd5hz/exGuWCdI5Lsg7YCimzj5EXCmrzvBYXP4LO/zPrcCGzbASrYS4j6rvuHCBxT7MiLUKAJdZ3Teag44GpCWZ39j3a0lkZ3HlCnXAdcv1I81tcZwD+vCXxEc5nMD4FlE40yv38TGHuxOF5+MbBtQ+D91z8HnKKxTcEAxSyDeaMFfewvDA4TlHrO3UNnAdmbfUsx++D3GoPH0S51oghIskPNHma/9gm1hjIvvv0pc7MF4yaLNQuF9Dzf8JRYAop0NmcdlGeuBL5fE+hL/qbT0gJjOmgHKLbHn48CXD5f0Ap9bA/67eDB4njp6SKbxWnRfjmzqr4ZuZVBszJaRaM7DygGTe/TsgsYUF0wBigx/SACpxB3fyJSbSj/Xga8pn2vw+OpjwDnaOseqynbYWOB2V+KqRglGKB4neksVlQvyQiSEhQGVJdoNLi5ARkPWpRtgE6/xnhP+h32TW1eZ5FlJNtoluMuBW59XZxhytL8NKCh2rcMR+H7vzFSmB7+BcBMAkosAWWegvPlyJekv5hBx2t2gOK1/64EXro1UMeEu4ApfxPnmYa0VJti2nu59Vfi4r27y24vaYYnyLdqraHRnQcUH/P29cAobX1RXSpAw8U7O8mp1wGHalM8bu7OEcTc4UZPAG57z3AWsxW+eEnM148+XUw/yL7pEgxQZOgIvG9eF8HC4l3A4FHAib802D3qefJS4CdTneamumgOcLFfOs0ixoR+sG9QMx1P2j3zA5EzSFZQF3MnZMYA10cMPvOzbU4zT77GyJbwZ8daCyjq58sjHPlhrfDJb1aKNqMU7gBemgZk/VdkeHCtfPliY82s6w0GKJYhkULSgdN5Zq4wTKGzrbzOGQtnLtES9gmPB/uqPKhsCL6hbFwcLkpNh03nCDQwOoBirIajlJ4gaueY95cCb2kBTnMZc0zD/16CZO0cY14fDFAEEmX8FdYWsJOvWwAwF89OOCVcmGWkCIXz9uR0lNNSf5mRLH6rlsIg6LQ1Rt6iXf1ct3B0qncZJVoLqEg6qM5sWrUlM0hIruiM386PBdj09aUdoLZtFOSGTq8HtK1bZKywX0RVvL/cBlejir2u4D9+qCjYnjoaY8Pd1CU6gKIz2BGvecpIIDU7qDRX0Nl881oJf7WOMYnTb/K9Wpkv7vtxXXjJsWTASB6Q8uVbVo/9UCunWqRlv18buunIcumZ5czt46gZSs64BTh7OjBwpJFnZwYU7+cCmTlyzB0028ZrXKcR6Jxe+mdgxxJQtOWIU4CrHzdYPP3Z2Y7fvi5GV+b7MXmWYgcopi0xiM2g+aARvh7kfhP0LUf0GAk5vu2l7qDTPpoSCY0ePUDpTunRVwzrnO6xE/NNFm5KCXcBHTJaLFT5yQWdHkrsOhs7L6co+ucCTKMJR9jRF+cCjMUwK2HW0MD1Tjh6gpVh+hPz2Q5NE+ApyBTrznDo9LbWHe79tHFIigACaXJOH/VUrXB1mMuxTbne1j+nqSltjZY235NX5UFFiGlfJDR69AHV5keOUEEkb+9wVHMac/UTouTm5wBmjEvpMh6oblKRUxnGb14reHzMaoSMNEtAheoac74HDkkRpZae4ZslHepeeb3De4DL6O1load9/JQ1nE1dJKCCNTmTPUmQUPi90kItobXDdxNpYCQe2F/tQXl96J+PUoD30jJwUdDZe7vsehTJ00Za1skpH4O6DO5SMu4CNj0eqTWyfCfwQF0zkFUR3qf3oWj0rjdCHZJqxE0YczF/PRpJ4zJyf+l8b3ayV5jrZ7W/RSQ6ZdkO6QGyfTvL3Giyye0zGx2KRu96gOqQTSaN6ugeKKpTUVQTBjkRgkaXgOroLS3ti4kH+L3hjjICKvS22cFodAmomDSXrKQzeGBPpQc1Nl/yBthvQ6NLQHWGlpY2xsQDFQ0q8qrCm/bZ0egSUDFpKllJZ/AAOYnM8GJS3sexotEloDpDS0sbY+aBAzUelNWFjknpBvnT6BJQMWsqWVFn8EC9G9hdHl5MyjtK+WWjS0B1hlaWNsbUA9mVbtQ2hWb7TKPU7anp8Eb9JaBi2lSyss7ggQjJCZ+90SWgOkMLSxtj5gGOS/zHmJQ7jMyJFsM0Gl0CKmZNJSvqTB4oqPGgJAJyQqfRJaA6UytLW2PmgcoGFfvCj0m10Oj/A9jGm+feuyEMAAAAAElFTkSuQmCC";
|
|
|
|
|
|
/***/ }),
|
|
|
|
|
|
/***/ 81378:
|
|
|
/*!************************************************************************!*\
|
|
|
!*** ./src/components/ui-customization/Cards/ShixunList/img/unity.png ***!
|
|
|
\************************************************************************/
|
|
|
/***/ (function(module) {
|
|
|
|
|
|
"use strict";
|
|
|
module.exports = "data:image/png;base64,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";
|
|
|
|
|
|
/***/ })
|
|
|
|
|
|
}]); |