|
|
(self["webpackChunk"] = self["webpackChunk"] || []).push([[3951,4977,28384,14711],{
|
|
|
|
|
|
/***/ 38415:
|
|
|
/*!*********************************************************!*\
|
|
|
!*** ./src/components/MathematicalGraphics/js/index.js ***!
|
|
|
\*********************************************************/
|
|
|
/***/ (function(module, exports, __webpack_require__) {
|
|
|
|
|
|
var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;var _typeof = (__webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/typeof.js */ 31468)["default"]);
|
|
|
(function () {
|
|
|
if (typeof window.GGBApplet == "function") {
|
|
|
console.warn("deployggb.js was loaded twice");
|
|
|
return;
|
|
|
}
|
|
|
var isRenderGGBElementEnabled = false;
|
|
|
var scriptLoadStarted = false;
|
|
|
var html5AppletsToProcess = null;
|
|
|
var ggbHTML5LoadedCodebaseIsWebSimple = false;
|
|
|
var ggbHTML5LoadedCodebaseVersion = null;
|
|
|
var ggbHTML5LoadedScript = null;
|
|
|
var GGBApplet = function GGBApplet() {
|
|
|
"use strict";
|
|
|
|
|
|
var applet = {};
|
|
|
var ggbVersion = "5.0";
|
|
|
var parameters = {};
|
|
|
var views = null;
|
|
|
var html5NoWebSimple = false;
|
|
|
var html5NoWebSimpleParamExists = false;
|
|
|
var appletID = null;
|
|
|
var initComplete = false;
|
|
|
var html5OverwrittenCodebaseVersion = null;
|
|
|
var html5OverwrittenCodebase = null;
|
|
|
for (var i = 0; i < arguments.length; i++) {
|
|
|
var p = arguments[i];
|
|
|
if (p !== null) {
|
|
|
switch (_typeof(p)) {
|
|
|
case "number":
|
|
|
ggbVersion = p.toFixed(1);
|
|
|
break;
|
|
|
case "string":
|
|
|
if (p.match(new RegExp("^[0-9]\\.[0-9]+$"))) {
|
|
|
ggbVersion = p;
|
|
|
} else {
|
|
|
appletID = p;
|
|
|
}
|
|
|
break;
|
|
|
case "object":
|
|
|
if (typeof p.is3D !== "undefined") {
|
|
|
views = p;
|
|
|
} else {
|
|
|
parameters = p;
|
|
|
}
|
|
|
break;
|
|
|
case "boolean":
|
|
|
html5NoWebSimple = p;
|
|
|
html5NoWebSimpleParamExists = true;
|
|
|
break;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
if (views === null) {
|
|
|
views = {
|
|
|
is3D: false,
|
|
|
AV: false,
|
|
|
SV: false,
|
|
|
CV: false,
|
|
|
EV2: false,
|
|
|
CP: false,
|
|
|
PC: false,
|
|
|
DA: false,
|
|
|
FI: false,
|
|
|
PV: false,
|
|
|
macro: false
|
|
|
};
|
|
|
if (parameters.material_id !== undefined && !html5NoWebSimpleParamExists) {
|
|
|
html5NoWebSimple = true;
|
|
|
}
|
|
|
}
|
|
|
if (appletID !== null && parameters.id === undefined) {
|
|
|
parameters.id = appletID;
|
|
|
}
|
|
|
var jnlpFilePath = "";
|
|
|
var html5Codebase = "";
|
|
|
var isHTML5Offline = false;
|
|
|
var loadedAppletType = null;
|
|
|
var html5CodebaseVersion = null;
|
|
|
var html5CodebaseScript = null;
|
|
|
var html5CodebaseIsWebSimple = false;
|
|
|
var previewImagePath = null;
|
|
|
var previewLoadingPath = null;
|
|
|
var previewPlayPath = null;
|
|
|
var fonts_css_url = null;
|
|
|
var jnlpBaseDir = null;
|
|
|
if (parameters.height !== undefined) {
|
|
|
parameters.height = Math.round(parameters.height);
|
|
|
}
|
|
|
if (parameters.width !== undefined) {
|
|
|
parameters.width = Math.round(parameters.width);
|
|
|
}
|
|
|
var parseVersion = function parseVersion(d) {
|
|
|
return parseFloat(d) > 4 ? parseFloat(d) : 5;
|
|
|
};
|
|
|
applet.setHTML5Codebase = function (codebase, offline) {
|
|
|
html5OverwrittenCodebase = codebase;
|
|
|
setHTML5CodebaseInternal(codebase, offline);
|
|
|
};
|
|
|
applet.setJavaCodebase = applet.setJavaCodebaseVersion = applet.isCompiledInstalled = applet.setPreCompiledScriptPath = applet.setPreCompiledResourcePath = function () {};
|
|
|
applet.setHTML5CodebaseVersion = function (version, offline) {
|
|
|
var numVersion = parseFloat(version);
|
|
|
if (numVersion !== NaN && numVersion < 5) {
|
|
|
console.log("The GeoGebra HTML5 codebase version " + numVersion + " is deprecated. Using version latest instead.");
|
|
|
return;
|
|
|
}
|
|
|
html5OverwrittenCodebaseVersion = version;
|
|
|
setDefaultHTML5CodebaseForVersion(version, offline);
|
|
|
};
|
|
|
applet.getHTML5CodebaseVersion = function () {
|
|
|
return html5CodebaseVersion;
|
|
|
};
|
|
|
applet.getParameters = function () {
|
|
|
return parameters;
|
|
|
};
|
|
|
applet.setFontsCSSURL = function (url) {
|
|
|
fonts_css_url = url;
|
|
|
};
|
|
|
applet.setGiacJSURL = function (url) {};
|
|
|
applet.setJNLPFile = function (newJnlpFilePath) {
|
|
|
jnlpFilePath = newJnlpFilePath;
|
|
|
};
|
|
|
applet.setJNLPBaseDir = function (baseDir) {};
|
|
|
applet.inject = function () {
|
|
|
function isOwnIFrame() {
|
|
|
return window.frameElement && window.frameElement.getAttribute("data-singleton");
|
|
|
}
|
|
|
var type = "auto";
|
|
|
var container_ID = parameters.id;
|
|
|
var container;
|
|
|
var noPreview = false;
|
|
|
for (var i = 0; i < arguments.length; i++) {
|
|
|
var p = arguments[i];
|
|
|
if (typeof p === "string") {
|
|
|
p = p.toLowerCase();
|
|
|
if (p.match(/^(prefer)?(java|html5|compiled|auto|screenshot)$/)) {
|
|
|
type = p;
|
|
|
} else {
|
|
|
container_ID = arguments[i];
|
|
|
}
|
|
|
} else if (typeof p === "boolean") {
|
|
|
noPreview = p;
|
|
|
} else if (p instanceof HTMLElement) {
|
|
|
container = p;
|
|
|
}
|
|
|
}
|
|
|
continueInject();
|
|
|
function continueInject() {
|
|
|
if (!initComplete) {
|
|
|
setTimeout(continueInject, 200);
|
|
|
return;
|
|
|
}
|
|
|
type = detectAppletType(type);
|
|
|
var appletElem = container || document.getElementById(container_ID);
|
|
|
if (!appletElem) {
|
|
|
console.log("possibly bug on ajax loading? ");
|
|
|
return;
|
|
|
}
|
|
|
applet.removeExistingApplet(appletElem, false);
|
|
|
if (parameters.width === undefined && appletElem.clientWidth) {
|
|
|
parameters.width = appletElem.clientWidth;
|
|
|
}
|
|
|
if (parameters.height === undefined && appletElem.clientHeight) {
|
|
|
parameters.height = appletElem.clientHeight;
|
|
|
}
|
|
|
if (!(parameters.width && parameters.height) && type === "html5") {
|
|
|
delete parameters.width;
|
|
|
delete parameters.height;
|
|
|
}
|
|
|
loadedAppletType = type;
|
|
|
if (type === "screenshot") {
|
|
|
injectScreenshot(appletElem, parameters);
|
|
|
} else {
|
|
|
var playButton = false;
|
|
|
if (parameters.hasOwnProperty("playButton") && parameters.playButton || parameters.hasOwnProperty("clickToLoad") && parameters.clickToLoad) {
|
|
|
playButton = true;
|
|
|
} else if (parameters.hasOwnProperty("playButtonAutoDecide") && parameters.playButtonAutoDecide) {
|
|
|
playButton = (!isInIframe() || isOwnIFrame()) && isMobileDevice();
|
|
|
}
|
|
|
if (playButton) {
|
|
|
loadedAppletType = "screenshot";
|
|
|
injectPlayButton(appletElem, parameters, noPreview, type);
|
|
|
} else {
|
|
|
injectHTML5Applet(appletElem, parameters, noPreview);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
return;
|
|
|
};
|
|
|
function isInIframe() {
|
|
|
try {
|
|
|
return window.self !== window.top;
|
|
|
} catch (e) {
|
|
|
return true;
|
|
|
}
|
|
|
}
|
|
|
function isMobileDevice() {
|
|
|
if (parameters.hasOwnProperty("screenshotGenerator") && parameters.screenshotGenerator) {
|
|
|
return false;
|
|
|
}
|
|
|
return Math.max(screen.width, screen.height) < 800;
|
|
|
}
|
|
|
applet.getViews = function () {
|
|
|
return views;
|
|
|
};
|
|
|
applet.isJavaInstalled = function () {
|
|
|
return false;
|
|
|
};
|
|
|
var fetchParametersFromApi = function fetchParametersFromApi(successCallback) {
|
|
|
var onSuccess = function onSuccess(text) {
|
|
|
var jsonData = JSON.parse(text);
|
|
|
var isGeoGebra = function isGeoGebra(element) {
|
|
|
return element.type == "G" || element.type == "E";
|
|
|
};
|
|
|
var item = jsonData.elements ? jsonData.elements.filter(isGeoGebra)[0] : jsonData;
|
|
|
if (!item || !item.url) {
|
|
|
onError();
|
|
|
return;
|
|
|
}
|
|
|
parameters.fileName = item.url;
|
|
|
updateAppletSettings(item.settings || {});
|
|
|
views.is3D = true;
|
|
|
var imageDir = "https://www.geogebra.org/images/";
|
|
|
applet.setPreviewImage(previewImagePath || item.previewUrl, imageDir + "GeoGebra_loading.png", imageDir + "applet_play.png");
|
|
|
successCallback();
|
|
|
};
|
|
|
var onError = function onError() {
|
|
|
parameters.onError && parameters.onError();
|
|
|
log("Error: Fetching material (id " + parameters.material_id + ") failed.", parameters);
|
|
|
};
|
|
|
var host = location.host.match(/(www|stage|beta|groot|alpha).geogebra.(org|net)/) ? location.host : "www.geogebra.org";
|
|
|
var path = "/materials/" + parameters.material_id + "?scope=basic";
|
|
|
sendCorsRequest("https://" + host + "/api/proxy.php?path=" + encodeURIComponent(path), onSuccess, onError);
|
|
|
};
|
|
|
function updateAppletSettings(settings) {
|
|
|
var parameterNames = ["width", "height", "showToolBar", "showMenuBar", "showAlgebraInput", "allowStyleBar", "showResetIcon", "enableLabelDrags", "enableShiftDragZoom", "enableRightClick", "appName"];
|
|
|
["enableLabelDrags", "enableShiftDragZoom", "enableRightClick"].forEach(function (name) {
|
|
|
settings[name] = !!settings[name];
|
|
|
});
|
|
|
parameterNames.forEach(function (name) {
|
|
|
if (parameters[name] === undefined && settings[name] !== undefined) {
|
|
|
parameters[name] = settings[name];
|
|
|
}
|
|
|
});
|
|
|
if (parameters.showToolBarHelp === undefined) {
|
|
|
parameters.showToolBarHelp = parameters.showToolBar;
|
|
|
}
|
|
|
}
|
|
|
function sendCorsRequest(url, onSuccess, onError) {
|
|
|
var xhr = new XMLHttpRequest();
|
|
|
xhr.open("GET", url);
|
|
|
xhr.onload = function () {
|
|
|
onSuccess(xhr.responseText);
|
|
|
};
|
|
|
xhr.onerror = onError;
|
|
|
xhr.send();
|
|
|
}
|
|
|
applet.isHTML5Installed = function () {
|
|
|
return true;
|
|
|
};
|
|
|
applet.getLoadedAppletType = function () {
|
|
|
return loadedAppletType;
|
|
|
};
|
|
|
applet.setPreviewImage = function (previewFilePath, loadingFilePath, playFilePath) {
|
|
|
previewImagePath = previewFilePath;
|
|
|
previewLoadingPath = loadingFilePath;
|
|
|
previewPlayPath = playFilePath;
|
|
|
};
|
|
|
applet.removeExistingApplet = function (appletParent, showScreenshot) {
|
|
|
var i;
|
|
|
if (typeof appletParent === "string") {
|
|
|
appletParent = document.getElementById(appletParent);
|
|
|
}
|
|
|
loadedAppletType = null;
|
|
|
var removedID = null;
|
|
|
for (i = 0; i < appletParent.childNodes.length; i++) {
|
|
|
var currentChild = appletParent.childNodes[i];
|
|
|
var className = currentChild.className;
|
|
|
if (className === "applet_screenshot") {
|
|
|
if (showScreenshot) {
|
|
|
currentChild.style.display = "block";
|
|
|
loadedAppletType = "screenshot";
|
|
|
} else {
|
|
|
currentChild.style.display = "none";
|
|
|
}
|
|
|
} else if (className !== "applet_scaler prerender") {
|
|
|
appletParent.removeChild(currentChild);
|
|
|
removedID = className && className.indexOf("appletParameters") != -1 ? currentChild.id : null;
|
|
|
i--;
|
|
|
}
|
|
|
}
|
|
|
var appName = parameters.id !== undefined ? parameters.id : removedID;
|
|
|
var app = window[appName];
|
|
|
if (app && typeof app.getBase64 === "function") {
|
|
|
app.remove();
|
|
|
window[appName] = null;
|
|
|
}
|
|
|
};
|
|
|
applet.refreshHitPoints = function () {
|
|
|
if (parseVersion(ggbHTML5LoadedCodebaseVersion) >= 5) {
|
|
|
return true;
|
|
|
}
|
|
|
var app = applet.getAppletObject();
|
|
|
if (app) {
|
|
|
if (typeof app.recalculateEnvironments === "function") {
|
|
|
app.recalculateEnvironments();
|
|
|
return true;
|
|
|
}
|
|
|
}
|
|
|
return false;
|
|
|
};
|
|
|
applet.startAnimation = function () {
|
|
|
var app = applet.getAppletObject();
|
|
|
if (app) {
|
|
|
if (typeof app.startAnimation === "function") {
|
|
|
app.startAnimation();
|
|
|
return true;
|
|
|
}
|
|
|
}
|
|
|
return false;
|
|
|
};
|
|
|
applet.stopAnimation = function () {
|
|
|
var app = applet.getAppletObject();
|
|
|
if (app) {
|
|
|
if (typeof app.stopAnimation === "function") {
|
|
|
app.stopAnimation();
|
|
|
return true;
|
|
|
}
|
|
|
}
|
|
|
return false;
|
|
|
};
|
|
|
applet.getAppletObject = function () {
|
|
|
var appName = parameters.id !== undefined ? parameters.id : "ggbApplet";
|
|
|
return window[appName];
|
|
|
};
|
|
|
applet.resize = function () {};
|
|
|
var appendParam = function appendParam(applet, name, value) {
|
|
|
var param = document.createElement("param");
|
|
|
param.setAttribute("name", name);
|
|
|
param.setAttribute("value", value);
|
|
|
applet.appendChild(param);
|
|
|
};
|
|
|
var valBoolean = function valBoolean(value) {
|
|
|
return value && value !== "false";
|
|
|
};
|
|
|
var injectHTML5Applet = function injectHTML5Applet(appletElem, parameters, noPreview) {
|
|
|
if (parseVersion(html5CodebaseVersion) <= 4.2) {
|
|
|
noPreview = true;
|
|
|
}
|
|
|
var loadScript = !isRenderGGBElementEnabled && !scriptLoadStarted;
|
|
|
if (!isRenderGGBElementEnabled && !scriptLoadStarted || ggbHTML5LoadedCodebaseVersion !== html5CodebaseVersion || ggbHTML5LoadedCodebaseIsWebSimple && !html5CodebaseIsWebSimple) {
|
|
|
loadScript = true;
|
|
|
isRenderGGBElementEnabled = false;
|
|
|
scriptLoadStarted = false;
|
|
|
}
|
|
|
var article = document.createElement("div");
|
|
|
article.classList.add("appletParameters", "notranslate");
|
|
|
var oriWidth = parameters.width;
|
|
|
var oriHeight = parameters.height;
|
|
|
parameters.disableAutoScale = parameters.disableAutoScale === undefined ? GGBAppletUtils.isFlexibleWorksheetEditor() : parameters.disableAutoScale;
|
|
|
if (parameters.width !== undefined) {
|
|
|
if (parseVersion(html5CodebaseVersion) <= 4.4) {
|
|
|
if (valBoolean(parameters.showToolBar)) {
|
|
|
parameters.height -= 7;
|
|
|
}
|
|
|
if (valBoolean(parameters.showAlgebraInput)) {
|
|
|
parameters.height -= 37;
|
|
|
}
|
|
|
if (parameters.width < 605 && valBoolean(parameters.showToolBar)) {
|
|
|
parameters.width = 605;
|
|
|
oriWidth = 605;
|
|
|
}
|
|
|
} else {
|
|
|
var minWidth = 100;
|
|
|
if (valBoolean(parameters.showToolBar) || valBoolean(parameters.showMenuBar)) {
|
|
|
if (parameters.hasOwnProperty("customToolBar")) {
|
|
|
parameters.customToolbar = parameters.customToolBar;
|
|
|
}
|
|
|
minWidth = valBoolean(parameters.showMenuBar) ? 245 : 155;
|
|
|
}
|
|
|
if (oriWidth < minWidth) {
|
|
|
parameters.width = minWidth;
|
|
|
oriWidth = minWidth;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
article.style.border = "none";
|
|
|
article.style.display = "inline-block";
|
|
|
for (var key in parameters) {
|
|
|
if (parameters.hasOwnProperty(key) && key !== "appletOnLoad") {
|
|
|
article.setAttribute("data-param-" + key, parameters[key]);
|
|
|
}
|
|
|
}
|
|
|
if (fonts_css_url) {
|
|
|
article.setAttribute("data-param-fontscssurl", fonts_css_url);
|
|
|
}
|
|
|
applet.resize = function () {
|
|
|
GGBAppletUtils.responsiveResize(appletElem, parameters);
|
|
|
};
|
|
|
window.addEventListener("resize", function (evt) {
|
|
|
applet.resize();
|
|
|
});
|
|
|
var oriAppletOnload = typeof parameters.appletOnLoad === "function" ? parameters.appletOnLoad : function () {};
|
|
|
if (!noPreview && parameters.width !== undefined) {
|
|
|
if (!parameters.hasOwnProperty("showSplash")) {
|
|
|
article.setAttribute("data-param-showSplash", "false");
|
|
|
}
|
|
|
var previewPositioner = appletElem.querySelector(".applet_scaler.prerender");
|
|
|
var preRendered = previewPositioner !== null;
|
|
|
if (!preRendered) {
|
|
|
var previewContainer = createScreenShotDiv(oriWidth, oriHeight, parameters.borderColor, false);
|
|
|
previewPositioner = document.createElement("div");
|
|
|
previewPositioner.className = "applet_scaler";
|
|
|
previewPositioner.style.position = "relative";
|
|
|
previewPositioner.style.display = "block";
|
|
|
previewPositioner.style.width = oriWidth + "px";
|
|
|
previewPositioner.style.height = oriHeight + "px";
|
|
|
} else {
|
|
|
var previewContainer = previewPositioner.querySelector(".ggb_preview");
|
|
|
}
|
|
|
if (window.GGBT_spinner) {
|
|
|
window.GGBT_spinner.attachSpinner(previewPositioner, "66%");
|
|
|
}
|
|
|
if (parseVersion(html5CodebaseVersion) >= 5) {
|
|
|
parameters.appletOnLoad = function (api) {
|
|
|
var preview = appletElem.querySelector(".ggb_preview");
|
|
|
if (preview) {
|
|
|
preview.parentNode.removeChild(preview);
|
|
|
}
|
|
|
if (window.GGBT_spinner) {
|
|
|
window.GGBT_spinner.removeSpinner(previewPositioner);
|
|
|
}
|
|
|
if (window.GGBT_wsf_view) {
|
|
|
$(window).trigger("resize");
|
|
|
}
|
|
|
oriAppletOnload(api);
|
|
|
};
|
|
|
if (!preRendered) {
|
|
|
previewPositioner.appendChild(previewContainer);
|
|
|
}
|
|
|
} else {
|
|
|
article.appendChild(previewContainer);
|
|
|
}
|
|
|
previewPositioner.appendChild(article);
|
|
|
if (!preRendered) {
|
|
|
appletElem.appendChild(previewPositioner);
|
|
|
}
|
|
|
setTimeout(function () {
|
|
|
applet.resize();
|
|
|
}, 1);
|
|
|
} else {
|
|
|
var appletScaler = document.createElement("div");
|
|
|
appletScaler.className = "applet_scaler";
|
|
|
appletScaler.style.position = "relative";
|
|
|
appletScaler.style.display = "block";
|
|
|
appletScaler.appendChild(article);
|
|
|
appletElem.appendChild(appletScaler);
|
|
|
parameters.appletOnLoad = function (api) {
|
|
|
applet.resize();
|
|
|
oriAppletOnload(api);
|
|
|
};
|
|
|
}
|
|
|
function renderGGBElementWithParams(article, parameters) {
|
|
|
if (parameters && typeof parameters.appletOnLoad === "function" && typeof renderGGBElement === "function") {
|
|
|
renderGGBElement(article, parameters.appletOnLoad);
|
|
|
} else {
|
|
|
renderGGBElement(article);
|
|
|
}
|
|
|
log("GeoGebra HTML5 applet injected and rendered with previously loaded codebase.", parameters);
|
|
|
}
|
|
|
function renderGGBElementOnTube(a, parameters) {
|
|
|
if (typeof renderGGBElement === "undefined") {
|
|
|
if (html5AppletsToProcess === null) {
|
|
|
html5AppletsToProcess = [];
|
|
|
}
|
|
|
html5AppletsToProcess.push({
|
|
|
article: a,
|
|
|
params: parameters
|
|
|
});
|
|
|
window.renderGGBElementReady = function () {
|
|
|
isRenderGGBElementEnabled = true;
|
|
|
if (html5AppletsToProcess !== null && html5AppletsToProcess.length) {
|
|
|
html5AppletsToProcess.forEach(function (obj) {
|
|
|
renderGGBElementWithParams(obj.article, obj.params);
|
|
|
});
|
|
|
html5AppletsToProcess = null;
|
|
|
}
|
|
|
};
|
|
|
if (parseVersion(html5CodebaseVersion) < 5) {
|
|
|
a.className += " geogebraweb";
|
|
|
}
|
|
|
} else {
|
|
|
renderGGBElementWithParams(a, parameters);
|
|
|
}
|
|
|
}
|
|
|
if (loadScript) {
|
|
|
scriptLoadStarted = true;
|
|
|
for (var i = 0; i < article.childNodes.length; i++) {
|
|
|
var tag = article.childNodes[i].tagName;
|
|
|
if (tag === "TABLE") {
|
|
|
article.removeChild(article.childNodes[i]);
|
|
|
i--;
|
|
|
}
|
|
|
}
|
|
|
if (ggbHTML5LoadedScript !== null) {
|
|
|
var el = document.querySelector('script[src="' + ggbHTML5LoadedScript + '"]');
|
|
|
if (el !== undefined && el !== null) {
|
|
|
el.parentNode.removeChild(el);
|
|
|
}
|
|
|
}
|
|
|
var script = document.createElement("script");
|
|
|
var scriptLoaded = function scriptLoaded() {
|
|
|
renderGGBElementOnTube(article, parameters);
|
|
|
};
|
|
|
script.src = html5Codebase + html5CodebaseScript;
|
|
|
ggbHTML5LoadedCodebaseIsWebSimple = html5CodebaseIsWebSimple;
|
|
|
ggbHTML5LoadedCodebaseVersion = html5CodebaseVersion;
|
|
|
ggbHTML5LoadedScript = script.src;
|
|
|
log("GeoGebra HTML5 codebase loaded: '" + html5Codebase + "'.", parameters);
|
|
|
if (!html5OverwrittenCodebase && (!html5OverwrittenCodebaseVersion || html5OverwrittenCodebaseVersion == "5.0")) {
|
|
|
if (html5CodebaseIsWebSimple) {
|
|
|
webSimple.succeeded = webSimple.succeeded || webSimple();
|
|
|
} else {
|
|
|
web3d.succeeded = web3d.succeeded || web3d();
|
|
|
}
|
|
|
scriptLoaded();
|
|
|
} else if (html5Codebase.requirejs) {
|
|
|
__webpack_require__.e(/*! AMD require */ 73644).then(function() { var __WEBPACK_AMD_REQUIRE_ARRAY__ = [__webpack_require__(/*! ./web3d */ 73644)]; (scriptLoaded).apply(null, __WEBPACK_AMD_REQUIRE_ARRAY__);}.bind(this))['catch'](__webpack_require__.oe);
|
|
|
} else {
|
|
|
script.onload = scriptLoaded;
|
|
|
appletElem.appendChild(script);
|
|
|
}
|
|
|
} else {
|
|
|
renderGGBElementOnTube(article, parameters);
|
|
|
}
|
|
|
parameters.height = oriHeight;
|
|
|
parameters.width = oriWidth;
|
|
|
};
|
|
|
var injectScreenshot = function injectScreenshot(appletElem, parameters, showPlayButton) {
|
|
|
var previewContainer = createScreenShotDiv(parameters.width, parameters.height, parameters.borderColor, showPlayButton);
|
|
|
var previewPositioner = document.createElement("div");
|
|
|
previewPositioner.style.position = "relative";
|
|
|
previewPositioner.style.display = "block";
|
|
|
previewPositioner.style.width = parameters.width + "px";
|
|
|
previewPositioner.style.height = parameters.height + "px";
|
|
|
previewPositioner.className = "applet_screenshot applet_scaler" + (showPlayButton ? " applet_screenshot_play" : "");
|
|
|
previewPositioner.appendChild(previewContainer);
|
|
|
var scale = GGBAppletUtils.getScale(parameters, appletElem, showPlayButton);
|
|
|
if (showPlayButton) {
|
|
|
appletElem.appendChild(getPlayButton());
|
|
|
if (!window.GGBT_wsf_view) {
|
|
|
appletElem.style.position = "relative";
|
|
|
}
|
|
|
} else if (window.GGBT_spinner) {
|
|
|
window.GGBT_spinner.attachSpinner(previewPositioner, "66%");
|
|
|
}
|
|
|
appletElem.appendChild(previewPositioner);
|
|
|
if (scale !== 1 && !isNaN(scale)) {
|
|
|
GGBAppletUtils.scaleElement(previewPositioner, scale);
|
|
|
previewPositioner.style.width = parameters.width + "px";
|
|
|
previewPositioner.style.height = parameters.height + "px";
|
|
|
previewPositioner.parentNode.style.width = parameters.width * scale + "px";
|
|
|
previewPositioner.parentNode.style.height = parameters.height * scale + "px";
|
|
|
}
|
|
|
applet.resize = function () {
|
|
|
resizeScreenshot(appletElem, previewContainer, previewPositioner, showPlayButton);
|
|
|
};
|
|
|
window.addEventListener("resize", function (evt) {
|
|
|
applet.resize();
|
|
|
});
|
|
|
applet.resize();
|
|
|
};
|
|
|
function resizeScreenshot(appletElem, previewContainer, previewPositioner, showPlayButton) {
|
|
|
if (!appletElem.contains(previewContainer)) {
|
|
|
return;
|
|
|
}
|
|
|
if (_typeof(window.GGBT_wsf_view) === "object" && window.GGBT_wsf_view.isFullscreen()) {
|
|
|
if (appletElem.id !== "fullscreencontent") {
|
|
|
return;
|
|
|
}
|
|
|
window.GGBT_wsf_view.setCloseBtnPosition(appletElem);
|
|
|
}
|
|
|
var scale = GGBAppletUtils.getScale(parameters, appletElem, showPlayButton);
|
|
|
if (previewPositioner.parentNode !== null) {
|
|
|
if (!isNaN(scale) && scale !== 1) {
|
|
|
GGBAppletUtils.scaleElement(previewPositioner, scale);
|
|
|
previewPositioner.parentNode.style.width = parameters.width * scale + "px";
|
|
|
previewPositioner.parentNode.style.height = parameters.height * scale + "px";
|
|
|
} else {
|
|
|
GGBAppletUtils.scaleElement(previewPositioner, 1);
|
|
|
previewPositioner.parentNode.style.width = parameters.width + "px";
|
|
|
previewPositioner.parentNode.style.height = parameters.height + "px";
|
|
|
}
|
|
|
}
|
|
|
if (_typeof(window.GGBT_wsf_view) === "object" && window.GGBT_wsf_view.isFullscreen()) {
|
|
|
GGBAppletUtils.positionCenter(appletElem);
|
|
|
}
|
|
|
if (_typeof(window.GGBT_ws_header_footer) === "object") {
|
|
|
window.GGBT_ws_header_footer.setWsScrollerHeight();
|
|
|
}
|
|
|
}
|
|
|
applet.onExitFullscreen = function (fullscreenContainer, appletElem) {
|
|
|
appletElem.appendChild(fullscreenContainer);
|
|
|
};
|
|
|
var injectPlayButton = function injectPlayButton(appletElem, parameters, noPreview, type) {
|
|
|
injectScreenshot(appletElem, parameters, true);
|
|
|
var play = function play() {
|
|
|
var elems = [];
|
|
|
for (i = 0; i < appletElem.childNodes.length; i++) {
|
|
|
elems.push(appletElem.childNodes[i]);
|
|
|
}
|
|
|
if (window.GGBT_wsf_view) {
|
|
|
var content = window.GGBT_wsf_view.renderFullScreen(appletElem, parameters.id);
|
|
|
var container = document.getElementById("fullscreencontainer");
|
|
|
var oldcontent = jQuery(appletElem).find(".fullscreencontent");
|
|
|
if (oldcontent.length > 0) {
|
|
|
content.remove();
|
|
|
oldcontent.attr("id", "fullscreencontent").show();
|
|
|
jQuery(container).append(oldcontent);
|
|
|
window.dispatchEvent(new Event("resize"));
|
|
|
} else {
|
|
|
injectHTML5Applet(content, parameters, false);
|
|
|
}
|
|
|
window.GGBT_wsf_view.launchFullScreen(container);
|
|
|
} else {
|
|
|
loadedAppletType = type;
|
|
|
injectHTML5Applet(appletElem, parameters, false);
|
|
|
}
|
|
|
if (!window.GGBT_wsf_view) {
|
|
|
for (i = 0; i < elems.length; i++) {
|
|
|
appletElem.removeChild(elems[i]);
|
|
|
}
|
|
|
}
|
|
|
};
|
|
|
var imgs = appletElem.getElementsByClassName("ggb_preview_play");
|
|
|
for (var i = 0; i < imgs.length; i++) {
|
|
|
imgs[i].addEventListener("click", play, false);
|
|
|
imgs[i].addEventListener("ontouchstart", play, false);
|
|
|
}
|
|
|
if (typeof window.ggbAppletPlayerOnload === "function") {
|
|
|
window.ggbAppletPlayerOnload(appletElem);
|
|
|
}
|
|
|
if (isMobileDevice() && window.GGBT_wsf_view) {
|
|
|
$(".wsf-element-fullscreen-button").remove();
|
|
|
}
|
|
|
};
|
|
|
var getPlayButton = function getPlayButton() {
|
|
|
var playButtonContainer = document.createElement("div");
|
|
|
playButtonContainer.className = "ggb_preview_play icon-applet-play";
|
|
|
if (!window.GGBT_wsf_view) {
|
|
|
var css = "" + ".icon-applet-play {" + " width: 100%;" + " height: 100%;box-sizing: border-box;position: absolute;z-index: 1001;cursor: pointer;border-width: 0px;" + " background-color: transparent;background-repeat: no-repeat;left: 0;top: 0;background-position: center center;" + ' background-image: url("https://www.geogebra.org/images/worksheet/icon-start-applet.png");' + "}" + ".icon-applet-play:hover {" + 'background-image: url("https://www.geogebra.org/images/worksheet/icon-start-applet-hover.png");' + "}";
|
|
|
var style = document.createElement("style");
|
|
|
if (style.styleSheet) {
|
|
|
style.styleSheet.cssText = css;
|
|
|
} else {
|
|
|
style.appendChild(document.createTextNode(css));
|
|
|
}
|
|
|
document.getElementsByTagName("head")[0].appendChild(style);
|
|
|
}
|
|
|
return playButtonContainer;
|
|
|
};
|
|
|
var createScreenShotDiv = function createScreenShotDiv(oriWidth, oriHeight, borderColor, showPlayButton) {
|
|
|
var previewContainer = document.createElement("div");
|
|
|
previewContainer.className = "ggb_preview";
|
|
|
previewContainer.style.position = "absolute";
|
|
|
previewContainer.style.zIndex = "90";
|
|
|
previewContainer.style.width = oriWidth - 2 + "px";
|
|
|
previewContainer.style.height = oriHeight - 2 + "px";
|
|
|
previewContainer.style.top = "0px";
|
|
|
previewContainer.style.left = "0px";
|
|
|
previewContainer.style.overflow = "hidden";
|
|
|
previewContainer.style.backgroundColor = "white";
|
|
|
var bc = "lightgrey";
|
|
|
if (borderColor !== undefined) {
|
|
|
if (borderColor === "none") {
|
|
|
bc = "transparent";
|
|
|
} else {
|
|
|
bc = borderColor;
|
|
|
}
|
|
|
}
|
|
|
previewContainer.style.border = "1px solid " + bc;
|
|
|
var preview = document.createElement("img");
|
|
|
preview.style.position = "relative";
|
|
|
preview.style.zIndex = "1000";
|
|
|
preview.style.top = "-1px";
|
|
|
preview.style.left = "-1px";
|
|
|
if (previewImagePath !== null) {
|
|
|
preview.setAttribute("src", previewImagePath);
|
|
|
}
|
|
|
preview.style.opacity = .7;
|
|
|
if (previewLoadingPath !== null) {
|
|
|
var previewOverlay;
|
|
|
var pWidth, pHeight;
|
|
|
if (!showPlayButton) {
|
|
|
previewOverlay = document.createElement("img");
|
|
|
previewOverlay.style.position = "absolute";
|
|
|
previewOverlay.style.zIndex = "1001";
|
|
|
previewOverlay.style.opacity = 1;
|
|
|
preview.style.opacity = .3;
|
|
|
pWidth = 360;
|
|
|
if (pWidth > oriWidth / 4 * 3) {
|
|
|
pWidth = oriWidth / 4 * 3;
|
|
|
}
|
|
|
pHeight = pWidth / 5.8;
|
|
|
previewOverlay.setAttribute("src", previewLoadingPath);
|
|
|
previewOverlay.setAttribute("width", pWidth);
|
|
|
previewOverlay.setAttribute("height", pHeight);
|
|
|
var pX = (oriWidth - pWidth) / 2;
|
|
|
var pY = (oriHeight - pHeight) / 2;
|
|
|
previewOverlay.style.left = pX + "px";
|
|
|
previewOverlay.style.top = pY + "px";
|
|
|
previewContainer.appendChild(previewOverlay);
|
|
|
}
|
|
|
}
|
|
|
previewContainer.appendChild(preview);
|
|
|
return previewContainer;
|
|
|
};
|
|
|
var detectAppletType = function detectAppletType(preferredType) {
|
|
|
preferredType = preferredType.toLowerCase();
|
|
|
if (preferredType === "html5" || preferredType === "screenshot") {
|
|
|
return preferredType;
|
|
|
}
|
|
|
return "html5";
|
|
|
};
|
|
|
var modules = ["web", "webSimple", "web3d", "tablet", "tablet3d", "phone"];
|
|
|
var setDefaultHTML5CodebaseForVersion = function setDefaultHTML5CodebaseForVersion(version, offline) {
|
|
|
html5CodebaseVersion = version;
|
|
|
if (offline) {
|
|
|
setHTML5CodebaseInternal(html5CodebaseVersion, true);
|
|
|
return;
|
|
|
}
|
|
|
var hasWebSimple = !html5NoWebSimple;
|
|
|
if (hasWebSimple) {
|
|
|
var v = parseVersion(html5CodebaseVersion);
|
|
|
if (!isNaN(v) && v < 4.4) {
|
|
|
hasWebSimple = false;
|
|
|
}
|
|
|
}
|
|
|
var protocol, codebase;
|
|
|
if (window.location.protocol.substr(0, 4) === "http") {
|
|
|
protocol = window.location.protocol;
|
|
|
} else {
|
|
|
protocol = "http:";
|
|
|
}
|
|
|
var index = html5CodebaseVersion.indexOf("//");
|
|
|
if (index > 0) {
|
|
|
codebase = html5CodebaseVersion;
|
|
|
} else if (index === 0) {
|
|
|
codebase = protocol + html5CodebaseVersion;
|
|
|
} else {
|
|
|
codebase = "https://www.geogebra.org/apps/5.2.814.0/";
|
|
|
}
|
|
|
for (var key in modules) {
|
|
|
if (html5CodebaseVersion.slice(modules[key].length * -1) === modules[key] || html5CodebaseVersion.slice((modules[key].length + 1) * -1) === modules[key] + "/") {
|
|
|
setHTML5CodebaseInternal(codebase, false);
|
|
|
return;
|
|
|
}
|
|
|
}
|
|
|
if (!GGBAppletUtils.isFlexibleWorksheetEditor() && hasWebSimple && !views.is3D && !views.AV && !views.SV && !views.CV && !views.EV2 && !views.CP && !views.PC && !views.DA && !views.FI && !views.PV && !valBoolean(parameters.showToolBar) && !valBoolean(parameters.showMenuBar) && !valBoolean(parameters.showAlgebraInput) && !valBoolean(parameters.enableRightClick) && (!parameters.appName || parameters.appName == "classic")) {
|
|
|
codebase += "webSimple/";
|
|
|
} else {
|
|
|
codebase += "web3d/";
|
|
|
}
|
|
|
setHTML5CodebaseInternal(codebase, false);
|
|
|
};
|
|
|
var setHTML5CodebaseInternal = function setHTML5CodebaseInternal(codebase, offline) {
|
|
|
if (codebase.requirejs) {
|
|
|
html5Codebase = codebase;
|
|
|
return;
|
|
|
}
|
|
|
if (codebase.slice(-1) !== "/") {
|
|
|
codebase += "/";
|
|
|
}
|
|
|
html5Codebase = codebase;
|
|
|
if (offline === null) {
|
|
|
offline = codebase.indexOf("http") === -1;
|
|
|
}
|
|
|
isHTML5Offline = offline;
|
|
|
html5CodebaseScript = "web.nocache.js";
|
|
|
html5CodebaseIsWebSimple = false;
|
|
|
var folders = html5Codebase.split("/");
|
|
|
if (folders.length > 1) {
|
|
|
if (!offline && folders[folders.length - 2] === "webSimple") {
|
|
|
html5CodebaseScript = "webSimple.nocache.js";
|
|
|
html5CodebaseIsWebSimple = true;
|
|
|
} else if (modules.indexOf(folders[folders.length - 2]) >= 0) {
|
|
|
html5CodebaseScript = folders[folders.length - 2] + ".nocache.js";
|
|
|
}
|
|
|
}
|
|
|
folders = codebase.split("/");
|
|
|
html5CodebaseVersion = folders[folders.length - 3];
|
|
|
if (html5CodebaseVersion.substr(0, 4) === "test") {
|
|
|
html5CodebaseVersion = html5CodebaseVersion.substr(4, 1) + "." + html5CodebaseVersion.substr(5, 1);
|
|
|
} else if (html5CodebaseVersion.substr(0, 3) === "war" || html5CodebaseVersion.substr(0, 4) === "beta") {
|
|
|
html5CodebaseVersion = "5.0";
|
|
|
}
|
|
|
var numVersion = parseFloat(html5CodebaseVersion);
|
|
|
if (numVersion !== NaN && numVersion < 5 && codebase.indexOf("geogebra.org") >= 0) {
|
|
|
console.log("The GeoGebra HTML5 codebase version " + numVersion + " is deprecated. Using version latest instead.");
|
|
|
setDefaultHTML5CodebaseForVersion("5.0", offline);
|
|
|
}
|
|
|
};
|
|
|
var log = function log(text, parameters) {
|
|
|
if (window.console && window.console.log) {
|
|
|
if (!parameters || typeof parameters.showLogging === "undefined" || parameters.showLogging && parameters.showLogging !== "false") {
|
|
|
console.log(text);
|
|
|
}
|
|
|
}
|
|
|
};
|
|
|
if (parameters.material_id !== undefined) {
|
|
|
fetchParametersFromApi(continueInit);
|
|
|
} else {
|
|
|
continueInit();
|
|
|
}
|
|
|
function continueInit() {
|
|
|
var html5Version = ggbVersion;
|
|
|
if (html5OverwrittenCodebaseVersion !== null) {
|
|
|
html5Version = html5OverwrittenCodebaseVersion;
|
|
|
} else {
|
|
|
if (parseFloat(html5Version) < 5) {
|
|
|
html5Version = "5.0";
|
|
|
}
|
|
|
}
|
|
|
setDefaultHTML5CodebaseForVersion(html5Version, false);
|
|
|
if (html5OverwrittenCodebase !== null) {
|
|
|
setHTML5CodebaseInternal(html5OverwrittenCodebase, isHTML5Offline);
|
|
|
}
|
|
|
initComplete = true;
|
|
|
}
|
|
|
return applet;
|
|
|
};
|
|
|
var GGBAppletUtils = function () {
|
|
|
"use strict";
|
|
|
|
|
|
function isFlexibleWorksheetEditor() {
|
|
|
return window.GGBT_wsf_edit !== undefined;
|
|
|
}
|
|
|
function scaleElement(el, scale) {
|
|
|
if (scale != 1) {
|
|
|
el.style.transformOrigin = "0% 0% 0px";
|
|
|
el.style.webkitTransformOrigin = "0% 0% 0px";
|
|
|
el.style.transform = "scale(" + scale + "," + scale + ")";
|
|
|
el.style.webkitTransform = "scale(" + scale + "," + scale + ")";
|
|
|
el.style.maxWidth = "initial";
|
|
|
if (el.querySelector(".ggb_preview") !== null) {
|
|
|
el.querySelector(".ggb_preview").style.maxWidth = "initial";
|
|
|
}
|
|
|
if (el.querySelectorAll(".ggb_preview img")[0] !== undefined) {
|
|
|
el.querySelectorAll(".ggb_preview img")[0].style.maxWidth = "initial";
|
|
|
}
|
|
|
if (el.querySelectorAll(".ggb_preview img")[1] !== undefined) {
|
|
|
el.querySelectorAll(".ggb_preview img")[1].style.maxWidth = "initial";
|
|
|
}
|
|
|
} else {
|
|
|
el.style.transform = "none";
|
|
|
el.style.webkitTransform = "none";
|
|
|
}
|
|
|
}
|
|
|
function getWidthHeight(appletElem, appletWidth, allowUpscale, autoHeight, noBorder, scaleContainerClass) {
|
|
|
var container = null;
|
|
|
if (scaleContainerClass != undefined && scaleContainerClass != "") {
|
|
|
var parent = appletElem.parentNode;
|
|
|
while (parent != null) {
|
|
|
if ((" " + parent.className + " ").indexOf(" " + scaleContainerClass + " ") > -1) {
|
|
|
container = parent;
|
|
|
break;
|
|
|
} else {
|
|
|
parent = parent.parentNode;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
var myWidth = 0,
|
|
|
myHeight = 0,
|
|
|
windowWidth = 0,
|
|
|
border = 0,
|
|
|
borderRight = 0,
|
|
|
borderLeft = 0,
|
|
|
borderTop = 0;
|
|
|
if (container) {
|
|
|
myWidth = container.offsetWidth;
|
|
|
myHeight = Math.max(autoHeight ? container.offsetWidth : 0, container.offsetHeight);
|
|
|
} else {
|
|
|
if (window.innerWidth && document.documentElement.clientWidth) {
|
|
|
myWidth = Math.min(window.innerWidth, document.documentElement.clientWidth);
|
|
|
myHeight = Math.min(window.innerHeight, document.documentElement.clientHeight);
|
|
|
windowWidth = myWidth;
|
|
|
} else {
|
|
|
myWidth = window.innerWidth;
|
|
|
myHeight = window.innerHeight;
|
|
|
windowWidth = window.innerWidth;
|
|
|
}
|
|
|
if (appletElem) {
|
|
|
var rect = appletElem.getBoundingClientRect();
|
|
|
if (rect.left > 0) {
|
|
|
if (rect.left <= myWidth && (noBorder === undefined || !noBorder)) {
|
|
|
if (document.dir === "rtl") {
|
|
|
borderRight = myWidth - rect.width - rect.left;
|
|
|
borderLeft = windowWidth <= 480 ? 10 : 30;
|
|
|
} else {
|
|
|
borderLeft = rect.left;
|
|
|
borderRight = windowWidth <= 480 ? 10 : 30;
|
|
|
}
|
|
|
border = borderLeft + borderRight;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
if (appletElem && _typeof(window.GGBT_wsf_view) === "object" && window.GGBT_wsf_view.isFullscreen()) {
|
|
|
var appletRect = appletElem.getBoundingClientRect();
|
|
|
if (window.GGBT_wsf_view.getCloseBtnPosition() === "closePositionRight") {
|
|
|
border = 40;
|
|
|
borderTop = 0;
|
|
|
} else if (window.GGBT_wsf_view.getCloseBtnPosition() === "closePositionTop") {
|
|
|
border = 0;
|
|
|
borderTop = 40;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
if (appletElem) {
|
|
|
if ((allowUpscale === undefined || !allowUpscale) && appletWidth > 0 && appletWidth + border < myWidth) {
|
|
|
myWidth = appletWidth;
|
|
|
} else {
|
|
|
myWidth -= border;
|
|
|
}
|
|
|
if (_typeof(window.GGBT_wsf_view) === "object" && window.GGBT_wsf_view.isFullscreen() && (allowUpscale === undefined || !allowUpscale)) {
|
|
|
myHeight -= borderTop;
|
|
|
}
|
|
|
}
|
|
|
return {
|
|
|
width: myWidth,
|
|
|
height: myHeight
|
|
|
};
|
|
|
}
|
|
|
function calcScale(parameters, appletElem, allowUpscale, showPlayButton, scaleContainerClass) {
|
|
|
if (parameters.isScreenshoGenerator) {
|
|
|
return 1;
|
|
|
}
|
|
|
var ignoreHeight = showPlayButton !== undefined && showPlayButton;
|
|
|
var noScaleMargin = parameters.noScaleMargin != undefined && parameters.noScaleMargin;
|
|
|
var valBoolean = function valBoolean(value) {
|
|
|
return value && value !== "false";
|
|
|
};
|
|
|
var autoHeight = valBoolean(parameters.autoHeight);
|
|
|
var windowSize = getWidthHeight(appletElem, parameters.width, allowUpscale, autoHeight, ignoreHeight && window.GGBT_wsf_view || noScaleMargin, scaleContainerClass);
|
|
|
var windowWidth = parseInt(windowSize.width);
|
|
|
var appletWidth = parameters.width;
|
|
|
var appletHeight = parameters.height;
|
|
|
if (appletWidth === undefined) {
|
|
|
var article = appletElem.querySelector(".appletParameters");
|
|
|
if (article) {
|
|
|
appletWidth = article.offsetWidth;
|
|
|
appletHeight = article.offsetHeight;
|
|
|
}
|
|
|
}
|
|
|
var xscale = windowWidth / appletWidth;
|
|
|
var yscale = ignoreHeight ? 1 : windowSize.height / appletHeight;
|
|
|
if (allowUpscale !== undefined && !allowUpscale) {
|
|
|
xscale = Math.min(1, xscale);
|
|
|
yscale = Math.min(1, yscale);
|
|
|
}
|
|
|
return Math.min(xscale, yscale);
|
|
|
}
|
|
|
function getScale(parameters, appletElem, showPlayButton) {
|
|
|
var scale = 1,
|
|
|
autoScale,
|
|
|
allowUpscale = false;
|
|
|
if (parameters.hasOwnProperty("allowUpscale")) {
|
|
|
allowUpscale = parameters.allowUpscale;
|
|
|
}
|
|
|
if (parameters.hasOwnProperty("scale")) {
|
|
|
scale = parseFloat(parameters.scale);
|
|
|
if (isNaN(scale) || scale === null || scale === 0) {
|
|
|
scale = 1;
|
|
|
}
|
|
|
if (scale > 1) {
|
|
|
allowUpscale = true;
|
|
|
}
|
|
|
}
|
|
|
if (appletElem && _typeof(window.GGBT_wsf_view) === "object" && window.GGBT_wsf_view.isFullscreen()) {
|
|
|
allowUpscale = true;
|
|
|
}
|
|
|
if (!(parameters.hasOwnProperty("disableAutoScale") && parameters.disableAutoScale)) {
|
|
|
autoScale = calcScale(parameters, appletElem, allowUpscale, showPlayButton, parameters.scaleContainerClass);
|
|
|
} else {
|
|
|
return scale;
|
|
|
}
|
|
|
if (allowUpscale && (!parameters.hasOwnProperty("scale") || scale === 1)) {
|
|
|
return autoScale;
|
|
|
} else {
|
|
|
return Math.min(scale, autoScale);
|
|
|
}
|
|
|
}
|
|
|
function positionCenter(appletElem) {
|
|
|
var windowWidth = Math.min(window.innerWidth, document.documentElement.clientWidth);
|
|
|
var windowHeight = Math.min(window.innerHeight, document.documentElement.clientHeight);
|
|
|
var appletRect = appletElem.getBoundingClientRect();
|
|
|
var calcHorizontalBorder = (windowWidth - appletRect.width) / 2;
|
|
|
var calcVerticalBorder = (windowHeight - appletRect.height) / 2;
|
|
|
if (calcVerticalBorder < 0) {
|
|
|
calcVerticalBorder = 0;
|
|
|
}
|
|
|
appletElem.style.position = "relative";
|
|
|
if (window.GGBT_wsf_view.getCloseBtnPosition() === "closePositionRight") {
|
|
|
if (calcHorizontalBorder < 40) {
|
|
|
appletElem.style.left = "40px";
|
|
|
} else {
|
|
|
appletElem.style.left = calcHorizontalBorder + "px";
|
|
|
}
|
|
|
appletElem.style.top = calcVerticalBorder + "px";
|
|
|
} else if (window.GGBT_wsf_view.getCloseBtnPosition() === "closePositionTop") {
|
|
|
if (calcVerticalBorder < 40) {
|
|
|
appletElem.style.top = "40px";
|
|
|
} else {
|
|
|
appletElem.style.top = calcVerticalBorder + "px";
|
|
|
}
|
|
|
appletElem.style.left = calcHorizontalBorder + "px";
|
|
|
}
|
|
|
}
|
|
|
function responsiveResize(appletElem, parameters) {
|
|
|
var article = appletElem.querySelector(".appletParameters");
|
|
|
if (article) {
|
|
|
if (_typeof(window.GGBT_wsf_view) === "object" && window.GGBT_wsf_view.isFullscreen()) {
|
|
|
if (parameters.id !== article.getAttribute("data-param-id")) {
|
|
|
return;
|
|
|
}
|
|
|
window.GGBT_wsf_view.setCloseBtnPosition(appletElem);
|
|
|
}
|
|
|
if (article.parentElement && /fullscreen/.test(article.parentElement.className)) {
|
|
|
return;
|
|
|
}
|
|
|
var scale = getScale(parameters, appletElem);
|
|
|
if (isFlexibleWorksheetEditor()) {
|
|
|
article.setAttribute("data-param-scale", scale);
|
|
|
}
|
|
|
var scaleElem = null;
|
|
|
for (var i = 0; i < appletElem.childNodes.length; i++) {
|
|
|
if (appletElem.childNodes[i].className !== undefined && appletElem.childNodes[i].className.match(/^applet_scaler/)) {
|
|
|
scaleElem = appletElem.childNodes[i];
|
|
|
break;
|
|
|
}
|
|
|
}
|
|
|
if (scaleElem !== null && scaleElem.querySelector(".noscale") !== null) {
|
|
|
return;
|
|
|
}
|
|
|
var appName = parameters.id !== undefined ? parameters.id : "ggbApplet";
|
|
|
var app = window[appName];
|
|
|
if ((app == null || !app.recalculateEnvironments) && scaleElem !== null && !scaleElem.className.match(/fullscreen/)) {
|
|
|
scaleElem.parentNode.style.transform = "";
|
|
|
if (!isNaN(scale) && scale !== 1) {
|
|
|
scaleElem.parentNode.style.width = parameters.width * scale + "px";
|
|
|
scaleElem.parentNode.style.height = parameters.height * scale + "px";
|
|
|
scaleElement(scaleElem, scale);
|
|
|
} else {
|
|
|
scaleElement(scaleElem, 1);
|
|
|
scaleElem.parentNode.style.width = parameters.width + "px";
|
|
|
scaleElem.parentNode.style.height = parameters.height + "px";
|
|
|
}
|
|
|
}
|
|
|
if (_typeof(window.GGBT_wsf_view) === "object" && window.GGBT_wsf_view.isFullscreen()) {
|
|
|
positionCenter(appletElem);
|
|
|
}
|
|
|
if (window.GGBT_wsf_view && !window.GGBT_wsf_view.isFullscreen()) {
|
|
|
window.GGBT_wsf_general.adjustContentToResize($(article).parents(".content-added-content"));
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
return {
|
|
|
responsiveResize: responsiveResize,
|
|
|
isFlexibleWorksheetEditor: isFlexibleWorksheetEditor,
|
|
|
positionCenter: positionCenter,
|
|
|
getScale: getScale,
|
|
|
scaleElement: scaleElement
|
|
|
};
|
|
|
}();
|
|
|
if (true) {
|
|
|
!(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_RESULT__ = (function () {
|
|
|
return GGBApplet;
|
|
|
}).apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__),
|
|
|
__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
|
|
|
}
|
|
|
GGBAppletUtils.makeModule = function (name, permutation) {
|
|
|
function webModule() {
|
|
|
var H = "bootstrap",
|
|
|
I = "begin",
|
|
|
J = "gwt.codesvr." + name + "=",
|
|
|
K = "gwt.codesvr=",
|
|
|
L = name,
|
|
|
M = "startup",
|
|
|
N = "DUMMY",
|
|
|
O = 0,
|
|
|
P = 1,
|
|
|
Q = "iframe",
|
|
|
R = "position:absolute; width:0; height:0; border:none; left: -1000px;",
|
|
|
S = " top: -1000px;",
|
|
|
T = "Chrome",
|
|
|
U = "CSS1Compat",
|
|
|
V = "<!doctype html>",
|
|
|
W = "",
|
|
|
X = "<html><head></head><body></body></html>",
|
|
|
Y = "undefined",
|
|
|
Z = "readystatechange",
|
|
|
$ = 10,
|
|
|
_ = "script",
|
|
|
ab = "javascript",
|
|
|
bb = "Failed to load ",
|
|
|
cb = "moduleStartup",
|
|
|
db = "scriptTagAdded",
|
|
|
eb = "moduleRequested",
|
|
|
fb = "meta",
|
|
|
gb = "name",
|
|
|
hb = name + "::",
|
|
|
ib = "::",
|
|
|
jb = "gwt:property",
|
|
|
kb = "content",
|
|
|
lb = "=",
|
|
|
mb = "gwt:onPropertyErrorFn",
|
|
|
nb = 'Bad handler "',
|
|
|
ob = '" for "gwt:onPropertyErrorFn"',
|
|
|
pb = "gwt:onLoadErrorFn",
|
|
|
qb = '" for "gwt:onLoadErrorFn"',
|
|
|
rb = "#",
|
|
|
sb = "?",
|
|
|
tb = "/",
|
|
|
ub = "img",
|
|
|
vb = "clear.cache.gif",
|
|
|
wb = "baseUrl",
|
|
|
xb = name + ".nocache.js",
|
|
|
yb = "base",
|
|
|
zb = "//",
|
|
|
Ab = "selectingPermutation",
|
|
|
Bb = name + ".devmode.js",
|
|
|
Cb = permutation,
|
|
|
Db = ":",
|
|
|
Eb = ".cache.js",
|
|
|
Fb = "loadExternalRefs",
|
|
|
Gb = "end";
|
|
|
var n = window;
|
|
|
var o = document;
|
|
|
q(H, I);
|
|
|
function p() {
|
|
|
var a = n.location.search;
|
|
|
return a.indexOf(J) != -1 || a.indexOf(K) != -1;
|
|
|
}
|
|
|
function q(a, b) {}
|
|
|
webModule.__sendStats = q;
|
|
|
webModule.__moduleName = L;
|
|
|
webModule.__errFn = null;
|
|
|
webModule.__moduleBase = N;
|
|
|
webModule.__softPermutationId = O;
|
|
|
webModule.__computePropValue = null;
|
|
|
webModule.__getPropMap = null;
|
|
|
webModule.__installRunAsyncCode = function () {};
|
|
|
webModule.__gwtStartLoadingFragment = function () {
|
|
|
return null;
|
|
|
};
|
|
|
webModule.__gwt_isKnownPropertyValue = function () {
|
|
|
return false;
|
|
|
};
|
|
|
webModule.__gwt_getMetaProperty = function () {
|
|
|
return null;
|
|
|
};
|
|
|
var r = null;
|
|
|
var s = n.__gwt_activeModules = n.__gwt_activeModules || {};
|
|
|
s[L] = {
|
|
|
moduleName: L
|
|
|
};
|
|
|
webModule.__moduleStartupDone = function (e) {
|
|
|
var f = s[L].bindings;
|
|
|
s[L].bindings = function () {
|
|
|
var a = f ? f() : {};
|
|
|
var b = e[webModule.__softPermutationId];
|
|
|
for (var c = O; c < b.length; c++) {
|
|
|
var d = b[c];
|
|
|
a[d[O]] = d[P];
|
|
|
}
|
|
|
return a;
|
|
|
};
|
|
|
};
|
|
|
var t;
|
|
|
function u() {
|
|
|
v();
|
|
|
return t;
|
|
|
}
|
|
|
function v() {
|
|
|
if (t) {
|
|
|
return;
|
|
|
}
|
|
|
var a = o.createElement(Q);
|
|
|
a.id = L;
|
|
|
a.style.cssText = R + S;
|
|
|
a.tabIndex = -1;
|
|
|
o.body.appendChild(a);
|
|
|
t = a.contentWindow.document;
|
|
|
if (navigator.userAgent.indexOf(T) == -1) {
|
|
|
t.open();
|
|
|
var b = document.compatMode == U ? V : W;
|
|
|
t.write(b + X);
|
|
|
t.close();
|
|
|
}
|
|
|
}
|
|
|
function w(f) {
|
|
|
function g(a) {
|
|
|
function b() {
|
|
|
if (_typeof(o.readyState) == Y) {
|
|
|
return _typeof(o.body) != Y && o.body != null;
|
|
|
}
|
|
|
return /loaded|complete/.test(o.readyState);
|
|
|
}
|
|
|
var c = b();
|
|
|
if (c) {
|
|
|
a();
|
|
|
return;
|
|
|
}
|
|
|
function d() {
|
|
|
if (!c) {
|
|
|
if (!b()) {
|
|
|
return;
|
|
|
}
|
|
|
c = true;
|
|
|
a();
|
|
|
if (o.removeEventListener) {
|
|
|
o.removeEventListener(Z, d, false);
|
|
|
}
|
|
|
if (e) {
|
|
|
clearInterval(e);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
if (o.addEventListener) {
|
|
|
o.addEventListener(Z, d, false);
|
|
|
}
|
|
|
var e = setInterval(function () {
|
|
|
d();
|
|
|
}, $);
|
|
|
}
|
|
|
function h(a) {
|
|
|
var b = u();
|
|
|
var c = b.body;
|
|
|
var d = b.createElement(_);
|
|
|
d.language = ab;
|
|
|
d.crossOrigin = W;
|
|
|
d.src = a;
|
|
|
if (webModule.__errFn) {
|
|
|
d.onerror = function () {
|
|
|
webModule.__errFn(L, new Error(bb + a));
|
|
|
};
|
|
|
}
|
|
|
c.appendChild(d);
|
|
|
q(cb, db);
|
|
|
}
|
|
|
q(cb, eb);
|
|
|
g(function () {
|
|
|
h(f);
|
|
|
});
|
|
|
}
|
|
|
webModule.__startLoadingFragment = function (a) {
|
|
|
return C(a);
|
|
|
};
|
|
|
webModule.__installRunAsyncCode = function (a) {
|
|
|
var b = u();
|
|
|
var c = b.body;
|
|
|
var d = b.createElement(_);
|
|
|
d.language = ab;
|
|
|
d.text = a;
|
|
|
c.appendChild(d);
|
|
|
c.removeChild(d);
|
|
|
};
|
|
|
function A() {
|
|
|
var c = {};
|
|
|
var d;
|
|
|
var e;
|
|
|
var f = o.getElementsByTagName(fb);
|
|
|
for (var g = O, h = f.length; g < h; ++g) {
|
|
|
var i = f[g],
|
|
|
j = i.getAttribute(gb),
|
|
|
k;
|
|
|
if (j) {
|
|
|
j = j.replace(hb, W);
|
|
|
if (j.indexOf(ib) >= O) {
|
|
|
continue;
|
|
|
}
|
|
|
if (j == jb) {
|
|
|
k = i.getAttribute(kb);
|
|
|
if (k) {
|
|
|
var l,
|
|
|
m = k.indexOf(lb);
|
|
|
if (m >= O) {
|
|
|
j = k.substring(O, m);
|
|
|
l = k.substring(m + P);
|
|
|
} else {
|
|
|
j = k;
|
|
|
l = W;
|
|
|
}
|
|
|
c[j] = l;
|
|
|
}
|
|
|
} else if (j == mb) {
|
|
|
k = i.getAttribute(kb);
|
|
|
if (k) {
|
|
|
try {
|
|
|
d = eval(k);
|
|
|
} catch (a) {
|
|
|
alert(nb + k + ob);
|
|
|
}
|
|
|
}
|
|
|
} else if (j == pb) {
|
|
|
k = i.getAttribute(kb);
|
|
|
if (k) {
|
|
|
try {
|
|
|
e = eval(k);
|
|
|
} catch (a) {
|
|
|
alert(nb + k + qb);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
__gwt_getMetaProperty = function __gwt_getMetaProperty(a) {
|
|
|
var b = c[a];
|
|
|
return b == null ? null : b;
|
|
|
};
|
|
|
r = d;
|
|
|
webModule.__errFn = e;
|
|
|
}
|
|
|
function B() {
|
|
|
function e(a) {
|
|
|
var b = a.lastIndexOf(rb);
|
|
|
if (b == -1) {
|
|
|
b = a.length;
|
|
|
}
|
|
|
var c = a.indexOf(sb);
|
|
|
if (c == -1) {
|
|
|
c = a.length;
|
|
|
}
|
|
|
var d = a.lastIndexOf(tb, Math.min(c, b));
|
|
|
return d >= O ? a.substring(O, d + P) : W;
|
|
|
}
|
|
|
function f(a) {
|
|
|
if (a.match(/^\w+:\/\//)) {} else {
|
|
|
var b = o.createElement(ub);
|
|
|
b.src = a + vb;
|
|
|
a = e(b.src);
|
|
|
}
|
|
|
return a;
|
|
|
}
|
|
|
function g() {
|
|
|
var a = __gwt_getMetaProperty(wb);
|
|
|
if (a != null) {
|
|
|
return a;
|
|
|
}
|
|
|
return W;
|
|
|
}
|
|
|
function h() {
|
|
|
var a = o.getElementsByTagName(_);
|
|
|
for (var b = O; b < a.length; ++b) {
|
|
|
if (a[b].src.indexOf(xb) != -1) {
|
|
|
return e(a[b].src);
|
|
|
}
|
|
|
}
|
|
|
return W;
|
|
|
}
|
|
|
function i() {
|
|
|
var a = o.getElementsByTagName(yb);
|
|
|
if (a.length > O) {
|
|
|
return a[a.length - P].href;
|
|
|
}
|
|
|
return W;
|
|
|
}
|
|
|
function j() {
|
|
|
var a = o.location;
|
|
|
return a.href == a.protocol + zb + a.host + a.pathname + a.search + a.hash;
|
|
|
}
|
|
|
var k = g();
|
|
|
if (k == W) {
|
|
|
k = h();
|
|
|
}
|
|
|
if (k == W) {
|
|
|
k = i();
|
|
|
}
|
|
|
if (k == W && j()) {
|
|
|
k = e(o.location.href);
|
|
|
}
|
|
|
k = f(k);
|
|
|
return k;
|
|
|
}
|
|
|
function C(a) {
|
|
|
if (a.match(/^\//)) {
|
|
|
return a;
|
|
|
}
|
|
|
if (a.match(/^[a-zA-Z]+:\/\//)) {
|
|
|
return a;
|
|
|
}
|
|
|
return webModule.__moduleBase + a;
|
|
|
}
|
|
|
function D() {
|
|
|
var f = [];
|
|
|
var g = O;
|
|
|
var h = [];
|
|
|
var i = [];
|
|
|
function j(a) {
|
|
|
var b = i[a](),
|
|
|
c = h[a];
|
|
|
if (b in c) {
|
|
|
return b;
|
|
|
}
|
|
|
var d = [];
|
|
|
for (var e in c) {
|
|
|
d[c[e]] = e;
|
|
|
}
|
|
|
if (r) {
|
|
|
r(a, d, b);
|
|
|
}
|
|
|
throw null;
|
|
|
}
|
|
|
__gwt_isKnownPropertyValue = function __gwt_isKnownPropertyValue(a, b) {
|
|
|
return b in h[a];
|
|
|
};
|
|
|
webModule.__getPropMap = function () {
|
|
|
var a = {};
|
|
|
for (var b in h) {
|
|
|
if (h.hasOwnProperty(b)) {
|
|
|
a[b] = j(b);
|
|
|
}
|
|
|
}
|
|
|
return a;
|
|
|
};
|
|
|
webModule.__computePropValue = j;
|
|
|
n.__gwt_activeModules[L].bindings = webModule.__getPropMap;
|
|
|
if (p()) {
|
|
|
return C(Bb);
|
|
|
}
|
|
|
var k;
|
|
|
try {
|
|
|
k = Cb;
|
|
|
var l = k.indexOf(Db);
|
|
|
if (l != -1) {
|
|
|
g = parseInt(k.substring(l + P), $);
|
|
|
k = k.substring(O, l);
|
|
|
}
|
|
|
} catch (a) {}
|
|
|
webModule.__softPermutationId = g;
|
|
|
return C(k + Eb);
|
|
|
}
|
|
|
function F() {
|
|
|
if (!n.__gwt_stylesLoaded) {
|
|
|
n.__gwt_stylesLoaded = {};
|
|
|
}
|
|
|
}
|
|
|
A();
|
|
|
webModule.__moduleBase = "/js/mathematicalGraphics/" + name + "/";
|
|
|
s[L].moduleBase = webModule.__moduleBase;
|
|
|
var G = D();
|
|
|
F();
|
|
|
w(G);
|
|
|
return true;
|
|
|
}
|
|
|
return webModule;
|
|
|
};
|
|
|
if (typeof window.web3d !== "function") {
|
|
|
window.web3d = GGBAppletUtils.makeModule("web3d", "A18F540516513B1292CA7CEF2F6AFC7E");
|
|
|
}
|
|
|
if (typeof window.webSimple !== "function") {
|
|
|
window.webSimple = GGBAppletUtils.makeModule("webSimple", "96B09BF1B436BF53F0DF54116700F16A");
|
|
|
}
|
|
|
window.GGBApplet = GGBApplet;
|
|
|
})();
|
|
|
|
|
|
/***/ }),
|
|
|
|
|
|
/***/ 78436:
|
|
|
/*!*********************************!*\
|
|
|
!*** ./src/pages/tasks/util.js ***!
|
|
|
\*********************************/
|
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
|
/* harmony export */ Ax: function() { return /* binding */ processTreeData; },
|
|
|
/* harmony export */ Ds: function() { return /* binding */ debounce; },
|
|
|
/* harmony export */ KI: function() { return /* binding */ apiPref; },
|
|
|
/* harmony export */ SI: function() { return /* binding */ getTreeData; },
|
|
|
/* harmony export */ f1: function() { return /* binding */ isCompileOk; }
|
|
|
/* harmony export */ });
|
|
|
/* unused harmony export isProd */
|
|
|
/* harmony import */ var _utils_env__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @/utils/env */ 33259);
|
|
|
|
|
|
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 = _utils_env__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .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';
|
|
|
|
|
|
/***/ }),
|
|
|
|
|
|
/***/ 8179:
|
|
|
/*!**************************************************************!*\
|
|
|
!*** ./src/components/ImageDimensions/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_ImageDimensions; }
|
|
|
});
|
|
|
|
|
|
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/regeneratorRuntime.js
|
|
|
var regeneratorRuntime = __webpack_require__(7557);
|
|
|
var regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(regeneratorRuntime);
|
|
|
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/asyncToGenerator.js
|
|
|
var asyncToGenerator = __webpack_require__(41498);
|
|
|
var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator);
|
|
|
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/slicedToArray.js
|
|
|
var slicedToArray = __webpack_require__(79800);
|
|
|
var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);
|
|
|
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
|
|
|
var _react_17_0_2_react = __webpack_require__(59301);
|
|
|
;// CONCATENATED MODULE: ./src/components/ImageDimensions/index.less?modules
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
/* harmony default export */ var ImageDimensionsmodules = ({"imageDimensions":"imageDimensions___a7crR","img":"img___Kroat","fullWidth":"fullWidth___c492T"});
|
|
|
// EXTERNAL MODULE: ./node_modules/_classnames@2.5.1@classnames/index.js
|
|
|
var _classnames_2_5_1_classnames = __webpack_require__(92310);
|
|
|
var _classnames_2_5_1_classnames_default = /*#__PURE__*/__webpack_require__.n(_classnames_2_5_1_classnames);
|
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/spin/index.js + 1 modules
|
|
|
var spin = __webpack_require__(71418);
|
|
|
// EXTERNAL MODULE: ./node_modules/_markerjs3@2.29.1@markerjs3/markerjs2.esm.js
|
|
|
var markerjs2_esm = __webpack_require__(2859);
|
|
|
// EXTERNAL MODULE: ./src/utils/fetch.ts
|
|
|
var fetch = __webpack_require__(14735);
|
|
|
// EXTERNAL MODULE: ./src/utils/util.tsx
|
|
|
var util = __webpack_require__(63834);
|
|
|
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/jsx-runtime.js
|
|
|
var jsx_runtime = __webpack_require__(37712);
|
|
|
;// CONCATENATED MODULE: ./src/components/ImageDimensions/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var ImageDimensions = function ImageDimensions(_ref) {
|
|
|
var data = _ref.data,
|
|
|
className = _ref.className,
|
|
|
fullWidth = _ref.fullWidth,
|
|
|
_ref$style = _ref.style,
|
|
|
style = _ref$style === void 0 ? {} : _ref$style,
|
|
|
onClose = _ref.onClose,
|
|
|
onOk = _ref.onOk,
|
|
|
showFullTools = _ref.showFullTools,
|
|
|
noAssociationId = _ref.noAssociationId;
|
|
|
var imgRef = (0,_react_17_0_2_react.useRef)(null);
|
|
|
var markerArea = (0,_react_17_0_2_react.useRef)(null);
|
|
|
var _useState = (0,_react_17_0_2_react.useState)(false),
|
|
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
|
loading = _useState2[0],
|
|
|
setLoading = _useState2[1];
|
|
|
var _useState3 = (0,_react_17_0_2_react.useState)('正在加载中'),
|
|
|
_useState4 = slicedToArray_default()(_useState3, 2),
|
|
|
loadingText = _useState4[0],
|
|
|
setLoadingText = _useState4[1];
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
if (data !== null && data !== void 0 && data.visible) {
|
|
|
document.body.setAttribute('data-custom', 'y-hidden');
|
|
|
} else {
|
|
|
document.body.removeAttribute('data-custom');
|
|
|
}
|
|
|
if (data !== null && data !== void 0 && data.src) {
|
|
|
getImg();
|
|
|
}
|
|
|
}, [data === null || data === void 0 ? void 0 : data.visible]);
|
|
|
var getImg = /*#__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:
|
|
|
setLoading(true);
|
|
|
setLoadingText('正在加载中');
|
|
|
_context.next = 4;
|
|
|
return (0,util/* toDataUrl */.ZJ)(data === null || data === void 0 ? void 0 : data.src);
|
|
|
case 4:
|
|
|
res = _context.sent;
|
|
|
imgRef.current.src = "";
|
|
|
imgRef.current.src = res;
|
|
|
imgRef.current.onload = function () {
|
|
|
initMarkerjs();
|
|
|
};
|
|
|
setLoading(false);
|
|
|
setLoadingText('');
|
|
|
case 10:
|
|
|
case "end":
|
|
|
return _context.stop();
|
|
|
}
|
|
|
}, _callee);
|
|
|
}));
|
|
|
return function getImg() {
|
|
|
return _ref2.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var onSave = /*#__PURE__*/function () {
|
|
|
var _ref3 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2(event) {
|
|
|
var res, result;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
|
|
|
while (1) switch (_context2.prev = _context2.next) {
|
|
|
case 0:
|
|
|
setLoading(true);
|
|
|
setLoadingText('正在保存中');
|
|
|
_context2.next = 4;
|
|
|
return (0,fetch/* default */.ZP)('/api/attachments.json', {
|
|
|
method: 'post',
|
|
|
body: {
|
|
|
file_type: 'base64',
|
|
|
original_filename: data.title,
|
|
|
file: event.dataUrl
|
|
|
}
|
|
|
});
|
|
|
case 4:
|
|
|
res = _context2.sent;
|
|
|
if (!(res !== null && res !== void 0 && res.id && !noAssociationId)) {
|
|
|
_context2.next = 12;
|
|
|
break;
|
|
|
}
|
|
|
_context2.next = 8;
|
|
|
return (0,fetch/* default */.ZP)("/api/attachments/".concat(data.id, "/add_subitem.json"), {
|
|
|
method: 'post',
|
|
|
body: {
|
|
|
subitem_id: res === null || res === void 0 ? void 0 : res.id,
|
|
|
settings: JSON.stringify(event.state)
|
|
|
}
|
|
|
});
|
|
|
case 8:
|
|
|
result = _context2.sent;
|
|
|
if (result.status === 0) {
|
|
|
onOk();
|
|
|
}
|
|
|
_context2.next = 13;
|
|
|
break;
|
|
|
case 12:
|
|
|
if (res !== null && res !== void 0 && res.id) {
|
|
|
onOk(res);
|
|
|
}
|
|
|
case 13:
|
|
|
setLoading(false);
|
|
|
setLoadingText('');
|
|
|
case 15:
|
|
|
case "end":
|
|
|
return _context2.stop();
|
|
|
}
|
|
|
}, _callee2);
|
|
|
}));
|
|
|
return function onSave(_x) {
|
|
|
return _ref3.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var dealDom = function dealDom() {
|
|
|
// 删除标签
|
|
|
// 找到href为"https://markerjs.com/"的a标签
|
|
|
var targetLink = document.querySelector('a[href="https://markerjs.com/"]');
|
|
|
if (targetLink && targetLink.parentNode) {
|
|
|
targetLink.parentNode.style.display = 'none';
|
|
|
}
|
|
|
|
|
|
// 设置title
|
|
|
var item = [{
|
|
|
name: '[data-action="select"]',
|
|
|
title: '选择'
|
|
|
}, {
|
|
|
name: '[data-action="delete"]',
|
|
|
title: '删除元素'
|
|
|
}, {
|
|
|
name: '[data-action="undo"]',
|
|
|
title: '撤销'
|
|
|
}, {
|
|
|
name: '[data-type-name="FrameMarker"]',
|
|
|
title: '矩形'
|
|
|
}, {
|
|
|
name: '[data-type-name="FreehandMarker"]',
|
|
|
title: '画线'
|
|
|
}, {
|
|
|
name: '[data-type-name="ArrowMarker"]',
|
|
|
title: '箭头'
|
|
|
}, {
|
|
|
name: '[data-type-name="TextMarker"]',
|
|
|
title: '文本'
|
|
|
}, {
|
|
|
name: '[data-type-name="EllipseMarker"]',
|
|
|
title: '椭圆'
|
|
|
}, {
|
|
|
name: '[data-type-name="HighlightMarker"]',
|
|
|
title: '方块'
|
|
|
}, {
|
|
|
name: '[data-type-name="CalloutMarker"]',
|
|
|
title: '注释'
|
|
|
}, {
|
|
|
name: '[data-action="render"]',
|
|
|
title: '保存'
|
|
|
}, {
|
|
|
name: '[data-action="close"]',
|
|
|
title: '退出'
|
|
|
}];
|
|
|
item.forEach(function (e) {
|
|
|
var targetElement = document.querySelector(e.name);
|
|
|
if (targetElement) {
|
|
|
targetElement.setAttribute('title', e.title);
|
|
|
}
|
|
|
});
|
|
|
};
|
|
|
var initMarkerjs = function initMarkerjs() {
|
|
|
markerArea.current = new markerjs2_esm/* MarkerArea */.hP(imgRef.current);
|
|
|
markerArea.current.addEventListener('render', onSave);
|
|
|
markerArea.current.addEventListener('beforeclose', onClose);
|
|
|
if (showFullTools) {
|
|
|
markerArea.current.availableMarkerTypes = markerArea.current.ALL_MARKER_TYPES;
|
|
|
markerArea.current.uiStyleSettings.redoButtonVisible = true;
|
|
|
markerArea.current.uiStyleSettings.notesButtonVisible = true;
|
|
|
markerArea.current.uiStyleSettings.zoomButtonVisible = true;
|
|
|
markerArea.current.uiStyleSettings.zoomOutButtonVisible = true;
|
|
|
markerArea.current.uiStyleSettings.clearButtonVisible = true;
|
|
|
}
|
|
|
window.markerArea = markerArea.current.uiStyleSettings;
|
|
|
markerArea.current.show();
|
|
|
if (data !== null && data !== void 0 && data.snapshotData) {
|
|
|
markerArea.current.restoreState(data.snapshotData);
|
|
|
}
|
|
|
setTimeout(function () {
|
|
|
dealDom();
|
|
|
}, 300);
|
|
|
};
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(_react_17_0_2_react.Fragment, {
|
|
|
children: (data === null || data === void 0 ? void 0 : data.visible) && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: _classnames_2_5_1_classnames_default()(ImageDimensionsmodules.imageDimensions, className, fullWidth ? ImageDimensionsmodules.fullWidth : ""),
|
|
|
style: style,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(spin/* default */.Z, {
|
|
|
spinning: loading,
|
|
|
tip: loadingText,
|
|
|
style: {
|
|
|
position: 'absolute'
|
|
|
}
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("img", {
|
|
|
className: ImageDimensionsmodules.img,
|
|
|
ref: imgRef
|
|
|
// crossOrigin='anonymous'
|
|
|
// src={data?.src}
|
|
|
})]
|
|
|
})
|
|
|
});
|
|
|
};
|
|
|
/* harmony default export */ var components_ImageDimensions = (ImageDimensions);
|
|
|
|
|
|
/***/ }),
|
|
|
|
|
|
/***/ 46055:
|
|
|
/*!*************************************************************!*\
|
|
|
!*** ./src/components/markdown-editor/code-block/index.tsx ***!
|
|
|
\*************************************************************/
|
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
|
/* harmony export */ h: function() { return /* binding */ MyCodeMirror; }
|
|
|
/* harmony export */ });
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectSpread2.js */ 82242);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/slicedToArray.js */ 79800);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_1__);
|
|
|
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react */ 59301);
|
|
|
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! antd */ 57809);
|
|
|
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! antd */ 78241);
|
|
|
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! antd */ 3113);
|
|
|
/* harmony import */ var codemirror__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! codemirror */ 89780);
|
|
|
/* harmony import */ var codemirror__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(codemirror__WEBPACK_IMPORTED_MODULE_3__);
|
|
|
/* harmony import */ var codemirror_lib_codemirror_css__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! codemirror/lib/codemirror.css */ 98151);
|
|
|
/* harmony import */ var codemirror_theme_blackboard_css__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! codemirror/theme/blackboard.css */ 83463);
|
|
|
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! react/jsx-runtime */ 37712);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var Option = antd__WEBPACK_IMPORTED_MODULE_7__["default"].Option;
|
|
|
|
|
|
//https://github.com/codemirror/CodeMirror/issues/4838
|
|
|
var formItemLayout = {
|
|
|
labelCol: {
|
|
|
span: 4
|
|
|
},
|
|
|
wrapperCol: {
|
|
|
span: 20
|
|
|
}
|
|
|
};
|
|
|
var LanguageDesc = {
|
|
|
asp: ['ASP', 'vbscript'],
|
|
|
actionscript: ['ActionScript(3.0)/Flash/Flex', 'clike'],
|
|
|
bash: ['Bash/Bat', 'shell'],
|
|
|
css: ['CSS', 'css'],
|
|
|
c: ['C', 'clike'],
|
|
|
cpp: ['C++', 'clike'],
|
|
|
csharp: ['C#', 'clike'],
|
|
|
coffeescript: ['CoffeeScript', 'coffeescript'],
|
|
|
d: ['D', 'd'],
|
|
|
dart: ['Dart', 'dart'],
|
|
|
delphi: ['Delphi/Pascal', 'pascal'],
|
|
|
erlang: ['Erlang', 'erlang'],
|
|
|
go: ['Golang', 'go'],
|
|
|
groovy: ['Groovy', 'groovy'],
|
|
|
html: ['HTML', 'text/html'],
|
|
|
java: ['Java', 'clike'],
|
|
|
json: ['JSON', 'text/json'],
|
|
|
javascript: ['Javascript', 'javascript'],
|
|
|
lua: ['Lua', 'lua'],
|
|
|
less: ['LESS', 'css'],
|
|
|
markdown: ['Markdown', 'gfm'],
|
|
|
'objective-c': ['Objective-C', 'clike'],
|
|
|
php: ['PHP', 'php'],
|
|
|
perl: ['Perl', 'perl'],
|
|
|
python: ['Python', 'python'],
|
|
|
r: ['R', 'r'],
|
|
|
rst: ['reStructedText', 'rst'],
|
|
|
ruby: ['Ruby', 'ruby'],
|
|
|
sql: ['SQL', 'sql'],
|
|
|
sass: ['SASS/SCSS', 'sass'],
|
|
|
shell: ['Shell', 'shell'],
|
|
|
scala: ['Scala', 'clike'],
|
|
|
swift: ['Swift', 'clike'],
|
|
|
vb: ['VB/VBScript', 'vb'],
|
|
|
xml: ['XML', 'text/xml'],
|
|
|
yaml: ['YAML', 'yaml']
|
|
|
};
|
|
|
/* harmony default export */ __webpack_exports__.Z = (function (_ref) {
|
|
|
var callback = _ref.callback,
|
|
|
onCancel = _ref.onCancel;
|
|
|
var _useState = (0,react__WEBPACK_IMPORTED_MODULE_2__.useState)('python'),
|
|
|
_useState2 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_1___default()(_useState, 2),
|
|
|
mode = _useState2[0],
|
|
|
setMode = _useState2[1];
|
|
|
function onSetMode(value) {
|
|
|
setMode(LanguageDesc[value][1]);
|
|
|
}
|
|
|
function onSubmit(values) {
|
|
|
callback(values);
|
|
|
}
|
|
|
return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsxs)(antd__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Z, _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, formItemLayout), {}, {
|
|
|
className: "code-block-panel",
|
|
|
initialValues: {
|
|
|
language: 'python',
|
|
|
content: ''
|
|
|
},
|
|
|
onFinish: onSubmit,
|
|
|
style: {
|
|
|
width: 500
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)(antd__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Z.Item, {
|
|
|
label: "\u4EE3\u7801\u8BED\u8A00",
|
|
|
name: "language",
|
|
|
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)(antd__WEBPACK_IMPORTED_MODULE_7__["default"], {
|
|
|
getPopupContainer: function getPopupContainer(trigger) {
|
|
|
return trigger.parentNode;
|
|
|
},
|
|
|
onChange: onSetMode,
|
|
|
children: Object.keys(LanguageDesc).map(function (item) {
|
|
|
return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)(Option, {
|
|
|
value: item,
|
|
|
children: LanguageDesc[item][0]
|
|
|
}, item);
|
|
|
})
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)(antd__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Z.Item, {
|
|
|
label: "\u4EE3\u7801\u5185\u5BB9",
|
|
|
name: "content",
|
|
|
rules: [{
|
|
|
required: true,
|
|
|
message: '请输入代码内容'
|
|
|
}],
|
|
|
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)(MyCodeMirror, {
|
|
|
mode: mode
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsxs)("div", {
|
|
|
className: "flex-container flex-end",
|
|
|
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)(antd__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .ZP, {
|
|
|
type: "primary",
|
|
|
htmlType: "submit",
|
|
|
style: {
|
|
|
marginRight: 10
|
|
|
},
|
|
|
children: "\u786E\u5B9A"
|
|
|
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)(antd__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .ZP, {
|
|
|
type: "ghost",
|
|
|
onClick: onCancel,
|
|
|
children: "\u53D6\u6D88"
|
|
|
})]
|
|
|
})]
|
|
|
}));
|
|
|
});
|
|
|
function MyCodeMirror(_ref2) {
|
|
|
var value = _ref2.value,
|
|
|
onChange = _ref2.onChange,
|
|
|
mode = _ref2.mode,
|
|
|
_ref2$options = _ref2.options,
|
|
|
options = _ref2$options === void 0 ? {} : _ref2$options;
|
|
|
var el = (0,react__WEBPACK_IMPORTED_MODULE_2__.useRef)();
|
|
|
var _useState3 = (0,react__WEBPACK_IMPORTED_MODULE_2__.useState)(),
|
|
|
_useState4 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_1___default()(_useState3, 2),
|
|
|
cm = _useState4[0],
|
|
|
setCm = _useState4[1];
|
|
|
(0,react__WEBPACK_IMPORTED_MODULE_2__.useEffect)(function () {
|
|
|
if (cm) {
|
|
|
var onChangeHandler = function onChangeHandler(cm) {
|
|
|
var content = cm.getValue();
|
|
|
onChange && onChange(content);
|
|
|
};
|
|
|
cm.on('change', onChangeHandler);
|
|
|
return function () {
|
|
|
cm.off('change', onChangeHandler);
|
|
|
};
|
|
|
}
|
|
|
}, [cm, onChange]);
|
|
|
(0,react__WEBPACK_IMPORTED_MODULE_2__.useEffect)(function () {
|
|
|
if (cm) {
|
|
|
cm.setOption('mode', mode);
|
|
|
}
|
|
|
}, [cm, mode]);
|
|
|
(0,react__WEBPACK_IMPORTED_MODULE_2__.useEffect)(function () {
|
|
|
if (cm) {
|
|
|
if (value !== cm.getValue() || value === '') {
|
|
|
setTimeout(function () {
|
|
|
cm.setValue(value || '');
|
|
|
}, 300);
|
|
|
}
|
|
|
}
|
|
|
}, [cm, value]);
|
|
|
(0,react__WEBPACK_IMPORTED_MODULE_2__.useEffect)(function () {
|
|
|
if (el.current && !cm) {
|
|
|
var instance = codemirror__WEBPACK_IMPORTED_MODULE_3___default().fromTextArea(el.current, _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({
|
|
|
mode: mode,
|
|
|
lineNumbers: true,
|
|
|
lineWrapping: true,
|
|
|
autoCloseBrackets: true,
|
|
|
tabSize: 4,
|
|
|
autofocus: true,
|
|
|
autoCloseTags: true,
|
|
|
matchBrackets: true,
|
|
|
styleActiveLine: true
|
|
|
}, options));
|
|
|
setCm(instance);
|
|
|
}
|
|
|
}, [el.current, cm]);
|
|
|
return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)("div", {
|
|
|
className: "my-codemirror-container",
|
|
|
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_6__.jsx)("textarea", {
|
|
|
ref: el
|
|
|
})
|
|
|
});
|
|
|
}
|
|
|
|
|
|
/***/ }),
|
|
|
|
|
|
/***/ 93521:
|
|
|
/*!***************************************************************!*\
|
|
|
!*** ./src/components/markdown-editor/index.tsx + 15 modules ***!
|
|
|
\***************************************************************/
|
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
|
|
|
// EXPORTS
|
|
|
__webpack_require__.d(__webpack_exports__, {
|
|
|
Z: function() { return /* binding */ markdown_editor; }
|
|
|
});
|
|
|
|
|
|
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/createForOfIteratorHelper.js
|
|
|
var createForOfIteratorHelper = __webpack_require__(91232);
|
|
|
var createForOfIteratorHelper_default = /*#__PURE__*/__webpack_require__.n(createForOfIteratorHelper);
|
|
|
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/slicedToArray.js
|
|
|
var slicedToArray = __webpack_require__(79800);
|
|
|
var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);
|
|
|
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/defineProperty.js
|
|
|
var defineProperty = __webpack_require__(85573);
|
|
|
var defineProperty_default = /*#__PURE__*/__webpack_require__.n(defineProperty);
|
|
|
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
|
|
|
var _react_17_0_2_react = __webpack_require__(59301);
|
|
|
// EXTERNAL MODULE: ./node_modules/_codemirror@5.58.2@codemirror/lib/codemirror.js
|
|
|
var codemirror = __webpack_require__(89780);
|
|
|
var codemirror_default = /*#__PURE__*/__webpack_require__.n(codemirror);
|
|
|
// EXTERNAL MODULE: ./node_modules/_resize-observer-polyfill@1.5.1@resize-observer-polyfill/dist/ResizeObserver.es.js
|
|
|
var ResizeObserver_es = __webpack_require__(76374);
|
|
|
// EXTERNAL MODULE: ./node_modules/_codemirror@5.58.2@codemirror/lib/codemirror.css
|
|
|
var lib_codemirror = __webpack_require__(98151);
|
|
|
// EXTERNAL MODULE: ./node_modules/_codemirror@5.58.2@codemirror/addon/edit/closetag.js
|
|
|
var closetag = __webpack_require__(6313);
|
|
|
// EXTERNAL MODULE: ./node_modules/_codemirror@5.58.2@codemirror/addon/edit/closebrackets.js
|
|
|
var closebrackets = __webpack_require__(25717);
|
|
|
// EXTERNAL MODULE: ./node_modules/_codemirror@5.58.2@codemirror/addon/display/placeholder.js
|
|
|
var placeholder = __webpack_require__(99498);
|
|
|
// EXTERNAL MODULE: ./node_modules/_codemirror@5.58.2@codemirror/mode/markdown/markdown.js
|
|
|
var markdown = __webpack_require__(25419);
|
|
|
// EXTERNAL MODULE: ./node_modules/_codemirror@5.58.2@codemirror/mode/stex/stex.js
|
|
|
var stex = __webpack_require__(67549);
|
|
|
;// CONCATENATED MODULE: ./src/components/markdown-editor/index.less
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
|
|
|
// EXTERNAL MODULE: ./src/components/RenderHtml/index.tsx
|
|
|
var RenderHtml = __webpack_require__(52961);
|
|
|
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/jsx-runtime.js
|
|
|
var jsx_runtime = __webpack_require__(37712);
|
|
|
;// CONCATENATED MODULE: ./src/components/RenderHtml/stex.tsx
|
|
|
|
|
|
// const latexjs = require('latex-l.js/dist/latex.js');
|
|
|
// import "latex-l.js/dist/css/base.css"
|
|
|
|
|
|
|
|
|
/* harmony default export */ var RenderHtml_stex = (function (_ref) {
|
|
|
var _ref$value = _ref.value,
|
|
|
value = _ref$value === void 0 ? '' : _ref$value,
|
|
|
className = _ref.className,
|
|
|
showTextOnly = _ref.showTextOnly,
|
|
|
showLines = _ref.showLines,
|
|
|
_ref$style = _ref.style,
|
|
|
style = _ref$style === void 0 ? {} : _ref$style;
|
|
|
var html = (0,_react_17_0_2_react.useMemo)(function () {
|
|
|
// try {
|
|
|
// const latex = value || 'This is some text';
|
|
|
// let generator = new latexjs.default.HtmlGenerator({ hyphenate: true })
|
|
|
// let doc = latexjs.default.parse(latex, { generator: generator }).htmlDocument()
|
|
|
// return doc.body.innerHTML
|
|
|
// }catch(e){
|
|
|
// console.log("e:",e)
|
|
|
// return "错误的latex语法,请检查"
|
|
|
// }
|
|
|
return "";
|
|
|
}, [value]);
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(jsx_runtime.Fragment, {
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
dangerouslySetInnerHTML: {
|
|
|
__html: html
|
|
|
}
|
|
|
})
|
|
|
});
|
|
|
});
|
|
|
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectSpread2.js
|
|
|
var objectSpread2 = __webpack_require__(82242);
|
|
|
var objectSpread2_default = /*#__PURE__*/__webpack_require__.n(objectSpread2);
|
|
|
;// CONCATENATED MODULE: ./src/components/markdown-editor/toolbar/index.less
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
|
|
|
;// CONCATENATED MODULE: ./src/components/markdown-editor/css/iconfont.css
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
|
|
|
;// CONCATENATED MODULE: ./src/components/markdown-editor/toolbar/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var DEFAULTICONS = [{
|
|
|
title: '粗体',
|
|
|
icon: 'md-iconfont icon-bold',
|
|
|
actionName: 'bold'
|
|
|
}, {
|
|
|
title: '斜体',
|
|
|
icon: 'md-iconfont icon-italic',
|
|
|
actionName: 'italic'
|
|
|
}, '|', {
|
|
|
title: '无序列表',
|
|
|
icon: 'md-iconfont icon-unorder-list',
|
|
|
actionName: 'list-ul'
|
|
|
}, {
|
|
|
title: '有序列表',
|
|
|
icon: 'md-iconfont icon-order-list',
|
|
|
actionName: 'list-ol'
|
|
|
}, '|', {
|
|
|
title: '行内代码',
|
|
|
icon: 'md-iconfont icon-code',
|
|
|
actionName: 'code'
|
|
|
}, {
|
|
|
title: '代码块(多语言风格)',
|
|
|
icon: 'md-iconfont icon-file-code',
|
|
|
actionName: 'code-block'
|
|
|
}, {
|
|
|
title: '链接',
|
|
|
icon: 'md-iconfont icon-link',
|
|
|
actionName: 'link'
|
|
|
}, '|', {
|
|
|
title: '行内公式',
|
|
|
icon: 'md-iconfont icon-sum',
|
|
|
actionName: 'inline-latex'
|
|
|
}, {
|
|
|
title: '数学图像',
|
|
|
icon: 'iconfont icon-shuxuetuxiang2',
|
|
|
actionName: 'maths-latex'
|
|
|
}, {
|
|
|
title: '多行公式',
|
|
|
icon: 'iconfont icon-jisuan1',
|
|
|
actionName: 'latex'
|
|
|
}, '|', {
|
|
|
title: '添加图片',
|
|
|
icon: 'md-iconfont icon-picture',
|
|
|
actionName: 'upload-image'
|
|
|
}, {
|
|
|
title: '插入画图',
|
|
|
icon: 'iconfont icon-sheji',
|
|
|
actionName: 'draw-image'
|
|
|
}, {
|
|
|
title: '插入流程图',
|
|
|
icon: 'iconfont icon-liucheng',
|
|
|
actionName: 'add-flowchart'
|
|
|
}, {
|
|
|
title: '表格',
|
|
|
icon: 'md-iconfont icon-table',
|
|
|
actionName: 'add-table'
|
|
|
}, '|', {
|
|
|
title: '换行',
|
|
|
icon: 'md-iconfont icon-minus',
|
|
|
actionName: 'line-break'
|
|
|
}, {
|
|
|
title: '清空',
|
|
|
icon: 'md-iconfont icon-eraser',
|
|
|
actionName: 'eraser'
|
|
|
}];
|
|
|
function AButton(_ref) {
|
|
|
var onActionCallback = _ref.onActionCallback,
|
|
|
title = _ref.title,
|
|
|
icon = _ref.icon,
|
|
|
actionName = _ref.actionName,
|
|
|
_ref$className = _ref.className,
|
|
|
className = _ref$className === void 0 ? '' : _ref$className,
|
|
|
children = _ref.children;
|
|
|
function onAction() {
|
|
|
onActionCallback(actionName);
|
|
|
}
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("a", {
|
|
|
title: title,
|
|
|
className: className,
|
|
|
onClick: onAction,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
|
className: "".concat(icon)
|
|
|
}), children]
|
|
|
});
|
|
|
}
|
|
|
/* harmony default export */ var toolbar = (function (_ref2) {
|
|
|
var watch = _ref2.watch,
|
|
|
showNullButton = _ref2.showNullButton,
|
|
|
showNullProgramButton = _ref2.showNullProgramButton,
|
|
|
onActionCallback = _ref2.onActionCallback,
|
|
|
fullScreen = _ref2.fullScreen,
|
|
|
insertTemp = _ref2.insertTemp,
|
|
|
hidetoolBar = _ref2.hidetoolBar,
|
|
|
extraUse = _ref2.extraUse;
|
|
|
var icons = [].concat(DEFAULTICONS, [{
|
|
|
title: "".concat(watch ? '关闭实时预览' : '开启实时预览'),
|
|
|
icon: "".concat(watch ? 'md-iconfont icon-eye-slash' : 'md-iconfont icon-eye'),
|
|
|
actionName: 'trigger-watch'
|
|
|
}]);
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("ul", {
|
|
|
className: "markdown-toolbar-container",
|
|
|
children: [!hidetoolBar && icons.map(function (item, index) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)("li", {
|
|
|
children: item.actionName ? /*#__PURE__*/(0,jsx_runtime.jsx)(AButton, objectSpread2_default()(objectSpread2_default()({}, item), {}, {
|
|
|
onActionCallback: onActionCallback
|
|
|
})) : /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "v-line"
|
|
|
})
|
|
|
}, index);
|
|
|
}), showNullButton ? /*#__PURE__*/(0,jsx_runtime.jsx)("li", {
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(AButton, {
|
|
|
icon: "md-iconfont icon-edit insert-blank",
|
|
|
className: "btn-null",
|
|
|
title: "\u589E\u52A0\u586B\u7A7A",
|
|
|
actionName: "add-null-ch",
|
|
|
onActionCallback: onActionCallback,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "fill-tip",
|
|
|
children: "\u70B9\u51FB\u63D2\u5165\b\u586B\u7A7A\u9879"
|
|
|
})
|
|
|
})
|
|
|
}) : null, showNullProgramButton ? /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("li", {
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(AButton, {
|
|
|
icon: "md-iconfont icon-edit insert-blank",
|
|
|
className: "btn-null",
|
|
|
title: "\u589E\u52A0\u586B\u7A7A",
|
|
|
actionName: "add-signal",
|
|
|
onActionCallback: onActionCallback,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "fill-tip",
|
|
|
children: "\u6DFB\u52A0\u5355\u884C\u586B\u7A7A\u9879"
|
|
|
})
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("li", {
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(AButton, {
|
|
|
icon: "md-iconfont icon-uniE900 insert-blank",
|
|
|
className: "btn-null",
|
|
|
title: "\u589E\u52A0\u586B\u7A7A",
|
|
|
actionName: "add-multiple",
|
|
|
onActionCallback: onActionCallback,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "fill-tip",
|
|
|
children: "\u6DFB\u52A0\u591A\u884C\u586B\u7A7A\u9879"
|
|
|
})
|
|
|
})
|
|
|
})]
|
|
|
}) : null, insertTemp && /*#__PURE__*/(0,jsx_runtime.jsx)("li", {
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(AButton, {
|
|
|
icon: "md-iconfont icon-edit",
|
|
|
className: "btn-null",
|
|
|
title: "\u63D2\u5165\u6A21\u677F",
|
|
|
actionName: "inster-template-".concat(insertTemp),
|
|
|
onActionCallback: onActionCallback,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "fill-tip",
|
|
|
children: "\u63D2\u5165\u6A21\u677F"
|
|
|
})
|
|
|
})
|
|
|
}), extraUse && /*#__PURE__*/(0,jsx_runtime.jsx)("li", {
|
|
|
children: extraUse
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("li", {
|
|
|
className: "btn-full-screen",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(AButton, {
|
|
|
icon: "".concat(fullScreen ? 'md-iconfont icon-shrink' : 'md-iconfont icon-enlarge'),
|
|
|
title: fullScreen ? '关闭全屏' : '开启全屏',
|
|
|
actionName: "trigger-full-screen",
|
|
|
onActionCallback: onActionCallback
|
|
|
})
|
|
|
})]
|
|
|
});
|
|
|
});
|
|
|
// EXTERNAL MODULE: ./src/components/modal.tsx
|
|
|
var modal = __webpack_require__(613);
|
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/form/index.js + 19 modules
|
|
|
var es_form = __webpack_require__(78241);
|
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/input/index.js + 5 modules
|
|
|
var input = __webpack_require__(20008);
|
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
|
|
|
var es_button = __webpack_require__(3113);
|
|
|
;// CONCATENATED MODULE: ./src/components/markdown-editor/link/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var formItemLayout = {
|
|
|
labelCol: {
|
|
|
span: 4
|
|
|
},
|
|
|
wrapperCol: {
|
|
|
span: 20
|
|
|
}
|
|
|
};
|
|
|
/* harmony default export */ var markdown_editor_link = (function (_ref) {
|
|
|
var callback = _ref.callback,
|
|
|
onCancel = _ref.onCancel;
|
|
|
function onSubmit(values) {
|
|
|
callback(values);
|
|
|
}
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)(es_form/* default */.Z, objectSpread2_default()(objectSpread2_default()({}, formItemLayout), {}, {
|
|
|
initialValues: {
|
|
|
link: 'http://',
|
|
|
title: ''
|
|
|
},
|
|
|
className: "link-panel",
|
|
|
onFinish: onSubmit,
|
|
|
style: {
|
|
|
width: 500
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
|
|
|
label: "\u94FE\u63A5\u5730\u5740",
|
|
|
name: "link",
|
|
|
rules: [{
|
|
|
required: true,
|
|
|
message: '请输入链接地址'
|
|
|
}],
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z, {})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
|
|
|
label: "\u94FE\u63A5\u6807\u9898",
|
|
|
name: "title",
|
|
|
rules: [{
|
|
|
required: true,
|
|
|
message: '请输入链接标题'
|
|
|
}],
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z, {})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: "flex-container flex-end",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
|
type: "primary",
|
|
|
htmlType: "submit",
|
|
|
style: {
|
|
|
marginRight: 10
|
|
|
},
|
|
|
children: "\u786E\u5B9A"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
|
type: "ghost",
|
|
|
onClick: onCancel,
|
|
|
children: "\u53D6\u6D88"
|
|
|
})]
|
|
|
})]
|
|
|
}));
|
|
|
});
|
|
|
// EXTERNAL MODULE: ./src/components/markdown-editor/code-block/index.tsx
|
|
|
var code_block = __webpack_require__(46055);
|
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/message/index.js + 4 modules
|
|
|
var message = __webpack_require__(8591);
|
|
|
;// CONCATENATED MODULE: ./src/components/markdown-editor/upload-image/index.less
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
|
|
|
// EXTERNAL MODULE: ./src/pages/tasks/util.js
|
|
|
var util = __webpack_require__(78436);
|
|
|
;// CONCATENATED MODULE: ./src/components/markdown-editor/upload-image/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var useForm = es_form/* default */.Z.useForm;
|
|
|
var style = {
|
|
|
width: 280,
|
|
|
marginRight: 10
|
|
|
};
|
|
|
var upload_image_formItemLayout = {
|
|
|
labelCol: {
|
|
|
span: 5
|
|
|
},
|
|
|
wrapperCol: {
|
|
|
span: 19
|
|
|
}
|
|
|
};
|
|
|
/* harmony default export */ var upload_image = (function (_ref) {
|
|
|
var callback = _ref.callback,
|
|
|
onCancel = _ref.onCancel;
|
|
|
var _useForm = useForm(),
|
|
|
_useForm2 = slicedToArray_default()(_useForm, 1),
|
|
|
form = _useForm2[0];
|
|
|
var currentFile = (0,_react_17_0_2_react.useRef)();
|
|
|
function onSubmit(values) {
|
|
|
callback(values, currentFile.current);
|
|
|
}
|
|
|
function onAddUrl(data, file) {
|
|
|
if (data.status === -1) {
|
|
|
message/* default */.ZP.error(data.message);
|
|
|
return;
|
|
|
}
|
|
|
form.setFieldsValue({
|
|
|
src: "/api/attachments/".concat(data.id),
|
|
|
type: file.type
|
|
|
});
|
|
|
}
|
|
|
function onFileChange(e) {
|
|
|
var file = e.target.files[0];
|
|
|
currentFile.current = file;
|
|
|
uploadImage(file, onAddUrl);
|
|
|
}
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)(es_form/* default */.Z, objectSpread2_default()(objectSpread2_default()({
|
|
|
form: form
|
|
|
}, upload_image_formItemLayout), {}, {
|
|
|
className: "upload-image-panel",
|
|
|
onFinish: onSubmit,
|
|
|
style: {
|
|
|
width: 470,
|
|
|
overflow: "hidden"
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
|
|
|
label: "\u56FE\u7247\u5730\u5740",
|
|
|
required: true,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: "flex-container",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
|
|
|
noStyle: true,
|
|
|
name: "src",
|
|
|
rules: [{
|
|
|
required: true,
|
|
|
message: '请输入图片地址'
|
|
|
}],
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z, {
|
|
|
style: style
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(UploadButton, {
|
|
|
onFileChange: onFileChange
|
|
|
})]
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
|
|
|
label: "\u56FE\u7247\u63CF\u8FF0",
|
|
|
name: "alt"
|
|
|
// rules={[{ required: true, message: '请输入图片描述' }]}
|
|
|
,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z, {
|
|
|
style: {
|
|
|
width: 264
|
|
|
}
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(es_form/* default */.Z.Item, {
|
|
|
style: {
|
|
|
textAlign: "right"
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
|
type: "primary",
|
|
|
htmlType: "submit",
|
|
|
style: {
|
|
|
marginRight: 10
|
|
|
},
|
|
|
children: "\u786E\u5B9A"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
|
type: "default",
|
|
|
onClick: onCancel,
|
|
|
children: "\u53D6\u6D88"
|
|
|
})]
|
|
|
})]
|
|
|
}));
|
|
|
});
|
|
|
function UploadButton(_ref2) {
|
|
|
var onFileChange = _ref2.onFileChange;
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("label", {
|
|
|
className: "upload-button",
|
|
|
style: {
|
|
|
cursor: "pointer"
|
|
|
},
|
|
|
children: ["\u672C\u5730\u4E0A\u4F20", /*#__PURE__*/(0,jsx_runtime.jsx)("input", {
|
|
|
type: "file",
|
|
|
onChange: onFileChange
|
|
|
})]
|
|
|
});
|
|
|
}
|
|
|
function uploadImage(file, callback) {
|
|
|
if (!file) {
|
|
|
throw new String('没有文件');
|
|
|
return;
|
|
|
}
|
|
|
var formData = new FormData();
|
|
|
formData.append('editormd-image-file', file);
|
|
|
formData.append('file_param_name', 'editormd-image-file');
|
|
|
formData.append('byxhr', 'true');
|
|
|
var xhr = new window.XMLHttpRequest();
|
|
|
xhr.withCredentials = true;
|
|
|
xhr.addEventListener('load', function (response) {
|
|
|
callback(JSON.parse(response.target.responseText), file);
|
|
|
}, false);
|
|
|
xhr.addEventListener('error', function (error) {
|
|
|
console.error(error);
|
|
|
}, false);
|
|
|
xhr.open('POST', "".concat(util/* apiPref */.KI, "/api/attachments.json"));
|
|
|
xhr.send(formData);
|
|
|
}
|
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/row/index.js
|
|
|
var row = __webpack_require__(95237);
|
|
|
// EXTERNAL MODULE: ./src/components/ImageDimensions/index.tsx + 1 modules
|
|
|
var ImageDimensions = __webpack_require__(8179);
|
|
|
;// CONCATENATED MODULE: ./src/components/markdown-editor/draw-image/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
/* harmony default export */ var draw_image = (function (_ref) {
|
|
|
var callback = _ref.callback,
|
|
|
onCancel = _ref.onCancel;
|
|
|
var canvas = document.createElement('canvas');
|
|
|
var context = canvas.getContext('2d');
|
|
|
canvas.width = 1000;
|
|
|
canvas.height = 800;
|
|
|
context.fillStyle = '#ffffff';
|
|
|
context.fillRect(0, 0, canvas.width, canvas.height);
|
|
|
var base64Image = canvas.toDataURL('image/png');
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(row/* default */.Z, {
|
|
|
style: {
|
|
|
height: "100vh"
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(ImageDimensions/* default */.Z, {
|
|
|
fullWidth: true,
|
|
|
noAssociationId: true,
|
|
|
showFullTools: true,
|
|
|
data: {
|
|
|
src: base64Image,
|
|
|
visible: true,
|
|
|
title: String(Date.now())
|
|
|
},
|
|
|
onOk: function onOk(data) {
|
|
|
callback({
|
|
|
src: data.url
|
|
|
});
|
|
|
},
|
|
|
onClose: onCancel
|
|
|
})
|
|
|
});
|
|
|
});
|
|
|
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/regeneratorRuntime.js
|
|
|
var regeneratorRuntime = __webpack_require__(7557);
|
|
|
var regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(regeneratorRuntime);
|
|
|
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/asyncToGenerator.js
|
|
|
var asyncToGenerator = __webpack_require__(41498);
|
|
|
var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator);
|
|
|
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/toConsumableArray.js
|
|
|
var toConsumableArray = __webpack_require__(37205);
|
|
|
var toConsumableArray_default = /*#__PURE__*/__webpack_require__.n(toConsumableArray);
|
|
|
// EXTERNAL MODULE: ./node_modules/_gojs3@2.3.10@gojs3/release/go-module.js
|
|
|
var go_module = __webpack_require__(12378);
|
|
|
;// CONCATENATED MODULE: ./public/js/go/DrawCommandHandler.js
|
|
|
|
|
|
|
|
|
/*
|
|
|
* Copyright (C) 1998-2023 by Northwoods Software Corporation. All Rights Reserved.
|
|
|
*/
|
|
|
|
|
|
/*
|
|
|
* This is an extension and not part of the main GoJS library.
|
|
|
* Note that the API for this class may change with any version, even point releases.
|
|
|
* If you intend to use an extension in production, you should copy the code to your own source directory.
|
|
|
* Extensions can be found in the GoJS kit under the extensions or extensionsJSM folders.
|
|
|
* See the Extensions intro page (https://gojs.net/latest/intro/extensions.html) for more information.
|
|
|
*/
|
|
|
|
|
|
/**
|
|
|
* @constructor
|
|
|
* @extends CommandHandler
|
|
|
* @class
|
|
|
* This CommandHandler class allows the user to position selected Parts in a diagram
|
|
|
* relative to the first part selected, in addition to overriding the doKeyDown method
|
|
|
* of the CommandHandler for handling the arrow keys in additional manners.
|
|
|
* <p>
|
|
|
* Typical usage:
|
|
|
* <pre>
|
|
|
* new go.Diagram("myDiagramDiv",
|
|
|
* {
|
|
|
* commandHandler: $(DrawCommandHandler),
|
|
|
* . . .
|
|
|
* }
|
|
|
* )
|
|
|
* </pre>
|
|
|
* or:
|
|
|
* <pre>
|
|
|
* myDiagram.commandHandler = new DrawCommandHandler();
|
|
|
* </pre>
|
|
|
*/
|
|
|
function DrawCommandHandler() {
|
|
|
go.CommandHandler.call(this);
|
|
|
this._arrowKeyBehavior = "move";
|
|
|
this._pasteOffset = new go.Point(10, 10);
|
|
|
this._lastPasteOffset = new go.Point(0, 0);
|
|
|
}
|
|
|
go.Diagram.inherit(DrawCommandHandler, go.CommandHandler);
|
|
|
|
|
|
/**
|
|
|
* This controls whether or not the user can invoke the {@link #alignLeft}, {@link #alignRight},
|
|
|
* {@link #alignTop}, {@link #alignBottom}, {@link #alignCenterX}, {@link #alignCenterY} commands.
|
|
|
* @this {DrawCommandHandler}
|
|
|
* @return {boolean}
|
|
|
* This returns true:
|
|
|
* if the diagram is not {@link Diagram#isReadOnly},
|
|
|
* if the model is not {@link Model#isReadOnly}, and
|
|
|
* if there are at least two selected {@link Part}s.
|
|
|
*/
|
|
|
DrawCommandHandler.prototype.canAlignSelection = function () {
|
|
|
var diagram = this.diagram;
|
|
|
if (diagram === null || diagram.isReadOnly || diagram.isModelReadOnly) return false;
|
|
|
if (diagram.selection.count < 2) return false;
|
|
|
return true;
|
|
|
};
|
|
|
|
|
|
/**
|
|
|
* Aligns selected parts along the left-most edge of the left-most part.
|
|
|
* @this {DrawCommandHandler}
|
|
|
*/
|
|
|
DrawCommandHandler.prototype.alignLeft = function () {
|
|
|
var diagram = this.diagram;
|
|
|
diagram.startTransaction("aligning left");
|
|
|
var minPosition = Infinity;
|
|
|
diagram.selection.each(function (current) {
|
|
|
if (current instanceof go.Link) return; // skips over go.Link
|
|
|
minPosition = Math.min(current.position.x, minPosition);
|
|
|
});
|
|
|
diagram.selection.each(function (current) {
|
|
|
if (current instanceof go.Link) return; // skips over go.Link
|
|
|
current.move(new go.Point(minPosition, current.position.y));
|
|
|
});
|
|
|
diagram.commitTransaction("aligning left");
|
|
|
};
|
|
|
|
|
|
/**
|
|
|
* Aligns selected parts at the right-most edge of the right-most part.
|
|
|
* @this {DrawCommandHandler}
|
|
|
*/
|
|
|
DrawCommandHandler.prototype.alignRight = function () {
|
|
|
var diagram = this.diagram;
|
|
|
diagram.startTransaction("aligning right");
|
|
|
var maxPosition = -Infinity;
|
|
|
diagram.selection.each(function (current) {
|
|
|
if (current instanceof go.Link) return; // skips over go.Link
|
|
|
var rightSideLoc = current.actualBounds.x + current.actualBounds.width;
|
|
|
maxPosition = Math.max(rightSideLoc, maxPosition);
|
|
|
});
|
|
|
diagram.selection.each(function (current) {
|
|
|
if (current instanceof go.Link) return; // skips over go.Link
|
|
|
current.move(new go.Point(maxPosition - current.actualBounds.width, current.position.y));
|
|
|
});
|
|
|
diagram.commitTransaction("aligning right");
|
|
|
};
|
|
|
|
|
|
/**
|
|
|
* Aligns selected parts at the top-most edge of the top-most part.
|
|
|
* @this {DrawCommandHandler}
|
|
|
*/
|
|
|
DrawCommandHandler.prototype.alignTop = function () {
|
|
|
var diagram = this.diagram;
|
|
|
diagram.startTransaction("alignTop");
|
|
|
var minPosition = Infinity;
|
|
|
diagram.selection.each(function (current) {
|
|
|
if (current instanceof go.Link) return; // skips over go.Link
|
|
|
minPosition = Math.min(current.position.y, minPosition);
|
|
|
});
|
|
|
diagram.selection.each(function (current) {
|
|
|
if (current instanceof go.Link) return; // skips over go.Link
|
|
|
current.move(new go.Point(current.position.x, minPosition));
|
|
|
});
|
|
|
diagram.commitTransaction("alignTop");
|
|
|
};
|
|
|
|
|
|
/**
|
|
|
* Aligns selected parts at the bottom-most edge of the bottom-most part.
|
|
|
* @this {DrawCommandHandler}
|
|
|
*/
|
|
|
DrawCommandHandler.prototype.alignBottom = function () {
|
|
|
var diagram = this.diagram;
|
|
|
diagram.startTransaction("aligning bottom");
|
|
|
var maxPosition = -Infinity;
|
|
|
diagram.selection.each(function (current) {
|
|
|
if (current instanceof go.Link) return; // skips over go.Link
|
|
|
var bottomSideLoc = current.actualBounds.y + current.actualBounds.height;
|
|
|
maxPosition = Math.max(bottomSideLoc, maxPosition);
|
|
|
});
|
|
|
diagram.selection.each(function (current) {
|
|
|
if (current instanceof go.Link) return; // skips over go.Link
|
|
|
current.move(new go.Point(current.actualBounds.x, maxPosition - current.actualBounds.height));
|
|
|
});
|
|
|
diagram.commitTransaction("aligning bottom");
|
|
|
};
|
|
|
|
|
|
/**
|
|
|
* Aligns selected parts at the x-value of the center point of the first selected part.
|
|
|
* @this {DrawCommandHandler}
|
|
|
*/
|
|
|
DrawCommandHandler.prototype.alignCenterX = function () {
|
|
|
var diagram = this.diagram;
|
|
|
var firstSelection = diagram.selection.first();
|
|
|
if (!firstSelection) return;
|
|
|
diagram.startTransaction("aligning Center X");
|
|
|
var centerX = firstSelection.actualBounds.x + firstSelection.actualBounds.width / 2;
|
|
|
diagram.selection.each(function (current) {
|
|
|
if (current instanceof go.Link) return; // skips over go.Link
|
|
|
current.move(new go.Point(centerX - current.actualBounds.width / 2, current.actualBounds.y));
|
|
|
});
|
|
|
diagram.commitTransaction("aligning Center X");
|
|
|
};
|
|
|
|
|
|
/**
|
|
|
* Aligns selected parts at the y-value of the center point of the first selected part.
|
|
|
* @this {DrawCommandHandler}
|
|
|
*/
|
|
|
DrawCommandHandler.prototype.alignCenterY = function () {
|
|
|
var diagram = this.diagram;
|
|
|
var firstSelection = diagram.selection.first();
|
|
|
if (!firstSelection) return;
|
|
|
diagram.startTransaction("aligning Center Y");
|
|
|
var centerY = firstSelection.actualBounds.y + firstSelection.actualBounds.height / 2;
|
|
|
diagram.selection.each(function (current) {
|
|
|
if (current instanceof go.Link) return; // skips over go.Link
|
|
|
current.move(new go.Point(current.actualBounds.x, centerY - current.actualBounds.height / 2));
|
|
|
});
|
|
|
diagram.commitTransaction("aligning Center Y");
|
|
|
};
|
|
|
|
|
|
/**
|
|
|
* Aligns selected parts top-to-bottom in order of the order selected.
|
|
|
* Distance between parts can be specified. Default distance is 0.
|
|
|
* @this {DrawCommandHandler}
|
|
|
* @param {number} distance
|
|
|
*/
|
|
|
DrawCommandHandler.prototype.alignColumn = function (distance) {
|
|
|
var diagram = this.diagram;
|
|
|
diagram.startTransaction("align Column");
|
|
|
if (distance === undefined) distance = 0; // for aligning edge to edge
|
|
|
distance = parseFloat(distance);
|
|
|
var selectedParts = new Array();
|
|
|
diagram.selection.each(function (current) {
|
|
|
if (current instanceof go.Link) return; // skips over go.Link
|
|
|
selectedParts.push(current);
|
|
|
});
|
|
|
for (var i = 0; i < selectedParts.length - 1; i++) {
|
|
|
var current = selectedParts[i];
|
|
|
// adds distance specified between parts
|
|
|
var curBottomSideLoc = current.actualBounds.y + current.actualBounds.height + distance;
|
|
|
var next = selectedParts[i + 1];
|
|
|
next.move(new go.Point(current.actualBounds.x, curBottomSideLoc));
|
|
|
}
|
|
|
diagram.commitTransaction("align Column");
|
|
|
};
|
|
|
|
|
|
/**
|
|
|
* Aligns selected parts left-to-right in order of the order selected.
|
|
|
* Distance between parts can be specified. Default distance is 0.
|
|
|
* @this {DrawCommandHandler}
|
|
|
* @param {number} distance
|
|
|
*/
|
|
|
DrawCommandHandler.prototype.alignRow = function (distance) {
|
|
|
if (distance === undefined) distance = 0; // for aligning edge to edge
|
|
|
distance = parseFloat(distance);
|
|
|
var diagram = this.diagram;
|
|
|
diagram.startTransaction("align Row");
|
|
|
var selectedParts = new Array();
|
|
|
diagram.selection.each(function (current) {
|
|
|
if (current instanceof go.Link) return; // skips over go.Link
|
|
|
selectedParts.push(current);
|
|
|
});
|
|
|
for (var i = 0; i < selectedParts.length - 1; i++) {
|
|
|
var current = selectedParts[i];
|
|
|
// adds distance specified between parts
|
|
|
var curRightSideLoc = current.actualBounds.x + current.actualBounds.width + distance;
|
|
|
var next = selectedParts[i + 1];
|
|
|
next.move(new go.Point(curRightSideLoc, current.actualBounds.y));
|
|
|
}
|
|
|
diagram.commitTransaction("align Row");
|
|
|
};
|
|
|
|
|
|
/**
|
|
|
* This controls whether or not the user can invoke the {@link #rotate} command.
|
|
|
* @this {DrawCommandHandler}
|
|
|
* @param {number=} angle the positive (clockwise) or negative (counter-clockwise) change in the rotation angle of each Part, in degrees.
|
|
|
* @return {boolean}
|
|
|
* This returns true:
|
|
|
* if the diagram is not {@link Diagram#isReadOnly},
|
|
|
* if the model is not {@link Model#isReadOnly}, and
|
|
|
* if there is at least one selected {@link Part}.
|
|
|
*/
|
|
|
DrawCommandHandler.prototype.canRotate = function (number) {
|
|
|
var diagram = this.diagram;
|
|
|
if (diagram === null || diagram.isReadOnly || diagram.isModelReadOnly) return false;
|
|
|
if (diagram.selection.count < 1) return false;
|
|
|
return true;
|
|
|
};
|
|
|
|
|
|
/**
|
|
|
* Change the angle of the parts connected with the given part. This is in the command handler
|
|
|
* so it can be easily accessed for the purpose of creating commands that change the rotation of a part.
|
|
|
* @this {DrawCommandHandler}
|
|
|
* @param {number=} angle the positive (clockwise) or negative (counter-clockwise) change in the rotation angle of each Part, in degrees.
|
|
|
*/
|
|
|
DrawCommandHandler.prototype.rotate = function (angle) {
|
|
|
if (angle === undefined) angle = 90;
|
|
|
var diagram = this.diagram;
|
|
|
diagram.startTransaction("rotate " + angle.toString());
|
|
|
var diagram = this.diagram;
|
|
|
diagram.selection.each(function (current) {
|
|
|
if (current instanceof go.Link || current instanceof go.Group) return; // skips over Links and Groups
|
|
|
current.angle += angle;
|
|
|
});
|
|
|
diagram.commitTransaction("rotate " + angle.toString());
|
|
|
};
|
|
|
|
|
|
/**
|
|
|
* Change the z-ordering of selected parts to pull them forward, in front of all other parts
|
|
|
* in their respective layers.
|
|
|
* All unselected parts in each layer with a selected Part with a non-numeric {@link Part#zOrder} will get a zOrder of zero.
|
|
|
* @this {DrawCommandHandler}
|
|
|
*/
|
|
|
DrawCommandHandler.prototype.pullToFront = function () {
|
|
|
var diagram = this.diagram;
|
|
|
diagram.startTransaction("pullToFront");
|
|
|
// find the affected Layers
|
|
|
var layers = new go.Map();
|
|
|
diagram.selection.each(function (part) {
|
|
|
layers.set(part.layer, 0);
|
|
|
});
|
|
|
// find the maximum zOrder in each Layer
|
|
|
layers.iteratorKeys.each(function (layer) {
|
|
|
var max = 0;
|
|
|
layer.parts.each(function (part) {
|
|
|
if (part.isSelected) return;
|
|
|
var z = part.zOrder;
|
|
|
if (isNaN(z)) {
|
|
|
part.zOrder = 0;
|
|
|
} else {
|
|
|
max = Math.max(max, z);
|
|
|
}
|
|
|
});
|
|
|
layers.set(layer, max);
|
|
|
});
|
|
|
// assign each selected Part.zOrder to the computed value for each Layer
|
|
|
diagram.selection.each(function (part) {
|
|
|
DrawCommandHandler._assignZOrder(part, layers.get(part.layer) + 1);
|
|
|
});
|
|
|
diagram.commitTransaction("pullToFront");
|
|
|
};
|
|
|
|
|
|
/**
|
|
|
* Change the z-ordering of selected parts to push them backward, behind of all other parts
|
|
|
* in their respective layers.
|
|
|
* All unselected parts in each layer with a selected Part with a non-numeric {@link Part#zOrder} will get a zOrder of zero.
|
|
|
* @this {DrawCommandHandler}
|
|
|
*/
|
|
|
DrawCommandHandler.prototype.pushToBack = function () {
|
|
|
var diagram = this.diagram;
|
|
|
diagram.startTransaction("pushToBack");
|
|
|
// find the affected Layers
|
|
|
var layers = new go.Map();
|
|
|
diagram.selection.each(function (part) {
|
|
|
layers.set(part.layer, 0);
|
|
|
});
|
|
|
// find the minimum zOrder in each Layer
|
|
|
layers.iteratorKeys.each(function (layer) {
|
|
|
var min = 0;
|
|
|
layer.parts.each(function (part) {
|
|
|
if (part.isSelected) return;
|
|
|
var z = part.zOrder;
|
|
|
if (isNaN(z)) {
|
|
|
part.zOrder = 0;
|
|
|
} else {
|
|
|
min = Math.min(min, z);
|
|
|
}
|
|
|
});
|
|
|
layers.set(layer, min);
|
|
|
});
|
|
|
// assign each selected Part.zOrder to the computed value for each Layer
|
|
|
diagram.selection.each(function (part) {
|
|
|
DrawCommandHandler._assignZOrder(part,
|
|
|
// make sure a group's nested nodes are also behind everything else
|
|
|
layers.get(part.layer) - 1 - DrawCommandHandler._findGroupDepth(part));
|
|
|
});
|
|
|
diagram.commitTransaction("pushToBack");
|
|
|
};
|
|
|
DrawCommandHandler._assignZOrder = function (part, z, root) {
|
|
|
if (root === undefined) root = part;
|
|
|
if (part.layer === root.layer) part.zOrder = z;
|
|
|
if (part instanceof go.Group) {
|
|
|
part.memberParts.each(function (m) {
|
|
|
DrawCommandHandler._assignZOrder(m, z + 1, root);
|
|
|
});
|
|
|
}
|
|
|
};
|
|
|
DrawCommandHandler._findGroupDepth = function (part) {
|
|
|
if (part instanceof go.Group) {
|
|
|
var d = 0;
|
|
|
part.memberParts.each(function (m) {
|
|
|
d = Math.max(d, DrawCommandHandler._findGroupDepth(m));
|
|
|
});
|
|
|
return d + 1;
|
|
|
} else {
|
|
|
return 0;
|
|
|
}
|
|
|
};
|
|
|
|
|
|
/**
|
|
|
* This implements custom behaviors for arrow key keyboard events.
|
|
|
* Set {@link #arrowKeyBehavior} to "select", "move" (the default), "scroll" (the standard behavior), or "none"
|
|
|
* to affect the behavior when the user types an arrow key.
|
|
|
* @this {DrawCommandHandler}*/
|
|
|
DrawCommandHandler.prototype.doKeyDown = function () {
|
|
|
var diagram = this.diagram;
|
|
|
if (diagram === null) return;
|
|
|
var e = diagram.lastInput;
|
|
|
|
|
|
// determines the function of the arrow keys
|
|
|
if (e.key === "Up" || e.key === "Down" || e.key === "Left" || e.key === "Right") {
|
|
|
var behavior = this.arrowKeyBehavior;
|
|
|
if (behavior === "none") {
|
|
|
// no-op
|
|
|
return;
|
|
|
} else if (behavior === "select") {
|
|
|
this._arrowKeySelect();
|
|
|
return;
|
|
|
} else if (behavior === "move") {
|
|
|
this._arrowKeyMove();
|
|
|
return;
|
|
|
} else if (behavior === "tree") {
|
|
|
this._arrowKeyTree();
|
|
|
return;
|
|
|
}
|
|
|
// otherwise drop through to get the default scrolling behavior
|
|
|
}
|
|
|
|
|
|
// otherwise still does all standard commands
|
|
|
go.CommandHandler.prototype.doKeyDown.call(this);
|
|
|
};
|
|
|
|
|
|
/**
|
|
|
* Collects in an Array all of the non-Link Parts currently in the Diagram.
|
|
|
* @this {DrawCommandHandler}
|
|
|
* @return {Array}
|
|
|
*/
|
|
|
DrawCommandHandler.prototype._getAllParts = function () {
|
|
|
var allParts = new Array();
|
|
|
this.diagram.nodes.each(function (node) {
|
|
|
allParts.push(node);
|
|
|
});
|
|
|
this.diagram.parts.each(function (part) {
|
|
|
allParts.push(part);
|
|
|
});
|
|
|
// note that this ignores Links
|
|
|
return allParts;
|
|
|
};
|
|
|
|
|
|
/**
|
|
|
* To be called when arrow keys should move the Diagram.selection.
|
|
|
* @this {DrawCommandHandler}
|
|
|
*/
|
|
|
DrawCommandHandler.prototype._arrowKeyMove = function () {
|
|
|
var diagram = this.diagram;
|
|
|
var e = diagram.lastInput;
|
|
|
// moves all selected parts in the specified direction
|
|
|
var vdistance = 0;
|
|
|
var hdistance = 0;
|
|
|
// if control is being held down, move pixel by pixel. Else, moves by grid cell size
|
|
|
if (e.control || e.meta) {
|
|
|
vdistance = 1;
|
|
|
hdistance = 1;
|
|
|
} else if (diagram.grid !== null) {
|
|
|
var cellsize = diagram.grid.gridCellSize;
|
|
|
hdistance = cellsize.width;
|
|
|
vdistance = cellsize.height;
|
|
|
}
|
|
|
diagram.startTransaction("arrowKeyMove");
|
|
|
diagram.selection.each(function (part) {
|
|
|
if (e.key === "Up") {
|
|
|
part.move(new go.Point(part.actualBounds.x, part.actualBounds.y - vdistance));
|
|
|
} else if (e.key === "Down") {
|
|
|
part.move(new go.Point(part.actualBounds.x, part.actualBounds.y + vdistance));
|
|
|
} else if (e.key === "Left") {
|
|
|
part.move(new go.Point(part.actualBounds.x - hdistance, part.actualBounds.y));
|
|
|
} else if (e.key === "Right") {
|
|
|
part.move(new go.Point(part.actualBounds.x + hdistance, part.actualBounds.y));
|
|
|
}
|
|
|
});
|
|
|
diagram.commitTransaction("arrowKeyMove");
|
|
|
};
|
|
|
|
|
|
/**
|
|
|
* To be called when arrow keys should change selection.
|
|
|
* @this {DrawCommandHandler}
|
|
|
*/
|
|
|
DrawCommandHandler.prototype._arrowKeySelect = function () {
|
|
|
var diagram = this.diagram;
|
|
|
var e = diagram.lastInput;
|
|
|
// with a part selected, arrow keys change the selection
|
|
|
// arrow keys + shift selects the additional part in the specified direction
|
|
|
// arrow keys + control toggles the selection of the additional part
|
|
|
var nextPart = null;
|
|
|
if (e.key === "Up") {
|
|
|
nextPart = this._findNearestPartTowards(270);
|
|
|
} else if (e.key === "Down") {
|
|
|
nextPart = this._findNearestPartTowards(90);
|
|
|
} else if (e.key === "Left") {
|
|
|
nextPart = this._findNearestPartTowards(180);
|
|
|
} else if (e.key === "Right") {
|
|
|
nextPart = this._findNearestPartTowards(0);
|
|
|
}
|
|
|
if (nextPart !== null) {
|
|
|
if (e.shift) {
|
|
|
nextPart.isSelected = true;
|
|
|
} else if (e.control || e.meta) {
|
|
|
nextPart.isSelected = !nextPart.isSelected;
|
|
|
} else {
|
|
|
diagram.select(nextPart);
|
|
|
}
|
|
|
}
|
|
|
};
|
|
|
|
|
|
/**
|
|
|
* Finds the nearest selectable Part in the specified direction, based on their center points.
|
|
|
* if it doesn't find anything, it just returns the current Part.
|
|
|
* @this {DrawCommandHandler}
|
|
|
* @param {number} dir the direction, in degrees
|
|
|
* @return {Part} the closest Part found in the given direction
|
|
|
*/
|
|
|
DrawCommandHandler.prototype._findNearestPartTowards = function (dir) {
|
|
|
var originalPart = this.diagram.selection.first();
|
|
|
if (originalPart === null) return null;
|
|
|
var originalPoint = originalPart.actualBounds.center;
|
|
|
var allParts = this._getAllParts();
|
|
|
var closestDistance = Infinity;
|
|
|
var closest = originalPart; // if no parts meet the criteria, the same part remains selected
|
|
|
|
|
|
for (var i = 0; i < allParts.length; i++) {
|
|
|
var nextPart = allParts[i];
|
|
|
if (nextPart === originalPart) continue; // skips over currently selected part
|
|
|
if (!nextPart.canSelect()) continue;
|
|
|
var nextPoint = nextPart.actualBounds.center;
|
|
|
var angle = originalPoint.directionPoint(nextPoint);
|
|
|
var anglediff = this._angleCloseness(angle, dir);
|
|
|
if (anglediff <= 45) {
|
|
|
// if this part's center is within the desired direction's sector,
|
|
|
var distance = originalPoint.distanceSquaredPoint(nextPoint);
|
|
|
distance *= 1 + Math.sin(anglediff * Math.PI / 180); // the more different from the intended angle, the further it is
|
|
|
if (distance < closestDistance) {
|
|
|
// and if it's closer than any other part,
|
|
|
closestDistance = distance; // remember it as a better choice
|
|
|
closest = nextPart;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
return closest;
|
|
|
};
|
|
|
|
|
|
/**
|
|
|
* @this {DrawCommandHandler}
|
|
|
* @param {number} a
|
|
|
* @param {number} dir
|
|
|
* @return {number}
|
|
|
*/
|
|
|
DrawCommandHandler.prototype._angleCloseness = function (a, dir) {
|
|
|
return Math.min(Math.abs(dir - a), Math.min(Math.abs(dir + 360 - a), Math.abs(dir - 360 - a)));
|
|
|
};
|
|
|
|
|
|
/**
|
|
|
* To be called when arrow keys should change the selected node in a tree and expand or collapse subtrees.
|
|
|
* @this {DrawCommandHandler}
|
|
|
*/
|
|
|
DrawCommandHandler.prototype._arrowKeyTree = function () {
|
|
|
var diagram = this.diagram;
|
|
|
var selected = diagram.selection.first();
|
|
|
if (!(selected instanceof go.Node)) return;
|
|
|
var e = diagram.lastInput;
|
|
|
if (e.key === "Right") {
|
|
|
if (selected.isTreeLeaf) {
|
|
|
// no-op
|
|
|
} else if (!selected.isTreeExpanded) {
|
|
|
if (diagram.commandHandler.canExpandTree(selected)) {
|
|
|
diagram.commandHandler.expandTree(selected); // expands the tree
|
|
|
}
|
|
|
} else {
|
|
|
// already expanded -- select the first child node
|
|
|
var first = this._sortTreeChildrenByY(selected).first();
|
|
|
if (first !== null) diagram.select(first);
|
|
|
}
|
|
|
} else if (e.key === "Left") {
|
|
|
if (!selected.isTreeLeaf && selected.isTreeExpanded) {
|
|
|
if (diagram.commandHandler.canCollapseTree(selected)) {
|
|
|
diagram.commandHandler.collapseTree(selected); // collapses the tree
|
|
|
}
|
|
|
} else {
|
|
|
// either a leaf or is already collapsed -- select the parent node
|
|
|
var parent = selected.findTreeParentNode();
|
|
|
if (parent !== null) diagram.select(parent);
|
|
|
}
|
|
|
} else if (e.key === "Up") {
|
|
|
var parent = selected.findTreeParentNode();
|
|
|
if (parent !== null) {
|
|
|
var list = this._sortTreeChildrenByY(parent);
|
|
|
var idx = list.indexOf(selected);
|
|
|
if (idx > 0) {
|
|
|
// if there is a previous sibling
|
|
|
var prev = list.elt(idx - 1);
|
|
|
// keep looking at the last child until it's a leaf or collapsed
|
|
|
while (prev !== null && prev.isTreeExpanded && !prev.isTreeLeaf) {
|
|
|
var children = this._sortTreeChildrenByY(prev);
|
|
|
prev = children.last();
|
|
|
}
|
|
|
if (prev !== null) diagram.select(prev);
|
|
|
} else {
|
|
|
// no previous sibling -- select parent
|
|
|
diagram.select(parent);
|
|
|
}
|
|
|
}
|
|
|
} else if (e.key === "Down") {
|
|
|
// if at an expanded parent, select the first child
|
|
|
if (selected.isTreeExpanded && !selected.isTreeLeaf) {
|
|
|
var first = this._sortTreeChildrenByY(selected).first();
|
|
|
if (first !== null) diagram.select(first);
|
|
|
} else {
|
|
|
while (selected !== null) {
|
|
|
var parent = selected.findTreeParentNode();
|
|
|
if (parent === null) break;
|
|
|
var list = this._sortTreeChildrenByY(parent);
|
|
|
var idx = list.indexOf(selected);
|
|
|
if (idx < list.length - 1) {
|
|
|
// select next lower node
|
|
|
diagram.select(list.elt(idx + 1));
|
|
|
break;
|
|
|
} else {
|
|
|
// already at bottom of list of children
|
|
|
selected = parent;
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
|
|
|
// make sure the selection is now in the viewport, but not necessarily centered
|
|
|
var sel = diagram.selection.first();
|
|
|
if (sel !== null) diagram.scrollToRect(sel.actualBounds);
|
|
|
};
|
|
|
DrawCommandHandler.prototype._sortTreeChildrenByY = function (node) {
|
|
|
var list = new go.List().addAll(node.findTreeChildrenNodes());
|
|
|
list.sort(function (a, b) {
|
|
|
var aloc = a.location;
|
|
|
var bloc = b.location;
|
|
|
if (aloc.y < bloc.y) return -1;
|
|
|
if (aloc.y > bloc.y) return 1;
|
|
|
if (aloc.x < bloc.x) return -1;
|
|
|
if (aloc.x > bloc.x) return 1;
|
|
|
return 0;
|
|
|
});
|
|
|
return list;
|
|
|
};
|
|
|
|
|
|
/**
|
|
|
* Reset the last offset for pasting.
|
|
|
* @this {DrawCommandHandler}
|
|
|
* @param {Iterable.<Part>} coll a collection of {@link Part}s.
|
|
|
*/
|
|
|
DrawCommandHandler.prototype.copyToClipboard = function (coll) {
|
|
|
go.CommandHandler.prototype.copyToClipboard.call(this, coll);
|
|
|
this._lastPasteOffset.set(this.pasteOffset);
|
|
|
};
|
|
|
|
|
|
/**
|
|
|
* Paste from the clipboard with an offset incremented on each paste, and reset when copied.
|
|
|
* @this {DrawCommandHandler}
|
|
|
* @return {Set.<Part>} a collection of newly pasted {@link Part}s
|
|
|
*/
|
|
|
DrawCommandHandler.prototype.pasteFromClipboard = function () {
|
|
|
var coll = go.CommandHandler.prototype.pasteFromClipboard.call(this);
|
|
|
this.diagram.moveParts(coll, this._lastPasteOffset);
|
|
|
this._lastPasteOffset.add(this.pasteOffset);
|
|
|
return coll;
|
|
|
};
|
|
|
|
|
|
/**
|
|
|
* Gets or sets the arrow key behavior. Possible values are "move", "select", "scroll", and "tree".
|
|
|
* The default value is "move".
|
|
|
* @name DrawCommandHandler#arrowKeyBehavior
|
|
|
|
|
|
* @return {string}
|
|
|
*/
|
|
|
Object.defineProperty(DrawCommandHandler.prototype, "arrowKeyBehavior", {
|
|
|
get: function get() {
|
|
|
return this._arrowKeyBehavior;
|
|
|
},
|
|
|
set: function set(val) {
|
|
|
if (val !== "move" && val !== "select" && val !== "scroll" && val !== "tree" && val !== "none") {
|
|
|
throw new Error("DrawCommandHandler.arrowKeyBehavior must be either \"move\", \"select\", \"scroll\", \"tree\", or \"none\", not: " + val);
|
|
|
}
|
|
|
this._arrowKeyBehavior = val;
|
|
|
}
|
|
|
});
|
|
|
|
|
|
/**
|
|
|
* Gets or sets the offset at which each repeated pasteSelection() puts the new copied parts from the clipboard.
|
|
|
* The default value is (10,10).
|
|
|
* @name DrawCommandHandler#pasteOffset
|
|
|
|
|
|
* @return {Point}
|
|
|
*/
|
|
|
Object.defineProperty(DrawCommandHandler.prototype, "pasteOffset", {
|
|
|
get: function get() {
|
|
|
return this._pasteOffset;
|
|
|
},
|
|
|
set: function set(val) {
|
|
|
if (!(val instanceof go.Point)) throw new Error("DrawCommandHandler.pasteOffset must be a Point, not: " + val);
|
|
|
this._pasteOffset.set(val);
|
|
|
}
|
|
|
});
|
|
|
/* harmony default export */ var go_DrawCommandHandler = (DrawCommandHandler);
|
|
|
// EXTERNAL MODULE: ./public/js/go/Figures.js
|
|
|
var Figures = __webpack_require__(79006);
|
|
|
// EXTERNAL MODULE: ./node_modules/_gojs-react@1.1.2@gojs-react/lib/esm/gojsreact.js + 1 modules
|
|
|
var gojsreact = __webpack_require__(85160);
|
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/modal/index.js + 16 modules
|
|
|
var es_modal = __webpack_require__(43418);
|
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/col/index.js
|
|
|
var col = __webpack_require__(43604);
|
|
|
// EXTERNAL MODULE: ./src/utils/fetch.ts
|
|
|
var fetch = __webpack_require__(14735);
|
|
|
;// CONCATENATED MODULE: ./src/components/markdown-editor/flow-chart/index.less?modules
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
/* harmony default export */ var flow_chartmodules = ({"myPaletteDiv":"myPaletteDiv___Xjz2I","maxH60":"maxH60___Pd4Re"});
|
|
|
;// CONCATENATED MODULE: ./src/components/markdown-editor/flow-chart/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
window.go = go_module;
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function FlowChart(_ref) {
|
|
|
var onCancel = _ref.onCancel,
|
|
|
callback = _ref.callback;
|
|
|
var myDiagram = (0,_react_17_0_2_react.useRef)();
|
|
|
var myDiagramDivRef = (0,_react_17_0_2_react.useRef)();
|
|
|
var myPaletteDivRef = (0,_react_17_0_2_react.useRef)();
|
|
|
var hidedenContentRef = (0,_react_17_0_2_react.useRef)(false);
|
|
|
var modalRef = (0,_react_17_0_2_react.useRef)(false);
|
|
|
var _useState = (0,_react_17_0_2_react.useState)(0),
|
|
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
|
updateModal = _useState2[0],
|
|
|
setUpdateModal = _useState2[1];
|
|
|
function initDiagram() {
|
|
|
var $ = go_module.GraphObject.make;
|
|
|
var colors = {
|
|
|
red: "#ff3333",
|
|
|
blue: "#3358ff",
|
|
|
green: "#25ad23",
|
|
|
magenta: "#d533ff",
|
|
|
purple: "#7d33ff",
|
|
|
orange: "#ff6233",
|
|
|
brown: "#8e571e",
|
|
|
white: "#ffffff",
|
|
|
black: "#000000",
|
|
|
beige: "#fffcd5",
|
|
|
extralightblue: "#d5ebff",
|
|
|
extralightred: "#f2dfe0",
|
|
|
lightblue: "#a5d2fa",
|
|
|
lightgray: "#cccccc",
|
|
|
lightgreen: "#b3e6b3",
|
|
|
lightred: "#fcbbbd"
|
|
|
};
|
|
|
myDiagram.current = new go_module.Diagram(myDiagramDivRef.current, {
|
|
|
padding: 20,
|
|
|
// extra space when scrolled all the way
|
|
|
grid: $(go_module.Panel, "Grid",
|
|
|
// a simple 10x10 grid
|
|
|
$(go_module.Shape, "LineH", {
|
|
|
stroke: "lightgray",
|
|
|
strokeWidth: 0.5
|
|
|
}), $(go_module.Shape, "LineV", {
|
|
|
stroke: "lightgray",
|
|
|
strokeWidth: 0.5
|
|
|
})),
|
|
|
"draggingTool.isGridSnapEnabled": true,
|
|
|
handlesDragDropForTopLevelParts: true,
|
|
|
mouseDrop: function mouseDrop(e) {
|
|
|
var ok = e.diagram.commandHandler.addTopLevelParts(e.diagram.selection, true);
|
|
|
if (!ok) e.diagram.currentTool.doCancel();
|
|
|
},
|
|
|
commandHandler: $(go_DrawCommandHandler),
|
|
|
// support offset copy-and-paste
|
|
|
"clickCreatingTool.archetypeNodeData": {
|
|
|
text: "未命名",
|
|
|
fill: null,
|
|
|
stroke: null,
|
|
|
borderColor: "rgba(0,0,0,0)"
|
|
|
},
|
|
|
// create a new node by double-clicking in background
|
|
|
"PartCreated": function PartCreated(e) {
|
|
|
var node = e.subject; // the newly inserted Node -- now need to snap its location to the grid
|
|
|
node.location = node.location.copy().snapToGridPoint(e.diagram.grid.gridOrigin, e.diagram.grid.gridCellSize);
|
|
|
setTimeout(function () {
|
|
|
// and have the user start editing its text
|
|
|
e.diagram.commandHandler.editTextBlock();
|
|
|
}, 20);
|
|
|
},
|
|
|
"commandHandler.archetypeGroupData": {
|
|
|
isGroup: true,
|
|
|
text: "NEW GROUP"
|
|
|
},
|
|
|
"SelectionGrouped": function SelectionGrouped(e) {
|
|
|
var group = e.subject;
|
|
|
setTimeout(function () {
|
|
|
// and have the user start editing its text
|
|
|
e.diagram.commandHandler.editTextBlock();
|
|
|
});
|
|
|
},
|
|
|
"LinkRelinked": function LinkRelinked(e) {
|
|
|
// re-spread the connections of other links connected with both old and new nodes
|
|
|
var oldnode = e.parameter.part;
|
|
|
oldnode.invalidateConnectedLinks();
|
|
|
var link = e.subject;
|
|
|
if (e.diagram.toolManager.linkingTool.isForwards) {
|
|
|
link.toNode.invalidateConnectedLinks();
|
|
|
} else {
|
|
|
link.fromNode.invalidateConnectedLinks();
|
|
|
}
|
|
|
},
|
|
|
"undoManager.isEnabled": true
|
|
|
});
|
|
|
|
|
|
// Node template
|
|
|
|
|
|
myDiagram.current.nodeTemplate = $(go_module.Node, "Auto", {
|
|
|
locationSpot: go_module.Spot.Center,
|
|
|
locationObjectName: "SHAPE",
|
|
|
desiredSize: new go_module.Size(120, 60),
|
|
|
minSize: new go_module.Size(40, 40),
|
|
|
resizable: true,
|
|
|
resizeCellSize: new go_module.Size(10, 10),
|
|
|
rotatable: true
|
|
|
// rotateObjectName: "SHAPE", // rotate the Shape without rotating the label
|
|
|
},
|
|
|
// these Bindings are TwoWay because the DraggingTool and ResizingTool modify the target properties
|
|
|
new go_module.Binding("location", "loc", go_module.Point.parse).makeTwoWay(go_module.Point.stringify), new go_module.Binding("desiredSize", "size", go_module.Size.parse).makeTwoWay(go_module.Size.stringify), $(go_module.Shape, {
|
|
|
// the border
|
|
|
name: "SHAPE",
|
|
|
fill: colors.white,
|
|
|
cursor: "pointer",
|
|
|
portId: "",
|
|
|
fromLinkable: true,
|
|
|
toLinkable: true,
|
|
|
fromLinkableDuplicates: true,
|
|
|
toLinkableDuplicates: true,
|
|
|
fromSpot: go_module.Spot.AllSides,
|
|
|
toSpot: go_module.Spot.AllSides
|
|
|
}, new go_module.Binding("figure"), new go_module.Binding("fill"), new go_module.Binding("stroke", "borderColor"), new go_module.Binding("strokeWidth", "thickness"), new go_module.Binding("strokeDashArray", "dash")),
|
|
|
// this Shape prevents mouse events from reaching the middle of the port
|
|
|
$(go_module.Shape, {
|
|
|
width: 100,
|
|
|
height: 20,
|
|
|
strokeWidth: 0,
|
|
|
fill: "transparent"
|
|
|
}), $(go_module.TextBlock, {
|
|
|
margin: 1,
|
|
|
textAlign: "center",
|
|
|
overflow: go_module.TextBlock.OverflowEllipsis,
|
|
|
editable: true
|
|
|
},
|
|
|
// this Binding is TwoWay due to the user editing the text with the TextEditingTool
|
|
|
new go_module.Binding("text").makeTwoWay(), new go_module.Binding("stroke", "color")));
|
|
|
myDiagram.current.nodeTemplate.toolTip = $("ToolTip",
|
|
|
// show some detailed information
|
|
|
$(go_module.Panel, "Vertical", {
|
|
|
maxSize: new go_module.Size(200, NaN)
|
|
|
},
|
|
|
// limit width but not height
|
|
|
$(go_module.TextBlock, {
|
|
|
font: "bold 10pt sans-serif",
|
|
|
textAlign: "center"
|
|
|
}, new go_module.Binding("text")), $(go_module.TextBlock, {
|
|
|
font: "10pt sans-serif",
|
|
|
textAlign: "center"
|
|
|
}, new go_module.Binding("text", "details"))));
|
|
|
|
|
|
// Node selection adornment
|
|
|
// Include four large triangular buttons so that the user can easily make a copy
|
|
|
// of the node, move it to be in that direction relative to the original node,
|
|
|
// and add a link to the new node.
|
|
|
|
|
|
function makeArrowButton(spot, fig) {
|
|
|
var maker = function maker(e, shape) {
|
|
|
e.handled = true;
|
|
|
e.diagram.model.commit(function (m) {
|
|
|
var selnode = shape.part.adornedPart;
|
|
|
// create a new node in the direction of the spot
|
|
|
var p = new go_module.Point().setRectSpot(selnode.actualBounds, spot);
|
|
|
p.subtract(selnode.location);
|
|
|
p.scale(2, 2);
|
|
|
p.x += Math.sign(p.x) * 130;
|
|
|
p.y += Math.sign(p.y) * 130;
|
|
|
p.add(selnode.location);
|
|
|
p.snapToGridPoint(e.diagram.grid.gridOrigin, e.diagram.grid.gridCellSize);
|
|
|
// make the new node a copy of the selected node
|
|
|
var nodedata = m.copyNodeData(selnode.data);
|
|
|
// add to same group as selected node
|
|
|
m.setGroupKeyForNodeData(nodedata, m.getGroupKeyForNodeData(selnode.data));
|
|
|
m.addNodeData(nodedata); // add to model
|
|
|
// create a link from the selected node to the new node
|
|
|
var linkdata = {
|
|
|
from: selnode.key,
|
|
|
to: m.getKeyForNodeData(nodedata)
|
|
|
};
|
|
|
m.addLinkData(linkdata); // add to model
|
|
|
// move the new node to the computed location, select it, and start to edit it
|
|
|
var newnode = e.diagram.findNodeForData(nodedata);
|
|
|
newnode.location = p;
|
|
|
e.diagram.select(newnode);
|
|
|
setTimeout(function () {
|
|
|
e.diagram.commandHandler.editTextBlock();
|
|
|
}, 20);
|
|
|
});
|
|
|
};
|
|
|
return $(go_module.Shape, {
|
|
|
figure: fig,
|
|
|
alignment: spot,
|
|
|
alignmentFocus: spot.opposite(),
|
|
|
width: spot.equals(go_module.Spot.Top) || spot.equals(go_module.Spot.Bottom) ? 25 : 18,
|
|
|
height: spot.equals(go_module.Spot.Top) || spot.equals(go_module.Spot.Bottom) ? 18 : 25,
|
|
|
fill: "orange",
|
|
|
stroke: colors.white,
|
|
|
strokeWidth: 4,
|
|
|
mouseEnter: function mouseEnter(e, shape) {
|
|
|
return shape.fill = "dodgerblue";
|
|
|
},
|
|
|
mouseLeave: function mouseLeave(e, shape) {
|
|
|
return shape.fill = "orange";
|
|
|
},
|
|
|
isActionable: true,
|
|
|
// needed because it's in an Adornment
|
|
|
click: maker,
|
|
|
contextClick: maker
|
|
|
});
|
|
|
}
|
|
|
|
|
|
// create a button that brings up the context menu
|
|
|
function CMButton(options) {
|
|
|
return $(go_module.Shape, {
|
|
|
fill: "orange",
|
|
|
stroke: "rgba(0, 0, 0, 0)",
|
|
|
strokeWidth: 15,
|
|
|
background: "transparent",
|
|
|
geometryString: "F1 M0 0 b 0 360 -4 0 4 z M10 0 b 0 360 -4 0 4 z M20 0 b 0 360 -4 0 4",
|
|
|
// M10 0 A2 2 0 1 0 14 10 M20 0 A2 2 0 1 0 24 10,
|
|
|
isActionable: true,
|
|
|
cursor: "context-menu",
|
|
|
mouseEnter: function mouseEnter(e, shape) {
|
|
|
return shape.fill = "dodgerblue";
|
|
|
},
|
|
|
mouseLeave: function mouseLeave(e, shape) {
|
|
|
return shape.fill = "orange";
|
|
|
},
|
|
|
click: function click(e, shape) {
|
|
|
e.diagram.commandHandler.showContextMenu(shape.part.adornedPart);
|
|
|
}
|
|
|
}, options || {});
|
|
|
}
|
|
|
myDiagram.current.nodeTemplate.selectionAdornmentTemplate = $(go_module.Adornment, "Spot", $(go_module.Placeholder, {
|
|
|
padding: 10
|
|
|
}), makeArrowButton(go_module.Spot.Top, "TriangleUp"), makeArrowButton(go_module.Spot.Left, "TriangleLeft"), makeArrowButton(go_module.Spot.Right, "TriangleRight"), makeArrowButton(go_module.Spot.Bottom, "TriangleDown"), CMButton({
|
|
|
alignment: new go_module.Spot(0.75, 0)
|
|
|
}));
|
|
|
|
|
|
// Common context menu button definitions
|
|
|
|
|
|
// All buttons in context menu work on both click and contextClick,
|
|
|
// in case the user context-clicks on the button.
|
|
|
// All buttons modify the node data, not the Node, so the Bindings need not be TwoWay.
|
|
|
|
|
|
// A button-defining helper function that returns a click event handler.
|
|
|
// PROPNAME is the name of the data property that should be set to the given VALUE.
|
|
|
function ClickFunction(propname, value) {
|
|
|
return function (e, obj) {
|
|
|
e.handled = true; // don't let the click bubble up
|
|
|
e.diagram.model.commit(function (m) {
|
|
|
m.set(obj.part.adornedPart.data, propname, value);
|
|
|
});
|
|
|
};
|
|
|
}
|
|
|
|
|
|
// Create a context menu button for setting a data property with a color value.
|
|
|
function ColorButton(color, propname) {
|
|
|
if (!propname) propname = "color";
|
|
|
return $(go_module.Shape, {
|
|
|
width: 16,
|
|
|
height: 16,
|
|
|
stroke: "lightgray",
|
|
|
fill: color,
|
|
|
margin: 1,
|
|
|
background: "transparent",
|
|
|
mouseEnter: function mouseEnter(e, shape) {
|
|
|
return shape.stroke = "dodgerblue";
|
|
|
},
|
|
|
mouseLeave: function mouseLeave(e, shape) {
|
|
|
return shape.stroke = "lightgray";
|
|
|
},
|
|
|
click: ClickFunction(propname, color),
|
|
|
contextClick: ClickFunction(propname, color)
|
|
|
});
|
|
|
}
|
|
|
function LightFillButtons() {
|
|
|
// used by multiple context menus
|
|
|
return [$("ContextMenuButton", $(go_module.Panel, "Horizontal", ColorButton(colors.white, "fill"), ColorButton(colors.beige, "fill"), ColorButton(colors.extralightblue, "fill"), ColorButton(colors.extralightred, "fill"))), $("ContextMenuButton", $(go_module.Panel, "Horizontal", ColorButton(colors.lightgray, "fill"), ColorButton(colors.lightgreen, "fill"), ColorButton(colors.lightblue, "fill"), ColorButton(colors.lightred, "fill")))];
|
|
|
}
|
|
|
function DarkColorButtons() {
|
|
|
// used by multiple context menus
|
|
|
return [$("ContextMenuButton", $(go_module.Panel, "Horizontal", ColorButton(colors.black), ColorButton(colors.green), ColorButton(colors.blue), ColorButton(colors.red))), $("ContextMenuButton", $(go_module.Panel, "Horizontal", ColorButton(colors.white), ColorButton(colors.magenta), ColorButton(colors.purple), ColorButton(colors.orange)))];
|
|
|
}
|
|
|
|
|
|
// Create a context menu button for setting a data property with a stroke width value.
|
|
|
function ThicknessButton(sw, propname) {
|
|
|
if (!propname) propname = "thickness";
|
|
|
return $(go_module.Shape, "LineH", {
|
|
|
width: 16,
|
|
|
height: 16,
|
|
|
strokeWidth: sw,
|
|
|
margin: 1,
|
|
|
background: "transparent",
|
|
|
mouseEnter: function mouseEnter(e, shape) {
|
|
|
return shape.background = "dodgerblue";
|
|
|
},
|
|
|
mouseLeave: function mouseLeave(e, shape) {
|
|
|
return shape.background = "transparent";
|
|
|
},
|
|
|
click: ClickFunction(propname, sw),
|
|
|
contextClick: ClickFunction(propname, sw)
|
|
|
});
|
|
|
}
|
|
|
|
|
|
// Create a context menu button for setting a data property with a stroke dash Array value.
|
|
|
function DashButton(dash, propname) {
|
|
|
if (!propname) propname = "dash";
|
|
|
return $(go_module.Shape, "LineH", {
|
|
|
width: 24,
|
|
|
height: 16,
|
|
|
strokeWidth: 2,
|
|
|
strokeDashArray: dash,
|
|
|
margin: 1,
|
|
|
background: "transparent",
|
|
|
mouseEnter: function mouseEnter(e, shape) {
|
|
|
return shape.background = "dodgerblue";
|
|
|
},
|
|
|
mouseLeave: function mouseLeave(e, shape) {
|
|
|
return shape.background = "transparent";
|
|
|
},
|
|
|
click: ClickFunction(propname, dash),
|
|
|
contextClick: ClickFunction(propname, dash)
|
|
|
});
|
|
|
}
|
|
|
function StrokeOptionsButtons() {
|
|
|
// used by multiple context menus
|
|
|
return [$("ContextMenuButton", $(go_module.Panel, "Horizontal", ThicknessButton(1), ThicknessButton(2), ThicknessButton(3), ThicknessButton(4))), $("ContextMenuButton", $(go_module.Panel, "Horizontal", DashButton(null), DashButton([2, 4]), DashButton([4, 4])))];
|
|
|
}
|
|
|
|
|
|
// Node context menu
|
|
|
|
|
|
function FigureButton(fig, propname) {
|
|
|
if (!propname) propname = "figure";
|
|
|
return $(go_module.Shape, {
|
|
|
width: 32,
|
|
|
height: 32,
|
|
|
scale: 0.5,
|
|
|
fill: "lightgray",
|
|
|
figure: fig,
|
|
|
margin: 1,
|
|
|
background: "transparent",
|
|
|
mouseEnter: function mouseEnter(e, shape) {
|
|
|
return shape.fill = "dodgerblue";
|
|
|
},
|
|
|
mouseLeave: function mouseLeave(e, shape) {
|
|
|
return shape.fill = "lightgray";
|
|
|
},
|
|
|
click: ClickFunction(propname, fig),
|
|
|
contextClick: ClickFunction(propname, fig)
|
|
|
});
|
|
|
}
|
|
|
myDiagram.current.nodeTemplate.contextMenu = $("ContextMenu",
|
|
|
// $("ContextMenuButton",
|
|
|
// $(go.TextBlock, 'Move Up', {
|
|
|
// // Associate the custom command to move the node up
|
|
|
// click: (e, obj) => {
|
|
|
// const node = obj.part.adornedPart;
|
|
|
// myDiagram.current.commandHandler['MoveNodeUp'].execute(myDiagram.current);
|
|
|
// }
|
|
|
// })
|
|
|
// ),
|
|
|
// $("ContextMenuButton",
|
|
|
// $(go.TextBlock, 'Move Up', {
|
|
|
// // Associate the custom command to move the node up
|
|
|
// click: (e, obj) => {
|
|
|
// const node = obj.part.adornedPart;
|
|
|
// myDiagram.current.commandHandler['moveNodeUpCommand'].execute(myDiagram.current);
|
|
|
// }
|
|
|
// })
|
|
|
// ),
|
|
|
$("ContextMenuButton", $(go_module.Panel, "Horizontal", FigureButton("Rectangle"), FigureButton("RoundedRectangle"), FigureButton("Ellipse"), FigureButton("Diamond"))), $("ContextMenuButton", $(go_module.Panel, "Horizontal", FigureButton("Parallelogram2"), FigureButton("ManualOperation"), FigureButton("Procedure"), FigureButton("Cylinder1"))), $("ContextMenuButton", $(go_module.Panel, "Horizontal", FigureButton("Terminator"), FigureButton("CreateRequest"), FigureButton("Document"), FigureButton("TriangleDown"))), LightFillButtons(), DarkColorButtons(), StrokeOptionsButtons());
|
|
|
|
|
|
// Group template
|
|
|
|
|
|
myDiagram.current.groupTemplate = $(go_module.Group, "Spot", {
|
|
|
layerName: "Background",
|
|
|
ungroupable: true,
|
|
|
locationSpot: go_module.Spot.Center,
|
|
|
selectionObjectName: "BODY",
|
|
|
computesBoundsAfterDrag: true,
|
|
|
// allow dragging out of a Group that uses a Placeholder
|
|
|
handlesDragDropForMembers: true,
|
|
|
// don't need to define handlers on Nodes and Links
|
|
|
mouseDrop: function mouseDrop(e, grp) {
|
|
|
// add dropped nodes as members of the group
|
|
|
var ok = grp.addMembers(grp.diagram.selection, true);
|
|
|
if (!ok) grp.diagram.currentTool.doCancel();
|
|
|
},
|
|
|
avoidable: false
|
|
|
}, new go_module.Binding("location", "loc", go_module.Point.parse).makeTwoWay(go_module.Point.stringify), $(go_module.Panel, "Auto", {
|
|
|
name: "BODY"
|
|
|
}, $(go_module.Shape, {
|
|
|
parameter1: 10,
|
|
|
fill: colors.white,
|
|
|
strokeWidth: 2,
|
|
|
cursor: "pointer",
|
|
|
fromLinkable: true,
|
|
|
toLinkable: true,
|
|
|
fromLinkableDuplicates: true,
|
|
|
toLinkableDuplicates: true,
|
|
|
fromSpot: go_module.Spot.AllSides,
|
|
|
toSpot: go_module.Spot.AllSides
|
|
|
}, new go_module.Binding("fill"), new go_module.Binding("stroke", "color"), new go_module.Binding("strokeWidth", "thickness"), new go_module.Binding("strokeDashArray", "dash")), $(go_module.Placeholder, {
|
|
|
background: "transparent",
|
|
|
margin: 20
|
|
|
})), $(go_module.TextBlock, {
|
|
|
alignment: go_module.Spot.Top,
|
|
|
alignmentFocus: go_module.Spot.Bottom,
|
|
|
font: "bold 12pt sans-serif",
|
|
|
editable: true
|
|
|
}, new go_module.Binding("text"), new go_module.Binding("stroke", "color")));
|
|
|
myDiagram.current.groupTemplate.selectionAdornmentTemplate = $(go_module.Adornment, "Spot", $(go_module.Panel, "Auto", $(go_module.Shape, {
|
|
|
fill: null,
|
|
|
stroke: "dodgerblue",
|
|
|
strokeWidth: 3
|
|
|
}), $(go_module.Placeholder, {
|
|
|
margin: 1.5
|
|
|
})), CMButton({
|
|
|
alignment: go_module.Spot.TopRight,
|
|
|
alignmentFocus: go_module.Spot.BottomRight
|
|
|
}));
|
|
|
|
|
|
// 右键
|
|
|
myDiagram.current.groupTemplate.contextMenu = $("ContextMenu", LightFillButtons(), DarkColorButtons(), StrokeOptionsButtons());
|
|
|
|
|
|
// Link template
|
|
|
|
|
|
myDiagram.current.linkTemplate = $(go_module.Link, {
|
|
|
layerName: "Foreground",
|
|
|
routing: go_module.Link.AvoidsNodes,
|
|
|
corner: 10,
|
|
|
fromShortLength: 10,
|
|
|
toShortLength: 15,
|
|
|
// assume arrowhead at "to" end, need to avoid bad appearance when path is thick
|
|
|
relinkableFrom: true,
|
|
|
relinkableTo: true,
|
|
|
reshapable: true,
|
|
|
resegmentable: true
|
|
|
}, new go_module.Binding("fromSpot", "fromSpot", go_module.Spot.parse), new go_module.Binding("toSpot", "toSpot", go_module.Spot.parse), new go_module.Binding("fromShortLength", "dir", function (dir) {
|
|
|
return dir >= 1 ? 10 : 0;
|
|
|
}), new go_module.Binding("toShortLength", "dir", function (dir) {
|
|
|
return dir >= 1 ? 10 : 0;
|
|
|
}), new go_module.Binding("points").makeTwoWay(),
|
|
|
// TwoWay due to user reshaping with LinkReshapingTool
|
|
|
|
|
|
$(go_module.Shape, {
|
|
|
strokeWidth: 2
|
|
|
}, new go_module.Binding("stroke", "color"), new go_module.Binding("strokeWidth", "thickness"), new go_module.Binding("strokeDashArray", "dash")), $(go_module.Shape,
|
|
|
// custom arrowheads to create the lifted effect
|
|
|
{
|
|
|
segmentIndex: 0,
|
|
|
segmentOffset: new go_module.Point(15, 0),
|
|
|
segmentOrientation: go_module.Link.OrientAlong,
|
|
|
alignmentFocus: go_module.Spot.Right,
|
|
|
figure: "circle",
|
|
|
width: 10,
|
|
|
strokeWidth: 0
|
|
|
}, new go_module.Binding("fill", "color"), new go_module.Binding("visible", "dir", function (dir) {
|
|
|
return dir === 1;
|
|
|
})), $(go_module.Shape, {
|
|
|
segmentIndex: -1,
|
|
|
segmentOffset: new go_module.Point(-10, 6),
|
|
|
segmentOrientation: go_module.Link.OrientPlus90,
|
|
|
alignmentFocus: go_module.Spot.Right,
|
|
|
figure: "triangle",
|
|
|
width: 12,
|
|
|
height: 12,
|
|
|
strokeWidth: 0
|
|
|
}, new go_module.Binding("fill", "color"), new go_module.Binding("visible", "dir", function (dir) {
|
|
|
return dir >= 1;
|
|
|
}), new go_module.Binding("width", "thickness", function (t) {
|
|
|
return 7 + 3 * t;
|
|
|
}),
|
|
|
// custom arrowhead must scale with the size of the while
|
|
|
new go_module.Binding("height", "thickness", function (t) {
|
|
|
return 7 + 3 * t;
|
|
|
}),
|
|
|
// while remaining centered on line
|
|
|
new go_module.Binding("segmentOffset", "thickness", function (t) {
|
|
|
return new go_module.Point(-15, 4 + 1.5 * t);
|
|
|
})), $(go_module.Shape, {
|
|
|
segmentIndex: 0,
|
|
|
segmentOffset: new go_module.Point(15, -6),
|
|
|
segmentOrientation: go_module.Link.OrientMinus90,
|
|
|
alignmentFocus: go_module.Spot.Right,
|
|
|
figure: "triangle",
|
|
|
width: 12,
|
|
|
height: 12,
|
|
|
strokeWidth: 0
|
|
|
}, new go_module.Binding("fill", "color"), new go_module.Binding("visible", "dir", function (dir) {
|
|
|
return dir === 2;
|
|
|
}), new go_module.Binding("width", "thickness", function (t) {
|
|
|
return 7 + 3 * t;
|
|
|
}), new go_module.Binding("height", "thickness", function (t) {
|
|
|
return 7 + 3 * t;
|
|
|
}), new go_module.Binding("segmentOffset", "thickness", function (t) {
|
|
|
return new go_module.Point(-15, 4 + 1.5 * t);
|
|
|
})), $(go_module.TextBlock, {
|
|
|
alignmentFocus: new go_module.Spot(0, 1, -4, 0),
|
|
|
editable: true
|
|
|
}, new go_module.Binding("text").makeTwoWay(),
|
|
|
// TwoWay due to user editing with TextEditingTool
|
|
|
new go_module.Binding("stroke", "color")));
|
|
|
myDiagram.current.linkTemplate.selectionAdornmentTemplate = $(go_module.Adornment,
|
|
|
// use a special selection Adornment that does not obscure the link path itself
|
|
|
$(go_module.Shape, {
|
|
|
// this uses a pathPattern with a gap in it, in order to avoid drawing on top of the link path Shape
|
|
|
isPanelMain: true,
|
|
|
stroke: "transparent",
|
|
|
strokeWidth: 6,
|
|
|
pathPattern: makeAdornmentPathPattern(2) // == thickness or strokeWidth
|
|
|
}, new go_module.Binding("pathPattern", "thickness", makeAdornmentPathPattern)), CMButton({
|
|
|
alignmentFocus: new go_module.Spot(0, 0, -6, -4)
|
|
|
}));
|
|
|
function makeAdornmentPathPattern(w) {
|
|
|
return $(go_module.Shape, {
|
|
|
stroke: "dodgerblue",
|
|
|
strokeWidth: 2,
|
|
|
strokeCap: "square",
|
|
|
geometryString: "M0 0 M4 2 H3 M4 " + (w + 4).toString() + " H3"
|
|
|
});
|
|
|
}
|
|
|
|
|
|
// Link context menu
|
|
|
// All buttons in context menu work on both click and contextClick,
|
|
|
// in case the user context-clicks on the button.
|
|
|
// All buttons modify the link data, not the Link, so the Bindings need not be TwoWay.
|
|
|
|
|
|
function ArrowButton(num) {
|
|
|
var geo = "M0 0 M8 16 M0 8 L16 8 M12 11 L16 8 L12 5";
|
|
|
if (num === 0) {
|
|
|
geo = "M0 0 M16 16 M0 8 L16 8";
|
|
|
} else if (num === 2) {
|
|
|
geo = "M0 0 M16 16 M0 8 L16 8 M12 11 L16 8 L12 5 M4 11 L0 8 L4 5";
|
|
|
}
|
|
|
return $(go_module.Shape, {
|
|
|
geometryString: geo,
|
|
|
margin: 2,
|
|
|
background: "transparent",
|
|
|
mouseEnter: function mouseEnter(e, shape) {
|
|
|
return shape.background = "dodgerblue";
|
|
|
},
|
|
|
mouseLeave: function mouseLeave(e, shape) {
|
|
|
return shape.background = "transparent";
|
|
|
},
|
|
|
click: ClickFunction("dir", num),
|
|
|
contextClick: ClickFunction("dir", num)
|
|
|
});
|
|
|
}
|
|
|
function AllSidesButton(to) {
|
|
|
var setter = function setter(e, shape) {
|
|
|
e.handled = true;
|
|
|
e.diagram.model.commit(function (m) {
|
|
|
var link = shape.part.adornedPart;
|
|
|
m.set(link.data, to ? "toSpot" : "fromSpot", go_module.Spot.stringify(go_module.Spot.AllSides));
|
|
|
// re-spread the connections of other links connected with the node
|
|
|
(to ? link.toNode : link.fromNode).invalidateConnectedLinks();
|
|
|
});
|
|
|
};
|
|
|
return $(go_module.Shape, {
|
|
|
width: 12,
|
|
|
height: 12,
|
|
|
fill: "transparent",
|
|
|
mouseEnter: function mouseEnter(e, shape) {
|
|
|
return shape.background = "dodgerblue";
|
|
|
},
|
|
|
mouseLeave: function mouseLeave(e, shape) {
|
|
|
return shape.background = "transparent";
|
|
|
},
|
|
|
click: setter,
|
|
|
contextClick: setter
|
|
|
});
|
|
|
}
|
|
|
function SpotButton(spot, to) {
|
|
|
var ang = 0;
|
|
|
var side = go_module.Spot.RightSide;
|
|
|
if (spot.equals(go_module.Spot.Top)) {
|
|
|
ang = 270;
|
|
|
side = go_module.Spot.TopSide;
|
|
|
} else if (spot.equals(go_module.Spot.Left)) {
|
|
|
ang = 180;
|
|
|
side = go_module.Spot.LeftSide;
|
|
|
} else if (spot.equals(go_module.Spot.Bottom)) {
|
|
|
ang = 90;
|
|
|
side = go_module.Spot.BottomSide;
|
|
|
}
|
|
|
if (!to) ang -= 180;
|
|
|
var setter = function setter(e, shape) {
|
|
|
e.handled = true;
|
|
|
e.diagram.model.commit(function (m) {
|
|
|
var link = shape.part.adornedPart;
|
|
|
m.set(link.data, to ? "toSpot" : "fromSpot", go_module.Spot.stringify(side));
|
|
|
// re-spread the connections of other links connected with the node
|
|
|
(to ? link.toNode : link.fromNode).invalidateConnectedLinks();
|
|
|
});
|
|
|
};
|
|
|
return $(go_module.Shape, {
|
|
|
alignment: spot,
|
|
|
alignmentFocus: spot.opposite(),
|
|
|
geometryString: "M0 0 M12 12 M12 6 L1 6 L4 4 M1 6 L4 8",
|
|
|
angle: ang,
|
|
|
background: "transparent",
|
|
|
mouseEnter: function mouseEnter(e, shape) {
|
|
|
return shape.background = "dodgerblue";
|
|
|
},
|
|
|
mouseLeave: function mouseLeave(e, shape) {
|
|
|
return shape.background = "transparent";
|
|
|
},
|
|
|
click: setter,
|
|
|
contextClick: setter
|
|
|
});
|
|
|
}
|
|
|
myDiagram.current.linkTemplate.contextMenu = $("ContextMenu", DarkColorButtons(), StrokeOptionsButtons(), $("ContextMenuButton", $(go_module.Panel, "Horizontal", ArrowButton(0), ArrowButton(1), ArrowButton(2))), $("ContextMenuButton", $(go_module.Panel, "Horizontal", $(go_module.Panel, "Spot", AllSidesButton(false), SpotButton(go_module.Spot.Top, false), SpotButton(go_module.Spot.Left, false), SpotButton(go_module.Spot.Right, false), SpotButton(go_module.Spot.Bottom, false)), $(go_module.Panel, "Spot", {
|
|
|
margin: new go_module.Margin(0, 0, 0, 2)
|
|
|
}, AllSidesButton(true), SpotButton(go_module.Spot.Top, true), SpotButton(go_module.Spot.Left, true), SpotButton(go_module.Spot.Right, true), SpotButton(go_module.Spot.Bottom, true)))));
|
|
|
var initData = "{ \"class\": \"GraphLinksModel\",\n \"nodeDataArray\": [\n{\"text\":\"Find Problem\",\"key\":-9,\"loc\":\"-20 -140\",\"color\":\"#3358ff\",\"fill\":\"white\",\"figure\":\"Procedure\",\"thickness\":3},\n{\"text\":\"What do we want?\",\"key\":-10,\"loc\":\"-65 -324.305\",\"group\":-16,\"figure\":\"Ellipse\",\"fill\":\"white\"},\n{\"text\":\"What do our users want?\",\"key\":-11,\"loc\":\"105 -334.305\",\"group\":-20,\"figure\":\"Ellipse\",\"fill\":\"#ffffff\",\"color\":\"black\"},\n{\"text\":\"Meetings\",\"key\":-12,\"loc\":\"-65 -444.305\",\"group\":-16,\"figure\":\"TriangleDown\",\"fill\":\"#ffffff\"},\n{\"text\":\"Reviews\",\"key\":-13,\"loc\":\"105 -454.305\",\"group\":-20,\"figure\":\"TriangleDown\",\"fill\":\"#ffffff\",\"color\":\"black\"},\n{\"text\":\"Can we solve it?\",\"key\":-14,\"loc\":\"190 -140\",\"color\":\"#7d33ff\",\"fill\":\"#ffffff\",\"figure\":\"Diamond\",\"size\":\"140 80\",\"thickness\":3},\n{\"isGroup\":true,\"text\":\"Internal\",\"key\":-16,\"loc\":\"-65 -384.305\",\"fill\":\"#d5ebff\",\"dash\":null,\"thickness\":1,\"group\":-22},\n{\"isGroup\":true,\"text\":\"External\",\"key\":-20,\"loc\":\"105 -394.305\",\"fill\":\"#d5ebff\",\"dash\":null,\"thickness\":1,\"group\":-22},\n{\"isGroup\":true,\"text\":\"Sources\",\"key\":-22,\"loc\":\"20 -400\",\"fill\":\"#a5d2fa\",\"dash\":[4,4],\"color\":\"#3358ff\"}\n],\n \"linkDataArray\": [\n{\"from\":-12,\"to\":-10,\"points\":[-65,-414.305,-65,-404.305,-65,-384.305,-65,-384.305,-65,-364.305,-65,-354.305],\"dash\":null,\"dir\":1},\n{\"from\":-13,\"to\":-11,\"points\":[105,-424.305,105,-414.305,105,-394.305,105,-394.305,105,-374.305,105,-364.305],\"dash\":null,\"color\":\"#000000\",\"dir\":1},\n{\"from\":-10,\"to\":-9,\"points\":[-65,-294.305,-65,-284.305,-65,-232.1525,-40,-232.1525,-40,-180,-40,-170],\"dir\":2,\"dash\":[4,4]},\n{\"from\":-11,\"to\":-9,\"points\":[105,-304.305,105,-294.305,105,-237.1525,0,-237.1525,0,-180,0,-170],\"dash\":[4,4],\"dir\":2},\n{\"from\":-9,\"to\":-14,\"points\":[40,-150,58,-150,80,-150,80,-153.33333333333331,102,-153.33333333333331,120,-153.33333333333331],\"dir\":1,\"color\":\"#3358ff\"},\n{\"from\":-14,\"to\":-9,\"points\":[190,-100,190,-90,-20,-90,-20,-95,-20,-100,-20,-110],\"fromSpot\":\"BottomSide\",\"toSpot\":\"BottomSide\",\"text\":\"No\",\"color\":\"#ff3333\",\"thickness\":2,\"dir\":1},\n{\"from\":-9,\"to\":-14,\"points\":[40,-130,58,-130,80,-130,80,-126.66666666666666,102,-126.66666666666666,120,-126.66666666666666]}\n]}";
|
|
|
// myDiagram.current.model = go.Model.fromJson(initData);
|
|
|
|
|
|
// start
|
|
|
var builtIn = ["Rectangle", "Square", "RoundedRectangle", "Border", "Ellipse", "Circle", "TriangleRight", "TriangleDown", "TriangleLeft", "TriangleUp", "Triangle", "Diamond", "LineH", "LineV", "None", "BarH", "BarV", "MinusLine", "PlusLine", "XLine", "LineRight", "LineDown", "LineLeft", "LineUp"];
|
|
|
function isBuiltIn(shapeName) {
|
|
|
console.log("shapeName:", shapeName);
|
|
|
return builtIn.indexOf(shapeName) >= 0;
|
|
|
}
|
|
|
var myPalette = new go_module.Palette(myPaletteDivRef.current,
|
|
|
// must name or refer to the DIV HTML element
|
|
|
{
|
|
|
maxSelectionCount: 1,
|
|
|
// nodeTemplateMap: myDiagram.current.nodeTemplateMap, // share the templates used by myDiagram.current
|
|
|
linkTemplate:
|
|
|
// simplify the link template, just in this Palette
|
|
|
$(go_module.Link, {
|
|
|
// because the GridLayout.alignment is Location and the nodes have locationSpot == Spot.Center,
|
|
|
// to line up the Link in the same manner we have to pretend the Link has the same location spot
|
|
|
locationSpot: go_module.Spot.Center,
|
|
|
selectionAdornmentTemplate: $(go_module.Adornment, "Link", {
|
|
|
locationSpot: go_module.Spot.Center
|
|
|
}, $(go_module.Shape, {
|
|
|
isPanelMain: true,
|
|
|
fill: null,
|
|
|
stroke: "deepskyblue",
|
|
|
strokeWidth: 0
|
|
|
}), $(go_module.Shape,
|
|
|
// the arrowhead
|
|
|
{
|
|
|
toArrow: "Standard",
|
|
|
stroke: null
|
|
|
}))
|
|
|
}, {
|
|
|
routing: go_module.Link.AvoidsNodes,
|
|
|
curve: go_module.Link.JumpOver,
|
|
|
corner: 5,
|
|
|
toShortLength: 4
|
|
|
}, new go_module.Binding("points"), $(go_module.Shape,
|
|
|
// the link path shape
|
|
|
{
|
|
|
isPanelMain: true,
|
|
|
strokeWidth: 2
|
|
|
}), $(go_module.Shape,
|
|
|
// the arrowhead
|
|
|
{
|
|
|
toArrow: "Standard",
|
|
|
stroke: null
|
|
|
})),
|
|
|
model: new go_module.GraphLinksModel([
|
|
|
// specify the contents of the Palette
|
|
|
{
|
|
|
text: "未命名",
|
|
|
"size": "100 100",
|
|
|
fill: null,
|
|
|
stroke: "#000"
|
|
|
}].concat(toConsumableArray_default()(go_module.Shape.getFigureGenerators().toArray().map(function (item) {
|
|
|
return {
|
|
|
text: "未命名",
|
|
|
"size": "100 100",
|
|
|
figure: item.key,
|
|
|
fill: "white",
|
|
|
stroke: "#666",
|
|
|
borderColor: "#000"
|
|
|
};
|
|
|
})))) // [
|
|
|
// // the Palette also has a disconnected Link, which the user can drag-and-drop
|
|
|
// { points: new go.List(/*go.Point*/).addAll([new go.Point(0, 0), new go.Point(30, 0), new go.Point(30, 40), new go.Point(60, 40)]) }
|
|
|
// ]
|
|
|
});
|
|
|
|
|
|
// $("ContextMenuButton",
|
|
|
// $(go.Panel, "Horizontal",
|
|
|
// FigureButton("Rectangle"), FigureButton("RoundedRectangle"), FigureButton("Ellipse"), FigureButton("Diamond")
|
|
|
// )
|
|
|
// ),
|
|
|
// $("ContextMenuButton",
|
|
|
// $(go.Panel, "Horizontal",
|
|
|
// FigureButton("Parallelogram2"), FigureButton("ManualOperation"), FigureButton("Procedure"), FigureButton("Cylinder1")
|
|
|
// )
|
|
|
// ),
|
|
|
// $("ContextMenuButton",
|
|
|
// $(go.Panel, "Horizontal",
|
|
|
// FigureButton("Terminator"), FigureButton("CreateRequest"), FigureButton("Document"), FigureButton("TriangleDown")
|
|
|
// )
|
|
|
// ),
|
|
|
|
|
|
myPalette.nodeTemplate = $(go_module.Node, "Auto", {
|
|
|
locationSpot: go_module.Spot.Center
|
|
|
}, new go_module.Binding("location", "location", go_module.Point.parse).makeTwoWay(go_module.Point.stringify), $(go_module.Shape, "Circle", {
|
|
|
fill: "white",
|
|
|
stroke: "gray",
|
|
|
strokeWidth: 2,
|
|
|
width: 20,
|
|
|
height: 20,
|
|
|
portId: "",
|
|
|
fromLinkable: true,
|
|
|
toLinkable: true,
|
|
|
fromLinkableDuplicates: true,
|
|
|
toLinkableDuplicates: true,
|
|
|
fromLinkableSelfNode: true,
|
|
|
toLinkableSelfNode: true
|
|
|
}, new go_module.Binding("stroke").makeTwoWay(), new go_module.Binding("fill").makeTwoWay(), new go_module.Binding("figure")), $(go_module.TextBlock, {
|
|
|
margin: new go_module.Margin(5, 5, 3, 5),
|
|
|
font: "10pt sans-serif",
|
|
|
minSize: new go_module.Size(16, 16),
|
|
|
maxSize: new go_module.Size(10, NaN),
|
|
|
textAlign: "center",
|
|
|
editable: true
|
|
|
}, new go_module.Binding("key").makeTwoWay()));
|
|
|
// end
|
|
|
|
|
|
setTimeout(function () {
|
|
|
myDiagram.current.grid = $(go_module.Panel, "Grid", $(go_module.Shape, "LineH", {
|
|
|
stroke: "lightgray",
|
|
|
strokeWidth: 0.5
|
|
|
}), $(go_module.Shape, "LineV", {
|
|
|
stroke: "lightgray",
|
|
|
strokeWidth: 0.5
|
|
|
}));
|
|
|
myDiagram.current.grid.visible = true; // 隐藏网格
|
|
|
myDiagram.current.grid.gridCellStroke = "darkgray"; // 设置网格线的颜色
|
|
|
myDiagram.current.grid.gridCellStrokeWidth = 1; // 设置网格线的粗细
|
|
|
}, 300);
|
|
|
window.myDiagrams = myDiagram.current;
|
|
|
return myDiagram.current;
|
|
|
}
|
|
|
var save = /*#__PURE__*/function () {
|
|
|
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
|
|
|
var imgs, res;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
|
|
|
while (1) switch (_context.prev = _context.next) {
|
|
|
case 0:
|
|
|
// console.log(JSON.stringify(myDiagram.current.model.toJson()))
|
|
|
imgs = myDiagram.current.makeImage();
|
|
|
_context.next = 3;
|
|
|
return (0,fetch/* default */.ZP)('/api/attachments.json', {
|
|
|
method: 'post',
|
|
|
body: {
|
|
|
file_type: 'base64',
|
|
|
original_filename: Date.now(),
|
|
|
file: imgs.src
|
|
|
}
|
|
|
});
|
|
|
case 3:
|
|
|
res = _context.sent;
|
|
|
callback({
|
|
|
src: res.url
|
|
|
});
|
|
|
case 5:
|
|
|
case "end":
|
|
|
return _context.stop();
|
|
|
}
|
|
|
}, _callee);
|
|
|
}));
|
|
|
return function save() {
|
|
|
return _ref2.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
setUpdateModal(updateModal + 1);
|
|
|
}, []);
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
ref: modalRef,
|
|
|
className: hidedenContentRef.current ? "".concat(flow_chartmodules.maxH60, " body-overflow-initial") : "body-overflow-initial",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_modal/* default */.Z, {
|
|
|
width: 1200,
|
|
|
icon: null,
|
|
|
footer: null,
|
|
|
closable: true,
|
|
|
visible: !!updateModal,
|
|
|
destroyOnClose: true,
|
|
|
maskClosable: false,
|
|
|
getContainer: modalRef.current,
|
|
|
rootClassName: "zIndex-9999",
|
|
|
title: /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
flex: 1,
|
|
|
children: "\u63D2\u5165\u6D41\u7A0B\u56FE"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
onClick: function onClick() {
|
|
|
hidedenContentRef.current = !hidedenContentRef.current;
|
|
|
setUpdateModal(updateModal + 1);
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "current c-blue mr30",
|
|
|
style: {
|
|
|
fontWeight: 400
|
|
|
},
|
|
|
children: "\u5C55\u5F00/\u6536\u8D77"
|
|
|
})
|
|
|
})]
|
|
|
}),
|
|
|
onCancel: onCancel,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
style: {
|
|
|
width: "100%",
|
|
|
height: "80vh",
|
|
|
overflow: "hidden",
|
|
|
position: "relative"
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
style: {
|
|
|
display: "flex",
|
|
|
height: "100%"
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
style: {
|
|
|
width: "300px",
|
|
|
height: "100%"
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
style: {
|
|
|
background: "#fff",
|
|
|
position: "relative",
|
|
|
zIndex: 12,
|
|
|
fontSize: 16,
|
|
|
color: "#3061d0"
|
|
|
},
|
|
|
children: "\u56FE\u5F62\u5E93"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
style: {
|
|
|
height: "calc(100% - 50px)"
|
|
|
},
|
|
|
className: flow_chartmodules.myPaletteDiv,
|
|
|
ref: myPaletteDivRef
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
style: {
|
|
|
flex: 1,
|
|
|
position: "relative"
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(gojsreact/* ReactDiagram */.FI, {
|
|
|
initDiagram: initDiagram,
|
|
|
divClassName: "diagram-component",
|
|
|
style: {
|
|
|
height: "80vh"
|
|
|
}
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
ref: myDiagramDivRef
|
|
|
})]
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: "tr",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
|
size: "large",
|
|
|
onClick: save,
|
|
|
style: {
|
|
|
position: "absolute",
|
|
|
right: 0,
|
|
|
bottom: 0,
|
|
|
zIndex: 8
|
|
|
},
|
|
|
type: "primary",
|
|
|
children: "\u4FDD\u5B58\u5230\u7F16\u8F91\u5668"
|
|
|
})
|
|
|
})]
|
|
|
})
|
|
|
})
|
|
|
});
|
|
|
}
|
|
|
/* harmony default export */ var flow_chart = (FlowChart);
|
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/radio/index.js + 5 modules
|
|
|
var es_radio = __webpack_require__(5112);
|
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/input-number/index.js + 14 modules
|
|
|
var input_number = __webpack_require__(96971);
|
|
|
;// CONCATENATED MODULE: ./src/components/markdown-editor/add-table-panel/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var RadioGroup = es_radio/* default.Group */.ZP.Group;
|
|
|
var add_table_panel_style = {
|
|
|
margin: '0 8px'
|
|
|
};
|
|
|
/* harmony default export */ var add_table_panel = (function (_ref) {
|
|
|
var callback = _ref.callback,
|
|
|
onCancel = _ref.onCancel;
|
|
|
function onSubmit(values) {
|
|
|
callback(values);
|
|
|
}
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)(es_form/* default */.Z, {
|
|
|
className: "add-table-panel",
|
|
|
initialValues: {
|
|
|
row: 3,
|
|
|
col: 2,
|
|
|
align: 'default'
|
|
|
},
|
|
|
onFinish: onSubmit,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: "flex-container",
|
|
|
style: {
|
|
|
alignItems: "baseline"
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
style: add_table_panel_style,
|
|
|
children: "\u5355\u5143\u683C\u6570\uFF1A"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
style: add_table_panel_style,
|
|
|
children: "\u884C\u6570"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
|
|
|
name: "row",
|
|
|
rules: [{
|
|
|
required: true,
|
|
|
message: '请输入行数'
|
|
|
}],
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(input_number/* default */.Z, {})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
style: add_table_panel_style,
|
|
|
children: "\u5217\u6570"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
|
|
|
name: "col",
|
|
|
rules: [{
|
|
|
required: true,
|
|
|
message: '请输入列数'
|
|
|
}],
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(input_number/* default */.Z, {})
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: "flex-container",
|
|
|
style: {
|
|
|
marginTop: 12,
|
|
|
alignItems: "baseline"
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
style: add_table_panel_style,
|
|
|
children: "\u5BF9\u9F50\u65B9\u5F0F\uFF1A"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
|
|
|
name: "align",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(RadioGroup, {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
|
|
|
value: "default",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
|
className: "fa fa-align-justify"
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
|
|
|
value: "left",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
|
className: "fa fa-align-left"
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
|
|
|
value: "center",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
|
className: "fa fa-align-center"
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
|
|
|
value: "right",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
|
className: "fa fa-align-right"
|
|
|
})
|
|
|
})]
|
|
|
})
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: "flex-container flex-end",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
|
type: "primary",
|
|
|
htmlType: "submit",
|
|
|
style: {
|
|
|
marginRight: 10
|
|
|
},
|
|
|
children: "\u786E\u5B9A"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
|
type: "ghost",
|
|
|
onClick: onCancel,
|
|
|
children: "\u53D6\u6D88"
|
|
|
})]
|
|
|
})]
|
|
|
});
|
|
|
});
|
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/switch/index.js + 2 modules
|
|
|
var es_switch = __webpack_require__(78673);
|
|
|
// EXTERNAL MODULE: ./src/components/MathematicalGraphics/js/index.js
|
|
|
var js = __webpack_require__(38415);
|
|
|
var js_default = /*#__PURE__*/__webpack_require__.n(js);
|
|
|
;// CONCATENATED MODULE: ./src/components/MathematicalGraphics/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var MathematicalGraphics_FlowChart = /*#__PURE__*/(0,_react_17_0_2_react.forwardRef)(function (_ref, ref) {
|
|
|
var use3d = _ref.use3d,
|
|
|
width = _ref.width,
|
|
|
height = _ref.height,
|
|
|
callback = _ref.callback,
|
|
|
showSaveButton = _ref.showSaveButton;
|
|
|
var ggbAppletRef = (0,_react_17_0_2_react.useRef)();
|
|
|
var appletRef = (0,_react_17_0_2_react.useRef)();
|
|
|
var _useState = (0,_react_17_0_2_react.useState)(false),
|
|
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
|
is3D = _useState2[0],
|
|
|
setIs3d = _useState2[1];
|
|
|
var parameters = (0,_react_17_0_2_react.useRef)({
|
|
|
"id": ggbAppletRef,
|
|
|
"appName": "graphing",
|
|
|
"width": width || 1000,
|
|
|
"height": height || 600,
|
|
|
"showToolBar": true,
|
|
|
"showMenuBar": true,
|
|
|
"allowStyleBar": true,
|
|
|
"showAlgebraInput": true,
|
|
|
"enableLabelDrags": false,
|
|
|
"enableShiftDragZoom": true,
|
|
|
"showToolBarHelp": false,
|
|
|
"errorDialogsActive": true,
|
|
|
"showTutorialLink": true,
|
|
|
"showLogging": true,
|
|
|
"useBrowserForJS": false
|
|
|
});
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
appletRef.current = new (js_default())(parameters.current, true);
|
|
|
window.onload = function () {
|
|
|
appletRef.current.inject('applet_container');
|
|
|
};
|
|
|
}, []);
|
|
|
var getImgData = function getImgData() {
|
|
|
var str = window.ggbApplet.getPNGBase64(1, true, 72);
|
|
|
callback && callback(str);
|
|
|
return str;
|
|
|
};
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
parameters.current.appName = is3D ? "3D" : "graphing";
|
|
|
appletRef.current.inject('applet_container');
|
|
|
}, [is3D]);
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
setIs3d(use3d);
|
|
|
}, [use3d]);
|
|
|
(0,_react_17_0_2_react.useImperativeHandle)(ref, function () {
|
|
|
return {
|
|
|
getImgData: getImgData
|
|
|
};
|
|
|
});
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
style: {
|
|
|
width: "100%",
|
|
|
height: "100%"
|
|
|
},
|
|
|
id: "applet_container",
|
|
|
ref: ggbAppletRef
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
align: "middle",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
flex: 1,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_switch/* default */.Z, {
|
|
|
size: "default",
|
|
|
checkedChildren: "\u5173\u95ED3D\u56FE\u50CF",
|
|
|
unCheckedChildren: "\u5F00\u542F3D\u56FE\u50CF",
|
|
|
checked: is3D,
|
|
|
onChange: function onChange(e) {
|
|
|
return setIs3d(e);
|
|
|
}
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
|
size: "large",
|
|
|
onClick: getImgData,
|
|
|
style: {
|
|
|
zIndex: 8,
|
|
|
marginTop: 10
|
|
|
},
|
|
|
type: "primary",
|
|
|
children: "\u4FDD\u5B58\u5230\u7F16\u8F91\u5668"
|
|
|
})
|
|
|
})]
|
|
|
})]
|
|
|
});
|
|
|
});
|
|
|
/* harmony default export */ var MathematicalGraphics = (MathematicalGraphics_FlowChart);
|
|
|
// EXTERNAL MODULE: ./src/components/MathsLatexKeybords/keybords.tsx
|
|
|
var keybords = __webpack_require__(59277);
|
|
|
// EXTERNAL MODULE: ./src/utils/env.ts + 1 modules
|
|
|
var env = __webpack_require__(33259);
|
|
|
;// CONCATENATED MODULE: ./src/components/markdown-editor/constant.ts
|
|
|
var LINK = 'link';
|
|
|
var UPLOAD_IMAGE = 'upload-image';
|
|
|
var ADD_FLOWCHART = 'add-flowchart';
|
|
|
var DRAW_IMAGE = 'draw-image';
|
|
|
var FLOW_CHART = 'add-flowchart';
|
|
|
var CODE_BLOCK = 'code-block';
|
|
|
var ADD_TABLE = 'add-table';
|
|
|
var HRLINE = '------------';
|
|
|
var ALIGNSIGN = {
|
|
|
"default": HRLINE,
|
|
|
left: ":".concat(HRLINE),
|
|
|
center: ":".concat(HRLINE, ":"),
|
|
|
right: "".concat(HRLINE, ":")
|
|
|
};
|
|
|
// EXTERNAL MODULE: ./src/components/useInterval.tsx
|
|
|
var useInterval = __webpack_require__(59587);
|
|
|
;// CONCATENATED MODULE: ./src/components/markdown-editor/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function noop() {}
|
|
|
var pending = 0;
|
|
|
var StorageTimeTicket = 10000;
|
|
|
var NULL_CH = '▁';
|
|
|
var ADD_MULTI = '@▁▁@';
|
|
|
var ADD_SINGLE = '@▁@';
|
|
|
var TEMP1 = '\n**模板标题**\n模板正文内容,可输入文本内容和粘贴图片等操作'; //课程须知模板
|
|
|
var officeSix = ["pptm", "pptx", "ppt", "pot", "pps", "ppa", "potx", "ppsx", "ppam", "pptm", "potm", "ppsm", "doc", "docx", "dot", "dotx", "docm", "dotm", "xls", "xlsx", "csv", "xlt", "xla", "xltx", "xlsm", "xltm", "xlam", "xlsb"];
|
|
|
function processSize(size) {
|
|
|
return !/^\d+$/.test(size) ? size : "".concat(size, "px");
|
|
|
}
|
|
|
var isMac = navigator.platform.toUpperCase().indexOf('MAC') >= 0;
|
|
|
var key = isMac ? 'Cmd' : 'Ctrl';
|
|
|
var DEFAULTKEYMAP = defineProperty_default()(defineProperty_default()({}, key + '-B', 'bold'), key + '-I', 'italic');
|
|
|
var TitleDesc = defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()(defineProperty_default()({}, LINK, '添加链接'), CODE_BLOCK, '添加代码块'), UPLOAD_IMAGE, '添加图片'), DRAW_IMAGE, '添加画图'), ADD_FLOWCHART, '插入流程图'), ADD_TABLE, '添加表格'), 'maths-latex', "数学图像"), 'inline-latex', "LATEX公式");
|
|
|
|
|
|
//https://codemirror.net/demo
|
|
|
//The height can be set through CSS (by giving the .CodeMirror class a height property), or by calling the cm's setSize method.
|
|
|
|
|
|
/* harmony default export */ var markdown_editor = (function (_ref) {
|
|
|
var _ref$defaultValue = _ref.defaultValue,
|
|
|
defaultValue = _ref$defaultValue === void 0 ? '' : _ref$defaultValue,
|
|
|
onChange = _ref.onChange,
|
|
|
_ref$width = _ref.width,
|
|
|
width = _ref$width === void 0 ? '100%' : _ref$width,
|
|
|
_ref$height = _ref.height,
|
|
|
height = _ref$height === void 0 ? 400 : _ref$height,
|
|
|
_ref$miniToolbar = _ref.miniToolbar,
|
|
|
miniToolbar = _ref$miniToolbar === void 0 ? false : _ref$miniToolbar,
|
|
|
_ref$isFocus = _ref.isFocus,
|
|
|
isFocus = _ref$isFocus === void 0 ? false : _ref$isFocus,
|
|
|
watch = _ref.watch,
|
|
|
insertTemp = _ref.insertTemp,
|
|
|
_ref$mode = _ref.mode,
|
|
|
mode = _ref$mode === void 0 ? "markdown" : _ref$mode,
|
|
|
_ref$id = _ref.id,
|
|
|
id = _ref$id === void 0 ? 'markdown-editor-id' : _ref$id,
|
|
|
_ref$showResizeBar = _ref.showResizeBar,
|
|
|
showResizeBar = _ref$showResizeBar === void 0 ? false : _ref$showResizeBar,
|
|
|
_ref$noStorage = _ref.noStorage,
|
|
|
noStorage = _ref$noStorage === void 0 ? false : _ref$noStorage,
|
|
|
_ref$showNullButton = _ref.showNullButton,
|
|
|
showNullButton = _ref$showNullButton === void 0 ? false : _ref$showNullButton,
|
|
|
_ref$showNullProgramB = _ref.showNullProgramButton,
|
|
|
showNullProgramButton = _ref$showNullProgramB === void 0 ? false : _ref$showNullProgramB,
|
|
|
_ref$hidetoolBar = _ref.hidetoolBar,
|
|
|
hidetoolBar = _ref$hidetoolBar === void 0 ? false : _ref$hidetoolBar,
|
|
|
_ref$fullScreen = _ref.fullScreen,
|
|
|
fullScreen = _ref$fullScreen === void 0 ? false : _ref$fullScreen,
|
|
|
onBlur = _ref.onBlur,
|
|
|
onCMBeforeChange = _ref.onCMBeforeChange,
|
|
|
onFullScreen = _ref.onFullScreen,
|
|
|
_ref$className = _ref.className,
|
|
|
className = _ref$className === void 0 ? '' : _ref$className,
|
|
|
_ref$disablePaste = _ref.disablePaste,
|
|
|
disablePaste = _ref$disablePaste === void 0 ? false : _ref$disablePaste,
|
|
|
_ref$disabled = _ref.disabled,
|
|
|
disabled = _ref$disabled === void 0 ? false : _ref$disabled,
|
|
|
_ref$disabledFill = _ref.disabledFill,
|
|
|
disabledFill = _ref$disabledFill === void 0 ? false : _ref$disabledFill,
|
|
|
_ref$placeholder = _ref.placeholder,
|
|
|
placeholder = _ref$placeholder === void 0 ? '' : _ref$placeholder,
|
|
|
_ref$values = _ref.values,
|
|
|
values = _ref$values === void 0 ? '' : _ref$values,
|
|
|
extraUse = _ref.extraUse;
|
|
|
var _useState = (0,_react_17_0_2_react.useState)(null),
|
|
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
|
cm = _useState2[0],
|
|
|
setCm = _useState2[1];
|
|
|
var _useState3 = (0,_react_17_0_2_react.useState)(defaultValue),
|
|
|
_useState4 = slicedToArray_default()(_useState3, 2),
|
|
|
value = _useState4[0],
|
|
|
setValue = _useState4[1];
|
|
|
var _useState5 = (0,_react_17_0_2_react.useState)(watch),
|
|
|
_useState6 = slicedToArray_default()(_useState5, 2),
|
|
|
preview = _useState6[0],
|
|
|
setPreview = _useState6[1];
|
|
|
var _useState7 = (0,_react_17_0_2_react.useState)(fullScreen),
|
|
|
_useState8 = slicedToArray_default()(_useState7, 2),
|
|
|
isFull = _useState8[0],
|
|
|
setIsFull = _useState8[1];
|
|
|
var _useState9 = (0,_react_17_0_2_react.useState)(''),
|
|
|
_useState10 = slicedToArray_default()(_useState9, 2),
|
|
|
action = _useState10[0],
|
|
|
setAction = _useState10[1];
|
|
|
var _useState11 = (0,_react_17_0_2_react.useState)(0),
|
|
|
_useState12 = slicedToArray_default()(_useState11, 2),
|
|
|
lastedUpdateTime = _useState12[0],
|
|
|
setLastedUpdateTime = _useState12[1];
|
|
|
var _useState13 = (0,_react_17_0_2_react.useState)(height),
|
|
|
_useState14 = slicedToArray_default()(_useState13, 2),
|
|
|
h = _useState14[0],
|
|
|
setH = _useState14[1];
|
|
|
var _useState15 = (0,_react_17_0_2_react.useState)(false),
|
|
|
_useState16 = slicedToArray_default()(_useState15, 2),
|
|
|
tip = _useState16[0],
|
|
|
setTip = _useState16[1];
|
|
|
var cmEl = (0,_react_17_0_2_react.useRef)();
|
|
|
var containerEl = (0,_react_17_0_2_react.useRef)();
|
|
|
var resizeBarEl = (0,_react_17_0_2_react.useRef)();
|
|
|
var previewEl = (0,_react_17_0_2_react.useRef)();
|
|
|
|
|
|
// useEffect(() => {
|
|
|
// setValue(defaultValue)
|
|
|
// cm?.setValue(defaultValue)
|
|
|
// },[])
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
var scrollTop = window.scrollY || window.pageYOffset;
|
|
|
setValue(values);
|
|
|
cm === null || cm === void 0 || cm.setValue(values);
|
|
|
window.scrollTo(0, scrollTop);
|
|
|
}, [values]);
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
onFullScreen === null || onFullScreen === void 0 || onFullScreen(isFull);
|
|
|
}, [isFull]);
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
if (cmEl.current) {
|
|
|
var onPaste = function onPaste(_, e) {
|
|
|
if (disablePaste) {
|
|
|
e.preventDefault();
|
|
|
return;
|
|
|
}
|
|
|
var clipboardData = e.clipboardData;
|
|
|
if (clipboardData) {
|
|
|
var types = clipboardData.types.toString();
|
|
|
var items = clipboardData.items;
|
|
|
if (types === 'Files' || clipboardData.types.indexOf("Files") > -1) {
|
|
|
e.preventDefault();
|
|
|
if (mode == "stex") return;
|
|
|
try {
|
|
|
var _items$;
|
|
|
var item = items[1];
|
|
|
if (((_items$ = items[0]) === null || _items$ === void 0 ? void 0 : _items$.kind) === 'file') {
|
|
|
item = items[0];
|
|
|
}
|
|
|
var file = item.getAsFile();
|
|
|
var fileSix = file.name.split(".").pop();
|
|
|
// console.log("item:", item, file, item?.type?.match(/^video\//i))
|
|
|
uploadImage(file, function (data) {
|
|
|
if (data.id) {
|
|
|
var _file$type, _file$type2, _file$type3;
|
|
|
if ((file === null || file === void 0 || (_file$type = file.type) === null || _file$type === void 0 ? void 0 : _file$type.indexOf("image")) > -1) {
|
|
|
instance.replaceSelection(".concat(data.content_type, ")"));
|
|
|
} else if ((file === null || file === void 0 || (_file$type2 = file.type) === null || _file$type2 === void 0 ? void 0 : _file$type2.indexOf("video")) > -1) {
|
|
|
instance.replaceSelection("<video width=\"100%\" controls src=\"".concat(env/* default */.Z.API_SERVER, "/api/attachments/").concat(data.id, "\"></video>"));
|
|
|
} else if ((file === null || file === void 0 || (_file$type3 = file.type) === null || _file$type3 === void 0 ? void 0 : _file$type3.indexOf("pdf")) > -1) {
|
|
|
instance.replaceSelection("<a href=\"".concat(env/* default */.Z.API_SERVER, "/api/attachments/").concat(data.id, "?type=").concat(file.type, "&disposition=inline\" target=\"_blank\">").concat(file.name, "</a>"));
|
|
|
} else if (officeSix.includes(fileSix)) {
|
|
|
instance.replaceSelection("<a href=\"".concat(env/* default */.Z.API_SERVER, "/api/attachments/").concat(data.id, "?type=office&disposition=inline\" target=\"_blank\">").concat(file.name, "</a>"));
|
|
|
} else {
|
|
|
instance.replaceSelection("[".concat(file.name, "](").concat(env/* default */.Z.API_SERVER, "/api/attachments/").concat(data.id, "?type=").concat(data.content_type, ")"));
|
|
|
}
|
|
|
} else {
|
|
|
if ((data === null || data === void 0 ? void 0 : data.status) === 401) document.location.href = '/user/login';
|
|
|
}
|
|
|
});
|
|
|
} catch (e) {
|
|
|
message/* default */.ZP.warning("请使用chrome浏览器粘贴");
|
|
|
}
|
|
|
return true;
|
|
|
} else {
|
|
|
//toMarkdown ?
|
|
|
// let html = clipboardData.getData('text/html')
|
|
|
return true;
|
|
|
}
|
|
|
}
|
|
|
return true;
|
|
|
};
|
|
|
var instance = codemirror_default().fromTextArea(cmEl.current, {
|
|
|
mode: mode,
|
|
|
// inputStyle: 'contenteditable',
|
|
|
lineNumbers: miniToolbar ? false : true,
|
|
|
lineWrapping: true,
|
|
|
value: defaultValue,
|
|
|
autoCloseTags: true,
|
|
|
autoCloseBrackets: true
|
|
|
});
|
|
|
instance.on("keyup", function (cm, event) {
|
|
|
if (event.keyCode === 8) {
|
|
|
if (cm.getValue() == "") {
|
|
|
instance.setOption("placeholder", placeholder);
|
|
|
} else {
|
|
|
instance.setOption("placeholder", null);
|
|
|
}
|
|
|
}
|
|
|
});
|
|
|
instance.on("keydown", function (cm, event) {
|
|
|
if (event.keyCode === 8) {
|
|
|
var pos = deleteAtSymbol(cm);
|
|
|
if (pos) {
|
|
|
event.preventDefault();
|
|
|
}
|
|
|
}
|
|
|
});
|
|
|
isFocus && instance.focus();
|
|
|
instance.on('paste', onPaste);
|
|
|
if (disabled) {
|
|
|
instance.on("beforeChange", function (instances, change) {
|
|
|
if (change.origin === "paste" || change.origin === "+input") {
|
|
|
change.cancel();
|
|
|
}
|
|
|
});
|
|
|
}
|
|
|
setCm(instance);
|
|
|
return function () {
|
|
|
instance.off('paste', onPaste);
|
|
|
};
|
|
|
}
|
|
|
}, []);
|
|
|
var resizeEditorBodyHeight = (0,_react_17_0_2_react.useCallback)(function () {
|
|
|
if (containerEl.current) {
|
|
|
try {
|
|
|
// let toolH = containerEl.current.getElementsByClassName('markdown-toolbar-container')[0].offsetHeight
|
|
|
// let mdBody = containerEl.current.getElementsByClassName('markdown-editor-body')[0]
|
|
|
// if (!isFull) {
|
|
|
// mdBody.style.height = `${h - toolH}px`
|
|
|
// } else {
|
|
|
// mdBody.style.height = `calc(100vh - ${toolH}px)`
|
|
|
// }
|
|
|
} catch (error) {
|
|
|
console.log(error, '---- to set md editor body height');
|
|
|
}
|
|
|
}
|
|
|
}, [h, containerEl, isFull]);
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
function onLayout() {
|
|
|
var ro = new ResizeObserver_es/* default */.Z(function (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) {
|
|
|
resizeEditorBodyHeight();
|
|
|
cm.setSize('100%', '100%');
|
|
|
cm.refresh();
|
|
|
}
|
|
|
}
|
|
|
} catch (err) {
|
|
|
_iterator.e(err);
|
|
|
} finally {
|
|
|
_iterator.f();
|
|
|
}
|
|
|
});
|
|
|
ro.observe(cmEl.current.parentElement);
|
|
|
return ro;
|
|
|
}
|
|
|
if (cm) {
|
|
|
var ro = onLayout();
|
|
|
return function () {
|
|
|
var _cmEl$current, _cmEl$current2;
|
|
|
if ((_cmEl$current = cmEl.current) !== null && _cmEl$current !== void 0 && _cmEl$current.parentElement) ro.unobserve((_cmEl$current2 = cmEl.current) === null || _cmEl$current2 === void 0 ? void 0 : _cmEl$current2.parentElement);
|
|
|
};
|
|
|
}
|
|
|
}, [cm, resizeEditorBodyHeight]);
|
|
|
|
|
|
//keymap
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
if (cm) {
|
|
|
var keymap = [];
|
|
|
var _loop = function _loop() {
|
|
|
var _Object$entries$_i = slicedToArray_default()(_Object$entries[_i], 2),
|
|
|
k = _Object$entries$_i[0],
|
|
|
value = _Object$entries$_i[1];
|
|
|
var map = defineProperty_default()({}, k, function () {
|
|
|
onActionCallback(value);
|
|
|
});
|
|
|
keymap.push(map);
|
|
|
cm.addKeyMap(map);
|
|
|
};
|
|
|
for (var _i = 0, _Object$entries = Object.entries(DEFAULTKEYMAP); _i < _Object$entries.length; _i++) {
|
|
|
_loop();
|
|
|
}
|
|
|
return function () {
|
|
|
for (var _i2 = 0, _keymap = keymap; _i2 < _keymap.length; _i2++) {
|
|
|
var m = _keymap[_i2];
|
|
|
cm.removeKeyMap(m);
|
|
|
}
|
|
|
};
|
|
|
}
|
|
|
}, [cm]);
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
if (fullScreen !== isFull) {
|
|
|
setIsFull(fullScreen);
|
|
|
}
|
|
|
}, [fullScreen]);
|
|
|
(0,useInterval/* default */.Z)(function () {
|
|
|
if (!noStorage && lastedUpdateTime > 0) {
|
|
|
var currentTime = new Date().getTime();
|
|
|
var lastedValue = window.sessionStorage.getItem(id);
|
|
|
if (currentTime >= lastedUpdateTime + StorageTimeTicket && (!lastedValue || lastedValue !== value)) {
|
|
|
window.sessionStorage.setItem(id, value);
|
|
|
setTip(true);
|
|
|
}
|
|
|
}
|
|
|
}, StorageTimeTicket);
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
setPreview(watch);
|
|
|
}, [cm, watch]);
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
if (cm) {
|
|
|
isFocus && cm.focus();
|
|
|
}
|
|
|
}, [cm, isFocus]);
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
if (preview && cm) {
|
|
|
var syncScroll = function syncScroll(e) {
|
|
|
var target = e.target;
|
|
|
if (previewEl.current) {
|
|
|
var ratio = target.scrollTop / target.scrollHeight;
|
|
|
previewEl.current.scrollTop = previewEl.current.scrollHeight * ratio;
|
|
|
}
|
|
|
};
|
|
|
var scrollEl = cm.getScrollerElement();
|
|
|
scrollEl.addEventListener('scroll', syncScroll);
|
|
|
return function () {
|
|
|
scrollEl.removeEventListener('scroll', syncScroll);
|
|
|
};
|
|
|
}
|
|
|
}, [cm, preview]);
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
if (cm && onCMBeforeChange) {
|
|
|
var onChangeHandler = function onChangeHandler(cm, change) {
|
|
|
onCMBeforeChange(cm, change);
|
|
|
};
|
|
|
cm.on('beforeChange', onChangeHandler);
|
|
|
return function () {
|
|
|
cm.off('beforeChange', onChangeHandler);
|
|
|
};
|
|
|
}
|
|
|
}, [cm, onCMBeforeChange]);
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
if (cm && onBlur) {
|
|
|
var onBlurHandler = function onBlurHandler() {
|
|
|
onBlur(cm.getValue());
|
|
|
};
|
|
|
cm.on('blur', onBlurHandler);
|
|
|
return function () {
|
|
|
cm.off('blur', onBlurHandler);
|
|
|
};
|
|
|
}
|
|
|
}, [cm, onBlur]);
|
|
|
function deleteAtSymbol(cm, change) {
|
|
|
var doc = cm.getDoc();
|
|
|
var cursor = doc.getCursor();
|
|
|
var line = doc.getLine(cursor.line);
|
|
|
var ch = line.charAt(cursor.ch - 1);
|
|
|
var p1 = line.lastIndexOf("@▁@", cursor.ch);
|
|
|
var p2 = line.lastIndexOf("@▁▁@", cursor.ch);
|
|
|
var posStart = p1 > p2 ? p1 : p2;
|
|
|
var n = p1 > p2 ? 3 : 4;
|
|
|
if (ADD_MULTI.indexOf(ch) === -1) return null;
|
|
|
console.log("change1:", change, cm, line, cursor, posStart, p1, p2, ch);
|
|
|
if (posStart >= 0 && cursor.ch - posStart < 5) {
|
|
|
var posEnd = posStart + n;
|
|
|
doc.replaceRange("", {
|
|
|
line: cursor.line,
|
|
|
ch: posStart
|
|
|
}, {
|
|
|
line: cursor.line,
|
|
|
ch: posEnd
|
|
|
});
|
|
|
return {
|
|
|
line: cursor.line,
|
|
|
ch: posEnd
|
|
|
};
|
|
|
}
|
|
|
return null;
|
|
|
}
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
if (cm) {
|
|
|
var onChangeHandler = function onChangeHandler(cm, change) {
|
|
|
var content = cm.getValue();
|
|
|
setValue(content);
|
|
|
setLastedUpdateTime(new Date().getTime());
|
|
|
cm.getScrollerElement().dispatchEvent(new CustomEvent('scroll'));
|
|
|
if (onChange) {
|
|
|
if (showNullProgramButton) {
|
|
|
onChange(content, formatProgramFill(content));
|
|
|
} else {
|
|
|
onChange(content);
|
|
|
}
|
|
|
}
|
|
|
};
|
|
|
cm.on('change', onChangeHandler);
|
|
|
return function () {
|
|
|
cm.off('change', onChangeHandler);
|
|
|
};
|
|
|
}
|
|
|
}, [cm, onChange]);
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
if (cm) {
|
|
|
// isFocus && cm.focus()
|
|
|
if (defaultValue === null || defaultValue === undefined) {
|
|
|
cm.setValue('');
|
|
|
setValue('');
|
|
|
} else {
|
|
|
var scrollTop = window.scrollY || window.pageYOffset;
|
|
|
if (defaultValue !== cm.getValue()) {
|
|
|
cm.setValue(defaultValue);
|
|
|
setValue(defaultValue);
|
|
|
cm.setCursor(disabled ? 1 : cm.lineCount(), 0);
|
|
|
window.scrollTo(0, scrollTop);
|
|
|
}
|
|
|
}
|
|
|
}
|
|
|
}, [cm, defaultValue]);
|
|
|
var onActionCallback = (0,_react_17_0_2_react.useCallback)(function (actionName) {
|
|
|
var cursor = cm.getCursor();
|
|
|
var selection = cm.getSelection();
|
|
|
var selectionText = selection.split('\n');
|
|
|
switch (actionName) {
|
|
|
case 'bold':
|
|
|
cm.replaceSelection('**' + selection + '**');
|
|
|
if (selection === '') {
|
|
|
cm.setCursor(cursor.line, cursor.ch + 2);
|
|
|
}
|
|
|
return cm.focus();
|
|
|
case 'italic':
|
|
|
cm.replaceSelection('*' + selection + '*');
|
|
|
if (selection === '') {
|
|
|
cm.setCursor(cursor.line, cursor.ch + 1);
|
|
|
}
|
|
|
return cm.focus();
|
|
|
case 'code':
|
|
|
cm.replaceSelection('`' + selection + '`');
|
|
|
if (selection === '') {
|
|
|
cm.setCursor(cursor.line, cursor.ch + 1);
|
|
|
}
|
|
|
return cm.focus();
|
|
|
case 'inline-latex':
|
|
|
setAction("inline-latex");
|
|
|
// cm.replaceSelection('`$$' + selection + '$$`')
|
|
|
// if (selection === '') {
|
|
|
// cm.setCursor(cursor.line, cursor.ch + 3)
|
|
|
// }
|
|
|
return cm.focus();
|
|
|
case 'latex':
|
|
|
cm.replaceSelection("```latex\n" + selection + "\n```");
|
|
|
cm.setCursor(cursor.line + 1, selection.length + 1);
|
|
|
return cm.focus();
|
|
|
case 'line-break':
|
|
|
cm.replaceSelection('<br/>\n');
|
|
|
return cm.focus();
|
|
|
case 'list-ul':
|
|
|
if (selection === '') {
|
|
|
cm.replaceSelection('- ' + selection);
|
|
|
} else {
|
|
|
cm.replaceSelection(selectionText.map(function (item) {
|
|
|
return item === '' ? '' : "- ".concat(item);
|
|
|
}).join('\n'));
|
|
|
}
|
|
|
return cm.focus();
|
|
|
case 'list-ol':
|
|
|
if (selection === '') {
|
|
|
cm.replaceSelection('1. ' + selection);
|
|
|
} else {
|
|
|
cm.replaceSelection(selectionText.map(function (item, index) {
|
|
|
return item === '' ? '' : "".concat(index + 1, ". ").concat(item);
|
|
|
}).join('\n'));
|
|
|
}
|
|
|
return cm.focus();
|
|
|
case 'add-null-ch':
|
|
|
if (selection === '') {
|
|
|
cm.setCursor(cursor.line, cursor.ch);
|
|
|
}
|
|
|
cm.replaceSelection(NULL_CH);
|
|
|
return cm.focus();
|
|
|
case 'add-signal':
|
|
|
if (selection === '') {
|
|
|
cm.setCursor(cursor.line, cursor.ch);
|
|
|
}
|
|
|
cm.replaceSelection(ADD_SINGLE);
|
|
|
return cm.focus();
|
|
|
case 'add-multiple':
|
|
|
if (selection === '') {
|
|
|
cm.setCursor(cursor.line, cursor.ch);
|
|
|
}
|
|
|
cm.replaceSelection(ADD_MULTI);
|
|
|
return cm.focus();
|
|
|
case 'inster-template-1':
|
|
|
if (selection === '') {
|
|
|
cm.setCursor(cursor.line, cursor.ch);
|
|
|
}
|
|
|
cm.replaceSelection(TEMP1);
|
|
|
return cm.focus();
|
|
|
case 'eraser':
|
|
|
cm.setValue('');
|
|
|
return cm.focus();
|
|
|
case 'trigger-watch':
|
|
|
setPreview(!preview);
|
|
|
return cm.focus();
|
|
|
case 'trigger-full-screen':
|
|
|
setIsFull(!isFull);
|
|
|
return cm.focus();
|
|
|
case LINK:
|
|
|
setAction(LINK);
|
|
|
return;
|
|
|
case CODE_BLOCK:
|
|
|
setAction(CODE_BLOCK);
|
|
|
return;
|
|
|
case UPLOAD_IMAGE:
|
|
|
setAction(UPLOAD_IMAGE);
|
|
|
return;
|
|
|
case DRAW_IMAGE:
|
|
|
setAction(DRAW_IMAGE);
|
|
|
return;
|
|
|
case "maths-latex":
|
|
|
setAction("maths-latex");
|
|
|
return;
|
|
|
case ADD_FLOWCHART:
|
|
|
setAction(ADD_FLOWCHART);
|
|
|
return;
|
|
|
case ADD_TABLE:
|
|
|
setAction(ADD_TABLE);
|
|
|
return;
|
|
|
default:
|
|
|
throw new Error();
|
|
|
}
|
|
|
}, [cm, preview, isFull]);
|
|
|
var ExecutePluginAction = (0,_react_17_0_2_react.useCallback)(function (values, currentFile) {
|
|
|
var _file$name, _file$name$pop, _file$type4, _file$type5, _file$type6;
|
|
|
setAction('');
|
|
|
switch (action) {
|
|
|
case LINK:
|
|
|
var title = values.title,
|
|
|
link = values.link;
|
|
|
cm.replaceSelection("[".concat(title, "](").concat(link, ")"));
|
|
|
return cm.focus();
|
|
|
case CODE_BLOCK:
|
|
|
var language = values.language,
|
|
|
content = values.content;
|
|
|
cm.replaceSelection(['```' + language, content, '```'].join('\n'));
|
|
|
return cm.focus();
|
|
|
case "maths-latex":
|
|
|
var binaryString = atob(values);
|
|
|
var uint8Array = new Uint8Array(binaryString.length);
|
|
|
for (var i = 0; i < binaryString.length; i++) {
|
|
|
uint8Array[i] = binaryString.charCodeAt(i);
|
|
|
}
|
|
|
var files = new Blob([uint8Array], {
|
|
|
type: "image/png"
|
|
|
});
|
|
|
uploadImage(files, function (data) {
|
|
|
if (data.id) {
|
|
|
cm.replaceSelection(".concat(data.content_type, ")"));
|
|
|
} else {
|
|
|
if ((data === null || data === void 0 ? void 0 : data.status) === 401) document.location.href = '/user/login';
|
|
|
}
|
|
|
});
|
|
|
break;
|
|
|
case "inline-latex":
|
|
|
cm.replaceSelection("`$$" + values + "$$`");
|
|
|
break;
|
|
|
case UPLOAD_IMAGE:
|
|
|
case DRAW_IMAGE:
|
|
|
case FLOW_CHART:
|
|
|
var src = values.src,
|
|
|
alt = values.alt;
|
|
|
var file = currentFile;
|
|
|
var fileSix = file === null || file === void 0 || (_file$name = file.name) === null || _file$name === void 0 || (_file$name = _file$name.split(".")) === null || _file$name === void 0 || (_file$name$pop = _file$name.pop) === null || _file$name$pop === void 0 ? void 0 : _file$name$pop.call(_file$name);
|
|
|
if ((file === null || file === void 0 || (_file$type4 = file.type) === null || _file$type4 === void 0 ? void 0 : _file$type4.indexOf("image")) > -1 || !(file !== null && file !== void 0 && file.type)) {
|
|
|
if (alt) {
|
|
|
cm.replaceSelection(".concat(src, " \"").concat(alt, "\" )"));
|
|
|
} else {
|
|
|
cm.replaceSelection(""));
|
|
|
}
|
|
|
} else if ((file === null || file === void 0 || (_file$type5 = file.type) === null || _file$type5 === void 0 ? void 0 : _file$type5.indexOf("video")) > -1) {
|
|
|
cm.replaceSelection("<video width=\"100%\" controls src=\"".concat(env/* default */.Z.API_SERVER).concat(src, "\"></video>"));
|
|
|
} else if ((file === null || file === void 0 || (_file$type6 = file.type) === null || _file$type6 === void 0 ? void 0 : _file$type6.indexOf("pdf")) > -1) {
|
|
|
cm.replaceSelection("<a href=\"".concat(env/* default */.Z.API_SERVER).concat(src, "?type=").concat(file.type, "&disposition=inline\" target=\"_blank\">").concat(file.name, "</a>"));
|
|
|
} else if (officeSix.includes(fileSix)) {
|
|
|
cm.replaceSelection("<a href=\"".concat(env/* default */.Z.API_SERVER).concat(src, "?type=office&disposition=inline\" target=\"_blank\">").concat(file.name, "</a>"));
|
|
|
} else {
|
|
|
cm.replaceSelection("[".concat(file.name, "](").concat(env/* default */.Z.API_SERVER).concat(src, ")"));
|
|
|
}
|
|
|
return cm.focus();
|
|
|
case ADD_TABLE:
|
|
|
var row = values.row,
|
|
|
col = values.col,
|
|
|
align = values.align;
|
|
|
var table = '\n';
|
|
|
for (var r = 0; r < row; r++) {
|
|
|
var rows = [];
|
|
|
var heads = [];
|
|
|
for (var c = 0; c < col; c++) {
|
|
|
if (r === 1) {
|
|
|
heads.push(ALIGNSIGN[align]);
|
|
|
}
|
|
|
rows.push(' ');
|
|
|
}
|
|
|
if (r === 1) {
|
|
|
table += "| ".concat(heads.join(' | '), " |\n");
|
|
|
}
|
|
|
table += "| ".concat(rows.join(col === 1 ? '' : ' | '), " |\n");
|
|
|
}
|
|
|
cm.replaceSelection(table + '\n');
|
|
|
return cm.focus();
|
|
|
default:
|
|
|
throw new Error();
|
|
|
}
|
|
|
}, [cm, action]);
|
|
|
var PluginEl = (0,_react_17_0_2_react.useMemo)(function () {
|
|
|
switch (action) {
|
|
|
case LINK:
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(markdown_editor_link, {
|
|
|
callback: ExecutePluginAction,
|
|
|
onCancel: onCancel
|
|
|
});
|
|
|
case CODE_BLOCK:
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(code_block/* default */.Z, {
|
|
|
callback: ExecutePluginAction,
|
|
|
onCancel: onCancel
|
|
|
});
|
|
|
case UPLOAD_IMAGE:
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(upload_image, {
|
|
|
callback: ExecutePluginAction,
|
|
|
onCancel: onCancel
|
|
|
});
|
|
|
case ADD_FLOWCHART:
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(flow_chart, {
|
|
|
callback: ExecutePluginAction,
|
|
|
onCancel: onCancel
|
|
|
})
|
|
|
// <iframe src='/knowledgegraph/blockEditor.html' style={{width:"80vw",height:"80vh"}} frameBorder={0} />
|
|
|
;
|
|
|
case ADD_TABLE:
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(add_table_panel, {
|
|
|
callback: ExecutePluginAction,
|
|
|
onCancel: onCancel
|
|
|
});
|
|
|
case "maths-latex":
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(MathematicalGraphics, {
|
|
|
showSaveButton: true,
|
|
|
callback: ExecutePluginAction
|
|
|
});
|
|
|
case "inline-latex":
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(keybords/* default */.Z, {
|
|
|
showSaveButton: true,
|
|
|
callback: ExecutePluginAction
|
|
|
});
|
|
|
default:
|
|
|
return null;
|
|
|
}
|
|
|
}, [action]);
|
|
|
function onCancel() {
|
|
|
setAction('');
|
|
|
}
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
if (resizeBarEl.current) {
|
|
|
var onMouseDown = function onMouseDown(e) {
|
|
|
dragging = true;
|
|
|
startY = e.pageY;
|
|
|
};
|
|
|
var onMouseUp = function onMouseUp() {
|
|
|
dragging = false;
|
|
|
};
|
|
|
var onMouseMove = function onMouseMove(e) {
|
|
|
if (dragging) {
|
|
|
var delta = e.pageY - startY;
|
|
|
if (delta < 0) {
|
|
|
delta = 0;
|
|
|
}
|
|
|
if (delta > 300) {
|
|
|
delta = 300;
|
|
|
}
|
|
|
var resizeH = height + delta + 'px';
|
|
|
setH(resizeH);
|
|
|
}
|
|
|
};
|
|
|
var resizeBar = resizeBarEl.current;
|
|
|
var dragging = false;
|
|
|
var startY = 0;
|
|
|
resizeBar.addEventListener('mousedown', onMouseDown);
|
|
|
document.addEventListener('mousemove', onMouseMove);
|
|
|
document.addEventListener('mouseup', onMouseUp);
|
|
|
return function () {
|
|
|
resizeBar.removeEventListener('mousedown', onMouseDown);
|
|
|
document.removeEventListener('mousemove', onMouseMove);
|
|
|
document.removeEventListener('mouseup', onMouseUp);
|
|
|
};
|
|
|
}
|
|
|
}, [cm, resizeBarEl]);
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
setH(height);
|
|
|
}, [height]);
|
|
|
var fixedWidth = processSize(width);
|
|
|
var fixedHeight = processSize(h);
|
|
|
var style = {
|
|
|
width: fixedWidth,
|
|
|
height: fixedHeight
|
|
|
};
|
|
|
var saveTime = (0,_react_17_0_2_react.useMemo)(function () {
|
|
|
if (lastedUpdateTime) {
|
|
|
var d = new Date(lastedUpdateTime);
|
|
|
var _h = d.getHours();
|
|
|
var m = d.getMinutes();
|
|
|
var s = d.getSeconds();
|
|
|
_h = _h < 10 ? '0' + _h : _h;
|
|
|
m = m < 10 ? '0' + m : m;
|
|
|
s = s < 10 ? '0' + s : s;
|
|
|
return "".concat(_h, ":").concat(m, ":").concat(s);
|
|
|
}
|
|
|
return 0;
|
|
|
}, [lastedUpdateTime]);
|
|
|
var formatProgramFill = function formatProgramFill(str) {
|
|
|
var arr = [];
|
|
|
if (showNullProgramButton) {
|
|
|
var num = -1;
|
|
|
str = str.replace(/(@▁▁@|@▁@)/g, function (a, b, c) {
|
|
|
arr.push({
|
|
|
multiLine: !(a === ADD_SINGLE)
|
|
|
});
|
|
|
});
|
|
|
}
|
|
|
return arr;
|
|
|
};
|
|
|
function onCancelStorage() {
|
|
|
window.sessionStorage.removeItem(id);
|
|
|
setTip(false);
|
|
|
setLastedUpdateTime(0);
|
|
|
}
|
|
|
function onReset() {
|
|
|
setTip(false);
|
|
|
setLastedUpdateTime(0);
|
|
|
cm.setValue(window.sessionStorage.getItem(id));
|
|
|
}
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)(_react_17_0_2_react.Fragment, {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: "markdown-editor-wrapper",
|
|
|
ref: containerEl,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: "markdown-editor-container ".concat(className, " ").concat(preview ? 'on-preview' : '', " ").concat(miniToolbar ? 'mini' : '', " ").concat(isFull ? 'full-screen' : ''),
|
|
|
style: style,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(toolbar, {
|
|
|
insertTemp: insertTemp,
|
|
|
watch: preview,
|
|
|
fullScreen: isFull,
|
|
|
showNullButton: showNullButton,
|
|
|
showNullProgramButton: showNullProgramButton,
|
|
|
onActionCallback: onActionCallback,
|
|
|
hidetoolBar: hidetoolBar,
|
|
|
extraUse: extraUse
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: "markdown-editor-body",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: "codemirror-container",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("textarea", {
|
|
|
ref: cmEl,
|
|
|
placeholder: placeholder
|
|
|
})
|
|
|
}), preview ? /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
ref: previewEl,
|
|
|
className: "preview-container",
|
|
|
children: [mode === "stex" && /*#__PURE__*/(0,jsx_runtime.jsx)(RenderHtml_stex, {
|
|
|
value: value
|
|
|
}), mode !== "stex" && /*#__PURE__*/(0,jsx_runtime.jsx)(RenderHtml/* default */.Z, {
|
|
|
disabledFill: disabledFill,
|
|
|
showProgramFill: showNullProgramButton,
|
|
|
value: value
|
|
|
})]
|
|
|
}) : null]
|
|
|
})]
|
|
|
})
|
|
|
}), showResizeBar ? /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
|
|
|
ref: resizeBarEl,
|
|
|
className: "editor-resize"
|
|
|
}) : null, action === DRAW_IMAGE && /*#__PURE__*/(0,jsx_runtime.jsx)(draw_image, {
|
|
|
callback: ExecutePluginAction,
|
|
|
onCancel: onCancel
|
|
|
}), action === ADD_FLOWCHART && /*#__PURE__*/(0,jsx_runtime.jsx)(flow_chart, {
|
|
|
callback: ExecutePluginAction,
|
|
|
onCancel: onCancel
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(modal/* default */.Z, {
|
|
|
children: TitleDesc[action] && action !== DRAW_IMAGE && action !== ADD_FLOWCHART ? /*#__PURE__*/(0,jsx_runtime.jsx)(es_modal/* default */.Z, {
|
|
|
centered: true,
|
|
|
title: TitleDesc[action],
|
|
|
open: true,
|
|
|
onCancel: onCancel,
|
|
|
footer: null,
|
|
|
destroyOnClose: true,
|
|
|
width: action === ADD_FLOWCHART ? "1200px" : null,
|
|
|
height: action === ADD_FLOWCHART ? "80vh" : null,
|
|
|
className: "markdown-popup-form",
|
|
|
children: PluginEl
|
|
|
}) : null
|
|
|
})]
|
|
|
});
|
|
|
});
|
|
|
|
|
|
/***/ }),
|
|
|
|
|
|
/***/ 613:
|
|
|
/*!**********************************!*\
|
|
|
!*** ./src/components/modal.tsx ***!
|
|
|
\**********************************/
|
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
|
/* harmony export */ Z: function() { return /* binding */ Dialog; }
|
|
|
/* harmony export */ });
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_classCallCheck_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/classCallCheck.js */ 82100);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_classCallCheck_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_classCallCheck_js__WEBPACK_IMPORTED_MODULE_0__);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_createClass_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/createClass.js */ 29186);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_createClass_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_createClass_js__WEBPACK_IMPORTED_MODULE_1__);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_inherits_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/inherits.js */ 80619);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_inherits_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_inherits_js__WEBPACK_IMPORTED_MODULE_2__);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_createSuper_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/createSuper.js */ 47074);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_createSuper_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_createSuper_js__WEBPACK_IMPORTED_MODULE_3__);
|
|
|
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! react */ 59301);
|
|
|
/* harmony import */ var react_dom__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! react-dom */ 4676);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var Dialog = /*#__PURE__*/function (_React$Component) {
|
|
|
_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_inherits_js__WEBPACK_IMPORTED_MODULE_2___default()(Dialog, _React$Component);
|
|
|
var _super = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_createSuper_js__WEBPACK_IMPORTED_MODULE_3___default()(Dialog);
|
|
|
function Dialog(props) {
|
|
|
var _this;
|
|
|
_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_classCallCheck_js__WEBPACK_IMPORTED_MODULE_0___default()(this, Dialog);
|
|
|
_this = _super.call(this, props);
|
|
|
var doc = window.document;
|
|
|
_this.node = doc.createElement('div');
|
|
|
doc.body.appendChild(_this.node);
|
|
|
return _this;
|
|
|
}
|
|
|
_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_createClass_js__WEBPACK_IMPORTED_MODULE_1___default()(Dialog, [{
|
|
|
key: "render",
|
|
|
value: function render() {
|
|
|
var children = this.props.children;
|
|
|
return /*#__PURE__*/(0,react_dom__WEBPACK_IMPORTED_MODULE_5__.createPortal)(children, this.node);
|
|
|
}
|
|
|
}, {
|
|
|
key: "componentWillUnmount",
|
|
|
value: function componentWillUnmount() {
|
|
|
window.document.body.removeChild(this.node);
|
|
|
}
|
|
|
}]);
|
|
|
return Dialog;
|
|
|
}(react__WEBPACK_IMPORTED_MODULE_4__.Component);
|
|
|
|
|
|
|
|
|
/***/ }),
|
|
|
|
|
|
/***/ 59587:
|
|
|
/*!****************************************!*\
|
|
|
!*** ./src/components/useInterval.tsx ***!
|
|
|
\****************************************/
|
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
|
/* harmony export */ Z: function() { return /* binding */ useInterval; }
|
|
|
/* harmony export */ });
|
|
|
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ 59301);
|
|
|
|
|
|
function useInterval(callback, delay) {
|
|
|
var savedCallback = (0,react__WEBPACK_IMPORTED_MODULE_0__.useRef)();
|
|
|
|
|
|
// 保存新回调
|
|
|
(0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {
|
|
|
savedCallback.current = callback;
|
|
|
});
|
|
|
|
|
|
// 建立 interval
|
|
|
(0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {
|
|
|
function tick() {
|
|
|
savedCallback.current();
|
|
|
}
|
|
|
if (delay !== null) {
|
|
|
var id = setInterval(tick, delay);
|
|
|
return function () {
|
|
|
return clearInterval(id);
|
|
|
};
|
|
|
}
|
|
|
}, [delay]);
|
|
|
}
|
|
|
|
|
|
/***/ }),
|
|
|
|
|
|
/***/ 46702:
|
|
|
/*!********************************************************************************************************!*\
|
|
|
!*** ./src/pages/Classrooms/Lists/ProgramHomework/Comment/components/ShixunStaticItem.tsx + 1 modules ***!
|
|
|
\********************************************************************************************************/
|
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
|
|
|
// EXPORTS
|
|
|
__webpack_require__.d(__webpack_exports__, {
|
|
|
Z: function() { return /* binding */ ShixunStaticItem; }
|
|
|
});
|
|
|
|
|
|
// UNUSED EXPORTS: ShixunsStaticItem
|
|
|
|
|
|
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/regeneratorRuntime.js
|
|
|
var regeneratorRuntime = __webpack_require__(7557);
|
|
|
var regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(regeneratorRuntime);
|
|
|
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/asyncToGenerator.js
|
|
|
var asyncToGenerator = __webpack_require__(41498);
|
|
|
var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator);
|
|
|
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/slicedToArray.js
|
|
|
var slicedToArray = __webpack_require__(79800);
|
|
|
var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);
|
|
|
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectSpread2.js
|
|
|
var objectSpread2 = __webpack_require__(82242);
|
|
|
var objectSpread2_default = /*#__PURE__*/__webpack_require__.n(objectSpread2);
|
|
|
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
|
|
|
var _react_17_0_2_react = __webpack_require__(59301);
|
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/radio/index.js + 5 modules
|
|
|
var es_radio = __webpack_require__(5112);
|
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
|
|
|
var es_button = __webpack_require__(3113);
|
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/message/index.js + 4 modules
|
|
|
var message = __webpack_require__(8591);
|
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/modal/index.js + 16 modules
|
|
|
var modal = __webpack_require__(43418);
|
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/input-number/index.js + 14 modules
|
|
|
var input_number = __webpack_require__(96971);
|
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/row/index.js
|
|
|
var row = __webpack_require__(95237);
|
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/col/index.js
|
|
|
var col = __webpack_require__(43604);
|
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/divider/index.js + 1 modules
|
|
|
var divider = __webpack_require__(28103);
|
|
|
// EXTERNAL MODULE: ./src/components/monaco-editor/index.jsx + 4 modules
|
|
|
var monaco_editor = __webpack_require__(32598);
|
|
|
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/Comment/components/ShixunStaticItem.less?modules
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
/* harmony default export */ var ShixunStaticItemmodules = ({"flex_box_center":"flex_box_center___eijRq","flex_space_between":"flex_space_between___R4Vev","flex_box_vertical_center":"flex_box_vertical_center___j8R6g","flex_box_center_end":"flex_box_center_end___eB0cz","flex_box_column":"flex_box_column___b9VdU","md":"md___tcpb2","title":"title___dVHM9"});
|
|
|
// EXTERNAL MODULE: ./src/utils/authority.ts
|
|
|
var authority = __webpack_require__(71912);
|
|
|
// EXTERNAL MODULE: ./node_modules/_js-base64@2.6.4@js-base64/base64.js
|
|
|
var base64 = __webpack_require__(24334);
|
|
|
// EXTERNAL MODULE: ./src/utils/fetch.ts
|
|
|
var fetch = __webpack_require__(14735);
|
|
|
// EXTERNAL MODULE: ./src/.umi-production/exports.ts + 15 modules
|
|
|
var _umi_production_exports = __webpack_require__(8931);
|
|
|
// EXTERNAL MODULE: ./src/components/RenderHtml/index.tsx
|
|
|
var RenderHtml = __webpack_require__(52961);
|
|
|
// EXTERNAL MODULE: ./src/service/shixunHomeworks.ts
|
|
|
var shixunHomeworks = __webpack_require__(84633);
|
|
|
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.3.1@@ant-design/icons/es/icons/ExclamationCircleOutlined.js + 1 modules
|
|
|
var ExclamationCircleOutlined = __webpack_require__(6246);
|
|
|
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.3.1@@ant-design/icons/es/icons/DeleteOutlined.js + 1 modules
|
|
|
var DeleteOutlined = __webpack_require__(8897);
|
|
|
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/jsx-runtime.js
|
|
|
var jsx_runtime = __webpack_require__(37712);
|
|
|
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/Comment/components/ShixunStaticItem.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var options = {
|
|
|
selectOnLineNumbers: true,
|
|
|
readOnly: true,
|
|
|
minimap: {
|
|
|
enabled: false
|
|
|
},
|
|
|
scrollBeyondLastLine: false,
|
|
|
enableSplitViewResizing: false,
|
|
|
roundedSelection: false,
|
|
|
renderIndicators: false,
|
|
|
useShadows: false
|
|
|
};
|
|
|
var Types = /*#__PURE__*/function (Types) {
|
|
|
Types[Types["SET_PATH"] = 0] = "SET_PATH";
|
|
|
Types[Types["GET_PASSED_CONTENT"] = 1] = "GET_PASSED_CONTENT";
|
|
|
return Types;
|
|
|
}(Types || {});
|
|
|
function reducer(state, action) {
|
|
|
switch (action.type) {
|
|
|
case Types.SET_PATH:
|
|
|
return _objectSpread(_objectSpread({}, state), {}, {
|
|
|
selectedPath: action.payload
|
|
|
});
|
|
|
case Types.GET_PASSED_CONTENT:
|
|
|
return _objectSpread(_objectSpread({}, state), {}, {
|
|
|
passedContent: action.payload
|
|
|
});
|
|
|
default:
|
|
|
throw new Error();
|
|
|
}
|
|
|
}
|
|
|
var ShixunsStaticItem = function ShixunsStaticItem(_ref) {
|
|
|
var language = _ref.language,
|
|
|
dispatch = _ref.dispatch,
|
|
|
shixunWorkReport = _ref.shixunWorkReport,
|
|
|
v = _ref.v,
|
|
|
languages = _ref.languages,
|
|
|
classroomList = _ref.classroomList,
|
|
|
autoHeight = _ref.autoHeight,
|
|
|
diff_code_count = _ref.diff_code_count,
|
|
|
data = _ref.data;
|
|
|
// const paths = path.split(';').filter(item => !!item)
|
|
|
// const [state, dispatch] = useReducer(reducer, { selectedPath: '123', passedContent: { language: 'python', content: '' } })
|
|
|
// const { selectedPath, passedContent } = state
|
|
|
var _useState = (0,_react_17_0_2_react.useState)(languages === null || languages === void 0 ? void 0 : languages[0]),
|
|
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
|
item = _useState2[0],
|
|
|
setitem = _useState2[1];
|
|
|
var params = (0,_umi_production_exports.useParams)();
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
setitem(languages === null || languages === void 0 ? void 0 : languages[0]);
|
|
|
}, []);
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
var _languages$filter;
|
|
|
// console.log('----',item);
|
|
|
setitem(languages === null || languages === void 0 || (_languages$filter = languages.filter(function (items) {
|
|
|
return items.language === (item === null || item === void 0 ? void 0 : item.language);
|
|
|
})) === null || _languages$filter === void 0 ? void 0 : _languages$filter[0]);
|
|
|
}, [languages]);
|
|
|
|
|
|
// function onChange(value: string) {
|
|
|
// dispatch({
|
|
|
// type: Types.SET_PATH,
|
|
|
// payload: value
|
|
|
// })
|
|
|
// }
|
|
|
|
|
|
// useEffect(() => {
|
|
|
// console.log("path:",path,data)
|
|
|
// async function init() {
|
|
|
// const response = await onPathChange(game_id, selectedPath)
|
|
|
// dispatch({
|
|
|
// type: Types.GET_PASSED_CONTENT,
|
|
|
// payload: response
|
|
|
// })
|
|
|
// }
|
|
|
// // init()
|
|
|
// }, [selectedPath, game_id])
|
|
|
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("h2", {
|
|
|
children: [" ", /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
children: [v.is_finish ? /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
children: ["\u6700\u540E\u901A\u5173\u4EE3\u7801", /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "ml5 font12 c-grey-999",
|
|
|
children: "\u901A\u8FC7\u4E86\u672C\u9898\uFF0C\u5728\u4F5C\u4E1A\u65F6\u95F4\u5185\u6700\u540E\u4E00\u6B21\u63D0\u4EA4\u7684\u901A\u5173\u4EE3\u7801"
|
|
|
})]
|
|
|
}) : /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
children: ["\u6700\u65B0\u4EE3\u7801", /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "ml5 font12 c-grey-999",
|
|
|
children: "\u672A\u901A\u8FC7\u672C\u9898\uFF0C\u5C55\u793A\u6700\u65B0\u7F16\u5199\u7684\u4EE3\u7801\u8BE6\u60C5"
|
|
|
})]
|
|
|
}), (languages === null || languages === void 0 ? void 0 : languages.length) > 1 && /*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default.Group */.ZP.Group, {
|
|
|
defaultValue: language,
|
|
|
style: {
|
|
|
marginLeft: 10
|
|
|
},
|
|
|
onChange: function onChange(e) {
|
|
|
var _languages$filter2;
|
|
|
// console.log(languages,languages?.filter((item:any)=>item.language===e.target.value)?.[0]);
|
|
|
v.language = e.target.value;
|
|
|
setitem(languages === null || languages === void 0 || (_languages$filter2 = languages.filter(function (item) {
|
|
|
return item.language === e.target.value;
|
|
|
})) === null || _languages$filter2 === void 0 ? void 0 : _languages$filter2[0]);
|
|
|
},
|
|
|
children: languages === null || languages === void 0 ? void 0 : languages.map(function (item) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
|
|
|
value: item === null || item === void 0 ? void 0 : item.language,
|
|
|
children: item === null || item === void 0 ? void 0 : item.language
|
|
|
});
|
|
|
})
|
|
|
})]
|
|
|
}), (0,authority/* isAdmin */.GJ)() && shixunWorkReport != 'shixunWorkReport' && /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
children: ["\u5F97\u5206 ", item === null || item === void 0 ? void 0 : item.score, "/", item === null || item === void 0 ? void 0 : item.total_score]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
|
style: {
|
|
|
margin: '0px 10px'
|
|
|
},
|
|
|
onClick: function onClick() {
|
|
|
var _classroomList$Assist;
|
|
|
if (!((_classroomList$Assist = classroomList.AssistantObject) !== null && _classroomList$Assist !== void 0 && (_classroomList$Assist = _classroomList$Assist.hack) !== null && _classroomList$Assist !== void 0 && _classroomList$Assist.can_appraise) && (0,authority/* isAssistant */.Rm)()) {
|
|
|
message/* default */.ZP.warning('您未获取此权限,需向管理员申请权限才能使用此功能');
|
|
|
return;
|
|
|
}
|
|
|
var scores = item === null || item === void 0 ? void 0 : item.score;
|
|
|
modal/* default */.Z.confirm({
|
|
|
title: '调分',
|
|
|
content: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
|
|
|
children: ["\u5F97\u5206\uFF1A", item === null || item === void 0 ? void 0 : item.score, "/", item === null || item === void 0 ? void 0 : item.total_score]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
|
|
|
children: ["\u8C03\u5206\uFF1A", /*#__PURE__*/(0,jsx_runtime.jsx)(input_number/* default */.Z, {
|
|
|
min: 0,
|
|
|
max: item === null || item === void 0 ? void 0 : item.total_score,
|
|
|
defaultValue: item === null || item === void 0 ? void 0 : item.score,
|
|
|
onChange: function onChange(e) {
|
|
|
scores = e;
|
|
|
}
|
|
|
})]
|
|
|
})]
|
|
|
}),
|
|
|
okText: '确认',
|
|
|
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,fetch/* default */.ZP)("/api/courses/".concat(params === null || params === void 0 ? void 0 : params.coursesId, "/homework_commons/update_hack_score"), {
|
|
|
method: 'put',
|
|
|
body: {
|
|
|
course_id: params === null || params === void 0 ? void 0 : params.coursesId,
|
|
|
hack_user_code_id: item === null || item === void 0 ? void 0 : item.hack_user_id,
|
|
|
score: scores
|
|
|
}
|
|
|
});
|
|
|
case 2:
|
|
|
res = _context.sent;
|
|
|
if (res.status === 0) {
|
|
|
message/* default */.ZP.success('调分成功');
|
|
|
dispatch({
|
|
|
type: 'shixunHomeworks/setActionTabs',
|
|
|
payload: {}
|
|
|
});
|
|
|
dispatch({
|
|
|
type: 'shixunHomeworks/getShixunWorkReports',
|
|
|
payload: objectSpread2_default()({}, params)
|
|
|
});
|
|
|
// console.log('----',languages,item);
|
|
|
|
|
|
// setitem(languages?.filter((items:any)=>items.language===item?.language)?.[0])
|
|
|
}
|
|
|
case 4:
|
|
|
case "end":
|
|
|
return _context.stop();
|
|
|
}
|
|
|
}, _callee);
|
|
|
}));
|
|
|
function onOk() {
|
|
|
return _onOk.apply(this, arguments);
|
|
|
}
|
|
|
return onOk;
|
|
|
}(),
|
|
|
cancelText: '取消'
|
|
|
});
|
|
|
},
|
|
|
type: "primary",
|
|
|
children: "\u8C03\u5206"
|
|
|
}), (0,authority/* isAdmin */.GJ)() && shixunWorkReport != 'shixunWorkReport' && /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
|
onClick: function onClick() {
|
|
|
var _classroomList$Assist2;
|
|
|
if (!((_classroomList$Assist2 = classroomList.AssistantObject.hack) !== null && _classroomList$Assist2 !== void 0 && _classroomList$Assist2.can_appraise) && (0,authority/* isAssistant */.Rm)()) {
|
|
|
message/* default */.ZP.warning('您未获取此权限,需向管理员申请权限才能使用此功能');
|
|
|
return;
|
|
|
}
|
|
|
dispatch({
|
|
|
type: 'shixunHomeworks/setActionTabs',
|
|
|
payload: {
|
|
|
key: "更改点评",
|
|
|
selectArrs: {
|
|
|
myshixun_identifier: shixunWorkReport.user_id,
|
|
|
type: '1',
|
|
|
language: item === null || item === void 0 ? void 0 : item.language,
|
|
|
v: v,
|
|
|
data: objectSpread2_default()({}, shixunWorkReport)
|
|
|
}
|
|
|
}
|
|
|
});
|
|
|
},
|
|
|
children: "\u70B9\u8BC4\u4EE3\u7801"
|
|
|
})]
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(monaco_editor/* default */.ZP, {
|
|
|
height: 300,
|
|
|
language: item === null || item === void 0 ? void 0 : item.language,
|
|
|
value: base64.Base64.decode(item === null || item === void 0 ? void 0 : item.code),
|
|
|
autoHeight: autoHeight,
|
|
|
theme: "default",
|
|
|
options: options
|
|
|
}), ((item === null || item === void 0 ? void 0 : item.comment) || (item === null || item === void 0 ? void 0 : item.hidden_comment)) && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
align: "middle",
|
|
|
style: {
|
|
|
borderTop: '1px solid #eee'
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
flex: 1,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("h1", {
|
|
|
className: ShixunStaticItemmodules.title,
|
|
|
children: "\u70B9\u8BC4\u5185\u5BB9"
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
className: "pr30",
|
|
|
children: (0,authority/* isAdmin */.GJ)() && /*#__PURE__*/(0,jsx_runtime.jsxs)(es_button/* default */.ZP, {
|
|
|
onClick: /*#__PURE__*/asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee3() {
|
|
|
return regeneratorRuntime_default()().wrap(function _callee3$(_context3) {
|
|
|
while (1) switch (_context3.prev = _context3.next) {
|
|
|
case 0:
|
|
|
modal/* default */.Z.confirm({
|
|
|
centered: true,
|
|
|
okText: '确定',
|
|
|
cancelText: '取消',
|
|
|
title: '提示',
|
|
|
icon: /*#__PURE__*/(0,jsx_runtime.jsx)(ExclamationCircleOutlined/* default */.Z, {}),
|
|
|
content: '是否确认删除?',
|
|
|
onOk: function onOk() {
|
|
|
return 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,shixunHomeworks/* deleteStudentWorkScoreCommit */.gZ)({
|
|
|
comment_id: item === null || item === void 0 ? void 0 : item.comment_id,
|
|
|
homeworkId: params.homeworkId,
|
|
|
type: 'hack'
|
|
|
});
|
|
|
case 2:
|
|
|
res = _context2.sent;
|
|
|
if (res.status === 0) {
|
|
|
message/* default */.ZP.success("删除成功");
|
|
|
dispatch({
|
|
|
type: 'shixunHomeworks/getShixunWorkReports',
|
|
|
payload: objectSpread2_default()({}, params)
|
|
|
});
|
|
|
}
|
|
|
case 4:
|
|
|
case "end":
|
|
|
return _context2.stop();
|
|
|
}
|
|
|
}, _callee2);
|
|
|
}))();
|
|
|
}
|
|
|
});
|
|
|
case 1:
|
|
|
case "end":
|
|
|
return _context3.stop();
|
|
|
}
|
|
|
}, _callee3);
|
|
|
})),
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(DeleteOutlined/* default */.Z, {}), "\u5220\u9664"]
|
|
|
})
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(divider/* default */.Z, {
|
|
|
style: {
|
|
|
margin: 0
|
|
|
}
|
|
|
}), (item === null || item === void 0 ? void 0 : item.comment) && /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
|
|
|
className: "pl30 pr30 mt20",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "c-light-black font12",
|
|
|
children: "# \u5B66\u751F\u548C\u8BFE\u5802\u8001\u5E08\u53EF\u89C1"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("br", {}), /*#__PURE__*/(0,jsx_runtime.jsx)(RenderHtml/* default */.Z, {
|
|
|
value: item === null || item === void 0 ? void 0 : item.comment
|
|
|
})]
|
|
|
}), (item === null || item === void 0 ? void 0 : item.hidden_comment) && /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
|
|
|
className: "pl30 pr30 mt20",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "c-light-black font12",
|
|
|
children: "# \u4EC5\u8BFE\u5802\u8001\u5E08\u53EF\u89C1"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("br", {}), /*#__PURE__*/(0,jsx_runtime.jsx)(RenderHtml/* default */.Z, {
|
|
|
value: item === null || item === void 0 ? void 0 : item.hidden_comment
|
|
|
})]
|
|
|
})]
|
|
|
})]
|
|
|
});
|
|
|
};
|
|
|
/* harmony default export */ var ShixunStaticItem = (ShixunsStaticItem);
|
|
|
|
|
|
/***/ }),
|
|
|
|
|
|
/***/ 67333:
|
|
|
/*!***************************************************************************************************!*\
|
|
|
!*** ./src/pages/Classrooms/Lists/ProgramHomework/Detail/components/WorkList/components/Redo.tsx ***!
|
|
|
\***************************************************************************************************/
|
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/regeneratorRuntime.js */ 7557);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0__);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectSpread2.js */ 82242);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_1__);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/asyncToGenerator.js */ 41498);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2__);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectWithoutProperties_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectWithoutProperties.js */ 39647);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectWithoutProperties_js__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectWithoutProperties_js__WEBPACK_IMPORTED_MODULE_3__);
|
|
|
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! react */ 59301);
|
|
|
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! antd */ 43418);
|
|
|
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! antd */ 8591);
|
|
|
/* harmony import */ var _utils_fetch__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! @/utils/fetch */ 14735);
|
|
|
/* harmony import */ var umi__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! umi */ 8931);
|
|
|
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! react/jsx-runtime */ 37712);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var _excluded = ["shixunHomeworks", "dispatch"];
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var DelShixun = function DelShixun(_ref) {
|
|
|
var shixunHomeworks = _ref.shixunHomeworks,
|
|
|
dispatch = _ref.dispatch,
|
|
|
props = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectWithoutProperties_js__WEBPACK_IMPORTED_MODULE_3___default()(_ref, _excluded);
|
|
|
var params = (0,umi__WEBPACK_IMPORTED_MODULE_6__.useParams)();
|
|
|
return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_7__.jsxs)(antd__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Z, {
|
|
|
centered: true,
|
|
|
title: "\u63D0\u793A",
|
|
|
open: shixunHomeworks.actionTabs.key === '打回重做' ? true : false,
|
|
|
okText: "\u786E\u5B9A",
|
|
|
cancelText: "\u53D6\u6D88",
|
|
|
onOk: /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee() {
|
|
|
var res;
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_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_5__/* ["default"] */ .ZP)("/api/myshixuns/".concat(shixunHomeworks.actionTabs.selectArrs.myshixun_identifier, "/reset_my_game.json"), {
|
|
|
method: 'GET',
|
|
|
params: {
|
|
|
course_id: params.coursesId
|
|
|
}
|
|
|
});
|
|
|
case 2:
|
|
|
res = _context.sent;
|
|
|
if (res.shixun_identifier) {
|
|
|
antd__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .ZP.success('操作成功');
|
|
|
dispatch({
|
|
|
type: 'shixunHomeworks/setActionTabs',
|
|
|
payload: {}
|
|
|
});
|
|
|
dispatch({
|
|
|
type: 'shixunHomeworks/getWorkList',
|
|
|
payload: _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_1___default()({}, shixunHomeworks.actionTabs.params)
|
|
|
});
|
|
|
}
|
|
|
case 4:
|
|
|
case "end":
|
|
|
return _context.stop();
|
|
|
}
|
|
|
}, _callee);
|
|
|
})),
|
|
|
onCancel: function onCancel() {
|
|
|
dispatch({
|
|
|
type: 'shixunHomeworks/setActionTabs',
|
|
|
payload: {}
|
|
|
});
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_7__.jsx)("p", {
|
|
|
children: "\u8BE5\u4F5C\u4E1A\u5C06\u88AB\u6253\u56DE\u91CD\u505A\uFF0C\u5B66\u751F\u5B9E\u8BAD\u8BB0\u5F55\u5C06\u88AB\u6E05\u7A7A!"
|
|
|
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_7__.jsx)("p", {
|
|
|
children: "\u786E\u5B9A\u6253\u56DE?"
|
|
|
})]
|
|
|
});
|
|
|
};
|
|
|
/* harmony default export */ __webpack_exports__.Z = ((0,umi__WEBPACK_IMPORTED_MODULE_6__.connect)(function (_ref3) {
|
|
|
var shixunHomeworks = _ref3.shixunHomeworks;
|
|
|
return {
|
|
|
shixunHomeworks: shixunHomeworks
|
|
|
};
|
|
|
})(DelShixun));
|
|
|
|
|
|
/***/ }),
|
|
|
|
|
|
/***/ 84493:
|
|
|
/*!**********************************************************************************!*\
|
|
|
!*** ./src/pages/Classrooms/Lists/ProgramHomework/Detail/index.tsx + 17 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 */ Detail; }
|
|
|
});
|
|
|
|
|
|
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectSpread2.js
|
|
|
var objectSpread2 = __webpack_require__(82242);
|
|
|
var objectSpread2_default = /*#__PURE__*/__webpack_require__.n(objectSpread2);
|
|
|
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/regeneratorRuntime.js
|
|
|
var regeneratorRuntime = __webpack_require__(7557);
|
|
|
var regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(regeneratorRuntime);
|
|
|
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/asyncToGenerator.js
|
|
|
var asyncToGenerator = __webpack_require__(41498);
|
|
|
var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator);
|
|
|
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/slicedToArray.js
|
|
|
var slicedToArray = __webpack_require__(79800);
|
|
|
var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);
|
|
|
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
|
|
|
var _react_17_0_2_react = __webpack_require__(59301);
|
|
|
// EXTERNAL MODULE: ./src/utils/fetch.ts
|
|
|
var fetch = __webpack_require__(14735);
|
|
|
// EXTERNAL MODULE: ./src/.umi-production/exports.ts + 15 modules
|
|
|
var _umi_production_exports = __webpack_require__(8931);
|
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/message/index.js + 4 modules
|
|
|
var message = __webpack_require__(8591);
|
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/modal/index.js + 16 modules
|
|
|
var modal = __webpack_require__(43418);
|
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
|
|
|
var es_button = __webpack_require__(3113);
|
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/breadcrumb/index.js + 6 modules
|
|
|
var breadcrumb = __webpack_require__(66104);
|
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/tooltip/index.js + 3 modules
|
|
|
var tooltip = __webpack_require__(6848);
|
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/tabs/index.js + 24 modules
|
|
|
var tabs = __webpack_require__(99313);
|
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/table/index.js + 85 modules
|
|
|
var table = __webpack_require__(86383);
|
|
|
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.3.1@@ant-design/icons/es/icons/ArrowLeftOutlined.js + 1 modules
|
|
|
var ArrowLeftOutlined = __webpack_require__(17312);
|
|
|
// EXTERNAL MODULE: ./src/utils/util.tsx
|
|
|
var util = __webpack_require__(63834);
|
|
|
// EXTERNAL MODULE: ./src/components/RenderHtml/index.tsx
|
|
|
var RenderHtml = __webpack_require__(52961);
|
|
|
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/jsx-runtime.js
|
|
|
var jsx_runtime = __webpack_require__(37712);
|
|
|
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/Detail/components/WorkDescription/components/DelComponents.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var DelShixun = function DelShixun(_ref) {
|
|
|
var shixunHomeworks = _ref.shixunHomeworks,
|
|
|
dispatch = _ref.dispatch;
|
|
|
var params = (0,_umi_production_exports.useParams)();
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(modal/* default */.Z, {
|
|
|
centered: true,
|
|
|
title: "\u63D0\u793A",
|
|
|
open: shixunHomeworks.actionTabs.key === '删除' ? true : false,
|
|
|
okText: "\u786E\u5B9A",
|
|
|
cancelText: "\u53D6\u6D88",
|
|
|
onOk: /*#__PURE__*/asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
|
|
|
var res;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
|
|
|
while (1) switch (_context.prev = _context.next) {
|
|
|
case 0:
|
|
|
_context.next = 2;
|
|
|
return dispatch({
|
|
|
type: 'shixunHomeworks/deleteReply',
|
|
|
payload: {
|
|
|
object_id: shixunHomeworks.actionTabs.selectArr.id,
|
|
|
object_type: "journals_for_message"
|
|
|
}
|
|
|
});
|
|
|
case 2:
|
|
|
res = _context.sent;
|
|
|
if (res.status === 0) {
|
|
|
message/* default */.ZP.success('删除成功');
|
|
|
dispatch({
|
|
|
type: 'shixunHomeworks/setActionTabs',
|
|
|
payload: {}
|
|
|
});
|
|
|
dispatch({
|
|
|
type: 'shixunHomeworks/getReplyList',
|
|
|
payload: objectSpread2_default()({}, shixunHomeworks.actionTabs.params)
|
|
|
});
|
|
|
}
|
|
|
case 4:
|
|
|
case "end":
|
|
|
return _context.stop();
|
|
|
}
|
|
|
}, _callee);
|
|
|
})),
|
|
|
onCancel: function onCancel() {
|
|
|
dispatch({
|
|
|
type: 'shixunHomeworks/setActionTabs',
|
|
|
payload: {}
|
|
|
});
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
|
|
|
children: "\u786E\u5B9A\u8981\u5220\u9664\u8BE5\u6761\u56DE\u590D\u5417\uFF1F"
|
|
|
})
|
|
|
});
|
|
|
};
|
|
|
/* harmony default export */ var DelComponents = ((0,_umi_production_exports.connect)(function (_ref3) {
|
|
|
var shixunHomeworks = _ref3.shixunHomeworks;
|
|
|
return {
|
|
|
shixunHomeworks: shixunHomeworks
|
|
|
};
|
|
|
})(DelShixun));
|
|
|
// EXTERNAL MODULE: ./node_modules/_dayjs@1.11.10@dayjs/dayjs.min.js
|
|
|
var dayjs_min = __webpack_require__(9498);
|
|
|
var dayjs_min_default = /*#__PURE__*/__webpack_require__.n(dayjs_min);
|
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/spin/index.js + 1 modules
|
|
|
var spin = __webpack_require__(71418);
|
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/pagination/index.js + 10 modules
|
|
|
var pagination = __webpack_require__(36697);
|
|
|
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/Detail/components/WorkDescription/index.less?modules
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
/* harmony default export */ var WorkDescriptionmodules = ({"flex_box_center":"flex_box_center___zN9Rd","flex_space_between":"flex_space_between___OHt3Z","flex_box_vertical_center":"flex_box_vertical_center___xzO8Q","flex_box_center_end":"flex_box_center_end___LuRwh","flex_box_column":"flex_box_column___rEgTS","top":"top___vNhKr","desc":"desc___IlwMy","liked":"liked___gFxXM","likedActive":"likedActive___bEcK_","reply":"reply___q4nj7","replyList":"replyList___qxCAX","comment":"comment___gIcRF"});
|
|
|
// EXTERNAL MODULE: ./src/utils/authority.ts
|
|
|
var authority = __webpack_require__(71912);
|
|
|
// EXTERNAL MODULE: ./src/components/NoData/index.tsx
|
|
|
var NoData = __webpack_require__(77068);
|
|
|
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/Detail/components/WorkDescription/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
dayjs_min_default().locale("ZH-cn");
|
|
|
|
|
|
|
|
|
|
|
|
var difficult = ['', '简单', '中等', '困难'];
|
|
|
var ShixunsListPage = function ShixunsListPage(_ref) {
|
|
|
var _showReply$data;
|
|
|
var shixunHomeworks = _ref.shixunHomeworks,
|
|
|
classroomList = _ref.classroomList,
|
|
|
globalSetting = _ref.globalSetting,
|
|
|
user = _ref.user,
|
|
|
loading = _ref.loading,
|
|
|
dispatch = _ref.dispatch;
|
|
|
var _useState = (0,_react_17_0_2_react.useState)(objectSpread2_default()(objectSpread2_default()({}, (0,_umi_production_exports.useParams)()), {}, {
|
|
|
per_page: 10
|
|
|
})),
|
|
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
|
params = _useState2[0],
|
|
|
setParams = _useState2[1];
|
|
|
var _useState3 = (0,_react_17_0_2_react.useState)([]),
|
|
|
_useState4 = slicedToArray_default()(_useState3, 2),
|
|
|
showReply = _useState4[0],
|
|
|
setShowReply = _useState4[1];
|
|
|
var _useState5 = (0,_react_17_0_2_react.useState)(-1),
|
|
|
_useState6 = slicedToArray_default()(_useState5, 2),
|
|
|
showItemReply = _useState6[0],
|
|
|
setShowItemReply = _useState6[1];
|
|
|
var _useState7 = (0,_react_17_0_2_react.useState)(''),
|
|
|
_useState8 = slicedToArray_default()(_useState7, 2),
|
|
|
value = _useState8[0],
|
|
|
setValue = _useState8[1];
|
|
|
var _useState9 = (0,_react_17_0_2_react.useState)(''),
|
|
|
_useState10 = slicedToArray_default()(_useState9, 2),
|
|
|
towValue = _useState10[0],
|
|
|
setTowValue = _useState10[1];
|
|
|
var detailLeftMenus = classroomList.detailLeftMenus;
|
|
|
var location = (0,_umi_production_exports.useLocation)();
|
|
|
var _useState11 = (0,_react_17_0_2_react.useState)({}),
|
|
|
_useState12 = slicedToArray_default()(_useState11, 2),
|
|
|
replyList = _useState12[0],
|
|
|
setReplyList = _useState12[1];
|
|
|
var workDetail = shixunHomeworks.workDetail,
|
|
|
workList = shixunHomeworks.workList;
|
|
|
var _useState13 = (0,_react_17_0_2_react.useState)('1'),
|
|
|
_useState14 = slicedToArray_default()(_useState13, 2),
|
|
|
activeKey = _useState14[0],
|
|
|
setactivekey = _useState14[1];
|
|
|
var _useState15 = (0,_react_17_0_2_react.useState)(false),
|
|
|
_useState16 = slicedToArray_default()(_useState15, 2),
|
|
|
isloading = _useState16[0],
|
|
|
setisloading = _useState16[1];
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
if (workList.homework_status) {
|
|
|
getdatas();
|
|
|
}
|
|
|
}, [workList]);
|
|
|
function getdatas() {
|
|
|
return _getdatas.apply(this, arguments);
|
|
|
}
|
|
|
function _getdatas() {
|
|
|
_getdatas = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee3() {
|
|
|
var _res$data;
|
|
|
var res;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee3$(_context3) {
|
|
|
while (1) switch (_context3.prev = _context3.next) {
|
|
|
case 0:
|
|
|
setisloading(true);
|
|
|
_context3.next = 3;
|
|
|
return (0,fetch/* default */.ZP)("/api/courses/".concat(params.coursesId, "/homework_commons/edit_hack_homework.json"), {
|
|
|
method: 'get',
|
|
|
params: objectSpread2_default()(objectSpread2_default()({}, params), {}, {
|
|
|
id: params.categoryId
|
|
|
})
|
|
|
});
|
|
|
case 3:
|
|
|
res = _context3.sent;
|
|
|
setShowReply(res);
|
|
|
setisloading(false);
|
|
|
params.defaultExpandedRowKeys = ["".concat(res === null || res === void 0 || (_res$data = res.data) === null || _res$data === void 0 || (_res$data = _res$data[0]) === null || _res$data === void 0 ? void 0 : _res$data.identifier)];
|
|
|
if (activeKey != '2') {
|
|
|
setactivekey(res !== null && res !== void 0 && res.description ? '1' : '2');
|
|
|
}
|
|
|
setParams(objectSpread2_default()({}, params));
|
|
|
case 9:
|
|
|
case "end":
|
|
|
return _context3.stop();
|
|
|
}
|
|
|
}, _callee3);
|
|
|
}));
|
|
|
return _getdatas.apply(this, arguments);
|
|
|
}
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("section", {
|
|
|
className: WorkDescriptionmodules.bg,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(spin/* default */.Z, {
|
|
|
spinning: isloading,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(tabs/* default */.Z, {
|
|
|
onChange: function onChange(e) {
|
|
|
setactivekey(e);
|
|
|
},
|
|
|
activeKey: activeKey,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(tabs/* default */.Z.TabPane, {
|
|
|
tab: "\u8BF4\u660E",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("section", {
|
|
|
className: " edu-container",
|
|
|
style: {
|
|
|
padding: '20px 20px',
|
|
|
background: '#fff'
|
|
|
},
|
|
|
children: [!(showReply !== null && showReply !== void 0 && showReply.description) && /*#__PURE__*/(0,jsx_runtime.jsx)(NoData/* default */.Z, {
|
|
|
customText: '暂无说明'
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(RenderHtml/* default */.Z, {
|
|
|
value: (showReply === null || showReply === void 0 ? void 0 : showReply.description) || ''
|
|
|
})]
|
|
|
})
|
|
|
}, 1), /*#__PURE__*/(0,jsx_runtime.jsx)(tabs/* default */.Z.TabPane, {
|
|
|
tab: "\u9898\u76EE\u5217\u8868",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("section", {
|
|
|
className: " edu-container",
|
|
|
style: {
|
|
|
padding: '20px 20px',
|
|
|
background: '#fff'
|
|
|
},
|
|
|
children: params.defaultExpandedRowKeys && /*#__PURE__*/(0,jsx_runtime.jsx)(table/* default */.Z, {
|
|
|
dataSource: showReply === null || showReply === void 0 ? void 0 : showReply.data,
|
|
|
rowKey: function rowKey(r) {
|
|
|
return r === null || r === void 0 ? void 0 : r.identifier;
|
|
|
},
|
|
|
pagination: false,
|
|
|
expandable: {
|
|
|
expandedRowRender: function expandedRowRender(record) {
|
|
|
var _showReply$homework_s, _showReply$homework_s2;
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
style: {
|
|
|
padding: '10px 48px',
|
|
|
borderRadius: 2
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
|
|
|
children: ["\u9898\u76EE\uFF1A", record === null || record === void 0 ? void 0 : record.name]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
|
|
|
children: ["\u63CF\u8FF0\uFF1A", record === null || record === void 0 ? void 0 : record.description]
|
|
|
}), !(0,authority/* isStudent */.dE)() && /*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
|
|
|
children: ["\u9898\u76EE\u89E3\u6790:", /*#__PURE__*/(0,jsx_runtime.jsx)(RenderHtml/* default */.Z, {
|
|
|
style: {
|
|
|
fontSize: "14px"
|
|
|
},
|
|
|
value: (record === null || record === void 0 ? void 0 : record.analysis) || "暂无解析"
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
style: {
|
|
|
width: '100%',
|
|
|
textAlign: 'end'
|
|
|
},
|
|
|
children: [(0,authority/* isAdmin */.GJ)() && (showReply === null || showReply === void 0 || (_showReply$homework_s = showReply.homework_status) === null || _showReply$homework_s === void 0 ? void 0 : _showReply$homework_s.includes('未发布')) && /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
|
type: "primary",
|
|
|
ghost: true,
|
|
|
onClick: function onClick() {
|
|
|
window.open("/problems/".concat(record === null || record === void 0 ? void 0 : record.identifier, "/edit?type=1"));
|
|
|
localStorage.setItem('program_homework', [params.coursesId, params.categoryId]);
|
|
|
// history.push(`/problems/${record?.identifier}/edit`)
|
|
|
},
|
|
|
children: "\u7F16\u8F91"
|
|
|
}), (0,authority/* isAdmin */.GJ)() && (showReply === null || showReply === void 0 || (_showReply$homework_s2 = showReply.homework_status) === null || _showReply$homework_s2 === void 0 ? void 0 : _showReply$homework_s2.includes('未发布')) && /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
|
type: "primary",
|
|
|
style: {
|
|
|
marginLeft: 20
|
|
|
},
|
|
|
ghost: true,
|
|
|
onClick: function onClick() {
|
|
|
modal/* default */.Z.confirm({
|
|
|
title: "提示",
|
|
|
content: '是否确认删除',
|
|
|
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,fetch/* default */.ZP)("/api/problems/".concat(record === null || record === void 0 ? void 0 : record.identifier, ".json"), {
|
|
|
method: 'delete'
|
|
|
});
|
|
|
case 2:
|
|
|
res = _context.sent;
|
|
|
if ((res === null || res === void 0 ? void 0 : res.status) === 0) {
|
|
|
message/* default */.ZP.info('删除成功');
|
|
|
params['page'] = 1;
|
|
|
getdatas();
|
|
|
}
|
|
|
case 4:
|
|
|
case "end":
|
|
|
return _context.stop();
|
|
|
}
|
|
|
}, _callee);
|
|
|
}));
|
|
|
function onOk() {
|
|
|
return _onOk.apply(this, arguments);
|
|
|
}
|
|
|
return onOk;
|
|
|
}()
|
|
|
});
|
|
|
},
|
|
|
children: "\u5220\u9664"
|
|
|
})]
|
|
|
})]
|
|
|
});
|
|
|
},
|
|
|
defaultExpandedRowKeys: params.defaultExpandedRowKeys
|
|
|
},
|
|
|
columns: [{
|
|
|
title: '题目',
|
|
|
dataIndex: 'name',
|
|
|
ellipsis: true,
|
|
|
width: '20%',
|
|
|
key: 'name'
|
|
|
}, {
|
|
|
title: '难度',
|
|
|
dataIndex: 'difficult',
|
|
|
key: 'difficult',
|
|
|
render: function render(value, record, index) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
children: difficult[value]
|
|
|
});
|
|
|
}
|
|
|
}, {
|
|
|
title: '通过率',
|
|
|
dataIndex: 'pass_rate',
|
|
|
key: 'pass_rate'
|
|
|
}, {
|
|
|
title: '通过人数',
|
|
|
dataIndex: 'submit_info',
|
|
|
key: 'submit_info'
|
|
|
}, {
|
|
|
title: '知识点',
|
|
|
dataIndex: 'tag_discipline',
|
|
|
ellipsis: true,
|
|
|
width: '10%',
|
|
|
key: 'tag_discipline'
|
|
|
}, {
|
|
|
title: '操作',
|
|
|
dataIndex: 'identifier',
|
|
|
key: 'identifier',
|
|
|
render: function render(value, record, index) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("a", {
|
|
|
onClick: function onClick() {
|
|
|
var _classroomList$Assist;
|
|
|
if ((0,authority/* isAssistant */.Rm)() && !((_classroomList$Assist = classroomList.AssistantObject.hack) !== null && _classroomList$Assist !== void 0 && _classroomList$Assist.can_question_eaderboard)) {
|
|
|
message/* default */.ZP.warning('您未获取此权限,需向管理员申请权限才能使用此功能');
|
|
|
return;
|
|
|
}
|
|
|
window.open("/classrooms/".concat(params.coursesId, "/program_homework/").concat(params.categoryId, "/").concat(value, "/ranking"));
|
|
|
},
|
|
|
children: "\u6392\u884C"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
|
|
|
onClick: /*#__PURE__*/asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2() {
|
|
|
var res;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
|
|
|
while (1) switch (_context2.prev = _context2.next) {
|
|
|
case 0:
|
|
|
_context2.next = 2;
|
|
|
return (0,fetch/* default */.ZP)("/api/problems/".concat(record === null || record === void 0 ? void 0 : record.identifier, "/start.json"), {
|
|
|
method: 'get'
|
|
|
});
|
|
|
case 2:
|
|
|
res = _context2.sent;
|
|
|
if (res) {
|
|
|
window.open("/myproblems/".concat(res === null || res === void 0 ? void 0 : res.identifier, "?type=1"));
|
|
|
localStorage.setItem('program_homework', [params.coursesId, params.categoryId]);
|
|
|
}
|
|
|
case 4:
|
|
|
case "end":
|
|
|
return _context2.stop();
|
|
|
}
|
|
|
}, _callee2);
|
|
|
})),
|
|
|
style: {
|
|
|
margin: '0px 20px'
|
|
|
},
|
|
|
children: (0,authority/* isAdmin */.GJ)() ? '体验' : '进入答题'
|
|
|
})]
|
|
|
});
|
|
|
}
|
|
|
}]
|
|
|
})
|
|
|
}), console.log('---', ["".concat(showReply === null || showReply === void 0 || (_showReply$data = showReply.data) === null || _showReply$data === void 0 || (_showReply$data = _showReply$data[0]) === null || _showReply$data === void 0 ? void 0 : _showReply$data.identifier)]), /*#__PURE__*/(0,jsx_runtime.jsx)("aside", {
|
|
|
className: "tc mt30 pb30",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(pagination/* default */.Z, {
|
|
|
defaultCurrent: 1,
|
|
|
total: showReply === null || showReply === void 0 ? void 0 : showReply.count,
|
|
|
hideOnSinglePage: true,
|
|
|
showTotal: function showTotal(t) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
children: ["\u5171", t, "\u6761"]
|
|
|
});
|
|
|
},
|
|
|
current: params.page || 1,
|
|
|
pageSize: params.per_page || 10,
|
|
|
onChange: function onChange(page, per_page) {
|
|
|
params['page'] = page;
|
|
|
params['per_page'] = per_page;
|
|
|
setParams(objectSpread2_default()({}, params));
|
|
|
getdatas();
|
|
|
}
|
|
|
})
|
|
|
})]
|
|
|
})
|
|
|
}, 2)]
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(DelComponents, {})]
|
|
|
});
|
|
|
};
|
|
|
/* harmony default export */ var WorkDescription = ((0,_umi_production_exports.connect)(function (_ref3) {
|
|
|
var shixunHomeworks = _ref3.shixunHomeworks,
|
|
|
classroomList = _ref3.classroomList,
|
|
|
loading = _ref3.loading,
|
|
|
user = _ref3.user,
|
|
|
globalSetting = _ref3.globalSetting;
|
|
|
return {
|
|
|
shixunHomeworks: shixunHomeworks,
|
|
|
globalSetting: globalSetting,
|
|
|
classroomList: classroomList,
|
|
|
user: user,
|
|
|
loading: loading.effects
|
|
|
};
|
|
|
})(ShixunsListPage));
|
|
|
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/toConsumableArray.js
|
|
|
var toConsumableArray = __webpack_require__(37205);
|
|
|
var toConsumableArray_default = /*#__PURE__*/__webpack_require__.n(toConsumableArray);
|
|
|
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/defineProperty.js
|
|
|
var defineProperty = __webpack_require__(85573);
|
|
|
var defineProperty_default = /*#__PURE__*/__webpack_require__.n(defineProperty);
|
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/form/index.js + 19 modules
|
|
|
var es_form = __webpack_require__(78241);
|
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/menu/index.js + 11 modules
|
|
|
var menu = __webpack_require__(20834);
|
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/checkbox/index.js + 3 modules
|
|
|
var es_checkbox = __webpack_require__(24905);
|
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/row/index.js
|
|
|
var row = __webpack_require__(95237);
|
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/col/index.js
|
|
|
var col = __webpack_require__(43604);
|
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/input/index.js + 5 modules
|
|
|
var input = __webpack_require__(20008);
|
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/dropdown/index.js + 1 modules
|
|
|
var dropdown = __webpack_require__(38854);
|
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/radio/index.js + 5 modules
|
|
|
var es_radio = __webpack_require__(5112);
|
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/input-number/index.js + 14 modules
|
|
|
var input_number = __webpack_require__(96971);
|
|
|
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.3.1@@ant-design/icons/es/icons/DownOutlined.js + 1 modules
|
|
|
var DownOutlined = __webpack_require__(77800);
|
|
|
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.3.1@@ant-design/icons/es/icons/UpOutlined.js + 1 modules
|
|
|
var UpOutlined = __webpack_require__(23420);
|
|
|
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.3.1@@ant-design/icons/es/icons/DeliveredProcedureOutlined.js + 1 modules
|
|
|
var DeliveredProcedureOutlined = __webpack_require__(340);
|
|
|
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.3.1@@ant-design/icons/es/icons/CaretDownOutlined.js + 1 modules
|
|
|
var CaretDownOutlined = __webpack_require__(63810);
|
|
|
// EXTERNAL MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/Detail/components/WorkList/components/Redo.tsx
|
|
|
var Redo = __webpack_require__(67333);
|
|
|
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectWithoutProperties.js
|
|
|
var objectWithoutProperties = __webpack_require__(39647);
|
|
|
var objectWithoutProperties_default = /*#__PURE__*/__webpack_require__.n(objectWithoutProperties);
|
|
|
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.3.1@@ant-design/icons/es/icons/ExclamationCircleFilled.js + 1 modules
|
|
|
var ExclamationCircleFilled = __webpack_require__(31034);
|
|
|
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/Detail/components/WorkList/components/QuickComment.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var _excluded = ["shixunHomeworks", "dispatch"];
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var QuickComment_DelShixun = function DelShixun(_ref) {
|
|
|
var shixunHomeworks = _ref.shixunHomeworks,
|
|
|
dispatch = _ref.dispatch,
|
|
|
props = objectWithoutProperties_default()(_ref, _excluded);
|
|
|
var params = (0,_umi_production_exports.useParams)();
|
|
|
var _useState = (0,_react_17_0_2_react.useState)(true),
|
|
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
|
coverAll = _useState2[0],
|
|
|
setCoverAll = _useState2[1];
|
|
|
var _useState3 = (0,_react_17_0_2_react.useState)(false),
|
|
|
_useState4 = slicedToArray_default()(_useState3, 2),
|
|
|
showRequired = _useState4[0],
|
|
|
setShowRequired = _useState4[1];
|
|
|
var _Form$useForm = es_form/* default */.Z.useForm(),
|
|
|
_Form$useForm2 = slicedToArray_default()(_Form$useForm, 1),
|
|
|
form = _Form$useForm2[0];
|
|
|
var quickCommit = /*#__PURE__*/function () {
|
|
|
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
|
|
|
var formValue, res;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
|
|
|
while (1) switch (_context.prev = _context.next) {
|
|
|
case 0:
|
|
|
formValue = form.getFieldValue();
|
|
|
_context.next = 3;
|
|
|
return (0,fetch/* default */.ZP)("/api/homework_commons/".concat(params.categoryId, "/batch_comment.json"), {
|
|
|
method: 'post',
|
|
|
body: {
|
|
|
student_work_ids: toConsumableArray_default()(shixunHomeworks.actionTabs.selectArrs),
|
|
|
cover_all: coverAll,
|
|
|
hidden_comment: formValue.hidden_comment,
|
|
|
comment: formValue.comment
|
|
|
}
|
|
|
});
|
|
|
case 3:
|
|
|
res = _context.sent;
|
|
|
if (res.status === 0) {
|
|
|
message/* default */.ZP.success('评阅成功');
|
|
|
form.resetFields();
|
|
|
dispatch({
|
|
|
type: 'shixunHomeworks/setActionTabs',
|
|
|
payload: {}
|
|
|
});
|
|
|
dispatch({
|
|
|
type: 'shixunHomeworks/getWorkList',
|
|
|
payload: objectSpread2_default()({}, shixunHomeworks.actionTabs.params)
|
|
|
});
|
|
|
}
|
|
|
case 5:
|
|
|
case "end":
|
|
|
return _context.stop();
|
|
|
}
|
|
|
}, _callee);
|
|
|
}));
|
|
|
return function quickCommit() {
|
|
|
return _ref2.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(modal/* default */.Z, {
|
|
|
centered: true,
|
|
|
title: "\u4E00\u952E\u70B9\u8BC4",
|
|
|
open: shixunHomeworks.actionTabs.key === '一键点评' ? true : false,
|
|
|
okText: "\u786E\u5B9A",
|
|
|
cancelText: "\u53D6\u6D88",
|
|
|
onOk: /*#__PURE__*/asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2() {
|
|
|
var formValue;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
|
|
|
while (1) switch (_context2.prev = _context2.next) {
|
|
|
case 0:
|
|
|
formValue = form.getFieldValue();
|
|
|
if (JSON.stringify(formValue) === '{}' || formValue.hidden_comment === '' && formValue.comment === '') {
|
|
|
setShowRequired(true);
|
|
|
} else {
|
|
|
if (shixunHomeworks.workList.partial_comment) {
|
|
|
dispatch({
|
|
|
type: 'shixunHomeworks/setActionTabs',
|
|
|
payload: {
|
|
|
key: '一键点评确认',
|
|
|
selectArrs: shixunHomeworks.actionTabs.selectArrs,
|
|
|
params: shixunHomeworks.actionTabs.params
|
|
|
}
|
|
|
});
|
|
|
} else {
|
|
|
quickCommit();
|
|
|
}
|
|
|
}
|
|
|
case 2:
|
|
|
case "end":
|
|
|
return _context2.stop();
|
|
|
}
|
|
|
}, _callee2);
|
|
|
})),
|
|
|
onCancel: function onCancel() {
|
|
|
dispatch({
|
|
|
type: 'shixunHomeworks/setActionTabs',
|
|
|
payload: {}
|
|
|
});
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(es_form/* default */.Z, {
|
|
|
form: form,
|
|
|
onChange: function onChange() {
|
|
|
if (showRequired) setShowRequired(false);
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("p", {
|
|
|
children: "\u5B66\u751F\u548C\u8BFE\u5802\u8001\u5E08\u53EF\u89C1"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
|
|
|
name: "comment",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z.TextArea, {
|
|
|
placeholder: "\u8BF7\u8F93\u5165\u8BC4\u9605\u5185\u5BB9",
|
|
|
rows: 8
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
|
|
|
children: "\u4EC5\u8BFE\u5802\u8001\u5E08\u53EF\u89C1"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
|
|
|
name: "hidden_comment",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z.TextArea, {
|
|
|
placeholder: "\u8BF7\u8F93\u5165\u8BC4\u9605\u5185\u5BB9",
|
|
|
rows: 8
|
|
|
})
|
|
|
})]
|
|
|
}), showRequired && /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
|
|
|
className: "c-red",
|
|
|
children: "\u8BC4\u9605\u5185\u5BB9\u81F3\u5C11\u6709\u4E00\u4E2A\u4E0D\u4E3A\u7A7A"
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(modal/* default */.Z, {
|
|
|
centered: true,
|
|
|
title: /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(ExclamationCircleFilled/* default */.Z, {
|
|
|
className: "c-orange mr20"
|
|
|
}), "\u63D0\u793A"]
|
|
|
}),
|
|
|
open: shixunHomeworks.actionTabs.key === '一键点评确认' ? true : false,
|
|
|
okText: "\u786E\u5B9A\u70B9\u8BC4",
|
|
|
cancelText: "\u653E\u5F03\u70B9\u8BC4",
|
|
|
onOk: function onOk() {
|
|
|
quickCommit();
|
|
|
},
|
|
|
onCancel: function onCancel() {
|
|
|
dispatch({
|
|
|
type: 'shixunHomeworks/setActionTabs',
|
|
|
payload: {}
|
|
|
});
|
|
|
},
|
|
|
width: 400,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: "tc",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("p", {
|
|
|
children: "\u90E8\u5206\u5B66\u751F\u5DF2\u6709\u70B9\u8BC4\u5185\u5BB9\uFF0C\u662F\u5426\u8986\u76D6\u5DF2\u6709\u70B9\u8BC4\u5185\u5BB9\uFF1F"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(es_radio/* default.Group */.ZP.Group, {
|
|
|
onChange: function onChange(v) {
|
|
|
setCoverAll(v.target.value);
|
|
|
},
|
|
|
value: coverAll,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
|
|
|
value: true,
|
|
|
children: "\u8986\u76D6\u5DF2\u6709\u70B9\u8BC4"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
|
|
|
value: false,
|
|
|
children: "\u8DF3\u8FC7\u5DF2\u6709\u70B9\u8BC4"
|
|
|
})]
|
|
|
})
|
|
|
})]
|
|
|
})
|
|
|
})]
|
|
|
});
|
|
|
};
|
|
|
/* harmony default export */ var QuickComment = ((0,_umi_production_exports.connect)(function (_ref4) {
|
|
|
var shixunHomeworks = _ref4.shixunHomeworks;
|
|
|
return {
|
|
|
shixunHomeworks: shixunHomeworks
|
|
|
};
|
|
|
})(QuickComment_DelShixun));
|
|
|
// EXTERNAL MODULE: ./src/service/shixunHomeworks.ts
|
|
|
var service_shixunHomeworks = __webpack_require__(84633);
|
|
|
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/Detail/components/WorkList/index.less?modules
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
/* harmony default export */ var WorkListmodules = ({"wrap":"wrap___altfw","maxWidth70":"maxWidth70___Q4NoO","maxWidth80":"maxWidth80___lwsmt","maxWidth100":"maxWidth100___Wnsw8","maxWidth110":"maxWidth110___zQh0P","maxWidth120":"maxWidth120___gjwfa","reviewStatusTooltip":"reviewStatusTooltip___um7Rt","color32C":"color32C___GIjgW","MdEditor":"MdEditor___OuyKH","tr1":"tr1___nwwbX"});
|
|
|
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/Detail/components/WorkList/components/ChangeCommit.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var ChangeCommit_excluded = ["shixunHomeworks", "dispatch"];
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var ChangeCommit_DelShixun = function DelShixun(_ref) {
|
|
|
var _shixunHomeworks$acti, _shixunHomeworks$acti6;
|
|
|
var shixunHomeworks = _ref.shixunHomeworks,
|
|
|
dispatch = _ref.dispatch,
|
|
|
props = objectWithoutProperties_default()(_ref, ChangeCommit_excluded);
|
|
|
var params = (0,_umi_production_exports.useParams)();
|
|
|
var _useState = (0,_react_17_0_2_react.useState)(false),
|
|
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
|
showRequired = _useState2[0],
|
|
|
setShowRequired = _useState2[1];
|
|
|
var _useState3 = (0,_react_17_0_2_react.useState)((_shixunHomeworks$acti = shixunHomeworks.actionTabs.selectArrs) === null || _shixunHomeworks$acti === void 0 || (_shixunHomeworks$acti = _shixunHomeworks$acti.data) === null || _shixunHomeworks$acti === void 0 ? void 0 : _shixunHomeworks$acti.name),
|
|
|
_useState4 = slicedToArray_default()(_useState3, 2),
|
|
|
username = _useState4[0],
|
|
|
setusername = _useState4[1];
|
|
|
var _Form$useForm = es_form/* default */.Z.useForm(),
|
|
|
_Form$useForm2 = slicedToArray_default()(_Form$useForm, 1),
|
|
|
form = _Form$useForm2[0];
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
var _shixunHomeworks$acti2, _shixunHomeworks$acti3, _shixunHomeworks$acti4;
|
|
|
if (shixunHomeworks.actionTabs.key === '更改点评') form.setFieldsValue({
|
|
|
comment: (_shixunHomeworks$acti2 = shixunHomeworks.actionTabs.selectArrs) === null || _shixunHomeworks$acti2 === void 0 || (_shixunHomeworks$acti2 = _shixunHomeworks$acti2.data) === null || _shixunHomeworks$acti2 === void 0 ? void 0 : _shixunHomeworks$acti2.work_comment,
|
|
|
hidden_comment: (_shixunHomeworks$acti3 = shixunHomeworks.actionTabs.selectArrs) === null || _shixunHomeworks$acti3 === void 0 || (_shixunHomeworks$acti3 = _shixunHomeworks$acti3.data) === null || _shixunHomeworks$acti3 === void 0 ? void 0 : _shixunHomeworks$acti3.work_comment_hidden
|
|
|
});
|
|
|
setusername((_shixunHomeworks$acti4 = shixunHomeworks.actionTabs.selectArrs) === null || _shixunHomeworks$acti4 === void 0 || (_shixunHomeworks$acti4 = _shixunHomeworks$acti4.data) === null || _shixunHomeworks$acti4 === void 0 ? void 0 : _shixunHomeworks$acti4.name);
|
|
|
}, [shixunHomeworks.actionTabs.key]);
|
|
|
var quickCommit = /*#__PURE__*/function () {
|
|
|
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
|
|
|
var _shixunHomeworks$acti5;
|
|
|
var formValue, res;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
|
|
|
while (1) switch (_context.prev = _context.next) {
|
|
|
case 0:
|
|
|
formValue = form.getFieldValue();
|
|
|
_context.next = 3;
|
|
|
return (0,fetch/* default */.ZP)("/api/student_works/".concat((_shixunHomeworks$acti5 = shixunHomeworks.actionTabs.selectArrs) === null || _shixunHomeworks$acti5 === void 0 || (_shixunHomeworks$acti5 = _shixunHomeworks$acti5.data) === null || _shixunHomeworks$acti5 === void 0 ? void 0 : _shixunHomeworks$acti5.homeworkId, "/shixun_work_comment.json"), {
|
|
|
method: 'post',
|
|
|
body: {
|
|
|
hidden_comment: formValue.hidden_comment,
|
|
|
comment: formValue.comment
|
|
|
}
|
|
|
});
|
|
|
case 3:
|
|
|
res = _context.sent;
|
|
|
if (!(res.status === 0)) {
|
|
|
_context.next = 9;
|
|
|
break;
|
|
|
}
|
|
|
message/* default */.ZP.success('评阅成功');
|
|
|
form.resetFields();
|
|
|
dispatch({
|
|
|
type: 'shixunHomeworks/setActionTabs',
|
|
|
payload: {}
|
|
|
});
|
|
|
return _context.abrupt("return", dispatch({
|
|
|
type: 'shixunHomeworks/getWorkList',
|
|
|
payload: params
|
|
|
}));
|
|
|
case 9:
|
|
|
case "end":
|
|
|
return _context.stop();
|
|
|
}
|
|
|
}, _callee);
|
|
|
}));
|
|
|
return function quickCommit() {
|
|
|
return _ref2.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(jsx_runtime.Fragment, {
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(modal/* default */.Z, {
|
|
|
centered: true,
|
|
|
title: (_shixunHomeworks$acti6 = shixunHomeworks.actionTabs.selectArrs) !== null && _shixunHomeworks$acti6 !== void 0 && (_shixunHomeworks$acti6 = _shixunHomeworks$acti6.data) !== null && _shixunHomeworks$acti6 !== void 0 && _shixunHomeworks$acti6.work_comment_hidden ? '更改' + username + '点评' : username + '点评',
|
|
|
open: shixunHomeworks.actionTabs.key === '更改点评' ? true : false,
|
|
|
okText: "\u786E\u5B9A",
|
|
|
cancelText: "\u53D6\u6D88",
|
|
|
onOk: /*#__PURE__*/asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2() {
|
|
|
var formValue;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
|
|
|
while (1) switch (_context2.prev = _context2.next) {
|
|
|
case 0:
|
|
|
formValue = form.getFieldValue();
|
|
|
if (JSON.stringify(formValue) === '{}' || formValue.hidden_comment === '' && formValue.comment === '') {
|
|
|
setShowRequired(true);
|
|
|
} else {
|
|
|
quickCommit();
|
|
|
}
|
|
|
case 2:
|
|
|
case "end":
|
|
|
return _context2.stop();
|
|
|
}
|
|
|
}, _callee2);
|
|
|
})),
|
|
|
onCancel: function onCancel() {
|
|
|
dispatch({
|
|
|
type: 'shixunHomeworks/setActionTabs',
|
|
|
payload: {}
|
|
|
});
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(es_form/* default */.Z, {
|
|
|
form: form,
|
|
|
onChange: function onChange() {
|
|
|
if (showRequired) setShowRequired(false);
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("p", {
|
|
|
children: "\u5B66\u751F\u548C\u8BFE\u5802\u8001\u5E08\u53EF\u89C1"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
|
|
|
name: "comment",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z.TextArea, {
|
|
|
placeholder: "\u8BF7\u8F93\u5165\u8BC4\u9605\u5185\u5BB9",
|
|
|
rows: 8
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
|
|
|
children: "\u4EC5\u8BFE\u5802\u8001\u5E08\u53EF\u89C1"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
|
|
|
name: "hidden_comment",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z.TextArea, {
|
|
|
placeholder: "\u8BF7\u8F93\u5165\u8BC4\u9605\u5185\u5BB9",
|
|
|
rows: 8
|
|
|
})
|
|
|
})]
|
|
|
}), showRequired && /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
|
|
|
className: "c-red",
|
|
|
children: "\u8BC4\u9605\u5185\u5BB9\u81F3\u5C11\u6709\u4E00\u4E2A\u4E0D\u4E3A\u7A7A"
|
|
|
})]
|
|
|
})
|
|
|
});
|
|
|
};
|
|
|
/* harmony default export */ var ChangeCommit = ((0,_umi_production_exports.connect)(function (_ref4) {
|
|
|
var shixunHomeworks = _ref4.shixunHomeworks;
|
|
|
return {
|
|
|
shixunHomeworks: shixunHomeworks
|
|
|
};
|
|
|
})(ChangeCommit_DelShixun));
|
|
|
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/Detail/components/WorkList/components/QualityModal.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var QualityModal_excluded = ["shixunHomeworks", "dispatch"];
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var QualityModal_DelShixun = function DelShixun(_ref) {
|
|
|
var shixunHomeworks = _ref.shixunHomeworks,
|
|
|
dispatch = _ref.dispatch,
|
|
|
props = objectWithoutProperties_default()(_ref, QualityModal_excluded);
|
|
|
var params = (0,_umi_production_exports.useParams)();
|
|
|
var _useState = (0,_react_17_0_2_react.useState)([]),
|
|
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
|
grouplist = _useState2[0],
|
|
|
setGrouplist = _useState2[1];
|
|
|
var _useState3 = (0,_react_17_0_2_react.useState)([]),
|
|
|
_useState4 = slicedToArray_default()(_useState3, 2),
|
|
|
selectedRowKeys = _useState4[0],
|
|
|
setselectedRowKeys = _useState4[1];
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
if (shixunHomeworks.actionTabs.key === '质量检测') {
|
|
|
getdata();
|
|
|
}
|
|
|
}, [shixunHomeworks.actionTabs.key]);
|
|
|
function getdata() {
|
|
|
return _getdata.apply(this, arguments);
|
|
|
}
|
|
|
function _getdata() {
|
|
|
_getdata = 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,fetch/* default */.ZP)("/api/homework_commons/".concat(params.categoryId, "/code_quality_analyses/group_list.json"), {
|
|
|
method: 'GET',
|
|
|
params: {
|
|
|
page: 1,
|
|
|
limit: 200
|
|
|
}
|
|
|
});
|
|
|
case 2:
|
|
|
res = _context2.sent;
|
|
|
setGrouplist(res);
|
|
|
case 4:
|
|
|
case "end":
|
|
|
return _context2.stop();
|
|
|
}
|
|
|
}, _callee2);
|
|
|
}));
|
|
|
return _getdata.apply(this, arguments);
|
|
|
}
|
|
|
var columns = [{
|
|
|
title: '分班情况',
|
|
|
dataIndex: 'name'
|
|
|
}, {
|
|
|
title: '有效作品数',
|
|
|
dataIndex: 'works_count'
|
|
|
}, {
|
|
|
title: '检测进度',
|
|
|
dataIndex: 'status'
|
|
|
}, {
|
|
|
title: '上次评分时间',
|
|
|
dataIndex: 'last_analysis_time'
|
|
|
}];
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(jsx_runtime.Fragment, {
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(modal/* default */.Z, {
|
|
|
centered: true,
|
|
|
title: "\u4EE3\u7801\u8D28\u91CF\u8BC4\u5206",
|
|
|
open: shixunHomeworks.actionTabs.key === '质量检测' ? true : false,
|
|
|
width: 700,
|
|
|
okText: "\u786E\u5B9A",
|
|
|
cancelText: "\u53D6\u6D88",
|
|
|
onOk: /*#__PURE__*/asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
|
|
|
var res;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
|
|
|
while (1) switch (_context.prev = _context.next) {
|
|
|
case 0:
|
|
|
_context.next = 2;
|
|
|
return (0,fetch/* default */.ZP)("/api/homework_commons/".concat(params.categoryId, "/code_quality_analyses.json"), {
|
|
|
method: 'POST',
|
|
|
body: {
|
|
|
group_ids: selectedRowKeys
|
|
|
}
|
|
|
});
|
|
|
case 2:
|
|
|
res = _context.sent;
|
|
|
if ((res === null || res === void 0 ? void 0 : res.status) === 0) {
|
|
|
_umi_production_exports.history.replace("/classrooms/".concat(params.coursesId, "/shixun_homework/").concat(params.categoryId, "/detail?tabs=4"));
|
|
|
window.location.reload();
|
|
|
dispatch({
|
|
|
type: 'shixunHomeworks/setActionTabs',
|
|
|
payload: {}
|
|
|
});
|
|
|
setselectedRowKeys([]);
|
|
|
}
|
|
|
case 4:
|
|
|
case "end":
|
|
|
return _context.stop();
|
|
|
}
|
|
|
}, _callee);
|
|
|
})),
|
|
|
onCancel: function onCancel() {
|
|
|
setselectedRowKeys([]);
|
|
|
dispatch({
|
|
|
type: 'shixunHomeworks/setActionTabs',
|
|
|
payload: {}
|
|
|
});
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(table/* default */.Z, {
|
|
|
rowSelection: {
|
|
|
type: 'checkbox',
|
|
|
onChange: function onChange(selectedRowKeys, selectedRows) {
|
|
|
setselectedRowKeys(toConsumableArray_default()(selectedRowKeys));
|
|
|
},
|
|
|
selectedRowKeys: selectedRowKeys,
|
|
|
getCheckboxProps: function getCheckboxProps(record) {
|
|
|
return {
|
|
|
disabled: record.status === '进行中' || record.works_count === 0 // Column configuration not to be checked
|
|
|
};
|
|
|
}
|
|
|
},
|
|
|
rowKey: function rowKey(record) {
|
|
|
return record.key || record.id;
|
|
|
},
|
|
|
scroll: {
|
|
|
y: 300
|
|
|
},
|
|
|
pagination: false,
|
|
|
columns: columns,
|
|
|
dataSource: grouplist === null || grouplist === void 0 ? void 0 : grouplist.group_list
|
|
|
})
|
|
|
})
|
|
|
});
|
|
|
};
|
|
|
/* harmony default export */ var QualityModal = ((0,_umi_production_exports.connect)(function (_ref3) {
|
|
|
var shixunHomeworks = _ref3.shixunHomeworks;
|
|
|
return {
|
|
|
shixunHomeworks: shixunHomeworks
|
|
|
};
|
|
|
})(QualityModal_DelShixun));
|
|
|
// EXTERNAL MODULE: ./src/components/markdown-editor/index.tsx + 15 modules
|
|
|
var markdown_editor = __webpack_require__(93521);
|
|
|
// EXTERNAL MODULE: ./src/utils/export.ts
|
|
|
var utils_export = __webpack_require__(28384);
|
|
|
// EXTERNAL MODULE: ./src/utils/verifyLogin.tsx + 2 modules
|
|
|
var verifyLogin = __webpack_require__(78794);
|
|
|
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/Detail/components/WorkList/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var WorkList = function WorkList(_ref) {
|
|
|
var _workList$homework_st, _workList$homework_st2, _workList$task_status, _workList$course_grou, _workList$course_grou2, _workList$teacher_com, _workList$task_status2, _workList$task_status3;
|
|
|
var shixunHomeworks = _ref.shixunHomeworks,
|
|
|
classroomList = _ref.classroomList,
|
|
|
loading = _ref.loading,
|
|
|
dispatch = _ref.dispatch,
|
|
|
setExportParams = _ref.setExportParams,
|
|
|
user = _ref.user;
|
|
|
var urlParmas = (0,_umi_production_exports.useParams)();
|
|
|
var _useState = (0,_react_17_0_2_react.useState)(objectSpread2_default()(objectSpread2_default()({}, {
|
|
|
page: 1,
|
|
|
limit: 20,
|
|
|
order: 'work_score',
|
|
|
b_order: 'desc'
|
|
|
}), urlParmas)),
|
|
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
|
params = _useState2[0],
|
|
|
setParams = _useState2[1];
|
|
|
var _Form$useForm = es_form/* default */.Z.useForm(),
|
|
|
_Form$useForm2 = slicedToArray_default()(_Form$useForm, 1),
|
|
|
form = _Form$useForm2[0];
|
|
|
var _useState3 = (0,_react_17_0_2_react.useState)(),
|
|
|
_useState4 = slicedToArray_default()(_useState3, 2),
|
|
|
canUpdateScore = _useState4[0],
|
|
|
setCanUpdateScore = _useState4[1];
|
|
|
var _useState5 = (0,_react_17_0_2_react.useState)({}),
|
|
|
_useState6 = slicedToArray_default()(_useState5, 2),
|
|
|
workList = _useState6[0],
|
|
|
setWorkList = _useState6[1];
|
|
|
var _useState7 = (0,_react_17_0_2_react.useState)([]),
|
|
|
_useState8 = slicedToArray_default()(_useState7, 2),
|
|
|
studentList = _useState8[0],
|
|
|
setStudentList = _useState8[1];
|
|
|
var _useState9 = (0,_react_17_0_2_react.useState)(false),
|
|
|
_useState10 = slicedToArray_default()(_useState9, 2),
|
|
|
isshwomodal = _useState10[0],
|
|
|
setisshowmodal = _useState10[1];
|
|
|
var _useState11 = (0,_react_17_0_2_react.useState)([]),
|
|
|
_useState12 = slicedToArray_default()(_useState11, 2),
|
|
|
checkvalues = _useState12[0],
|
|
|
setcheckvalues = _useState12[1];
|
|
|
var _useState13 = (0,_react_17_0_2_react.useState)(false),
|
|
|
_useState14 = slicedToArray_default()(_useState13, 2),
|
|
|
isshowmodaltitls = _useState14[0],
|
|
|
setisshowmodaltitls = _useState14[1];
|
|
|
var _useState15 = (0,_react_17_0_2_react.useState)(),
|
|
|
_useState16 = slicedToArray_default()(_useState15, 2),
|
|
|
studentcount = _useState16[0],
|
|
|
setstudentcount = _useState16[1];
|
|
|
var _useState17 = (0,_react_17_0_2_react.useState)(1),
|
|
|
_useState18 = slicedToArray_default()(_useState17, 2),
|
|
|
istype = _useState18[0],
|
|
|
setistype = _useState18[1];
|
|
|
var _useState19 = (0,_react_17_0_2_react.useState)(),
|
|
|
_useState20 = slicedToArray_default()(_useState19, 2),
|
|
|
score = _useState20[0],
|
|
|
setscore = _useState20[1];
|
|
|
var _useState21 = (0,_react_17_0_2_react.useState)(),
|
|
|
_useState22 = slicedToArray_default()(_useState21, 2),
|
|
|
maxscore = _useState22[0],
|
|
|
setmaxscore = _useState22[1];
|
|
|
var _useState23 = (0,_react_17_0_2_react.useState)(),
|
|
|
_useState24 = slicedToArray_default()(_useState23, 2),
|
|
|
minscore = _useState24[0],
|
|
|
setminscore = _useState24[1];
|
|
|
var _useState25 = (0,_react_17_0_2_react.useState)(),
|
|
|
_useState26 = slicedToArray_default()(_useState25, 2),
|
|
|
comment = _useState26[0],
|
|
|
setcomment = _useState26[1];
|
|
|
var _useState27 = (0,_react_17_0_2_react.useState)(),
|
|
|
_useState28 = slicedToArray_default()(_useState27, 2),
|
|
|
open = _useState28[0],
|
|
|
setopen = _useState28[1];
|
|
|
var _useState29 = (0,_react_17_0_2_react.useState)(false),
|
|
|
_useState30 = slicedToArray_default()(_useState29, 2),
|
|
|
showopen = _useState30[0],
|
|
|
setshowopen = _useState30[1];
|
|
|
var location = (0,_umi_production_exports.useLocation)();
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
getData();
|
|
|
return function () {
|
|
|
setWorkList([]);
|
|
|
setStudentList([]);
|
|
|
};
|
|
|
}, [params.coursesId]);
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
var _res$student_works;
|
|
|
var res = JSON.parse(JSON.stringify(shixunHomeworks.workList));
|
|
|
if (!(res !== null && res !== void 0 && (_res$student_works = res.student_works) !== null && _res$student_works !== void 0 && _res$student_works.length) && res !== null && res !== void 0 && res.id) {
|
|
|
res.student_works = [objectSpread2_default()({}, res)];
|
|
|
setWorkList(res);
|
|
|
} else {
|
|
|
if (res !== null && res !== void 0 && res.id) {
|
|
|
setStudentList([objectSpread2_default()(objectSpread2_default()({}, res), {
|
|
|
number: '我'
|
|
|
})]);
|
|
|
}
|
|
|
setWorkList(objectSpread2_default()({}, res));
|
|
|
}
|
|
|
}, [shixunHomeworks.workList]);
|
|
|
var getData = function getData(bool) {
|
|
|
setExportParams(objectSpread2_default()({}, params));
|
|
|
var res = dispatch({
|
|
|
type: 'shixunHomeworks/getWorkList',
|
|
|
payload: params
|
|
|
});
|
|
|
// if (bool) {
|
|
|
// res.then((t: any) => {
|
|
|
// // ["进行中","提交中", "补交中"].includes(t?.homework_status?.[0]
|
|
|
// if (
|
|
|
// (t?.homework_status?.includes('进行中') ||
|
|
|
// t?.homework_status?.includes('补交中') ||
|
|
|
// t?.homework_status?.includes('提交中')) &&
|
|
|
// !isStudent()
|
|
|
// ) {
|
|
|
// handleUpdateScore();
|
|
|
// }
|
|
|
// });
|
|
|
// return res;
|
|
|
// }
|
|
|
return res;
|
|
|
};
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
// getScoreStatusData();
|
|
|
}, []);
|
|
|
var getScoreStatusData = /*#__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 (0,service_shixunHomeworks/* getScoreStatus */.Uc)({
|
|
|
categoryId: urlParmas.categoryId
|
|
|
});
|
|
|
case 2:
|
|
|
res = _context.sent;
|
|
|
setCanUpdateScore(res === null || res === void 0 ? void 0 : res.update_score);
|
|
|
case 4:
|
|
|
case "end":
|
|
|
return _context.stop();
|
|
|
}
|
|
|
}, _callee);
|
|
|
}));
|
|
|
return function getScoreStatusData() {
|
|
|
return _ref2.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var handleUpdateScore = /*#__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:
|
|
|
dispatch({
|
|
|
type: 'globalSetting/setGlobalLoading',
|
|
|
payload: {
|
|
|
show: true,
|
|
|
text: '成绩计算中,请稍候...'
|
|
|
}
|
|
|
});
|
|
|
_context2.next = 3;
|
|
|
return (0,service_shixunHomeworks/* updateScore */.Vs)({
|
|
|
categoryId: urlParmas.categoryId
|
|
|
});
|
|
|
case 3:
|
|
|
res = _context2.sent;
|
|
|
dispatch({
|
|
|
type: 'globalSetting/setGlobalLoading',
|
|
|
payload: {
|
|
|
show: false,
|
|
|
text: ''
|
|
|
}
|
|
|
});
|
|
|
if ((res === null || res === void 0 ? void 0 : res.status) === 0) {
|
|
|
message/* default */.ZP.success(res === null || res === void 0 ? void 0 : res.message);
|
|
|
getData();
|
|
|
}
|
|
|
case 6:
|
|
|
case "end":
|
|
|
return _context2.stop();
|
|
|
}
|
|
|
}, _callee2);
|
|
|
}));
|
|
|
return function handleUpdateScore() {
|
|
|
return _ref3.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var onHandleChange = function onHandleChange() {
|
|
|
params.page = 1;
|
|
|
var formValue = Object.assign({}, form.getFieldsValue());
|
|
|
delete params.course_group;
|
|
|
delete params.teacher_comment;
|
|
|
Object.keys(formValue).map(function (v) {
|
|
|
switch (v) {
|
|
|
case 'task_status':
|
|
|
if (formValue[v].includes('all') || !formValue[v].length) {
|
|
|
delete params.work_status;
|
|
|
form.setFieldsValue(defineProperty_default()({}, 'task_status', 'all'));
|
|
|
} else {
|
|
|
params['work_status'] = formValue[v];
|
|
|
form.setFieldsValue(defineProperty_default()({}, 'task_status', params['work_status']));
|
|
|
}
|
|
|
break;
|
|
|
case 'course_group_info':
|
|
|
if (formValue[v].includes('all') || !formValue[v].length) {
|
|
|
delete params.course_group;
|
|
|
form.setFieldsValue(defineProperty_default()({}, 'course_group_info', 'all'));
|
|
|
} else {
|
|
|
params['course_group'] = formValue[v];
|
|
|
form.setFieldsValue(defineProperty_default()({}, 'course_group_info', params['course_group']));
|
|
|
}
|
|
|
break;
|
|
|
case 'teacher_comment':
|
|
|
if (formValue[v].includes('all') || !formValue[v].length) {
|
|
|
delete params.teacher_comment;
|
|
|
form.setFieldsValue(defineProperty_default()({}, 'teacher_comment', 'all'));
|
|
|
} else {
|
|
|
var _formValue$v;
|
|
|
params['teacher_comment'] = ((_formValue$v = formValue[v]) === null || _formValue$v === void 0 ? void 0 : _formValue$v.length) === 1 ? Number(formValue[v][0]) : '';
|
|
|
form.setFieldsValue(defineProperty_default()({}, 'teacher_comment', formValue[v]));
|
|
|
}
|
|
|
break;
|
|
|
}
|
|
|
});
|
|
|
getData();
|
|
|
};
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
if (document.getElementById('divhe')) {
|
|
|
var height = document.getElementById('divhe').scrollHeight;
|
|
|
if (height > 47) {
|
|
|
setopen(47);
|
|
|
setshowopen(true);
|
|
|
}
|
|
|
}
|
|
|
}, [document.getElementById('divhe')]);
|
|
|
var onShowSizeChange = function onShowSizeChange(current, pageSize) {
|
|
|
params.page = current;
|
|
|
params.limit = 20;
|
|
|
getData();
|
|
|
};
|
|
|
function setnull() {
|
|
|
setistype(1);
|
|
|
setscore('');
|
|
|
setmaxscore('');
|
|
|
setminscore('');
|
|
|
setcomment('');
|
|
|
setcheckvalues([]);
|
|
|
}
|
|
|
var columns = [{
|
|
|
title: '序号',
|
|
|
dataIndex: 'number',
|
|
|
align: 'center',
|
|
|
// width: 50,
|
|
|
fixed: 'left',
|
|
|
ellipsis: {
|
|
|
showTitle: false
|
|
|
},
|
|
|
render: function render(text, record, index) {
|
|
|
return params.limit * (params.page - 1) + index + 1;
|
|
|
}
|
|
|
}, {
|
|
|
title: '姓名',
|
|
|
dataIndex: 'user_name',
|
|
|
align: 'center',
|
|
|
// width: 110,
|
|
|
fixed: 'left',
|
|
|
ellipsis: {
|
|
|
showTitle: false
|
|
|
},
|
|
|
render: function render(text) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
|
|
|
placement: "bottomLeft",
|
|
|
title: text,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "current",
|
|
|
children: text
|
|
|
})
|
|
|
});
|
|
|
}
|
|
|
}, !(workList !== null && workList !== void 0 && workList.is_excellent) && !(0,authority/* isNotMember */.Jd)() && {
|
|
|
title: '学号',
|
|
|
dataIndex: 'student_id',
|
|
|
align: 'center',
|
|
|
sorter: true,
|
|
|
fixed: 'left',
|
|
|
// width: 110,
|
|
|
showSorterTooltip: false,
|
|
|
ellipsis: {
|
|
|
showTitle: false
|
|
|
},
|
|
|
sortOrder: params.order === 'student_id' ? params.b_order === 'desc' ? 'descend' : 'ascend' : null,
|
|
|
render: function render(text) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
|
|
|
placement: "bottomLeft",
|
|
|
title: text || '--',
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "current",
|
|
|
children: text || '--'
|
|
|
})
|
|
|
});
|
|
|
}
|
|
|
}, {
|
|
|
title: '分班',
|
|
|
dataIndex: 'group_name',
|
|
|
align: 'center',
|
|
|
// width: 180,
|
|
|
fixed: 'left',
|
|
|
ellipsis: {
|
|
|
showTitle: false
|
|
|
},
|
|
|
render: function render(text, record) {
|
|
|
return text ? /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
|
|
|
placement: "bottom",
|
|
|
title: text,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "current",
|
|
|
children: text
|
|
|
})
|
|
|
}) : '--';
|
|
|
}
|
|
|
}, {
|
|
|
title: '作业状态',
|
|
|
dataIndex: 'work_status',
|
|
|
align: 'center',
|
|
|
// width: 80,
|
|
|
fixed: 'left',
|
|
|
sorter: true,
|
|
|
ellipsis: {
|
|
|
showTitle: false
|
|
|
},
|
|
|
showSorterTooltip: false,
|
|
|
sortOrder: params.order === 'work_status' ? params.b_order === 'desc' ? 'descend' : 'ascend' : null,
|
|
|
render: function render(text) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(util/* HomeWorkListStatus */.lC, {
|
|
|
status: text
|
|
|
});
|
|
|
}
|
|
|
}, {
|
|
|
title: '完成时间',
|
|
|
align: 'center',
|
|
|
dataIndex: 'achieve_time',
|
|
|
ellipsis: {
|
|
|
showTitle: false
|
|
|
},
|
|
|
render: function render(text, record) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
|
|
|
placement: "bottomLeft",
|
|
|
title: text,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "current",
|
|
|
children: text
|
|
|
})
|
|
|
});
|
|
|
}
|
|
|
}, {
|
|
|
title: '通过情况',
|
|
|
align: 'center',
|
|
|
dataIndex: 'achieve_info',
|
|
|
ellipsis: {
|
|
|
showTitle: false
|
|
|
},
|
|
|
render: function render(text, record) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
children: text || '- -'
|
|
|
});
|
|
|
}
|
|
|
}, {
|
|
|
title: '最终成绩',
|
|
|
align: 'center',
|
|
|
dataIndex: 'score',
|
|
|
ellipsis: {
|
|
|
showTitle: false
|
|
|
},
|
|
|
render: function render(text, record) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
children: text || '- -'
|
|
|
});
|
|
|
}
|
|
|
}, {
|
|
|
title: '完成时长',
|
|
|
dataIndex: 'achieve_time_long',
|
|
|
align: 'center',
|
|
|
render: function render(text, record) {
|
|
|
return text && text != '--' ? /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
|
|
|
placement: "bottom",
|
|
|
title: text,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "current",
|
|
|
children: text
|
|
|
})
|
|
|
}) : '--';
|
|
|
}
|
|
|
}, {
|
|
|
title: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
children: "\u8BC4\u9605\u72B6\u6001"
|
|
|
}),
|
|
|
align: 'center',
|
|
|
dataIndex: 'has_comment',
|
|
|
// width: 90,
|
|
|
fixed: 'right',
|
|
|
ellipsis: true,
|
|
|
render: function render(text) {
|
|
|
return text ? '已评阅' : '未评阅';
|
|
|
}
|
|
|
}, {
|
|
|
title: '操作',
|
|
|
dataInex: 'action',
|
|
|
align: 'center',
|
|
|
// width: 70,
|
|
|
fixed: 'right',
|
|
|
ellipsis: true,
|
|
|
className: 'workListTable',
|
|
|
render: function render(text, record) {
|
|
|
return (0,authority/* isStudent */.dE)() ? /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
children: (0,util/* formatHomeWorkStatusToName */.JL)(record === null || record === void 0 ? void 0 : record.work_status) === '未开启' ? /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
children: "--"
|
|
|
}) : /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
|
|
|
onClick: function onClick(e) {
|
|
|
var _classroomList$Assist;
|
|
|
e.stopPropagation();
|
|
|
if ((0,authority/* isAssistant */.Rm)() && !((_classroomList$Assist = classroomList.AssistantObject.hack) !== null && _classroomList$Assist !== void 0 && _classroomList$Assist.can_view)) {
|
|
|
message/* default */.ZP.warning('您未获取此权限,需向管理员申请权限才能使用此功能');
|
|
|
return;
|
|
|
}
|
|
|
// if (!handleProfessionalCertificationModal()) {
|
|
|
// return
|
|
|
// }
|
|
|
window.open("/classrooms/".concat(params.coursesId, "/program_homework/").concat(params.categoryId, "/").concat(record.id, "/").concat(record.user_id, "/comment"), '_blank');
|
|
|
},
|
|
|
children: "\u67E5\u770B"
|
|
|
})
|
|
|
}) : /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
|
|
|
target: "_blank",
|
|
|
onClick: function onClick(e) {
|
|
|
var _classroomList$Assist2, _user$userInfo;
|
|
|
if ((0,authority/* isAssistant */.Rm)() && !((_classroomList$Assist2 = classroomList.AssistantObject.hack) !== null && _classroomList$Assist2 !== void 0 && _classroomList$Assist2.can_view)) {
|
|
|
message/* default */.ZP.warning('您未获取此权限,需向管理员申请权限才能使用此功能');
|
|
|
return;
|
|
|
}
|
|
|
e.stopPropagation();
|
|
|
if (!((_user$userInfo = user.userInfo) !== null && _user$userInfo !== void 0 && _user$userInfo.professional_certification)) {
|
|
|
modal/* default */.Z.confirm({
|
|
|
title: '提示',
|
|
|
centered: true,
|
|
|
content: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: "tc",
|
|
|
children: "\u60A8\u9700\u8981\u53BB\u5B8C\u6210\u60A8\u7684\u804C\u4E1A\u8BA4\u8BC1\uFF0C\u624D\u80FD\u4F7F\u7528\u6B64\u529F\u80FD"
|
|
|
}),
|
|
|
okText: "\u7ACB\u5373\u5B8C\u5584",
|
|
|
cancelText: '稍后完善',
|
|
|
onOk: function onOk() {
|
|
|
(0,util/* openNewWindow */.xg)('/account/certification');
|
|
|
}
|
|
|
});
|
|
|
return false;
|
|
|
} else {
|
|
|
window.open("/classrooms/".concat(params.coursesId, "/program_homework/").concat(params.categoryId, "/").concat(record.id, "/").concat(record.user_id, "/comment"), '_blank');
|
|
|
}
|
|
|
}
|
|
|
// to={`/tasks/${record?.shixun_detail?.[0]?.game_identifier}`}
|
|
|
,
|
|
|
children: '查看作业'
|
|
|
});
|
|
|
}
|
|
|
}].filter(function (item) {
|
|
|
return !!item;
|
|
|
});
|
|
|
var exportMenu = function exportMenu() {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)(menu/* default */.Z, {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(menu/* default */.Z.Item, {
|
|
|
onClick: function onClick() {
|
|
|
(0,utils_export/* ExportCourseWorkListScores */.Iy)(JSON.parse(sessionStorage['all_student_works_params']), 'shixun_work_list');
|
|
|
},
|
|
|
children: "\u5B66\u751F\u6210\u7EE9"
|
|
|
}, "1"), /*#__PURE__*/(0,jsx_runtime.jsx)(menu/* default */.Z.Item, {
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(_umi_production_exports.Link, {
|
|
|
to: "/classrooms/".concat(params.coursesId, "/exportlist/shixun_work_list"),
|
|
|
children: "\u5386\u53F2\u5BFC\u51FA"
|
|
|
})
|
|
|
}, "2")]
|
|
|
});
|
|
|
};
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("section", {
|
|
|
className: "".concat(WorkListmodules.wrap, " minH500 bg-white pl30 pr30 pt30"),
|
|
|
children: [((_workList$homework_st = workList.homework_status) === null || _workList$homework_st === void 0 ? void 0 : _workList$homework_st.includes('未发布')) && /*#__PURE__*/(0,jsx_runtime.jsx)(NoData/* default */.Z, {}), !((_workList$homework_st2 = workList.homework_status) !== null && _workList$homework_st2 !== void 0 && _workList$homework_st2.includes('未发布')) && /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
|
|
|
children: [!(0,authority/* isAdmin */.GJ)() && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: "c-light-black font12",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
children: ["\u53D1\u5E03\u65F6\u95F4 ", workList === null || workList === void 0 ? void 0 : workList.publish_time]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
className: "ml5",
|
|
|
children: ["\u622A\u6B62\u65F6\u95F4 ", workList === null || workList === void 0 ? void 0 : workList.end_time]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
className: "ml5",
|
|
|
children: ["\u8865\u4EA4\u65F6\u95F4 ", (workList === null || workList === void 0 ? void 0 : workList.late_time) || '- -']
|
|
|
})]
|
|
|
}), (0,authority/* isAdmin */.GJ)() && /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(es_form/* default */.Z, {
|
|
|
form: form,
|
|
|
onChange: onHandleChange,
|
|
|
initialValues: defineProperty_default()(defineProperty_default()(defineProperty_default()({}, 'task_status', 'all'), 'course_group_info', 'all'), 'teacher_comment', 'all'),
|
|
|
children: [((_workList$task_status = workList.task_status) === null || _workList$task_status === void 0 ? void 0 : _workList$task_status.length) > 0 && /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
|
|
|
name: "task_status",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_checkbox/* default */.Z.Group, {
|
|
|
value: [],
|
|
|
style: {
|
|
|
width: '100%'
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
className: "font14",
|
|
|
flex: '80px',
|
|
|
children: "\u4F5C\u4E1A\u72B6\u6001:"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
flex: '80px',
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_checkbox/* default */.Z, {
|
|
|
value: "all",
|
|
|
children: "\u5168\u90E8"
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
flex: '1',
|
|
|
children: workList.task_status && workList.task_status.map(function (v, k) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)(es_checkbox/* default */.Z, {
|
|
|
name: "task_status",
|
|
|
value: v.id,
|
|
|
children: [v.name, "(", v.count, ")"]
|
|
|
});
|
|
|
})
|
|
|
})]
|
|
|
})
|
|
|
})
|
|
|
}), ((_workList$course_grou = workList.course_group_info) === null || _workList$course_grou === void 0 ? void 0 : _workList$course_grou.length) > 0 && /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
|
|
|
name: "course_group_info",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_checkbox/* default */.Z.Group, {
|
|
|
style: {
|
|
|
width: '100%'
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
className: "font14",
|
|
|
flex: '80px',
|
|
|
children: "\u5206\u73ED\u60C5\u51B5:"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
flex: '80px',
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_checkbox/* default */.Z, {
|
|
|
value: "all",
|
|
|
children: "\u5168\u90E8"
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
flex: '1',
|
|
|
id: "divhe",
|
|
|
style: {
|
|
|
height: open + 'px',
|
|
|
overflow: 'hidden'
|
|
|
},
|
|
|
children: (_workList$course_grou2 = workList.course_group_info) === null || _workList$course_grou2 === void 0 ? void 0 : _workList$course_grou2.map(function (v, k) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)(es_checkbox/* default */.Z, {
|
|
|
value: v.course_group_id,
|
|
|
children: [v.group_group_name, "(", v.count, ")"]
|
|
|
});
|
|
|
})
|
|
|
}), showopen && /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
onClick: function onClick() {
|
|
|
var height = document.getElementById('divhe').scrollHeight;
|
|
|
if (open > 47) {
|
|
|
setopen(47);
|
|
|
} else {
|
|
|
setopen(height);
|
|
|
}
|
|
|
},
|
|
|
style: {
|
|
|
color: 'rgb(76, 172, 255)',
|
|
|
cursor: 'pointer',
|
|
|
alignItems: 'flex-end',
|
|
|
display: 'flex'
|
|
|
},
|
|
|
children: [open === 47 ? '展开' : '收起', open === 47 ? /*#__PURE__*/(0,jsx_runtime.jsx)(DownOutlined/* default */.Z, {
|
|
|
style: {
|
|
|
marginBottom: '3px',
|
|
|
marginLeft: '2px'
|
|
|
}
|
|
|
}) : /*#__PURE__*/(0,jsx_runtime.jsx)(UpOutlined/* default */.Z, {
|
|
|
style: {
|
|
|
marginBottom: '3px',
|
|
|
marginLeft: '2px'
|
|
|
}
|
|
|
})]
|
|
|
})]
|
|
|
})
|
|
|
})
|
|
|
}), ((_workList$teacher_com = workList.teacher_comment) === null || _workList$teacher_com === void 0 ? void 0 : _workList$teacher_com.length) > 0 && /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
|
|
|
name: "teacher_comment",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_checkbox/* default */.Z.Group, {
|
|
|
style: {
|
|
|
width: '100%'
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
className: "font14",
|
|
|
flex: "80px",
|
|
|
children: "\u8FFD\u52A0\u70B9\u8BC4:"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
flex: "80px",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_checkbox/* default */.Z, {
|
|
|
value: "all",
|
|
|
children: "\u5168\u90E8"
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
flex: '1',
|
|
|
children: workList.teacher_comment && workList.teacher_comment.map(function (v, k) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)(es_checkbox/* default */.Z, {
|
|
|
value: String(v.id),
|
|
|
children: [v.name, "(", v.count, ")"]
|
|
|
});
|
|
|
})
|
|
|
})]
|
|
|
})
|
|
|
})
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
align: "middle",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
flex: '1',
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
align: "middle",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z.Search, {
|
|
|
allowClear: true,
|
|
|
placeholder: "\u8BF7\u8F93\u5165\u59D3\u540D\u6216\u8005\u5B66\u53F7\u641C\u7D22",
|
|
|
onSearch: function onSearch(value) {
|
|
|
params.search = value.trim();
|
|
|
params.page = 1;
|
|
|
getData();
|
|
|
},
|
|
|
style: {
|
|
|
width: 240
|
|
|
}
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
className: "ml5",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "c-red",
|
|
|
children: workList.work_count
|
|
|
}), "\u4E2A\u68C0\u7D22\u7ED3\u679C\uFF08", workList.work_count, "\u4E2A\u5B66\u751F\uFF09"]
|
|
|
})
|
|
|
})]
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(col/* default */.Z, {
|
|
|
children: [(0,authority/* isAdmin */.GJ)() && /*#__PURE__*/(0,jsx_runtime.jsxs)(es_button/* default */.ZP, {
|
|
|
className: "ml10",
|
|
|
onClick: function onClick() {
|
|
|
dispatch({
|
|
|
type: 'shixunHomeworks/setActionTabs',
|
|
|
payload: {
|
|
|
key: '代码查重',
|
|
|
selectArrs: workList.student_works.map(function (v) {
|
|
|
return v.id;
|
|
|
}),
|
|
|
params: params
|
|
|
}
|
|
|
});
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "".concat(WorkListmodules.tr1, " iconfont icon-daimachazhong")
|
|
|
}), "\u4EE3\u7801\u67E5\u91CD"]
|
|
|
}), (0,authority/* isAdmin */.GJ)() && /*#__PURE__*/(0,jsx_runtime.jsxs)(es_button/* default */.ZP, {
|
|
|
className: "ml10",
|
|
|
onClick: handleUpdateScore,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
|
className: "iconfont icon-gengxinchengji font14 pr5"
|
|
|
}), "\u66F4\u65B0\u6210\u7EE9"]
|
|
|
}), (0,authority/* isAdmin */.GJ)() && /*#__PURE__*/(0,jsx_runtime.jsx)(dropdown/* default */.Z, {
|
|
|
dropdownRender: exportMenu,
|
|
|
className: "ml10",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(es_button/* default */.ZP, {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(DeliveredProcedureOutlined/* default */.Z, {}), "\u5BFC\u51FA", /*#__PURE__*/(0,jsx_runtime.jsx)(CaretDownOutlined/* default */.Z, {})]
|
|
|
})
|
|
|
})]
|
|
|
})]
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(row/* default */.Z, {
|
|
|
style: {
|
|
|
justifyContent: 'end',
|
|
|
marginTop: '5px'
|
|
|
},
|
|
|
children: (0,authority/* isAdmin */.GJ)() && canUpdateScore && /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
style: {
|
|
|
color: 'red'
|
|
|
},
|
|
|
children: "*"
|
|
|
}), "\u5217\u8868\u4E2D\u4F5C\u4E1A\u8BB0\u5F55\u5B58\u5728\u5DEE\u5F02\uFF0C\u8BF7\u70B9\u51FB\u201C\u66F4\u65B0\u6210\u7EE9\u201D\u6309\u94AE"]
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(table/* default */.Z, {
|
|
|
className: "mt30",
|
|
|
loading: loading['shixunHomeworks/getWorkList'],
|
|
|
pagination: false,
|
|
|
style: {
|
|
|
cursor: 'pointer'
|
|
|
},
|
|
|
onRow: function onRow(record) {
|
|
|
return {
|
|
|
onClick: function onClick(e) {
|
|
|
var _classroomList$Assist3;
|
|
|
if ((0,authority/* isAssistant */.Rm)() && !((_classroomList$Assist3 = classroomList.AssistantObject.hack) !== null && _classroomList$Assist3 !== void 0 && _classroomList$Assist3.can_view)) {
|
|
|
message/* default */.ZP.warning('您未获取此权限,需向管理员申请权限才能使用此功能');
|
|
|
return;
|
|
|
}
|
|
|
if (!(0,verifyLogin/* handleProfessionalCertificationModal */.O5)()) {
|
|
|
return;
|
|
|
}
|
|
|
window.open("/classrooms/".concat(params.coursesId, "/program_homework/").concat(params.categoryId, "/").concat(record.id, "/").concat(record.user_id, "/comment"), '_blank');
|
|
|
}
|
|
|
};
|
|
|
},
|
|
|
scroll: {
|
|
|
x: 'max-content'
|
|
|
},
|
|
|
dataSource: workList.student_works,
|
|
|
columns: columns,
|
|
|
onChange: function onChange(a, b, c) {
|
|
|
if (c.field) params.order = c.field;
|
|
|
if (!c.order) params['b_order'] = 'asc';
|
|
|
if (c.order === 'ascend') params['b_order'] = 'asc';
|
|
|
if (c.order === 'descend') params['b_order'] = 'desc';
|
|
|
// if (!c.order) delete params['b_order'];
|
|
|
if (!c.order) params['b_order'] = 'asc';
|
|
|
getData();
|
|
|
}
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(QuickComment, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(ChangeCommit, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(Redo/* default */.Z, {})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(modal/* default */.Z, {
|
|
|
title: "\u4E00\u952E\u6253\u56DE\u91CD\u505A",
|
|
|
open: isshwomodal,
|
|
|
centered: true,
|
|
|
destroyOnClose: true,
|
|
|
forceRender: true,
|
|
|
width: 700,
|
|
|
onOk: /*#__PURE__*/asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee3() {
|
|
|
var res, _res;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee3$(_context3) {
|
|
|
while (1) switch (_context3.prev = _context3.next) {
|
|
|
case 0:
|
|
|
if (!(istype === 2)) {
|
|
|
_context3.next = 13;
|
|
|
break;
|
|
|
}
|
|
|
if (!(checkvalues.length <= 0)) {
|
|
|
_context3.next = 4;
|
|
|
break;
|
|
|
}
|
|
|
message/* default */.ZP.info('请选择作业状态');
|
|
|
return _context3.abrupt("return");
|
|
|
case 4:
|
|
|
if (comment) {
|
|
|
_context3.next = 7;
|
|
|
break;
|
|
|
}
|
|
|
message/* default */.ZP.info('评语不能为空');
|
|
|
return _context3.abrupt("return");
|
|
|
case 7:
|
|
|
_context3.next = 9;
|
|
|
return (0,fetch/* default */.ZP)("/api/homework_commons/".concat(params.categoryId, "/confirm_redo_modal.json"), {
|
|
|
method: 'post',
|
|
|
body: {
|
|
|
id: params.categoryId,
|
|
|
comment: comment,
|
|
|
status: checkvalues
|
|
|
}
|
|
|
});
|
|
|
case 9:
|
|
|
res = _context3.sent;
|
|
|
if (res.status === 0) {
|
|
|
setstudentcount(res);
|
|
|
setisshowmodal(false);
|
|
|
setisshowmodaltitls(true);
|
|
|
}
|
|
|
_context3.next = 32;
|
|
|
break;
|
|
|
case 13:
|
|
|
if (!(minscore === 0 || maxscore === 0)) {
|
|
|
_context3.next = 16;
|
|
|
break;
|
|
|
}
|
|
|
_context3.next = 22;
|
|
|
break;
|
|
|
case 16:
|
|
|
if (minscore) {
|
|
|
_context3.next = 19;
|
|
|
break;
|
|
|
}
|
|
|
message/* default */.ZP.info('最低分不能为空');
|
|
|
return _context3.abrupt("return");
|
|
|
case 19:
|
|
|
if (maxscore) {
|
|
|
_context3.next = 22;
|
|
|
break;
|
|
|
}
|
|
|
message/* default */.ZP.info('最高分不能为空');
|
|
|
return _context3.abrupt("return");
|
|
|
case 22:
|
|
|
if (!(minscore > maxscore)) {
|
|
|
_context3.next = 25;
|
|
|
break;
|
|
|
}
|
|
|
message/* default */.ZP.info('最高分不能大于最低分');
|
|
|
return _context3.abrupt("return");
|
|
|
case 25:
|
|
|
if (comment) {
|
|
|
_context3.next = 28;
|
|
|
break;
|
|
|
}
|
|
|
message/* default */.ZP.info('评语不能为空');
|
|
|
return _context3.abrupt("return");
|
|
|
case 28:
|
|
|
_context3.next = 30;
|
|
|
return (0,fetch/* default */.ZP)("/api/homework_commons/".concat(params.categoryId, "/confirm_redo_modal.json"), {
|
|
|
method: 'post',
|
|
|
body: {
|
|
|
id: params.categoryId,
|
|
|
comment: comment,
|
|
|
min_score: minscore,
|
|
|
max_score: maxscore
|
|
|
}
|
|
|
});
|
|
|
case 30:
|
|
|
_res = _context3.sent;
|
|
|
if (_res.status === 0) {
|
|
|
setstudentcount(_res);
|
|
|
setisshowmodal(false);
|
|
|
setisshowmodaltitls(true);
|
|
|
}
|
|
|
case 32:
|
|
|
case "end":
|
|
|
return _context3.stop();
|
|
|
}
|
|
|
}, _callee3);
|
|
|
})),
|
|
|
onCancel: function onCancel() {
|
|
|
setisshowmodal(false);
|
|
|
setnull();
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
style: {
|
|
|
padding: '32px'
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
style: {
|
|
|
width: '80px'
|
|
|
},
|
|
|
children: "\u6253\u56DE\u65B9\u5F0F\uFF1A"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(es_radio/* default.Group */.ZP.Group, {
|
|
|
value: istype,
|
|
|
onChange: function onChange(e) {
|
|
|
// console.log(e.target.value);
|
|
|
setistype(e.target.value);
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
|
|
|
value: 1,
|
|
|
children: "\u6309\u6210\u7EE9\u6253\u56DE"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
|
|
|
value: 2,
|
|
|
children: "\u6309\u4F5C\u4E1A\u72B6\u6001\u6253\u56DE"
|
|
|
})]
|
|
|
})]
|
|
|
}), istype === 1 && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
style: {
|
|
|
display: 'flex',
|
|
|
marginTop: '20px'
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
style: {
|
|
|
width: '70px',
|
|
|
textAlign: 'end'
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
style: {
|
|
|
color: 'red'
|
|
|
},
|
|
|
children: "*"
|
|
|
}), "\u6700\u4F4E\u5206\uFF1A"]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(input_number/* default */.Z, {
|
|
|
min: 0,
|
|
|
max: 100,
|
|
|
value: minscore,
|
|
|
onChange: function onChange(e) {
|
|
|
return setminscore(e);
|
|
|
},
|
|
|
style: {
|
|
|
width: '100px'
|
|
|
}
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
style: {
|
|
|
width: '80px',
|
|
|
textAlign: 'end'
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
style: {
|
|
|
color: 'red'
|
|
|
},
|
|
|
children: "*"
|
|
|
}), "\u6700\u9AD8\u5206\uFF1A"]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(input_number/* default */.Z, {
|
|
|
min: 0,
|
|
|
max: 100,
|
|
|
value: maxscore,
|
|
|
onChange: function onChange(e) {
|
|
|
return setmaxscore(e);
|
|
|
},
|
|
|
style: {
|
|
|
width: '100px'
|
|
|
}
|
|
|
})]
|
|
|
}), istype === 2 && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
style: {
|
|
|
display: 'flex',
|
|
|
marginTop: '20px'
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
style: {
|
|
|
width: '80px'
|
|
|
},
|
|
|
children: "\u4F5C\u4E1A\u72B6\u6001\uFF1A"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_checkbox/* default */.Z.Group, {
|
|
|
onChange: function onChange(value) {
|
|
|
setcheckvalues(toConsumableArray_default()(value));
|
|
|
},
|
|
|
style: {
|
|
|
width: '100%'
|
|
|
},
|
|
|
children: (_workList$task_status2 = workList.task_status) === null || _workList$task_status2 === void 0 ? void 0 : _workList$task_status2.map(function (v, k) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)(es_checkbox/* default */.Z, {
|
|
|
name: "task_status",
|
|
|
value: v.id,
|
|
|
children: [v.name, "(", v.count, ")"]
|
|
|
});
|
|
|
})
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
style: {
|
|
|
display: 'flex',
|
|
|
marginTop: '20px'
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
style: {
|
|
|
width: '70px',
|
|
|
textAlign: 'end'
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
style: {
|
|
|
color: 'red'
|
|
|
},
|
|
|
children: "*"
|
|
|
}), " \u8BC4\u8BED\uFF1A"]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(markdown_editor/* default */.Z, {
|
|
|
className: WorkListmodules.MdEditor,
|
|
|
onChange: function onChange(e) {
|
|
|
return setcomment(e);
|
|
|
},
|
|
|
placeholder: "\u8BF7\u586B\u5199\u8BC4\u8BED"
|
|
|
})]
|
|
|
})]
|
|
|
})
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(modal/* default */.Z, {
|
|
|
open: isshowmodaltitls,
|
|
|
title: "\u6253\u56DE\u786E\u8BA4",
|
|
|
onOk: /*#__PURE__*/asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee4() {
|
|
|
var res, _res2;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee4$(_context4) {
|
|
|
while (1) switch (_context4.prev = _context4.next) {
|
|
|
case 0:
|
|
|
if (!(istype === 2)) {
|
|
|
_context4.next = 7;
|
|
|
break;
|
|
|
}
|
|
|
_context4.next = 3;
|
|
|
return (0,fetch/* default */.ZP)("/api/homework_commons/".concat(params.categoryId, "/batch_redo_modal.json"), {
|
|
|
method: 'post',
|
|
|
body: {
|
|
|
id: params.categoryId,
|
|
|
comment: comment,
|
|
|
status: checkvalues
|
|
|
}
|
|
|
});
|
|
|
case 3:
|
|
|
res = _context4.sent;
|
|
|
if (res.status === 0) {
|
|
|
message/* default */.ZP.info('打回成功');
|
|
|
setnull();
|
|
|
getData();
|
|
|
setisshowmodaltitls(false);
|
|
|
}
|
|
|
_context4.next = 11;
|
|
|
break;
|
|
|
case 7:
|
|
|
_context4.next = 9;
|
|
|
return (0,fetch/* default */.ZP)("/api/homework_commons/".concat(params.categoryId, "/batch_redo_modal.json"), {
|
|
|
method: 'post',
|
|
|
body: {
|
|
|
id: params.categoryId,
|
|
|
comment: comment,
|
|
|
min_score: minscore,
|
|
|
max_score: maxscore
|
|
|
}
|
|
|
});
|
|
|
case 9:
|
|
|
_res2 = _context4.sent;
|
|
|
if (_res2.status === 0) {
|
|
|
message/* default */.ZP.info('打回成功');
|
|
|
setnull();
|
|
|
getData();
|
|
|
setisshowmodaltitls(false);
|
|
|
}
|
|
|
case 11:
|
|
|
case "end":
|
|
|
return _context4.stop();
|
|
|
}
|
|
|
}, _callee4);
|
|
|
})),
|
|
|
onCancel: function onCancel() {
|
|
|
setnull();
|
|
|
setisshowmodaltitls(false);
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
style: {
|
|
|
padding: '32px'
|
|
|
},
|
|
|
children: [istype === 1 && /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
children: ["\u786E\u8BA4\u5C06\u6210\u7EE9\u5728", minscore, "-", maxscore, "\u7684\u5B66\u751F\u8FDB\u884C\u6253\u56DE\u91CD\u505A\u5417\uFF1F"]
|
|
|
}), istype === 2 && /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
children: ["\u786E\u8BA4\u5C06\u4F5C\u4E1A\u72B6\u6001\u4E3A", ((_workList$task_status3 = workList.task_status) === null || _workList$task_status3 === void 0 ? void 0 : _workList$task_status3.filter(function (item) {
|
|
|
return checkvalues === null || checkvalues === void 0 ? void 0 : checkvalues.includes(item.id);
|
|
|
}).map(function (item) {
|
|
|
return item.name;
|
|
|
}).toString()) + ',', "\u7684\u5B66\u751F\u8FDB\u884C\u4F5C\u4E1A\u6253\u56DE\u91CD\u505A\u5417\uFF1F"]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("br", {}), /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
children: ["\u8BE5\u6761\u4EF6\u4E0B\u5171\u6709", studentcount === null || studentcount === void 0 ? void 0 : studentcount.count, "\u540D\u5B66\u751F"]
|
|
|
})]
|
|
|
})
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(QualityModal, {}), /*#__PURE__*/(0,jsx_runtime.jsx)("aside", {
|
|
|
className: "tc mb50 mt30",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(pagination/* default */.Z, {
|
|
|
showQuickJumper: true,
|
|
|
hideOnSinglePage: true,
|
|
|
showSizeChanger: false,
|
|
|
onChange: onShowSizeChange,
|
|
|
current: params.page || 1,
|
|
|
defaultPageSize: 20,
|
|
|
total: workList.work_count
|
|
|
})
|
|
|
})]
|
|
|
});
|
|
|
};
|
|
|
/* harmony default export */ var components_WorkList = ((0,_umi_production_exports.connect)(function (_ref7) {
|
|
|
var shixunHomeworks = _ref7.shixunHomeworks,
|
|
|
classroomList = _ref7.classroomList,
|
|
|
loading = _ref7.loading,
|
|
|
user = _ref7.user;
|
|
|
return {
|
|
|
shixunHomeworks: shixunHomeworks,
|
|
|
classroomList: classroomList,
|
|
|
loading: loading.effects,
|
|
|
user: user
|
|
|
};
|
|
|
})(WorkList));
|
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/alert/index.js + 3 modules
|
|
|
var es_alert = __webpack_require__(46400);
|
|
|
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/Detail/components/CodeReview/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// import CodeReviewPop from './components/CodeReviewPop';
|
|
|
// import Redo from './components/Redo';
|
|
|
// import QuickComment from './components/QuickComment';
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var CodeReview_WorkList = function WorkList(_ref) {
|
|
|
var _codeReview$group_inf;
|
|
|
var shixunHomeworks = _ref.shixunHomeworks,
|
|
|
loading = _ref.loading,
|
|
|
dispatch = _ref.dispatch,
|
|
|
classroomList = _ref.classroomList;
|
|
|
var urlParmas = (0,_umi_production_exports.useParams)();
|
|
|
var _useState = (0,_react_17_0_2_react.useState)(objectSpread2_default()(objectSpread2_default()({}, {
|
|
|
page: 1,
|
|
|
limit: 20,
|
|
|
group_ids: []
|
|
|
}), urlParmas)),
|
|
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
|
params = _useState2[0],
|
|
|
setParams = _useState2[1];
|
|
|
// const [params, setParams] = useState<any>({ ...useParams() });
|
|
|
var location = (0,_umi_production_exports.useLocation)();
|
|
|
var codeReview = shixunHomeworks.codeReview;
|
|
|
var _useState3 = (0,_react_17_0_2_react.useState)({}),
|
|
|
_useState4 = slicedToArray_default()(_useState3, 2),
|
|
|
filterSelect = _useState4[0],
|
|
|
setFilterSelect = _useState4[1];
|
|
|
var _Form$useForm = es_form/* default */.Z.useForm(),
|
|
|
_Form$useForm2 = slicedToArray_default()(_Form$useForm, 1),
|
|
|
form = _Form$useForm2[0];
|
|
|
params['order'] = 'code_rate';
|
|
|
params['sort'] = 'desc';
|
|
|
params['category'] = params['categoryId'];
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
getData();
|
|
|
console.log("params", params);
|
|
|
}, [params]);
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
if (shixunHomeworks.actionTabs.key === '执行代码查重') getData();
|
|
|
}, [shixunHomeworks.actionTabs.key]);
|
|
|
var getData = /*#__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 dispatch({
|
|
|
type: 'shixunHomeworks/getCodeReview',
|
|
|
payload: objectSpread2_default()({}, params)
|
|
|
});
|
|
|
case 2:
|
|
|
res = _context.sent;
|
|
|
if (res.status === -2) {
|
|
|
setTimeout(function () {
|
|
|
return getData();
|
|
|
}, 1500);
|
|
|
}
|
|
|
case 4:
|
|
|
case "end":
|
|
|
return _context.stop();
|
|
|
}
|
|
|
}, _callee);
|
|
|
}));
|
|
|
return function getData() {
|
|
|
return _ref2.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var onHandleChange = function onHandleChange() {
|
|
|
// dispatch({
|
|
|
// type: 'shixunHomeworks/getCodeReview',
|
|
|
// payload: params,
|
|
|
// });
|
|
|
// const formValue = Object.assign({}, form.getFieldValue());
|
|
|
// console.log("formValue:", formValue)
|
|
|
// delete filterSelect.course_group;
|
|
|
// delete filterSelect.teacher_comment;
|
|
|
// Object.keys(formValue).map(function (v: string) {
|
|
|
// switch (v) {
|
|
|
// case 'group_ids':
|
|
|
// if (
|
|
|
// formValue[v].includes('all') ||
|
|
|
// codeReview['group_info'].length === formValue[v].length
|
|
|
// ) {
|
|
|
// delete params.group_ids;
|
|
|
// form.setFieldsValue({
|
|
|
// ['group_ids']: 'all',
|
|
|
// });
|
|
|
// } else {
|
|
|
// params['group_ids'] = formValue[v];
|
|
|
// form.setFieldsValue({
|
|
|
// ['group_ids']: params['course_group'],
|
|
|
// });
|
|
|
// }
|
|
|
// break;
|
|
|
// }
|
|
|
|
|
|
// });
|
|
|
};
|
|
|
var onShowSizeChange = function onShowSizeChange(current, pageSize) {
|
|
|
params.page = current;
|
|
|
params.limit = 20;
|
|
|
dispatch({
|
|
|
type: 'shixunHomeworks/getCodeReview',
|
|
|
payload: objectSpread2_default()({}, params)
|
|
|
});
|
|
|
};
|
|
|
var columns = [{
|
|
|
title: '序号',
|
|
|
dataIndex: 'number',
|
|
|
render: function render(text, record, index) {
|
|
|
return params.limit * (params.page - 1) + index + 1;
|
|
|
}
|
|
|
}, {
|
|
|
title: '姓名',
|
|
|
dataIndex: 'username'
|
|
|
}, {
|
|
|
title: '学号',
|
|
|
dataIndex: 'student_id'
|
|
|
}, {
|
|
|
title: '相似度',
|
|
|
dataIndex: 'code_rate',
|
|
|
render: function render(text) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "c-orange",
|
|
|
children: text
|
|
|
});
|
|
|
}
|
|
|
}, {
|
|
|
title: '操作',
|
|
|
dataInex: 'action',
|
|
|
render: function render(text, record) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("a", {
|
|
|
onClick: function onClick() {
|
|
|
var _classroomList$Assist;
|
|
|
if ((0,authority/* isAssistant */.Rm)() && !((_classroomList$Assist = classroomList.AssistantObject.hack) !== null && _classroomList$Assist !== void 0 && _classroomList$Assist.can_view)) {
|
|
|
message/* default */.ZP.warning('您未获取此权限,需向管理员申请权限才能使用此功能');
|
|
|
return;
|
|
|
}
|
|
|
window.open("/classrooms/".concat(params.coursesId, "/program_homework/").concat(params.categoryId, "/review_detail/").concat(record.user_id));
|
|
|
},
|
|
|
children: "\u67E5\u770B"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("br", {})]
|
|
|
});
|
|
|
}
|
|
|
}];
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("section", {
|
|
|
className: "minH500 bg-white pl30 pr30 pt10",
|
|
|
children: [(codeReview === null || codeReview === void 0 ? void 0 : codeReview.status) === -2 && /*#__PURE__*/(0,jsx_runtime.jsx)(es_alert/* default */.Z, {
|
|
|
message: "\u67E5\u91CD\u8FDB\u884C\u4E2D\uFF0C\u8BF7\u7A0D\u5019\u2026\u2026",
|
|
|
className: "mb10 font14",
|
|
|
type: "error"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
flex: "1",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
|
|
|
className: "mt10",
|
|
|
children: ["\u67E5\u91CD\u65F6\u95F4\uFF1A", codeReview.last_review_time, /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
|
ghost: true,
|
|
|
danger: true,
|
|
|
style: {
|
|
|
color: '#29BD8B',
|
|
|
borderColor: '#29BD8B',
|
|
|
marginLeft: 10
|
|
|
},
|
|
|
onClick: function onClick() {
|
|
|
dispatch({
|
|
|
type: 'shixunHomeworks/setActionTabs',
|
|
|
payload: {
|
|
|
key: '代码查重',
|
|
|
// selectArrs: workList.student_works.map(v => v.id),
|
|
|
params: params
|
|
|
}
|
|
|
});
|
|
|
},
|
|
|
children: "\u4EE3\u7801\u67E5\u91CD"
|
|
|
})]
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(col/* default */.Z, {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z.Search, {
|
|
|
allowClear: true,
|
|
|
placeholder: "\u8BF7\u8F93\u5165\u59D3\u540D\u6216\u8005\u5B66\u53F7\u641C\u7D22",
|
|
|
onSearch: function onSearch(value) {
|
|
|
params.search = value;
|
|
|
dispatch({
|
|
|
type: 'shixunHomeworks/getCodeReview',
|
|
|
payload: params
|
|
|
});
|
|
|
},
|
|
|
style: {
|
|
|
width: 200
|
|
|
}
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "ml5 c-red"
|
|
|
})]
|
|
|
})]
|
|
|
}), ((_codeReview$group_inf = codeReview.group_info) === null || _codeReview$group_inf === void 0 ? void 0 : _codeReview$group_inf.length) > 0 && /*#__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: '80px',
|
|
|
className: "font14",
|
|
|
children: "\u5206\u73ED\u60C5\u51B5:"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
flex: '80px',
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_checkbox/* default */.Z, {
|
|
|
checked: params.group_ids == '' ? true : false,
|
|
|
value: "all",
|
|
|
onChange: function onChange(e) {
|
|
|
delete params.group_ids;
|
|
|
params.group_ids = [];
|
|
|
params.page = 1;
|
|
|
setParams(objectSpread2_default()({}, params));
|
|
|
},
|
|
|
children: "\u5168\u90E8"
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
flex: '1',
|
|
|
children: codeReview.group_info && codeReview.group_info.map(function (v, k) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)(es_checkbox/* default */.Z, {
|
|
|
style: {
|
|
|
marginLeft: 0
|
|
|
},
|
|
|
value: v.id,
|
|
|
checked: params.group_ids.includes(v.id),
|
|
|
onChange: function onChange(e) {
|
|
|
if (e.target.checked) {
|
|
|
params.group_ids.push(v.id);
|
|
|
} else {
|
|
|
params.group_ids.splice(params.group_ids.indexOf(v.id), 1);
|
|
|
}
|
|
|
params.page = 1;
|
|
|
setParams(objectSpread2_default()({}, params));
|
|
|
},
|
|
|
children: [v.name, "(", v.members_count, ")"]
|
|
|
});
|
|
|
})
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(row/* default */.Z, {
|
|
|
className: "font14 c-red mt5",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
children: "\u672C\u9875\u4EC5\u663E\u793A\u5168\u90E8\u5DF2\u67E5\u91CD\u5206\u73ED"
|
|
|
})
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
|
|
|
className: "mt10",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "c-red",
|
|
|
children: codeReview.copy_reviews_count
|
|
|
}), "\u4E2A\u7591\u4F3C\u6284\u88AD\u4F5C\u54C1\uFF08", codeReview.all_reviews_count, "\u4F5C\u54C1\uFF09"]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(table/* default */.Z, {
|
|
|
className: "mt30",
|
|
|
loading: loading['shixunHomeworks/getCodeReview'],
|
|
|
pagination: false,
|
|
|
dataSource: codeReview.users_reviews,
|
|
|
columns: columns,
|
|
|
onChange: function onChange(a, b, c) {
|
|
|
if (c.order === 'ascend') params['b_order'] = 'asc';
|
|
|
if (c.order === 'descend') params['b_order'] = 'desc';
|
|
|
if (!c.order) delete params['b_order'];
|
|
|
dispatch({
|
|
|
type: 'shixunHomeworks/getCodeReview',
|
|
|
payload: objectSpread2_default()({}, params)
|
|
|
});
|
|
|
}
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("aside", {
|
|
|
className: "tc mb50 mt30",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(pagination/* default */.Z, {
|
|
|
showSizeChanger: false,
|
|
|
onChange: onShowSizeChange,
|
|
|
defaultCurrent: params.page || 1,
|
|
|
current: params.page || 1,
|
|
|
defaultPageSize: 20,
|
|
|
hideOnSinglePage: true,
|
|
|
total: codeReview.copy_reviews_count
|
|
|
})
|
|
|
})]
|
|
|
});
|
|
|
};
|
|
|
/* harmony default export */ var CodeReview = ((0,_umi_production_exports.connect)(function (_ref3) {
|
|
|
var shixunHomeworks = _ref3.shixunHomeworks,
|
|
|
classroomList = _ref3.classroomList,
|
|
|
loading = _ref3.loading;
|
|
|
return {
|
|
|
shixunHomeworks: shixunHomeworks,
|
|
|
classroomList: classroomList,
|
|
|
loading: loading.effects
|
|
|
};
|
|
|
})(CodeReview_WorkList));
|
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/date-picker/index.js + 66 modules
|
|
|
var date_picker = __webpack_require__(72086);
|
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/select/index.js
|
|
|
var es_select = __webpack_require__(57809);
|
|
|
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.3.1@@ant-design/icons/es/icons/DeleteOutlined.js + 1 modules
|
|
|
var DeleteOutlined = __webpack_require__(8897);
|
|
|
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.3.1@@ant-design/icons/es/icons/PlusCircleOutlined.js + 1 modules
|
|
|
var PlusCircleOutlined = __webpack_require__(10064);
|
|
|
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.3.1@@ant-design/icons/es/icons/QuestionCircleOutlined.js + 1 modules
|
|
|
var QuestionCircleOutlined = __webpack_require__(55079);
|
|
|
// EXTERNAL MODULE: ./node_modules/_lodash@4.17.21@lodash/lodash.js
|
|
|
var lodash = __webpack_require__(89392);
|
|
|
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/Detail/components/ConfigWorks/index.less?modules
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
/* harmony default export */ var ConfigWorksmodules = ({"flex_box_center":"flex_box_center___pegyD","flex_space_between":"flex_space_between___OEf74","flex_box_vertical_center":"flex_box_vertical_center___Gg0ks","flex_box_center_end":"flex_box_center_end___ZDNgp","flex_box_column":"flex_box_column___kUnuF","form":"form___dWO2F","btns":"btns___kKBDA","hackList":"hackList___nh6e9","title":"title___tyrHF","subtitle":"subtitle___VW2Be","efficiency":"efficiency___BuFu7"});
|
|
|
// EXTERNAL MODULE: ./src/components/PercentSelect/index.tsx
|
|
|
var PercentSelect = __webpack_require__(90147);
|
|
|
// EXTERNAL MODULE: ./src/pages/Classrooms/Lists/ShixunHomeworks/Detail/components/ConfigWorks/Releasesetting.tsx
|
|
|
var Releasesetting = __webpack_require__(93666);
|
|
|
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/Detail/components/ConfigWorks/Releasesetting.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var RangePicker = date_picker["default"].RangePicker;
|
|
|
var Option = es_select["default"].Option;
|
|
|
var Releasesetting_WorkList = function WorkList(_ref) {
|
|
|
var _workList$homework_st2, _classroomList$Assist3, _workList$homework_st3, _workList$homework_st4, _workList$homework_st5, _workList$homework_st6, _classroomList$Assist4, _workSetting$group_se4, _workSetting$group_se5, _classroomList$Assist5, _classroomList$Assist6, _groupSettings2, _workSetting$group_se7;
|
|
|
var shixunHomeworks = _ref.shixunHomeworks,
|
|
|
loading = _ref.loading,
|
|
|
classroomList = _ref.classroomList,
|
|
|
dispatch = _ref.dispatch;
|
|
|
var params = (0,_umi_production_exports.useParams)();
|
|
|
var workSetting = shixunHomeworks.workSetting,
|
|
|
workList = shixunHomeworks.workList,
|
|
|
changeData = shixunHomeworks.changeData;
|
|
|
var _useState = (0,_react_17_0_2_react.useState)(true),
|
|
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
|
disabled = _useState2[0],
|
|
|
setDisabled = _useState2[1];
|
|
|
var _useState3 = (0,_react_17_0_2_react.useState)(false),
|
|
|
_useState4 = slicedToArray_default()(_useState3, 2),
|
|
|
btnLoading = _useState4[0],
|
|
|
setBtnLoading = _useState4[1];
|
|
|
var _useState5 = (0,_react_17_0_2_react.useState)([]),
|
|
|
_useState6 = slicedToArray_default()(_useState5, 2),
|
|
|
groupSettings = _useState6[0],
|
|
|
setGroupSetting = _useState6[1];
|
|
|
var _useState7 = (0,_react_17_0_2_react.useState)([]),
|
|
|
_useState8 = slicedToArray_default()(_useState7, 2),
|
|
|
repairSettings = _useState8[0],
|
|
|
setRepairSetting = _useState8[1];
|
|
|
var _useState9 = (0,_react_17_0_2_react.useState)({
|
|
|
unified_setting: false,
|
|
|
//是否统一设置
|
|
|
publish_time: '',
|
|
|
// string 统一设置的发布时间
|
|
|
end_time: '',
|
|
|
// string 统一设置的截止时间Ï
|
|
|
//分班设置
|
|
|
// group_settings: [
|
|
|
// // {
|
|
|
// // group_id: "",
|
|
|
// // group_name: "",
|
|
|
// // publish_time: "",
|
|
|
// // end_time: ""
|
|
|
// // }
|
|
|
// ],
|
|
|
//补交设置
|
|
|
// allow_late_settings: [
|
|
|
// // {
|
|
|
// // group_id: "",
|
|
|
// // group_name: "",
|
|
|
// // late_minus_score: "",
|
|
|
// // late_time: ""
|
|
|
// // }
|
|
|
// ],
|
|
|
//shifou
|
|
|
allow_late: false,
|
|
|
//是否允许补交
|
|
|
unified_late: true,
|
|
|
//补交方式
|
|
|
late_time: '',
|
|
|
//补交截止时间
|
|
|
late_minus_score: 0,
|
|
|
//迟交扣分
|
|
|
penalty_type: PercentSelect/* SelectType */.Q.Percent,
|
|
|
//补交扣分类型
|
|
|
challenge_settings: [
|
|
|
// {
|
|
|
// challenge_id: "", //关卡id
|
|
|
// challenge_name: "", //关卡名称
|
|
|
// checked: false,// 是否选中
|
|
|
// challenge_score:“”关卡分值
|
|
|
// challenge_exp 关卡经验值
|
|
|
// difficulty: 关卡难易度
|
|
|
// }
|
|
|
],
|
|
|
work_efficiency: false,
|
|
|
//是否勾选效率分
|
|
|
shixun_evaluation: '',
|
|
|
//评分比例设置:0:均分, 1:经验值,2:自定义
|
|
|
answer_open_evaluation: false,
|
|
|
//查看答案 扣分false满分true
|
|
|
answer_public: false,
|
|
|
//公开答案
|
|
|
score_open: false,
|
|
|
//公开成绩
|
|
|
comment_public: true,
|
|
|
//公开评论
|
|
|
total_score: '',
|
|
|
//总分值
|
|
|
eff_score: 0,
|
|
|
//效率分
|
|
|
send_type: undefined,
|
|
|
//试题发送
|
|
|
difficult_count: [],
|
|
|
//随机抽题最大数
|
|
|
difficult_settings: [],
|
|
|
//随机抽题数
|
|
|
late_penalty: 0
|
|
|
}),
|
|
|
_useState10 = slicedToArray_default()(_useState9, 2),
|
|
|
data = _useState10[0],
|
|
|
setData = _useState10[1];
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
getData();
|
|
|
return function () {
|
|
|
setGroupSetting([].concat());
|
|
|
};
|
|
|
}, []);
|
|
|
var getData = function getData() {
|
|
|
dispatch({
|
|
|
type: 'shixunHomeworks/getWorkSetting',
|
|
|
payload: objectSpread2_default()({}, params)
|
|
|
});
|
|
|
};
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
var _repairSettings;
|
|
|
if (!(workSetting !== null && workSetting !== void 0 && workSetting.course_id)) return;
|
|
|
Object.keys(data).map(function (item) {
|
|
|
data[item] = workSetting[item];
|
|
|
});
|
|
|
if (!data.allow_late || !data.unified_late) {
|
|
|
data.late_minus_score = 20;
|
|
|
data.penalty_type = PercentSelect/* SelectType */.Q.Percent;
|
|
|
}
|
|
|
if (!data.unified_setting) {
|
|
|
//分班发布时默认值都设为false
|
|
|
data.unified_late = false;
|
|
|
data.unified_anonymous_comment = false;
|
|
|
data.unified_anonymous_appeal = false;
|
|
|
}
|
|
|
groupSettings = JSON.parse(JSON.stringify(workSetting.group_settings.map(function (e) {
|
|
|
return objectSpread2_default()(objectSpread2_default()({}, e), {}, {
|
|
|
group_name: [e.group_name]
|
|
|
});
|
|
|
}).filter(function (v) {
|
|
|
return v.publish_time !== null;
|
|
|
})));
|
|
|
repairSettings = JSON.parse(JSON.stringify(workSetting.allow_late_settings.map(function (e) {
|
|
|
return objectSpread2_default()(objectSpread2_default()({}, e), {}, {
|
|
|
group_name: [e.group_name]
|
|
|
});
|
|
|
}).filter(function (v) {
|
|
|
return v.late_time !== null;
|
|
|
})));
|
|
|
if (data.difficult_settings.length === 0) {
|
|
|
data.difficult_settings = [0, 0, 0];
|
|
|
}
|
|
|
setData(objectSpread2_default()({}, data));
|
|
|
setGroupSetting(groupSettings.length ? toConsumableArray_default()(groupSettings) : [{}]);
|
|
|
if (((_repairSettings = repairSettings) === null || _repairSettings === void 0 ? void 0 : _repairSettings.length) <= 0) {
|
|
|
setRepairSetting([{
|
|
|
late_minus_score: 20
|
|
|
}]);
|
|
|
} else {
|
|
|
setRepairSetting(toConsumableArray_default()(repairSettings));
|
|
|
}
|
|
|
}, [workSetting]);
|
|
|
var onHandleChange = function onHandleChange() {
|
|
|
var _groupSettings;
|
|
|
var bodyData = JSON.parse(JSON.stringify(data));
|
|
|
bodyData.categoryId = params.categoryId;
|
|
|
if (!data.unified_setting) groupSettings = (_groupSettings = groupSettings) === null || _groupSettings === void 0 ? void 0 : _groupSettings.map(function (item) {
|
|
|
var _workSetting$group_se;
|
|
|
if (!item.publish_time || !item.end_time) {
|
|
|
message/* default */.ZP.error('请把发布时间填写完整');
|
|
|
throw new String('请把发布时间填写完整');
|
|
|
}
|
|
|
if (!item.group_name) {
|
|
|
message/* default */.ZP.error('请选择分班名称');
|
|
|
throw new String('请选择分班名称');
|
|
|
}
|
|
|
item.group_name = typeof (item === null || item === void 0 ? void 0 : item.group_name) === 'string' ? [item === null || item === void 0 ? void 0 : item.group_name] : item === null || item === void 0 ? void 0 : item.group_name;
|
|
|
item.group_id = (_workSetting$group_se = workSetting.group_settings) === null || _workSetting$group_se === void 0 ? void 0 : _workSetting$group_se.filter(function (v) {
|
|
|
var _item$group_name;
|
|
|
return item === null || item === void 0 || (_item$group_name = item.group_name) === null || _item$group_name === void 0 ? void 0 : _item$group_name.includes(v.group_name);
|
|
|
}).map(function (v) {
|
|
|
return v.group_id || v.id;
|
|
|
}).toString().split(",");
|
|
|
return item;
|
|
|
});
|
|
|
bodyData.group_settings = groupSettings;
|
|
|
if (data.allow_late) {
|
|
|
if (data.unified_late) {
|
|
|
if (data.late_minus_score === null || data.late_minus_score === undefined || data.late_minus_score < 0 || data.late_minus_score > 100) {
|
|
|
message/* default */.ZP.error('迟交扣分填写区间为0~100');
|
|
|
throw new String('迟交扣分填写区间为0~100');
|
|
|
}
|
|
|
if (!data.late_time) {
|
|
|
message/* default */.ZP.error('请把截止时间填写完整');
|
|
|
throw new String('请把截止时间填写完整');
|
|
|
}
|
|
|
} else {
|
|
|
var _repairSettings2;
|
|
|
repairSettings = (_repairSettings2 = repairSettings) === null || _repairSettings2 === void 0 ? void 0 : _repairSettings2.map(function (item) {
|
|
|
var _item$group_name2;
|
|
|
if (item.late_minus_score === null || item.late_minus_score === undefined || item.late_minus_score < 0 || item.late_minus_score > 100) {
|
|
|
message/* default */.ZP.error('迟交扣分填写区间为0~100');
|
|
|
throw new String('迟交扣分填写区间为0~100');
|
|
|
}
|
|
|
if (!item.late_time) {
|
|
|
message/* default */.ZP.error('请把截止时间填写完整');
|
|
|
throw new String('请把截止时间填写完整');
|
|
|
}
|
|
|
if (!item.group_name) {
|
|
|
message/* default */.ZP.error('请选择分班名称');
|
|
|
throw new String('请选择分班名称');
|
|
|
}
|
|
|
item.group_name = typeof (item === null || item === void 0 ? void 0 : item.group_name) === 'string' ? [item === null || item === void 0 ? void 0 : item.group_name] : item === null || item === void 0 ? void 0 : item.group_name;
|
|
|
item.group_id = item === null || item === void 0 || (_item$group_name2 = item.group_name) === null || _item$group_name2 === void 0 || (_item$group_name2 = _item$group_name2.map(function (val) {
|
|
|
var _workSetting$group_se2;
|
|
|
var d = (_workSetting$group_se2 = workSetting.group_settings) === null || _workSetting$group_se2 === void 0 || (_workSetting$group_se2 = _workSetting$group_se2.filter(function (v) {
|
|
|
return (v === null || v === void 0 ? void 0 : v.group_name) === val;
|
|
|
})) === null || _workSetting$group_se2 === void 0 ? void 0 : _workSetting$group_se2[0];
|
|
|
return d === null || d === void 0 ? void 0 : d['group_id'];
|
|
|
})) === null || _item$group_name2 === void 0 ? void 0 : _item$group_name2.toString().split(",");
|
|
|
return item;
|
|
|
});
|
|
|
bodyData.allow_late_settings = repairSettings;
|
|
|
}
|
|
|
}
|
|
|
if (bodyData.send_type === 1) {
|
|
|
bodyData.difficult_settings = bodyData.difficult_settings.map(function (e) {
|
|
|
return e || 0;
|
|
|
});
|
|
|
}
|
|
|
setVerify(bodyData);
|
|
|
};
|
|
|
|
|
|
//校验弹框
|
|
|
var setVerify = function setVerify(bodyData) {
|
|
|
var _workList$homework_st;
|
|
|
if (bodyData.total_score === null) {
|
|
|
message/* default */.ZP.warning("\u603B\u5206\u503C\u4E0D\u80FD\u4E3A\u7A7A");
|
|
|
return;
|
|
|
}
|
|
|
if (bodyData !== null && bodyData !== void 0 && bodyData.work_efficiency && bodyData.eff_score === null) {
|
|
|
message/* default */.ZP.warning("\u6548\u7387\u5206\u4E0D\u80FD\u4E3A\u7A7A");
|
|
|
return;
|
|
|
}
|
|
|
var newChangeData = {
|
|
|
shixun_evaluation: bodyData.shixun_evaluation,
|
|
|
challenge_settings: bodyData.challenge_settings
|
|
|
};
|
|
|
var goGetData = /*#__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:
|
|
|
setBtnLoading(true);
|
|
|
_context.next = 3;
|
|
|
return (0,fetch/* default */.ZP)("/api/homework_commons/".concat(params.categoryId, "/publish_setting.json"), {
|
|
|
method: 'post',
|
|
|
body: objectSpread2_default()({}, bodyData)
|
|
|
});
|
|
|
case 3:
|
|
|
res = _context.sent;
|
|
|
// dispatch({
|
|
|
// type: 'shixunHomeworks/updateSetting',
|
|
|
// payload: bodyData,
|
|
|
// }).then((res: any) => {
|
|
|
if (res.status === 0) {
|
|
|
message/* default */.ZP.success('更新成功');
|
|
|
setDisabled(true);
|
|
|
getData();
|
|
|
dispatch({
|
|
|
type: 'shixunHomeworks/getWorkList',
|
|
|
payload: objectSpread2_default()({}, params)
|
|
|
});
|
|
|
}
|
|
|
setBtnLoading(false);
|
|
|
// })
|
|
|
case 6:
|
|
|
case "end":
|
|
|
return _context.stop();
|
|
|
}
|
|
|
}, _callee);
|
|
|
}));
|
|
|
return function goGetData() {
|
|
|
return _ref2.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
if (!(0,lodash.isEqual)(changeData, newChangeData) && !(workList !== null && workList !== void 0 && (_workList$homework_st = workList.homework_status) !== null && _workList$homework_st !== void 0 && _workList$homework_st.includes("未发布"))) {
|
|
|
modal/* default */.Z.confirm({
|
|
|
title: "更新成绩",
|
|
|
content: "您改动了本次作业的关卡得分设置,这可能导致已完成作业的学生的成绩产生错误。点击“确定”按钮将保存最新设置并按最新设置更新全班成绩。",
|
|
|
okText: "确认",
|
|
|
cancelText: "取消",
|
|
|
onOk: goGetData
|
|
|
});
|
|
|
} else {
|
|
|
goGetData();
|
|
|
}
|
|
|
};
|
|
|
var findGroupItemById = function findGroupItemById(id, arr) {
|
|
|
var _workSetting$group_se3;
|
|
|
var key = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 'group_id';
|
|
|
if (arr) {
|
|
|
return arr.find(function (item) {
|
|
|
return item[key] === id;
|
|
|
});
|
|
|
}
|
|
|
return workSetting === null || workSetting === void 0 || (_workSetting$group_se3 = workSetting.group_settings) === null || _workSetting$group_se3 === void 0 ? void 0 : _workSetting$group_se3.find(function (item) {
|
|
|
return item.group_id[0] === id;
|
|
|
});
|
|
|
};
|
|
|
|
|
|
// const unifiedEndTimeDisabled = workSetting?.allow_late || workSetting?.anonymous_comment //开启补交或者开启匿评后不可调整作业截止时间
|
|
|
var unifiedEndTimeDisabled = (workSetting === null || workSetting === void 0 ? void 0 : workSetting.allow_late) || (workSetting === null || workSetting === void 0 ? void 0 : workSetting.anonymous_comment);
|
|
|
var groupEndTimeDisabled = function groupEndTimeDisabled(id) {
|
|
|
var _, _workSetting$allow_la;
|
|
|
var lateItem = findGroupItemById(id, workSetting === null || workSetting === void 0 ? void 0 : workSetting.allow_late_settings, 'id');
|
|
|
var commentItem = findGroupItemById(id, workSetting === null || workSetting === void 0 ? void 0 : workSetting.anonymous_comment_settings);
|
|
|
var EndItem = findGroupItemById(id);
|
|
|
// return (workSetting?.allow_late && lateItem && lateItem?.late_time !== null) ||
|
|
|
return (workSetting === null || workSetting === void 0 ? void 0 : workSetting.allow_late) && lateItem && dayjs_min_default()(lateItem === null || lateItem === void 0 ? void 0 : lateItem.late_time) <= dayjs_min_default()() || (workSetting === null || workSetting === void 0 ? void 0 : workSetting.anonymous_comment) && commentItem && (commentItem === null || commentItem === void 0 ? void 0 : commentItem.evaluation_start) !== null || ((_ = (dayjs_min_default()(EndItem === null || EndItem === void 0 ? void 0 : EndItem.end_time) <= dayjs_min_default()() && (workSetting === null || workSetting === void 0 || (_workSetting$allow_la = workSetting.allow_late_settings) === null || _workSetting$allow_la === void 0 ? void 0 : _workSetting$allow_la.filter(function (item) {
|
|
|
return item.group_id.includes(id);
|
|
|
})))[0]) === null || _ === void 0 ? void 0 : _.late_time) != null;
|
|
|
};
|
|
|
|
|
|
//是否可以开启补交
|
|
|
// const allowLateDisabled = useMemo(() => {
|
|
|
// // 统一发布时,只有已截止状态才可以开启补交
|
|
|
// if (workSetting?.unified_setting) {
|
|
|
// return !workList?.homework_status?.includes('已截止') || workSetting?.allow_late || workSetting?.anonymous_comment
|
|
|
// }
|
|
|
// const hasEndedGroup = workSetting?.group_settings?.some(item => moment(item.end_time) <= moment()) //存在已截止的分班
|
|
|
// return !hasEndedGroup || workSetting?.allow_late || workSetting?.all_group_late
|
|
|
// }, [workSetting, workList])
|
|
|
|
|
|
var unifiedLateTimeDisabled = workSetting === null || workSetting === void 0 ? void 0 : workSetting.anonymous_comment;
|
|
|
var groupLateTimeDisabled = function groupLateTimeDisabled(id) {
|
|
|
if (!id) {
|
|
|
return false;
|
|
|
}
|
|
|
var anoymousCommentItem = findGroupItemById(id, workSetting === null || workSetting === void 0 ? void 0 : workSetting.anonymous_comment_settings);
|
|
|
return (workSetting === null || workSetting === void 0 ? void 0 : workSetting.anonymous_comment) && anoymousCommentItem && (anoymousCommentItem === null || anoymousCommentItem === void 0 ? void 0 : anoymousCommentItem.evaluation_start) !== null;
|
|
|
};
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("section", {
|
|
|
className: ConfigWorksmodules.form,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
align: "middle",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
flex: '1',
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: ConfigWorksmodules.title,
|
|
|
children: "\u8BD5\u9898\u53D1\u5E03"
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(col/* default */.Z, {
|
|
|
children: [(0,authority/* isAdmin */.GJ)() && disabled && /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
|
type: "primary",
|
|
|
size: "middle",
|
|
|
ghost: true,
|
|
|
onClick: function onClick() {
|
|
|
var _classroomList$Assist, _classroomList$Assist2;
|
|
|
if ((0,authority/* isAssistant */.Rm)() && !((_classroomList$Assist = classroomList.AssistantObject.hack) !== null && _classroomList$Assist !== void 0 && _classroomList$Assist.can_late) && !((_classroomList$Assist2 = classroomList.AssistantObject.hack) !== null && _classroomList$Assist2 !== void 0 && _classroomList$Assist2.can_publish)) {
|
|
|
message/* default */.ZP.warning('您未获取此权限,需向管理员申请权限才能使用此功能');
|
|
|
return;
|
|
|
}
|
|
|
setDisabled(false);
|
|
|
},
|
|
|
children: "\u7F16\u8F91\u8BBE\u7F6E"
|
|
|
}), !disabled && /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
|
type: "primary",
|
|
|
loading: btnLoading,
|
|
|
onClick: function onClick() {
|
|
|
return onHandleChange();
|
|
|
},
|
|
|
children: "\u63D0\u4EA4"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
|
type: "primary",
|
|
|
ghost: true,
|
|
|
className: "ml20",
|
|
|
onClick: function onClick() {
|
|
|
setDisabled(true);
|
|
|
getData();
|
|
|
},
|
|
|
children: "\u53D6\u6D88"
|
|
|
})]
|
|
|
})]
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: "mt10",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("label", {
|
|
|
className: "mr20",
|
|
|
children: "\u53D1\u5E03\u65B9\u5F0F"
|
|
|
}), " ", /*#__PURE__*/(0,jsx_runtime.jsxs)(es_radio/* default.Group */.ZP.Group, {
|
|
|
disabled: disabled || !(workList !== null && workList !== void 0 && (_workList$homework_st2 = workList.homework_status) !== null && _workList$homework_st2 !== void 0 && _workList$homework_st2.includes("未发布")) || !((_classroomList$Assist3 = classroomList.AssistantObject.hack) !== null && _classroomList$Assist3 !== void 0 && _classroomList$Assist3.can_publish) && (0,authority/* isAssistant */.Rm)(),
|
|
|
value: data.send_type,
|
|
|
onChange: function onChange(e) {
|
|
|
data.send_type = e.target.value;
|
|
|
setData(Object.assign({}, data));
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
|
|
|
value: 0,
|
|
|
children: "\u5168\u90E8\u56FA\u5B9A\u8BD5\u9898"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
|
|
|
className: "ml20",
|
|
|
value: 1,
|
|
|
children: "\u968F\u673A\u62BD\u9898"
|
|
|
})]
|
|
|
}), data.send_type === 1 && /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
className: "mt20",
|
|
|
style: {
|
|
|
marginLeft: 94
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(col/* default */.Z, {
|
|
|
children: ["\u7B80\u5355\u9898\u6570", /*#__PURE__*/(0,jsx_runtime.jsx)(input_number/* default */.Z, {
|
|
|
precision: 0,
|
|
|
disabled: disabled || !(workList !== null && workList !== void 0 && (_workList$homework_st3 = workList.homework_status) !== null && _workList$homework_st3 !== void 0 && _workList$homework_st3.includes("未发布")),
|
|
|
placeholder: "\u6700\u5927".concat(data.difficult_count[0] || 0),
|
|
|
min: 0,
|
|
|
max: data.difficult_count[0] || 0,
|
|
|
value: data.difficult_settings[0],
|
|
|
onChange: function onChange(e) {
|
|
|
data.difficult_settings[0] = e;
|
|
|
setData(Object.assign({}, data));
|
|
|
},
|
|
|
className: "ml10 mr20"
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(col/* default */.Z, {
|
|
|
children: ["\u9002\u4E2D\u9898\u6570", /*#__PURE__*/(0,jsx_runtime.jsx)(input_number/* default */.Z, {
|
|
|
precision: 0,
|
|
|
disabled: disabled || !(workList !== null && workList !== void 0 && (_workList$homework_st4 = workList.homework_status) !== null && _workList$homework_st4 !== void 0 && _workList$homework_st4.includes("未发布")),
|
|
|
placeholder: "\u6700\u5927".concat(data.difficult_count[1] || 0),
|
|
|
min: 0,
|
|
|
max: data.difficult_count[1] || 0,
|
|
|
value: data.difficult_settings[1],
|
|
|
onChange: function onChange(e) {
|
|
|
data.difficult_settings[1] = e;
|
|
|
setData(Object.assign({}, data));
|
|
|
},
|
|
|
className: "ml10 mr20"
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(col/* default */.Z, {
|
|
|
children: ["\u56F0\u96BE\u9898\u6570", /*#__PURE__*/(0,jsx_runtime.jsx)(input_number/* default */.Z, {
|
|
|
precision: 0,
|
|
|
disabled: disabled || !(workList !== null && workList !== void 0 && (_workList$homework_st5 = workList.homework_status) !== null && _workList$homework_st5 !== void 0 && _workList$homework_st5.includes("未发布")),
|
|
|
placeholder: "\u6700\u5927".concat(data.difficult_count[2] || 0),
|
|
|
min: 0,
|
|
|
max: data.difficult_count[2] || 0,
|
|
|
value: data.difficult_settings[2],
|
|
|
onChange: function onChange(e) {
|
|
|
data.difficult_settings[2] = e;
|
|
|
setData(Object.assign({}, data));
|
|
|
},
|
|
|
className: "ml10 mr20"
|
|
|
})]
|
|
|
})]
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: "mt30",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("h1", {
|
|
|
className: "mb10",
|
|
|
children: "\u53D1\u5E03\u8BBE\u7F6E"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("label", {
|
|
|
className: "mr20",
|
|
|
children: "\u53D1\u5E03\u65B9\u5F0F"
|
|
|
}), " ", /*#__PURE__*/(0,jsx_runtime.jsxs)(es_radio/* default.Group */.ZP.Group, {
|
|
|
disabled: disabled || !(workList !== null && workList !== void 0 && (_workList$homework_st6 = workList.homework_status) !== null && _workList$homework_st6 !== void 0 && _workList$homework_st6.includes("未发布")) || !((_classroomList$Assist4 = classroomList.AssistantObject.hack) !== null && _classroomList$Assist4 !== void 0 && _classroomList$Assist4.can_publish) && (0,authority/* isAssistant */.Rm)(),
|
|
|
value: data.unified_setting,
|
|
|
onChange: function onChange(e) {
|
|
|
var _workList$homework_st7;
|
|
|
if (!(workList !== null && workList !== void 0 && (_workList$homework_st7 = workList.homework_status) !== null && _workList$homework_st7 !== void 0 && _workList$homework_st7.includes("未发布"))) {
|
|
|
message/* default */.ZP.error("\u5DF2\u53D1\u5E03\uFF0C\u4E0D\u80FD\u518D\u4FEE\u6539\u7EDF\u4E00\u8BBE\u7F6E");
|
|
|
return;
|
|
|
}
|
|
|
data.unified_setting = !data.unified_setting;
|
|
|
if (!data.unified_setting) {
|
|
|
data.unified_late = false;
|
|
|
}
|
|
|
setData(Object.assign({}, data));
|
|
|
if (data.unified_setting === false && groupSettings == '') {
|
|
|
setGroupSetting(groupSettings.concat({}));
|
|
|
return;
|
|
|
}
|
|
|
if (data.unified_setting) {
|
|
|
setGroupSetting([]);
|
|
|
setRepairSetting([{
|
|
|
late_minus_score: 5
|
|
|
}]);
|
|
|
}
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
|
|
|
value: true,
|
|
|
disabled: !(workSetting !== null && workSetting !== void 0 && workSetting.manage_all_group),
|
|
|
children: "\u7EDF\u4E00\u53D1\u5E03"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
|
|
|
className: "ml20",
|
|
|
disabled: (workSetting === null || workSetting === void 0 || (_workSetting$group_se4 = workSetting.group_settings) === null || _workSetting$group_se4 === void 0 ? void 0 : _workSetting$group_se4.length) === 0,
|
|
|
value: false,
|
|
|
children: "\u5206\u73ED\u53D1\u5E03"
|
|
|
})]
|
|
|
}), (workSetting === null || workSetting === void 0 || (_workSetting$group_se5 = workSetting.group_settings) === null || _workSetting$group_se5 === void 0 ? void 0 : _workSetting$group_se5.length) === 0 && /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
|
|
|
style: {
|
|
|
marginLeft: '65px',
|
|
|
color: 'rgba(0, 0, 0, 0.25)'
|
|
|
},
|
|
|
children: "\uFF08\u672C\u8BFE\u5802\u65E0\u5206\u73ED\uFF0C\u4EC5\u652F\u6301\u9009\u62E9\u201C\u7EDF\u4E00\u53D1\u5E03\u201C\uFF09"
|
|
|
})]
|
|
|
}), data.unified_setting && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
style: {
|
|
|
marginLeft: 50
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
align: "middle",
|
|
|
className: "mt25 pl30",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
children: "\u53D1\u5E03\u65F6\u95F4"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
className: "ml10",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(date_picker["default"], {
|
|
|
style: {
|
|
|
width: 170
|
|
|
},
|
|
|
placeholder: '请选择发布时间',
|
|
|
showTime: {
|
|
|
format: 'HH:mm'
|
|
|
},
|
|
|
allowClear: false
|
|
|
// showTime={{ format: 'HH:mm',defaultValue: moment(HalfPastOne(), 'HH:mm') }}
|
|
|
,
|
|
|
format: "YYYY-MM-DD HH:mm",
|
|
|
disabledDate: function disabledDate(current) {
|
|
|
return (0,Releasesetting/* disabledDate */.Q8)(current, workSetting === null || workSetting === void 0 ? void 0 : workSetting.course_end_date);
|
|
|
},
|
|
|
disabledTime: function disabledTime(current) {
|
|
|
return (0,Releasesetting/* disabledTime */.d0)(current);
|
|
|
}
|
|
|
// disabled={disabled || (!workList?.homework_status.includes("未发布")) ||(!classroomList.AssistantObject.hack?.can_publish && isAssistant())}
|
|
|
,
|
|
|
disabled: disabled || dayjs_min_default()() >= dayjs_min_default()(workSetting === null || workSetting === void 0 ? void 0 : workSetting.publish_time) || !((_classroomList$Assist5 = classroomList.AssistantObject.hack) !== null && _classroomList$Assist5 !== void 0 && _classroomList$Assist5.can_publish) && (0,authority/* isAssistant */.Rm)(),
|
|
|
value: data.publish_time ? dayjs_min_default()(data.publish_time) : '',
|
|
|
onChange: function onChange(value, time) {
|
|
|
data.publish_time = time;
|
|
|
if ((data.end_time == '' || !data.end_time) && data.unified_setting) {
|
|
|
data.end_time = dayjs_min_default()(value).add(1, 'month').format('YYYY-MM-DD HH:mm:ss');
|
|
|
}
|
|
|
setData(Object.assign({}, data));
|
|
|
}
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "c-grey-c ml10",
|
|
|
children: "(\u5B66\u751F\u6536\u5230\u4F5C\u4E1A\u7684\u65F6\u95F4)"
|
|
|
})
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
align: "middle",
|
|
|
className: "mt25 pl30",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
children: "\u622A\u6B62\u65F6\u95F4"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
className: "ml10",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(date_picker["default"], {
|
|
|
style: {
|
|
|
width: 170
|
|
|
},
|
|
|
allowClear: false,
|
|
|
placeholder: '请选择截止时间',
|
|
|
showTime: {
|
|
|
format: 'HH:mm',
|
|
|
defaultValue: dayjs_min_default()((0,util/* HalfPastOne */.U6)(), 'HH:mm')
|
|
|
},
|
|
|
format: "YYYY-MM-DD HH:mm",
|
|
|
disabled: (workSetting === null || workSetting === void 0 ? void 0 : workSetting.allow_late) && (workSetting === null || workSetting === void 0 ? void 0 : workSetting.homework_status.includes("已截止")) || disabled || (workSetting === null || workSetting === void 0 ? void 0 : workSetting.allow_late) && dayjs_min_default()() >= dayjs_min_default()(workSetting === null || workSetting === void 0 ? void 0 : workSetting.end_time) || !((_classroomList$Assist6 = classroomList.AssistantObject.hack) !== null && _classroomList$Assist6 !== void 0 && _classroomList$Assist6.can_publish) && (0,authority/* isAssistant */.Rm)(),
|
|
|
disabledDate: function disabledDate(current) {
|
|
|
return (0,Releasesetting/* disabledDate */.Q8)(current, workSetting === null || workSetting === void 0 ? void 0 : workSetting.course_end_date, data.publish_time);
|
|
|
},
|
|
|
disabledTime: function disabledTime(current) {
|
|
|
return (0,Releasesetting/* disabledTime */.d0)(current, data.publish_time);
|
|
|
},
|
|
|
value: data.end_time ? dayjs_min_default()(data.end_time) : '',
|
|
|
onChange: function onChange(value, time) {
|
|
|
data.end_time = time;
|
|
|
setData(Object.assign({}, data));
|
|
|
}
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "c-grey-c ml10",
|
|
|
children: "(\u5B66\u751F\u201C\u6309\u65F6\u201D\u63D0\u4EA4\u4F5C\u54C1\u7684\u65F6\u95F4\u622A\u70B9)"
|
|
|
})
|
|
|
})]
|
|
|
})]
|
|
|
}), !data.unified_setting && ((_groupSettings2 = groupSettings) === null || _groupSettings2 === void 0 ? void 0 : _groupSettings2.length) > 0 && /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
style: {
|
|
|
marginTop: 30,
|
|
|
paddingTop: 20,
|
|
|
marginLeft: 80,
|
|
|
borderTop: '1px solid #eee'
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
span: 24,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
span: 10
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
span: 10,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
className: "c-grey-c ml30",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
flex: "1",
|
|
|
children: "(\u5B66\u751F\u6536\u5230\u4F5C\u4E1A\u65F6\u95F4)"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
flex: "1",
|
|
|
children: "(\u5B66\u751F\u201C\u6309\u65F6\u201D\u63D0\u4EA4\u4F5C\u54C1\u65F6\u95F4\u622A\u70B9)"
|
|
|
})]
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
span: 4
|
|
|
})]
|
|
|
})
|
|
|
}), groupSettings && groupSettings.map(function (v, k) {
|
|
|
var _findGroupItemById, _workSetting$homework, _findGroupItemById2, _workSetting$group_se6;
|
|
|
console.log((_findGroupItemById = findGroupItemById(v.id)) === null || _findGroupItemById === void 0 ? void 0 : _findGroupItemById.publish_time, "发布时间");
|
|
|
console.log(groupEndTimeDisabled(v.id), "截止时间");
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
span: 24,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
gutter: [8, 16],
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
span: 10,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
gutter: [8, 16],
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(col/* default */.Z, {
|
|
|
children: ["\u53D1\u5E03\u89C4\u5219 ", k + 1]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
flex: '1',
|
|
|
style: {
|
|
|
maxWidth: 300
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_select["default"], {
|
|
|
disabled: disabled ? disabled : workSetting !== null && workSetting !== void 0 && (_workSetting$homework = workSetting.homework_status) !== null && _workSetting$homework !== void 0 && _workSetting$homework.includes("未发布") && v.id || dayjs_min_default()() < dayjs_min_default()(v === null || v === void 0 ? void 0 : v.publish_time) ? false : v !== null && v !== void 0 && v.publish_time ? true : false,
|
|
|
className: "ml20",
|
|
|
mode: "multiple",
|
|
|
style: {
|
|
|
width: '100%'
|
|
|
},
|
|
|
value: v.group_name,
|
|
|
placeholder: "\u8BF7\u9009\u62E9\u5206\u73ED\u540D\u79F0",
|
|
|
onChange: function onChange(value) {
|
|
|
var _classroomList$Assist7;
|
|
|
if (!((_classroomList$Assist7 = classroomList.AssistantObject.hack) !== null && _classroomList$Assist7 !== void 0 && _classroomList$Assist7.can_publish) && (0,authority/* isAssistant */.Rm)()) {
|
|
|
message/* default */.ZP.warning('您未获取此权限,需向管理员申请权限才能使用此功能');
|
|
|
return;
|
|
|
}
|
|
|
groupSettings[k]['group_name'] = value;
|
|
|
groupSettings[k]['group_id'] = v.group_id;
|
|
|
var items = (0,lodash.flattenDeep)(groupSettings.map(function (e) {
|
|
|
return e.group_name;
|
|
|
}));
|
|
|
var newRepairSettings = repairSettings.map(function (e) {
|
|
|
var ar = (e === null || e === void 0 ? void 0 : e.group_name) || [];
|
|
|
return objectSpread2_default()(objectSpread2_default()({}, e), {}, {
|
|
|
group_name: (0,lodash.remove)(ar, function (k) {
|
|
|
return items.includes(k);
|
|
|
})
|
|
|
});
|
|
|
});
|
|
|
setRepairSetting(newRepairSettings);
|
|
|
setGroupSetting(groupSettings.slice());
|
|
|
},
|
|
|
children: workSetting.group_settings && workSetting.group_settings.map(function (v) {
|
|
|
if (!groupSettings.map(function (item) {
|
|
|
return item.group_name;
|
|
|
}).toString().split(",").includes(String(v.group_name))) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(Option, {
|
|
|
value: v.group_name,
|
|
|
children: v.group_name
|
|
|
}, v.id);
|
|
|
}
|
|
|
})
|
|
|
})
|
|
|
})]
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
span: 10,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: "ml30",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(RangePicker, {
|
|
|
allowClear: false,
|
|
|
ranges: {
|
|
|
'此刻': [v.publish_time ? dayjs_min_default()(v.publish_time) : dayjs_min_default()(), dayjs_min_default()()]
|
|
|
},
|
|
|
disabled: disabled ? disabled : dayjs_min_default()() <= dayjs_min_default()((_findGroupItemById2 = findGroupItemById(v.id)) === null || _findGroupItemById2 === void 0 ? void 0 : _findGroupItemById2.publish_time) ? false : [true, groupEndTimeDisabled(v.id)]
|
|
|
// disabled={(disabled ? disabled : (moment() <= moment(findGroupItemById(v.id?.[0])?.publish_time)) ? false : [true, groupEndTimeDisabled(v.id?.[0])])}
|
|
|
,
|
|
|
style: {
|
|
|
width: 400
|
|
|
},
|
|
|
placeholder: ['请选择发布时间', '请选择截止时间'],
|
|
|
disabledDate: function disabledDate(current) {
|
|
|
return (0,Releasesetting/* disabledDate */.Q8)(current, workSetting === null || workSetting === void 0 ? void 0 : workSetting.course_end_date);
|
|
|
},
|
|
|
disabledTime: function disabledTime(current) {
|
|
|
return (0,Releasesetting/* disabledTime */.d0)(current);
|
|
|
},
|
|
|
showTime: {
|
|
|
format: 'HH:mm',
|
|
|
defaultValue: [dayjs_min_default()((0,util/* HalfPastOne */.U6)(), 'HH:mm'), dayjs_min_default()((0,util/* HalfPastOne */.U6)(), 'HH:mm')]
|
|
|
},
|
|
|
format: "YYYY-MM-DD HH:mm",
|
|
|
value: v.publish_time && [dayjs_min_default()(v.publish_time), v.end_time ? dayjs_min_default()(v.end_time) : undefined],
|
|
|
onChange: function onChange(self, item) {
|
|
|
var _classroomList$Assist8;
|
|
|
if (!((_classroomList$Assist8 = classroomList.AssistantObject.hack) !== null && _classroomList$Assist8 !== void 0 && _classroomList$Assist8.can_publish) && (0,authority/* isAssistant */.Rm)()) {
|
|
|
message/* default */.ZP.warning('您未获取此权限,需向管理员申请权限才能使用此功能');
|
|
|
return;
|
|
|
}
|
|
|
groupSettings[k]['publish_time'] = item[0];
|
|
|
groupSettings[k]['end_time'] = item[1];
|
|
|
setGroupSetting(toConsumableArray_default()(groupSettings));
|
|
|
}
|
|
|
})
|
|
|
})
|
|
|
}), !disabled && /*#__PURE__*/(0,jsx_runtime.jsxs)(col/* default */.Z, {
|
|
|
span: 4,
|
|
|
children: [((v === null || v === void 0 ? void 0 : v.publish_time) && dayjs_min_default()() < dayjs_min_default()(v === null || v === void 0 ? void 0 : v.publish_time) || !(v !== null && v !== void 0 && v.publish_time)) && k != 0 && /*#__PURE__*/(0,jsx_runtime.jsx)(DeleteOutlined/* default */.Z, {
|
|
|
onClick: function onClick() {
|
|
|
var _classroomList$Assist9;
|
|
|
if (!((_classroomList$Assist9 = classroomList.AssistantObject.hack) !== null && _classroomList$Assist9 !== void 0 && _classroomList$Assist9.can_publish) && (0,authority/* isAssistant */.Rm)()) {
|
|
|
message/* default */.ZP.warning('您未获取此权限,需向管理员申请权限才能使用此功能');
|
|
|
return;
|
|
|
}
|
|
|
// 数据同步
|
|
|
var repairSettingsCopy = (0,lodash.cloneDeep)(repairSettings);
|
|
|
repairSettingsCopy.forEach(function (i, key) {
|
|
|
if (i.group_name) {
|
|
|
i.group_name = i.group_name.filter(function (item) {
|
|
|
var _groupSettings$k$grou;
|
|
|
return !((_groupSettings$k$grou = groupSettings[k].group_name) !== null && _groupSettings$k$grou !== void 0 && _groupSettings$k$grou.includes(item));
|
|
|
});
|
|
|
}
|
|
|
});
|
|
|
setRepairSetting(repairSettingsCopy);
|
|
|
groupSettings = groupSettings.filter(function (val, key) {
|
|
|
return k !== key;
|
|
|
});
|
|
|
setGroupSetting(groupSettings.slice());
|
|
|
setTimeout(function () {
|
|
|
return setGroupSetting(groupSettings.slice());
|
|
|
}, 10);
|
|
|
}
|
|
|
}), groupSettings.length < (workSetting === null || workSetting === void 0 || (_workSetting$group_se6 = workSetting.group_settings) === null || _workSetting$group_se6 === void 0 ? void 0 : _workSetting$group_se6.length) && /*#__PURE__*/(0,jsx_runtime.jsx)(PlusCircleOutlined/* default */.Z, {
|
|
|
className: "c-green ml20",
|
|
|
onClick: function onClick() {
|
|
|
setGroupSetting(groupSettings.concat({}));
|
|
|
}
|
|
|
})]
|
|
|
})]
|
|
|
})
|
|
|
}, k);
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
className: "mt30",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(row/* default */.Z, {
|
|
|
align: "middle",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("h1", {
|
|
|
style: {
|
|
|
marginBottom: 0
|
|
|
},
|
|
|
children: "\u8865\u4EA4\u8BBE\u7F6E"
|
|
|
})
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(col/* default */.Z, {
|
|
|
span: 24,
|
|
|
className: "mt10",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_checkbox/* default */.Z, {
|
|
|
checked: data.allow_late
|
|
|
// disabled={disabled || allowLateDisabled}
|
|
|
,
|
|
|
disabled: disabled || (workSetting === null || workSetting === void 0 ? void 0 : workSetting.allow_late),
|
|
|
onChange: function onChange(e) {
|
|
|
var _classroomList$Assist10;
|
|
|
if (!((_classroomList$Assist10 = classroomList.AssistantObject.hack) !== null && _classroomList$Assist10 !== void 0 && _classroomList$Assist10.can_late) && (0,authority/* isAssistant */.Rm)()) {
|
|
|
message/* default */.ZP.warning('您未获取此权限,需向管理员申请权限才能使用此功能');
|
|
|
return;
|
|
|
}
|
|
|
if (e.target.checked) {
|
|
|
modal/* default */.Z.warning({
|
|
|
title: '开启补交提示',
|
|
|
width: 480,
|
|
|
centered: true,
|
|
|
content: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
style: {
|
|
|
padding: 10,
|
|
|
background: '#f5f6f9'
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
children: "1.\u5F00\u542F\u8865\u4EA4\u540E\u4E0D\u53EF\u5173\u95ED\uFF0C\u8865\u4EA4\u65B9\u5F0F\u63D0\u4EA4\u4FDD\u5B58\u540E\u4E0D\u53EF\u4FEE\u6539\uFF1B"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
children: "2.\u8865\u4EA4\u622A\u6B62\u65F6\u95F4\u5FC5\u987B\u665A\u4E8E\u4F5C\u4E1A\u622A\u6B62\u65F6\u95F4\uFF1B"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
children: "3.\u73ED\u7EA7\u9636\u6BB5\u8FDB\u5165\u201C\u8865\u4EA4\u4E2D\u201D\u5219\u4E0D\u53EF\u53D8\u66F4\u4F5C\u4E1A\u622A\u6B62\u65F6\u95F4\u3002"
|
|
|
})]
|
|
|
})
|
|
|
});
|
|
|
}
|
|
|
data.allow_late = !data.allow_late;
|
|
|
if (repairSettings == '') {
|
|
|
setRepairSetting([{
|
|
|
late_minus_score: 5
|
|
|
}]);
|
|
|
}
|
|
|
setData(Object.assign({}, data));
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
style: {
|
|
|
fontSize: "14px"
|
|
|
},
|
|
|
children: "\u5F00\u542F\u8865\u4EA4"
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
|
|
|
overlayStyle: {
|
|
|
width: 380,
|
|
|
maxWidth: 380
|
|
|
},
|
|
|
title: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
style: {
|
|
|
display: 'flex',
|
|
|
flexFlow: 'column'
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
children: "\u8865\u4EA4\u89C4\u5219\u8BF4\u660E"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
children: "\u5F00\u542F\u8865\u4EA4\uFF0C\u5B66\u751F\u53EA\u5728\u8865\u4EA4\u65F6\u95F4\u5185\u624D\u901A\u5173\u5219\u6263\u9664\u5206\u503C\uFF0C\u672A\u901A\u5173\u4E0D\u6263\u5206\uFF1B"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
children: "\u5B66\u751F\u5728\u6B63\u5E38\u4F5C\u4E1A\u89C4\u5B9A\u65F6\u95F4\u5185\u901A\u5173\uFF0C\u5728\u8865\u4EA4\u9636\u6BB5\u518D\u6B21\u901A\u5173\u4E0D\u6263\u5206\u3002"
|
|
|
})]
|
|
|
}),
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(QuestionCircleOutlined/* default */.Z, {})
|
|
|
})]
|
|
|
})]
|
|
|
}), (data === null || data === void 0 ? void 0 : data.allow_late) && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
style: {
|
|
|
marginLeft: 50
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: "ml30 mt20",
|
|
|
style: {
|
|
|
marginLeft: 50
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
children: "\u8865\u4EA4\u65B9\u5F0F\uFF1A"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(es_radio/* default.Group */.ZP.Group, {
|
|
|
disabled: disabled || (workSetting === null || workSetting === void 0 ? void 0 : workSetting.anonymous_comment) || (workSetting === null || workSetting === void 0 ? void 0 : workSetting.allow_late),
|
|
|
value: data.unified_late,
|
|
|
onChange: function onChange(e) {
|
|
|
var _classroomList$Assist11;
|
|
|
if ((0,authority/* isAssistant */.Rm)() && !((_classroomList$Assist11 = classroomList.AssistantObject.hack) !== null && _classroomList$Assist11 !== void 0 && _classroomList$Assist11.can_late)) {
|
|
|
message/* default */.ZP.warning('您未获取此权限,需向管理员申请权限才能使用此功能');
|
|
|
return;
|
|
|
}
|
|
|
data.unified_late = e.target.value;
|
|
|
if (repairSettings == '' && !e.target.value) {
|
|
|
setRepairSetting([{
|
|
|
late_minus_score: 5
|
|
|
}]);
|
|
|
}
|
|
|
setData(objectSpread2_default()({}, data));
|
|
|
},
|
|
|
children: [(data === null || data === void 0 ? void 0 : data.unified_setting) && /*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
|
|
|
value: true,
|
|
|
disabled: !(workSetting !== null && workSetting !== void 0 && workSetting.manage_all_group),
|
|
|
children: " \u7EDF\u4E00\u8865\u4EA4 "
|
|
|
}), (workSetting === null || workSetting === void 0 || (_workSetting$group_se7 = workSetting.group_settings) === null || _workSetting$group_se7 === void 0 ? void 0 : _workSetting$group_se7.length) && /*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
|
|
|
value: false,
|
|
|
children: " \u5206\u73ED\u8865\u4EA4 "
|
|
|
})]
|
|
|
})]
|
|
|
}), data !== null && data !== void 0 && data.unified_late ? /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
align: "middle",
|
|
|
className: "mt25 pl30",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
children: "\u8865\u4EA4\u6263\u5206:"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
className: "ml5",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(PercentSelect/* default */.Z, {
|
|
|
disabled: disabled || unifiedLateTimeDisabled,
|
|
|
value: {
|
|
|
type: data.penalty_type,
|
|
|
inputValue: data.late_minus_score
|
|
|
},
|
|
|
onChange: function onChange(v) {
|
|
|
var _classroomList$Assist12;
|
|
|
if ((0,authority/* isAssistant */.Rm)() && !((_classroomList$Assist12 = classroomList.AssistantObject.hack) !== null && _classroomList$Assist12 !== void 0 && _classroomList$Assist12.can_late)) {
|
|
|
message/* default */.ZP.warning('您未获取此权限,需向管理员申请权限才能使用此功能');
|
|
|
return;
|
|
|
}
|
|
|
setData(objectSpread2_default()(objectSpread2_default()({}, data), {}, {
|
|
|
late_minus_score: v.inputValue,
|
|
|
penalty_type: v.type
|
|
|
}));
|
|
|
}
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
flex: "1",
|
|
|
className: "ml5",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "c-grey-c ml10",
|
|
|
children: data.penalty_type === PercentSelect/* SelectType */.Q.Number ? '(补交时按照学生总成绩扣分)' : '(学生成绩将扣除补交关卡分值的百分比)'
|
|
|
})
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
align: "middle",
|
|
|
className: "mt25 pl30",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
children: "\u8865\u4EA4\u622A\u6B62\u65F6\u95F4:"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
className: "ml5",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(date_picker["default"], {
|
|
|
allowClear: false,
|
|
|
style: {
|
|
|
width: 170
|
|
|
},
|
|
|
placeholder: '请选择截止时间',
|
|
|
showTime: {
|
|
|
format: 'HH:mm',
|
|
|
defaultValue: dayjs_min_default()((0,util/* HalfPastOne */.U6)(), 'HH:mm')
|
|
|
},
|
|
|
format: "YYYY-MM-DD HH:mm",
|
|
|
disabled: disabled || unifiedLateTimeDisabled,
|
|
|
value: data.late_time ? dayjs_min_default()(data.late_time) : '',
|
|
|
disabledDate: function disabledDate(current) {
|
|
|
return (0,Releasesetting/* disabledDate */.Q8)(current, workSetting === null || workSetting === void 0 ? void 0 : workSetting.course_end_date);
|
|
|
},
|
|
|
disabledTime: function disabledTime(current) {
|
|
|
return (0,Releasesetting/* disabledTime */.d0)(current);
|
|
|
},
|
|
|
onChange: function onChange(value, time) {
|
|
|
var _classroomList$Assist13;
|
|
|
if ((0,authority/* isAssistant */.Rm)() && !((_classroomList$Assist13 = classroomList.AssistantObject.hack) !== null && _classroomList$Assist13 !== void 0 && _classroomList$Assist13.can_late)) {
|
|
|
message/* default */.ZP.warning('您未获取此权限,需向管理员申请权限才能使用此功能');
|
|
|
return;
|
|
|
}
|
|
|
data.late_time = time;
|
|
|
setData(Object.assign({}, data));
|
|
|
}
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "c-grey-c ml10",
|
|
|
children: "(\u5B66\u751F\u201C\u5EF6\u65F6\u201D\u63D0\u4EA4\u4F5C\u54C1\u7684\u65F6\u95F4\u622A\u70B9)"
|
|
|
})
|
|
|
})]
|
|
|
})]
|
|
|
}) : repairSettings.map(function (v, k) {
|
|
|
var _workList$homework_st8;
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
span: 24,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
className: "mt25",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(col/* default */.Z, {
|
|
|
style: {
|
|
|
marginLeft: 30
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
children: ["\u8865\u4EA4\u89C4\u5219", k + 1, "\uFF1A"]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_select["default"], {
|
|
|
disabled: disabled || !(workList !== null && workList !== void 0 && (_workList$homework_st8 = workList.homework_status) !== null && _workList$homework_st8 !== void 0 && _workList$homework_st8.includes("未发布")) && v.id || (workSetting === null || workSetting === void 0 ? void 0 : workSetting.anonymous_comment),
|
|
|
mode: "multiple",
|
|
|
style: {
|
|
|
width: 306
|
|
|
},
|
|
|
value: typeof v.group_name === 'string' ? [v.group_name] : v.group_name,
|
|
|
placeholder: "\u8BF7\u9009\u62E9\u5206\u73ED\u540D\u79F0",
|
|
|
onChange: function onChange(value) {
|
|
|
var _classroomList$Assist14;
|
|
|
if ((0,authority/* isAssistant */.Rm)() && !((_classroomList$Assist14 = classroomList.AssistantObject.hack) !== null && _classroomList$Assist14 !== void 0 && _classroomList$Assist14.can_late)) {
|
|
|
message/* default */.ZP.warning('您未获取此权限,需向管理员申请权限才能使用此功能');
|
|
|
return;
|
|
|
}
|
|
|
repairSettings[k]['group_name'] = value;
|
|
|
repairSettings[k]['group_id'] = v.group_id;
|
|
|
setRepairSetting(repairSettings.slice());
|
|
|
},
|
|
|
children: workSetting.group_settings && workSetting.group_settings.map(function (v) {
|
|
|
if (data !== null && data !== void 0 && data.unified_setting) {
|
|
|
if (!repairSettings.map(function (item) {
|
|
|
return item.group_name;
|
|
|
}).toString().split(",").includes(String(v.group_name))) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(Option, {
|
|
|
value: v.group_name,
|
|
|
children: v.group_name
|
|
|
}, v.id);
|
|
|
}
|
|
|
}
|
|
|
if (!!groupSettings.map(function (item) {
|
|
|
return item.group_name;
|
|
|
}).toString().split(",").includes(String(v.group_name))) {
|
|
|
// if (!repairSettings.map((item: any) => item.group_name).toString().split(",").includes(String(v.group_name)) && moment(v.end_time) <= moment()) {
|
|
|
if (!repairSettings.map(function (item) {
|
|
|
return item.group_name;
|
|
|
}).toString().split(",").includes(String(v.group_name))) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(Option, {
|
|
|
value: v.group_name,
|
|
|
children: v.group_name
|
|
|
}, v.id);
|
|
|
}
|
|
|
}
|
|
|
})
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(col/* default */.Z, {
|
|
|
className: "ml20",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
children: "\u8865\u4EA4\u6263\u5206\uFF1A"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(PercentSelect/* default */.Z, {
|
|
|
disabled: disabled || groupLateTimeDisabled(v.id),
|
|
|
value: {
|
|
|
type: v.penalty_type,
|
|
|
inputValue: v.late_minus_score
|
|
|
},
|
|
|
onChange: function onChange(v) {
|
|
|
var _classroomList$Assist15;
|
|
|
if ((0,authority/* isAssistant */.Rm)() && !((_classroomList$Assist15 = classroomList.AssistantObject.hack) !== null && _classroomList$Assist15 !== void 0 && _classroomList$Assist15.can_late)) {
|
|
|
message/* default */.ZP.warning('您未获取此权限,需向管理员申请权限才能使用此功能');
|
|
|
return;
|
|
|
}
|
|
|
repairSettings[k]['late_minus_score'] = v.inputValue;
|
|
|
repairSettings[k]['penalty_type'] = v.type;
|
|
|
setRepairSetting(toConsumableArray_default()(repairSettings));
|
|
|
}
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(col/* default */.Z, {
|
|
|
className: "ml20",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
children: "\u8865\u4EA4\u622A\u6B62\u65F6\u95F4\uFF1A"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(date_picker["default"], {
|
|
|
disabled: disabled || groupLateTimeDisabled(v.id),
|
|
|
style: {
|
|
|
width: 200
|
|
|
},
|
|
|
showTime: {
|
|
|
format: 'HH:mm',
|
|
|
defaultValue: dayjs_min_default()((0,util/* HalfPastOne */.U6)(), 'HH:mm')
|
|
|
},
|
|
|
placeholder: '请选择截止时间',
|
|
|
disabledDate: function disabledDate(current) {
|
|
|
return (0,Releasesetting/* disabledDate */.Q8)(current, workSetting === null || workSetting === void 0 ? void 0 : workSetting.course_end_date);
|
|
|
},
|
|
|
disabledTime: function disabledTime(current) {
|
|
|
return (0,Releasesetting/* disabledTime */.d0)(current);
|
|
|
},
|
|
|
format: "YYYY-MM-DD HH:mm",
|
|
|
value: v !== null && v !== void 0 && v.late_time ? dayjs_min_default()(v.late_time) : undefined,
|
|
|
onChange: function onChange(self, item) {
|
|
|
var _classroomList$Assist16;
|
|
|
if ((0,authority/* isAssistant */.Rm)() && !((_classroomList$Assist16 = classroomList.AssistantObject.hack) !== null && _classroomList$Assist16 !== void 0 && _classroomList$Assist16.can_late)) {
|
|
|
message/* default */.ZP.warning('您未获取此权限,需向管理员申请权限才能使用此功能');
|
|
|
return;
|
|
|
}
|
|
|
repairSettings[k]['late_time'] = item;
|
|
|
setRepairSetting(toConsumableArray_default()(repairSettings));
|
|
|
}
|
|
|
})]
|
|
|
}), !disabled && /*#__PURE__*/(0,jsx_runtime.jsxs)(col/* default */.Z, {
|
|
|
className: "ml20",
|
|
|
children: [k > 0 && !v.id && /*#__PURE__*/(0,jsx_runtime.jsx)(DeleteOutlined/* default */.Z, {
|
|
|
onClick: function onClick() {
|
|
|
repairSettings = repairSettings.filter(function (val, key) {
|
|
|
return k !== key;
|
|
|
});
|
|
|
setRepairSetting(repairSettings.slice());
|
|
|
setTimeout(function () {
|
|
|
return setRepairSetting(repairSettings.slice());
|
|
|
}, 10);
|
|
|
}
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(PlusCircleOutlined/* default */.Z, {
|
|
|
className: "c-green ml20",
|
|
|
onClick: function onClick() {
|
|
|
var _classroomList$Assist17;
|
|
|
if ((0,authority/* isAssistant */.Rm)() && !((_classroomList$Assist17 = classroomList.AssistantObject.hack) !== null && _classroomList$Assist17 !== void 0 && _classroomList$Assist17.can_late)) {
|
|
|
message/* default */.ZP.warning('您未获取此权限,需向管理员申请权限才能使用此功能');
|
|
|
return;
|
|
|
}
|
|
|
setRepairSetting(repairSettings.concat({
|
|
|
penalty_type: PercentSelect/* SelectType */.Q.Percent,
|
|
|
late_minus_score: 20
|
|
|
}));
|
|
|
}
|
|
|
})]
|
|
|
})]
|
|
|
})
|
|
|
}, k);
|
|
|
})]
|
|
|
})]
|
|
|
});
|
|
|
};
|
|
|
/* harmony default export */ var ConfigWorks_Releasesetting = ((0,_umi_production_exports.connect)(function (_ref3) {
|
|
|
var shixunHomeworks = _ref3.shixunHomeworks,
|
|
|
classroomList = _ref3.classroomList,
|
|
|
loading = _ref3.loading;
|
|
|
return {
|
|
|
shixunHomeworks: shixunHomeworks,
|
|
|
loading: loading.effects,
|
|
|
classroomList: classroomList
|
|
|
};
|
|
|
})(Releasesetting_WorkList));
|
|
|
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/Detail/components/ConfigWorks/publicsetting.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
function range(start, end) {
|
|
|
var result = [];
|
|
|
for (var i = start; i < end; i++) {
|
|
|
result.push(i);
|
|
|
}
|
|
|
return result;
|
|
|
}
|
|
|
var disabledTime = function disabledTime(current) {
|
|
|
var endDate = new Date();
|
|
|
var hour2 = dayjs_min_default()(current).format('HH');
|
|
|
if (dayjs_min_default()(current).isSame(dayjs_min_default()(endDate), 'day')) {
|
|
|
var hour = dayjs_min_default()(endDate).format('HH');
|
|
|
var minute = dayjs_min_default()(endDate).format('mm');
|
|
|
return {
|
|
|
disabledHours: function disabledHours() {
|
|
|
return range(0, 24).splice(1, hour * 1 - 1);
|
|
|
},
|
|
|
disabledMinutes: function disabledMinutes() {
|
|
|
console.log('禁止时间:', hour2, hour);
|
|
|
return dayjs_min_default()(current).isSame(dayjs_min_default()(endDate), 'hour') && hour2 <= hour ? range(0, 60).splice(0, minute) : range(60, 60);
|
|
|
}
|
|
|
};
|
|
|
} else if (dayjs_min_default()(current).isSame(dayjs_min_default()(), 'day')) {
|
|
|
var _hour = dayjs_min_default()().format('HH');
|
|
|
var _minute = dayjs_min_default()().format('mm');
|
|
|
return {
|
|
|
disabledHours: function disabledHours() {
|
|
|
return range(0, 24).splice(0, _hour);
|
|
|
},
|
|
|
disabledMinutes: function disabledMinutes() {
|
|
|
return hour2 <= _hour ? range(0, _minute) : range(60, 60);
|
|
|
}
|
|
|
};
|
|
|
} else {
|
|
|
return undefined;
|
|
|
}
|
|
|
};
|
|
|
var publicsetting_RangePicker = date_picker["default"].RangePicker;
|
|
|
var publicsetting_Option = es_select["default"].Option;
|
|
|
var publicsetting_WorkList = function WorkList(_ref) {
|
|
|
var _groupSettings2;
|
|
|
var shixunHomeworks = _ref.shixunHomeworks,
|
|
|
loading = _ref.loading,
|
|
|
dispatch = _ref.dispatch;
|
|
|
var params = (0,_umi_production_exports.useParams)();
|
|
|
var location = (0,_umi_production_exports.useLocation)();
|
|
|
var workSetting = shixunHomeworks.workSetting,
|
|
|
workList = shixunHomeworks.workList,
|
|
|
changeData = shixunHomeworks.changeData;
|
|
|
var _useState = (0,_react_17_0_2_react.useState)(true),
|
|
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
|
disabled = _useState2[0],
|
|
|
setDisabled = _useState2[1];
|
|
|
var _useState3 = (0,_react_17_0_2_react.useState)({}),
|
|
|
_useState4 = slicedToArray_default()(_useState3, 2),
|
|
|
filterSelect = _useState4[0],
|
|
|
setFilterSelect = _useState4[1];
|
|
|
var _useState5 = (0,_react_17_0_2_react.useState)(false),
|
|
|
_useState6 = slicedToArray_default()(_useState5, 2),
|
|
|
btnLoading = _useState6[0],
|
|
|
setBtnLoading = _useState6[1];
|
|
|
var _Form$useForm = es_form/* default */.Z.useForm(),
|
|
|
_Form$useForm2 = slicedToArray_default()(_Form$useForm, 1),
|
|
|
form = _Form$useForm2[0];
|
|
|
var _useState7 = (0,_react_17_0_2_react.useState)([]),
|
|
|
_useState8 = slicedToArray_default()(_useState7, 2),
|
|
|
groupSettings = _useState8[0],
|
|
|
setGroupSetting = _useState8[1];
|
|
|
var _useState9 = (0,_react_17_0_2_react.useState)([]),
|
|
|
_useState10 = slicedToArray_default()(_useState9, 2),
|
|
|
repairSettings = _useState10[0],
|
|
|
setRepairSetting = _useState10[1];
|
|
|
var _useState11 = (0,_react_17_0_2_react.useState)([]),
|
|
|
_useState12 = slicedToArray_default()(_useState11, 2),
|
|
|
ids = _useState12[0],
|
|
|
setids = _useState12[1];
|
|
|
var _useState13 = (0,_react_17_0_2_react.useState)({
|
|
|
unified_setting: false,
|
|
|
//是否统一设置
|
|
|
publish_time: '',
|
|
|
// string 统一设置的发布时间
|
|
|
end_time: '',
|
|
|
// string 统一设置的截止时间Ï
|
|
|
//分班设置
|
|
|
// group_settings: [
|
|
|
// // {
|
|
|
// // group_id: "",
|
|
|
// // group_name: "",
|
|
|
// // publish_time: "",
|
|
|
// // end_time: ""
|
|
|
// // }
|
|
|
// ],
|
|
|
//补交设置
|
|
|
// allow_late_settings: [
|
|
|
// // {
|
|
|
// // group_id: "",
|
|
|
// // group_name: "",
|
|
|
// // late_penalty: "",
|
|
|
// // late_time: ""
|
|
|
// // }
|
|
|
// ],
|
|
|
//shifou
|
|
|
allow_late: false,
|
|
|
//是否允许补交
|
|
|
unified_late: true,
|
|
|
//补交方式
|
|
|
late_time: '',
|
|
|
//补交截止时间
|
|
|
late_penalty: 0,
|
|
|
//迟交扣分
|
|
|
challenge_settings: [
|
|
|
// {
|
|
|
// challenge_id: "", //关卡id
|
|
|
// challenge_name: "", //关卡名称
|
|
|
// checked: false,// 是否选中
|
|
|
// challenge_score:“”关卡分值
|
|
|
// challenge_exp 关卡经验值
|
|
|
// difficulty: 关卡难易度
|
|
|
// }
|
|
|
],
|
|
|
work_efficiency: false,
|
|
|
//是否勾选效率分
|
|
|
shixun_evaluation: '',
|
|
|
//评分比例设置:0:均分, 1:经验值,2:自定义
|
|
|
answer_open_evaluation: false,
|
|
|
//查看答案 扣分false满分true
|
|
|
answer_public: false,
|
|
|
//公开答案
|
|
|
score_open: false,
|
|
|
//公开成绩
|
|
|
open_code: false,
|
|
|
//公开代码
|
|
|
rank_forbidden: false,
|
|
|
//排行榜
|
|
|
open_code_type: undefined,
|
|
|
comment_public: true,
|
|
|
//公开评论
|
|
|
total_score: '',
|
|
|
//总分值
|
|
|
eff_score: 0,
|
|
|
//效率分
|
|
|
rank_forbidden_start: '',
|
|
|
//封榜开始时间
|
|
|
rank_forbidden_end: '' //封榜结束时间
|
|
|
}),
|
|
|
_useState14 = slicedToArray_default()(_useState13, 2),
|
|
|
data = _useState14[0],
|
|
|
setData = _useState14[1];
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
getData();
|
|
|
return function () {
|
|
|
setGroupSetting([].concat());
|
|
|
};
|
|
|
}, []);
|
|
|
var getData = function getData() {
|
|
|
dispatch({
|
|
|
type: 'shixunHomeworks/getWorkSetting',
|
|
|
payload: objectSpread2_default()({}, params)
|
|
|
});
|
|
|
};
|
|
|
var disabledDate = function disabledDate(current) {
|
|
|
return current && current < dayjs_min_default()().startOf('day');
|
|
|
};
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
var _repairSettings;
|
|
|
if (!(workSetting !== null && workSetting !== void 0 && workSetting.course_id)) return;
|
|
|
Object.keys(data).map(function (item) {
|
|
|
data[item] = workSetting[item];
|
|
|
});
|
|
|
if (!data.allow_late || !data.unified_late) {
|
|
|
data.late_penalty = 5;
|
|
|
}
|
|
|
groupSettings = JSON.parse(JSON.stringify(workSetting.group_settings.map(function (e) {
|
|
|
return objectSpread2_default()(objectSpread2_default()({}, e), {}, {
|
|
|
group_name: [e.group_name]
|
|
|
});
|
|
|
}).filter(function (v) {
|
|
|
return v.publish_time !== null;
|
|
|
})));
|
|
|
repairSettings = JSON.parse(JSON.stringify(workSetting.allow_late_settings.map(function (e) {
|
|
|
return objectSpread2_default()(objectSpread2_default()({}, e), {}, {
|
|
|
group_name: [e.group_name]
|
|
|
});
|
|
|
}).filter(function (v) {
|
|
|
return v.rank_forbidden_start !== null;
|
|
|
})));
|
|
|
setData(objectSpread2_default()({}, data));
|
|
|
setGroupSetting(toConsumableArray_default()(groupSettings));
|
|
|
if (((_repairSettings = repairSettings) === null || _repairSettings === void 0 ? void 0 : _repairSettings.length) <= 0) {
|
|
|
setRepairSetting([{}]);
|
|
|
} else {
|
|
|
setRepairSetting(toConsumableArray_default()(repairSettings));
|
|
|
}
|
|
|
}, [workSetting]);
|
|
|
console.log(data, 'data');
|
|
|
var onHandleChange = function onHandleChange() {
|
|
|
var _groupSettings;
|
|
|
var bodyData = JSON.parse(JSON.stringify(data));
|
|
|
// bodyData.challenge_settings.filter((v: any) => !v.hide)
|
|
|
bodyData.categoryId = params.categoryId;
|
|
|
// if (bodyData.challenge_settings?.every((r: any) => !r.checked)) {
|
|
|
// message.warning('关卡不能全部设置为可不做');
|
|
|
// return;
|
|
|
// }
|
|
|
if (!data.unified_setting) groupSettings = (_groupSettings = groupSettings) === null || _groupSettings === void 0 ? void 0 : _groupSettings.map(function (item) {
|
|
|
var _workSetting$group_se;
|
|
|
if (!item.publish_time || !item.end_time) {
|
|
|
message/* default */.ZP.error('请把开始时间填写完整');
|
|
|
throw new String('请把开始时间填写完整');
|
|
|
}
|
|
|
if (!item.group_name) {
|
|
|
message/* default */.ZP.error('请选择分班名称');
|
|
|
throw new String('请选择分班名称');
|
|
|
}
|
|
|
item.group_name = typeof (item === null || item === void 0 ? void 0 : item.group_name) === 'string' ? [item === null || item === void 0 ? void 0 : item.group_name] : item === null || item === void 0 ? void 0 : item.group_name;
|
|
|
item.group_id = (_workSetting$group_se = workSetting.group_settings) === null || _workSetting$group_se === void 0 ? void 0 : _workSetting$group_se.filter(function (v) {
|
|
|
var _item$group_name;
|
|
|
return item === null || item === void 0 || (_item$group_name = item.group_name) === null || _item$group_name === void 0 ? void 0 : _item$group_name.includes(v.group_name);
|
|
|
}).map(function (v) {
|
|
|
return v.group_id || v.id;
|
|
|
}).toString().split(",");
|
|
|
return item;
|
|
|
});
|
|
|
bodyData.group_settings = groupSettings;
|
|
|
if (data.rank_forbidden) {
|
|
|
if (data.unified_setting) {
|
|
|
if (!data.rank_forbidden_start) {
|
|
|
message/* default */.ZP.error('请把开始时间填写完整');
|
|
|
throw new String('请把开始时间填写完整');
|
|
|
}
|
|
|
if (!data.rank_forbidden_end) {
|
|
|
message/* default */.ZP.error('请把截止时间填写完整');
|
|
|
throw new String('请把截止时间填写完整');
|
|
|
}
|
|
|
if (dayjs_min_default()(data.rank_forbidden_end) < dayjs_min_default()(data.rank_forbidden_start)) {
|
|
|
message/* default */.ZP.error('截止时间不能早于开始时间');
|
|
|
throw new String('截止时间不能早于开始时间');
|
|
|
}
|
|
|
} else {
|
|
|
var _repairSettings2;
|
|
|
repairSettings = (_repairSettings2 = repairSettings) === null || _repairSettings2 === void 0 ? void 0 : _repairSettings2.map(function (item) {
|
|
|
var _item$group_name2;
|
|
|
if (!item.rank_forbidden_start) {
|
|
|
message/* default */.ZP.error('请把开始时间填写完整');
|
|
|
throw new String('请把开始时间填写完整');
|
|
|
}
|
|
|
if (!item.rank_forbidden_end) {
|
|
|
message/* default */.ZP.error('请把截止时间填写完整');
|
|
|
throw new String('请把截止时间填写完整');
|
|
|
}
|
|
|
if (!item.group_name) {
|
|
|
message/* default */.ZP.error('请选择分班名称');
|
|
|
throw new String('请选择分班名称');
|
|
|
}
|
|
|
item.group_name = typeof (item === null || item === void 0 ? void 0 : item.group_name) === 'string' ? [item === null || item === void 0 ? void 0 : item.group_name] : item === null || item === void 0 ? void 0 : item.group_name;
|
|
|
item.group_id = item === null || item === void 0 || (_item$group_name2 = item.group_name) === null || _item$group_name2 === void 0 || (_item$group_name2 = _item$group_name2.map(function (val) {
|
|
|
var _workSetting$group_se2;
|
|
|
var d = (_workSetting$group_se2 = workSetting.group_settings) === null || _workSetting$group_se2 === void 0 || (_workSetting$group_se2 = _workSetting$group_se2.filter(function (v) {
|
|
|
return (v === null || v === void 0 ? void 0 : v.group_name) === val;
|
|
|
})) === null || _workSetting$group_se2 === void 0 ? void 0 : _workSetting$group_se2[0];
|
|
|
return d === null || d === void 0 ? void 0 : d['group_id'];
|
|
|
})) === null || _item$group_name2 === void 0 ? void 0 : _item$group_name2.toString().split(",");
|
|
|
return item;
|
|
|
});
|
|
|
bodyData.group_settingss = repairSettings;
|
|
|
}
|
|
|
}
|
|
|
setVerify(bodyData);
|
|
|
};
|
|
|
|
|
|
//校验弹框
|
|
|
var setVerify = function setVerify(bodyData) {
|
|
|
console.log(bodyData.total_score, bodyData.eff_score);
|
|
|
if (bodyData.total_score === null) {
|
|
|
message/* default */.ZP.warning("\u603B\u5206\u503C\u4E0D\u80FD\u4E3A\u7A7A");
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
// if (bodyData.rank_forbidden ) {
|
|
|
// if(moment(bodyData.rank_forbidden_start)>moment(bodyData.)){
|
|
|
// message.warning(`封榜开始时间不能大于作业截止时间或补交时间`);
|
|
|
// return
|
|
|
// }
|
|
|
|
|
|
// if(bodyData.rank_forbidden_end){
|
|
|
// message.warning(`封榜结束时间不能大于作业截止时间或补交时间`);
|
|
|
// return
|
|
|
// }
|
|
|
// }
|
|
|
if (bodyData !== null && bodyData !== void 0 && bodyData.work_efficiency && bodyData.eff_score === null) {
|
|
|
message/* default */.ZP.warning("\u6548\u7387\u5206\u4E0D\u80FD\u4E3A\u7A7A");
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
// const numbers = bodyData.challenge_settings.reduce((t: number, n: any) => {
|
|
|
// return t + Number(n.challenge_score);
|
|
|
// }, 0)
|
|
|
|
|
|
// if (numbers?.toFixed(10) !== (bodyData.total_score - bodyData.eff_score)?.toFixed(10)) {
|
|
|
// message.warning(`效率分加关卡任务总分必须等于总分值:${bodyData.total_score}分`);
|
|
|
// return;
|
|
|
// }
|
|
|
var newChangeData = {
|
|
|
shixun_evaluation: bodyData.shixun_evaluation
|
|
|
// challenge_settings: bodyData.challenge_settings
|
|
|
};
|
|
|
var goGetData = /*#__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:
|
|
|
setBtnLoading(true);
|
|
|
_context.next = 3;
|
|
|
return (0,fetch/* default */.ZP)("/api/homework_commons/".concat(params.categoryId, "/public_setting.json"), {
|
|
|
method: 'post',
|
|
|
body: objectSpread2_default()({}, bodyData)
|
|
|
});
|
|
|
case 3:
|
|
|
res = _context.sent;
|
|
|
// dispatch({
|
|
|
// type: 'shixunHomeworks/updateSetting',
|
|
|
// payload: bodyData,
|
|
|
// }).then((res: any) => {
|
|
|
if (res.status === 0) {
|
|
|
message/* default */.ZP.success('更新成功');
|
|
|
setDisabled(true);
|
|
|
getData();
|
|
|
dispatch({
|
|
|
type: 'shixunHomeworks/getWorkList',
|
|
|
payload: objectSpread2_default()({}, params)
|
|
|
});
|
|
|
}
|
|
|
setBtnLoading(false);
|
|
|
// })
|
|
|
case 6:
|
|
|
case "end":
|
|
|
return _context.stop();
|
|
|
}
|
|
|
}, _callee);
|
|
|
}));
|
|
|
return function goGetData() {
|
|
|
return _ref2.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
// if (!isEqual(changeData, newChangeData) && !workList?.homework_status?.includes("未发布")) {
|
|
|
// Modal.confirm({
|
|
|
// title: "更新成绩",
|
|
|
// content: "您改动了本次作业的关卡得分设置,这可能导致已完成作业的学生的成绩产生错误。点击“确定”按钮将保存最新设置并按最新设置更新全班成绩。",
|
|
|
// okText: "确认",
|
|
|
// cancelText: "取消",
|
|
|
// onOk: goGetData
|
|
|
// })
|
|
|
// } else {
|
|
|
goGetData();
|
|
|
// }
|
|
|
};
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("section", {
|
|
|
className: ConfigWorksmodules.form,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
align: "middle",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
flex: '1',
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: ConfigWorksmodules.title,
|
|
|
children: "\u516C\u5F00\u8BBE\u7F6E"
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(col/* default */.Z, {
|
|
|
children: [(workSetting === null || workSetting === void 0 ? void 0 : workSetting.can_edit) && disabled && /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
|
type: "primary",
|
|
|
size: "middle",
|
|
|
ghost: true,
|
|
|
onClick: function onClick() {
|
|
|
return setDisabled(false);
|
|
|
},
|
|
|
children: "\u7F16\u8F91\u8BBE\u7F6E"
|
|
|
}), !disabled && /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
|
type: "primary",
|
|
|
loading: btnLoading,
|
|
|
onClick: function onClick() {
|
|
|
return onHandleChange();
|
|
|
},
|
|
|
children: "\u63D0\u4EA4"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
|
type: "primary",
|
|
|
ghost: true,
|
|
|
className: "ml20",
|
|
|
onClick: function onClick() {
|
|
|
setDisabled(true);
|
|
|
getData();
|
|
|
},
|
|
|
children: "\u53D6\u6D88"
|
|
|
})]
|
|
|
})]
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(col/* default */.Z, {
|
|
|
span: 24,
|
|
|
className: "mt15 mt20",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_checkbox/* default */.Z, {
|
|
|
checked: data.score_open,
|
|
|
disabled: disabled,
|
|
|
onChange: function onChange(e) {
|
|
|
data.score_open = e.target.checked;
|
|
|
setData(Object.assign({}, data));
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "font14",
|
|
|
children: "\u516C\u5F00\u6210\u7EE9"
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "c-grey-c font12",
|
|
|
children: "(\u9009\u4E2D\uFF0C\u5219\u5728\u4F5C\u4E1A\u622A\u6B62/\u8865\u4EA4\u7ED3\u675F\u65F6\u95F4\u4E4B\u540E\uFF0C\u5DF2\u63D0\u4EA4\u4F5C\u54C1\u7684\u5B66\u751F\u53EF\u4EE5\u67E5\u770B\u5176\u5B83\u5B66\u751F\u7684\u6210\u7EE9\uFF0C\u5426\u5219\u53EA\u80FD\u67E5\u770B\u81EA\u5DF1\u7684\u6210\u7EE9)"
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(col/* default */.Z, {
|
|
|
span: 24,
|
|
|
className: "mt15",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_checkbox/* default */.Z, {
|
|
|
checked: data.open_code,
|
|
|
disabled: disabled,
|
|
|
onChange: function onChange(e) {
|
|
|
data.open_code = e.target.checked;
|
|
|
setData(Object.assign({}, data));
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "font14",
|
|
|
children: "\u516C\u5F00\u4EE3\u7801"
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "c-grey-c font12",
|
|
|
children: "(\u9009\u4E2D\uFF0C\u5B66\u751F\u53EF\u4EE5\u67E5\u770B\u5176\u4ED6\u5B66\u751F\u7684\u4EE3\u7801\u8BE6\u60C5)"
|
|
|
})]
|
|
|
}), !!data.open_code && /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
span: 24,
|
|
|
className: "mt10 ml25",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(es_radio/* default.Group */.ZP.Group, {
|
|
|
disabled: disabled,
|
|
|
value: data.open_code_type,
|
|
|
onChange: function onChange(e) {
|
|
|
data.open_code_type = e.target.value;
|
|
|
setData(Object.assign({}, data));
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
|
|
|
value: 0,
|
|
|
children: "\u4EFB\u610F\u65F6\u95F4\u67E5\u770B"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
|
|
|
style: {
|
|
|
marginLeft: 60
|
|
|
},
|
|
|
value: 1,
|
|
|
children: "\u7EC3\u4E60\u65F6\u95F4\u7ED3\u675F\u540E"
|
|
|
})]
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(col/* default */.Z, {
|
|
|
span: 24,
|
|
|
className: "mt15 mt20",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_checkbox/* default */.Z, {
|
|
|
checked: data.rank_forbidden,
|
|
|
disabled: disabled,
|
|
|
onChange: function onChange(e) {
|
|
|
data.rank_forbidden = e.target.checked;
|
|
|
setData(Object.assign({}, data));
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "font14",
|
|
|
children: "\u5F00\u542F\u5C01\u699C"
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "c-grey-c font12",
|
|
|
children: "(\u9009\u4E2D\u5219\u5728\u8BBE\u7F6E\u7684\u8FD9\u6BB5\u65F6\u95F4\u5185\uFF0C\u5B66\u751F\u770B\u4E0D\u5230\u6392\u884C\u699C\u4FE1\u606F\uFF0C\u5176\u4ED6\u65F6\u95F4\u53EF\u4EE5\u67E5\u770B)"
|
|
|
})]
|
|
|
}), !!data.rank_forbidden && data.unified_setting && /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
span: 24,
|
|
|
className: "mt10 ",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
style: {
|
|
|
marginLeft: 50
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
align: "middle",
|
|
|
className: "mt25 ",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
children: "\u5F00\u59CB\u65F6\u95F4"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
className: "ml10",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(date_picker["default"], {
|
|
|
style: {
|
|
|
width: 170
|
|
|
},
|
|
|
placeholder: '请选择开始时间',
|
|
|
showTime: {
|
|
|
format: 'HH:mm'
|
|
|
},
|
|
|
allowClear: false
|
|
|
// showTime={{ format: 'HH:mm',defaultValue: moment(HalfPastOne(), 'HH:mm') }}
|
|
|
,
|
|
|
format: "YYYY-MM-DD HH:mm",
|
|
|
disabledDate: disabledDate,
|
|
|
disabledTime: disabledTime,
|
|
|
disabled: disabled || dayjs_min_default()() > dayjs_min_default()(workSetting.rank_forbidden_start),
|
|
|
value: data.rank_forbidden_start ? dayjs_min_default()(data.rank_forbidden_start) : '',
|
|
|
onChange: function onChange(value, time) {
|
|
|
data.rank_forbidden_start = time;
|
|
|
if ((data.end_time == '' || !data.end_time) && data.unified_setting) {
|
|
|
data.end_time = dayjs_min_default()(value).add(1, 'month').format('YYYY-MM-DD HH:mm:ss');
|
|
|
}
|
|
|
setData(Object.assign({}, data));
|
|
|
}
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "c-grey-c ml10",
|
|
|
children: "(\u5B66\u751F\u770B\u4E0D\u5230\u6392\u884C\u699C\u7684\u5F00\u59CB\u65F6\u95F4)"
|
|
|
})
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
align: "middle",
|
|
|
className: "mt25",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
children: "\u622A\u6B62\u65F6\u95F4"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
className: "ml10",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(date_picker["default"], {
|
|
|
style: {
|
|
|
width: 170
|
|
|
},
|
|
|
allowClear: false,
|
|
|
placeholder: '请选择截止时间',
|
|
|
showTime: {
|
|
|
format: 'HH:mm',
|
|
|
defaultValue: dayjs_min_default()((0,util/* HalfPastOne */.U6)(), 'HH:mm')
|
|
|
},
|
|
|
format: "YYYY-MM-DD HH:mm",
|
|
|
disabled: disabled,
|
|
|
disabledDate: disabledDate,
|
|
|
value: data.rank_forbidden_end ? dayjs_min_default()(data.rank_forbidden_end) : '',
|
|
|
onChange: function onChange(value, time) {
|
|
|
data.rank_forbidden_end = time;
|
|
|
setData(Object.assign({}, data));
|
|
|
}
|
|
|
// onChange={onChange}
|
|
|
// onOk={onOk}
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "c-grey-c ml10",
|
|
|
children: "(\u5B66\u751F\u770B\u4E0D\u5230\u6392\u884C\u699C\u7684\u7ED3\u675F\u65F6\u95F4)"
|
|
|
})
|
|
|
})]
|
|
|
})]
|
|
|
})
|
|
|
}), !data.unified_setting && ((_groupSettings2 = groupSettings) === null || _groupSettings2 === void 0 ? void 0 : _groupSettings2.length) > 0 && !!data.rank_forbidden && /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
style: {
|
|
|
marginTop: 30,
|
|
|
paddingTop: 20,
|
|
|
marginLeft: 80,
|
|
|
borderTop: '1px solid #eee'
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
span: 24,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
span: 10
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
span: 10,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
className: "c-grey-c ml30",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
flex: "1",
|
|
|
children: "(\u5B66\u751F\u770B\u4E0D\u5230\u6392\u884C\u699C\u7684\u5F00\u59CB\u65F6\u95F4)"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
flex: "1",
|
|
|
children: "(\u5B66\u751F\u770B\u4E0D\u5230\u6392\u884C\u699C\u7684\u7ED3\u675F\u65F6\u95F4)"
|
|
|
})]
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
span: 4
|
|
|
})]
|
|
|
})
|
|
|
}), repairSettings.map(function (v, k) {
|
|
|
var _workList$homework_st, _workSetting$group_se3, _workSetting$group_se4;
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
span: 24,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
className: "mt25",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(col/* default */.Z, {
|
|
|
style: {
|
|
|
marginLeft: 30
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
children: ["\u5C01\u699C\u89C4\u5219", k + 1, "\uFF1A"]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_select["default"], {
|
|
|
disabled: disabled || !(workList !== null && workList !== void 0 && (_workList$homework_st = workList.homework_status) !== null && _workList$homework_st !== void 0 && _workList$homework_st.includes("未发布")) && v.id,
|
|
|
mode: "multiple",
|
|
|
style: {
|
|
|
width: 306
|
|
|
},
|
|
|
value: typeof v.group_name === 'string' ? [v.group_name] : v.group_name,
|
|
|
placeholder: "\u8BF7\u9009\u62E9\u5206\u73ED\u540D\u79F0",
|
|
|
onChange: function onChange(value) {
|
|
|
repairSettings[k]['group_name'] = value;
|
|
|
repairSettings[k]['group_id'] = v.group_id;
|
|
|
setRepairSetting(repairSettings.slice());
|
|
|
},
|
|
|
children: workSetting.group_settings && workSetting.group_settings.map(function (v) {
|
|
|
if (data !== null && data !== void 0 && data.unified_setting) {
|
|
|
if (!repairSettings.map(function (item) {
|
|
|
return item.group_name;
|
|
|
}).toString().split(",").includes(String(v.group_name))) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(publicsetting_Option, {
|
|
|
value: v.group_name,
|
|
|
children: v.group_name
|
|
|
}, v.id);
|
|
|
}
|
|
|
}
|
|
|
if (!!groupSettings.map(function (item) {
|
|
|
return item.group_name;
|
|
|
}).toString().split(",").includes(String(v.group_name))) {
|
|
|
if (!repairSettings.map(function (item) {
|
|
|
return item.group_name;
|
|
|
}).toString().split(",").includes(String(v.group_name))) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(publicsetting_Option, {
|
|
|
value: v.group_name,
|
|
|
children: v.group_name
|
|
|
}, v.id);
|
|
|
}
|
|
|
}
|
|
|
})
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
span: 10,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: "ml30",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(publicsetting_RangePicker, {
|
|
|
allowClear: false
|
|
|
// disabled={disabled || ((!workList?.homework_status?.includes("未发布") && v.id) && [true, false])}
|
|
|
,
|
|
|
disabled: disabled ? disabled : workSetting !== null && workSetting !== void 0 && (_workSetting$group_se3 = workSetting.group_settings) !== null && _workSetting$group_se3 !== void 0 && (_workSetting$group_se3 = _workSetting$group_se3.filter(function (item) {
|
|
|
return item.id === v.id;
|
|
|
})) !== null && _workSetting$group_se3 !== void 0 && (_workSetting$group_se3 = _workSetting$group_se3[0]) !== null && _workSetting$group_se3 !== void 0 && _workSetting$group_se3.rank_forbidden_start ? dayjs_min_default()() < dayjs_min_default()(workSetting === null || workSetting === void 0 || (_workSetting$group_se4 = workSetting.group_settings) === null || _workSetting$group_se4 === void 0 || (_workSetting$group_se4 = _workSetting$group_se4.filter(function (item) {
|
|
|
return item.id === v.id;
|
|
|
})) === null || _workSetting$group_se4 === void 0 || (_workSetting$group_se4 = _workSetting$group_se4[0]) === null || _workSetting$group_se4 === void 0 ? void 0 : _workSetting$group_se4.rank_forbidden_start) ? false : [true, false] : false,
|
|
|
style: {
|
|
|
width: 400
|
|
|
},
|
|
|
placeholder: ['请选择开始时间', '请选择结束时间'],
|
|
|
disabledDate: disabledDate,
|
|
|
disabledTime: disabledTime,
|
|
|
showTime: {
|
|
|
format: 'HH:mm',
|
|
|
defaultValue: [dayjs_min_default()((0,util/* HalfPastOne */.U6)(), 'HH:mm'), dayjs_min_default()((0,util/* HalfPastOne */.U6)(), 'HH:mm')]
|
|
|
},
|
|
|
format: "YYYY-MM-DD HH:mm",
|
|
|
value: v.rank_forbidden_start && [dayjs_min_default()(v.rank_forbidden_start), v.rank_forbidden_end ? dayjs_min_default()(v.rank_forbidden_end) : undefined],
|
|
|
onChange: function onChange(self, item) {
|
|
|
repairSettings[k]['rank_forbidden_start'] = item[0];
|
|
|
repairSettings[k]['rank_forbidden_end'] = item[1];
|
|
|
setRepairSetting(toConsumableArray_default()(repairSettings));
|
|
|
}
|
|
|
})
|
|
|
})
|
|
|
}), !disabled && /*#__PURE__*/(0,jsx_runtime.jsxs)(col/* default */.Z, {
|
|
|
className: "ml20",
|
|
|
children: [k > 0 && !v.id && /*#__PURE__*/(0,jsx_runtime.jsx)(DeleteOutlined/* default */.Z, {
|
|
|
onClick: function onClick() {
|
|
|
repairSettings = repairSettings.filter(function (val, key) {
|
|
|
return k !== key;
|
|
|
});
|
|
|
setRepairSetting(repairSettings.slice());
|
|
|
setTimeout(function () {
|
|
|
return setRepairSetting(repairSettings.slice());
|
|
|
}, 10);
|
|
|
}
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(PlusCircleOutlined/* default */.Z, {
|
|
|
className: "c-green ml20",
|
|
|
onClick: function onClick() {
|
|
|
setRepairSetting(repairSettings.concat({}));
|
|
|
}
|
|
|
})]
|
|
|
})]
|
|
|
})
|
|
|
}, k);
|
|
|
})]
|
|
|
})]
|
|
|
})]
|
|
|
});
|
|
|
};
|
|
|
/* harmony default export */ var publicsetting = ((0,_umi_production_exports.connect)(function (_ref3) {
|
|
|
var shixunHomeworks = _ref3.shixunHomeworks,
|
|
|
loading = _ref3.loading;
|
|
|
return {
|
|
|
shixunHomeworks: shixunHomeworks,
|
|
|
loading: loading.effects
|
|
|
};
|
|
|
})(publicsetting_WorkList));
|
|
|
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/Detail/components/ConfigWorks/scoresetting.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var scoresetting_WorkList = function WorkList(_ref) {
|
|
|
var _workList$homework_st;
|
|
|
var shixunHomeworks = _ref.shixunHomeworks,
|
|
|
loading = _ref.loading,
|
|
|
dispatch = _ref.dispatch;
|
|
|
var params = (0,_umi_production_exports.useParams)();
|
|
|
var workSetting = shixunHomeworks.workSetting,
|
|
|
workList = shixunHomeworks.workList,
|
|
|
changeData = shixunHomeworks.changeData;
|
|
|
var _useState = (0,_react_17_0_2_react.useState)(true),
|
|
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
|
disabled = _useState2[0],
|
|
|
setDisabled = _useState2[1];
|
|
|
var _useState3 = (0,_react_17_0_2_react.useState)(false),
|
|
|
_useState4 = slicedToArray_default()(_useState3, 2),
|
|
|
btnLoading = _useState4[0],
|
|
|
setBtnLoading = _useState4[1];
|
|
|
var _useState5 = (0,_react_17_0_2_react.useState)(false),
|
|
|
_useState6 = slicedToArray_default()(_useState5, 2),
|
|
|
isshow = _useState6[0],
|
|
|
setIsshow = _useState6[1];
|
|
|
var _Form$useForm = es_form/* default */.Z.useForm(),
|
|
|
_Form$useForm2 = slicedToArray_default()(_Form$useForm, 1),
|
|
|
form = _Form$useForm2[0];
|
|
|
var _useState7 = (0,_react_17_0_2_react.useState)([]),
|
|
|
_useState8 = slicedToArray_default()(_useState7, 2),
|
|
|
groupSettings = _useState8[0],
|
|
|
setGroupSetting = _useState8[1];
|
|
|
var _useState9 = (0,_react_17_0_2_react.useState)([]),
|
|
|
_useState10 = slicedToArray_default()(_useState9, 2),
|
|
|
repairSettings = _useState10[0],
|
|
|
setRepairSetting = _useState10[1];
|
|
|
var published = !(workList !== null && workList !== void 0 && (_workList$homework_st = workList.homework_status) !== null && _workList$homework_st !== void 0 && _workList$homework_st.includes("未发布"));
|
|
|
var _useState11 = (0,_react_17_0_2_react.useState)({
|
|
|
unified_setting: false,
|
|
|
//是否统一设置
|
|
|
publish_time: '',
|
|
|
// string 统一设置的发布时间
|
|
|
end_time: '',
|
|
|
// string 统一设置的截止时间Ï
|
|
|
//分班设置
|
|
|
// group_settings: [
|
|
|
// // {
|
|
|
// // group_id: "",
|
|
|
// // group_name: "",
|
|
|
// // publish_time: "",
|
|
|
// // end_time: ""
|
|
|
// // }
|
|
|
// ],
|
|
|
//补交设置
|
|
|
// allow_late_settings: [
|
|
|
// // {
|
|
|
// // group_id: "",
|
|
|
// // group_name: "",
|
|
|
// // late_penalty: "",
|
|
|
// // late_time: ""
|
|
|
// // }
|
|
|
// ],
|
|
|
//shifou
|
|
|
allow_late: false,
|
|
|
//是否允许补交
|
|
|
unified_late: true,
|
|
|
//补交方式
|
|
|
late_time: '',
|
|
|
//补交截止时间
|
|
|
late_penalty: 0,
|
|
|
//迟交扣分
|
|
|
challenge_settings: [
|
|
|
// {
|
|
|
// challenge_id: "", //关卡id
|
|
|
// challenge_name: "", //关卡名称
|
|
|
// checked: false,// 是否选中
|
|
|
// challenge_score:“”关卡分值
|
|
|
// challenge_exp 关卡经验值
|
|
|
// difficulty: 关卡难易度
|
|
|
// }
|
|
|
],
|
|
|
work_efficiency: false,
|
|
|
//是否勾选效率分
|
|
|
shixun_evaluation: '',
|
|
|
//评分比例设置:0:均分, 1:经验值,2:自定义
|
|
|
answer_open_evaluation: false,
|
|
|
//查看答案 扣分false满分true
|
|
|
answer_public: false,
|
|
|
//公开答案
|
|
|
score_open: false,
|
|
|
//公开成绩
|
|
|
comment_public: true,
|
|
|
//公开评论
|
|
|
total_score: '',
|
|
|
//总分值
|
|
|
eff_score: 0,
|
|
|
//效率分
|
|
|
is_onpage_time: true,
|
|
|
training_time_rules: 1,
|
|
|
hack_settings: [],
|
|
|
punish_time: undefined,
|
|
|
hack_score_settings: undefined
|
|
|
}),
|
|
|
_useState12 = slicedToArray_default()(_useState11, 2),
|
|
|
data = _useState12[0],
|
|
|
setData = _useState12[1];
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
getData();
|
|
|
return function () {
|
|
|
setGroupSetting([].concat());
|
|
|
};
|
|
|
}, []);
|
|
|
var getData = function getData() {
|
|
|
dispatch({
|
|
|
type: 'shixunHomeworks/getWorkSetting',
|
|
|
payload: objectSpread2_default()({}, params)
|
|
|
});
|
|
|
};
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
if (!(workSetting !== null && workSetting !== void 0 && workSetting.course_id)) return;
|
|
|
Object.keys(data).map(function (item) {
|
|
|
data[item] = workSetting[item];
|
|
|
});
|
|
|
if (!data.allow_late || !data.unified_late) {
|
|
|
data.late_penalty = 5;
|
|
|
}
|
|
|
groupSettings = JSON.parse(JSON.stringify(workSetting.group_settings.map(function (e) {
|
|
|
return objectSpread2_default()(objectSpread2_default()({}, e), {}, {
|
|
|
group_name: [e.group_name]
|
|
|
});
|
|
|
}).filter(function (v) {
|
|
|
return v.publish_time !== null;
|
|
|
})));
|
|
|
repairSettings = JSON.parse(JSON.stringify(workSetting.allow_late_settings.map(function (e) {
|
|
|
return objectSpread2_default()(objectSpread2_default()({}, e), {}, {
|
|
|
group_name: [e.group_name]
|
|
|
});
|
|
|
}).filter(function (v) {
|
|
|
return v.late_time !== null;
|
|
|
})));
|
|
|
calcScore();
|
|
|
setData(objectSpread2_default()({}, data));
|
|
|
setGroupSetting(toConsumableArray_default()(groupSettings));
|
|
|
setRepairSetting(toConsumableArray_default()(repairSettings));
|
|
|
}, [workSetting]);
|
|
|
var onHandleChange = function onHandleChange() {
|
|
|
var bodyData = JSON.parse(JSON.stringify(data));
|
|
|
// bodyData.challenge_settings.filter((v: any) => !v.hide)
|
|
|
// bodyData.categoryId = params.categoryId
|
|
|
// if (bodyData.challenge_settings?.every((r: any) => !r.checked)) {
|
|
|
// message.warning('关卡不能全部设置为可不做');
|
|
|
// return;
|
|
|
// }
|
|
|
// if (!data.unified_setting)
|
|
|
// groupSettings = groupSettings?.map((item: any) => {
|
|
|
// if (!item.publish_time || !item.end_time) {
|
|
|
// message.error('请把发布时间填写完整')
|
|
|
// throw new String('请把发布时间填写完整')
|
|
|
// }
|
|
|
// if (!item.group_name) {
|
|
|
// message.error('请选择分班名称')
|
|
|
// throw new String('请选择分班名称')
|
|
|
// }
|
|
|
// item.group_name = typeof item?.group_name === 'string' ? [item?.group_name] : item?.group_name
|
|
|
// item.group_id = workSetting.group_settings?.filter((v: any) => item?.group_name?.includes(v.group_name)).map(v => (v.group_id || v.id)).toString().split(",")
|
|
|
// return item
|
|
|
// })
|
|
|
// bodyData.group_settings = groupSettings;
|
|
|
// if (data.allow_late) {
|
|
|
// if (data.unified_late) {
|
|
|
// if (data.late_penalty === null || data.late_penalty === undefined || data.late_penalty < 0 || data.late_penalty > 100) {
|
|
|
// message.error('迟交扣分填写区间为0~100')
|
|
|
// throw new String('迟交扣分填写区间为0~100')
|
|
|
// }
|
|
|
|
|
|
// if (!data.late_time) {
|
|
|
// message.error('请把截止时间填写完整')
|
|
|
// throw new String('请把截止时间填写完整')
|
|
|
// }
|
|
|
// } else {
|
|
|
// repairSettings = repairSettings?.map((item: any) => {
|
|
|
// if (item.late_penalty === null || item.late_penalty === undefined || item.late_penalty < 0 || item.late_penalty > 100) {
|
|
|
// message.error('迟交扣分填写区间为0~100')
|
|
|
// throw new String('迟交扣分填写区间为0~100')
|
|
|
// }
|
|
|
|
|
|
// if (!item.late_time) {
|
|
|
// message.error('请把截止时间填写完整')
|
|
|
// throw new String('请把截止时间填写完整')
|
|
|
// }
|
|
|
|
|
|
// if (!item.group_name) {
|
|
|
// message.error('请选择分班名称')
|
|
|
// throw new String('请选择分班名称')
|
|
|
// }
|
|
|
|
|
|
// item.group_name = typeof item?.group_name === 'string' ? [item?.group_name] : item?.group_name
|
|
|
// item.group_id = item?.group_name?.map((val: any) => {
|
|
|
// let d = workSetting.group_settings?.filter((v: any) => v?.group_name === val)?.[0]
|
|
|
// return d?.['group_id']
|
|
|
// })?.toString().split(",")
|
|
|
// return item
|
|
|
// })
|
|
|
// bodyData.allow_late_settings = repairSettings
|
|
|
// }
|
|
|
|
|
|
// }
|
|
|
setVerify(bodyData);
|
|
|
};
|
|
|
|
|
|
//校验弹框
|
|
|
var setVerify = function setVerify(bodyData) {
|
|
|
console.log(bodyData.total_score, bodyData.eff_score);
|
|
|
if (bodyData.total_score === null) {
|
|
|
message/* default */.ZP.warning("\u603B\u5206\u503C\u4E0D\u80FD\u4E3A\u7A7A");
|
|
|
return;
|
|
|
}
|
|
|
|
|
|
// if (bodyData?.work_efficiency && bodyData.eff_score === null) {
|
|
|
// message.warning(`效率分不能为空`);
|
|
|
// return;
|
|
|
// }
|
|
|
|
|
|
// const numbers = bodyData.challenge_settings.reduce((t: number, n: any) => {
|
|
|
// return t + Number(n.challenge_score);
|
|
|
// }, 0)
|
|
|
|
|
|
// if (numbers?.toFixed(10) !== (bodyData.total_score - bodyData.eff_score)?.toFixed(10)) {
|
|
|
// message.warning(`效率分加关卡任务总分必须等于总分值:${bodyData.total_score}分`);
|
|
|
// return;
|
|
|
// }
|
|
|
// const newChangeData = {
|
|
|
// shixun_evaluation: bodyData.shixun_evaluation,
|
|
|
// challenge_settings: bodyData.challenge_settings
|
|
|
// }
|
|
|
|
|
|
var goGetData = /*#__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:
|
|
|
setBtnLoading(true);
|
|
|
_context.next = 3;
|
|
|
return (0,fetch/* default */.ZP)("/api/homework_commons/".concat(params.categoryId, "/hack_score_setting.json"), {
|
|
|
method: 'post',
|
|
|
body: objectSpread2_default()({}, bodyData)
|
|
|
});
|
|
|
case 3:
|
|
|
res = _context.sent;
|
|
|
// dispatch({
|
|
|
// type: 'shixunHomeworks/updateSetting',
|
|
|
// payload: bodyData,
|
|
|
// }).then((res: any) => {
|
|
|
if (res.status === 0) {
|
|
|
message/* default */.ZP.success('更新成功');
|
|
|
setDisabled(true);
|
|
|
getData();
|
|
|
dispatch({
|
|
|
type: 'shixunHomeworks/getWorkList',
|
|
|
payload: objectSpread2_default()({}, params)
|
|
|
});
|
|
|
}
|
|
|
setBtnLoading(false);
|
|
|
// })
|
|
|
case 6:
|
|
|
case "end":
|
|
|
return _context.stop();
|
|
|
}
|
|
|
}, _callee);
|
|
|
}));
|
|
|
return function goGetData() {
|
|
|
return _ref2.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
if ((data === null || data === void 0 ? void 0 : data.hack_score_settings) !== (workSetting === null || workSetting === void 0 ? void 0 : workSetting.hack_score_settings) && published) {
|
|
|
modal/* default */.Z.confirm({
|
|
|
title: "更新成绩",
|
|
|
content: "您改动了本次作业的得分设置,这可能导致已完成作业的学生的成绩产生错误。点击“确定”按钮将保存最新设置并按最新设置更新全班成绩。",
|
|
|
okText: "确认",
|
|
|
cancelText: "取消",
|
|
|
onOk: goGetData
|
|
|
});
|
|
|
} else {
|
|
|
goGetData();
|
|
|
}
|
|
|
};
|
|
|
var calcScore = function calcScore() {
|
|
|
var _data$hack_settings;
|
|
|
var total_score = data.total_score;
|
|
|
var len = (_data$hack_settings = data.hack_settings) === null || _data$hack_settings === void 0 ? void 0 : _data$hack_settings.length;
|
|
|
var _key = 0;
|
|
|
var lastScore;
|
|
|
switch (data.hack_score_settings) {
|
|
|
case 0:
|
|
|
var _score = (total_score / len).toFixed(2);
|
|
|
data.hack_settings.map(function (item, key) {
|
|
|
_key = key;
|
|
|
item.hack_score = _score > 0 ? _score : 0;
|
|
|
});
|
|
|
lastScore = (total_score - _score * (len - 1)).toFixed(2);
|
|
|
data.hack_settings[_key]['hack_score'] = lastScore > 0 ? lastScore : 0;
|
|
|
break;
|
|
|
case 1:
|
|
|
var d = [0, 1, 3, 6];
|
|
|
var _total = 0;
|
|
|
var a = data.hack_settings.filter(function (e) {
|
|
|
return e.difficult === 1;
|
|
|
}).length * d[1];
|
|
|
var b = data.hack_settings.filter(function (e) {
|
|
|
return e.difficult === 2;
|
|
|
}).length * d[2];
|
|
|
var c = data.hack_settings.filter(function (e) {
|
|
|
return e.difficult === 3;
|
|
|
}).length * d[3];
|
|
|
var scale = total_score / (a + b + c);
|
|
|
console.log(scale, 2222);
|
|
|
data.hack_settings.map(function (item, key) {
|
|
|
_key = key;
|
|
|
item.hack_score = (d[item.difficult] * scale).toFixed(2);
|
|
|
_total = _total + Number(item.hack_score);
|
|
|
});
|
|
|
var _s = data.hack_settings[_key]['hack_score'];
|
|
|
lastScore = (total_score - _total + Number(_s)).toFixed(2);
|
|
|
data.hack_settings[_key]['hack_score'] = lastScore > 0 ? lastScore : 0;
|
|
|
break;
|
|
|
}
|
|
|
};
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("section", {
|
|
|
className: ConfigWorksmodules.form,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
align: "middle",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
flex: '1'
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(col/* default */.Z, {
|
|
|
children: [(workSetting === null || workSetting === void 0 ? void 0 : workSetting.can_edit) && disabled && /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
|
type: "primary",
|
|
|
size: "middle",
|
|
|
ghost: true,
|
|
|
onClick: function onClick() {
|
|
|
return setDisabled(false);
|
|
|
},
|
|
|
children: "\u7F16\u8F91\u8BBE\u7F6E"
|
|
|
}), !disabled && /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
|
type: "primary",
|
|
|
loading: btnLoading,
|
|
|
onClick: function onClick() {
|
|
|
return onHandleChange();
|
|
|
},
|
|
|
children: "\u63D0\u4EA4"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
|
type: "primary",
|
|
|
ghost: true,
|
|
|
className: "ml20",
|
|
|
onClick: function onClick() {
|
|
|
setDisabled(true);
|
|
|
getData();
|
|
|
},
|
|
|
children: "\u53D6\u6D88"
|
|
|
})]
|
|
|
})]
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
align: "middle",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(col/* default */.Z, {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
children: "\u603B\u5206\u503C"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(input_number/* default */.Z, {
|
|
|
min: 0,
|
|
|
className: "ml10 mr10",
|
|
|
style: {
|
|
|
width: 160
|
|
|
}
|
|
|
// max={100 * data?.hack_settings?.length}
|
|
|
,
|
|
|
value: data.total_score,
|
|
|
disabled: disabled || published,
|
|
|
onChange: function onChange(value) {
|
|
|
data.total_score = value;
|
|
|
setData(Object.assign({}, data));
|
|
|
calcScore();
|
|
|
}
|
|
|
}), "\xA0\u5206"]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(col/* default */.Z, {
|
|
|
style: {
|
|
|
marginLeft: 100
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
children: "\u6D4B\u8BC4\u5355\u6B21\u62A5\u9519\u589E\u52A0\u65F6\u957F"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(input_number/* default */.Z, {
|
|
|
className: "ml10 mr10",
|
|
|
style: {
|
|
|
width: 160
|
|
|
},
|
|
|
min: 0,
|
|
|
value: data.punish_time,
|
|
|
precision: 0,
|
|
|
disabled: disabled,
|
|
|
onChange: function onChange(value) {
|
|
|
data.punish_time = value;
|
|
|
setData(Object.assign({}, data));
|
|
|
calcScore();
|
|
|
}
|
|
|
}), "\xA0\u5206\u949F"]
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
align: "middle",
|
|
|
style: {
|
|
|
marginTop: 20
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
children: "\u8BD5\u9898\u5206\u503C\u8BBE\u7F6E\u89C4\u5219"
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
flex: '1',
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
|
|
|
className: "ml20",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(es_radio/* default.Group */.ZP.Group, {
|
|
|
disabled: disabled || published,
|
|
|
value: data.hack_score_settings,
|
|
|
onChange: function onChange(value) {
|
|
|
data.hack_score_settings = value.target.value;
|
|
|
setData(Object.assign({}, data));
|
|
|
calcScore();
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
|
|
|
value: 0,
|
|
|
children: "\u5747\u5206\u6BD4\u4F8B"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
|
|
|
className: "ml20 mr20",
|
|
|
value: 1,
|
|
|
children: "\u96BE\u6613\u5EA6"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
|
|
|
value: 2,
|
|
|
children: "\u81EA\u5B9A\u4E49\u5206\u503C"
|
|
|
})]
|
|
|
})
|
|
|
})
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: ConfigWorksmodules.hackList,
|
|
|
children: data.hack_settings && data.hack_settings.map(function (val, key) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
align: "middle",
|
|
|
style: {
|
|
|
marginTop: 20
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
flex: '1',
|
|
|
className: "pr10",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("strong", {
|
|
|
children: val.hack_name
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(col/* default */.Z, {
|
|
|
flex: '150px',
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(input_number/* default */.Z, {
|
|
|
min: 0,
|
|
|
step: 0.1
|
|
|
// max={100}
|
|
|
,
|
|
|
value: val.hack_score,
|
|
|
disabled: disabled || data.hack_score_settings !== 2 || published,
|
|
|
onChange: function onChange(value) {
|
|
|
data.hack_settings[key]['hack_score'] = value;
|
|
|
var s = data.hack_settings.reduce(function (t, n) {
|
|
|
return t + Number(n.hack_score);
|
|
|
}, 0);
|
|
|
data.total_score = s.toFixed(2);
|
|
|
setData(objectSpread2_default()({}, data));
|
|
|
}
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "ml10",
|
|
|
children: "\u5206"
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(col/* default */.Z, {
|
|
|
style: {
|
|
|
lineHeight: '20px'
|
|
|
},
|
|
|
children: [val.difficult === 1 && /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "tag-style-border-small bg-green c-white mr10",
|
|
|
children: "\u7B80\u5355"
|
|
|
}), val.difficult === 2 && /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "tag-style-border-small bg-blue c-white mr10",
|
|
|
children: "\u9002\u4E2D"
|
|
|
}), val.difficult === 3 && /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
className: "tag-style-border-small bg-orange c-white mr10",
|
|
|
children: "\u56F0\u96BE"
|
|
|
})]
|
|
|
})]
|
|
|
}, key);
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
style: {
|
|
|
height: 100
|
|
|
}
|
|
|
})]
|
|
|
});
|
|
|
};
|
|
|
/* harmony default export */ var scoresetting = ((0,_umi_production_exports.connect)(function (_ref3) {
|
|
|
var shixunHomeworks = _ref3.shixunHomeworks,
|
|
|
loading = _ref3.loading;
|
|
|
return {
|
|
|
shixunHomeworks: shixunHomeworks,
|
|
|
loading: loading.effects
|
|
|
};
|
|
|
})(scoresetting_WorkList));
|
|
|
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/Detail/components/ConfigWorks/Collaboration.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var Collaboration_WorkList = function WorkList(_ref) {
|
|
|
var _teachList$data, _teachList$data2;
|
|
|
var shixunHomeworks = _ref.shixunHomeworks,
|
|
|
loading = _ref.loading,
|
|
|
dispatch = _ref.dispatch;
|
|
|
var _useState = (0,_react_17_0_2_react.useState)(true),
|
|
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
|
disabled = _useState2[0],
|
|
|
setDisabled = _useState2[1];
|
|
|
var _useState3 = (0,_react_17_0_2_react.useState)(false),
|
|
|
_useState4 = slicedToArray_default()(_useState3, 2),
|
|
|
isadd = _useState4[0],
|
|
|
setisadd = _useState4[1];
|
|
|
var _useState5 = (0,_react_17_0_2_react.useState)([]),
|
|
|
_useState6 = slicedToArray_default()(_useState5, 2),
|
|
|
ids = _useState6[0],
|
|
|
setids = _useState6[1];
|
|
|
var _useState7 = (0,_react_17_0_2_react.useState)([]),
|
|
|
_useState8 = slicedToArray_default()(_useState7, 2),
|
|
|
teachList = _useState8[0],
|
|
|
setTeachlist = _useState8[1];
|
|
|
var _useState9 = (0,_react_17_0_2_react.useState)([]),
|
|
|
_useState10 = slicedToArray_default()(_useState9, 2),
|
|
|
Tlist = _useState10[0],
|
|
|
settlist = _useState10[1];
|
|
|
var _useState11 = (0,_react_17_0_2_react.useState)([]),
|
|
|
_useState12 = slicedToArray_default()(_useState11, 2),
|
|
|
Tlists = _useState12[0],
|
|
|
settlists = _useState12[1];
|
|
|
var params = (0,_umi_production_exports.useParams)();
|
|
|
function getDatas() {
|
|
|
return _getDatas.apply(this, arguments);
|
|
|
}
|
|
|
function _getDatas() {
|
|
|
_getDatas = 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/homework_commons/".concat(params.categoryId, "/homework_common_collaborators.json"), {
|
|
|
method: 'get'
|
|
|
// body: {
|
|
|
// ...formValue
|
|
|
// },
|
|
|
});
|
|
|
case 2:
|
|
|
res = _context3.sent;
|
|
|
setTeachlist(res);
|
|
|
case 4:
|
|
|
case "end":
|
|
|
return _context3.stop();
|
|
|
}
|
|
|
}, _callee3);
|
|
|
}));
|
|
|
return _getDatas.apply(this, arguments);
|
|
|
}
|
|
|
function getTeacher() {
|
|
|
return _getTeacher.apply(this, arguments);
|
|
|
}
|
|
|
function _getTeacher() {
|
|
|
_getTeacher = 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,fetch/* default */.ZP)("/api/courses/".concat(params === null || params === void 0 ? void 0 : params.coursesId, "/teachers"), {
|
|
|
method: 'get',
|
|
|
params: {
|
|
|
homework_id: params.categoryId,
|
|
|
limit: 1000
|
|
|
}
|
|
|
});
|
|
|
case 2:
|
|
|
res = _context4.sent;
|
|
|
res === null || res === void 0 || res.teacher_list.map(function (item) {
|
|
|
item.key = item.user_id;
|
|
|
});
|
|
|
settlist(res === null || res === void 0 ? void 0 : res.teacher_list);
|
|
|
settlists(res === null || res === void 0 ? void 0 : res.teacher_list);
|
|
|
case 6:
|
|
|
case "end":
|
|
|
return _context4.stop();
|
|
|
}
|
|
|
}, _callee4);
|
|
|
}));
|
|
|
return _getTeacher.apply(this, arguments);
|
|
|
}
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
getDatas();
|
|
|
getTeacher();
|
|
|
}, [params]);
|
|
|
var onHandleChange = function onHandleChange() {};
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("section", {
|
|
|
className: ConfigWorksmodules.form,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(row/* default */.Z, {
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(col/* default */.Z, {
|
|
|
flex: '1',
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
style: {
|
|
|
fontSize: '16px'
|
|
|
},
|
|
|
children: "\u534F\u4F5C\u8BBE\u7F6E"
|
|
|
}), (teachList === null || teachList === void 0 ? void 0 : teachList.can_edit) && /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
style: {
|
|
|
cursor: 'pointer',
|
|
|
color: '#0152d9',
|
|
|
marginLeft: '10px'
|
|
|
},
|
|
|
onClick: function onClick() {
|
|
|
setisadd(true);
|
|
|
},
|
|
|
children: "+\u6DFB\u52A0\u534F\u4F5C\u8005"
|
|
|
})]
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
|
|
|
style: {
|
|
|
marginTop: '20px',
|
|
|
marginBottom: '20px'
|
|
|
},
|
|
|
children: [(teachList === null || teachList === void 0 || (_teachList$data = teachList.data) === null || _teachList$data === void 0 ? void 0 : _teachList$data.length) <= 0 && /*#__PURE__*/(0,jsx_runtime.jsx)(NoData/* default */.Z, {
|
|
|
customText: "\u8BE5\u4F5C\u4E1A\u6682\u65E0\u534F\u4F5C\u8005"
|
|
|
}), teachList === null || teachList === void 0 || (_teachList$data2 = teachList.data) === null || _teachList$data2 === void 0 ? void 0 : _teachList$data2.map(function (item) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
style: {
|
|
|
display: 'inline-flex',
|
|
|
height: '40px',
|
|
|
borderRadius: '4px',
|
|
|
border: '1px solid #44D7B6',
|
|
|
padding: '7px 20px',
|
|
|
color: '#44D7B6',
|
|
|
marginRight: '40px'
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
style: {
|
|
|
flex: '1'
|
|
|
},
|
|
|
children: item === null || item === void 0 ? void 0 : item.real_name
|
|
|
}), (teachList === null || teachList === void 0 ? void 0 : teachList.can_edit) && /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
style: {
|
|
|
cursor: 'pointer',
|
|
|
marginLeft: '10px'
|
|
|
},
|
|
|
onClick: /*#__PURE__*/asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
|
|
|
var res;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
|
|
|
while (1) switch (_context.prev = _context.next) {
|
|
|
case 0:
|
|
|
_context.next = 2;
|
|
|
return (0,fetch/* default */.ZP)("/api/homework_commons/".concat(params.categoryId, "/homework_common_collaborators/delete.json"), {
|
|
|
method: 'delete',
|
|
|
body: {
|
|
|
user_id: item.id
|
|
|
}
|
|
|
});
|
|
|
case 2:
|
|
|
res = _context.sent;
|
|
|
if (res.status === 0) {
|
|
|
message/* default */.ZP.info('删除成功');
|
|
|
getDatas();
|
|
|
getTeacher();
|
|
|
}
|
|
|
case 4:
|
|
|
case "end":
|
|
|
return _context.stop();
|
|
|
}
|
|
|
}, _callee);
|
|
|
})),
|
|
|
children: "X"
|
|
|
})]
|
|
|
});
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(row/* default */.Z, {
|
|
|
children: !disabled && /*#__PURE__*/(0,jsx_runtime.jsxs)(col/* default */.Z, {
|
|
|
className: "mb50",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
|
type: "primary",
|
|
|
size: 'middle'
|
|
|
// loading={btnLoading}
|
|
|
,
|
|
|
onClick: function onClick() {
|
|
|
return onHandleChange();
|
|
|
},
|
|
|
children: "\u63D0\u4EA4"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
|
type: "primary",
|
|
|
size: 'middle',
|
|
|
ghost: true,
|
|
|
className: "ml20",
|
|
|
onClick: function onClick() {
|
|
|
setDisabled(true);
|
|
|
},
|
|
|
children: "\u53D6\u6D88"
|
|
|
})]
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(modal/* default */.Z, {
|
|
|
title: "\u6DFB\u52A0\u534F\u4F5C\u8005",
|
|
|
open: isadd,
|
|
|
onCancel: function onCancel() {
|
|
|
return setisadd(false);
|
|
|
},
|
|
|
onOk: /*#__PURE__*/asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2() {
|
|
|
var res;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
|
|
|
while (1) switch (_context2.prev = _context2.next) {
|
|
|
case 0:
|
|
|
if (!(ids.length === 0)) {
|
|
|
_context2.next = 3;
|
|
|
break;
|
|
|
}
|
|
|
message/* default */.ZP.info('请选择协作老师');
|
|
|
return _context2.abrupt("return");
|
|
|
case 3:
|
|
|
_context2.next = 5;
|
|
|
return (0,fetch/* default */.ZP)("/api/homework_commons/".concat(params.categoryId, "/homework_common_collaborators.json"), {
|
|
|
method: 'post',
|
|
|
body: {
|
|
|
user_ids: ids
|
|
|
}
|
|
|
});
|
|
|
case 5:
|
|
|
res = _context2.sent;
|
|
|
if (res.status === 0) {
|
|
|
message/* default */.ZP.info('添加成功');
|
|
|
setids([]);
|
|
|
getDatas();
|
|
|
getTeacher();
|
|
|
setisadd(false);
|
|
|
}
|
|
|
case 7:
|
|
|
case "end":
|
|
|
return _context2.stop();
|
|
|
}
|
|
|
}, _callee2);
|
|
|
})),
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
style: {
|
|
|
display: 'flex'
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("label", {
|
|
|
style: {
|
|
|
width: '50px'
|
|
|
},
|
|
|
children: "\u59D3\u540D\uFF1A"
|
|
|
}), ' ', /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z.Search, {
|
|
|
onChange: function onChange(e) {
|
|
|
settlist(Tlists.filter(function (item) {
|
|
|
return item.name.indexOf(e.target.value) > -1;
|
|
|
}));
|
|
|
}
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(table/* default */.Z, {
|
|
|
style: {
|
|
|
marginTop: '10px',
|
|
|
height: '300px',
|
|
|
overflow: 'auto'
|
|
|
},
|
|
|
rowSelection: {
|
|
|
type: 'checkbox',
|
|
|
onChange: function onChange(selectedRowKeys, selectedRows) {
|
|
|
setids(selectedRowKeys);
|
|
|
},
|
|
|
selectedRowKeys: ids,
|
|
|
getCheckboxProps: function getCheckboxProps(record) {
|
|
|
return {
|
|
|
disabled: record.is_collaborator
|
|
|
};
|
|
|
}
|
|
|
},
|
|
|
pagination: false,
|
|
|
dataSource: Tlist,
|
|
|
columns: [{
|
|
|
title: '姓名',
|
|
|
dataIndex: 'name',
|
|
|
key: 'name'
|
|
|
}, {
|
|
|
title: '角色',
|
|
|
dataIndex: 'role',
|
|
|
key: 'role'
|
|
|
}]
|
|
|
})]
|
|
|
})
|
|
|
})]
|
|
|
});
|
|
|
};
|
|
|
/* harmony default export */ var Collaboration = ((0,_umi_production_exports.connect)(function (_ref4) {
|
|
|
var shixunHomeworks = _ref4.shixunHomeworks,
|
|
|
loading = _ref4.loading;
|
|
|
return {
|
|
|
shixunHomeworks: shixunHomeworks,
|
|
|
loading: loading.effects
|
|
|
};
|
|
|
})(Collaboration_WorkList));
|
|
|
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/Detail/components/ConfigWorks/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var ConfigWorks_WorkList = function WorkList() {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)("section", {
|
|
|
className: "bg-white pl30 pr30 pt10 mb10",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(tabs/* default */.Z, {
|
|
|
destroyInactiveTabPane: true,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(tabs/* default */.Z.TabPane, {
|
|
|
tab: "\u53D1\u5E03\u8BBE\u7F6E",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(ConfigWorks_Releasesetting, {})
|
|
|
}, 1), /*#__PURE__*/(0,jsx_runtime.jsx)(tabs/* default */.Z.TabPane, {
|
|
|
tab: "\u8BC4\u5206\u8BBE\u7F6E",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(scoresetting, {})
|
|
|
}, 2), /*#__PURE__*/(0,jsx_runtime.jsx)(tabs/* default */.Z.TabPane, {
|
|
|
tab: "\u516C\u5F00\u8BBE\u7F6E",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(publicsetting, {})
|
|
|
}, 3), /*#__PURE__*/(0,jsx_runtime.jsx)(tabs/* default */.Z.TabPane, {
|
|
|
tab: "\u534F\u4F5C\u8BBE\u7F6E",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(Collaboration, {})
|
|
|
}, 4)]
|
|
|
})
|
|
|
});
|
|
|
};
|
|
|
/* harmony default export */ var ConfigWorks = (ConfigWorks_WorkList);
|
|
|
// EXTERNAL MODULE: ./node_modules/_react-infinite-scroller@1.2.4@react-infinite-scroller/index.js
|
|
|
var _react_infinite_scroller_1_2_4_react_infinite_scroller = __webpack_require__(26724);
|
|
|
var _react_infinite_scroller_1_2_4_react_infinite_scroller_default = /*#__PURE__*/__webpack_require__.n(_react_infinite_scroller_1_2_4_react_infinite_scroller);
|
|
|
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/Detail/components/CodeReview/components/CodeReviewPop.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var PublishShixun = function PublishShixun(_ref) {
|
|
|
var shixunHomeworks = _ref.shixunHomeworks,
|
|
|
loading = _ref.loading,
|
|
|
dispatch = _ref.dispatch;
|
|
|
var params = (0,_umi_production_exports.useParams)();
|
|
|
var location = (0,_umi_production_exports.useLocation)();
|
|
|
var _useState = (0,_react_17_0_2_react.useState)([]),
|
|
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
|
tableData = _useState2[0],
|
|
|
setTableData = _useState2[1];
|
|
|
var _useState3 = (0,_react_17_0_2_react.useState)([]),
|
|
|
_useState4 = slicedToArray_default()(_useState3, 2),
|
|
|
selectArr = _useState4[0],
|
|
|
setSelectArr = _useState4[1];
|
|
|
var _useState5 = (0,_react_17_0_2_react.useState)(true),
|
|
|
_useState6 = slicedToArray_default()(_useState5, 2),
|
|
|
hasMore = _useState6[0],
|
|
|
setHasmore = _useState6[1];
|
|
|
var _useState7 = (0,_react_17_0_2_react.useState)(false),
|
|
|
_useState8 = slicedToArray_default()(_useState7, 2),
|
|
|
isLoading = _useState8[0],
|
|
|
setIsLoading = _useState8[1];
|
|
|
var _useState9 = (0,_react_17_0_2_react.useState)(1),
|
|
|
_useState10 = slicedToArray_default()(_useState9, 2),
|
|
|
page = _useState10[0],
|
|
|
setPage = _useState10[1];
|
|
|
var _useState11 = (0,_react_17_0_2_react.useState)([]),
|
|
|
_useState12 = slicedToArray_default()(_useState11, 2),
|
|
|
formValue = _useState12[0],
|
|
|
setFormValue = _useState12[1];
|
|
|
var _useState13 = (0,_react_17_0_2_react.useState)(false),
|
|
|
_useState14 = slicedToArray_default()(_useState13, 2),
|
|
|
show = _useState14[0],
|
|
|
setShow = _useState14[1];
|
|
|
var _useState15 = (0,_react_17_0_2_react.useState)(false),
|
|
|
_useState16 = slicedToArray_default()(_useState15, 2),
|
|
|
checkedAll = _useState16[0],
|
|
|
setCheckedAll = _useState16[1];
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
if (shixunHomeworks.actionTabs.key === '代码查重') {
|
|
|
form.resetFields();
|
|
|
setTableData([]);
|
|
|
setShow(true);
|
|
|
handleInfiniteOnLoad();
|
|
|
} else {
|
|
|
setShow(false);
|
|
|
}
|
|
|
}, [shixunHomeworks.actionTabs.key]);
|
|
|
var _Form$useForm = es_form/* default */.Z.useForm(),
|
|
|
_Form$useForm2 = slicedToArray_default()(_Form$useForm, 1),
|
|
|
form = _Form$useForm2[0];
|
|
|
var groupIdsInitialValues = [];
|
|
|
var handleInfiniteOnLoad = /*#__PURE__*/function () {
|
|
|
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
|
|
|
var _res$group_list, res, group_list;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
|
|
|
while (1) switch (_context.prev = _context.next) {
|
|
|
case 0:
|
|
|
if (!(hasMore && !isLoading)) {
|
|
|
_context.next = 11;
|
|
|
break;
|
|
|
}
|
|
|
setIsLoading(true);
|
|
|
setPage(page + 1);
|
|
|
_context.next = 5;
|
|
|
return (0,service_shixunHomeworks/* getCodeReviewCourse */.JG)(objectSpread2_default()(objectSpread2_default()({}, params), {}, {
|
|
|
page: page
|
|
|
}));
|
|
|
case 5:
|
|
|
res = _context.sent;
|
|
|
group_list = toConsumableArray_default()(res.group_list);
|
|
|
if (res !== null && res !== void 0 && res.ungroup_list) {
|
|
|
group_list.push({
|
|
|
id: res === null || res === void 0 ? void 0 : res.ungroup_list.id,
|
|
|
name: res === null || res === void 0 ? void 0 : res.ungroup_list.name,
|
|
|
works_count: res === null || res === void 0 ? void 0 : res.ungroup_list.work_count,
|
|
|
last_review_time: res === null || res === void 0 ? void 0 : res.ungroup_list.last_review_time
|
|
|
});
|
|
|
}
|
|
|
setTableData([].concat(toConsumableArray_default()(tableData), toConsumableArray_default()(group_list)));
|
|
|
setIsLoading(false);
|
|
|
if (((_res$group_list = res.group_list) === null || _res$group_list === void 0 ? void 0 : _res$group_list.length) < 10) {
|
|
|
setHasmore(false);
|
|
|
}
|
|
|
case 11:
|
|
|
case "end":
|
|
|
return _context.stop();
|
|
|
}
|
|
|
}, _callee);
|
|
|
}));
|
|
|
return function handleInfiniteOnLoad() {
|
|
|
return _ref2.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var handleCancel = function handleCancel() {
|
|
|
dispatch({
|
|
|
type: 'shixunHomeworks/setActionTabs',
|
|
|
payload: {}
|
|
|
});
|
|
|
setCheckedAll(false);
|
|
|
setHasmore(true);
|
|
|
setIsLoading(false);
|
|
|
setPage(1);
|
|
|
setTableData([]);
|
|
|
form.resetFields();
|
|
|
};
|
|
|
var columns = [{
|
|
|
title: '',
|
|
|
dataIndex: 'id',
|
|
|
width: 280,
|
|
|
render: function render(id, record) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(es_checkbox/* default */.Z, {
|
|
|
disabled: record.works_count > 1 ? false : true,
|
|
|
value: String(record.id),
|
|
|
children: record.name
|
|
|
});
|
|
|
}
|
|
|
}, {
|
|
|
title: '有效作品数',
|
|
|
dataIndex: 'works_count'
|
|
|
}, {
|
|
|
title: '上次查重时间',
|
|
|
dataIndex: 'last_review_time',
|
|
|
width: 130
|
|
|
}];
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)(modal/* default */.Z, {
|
|
|
centered: true,
|
|
|
title: "\u4EE3\u7801\u67E5\u91CD",
|
|
|
keyboard: false,
|
|
|
maskClosable: false,
|
|
|
open: show,
|
|
|
okText: "\u786E\u8BA4",
|
|
|
cancelText: "\u53D6\u6D88",
|
|
|
width: 820,
|
|
|
bodyStyle: {
|
|
|
minHeight: 200
|
|
|
},
|
|
|
onOk: /*#__PURE__*/asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2() {
|
|
|
var formValue, res;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
|
|
|
while (1) switch (_context2.prev = _context2.next) {
|
|
|
case 0:
|
|
|
formValue = form.getFieldValue();
|
|
|
_context2.next = 3;
|
|
|
return (0,fetch/* default */.ZP)("/api/homework_commons/".concat(params.categoryId, "/hack_homework_code_repeat.json"), {
|
|
|
method: 'post',
|
|
|
body: {
|
|
|
group_ids: toConsumableArray_default()(formValue.group_ids)
|
|
|
}
|
|
|
});
|
|
|
case 3:
|
|
|
res = _context2.sent;
|
|
|
if (!(res.status === 0)) {
|
|
|
_context2.next = 11;
|
|
|
break;
|
|
|
}
|
|
|
handleCancel();
|
|
|
message/* default */.ZP.success('操作成功');
|
|
|
_context2.next = 9;
|
|
|
return dispatch({
|
|
|
type: 'shixunHomeworks/getWorkList',
|
|
|
payload: shixunHomeworks.actionTabs.params
|
|
|
});
|
|
|
case 9:
|
|
|
_umi_production_exports.history.push("/classrooms/".concat(params.coursesId, "/program_homework/").concat(params.categoryId, "/detail?tabs=2"));
|
|
|
dispatch({
|
|
|
type: 'shixunHomeworks/setActionTabs',
|
|
|
payload: {
|
|
|
key: "执行代码查重"
|
|
|
}
|
|
|
});
|
|
|
case 11:
|
|
|
case "end":
|
|
|
return _context2.stop();
|
|
|
}
|
|
|
}, _callee2);
|
|
|
})),
|
|
|
onCancel: handleCancel,
|
|
|
children: [shixunHomeworks.codeReviewCourse && /*#__PURE__*/(0,jsx_runtime.jsxs)(es_form/* default */.Z, {
|
|
|
form: form,
|
|
|
onChange: function onChange(e) {
|
|
|
{
|
|
|
setFormValue(objectSpread2_default()({}, form.getFieldValue()));
|
|
|
}
|
|
|
},
|
|
|
initialValues: defineProperty_default()(defineProperty_default()({}, 'group_ids', groupIdsInitialValues), 'end_time', dayjs_min_default()(dayjs_min_default()().add(7, 'days').format('YYYY-MM-DD HH:mm'))),
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: "flexd-table-header mt20",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(table/* default */.Z, {
|
|
|
pagination: false,
|
|
|
dataSource: [],
|
|
|
columns: columns
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
|
|
|
name: "group_ids",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_checkbox/* default */.Z.Group, {
|
|
|
className: "w100",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
style: {
|
|
|
width: "100%",
|
|
|
maxHeight: 260,
|
|
|
overflow: 'auto'
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)((_react_infinite_scroller_1_2_4_react_infinite_scroller_default()), {
|
|
|
initialLoad: false,
|
|
|
pageStart: 1,
|
|
|
threshold: 20,
|
|
|
loadMore: function loadMore(page) {
|
|
|
handleInfiniteOnLoad();
|
|
|
},
|
|
|
hasMore: hasMore,
|
|
|
useWindow: false,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(table/* default */.Z, {
|
|
|
loading: loading['effects']['shixunHomeworks/getCodeReviewCourse'],
|
|
|
showHeader: false,
|
|
|
columns: columns,
|
|
|
dataSource: tableData,
|
|
|
pagination: false
|
|
|
})
|
|
|
})
|
|
|
})
|
|
|
})
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(row/* default */.Z, {
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
|
|
|
className: "ml10",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_checkbox/* default */.Z, {
|
|
|
checked: checkedAll,
|
|
|
onChange: function onChange(e) {
|
|
|
setCheckedAll(e.target.checked);
|
|
|
var value = [];
|
|
|
if (e.target.checked) value = tableData.filter(function (v) {
|
|
|
return v.works_count > 1;
|
|
|
}).map(function (v) {
|
|
|
return v.id + '';
|
|
|
});
|
|
|
form.setFieldsValue(defineProperty_default()({}, 'group_ids', value));
|
|
|
},
|
|
|
children: "\u5168\u9009"
|
|
|
})
|
|
|
})
|
|
|
})]
|
|
|
});
|
|
|
};
|
|
|
/* harmony default export */ var CodeReviewPop = ((0,_umi_production_exports.connect)(function (_ref5) {
|
|
|
var shixunHomeworks = _ref5.shixunHomeworks,
|
|
|
loading = _ref5.loading;
|
|
|
return {
|
|
|
shixunHomeworks: shixunHomeworks,
|
|
|
loading: loading
|
|
|
};
|
|
|
})(PublishShixun));
|
|
|
// EXTERNAL MODULE: ./src/components/CutOffNow/index.tsx + 1 modules
|
|
|
var CutOffNow = __webpack_require__(83291);
|
|
|
// EXTERNAL MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/components/Publish.tsx
|
|
|
var Publish = __webpack_require__(21725);
|
|
|
// EXTERNAL MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/Detail/index.less?modules
|
|
|
var Detailmodules = __webpack_require__(1169);
|
|
|
// EXTERNAL MODULE: ./src/service/shixuns.ts
|
|
|
var shixuns = __webpack_require__(60118);
|
|
|
// EXTERNAL MODULE: ./src/utils/env.ts + 1 modules
|
|
|
var env = __webpack_require__(33259);
|
|
|
// EXTERNAL MODULE: ./src/assets/images/question/b1.svg
|
|
|
var b1 = __webpack_require__(75091);
|
|
|
// EXTERNAL MODULE: ./src/assets/images/question/b2.svg
|
|
|
var b2 = __webpack_require__(20134);
|
|
|
// EXTERNAL MODULE: ./src/assets/images/question/b3.svg
|
|
|
var b3 = __webpack_require__(27092);
|
|
|
// EXTERNAL MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/Comment/components/ShixunStaticItem.tsx + 1 modules
|
|
|
var ShixunStaticItem = __webpack_require__(46702);
|
|
|
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/Detail/components/Ranking/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var Ranking_images = [b1/* default */.Z, b2/* default */.Z, b3/* default */.Z];
|
|
|
var List = function List(_ref) {
|
|
|
var _datas$course_group2, _datas$course_group3;
|
|
|
var user = _ref.user,
|
|
|
classroomList = _ref.classroomList;
|
|
|
// const params: any = useParams();
|
|
|
var _useState = (0,_react_17_0_2_react.useState)(objectSpread2_default()(objectSpread2_default()({}, (0,_umi_production_exports.useParams)()), {}, {
|
|
|
page: 1,
|
|
|
per_page: 10,
|
|
|
rank_type: 2,
|
|
|
course_group: (0,authority/* isStudent */.dE)() ? [user.userInfo.course.course_group_id] : []
|
|
|
}, (0,_umi_production_exports.useParams)())),
|
|
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
|
params = _useState2[0],
|
|
|
setParams = _useState2[1];
|
|
|
var _useState3 = (0,_react_17_0_2_react.useState)([]),
|
|
|
_useState4 = slicedToArray_default()(_useState3, 2),
|
|
|
datas = _useState4[0],
|
|
|
setdatas = _useState4[1];
|
|
|
var _useState5 = (0,_react_17_0_2_react.useState)([]),
|
|
|
_useState6 = slicedToArray_default()(_useState5, 2),
|
|
|
checkvalues = _useState6[0],
|
|
|
setcheckvalues = _useState6[1];
|
|
|
var _useState7 = (0,_react_17_0_2_react.useState)([]),
|
|
|
_useState8 = slicedToArray_default()(_useState7, 2),
|
|
|
tabdata = _useState8[0],
|
|
|
settabdata = _useState8[1];
|
|
|
var _useState9 = (0,_react_17_0_2_react.useState)(false),
|
|
|
_useState10 = slicedToArray_default()(_useState9, 2),
|
|
|
isloading = _useState10[0],
|
|
|
setisloading = _useState10[1];
|
|
|
var _useState11 = (0,_react_17_0_2_react.useState)([{
|
|
|
title: '排行',
|
|
|
dataIndex: 'rank',
|
|
|
width: 100,
|
|
|
fixed: 'left',
|
|
|
render: function render(i, j, index) {
|
|
|
return i < 4 ? /*#__PURE__*/(0,jsx_runtime.jsx)("img", {
|
|
|
src: Ranking_images[i - 1]
|
|
|
}) : i;
|
|
|
}
|
|
|
}, {
|
|
|
title: '用户',
|
|
|
dataIndex: 'user_name',
|
|
|
width: 150,
|
|
|
fixed: 'left',
|
|
|
key: 'user_name',
|
|
|
render: function render(i, j, index) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("img", {
|
|
|
style: {
|
|
|
width: 30,
|
|
|
height: 30,
|
|
|
borderRadius: '50%',
|
|
|
marginRight: 10
|
|
|
},
|
|
|
src: env/* default */.Z.IMG_SERVER + '/images/' + (j === null || j === void 0 ? void 0 : j.image_url)
|
|
|
}), i]
|
|
|
});
|
|
|
}
|
|
|
}, {
|
|
|
title: '分班',
|
|
|
dataIndex: 'course_group',
|
|
|
key: 'course_group',
|
|
|
ellipsis: true,
|
|
|
width: 150,
|
|
|
fixed: 'left'
|
|
|
}, {
|
|
|
title: '学号',
|
|
|
dataIndex: 'student_id',
|
|
|
key: 'student_id',
|
|
|
width: 150,
|
|
|
ellipsis: true,
|
|
|
fixed: 'left',
|
|
|
render: function render(i) {
|
|
|
return i || '- -';
|
|
|
}
|
|
|
}, {
|
|
|
title: '通过',
|
|
|
dataIndex: 'passed_count',
|
|
|
width: 100,
|
|
|
fixed: 'left',
|
|
|
key: 'passed_count'
|
|
|
}, {
|
|
|
title: '得分',
|
|
|
dataIndex: 'score',
|
|
|
width: 100,
|
|
|
fixed: 'left',
|
|
|
key: 'score'
|
|
|
}]),
|
|
|
_useState12 = slicedToArray_default()(_useState11, 2),
|
|
|
tables = _useState12[0],
|
|
|
settables = _useState12[1];
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
tables.splice(7);
|
|
|
var _loop = function _loop(i) {
|
|
|
var _datas$question_data2, _datas$question_data4;
|
|
|
var aa = {};
|
|
|
aa.title = datas !== null && datas !== void 0 && datas.sent_type ? /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
children: "\u9898\u76EE" + (i + 1) + "\uFF08".concat(datas === null || datas === void 0 || (_datas$question_data2 = datas.question_data) === null || _datas$question_data2 === void 0 || (_datas$question_data2 = _datas$question_data2[i]) === null || _datas$question_data2 === void 0 ? void 0 : _datas$question_data2.question_score, "\uFF09")
|
|
|
}) : /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
|
|
|
onClick: /*#__PURE__*/asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
|
|
|
var _datas$question_data3;
|
|
|
var res1;
|
|
|
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/problems/".concat(datas === null || datas === void 0 || (_datas$question_data3 = datas.question_data) === null || _datas$question_data3 === void 0 || (_datas$question_data3 = _datas$question_data3[i]) === null || _datas$question_data3 === void 0 ? void 0 : _datas$question_data3.identifier, "/start.json"), {
|
|
|
method: 'get'
|
|
|
});
|
|
|
case 2:
|
|
|
res1 = _context.sent;
|
|
|
if (res1) {
|
|
|
window.open("/myproblems/".concat(res1 === null || res1 === void 0 ? void 0 : res1.identifier, "?type=1"));
|
|
|
localStorage.setItem('program_homework', [params.coursesId, params.categoryId]);
|
|
|
}
|
|
|
case 4:
|
|
|
case "end":
|
|
|
return _context.stop();
|
|
|
}
|
|
|
}, _callee);
|
|
|
})),
|
|
|
children: "\u9898\u76EE" + (i + 1) + "\uFF08".concat(datas === null || datas === void 0 || (_datas$question_data4 = datas.question_data) === null || _datas$question_data4 === void 0 || (_datas$question_data4 = _datas$question_data4[i]) === null || _datas$question_data4 === void 0 ? void 0 : _datas$question_data4.question_score, "\uFF09")
|
|
|
});
|
|
|
aa.dataIndex = 'question_data';
|
|
|
aa.width = 250;
|
|
|
aa.render = function (v, r) {
|
|
|
var _v$i, _v$i9, _v$i10, _v$i11, _v$i12;
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
children: (v === null || v === void 0 || (_v$i = v[i]) === null || _v$i === void 0 ? void 0 : _v$i.answer_question_time) && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
style: {
|
|
|
cursor: 'pointer'
|
|
|
},
|
|
|
className: "iconfont icon-shixun4 c-blue",
|
|
|
onClick: /*#__PURE__*/asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2() {
|
|
|
var _classroomList$Assist, _v$i2, _v$i3, _v$i4, _v$i5, _v$i6, _v$i7, _v$i8;
|
|
|
var res;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
|
|
|
while (1) switch (_context2.prev = _context2.next) {
|
|
|
case 0:
|
|
|
if (!((0,authority/* isAssistant */.Rm)() && !((_classroomList$Assist = classroomList.AssistantObject.hack) !== null && _classroomList$Assist !== void 0 && _classroomList$Assist.can_appraise))) {
|
|
|
_context2.next = 3;
|
|
|
break;
|
|
|
}
|
|
|
message/* default */.ZP.warning('您未获取此权限,需向管理员申请权限才能使用此功能');
|
|
|
return _context2.abrupt("return");
|
|
|
case 3:
|
|
|
if (v !== null && v !== void 0 && (_v$i2 = v[i]) !== null && _v$i2 !== void 0 && _v$i2.open_code) {
|
|
|
_context2.next = 6;
|
|
|
break;
|
|
|
}
|
|
|
message/* default */.ZP.info('暂不允许查看代码');
|
|
|
return _context2.abrupt("return");
|
|
|
case 6:
|
|
|
_context2.next = 8;
|
|
|
return (0,fetch/* default */.ZP)("/api/courses/view_code.json", {
|
|
|
method: 'get',
|
|
|
params: objectSpread2_default()(objectSpread2_default()({}, params), {}, {
|
|
|
id: params.coursesId,
|
|
|
homework_common_id: params.categoryId,
|
|
|
hack_user_code_id: v === null || v === void 0 || (_v$i3 = v[i]) === null || _v$i3 === void 0 ? void 0 : _v$i3.hack_user_code_id
|
|
|
})
|
|
|
});
|
|
|
case 8:
|
|
|
res = _context2.sent;
|
|
|
modal/* default */.Z.warning({
|
|
|
icon: null,
|
|
|
width: 800,
|
|
|
title: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
children: "\u4EE3\u7801"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
children: ["\u4F7F\u7528\u8BED\u8A00\uFF1A", v === null || v === void 0 || (_v$i4 = v[i]) === null || _v$i4 === void 0 ? void 0 : _v$i4.current_language]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
children: ["\u8FD0\u884C\u5185\u5B58\uFF1A", v === null || v === void 0 || (_v$i5 = v[i]) === null || _v$i5 === void 0 ? void 0 : _v$i5.memory, "\uFF08KB\uFF09"]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
children: ["\u8FD0\u884C\u65F6\u957F\uFF1A", v === null || v === void 0 || (_v$i6 = v[i]) === null || _v$i6 === void 0 ? void 0 : _v$i6.run_time, "\uFF08ms\uFF09"]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
children: ["\u5F97\u5206\uFF1A", v === null || v === void 0 || (_v$i7 = v[i]) === null || _v$i7 === void 0 ? void 0 : _v$i7.score]
|
|
|
})]
|
|
|
}),
|
|
|
content: /*#__PURE__*/(0,jsx_runtime.jsx)(ShixunStaticItem/* default */.Z, {
|
|
|
classroomList: classroomList,
|
|
|
user: user,
|
|
|
languages: [{
|
|
|
language: v === null || v === void 0 || (_v$i8 = v[i]) === null || _v$i8 === void 0 ? void 0 : _v$i8.language,
|
|
|
code: res === null || res === void 0 ? void 0 : res.code
|
|
|
}],
|
|
|
v: v,
|
|
|
shixunWorkReport: "shixunWorkReport",
|
|
|
dispatch: "dispatch",
|
|
|
autoHeight: false,
|
|
|
language: v.language,
|
|
|
game_id: v.id,
|
|
|
diff_code_count: v.diff_code_count
|
|
|
})
|
|
|
});
|
|
|
case 10:
|
|
|
case "end":
|
|
|
return _context2.stop();
|
|
|
}
|
|
|
}, _callee2);
|
|
|
}))
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
style: {
|
|
|
margin: '0px 10px'
|
|
|
},
|
|
|
children: (v === null || v === void 0 || (_v$i9 = v[i]) === null || _v$i9 === void 0 ? void 0 : _v$i9.answer_question_time) || '- -'
|
|
|
}), v !== null && v !== void 0 && (_v$i10 = v[i]) !== null && _v$i10 !== void 0 && _v$i10.submit_count ? /*#__PURE__*/(0,jsx_runtime.jsxs)(tooltip/* default */.Z, {
|
|
|
title: "".concat((v === null || v === void 0 || (_v$i11 = v[i]) === null || _v$i11 === void 0 ? void 0 : _v$i11.submit_count) || 0, "\u6B21\u5C1D\u8BD5\u51FA\u9519"),
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
style: {
|
|
|
color: 'red',
|
|
|
marginRight: 5
|
|
|
},
|
|
|
className: "iconfont icon-Bug"
|
|
|
}), (v === null || v === void 0 || (_v$i12 = v[i]) === null || _v$i12 === void 0 ? void 0 : _v$i12.submit_count) || 0]
|
|
|
}) : null]
|
|
|
})
|
|
|
});
|
|
|
};
|
|
|
tables.push(aa);
|
|
|
};
|
|
|
for (var i = 0; i < (datas === null || datas === void 0 || (_datas$question_data = datas.question_data) === null || _datas$question_data === void 0 ? void 0 : _datas$question_data.length); i++) {
|
|
|
var _datas$question_data;
|
|
|
_loop(i);
|
|
|
}
|
|
|
settables(toConsumableArray_default()(tables));
|
|
|
}, [datas === null || datas === void 0 ? void 0 : datas.question_data]);
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
var _user$userInfo;
|
|
|
if (user !== null && user !== void 0 && (_user$userInfo = user.userInfo) !== null && _user$userInfo !== void 0 && _user$userInfo.course) {
|
|
|
if ((0,authority/* isStudent */.dE)()) {
|
|
|
params.course_group = (0,authority/* isStudent */.dE)() ? [user.userInfo.course.course_group_id] : [];
|
|
|
setParams(objectSpread2_default()({}, params));
|
|
|
}
|
|
|
getdata(1);
|
|
|
}
|
|
|
}, [user === null || user === void 0 ? void 0 : user.userInfo]);
|
|
|
function getdata(_x) {
|
|
|
return _getdata.apply(this, arguments);
|
|
|
}
|
|
|
function _getdata() {
|
|
|
_getdata = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee5(type) {
|
|
|
var res, _res$course_group, bb, _loop2, i, _res$question_data;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee5$(_context6) {
|
|
|
while (1) switch (_context6.prev = _context6.next) {
|
|
|
case 0:
|
|
|
setisloading(true);
|
|
|
_context6.next = 3;
|
|
|
return (0,fetch/* default */.ZP)("/api/courses/rank_list.json", {
|
|
|
method: 'get',
|
|
|
params: objectSpread2_default()(objectSpread2_default()({}, params), {}, {
|
|
|
id: params.coursesId,
|
|
|
rank_type: 2,
|
|
|
homework_common_id: params.categoryId
|
|
|
})
|
|
|
});
|
|
|
case 3:
|
|
|
res = _context6.sent;
|
|
|
setdatas(res);
|
|
|
setisloading(false);
|
|
|
if (!(res.status != -1)) {
|
|
|
_context6.next = 19;
|
|
|
break;
|
|
|
}
|
|
|
if ((0,authority/* isStudent */.dE)()) {
|
|
|
if (type === 1) {
|
|
|
setcheckvalues([res === null || res === void 0 || (_res$course_group = res.course_group) === null || _res$course_group === void 0 || (_res$course_group = _res$course_group[0]) === null || _res$course_group === void 0 ? void 0 : _res$course_group.id]);
|
|
|
}
|
|
|
if (res !== null && res !== void 0 && res.my_rank) {
|
|
|
settabdata([res === null || res === void 0 ? void 0 : res.my_rank].concat(toConsumableArray_default()(res === null || res === void 0 ? void 0 : res.rank_list)));
|
|
|
} else {
|
|
|
settabdata(toConsumableArray_default()(res === null || res === void 0 ? void 0 : res.rank_list));
|
|
|
}
|
|
|
} else {
|
|
|
settabdata(toConsumableArray_default()(res === null || res === void 0 ? void 0 : res.rank_list));
|
|
|
}
|
|
|
if (!(type === 1)) {
|
|
|
_context6.next = 19;
|
|
|
break;
|
|
|
}
|
|
|
bb = {
|
|
|
title: /*#__PURE__*/(0,jsx_runtime.jsxs)(tooltip/* default */.Z, {
|
|
|
title: "\u603B\u8017\u65F6\u65F6\u4E3A\u505A\u9898\u901A\u8FC7\u65F6\u957F\u548C\u7F5A\u65F6\u65F6\u957F\u7684\u603B\u548C\uFF0C\n \u7F5A\u65F6\u65F6\u957F=\u8BC4\u6D4B\u51FA\u9519\u6B21\u6570X\u8BBE\u7F6E\u7684\u7F5A\u65F6\uFF08\u5F53\u524D\u4E3A".concat(res === null || res === void 0 ? void 0 : res.punish_time, "\u5206\uFF09"),
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
style: {
|
|
|
marginRight: 3
|
|
|
},
|
|
|
children: "\u603B\u8017\u65F6"
|
|
|
}), " ", /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
style: {
|
|
|
fontSize: '14px'
|
|
|
},
|
|
|
className: "iconfont icon-tishixiaowenhao c-blue"
|
|
|
})]
|
|
|
}),
|
|
|
dataIndex: 'finish_time',
|
|
|
width: 150,
|
|
|
ellipsis: true,
|
|
|
fixed: 'left',
|
|
|
key: 'finish_time'
|
|
|
};
|
|
|
tables.push(bb);
|
|
|
_loop2 = /*#__PURE__*/regeneratorRuntime_default()().mark(function _loop2(i) {
|
|
|
var _res$question_data2, _res$question_data4;
|
|
|
var aa;
|
|
|
return regeneratorRuntime_default()().wrap(function _loop2$(_context5) {
|
|
|
while (1) switch (_context5.prev = _context5.next) {
|
|
|
case 0:
|
|
|
aa = {};
|
|
|
aa.title = res !== null && res !== void 0 && res.sent_type ? /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
children: "\u9898\u76EE" + (i + 1) + "\uFF08".concat(res === null || res === void 0 || (_res$question_data2 = res.question_data) === null || _res$question_data2 === void 0 || (_res$question_data2 = _res$question_data2[i]) === null || _res$question_data2 === void 0 ? void 0 : _res$question_data2.question_score, "\uFF09")
|
|
|
}) : /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
|
|
|
onClick: /*#__PURE__*/asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee3() {
|
|
|
var _res$question_data3;
|
|
|
var res1;
|
|
|
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/problems/".concat(res === null || res === void 0 || (_res$question_data3 = res.question_data) === null || _res$question_data3 === void 0 || (_res$question_data3 = _res$question_data3[i]) === null || _res$question_data3 === void 0 ? void 0 : _res$question_data3.identifier, "/start.json"), {
|
|
|
method: 'get'
|
|
|
});
|
|
|
case 2:
|
|
|
res1 = _context3.sent;
|
|
|
if (res1) {
|
|
|
window.open("/myproblems/".concat(res1 === null || res1 === void 0 ? void 0 : res1.identifier, "?type=1"));
|
|
|
localStorage.setItem('program_homework', [params.coursesId, params.categoryId]);
|
|
|
}
|
|
|
case 4:
|
|
|
case "end":
|
|
|
return _context3.stop();
|
|
|
}
|
|
|
}, _callee3);
|
|
|
})),
|
|
|
children: "\u9898\u76EE" + (i + 1) + "\uFF08".concat(res === null || res === void 0 || (_res$question_data4 = res.question_data) === null || _res$question_data4 === void 0 || (_res$question_data4 = _res$question_data4[i]) === null || _res$question_data4 === void 0 ? void 0 : _res$question_data4.question_score, "\uFF09")
|
|
|
});
|
|
|
aa.dataIndex = 'question_data';
|
|
|
aa.width = 250;
|
|
|
aa.render = function (v, r) {
|
|
|
var _v$i13, _v$i21, _v$i22, _v$i23, _v$i24;
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
children: (v === null || v === void 0 || (_v$i13 = v[i]) === null || _v$i13 === void 0 ? void 0 : _v$i13.answer_question_time) && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
style: {
|
|
|
cursor: 'pointer'
|
|
|
},
|
|
|
className: "iconfont icon-shixun4 c-blue",
|
|
|
onClick: /*#__PURE__*/asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee4() {
|
|
|
var _classroomList$Assist2, _v$i14, _v$i15, _v$i16, _v$i17, _v$i18, _v$i19, _v$i20;
|
|
|
var res;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee4$(_context4) {
|
|
|
while (1) switch (_context4.prev = _context4.next) {
|
|
|
case 0:
|
|
|
if (!((0,authority/* isAssistant */.Rm)() && !((_classroomList$Assist2 = classroomList.AssistantObject.hack) !== null && _classroomList$Assist2 !== void 0 && _classroomList$Assist2.can_view))) {
|
|
|
_context4.next = 3;
|
|
|
break;
|
|
|
}
|
|
|
message/* default */.ZP.warning('您未获取此权限,需向管理员申请权限才能使用此功能');
|
|
|
return _context4.abrupt("return");
|
|
|
case 3:
|
|
|
if (v !== null && v !== void 0 && (_v$i14 = v[i]) !== null && _v$i14 !== void 0 && _v$i14.open_code) {
|
|
|
_context4.next = 6;
|
|
|
break;
|
|
|
}
|
|
|
message/* default */.ZP.info('暂不允许查看代码');
|
|
|
return _context4.abrupt("return");
|
|
|
case 6:
|
|
|
_context4.next = 8;
|
|
|
return (0,fetch/* default */.ZP)("/api/courses/view_code.json", {
|
|
|
method: 'get',
|
|
|
params: objectSpread2_default()(objectSpread2_default()({}, params), {}, {
|
|
|
id: params.coursesId,
|
|
|
homework_common_id: params.categoryId,
|
|
|
hack_user_code_id: v === null || v === void 0 || (_v$i15 = v[i]) === null || _v$i15 === void 0 ? void 0 : _v$i15.hack_user_code_id
|
|
|
})
|
|
|
});
|
|
|
case 8:
|
|
|
res = _context4.sent;
|
|
|
modal/* default */.Z.warning({
|
|
|
icon: null,
|
|
|
width: 800,
|
|
|
title: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
children: "\u4EE3\u7801"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
children: ["\u4F7F\u7528\u8BED\u8A00\uFF1A", v === null || v === void 0 || (_v$i16 = v[i]) === null || _v$i16 === void 0 ? void 0 : _v$i16.current_language]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
children: ["\u8FD0\u884C\u5185\u5B58\uFF1A", v === null || v === void 0 || (_v$i17 = v[i]) === null || _v$i17 === void 0 ? void 0 : _v$i17.memory, "\uFF08KB\uFF09"]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
children: ["\u8FD0\u884C\u65F6\u957F\uFF1A", v === null || v === void 0 || (_v$i18 = v[i]) === null || _v$i18 === void 0 ? void 0 : _v$i18.run_time, "\uFF08ms\uFF09"]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
children: ["\u5F97\u5206\uFF1A", v === null || v === void 0 || (_v$i19 = v[i]) === null || _v$i19 === void 0 ? void 0 : _v$i19.score]
|
|
|
})]
|
|
|
}),
|
|
|
content: /*#__PURE__*/(0,jsx_runtime.jsx)(ShixunStaticItem/* default */.Z, {
|
|
|
classroomList: classroomList,
|
|
|
user: user,
|
|
|
languages: [{
|
|
|
language: v === null || v === void 0 || (_v$i20 = v[i]) === null || _v$i20 === void 0 ? void 0 : _v$i20.language,
|
|
|
code: res === null || res === void 0 ? void 0 : res.code
|
|
|
}],
|
|
|
v: v,
|
|
|
shixunWorkReport: "shixunWorkReport",
|
|
|
dispatch: "dispatch",
|
|
|
autoHeight: false,
|
|
|
language: v.language,
|
|
|
game_id: v.id,
|
|
|
diff_code_count: v.diff_code_count
|
|
|
})
|
|
|
});
|
|
|
case 10:
|
|
|
case "end":
|
|
|
return _context4.stop();
|
|
|
}
|
|
|
}, _callee4);
|
|
|
}))
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
style: {
|
|
|
margin: '0px 10px'
|
|
|
},
|
|
|
children: (v === null || v === void 0 || (_v$i21 = v[i]) === null || _v$i21 === void 0 ? void 0 : _v$i21.answer_question_time) || '- -'
|
|
|
}), v !== null && v !== void 0 && (_v$i22 = v[i]) !== null && _v$i22 !== void 0 && _v$i22.submit_count ? /*#__PURE__*/(0,jsx_runtime.jsxs)(tooltip/* default */.Z, {
|
|
|
title: "".concat((v === null || v === void 0 || (_v$i23 = v[i]) === null || _v$i23 === void 0 ? void 0 : _v$i23.submit_count) || 0, "\u6B21\u5C1D\u8BD5\u51FA\u9519"),
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
style: {
|
|
|
color: 'red',
|
|
|
marginRight: 5
|
|
|
},
|
|
|
className: "iconfont icon-Bug"
|
|
|
}), (v === null || v === void 0 || (_v$i24 = v[i]) === null || _v$i24 === void 0 ? void 0 : _v$i24.submit_count) || 0]
|
|
|
}) : null]
|
|
|
})
|
|
|
});
|
|
|
};
|
|
|
tables.push(aa);
|
|
|
case 6:
|
|
|
case "end":
|
|
|
return _context5.stop();
|
|
|
}
|
|
|
}, _loop2);
|
|
|
});
|
|
|
i = 0;
|
|
|
case 13:
|
|
|
if (!(i < (res === null || res === void 0 || (_res$question_data = res.question_data) === null || _res$question_data === void 0 ? void 0 : _res$question_data.length))) {
|
|
|
_context6.next = 18;
|
|
|
break;
|
|
|
}
|
|
|
return _context6.delegateYield(_loop2(i), "t0", 15);
|
|
|
case 15:
|
|
|
i++;
|
|
|
_context6.next = 13;
|
|
|
break;
|
|
|
case 18:
|
|
|
settables(toConsumableArray_default()(tables));
|
|
|
case 19:
|
|
|
case "end":
|
|
|
return _context6.stop();
|
|
|
}
|
|
|
}, _callee5);
|
|
|
}));
|
|
|
return _getdata.apply(this, arguments);
|
|
|
}
|
|
|
console.log('----', tables);
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
style: {
|
|
|
width: 1200,
|
|
|
margin: '0px auto'
|
|
|
},
|
|
|
children: (datas === null || datas === void 0 ? void 0 : datas.message) === '封榜中' ? /*#__PURE__*/(0,jsx_runtime.jsx)(NoData/* default */.Z, {
|
|
|
customText: '答题时间进入倒计时,暂时封榜,请加速竞技通关答题'
|
|
|
}) : /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
style: {
|
|
|
background: '#fff',
|
|
|
padding: 20
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
style: {
|
|
|
display: 'inline-flex'
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("label", {
|
|
|
children: "\u5206\u73ED\u60C5\u51B5\uFF1A"
|
|
|
}), (0,authority/* isAdmin */.GJ)() && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
style: {
|
|
|
flex: 1
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(es_checkbox/* default */.Z.Group, {
|
|
|
className: Detailmodules/* default */.Z.checkboxgroup,
|
|
|
value: checkvalues,
|
|
|
onChange: function onChange(values) {
|
|
|
if (params.type === 1) {
|
|
|
setcheckvalues([]);
|
|
|
params.course_group = [];
|
|
|
params.page = 1;
|
|
|
setParams(objectSpread2_default()({}, params));
|
|
|
getdata();
|
|
|
} else if (params.type === 2) {
|
|
|
var _datas$course_group;
|
|
|
setcheckvalues(['全部'].concat());
|
|
|
params.course_group = datas === null || datas === void 0 || (_datas$course_group = datas.course_group) === null || _datas$course_group === void 0 ? void 0 : _datas$course_group.map(function (item) {
|
|
|
return item.id;
|
|
|
});
|
|
|
params.page = 1;
|
|
|
setParams(objectSpread2_default()({}, params));
|
|
|
getdata();
|
|
|
} else {
|
|
|
setcheckvalues(toConsumableArray_default()(values.filter(function (item) {
|
|
|
return item != '全部';
|
|
|
})));
|
|
|
params.course_group = values.filter(function (item) {
|
|
|
return item != '全部';
|
|
|
});
|
|
|
params.page = 1;
|
|
|
setParams(objectSpread2_default()({}, params));
|
|
|
getdata();
|
|
|
}
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_checkbox/* default */.Z, {
|
|
|
value: "全部",
|
|
|
onChange: function onChange(e) {
|
|
|
if (e.target.checked) {
|
|
|
params.type = 2;
|
|
|
} else {
|
|
|
params.type = 1;
|
|
|
}
|
|
|
},
|
|
|
children: "\u5168\u90E8\u5206\u73ED"
|
|
|
}), datas === null || datas === void 0 || (_datas$course_group2 = datas.course_group) === null || _datas$course_group2 === void 0 ? void 0 : _datas$course_group2.map(function (item, index) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(es_checkbox/* default */.Z, {
|
|
|
onChange: function onChange(e) {
|
|
|
params.type = 3;
|
|
|
},
|
|
|
value: item.id,
|
|
|
children: item === null || item === void 0 ? void 0 : item.name
|
|
|
});
|
|
|
})]
|
|
|
})
|
|
|
}), (0,authority/* isStudent */.dE)() && /*#__PURE__*/(0,jsx_runtime.jsxs)(es_radio/* default.Group */.ZP.Group, {
|
|
|
onChange: function onChange(e) {
|
|
|
if (e.target.value === '全部') {
|
|
|
params.course_group = [];
|
|
|
params.page = 1;
|
|
|
setParams(objectSpread2_default()({}, params));
|
|
|
getdata();
|
|
|
} else {
|
|
|
params.course_group = [e.target.value];
|
|
|
params.page = 1;
|
|
|
setParams(objectSpread2_default()({}, params));
|
|
|
getdata();
|
|
|
}
|
|
|
},
|
|
|
defaultValue: user.userInfo.course.course_group_id,
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
|
|
|
value: '全部',
|
|
|
children: "\u5168\u90E8\u5206\u73ED"
|
|
|
}), datas === null || datas === void 0 || (_datas$course_group3 = datas.course_group) === null || _datas$course_group3 === void 0 ? void 0 : _datas$course_group3.map(function (item, index) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
|
|
|
value: item.id,
|
|
|
children: item.name
|
|
|
});
|
|
|
})]
|
|
|
})]
|
|
|
}), (0,authority/* isAdmin */.GJ)() && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
style: {
|
|
|
width: '100%',
|
|
|
display: 'flex',
|
|
|
justifyContent: 'space-between',
|
|
|
marginTop: 10
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
|
|
|
style: {
|
|
|
fontSize: 14,
|
|
|
color: '#B1BACD'
|
|
|
},
|
|
|
children: ["\u6392\u884C\u89C4\u5219\uFF1A\u65F6\u95F4\u7ED3\u675F\u540E\u6B63\u5F0F\u5C01\u699C\uFF0C\u65F6\u95F4\u6BB5\u4E4B\u5916\u7684\u63D0\u4EA4\u4E0D\u8BA1\u5165\u6392\u884C\u3002 ", /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
|
|
|
onClick: function onClick() {
|
|
|
modal/* default */.Z.warning({
|
|
|
title: '计分规则',
|
|
|
width: 500,
|
|
|
content: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("p", {
|
|
|
children: "\u6392\u540D\u89C4\u5219\uFF1A\u7ECF\u5178ACM\u89C4\u5219"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
|
|
|
children: "AC\uFF08\u901A\u8FC7\u9898\u76EE\uFF09\u8D8A\u591A\uFF0C\u6392\u540D\u8D8A\u9760\u524D\u3002"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
|
|
|
children: "AC\u76F8\u540C\uFF0C\u603B\u7528\u65F6\u8D8A\u5C11\uFF0C\u6392\u540D\u8D8A\u9760\u524D\u3002"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
|
|
|
children: "\u603B\u7528\u65F6=\u2211\uFF08\u6BCF\u4E00\u4E2A\u9898\u76EE\u7684\u7528\u65F6\uFF09"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
|
|
|
children: "\u6BCF\u4E00\u4E2A\u9898\u76EE\u7684\u7528\u65F6=\u6BD4\u8D5B\u5F00\u59CB\u5230\u63D0\u4EA4\u88AB\u901A\u8FC7\u7684\u65F6\u95F4+\u7F5A\u65F6"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
|
|
|
children: "\u7F5A\u65F6=\uFF08\u901A\u8FC7\u524D\uFF09\u9519\u8BEF\u4EE3\u7801\u63D0\u4EA4\u6B21\u6570*\u6BCF\u6B21\u7F5A\u65F6"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
|
|
|
children: "\u4E0D\u7B97\u7F5A\u65F6\u7684\u60C5\u51B5\uFF1A\u6CA1\u6709\u901A\u8FC7\u7684\u9898\u76EE\u3001\uFF08\u7CFB\u7EDF\uFF09\u5185\u90E8\u9519\u8BEF\u3001\u7F16\u8BD1\u9519\u8BEF"
|
|
|
})]
|
|
|
})
|
|
|
});
|
|
|
},
|
|
|
children: "\u70B9\u51FB\u67E5\u770B\u8BA1\u5206\u89C4\u5219"
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
|
onClick: function onClick() {
|
|
|
(0,utils_export/* getrank_list */.VY)(objectSpread2_default()(objectSpread2_default()({}, params), {}, {
|
|
|
id: params.coursesId,
|
|
|
rank_type: 2,
|
|
|
homework_common_id: params.categoryId
|
|
|
}));
|
|
|
},
|
|
|
children: "\u5BFC\u51FA"
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(spin/* default */.Z, {
|
|
|
spinning: isloading,
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(table/* default */.Z, {
|
|
|
style: {
|
|
|
marginTop: 10
|
|
|
},
|
|
|
pagination: false,
|
|
|
scroll: {
|
|
|
x: 1200
|
|
|
},
|
|
|
rowClassName: function rowClassName(record, index) {
|
|
|
return index === 0 && (0,authority/* isStudent */.dE)() && Detailmodules/* default */.Z.tables;
|
|
|
},
|
|
|
dataSource: tabdata,
|
|
|
columns: tables
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
style: {
|
|
|
width: '100%',
|
|
|
textAlign: 'center',
|
|
|
marginTop: 10
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(pagination/* default */.Z, {
|
|
|
current: params.page,
|
|
|
pageSize: params.per_page,
|
|
|
total: datas === null || datas === void 0 ? void 0 : datas.count,
|
|
|
hideOnSinglePage: true,
|
|
|
onChange: function onChange(e, pageSize) {
|
|
|
params.page = e;
|
|
|
params.per_page = pageSize;
|
|
|
setParams(objectSpread2_default()({}, params));
|
|
|
getdata();
|
|
|
}
|
|
|
})
|
|
|
})]
|
|
|
})
|
|
|
});
|
|
|
};
|
|
|
/* harmony default export */ var Ranking = ((0,_umi_production_exports.connect)(function (_ref6) {
|
|
|
var user = _ref6.user,
|
|
|
classroomList = _ref6.classroomList;
|
|
|
return {
|
|
|
user: user,
|
|
|
classroomList: classroomList
|
|
|
};
|
|
|
})(List));
|
|
|
// export default List;
|
|
|
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/Detail/index.tsx
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// import CutOffNow from '../components/CutOffNow'
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var qualityList = [{
|
|
|
live: 'A',
|
|
|
gz: '0个错误',
|
|
|
ld: '0个漏洞',
|
|
|
gf: '0 - 5%'
|
|
|
}, {
|
|
|
live: 'B',
|
|
|
gz: '至少1个次要错误',
|
|
|
ld: '至少1个次要漏洞',
|
|
|
gf: '6% - 10%'
|
|
|
}, {
|
|
|
live: 'C',
|
|
|
gz: '至少1个主要错误',
|
|
|
ld: '至少1个主要漏洞',
|
|
|
gf: '11% - 20%'
|
|
|
}, {
|
|
|
live: 'D',
|
|
|
gz: '至少1个严重错误',
|
|
|
ld: '至少1个严重漏洞',
|
|
|
gf: '21% - 50%'
|
|
|
}, {
|
|
|
live: 'E',
|
|
|
gz: '至少1个崩溃错误',
|
|
|
ld: '至少1个崩溃漏洞',
|
|
|
gf: '超过50%'
|
|
|
}];
|
|
|
var Detail_ShixunsListPage = function ShixunsListPage(_ref) {
|
|
|
var _workList$homework_st4;
|
|
|
var shixunHomeworks = _ref.shixunHomeworks,
|
|
|
classroomList = _ref.classroomList,
|
|
|
globalSetting = _ref.globalSetting,
|
|
|
user = _ref.user,
|
|
|
loading = _ref.loading,
|
|
|
dispatch = _ref.dispatch;
|
|
|
var params = (0,_umi_production_exports.useParams)();
|
|
|
var _useSearchParams = (0,_umi_production_exports.useSearchParams)(),
|
|
|
_useSearchParams2 = slicedToArray_default()(_useSearchParams, 1),
|
|
|
searchParams = _useSearchParams2[0];
|
|
|
var _useState = (0,_react_17_0_2_react.useState)(searchParams.get("tabs") || "0"),
|
|
|
_useState2 = slicedToArray_default()(_useState, 2),
|
|
|
activeTabs = _useState2[0],
|
|
|
setActiveTabs = _useState2[1];
|
|
|
var _useState3 = (0,_react_17_0_2_react.useState)({}),
|
|
|
_useState4 = slicedToArray_default()(_useState3, 2),
|
|
|
exportParams = _useState4[0],
|
|
|
setExportParams = _useState4[1];
|
|
|
var workList = shixunHomeworks.workList,
|
|
|
workSetting = shixunHomeworks.workSetting;
|
|
|
var _useState5 = (0,_react_17_0_2_react.useState)(false),
|
|
|
_useState6 = slicedToArray_default()(_useState5, 2),
|
|
|
qualityshow = _useState6[0],
|
|
|
setqualityshow = _useState6[1];
|
|
|
params['category'] = searchParams.get("category_id");
|
|
|
params["order"] = "work_score";
|
|
|
params["b_order"] = "desc";
|
|
|
(0,_react_17_0_2_react.useEffect)(function () {
|
|
|
dispatch({
|
|
|
type: 'classroomList/getAssistantPermissions',
|
|
|
payload: {
|
|
|
course_id: params.coursesId
|
|
|
}
|
|
|
});
|
|
|
}, [(0,authority/* isLogin */.bg)()]);
|
|
|
var handleChangeTab = function handleChangeTab(v) {
|
|
|
var _classroomList$Assist;
|
|
|
if (v === '5' && !((_classroomList$Assist = classroomList.AssistantObject.hack) !== null && _classroomList$Assist !== void 0 && _classroomList$Assist.can_exam_leaderboard) && (0,authority/* isAssistant */.Rm)()) {
|
|
|
message/* default */.ZP.warning('您未获取此权限,需向管理员申请权限才能使用此功能');
|
|
|
return;
|
|
|
}
|
|
|
setActiveTabs(v);
|
|
|
if (v === '0') {
|
|
|
dispatch({
|
|
|
type: 'shixunHomeworks/getWorkList',
|
|
|
payload: params
|
|
|
});
|
|
|
}
|
|
|
};
|
|
|
var handleRedo = function handleRedo() {
|
|
|
modal/* default */.Z.confirm({
|
|
|
centered: true,
|
|
|
width: 530,
|
|
|
title: '提示',
|
|
|
okText: '确定',
|
|
|
cancelText: '取消',
|
|
|
content: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: "tc font16",
|
|
|
children: ["\u4F60\u5728\u8BE5\u5B9E\u8BAD\u7684\u5B66\u4E60\u8BB0\u5F55\u5C06\u88AB\u6E05\u7A7A\uFF0C\u65E0\u6CD5\u6062\u590D", /*#__PURE__*/(0,jsx_runtime.jsx)("br", {}), "\u662F\u5426\u786E\u8BA4\u91CD\u505A\uFF1F"]
|
|
|
}),
|
|
|
onOk: function () {
|
|
|
var _onOk = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
|
|
|
var _shixunHomeworks$work;
|
|
|
var id, res;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
|
|
|
while (1) switch (_context.prev = _context.next) {
|
|
|
case 0:
|
|
|
id = (_shixunHomeworks$work = shixunHomeworks.workList) === null || _shixunHomeworks$work === void 0 ? void 0 : _shixunHomeworks$work.myshixun_identifier;
|
|
|
_context.next = 3;
|
|
|
return (0,service_shixunHomeworks/* shixunResetMyGame */.Fr)({
|
|
|
id: id
|
|
|
});
|
|
|
case 3:
|
|
|
res = _context.sent;
|
|
|
if (res) {
|
|
|
message/* default */.ZP.info("已清空本实训的学习记录\n" + "\n" + "请点击“开启挑战”重做课程实验");
|
|
|
dispatch({
|
|
|
type: 'shixunHomeworks/getWorkList',
|
|
|
payload: exportParams
|
|
|
});
|
|
|
}
|
|
|
case 5:
|
|
|
case "end":
|
|
|
return _context.stop();
|
|
|
}
|
|
|
}, _callee);
|
|
|
}));
|
|
|
function onOk() {
|
|
|
return _onOk.apply(this, arguments);
|
|
|
}
|
|
|
return onOk;
|
|
|
}()
|
|
|
});
|
|
|
};
|
|
|
var handleResetGame = function handleResetGame(url) {
|
|
|
var _url;
|
|
|
url = (_url = url) !== null && _url !== void 0 && _url.includes('.json') ? url : "".concat(url, ".json");
|
|
|
modal/* default */.Z.confirm({
|
|
|
centered: true,
|
|
|
title: '提示',
|
|
|
okText: '确定',
|
|
|
cancelText: '取消',
|
|
|
content: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
|
|
|
className: "tc font16",
|
|
|
children: "\u5B9E\u8BAD\u5DF2\u7ECF\u66F4\u65B0\u4E86\uFF0C\u6B63\u5728\u4E3A\u60A8\u91CD\u7F6E!"
|
|
|
}),
|
|
|
onOk: function () {
|
|
|
var _onOk2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2() {
|
|
|
var res, execRes;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
|
|
|
while (1) switch (_context2.prev = _context2.next) {
|
|
|
case 0:
|
|
|
_context2.next = 2;
|
|
|
return (0,shixuns/* resetMyGame */.$Q)({
|
|
|
url: url
|
|
|
});
|
|
|
case 2:
|
|
|
res = _context2.sent;
|
|
|
if (res) {
|
|
|
_context2.next = 5;
|
|
|
break;
|
|
|
}
|
|
|
return _context2.abrupt("return");
|
|
|
case 5:
|
|
|
message/* default */.ZP.success("重置成功,正在进入实践项目!");
|
|
|
_context2.next = 8;
|
|
|
return (0,shixuns/* execShixun */.Ir)({
|
|
|
id: res.shixun_identifier
|
|
|
});
|
|
|
case 8:
|
|
|
execRes = _context2.sent;
|
|
|
if (!(execRes !== null && execRes !== void 0 && execRes.game_identifier)) {
|
|
|
_context2.next = 12;
|
|
|
break;
|
|
|
}
|
|
|
(0,util/* openNewWindow */.xg)("/tasks/".concat(execRes.game_identifier, "?coursesId=").concat(params.coursesId));
|
|
|
return _context2.abrupt("return");
|
|
|
case 12:
|
|
|
if ((execRes === null || execRes === void 0 ? void 0 : execRes.status) === 2) {
|
|
|
handleResetGame(execRes === null || execRes === void 0 ? void 0 : execRes.message);
|
|
|
} else if ((execRes === null || execRes === void 0 ? void 0 : execRes.status) === 3) {
|
|
|
handleInBeta(execRes === null || execRes === void 0 ? void 0 : execRes.message);
|
|
|
}
|
|
|
case 13:
|
|
|
case "end":
|
|
|
return _context2.stop();
|
|
|
}
|
|
|
}, _callee2);
|
|
|
}));
|
|
|
function onOk() {
|
|
|
return _onOk2.apply(this, arguments);
|
|
|
}
|
|
|
return onOk;
|
|
|
}()
|
|
|
});
|
|
|
};
|
|
|
var handleInBeta = function handleInBeta(message) {
|
|
|
modal/* default */.Z.confirm({
|
|
|
centered: true,
|
|
|
title: '提示',
|
|
|
okText: '确定',
|
|
|
cancelText: '取消',
|
|
|
content: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: "tc font16",
|
|
|
children: ["\u76EE\u524D\u8BE5\u5B9E\u8DF5\u9879\u76EE\u5C1A\u5728\u5185\u6D4B\u4E2D\uFF0C\u5C06\u4E8E", message, "\u4E4B\u540E\u5F00\u653E\uFF0C\u8C22\u8C22\uFF01"]
|
|
|
})
|
|
|
});
|
|
|
};
|
|
|
var handleStartShixun = /*#__PURE__*/function () {
|
|
|
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee3(url) {
|
|
|
var _url2;
|
|
|
var execRes;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee3$(_context3) {
|
|
|
while (1) switch (_context3.prev = _context3.next) {
|
|
|
case 0:
|
|
|
url = (_url2 = url) !== null && _url2 !== void 0 && _url2.includes('.json') ? url : "".concat(url, ".json");
|
|
|
_context3.next = 3;
|
|
|
return (0,shixuns/* resetMyGame */.$Q)({
|
|
|
url: url
|
|
|
});
|
|
|
case 3:
|
|
|
execRes = _context3.sent;
|
|
|
console.log(execRes, 'execRes');
|
|
|
if (!(execRes !== null && execRes !== void 0 && execRes.game_identifier)) {
|
|
|
_context3.next = 8;
|
|
|
break;
|
|
|
}
|
|
|
(0,util/* openNewWindow */.xg)("/tasks/".concat(execRes.game_identifier, "?coursesId=").concat(params.coursesId));
|
|
|
return _context3.abrupt("return");
|
|
|
case 8:
|
|
|
if ((execRes === null || execRes === void 0 ? void 0 : execRes.status) === -3) {
|
|
|
(0,util/* bindPhone */.eF)();
|
|
|
} else if ((execRes === null || execRes === void 0 ? void 0 : execRes.status) === 2) {
|
|
|
handleResetGame(execRes === null || execRes === void 0 ? void 0 : execRes.message);
|
|
|
} else if ((execRes === null || execRes === void 0 ? void 0 : execRes.status) === 3) {
|
|
|
handleInBeta(execRes === null || execRes === void 0 ? void 0 : execRes.message);
|
|
|
}
|
|
|
case 9:
|
|
|
case "end":
|
|
|
return _context3.stop();
|
|
|
}
|
|
|
}, _callee3);
|
|
|
}));
|
|
|
return function handleStartShixun(_x) {
|
|
|
return _ref2.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var tabsArr = [{
|
|
|
name: '作业列表',
|
|
|
id: "0",
|
|
|
compontent: /*#__PURE__*/(0,jsx_runtime.jsx)(components_WorkList, {
|
|
|
setExportParams: setExportParams
|
|
|
}),
|
|
|
forceRender: true
|
|
|
}, {
|
|
|
name: '作业详情',
|
|
|
id: "1",
|
|
|
compontent: /*#__PURE__*/(0,jsx_runtime.jsx)(WorkDescription, {})
|
|
|
}, {
|
|
|
name: '排行榜',
|
|
|
id: "5",
|
|
|
compontent: /*#__PURE__*/(0,jsx_runtime.jsx)(Ranking, {})
|
|
|
}, {
|
|
|
name: '代码查重',
|
|
|
id: "2",
|
|
|
compontent: /*#__PURE__*/(0,jsx_runtime.jsx)(CodeReview, {})
|
|
|
},
|
|
|
// { name: '质量检测', id: "4", compontent: <QualityActivity /> },
|
|
|
{
|
|
|
name: (0,authority/* isAdmin */.GJ)() ? "高级设置" : "得分规则",
|
|
|
id: "3",
|
|
|
compontent: /*#__PURE__*/(0,jsx_runtime.jsx)(ConfigWorks, {}),
|
|
|
forceRender: true
|
|
|
}, {
|
|
|
name: /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
|
|
|
style: {
|
|
|
color: '#b9b8b8'
|
|
|
},
|
|
|
href: "/classrooms/".concat(params.coursesId, "/program_homework/").concat(params.categoryId, "/answer"),
|
|
|
children: "\u89E3\u7B54&\u8BA8\u8BBA"
|
|
|
}),
|
|
|
id: "6",
|
|
|
compontent: false
|
|
|
}].filter(function (item) {
|
|
|
var _workList$homework_st;
|
|
|
if ((0,authority/* isStudent */.dE)()) {
|
|
|
return item.name !== '代码查重';
|
|
|
} else if ((0,authority/* isStudent */.dE)() || (workList === null || workList === void 0 || (_workList$homework_st = workList.homework_status) === null || _workList$homework_st === void 0 ? void 0 : _workList$homework_st[0]) !== '已截止') {
|
|
|
return item.name !== '质量检测';
|
|
|
} else {
|
|
|
var _workList$homework_st2;
|
|
|
if (!workList.code_review && (workList === null || workList === void 0 || (_workList$homework_st2 = workList.homework_status) === null || _workList$homework_st2 === void 0 ? void 0 : _workList$homework_st2[0]) !== '未发布') {
|
|
|
return true;
|
|
|
} else {
|
|
|
return item.name !== '代码查重';
|
|
|
}
|
|
|
}
|
|
|
}).filter(function (item) {
|
|
|
if (!workList.open_code_quality_analysis) {
|
|
|
return item.name !== '质量检测';
|
|
|
} else {
|
|
|
return true;
|
|
|
}
|
|
|
});
|
|
|
var getTabButton = function getTabButton() {
|
|
|
var _shixunHomeworks$work2, _shixunHomeworks$work3, _shixunHomeworks$work4, _shixunHomeworks$work8, _shixunHomeworks$work9, _shixunHomeworks$work10, _shixunHomeworks$work12, _workList$homework_st3;
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
|
|
|
className: Detailmodules/* default */.Z.workListTabButton,
|
|
|
children: [(0,authority/* isStudent */.dE)() && ((_shixunHomeworks$work2 = shixunHomeworks.workList) === null || _shixunHomeworks$work2 === void 0 ? void 0 : _shixunHomeworks$work2.redo_work) && /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
|
onClick: handleRedo,
|
|
|
type: "primary",
|
|
|
icon: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
|
className: "iconfont icon-dahuizhongzuo3x"
|
|
|
}),
|
|
|
children: "\u91CD\u505A"
|
|
|
}), ((_shixunHomeworks$work3 = shixunHomeworks.workList) === null || _shixunHomeworks$work3 === void 0 ? void 0 : _shixunHomeworks$work3.shixun_status) > 1 && ((_shixunHomeworks$work4 = shixunHomeworks.workList) === null || _shixunHomeworks$work4 === void 0 ? void 0 : _shixunHomeworks$work4.time_status) < 5 && (0,authority/* isStudent */.dE)() && /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
|
type: "primary",
|
|
|
icon: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
|
className: "iconfont icon-kaiqizhong"
|
|
|
}),
|
|
|
onClick: function onClick() {
|
|
|
var _shixunHomeworks$work5, _shixunHomeworks$work6, _shixunHomeworks$work7;
|
|
|
if (!(0,verifyLogin/* handleVerify */.tJ)(dispatch, true)) {
|
|
|
return;
|
|
|
}
|
|
|
(_shixunHomeworks$work5 = shixunHomeworks.workList) !== null && _shixunHomeworks$work5 !== void 0 && (_shixunHomeworks$work5 = _shixunHomeworks$work5.task_operation) !== null && _shixunHomeworks$work5 !== void 0 && (_shixunHomeworks$work5 = _shixunHomeworks$work5[1]) !== null && _shixunHomeworks$work5 !== void 0 && _shixunHomeworks$work5.includes('/') ? handleStartShixun((_shixunHomeworks$work6 = shixunHomeworks.workList) === null || _shixunHomeworks$work6 === void 0 || (_shixunHomeworks$work6 = _shixunHomeworks$work6.task_operation) === null || _shixunHomeworks$work6 === void 0 ? void 0 : _shixunHomeworks$work6[1]) : (0,util/* openNewWindow */.xg)("/tasks/".concat((_shixunHomeworks$work7 = shixunHomeworks.workList) === null || _shixunHomeworks$work7 === void 0 || (_shixunHomeworks$work7 = _shixunHomeworks$work7.task_operation) === null || _shixunHomeworks$work7 === void 0 ? void 0 : _shixunHomeworks$work7[1]));
|
|
|
},
|
|
|
children: (_shixunHomeworks$work8 = shixunHomeworks.workList) === null || _shixunHomeworks$work8 === void 0 || (_shixunHomeworks$work8 = _shixunHomeworks$work8.task_operation) === null || _shixunHomeworks$work8 === void 0 ? void 0 : _shixunHomeworks$work8[0]
|
|
|
}), ((_shixunHomeworks$work9 = shixunHomeworks.workList) === null || _shixunHomeworks$work9 === void 0 ? void 0 : _shixunHomeworks$work9.commit_des) && ((_shixunHomeworks$work10 = shixunHomeworks.workList) === null || _shixunHomeworks$work10 === void 0 ? void 0 : _shixunHomeworks$work10.commit_des) && /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
|
type: "primary",
|
|
|
icon: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
|
className: "iconfont icon-tijiaozongjie"
|
|
|
}),
|
|
|
onClick: function onClick() {
|
|
|
var _shixunHomeworks$work11;
|
|
|
(0,util/* openNewWindow */.xg)("/classrooms/".concat(params.coursesId, "/shixun_homework/").concat(params.categoryId, "/").concat((_shixunHomeworks$work11 = shixunHomeworks.workList) === null || _shixunHomeworks$work11 === void 0 ? void 0 : _shixunHomeworks$work11.id, "/commitsummary"));
|
|
|
},
|
|
|
children: (_shixunHomeworks$work12 = shixunHomeworks.workList) === null || _shixunHomeworks$work12 === void 0 ? void 0 : _shixunHomeworks$work12.commit_des
|
|
|
}), (0,authority/* isAdmin */.GJ)() && (workList === null || workList === void 0 || (_workList$homework_st3 = workList.homework_status) === null || _workList$homework_st3 === void 0 ? void 0 : _workList$homework_st3[0]) === '未发布' && /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
|
type: "primary",
|
|
|
icon: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
|
className: "iconfont icon-bianji2"
|
|
|
}),
|
|
|
onClick: function onClick() {
|
|
|
var _classroomList$Assist2;
|
|
|
if (!((_classroomList$Assist2 = classroomList.AssistantObject.hack) !== null && _classroomList$Assist2 !== void 0 && _classroomList$Assist2.can_create) && (0,authority/* isAssistant */.Rm)()) {
|
|
|
message/* default */.ZP.warning('您未获取此权限,需向管理员申请权限才能使用此功能');
|
|
|
return;
|
|
|
}
|
|
|
_umi_production_exports.history.push("/classrooms/".concat(params.coursesId, "/program_homework/").concat(params.categoryId, "/edit"));
|
|
|
},
|
|
|
children: "\u7F16\u8F91\u4F5C\u4E1A"
|
|
|
}), (0,authority/* isAdmin */.GJ)() && workList.publish_immediately && /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
|
type: "primary",
|
|
|
icon: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
|
className: "iconfont icon-yishezhifabushijian1"
|
|
|
}),
|
|
|
onClick: function onClick() {
|
|
|
var _classroomList$Assist3;
|
|
|
if (!((_classroomList$Assist3 = classroomList.AssistantObject.hack) !== null && _classroomList$Assist3 !== void 0 && _classroomList$Assist3.can_publish) && (0,authority/* isAssistant */.Rm)()) {
|
|
|
message/* default */.ZP.warning('您未获取此权限,需向管理员申请权限才能使用此功能');
|
|
|
return;
|
|
|
}
|
|
|
dispatch({
|
|
|
type: 'classroomList/setActionTabs',
|
|
|
payload: {
|
|
|
key: '立即发布',
|
|
|
selectArrs: [params.categoryId],
|
|
|
selectArrsAll: [workList],
|
|
|
params: params,
|
|
|
detail: true,
|
|
|
type: 2,
|
|
|
manage_all_group: workSetting === null || workSetting === void 0 ? void 0 : workSetting.manage_all_group
|
|
|
}
|
|
|
});
|
|
|
},
|
|
|
children: "\u7ACB\u5373\u53D1\u5E03"
|
|
|
}), (0,authority/* isAdmin */.GJ)() && workList.end_immediately && /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
|
|
|
style: {
|
|
|
background: "#0152d9",
|
|
|
color: '#fff'
|
|
|
},
|
|
|
type: "primary",
|
|
|
icon: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
|
|
|
className: "iconfont icon-jiezhishiyan"
|
|
|
}),
|
|
|
onClick: function onClick() {
|
|
|
var _classroomList$Assist4;
|
|
|
if (!((_classroomList$Assist4 = classroomList.AssistantObject.hack) !== null && _classroomList$Assist4 !== void 0 && _classroomList$Assist4.can_stop) && (0,authority/* isAssistant */.Rm)()) {
|
|
|
message/* default */.ZP.warning('您未获取此权限,需向管理员申请权限才能使用此功能');
|
|
|
return;
|
|
|
}
|
|
|
dispatch({
|
|
|
type: 'classroomList/setActionTabs',
|
|
|
payload: {
|
|
|
key: '立即截止',
|
|
|
params: params,
|
|
|
type: 2,
|
|
|
detail: true,
|
|
|
selectArrs: [params.categoryId]
|
|
|
}
|
|
|
});
|
|
|
},
|
|
|
children: "\u7ACB\u5373\u622A\u6B62"
|
|
|
})]
|
|
|
});
|
|
|
};
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsxs)("section", {
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
|
|
|
className: "edu-container",
|
|
|
children: [workList.homework_name && /*#__PURE__*/(0,jsx_runtime.jsxs)("section", {
|
|
|
className: "animated fadeIn",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("aside", {
|
|
|
className: "mt10",
|
|
|
children: workList.category && /*#__PURE__*/(0,jsx_runtime.jsxs)(breadcrumb/* default */.Z, {
|
|
|
separator: ">",
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(breadcrumb/* default */.Z.Item, {
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(_umi_production_exports.Link, {
|
|
|
to: "/classrooms/".concat(workList.course_id, "/program_homework"),
|
|
|
children: workList.course_name
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(breadcrumb/* default */.Z.Item, {
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(_umi_production_exports.Link, {
|
|
|
to: "/classrooms/".concat(workList.course_id, "/program_homework/").concat(workList.category.main ? "" : workList.category.category_id),
|
|
|
children: workList.category.category_name
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(breadcrumb/* default */.Z.Item, {
|
|
|
children: "\u4F5C\u4E1A\u8BE6\u60C5"
|
|
|
})]
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
|
|
|
className: [Detailmodules/* default */.Z.title, 'mt20'].join(' '),
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(_umi_production_exports.Link, {
|
|
|
to: "/classrooms/".concat(workList.course_id, "/program_homework/").concat(workList.category.main ? "" : workList.category.category_id),
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(ArrowLeftOutlined/* default */.Z, {
|
|
|
className: "font16 c-black"
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
|
|
|
title: workList.homework_name,
|
|
|
placement: "bottom",
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)("strong", {
|
|
|
className: "font20 ml5",
|
|
|
children: workList.homework_name
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(util/* StatusClassroomsTags */.VV, {
|
|
|
temporary: true,
|
|
|
status: workList.homework_status
|
|
|
}), (0,authority/* isStudent */.dE)() && /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
|
|
|
style: {
|
|
|
fontWeight: 800,
|
|
|
color: "#0152d9",
|
|
|
textAlign: 'end',
|
|
|
flex: 1,
|
|
|
cursor: 'pointer'
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(es_button/* default */.ZP, {
|
|
|
onClick: /*#__PURE__*/asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee4() {
|
|
|
var _shixunHomeworks$work13;
|
|
|
var res;
|
|
|
return regeneratorRuntime_default()().wrap(function _callee4$(_context4) {
|
|
|
while (1) switch (_context4.prev = _context4.next) {
|
|
|
case 0:
|
|
|
_context4.next = 2;
|
|
|
return (0,fetch/* default */.ZP)("/api/problems/".concat((_shixunHomeworks$work13 = shixunHomeworks.workList) === null || _shixunHomeworks$work13 === void 0 ? void 0 : _shixunHomeworks$work13.start_identifier, "/start.json"), {
|
|
|
method: 'get'
|
|
|
});
|
|
|
case 2:
|
|
|
res = _context4.sent;
|
|
|
if (res) {
|
|
|
window.open("/myproblems/".concat(res === null || res === void 0 ? void 0 : res.identifier, "?type=1"));
|
|
|
localStorage.setItem('program_homework', [params.coursesId, params.categoryId]);
|
|
|
}
|
|
|
case 4:
|
|
|
case "end":
|
|
|
return _context4.stop();
|
|
|
}
|
|
|
}, _callee4);
|
|
|
})),
|
|
|
type: "primary",
|
|
|
children: [(_workList$homework_st4 = workList.homework_status) !== null && _workList$homework_st4 !== void 0 && _workList$homework_st4.includes('已截止') ? '查看作业' : '进入练习', " "]
|
|
|
})
|
|
|
})]
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("aside", {
|
|
|
className: "mt30 relative ".concat(Detailmodules/* default */.Z.workListTabWrap),
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(tabs/* default */.Z, {
|
|
|
type: "card",
|
|
|
defaultActiveKey: activeTabs,
|
|
|
activeKey: activeTabs,
|
|
|
tabBarExtraContent: getTabButton(),
|
|
|
onChange: handleChangeTab,
|
|
|
children: tabsArr.map(function (v, k) {
|
|
|
return /*#__PURE__*/(0,jsx_runtime.jsx)(tabs/* default */.Z.TabPane, {
|
|
|
tab: v.name,
|
|
|
forceRender: v.forceRender,
|
|
|
children: v.compontent
|
|
|
}, v.id);
|
|
|
})
|
|
|
})
|
|
|
})]
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(CodeReviewPop, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(CutOffNow/* default */.Z, {
|
|
|
courseEndTime: workList === null || workList === void 0 ? void 0 : workList.course_end_date,
|
|
|
successCallback: function successCallback() {
|
|
|
dispatch({
|
|
|
type: 'shixunHomeworks/getWorkList',
|
|
|
payload: objectSpread2_default()({}, params)
|
|
|
});
|
|
|
},
|
|
|
visible: classroomList.actionTabs.key === '立即截止',
|
|
|
homeworkIds: [params.categoryId],
|
|
|
courseId: params.coursesId,
|
|
|
isBatch: false
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)(Publish/* default */.Z, {
|
|
|
courseEndTime: workList === null || workList === void 0 ? void 0 : workList.course_end_date
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(modal/* default */.Z, {
|
|
|
open: qualityshow,
|
|
|
title: "\u89C4\u5219\u8BF4\u660E",
|
|
|
width: 800,
|
|
|
footer: null,
|
|
|
onCancel: function onCancel() {
|
|
|
setqualityshow(false);
|
|
|
},
|
|
|
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("p", {
|
|
|
children: "\u4E00\u3001\u7B49\u7EA7\u89C4\u5219"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
|
|
|
style: {
|
|
|
marginLeft: '10px'
|
|
|
},
|
|
|
children: "1. \u7F3A\u9677\u7B49\u7EA7"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
|
|
|
style: {
|
|
|
marginLeft: '10px'
|
|
|
},
|
|
|
children: /*#__PURE__*/(0,jsx_runtime.jsx)(table/* default */.Z, {
|
|
|
dataSource: qualityList,
|
|
|
columns: [{
|
|
|
title: '等级',
|
|
|
dataIndex: 'live'
|
|
|
}, {
|
|
|
title: '缺陷评估规则',
|
|
|
dataIndex: 'gz'
|
|
|
}, {
|
|
|
title: '漏洞评估规则',
|
|
|
dataIndex: 'ld'
|
|
|
}, {
|
|
|
title: '代码规范评估规则',
|
|
|
dataIndex: 'gf'
|
|
|
}],
|
|
|
pagination: false
|
|
|
})
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
|
|
|
style: {
|
|
|
marginLeft: '10px'
|
|
|
},
|
|
|
children: "\u6CE8\uFF1A\u4EE3\u7801\u89C4\u8303\u8BC4\u4F30\u89C4\u5219\u4E2D\u6570\u503C\u6765\u6E90\u4E3A\u8BA1\u7B97\u6280\u672F\u503A\u52A1\u65F6\u95F4\u5360\u5F00\u53D1\u6240\u6709\u4EE3\u7801\u6240\u9700\u8981\u7684\u65F6\u95F4\u7684\u6BD4\u4F8B\uFF08Technical Debt Ratio\uFF09"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
|
|
|
style: {
|
|
|
marginLeft: '20px'
|
|
|
},
|
|
|
children: "Technical Debt Ratio = \u6280\u672F\u503A\u52A1\u65F6\u95F4 / \u5F00\u53D1\u65F6\u95F4"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
|
|
|
style: {
|
|
|
marginLeft: '20px'
|
|
|
},
|
|
|
children: "\u6280\u672F\u503A\u52A1\u65F6\u95F4\u4E3A\u4FEE\u590D\u6240\u6709\u95EE\u9898\u6240\u9700\u8981\u7684\u65F6\u95F4\u3002"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
|
|
|
children: "\u4E8C\u3001\u590D\u6742\u5EA6\u89C4\u5219"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
|
|
|
style: {
|
|
|
marginLeft: '10px'
|
|
|
},
|
|
|
children: "\u6839\u636E\u4EE3\u7801\u8DEF\u5F84\u6570\u8BA1\u7B97\u7684\u6570\u503C\uFF0C\u6BCF\u5F53\u4E00\u4E2A\u51FD\u6570\u7684\u63A7\u5236\u6D41\u5206\u53C9\u65F6\uFF0C\u590D\u6742\u5EA6\u8BA1\u6570\u5668\u5C31\u4F1A\u81EA\u589E\u4E00\u3002"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
|
|
|
style: {
|
|
|
marginLeft: '10px'
|
|
|
},
|
|
|
children: "\u6BCF\u4E2A\u7A0B\u5E8F\u8BED\u8A00\u7684\u5173\u952E\u5B57\u5BF9\u5E94\u7684\u590D\u6742\u5EA6\u6570\u636E\u4E0D\u540C\uFF0C\u4F46\u6BCF\u4E2A\u51FD\u6570\u7684\u6700\u5C0F\u590D\u6742\u5EA6\u4E3A1\u3002\uFF08\u7279\u5B9A\u8BED\u8A00\u7684\u8BE6\u7EC6\u6570\u636E\u7565\uFF09"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
|
|
|
children: "\u4E09\u3001\u4EE3\u7801\u8D28\u91CF\u5206\u89C4\u5219"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
|
|
|
style: {
|
|
|
marginLeft: '10px'
|
|
|
},
|
|
|
children: "\u4EE3\u7801\u8D28\u91CF\u5206 = 0.5*\u7F3A\u9677\u5206\u6570 + 0.3*\u6F0F\u6D1E\u5206\u6570 + 0.2*\u4EE3\u7801\u89C4\u8303\u6027\u5206\u6570"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
|
|
|
style: {
|
|
|
marginLeft: '10px'
|
|
|
},
|
|
|
children: "\u5176\u4E2D\uFF1A"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
|
|
|
style: {
|
|
|
marginLeft: '10px'
|
|
|
},
|
|
|
children: "\u7F3A\u9677/\u6F0F\u6D1E/\u4EE3\u7801\u89C4\u8303\u6027\u5206\u6570\u8BA1\u7B97\u89C4\u5219\u4E3A\uFF1A100 - 100 *((100*\u5D29\u6E83\u6570 + 5*\u4E25\u91CD\u6570 + 3*\u4E3B\u8981\u6570 + 1*\u6B21\u6570\uFF09/ \u4EE3\u7801\u884C\u6570\uFF09"
|
|
|
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
|
|
|
style: {
|
|
|
marginLeft: '10px'
|
|
|
},
|
|
|
children: "\u6CE8\uFF1A\u5206\u6570\u4E3A\u7A7A\u7684\u4EE3\u8868\u4E0D\u652F\u6301\u7684\u6587\u4EF6\u683C\u5F0F\u3002"
|
|
|
})]
|
|
|
})]
|
|
|
});
|
|
|
};
|
|
|
/* harmony default export */ var Detail = ((0,_umi_production_exports.connect)(function (_ref4) {
|
|
|
var shixunHomeworks = _ref4.shixunHomeworks,
|
|
|
classroomList = _ref4.classroomList,
|
|
|
loading = _ref4.loading,
|
|
|
user = _ref4.user,
|
|
|
globalSetting = _ref4.globalSetting;
|
|
|
return {
|
|
|
classroomList: classroomList,
|
|
|
shixunHomeworks: shixunHomeworks,
|
|
|
globalSetting: globalSetting,
|
|
|
user: user,
|
|
|
loading: loading.effects
|
|
|
};
|
|
|
})(Detail_ShixunsListPage));
|
|
|
|
|
|
/***/ }),
|
|
|
|
|
|
/***/ 28384:
|
|
|
/*!*****************************!*\
|
|
|
!*** ./src/utils/export.ts ***!
|
|
|
\*****************************/
|
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
|
/* harmony export */ AD: function() { return /* binding */ ExportCollegeStudentsInfo; },
|
|
|
/* harmony export */ D9: function() { return /* binding */ ExportStudentanalysis; },
|
|
|
/* harmony export */ IM: function() { return /* binding */ get_ecs_attachment; },
|
|
|
/* harmony export */ Iy: function() { return /* binding */ ExportCourseWorkListScores; },
|
|
|
/* harmony export */ KM: function() { return /* binding */ getmember_works; },
|
|
|
/* harmony export */ Ne: function() { return /* binding */ getec_training_objectives; },
|
|
|
/* harmony export */ ON: function() { return /* binding */ exportPaperlibraryPaper; },
|
|
|
/* harmony export */ Uj: function() { return /* binding */ exportTaskPass; },
|
|
|
/* harmony export */ VY: function() { return /* binding */ getrank_list; },
|
|
|
/* harmony export */ YO: function() { return /* binding */ exportCommitResultWord; },
|
|
|
/* harmony export */ YX: function() { return /* binding */ exportClassroomsPaper; },
|
|
|
/* harmony export */ Zn: function() { return /* binding */ ExportCourseInfo; },
|
|
|
/* harmony export */ _g: function() { return /* binding */ exportMoocrecord; },
|
|
|
/* harmony export */ _k: function() { return /* binding */ getDownFile; },
|
|
|
/* harmony export */ c6: function() { return /* binding */ ExportVideoStudy; },
|
|
|
/* harmony export */ cr: function() { return /* binding */ ExportCourseActScore; },
|
|
|
/* harmony export */ eV: function() { return /* binding */ ExportCourseStudentsInfo; },
|
|
|
/* harmony export */ fi: function() { return /* binding */ ExportCourseMemberScores; },
|
|
|
/* harmony export */ gh: function() { return /* binding */ ExportAttendance; },
|
|
|
/* harmony export */ hS: function() { return /* binding */ getec_courses; },
|
|
|
/* harmony export */ iA: function() { return /* binding */ ExportCourseAndOther; },
|
|
|
/* harmony export */ j6: function() { return /* binding */ ExportCourseTotalScore; },
|
|
|
/* harmony export */ je: function() { return /* binding */ ExportExerciseStudentScores; },
|
|
|
/* harmony export */ kS: function() { return /* binding */ getquestion_rank_list; },
|
|
|
/* harmony export */ o6: function() { return /* binding */ ExportVideoStudent; },
|
|
|
/* harmony export */ pO: function() { return /* binding */ exportUserExerciseDetail; },
|
|
|
/* harmony export */ rQ: function() { return /* binding */ ExportProblemset; },
|
|
|
/* harmony export */ sA: function() { return /* binding */ ExportPollsScores; },
|
|
|
/* harmony export */ xm: function() { return /* binding */ getecyears; },
|
|
|
/* harmony export */ xo: function() { return /* binding */ getec_graduation_requirements; },
|
|
|
/* harmony export */ y8: function() { return /* binding */ Exportcompetitions; }
|
|
|
/* harmony export */ });
|
|
|
/* unused harmony export ExportCourseWorkListAppendix */
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/regeneratorRuntime.js */ 7557);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0__);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectSpread2.js */ 82242);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_1__);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/asyncToGenerator.js */ 41498);
|
|
|
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2__);
|
|
|
/* harmony import */ var _service_classrooms__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @/service/classrooms */ 97894);
|
|
|
/* harmony import */ var umi__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! umi */ 8931);
|
|
|
/* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./util */ 63834);
|
|
|
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! antd */ 8591);
|
|
|
/* harmony import */ var _env__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./env */ 33259);
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
var showLoading = function showLoading() {
|
|
|
(0,umi__WEBPACK_IMPORTED_MODULE_4__.getDvaApp)()._store.dispatch({
|
|
|
type: 'globalSetting/setGlobalLoading',
|
|
|
payload: {
|
|
|
show: true,
|
|
|
text: '正在生成文件,请稍后...'
|
|
|
}
|
|
|
});
|
|
|
};
|
|
|
var hideLoading = function hideLoading() {
|
|
|
(0,umi__WEBPACK_IMPORTED_MODULE_4__.getDvaApp)()._store.dispatch({
|
|
|
type: 'globalSetting/setGlobalLoading',
|
|
|
payload: {
|
|
|
show: false,
|
|
|
text: ''
|
|
|
}
|
|
|
});
|
|
|
};
|
|
|
var ExportCourseInfo = /*#__PURE__*/function () {
|
|
|
var _ref = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee(params) {
|
|
|
var res;
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee$(_context) {
|
|
|
while (1) switch (_context.prev = _context.next) {
|
|
|
case 0:
|
|
|
showLoading();
|
|
|
_context.next = 3;
|
|
|
return (0,_service_classrooms__WEBPACK_IMPORTED_MODULE_3__/* .exportCourseInfo */ .YR)(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_1___default()({}, params));
|
|
|
case 3:
|
|
|
res = _context.sent;
|
|
|
if (!(res.status === 0)) {
|
|
|
_context.next = 7;
|
|
|
break;
|
|
|
}
|
|
|
_context.next = 7;
|
|
|
return (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .downLoadFileIframe */ .QH)('', (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .setUrlQuery */ .NY)({
|
|
|
url: _env__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z.API_SERVER + "/api/courses/".concat(params.coursesId, "/export_couser_info.json"),
|
|
|
query: params
|
|
|
}));
|
|
|
case 7:
|
|
|
hideLoading();
|
|
|
case 8:
|
|
|
case "end":
|
|
|
return _context.stop();
|
|
|
}
|
|
|
}, _callee);
|
|
|
}));
|
|
|
return function ExportCourseInfo(_x) {
|
|
|
return _ref.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var ExportCourseActScore = /*#__PURE__*/function () {
|
|
|
var _ref2 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee2(params) {
|
|
|
var res;
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_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_3__/* .exportCourseActScore */ .yS)(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_1___default()({}, params));
|
|
|
case 2:
|
|
|
res = _context2.sent;
|
|
|
if (!(res.status === 0)) {
|
|
|
_context2.next = 8;
|
|
|
break;
|
|
|
}
|
|
|
antd__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .ZP.info('导出任务生成成功');
|
|
|
umi__WEBPACK_IMPORTED_MODULE_4__.history.push("/classrooms/".concat(params.coursesId, "/exportlist/course_member_act_score"));
|
|
|
_context2.next = 13;
|
|
|
break;
|
|
|
case 8:
|
|
|
if (!(res.status === -2)) {
|
|
|
_context2.next = 12;
|
|
|
break;
|
|
|
}
|
|
|
return _context2.abrupt("return", res);
|
|
|
case 12:
|
|
|
if (res.status === -3) {
|
|
|
(0,umi__WEBPACK_IMPORTED_MODULE_4__.getDvaApp)()._store.dispatch({
|
|
|
type: 'classroomList/setActionTabs',
|
|
|
payload: {
|
|
|
key: '导出提醒'
|
|
|
}
|
|
|
});
|
|
|
umi__WEBPACK_IMPORTED_MODULE_4__.history.push("/classrooms/".concat(params.coursesId, "/exportlist/course_member_act_score"));
|
|
|
}
|
|
|
case 13:
|
|
|
case "end":
|
|
|
return _context2.stop();
|
|
|
}
|
|
|
}, _callee2);
|
|
|
}));
|
|
|
return function ExportCourseActScore(_x2) {
|
|
|
return _ref2.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var ExportCourseMemberScores = /*#__PURE__*/function () {
|
|
|
var _ref3 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee3(params) {
|
|
|
var res;
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee3$(_context3) {
|
|
|
while (1) switch (_context3.prev = _context3.next) {
|
|
|
case 0:
|
|
|
_context3.next = 2;
|
|
|
return (0,_service_classrooms__WEBPACK_IMPORTED_MODULE_3__/* .exportCourseMemberScores */ .W0)(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_1___default()({}, params));
|
|
|
case 2:
|
|
|
res = _context3.sent;
|
|
|
if (!(res.status === 0)) {
|
|
|
_context3.next = 8;
|
|
|
break;
|
|
|
}
|
|
|
antd__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .ZP.info('导出任务生成成功');
|
|
|
umi__WEBPACK_IMPORTED_MODULE_4__.history.push("/classrooms/".concat(params.coursesId, "/exportlist/course_total_score"));
|
|
|
_context3.next = 13;
|
|
|
break;
|
|
|
case 8:
|
|
|
if (!(res.status === -4)) {
|
|
|
_context3.next = 12;
|
|
|
break;
|
|
|
}
|
|
|
return _context3.abrupt("return", res);
|
|
|
case 12:
|
|
|
if (res.status === -3) {
|
|
|
(0,umi__WEBPACK_IMPORTED_MODULE_4__.getDvaApp)()._store.dispatch({
|
|
|
type: 'classroomList/setActionTabs',
|
|
|
payload: {
|
|
|
key: '导出提醒'
|
|
|
}
|
|
|
});
|
|
|
umi__WEBPACK_IMPORTED_MODULE_4__.history.push("/classrooms/".concat(params.coursesId, "/exportlist/course_total_score"));
|
|
|
}
|
|
|
case 13:
|
|
|
case "end":
|
|
|
return _context3.stop();
|
|
|
}
|
|
|
}, _callee3);
|
|
|
}));
|
|
|
return function ExportCourseMemberScores(_x3) {
|
|
|
return _ref3.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
|
|
|
//试卷
|
|
|
var ExportCourseAndOther = /*#__PURE__*/function () {
|
|
|
var _ref4 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee4(params) {
|
|
|
var res;
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee4$(_context4) {
|
|
|
while (1) switch (_context4.prev = _context4.next) {
|
|
|
case 0:
|
|
|
_context4.next = 2;
|
|
|
return (0,_service_classrooms__WEBPACK_IMPORTED_MODULE_3__/* .exportCourseAndOther */ .Nl)(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_1___default()({}, params));
|
|
|
case 2:
|
|
|
res = _context4.sent;
|
|
|
if (!(res.status === 0)) {
|
|
|
_context4.next = 8;
|
|
|
break;
|
|
|
}
|
|
|
antd__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .ZP.info('导出任务生成成功');
|
|
|
umi__WEBPACK_IMPORTED_MODULE_4__.history.push("/classrooms/".concat(params.coursesId, "/exportlist/course_total_exercise_and_other"));
|
|
|
_context4.next = 13;
|
|
|
break;
|
|
|
case 8:
|
|
|
if (!(res.status === -4)) {
|
|
|
_context4.next = 12;
|
|
|
break;
|
|
|
}
|
|
|
return _context4.abrupt("return", res);
|
|
|
case 12:
|
|
|
if (res.status === -3) {
|
|
|
(0,umi__WEBPACK_IMPORTED_MODULE_4__.getDvaApp)()._store.dispatch({
|
|
|
type: 'classroomList/setActionTabs',
|
|
|
payload: {
|
|
|
key: '导出提醒'
|
|
|
}
|
|
|
});
|
|
|
umi__WEBPACK_IMPORTED_MODULE_4__.history.push("/classrooms/".concat(params.coursesId, "/exportlist/course_total_exercise_and_other"));
|
|
|
}
|
|
|
case 13:
|
|
|
case "end":
|
|
|
return _context4.stop();
|
|
|
}
|
|
|
}, _callee4);
|
|
|
}));
|
|
|
return function ExportCourseAndOther(_x4) {
|
|
|
return _ref4.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
|
|
|
//第三方幕课
|
|
|
var exportMoocrecord = /*#__PURE__*/function () {
|
|
|
var _ref5 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee5(params) {
|
|
|
var res;
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee5$(_context5) {
|
|
|
while (1) switch (_context5.prev = _context5.next) {
|
|
|
case 0:
|
|
|
_context5.next = 2;
|
|
|
return (0,_service_classrooms__WEBPACK_IMPORTED_MODULE_3__/* .exportMoocrecords */ .td)(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_1___default()({}, params));
|
|
|
case 2:
|
|
|
res = _context5.sent;
|
|
|
if (!(res.status === 0)) {
|
|
|
_context5.next = 8;
|
|
|
break;
|
|
|
}
|
|
|
antd__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .ZP.info('导出任务生成成功');
|
|
|
umi__WEBPACK_IMPORTED_MODULE_4__.history.push("/classrooms/".concat(params.coursesId, "/exportlist/course_total_exercise_and_other"));
|
|
|
_context5.next = 19;
|
|
|
break;
|
|
|
case 8:
|
|
|
if (!(res.status === -2)) {
|
|
|
_context5.next = 12;
|
|
|
break;
|
|
|
}
|
|
|
return _context5.abrupt("return", res);
|
|
|
case 12:
|
|
|
if (!(res.status === -3)) {
|
|
|
_context5.next = 17;
|
|
|
break;
|
|
|
}
|
|
|
(0,umi__WEBPACK_IMPORTED_MODULE_4__.getDvaApp)()._store.dispatch({
|
|
|
type: 'classroomList/setActionTabs',
|
|
|
payload: {
|
|
|
key: '导出提醒'
|
|
|
}
|
|
|
});
|
|
|
umi__WEBPACK_IMPORTED_MODULE_4__.history.push("/classrooms/".concat(params.coursesId, "/exportlist/course_total_exercise_and_other"));
|
|
|
_context5.next = 19;
|
|
|
break;
|
|
|
case 17:
|
|
|
if (!(res.status === -4)) {
|
|
|
_context5.next = 19;
|
|
|
break;
|
|
|
}
|
|
|
return _context5.abrupt("return", res);
|
|
|
case 19:
|
|
|
case "end":
|
|
|
return _context5.stop();
|
|
|
}
|
|
|
}, _callee5);
|
|
|
}));
|
|
|
return function exportMoocrecord(_x5) {
|
|
|
return _ref5.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
|
|
|
//作业
|
|
|
var ExportCourseTotalScore = /*#__PURE__*/function () {
|
|
|
var _ref6 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee6(params) {
|
|
|
var res;
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee6$(_context6) {
|
|
|
while (1) switch (_context6.prev = _context6.next) {
|
|
|
case 0:
|
|
|
_context6.next = 2;
|
|
|
return (0,_service_classrooms__WEBPACK_IMPORTED_MODULE_3__/* .exportCourseTotalScore */ .QX)(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_1___default()({}, params));
|
|
|
case 2:
|
|
|
res = _context6.sent;
|
|
|
if (!(res.status === 0)) {
|
|
|
_context6.next = 8;
|
|
|
break;
|
|
|
}
|
|
|
antd__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .ZP.info('导出任务生成成功');
|
|
|
umi__WEBPACK_IMPORTED_MODULE_4__.history.push("/classrooms/".concat(params.coursesId, "/exportlist/course_total_homework"));
|
|
|
_context6.next = 13;
|
|
|
break;
|
|
|
case 8:
|
|
|
if (!(res.status === -4)) {
|
|
|
_context6.next = 12;
|
|
|
break;
|
|
|
}
|
|
|
return _context6.abrupt("return", res);
|
|
|
case 12:
|
|
|
if (res.status === -3) {
|
|
|
(0,umi__WEBPACK_IMPORTED_MODULE_4__.getDvaApp)()._store.dispatch({
|
|
|
type: 'classroomList/setActionTabs',
|
|
|
payload: {
|
|
|
key: '导出提醒'
|
|
|
}
|
|
|
});
|
|
|
umi__WEBPACK_IMPORTED_MODULE_4__.history.push("/classrooms/".concat(params.coursesId, "/exportlist/course_total_homework"));
|
|
|
}
|
|
|
case 13:
|
|
|
case "end":
|
|
|
return _context6.stop();
|
|
|
}
|
|
|
}, _callee6);
|
|
|
}));
|
|
|
return function ExportCourseTotalScore(_x6) {
|
|
|
return _ref6.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var ExportCourseWorkListScores = /*#__PURE__*/function () {
|
|
|
var _ref7 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee7(params, type) {
|
|
|
var res;
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee7$(_context7) {
|
|
|
while (1) switch (_context7.prev = _context7.next) {
|
|
|
case 0:
|
|
|
_context7.next = 2;
|
|
|
return (0,_service_classrooms__WEBPACK_IMPORTED_MODULE_3__/* .exportCourseWorkListScores */ .aP)(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_1___default()({}, params));
|
|
|
case 2:
|
|
|
res = _context7.sent;
|
|
|
if (res.status === 0) {
|
|
|
antd__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .ZP.info('导出任务生成成功');
|
|
|
umi__WEBPACK_IMPORTED_MODULE_4__.history.push("/classrooms/".concat(params.coursesId, "/exportlist/").concat(type));
|
|
|
} else if (res.status === -3) {
|
|
|
(0,umi__WEBPACK_IMPORTED_MODULE_4__.getDvaApp)()._store.dispatch({
|
|
|
type: 'classroomList/setActionTabs',
|
|
|
payload: {
|
|
|
key: '导出提醒'
|
|
|
}
|
|
|
});
|
|
|
umi__WEBPACK_IMPORTED_MODULE_4__.history.push("/classrooms/".concat(params.coursesId, "/exportlist/").concat(type));
|
|
|
}
|
|
|
// else if(res.status === -1){
|
|
|
// history.push(`/classrooms/${params.coursesId}/exportlist/${type}`)
|
|
|
// };
|
|
|
// console.log(JSON.stringify(params))
|
|
|
// if(res.status === 0) await downLoadFileIframe('',setUrlQuery({url:ENV.API_SERVER + `/api/homework_commons/${params.categoryId}/works_list.xlsx`,query:params}))
|
|
|
// hideLoading();
|
|
|
case 4:
|
|
|
case "end":
|
|
|
return _context7.stop();
|
|
|
}
|
|
|
}, _callee7);
|
|
|
}));
|
|
|
return function ExportCourseWorkListScores(_x7, _x8) {
|
|
|
return _ref7.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var ExportCourseWorkListAppendix = /*#__PURE__*/(/* unused pure expression or super */ null && (function () {
|
|
|
var _ref8 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee8(params) {
|
|
|
var res;
|
|
|
return _regeneratorRuntime().wrap(function _callee8$(_context8) {
|
|
|
while (1) switch (_context8.prev = _context8.next) {
|
|
|
case 0:
|
|
|
showLoading();
|
|
|
_context8.next = 3;
|
|
|
return exportCourseWorkListAppendix(_objectSpread({}, params));
|
|
|
case 3:
|
|
|
res = _context8.sent;
|
|
|
if (!(res.status === 0)) {
|
|
|
_context8.next = 7;
|
|
|
break;
|
|
|
}
|
|
|
_context8.next = 7;
|
|
|
return downLoadFileIframe('', setUrlQuery({
|
|
|
url: ENV.API_SERVER + "/api/homework_commons/".concat(params.categoryId, "/works_list.zip"),
|
|
|
query: params
|
|
|
}));
|
|
|
case 7:
|
|
|
hideLoading();
|
|
|
case 8:
|
|
|
case "end":
|
|
|
return _context8.stop();
|
|
|
}
|
|
|
}, _callee8);
|
|
|
}));
|
|
|
return function ExportCourseWorkListAppendix(_x9) {
|
|
|
return _ref8.apply(this, arguments);
|
|
|
};
|
|
|
}()));
|
|
|
var ExportPollsScores = /*#__PURE__*/function () {
|
|
|
var _ref9 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee9(params) {
|
|
|
var res;
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee9$(_context9) {
|
|
|
while (1) switch (_context9.prev = _context9.next) {
|
|
|
case 0:
|
|
|
showLoading();
|
|
|
_context9.next = 3;
|
|
|
return (0,_service_classrooms__WEBPACK_IMPORTED_MODULE_3__/* .exportPollsScores */ .MJ)(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_1___default()({}, params));
|
|
|
case 3:
|
|
|
res = _context9.sent;
|
|
|
if (!(res.status === 0)) {
|
|
|
_context9.next = 7;
|
|
|
break;
|
|
|
}
|
|
|
_context9.next = 7;
|
|
|
return (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .downLoadFile */ .FH)('', (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .setUrlQuery */ .NY)({
|
|
|
url: _env__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z.API_SERVER + "/api/polls/".concat(params.categoryId, "/commit_result.xlsx"),
|
|
|
query: params
|
|
|
}));
|
|
|
case 7:
|
|
|
hideLoading();
|
|
|
case 8:
|
|
|
case "end":
|
|
|
return _context9.stop();
|
|
|
}
|
|
|
}, _callee9);
|
|
|
}));
|
|
|
return function ExportPollsScores(_x10) {
|
|
|
return _ref9.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var ExportAttendance = /*#__PURE__*/function () {
|
|
|
var _ref10 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee10(params) {
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee10$(_context10) {
|
|
|
while (1) switch (_context10.prev = _context10.next) {
|
|
|
case 0:
|
|
|
_context10.next = 2;
|
|
|
return (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .downLoadFile */ .FH)('', (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .setUrlQuery */ .NY)({
|
|
|
url: _env__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z.API_SERVER + "/api/courses/".concat(params.coursesId, "/attendances/export_xlsx_data.xlsx"),
|
|
|
query: params
|
|
|
}));
|
|
|
case 2:
|
|
|
case "end":
|
|
|
return _context10.stop();
|
|
|
}
|
|
|
}, _callee10);
|
|
|
}));
|
|
|
return function ExportAttendance(_x11) {
|
|
|
return _ref10.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var ExportVideoStudent = /*#__PURE__*/function () {
|
|
|
var _ref11 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee11(params) {
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee11$(_context11) {
|
|
|
while (1) switch (_context11.prev = _context11.next) {
|
|
|
case 0:
|
|
|
_context11.next = 2;
|
|
|
return (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .downLoadFile */ .FH)('', (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .setUrlQuery */ .NY)({
|
|
|
url: _env__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z.API_SERVER + "/api/courses/".concat(params.coursesId, "/video_study_statics.xlsx"),
|
|
|
query: params
|
|
|
}));
|
|
|
case 2:
|
|
|
case "end":
|
|
|
return _context11.stop();
|
|
|
}
|
|
|
}, _callee11);
|
|
|
}));
|
|
|
return function ExportVideoStudent(_x12) {
|
|
|
return _ref11.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var ExportVideoStudy = /*#__PURE__*/function () {
|
|
|
var _ref12 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee12(params) {
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee12$(_context12) {
|
|
|
while (1) switch (_context12.prev = _context12.next) {
|
|
|
case 0:
|
|
|
_context12.next = 2;
|
|
|
return (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .downLoadFile */ .FH)('', (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .setUrlQuery */ .NY)({
|
|
|
url: _env__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z.API_SERVER + "/api/courses/".concat(params.coursesId, "/export_video_study.xlsx"),
|
|
|
query: params
|
|
|
}));
|
|
|
case 2:
|
|
|
case "end":
|
|
|
return _context12.stop();
|
|
|
}
|
|
|
}, _callee12);
|
|
|
}));
|
|
|
return function ExportVideoStudy(_x13) {
|
|
|
return _ref12.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var ExportCourseStudentsInfo = /*#__PURE__*/function () {
|
|
|
var _ref13 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee13(params) {
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee13$(_context13) {
|
|
|
while (1) switch (_context13.prev = _context13.next) {
|
|
|
case 0:
|
|
|
_context13.next = 2;
|
|
|
return (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .downLoadFile */ .FH)('', (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .setUrlQuery */ .NY)({
|
|
|
url: _env__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z.API_SERVER + "/api/courses/".concat(params.coursesId, "/export_course_students_info.xlsx"),
|
|
|
query: params
|
|
|
}));
|
|
|
case 2:
|
|
|
case "end":
|
|
|
return _context13.stop();
|
|
|
}
|
|
|
}, _callee13);
|
|
|
}));
|
|
|
return function ExportCourseStudentsInfo(_x14) {
|
|
|
return _ref13.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var ExportCollegeStudentsInfo = /*#__PURE__*/function () {
|
|
|
var _ref14 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee14(params) {
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee14$(_context14) {
|
|
|
while (1) switch (_context14.prev = _context14.next) {
|
|
|
case 0:
|
|
|
_context14.next = 2;
|
|
|
return (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .downLoadFile */ .FH)('', (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .setUrlQuery */ .NY)({
|
|
|
url: _env__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z.API_SERVER + "/api/school_manages/students.xlsx",
|
|
|
query: params
|
|
|
}));
|
|
|
case 2:
|
|
|
case "end":
|
|
|
return _context14.stop();
|
|
|
}
|
|
|
}, _callee14);
|
|
|
}));
|
|
|
return function ExportCollegeStudentsInfo(_x15) {
|
|
|
return _ref14.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var ExportProblemset = /*#__PURE__*/function () {
|
|
|
var _ref15 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee15(params) {
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee15$(_context15) {
|
|
|
while (1) switch (_context15.prev = _context15.next) {
|
|
|
case 0:
|
|
|
_context15.next = 2;
|
|
|
return (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .downLoadFile */ .FH)('', (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .setUrlQuery */ .NY)({
|
|
|
url: _env__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z.API_SERVER + "/api/item_banks/export.xlsx",
|
|
|
query: params
|
|
|
}));
|
|
|
case 2:
|
|
|
case "end":
|
|
|
return _context15.stop();
|
|
|
}
|
|
|
}, _callee15);
|
|
|
}));
|
|
|
return function ExportProblemset(_x16) {
|
|
|
return _ref15.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var Exportcompetitions = /*#__PURE__*/function () {
|
|
|
var _ref16 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee16(params) {
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee16$(_context16) {
|
|
|
while (1) switch (_context16.prev = _context16.next) {
|
|
|
case 0:
|
|
|
_context16.next = 2;
|
|
|
return (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .downLoadFile */ .FH)('', (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .setUrlQuery */ .NY)({
|
|
|
url: _env__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z.API_SERVER + "/api/competitions/region_reports.xlsx",
|
|
|
query: params
|
|
|
}));
|
|
|
case 2:
|
|
|
case "end":
|
|
|
return _context16.stop();
|
|
|
}
|
|
|
}, _callee16);
|
|
|
}));
|
|
|
return function Exportcompetitions(_x17) {
|
|
|
return _ref16.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var ExportExerciseStudentScores = /*#__PURE__*/function () {
|
|
|
var _ref17 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee17(params) {
|
|
|
var res;
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee17$(_context17) {
|
|
|
while (1) switch (_context17.prev = _context17.next) {
|
|
|
case 0:
|
|
|
_context17.next = 2;
|
|
|
return (0,_service_classrooms__WEBPACK_IMPORTED_MODULE_3__/* .exportExerciseStudentScores */ .Uy)(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_1___default()({}, params));
|
|
|
case 2:
|
|
|
res = _context17.sent;
|
|
|
if (res.status === 0) {
|
|
|
antd__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .ZP.info('导出任务生成成功');
|
|
|
umi__WEBPACK_IMPORTED_MODULE_4__.history.push("/classrooms/".concat(params.coursesId, "/exportlist/exercise_score"));
|
|
|
} else if (res.status === -3) {
|
|
|
(0,umi__WEBPACK_IMPORTED_MODULE_4__.getDvaApp)()._store.dispatch({
|
|
|
type: 'classroomList/setActionTabs',
|
|
|
payload: {
|
|
|
key: '导出提醒'
|
|
|
}
|
|
|
});
|
|
|
umi__WEBPACK_IMPORTED_MODULE_4__.history.push("/classrooms/".concat(params.coursesId, "/exportlist/exercise_score"));
|
|
|
}
|
|
|
// else if(res.status === -1){
|
|
|
// history.push(`/classrooms/${params.coursesId}/exportlist/exercise_score`)
|
|
|
// };
|
|
|
// // https://test-newweb.educoder.net/api/exercises/4229/exercise_lists.xlsx?page=1&search=&limit=20&order=end_at&randomcode=undefined&client_key=6d57f8c3dd186c5ada392546ace9620a
|
|
|
// if(res.status === 0) await downLoadFileIframe('',setUrlQuery({url:ENV.API_SERVER + `/api/exercises/${params.categoryId}/exercise_lists.xlsx`,query:params}))
|
|
|
// hideLoading();
|
|
|
case 4:
|
|
|
case "end":
|
|
|
return _context17.stop();
|
|
|
}
|
|
|
}, _callee17);
|
|
|
}));
|
|
|
return function ExportExerciseStudentScores(_x18) {
|
|
|
return _ref17.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var getDownFile = /*#__PURE__*/function () {
|
|
|
var _ref18 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee18(params) {
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee18$(_context18) {
|
|
|
while (1) switch (_context18.prev = _context18.next) {
|
|
|
case 0:
|
|
|
console.log('----------', '调用下载');
|
|
|
_context18.next = 3;
|
|
|
return (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .downLoadFile */ .FH)('', (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .setUrlQuery */ .NY)({
|
|
|
url: _env__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z.API_SERVER + "/api/export_records/".concat(params.id, ".xlsx"),
|
|
|
query: params
|
|
|
}));
|
|
|
case 3:
|
|
|
case "end":
|
|
|
return _context18.stop();
|
|
|
}
|
|
|
}, _callee18);
|
|
|
}));
|
|
|
return function getDownFile(_x19) {
|
|
|
return _ref18.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var getecyears = /*#__PURE__*/function () {
|
|
|
var _ref19 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee19(params) {
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee19$(_context19) {
|
|
|
while (1) switch (_context19.prev = _context19.next) {
|
|
|
case 0:
|
|
|
_context19.next = 2;
|
|
|
return (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .downLoadFile */ .FH)('', (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .setUrlQuery */ .NY)({
|
|
|
url: _env__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z.API_SERVER + "/api/ec_major_schools/0/ec_years.xlsx",
|
|
|
query: params
|
|
|
}));
|
|
|
case 2:
|
|
|
case "end":
|
|
|
return _context19.stop();
|
|
|
}
|
|
|
}, _callee19);
|
|
|
}));
|
|
|
return function getecyears(_x20) {
|
|
|
return _ref19.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var ExportStudentanalysis = /*#__PURE__*/function () {
|
|
|
var _ref20 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee20(params) {
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee20$(_context20) {
|
|
|
while (1) switch (_context20.prev = _context20.next) {
|
|
|
case 0:
|
|
|
_context20.next = 2;
|
|
|
return (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .downLoadFile */ .FH)('', (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .setUrlQuery */ .NY)({
|
|
|
url: _env__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z.API_SERVER + "/api/courses/".concat(params === null || params === void 0 ? void 0 : params.coursesId, "/").concat(params.menuKey, "_statistic.xlsx?").concat(params.checkedList.map(function (item) {
|
|
|
return "course_group_id[]=".concat(item);
|
|
|
}).join('&')),
|
|
|
query: params
|
|
|
}));
|
|
|
case 2:
|
|
|
case "end":
|
|
|
return _context20.stop();
|
|
|
}
|
|
|
}, _callee20);
|
|
|
}));
|
|
|
return function ExportStudentanalysis(_x21) {
|
|
|
return _ref20.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var getec_training_objectives = /*#__PURE__*/function () {
|
|
|
var _ref21 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee21(params) {
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee21$(_context21) {
|
|
|
while (1) switch (_context21.prev = _context21.next) {
|
|
|
case 0:
|
|
|
_context21.next = 2;
|
|
|
return (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .downLoadFile */ .FH)('', (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .setUrlQuery */ .NY)({
|
|
|
url: _env__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z.API_SERVER + "/api/ec_years/".concat(params === null || params === void 0 ? void 0 : params.ec_year_id, "/ec_training_objectives.xlsx"),
|
|
|
query: params
|
|
|
}));
|
|
|
case 2:
|
|
|
case "end":
|
|
|
return _context21.stop();
|
|
|
}
|
|
|
}, _callee21);
|
|
|
}));
|
|
|
return function getec_training_objectives(_x22) {
|
|
|
return _ref21.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var get_ecs_attachment = /*#__PURE__*/function () {
|
|
|
var _ref22 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee22(params) {
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee22$(_context22) {
|
|
|
while (1) switch (_context22.prev = _context22.next) {
|
|
|
case 0:
|
|
|
_context22.next = 2;
|
|
|
return (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .downLoadFile */ .FH)(params === null || params === void 0 ? void 0 : params.name, (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .setUrlQuery */ .NY)({
|
|
|
url: _env__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z.API_SERVER + "/api/attachments/get_ecs_attachment.docx",
|
|
|
query: params
|
|
|
}));
|
|
|
case 2:
|
|
|
case "end":
|
|
|
return _context22.stop();
|
|
|
}
|
|
|
}, _callee22);
|
|
|
}));
|
|
|
return function get_ecs_attachment(_x23) {
|
|
|
return _ref22.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var getec_courses = /*#__PURE__*/function () {
|
|
|
var _ref23 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee23(params) {
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee23$(_context23) {
|
|
|
while (1) switch (_context23.prev = _context23.next) {
|
|
|
case 0:
|
|
|
_context23.next = 2;
|
|
|
return (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .downLoadFile */ .FH)('', (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .setUrlQuery */ .NY)({
|
|
|
url: _env__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z.API_SERVER + "/api/ec_years/".concat(params === null || params === void 0 ? void 0 : params.ec_year_id, "/ec_courses.xlsx"),
|
|
|
query: params
|
|
|
}));
|
|
|
case 2:
|
|
|
case "end":
|
|
|
return _context23.stop();
|
|
|
}
|
|
|
}, _callee23);
|
|
|
}));
|
|
|
return function getec_courses(_x24) {
|
|
|
return _ref23.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var getec_graduation_requirements = /*#__PURE__*/function () {
|
|
|
var _ref24 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee24(params) {
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee24$(_context24) {
|
|
|
while (1) switch (_context24.prev = _context24.next) {
|
|
|
case 0:
|
|
|
_context24.next = 2;
|
|
|
return (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .downLoadFile */ .FH)('', (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .setUrlQuery */ .NY)({
|
|
|
url: _env__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z.API_SERVER + "/api/ec_years/".concat(params === null || params === void 0 ? void 0 : params.ec_year_id, "/ec_graduation_requirements.xlsx"),
|
|
|
query: params
|
|
|
}));
|
|
|
case 2:
|
|
|
case "end":
|
|
|
return _context24.stop();
|
|
|
}
|
|
|
}, _callee24);
|
|
|
}));
|
|
|
return function getec_graduation_requirements(_x25) {
|
|
|
return _ref24.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var getrank_list = /*#__PURE__*/function () {
|
|
|
var _ref25 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee25(params) {
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee25$(_context25) {
|
|
|
while (1) switch (_context25.prev = _context25.next) {
|
|
|
case 0:
|
|
|
_context25.next = 2;
|
|
|
return (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .downLoadFile */ .FH)('', (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .setUrlQuery */ .NY)({
|
|
|
url: _env__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z.API_SERVER + "/api/courses/rank_list.xlsx",
|
|
|
query: params
|
|
|
}));
|
|
|
case 2:
|
|
|
case "end":
|
|
|
return _context25.stop();
|
|
|
}
|
|
|
}, _callee25);
|
|
|
}));
|
|
|
return function getrank_list(_x26) {
|
|
|
return _ref25.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var getquestion_rank_list = /*#__PURE__*/function () {
|
|
|
var _ref26 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee26(params) {
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee26$(_context26) {
|
|
|
while (1) switch (_context26.prev = _context26.next) {
|
|
|
case 0:
|
|
|
_context26.next = 2;
|
|
|
return (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .downLoadFile */ .FH)('', (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .setUrlQuery */ .NY)({
|
|
|
url: _env__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z.API_SERVER + "/api/courses/question_rank_list.xlsx",
|
|
|
query: params
|
|
|
}));
|
|
|
case 2:
|
|
|
case "end":
|
|
|
return _context26.stop();
|
|
|
}
|
|
|
}, _callee26);
|
|
|
}));
|
|
|
return function getquestion_rank_list(_x27) {
|
|
|
return _ref26.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
|
|
|
// 试卷库--试卷详情--试卷导出
|
|
|
var exportPaperlibraryPaper = /*#__PURE__*/function () {
|
|
|
var _ref27 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee27(params) {
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee27$(_context27) {
|
|
|
while (1) switch (_context27.prev = _context27.next) {
|
|
|
case 0:
|
|
|
_context27.next = 2;
|
|
|
return (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .downLoadFile */ .FH)('', (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .setUrlQuery */ .NY)({
|
|
|
url: _env__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z.API_SERVER + "/api/examination_banks/".concat(params.id, ".json"),
|
|
|
query: params
|
|
|
}));
|
|
|
case 2:
|
|
|
case "end":
|
|
|
return _context27.stop();
|
|
|
}
|
|
|
}, _callee27);
|
|
|
}));
|
|
|
return function exportPaperlibraryPaper(_x28) {
|
|
|
return _ref27.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
|
|
|
// 教学课堂--试卷详情--试卷导出
|
|
|
var exportClassroomsPaper = /*#__PURE__*/function () {
|
|
|
var _ref28 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee28(params) {
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee28$(_context28) {
|
|
|
while (1) switch (_context28.prev = _context28.next) {
|
|
|
case 0:
|
|
|
_context28.next = 2;
|
|
|
return (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .downLoadFile */ .FH)('', (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .setUrlQuery */ .NY)({
|
|
|
url: _env__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z.API_SERVER + "/api/exercises/".concat(params.categoryId, ".json"),
|
|
|
query: params
|
|
|
}));
|
|
|
case 2:
|
|
|
case "end":
|
|
|
return _context28.stop();
|
|
|
}
|
|
|
}, _callee28);
|
|
|
}));
|
|
|
return function exportClassroomsPaper(_x29) {
|
|
|
return _ref28.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
|
|
|
// 导出问卷word文档
|
|
|
var exportCommitResultWord = /*#__PURE__*/function () {
|
|
|
var _ref29 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee29(params) {
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee29$(_context29) {
|
|
|
while (1) switch (_context29.prev = _context29.next) {
|
|
|
case 0:
|
|
|
_context29.next = 2;
|
|
|
return (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .downLoadFile */ .FH)('', (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .setUrlQuery */ .NY)({
|
|
|
url: _env__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z.API_SERVER + "/api/polls/".concat(params === null || params === void 0 ? void 0 : params.id, "/commit_result.json"),
|
|
|
query: params
|
|
|
}));
|
|
|
case 2:
|
|
|
case "end":
|
|
|
return _context29.stop();
|
|
|
}
|
|
|
}, _callee29);
|
|
|
}));
|
|
|
return function exportCommitResultWord(_x30) {
|
|
|
return _ref29.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
|
|
|
// 导出问卷word文档
|
|
|
var exportTaskPass = /*#__PURE__*/function () {
|
|
|
var _ref30 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee30(params) {
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee30$(_context30) {
|
|
|
while (1) switch (_context30.prev = _context30.next) {
|
|
|
case 0:
|
|
|
_context30.next = 2;
|
|
|
return (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .downLoadFile */ .FH)('', (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .setUrlQuery */ .NY)({
|
|
|
url: _env__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z.API_SERVER + "/api/paths/get_task_pass.json",
|
|
|
query: params
|
|
|
}));
|
|
|
case 2:
|
|
|
case "end":
|
|
|
return _context30.stop();
|
|
|
}
|
|
|
}, _callee30);
|
|
|
}));
|
|
|
return function exportTaskPass(_x31) {
|
|
|
return _ref30.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
|
|
|
// 导出当前学生试卷
|
|
|
var exportUserExerciseDetail = /*#__PURE__*/function () {
|
|
|
var _ref31 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee31(params, title) {
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee31$(_context31) {
|
|
|
while (1) switch (_context31.prev = _context31.next) {
|
|
|
case 0:
|
|
|
_context31.next = 2;
|
|
|
return (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .downLoadFile */ .FH)(title || '', (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .setUrlQuery */ .NY)({
|
|
|
url: _env__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z.API_SERVER + "/api/exercises/".concat(params === null || params === void 0 ? void 0 : params.exercise_id, "/consult_exercise.json"),
|
|
|
query: params
|
|
|
}));
|
|
|
case 2:
|
|
|
case "end":
|
|
|
return _context31.stop();
|
|
|
}
|
|
|
}, _callee31);
|
|
|
}));
|
|
|
return function exportUserExerciseDetail(_x32, _x33) {
|
|
|
return _ref31.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
var getmember_works = /*#__PURE__*/function () {
|
|
|
var _ref32 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_2___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().mark(function _callee32(params) {
|
|
|
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_0___default()().wrap(function _callee32$(_context32) {
|
|
|
while (1) switch (_context32.prev = _context32.next) {
|
|
|
case 0:
|
|
|
_context32.next = 2;
|
|
|
return (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .downLoadFile */ .FH)('', (0,_util__WEBPACK_IMPORTED_MODULE_5__/* .setUrlQuery */ .NY)({
|
|
|
url: _env__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .Z.API_SERVER + "/api/competitions/".concat(params === null || params === void 0 ? void 0 : params.identifier, "/competition_commit_records/member_works.xlsx"),
|
|
|
query: params
|
|
|
}));
|
|
|
case 2:
|
|
|
case "end":
|
|
|
return _context32.stop();
|
|
|
}
|
|
|
}, _callee32);
|
|
|
}));
|
|
|
return function getmember_works(_x34) {
|
|
|
return _ref32.apply(this, arguments);
|
|
|
};
|
|
|
}();
|
|
|
|
|
|
/***/ }),
|
|
|
|
|
|
/***/ 75091:
|
|
|
/*!*******************************************!*\
|
|
|
!*** ./src/assets/images/question/b1.svg ***!
|
|
|
\*******************************************/
|
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* unused harmony export ReactComponent */
|
|
|
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ 59301);
|
|
|
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 SvgB1 = function SvgB1(props) {
|
|
|
return /* @__PURE__ */React.createElement("svg", __spreadValues({
|
|
|
xmlns: "http://www.w3.org/2000/svg",
|
|
|
width: 14,
|
|
|
height: 18
|
|
|
}, props), /* @__PURE__ */React.createElement("path", {
|
|
|
fill: "#F7B500",
|
|
|
d: "M7 4c3.899 0 7 3.141 7 7s-3.101 7-7 7-7-3.141-7-7 3.101-7 7-7Zm1 3H6.395a3.501 3.501 0 0 1-.857 1.245c-.32.294-.752.551-1.297.772L4 9.109V10.9c.448-.154.82-.315 1.117-.483.222-.126.45-.282.685-.466l.236-.194V15H8V7ZM4.812 0c.175 0 .35.16.438.318l1.313 2.309s-2.8.16-4.463 1.672L.088.716C0 .636 0 .557 0 .478 0 .159.263 0 .525 0Zm8.663 0c.263 0 .525.239.525.478 0 .08 0 .159-.088.238L11.9 4.22c-1.662-1.433-4.463-1.592-4.463-1.592L8.75.318C8.75.16 8.925 0 9.188 0Z"
|
|
|
}));
|
|
|
};
|
|
|
|
|
|
/* harmony default export */ __webpack_exports__.Z = ("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNCIgaGVpZ2h0PSIxOCI+PHBhdGggZmlsbD0iI0Y3QjUwMCIgZD0iTTcgNGMzLjg5OSAwIDcgMy4xNDEgNyA3cy0zLjEwMSA3LTcgNy03LTMuMTQxLTctNyAzLjEwMS03IDctN1ptMSAzSDYuMzk1YTMuNTAxIDMuNTAxIDAgMCAxLS44NTcgMS4yNDVjLS4zMi4yOTQtLjc1Mi41NTEtMS4yOTcuNzcyTDQgOS4xMDlWMTAuOWMuNDQ4LS4xNTQuODItLjMxNSAxLjExNy0uNDgzLjIyMi0uMTI2LjQ1LS4yODIuNjg1LS40NjZsLjIzNi0uMTk0VjE1SDhWN1pNNC44MTIgMGMuMTc1IDAgLjM1LjE2LjQzOC4zMThsMS4zMTMgMi4zMDlzLTIuOC4xNi00LjQ2MyAxLjY3MkwuMDg4LjcxNkMwIC42MzYgMCAuNTU3IDAgLjQ3OCAwIC4xNTkuMjYzIDAgLjUyNSAwWm04LjY2MyAwYy4yNjMgMCAuNTI1LjIzOS41MjUuNDc4IDAgLjA4IDAgLjE1OS0uMDg4LjIzOEwxMS45IDQuMjJjLTEuNjYyLTEuNDMzLTQuNDYzLTEuNTkyLTQuNDYzLTEuNTkyTDguNzUuMzE4QzguNzUuMTYgOC45MjUgMCA5LjE4OCAwWiIvPjwvc3ZnPg==");
|
|
|
|
|
|
/***/ }),
|
|
|
|
|
|
/***/ 20134:
|
|
|
/*!*******************************************!*\
|
|
|
!*** ./src/assets/images/question/b2.svg ***!
|
|
|
\*******************************************/
|
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* unused harmony export ReactComponent */
|
|
|
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ 59301);
|
|
|
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 SvgB2 = function SvgB2(props) {
|
|
|
return /* @__PURE__ */React.createElement("svg", __spreadValues({
|
|
|
xmlns: "http://www.w3.org/2000/svg",
|
|
|
width: 14,
|
|
|
height: 18
|
|
|
}, props), /* @__PURE__ */React.createElement("path", {
|
|
|
fill: "#B9C4CF",
|
|
|
d: "M7 4c3.899 0 7 3.141 7 7s-3.101 7-7 7-7-3.141-7-7 3.101-7 7-7Zm.05 3c-.675 0-1.203.092-1.584.276a2.056 2.056 0 0 0-.887.794c-.18.296-.31.691-.394 1.186l-.038.255 2.004.177c.055-.443.164-.753.326-.928a.814.814 0 0 1 .626-.263.81.81 0 0 1 .611.255c.162.17.243.375.243.614 0 .222-.081.456-.245.703-.164.247-.539.608-1.124 1.084-.96.776-1.613 1.45-1.962 2.02a4.363 4.363 0 0 0-.588 1.552L4 15h6v-1.781H6.877c.184-.197.343-.356.479-.478.136-.122.405-.334.808-.638.677-.523 1.145-1.002 1.401-1.438.257-.437.386-.895.386-1.374 0-.45-.112-.858-.336-1.22a2.043 2.043 0 0 0-.924-.808C8.301 7.088 7.753 7 7.05 7ZM4.812 0c.175 0 .35.16.437.318l1.313 2.309s-2.8.16-4.463 1.672L.088.716C0 .636 0 .557 0 .478 0 .159.263 0 .525 0Zm8.662 0c.263 0 .525.239.525.478 0 .08 0 .159-.088.238L11.9 4.22c-1.662-1.433-4.463-1.592-4.463-1.592L8.75.318C8.75.16 8.925 0 9.188 0Z"
|
|
|
}));
|
|
|
};
|
|
|
|
|
|
/* harmony default export */ __webpack_exports__.Z = ("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNCIgaGVpZ2h0PSIxOCI+PHBhdGggZmlsbD0iI0I5QzRDRiIgZD0iTTcgNGMzLjg5OSAwIDcgMy4xNDEgNyA3cy0zLjEwMSA3LTcgNy03LTMuMTQxLTctNyAzLjEwMS03IDctN1ptLjA1IDNjLS42NzUgMC0xLjIwMy4wOTItMS41ODQuMjc2YTIuMDU2IDIuMDU2IDAgMCAwLS44ODcuNzk0Yy0uMTguMjk2LS4zMS42OTEtLjM5NCAxLjE4NmwtLjAzOC4yNTUgMi4wMDQuMTc3Yy4wNTUtLjQ0My4xNjQtLjc1My4zMjYtLjkyOGEuODE0LjgxNCAwIDAgMSAuNjI2LS4yNjMuODEuODEgMCAwIDEgLjYxMS4yNTVjLjE2Mi4xNy4yNDMuMzc1LjI0My42MTQgMCAuMjIyLS4wODEuNDU2LS4yNDUuNzAzLS4xNjQuMjQ3LS41MzkuNjA4LTEuMTI0IDEuMDg0LS45Ni43NzYtMS42MTMgMS40NS0xLjk2MiAyLjAyYTQuMzYzIDQuMzYzIDAgMCAwLS41ODggMS41NTJMNCAxNWg2di0xLjc4MUg2Ljg3N2MuMTg0LS4xOTcuMzQzLS4zNTYuNDc5LS40NzguMTM2LS4xMjIuNDA1LS4zMzQuODA4LS42MzguNjc3LS41MjMgMS4xNDUtMS4wMDIgMS40MDEtMS40MzguMjU3LS40MzcuMzg2LS44OTUuMzg2LTEuMzc0IDAtLjQ1LS4xMTItLjg1OC0uMzM2LTEuMjJhMi4wNDMgMi4wNDMgMCAwIDAtLjkyNC0uODA4QzguMzAxIDcuMDg4IDcuNzUzIDcgNy4wNSA3Wk00LjgxMiAwYy4xNzUgMCAuMzUuMTYuNDM3LjMxOGwxLjMxMyAyLjMwOXMtMi44LjE2LTQuNDYzIDEuNjcyTC4wODguNzE2QzAgLjYzNiAwIC41NTcgMCAuNDc4IDAgLjE1OS4yNjMgMCAuNTI1IDBabTguNjYyIDBjLjI2MyAwIC41MjUuMjM5LjUyNS40NzggMCAuMDggMCAuMTU5LS4wODguMjM4TDExLjkgNC4yMmMtMS42NjItMS40MzMtNC40NjMtMS41OTItNC40NjMtMS41OTJMOC43NS4zMThDOC43NS4xNiA4LjkyNSAwIDkuMTg4IDBaIi8+PC9zdmc+");
|
|
|
|
|
|
/***/ }),
|
|
|
|
|
|
/***/ 27092:
|
|
|
/*!*******************************************!*\
|
|
|
!*** ./src/assets/images/question/b3.svg ***!
|
|
|
\*******************************************/
|
|
|
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
|
|
|
|
|
|
"use strict";
|
|
|
/* unused harmony export ReactComponent */
|
|
|
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ 59301);
|
|
|
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 SvgB3 = function SvgB3(props) {
|
|
|
return /* @__PURE__ */React.createElement("svg", __spreadValues({
|
|
|
xmlns: "http://www.w3.org/2000/svg",
|
|
|
width: 14,
|
|
|
height: 18
|
|
|
}, props), /* @__PURE__ */React.createElement("path", {
|
|
|
fill: "#D09F18",
|
|
|
d: "M7 4c3.899 0 7 3.141 7 7s-3.101 7-7 7-7-3.141-7-7 3.101-7 7-7Zm-.062 3c-.826 0-1.464.172-1.915.517-.4.307-.686.733-.856 1.278l-.058.21 1.908.364c.052-.383.153-.651.302-.804a.772.772 0 0 1 .58-.23c.23 0 .412.07.544.211.133.14.199.33.199.565a.88.88 0 0 1-.265.638.89.89 0 0 1-.662.27 1.35 1.35 0 0 1-.158-.012l-.104-.015-.105 1.536c.278-.085.496-.127.654-.127.298 0 .533.099.707.296.173.197.26.475.26.833 0 .352-.09.634-.27.845a.852.852 0 0 1-.677.316.862.862 0 0 1-.636-.25c-.143-.144-.254-.384-.333-.723l-.036-.177L4 12.826c.132.482.321.882.567 1.2.246.319.56.56.942.726.381.165.902.248 1.563.248.677 0 1.224-.112 1.64-.335.416-.223.735-.542.956-.955.221-.414.332-.845.332-1.296 0-.359-.067-.667-.2-.926a1.633 1.633 0 0 0-.563-.625c-.149-.099-.363-.185-.644-.259.347-.204.606-.441.778-.712a1.66 1.66 0 0 0 .257-.908 1.82 1.82 0 0 0-.634-1.42C8.571 7.189 7.886 7 6.938 7ZM4.813 0c.175 0 .35.17.437.338l1.313 2.453s-2.8.17-4.463 1.776L.088.761C0 .677 0 .592 0 .507 0 .17.263 0 .525 0Zm8.662 0c.263 0 .525.254.525.507 0 .085 0 .17-.088.254L11.9 4.483C10.238 2.96 7.437 2.79 7.437 2.79L8.75.338C8.75.17 8.925 0 9.188 0Z"
|
|
|
}));
|
|
|
};
|
|
|
|
|
|
/* harmony default export */ __webpack_exports__.Z = ("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNCIgaGVpZ2h0PSIxOCI+PHBhdGggZmlsbD0iI0QwOUYxOCIgZD0iTTcgNGMzLjg5OSAwIDcgMy4xNDEgNyA3cy0zLjEwMSA3LTcgNy03LTMuMTQxLTctNyAzLjEwMS03IDctN1ptLS4wNjIgM2MtLjgyNiAwLTEuNDY0LjE3Mi0xLjkxNS41MTctLjQuMzA3LS42ODYuNzMzLS44NTYgMS4yNzhsLS4wNTguMjEgMS45MDguMzY0Yy4wNTItLjM4My4xNTMtLjY1MS4zMDItLjgwNGEuNzcyLjc3MiAwIDAgMSAuNTgtLjIzYy4yMyAwIC40MTIuMDcuNTQ0LjIxMS4xMzMuMTQuMTk5LjMzLjE5OS41NjVhLjg4Ljg4IDAgMCAxLS4yNjUuNjM4Ljg5Ljg5IDAgMCAxLS42NjIuMjcgMS4zNSAxLjM1IDAgMCAxLS4xNTgtLjAxMmwtLjEwNC0uMDE1LS4xMDUgMS41MzZjLjI3OC0uMDg1LjQ5Ni0uMTI3LjY1NC0uMTI3LjI5OCAwIC41MzMuMDk5LjcwNy4yOTYuMTczLjE5Ny4yNi40NzUuMjYuODMzIDAgLjM1Mi0uMDkuNjM0LS4yNy44NDVhLjg1Mi44NTIgMCAwIDEtLjY3Ny4zMTYuODYyLjg2MiAwIDAgMS0uNjM2LS4yNWMtLjE0My0uMTQ0LS4yNTQtLjM4NC0uMzMzLS43MjNsLS4wMzYtLjE3N0w0IDEyLjgyNmMuMTMyLjQ4Mi4zMjEuODgyLjU2NyAxLjIuMjQ2LjMxOS41Ni41Ni45NDIuNzI2LjM4MS4xNjUuOTAyLjI0OCAxLjU2My4yNDguNjc3IDAgMS4yMjQtLjExMiAxLjY0LS4zMzUuNDE2LS4yMjMuNzM1LS41NDIuOTU2LS45NTUuMjIxLS40MTQuMzMyLS44NDUuMzMyLTEuMjk2IDAtLjM1OS0uMDY3LS42NjctLjItLjkyNmExLjYzMyAxLjYzMyAwIDAgMC0uNTYzLS42MjVjLS4xNDktLjA5OS0uMzYzLS4xODUtLjY0NC0uMjU5LjM0Ny0uMjA0LjYwNi0uNDQxLjc3OC0uNzEyYTEuNjYgMS42NiAwIDAgMCAuMjU3LS45MDggMS44MiAxLjgyIDAgMCAwLS42MzQtMS40MkM4LjU3MSA3LjE4OSA3Ljg4NiA3IDYuOTM4IDdaTTQuODEzIDBjLjE3NSAwIC4zNS4xNy40MzcuMzM4bDEuMzEzIDIuNDUzcy0yLjguMTctNC40NjMgMS43NzZMLjA4OC43NjFDMCAuNjc3IDAgLjU5MiAwIC41MDcgMCAuMTcuMjYzIDAgLjUyNSAwWm04LjY2MiAwYy4yNjMgMCAuNTI1LjI1NC41MjUuNTA3IDAgLjA4NSAwIC4xNy0uMDg4LjI1NEwxMS45IDQuNDgzQzEwLjIzOCAyLjk2IDcuNDM3IDIuNzkgNy40MzcgMi43OUw4Ljc1LjMzOEM4Ljc1LjE3IDguOTI1IDAgOS4xODggMFoiLz48L3N2Zz4=");
|
|
|
|
|
|
/***/ }),
|
|
|
|
|
|
/***/ 1169:
|
|
|
/*!******************************************************************************!*\
|
|
|
!*** ./src/pages/Classrooms/Lists/ProgramHomework/Detail/index.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___eQ57b","flex_space_between":"flex_space_between___PVjBV","flex_box_vertical_center":"flex_box_vertical_center___ghTL_","flex_box_center_end":"flex_box_center_end___z8oKm","flex_box_column":"flex_box_column___JQV5n","title":"title___w80Ja","workListTabWrap":"workListTabWrap___YRwm7","workListTabButton":"workListTabButton___ebGCB","tables":"tables___AYvHM","checkboxgroup":"checkboxgroup___fZHgL"});
|
|
|
|
|
|
/***/ }),
|
|
|
|
|
|
/***/ 93314:
|
|
|
/*!********************************************!*\
|
|
|
!*** ./src/assets/images/icons/nodata.png ***!
|
|
|
\********************************************/
|
|
|
/***/ (function(module) {
|
|
|
|
|
|
"use strict";
|
|
|
module.exports = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAMwAAACaCAYAAADl9acYAAAAAXNSR0IArs4c6QAAIABJREFUeF7tXQd4U1Ubfs/NaJtO9kzLahFQEJkiUBBFUFFkCCjiAAVFERT5FREQQQXBBcpysWRP2RtkKRsEOphNodCZdDfjnv85CU2TZt2bhABNDw9PmtzvrO+c957xLQIP0pkz1yrQIEmwwcDzHhTj91klEo7jpcG5zetWUJdmRjmPvTM9GI9JgSGvadOoLE9KJJ5kPp2YXLtZdO1kT8ooz2vigCNelvPYezPEG7z0CDAn4pJqPvJA5A3vdcl/S3LEy3Iee29OeIOX5YDx3nh4VFI5YDxin6DM5YARxKb7g6gcMHd+nMoBc+d57LKGhCQ1ZURBCoVL2nKCO8sBZWW50x1TOWDuLP8FlV4OGEFs8glROWB8wmbPKikHjGf882bucsB4k5t3qKxywNwhxrpRbJkGTOx0ehlA3d9e5VEtzA3ulGe55zmg1QOfrCVo34BgQGvr5rLDRl4RRZG+5NjBESBc4FHw1LlrCAuPsCo0JjKi7J5hYqfTXADBq4byCJLf82Nf3kA3OfD9LgKdgeCzZ4CUTJ1VKQFyKQgpmeMSjiKvQC+oplspN/wOMDcBVFv0Bo+KwYJ4VE50H3Jg7j6CWzkEX74A3MrSgTfeKZpSaBCHcAVn/JunBHlFPDR5BkG9LMjPt7mZLOtbskQADea9wqOW9coqiGHlRPcHBxYcJriQQvB9P+v2cqCwWFxgoOJk6JeTNX4HmJMAHv6xP4/6VXw/+OxNx/bM/pIohdUE9VW/VxwjOHiJYO5A6xolpGSpYW3jIW4w/A8wM+h+UHSY2pvHgzV9NXymeor0wPc7Cf7XzWJ/4Nsm+Ly2LzZx+OwZ3yuVbzhNsPEMwcI3rM8wMikHiURi5gNbbQoKrc84zpjkj2eYzQC6f96DomUd305ctrp8tp5gSk/f1utzlFhUOHYthy9f8D1gdpwnWHiEYOVQ6zNM6QM/AY+CImHnF9YtfwTMCgB9P+5G0SHa9xP3bk2gT9cBU3r6Hjp95nBYNcz3gDlwkRhX843vlfS59PmFHfjFzgC/2pJ1nEEnEIpIAG+834Wia2Ox7PJ8wt0twLz7J8Gsl3zf316zCVYPsz5oe85F1yUcu0YwcQPBjlElZyjL8wsrQeyBn+XxK8DETqefgyACFCPe6kjxfDPfT6C7BpilBLMG+L6/A34h+P1VikCZ60nuTYpzN4AxqznjCqPOMZ1RSp9f2OVLYZH1lbOrNvjVlswIGEAKYOyrj1K82NL3E+huAWbEMnbFSn1+Qzd4AcE3fajPZV6X04D3lnHGM4xOawKFJwLLYiD5H2AoCkHwJQMLA42v090CzJjVBBN7UCh8rN3AgDrqCYq6lX3L6RQ1MGQRhwWvA7UrALbnFzCJjOhG+d2WjFCkUYKZPZpSDIv1PWDGrycY34NCahI0+yxN/Ivg3c4UlUN8VqWxok/XEfRrSdG0tm/rzcoHBv7KYc5AILqqLWDcOb/45RmGEFyhFL8/0Yga33y+Tl9uJhjxOEVIoG9rnrqVKSJSRFb0fb3tG1A81sC39TLRSu85HL57Eaii0Bm3oqEKqZXSJaUURUxTU0Tyuy0ZAc5SYCUbxE+6+x4w3+0kGNiWooqP3/Qz9xB0bUTRsLqI2eEFUlbvA9WBJxv5ltdMit9jFocpLwB1InQIkBEQTmLUHStOBoMBOr24K2+/AwwPHOKArS2iKCY9VzKIg34jyMgTv6f1wpwqL8JLHKgUTLHwjZIxZTKg0V2Bzg2tLzvYBYA75xe/25J1mkEnGAzYyXE40KQmMK23uLeLN8b1j0ME7epTxFTzRmnCy/jzXyCqIny+NVryDzFeKfd+xLcrDOMMO8MMfgx45iFrOZA7AstiTvvVoZ91usM3tClHcLpeZWDmAN8DZtlRgkY1KJr5+BC87hQQLAeebCwcZN6gXH6MgG2P+rfyDmD+WLoV8xZugkIRiNh2TTHghcfRoF4tFBZpkXgpGQ81rmdu9puLOLzwMPBYPR1Cgzw/v7CC/WpLxjrc/jtaT2LApRrhwC+DfA+Y9aeI0dKzbT3vTCChk3r7eaBABzzfTGgO79CtPUmM9b7U2jv9bf3kOyjSlihLcoSg93MdkZ2Th227j2Hoq8/inTeeNzZ+xFIOsTHAsw/pAeL5+cUvAdPuG1pVRnArQgEsGex7wGw7RxAgBTo19M4EEjqtD1wEkrPYm15oDu/QbfkPSM0hHsu8du0/gSnfLkFGVrbThjFLynULJ6FOZHUw2RNbyd/qUJLFHZV+ywr9aksWO4Ou0BK8KueRz/bVq++CUuD+RGbhB3R/0LeAOZEEnFIRvPGYb+vdGw+cvU7w3uOe1dv+mfeRk5svCMUfvz8AA3o9jgkbCJQVgPe7lGTz5MDvj4f+VXs/JH1ip1PmAkHy17u8z42bjl4lxjf9C809m0CCZo4FUVwKsDPOJLz0ZTp6Fdh6jtnWe1bvuCm/4q/tRwQ1/b03e2LIwGfw1RaCkADg425AOvPkYCHZd0cG43dbsk4zaDFgWHiHcG85wjBQoEhnMhAzf5r/Jihkf9/+fjXDtDXqGA108+Eqcy0DYAfwMU95NnEFzVgLovibwK8HCab19qze61s24Pf5K7A5KwB5vHM1CblMij9m/Q87rtc1jsek54CMPIBayGD0BgP0ImUw/gwYFiqjllhHGAcvAkuPcijU8cgv0KGgSGv8LNJqweu1MOh14A3ss+S78W+Dzuo3RsPoTy0YgIjQALFz0C36tBzg570EE3p4NnHFVn5TA0zaSPDzy57Vu2bIS6jF67BDHYBHgnVI0kow+6ZjLyZNm9RD+35jkZINfNO7ZIVhEn+e16NQ6157/OqWjJ1h9n1IXoydTi8AeGD+KzxqinCEsfkswfBJC2HQacXOG7v0B+e9CGXVUK+U5aoQdm5iE3eqh296R/XoDEBu0e3/hcz3FzF+Z292trI91Zgav7N2tKrDrrfFTdgTI4dAl61BipZDDXYINRCMvBrusNvBikAMHT8LTM3/pwElK4xMAuQV6uBuKK4yA5hEVfY8SvmmHCETGyjDtzqbQLHf0KMgaCnWEcaW/whGT1mAHHZP6oW09bueaFy3khdKcl0EO+y+v4xgphs2MWxbs+K46bLCDIoi6+9iVLKY4PbTp8UB5t8h/UB53qimz1aJA9lyLExz7H1vyMCnUa15L/x9EfhtkIk/nh74y9ShPz5JnUGA26qFZIdcTofWqR5xxd5Uip1O9wDoJNYRxs4LBB9PXYxUdaHrGSqAYuWUp9GmSQ0BlN4h8cTq8qVfOGgKStpBeAoJb4DEYPrPsU89b/5e/LvEYPubLCIQX06NEtWpfwa/yA4h0FEgqVCK71OCUeTARdLLfbpg9PAXsfGsBBtOA0uHmKpyV0PZsqFl5lo5QaXWgRqNw4pTHiEYGa2M+KX0yMROpxsA9BDrCGNvAsG4GcuQdMt45eJx+nXsk3iyNbOY9k161wOry8/GqZCr1t4GBA/O3T0Nm7gSDl/89IBRHiU0nRk3CgU3knEmT4pZN51rrjI5TN2oGmCOMP44BKx7B8jINemP8ZRCK2Y5LNXAMrMlS0hSpwKw9TRGME+XHf5ekybEfPCInU7/BDBArCOMw5cIPvt+JRJUGqHj7JRu2rsd0P+JGBuanELTTVpwwO3/cnjFxNcTwMz95hquxud5pd+skIEfR6NJA+F2y6o1S3Fj4xpj/X9lBmK7OsDuChMUKMf+v36AXC4Fc4QxYwew/X0gM8/k5VKvN0BvcF9gfc8CJuGWuh4twgoQnJSBzK+nDP+3eLTsBahJSNL8DdD29kaUAFsDSU4vpVJp3FTETqdzAbwl1hHGySSCCTPX41RimlcmzthBrTCsV1Obss5cJ2hWXQupTIoiHUW+1nRYZkcn5kRbTzlIOQq5hBmimfRu2RwoeU4gl5rAFiI3Odpmb/NRK0zXu+zgKzZtWZWK/VvTxWZzSP/EK5HoEivcxsFQWIBzk8caVxmWmMT+g6thNlfMg/p1xYfv9DXSMEcYEzYAu247wnBXQ9myE/fslixRpf6FUgw2N5bgDChmk6Lw33MMqkqlg8JeVKmn8hRjHI0QIdgbiJynGWhiZ9AZoPhgaEeK50Q4wmDCvwmzt+HwGe8EcH67V1N8MshWV4UBpnlNLQID3Lcn5nkKrZ6iUEex4azEqC08di0BW1XDgsTP+2NHsrH6F+/0m9Xetns1PN9b3IWHPi8XyetXIOPoEeg1WbhYKMGK9CCoiiSoWq0SnuvWzqhLVuyoz+wI411mmi3epZI9Lt2zgElIUht9INtpdDJPMUsSGf59NCFFxc8TknI6AoZ9LqbCmj+V4X33zMAEAOMHtaXoJ0KLVpUJjJuzD3v+vSh+xtnJ0ffxaMwY0dHuCtO8pg6BAcK3LI4axCTai/4hRsBM3kww5DGK6o5vYx32S52pw9QxbEi8k6o2DMeoj2q5VVhqNnB29JsI0TP5M6Dj5Gg7dwmkpVZOsyOMtyg4joDyBhRq3d+Osbru3S2ZSp0LCmf+9ZM5CUY3qBWx3LREUy5RpbkKQOl0FAimvrksPAME08Q6wmD74DGz/8H2A/+5NdClM8U2r4VFE7rZBcwjtXQIkHsOGLbSLP7XBJhvdxD0fJiinhs+pVk5n41IBM/UFryQSHggvpxRooovpsgdFwjoD8MQri3ZIso/XYzm9a2FwDfUAFPxX/AaRYSCeCR/KW7fvQuYJE0RQF3vSQh2UQn3bsOaYXEJSZrPADrJBfP5BceCVx+4LO0r1hGG3gC8//Np/LXrmJjxdUhbv1YE9vzU22eAmbOPBRmieNCNFzvP8/jhaxVSL3vn4M9zBJN/bgSZgJsyplZ0KQ24oSZgq8vmE4V4+9hrkNIS8O5uPhbNOz+CprWpWRhd7Ahj9svMYM871rT38pbM/q2XvelHoeU4bpxBgt+Jjr8MAqfi80NXZEW/H1UEuOMIY/zCRPyxZr9XABMSJMP5pbelahYlsjNMi1p6402Pp8lyhWEhIBpVp2hdV1yp6nwgPAhYvzQF/+zOEpfZCfXgz6LRIMrxKsq0B5YcKsL6UxRFvBygelBdLjhZGMCx/RfTKWMCUGZzbAClvJEmtiGH97oEGLdhzBHGjL4UDyvLOmBUmn9AaamAay7GimAXgdErzG1RlX36k9el+PlgsPFtK9YRxtwtNzBl7havTZoLywYhuJRbSCNgauvBlAg9TQYDjyVHOeOWbOVxoEoo0Mn2JttpNZvOcmhfn0KTXoTr8TlITSnCrRSt8TMvV7gj79KVPDskCo+1tb/rZkLScavzcTlTARBrZUu+MB1coHNHZ8rQXEzvH4T+8yWY9DzQrj6QptFDzzRlPUj37JbM5pZMeCfZK5CNgsPt3PlbEny3LwSlHWEIqWLzcTWGfbFaCKkgml0zeyNaaa3QdqcAs+msSa2k+4OCmmYm2nyWQ98W9idabo4eqSla3EopMn6m3mRgKkJ6KlM6dV5Plz418ES3CjZE7Ar9w2X5UGXbv3bmC1NBAiqBEOf34zFhKlzLq40PuxK0i8qFutBzRdd7FjDx1zSDCKELxA2tmZoyyztqqc9tUdDlDAm+2hUCdxxhHIwrwOAJy5EvIkSCsz78Nq4rnmhpfU/BANOytgEydwQmpSpjQro/b68we+JNArzej4jjKouz0q+luDwGAzWCxnI1Kr0qPfpEZTzXv6pVwUzf6+MVBTiX6vi+hxoKQfUF4AJswWZZGF+UCUN2IsYMaINnbcVd4jp0m/qePcNcvJlTldcaUm5vVN3qnKNM1zUcJm4LhTuOMP65qMWYGWtxJcU76jGT3nwUrz1j7ZnCCBilAbLS96RucIFJtv88ZpLD/HMZSEgFXmkrrqANp2yjEYsroYRar6f44I3zxh9qNwnH8FHWNxBLj2ix6F85SKltmGV9lBrAF6RConCuh8fotCn7MSC2Fob3ELkPddDBexYwrL2JSZqtFPQpdwfHUT7mf+zjTWFwxxHG8St6zPhtCw6cZXcSnqdhLzTF2FethZcMMK2UBki9DBgmbz18mYAJbMUk5shiYBsxORzT5ucZ8PHbcUaC4OpBGDe55AbiShqP9/40gHLOt058UZbxXMPJnQuUKK+DLi8DEs0R/PJBLIIVwjULHPXgnt2SsQbHq7JeIJSYFIi8mNgeeeT6cFRQAItFOsL4L5li0do9WLrLriK06FZ2e7QO5v3PwugcgDcBo9MbsPT2CnMxFcYwdiNFuMhlKjcs/J23AMMEoONHJhj5JA2T44tvS2TTo5cX4kKqY5X9YuYacq9CEhzlMngmr8uGQasFLUpDPcUV/DCiKwrcNBwrrvueBsyKFVTSvG32aQraRPRMdJKBWaa+vSrcqNAo1hEGsyD8Y/1R/LzmjFea1EBZAbtn9rIqywiYSB5Siecey3U6A5YeN23JmCCPORIcK8IWhV0ps1Wpj8hzjyPmsDPN5P+ZNCWInMOXPz9g/PtgohZfbpEZ3SE5TxSGXBUkIa61vPnCDLCzFEuGrOMY1q02Xunq2VS6p7dkrKOJ17N7UAPP1PG9moatCoOBJ9go0hEGe+P+vC4e3yw84JX2VAoLxMmFL9sApnUkD4kXAKPV6bHsuNQIGDb5p28nmCwixmZSJnA5jeCZh1x3NzfpKi7M/xlFGRmo0qoNqnfohPAG1mcH1dUCfDP+sqkwjuCreY2Mf478swiJGa6V3Az518EFVgHhXMu0DYUZ4G8Dhuqy0Sg0EfM+8myHf88DhjEzIUmzAaA9XA+ZcIqR60KRp+XgjiOM3Sdu4s0vtyAkSIrgQCmCg6QIYZ+BMuPf7Dfzs9vP2bPi34ICZTh2szJ6NM41HuyrV7f2G8tWmNZRPCSc5yuMJWCYGcjHawm+7Sv8DPPfdSBfS9C5oWveHhg+GFqNyfRBEhgIeWgY2kz7AZysRDh5KT4fP0y5vZ0lwBdzGoO9FwbOK4S6KMDpCkP1eaD6fCNghCSDNhe8zmTsVznrMD59XIGa7Wx194SUVUxzT2/JihuZmJJThWoNZ0HgNY/EH28MRUY+B7GOMFibcrJzkJuXB3Z1zXHc7U9ivNlh0mX2aXpm/7ekLA57E6R44zHm5slWAs0A0ybKpDDoaWLhHJafMK0wLIm1ujx0iYD56WgrQO3ryuplSN6xzajkqM83+RCr1aUrol95A5zUJIT971QO5n2bZPybXYRNntsYvx4guLJrL1qkbsD2moOQHP6wlUskRkt5PfiCm5AEC/exa9DmgNcVoVL2KQy59RsqhAQg6tPvwAU5U1F0zvH7AjCsC4mqnE6UGpitvsfSJ0IIHb8lmNzIlkCsIwxPJzDLf10NrDtJMNyBjzDvAkaH5SdkbgOGOf5oVAN4sKawnl+YOwspf+81EzPIh9VvgCbvfoDAKlVx9JAai+ZcNz4PVBBE9W+M07uPo9/laeBgknSeC22ObbVeQ06QCRzselivuQhZBNveCX+JGAoyEZEThyE3fkIYNa00yh69UPdF6y2wsJ6ZqO6LLZl5pUlW9wHFMkrh6mTokgdf7QzG5UwpxDrCcFmwAAImPPztIMHorva3RkbA1GEhGoRPDkfVMj/EVoARaabM2vliCxj9QQtJ1GDAtU3rcGPXDmjVWWDfWWJbtHp9BiCwRScU6KQICJRg4VEp4g8ex4tXvrFSpGT0JxXNsKraIEgVFaHLuQ5ZSE1wAeLsEioRFZ5PnAVlTok5hiQwCG1+mAupwr1V5r4CDGNkgkrzEij93Znqi5CB/XafAhduySDWEYaQsl3RFGiB6Tsce4NkgGlbx+WtqatqjM9ZlOAVJ0tWmPeWEvzYX3gYcOY9cuKzsLE1EVK5oagQJ7/4DDlXS67gZTVqI6dlXxwNaIXrJ06j75UZkFhoHbNyK7Zqh2E3usHAlCupDgFhtSAJEmdsxsqJqZSHevmJaHPoC6vm1nvpNdTu7t6R+L4DjAk06t7M+tKuDb+QkQTw00EFTl2XQawjDIHFOyVj6h+frSeY4uC2it1MRVXgIeUIpBLTWcjdxMJArDgpN2/JPlpF8PlzwoPDjl9v0vZ1N2k1apz+ehJyVaZzS3HimUMKIoWUWrusqtDqUTR46308/bUKekghU1QBkbq+PbPXPkNuEog8DAOS5+ABzVEzSWj9GDSf+JVbXbovAcNs+oODFYSjsp8oqCm2gcj06z9BOHJNbjTZ7RDt/oQQWa2ZXEw0ZWY1yYzYGdCYuj5L7AJNwgBlvHRgj3mjnfvtx0YlS/Zcp9dj6wU5nmpiysccdLMYm5UECr3HruHwQ3/P+KPLzcWZ6VOQfdG5xWbVzl0R9fJgEI7DjO0Eu85rQSTuH1lbV45HbmYSzl1OR+2im4g0ZEJpyETdAC26zpnv1tDdt4AptulPNJ1rplMKUY6uFh8PxL5LARDrCMMtLtvJJAYw3qqTlcOCw7JYLUoBwWHZWWvBIYJxz3jeAiZxv7R0AZJ3bIetdT1B7T4voebTPc0VMbe2G08Wur26sII+6JyD5x4JQU6+FkfOp+DA2es4fO4GsvO1qFk5BE3qVEaTupWNn9G1K0AmILT1fQ8YxhhKqfTi9ewBoPQjSiFAxAasOh2AbfGBRr0qMY4wPJ86phLuFmBm7ibo2oSioYAL+uPXgKvpBIMe9VavgctnE5C7fyuyz58Bc2oRVKMWaj7XBxVbWGuELjxMsOxIAYjUtaqMo9Z90CkHz7WwXkoNPMXZy2k4ePYGDvx3HVdSTHIjBqCVn7verJQJwBQzjKnzJyRlPcZJuJ6UxwsAHEoP/joXgA3nAiHWEYa3ps7dAgyTeTwSRdHcuecDYzdXHCN4oBrwaH3v9Fqr55GWmY2ICNe3XWtOEvyy17MVZmRsLnq2dH4bdv5qBt6Ytg3d29TDOAFvhjIFmNLDGp+c1UxCycs8xTu3jcrMJDvi5VhxOghiHWF4Z+rcvRXGGBy2EvCYABB8sZHggycpqoa6f+lgya/MXC20RUUIDXV9gGJueb/d5tkZ5r0OOejd2nldm/+5gkkLDuOzQe3QrY1r2+0yDZjiwbp4PUNJeelKSqlZSX3/ZRkWHVNArCMMbwFm/AaC8c9Qt65rPWkDCw7Lggw9YVLhcprWnCCoH5qKGmHUaC4tl8sgl0kgl7FPqWhdt6upuQiWc1AoXN96MSd849ez62/31YPeeSwHL7Z1DpixvxzA7hNJWP9lL1RmjgtcJL8ADOOBSkWDCqiGaQoYlYn+TZJh/hEF3HGE4YqpQp7/sC0PrzRPhYxPg9yQjmCkoTA/HUV5aZDq0wBZBQQ0my6kKFE028/BGODpOYHBYfPy8qDT6aDT6Y2flolpUxeDhznscAWkfxKzEFNDAbncteIk8xIzYinxSBj1VrtcvPSo4y0Zs0Z96qPVqFpBgcXjnhXEx/saMCZfZNmTQCjTmZCAEC0oUglPU3iOnDEYtCcb16nCrDaN6ZxKU1HK0xOEIOrMDSlmHnDPEYZLzhoKAW0aivLSQXRpCKRp4HTpKMxNAy1KN36XE+cRAHjKIb/pckhk7h967bXz70STao47wWHZ9bZebwJOMYDY38Zrb4vEtKwZeAKMq5IJSDKZFOuPpqFr8yqCNBjYDd3AXwwgnPu+2Qa3zccrjzleNY7G3cR7P+7G8+2jMWaAMH8r9zVg4pKynudA1jmawExnjKf8fwRkAwF+j46MuJSoyupEKdkdnyoh0/e65wjDUX1c3MdA3hUEEO+YL6fU+BwRNUQa07tAM7v5OpNM8LoXg8PqDXrotHrojUDSQafXgXmrKZ3i0uV4vKkwiT2TJ/WcqYWBBLp8PzkieK1NIV5r71iO8/2qE1i2O8542GeHfiHpvgbMRVX2RzzlpwnpKCGEOa76i5dynxCeTriaTvpP2RnqliMMhwC9MBaBBaeFNEcQTU7FvpDWeU0QrVCiCynA7jjHip9Cy3FFxxz/mVYi0//sPD2u5wWgXUOBSmkAXvtVj7R819s3R215ta0Orz/m2FVVnwkbkJyWa7xOZtfKQtJ9DZiEpKzXAfKbkI6W0JAiQrDyZjZ5adyWUM4dRxiO6qOqRVCkLRPXHCfUt2gjhLXw7jmGBYdl18Uf+Tg47K4LBCz0uZh6P1oJnL/p/qH/5dYGvNnBfv5rN7PRb9JGVAoLwoavrC1enQ3gfQ2YC1ey6kil3CV2lhE7S7MKuMIxf4UGuuMIw1FdhszjCLk6XmxTHNLrqRT5TVdAJnNfPaR04cbgsPsIJjzrmbqL2E4evgxsPy+uXubM7+Vfmbss9661X2lDMdhuABRgyc4LmLnmJGKbKfHlW8KNyu5rwLBBS0zSbKBuWGOyWCoj1rrnCMPRZNEX5SLk3ACmVih2PjmkV9WYiso1RHrec1I7i1HJ5Ct3Kjiso6rPXgeY9P6bPsKB2uSRWKSlZbjNy3FjhuOTD5kIzja9891OnEhMxVs9muHVbsL5e98DJu5ydkNOxh934enfhmPsUDl0ZRgCZUS0IwyHWzJmqPPfcATorrk9yKUzZld5DTKlKUCQNxLr98jlJhV/X6ZrmcBXmwnmDBReb2R0CxQWmiOaiG5uj+5dsOyPH23yMd2ybmNWg6nJfDv8cbRpLDzO6H0PGMaN2zYyi8Q6/Ru+Ogw6A8FfIh1hOBs5evE7KLJ3ih5cRxluSR5FWLNxXiuPFeRJ6D53G5KWC3y4gmDhG8IAw7Ssa9Vlpsrup8jaNXHh+A6bAnYcu4bPfjto/H3z1D4IZ5JcgalMAIb1NVGlHkwpmQ1QwRf3H6wPRU6Re44wHPHXcGMTQm7+LJD9rsnU+soIaO2ux1z75Yu163fdStcUuYXA6wsIVg4VBpjMLDUeaOrgAOK6OjNFcvwhVCiluzbh90PYdvQqqlcMxuovSjSkhRRbZgDDOnsxOaczpYaFlEKQp4Sxm0KQlidxyxGGI+Zqs+IRfuUDIbwXTJMWsxghIc79CAsu7C6Ndg0lAAAdVklEQVStMEws88Jsgg3DhQEmSXUdLdt55hLJuIKs/g2x7UvcdrJtWPcxq40q/h2bKfGViAM/K69MAYZ16NKlzHCDlHwBwr0FUKdr7efbQpCs8a4jjMKCfITHDQRH3d97l578qmqTUblWczGYcErLzjDT+/hej63HLA5r32YOCl135dyFeHTuahtsynVOa4qvPv8II4aVyLJOXUzFsG9NW+bXuz+EISK9lJc5wBSz69KNzEheLxlFQVnEIrvmUlN3B+NiuncdYWi1OsjjP0KQznvxIDVVh0Bem1kreCcZg8N2pwhzX4juVkN6zebwx+u8oHr/OXoCPXrZBpsSW/GAvj3wy6yvzdl+WnsKi3aYnKFPHtIBnZu79qBpWWeZBUxxJ69coYE6ae4zlOqfIyBPM59uxc++36/AuZvedYTBJNz6+OkIL3AVn1b40N8K6oawRu8Jz+CCcvImgiEdKKoLF7p7pe4B8zl8148XVO+uPQcwYNAwj+tt0iga/+4t0Z4a8MUms9HY0vE9ECnUHc7tlpR5wFhyfA+l0lqq7L4A/QlAhTmHgnA8We51Rxh5FxejcvZSjwe7uIAk/cOo0nqK18qbsYPghebUGO7Dl+n1Pzh89iwvqN71G7fhzbc/9Lh5LALCzr+PQVMkR2w0Na4u566m49J1tVElRqyDEb8CTDH3LyblPMhTw67fjwZVPXTV+44wspP2oVq6IBU3QRPiprYWwtvOE0QrhGj2PoKO0dSoR+fL9O5SDm/H8oLq/XP5Gowc7R2tic9/XIlNyU2wY5RH1gJGVvklYFjHL6k0Ty85EbhxV6KceNsRRuatS6h1fYTX5mK+IQR5TZcbDb+8kVhw2MY1KFrV8UZpwsv4ZC3BCw8LC0o7/7fF+HRCydnDWS1FOSmQh1S363aX5XtlxGTEBfbCxveAIMFCB/s1+i1gGDsGL9Cvvpgm6eVtRxgZGZmomTQYHNUKn01OKHlIcEG5AfWE+eB2WefKY0DVMCDWO0G5XNZXTMDOTu3qUzxuinDhNH0/cx6+nGYrpS+diflxLkhPgFRRGfIQ+wzq9OxA5DUei5VDgYruObw0V+vXgOn8LR3L85jibUcY6iw1KiV9CLnhpqt5Ieg5DxkOV16PRyKFyTBcFbrxDPNZJj44rKtyXT1nvsYaVqeC4k1OmfoDfpjl2ncYb9CiMOOS0edyUOVoEGM4cuvUuGkrBHdbgIVvALWs4++6arLNc78GTOx0yq6efvS2I4zs7ByEJY1HkNYUactZ4kkg9FwE9JIKMEgijH8bjN/Z36bftCQcudLaeKC6q9KEPd8dB2Tliw8OK6x0x1Q/7SWoGkrRt4XrksZN/Brzfl3skpB59S9IN13hy0KrQxZkK+ANCQ1Do7ePYO5AoIF1DFqX5Zcm8G/AfENfB8Fv3naEkZubi6CkbxCou2yc9CZARJgBwcCRVlgZV3KC0aSmAhwnQYBcYowHI5FIwIN9MjPfkt/shcUQPdq3Mxy5DLDwfQNFBod1t77ifMyxuVxCBdX7wZgJWLzUdXh3Zh7NtmSgPCQBIQgIt+8/qtmw3fj5zep4yDoGregu+TVgOk2nTNl8pbcdYeTnFyA9U2MMDhQYIIFcwoGTSGCgnHHLECTnIJVIMG2H1BjywtcCRBYc9shlgrdEBocVPbtKZVjyDwGLLyqk3mHvjsGa9ZtdV0k4FGZdBa/NM/JbUcX+wSy692z8PDoWAjwpOa3TvwEzjXajHLa0b0DxSXfvnA9cj3AJxfe7TG5bq4aKyeU5bWIqsOkswcguvu3zyuPE6IBDSL2DBr+Hrdv3uOxshVqNkZqwH7q8NCNtYKUG4CS2V2G1OozE7ClvoZOHFx3+DZjptD0F/m4RRTHpOd9OHja4c/cRdHuQGh3r+TKxScuMuXz9kmDRmM/dgKB6+wwYgv0HjrhkS6+Bb2PlbzNQpDbZILEtGdualU4VH3gaX0/92ii89HZSVpY7NQllzvOLfYG7W7d7Nqe3a/NGA1hR7WfQZhKKU0yAN62396wkhTKFyUPa1qVo6KXDvNB62YH/2x0EXzzv/cnjrA07zhPsT4SgepkeGdMnc5V++nE6Phz/PTITmEIlhSykOmQK24M/W3mmzV2Lpxp7f5z9BjCPT6P1DRwuetMRhqsBtnzOnFHEVAMeVvp24hbpmata4lHcFzH9LKZl8TJXn4Cgep98+kWcPmtSknSWVi/7BZNmrsc/G2eC1xVAqqgEeYjtVRjhpPji1wN49qE7x+uYyAi7C4E3XvA+XWFU6Vo1ABsP2MzJwvDlMnjTEYarAbZ8zrYoVUKBR+vduUF01J67YUR2OhmYs49g9suu+9uhy/OIT2DyFedpz/bVWLXtFL77/F3o8zMhCQxHQJh9nZ/RU5diYJc7p95QZgCTnKHLppTaHK3Zm3bwYhkqKIDFg72/VLsabLZFYbYhnRu6nkCuyhL7/G4AJuEWwKT9QsyUWz3WDdeSkl1268zR3ThwLgtDBzyFIo0KnDwYgRH2VfYrP/jCzKTdX3pPZ8ll60wE990Kk5yhi6OU2kSaZx5OBy2UIkDqPUcYAnloJDtwkSC7AHj6Dm4THK4wIoPDiumXI1pVJjBqBcGqYa5fEA+16IxbqaabL2cp+dJJ3MqRoGXL1si7cRKcNAiBFe2vIopqDZemn133kqsyvf38fgTMJkops4WxSUOWSFGoI9joRUcYQhl+SgUkZZK7EtBp3DpgsjhzdqHdckiXlQcMWcReTq4Bw+z5mV2/sxQcrMCVuH+NoQof7DwESf/+aTz4B1WyH8tDHl7zhDpxlwA9A4+7alXAfQcYVYb2V1C8YY8N7y6XQl1AsGoojyD3vZK6zWHm9siDmK9u13u3Mgrtb71GbZCbm+e0mbVq1cDJIyavMK99OAvrfp0IfVEOFJWj7earUKUG9mxZ45WuOzqv2Cv8vgNMcqZuCuXpWHudGb1GipvZxKuOMLwyIn5eSGSDR8AiQDtLDzZ+ALu3rTKSzPrzAMa//xK0OSlQVLHZfd8uhuDQ/p1QKDyPiFCmAaNK17KD3g/2mP/ZXxJcyeAw/xUeNT3UZPXzOe7V7tes2wx6vcFpme3btcaa5SbX2gfP56Dnk62NipiKqo7tB1at+BMPPdjE47a6kr1YVnD/rTAZ+r6U8ivscWnyVgnibnL4sT+P+l6yN/F4NMoLQLXIh2zizpRmy9PduuCP+ab3YE4h8OCjzyMzfrvDMwyjm/rVZPR8vofHHC7TgLmRpetoMFC7Ximm75TgVDJn1G96srHrw6jHnC4vQBAHqipd+zvu/2JP/Dhjsrm8zv0n4sSWHx3KYRjh0DcH44NRnt8sl2nApGTROnqD7oq9kZq1T4IjV0Q7/xc06OVE7nPg6DS2bXL+AqvW4hVEdvnEXEna2bW4uGY4pEGO99ZPPv4YZs3y3DNpmQYM42hyujaBAjbXJxvOcFhxggHGI+UD92dGeU67HDg6/SGAd36GqfHoMNTuULJaFGZexem5T4CTOL7ufCCmAf7dv0EQ11MyrWN6WmYq84C5lqEdyVF8J4hTlkQc+URZUSbMG4PowsVlSEhSO3zlBtm5+alR0UOPD+KaZ5fa0aQryM+3oi/d/ocfaYOCQudxQCeOHYUPRrxpLocZk8U0i8Wt1HSHLQ+Qy3Hj0jFjzE1Xya8Bw4IuJWfoFgJ42RWjip8TQlbVqijtbwz3dw8kfwJM23YdkaXWOOX6tMljMWzIQCuawW9/hJVrNznNt37Fr+jc8VGXI+rXgCnmjipT353w/Es80IIALDAIM56QMFBQSpmkLAUEJzmeX1qrSuBfLrnqQwJ/AkyXJ7sh+bo5ALZdLs+cPgmvDuxj9ezPFesxbETJucZexrfeeAnTv3QdQqTMAyY5TdeZEspcjdjXjfDm5Ka4REDerF1F5tos0Ev1+hNger7QGxfiLzrl3PyfpqJfb+sr4vSMTDR4qCOYy15HSVmrJs4ddx3Dp8wDRpWhvQQKYfGjvTGJCS4rK8nvPDhvt9WfADPwlUE4etx5ROpFv/6A55950mYkn+zxMv45etLpCB/esw5NGjm3Vy77gEnX+lyQIua2xFOM+hNghg8fjp17Djhl2aolc9C1i21A1x9//h3jJn3jNO+EsaPwocWFgT3isg+Y8hXGatzv51uyTz75GGvWb3E66Teu+h0dLYIlFRNfuapCs7bOgzG1a9MCW9ezKI+OU5kHTPkZxnrw72fAfP3VFPy+yK42k7mTOzf+idYt7cfB7PBkH6cmzsz/29ULhxAe5thlT5kHjOV0SUzKfp6CLwkMAnIjJjLcyo3bRZV6Kk8xxpyPIjsmqiQgYkKS5jpAzfauBFzP6Miw9Z5urdzN709bsjmzZ+K7mb84ZdWBnavR9MFGdmm+/XE+Jn7pXOy2cP536NnD8UrkX4BRaSZQSieauUnIphhl+LNWoFJpFlFKSy7yCYmLUYabRyBBpdkISp8pzkMImRitDP/c3QnvaT5/AsyyJQswYcq3Tll29O+NaBht/45HyLZs0Et9MOvbSQ7r8DfArKOUPm/BjSkxkRFWl++JKvUuSvF4CSCwO1oZ0aX4e0KSmmn2fWoBmPXRynAf2ymW9MCfALNt8zqMGD3BKWDOHt2BKKVj36+du/XD8VNnHZZRu2YNnD+xqxwwjAOJKvU1SlHiDYGgT4wywspZb8I19QUQlBhPULokJqqCecVJUKl7g8JkocS0zQiSopURUZ6uFO7m9yfA/HtoL14Z8r5TViWe2Y9qVR2HUftp7kJ84iLGjLNVqsysMKcTk2s3i67t0KXIheTsSlJK0yilJRqVFPVjoiIuW59z1Ew5q8T9EsE3McoI85km4Zq6HgjMvn4IIVRPSJVGtcMy3J30nuTzJ8AkXjiJZ3uXRD+2xzdV/BGEhzsO1JlyMxWNHnncqRDzmymfYuhg+9pS3gKMq/kqZE54pBp85sy1CjRIEmww2BfnKoKC23NEsrzk/IKc/PycRjzTzrudQoLCAi3BwH6mlH6eV5Bjjo3HEUIUitALoDBfpfDU0C+/IM+5gEAIB9ygCVGEXXeUrawpX2bcvIx2jzuPHJ167SQCA5yHZevR9w3s+9uxy9mnn+qMZQtYyFPb5Awwaek3BcUBkEg4jhQY8po2jcpyY8gtprAnuV3kTVCpPwKFOcgkIdgbrYzobJntokrTgKfUKjY4B/RvEBlRAjTT1m4Ppehk0fIxMcoI51KxO9Q3f1phaFEmHmhuNWQ2XNWknHMYpq+YePGytXhnpPkYalNGSEgwkuIOQyq11V721grjjeng0QrjqgGJKs0SSqmF/ynyfUxk+CjLfAlJWR0BYmWFKZVyHevVDPvbmk7zHUBHFv9GCPkzWhkuWOPZVVvFPPcnwFQI5lE1qrlD9jA1/bSkUy7Zl52TiwYPdkBhUZFD2u0blqBta9u6/AcwSZrzFNR8PcxR8mqDqHCm2m9O8Uma/gTUKjY4R0h0A2W4lcbfxWuaQTyhC8yAAbkQHRne2OVI3QECfwIME7pWr9sC+QUFdjkZFhqK5MR/BHH5taEfOtUa+GT0u/hk9Ds2ZfkFYG7coIo8gyabUpiDHUqItGl9ZYjV/WJikmYUBbW66A+RhgfXrEmsLJsuqXIfMlD9mZIVBoZgSXhYaTpBI+chkb8BpknLJ6BKvmGXa1WrVMbFs/sFcXT7rv3o8/Iwh7SO1GT8AjCJydmPUp4/ZMGdwmhleCghRG+11VKpp4HiI4vfNDGRETbG4JRSaaJKk8Ni9ZhBw3HtomuHHRY0Wl4kEgsYL1bt9aJcWVyyCnv1HYBz5+x78K9Zswb27NwqqF16gwGxnZ9Eerr9y01mffnv4QNQKIIElceIfKl0y+q7Y2eY+CTNOwS05NqDkKMxyvDWpTmRqNIsppRanEXIhRgHW60ElYb5I21VXAYFGd4wMtxzTwqCh8dE6G+AGfzW2zhwwPLdV8KwunXqYOtm4VpKX0+bjt//cKxs+cu8n9Gh/WOCR6TMACZRlT2PUr7E0Jtw82KUYUNLcyL+mno3ISi5hiFkV4wy/Al7HEtQZc8F5d8q2ZZx86OVYebvgrnsIaG/Aeaj/43Fhr/smxs3bBiDDWtXCubohbg49OzVzyH9kMGv46MPzXc7LsstO4BJ0hyloC3Nkxt4JzoyYnZpDiRcU8eBwOxTlFK6uGFUhVfscSoxSf02BcwrCgE5Fh0Zbl5xXHLXSwRiAXM/ayuztn88/mv8PM/qrsbMyRbNH8KeLVYSAJdcZnKd/87H26Vr3uxB7NtmrR1d5s8w7LxxUZWdQ0Etzhvk0eja4TaSq4Qko4cFs5iYI9y0Bsqw/9kFTLKmLeWp+cxCQAobKMNszkUuR8xDAn8DzLTv5mDy1B/tcq1d25bYus4+mByxedacBRg7cardxxzH4VrcYSt1/zIPmMuqzKZ6ylnatRpCpPlhNWvWtLr5unmTBmdrNbmWnCOUjIqOCv/eHjdv3LihyNUrspmzjOLnUsI3q6esaL498xALgrL7G2B+W7gcI8fYVw5/PPYxrFvO3DcIT2npGWj4cGfo9Vb3P+YCmMSfSf6LU5kHTPy17FcJ4f8o2Y6R89GR4Taepy+pNNEGShOsAYN+0VERDi2WEpM05yioWf5CKfdaw6gws3xG+LC5T+lvgNmwaQcGDravgNm9a2csX2hfpcUZh/u/+i42b9ttl2T40Ffx1eclm4wyD5jEJM131FoqvyRaGW7tuMqo7pIVSynZa8k1Cr5jw8iKVlJ+y+elb9UIyPfRpbQH3IeCsJz+BphDR46jW0+7x0qj4RczABObNm7ZhZdef89uNmaMxozS/GaFSVSp91KKWAtufBQTGTG9NHcuXtf05w3WUn4CNIiOjHAYhTQhST0agFmHjBDsi1ZGlOiYiR05N+j9DTDxiZfRqoOVzZ+Za/369MD8WfbPI85Yq9Pp0fDhTmDumEondo5hZssRtzWgy/QKw1T5L6o0WZbq+pTiiYZRETYWQolJ2R9Q8DMsGRakDFcoCbGvhwEg/pq6CyEwO7MigKaBMrwCU/l3Y+67lcXfAMNC9tVp1M4ur159uQ9mznBsLemMwWMnTMOsueaduxXp0j9m4ZluJpvCMg2YxCR1fQqY9cDYRA4MC6usDCc2r5KEJDVbKdiKUZzUMZERFZwxWaXSVCwE0i1tbFytSm6hwkkmR4Cxp9rPirnfr5WZM75KymYwGGw99Qr1XmmPnefjEtG2k6UxbgmV5TmmbAMmWd2H8jBLsgjBtWhlhN1wuglJmiWAlTbz+Rg7lwOlmZ2oUl+lFGaLS8Khb3TtCLNFprcBUro8fwMM6z/zYpmaZutc/L23X8eUCZaaTeK437l7Pxw/aWu+3Oyhxvh7h2lIyzZgktRTKGCOY0kI1kUrI+xaICUkqZl715LzB8WumKgIu1J+y2FIVKnXUgqzTT8BvoyOjHBsbCFuDF1SiwWMywLvIoEQXTLWvB49+yAhwcpsydjqYUOHYNT79g/vQrq1bPkqTPj8CxtSdo759/DfCA1lLrcdp/te0p+g0myCRWhx5jGmYVQFu5f4CSpNHCg1S/kJIYuileGDXDE6/lrWBOY5xkxHyOYYZbjZq4yr/J4+90fAvPbGWzh8xFaNf8S772D4OzYaT4JZnJubi/Ydu9gNqTF39kx0irX1qGlZuM8Bc+PGZa86k8jVVzwGwOwRQQLD4CCpxq5LkFxDxXOgCC5mAOEwO5jLdHnlUqAP72KA5FcLxqWHSDPNajiCR8tNwlx9xav2sjo6w9ymTeCobjTR3bpjQlaDvLbddjnrptAV5oPRH2PTZlsPmLVrVv1q7+bf57rJSmO2Zu36TM3LLzArmAVWqo+qD/dD96c6Y1T3CiASx/F1JNpku9t9T9rjLO8d01a+Uw0uL/fucCCoSqPvCYGN9JJS8n5B2nn7ejMCmxpUpUl7TsL9HRHdBVWbD0CYspXRNZA+Lz394IQq91SI4HLACBxUfydTVGs8FpROseUDHZafGufRCtNxOh1nyM+YKFVUMqs86fLSaW7y0U1n5j/teahlLw5eOWC8yMyyXJSiWqMhoLBRGiOUvpaXFueRalLsdPongAGMfwUZl6G4sARtcw4e/XrXNhv7qbvN43sCMGcSUyy1Asw8aRpdw+gcw9FzMcwrLktMnnLaEg4oqjV8DpSzsRSjPAYUpF9Y5gmvOs2gbXke069tm8A9l7enaYNQWXCAhKMNK4ZFdl6yxqHfO0/qdDfvPQEYdxtfns93HIj9xpBm0BVUpgYteH0ReL0W1FAEWXDl/w5+VvEhIS1JSbli98VYnLdGjbr7furWZVGYXDawYlAAgmTSMY8vXn1XXGk56k+ZBYw3ViV7TLvXVipXk1DIRHZGwyYxex47nf4LwJ6xXuK+0cR5CDERjdjzWs8IXsvdvJRTGDDt7HXt9QLtmIJbF34QUcQdJS2zgLmjXPPHwmu2UCj0+SxYr1XiCN8l91a8fT19kXwqBv9Xg975fuHZaw9reZN6YLWqlfYe2rGoRO4motxiwIvI4pS0HDDe4qSflDPrqS5aA6UyAtAR23dz3u52gyffH3vj9HYWrcE0Nyl0lCOjC255dnXtrXaWA8ZbnPSTcna/3PsyBa0LILPLkjWVvN3tyk2emp+fljTEVC5N43j0zU2Ps/KM6u06xZRXDhgx3Cqnxe6Xe12gYKFJSF6XJaudK3qJ5xdRVG3ETNvZJcI5nqPPFt6ME629IL5a4TnKNGAopfLkbIRIDAgBj2BQnUJPiUIqQRD7JNSgAIgCBIGUkkCOIIAHH0gIFwBKAkH5QEogJwRyUCKn4OWEcDJCIQeBnFLIACoFAfOgLQX7TnH7O5UCHAdQCQjhQKkEIKbvAGf8m4DAFAqEEGIcCnLbbMH4m3FDAtDbtj70dtADCmb7w/6B8gB4gBiMfxNiAGW/se8sogLRg0IPYvyvA2D6DqIn7DuFlhJoKeV1BJwWhGophZZQaEG4QhBaSClfxIEr/HbR1mZrli2unp/8X6tcHW92bhJdv/6cLRvW/AIiyweHPIMEubXDkEsI0QqfhibK4KqNXqEA86hxOF9X1B1Zl5mDlHsq3dOASU2lIQYZKuv0usrgSCUJIRUBvgLlSQVKEMGBhPOgEaB8OEDCKBBGYAyJEUKBEAI2ocuTOxw4dfoMzp0/j/j4RJw5+x/i4uJZGBKbotq0boWFf9jGwKSAjgDMwUkuBXIIkA3QbBBOw4GoeVANoVATjmYBXJaB0syWrR79SSaX33rhuef7zpr2P/u+ad3pjBfz3BXAUEq5lCzUNhj0dQmhUQBRArQWBalBCGoAtBqlqAZAuM9QLzKlvCjgzaHDceCgydslc+Eqk8nNoSiYIRn7r9PpUCEiAn/vMxvAepN1BYTgFkBuUYoUApoCEBYcWEUpuSaRSK/UqIBkQghbZX2W7jhgKKWylCx9WwOPdoTQhylIE0IRbemzzGe9La+oTHGA+aWjBIkE9Byl5JSEw6EaFaRHCCFs+3lH0h0FTHK6bjIFhoNtm8pTOQd8wgGiJsBPtSvLrAIPe6vqOw8YguGg5YDx1oCVl+OCA4SoCb1PAcO6Zt6SAe0IpQ9TigcBRANwHhSxfGaUc8A1B1g4s0RC8B8l5JQE9/mWzFF/iw/9hOjrGkCiYKDmQz9AaxKCqpSSagAtP/S7njRllIIUEELZgT+VgqZwIDeMh34JUUlAr1FaRg/9noxm8bUy1esq6+1cK5vORiS8/FrZEy7fmbzOrpUBqgGImhCoCUqulaU8zSBSWbpEh/SqVYmVz+0700rxpd7RM4z45ng3hz3BJSREoadQSDkSZKBQgPIKUAeCS8IHMiElE16aBZeAnICTWQouCYHUJMQ0Ci9vCy6JlIJKOJOAkqNMcGkrwCTMFJdYCCwtBZilBZbsO5NWwiQPoaUFlsQouGQSS8oTkzCzRHAJGIWVtLTgEryOAtpiwSUTWjJhJqi14JKnKCKEFoKgEITLlxDk63laICXIh4Hme0Nw6d3RvzOl/R8AdGoXzom1qQAAAABJRU5ErkJggg==";
|
|
|
|
|
|
/***/ })
|
|
|
|
|
|
}]); |