|
|
(self["webpackChunk"] = self["webpackChunk"] || []).push([[87550],{
|
|
|
|
|
|
/***/ 92523:
|
|
|
/*!***********************************************************!*\
|
|
|
!*** ./src/components/CaptureVideo/index.tsx + 1 modules ***!
|
|
|
\***********************************************************/
|
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
|
|
|
// EXPORTS
|
|
|
__webpack_require__.d(__webpack_exports__, {
|
|
|
"Z": function() { return /* binding */ components_CaptureVideo; }
|
|
|
});
|
|
|
|
|
|
// UNUSED EXPORTS: CaptureVideo
|
|
|
|
|
|
// 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/antd/es/message/style/index.js + 1 modules
|
|
|
var style = __webpack_require__(14934);
|
|
|
// EXTERNAL MODULE: ./node_modules/antd/es/message/index.js + 1 modules
|
|
|
var message = __webpack_require__(12461);
|
|
|
// 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
|
|
|
var _umi_production_exports = __webpack_require__(88275);
|
|
|
// EXTERNAL MODULE: ./src/utils/fetch.ts
|
|
|
var fetch = __webpack_require__(84519);
|
|
|
// EXTERNAL MODULE: ./node_modules/uuid/dist/esm-browser/v4.js + 4 modules
|
|
|
var v4 = __webpack_require__(25934);
|
|
|
// EXTERNAL MODULE: ./src/components/UploadFile/index.tsx
|
|
|
var UploadFile = __webpack_require__(82394);
|
|
|
// EXTERNAL MODULE: ./node_modules/ali-oss/dist/aliyun-oss-sdk.js
|
|
|
var aliyun_oss_sdk = __webpack_require__(56448);
|
|
|
var aliyun_oss_sdk_default = /*#__PURE__*/__webpack_require__.n(aliyun_oss_sdk);
|
|
|
;// CONCATENATED MODULE: ./src/components/CaptureVideo/index.less?modules
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
/* harmony default export */ var CaptureVideomodules = ({"flex_box_center":"flex_box_center___kVqBh","flex_space_between":"flex_space_between___FMnNq","flex_box_vertical_center":"flex_box_vertical_center___meESe","flex_box_center_end":"flex_box_center_end___KFpOb","flex_box_column":"flex_box_column___GHIK9","video":"video___nn_cD"});
|
|
|
// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
|
|
|
var jsx_runtime = __webpack_require__(85893);
|
|
|
;// CONCATENATED MODULE: ./src/components/CaptureVideo/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/**
|
|
|
* base64 to file
|
|
|
* @param dataurl base64 content
|
|
|
* @param filename set up a meaningful suffix, or you can set mime type in options
|
|
|
* @returns {File|*}
|
|
|
*/
|
|
|
var dataURLtoFile = function dataURLtoFile(dataurl, filename) {
|
|
|
var arr = dataurl.split(',');
|
|
|
var mime = arr[0].match(/:(.*?);/)[1];
|
|
|
var bstr = atob(arr[1]);
|
|
|
var n = bstr.length;
|
|
|
var u8arr = new Uint8Array(n);
|
|
|
while (n--) {
|
|
|
u8arr[n] = bstr.charCodeAt(n);
|
|
|
}
|
|
|
return new Blob([u8arr], {
|
|
|
type: mime
|
|
|
}); // if env support File, also can use this: return new File([u8arr], filename, { type: mime });
|
|
|
};
|
|
|
|
|
|
var CaptureVideo = /*#__PURE__*/(0,react.forwardRef)(function (_ref, ref) {
|
|
|
var time = _ref.time,
|
|
|
number = _ref.number,
|
|
|
supportCamera = _ref.supportCamera,
|
|
|
take_photo = _ref.take_photo,
|
|
|
update = _ref.update;
|
|
|
var video = (0,react.useRef)();
|
|
|
var canvas = (0,react.useRef)();
|
|
|
var params = (0,_umi_production_exports.useParams)();
|
|
|
var _useState = (0,react.useState)([]),
|
|
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
|
phoneStep = _useState2[0],
|
|
|
setPhoneStep = _useState2[1];
|
|
|
var _useState3 = (0,react.useState)(0),
|
|
|
_useState4 = slicedToArray_default()(_useState3, 2),
|
|
|
status = _useState4[0],
|
|
|
setStatus = _useState4[1]; // 0准备中,1开启失败,2开启成功,3考试结束
|
|
|
var _useState5 = (0,react.useState)(''),
|
|
|
_useState6 = slicedToArray_default()(_useState5, 2),
|
|
|
src = _useState6[0],
|
|
|
setSrc = _useState6[1];
|
|
|
var _useState7 = (0,react.useState)(),
|
|
|
_useState8 = slicedToArray_default()(_useState7, 2),
|
|
|
interval = _useState8[0],
|
|
|
setInter = _useState8[1];
|
|
|
var _useState9 = (0,react.useState)(0),
|
|
|
_useState10 = slicedToArray_default()(_useState9, 2),
|
|
|
isPause = _useState10[0],
|
|
|
setIsPause = _useState10[1]; //0未开始,1开始计时,2停止计时
|
|
|
(0,react.useEffect)(function () {
|
|
|
checkMediaDevices();
|
|
|
return function () {
|
|
|
handleStop();
|
|
|
clearTimer();
|
|
|
};
|
|
|
}, []);
|
|
|
(0,react.useEffect)(function () {
|
|
|
// clearTimer()
|
|
|
if (status === 2 && time && number > 0) {
|
|
|
calcPhoto();
|
|
|
setIsPause(1);
|
|
|
// photograph();
|
|
|
}
|
|
|
}, [time]);
|
|
|
(0,react.useEffect)(function () {
|
|
|
if (isPause === 0) return;
|
|
|
if (isPause === 2) {
|
|
|
clearInterval(interval);
|
|
|
} else {
|
|
|
var n = 0;
|
|
|
var id = setInterval(function () {
|
|
|
if (phoneStep.includes(n)) {
|
|
|
handlePhoto();
|
|
|
}
|
|
|
n++;
|
|
|
}, 1000);
|
|
|
setInter(id);
|
|
|
}
|
|
|
return function () {
|
|
|
return clearInterval(interval);
|
|
|
};
|
|
|
}, [isPause]);
|
|
|
(0,react.useImperativeHandle)(ref, function () {
|
|
|
return {
|
|
|
handlePhoto: handlePhoto
|
|
|
};
|
|
|
});
|
|
|
var clearTimer = function clearTimer() {
|
|
|
setIsPause(2);
|
|
|
};
|
|
|
var calcPhoto = function calcPhoto() {
|
|
|
var step = time / number;
|
|
|
var arr = [];
|
|
|
function getRndInteger(min, max) {
|
|
|
return parseInt(Math.floor(Math.random() * (max - min + 1)) + min);
|
|
|
}
|
|
|
new Array(number).fill(0).map(function (item, key) {
|
|
|
if (take_photo) {
|
|
|
arr.push(getRndInteger(step * key, step * (key + 1)));
|
|
|
} else {
|
|
|
if (key == 0) {
|
|
|
arr.push(0);
|
|
|
} else {
|
|
|
arr.push(getRndInteger(step * key, step * (key + 1)));
|
|
|
}
|
|
|
}
|
|
|
});
|
|
|
phoneStep = arr;
|
|
|
setPhoneStep([].concat(arr));
|
|
|
console.log(arr);
|
|
|
};
|
|
|
var checkMediaDevices = function checkMediaDevices() {
|
|
|
if (navigator.mediaDevices === undefined) {
|
|
|
navigator.mediaDevices = {};
|
|
|
}
|
|
|
if (navigator.mediaDevices.getUserMedia === undefined) {
|
|
|
navigator.mediaDevices.getUserMedia = function (constraints) {
|
|
|
var getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia;
|
|
|
if (!getUserMedia) {
|
|
|
return Promise.reject(new Error('getUserMedia is not implemented in this browser'));
|
|
|
}
|
|
|
return new Promise(function (resolve, reject) {
|
|
|
getUserMedia.call(navigator, constraints, resolve, reject);
|
|
|
});
|
|
|
};
|
|
|
}
|
|
|
navigator.mediaDevices.getUserMedia({
|
|
|
video: {
|
|
|
width: 640,
|
|
|
height: 480
|
|
|
}
|
|
|
}).then(function (stream) {
|
|
|
supportCamera && supportCamera(2);
|
|
|
setStatus(2);
|
|
|
if ("srcObject" in video.current) {
|
|
|
video.current.srcObject = stream;
|
|
|
} else {
|
|
|
video.current.src = window.URL.createObjectURL(stream);
|
|
|
}
|
|
|
video.current.onloadedmetadata = function (e) {
|
|
|
video.current.play();
|
|
|
};
|
|
|
video.current.addEventListener('ended', function () {
|
|
|
//结束
|
|
|
console.log("播放结束");
|
|
|
clearTimer();
|
|
|
message/* default.error */.ZP.error({
|
|
|
content: "您已经关闭了摄像头,请在10秒钟内恢复摄像头,否则将推出考试",
|
|
|
duration: 10,
|
|
|
key: 9998
|
|
|
});
|
|
|
}, false);
|
|
|
})["catch"](function (err) {
|
|
|
setStatus(1);
|
|
|
supportCamera && supportCamera(1);
|
|
|
// 错误信息,以及用户未授权
|
|
|
if (err.message === "Permission denied" || err.name === 'NotAllowedError') {
|
|
|
message/* default.error */.ZP.error('您已拒绝了获取摄像头');
|
|
|
} else {
|
|
|
message/* default.error */.ZP.error('摄像头获取失败,或您已拒绝了获取摄像头');
|
|
|
}
|
|
|
console.log("errname: " + err.name);
|
|
|
console.log("err: " + err.message);
|
|
|
});
|
|
|
};
|
|
|
var handlePhoto = function handlePhoto() {
|
|
|
try {
|
|
|
canvas.current.width = video.current.videoWidth;
|
|
|
canvas.current.height = video.current.videoHeight;
|
|
|
var context = canvas.current.getContext('2d');
|
|
|
context.drawImage(video.current, 0, 0, canvas.current.width, canvas.current.height);
|
|
|
setSrc(canvas.current.toDataURL('image/png'));
|
|
|
uploadFile(canvas.current.toDataURL('image/png'));
|
|
|
} catch (e) {}
|
|
|
};
|
|
|
var handleStop = function handleStop() {
|
|
|
try {
|
|
|
var stream = video.current.srcObject;
|
|
|
var tracks = stream.getTracks();
|
|
|
tracks.forEach(function (track) {
|
|
|
track.stop();
|
|
|
});
|
|
|
video.current.srcObject = null;
|
|
|
} catch (e) {}
|
|
|
};
|
|
|
var uploadFile = /*#__PURE__*/function () {
|
|
|
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee(file) {
|
|
|
var _res$data, _res$data2, _res$data3, _res$data4, _res$data5, _res$data6, _res$data7;
|
|
|
var res, name, client, imgfile;
|
|
|
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/buckets/get_upload_token.json', {
|
|
|
method: "get"
|
|
|
});
|
|
|
case 2:
|
|
|
res = _context.sent;
|
|
|
res.data = JSON.parse((0,UploadFile/* decrypt */.pe)(res.data));
|
|
|
name = (0,v4/* default */.Z)();
|
|
|
client = new (aliyun_oss_sdk_default())({
|
|
|
endpoint: res === null || res === void 0 ? void 0 : (_res$data = res.data) === null || _res$data === void 0 ? void 0 : _res$data.end_point,
|
|
|
region: res === null || res === void 0 ? void 0 : (_res$data2 = res.data) === null || _res$data2 === void 0 ? void 0 : _res$data2.region,
|
|
|
accessKeyId: res === null || res === void 0 ? void 0 : (_res$data3 = res.data) === null || _res$data3 === void 0 ? void 0 : _res$data3.access_key_id,
|
|
|
accessKeySecret: res === null || res === void 0 ? void 0 : (_res$data4 = res.data) === null || _res$data4 === void 0 ? void 0 : _res$data4.access_key_secret,
|
|
|
bucket: res === null || res === void 0 ? void 0 : (_res$data5 = res.data) === null || _res$data5 === void 0 ? void 0 : _res$data5.bucket,
|
|
|
stsToken: res === null || res === void 0 ? void 0 : (_res$data6 = res.data) === null || _res$data6 === void 0 ? void 0 : _res$data6.security_token
|
|
|
});
|
|
|
imgfile = dataURLtoFile(file, name);
|
|
|
client.multipartUpload("".concat(name, ".png"), imgfile, {
|
|
|
timeout: 10 * 1000,
|
|
|
partSize: 10485760,
|
|
|
callback: {
|
|
|
url: res === null || res === void 0 ? void 0 : (_res$data7 = res.data) === null || _res$data7 === void 0 ? void 0 : _res$data7.callback_url,
|
|
|
host: res === null || res === void 0 ? void 0 : res.data.bucket_host,
|
|
|
body: 'bucket=${bucket}&object=${object}&etag=${etag}&size=${size}&mimeType=${mimeType}&my_var=${x:my_var}&login=' + params.login + '&container_id=' + params.categoryId + '&container_type=Exercise'
|
|
|
}
|
|
|
}).then(function (result) {
|
|
|
console.log("result:", result);
|
|
|
})["catch"](function (err) {
|
|
|
console.log("err:", err);
|
|
|
});
|
|
|
case 8:
|
|
|
case "end":
|
|
|
return _context.stop();
|
|
|
}
|
|
|
}, _callee);
|
|
|
}));
|
|
|
return function uploadFile(_x) {
|
|
|
return _ref2.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(jsx_runtime.Fragment, {
|
|
|
children: status !== 3 && /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
|
|
|
className: CaptureVideomodules.video,
|
|
|
id: "screenshot",
|
|
|
children: [status === 0 && /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
children: "\u6B63\u5728\u5F00\u542F\u6444\u50CF\u5934..."
|
|
|
}), status === 1 && /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
children: "\u6444\u50CF\u5934\u5F00\u542F\u5931\u8D25"
|
|
|
}), status === 2 && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("video", {
|
|
|
width: "288",
|
|
|
ref: video,
|
|
|
autoPlay: true
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("canvas", {
|
|
|
style: {
|
|
|
display: "none"
|
|
|
},
|
|
|
ref: canvas
|
|
|
})]
|
|
|
})]
|
|
|
})
|
|
|
});
|
|
|
});
|
|
|
/* harmony default export */ var components_CaptureVideo = (CaptureVideo);
|
|
|
|
|
|
/***/ }),
|
|
|
|
|
|
/***/ 47157:
|
|
|
/*!**************************************************!*\
|
|
|
!*** ./src/components/Exercise/recordScreen.tsx ***!
|
|
|
\**************************************************/
|
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
|
/* harmony export */ "U": function() { return /* binding */ fullchange; }
|
|
|
/* harmony export */ });
|
|
|
/* 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 antd_es_modal_style__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! antd/es/modal/style */ 35611);
|
|
|
/* harmony import */ var antd_es_modal__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! antd/es/modal */ 85402);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_4__ = __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_4___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_4__);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_objectWithoutProperties_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/objectWithoutProperties.js */ 70215);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_objectWithoutProperties_js__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_objectWithoutProperties_js__WEBPACK_IMPORTED_MODULE_5__);
|
|
|
/* harmony import */ var antd_es_statistic_style__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! antd/es/statistic/style */ 14558);
|
|
|
/* harmony import */ var antd_es_statistic__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! antd/es/statistic */ 74763);
|
|
|
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! react */ 67294);
|
|
|
/* harmony import */ var _utils_fullscreen__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! @/utils/fullscreen */ 15994);
|
|
|
/* harmony import */ var _service_exercise__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @/service/exercise */ 51412);
|
|
|
/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! moment */ 30381);
|
|
|
/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_9___default = /*#__PURE__*/__webpack_require__.n(moment__WEBPACK_IMPORTED_MODULE_9__);
|
|
|
/* harmony import */ var umi__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! umi */ 88275);
|
|
|
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! react/jsx-runtime */ 85893);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var _excluded = ["globalSetting", "loading", "user", "exercise", "socket", "dispatch"];
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var Countdown = antd_es_statistic__WEBPACK_IMPORTED_MODULE_11__/* ["default"].Countdown */ .Z.Countdown;
|
|
|
var fullchange = ['fullscreenchange', 'msfullscreenchange', 'webkitfullscreenchange', 'mozfullscreenchange'];
|
|
|
|
|
|
|
|
|
|
|
|
var RecordScreen = function RecordScreen(_ref) {
|
|
|
var globalSetting = _ref.globalSetting,
|
|
|
loading = _ref.loading,
|
|
|
user = _ref.user,
|
|
|
exercise = _ref.exercise,
|
|
|
socket = _ref.socket,
|
|
|
dispatch = _ref.dispatch,
|
|
|
props = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_objectWithoutProperties_js__WEBPACK_IMPORTED_MODULE_5___default()(_ref, _excluded);
|
|
|
var _useState = (0,react__WEBPACK_IMPORTED_MODULE_7__.useState)({}),
|
|
|
_useState2 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_4___default()(_useState, 2),
|
|
|
answerCheckData = _useState2[0],
|
|
|
setAnswerCheckData = _useState2[1];
|
|
|
var _Modal$useModal = antd_es_modal__WEBPACK_IMPORTED_MODULE_13__/* ["default"].useModal */ .Z.useModal(),
|
|
|
_Modal$useModal2 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_4___default()(_Modal$useModal, 2),
|
|
|
modal = _Modal$useModal2[0],
|
|
|
contextHolder = _Modal$useModal2[1];
|
|
|
var modals = (0,react__WEBPACK_IMPORTED_MODULE_7__.useRef)();
|
|
|
var screenTimeRef = (0,react__WEBPACK_IMPORTED_MODULE_7__.useRef)(null);
|
|
|
var screenTimeModal = (0,react__WEBPACK_IMPORTED_MODULE_7__.useRef)(null);
|
|
|
var _useState3 = (0,react__WEBPACK_IMPORTED_MODULE_7__.useState)(true),
|
|
|
_useState4 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_4___default()(_useState3, 2),
|
|
|
isFirstFull = _useState4[0],
|
|
|
setIsFirstFull = _useState4[1];
|
|
|
var query = (0,umi__WEBPACK_IMPORTED_MODULE_10__.useLocation)().query;
|
|
|
var params = (0,umi__WEBPACK_IMPORTED_MODULE_10__.useParams)();
|
|
|
(0,react__WEBPACK_IMPORTED_MODULE_7__.useEffect)(function () {
|
|
|
var _exercise$exerciseUse, _exercise$exerciseUse2, _exercise$exerciseUse3, _exercise$exerciseUse4, _exercise$exerciseUse5;
|
|
|
clearTimeout(screenTimeRef.current);
|
|
|
document.addEventListener((0,_utils_fullscreen__WEBPACK_IMPORTED_MODULE_14__/* .fullscreenChange */ .gH)(), fullscreenchangeIn, false);
|
|
|
window.addEventListener('blur', handleBlur, false);
|
|
|
if ((_exercise$exerciseUse = exercise.exerciseUserInfo) !== null && _exercise$exerciseUse !== void 0 && _exercise$exerciseUse.screen_open && (0,_utils_fullscreen__WEBPACK_IMPORTED_MODULE_14__/* .IsFull */ .vp)()) {
|
|
|
dispatch({
|
|
|
type: "globalSetting/headerFooterToggle",
|
|
|
payload: false
|
|
|
});
|
|
|
setIsFirstFull(false);
|
|
|
}
|
|
|
if ((_exercise$exerciseUse2 = exercise.exerciseUserInfo) !== null && _exercise$exerciseUse2 !== void 0 && _exercise$exerciseUse2.screen_at && moment__WEBPACK_IMPORTED_MODULE_9___default()().diff(moment__WEBPACK_IMPORTED_MODULE_9___default()((_exercise$exerciseUse3 = exercise.exerciseUserInfo) === null || _exercise$exerciseUse3 === void 0 ? void 0 : _exercise$exerciseUse3.screen_at), 'seconds') > 0) {
|
|
|
autoRecordScreen();
|
|
|
} else if ((_exercise$exerciseUse4 = exercise.exerciseUserInfo) !== null && _exercise$exerciseUse4 !== void 0 && _exercise$exerciseUse4.screen_open && !(0,_utils_fullscreen__WEBPACK_IMPORTED_MODULE_14__/* .IsFull */ .vp)()) {
|
|
|
var plusTime = document.domain === "kepukehuan.educoder.net" ? 30 : exercise.exerciseUserInfo.screen_sec + 10 + 1;
|
|
|
modals.current = antd_es_modal__WEBPACK_IMPORTED_MODULE_13__/* ["default"].info */ .Z.info({
|
|
|
icon: null,
|
|
|
content: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsxs)("div", {
|
|
|
className: "tc font16",
|
|
|
children: ["\u672C\u573A\u8003\u8BD5\u5DF2\u5F00\u542F\u9632\u5207\u5C4F\u9650\u5236\uFF0C", /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)("br", {}), "\u5207\u6362\u9875\u9762 ", exercise.exerciseUserInfo.screen_num - exercise.exerciseUserInfo.used_screen_num, " \u6B21\u540E\u5C06\u8FDB\u884C\u5F3A\u5236\u4EA4\u5377\uFF0C", /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)("br", {}), "\u8BF7\u52FF\u5207\u5C4F\u53CA\u5237\u65B0\u9875\u9762"]
|
|
|
}),
|
|
|
okText: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsxs)("span", {
|
|
|
children: ["\u5F00\u59CB\u8003\u8BD5\uFF08", /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)("span", {
|
|
|
style: {
|
|
|
display: "inline-block"
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)(Countdown, {
|
|
|
onFinish: function onFinish() {
|
|
|
var _modals$current;
|
|
|
autoRecordScreen();
|
|
|
(_modals$current = modals.current) === null || _modals$current === void 0 ? void 0 : _modals$current.destroy();
|
|
|
},
|
|
|
valueStyle: {
|
|
|
fontSize: 14,
|
|
|
lineHeight: 1.4,
|
|
|
color: "#FFF",
|
|
|
display: "inline-block"
|
|
|
},
|
|
|
format: "ss",
|
|
|
value: Date.now() + plusTime * 1000
|
|
|
})
|
|
|
}), "S\uFF09"]
|
|
|
}),
|
|
|
onOk: function onOk() {
|
|
|
var _modals$current2;
|
|
|
(_modals$current2 = modals.current) === null || _modals$current2 === void 0 ? void 0 : _modals$current2.destroy();
|
|
|
setIsFirstFull(false);
|
|
|
(0,_utils_fullscreen__WEBPACK_IMPORTED_MODULE_14__/* .requestFullScreen */ .Dj)(document.body);
|
|
|
document.getElementById("root").addEventListener("click", documentClick, false);
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
if ((_exercise$exerciseUse5 = exercise.exerciseUserInfo) !== null && _exercise$exerciseUse5 !== void 0 && _exercise$exerciseUse5.screen_open && !(0,_utils_fullscreen__WEBPACK_IMPORTED_MODULE_14__/* .IsFull */ .vp)()) {} else {
|
|
|
document.getElementById("root").addEventListener("click", documentClick, false);
|
|
|
}
|
|
|
return function () {
|
|
|
document.getElementById("root").removeEventListener("click", documentClick, false);
|
|
|
document.removeEventListener((0,_utils_fullscreen__WEBPACK_IMPORTED_MODULE_14__/* .fullscreenChange */ .gH)(), fullscreenchangeIn, false);
|
|
|
window.removeEventListener('blur', handleBlur, false);
|
|
|
clearTimeout(screenTimeRef.current);
|
|
|
};
|
|
|
}, []);
|
|
|
(0,react__WEBPACK_IMPORTED_MODULE_7__.useEffect)(function () {
|
|
|
// 手动交卷后,取消监听全屏切换事件
|
|
|
setTimeout(function () {
|
|
|
if (exercise.actionTabs.removeEventListenerExitScreen) {
|
|
|
clearTimeout(screenTimeRef.current);
|
|
|
document.getElementById("root").removeEventListener("click", documentClick, false);
|
|
|
document.removeEventListener((0,_utils_fullscreen__WEBPACK_IMPORTED_MODULE_14__/* .fullscreenChange */ .gH)(), fullscreenchangeIn, false);
|
|
|
}
|
|
|
}, 500);
|
|
|
getExerciseUserInfo();
|
|
|
}, [exercise.actionTabs]);
|
|
|
(0,react__WEBPACK_IMPORTED_MODULE_7__.useEffect)(function () {
|
|
|
// 监听用户剩余切屏次数,自动提交试卷
|
|
|
setTimeout(function () {
|
|
|
if (exercise.exerciseUserInfo.used_screen_num > exercise.exerciseUserInfo.screen_num) {
|
|
|
autoSubmit();
|
|
|
} else if (!isFirstFull) {}
|
|
|
;
|
|
|
}, 500);
|
|
|
}, [exercise.exerciseUserInfo]);
|
|
|
var autoRecordScreen = /*#__PURE__*/function () {
|
|
|
var _ref2 = _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() {
|
|
|
var user;
|
|
|
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:
|
|
|
_context2.next = 2;
|
|
|
return handleFinish();
|
|
|
case 2:
|
|
|
user = _context2.sent;
|
|
|
setTimeout(function () {
|
|
|
var _modals$current3, _exercise$exerciseUse6;
|
|
|
// Modal.destroyAll()
|
|
|
(_modals$current3 = modals.current) === null || _modals$current3 === void 0 ? void 0 : _modals$current3.destroy();
|
|
|
modals.current = antd_es_modal__WEBPACK_IMPORTED_MODULE_13__/* ["default"].info */ .Z.info({
|
|
|
okText: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)("span", {
|
|
|
children: "\u56DE\u5230\u8003\u8BD5"
|
|
|
}),
|
|
|
content: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsxs)("div", {
|
|
|
children: ["\u60A8\u5DF2\u5207\u5C4F", /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)("span", {
|
|
|
className: "c-red",
|
|
|
children: user.used_screen_num
|
|
|
}), "\u6B21\uFF0C\u5207\u5C4F\u8D85\u8FC7", /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)("span", {
|
|
|
className: "c-red",
|
|
|
children: (_exercise$exerciseUse6 = exercise.exerciseUserInfo) === null || _exercise$exerciseUse6 === void 0 ? void 0 : _exercise$exerciseUse6.screen_num
|
|
|
}), "\u6B21\u5C06\u5F3A\u5236\u4EA4\u5377"]
|
|
|
}),
|
|
|
onOk: function () {
|
|
|
var _onOk = _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() {
|
|
|
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:
|
|
|
(0,_utils_fullscreen__WEBPACK_IMPORTED_MODULE_14__/* .requestFullScreen */ .Dj)(document.body);
|
|
|
case 1:
|
|
|
case "end":
|
|
|
return _context.stop();
|
|
|
}
|
|
|
}, _callee);
|
|
|
}));
|
|
|
function onOk() {
|
|
|
return _onOk.apply(this, arguments);
|
|
|
}
|
|
|
return onOk;
|
|
|
}()
|
|
|
});
|
|
|
}, 1000);
|
|
|
case 4:
|
|
|
case "end":
|
|
|
return _context2.stop();
|
|
|
}
|
|
|
}, _callee2);
|
|
|
}));
|
|
|
return function autoRecordScreen() {
|
|
|
return _ref2.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var documentClick = function documentClick(e) {
|
|
|
// 点击页面任何地方,进入全屏模式
|
|
|
if (!(0,_utils_fullscreen__WEBPACK_IMPORTED_MODULE_14__/* .IsFull */ .vp)() && e.target.nodeName !== 'A' && e.target.nodeName !== 'BUTTON' && e.target.innerHTML !== '确 定') {
|
|
|
(0,_utils_fullscreen__WEBPACK_IMPORTED_MODULE_14__/* .requestFullScreen */ .Dj)(document.body);
|
|
|
console.log("documentClick.full");
|
|
|
}
|
|
|
};
|
|
|
var getExerciseUserInfo = /*#__PURE__*/function () {
|
|
|
var _ref3 = _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() {
|
|
|
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", new Promise( /*#__PURE__*/function () {
|
|
|
var _ref4 = _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(resolve) {
|
|
|
var res;
|
|
|
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:
|
|
|
_context3.next = 2;
|
|
|
return dispatch({
|
|
|
type: "exercise/getExerciseUserInfo",
|
|
|
payload: _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, params)
|
|
|
});
|
|
|
case 2:
|
|
|
res = _context3.sent;
|
|
|
resolve(res === null || res === void 0 ? void 0 : res.data);
|
|
|
return _context3.abrupt("return", res === null || res === void 0 ? void 0 : res.data);
|
|
|
case 5:
|
|
|
case "end":
|
|
|
return _context3.stop();
|
|
|
}
|
|
|
}, _callee3);
|
|
|
}));
|
|
|
return function (_x) {
|
|
|
return _ref4.apply(this, arguments);
|
|
|
};
|
|
|
}()));
|
|
|
case 1:
|
|
|
case "end":
|
|
|
return _context4.stop();
|
|
|
}
|
|
|
}, _callee4);
|
|
|
}));
|
|
|
return function getExerciseUserInfo() {
|
|
|
return _ref3.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var exitFullScreenTip = /*#__PURE__*/function () {
|
|
|
var _ref5 = _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(usedNumber) {
|
|
|
var _modals$current4, _modals$current4$dest, _exercise$exerciseUse7;
|
|
|
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:
|
|
|
// 切屏提示
|
|
|
(_modals$current4 = modals.current) === null || _modals$current4 === void 0 ? void 0 : (_modals$current4$dest = _modals$current4.destroyAll) === null || _modals$current4$dest === void 0 ? void 0 : _modals$current4$dest.call(_modals$current4);
|
|
|
modals.current = antd_es_modal__WEBPACK_IMPORTED_MODULE_13__/* ["default"].info */ .Z.info({
|
|
|
maskClosable: false,
|
|
|
keyboard: false,
|
|
|
okText: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsxs)("span", {
|
|
|
children: ["\u56DE\u5230\u8003\u8BD5\uFF08", /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)("span", {
|
|
|
style: {
|
|
|
display: "inline-block"
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)(Countdown, {
|
|
|
onFinish: handleFinish,
|
|
|
valueStyle: {
|
|
|
fontSize: 14,
|
|
|
lineHeight: 1.4,
|
|
|
color: "#FFF",
|
|
|
display: "inline-block"
|
|
|
},
|
|
|
format: "ss",
|
|
|
value: Date.now() + (exercise.exerciseUserInfo.screen_sec + 1) * 1000
|
|
|
})
|
|
|
}), "S\uFF09"]
|
|
|
}),
|
|
|
content: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsxs)("div", {
|
|
|
children: ["\u60A8\u5DF2\u5207\u5C4F", /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)("span", {
|
|
|
className: "c-red",
|
|
|
children: usedNumber
|
|
|
}), "\u6B21\uFF0C\u5207\u5C4F\u8D85\u8FC7", /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)("span", {
|
|
|
className: "c-red",
|
|
|
children: (_exercise$exerciseUse7 = exercise.exerciseUserInfo) === null || _exercise$exerciseUse7 === void 0 ? void 0 : _exercise$exerciseUse7.screen_num
|
|
|
}), "\u6B21\u5C06\u5F3A\u5236\u4EA4\u5377,", /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)("span", {
|
|
|
className: "c-red",
|
|
|
children: exercise.exerciseUserInfo.screen_sec
|
|
|
}), "\u79D2\u5185\u56DE\u5230", /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)("br", {}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)("span", {
|
|
|
style: {
|
|
|
marginLeft: 38
|
|
|
},
|
|
|
children: "\u8003\u8BD5\u4E0D\u8BA1\u5207\u5C4F\u6B21\u6570\u3002"
|
|
|
})]
|
|
|
}),
|
|
|
onOk: function () {
|
|
|
var _onOk2 = _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() {
|
|
|
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:
|
|
|
clearTimeout(screenTimeModal.current);
|
|
|
(0,_utils_fullscreen__WEBPACK_IMPORTED_MODULE_14__/* .requestFullScreen */ .Dj)(document.body);
|
|
|
modals.current.destroy();
|
|
|
case 3:
|
|
|
case "end":
|
|
|
return _context5.stop();
|
|
|
}
|
|
|
}, _callee5);
|
|
|
}));
|
|
|
function onOk() {
|
|
|
return _onOk2.apply(this, arguments);
|
|
|
}
|
|
|
return onOk;
|
|
|
}()
|
|
|
});
|
|
|
screenTimeModal.current = setTimeout(function () {
|
|
|
var _exercise$exerciseUse8;
|
|
|
modals.current.update({
|
|
|
okText: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)("span", {
|
|
|
children: "\u56DE\u5230\u8003\u8BD5"
|
|
|
}),
|
|
|
content: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsxs)("div", {
|
|
|
children: ["\u60A8\u5DF2\u5207\u5C4F", /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)("span", {
|
|
|
className: "c-red",
|
|
|
children: usedNumber + 1
|
|
|
}), "\u6B21\uFF0C\u5207\u5C4F\u8D85\u8FC7", /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)("span", {
|
|
|
className: "c-red",
|
|
|
children: (_exercise$exerciseUse8 = exercise.exerciseUserInfo) === null || _exercise$exerciseUse8 === void 0 ? void 0 : _exercise$exerciseUse8.screen_num
|
|
|
}), "\u6B21\u5C06\u5F3A\u5236\u4EA4\u5377"]
|
|
|
})
|
|
|
});
|
|
|
}, (exercise.exerciseUserInfo.screen_sec + 1) * 1000);
|
|
|
case 3:
|
|
|
case "end":
|
|
|
return _context6.stop();
|
|
|
}
|
|
|
}, _callee6);
|
|
|
}));
|
|
|
return function exitFullScreenTip(_x2) {
|
|
|
return _ref5.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var handleToDetail = function handleToDetail() {
|
|
|
location.href = "/classrooms/".concat(params.coursesId, "/exercise/").concat(params.categoryId, "/detail");
|
|
|
};
|
|
|
// 自动交卷处理
|
|
|
var autoSubmit = /*#__PURE__*/function () {
|
|
|
var _ref6 = _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() {
|
|
|
var _modals$current5, _modals$current5$dest;
|
|
|
var res;
|
|
|
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:
|
|
|
(_modals$current5 = modals.current) === null || _modals$current5 === void 0 ? void 0 : (_modals$current5$dest = _modals$current5.destroyAll) === null || _modals$current5$dest === void 0 ? void 0 : _modals$current5$dest.call(_modals$current5);
|
|
|
_context7.next = 3;
|
|
|
return (0,_service_exercise__WEBPACK_IMPORTED_MODULE_8__/* .submitExerciseAnswer */ .VL)({
|
|
|
categoryId: params.categoryId,
|
|
|
commit_method: 1
|
|
|
});
|
|
|
case 3:
|
|
|
res = _context7.sent;
|
|
|
if (res) {
|
|
|
try {
|
|
|
socket.send(JSON.stringify({
|
|
|
type: "toggleLockExit",
|
|
|
data: false
|
|
|
}));
|
|
|
socket.send(JSON.stringify({
|
|
|
type: "network-open",
|
|
|
data: ''
|
|
|
}));
|
|
|
} catch (_unused) {}
|
|
|
;
|
|
|
autoSubmitToDetail();
|
|
|
}
|
|
|
case 5:
|
|
|
case "end":
|
|
|
return _context7.stop();
|
|
|
}
|
|
|
}, _callee7);
|
|
|
}));
|
|
|
return function autoSubmit() {
|
|
|
return _ref6.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var autoSubmitToDetail = function autoSubmitToDetail() {
|
|
|
var _modals$current6, _modals$current6$dest;
|
|
|
document.removeEventListener((0,_utils_fullscreen__WEBPACK_IMPORTED_MODULE_14__/* .fullscreenChange */ .gH)(), fullscreenchangeIn, false);
|
|
|
(0,_utils_fullscreen__WEBPACK_IMPORTED_MODULE_14__/* .exitFull */ .BU)();
|
|
|
(_modals$current6 = modals.current) === null || _modals$current6 === void 0 ? void 0 : (_modals$current6$dest = _modals$current6.destroyAll) === null || _modals$current6$dest === void 0 ? void 0 : _modals$current6$dest.call(_modals$current6);
|
|
|
try {
|
|
|
socket.send(JSON.stringify({
|
|
|
type: "toggleLockExit",
|
|
|
data: false
|
|
|
}));
|
|
|
socket.send(JSON.stringify({
|
|
|
type: "network-open",
|
|
|
data: ''
|
|
|
}));
|
|
|
} catch (_unused2) {}
|
|
|
;
|
|
|
modal.info({
|
|
|
content: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsxs)("div", {
|
|
|
className: "tc font16",
|
|
|
children: ["\u7B54\u9898\u7ED3\u675F\u4E86\uFF0C\u7CFB\u7EDF\u5DF2\u81EA\u52A8\u63D0\u4EA4\u8BD5\u5377", /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)("br", {}), "\u4E0D\u80FD\u518D\u4FEE\u6539\u7B54\u9898"]
|
|
|
}),
|
|
|
onOk: function onOk() {
|
|
|
handleToDetail();
|
|
|
}
|
|
|
});
|
|
|
};
|
|
|
var handleBlur = function handleBlur(e) {
|
|
|
if ((0,_utils_fullscreen__WEBPACK_IMPORTED_MODULE_14__/* .IsFull */ .vp)() && document.getElementById("iframeShixuns").style.display == 'none') {
|
|
|
// window.parent.postMessage('backExercise', '*');
|
|
|
(0,_utils_fullscreen__WEBPACK_IMPORTED_MODULE_14__/* .exitFull */ .BU)();
|
|
|
}
|
|
|
};
|
|
|
var handleFinish = /*#__PURE__*/function () {
|
|
|
var _ref7 = _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() {
|
|
|
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", new Promise( /*#__PURE__*/function () {
|
|
|
var _ref8 = _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(resolve) {
|
|
|
var _exercise$exerciseUse9;
|
|
|
var res, resUser;
|
|
|
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:
|
|
|
if (!((_exercise$exerciseUse9 = exercise.exerciseUserInfo) !== null && _exercise$exerciseUse9 !== void 0 && _exercise$exerciseUse9.screen_at)) {
|
|
|
_context8.next = 3;
|
|
|
break;
|
|
|
}
|
|
|
_context8.next = 3;
|
|
|
return (0,_service_exercise__WEBPACK_IMPORTED_MODULE_8__/* .commitScreenAt */ .ck)(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, params), {}, {
|
|
|
reset: true
|
|
|
}));
|
|
|
case 3:
|
|
|
_context8.next = 5;
|
|
|
return (0,_service_exercise__WEBPACK_IMPORTED_MODULE_8__/* .recordScreen */ .oy)({
|
|
|
id: params.categoryId
|
|
|
});
|
|
|
case 5:
|
|
|
res = _context8.sent;
|
|
|
if (!(res !== null && res !== void 0 && res.is_commit)) {
|
|
|
_context8.next = 9;
|
|
|
break;
|
|
|
}
|
|
|
autoSubmitToDetail();
|
|
|
return _context8.abrupt("return");
|
|
|
case 9:
|
|
|
_context8.next = 11;
|
|
|
return getExerciseUserInfo();
|
|
|
case 11:
|
|
|
resUser = _context8.sent;
|
|
|
resolve(resUser);
|
|
|
case 13:
|
|
|
case "end":
|
|
|
return _context8.stop();
|
|
|
}
|
|
|
}, _callee8);
|
|
|
}));
|
|
|
return function (_x3) {
|
|
|
return _ref8.apply(this, arguments);
|
|
|
};
|
|
|
}()));
|
|
|
case 1:
|
|
|
case "end":
|
|
|
return _context9.stop();
|
|
|
}
|
|
|
}, _callee9);
|
|
|
}));
|
|
|
return function handleFinish() {
|
|
|
return _ref7.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var fullscreenchangeIn = /*#__PURE__*/function () {
|
|
|
var _ref9 = _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 _callee11() {
|
|
|
var showHeader, _exercise$exerciseUse10, res, timeout;
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1___default()().wrap(function _callee11$(_context11) {
|
|
|
while (1) switch (_context11.prev = _context11.next) {
|
|
|
case 0:
|
|
|
showHeader = false;
|
|
|
console.log("fullscreen change");
|
|
|
if (!(0,_utils_fullscreen__WEBPACK_IMPORTED_MODULE_14__/* .IsFull */ .vp)()) {
|
|
|
_context11.next = 7;
|
|
|
break;
|
|
|
}
|
|
|
if ((_exercise$exerciseUse10 = exercise.exerciseUserInfo) !== null && _exercise$exerciseUse10 !== void 0 && _exercise$exerciseUse10.screen_at) (0,_service_exercise__WEBPACK_IMPORTED_MODULE_8__/* .commitScreenAt */ .ck)(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, params), {}, {
|
|
|
reset: true
|
|
|
}));
|
|
|
clearTimeout(screenTimeRef.current);
|
|
|
_context11.next = 17;
|
|
|
break;
|
|
|
case 7:
|
|
|
showHeader = true;
|
|
|
_context11.next = 10;
|
|
|
return (0,_service_exercise__WEBPACK_IMPORTED_MODULE_8__/* .commitScreenAt */ .ck)(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, params));
|
|
|
case 10:
|
|
|
_context11.next = 12;
|
|
|
return getExerciseUserInfo();
|
|
|
case 12:
|
|
|
res = _context11.sent;
|
|
|
exitFullScreenTip(res.used_screen_num);
|
|
|
timeout = setTimeout( /*#__PURE__*/_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 _callee10() {
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_1___default()().wrap(function _callee10$(_context10) {
|
|
|
while (1) switch (_context10.prev = _context10.next) {
|
|
|
case 0:
|
|
|
case "end":
|
|
|
return _context10.stop();
|
|
|
}
|
|
|
}, _callee10);
|
|
|
})), exercise.exerciseUserInfo.screen_sec * 1000); // document.getElementById("iframeShixuns").style.display = "none"
|
|
|
if (window.frames.length != parent.frames.length) {
|
|
|
window.parent.postMessage('backExercise', '*');
|
|
|
}
|
|
|
screenTimeRef.current = timeout;
|
|
|
case 17:
|
|
|
dispatch({
|
|
|
type: "globalSetting/headerFooterToggle",
|
|
|
payload: showHeader
|
|
|
});
|
|
|
case 18:
|
|
|
case "end":
|
|
|
return _context11.stop();
|
|
|
}
|
|
|
}, _callee11);
|
|
|
}));
|
|
|
return function fullscreenchangeIn() {
|
|
|
return _ref9.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)("div", {
|
|
|
children: contextHolder
|
|
|
});
|
|
|
};
|
|
|
/* harmony default export */ __webpack_exports__["Z"] = ((0,umi__WEBPACK_IMPORTED_MODULE_10__.connect)(function (_ref11) {
|
|
|
var loading = _ref11.loading,
|
|
|
user = _ref11.user,
|
|
|
exercise = _ref11.exercise,
|
|
|
globalSetting = _ref11.globalSetting;
|
|
|
return {
|
|
|
globalSetting: globalSetting,
|
|
|
user: user,
|
|
|
exercise: exercise,
|
|
|
loading: loading.effects
|
|
|
};
|
|
|
})(RecordScreen));
|
|
|
|
|
|
/***/ }),
|
|
|
|
|
|
/***/ 82394:
|
|
|
/*!*********************************************!*\
|
|
|
!*** ./src/components/UploadFile/index.tsx ***!
|
|
|
\*********************************************/
|
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
|
/* harmony export */ "cT": function() { return /* binding */ uploadFile; },
|
|
|
/* harmony export */ "pe": function() { return /* binding */ decrypt; }
|
|
|
/* harmony export */ });
|
|
|
/* unused harmony exports reNameFile, UploadFile */
|
|
|
/* harmony import */ var antd_es_message_style__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! antd/es/message/style */ 14934);
|
|
|
/* harmony import */ var antd_es_message__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! antd/es/message */ 12461);
|
|
|
/* 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_slicedToArray_js__WEBPACK_IMPORTED_MODULE_2__ = __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_2___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_2__);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_objectWithoutProperties_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/objectWithoutProperties.js */ 70215);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_objectWithoutProperties_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_objectWithoutProperties_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 _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_5__ = __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_5___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_5__);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_6__ = __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_6___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_6__);
|
|
|
/* harmony import */ var antd_es_upload_style__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! antd/es/upload/style */ 13759);
|
|
|
/* harmony import */ var antd_es_upload__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! antd/es/upload */ 7426);
|
|
|
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! react */ 67294);
|
|
|
/* harmony import */ var _utils_fetch__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @/utils/fetch */ 84519);
|
|
|
/* harmony import */ var crypto_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! crypto-js */ 81354);
|
|
|
/* harmony import */ var crypto_js__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(crypto_js__WEBPACK_IMPORTED_MODULE_10__);
|
|
|
/* harmony import */ var uuid__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! uuid */ 25934);
|
|
|
/* harmony import */ var umi__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! umi */ 88275);
|
|
|
/* harmony import */ var ali_oss__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ali-oss */ 56448);
|
|
|
/* harmony import */ var ali_oss__WEBPACK_IMPORTED_MODULE_13___default = /*#__PURE__*/__webpack_require__.n(ali_oss__WEBPACK_IMPORTED_MODULE_13__);
|
|
|
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! react/jsx-runtime */ 85893);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var _excluded = ["user", "cancelUpload"];
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var Dragger = antd_es_upload__WEBPACK_IMPORTED_MODULE_12__/* ["default"].Dragger */ .Z.Dragger;
|
|
|
|
|
|
|
|
|
var decrypt = function decrypt(word) {
|
|
|
var ENC_KEY = "bf3c199c2470cb477d907b1e0917c17b";
|
|
|
var IV = "5183666c72eec9e4";
|
|
|
var key = crypto_js__WEBPACK_IMPORTED_MODULE_10___default().enc.Utf8.parse(ENC_KEY);
|
|
|
var iv = crypto_js__WEBPACK_IMPORTED_MODULE_10___default().enc.Utf8.parse(IV);
|
|
|
var decrypt = crypto_js__WEBPACK_IMPORTED_MODULE_10___default().AES.decrypt(word, key, {
|
|
|
iv: iv,
|
|
|
mode: (crypto_js__WEBPACK_IMPORTED_MODULE_10___default().mode.CBC)
|
|
|
// padding: CryptoJS.pad.ZeroPadding
|
|
|
});
|
|
|
|
|
|
return decrypt.toString((crypto_js__WEBPACK_IMPORTED_MODULE_10___default().enc.Utf8));
|
|
|
};
|
|
|
var tempCheckpoint;
|
|
|
// 重命名
|
|
|
var reNameFile = /*#__PURE__*/(/* unused pure expression or super */ null && (function () {
|
|
|
var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(_ref) {
|
|
|
var _res$data, _res$data2, _res$data3, _res$data4, _res$data5, _res$data6;
|
|
|
var identifier, oldFilename, newFilename, res, client;
|
|
|
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
|
while (1) switch (_context.prev = _context.next) {
|
|
|
case 0:
|
|
|
identifier = _ref.identifier, oldFilename = _ref.oldFilename, newFilename = _ref.newFilename;
|
|
|
_context.next = 3;
|
|
|
return Fetch('/api/buckets/get_upload_token_for_big_files.json', {
|
|
|
method: "get"
|
|
|
});
|
|
|
case 3:
|
|
|
res = _context.sent;
|
|
|
res.data = JSON.parse(decrypt(res.data));
|
|
|
client = new OSS({
|
|
|
endpoint: res === null || res === void 0 ? void 0 : (_res$data = res.data) === null || _res$data === void 0 ? void 0 : _res$data.end_point,
|
|
|
region: res === null || res === void 0 ? void 0 : (_res$data2 = res.data) === null || _res$data2 === void 0 ? void 0 : _res$data2.region,
|
|
|
accessKeyId: res === null || res === void 0 ? void 0 : (_res$data3 = res.data) === null || _res$data3 === void 0 ? void 0 : _res$data3.access_key_id,
|
|
|
accessKeySecret: res === null || res === void 0 ? void 0 : (_res$data4 = res.data) === null || _res$data4 === void 0 ? void 0 : _res$data4.access_key_secret,
|
|
|
bucket: res === null || res === void 0 ? void 0 : (_res$data5 = res.data) === null || _res$data5 === void 0 ? void 0 : _res$data5.bucket,
|
|
|
stsToken: res === null || res === void 0 ? void 0 : (_res$data6 = res.data) === null || _res$data6 === void 0 ? void 0 : _res$data6.security_token
|
|
|
});
|
|
|
return _context.abrupt("return", new Promise(function (resolve, reject) {
|
|
|
console.log(11111, "".concat(identifier, "/").concat(oldFilename), "".concat(identifier, "/").concat(newFilename), res.data);
|
|
|
client.copy("/".concat(identifier, "/").concat(oldFilename), "/".concat(identifier, "/").concat(newFilename)).then(function (r) {
|
|
|
console.log('拷贝成功', r);
|
|
|
// client
|
|
|
// .delete(`${identifier}/${oldFilename}`)
|
|
|
// .then(r => console.log(r))
|
|
|
// .catch(e => console.log(e));
|
|
|
})["catch"](function (e) {
|
|
|
console.log(e);
|
|
|
debugger;
|
|
|
});
|
|
|
}));
|
|
|
case 7:
|
|
|
case "end":
|
|
|
return _context.stop();
|
|
|
}
|
|
|
}, _callee);
|
|
|
}));
|
|
|
return function reNameFile(_x) {
|
|
|
return _ref2.apply(this, arguments);
|
|
|
};
|
|
|
}()));
|
|
|
var uploadFile = /*#__PURE__*/function () {
|
|
|
var _ref3 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_6___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_5___default()().mark(function _callee2(file, obj, config) {
|
|
|
var _res$data7, _res$data8, _res$data9, _res$data10, _res$data11, _res$data12;
|
|
|
var res, namearrs, name, client;
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_5___default()().wrap(function _callee2$(_context2) {
|
|
|
while (1) switch (_context2.prev = _context2.next) {
|
|
|
case 0:
|
|
|
obj.file_name = file.name;
|
|
|
_context2.next = 3;
|
|
|
return (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .ZP)('/api/buckets/get_upload_token.json', {
|
|
|
method: "get"
|
|
|
});
|
|
|
case 3:
|
|
|
res = _context2.sent;
|
|
|
console.log("decrypt(res.data):", decrypt(res.data));
|
|
|
res.data = JSON.parse(decrypt(res.data));
|
|
|
namearrs = file.name.split(".");
|
|
|
namearrs.pop();
|
|
|
name = obj.realFileName ? namearrs.join("") : (0,uuid__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .Z)(); // const name = file.name
|
|
|
client = new (ali_oss__WEBPACK_IMPORTED_MODULE_13___default())({
|
|
|
endpoint: res === null || res === void 0 ? void 0 : (_res$data7 = res.data) === null || _res$data7 === void 0 ? void 0 : _res$data7.end_point,
|
|
|
region: res === null || res === void 0 ? void 0 : (_res$data8 = res.data) === null || _res$data8 === void 0 ? void 0 : _res$data8.region,
|
|
|
accessKeyId: res === null || res === void 0 ? void 0 : (_res$data9 = res.data) === null || _res$data9 === void 0 ? void 0 : _res$data9.access_key_id,
|
|
|
accessKeySecret: res === null || res === void 0 ? void 0 : (_res$data10 = res.data) === null || _res$data10 === void 0 ? void 0 : _res$data10.access_key_secret,
|
|
|
bucket: res === null || res === void 0 ? void 0 : (_res$data11 = res.data) === null || _res$data11 === void 0 ? void 0 : _res$data11.bucket,
|
|
|
stsToken: res === null || res === void 0 ? void 0 : (_res$data12 = res.data) === null || _res$data12 === void 0 ? void 0 : _res$data12.security_token
|
|
|
});
|
|
|
return _context2.abrupt("return", new Promise(function (resolve, reject) {
|
|
|
var _res$data13;
|
|
|
client.multipartUpload("".concat(name), new Blob([file], {
|
|
|
type: file.type
|
|
|
}), _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()({
|
|
|
timeout: 200 * 1000,
|
|
|
partSize: 102400
|
|
|
}, config), {}, {
|
|
|
callback: {
|
|
|
url: res === null || res === void 0 ? void 0 : (_res$data13 = res.data) === null || _res$data13 === void 0 ? void 0 : _res$data13.callback_url,
|
|
|
host: res === null || res === void 0 ? void 0 : res.data.bucket_host,
|
|
|
body: 'bucket=${bucket}&object=${object}&etag=${etag}&size=${size}&mimeType=${mimeType}&my_var=${x:my_var}&' + (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_9__/* .parseParams */ .rz)(obj)
|
|
|
// body: 'bucket=${bucket}&object=${object}&etag=${etag}&size=${size}&mimeType=${mimeType}&my_var=${x:my_var}&login=' + obj.login + '&container_id=' + obj.container_id + '&container_type='+obj.container_type,
|
|
|
}
|
|
|
})).then(function (result) {
|
|
|
var _result$data;
|
|
|
file.response = (_result$data = result.data) === null || _result$data === void 0 ? void 0 : _result$data.data;
|
|
|
resolve(result === null || result === void 0 ? void 0 : result.data);
|
|
|
})["catch"](function (err) {
|
|
|
reject(err);
|
|
|
console.log("err:", err);
|
|
|
});
|
|
|
}));
|
|
|
case 11:
|
|
|
case "end":
|
|
|
return _context2.stop();
|
|
|
}
|
|
|
}, _callee2);
|
|
|
}));
|
|
|
return function uploadFile(_x2, _x3, _x4) {
|
|
|
return _ref3.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var UploadFile = function UploadFile(_ref4) {
|
|
|
var user = _ref4.user,
|
|
|
cancelUpload = _ref4.cancelUpload,
|
|
|
props = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_objectWithoutProperties_js__WEBPACK_IMPORTED_MODULE_3___default()(_ref4, _excluded);
|
|
|
var _useState = (0,react__WEBPACK_IMPORTED_MODULE_8__.useState)([]),
|
|
|
_useState2 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_2___default()(_useState, 2),
|
|
|
fileList = _useState2[0],
|
|
|
setFileList = _useState2[1];
|
|
|
var _useState3 = (0,react__WEBPACK_IMPORTED_MODULE_8__.useState)(),
|
|
|
_useState4 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_2___default()(_useState3, 2),
|
|
|
client = _useState4[0],
|
|
|
setClient = _useState4[1];
|
|
|
var _props = {
|
|
|
onRemove: function onRemove(e) {
|
|
|
setFileList(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_toConsumableArray_js__WEBPACK_IMPORTED_MODULE_1___default()(fileList.filter(function (item) {
|
|
|
return item.name !== e.name;
|
|
|
})));
|
|
|
props.onChange(fileList.filter(function (item) {
|
|
|
return item.name !== e.name;
|
|
|
}));
|
|
|
},
|
|
|
disabled: props.disabled,
|
|
|
multiple: true,
|
|
|
fileList: fileList === null || fileList === void 0 ? void 0 : fileList.map(function (item) {
|
|
|
return item.file;
|
|
|
}),
|
|
|
customRequest: function customRequest() {},
|
|
|
beforeUpload: function () {
|
|
|
var _beforeUpload = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_6___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_5___default()().mark(function _callee3(file) {
|
|
|
var fileSize;
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_5___default()().wrap(function _callee3$(_context3) {
|
|
|
while (1) switch (_context3.prev = _context3.next) {
|
|
|
case 0:
|
|
|
fileSize = props.maxSize || 1024 * 1024 * 1024 * 1;
|
|
|
if (!fileList.filter(function (item) {
|
|
|
return item.name === file.name;
|
|
|
}).length) {
|
|
|
_context3.next = 4;
|
|
|
break;
|
|
|
}
|
|
|
antd_es_message__WEBPACK_IMPORTED_MODULE_16__/* ["default"].info */ .ZP.info("".concat(file.name, "\u5DF2\u5B58\u5728\uFF0C\u8BF7\u91CD\u65B0\u9009\u62E9"));
|
|
|
return _context3.abrupt("return");
|
|
|
case 4:
|
|
|
if (!((file === null || file === void 0 ? void 0 : file.size) > fileSize)) {
|
|
|
_context3.next = 7;
|
|
|
break;
|
|
|
}
|
|
|
antd_es_message__WEBPACK_IMPORTED_MODULE_16__/* ["default"].info */ .ZP.info("\u6587\u4EF6\u8D85\u8FC7".concat(fileSize / 1024 / 1024 / 1024, "GB\uFF0C\u4E0D\u7B26\u5408\u4E0A\u4F20\u8981\u6C42"));
|
|
|
return _context3.abrupt("return", false);
|
|
|
case 7:
|
|
|
fileList.push({
|
|
|
name: file.name,
|
|
|
file: file
|
|
|
});
|
|
|
setFileList(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_toConsumableArray_js__WEBPACK_IMPORTED_MODULE_1___default()(fileList));
|
|
|
props.onChange(fileList);
|
|
|
return _context3.abrupt("return", false);
|
|
|
case 11:
|
|
|
case "end":
|
|
|
return _context3.stop();
|
|
|
}
|
|
|
}, _callee3);
|
|
|
}));
|
|
|
function beforeUpload(_x5) {
|
|
|
return _beforeUpload.apply(this, arguments);
|
|
|
}
|
|
|
return beforeUpload;
|
|
|
}()
|
|
|
};
|
|
|
var _uploadFiles = /*#__PURE__*/function () {
|
|
|
var _ref5 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_6___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_5___default()().mark(function _callee4(file, obj) {
|
|
|
var _res$data14, _res$data15, _res$data16, _res$data17, _res$data18, _res$data19;
|
|
|
var name, res, namearrs, filename;
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_5___default()().wrap(function _callee4$(_context4) {
|
|
|
while (1) switch (_context4.prev = _context4.next) {
|
|
|
case 0:
|
|
|
obj.file_name = file.name;
|
|
|
name = file.name;
|
|
|
_context4.next = 4;
|
|
|
return (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .ZP)('/api/buckets/get_upload_token_for_big_files.json', {
|
|
|
method: "get"
|
|
|
});
|
|
|
case 4:
|
|
|
res = _context4.sent;
|
|
|
res.data = JSON.parse(decrypt(res.data));
|
|
|
if (!((res === null || res === void 0 ? void 0 : res.status) !== 0)) {
|
|
|
_context4.next = 12;
|
|
|
break;
|
|
|
}
|
|
|
fileList[fileList.findIndex(function (item) {
|
|
|
return item.name === name;
|
|
|
})]['status'] = 'error';
|
|
|
fileList[fileList.findIndex(function (item) {
|
|
|
return item.name === name;
|
|
|
})]['file']['status'] = 'error';
|
|
|
props.onChange(fileList);
|
|
|
antd_es_message__WEBPACK_IMPORTED_MODULE_16__/* ["default"].warn */ .ZP.warn("上传失败,请重新尝试");
|
|
|
return _context4.abrupt("return");
|
|
|
case 12:
|
|
|
client = new (ali_oss__WEBPACK_IMPORTED_MODULE_13___default())({
|
|
|
endpoint: res === null || res === void 0 ? void 0 : (_res$data14 = res.data) === null || _res$data14 === void 0 ? void 0 : _res$data14.end_point,
|
|
|
region: res === null || res === void 0 ? void 0 : (_res$data15 = res.data) === null || _res$data15 === void 0 ? void 0 : _res$data15.region,
|
|
|
accessKeyId: res === null || res === void 0 ? void 0 : (_res$data16 = res.data) === null || _res$data16 === void 0 ? void 0 : _res$data16.access_key_id,
|
|
|
accessKeySecret: res === null || res === void 0 ? void 0 : (_res$data17 = res.data) === null || _res$data17 === void 0 ? void 0 : _res$data17.access_key_secret,
|
|
|
bucket: res === null || res === void 0 ? void 0 : (_res$data18 = res.data) === null || _res$data18 === void 0 ? void 0 : _res$data18.bucket,
|
|
|
stsToken: res === null || res === void 0 ? void 0 : (_res$data19 = res.data) === null || _res$data19 === void 0 ? void 0 : _res$data19.security_token
|
|
|
});
|
|
|
console.log(file, 'file');
|
|
|
setClient(client);
|
|
|
// const filename = uuidv4()
|
|
|
namearrs = file.name.split(".");
|
|
|
namearrs.pop();
|
|
|
filename = obj.realFileName ? namearrs.join(".") : (0,uuid__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .Z)();
|
|
|
return _context4.abrupt("return", new Promise(function (resolve, reject) {
|
|
|
try {
|
|
|
var _res$data20;
|
|
|
client.multipartUpload("".concat(props.identifier, "/").concat(filename).concat(name.indexOf(".") > -1 ? '.' + name.split(".").pop() : ""), new Blob([file.file], {
|
|
|
type: file.file.type
|
|
|
}), {
|
|
|
timeout: 3600 * 1000,
|
|
|
partSize: 1002400,
|
|
|
progress: function progress(p, checkpoint, res) {
|
|
|
try {
|
|
|
console.log("进度", p, checkpoint, res);
|
|
|
var index = fileList.findIndex(function (item) {
|
|
|
return item.name === name;
|
|
|
});
|
|
|
fileList[index]['file']['percent'] = p * 100;
|
|
|
// if (p === 1) {
|
|
|
// fileList[index]['status'] = 'done'
|
|
|
// fileList[index]['file']['status'] = 'done'
|
|
|
// props.onChange(fileList)
|
|
|
// }
|
|
|
fileList[index].tempCheckpoint = checkpoint;
|
|
|
setFileList(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_toConsumableArray_js__WEBPACK_IMPORTED_MODULE_1___default()(fileList));
|
|
|
} catch (e) {}
|
|
|
},
|
|
|
checkpoint: fileList[fileList.findIndex(function (item) {
|
|
|
return item.name === name;
|
|
|
})].tempCheckpoint,
|
|
|
callback: {
|
|
|
customValue: {
|
|
|
id: name + ''
|
|
|
},
|
|
|
url: res === null || res === void 0 ? void 0 : (_res$data20 = res.data) === null || _res$data20 === void 0 ? void 0 : _res$data20.callback_url,
|
|
|
host: res === null || res === void 0 ? void 0 : res.data.bucket_host,
|
|
|
body: 'bucket=${bucket}&object=${object}&etag=${etag}&size=${size}&mimeType=${mimeType}&my_var=${x:my_var}&' + (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_9__/* .parseParams */ .rz)(obj)
|
|
|
}
|
|
|
}).then(function (result) {
|
|
|
var _result$data2;
|
|
|
var index = fileList.findIndex(function (item) {
|
|
|
return item.name === name;
|
|
|
});
|
|
|
var status = 'done';
|
|
|
if (((_result$data2 = result.data) === null || _result$data2 === void 0 ? void 0 : _result$data2.status) === 0) {
|
|
|
var _result$data3;
|
|
|
file.response = (_result$data3 = result.data) === null || _result$data3 === void 0 ? void 0 : _result$data3.data;
|
|
|
var _index = fileList.findIndex(function (item) {
|
|
|
return item.name === name;
|
|
|
});
|
|
|
fileList[_index]['status'] = 'done';
|
|
|
fileList[_index]['file']['status'] = 'done';
|
|
|
} else {
|
|
|
var _result$data4;
|
|
|
antd_es_message__WEBPACK_IMPORTED_MODULE_16__/* ["default"].warn */ .ZP.warn((_result$data4 = result.data) === null || _result$data4 === void 0 ? void 0 : _result$data4.message);
|
|
|
status = 'error';
|
|
|
}
|
|
|
fileList[index]['status'] = status;
|
|
|
fileList[index]['file']['status'] = status;
|
|
|
props.onChange(fileList);
|
|
|
resolve(result === null || result === void 0 ? void 0 : result.data);
|
|
|
})["catch"](function (err) {
|
|
|
fileList[fileList.findIndex(function (item) {
|
|
|
return item.name === name;
|
|
|
})]['status'] = 'error';
|
|
|
fileList[fileList.findIndex(function (item) {
|
|
|
return item.name === name;
|
|
|
})]['file']['status'] = 'error';
|
|
|
antd_es_message__WEBPACK_IMPORTED_MODULE_16__/* ["default"].warn */ .ZP.warn("上传失败,请重新尝试");
|
|
|
setFileList(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_toConsumableArray_js__WEBPACK_IMPORTED_MODULE_1___default()(fileList));
|
|
|
props.onChange(fileList);
|
|
|
reject(err);
|
|
|
console.log("err:", err);
|
|
|
});
|
|
|
} catch (e) {
|
|
|
debugger;
|
|
|
}
|
|
|
}));
|
|
|
case 19:
|
|
|
case "end":
|
|
|
return _context4.stop();
|
|
|
}
|
|
|
}, _callee4);
|
|
|
}));
|
|
|
return function _uploadFiles(_x6, _x7) {
|
|
|
return _ref5.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
(0,react__WEBPACK_IMPORTED_MODULE_8__.useEffect)(function () {
|
|
|
if (fileList.every(function (item) {
|
|
|
return item === 'done' || item === 'error';
|
|
|
})) {
|
|
|
props.onComplete(fileList);
|
|
|
}
|
|
|
}, [fileList]);
|
|
|
(0,react__WEBPACK_IMPORTED_MODULE_8__.useEffect)(function () {
|
|
|
if (cancelUpload) {
|
|
|
var _client;
|
|
|
(_client = client) === null || _client === void 0 ? void 0 : _client.cancel();
|
|
|
}
|
|
|
}, [cancelUpload]);
|
|
|
(0,react__WEBPACK_IMPORTED_MODULE_8__.useEffect)(function () {
|
|
|
if (props.uploading) fileList.map( /*#__PURE__*/function () {
|
|
|
var _ref6 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_6___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_5___default()().mark(function _callee5(item) {
|
|
|
var _user$userInfo, res;
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_5___default()().wrap(function _callee5$(_context5) {
|
|
|
while (1) switch (_context5.prev = _context5.next) {
|
|
|
case 0:
|
|
|
if (!((!item.status || item.status === 'error') && !cancelUpload)) {
|
|
|
_context5.next = 6;
|
|
|
break;
|
|
|
}
|
|
|
item.status = 'uploading';
|
|
|
item.file.status = 'uploading';
|
|
|
_context5.next = 5;
|
|
|
return _uploadFiles(item, {
|
|
|
login: user === null || user === void 0 ? void 0 : (_user$userInfo = user.userInfo) === null || _user$userInfo === void 0 ? void 0 : _user$userInfo.login,
|
|
|
container_type: props.container_type,
|
|
|
container_id: props.container_id,
|
|
|
description: props.description,
|
|
|
realFileName: props.realFileName
|
|
|
});
|
|
|
case 5:
|
|
|
res = _context5.sent;
|
|
|
case 6:
|
|
|
case "end":
|
|
|
return _context5.stop();
|
|
|
}
|
|
|
}, _callee5);
|
|
|
}));
|
|
|
return function (_x8) {
|
|
|
return _ref6.apply(this, arguments);
|
|
|
};
|
|
|
}());
|
|
|
}, [props.uploading]);
|
|
|
return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_14__.jsx)(Dragger, _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()({}, _props), {}, {
|
|
|
height: props.height,
|
|
|
className: props.className,
|
|
|
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_14__.jsx)("p", {
|
|
|
className: "ant-upload-hint",
|
|
|
children: props.text || '拖拽文件或者点击上传'
|
|
|
})
|
|
|
}));
|
|
|
};
|
|
|
/* harmony default export */ __webpack_exports__["ZP"] = ((0,umi__WEBPACK_IMPORTED_MODULE_11__.connect)(function (_ref7) {
|
|
|
var loading = _ref7.loading,
|
|
|
globalSetting = _ref7.globalSetting,
|
|
|
user = _ref7.user;
|
|
|
return {
|
|
|
globalSetting: globalSetting,
|
|
|
loading: loading.models.competitions,
|
|
|
user: user
|
|
|
};
|
|
|
})(UploadFile));
|
|
|
|
|
|
/***/ }),
|
|
|
|
|
|
/***/ 42480:
|
|
|
/*!************************!*\
|
|
|
!*** crypto (ignored) ***!
|
|
|
\************************/
|
|
|
/***/ (function() {
|
|
|
|
|
|
/* (ignored) */
|
|
|
|
|
|
/***/ })
|
|
|
|
|
|
}]); |