(self["webpackChunk"] = self["webpackChunk"] || []).push([[6788,13488,4977,47735],{
/***/ 626:
/*!*******************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.3.6@@ant-design/icons/es/icons/InboxOutlined.js + 1 modules ***!
\*******************************************************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
"use strict";
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_InboxOutlined; }
});
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.24.4@@babel/runtime/helpers/esm/extends.js
var esm_extends = __webpack_require__(24931);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons-svg@4.4.2@@ant-design/icons-svg/es/asn/InboxOutlined.js
// This icon file is generated automatically.
var InboxOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "0 0 1024 1024", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M885.2 446.3l-.2-.8-112.2-285.1c-5-16.1-19.9-27.2-36.8-27.2H281.2c-17 0-32.1 11.3-36.9 27.6L139.4 443l-.3.7-.2.8c-1.3 4.9-1.7 9.9-1 14.8-.1 1.6-.2 3.2-.2 4.8V830a60.9 60.9 0 0060.8 60.8h627.2c33.5 0 60.8-27.3 60.9-60.8V464.1c0-1.3 0-2.6-.1-3.7.4-4.9 0-9.6-1.3-14.1zm-295.8-43l-.3 15.7c-.8 44.9-31.8 75.1-77.1 75.1-22.1 0-41.1-7.1-54.8-20.6S436 441.2 435.6 419l-.3-15.7H229.5L309 210h399.2l81.7 193.3H589.4zm-375 76.8h157.3c24.3 57.1 76 90.8 140.4 90.8 33.7 0 65-9.4 90.3-27.2 22.2-15.6 39.5-37.4 50.7-63.6h156.5V814H214.4V480.1z" } }] }, "name": "inbox", "theme": "outlined" };
/* harmony default export */ var asn_InboxOutlined = (InboxOutlined);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.3.6@@ant-design/icons/es/components/AntdIcon.js + 3 modules
var AntdIcon = __webpack_require__(99194);
;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.3.6@@ant-design/icons/es/icons/InboxOutlined.js
// GENERATE BY ./scripts/generate.ts
// DON NOT EDIT IT MANUALLY
var InboxOutlined_InboxOutlined = function InboxOutlined(props, ref) {
return /*#__PURE__*/_react_17_0_2_react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
ref: ref,
icon: asn_InboxOutlined
}));
};
/** */
var RefIcon = /*#__PURE__*/_react_17_0_2_react.forwardRef(InboxOutlined_InboxOutlined);
if (false) {}
/* harmony default export */ var icons_InboxOutlined = (RefIcon);
/***/ }),
/***/ 71417:
/*!*********************************************************!*\
!*** ./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 */ 4320).then(function() { var __WEBPACK_AMD_REQUIRE_ARRAY__ = [__webpack_require__(/*! ./web3d */ 4320)]; (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 = "",
W = "",
X = "
",
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;
})();
/***/ }),
/***/ 45446:
/*!*********************************!*\
!*** ./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 */ 18765);
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';
/***/ }),
/***/ 30089:
/*!******************************************************!*\
!*** ./src/components/CodeBox/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_CodeBox; }
});
// UNUSED EXPORTS: CodeDeleteModal
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/regeneratorRuntime.js
var regeneratorRuntime = __webpack_require__(7557);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/asyncToGenerator.js
var asyncToGenerator = __webpack_require__(41498);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/classCallCheck.js
var classCallCheck = __webpack_require__(82100);
var classCallCheck_default = /*#__PURE__*/__webpack_require__.n(classCallCheck);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/createClass.js
var createClass = __webpack_require__(29186);
var createClass_default = /*#__PURE__*/__webpack_require__.n(createClass);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/assertThisInitialized.js
var assertThisInitialized = __webpack_require__(13720);
var assertThisInitialized_default = /*#__PURE__*/__webpack_require__.n(assertThisInitialized);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/inherits.js
var inherits = __webpack_require__(80619);
var inherits_default = /*#__PURE__*/__webpack_require__.n(inherits);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/createSuper.js
var createSuper = __webpack_require__(47074);
var createSuper_default = /*#__PURE__*/__webpack_require__.n(createSuper);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/defineProperty.js
var defineProperty = __webpack_require__(85573);
var defineProperty_default = /*#__PURE__*/__webpack_require__.n(defineProperty);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/message/index.js + 4 modules
var message = __webpack_require__(8591);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/input/index.js + 5 modules
var input = __webpack_require__(8772);
;// CONCATENATED MODULE: ./src/components/CodeBox/index.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var CodeBoxmodules = ({"codeBox":"codeBox___WpkVl"});
// 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/_react@17.0.2@react/jsx-runtime.js
var jsx_runtime = __webpack_require__(37712);
;// CONCATENATED MODULE: ./src/components/CodeBox/index.tsx
// class定义组件,建议用函数取组件实例,比如 ref={el => box = el}
// onVerify方法校验验证码是否有误
var CodeBox = /*#__PURE__*/function (_Component) {
inherits_default()(CodeBox, _Component);
var _super = createSuper_default()(CodeBox);
function CodeBox(props) {
var _this;
classCallCheck_default()(this, CodeBox);
_this = _super.call(this, props);
defineProperty_default()(assertThisInitialized_default()(_this), "canvas", void 0);
// 生成一个随机数
defineProperty_default()(assertThisInitialized_default()(_this), "randomNum", function (min, max) {
return Math.floor(Math.random() * (max - min) + min);
});
defineProperty_default()(assertThisInitialized_default()(_this), "drawPic", function () {
_this.randomCode();
});
defineProperty_default()(assertThisInitialized_default()(_this), "reloadPic", function () {
_this.drawPic();
});
// 输入验证码
defineProperty_default()(assertThisInitialized_default()(_this), "changeCode", function (e) {
console.log(e.target.value, 222);
_this.setState({
value: e.target.value,
showError: false
});
});
defineProperty_default()(assertThisInitialized_default()(_this), "onVerify", function () {
var error;
if (_this.state.value.toLowerCase() !== '' && _this.state.value.toLowerCase() !== _this.state.code.toLowerCase()) {
error = true;
message/* default */.ZP.error('请输入正确的验证码');
_this.reloadPic();
} else if (_this.state.value.toLowerCase() === '') {
error = true;
message/* default */.ZP.error('请输入验证码');
} else if (_this.state.value.toLowerCase() === _this.state.code.toLowerCase()) {
error = false;
}
_this.setState({
showError: error
});
return error;
});
_this.canvas = /*#__PURE__*/_react_17_0_2_react.createRef();
_this.state = {
value: '',
code: '',
codeLength: 4,
fontSizeMin: 20,
fontSizeMax: 22,
backgroundColorMin: 240,
backgroundColorMax: 250,
colorMin: 10,
colorMax: 20,
lineColorMin: 40,
lineColorMax: 180,
contentWidth: 96,
contentHeight: 38,
showError: false // 默认不显示验证码的错误信息
};
return _this;
}
createClass_default()(CodeBox, [{
key: "componentDidMount",
value: function componentDidMount() {
this.drawPic();
}
}, {
key: "randomColor",
value:
// 生成一个随机的颜色
function randomColor(min, max) {
var r = this.randomNum(min, max);
var g = this.randomNum(min, max);
var b = this.randomNum(min, max);
return "rgb(".concat(r, ", ").concat(g, ", ").concat(b, ")");
}
}, {
key: "drawText",
value: function drawText(ctx, txt, i) {
ctx.fillStyle = this.randomColor(this.state.colorMin, this.state.colorMax);
var fontSize = this.randomNum(this.state.fontSizeMin, this.state.fontSizeMax);
ctx.font = fontSize + 'px SimHei';
var padding = 10;
var offset = (this.state.contentWidth - 40) / (this.state.code.length - 1);
var x = padding;
if (i > 0) {
x = padding + i * offset;
}
var y = this.randomNum(this.state.fontSizeMax, this.state.contentHeight - 5);
if (fontSize > 40) {
y = 40;
}
var deg = this.randomNum(-10, 10);
// 修改坐标原点和旋转角度
ctx.translate(x, y);
ctx.rotate(deg * Math.PI / 180);
ctx.fillText(txt, 0, 0);
// 恢复坐标原点和旋转角度
ctx.rotate(-deg * Math.PI / 180);
ctx.translate(-x, -y);
}
}, {
key: "drawLine",
value: function drawLine(ctx) {
// 绘制干扰线
for (var i = 0; i < 1; i++) {
ctx.strokeStyle = this.randomColor(this.state.lineColorMin, this.state.lineColorMax);
ctx.beginPath();
ctx.moveTo(this.randomNum(0, this.state.contentWidth), this.randomNum(0, this.state.contentHeight));
ctx.lineTo(this.randomNum(0, this.state.contentWidth), this.randomNum(0, this.state.contentHeight));
ctx.stroke();
}
}
}, {
key: "drawDot",
value: function drawDot(ctx) {
// 绘制干扰点
for (var i = 0; i < 100; i++) {
ctx.fillStyle = this.randomColor(0, 255);
ctx.beginPath();
ctx.arc(this.randomNum(0, this.state.contentWidth), this.randomNum(0, this.state.contentHeight), 1, 0, 2 * Math.PI);
ctx.fill();
}
}
}, {
key: "randomCode",
value:
// 随机生成验证码
function randomCode() {
var _this2 = this;
var random = '';
// 去掉了I l i o O,可自行添加
var str = 'QWERTYUPLKJHGFDSAZXCVBNMqwertyupkjhgfdsazxcvbnm1234567890';
for (var i = 0; i < this.state.codeLength; i++) {
var index = Math.floor(Math.random() * 57);
random += str[index];
}
this.setState({
code: random
}, function () {
var canvas = _this2.canvas.current;
var ctx = canvas.getContext('2d');
ctx.textBaseline = 'bottom';
// 绘制背景
ctx.fillStyle = _this2.randomColor(_this2.state.backgroundColorMin, _this2.state.backgroundColorMax);
ctx.fillRect(0, 0, _this2.state.contentWidth, _this2.state.contentHeight);
// 绘制文字
for (var _i = 0; _i < _this2.state.code.length; _i++) {
_this2.drawText(ctx, _this2.state.code[_i], _i);
}
_this2.drawLine(ctx);
_this2.drawDot(ctx);
});
}
}, {
key: "render",
value: function render() {
var _this$props = this.props,
className = _this$props.className,
_this$props$width = _this$props.width,
width = _this$props$width === void 0 ? 300 : _this$props$width;
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: _classnames_2_5_1_classnames_default()(CodeBoxmodules.codeBox, className),
style: {
width: width
},
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("aside", {
children: /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z, {
value: this.state.value,
onChange: this.changeCode,
placeholder: "\u8BF7\u8F93\u5165\u56FE\u7247\u4E2D\u7684\u9A8C\u8BC1\u7801"
})
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("canvas", {
onClick: this.reloadPic,
ref: this.canvas,
width: "100",
height: "30"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "current",
onClick: this.reloadPic,
children: "\u770B\u4E0D\u6E05\uFF1F\u6362\u4E00\u5F20"
})]
})]
});
}
}]);
return CodeBox;
}(_react_17_0_2_react.Component);
var CodeDeleteModal = function CodeDeleteModal(cb, text) {
var box;
Modal.confirm({
centered: true,
okText: '确定',
cancelText: '取消',
title: '提示',
content: /*#__PURE__*/_jsxs("div", {
children: [/*#__PURE__*/_jsx("p", {
children: text
}), /*#__PURE__*/_jsx(CodeBox, {
ref: function ref(el) {
return box = el;
}
})]
}),
onOk: function () {
var _onOk = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
return _regeneratorRuntime().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
if (!box.onVerify()) {
_context.next = 2;
break;
}
return _context.abrupt("return", Promise.reject());
case 2:
cb();
case 3:
case "end":
return _context.stop();
}
}, _callee);
}));
function onOk() {
return _onOk.apply(this, arguments);
}
return onOk;
}()
});
};
/* harmony default export */ var components_CodeBox = (CodeBox);
/***/ }),
/***/ 22588:
/*!********************************************************!*\
!*** ./src/components/CutOffNow/index.tsx + 1 modules ***!
\********************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
"use strict";
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ CutOffNow; }
});
// 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: ./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/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/date-picker/index.js + 66 modules
var date_picker = __webpack_require__(22744);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/input/index.js + 5 modules
var input = __webpack_require__(8772);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/table/index.js + 85 modules
var table = __webpack_require__(52306);
// 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/_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: ./src/utils/util.tsx
var util = __webpack_require__(25644);
// EXTERNAL MODULE: ./src/.umi-production/exports.ts + 15 modules
var _umi_production_exports = __webpack_require__(32136);
;// CONCATENATED MODULE: ./src/components/CutOffNow/index.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var CutOffNowmodules = ({"tips":"tips___e8J4O","homeworkType":"homeworkType___ZjN2X","antdTable":"antdTable___amDdp","modalWrapper":"modalWrapper___XPojI"});
// EXTERNAL MODULE: ./src/service/classrooms.ts
var classrooms = __webpack_require__(88058);
// EXTERNAL MODULE: ./src/pages/Classrooms/Lists/ShixunHomeworks/Detail/components/ConfigWorks/Releasesetting.tsx
var Releasesetting = __webpack_require__(11629);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/jsx-runtime.js
var jsx_runtime = __webpack_require__(37712);
;// CONCATENATED MODULE: ./src/components/CutOffNow/index.tsx
var CuttOffNow = function CuttOffNow(_ref) {
var dispatch = _ref.dispatch,
courseEndTime = _ref.courseEndTime,
classroomList = _ref.classroomList,
_ref$successCallback = _ref.successCallback,
successCallback = _ref$successCallback === void 0 ? function () {} : _ref$successCallback,
visible = _ref.visible,
homeworkIds = _ref.homeworkIds,
courseId = _ref.courseId,
isBatch = _ref.isBatch,
shixunHomeworks = _ref.shixunHomeworks;
var _Form$useForm = es_form/* default */.Z.useForm(),
_Form$useForm2 = slicedToArray_default()(_Form$useForm, 1),
form = _Form$useForm2[0];
var _useState = (0,_react_17_0_2_react.useState)(false),
_useState2 = slicedToArray_default()(_useState, 2),
tableLoading = _useState2[0],
setTableLoading = _useState2[1];
var _useState3 = (0,_react_17_0_2_react.useState)(false),
_useState4 = slicedToArray_default()(_useState3, 2),
confirmLoading = _useState4[0],
setConfirmLoading = _useState4[1];
var _useState5 = (0,_react_17_0_2_react.useState)(false),
_useState6 = slicedToArray_default()(_useState5, 2),
noGroup = _useState6[0],
setNoGroup = _useState6[1];
//作业截止
var _useState7 = (0,_react_17_0_2_react.useState)([]),
_useState8 = slicedToArray_default()(_useState7, 2),
submitCourseGroups = _useState8[0],
setSubmitCourseGroups = _useState8[1];
var _useState9 = (0,_react_17_0_2_react.useState)([]),
_useState10 = slicedToArray_default()(_useState9, 2),
submitCourseTableData = _useState10[0],
setSubmitCourseTableData = _useState10[1];
var _useState11 = (0,_react_17_0_2_react.useState)([]),
_useState12 = slicedToArray_default()(_useState11, 2),
selectedSubmitCourseIds = _useState12[0],
setSelectedSubmitCourseIds = _useState12[1];
//补交截止
var _useState13 = (0,_react_17_0_2_react.useState)([]),
_useState14 = slicedToArray_default()(_useState13, 2),
lateCourseGroups = _useState14[0],
setLateCourseGroups = _useState14[1];
var _useState15 = (0,_react_17_0_2_react.useState)([]),
_useState16 = slicedToArray_default()(_useState15, 2),
lateCourseTableData = _useState16[0],
setLateCourseTableData = _useState16[1];
var _useState17 = (0,_react_17_0_2_react.useState)([]),
_useState18 = slicedToArray_default()(_useState17, 2),
selectedLateCourseIds = _useState18[0],
setSelectedLateCourseIds = _useState18[1];
//批量截止
var _useState19 = (0,_react_17_0_2_react.useState)([]),
_useState20 = slicedToArray_default()(_useState19, 2),
allCourseGroups = _useState20[0],
setAllCourseGroups = _useState20[1];
var _useState21 = (0,_react_17_0_2_react.useState)([]),
_useState22 = slicedToArray_default()(_useState21, 2),
allCourseTableData = _useState22[0],
setAllCourseTableData = _useState22[1];
var _useState23 = (0,_react_17_0_2_react.useState)([]),
_useState24 = slicedToArray_default()(_useState23, 2),
selectedAllCourseIds = _useState24[0],
setSelectedAllCourseIds = _useState24[1];
(0,_react_17_0_2_react.useEffect)(function () {
if (visible) {
getData();
} else {
clear();
}
}, [visible]);
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:
setTableLoading(true);
_context.next = 3;
return (0,classrooms/* getAllowEndGroups */.oR)(homeworkIds[0], {
course_id: courseId
});
case 3:
res = _context.sent;
setNoGroup(res.no_group);
if (isBatch) {
setAllCourseGroups(res.all_course_groups);
setAllCourseTableData(res.all_course_groups);
} else {
setLateCourseGroups(res.late_course_groups);
setLateCourseTableData(res.late_course_groups);
setSubmitCourseGroups(res.submit_course_groups);
setSubmitCourseTableData(res.submit_course_groups);
}
setTableLoading(false);
form.setFieldsValue({
'end_time': dayjs_min_default()()
});
case 8:
case "end":
return _context.stop();
}
}, _callee);
}));
return function getData() {
return _ref2.apply(this, arguments);
};
}();
var handleOk = /*#__PURE__*/function () {
var _ref3 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2() {
var formValue, endTimeString, selectNothing, res;
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
while (1) switch (_context2.prev = _context2.next) {
case 0:
formValue = form.getFieldsValue();
endTimeString = dayjs_min_default()(formValue.end_time).format('YYYY-MM-DD HH:mm');
selectNothing = isBatch ? selectedAllCourseIds.length === 0 : selectedSubmitCourseIds.length === 0 && selectedLateCourseIds.length === 0;
if (!(selectNothing && !noGroup)) {
_context2.next = 6;
break;
}
message/* default */.ZP.warning('请选择需要操作的班级');
return _context2.abrupt("return");
case 6:
setConfirmLoading(true);
_context2.next = 9;
return (0,classrooms/* stopHomework */.Mc)(courseId, {
no_group: noGroup,
homework_ids: homeworkIds,
group_ids: isBatch ? selectedAllCourseIds : selectedSubmitCourseIds,
end_time: endTimeString,
late_group_ids: isBatch ? selectedAllCourseIds : selectedLateCourseIds
});
case 9:
res = _context2.sent;
setConfirmLoading(false);
if (res.status === 0) {
clear();
message/* default */.ZP.success('操作成功');
successCallback();
dispatch({
type: 'classroomList/setActionTabs',
payload: {
key: '清除选择数据'
}
});
}
case 12:
case "end":
return _context2.stop();
}
}, _callee2);
}));
return function handleOk() {
return _ref3.apply(this, arguments);
};
}();
var clear = function clear() {
setSelectedSubmitCourseIds([]);
setSelectedLateCourseIds([]);
setSubmitCourseTableData([]);
setLateCourseTableData([]);
};
return /*#__PURE__*/(0,jsx_runtime.jsxs)(modal/* default */.Z, {
centered: true,
title: "\u7ACB\u5373\u622A\u6B62",
className: CutOffNowmodules.modalWrapper,
width: isBatch || noGroup ? 520 : 760,
open: visible,
confirmLoading: confirmLoading,
destroyOnClose: true,
okText: "\u622A\u6B62",
cancelText: "\u53D6\u6D88",
onOk: function onOk() {
return handleOk();
},
onCancel: function onCancel() {
clear();
dispatch({
type: 'classroomList/setActionTabs',
payload: {}
});
},
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: CutOffNowmodules.tips,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: "1\u3001\u622A\u6B62\u540E\u5B66\u751F\u4E0D\u80FD\u518D\u63D0\u4EA4\u4F5C\u4E1A\u3002"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: "2\u3001\u672C\u64CD\u4F5C\u53EA\u5BF9\u201C\u63D0\u4EA4\u4E2D\u201D\u3001\u201C\u8865\u4EA4\u4E2D\u201D\u7684\u4F5C\u4E1A\u6709\u6548\u3002"
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z, {
form: form,
layout: "vertical",
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
name: "end_time",
label: "\u622A\u6B62\u65F6\u95F4",
children: /*#__PURE__*/(0,jsx_runtime.jsx)(date_picker["default"], {
style: {
width: '100%'
},
disabledDate: function disabledDate(current) {
return (0,Releasesetting/* disabledDate */.Q8)(current, courseEndTime);
},
disabledTime: function disabledTime(current) {
return (0,Releasesetting/* disabledTime */.d0)(current);
},
placeholder: '请选择结束时间',
showTime: {
format: 'HH:mm',
defaultValue: dayjs_min_default()((0,util/* HalfPastOne */.U6)(), 'HH:mm')
},
format: "YYYY-MM-DD HH:mm",
allowClear: false
})
})
}), !noGroup && /*#__PURE__*/(0,jsx_runtime.jsx)(jsx_runtime.Fragment, {
children: isBatch ? /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z, {
placeholder: "\u641C\u7D22\u73ED\u7EA7"
// suffix={}
,
onChange: function onChange(e) {
setAllCourseTableData(allCourseGroups.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'
},
className: CutOffNowmodules.antdTable,
rowSelection: {
type: 'checkbox',
onChange: function onChange(selectedRowKeys) {
setSelectedAllCourseIds(selectedRowKeys);
}
},
rowKey: "id",
pagination: false,
dataSource: allCourseTableData,
loading: tableLoading,
columns: [{
title: '班级',
dataIndex: 'name'
}]
})]
}) : /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
gutter: 24,
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(col/* default */.Z, {
span: 14,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: CutOffNowmodules.homeworkType,
children: "\u4F5C\u4E1A\u622A\u6B62"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z, {
placeholder: "\u641C\u7D22\u73ED\u7EA7"
// suffix={}
,
onChange: function onChange(e) {
setSubmitCourseTableData(submitCourseGroups.filter(function (item) {
return item.name.indexOf(e.target.value) > -1;
}));
}
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: CutOffNowmodules.tableWrapper,
children: /*#__PURE__*/(0,jsx_runtime.jsx)(table/* default */.Z, {
style: {
marginTop: '10px',
height: '260px',
overflow: 'auto'
},
className: CutOffNowmodules.antdTable,
rowSelection: {
type: 'checkbox',
onChange: function onChange(selectedRowKeys) {
setSelectedSubmitCourseIds(selectedRowKeys);
}
},
rowKey: "id",
pagination: false,
dataSource: submitCourseTableData,
loading: tableLoading,
columns: [{
title: '班级',
dataIndex: 'name',
ellipsis: true
}, {
title: '发布时间',
dataIndex: 'publish_time'
}, {
title: '截止时间',
dataIndex: 'end_time'
}]
})
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(col/* default */.Z, {
flex: 10,
style: {
maxWidth: "280px"
},
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: CutOffNowmodules.homeworkType,
children: "\u8865\u4EA4\u622A\u6B62"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z, {
placeholder: "\u641C\u7D22\u73ED\u7EA7",
onChange: function onChange(e) {
setLateCourseTableData(lateCourseGroups.filter(function (item) {
return item.name.indexOf(e.target.value) > -1;
}));
}
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: CutOffNowmodules.tableWrapper,
children: /*#__PURE__*/(0,jsx_runtime.jsx)(table/* default */.Z, {
style: {
marginTop: '10px',
height: '260px',
overflow: 'auto',
maxWidth: "280px"
},
className: CutOffNowmodules.antdTable,
rowSelection: {
type: 'checkbox',
onChange: function onChange(selectedRowKeys) {
setSelectedLateCourseIds(selectedRowKeys);
}
},
rowKey: "id",
pagination: false,
loading: tableLoading,
dataSource: lateCourseTableData,
columns: [{
title: '班级',
dataIndex: 'name',
ellipsis: true,
width: 120
}, {
title: '截止时间',
dataIndex: 'late_time'
}]
})
})]
})]
})
})]
});
};
/* harmony default export */ var CutOffNow = ((0,_umi_production_exports.connect)(function (_ref4) {
var shixunHomeworks = _ref4.shixunHomeworks,
classroomList = _ref4.classroomList;
return {
shixunHomeworks: shixunHomeworks,
classroomList: classroomList
};
})(CuttOffNow));
/***/ }),
/***/ 25034:
/*!**************************************************************!*\
!*** ./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__(84087);
// EXTERNAL MODULE: ./src/utils/util.tsx
var util = __webpack_require__(25644);
// 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);
/***/ }),
/***/ 40985:
/*!**********************************************************!*\
!*** ./src/components/MultiUpload/index.tsx + 3 modules ***!
\**********************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
"use strict";
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
z: function() { return /* binding */ coverToFileList; },
Z: function() { return /* binding */ MultiUpload; }
});
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/regeneratorRuntime.js
var regeneratorRuntime = __webpack_require__(7557);
var regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(regeneratorRuntime);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/asyncToGenerator.js
var asyncToGenerator = __webpack_require__(41498);
var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectSpread2.js
var objectSpread2 = __webpack_require__(82242);
var objectSpread2_default = /*#__PURE__*/__webpack_require__.n(objectSpread2);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/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/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: ./node_modules/_antd@5.9.0@antd/es/upload/index.js + 24 modules
var upload = __webpack_require__(21068);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/message/index.js + 4 modules
var es_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: ./src/utils/env.ts + 1 modules
var env = __webpack_require__(18765);
// EXTERNAL MODULE: ./src/pages/MoopCases/FormPanel/service.ts
var service = __webpack_require__(48367);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/jsx-runtime.js
var jsx_runtime = __webpack_require__(37712);
;// CONCATENATED MODULE: ./src/components/SingleUpload/index.tsx
var uploadNameSizeSeperator = ' ';
function bytesToSize(bytes) {
var sizes = ['Bytes', 'KB', 'MB', 'GB', 'TB'];
if (bytes == 0) return '0 Byte';
var i = parseInt('' + Math.floor(Math.log(bytes) / Math.log(1024)), 10);
return (bytes / Math.pow(1024, i)).toFixed(1) + ' ' + sizes[i];
}
/* harmony default export */ var SingleUpload = (function (_ref) {
var _ref$value = _ref.value,
value = _ref$value === void 0 ? [] : _ref$value,
action = _ref.action,
_onChange = _ref.onChange,
className = _ref.className,
_ref$maxSize = _ref.maxSize,
maxSize = _ref$maxSize === void 0 ? 150 : _ref$maxSize,
_ref$title = _ref.title,
title = _ref$title === void 0 ? '文件上传' : _ref$title,
_ref$accept = _ref.accept,
accept = _ref$accept === void 0 ? null : _ref$accept;
var uploadProps = {
multiple: false,
fileList: value,
accept: accept,
withCredentials: true,
beforeUpload: function beforeUpload(file) {
var fileSize = file.size / 1024 / 1024;
if (!(fileSize < maxSize)) {
message.error("\u8BE5\u6587\u4EF6\u65E0\u6CD5\u4E0A\u4F20\u3002\u8D85\u8FC7\u6587\u4EF6\u5927\u5C0F\u9650\u5236(".concat(maxSize, "MB),\u5EFA\u8BAE\u4E0A\u4F20\u5230\u767E\u5EA6\u4E91\u7B49\u5176\u5B83\u5171\u4EAB\u5DE5\u5177\u91CC\uFF0C\u7136\u540E\u518Dtxt\u6587\u6863\u91CC\u7ED9\u51FA\u94FE\u63A5\u4EE5\u53CA\u5171\u4EAB\u5BC6\u7801\u5E76\u4E0A\u4F20"));
return Promise.reject();
}
return true;
},
action: "".concat(ENV.API_SERVER, "/api/attachments.json"),
// ?debug=student&randomcode=undefined&client_key=6d57f8c3dd186c5ada392546ace9620a
onChange: function onChange(info) {
var _info$file;
var fileList = _toConsumableArray(info.fileList);
fileList = fileList.map(function (file) {
if (file.name.indexOf(uploadNameSizeSeperator) === -1) {
file.name = "".concat(file.name).concat(uploadNameSizeSeperator).concat(bytesToSize(file.size));
}
return _objectSpread({}, file);
});
if (info.file.status === 'done' && ((_info$file = info.file) === null || _info$file === void 0 || (_info$file = _info$file.response) === null || _info$file === void 0 ? void 0 : _info$file.status) === -1) {
var _info$file2;
message.error((_info$file2 = info.file) === null || _info$file2 === void 0 || (_info$file2 = _info$file2.response) === null || _info$file2 === void 0 ? void 0 : _info$file2.message);
_onChange([]);
return;
}
_onChange(fileList);
},
onRemove: function () {
var _onRemove = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(file) {
var fileSize, id, rs;
return _regeneratorRuntime().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
fileSize = file.size / 1024 / 1024;
if (!(file.status === 'uploading')) {
_context.next = 3;
break;
}
return _context.abrupt("return", true);
case 3:
if (fileSize < maxSize) {
_context.next = 7;
break;
}
return _context.abrupt("return", true);
case 7:
id = file.response ? file.response.id : file.uid;
if (!id) {
_context.next = 15;
break;
}
_context.next = 11;
return removeAttachment(file.response ? file.response.id : file.id);
case 11:
rs = _context.sent;
return _context.abrupt("return", rs);
case 15:
return _context.abrupt("return", true);
case 16:
case "end":
return _context.stop();
}
}, _callee);
}));
function onRemove(_x) {
return _onRemove.apply(this, arguments);
}
return onRemove;
}()
};
function onCancel(e) {
e.preventDefault();
e.stopPropagation();
}
return /*#__PURE__*/_jsx("div", {
className: "single-upload ".concat(className ? className : ''),
children: /*#__PURE__*/_jsxs(Upload, _objectSpread(_objectSpread({}, uploadProps), {}, {
children: [/*#__PURE__*/_jsx(Button, {
type: "primary",
title: value.length > 0 ? '每次只能上传一个资源, 删除下面资源可重新上传 ' : '',
disabled: value.length > 0,
ghost: true,
children: title
}), /*#__PURE__*/_jsxs("span", {
onClick: onCancel,
style: {
marginLeft: 10
},
children: ["(\u5355\u4E2A\u6587\u4EF6\u6700\u5927", maxSize, "M)", ' ']
})]
}))
});
});
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.3.6@@ant-design/icons/es/icons/InboxOutlined.js + 1 modules
var InboxOutlined = __webpack_require__(626);
// EXTERNAL MODULE: ./node_modules/_lodash@4.17.21@lodash/lodash.js
var lodash = __webpack_require__(89392);
;// CONCATENATED MODULE: ./src/components/MultiUpload/index.less
// extracted by mini-css-extract-plugin
;// CONCATENATED MODULE: ./src/assets/images/uploadImg.svg
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof Symbol !== "undefined" && o[Symbol.iterator] || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it["return"] != null) it["return"](); } finally { if (didErr) throw err; } } }; }
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
var __defProp = Object.defineProperty;
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __propIsEnum = Object.prototype.propertyIsEnumerable;
var __defNormalProp = function __defNormalProp(obj, key, value) {
return key in obj ? __defProp(obj, key, {
enumerable: true,
configurable: true,
writable: true,
value: value
}) : obj[key] = value;
};
var __spreadValues = function __spreadValues(a, b) {
for (var prop in b || (b = {})) if (__hasOwnProp.call(b, prop)) __defNormalProp(a, prop, b[prop]);
if (__getOwnPropSymbols) {
var _iterator = _createForOfIteratorHelper(__getOwnPropSymbols(b)),
_step;
try {
for (_iterator.s(); !(_step = _iterator.n()).done;) {
var prop = _step.value;
if (__propIsEnum.call(b, prop)) __defNormalProp(a, prop, b[prop]);
}
} catch (err) {
_iterator.e(err);
} finally {
_iterator.f();
}
}
return a;
};
var SvgUploadImg = function SvgUploadImg(props) {
return /* @__PURE__ */React.createElement("svg", __spreadValues({
width: 14,
height: 14,
xmlns: "http://www.w3.org/2000/svg"
}, props), /* @__PURE__ */React.createElement("title", null, "\u5F62\u72B6"), /* @__PURE__ */React.createElement("path", {
d: "M10.354 3.5h-2.77v8.167H6.416V3.5H3.646L7 0l3.354 3.5ZM14 7h-1.167v5.833H1.167V7H0v7h14V7Z",
fill: "#3061D0",
fillRule: "nonzero"
}));
};
/* harmony default export */ var uploadImg = ("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTQiIGhlaWdodD0iMTQiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTEwLjM1NCAzLjVoLTIuNzd2OC4xNjdINi40MTZWMy41SDMuNjQ2TDcgMGwzLjM1NCAzLjVaTTE0IDdoLTEuMTY3djUuODMzSDEuMTY3VjdIMHY3aDE0VjdaIiBmaWxsPSIjMzA2MUQwIiBmaWxsLXJ1bGU9Im5vbnplcm8iLz48L3N2Zz4=");
;// CONCATENATED MODULE: ./src/components/MultiUpload/index.tsx
var Dragger = upload/* default */.Z.Dragger;
function coverToFileList(data) {
var rs = [];
if (data && data.length > 0) {
rs = data.map(function (item) {
return {
uid: item.id,
id: item.id,
name: item.title + uploadNameSizeSeperator + item.filesize,
url: item.url,
filesize: item.filesize,
status: 'done',
response: {
id: item.id
}
};
});
}
return rs;
}
/* harmony default export */ var MultiUpload = (function (_ref) {
var value = _ref.value,
_onChange = _ref.onChange,
action = _ref.action,
data = _ref.data,
className = _ref.className,
_ref$maxSize = _ref.maxSize,
maxSize = _ref$maxSize === void 0 ? 150 : _ref$maxSize,
_ref$title = _ref.title,
title = _ref$title === void 0 ? '上传附件' : _ref$title,
_ref$showRemoveModal = _ref.showRemoveModal,
showRemoveModal = _ref$showRemoveModal === void 0 ? false : _ref$showRemoveModal,
_ref$accept = _ref.accept,
accept = _ref$accept === void 0 ? '' : _ref$accept,
additionalText = _ref.additionalText,
isDragger = _ref.isDragger,
_ref$number = _ref.number,
number = _ref$number === void 0 ? 1000 : _ref$number,
_ref$aloneClear = _ref.aloneClear,
aloneClear = _ref$aloneClear === void 0 ? false : _ref$aloneClear;
var _useState = (0,_react_17_0_2_react.useState)(false),
_useState2 = slicedToArray_default()(_useState, 2),
disabled = _useState2[0],
setDisabled = _useState2[1];
var _useState3 = (0,_react_17_0_2_react.useState)(value || []),
_useState4 = slicedToArray_default()(_useState3, 2),
fileList = _useState4[0],
setFileList = _useState4[1];
var _useState5 = (0,_react_17_0_2_react.useState)(1),
_useState6 = slicedToArray_default()(_useState5, 2),
nums = _useState6[0],
setnums = _useState6[1];
(0,_react_17_0_2_react.useEffect)(function () {
if (value) {
if (nums === 1) {
setFileList(toConsumableArray_default()(value));
}
setnums(2);
if (number === (value === null || value === void 0 ? void 0 : value.length)) {
setDisabled(true);
}
}
}, [value]);
var clearLastFile = function clearLastFile() {
setTimeout(function () {
fileList.pop();
setFileList(toConsumableArray_default()(fileList));
}, 500);
};
var uploadProps = {
multiple: true,
disabled: disabled,
accept: accept,
withCredentials: true,
fileList: fileList,
// fileList: fileList?.length ? fileList : value,
beforeUpload: function beforeUpload(file, fileArr) {
var fileSize = file.size / 1024 / 1024;
if (fileList.concat(fileArr).length > number) {
fileList.pop();
setFileList(toConsumableArray_default()(fileList));
es_message/* default */.ZP.error("\u6700\u591A\u53EA\u80FD\u4E0A\u4F20".concat(number, "\u4E2A\u6587\u4EF6"));
if (aloneClear) {
return Promise.reject();
}
clearLastFile();
return false;
}
if (!(fileSize < maxSize)) {
es_message/* default */.ZP.error("\u8BE5\u6587\u4EF6\u65E0\u6CD5\u4E0A\u4F20\u3002\u8D85\u8FC7\u6587\u4EF6\u5927\u5C0F\u9650\u5236(".concat(maxSize, "MB)."));
if (aloneClear) {
return Promise.reject();
}
clearLastFile();
return false;
}
return true;
},
data: data,
action: action || "".concat(env/* default */.Z.API_SERVER, "/api/attachments.json"),
// ?debug=student&randomcode=undefined&client_key=6d57f8c3dd186c5ada392546ace9620a
onChange: function onChange(info) {
var _info$file;
if (info.file.status === "removed") {
fileList = info.fileList;
} else {
fileList = (0,lodash.uniqBy)([].concat(toConsumableArray_default()(info.fileList), toConsumableArray_default()(fileList)), 'uid');
}
if (info.file.status === 'done' && ((_info$file = info.file) === null || _info$file === void 0 || (_info$file = _info$file.response) === null || _info$file === void 0 ? void 0 : _info$file.status) === -1) {
var _info$file2;
es_message/* default */.ZP.error((_info$file2 = info.file) === null || _info$file2 === void 0 || (_info$file2 = _info$file2.response) === null || _info$file2 === void 0 ? void 0 : _info$file2.message);
return;
}
if (fileList.length >= number) setDisabled(true);else setDisabled(false);
setFileList(toConsumableArray_default()(fileList));
fileList = fileList.map(function (file) {
var _file$response;
if (file !== null && file !== void 0 && (_file$response = file.response) !== null && _file$response !== void 0 && _file$response.id) {
var _file$response2;
file.url = "/api/attachments/".concat(file === null || file === void 0 || (_file$response2 = file.response) === null || _file$response2 === void 0 ? void 0 : _file$response2.id);
}
if (file.name.indexOf(uploadNameSizeSeperator) === -1) {
file.name = "".concat(file.name).concat(uploadNameSizeSeperator).concat(bytesToSize(file.size));
}
return objectSpread2_default()({}, file);
});
console.log('info:', info, fileList);
_onChange(fileList);
},
onRemove: function () {
var _onRemove = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee3(file) {
var remove;
return regeneratorRuntime_default()().wrap(function _callee3$(_context3) {
while (1) switch (_context3.prev = _context3.next) {
case 0:
remove = /*#__PURE__*/function () {
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
var id, rs;
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
id = file.response ? file.response.id : file.id;
if (!id) {
_context.next = 8;
break;
}
_context.next = 4;
return (0,service/* removeAttachment */.JZ)(file.response ? file.response.id : file.uid);
case 4:
rs = _context.sent;
return _context.abrupt("return", Promise.resolve(rs));
case 8:
return _context.abrupt("return", true);
case 9:
case "end":
return _context.stop();
}
}, _callee);
}));
return function remove() {
return _ref2.apply(this, arguments);
};
}();
if (!showRemoveModal) {
_context3.next = 5;
break;
}
return _context3.abrupt("return", new Promise(function (resolve, reject) {
modal/* default */.Z.confirm({
centered: true,
width: 530,
okText: '确定',
cancelText: '取消',
title: '提示',
content: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "tc font16",
children: "\u662F\u5426\u786E\u8BA4\u5220\u9664?"
}),
onOk: function () {
var _onOk = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2() {
var res;
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
while (1) switch (_context2.prev = _context2.next) {
case 0:
_context2.next = 2;
return remove();
case 2:
res = _context2.sent;
es_message/* default */.ZP.success('删除成功');
resolve(true);
case 5:
case "end":
return _context2.stop();
}
}, _callee2);
}));
function onOk() {
return _onOk.apply(this, arguments);
}
return onOk;
}(),
onCancel: function onCancel() {
return resolve(false);
}
});
}));
case 5:
_context3.next = 7;
return remove();
case 7:
return _context3.abrupt("return", _context3.sent);
case 8:
case "end":
return _context3.stop();
}
}, _callee3);
}));
function onRemove(_x) {
return _onRemove.apply(this, arguments);
}
return onRemove;
}()
};
function onCancel(e) {
e.preventDefault();
e.stopPropagation();
}
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: "multi-upload ".concat(className ? className : ''),
children: [isDragger && /*#__PURE__*/(0,jsx_runtime.jsxs)(Dragger, objectSpread2_default()(objectSpread2_default()({}, uploadProps), {}, {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("p", {
className: "ant-upload-drag-icon",
children: /*#__PURE__*/(0,jsx_runtime.jsx)(InboxOutlined/* default */.Z, {})
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
className: "ant-upload-text",
children: ["\u70B9\u51FB\u4E0A\u4F20\u56FE\u6807\uFF0C\u9009\u62E9\u8981\u4E0A\u4F20\u7684\u6587\u4EF6\u6216\u5C06\u6587\u4EF6\u62D6\u62FD\u5230\u6B64", /*#__PURE__*/(0,jsx_runtime.jsx)("br", {}), "(\u5355\u4E2A\u6587\u4EF6\u6700\u5927\u9650\u5236\u4E3A", maxSize, "MB)", ' ']
}), additionalText]
})), !isDragger && /*#__PURE__*/(0,jsx_runtime.jsxs)(upload/* default */.Z, objectSpread2_default()(objectSpread2_default()({}, uploadProps), {}, {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(es_button/* default */.ZP, {
disabled: disabled,
className: "upload_button",
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("img", {
className: "aBtn_img",
src: uploadImg
}), title]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
onClick: onCancel,
className: "upload_text",
children: ["(\u5355\u4E2A\u6587\u4EF6\u6700\u5927", maxSize, "MB)", ' ']
})]
}))]
});
});
/***/ }),
/***/ 63740:
/*!**********************************************!*\
!*** ./src/components/TooltipTags/index.tsx ***!
\**********************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ 59301);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! antd */ 6848);
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react/jsx-runtime */ 37712);
var TooltipTags = function TooltipTags(_ref) {
var value = _ref.value,
_ref$visible = _ref.visible,
visible = _ref$visible === void 0 ? true : _ref$visible,
children = _ref.children;
var txt = {
未发布: "作业尚未发布",
未开始: "作业已发布,尚未到达开始作业时间",
提交中: "作业进行中,所有考生可提交作业",
补交中: "作业进行中,所有学生可补交作业",
进行中: "作业进行中,部分班级正在作业提交中/补交中",
已截止: "到达作业截止时间,作业已结束",
已结束: "课堂已结束"
};
return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.Fragment, {
children: visible ? /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)(antd__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .Z, {
placement: "topLeft",
title: txt[value],
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)("span", {
children: children
})
}) : children
});
};
/* harmony default export */ __webpack_exports__.Z = (TooltipTags);
/***/ }),
/***/ 59425:
/*!*************************************************************!*\
!*** ./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 */ 62015);
/* harmony import */ var codemirror_theme_blackboard_css__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! codemirror/theme/blackboard.css */ 86102);
/* 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
})
});
}
/***/ }),
/***/ 39987:
/*!***************************************************************!*\
!*** ./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__(62015);
// 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__(70159);
// 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__(31998);
// 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__(8772);
// 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__(59425);
// 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__(45446);
;// 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__(25034);
;// 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.
*
* Typical usage:
*
* new go.Diagram("myDiagramDiv",
* {
* commandHandler: $(DrawCommandHandler),
* . . .
* }
* )
*
* or:
*
* myDiagram.commandHandler = new DrawCommandHandler();
*
*/
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.} 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.} 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__(57855);
// 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__(84087);
;// 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__(97913);
;// 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__(71417);
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__(87133);
// EXTERNAL MODULE: ./src/utils/env.ts + 1 modules
var env = __webpack_require__(18765);
;// 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__(94129);
;// 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 _useState17 = (0,_react_17_0_2_react.useState)(0),
_useState18 = slicedToArray_default()(_useState17, 2),
styleLeft = _useState18[0],
setStyleLeft = _useState18[1];
var _useState19 = (0,_react_17_0_2_react.useState)(0),
_useState20 = slicedToArray_default()(_useState19, 2),
styleTop = _useState20[0],
setStyleTop = _useState20[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(""));
} 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("").concat(file.name, ""));
} else if (officeSix.includes(fileSix)) {
instance.replaceSelection("").concat(file.name, ""));
} 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('
\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(""));
} 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("").concat(file.name, ""));
} else if (officeSix.includes(fileSix)) {
cm.replaceSelection("").concat(file.name, ""));
} 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
})
//
;
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));
}
// 设置弹窗居中
(0,_react_17_0_2_react.useEffect)(function () {
if (TitleDesc[action] && action !== DRAW_IMAGE && action !== ADD_FLOWCHART) {
var modal = document.getElementsByClassName('ant-modal')[0];
var centerX = window.innerWidth / 2 - modal.offsetWidth / 2; // 弹窗宽度的一半
var centerY = window.innerHeight / 2 - modal.offsetHeight / 2; // 弹窗高度的一半
setStyleLeft(centerX);
setStyleTop(centerY);
}
}, [action]);
var onTitleMouseDown = function onTitleMouseDown(e) {
e.preventDefault();
var startPosX = e.clientX - styleLeft;
var startPosY = e.clientY - styleTop;
// 鼠标移动时,移动弹窗
document.body.onmousemove = function (e) {
// 获取鼠标移动的距离
var left = e.clientX - startPosX;
var top = e.clientY - startPosY;
// 获取弹窗dom元素,并计算弹窗的宽高
var modal = document.getElementsByClassName('ant-modal')[0];
var maxWidth = window.innerWidth - modal.offsetWidth;
var maxHeight = window.innerHeight - modal.offsetHeight;
// 判断移动的距离是否在弹窗内,如果不在弹窗内,则移动到弹窗内
left = Math.max(0, Math.min(left, maxWidth));
top = Math.max(0, Math.min(top, maxHeight));
// 移动弹窗
if (inWindow(e.clientX, e.clientY, startPosX, startPosY)) {
setStyleLeft(left);
setStyleTop(top);
}
};
// 鼠标放开时去掉移动事件
document.body.onmouseup = function () {
document.body.onmousemove = null;
};
};
// 判断鼠标是否在拖拽范围内
var inWindow = function inWindow(left, top, startPosX, startPosY) {
var H = document.body.clientHeight;
var W = document.body.clientWidth;
if (left < 20 && startPosX > left || left > W - 20 && startPosX < left || top < 20 && startPosY > top || top > H - 20 && startPosY < top) {
document.body.onmousemove = null;
document.body.onmouseup = null;
return false;
}
return true;
};
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, {
maskClosable: false,
centered: true,
style: {
position: 'absolute',
left: styleLeft,
top: styleTop
},
title: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
style: {
cursor: 'move'
},
onMouseDown: onTitleMouseDown,
children: 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
})]
});
});
/***/ }),
/***/ 31998:
/*!**********************************!*\
!*** ./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);
/***/ }),
/***/ 94129:
/*!****************************************!*\
!*** ./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]);
}
/***/ }),
/***/ 19493:
/*!***************************************************************************!*\
!*** ./src/pages/Classrooms/Lists/ProgramHomework/components/Publish.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_defineProperty_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/defineProperty.js */ 85573);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_defineProperty_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_defineProperty_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_objectSpread2_js__WEBPACK_IMPORTED_MODULE_3__ = __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_3___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_3__);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_toConsumableArray_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/toConsumableArray.js */ 37205);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_toConsumableArray_js__WEBPACK_IMPORTED_MODULE_4___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_toConsumableArray_js__WEBPACK_IMPORTED_MODULE_4__);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_5__ = __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_5___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_5__);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectWithoutProperties_js__WEBPACK_IMPORTED_MODULE_6__ = __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_6___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_6__);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! react */ 59301);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! antd */ 78241);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! antd */ 8591);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! antd */ 43418);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! antd */ 95237);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! antd */ 5112);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! antd */ 97913);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! antd */ 43604);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! antd */ 22744);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(/*! antd */ 24905);
/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! moment */ 9498);
/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_8___default = /*#__PURE__*/__webpack_require__.n(moment__WEBPACK_IMPORTED_MODULE_8__);
/* harmony import */ var _utils_fetch__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @/utils/fetch */ 84087);
/* harmony import */ var _utils_authority__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @/utils/authority */ 82522);
/* harmony import */ var _utils_util__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @/utils/util */ 25644);
/* harmony import */ var umi__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! umi */ 32136);
/* harmony import */ var _ShixunHomeworks_components_TrfList__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! ../../ShixunHomeworks/components/TrfList */ 2757);
/* harmony import */ var _service_classrooms__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! @/service/classrooms */ 88058);
/* harmony import */ var _pages_Classrooms_Lists_ShixunHomeworks_Detail_components_ConfigWorks_Releasesetting__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! @/pages/Classrooms/Lists/ShixunHomeworks/Detail/components/ConfigWorks/Releasesetting */ 11629);
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! react/jsx-runtime */ 37712);
var _excluded = ["classroomList", "dispatch", "courseEndTime"];
var PublishShixun = function PublishShixun(_ref) {
var _classroomList$action, _classroomList$action7, _classroomList$action8, _classroomList$action9, _classroomList$action10, _classroomList$action11, _classroomList$action12, _classroomList$action13, _classroomList$action14, _classroomList$action15, _classroomList$action16;
var classroomList = _ref.classroomList,
dispatch = _ref.dispatch,
courseEndTime = _ref.courseEndTime,
props = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectWithoutProperties_js__WEBPACK_IMPORTED_MODULE_6___default()(_ref, _excluded);
var params = (0,umi__WEBPACK_IMPORTED_MODULE_12__.useParams)();
var _Form$useForm = antd__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .Z.useForm(),
_Form$useForm2 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_5___default()(_Form$useForm, 1),
form = _Form$useForm2[0];
var _useState = (0,react__WEBPACK_IMPORTED_MODULE_7__.useState)(1),
_useState2 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_5___default()(_useState, 2),
page = _useState2[0],
setPage = _useState2[1];
var _useState3 = (0,react__WEBPACK_IMPORTED_MODULE_7__.useState)([]),
_useState4 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_5___default()(_useState3, 2),
list = _useState4[0],
setList = _useState4[1];
var _useState5 = (0,react__WEBPACK_IMPORTED_MODULE_7__.useState)(0),
_useState6 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_5___default()(_useState5, 2),
count = _useState6[0],
setCount = _useState6[1];
var _useState7 = (0,react__WEBPACK_IMPORTED_MODULE_7__.useState)(2000),
_useState8 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_5___default()(_useState7, 2),
limit = _useState8[0],
setLimit = _useState8[1];
var _useState9 = (0,react__WEBPACK_IMPORTED_MODULE_7__.useState)(true),
_useState10 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_5___default()(_useState9, 2),
loading = _useState10[0],
setLoading = _useState10[1];
var _useState11 = (0,react__WEBPACK_IMPORTED_MODULE_7__.useState)(false),
_useState12 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_5___default()(_useState11, 2),
cancelState = _useState12[0],
setCancelState = _useState12[1]; //防止多次取消时请求
var _useState13 = (0,react__WEBPACK_IMPORTED_MODULE_7__.useState)(false),
_useState14 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_5___default()(_useState13, 2),
btnLoading = _useState14[0],
setBtnLoading = _useState14[1];
var _useState15 = (0,react__WEBPACK_IMPORTED_MODULE_7__.useState)([]),
_useState16 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_5___default()(_useState15, 2),
targetKeys = _useState16[0],
settargetKeys = _useState16[1];
var _useState17 = (0,react__WEBPACK_IMPORTED_MODULE_7__.useState)(true),
_useState18 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_5___default()(_useState17, 2),
radiovalue = _useState18[0],
setradiovalue = _useState18[1];
var _useState19 = (0,react__WEBPACK_IMPORTED_MODULE_7__.useState)(!((_classroomList$action = classroomList.actionTabs) !== null && _classroomList$action !== void 0 && (_classroomList$action = _classroomList$action.selectArrsAll) !== null && _classroomList$action !== void 0 && (_classroomList$action = _classroomList$action[0]) !== null && _classroomList$action !== void 0 && _classroomList$action.send_type)),
_useState20 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_5___default()(_useState19, 2),
isredio = _useState20[0],
setisredio = _useState20[1];
var _useState21 = (0,react__WEBPACK_IMPORTED_MODULE_7__.useState)([0, 0, 0]),
_useState22 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_5___default()(_useState21, 2),
items = _useState22[0],
setitems = _useState22[1];
(0,react__WEBPACK_IMPORTED_MODULE_7__.useEffect)(function () {
if (classroomList.actionTabs.key === '立即发布') {
var _classroomList$action2, _classroomList$action5;
clear();
if (!((_classroomList$action2 = classroomList.actionTabs) !== null && _classroomList$action2 !== void 0 && (_classroomList$action2 = _classroomList$action2.selectArrsAll) !== null && _classroomList$action2 !== void 0 && (_classroomList$action2 = _classroomList$action2[0]) !== null && _classroomList$action2 !== void 0 && _classroomList$action2.can_publish)) {
var _classroomList$action3;
setitems(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_toConsumableArray_js__WEBPACK_IMPORTED_MODULE_4___default()((_classroomList$action3 = classroomList.actionTabs) === null || _classroomList$action3 === void 0 || (_classroomList$action3 = _classroomList$action3.selectArrsAll) === null || _classroomList$action3 === void 0 || (_classroomList$action3 = _classroomList$action3[0]) === null || _classroomList$action3 === void 0 ? void 0 : _classroomList$action3.difficult_settings));
} else {
var _classroomList$action4;
setitems(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_toConsumableArray_js__WEBPACK_IMPORTED_MODULE_4___default()((_classroomList$action4 = classroomList.actionTabs) === null || _classroomList$action4 === void 0 || (_classroomList$action4 = _classroomList$action4.selectArrsAll) === null || _classroomList$action4 === void 0 || (_classroomList$action4 = _classroomList$action4[0]) === null || _classroomList$action4 === void 0 ? void 0 : _classroomList$action4.difficult_count));
}
setisredio(!((_classroomList$action5 = classroomList.actionTabs) !== null && _classroomList$action5 !== void 0 && (_classroomList$action5 = _classroomList$action5.selectArrsAll) !== null && _classroomList$action5 !== void 0 && (_classroomList$action5 = _classroomList$action5[0]) !== null && _classroomList$action5 !== void 0 && _classroomList$action5.send_type));
getData();
if (classroomList.actionTabs.type === 2) {
var _classroomList$action6;
var selectItem = (_classroomList$action6 = classroomList.actionTabs.selectArrsAll) === null || _classroomList$action6 === void 0 ? void 0 : _classroomList$action6[0];
setradiovalue(selectItem.unified_setting);
}
}
}, [classroomList.actionTabs]);
(0,react__WEBPACK_IMPORTED_MODULE_7__.useEffect)(function () {
if (cancelState) {
if (btnLoading) return;
dispatch({
type: 'classroomList/setActionTabs',
payload: {}
});
if ((0,_utils_authority__WEBPACK_IMPORTED_MODULE_10__/* .isAdmin */ .GJ)()) {
dispatch({
type: 'classroomList/getClassroomTeacherCommonList',
payload: _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_3___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_3___default()({}, classroomList.actionTabs.params), {}, {
type: 1
})
});
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_3___default()({}, params)
});
} else {
dispatch({
type: 'classroomList/getClassroomCommonList',
payload: _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_3___default()({}, classroomList.actionTabs.params)
});
}
}
}, [cancelState]);
var getData = /*#__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 _callee(nextPage) {
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:
setLoading(true);
_context.next = 3;
return (0,_service_classrooms__WEBPACK_IMPORTED_MODULE_14__/* .getAllCourseGroup */ .c_)(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_3___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_3___default()({}, params), {}, {
page: nextPage ? nextPage : page,
limit: 20000,
homework_id: classroomList.actionTabs.type === 1 ? '' : classroomList.actionTabs.selectArrs[0]
}));
case 3:
res = _context.sent;
res === null || res === void 0 || res.course_groups.map(function (item, index) {
item.key = item.id;
item.title = item.name;
item.disabled = item.is_published;
// item.disabled=item.id===2381;
});
if (res) {
setList(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_toConsumableArray_js__WEBPACK_IMPORTED_MODULE_4___default()(res === null || res === void 0 ? void 0 : res.course_groups));
setCount(res === null || res === void 0 ? void 0 : res.course_groups_count);
setLoading(false);
if (!nextPage) {
form.setFieldsValue(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_defineProperty_js__WEBPACK_IMPORTED_MODULE_1___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_defineProperty_js__WEBPACK_IMPORTED_MODULE_1___default()({}, 'publish_time', moment__WEBPACK_IMPORTED_MODULE_8___default()(moment__WEBPACK_IMPORTED_MODULE_8___default()(new Date()).add(0, 'days').format('YYYY-MM-DD HH:mm'))), 'end_time', moment__WEBPACK_IMPORTED_MODULE_8___default()(moment__WEBPACK_IMPORTED_MODULE_8___default()(new Date((0,_utils_util__WEBPACK_IMPORTED_MODULE_11__/* .DayHalfPastOne */ .qd)('/'))).add(7, 'days').format('YYYY-MM-DD HH:mm'))));
}
}
case 6:
case "end":
return _context.stop();
}
}, _callee);
}));
return function getData(_x) {
return _ref2.apply(this, arguments);
};
}();
/**
* 刷新数据
* @returns
*/
var onRefresh = function onRefresh() {
if ((0,_utils_authority__WEBPACK_IMPORTED_MODULE_10__/* .isAdmin */ .GJ)()) {
if (classroomList.actionTabs.detail) {
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_3___default()({}, params)
});
dispatch({
type: 'shixunHomeworks/getWorkSetting',
payload: _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_3___default()({}, params)
});
} else {
dispatch({
type: 'classroomList/getClassroomTeacherCommonList',
payload: _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_3___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_3___default()({}, classroomList.actionTabs.params), {}, {
type: 5,
category: classroomList.actionTabs.params.categoryId
})
});
}
} else {
dispatch({
type: 'classroomList/getClassroomCommonList',
payload: _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_3___default()({}, classroomList.actionTabs.params)
});
}
};
var handleOk = /*#__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 _callee2() {
var _classroomList$Assist, _classroomList$detail;
var formValue, bodys, 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:
if (!((0,_utils_authority__WEBPACK_IMPORTED_MODULE_10__/* .isAssistant */ .Rm)() && !((_classroomList$Assist = classroomList.AssistantObject.hack) !== null && _classroomList$Assist !== void 0 && _classroomList$Assist.can_publish))) {
_context2.next = 4;
break;
}
antd__WEBPACK_IMPORTED_MODULE_18__/* ["default"] */ .ZP.warning('您未获取此权限,需向管理员申请权限才能使用此功能');
setisLoading(false);
return _context2.abrupt("return");
case 4:
formValue = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_3___default()({}, form.getFieldsValue());
if (!(formValue.end_time <= formValue.publish_time)) {
_context2.next = 9;
break;
}
antd__WEBPACK_IMPORTED_MODULE_18__/* ["default"] */ .ZP.info('截止时间不能大于或等于发布时间');
setisLoading(false);
return _context2.abrupt("return");
case 9:
if (!((targetKeys === null || targetKeys === void 0 ? void 0 : targetKeys.length) <= 0 && !radiovalue && list.length > 0)) {
_context2.next = 13;
break;
}
antd__WEBPACK_IMPORTED_MODULE_18__/* ["default"] */ .ZP.info('发布班级不能为空');
setisLoading(false);
return _context2.abrupt("return");
case 13:
if (!(items.reduce(function (a, b) {
return a + b;
}) === 0 && !isredio)) {
_context2.next = 17;
break;
}
antd__WEBPACK_IMPORTED_MODULE_18__/* ["default"] */ .ZP.info('简单适中困难题数相加不能为0');
setisLoading(false);
return _context2.abrupt("return");
case 17:
bodys = {
homework_ids: _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_toConsumableArray_js__WEBPACK_IMPORTED_MODULE_4___default()(classroomList.actionTabs.selectArrs),
group_ids: targetKeys.length > 0 ? targetKeys.map(function (item) {
return item.id;
}) : (_classroomList$detail = classroomList.detailCommonHomeworksList) === null || _classroomList$detail === void 0 ? void 0 : _classroomList$detail.course_groups,
end_time: moment__WEBPACK_IMPORTED_MODULE_8___default()(formValue.end_time).format('YYYY-MM-DD HH:mm'),
publish_time: moment__WEBPACK_IMPORTED_MODULE_8___default()(formValue.publish_time).format('YYYY-MM-DD HH:mm'),
difficult_settings: items === null || items === void 0 ? void 0 : items.map(function (ite) {
return ite;
}),
send_type: isredio ? '0' : '1',
unified_setting: !targetKeys.length
};
setisLoading(true);
_context2.next = 21;
return (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .ZP)("/api/courses/".concat(params.coursesId, "/homework_commons/publish_with_homework_list_position.json"), {
method: 'post',
body: _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_3___default()({}, bodys)
});
case 21:
res = _context2.sent;
if (res.status === 0) {
setisLoading(false);
(0,_utils_util__WEBPACK_IMPORTED_MODULE_11__/* .trackEvent */ .L9)(['教学课堂', '图文作业', '立即发布']);
antd__WEBPACK_IMPORTED_MODULE_18__/* ["default"] */ .ZP.success('发布成功');
dispatch({
type: 'classroomList/setActionTabs',
payload: {
key: '清除选择数据'
}
});
// dispatch({
// type: 'classroomList/getClassroomShixunsList',
// payload: { ...classroomList.actionTabs.params },
// })
props.onCallback && props.onCallback();
onRefresh();
if (localStorage.getItem('Noviceguide') === '0') {} else {
dispatch({
type: 'shixunHomeworks/setActionTabs',
payload: {
key: '底部弹窗',
type: 13,
text: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_16__.jsx)("div", {
children: "\u6700\u540E\uFF0C\u54B1\u4EEC\u7ED9\u6559\u5B66\u8BFE\u5802\u6DFB\u52A0\u4E00\u540D\u5B66\u751F~\u70B9\u51FB\u201C\u6DFB\u52A0\u5B66\u751F\u201D\uFF0C\u5728\u5F39\u7A97\u9875\u9762\u4E2D\u8F93\u5165\u5E76\u641C\u7D22\u5B66\u751F\u59D3\u540D\uFF0C\u70B9\u51FB\u201C\u786E\u5B9A\u201D\u5C31\u53EF\u4EE5\u4E3A\u60A8\u7684\u8BFE\u5802\u6DFB\u52A0\u7B2C\u4E00\u4F4D\u5B66\u751F\u5566~"
})
}
});
}
} else {
setisLoading(false);
}
case 23:
case "end":
return _context2.stop();
}
}, _callee2);
}));
return function handleOk() {
return _ref3.apply(this, arguments);
};
}();
var clear = function clear() {
setPage(1);
setList([]);
settargetKeys([]);
};
var hasMore = count > page * limit;
var _useState23 = (0,react__WEBPACK_IMPORTED_MODULE_7__.useState)(false),
_useState24 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_5___default()(_useState23, 2),
isLoading = _useState24[0],
setisLoading = _useState24[1];
return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_16__.jsxs)(antd__WEBPACK_IMPORTED_MODULE_19__/* ["default"] */ .Z, {
width: 600,
confirmLoading: isLoading,
centered: true,
title: "\u53D1\u5E03\u4F5C\u4E1A",
open: classroomList.actionTabs.key === '立即发布' ? true : false,
okText: "\u53D1\u5E03\u4F5C\u4E1A",
cancelText: "\u6682\u4E0D\u53D1\u5E03",
onOk: handleOk,
onCancel: function onCancel() {
clear();
onRefresh();
dispatch({
type: 'classroomList/setActionTabs',
payload: {}
});
},
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_16__.jsxs)("p", {
className: "tc",
children: ["\u5B66\u751F\u5C06\u7ACB\u5373\u6536\u5230\u4F5C\u4E1A", /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_16__.jsx)("br", {}), "\u672C\u64CD\u4F5C\u53EA\u5BF9\"\u672A\u53D1\u5E03\"\u7684\u4F5C\u4E1A\u6709\u6548"]
}), list && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_16__.jsxs)(antd__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .Z, {
form: form,
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_16__.jsxs)("div", {
style: {
paddingLeft: 0
},
children: [classroomList.actionTabs.type === 2 && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_16__.jsxs)(antd__WEBPACK_IMPORTED_MODULE_20__/* ["default"] */ .Z, {
style: {
marginBottom: '10px'
},
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_16__.jsx)("span", {
className: "mr5",
children: "\u8BD5\u9898\u53D1\u9001:"
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_16__.jsxs)(antd__WEBPACK_IMPORTED_MODULE_21__/* ["default"].Group */ .ZP.Group, {
value: isredio,
disabled: !((_classroomList$action7 = classroomList.actionTabs) !== null && _classroomList$action7 !== void 0 && (_classroomList$action7 = _classroomList$action7.selectArrsAll) !== null && _classroomList$action7 !== void 0 && (_classroomList$action7 = _classroomList$action7[0]) !== null && _classroomList$action7 !== void 0 && _classroomList$action7.can_publish),
onChange: function onChange(e) {
setisredio(e.target.value);
// getData();
// settargetKeys([]);
},
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_16__.jsx)(antd__WEBPACK_IMPORTED_MODULE_21__/* ["default"] */ .ZP, {
value: true,
children: "\u5168\u90E8\u56FA\u5B9A\u8BD5\u9898"
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_16__.jsx)(antd__WEBPACK_IMPORTED_MODULE_21__/* ["default"] */ .ZP, {
className: "ml20"
// disabled={list.length <= 0}
,
value: false,
children: "\u968F\u673A\u62BD\u53D6"
})]
})]
}), !isredio && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_16__.jsxs)(antd__WEBPACK_IMPORTED_MODULE_20__/* ["default"] */ .Z, {
style: {
marginBottom: '10px'
},
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_16__.jsx)("span", {
style: {
marginRight: 65
}
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_16__.jsxs)("span", {
children: ["\u7B80\u5355\u9898\u6570 ", /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_16__.jsx)(antd__WEBPACK_IMPORTED_MODULE_22__/* ["default"] */ .Z, {
value: items[0],
onChange: function onChange(e) {
items[0] = e;
setitems(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_toConsumableArray_js__WEBPACK_IMPORTED_MODULE_4___default()(items));
},
min: 0,
disabled: !((_classroomList$action8 = classroomList.actionTabs) !== null && _classroomList$action8 !== void 0 && (_classroomList$action8 = _classroomList$action8.selectArrsAll) !== null && _classroomList$action8 !== void 0 && (_classroomList$action8 = _classroomList$action8[0]) !== null && _classroomList$action8 !== void 0 && _classroomList$action8.can_publish),
placeholder: "\u6700\u5927".concat((_classroomList$action9 = classroomList.actionTabs) === null || _classroomList$action9 === void 0 || (_classroomList$action9 = _classroomList$action9.selectArrsAll) === null || _classroomList$action9 === void 0 || (_classroomList$action9 = _classroomList$action9[0]) === null || _classroomList$action9 === void 0 || (_classroomList$action9 = _classroomList$action9.difficult_count) === null || _classroomList$action9 === void 0 ? void 0 : _classroomList$action9[0]),
max: (_classroomList$action10 = classroomList.actionTabs) === null || _classroomList$action10 === void 0 || (_classroomList$action10 = _classroomList$action10.selectArrsAll) === null || _classroomList$action10 === void 0 || (_classroomList$action10 = _classroomList$action10[0]) === null || _classroomList$action10 === void 0 || (_classroomList$action10 = _classroomList$action10.difficult_count) === null || _classroomList$action10 === void 0 ? void 0 : _classroomList$action10[0],
style: {
width: 60
}
})]
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_16__.jsxs)("span", {
style: {
margin: '0px 40px'
},
children: ["\u9002\u4E2D\u9898\u6570 ", /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_16__.jsx)(antd__WEBPACK_IMPORTED_MODULE_22__/* ["default"] */ .Z, {
value: items[1],
onChange: function onChange(e) {
items[1] = e;
setitems(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_toConsumableArray_js__WEBPACK_IMPORTED_MODULE_4___default()(items));
},
min: 0,
disabled: !((_classroomList$action11 = classroomList.actionTabs) !== null && _classroomList$action11 !== void 0 && (_classroomList$action11 = _classroomList$action11.selectArrsAll) !== null && _classroomList$action11 !== void 0 && (_classroomList$action11 = _classroomList$action11[0]) !== null && _classroomList$action11 !== void 0 && _classroomList$action11.can_publish),
max: (_classroomList$action12 = classroomList.actionTabs) === null || _classroomList$action12 === void 0 || (_classroomList$action12 = _classroomList$action12.selectArrsAll) === null || _classroomList$action12 === void 0 || (_classroomList$action12 = _classroomList$action12[0]) === null || _classroomList$action12 === void 0 || (_classroomList$action12 = _classroomList$action12.difficult_count) === null || _classroomList$action12 === void 0 ? void 0 : _classroomList$action12[1],
placeholder: "\u6700\u5927".concat((_classroomList$action13 = classroomList.actionTabs) === null || _classroomList$action13 === void 0 || (_classroomList$action13 = _classroomList$action13.selectArrsAll) === null || _classroomList$action13 === void 0 || (_classroomList$action13 = _classroomList$action13[0]) === null || _classroomList$action13 === void 0 || (_classroomList$action13 = _classroomList$action13.difficult_count) === null || _classroomList$action13 === void 0 ? void 0 : _classroomList$action13[1]),
style: {
width: 60
}
})]
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_16__.jsxs)("span", {
children: ["\u56F0\u96BE\u9898\u6570 ", /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_16__.jsx)(antd__WEBPACK_IMPORTED_MODULE_22__/* ["default"] */ .Z, {
value: items[2],
onChange: function onChange(e) {
items[2] = e;
setitems(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_toConsumableArray_js__WEBPACK_IMPORTED_MODULE_4___default()(items));
},
min: 0,
disabled: !((_classroomList$action14 = classroomList.actionTabs) !== null && _classroomList$action14 !== void 0 && (_classroomList$action14 = _classroomList$action14.selectArrsAll) !== null && _classroomList$action14 !== void 0 && (_classroomList$action14 = _classroomList$action14[0]) !== null && _classroomList$action14 !== void 0 && _classroomList$action14.can_publish),
placeholder: "\u6700\u5927".concat((_classroomList$action15 = classroomList.actionTabs) === null || _classroomList$action15 === void 0 || (_classroomList$action15 = _classroomList$action15.selectArrsAll) === null || _classroomList$action15 === void 0 || (_classroomList$action15 = _classroomList$action15[0]) === null || _classroomList$action15 === void 0 || (_classroomList$action15 = _classroomList$action15.difficult_count) === null || _classroomList$action15 === void 0 ? void 0 : _classroomList$action15[2]),
max: (_classroomList$action16 = classroomList.actionTabs) === null || _classroomList$action16 === void 0 || (_classroomList$action16 = _classroomList$action16.selectArrsAll) === null || _classroomList$action16 === void 0 || (_classroomList$action16 = _classroomList$action16[0]) === null || _classroomList$action16 === void 0 || (_classroomList$action16 = _classroomList$action16.difficult_count) === null || _classroomList$action16 === void 0 ? void 0 : _classroomList$action16[2],
style: {
width: 60
}
})]
})]
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_16__.jsxs)(antd__WEBPACK_IMPORTED_MODULE_20__/* ["default"] */ .Z, {
className: "mt30",
align: "middle",
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_16__.jsx)(antd__WEBPACK_IMPORTED_MODULE_23__/* ["default"] */ .Z, {
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_16__.jsx)(antd__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .Z.Item, {
name: "publish_time",
label: "\u53D1\u5E03\u65F6\u95F4",
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_16__.jsx)(antd__WEBPACK_IMPORTED_MODULE_24__["default"], {
style: {
width: 170,
marginRight: '25px'
},
disabledDate: function disabledDate(current) {
return (0,_pages_Classrooms_Lists_ShixunHomeworks_Detail_components_ConfigWorks_Releasesetting__WEBPACK_IMPORTED_MODULE_15__/* .disabledDate */ .Q8)(current, courseEndTime);
},
disabledTime: function disabledTime(current) {
return (0,_pages_Classrooms_Lists_ShixunHomeworks_Detail_components_ConfigWorks_Releasesetting__WEBPACK_IMPORTED_MODULE_15__/* .disabledTime */ .d0)(current);
},
placeholder: '请选择发布时间',
showTime: {
format: 'HH:mm',
defaultValue: moment__WEBPACK_IMPORTED_MODULE_8___default()((0,_utils_util__WEBPACK_IMPORTED_MODULE_11__/* .HalfPastOne */ .U6)(), 'HH:mm')
},
format: "YYYY-MM-DD HH:mm",
allowClear: false
})
})
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_16__.jsx)(antd__WEBPACK_IMPORTED_MODULE_23__/* ["default"] */ .Z, {
className: "ml20",
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_16__.jsx)(antd__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .Z.Item, {
name: "end_time",
label: "\u622A\u6B62\u65F6\u95F4",
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_16__.jsx)(antd__WEBPACK_IMPORTED_MODULE_24__["default"], {
style: {
width: 170
},
placeholder: '请选择截止时间',
showTime: {
format: 'HH:mm',
defaultValue: moment__WEBPACK_IMPORTED_MODULE_8___default()((0,_utils_util__WEBPACK_IMPORTED_MODULE_11__/* .HalfPastOne */ .U6)(), 'HH:mm')
},
disabledDate: function disabledDate(current) {
return (0,_pages_Classrooms_Lists_ShixunHomeworks_Detail_components_ConfigWorks_Releasesetting__WEBPACK_IMPORTED_MODULE_15__/* .disabledDate */ .Q8)(current, courseEndTime, form.getFieldValue('publish_time'));
},
disabledTime: function disabledTime(current) {
return (0,_pages_Classrooms_Lists_ShixunHomeworks_Detail_components_ConfigWorks_Releasesetting__WEBPACK_IMPORTED_MODULE_15__/* .disabledTime */ .d0)(current, form.getFieldValue('publish_time'));
},
format: "YYYY-MM-DD HH:mm",
allowClear: false
})
})
})]
}), classroomList.actionTabs.type === 2 && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_16__.jsxs)(antd__WEBPACK_IMPORTED_MODULE_20__/* ["default"] */ .Z, {
style: {
marginBottom: '10px'
},
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_16__.jsx)("span", {
className: "mr5",
children: "\u53D1\u5E03\u8BBE\u7F6E:"
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_16__.jsxs)(antd__WEBPACK_IMPORTED_MODULE_21__/* ["default"].Group */ .ZP.Group, {
value: radiovalue,
onChange: function onChange(e) {
setradiovalue(e.target.value);
// getData();
settargetKeys([]);
},
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_16__.jsx)(antd__WEBPACK_IMPORTED_MODULE_21__/* ["default"] */ .ZP, {
value: true,
disabled: !classroomList.actionTabs.manage_all_group,
children: "\u7EDF\u4E00\u53D1\u5E03"
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_16__.jsx)(antd__WEBPACK_IMPORTED_MODULE_21__/* ["default"] */ .ZP, {
className: "ml20",
disabled: list.length <= 0,
value: false,
children: "\u5206\u73ED\u53D1\u5E03"
})]
})]
}), list.length <= 0 && classroomList.actionTabs.type === 2 && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_16__.jsx)("span", {
style: {
marginLeft: '65px',
color: 'rgba(0, 0, 0, 0.25)'
},
children: "\u8BFE\u5802\u65E0\u5206\u73ED\uFF0C\u4EC5\u652F\u6301\u9009\u62E9\u201C\u7EDF\u4E00\u53D1\u5E03\""
})]
}), (classroomList.actionTabs.type === 1 || !radiovalue) && list.length > 0 && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_16__.jsxs)("div", {
style: {
display: 'flex',
justifyContent: 'space-between',
marginBottom: '10px'
},
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_16__.jsxs)("span", {
style: {
flex: 1
},
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_16__.jsx)(antd__WEBPACK_IMPORTED_MODULE_25__/* ["default"] */ .Z, {
checked: targetKeys.length === list.length,
onChange: function onChange(e) {
if (targetKeys.length === list.length) {
settargetKeys([]);
} else {
settargetKeys(list.filter(function (item) {
return !item.is_published;
}));
}
},
children: "\u5168\u9009"
}), ' ']
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_16__.jsx)("span", {
style: {
width: 16
}
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_16__.jsxs)("span", {
style: {
flex: 1
},
children: ["\u5DF2\u9009\u62E9", targetKeys.length || 0, "\u4E2A\u5206\u73ED"]
})]
}), (classroomList.actionTabs.type === 1 || !radiovalue) && list.length > 0 && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_16__.jsx)(_ShixunHomeworks_components_TrfList__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .Z, {
data: list,
selectedRowKeys: targetKeys,
setSelectedRowKeys: settargetKeys
})]
})]
});
};
/* harmony default export */ __webpack_exports__.Z = ((0,umi__WEBPACK_IMPORTED_MODULE_12__.connect)(function (_ref4) {
var classroomList = _ref4.classroomList;
return {
classroomList: classroomList
};
})(PublishShixun));
/***/ }),
/***/ 65830:
/*!***************************************************************************!*\
!*** ./src/pages/Classrooms/Lists/ProgramHomework/index.tsx + 22 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__, {
CommonHomeworkContext: function() { return /* binding */ CommonHomeworkContext; },
"default": function() { return /* binding */ ProgramHomework; }
});
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/regeneratorRuntime.js
var regeneratorRuntime = __webpack_require__(7557);
var regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(regeneratorRuntime);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/asyncToGenerator.js
var asyncToGenerator = __webpack_require__(41498);
var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectSpread2.js
var objectSpread2 = __webpack_require__(82242);
var objectSpread2_default = /*#__PURE__*/__webpack_require__.n(objectSpread2);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/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/.umi-production/exports.ts + 15 modules
var _umi_production_exports = __webpack_require__(32136);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/message/index.js + 4 modules
var message = __webpack_require__(8591);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/pagination/index.js + 10 modules
var pagination = __webpack_require__(88590);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/affix/index.js + 2 modules
var affix = __webpack_require__(81228);
// EXTERNAL MODULE: ./src/utils/util.tsx
var util = __webpack_require__(25644);
// EXTERNAL MODULE: ./src/utils/authority.ts
var authority = __webpack_require__(82522);
// 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/objectWithoutProperties.js
var objectWithoutProperties = __webpack_require__(39647);
var objectWithoutProperties_default = /*#__PURE__*/__webpack_require__.n(objectWithoutProperties);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/modal/index.js + 16 modules
var modal = __webpack_require__(43418);
// EXTERNAL MODULE: ./src/utils/fetch.ts
var fetch = __webpack_require__(84087);
// EXTERNAL MODULE: ./src/components/CodeBox/index.tsx + 1 modules
var CodeBox = __webpack_require__(30089);
// 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/components/DelCompontent.tsx
var _excluded = ["classroomList", "dispatch", "match", "location", "user", "onCallback"];
var DelShixun = function DelShixun(_ref) {
var _classroomList$action, _classroomList$action2;
var classroomList = _ref.classroomList,
dispatch = _ref.dispatch,
match = _ref.match,
location = _ref.location,
user = _ref.user,
onCallback = _ref.onCallback,
props = objectWithoutProperties_default()(_ref, _excluded);
var params = (0,_umi_production_exports.useParams)();
var _useState = (0,_react_17_0_2_react.useState)(false),
_useState2 = slicedToArray_default()(_useState, 2),
confirmLoading = _useState2[0],
setConfirmLoading = _useState2[1];
var _useState3 = (0,_react_17_0_2_react.useState)(false),
_useState4 = slicedToArray_default()(_useState3, 2),
visible = _useState4[0],
setVisible = _useState4[1];
var delBox = (0,_react_17_0_2_react.useRef)(null);
(0,_react_17_0_2_react.useEffect)(function () {
if (classroomList.actionTabs.key === '删除') {
if ((0,authority/* isSuperAdmin */.j5)()) {
setVisible(true);
return;
}
var selectNum = {
hasNum: 0,
noHasNum: 0
};
classroomList.actionTabs.selectArrsAll.map(function (item) {
var _user$userInfo;
if (item.author_login === ((_user$userInfo = user.userInfo) === null || _user$userInfo === void 0 ? void 0 : _user$userInfo.login)) {
++selectNum.hasNum;
} else {
++selectNum.noHasNum;
}
});
if (selectNum.noHasNum > 0) {
modal/* default */.Z.info({
title: '权限提示',
className: 'custom-modal-divider ',
icon: null,
content: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: ["\u5F53\u524D\u9009\u4E2D\u8D44\u6E90\u4E2D\uFF1A", /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "c-blue",
children: selectNum.hasNum
}), "\u4E2A\u7531\u60A8\u672C\u4EBA\u53D1\u5E03\uFF0C", /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "c-red",
children: selectNum.noHasNum
}), ' ', "\u4E2A\u7531\u5176\u4ED6\u8001\u5E08\u53D1\u5E03\u3002", /*#__PURE__*/(0,jsx_runtime.jsx)("br", {}), "\u8BFE\u5802\u5185\u53EA\u80FD\u5220\u9664\u672C\u4EBA\u53D1\u5E03\u7684\u8D44\u6E90\uFF0C\u8BF7\u53D6\u6D88\u9009\u4E2D\u5176\u4ED6\u8001\u5E08\u53D1\u5E03\u7684\u8D44\u6E90\u3002"]
}),
onOk: function onOk() {
cancel();
}
});
} else {
setVisible(true);
}
} else {
setVisible(false);
}
}, [classroomList.actionTabs.key]);
var cancel = function cancel() {
dispatch({
type: 'classroomList/setActionTabs',
payload: {}
});
};
return /*#__PURE__*/(0,jsx_runtime.jsx)(modal/* default */.Z, {
centered: true,
title: "\u63D0\u793A",
open: visible,
okText: "\u786E\u5B9A",
cancelText: "\u53D6\u6D88",
confirmLoading: confirmLoading,
destroyOnClose: true,
onOk: /*#__PURE__*/asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
var _delBox$current;
var res;
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
if (!((_delBox$current = delBox.current) !== null && _delBox$current !== void 0 && _delBox$current.onVerify())) {
_context.next = 2;
break;
}
return _context.abrupt("return");
case 2:
setConfirmLoading(true);
_context.next = 5;
return (0,fetch/* default */.ZP)("/api/courses/".concat(params.coursesId, "/homework_commons/multi_destroy.json"), {
method: 'post',
body: {
homework_ids: toConsumableArray_default()(classroomList.actionTabs.selectArrs)
}
});
case 5:
res = _context.sent;
setConfirmLoading(false);
if (res.status === 0) {
(0,util/* trackEvent */.L9)(['教学课堂', '图文作业', '删除']);
message/* default */.ZP.success('删除成功');
dispatch({
type: 'classroomList/setActionTabs',
payload: {
key: '清除选择数据'
}
});
onCallback && onCallback();
if ((0,authority/* isAdmin */.GJ)()) {
dispatch({
type: 'classroomList/getClassroomTeacherCommonList',
payload: objectSpread2_default()(objectSpread2_default()({}, classroomList.actionTabs.params), {}, {
type: 5
})
});
} else {
dispatch({
type: 'classroomList/getClassroomCommonList',
payload: objectSpread2_default()({}, classroomList.actionTabs.params)
});
}
dispatch({
type: 'classroomList/getClassroomLeftMenus',
payload: {
id: params.coursesId
}
});
}
case 8:
case "end":
return _context.stop();
}
}, _callee);
})),
onCancel: function onCancel() {
cancel();
},
children: !(classroomList !== null && classroomList !== void 0 && (_classroomList$action = classroomList.actionTabs) !== null && _classroomList$action !== void 0 && _classroomList$action.status) || !['未发布'].includes(classroomList === null || classroomList === void 0 || (_classroomList$action2 = classroomList.actionTabs) === null || _classroomList$action2 === void 0 ? void 0 : _classroomList$action2.status) ? /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("p", {
style: {
color: '#DD0000'
},
children: "\u5220\u9664\u4F5C\u4E1A\u5219\u4F1A\u6E05\u9664\u5B66\u751F\u6240\u6709\u7684\u7B54\u9898\u6570\u636E\uFF0C\u4E14\u6570\u636E\u4E0D\u53EF\u6062\u590D\uFF0C\u5982\u786E\u5B9A\u5220\u9664\uFF0C\u8BF7\u8F93\u5165\u4E0B\u65B9\u9A8C\u8BC1\u7801"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(CodeBox/* default */.Z, {
ref: function ref(el) {
return delBox.current = el;
}
})]
}) : /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("p", {
children: "\u63D0\u4EA4\u4F5C\u54C1\u5C06\u5168\u90E8\u88AB\u5220\u9664\uFF0C\u4E0D\u53EF\u6062\u590D"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
children: "\u662F\u5426\u786E\u8BA4\u5220\u9664\uFF1F"
})]
})
});
};
/* harmony default export */ var DelCompontent = ((0,_umi_production_exports.connect)(function (_ref3) {
var classroomList = _ref3.classroomList,
user = _ref3.user;
return {
classroomList: classroomList,
user: user
};
})(DelShixun));
// EXTERNAL MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/components/Publish.tsx
var Publish = __webpack_require__(19493);
// EXTERNAL MODULE: ./src/components/CutOffNow/index.tsx + 1 modules
var CutOffNow = __webpack_require__(22588);
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/components/SetPublic.tsx
var SetPublic = function SetPublic(_ref) {
var classroomList = _ref.classroomList,
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: classroomList.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 (0,fetch/* default */.ZP)("/api/courses/".concat(params.coursesId, "/homework_commons/set_public.json"), {
method: 'post',
body: {
homework_ids: toConsumableArray_default()(classroomList.actionTabs.selectArrs)
}
});
case 2:
res = _context.sent;
if (res.status === 0) {
(0,util/* trackEvent */.L9)(['教学课堂', '图文作业', '设为公开']);
message/* default */.ZP.success('操作成功');
dispatch({
type: 'classroomList/setActionTabs',
payload: {
key: '清除选择数据'
}
});
if ((0,authority/* isAdmin */.GJ)()) {
dispatch({
type: 'classroomList/getClassroomTeacherCommonList',
payload: objectSpread2_default()(objectSpread2_default()({}, classroomList.actionTabs.params), {}, {
type: 5
})
});
} else {
dispatch({
type: 'classroomList/getClassroomCommonList',
payload: objectSpread2_default()({}, classroomList.actionTabs.params)
});
}
// dispatch({
// type: 'classroomList/getClassroomShixunsList',
// payload: { ...classroomList.actionTabs.params },
// });
}
case 4:
case "end":
return _context.stop();
}
}, _callee);
})),
onCancel: function onCancel() {
dispatch({
type: 'classroomList/setActionTabs',
payload: {}
});
},
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
children: ["\u8BBE\u4E3A\u516C\u5F00\u540E\uFF0C\u975E\u8BFE\u5802\u6210\u5458\u4E5F\u53EF\u4EE5\u8BBF\u95EE\u67E5\u770B", /*#__PURE__*/(0,jsx_runtime.jsx)("br", {}), "\u662F\u5426\u786E\u8BA4\u8BBE\u4E3A\u516C\u5F00\uFF1F"]
})
});
};
/* harmony default export */ var components_SetPublic = ((0,_umi_production_exports.connect)(function (_ref3) {
var classroomList = _ref3.classroomList;
return {
classroomList: classroomList
};
})(SetPublic));
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/components/AddHomeworkBank.tsx
var AddHomeworkBank_excluded = ["classroomList", "dispatch", "onCallback"];
var AddHomeworkBank_DelShixun = function DelShixun(_ref) {
var classroomList = _ref.classroomList,
dispatch = _ref.dispatch,
onCallback = _ref.onCallback,
props = objectWithoutProperties_default()(_ref, AddHomeworkBank_excluded);
var params = (0,_umi_production_exports.useParams)();
params['id'] = params['coursesId'];
return /*#__PURE__*/(0,jsx_runtime.jsx)(modal/* default */.Z, {
centered: true,
title: "\u63D0\u793A",
open: classroomList.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 (0,fetch/* default */.ZP)("/api/courses/".concat(params.id, "/homework_commons/add_to_homework_bank.json"), {
method: 'post',
body: {
all_check: 0,
homework_ids: toConsumableArray_default()(classroomList.actionTabs.selectArrs)
}
});
case 2:
res = _context.sent;
if (res.status === 0) {
(0,util/* trackEvent */.L9)(['教学课堂', '图文作业', '收藏']);
message/* default */.ZP.success('收藏成功,请前往【个人主页/课堂资源】查看');
dispatch({
type: 'classroomList/setActionTabs',
payload: {}
});
onCallback && onCallback();
// dispatch({
// type: 'classroomList/getClassroomCommonHomeworksList',
// payload: { ...classroomList.actionTabs.params },
// });
if ((0,authority/* isAdmin */.GJ)()) {
dispatch({
type: 'classroomList/getClassroomTeacherCommonList',
payload: objectSpread2_default()(objectSpread2_default()({}, classroomList.actionTabs.params), {}, {
type: 5
})
});
} else {
dispatch({
type: 'classroomList/getClassroomCommonList',
payload: objectSpread2_default()({}, classroomList.actionTabs.params)
});
}
dispatch({
type: 'classroomList/setActionTabs',
payload: {}
});
}
case 4:
case "end":
return _context.stop();
}
}, _callee);
})),
onCancel: function onCancel() {
dispatch({
type: 'classroomList/setActionTabs',
payload: {}
});
},
children: "\u786E\u8BA4\u6536\u85CF\uFF1F"
});
};
/* harmony default export */ var AddHomeworkBank = ((0,_umi_production_exports.connect)(function (_ref3) {
var classroomList = _ref3.classroomList;
return {
classroomList: classroomList
};
})(AddHomeworkBank_DelShixun));
// 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/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__(8772);
// 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);
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/components/AddCategory.tsx
var PublishShixun = function PublishShixun(_ref) {
var _actionTabs$selectArr, _actionTabs$selectArr2;
var classroomList = _ref.classroomList,
loading = _ref.loading,
dispatch = _ref.dispatch,
onCallback = _ref.onCallback;
var params = (0,_umi_production_exports.useParams)();
var location = (0,_umi_production_exports.useLocation)();
var actionTabs = classroomList.actionTabs;
var _Form$useForm = es_form/* default */.Z.useForm(),
_Form$useForm2 = slicedToArray_default()(_Form$useForm, 1),
form = _Form$useForm2[0];
var disabledDate = function disabledDate(current) {
return current && current < dayjs_min_default()().startOf('day');
};
return /*#__PURE__*/(0,jsx_runtime.jsxs)(modal/* default */.Z, {
centered: true,
title: "\u65B0\u5EFA\u76EE\u5F55",
open: classroomList.actionTabs.key === '新建目录' ? true : false,
okText: "\u786E\u5B9A",
cancelText: "\u53D6\u6D88",
bodyStyle: {
minHeight: 200
},
onOk: /*#__PURE__*/asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
var formValue, fetchUrl, res, _location$pathname, type, id, urlList, url;
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
formValue = form.getFieldValue();
fetchUrl = "/api/course_modules/".concat(classroomList.detailCommonHomeworksList.main_category_id, "/add_second_category.json");
_context.next = 4;
return (0,fetch/* default */.ZP)(fetchUrl, {
method: 'post',
body: objectSpread2_default()({}, formValue)
});
case 4:
res = _context.sent;
if (res.status === 0) {
message/* default */.ZP.success('添加成功');
onCallback && onCallback();
dispatch({
type: 'classroomList/setActionTabs',
payload: {}
});
dispatch({
type: 'classroomList/getClassroomLeftMenus',
payload: {
id: params.coursesId
}
});
type = classroomList.actionTabs.selectArrs.type;
id = (res === null || res === void 0 ? void 0 : res.category_id) || 0;
urlList = (_location$pathname = location.pathname) === null || _location$pathname === void 0 ? void 0 : _location$pathname.split('/');
urlList[4] = id;
urlList[3] = type || urlList[3];
url = urlList === null || urlList === void 0 ? void 0 : urlList.join('/');
_umi_production_exports.history.push(url);
}
case 6:
case "end":
return _context.stop();
}
}, _callee);
})),
onCancel: function onCancel() {
dispatch({
type: 'classroomList/setActionTabs',
payload: {}
});
},
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("p", {
className: "tc",
children: /*#__PURE__*/(0,jsx_runtime.jsx)("br", {})
}), classroomList.courseGroups.course_groups && /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z, {
form: form,
initialValues: defineProperty_default()({}, 'name', ''),
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
name: "name",
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
className: "mt30",
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
children: "\u76EE\u5F55\u540D\u79F0\uFF1A"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
flex: '1',
children: /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z, {
defaultValue: ((_actionTabs$selectArr = actionTabs.selectArrs) === null || _actionTabs$selectArr === void 0 ? void 0 : _actionTabs$selectArr.category_name) || ((_actionTabs$selectArr2 = actionTabs.selectArrs) === null || _actionTabs$selectArr2 === void 0 ? void 0 : _actionTabs$selectArr2.name)
})
})]
})
})
})]
});
};
/* harmony default export */ var AddCategory = ((0,_umi_production_exports.connect)(function (_ref4) {
var classroomList = _ref4.classroomList,
loading = _ref4.loading;
return {
classroomList: classroomList,
loading: loading
};
})(PublishShixun));
// 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/button/index.js
var es_button = __webpack_require__(3113);
// 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/_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);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/typography/index.js + 18 modules
var typography = __webpack_require__(49421);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/divider/index.js + 1 modules
var divider = __webpack_require__(28103);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/space/index.js + 3 modules
var space = __webpack_require__(81327);
// EXTERNAL MODULE: ./src/service/shixuns.ts
var shixuns = __webpack_require__(7321);
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/components/JupyterList/index.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var JupyterListmodules = ({"shixunItemWrapper":"shixunItemWrapper___ClCET","checkboxWrapper":"checkboxWrapper___bZ8gF","contentWrapper":"contentWrapper____pt8D","title":"title___tfmFW","desc":"desc___NDuDd","info":"info___mahF7"});
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/components/JupyterList/index.tsx
var Paragraph = typography/* default */.Z.Paragraph;
var JupyterList = function JupyterList(_ref, ref) {
var createShixunParams = _ref.createShixunParams;
var difficultyFilter = [{
name: '全部',
id: '0'
}, {
name: '初级',
id: '1'
}, {
name: '中级',
id: '2'
}, {
name: '中高级',
id: '3'
}, {
name: '高级',
id: '4'
}];
var typeFilter = [{
name: '最热',
id: 'hot'
}, {
name: '最新',
id: 'new'
}];
var _useState = (0,_react_17_0_2_react.useState)('0'),
_useState2 = slicedToArray_default()(_useState, 2),
diff = _useState2[0],
setDiff = _useState2[1];
var _useState3 = (0,_react_17_0_2_react.useState)('hot'),
_useState4 = slicedToArray_default()(_useState3, 2),
type = _useState4[0],
setType = _useState4[1];
var _useState5 = (0,_react_17_0_2_react.useState)([]),
_useState6 = slicedToArray_default()(_useState5, 2),
shixunList = _useState6[0],
setShixunList = _useState6[1];
var listParams = (0,_react_17_0_2_react.useRef)({
page: 1,
order: 'hot',
keyword: '',
shixun_type: 'jupyter',
diff: '0',
limit: 10
});
var getData = /*#__PURE__*/function () {
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee(params, triggerByScroll) {
var res;
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
_context.next = 2;
return (0,shixuns/* getShixunsList */.he)(params);
case 2:
res = _context.sent;
if (res.status) {
_context.next = 8;
break;
}
if (!(res.shixuns.length === 0 && triggerByScroll)) {
_context.next = 7;
break;
}
setHasMore(false);
return _context.abrupt("return");
case 7:
setShixunList(res.shixuns);
case 8:
case "end":
return _context.stop();
}
}, _callee);
}));
return function getData(_x, _x2) {
return _ref2.apply(this, arguments);
};
}();
(0,_react_17_0_2_react.useImperativeHandle)(ref, function () {
return {
search: function search(keyword) {
return getData(objectSpread2_default()(objectSpread2_default()({}, listParams.current), {}, {
keyword: keyword
}));
},
changeKeyWord: function changeKeyWord(keyword) {
return listParams.current.keyword = keyword;
}
};
});
(0,_react_17_0_2_react.useEffect)(function () {
getData(listParams.current);
}, []);
var _useState7 = (0,_react_17_0_2_react.useState)([]),
_useState8 = slicedToArray_default()(_useState7, 2),
checkboxValue = _useState8[0],
setCheckboxValue = _useState8[1];
var handleChange = function handleChange(checkedValue) {
setCheckboxValue(checkedValue);
createShixunParams.current.shixun_ids = checkedValue;
};
var _useState9 = (0,_react_17_0_2_react.useState)(true),
_useState10 = slicedToArray_default()(_useState9, 2),
hasMore = _useState10[0],
setHasMore = _useState10[1];
var handleLoadMore = function handleLoadMore(page) {
getData(objectSpread2_default()(objectSpread2_default()({}, listParams.current), {}, {
page: page
}), true);
};
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
style: {
marginTop: 20,
maxHeight: 200,
overflowY: 'auto',
overflowX: 'hidden'
},
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
justify: "space-between",
style: {
marginBottom: 8
},
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
children: difficultyFilter.map(function (value, index) {
return /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
type: diff === value.id ? 'primary' : 'default',
onClick: function onClick() {
setDiff(value.id);
listParams.current.diff = value.id;
getData(listParams.current);
// setCheckboxValue([]);
// createShixunParams.current.shixun_ids = [];
},
children: value.name
}, index);
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
children: typeFilter.map(function (value, index) {
return /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
className: "mr20",
type: type === value.id ? 'primary' : 'default',
onClick: function onClick() {
setType(value.id);
listParams.current.order = value.id;
getData(listParams.current);
// setCheckboxValue([]);
// createShixunParams.current.shixun_ids = [];
},
children: value.name
}, index);
})
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)((_react_infinite_scroller_1_2_4_react_infinite_scroller_default()), {
initialLoad: false,
pageStart: 1,
threshold: 700,
loadMore: handleLoadMore,
hasMore: hasMore,
useWindow: false,
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_checkbox/* default */.Z.Group, {
onChange: handleChange,
value: checkboxValue,
children: shixunList.map(function (shixunItem) {
var _ref3 = shixunItem || {},
name = _ref3.name,
id = _ref3.id,
description = _ref3.description,
challenge_names = _ref3.challenge_names,
author_name = _ref3.author_name,
author_school_name = _ref3.author_school_name,
level = _ref3.level,
total_stu_num = _ref3.total_stu_num;
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: JupyterListmodules.shixunItemWrapper,
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
align: "middle",
className: JupyterListmodules.checkboxWrapper,
gutter: 14,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_checkbox/* default */.Z, {
value: id
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: JupyterListmodules.title,
children: name
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: JupyterListmodules.contentWrapper,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(Paragraph, {
ellipsis: {
rows: 2
},
className: JupyterListmodules.desc,
style: {
color: '#8e8888'
},
children: description
}), /*#__PURE__*/(0,jsx_runtime.jsx)(row/* default */.Z, {
children: challenge_names.map(function (chanllengeName, index) {
return /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: JupyterListmodules.mission,
children: ["\u7B2C", index + 1, "\u5173", chanllengeName]
}, index);
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)(divider/* default */.Z, {
dashed: true,
style: {
margin: '8px 0'
}
}), /*#__PURE__*/(0,jsx_runtime.jsx)(row/* default */.Z, {
className: JupyterListmodules.info,
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(space/* default */.Z, {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: author_name
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: "|"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: author_school_name
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: "|"
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
children: ["\u96BE\u5EA6\u7CFB\u6570\xA0", level]
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: "|"
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
children: ["\u5B66\u4E60\u4EBA\u6570\xA0", total_stu_num]
})]
})
})]
})]
}, id);
})
})
})]
});
};
/* harmony default export */ var components_JupyterList = (/*#__PURE__*/(0,_react_17_0_2_react.forwardRef)(JupyterList));
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/components/SelectPolls.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var SelectPollsmodules = ({"flex_box_center":"flex_box_center___Cx3ju","flex_space_between":"flex_space_between___rc8Mm","flex_box_vertical_center":"flex_box_vertical_center___6BCc9","flex_box_center_end":"flex_box_center_end___sN3Ig","flex_box_column":"flex_box_column___wjzgd","line1":"line1___cHCBY","form":"form___IMCYE"});
// EXTERNAL MODULE: ./src/components/NoData/index.tsx
var NoData = __webpack_require__(69519);
// EXTERNAL MODULE: ./src/service/classrooms.ts
var classrooms = __webpack_require__(88058);
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/components/SelectPolls.tsx
var TabPane = tabs/* default */.Z.TabPane;
var CuttOffNowShixun = function CuttOffNowShixun(_ref) {
var _tabData;
var shixunHomeworks = _ref.shixunHomeworks,
loading = _ref.loading,
dispatch = _ref.dispatch,
refreshList = _ref.refreshList;
var params = (0,_umi_production_exports.useParams)();
var location = (0,_umi_production_exports.useLocation)();
var _Form$useForm = es_form/* default */.Z.useForm(),
_Form$useForm2 = slicedToArray_default()(_Form$useForm, 1),
form = _Form$useForm2[0];
var brankList = shixunHomeworks.brankList;
var _useState = (0,_react_17_0_2_react.useState)(false),
_useState2 = slicedToArray_default()(_useState, 2),
showNoData = _useState2[0],
setShowNoData = _useState2[1];
var _useState3 = (0,_react_17_0_2_react.useState)(true),
_useState4 = slicedToArray_default()(_useState3, 2),
hasMore = _useState4[0],
setHasMore = _useState4[1];
var _useState5 = (0,_react_17_0_2_react.useState)(false),
_useState6 = slicedToArray_default()(_useState5, 2),
btnLoading = _useState6[0],
setBtnLoading = _useState6[1];
var _useState7 = (0,_react_17_0_2_react.useState)('myself'),
_useState8 = slicedToArray_default()(_useState7, 2),
tabKey = _useState8[0],
setTabKey = _useState8[1];
var _useState9 = (0,_react_17_0_2_react.useState)([]),
_useState10 = slicedToArray_default()(_useState9, 2),
tabData = _useState10[0],
setTabData = _useState10[1];
var _useState11 = (0,_react_17_0_2_react.useState)(),
_useState12 = slicedToArray_default()(_useState11, 2),
isTeacher = _useState12[0],
setisTeacher = _useState12[1];
var _useState13 = (0,_react_17_0_2_react.useState)({
page: 0,
limit: 20,
object_type: 'normal',
search: '',
filter: 'myself'
}),
_useState14 = slicedToArray_default()(_useState13, 2),
query = _useState14[0],
setQuery = _useState14[1];
var tabs = [{
name: '我的资源',
id: 'myself'
}, {
name: '公共资源',
id: 'public'
}, {
name: 'jupyter实训',
id: 'jupyter'
}];
(0,_react_17_0_2_react.useEffect)(function () {
if (shixunHomeworks.actionTabs.key === '题库选用') getData();
}, [shixunHomeworks.actionTabs.key]);
var groupIdsInitialValues = [];
var getData = /*#__PURE__*/function () {
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
var _res$object_list, res;
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
if (!hasMore) {
_context.next = 11;
break;
}
setShowNoData(false);
++query.page;
_context.next = 5;
return dispatch({
type: 'shixunHomeworks/getBrankList',
payload: objectSpread2_default()({}, query)
});
case 5:
res = _context.sent;
tabData = toConsumableArray_default()(tabData.concat(res.object_list));
setisTeacher(res.is_teacher);
if (((_res$object_list = res.object_list) === null || _res$object_list === void 0 ? void 0 : _res$object_list.length) < query.limit) {
setHasMore(false);
} else {
setHasMore(true);
}
setTabData(toConsumableArray_default()(tabData));
if (res.object_list == '' && query.page === 1) {
setShowNoData(true);
}
case 11:
case "end":
return _context.stop();
}
}, _callee);
}));
return function getData() {
return _ref2.apply(this, arguments);
};
}();
var createShixunParams = (0,_react_17_0_2_react.useRef)({
identifier: params.coursesId,
shixun_ids: [],
type: 'normal',
coursesId: params.coursesId
});
var handleCreateShixunHomework = /*#__PURE__*/function () {
var _ref3 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2(params) {
var res;
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
while (1) switch (_context2.prev = _context2.next) {
case 0:
setBtnLoading(true);
_context2.next = 3;
return (0,classrooms/* createShixunHomework */.aQ)(params);
case 3:
res = _context2.sent;
setBtnLoading(false);
if (!res.status) {
// message.success('')
refreshList();
dispatch({
type: 'shixunHomeworks/setActionTabs',
payload: {}
});
}
case 6:
case "end":
return _context2.stop();
}
}, _callee2);
}));
return function handleCreateShixunHomework(_x) {
return _ref3.apply(this, arguments);
};
}();
var searchCallbackRef = (0,_react_17_0_2_react.useRef)();
return /*#__PURE__*/(0,jsx_runtime.jsxs)(modal/* default */.Z, {
centered: true,
title: "\u9009\u7528\u8BFE\u5802\u8D44\u6E90",
destroyOnClose: true,
open: shixunHomeworks.actionTabs.key === '题库选用' ? true : false,
okText: "\u786E\u5B9A",
cancelText: "\u53D6\u6D88",
width: 800,
bodyStyle: {
minHeight: 200
},
okButtonProps: {
loading: btnLoading
},
onOk: /*#__PURE__*/asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee3() {
var formValue, res, _shixunHomeworks$acti;
return regeneratorRuntime_default()().wrap(function _callee3$(_context3) {
while (1) switch (_context3.prev = _context3.next) {
case 0:
if (!(tabKey === 'jupyter')) {
_context3.next = 3;
break;
}
handleCreateShixunHomework(createShixunParams.current);
return _context3.abrupt("return");
case 3:
setBtnLoading(true);
formValue = form.getFieldValue();
_context3.next = 7;
return dispatch({
type: 'shixunHomeworks/saveBanks',
payload: {
course_id: params.coursesId,
object_type: 'normal',
category: params.categoryId,
bank_id: formValue.group_ids
}
});
case 7:
res = _context3.sent;
if ((res === null || res === void 0 ? void 0 : res.status) === 0) {
(0,util/* trackEvent */.L9)(['教学课堂', '图文作业', '选用课堂资源']);
dispatch({
type: 'classroomList/getClassroomLeftMenus',
payload: {
id: params.coursesId
}
});
dispatch({
type: 'shixunHomeworks/setActionTabs',
payload: {}
});
dispatch({
type: 'classroomList/setActionTabs',
payload: {
key: '立即发布',
selectArrs: res.object_ids,
params: (_shixunHomeworks$acti = shixunHomeworks.actionTabs) === null || _shixunHomeworks$acti === void 0 ? void 0 : _shixunHomeworks$acti.params
}
});
}
setBtnLoading(false);
case 10:
case "end":
return _context3.stop();
}
}, _callee3);
})),
onCancel: function onCancel() {
dispatch({
type: 'shixunHomeworks/setActionTabs',
payload: {}
});
},
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
span: 12,
children: tabs.map(function (item, key) {
return /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
shape: "round",
type: tabKey === item.id ? 'primary' : 'default',
className: "mr10",
onClick: ( /*#__PURE__*/function () {
var _ref5 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee4(event) {
return regeneratorRuntime_default()().wrap(function _callee4$(_context4) {
while (1) switch (_context4.prev = _context4.next) {
case 0:
if (!(item.id === 'jupyter')) {
_context4.next = 3;
break;
}
setTabKey(item.id);
return _context4.abrupt("return");
case 3:
tabData = [];
hasMore = true;
query.page = 0;
query.search = '';
query.filter = item.id;
getData();
setTabKey(item.id);
case 10:
case "end":
return _context4.stop();
}
}, _callee4);
}));
return function (_x2) {
return _ref5.apply(this, arguments);
};
}()),
children: item.name
}, key);
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
span: 12,
className: "tr",
children: /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z.Search, {
placeholder: "\u8F93\u5165\u6807\u9898\u3001\u9002\u7528\u8BFE\u7A0B\u8FDB\u884C\u641C\u7D22",
onChange: function onChange(e) {
if (tabKey === 'jupyter') {
var _searchCallbackRef$cu;
(_searchCallbackRef$cu = searchCallbackRef.current) === null || _searchCallbackRef$cu === void 0 || _searchCallbackRef$cu.changeKeyWord(e.target.value);
}
},
onSearch: function onSearch(value) {
if (tabKey === 'jupyter') {
var _searchCallbackRef$cu2;
(_searchCallbackRef$cu2 = searchCallbackRef.current) === null || _searchCallbackRef$cu2 === void 0 || _searchCallbackRef$cu2.search(value);
return;
}
hasMore = true;
query.search = value;
query.page = 0;
tabData = [];
getData();
},
style: {
width: 260
}
})
})]
}), tabKey === 'myself' && /*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
className: "tc mt10",
children: ["\u9009\u7528\u5BF9\u8C61\uFF1A\u4F60\u5728\u8BFE\u5802\u56FE\u6587\u4F5C\u4E1A\u5217\u8868\u4E2D\u5DF2", /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "c-orange",
children: "\u6536\u85CF"
}), "\u7684\u56FE\u6587\u4F5C\u4E1A"]
}), tabKey === 'public' && /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
className: "tc mt10",
children: "\u9009\u7528\u5BF9\u8C61\uFF1A\u9898\u5E93\u4E2D\u5DF2\u8BBE\u7F6E\u6210\u516C\u5171\u5C5E\u6027\u7684\u6240\u6709\u56FE\u6587\u4F5C\u4E1A"
}), tabKey === 'jupyter' ? /*#__PURE__*/(0,jsx_runtime.jsx)(components_JupyterList, {
createShixunParams: createShixunParams,
ref: searchCallbackRef
}) : /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
style: {
background: '#F4FAFF',
maxHeight: 200,
overflow: 'auto',
padding: '20px 10px'
},
children: [!isTeacher && tabKey === 'public' && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
style: {
display: 'flex',
flexDirection: 'column',
paddingTop: '30px',
alignItems: 'center',
justifyContent: 'center'
},
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: "\u901A\u8FC7\u804C\u4E1A\u8BA4\u8BC1\u7684\u6559\u5E08\u624D\u80FD\u8BBF\u95EE\u516C\u5171\u8BFE\u7A0B\u8D44\u6E90\u5E93"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("p", {
style: {
cursor: 'pointer',
background: '#ff6800',
height: '30px',
textAlign: 'center',
marginTop: '5px',
padding: '5px 0px',
color: '#fff',
width: '80px'
},
onClick: function onClick() {
window.open("/account/certification");
},
children: "\u7ACB\u5373\u8BA4\u8BC1"
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)((_react_infinite_scroller_1_2_4_react_infinite_scroller_default()), {
initialLoad: false,
pageStart: 0,
threshold: 700,
loadMore: function loadMore() {
setHasMore(false);
getData();
},
hasMore: hasMore,
useWindow: false,
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(es_form/* default */.Z, {
form: form,
initialValues: defineProperty_default()({}, 'group_ids', groupIdsInitialValues),
className: SelectPollsmodules.form,
onChange: function onChange(value) {
var formValue = form.getFieldValue();
groupIdsInitialValues = formValue;
},
children: [tabData == '' && /*#__PURE__*/(0,jsx_runtime.jsx)(NoData/* default */.Z, {
styles: {
margin: '10px auto'
}
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
name: "group_ids",
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_checkbox/* default */.Z.Group, {
style: {
width: '100%'
},
className: "font14",
children: (_tabData = tabData) === null || _tabData === void 0 ? void 0 : _tabData.map(function (v, k) {
return /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
flex: "2",
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_checkbox/* default */.Z, {
onChange: function onChange(e) {},
value: String(v.id),
defaultChecked: true,
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: ['c-black', SelectPollsmodules.line1].join(' '),
children: v.name
})
}, k)
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
flex: "1",
className: "c-black",
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: SelectPollsmodules.line1,
children: v === null || v === void 0 ? void 0 : v.course_list_name
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
flex: "50px",
className: "c-black",
children: tabKey === 'public' && (0,authority/* isSuperAdmins */.Ny)() ? /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "c-blue current",
onClick: function onClick() {
window.open("/users/innov/topics/".concat(v.id, "/personal/normal/edit"));
},
children: "\u7F16\u8F91"
}) : tabKey === 'myself' ? /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "c-blue current",
onClick: function onClick() {
window.open("/users/innov/topics/".concat(v.id, "/personal/normal/edit"));
},
children: "\u7F16\u8F91"
}) : v === null || v === void 0 ? void 0 : v.username
})]
}, k);
})
})
})]
})
})]
})]
});
};
/* harmony default export */ var SelectPolls = ((0,_umi_production_exports.connect)(function (_ref7) {
var shixunHomeworks = _ref7.shixunHomeworks,
loading = _ref7.loading;
return {
shixunHomeworks: shixunHomeworks,
loading: loading
};
})(CuttOffNowShixun));
// EXTERNAL MODULE: ./src/service/shixunHomeworks.ts
var shixunHomeworks = __webpack_require__(91045);
// EXTERNAL MODULE: ./src/components/MultiUpload/index.tsx + 3 modules
var MultiUpload = __webpack_require__(40985);
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/components/AfterAppendix.tsx
var AfterAppendix_PublishShixun = function PublishShixun(_ref) {
var classroomList = _ref.classroomList,
loading = _ref.loading,
dispatch = _ref.dispatch;
var params = (0,_umi_production_exports.useParams)();
var _Form$useForm = es_form/* default */.Z.useForm(),
_Form$useForm2 = slicedToArray_default()(_Form$useForm, 1),
form = _Form$useForm2[0];
return /*#__PURE__*/(0,jsx_runtime.jsx)(modal/* default */.Z, {
centered: true,
title: "\u8865\u4EA4\u9644\u4EF6",
open: classroomList.actionTabs.key === '补交附件' ? true : false,
bodyStyle: {
minHeight: 200
},
onOk: /*#__PURE__*/asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
var _formValue$attachment;
var formValue, selectArrs, res;
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
_context.next = 2;
return form.validateFields();
case 2:
formValue = objectSpread2_default()({}, form.getFieldValue());
selectArrs = classroomList.actionTabs.selectArrs;
formValue.attachment_ids = (_formValue$attachment = formValue.attachment_ids) === null || _formValue$attachment === void 0 ? void 0 : _formValue$attachment.map(function (item) {
return item.response.id;
});
_context.next = 7;
return (0,shixunHomeworks/* reviseAttachment */.mz)(objectSpread2_default()(objectSpread2_default()({}, formValue), {}, {
homeworkId: selectArrs.work_id
}));
case 7:
res = _context.sent;
if (res.status === 0) {
// history.push(`/classrooms/${params.coursesId}/common_homework/${selectArrs.homework_id}/review/${selectArrs.work_id}`)
form.resetFields();
dispatch({
type: 'classroomList/setActionTabs',
payload: {}
});
}
case 9:
case "end":
return _context.stop();
}
}, _callee);
})),
onCancel: function onCancel() {
form.resetFields();
dispatch({
type: 'classroomList/setActionTabs',
payload: {}
});
},
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(es_form/* default */.Z, {
form: form,
initialValues: {},
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
name: "attachment_ids",
rules: [{
required: true,
message: "请上传附件"
}],
children: /*#__PURE__*/(0,jsx_runtime.jsx)(MultiUpload/* default */.Z, {})
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
name: "description",
children: /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z.TextArea, {
placeholder: "\u8BF7\u5728\u6B64\u8F93\u5165\u8865\u4EA4\u9644\u4EF6\u7684\u539F\u56E0\uFF0C\u6700\u5927\u9650\u5236100\u4E2A\u5B57\u7B26",
rows: 7
})
})]
})
});
};
/* harmony default export */ var AfterAppendix = ((0,_umi_production_exports.connect)(function (_ref3) {
var classroomList = _ref3.classroomList,
loading = _ref3.loading;
return {
classroomList: classroomList,
loading: loading
};
})(AfterAppendix_PublishShixun));
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/menu/index.js + 11 modules
var es_menu = __webpack_require__(20834);
// 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/tooltip/index.js + 3 modules
var tooltip = __webpack_require__(6848);
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/components/TabMenu/index.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var TabMenumodules = ({"tabMenuContainer":"tabMenuContainer___Sxna3","control":"control___ka76r","iconH":"iconH___GpOCh","selectBtn":"selectBtn___KJw1e"});
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/components/TabMenu/index.tsx
var TabMenu = function TabMenu(_ref) {
var isLoading = _ref.isLoading,
addText = _ref.addText,
tabDataSource = _ref.tabDataSource,
isAdmin = _ref.isAdmin,
dispatch = _ref.dispatch,
type = _ref.type,
TooltipTitle = _ref.TooltipTitle,
categoryId = _ref.categoryId,
dropdownMenu = _ref.dropdownMenu,
classroomList = _ref.classroomList,
isShowRightControl = _ref.isShowRightControl,
defaultSelectedKeys = _ref.defaultSelectedKeys,
onTabMenuClick = _ref.onTabMenuClick,
onTooltipTitleClick = _ref.onTooltipTitleClick,
onDropdownMenuClick = _ref.onDropdownMenuClick;
/**
* 渲染菜单
*/
var getDropdownMenu = function getDropdownMenu() {
return /*#__PURE__*/(0,jsx_runtime.jsx)(es_menu/* default */.Z, {
onClick: function onClick(_ref2) {
var key = _ref2.key;
return onDropdownMenuClick(key);
},
children: dropdownMenu.map(function (item) {
return /*#__PURE__*/(0,jsx_runtime.jsx)(es_menu/* default */.Z.Item, {
children: item.name
}, item.id);
})
});
};
var params = (0,_umi_production_exports.useParams)();
return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: TabMenumodules.tabMenuContainer,
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(col/* default */.Z, {
flex: "1",
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_menu/* default */.Z, {
mode: "horizontal",
selectedKeys: defaultSelectedKeys,
children: tabDataSource.map(function (item) {
return /*#__PURE__*/(0,jsx_runtime.jsxs)(es_menu/* default */.Z.Item, {
onClick: function onClick() {
return !isLoading ? onTabMenuClick(item) : {};
},
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "c-grey-666 ".concat(isAdmin ? 'mr20' : ''),
children: item.name
}), item.total !== undefined && /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "c-grey-999",
children: item.total || 0
})]
}, item.id);
})
})
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(col/* default */.Z, {
className: "gutter-row",
style: {
display: 'flex',
alignItems: 'center',
color: '#0152d9',
paddingBottom: 3
},
children: [isAdmin && /*#__PURE__*/(0,jsx_runtime.jsx)(dropdown/* default */.Z, {
className: "mr10",
placement: "bottom",
arrow: true,
dropdownRender: function dropdownRender() {
return /*#__PURE__*/(0,jsx_runtime.jsxs)(es_menu/* default */.Z, {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_menu/* default */.Z.Item, {
onClick: function onClick() {
dispatch({
type: 'classroomList/setActionTabs',
payload: {
key: '导出成绩',
type: type,
exportType: 'hack',
category_id: params.categoryId
}
});
},
children: "\u5B66\u751F\u6210\u7EE9"
}, 1), /*#__PURE__*/(0,jsx_runtime.jsx)(es_menu/* default */.Z.Item, {
onClick: function onClick() {
_umi_production_exports.history.push("/classrooms/".concat(params === null || params === void 0 ? void 0 : params.coursesId, "/exportlist/hack_work_list"));
},
children: "\u5386\u53F2\u5BFC\u51FA"
}, 3)]
});
},
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
style: {
color: '#666666',
cursor: 'pointer'
},
children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "iconfont icon-xiazai6"
})
})
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
style: {
marginLeft: 8,
cursor: 'pointer'
},
onClick: function onClick() {
_umi_production_exports.history.push("/classrooms/".concat(params.coursesId, "/program_homework/ranking"));
},
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
title: "\u6392\u884C\u699C",
children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "iconfont icon-paihang mr5",
style: {
color: "#666666"
}
})
}), " "]
}), isAdmin && isShowRightControl && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: TabMenumodules.control,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "c-blue font16 current",
style: {
marginLeft: 20,
marginRight: 20
},
onClick: onTooltipTitleClick,
children: /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
title: TooltipTitle,
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: !categoryId ? "".concat(TabMenumodules.iconH, " iconfont icon-xinjianmulu1") : "".concat(TabMenumodules.iconH, " iconfont icon-zhongmingmingmulu")
})
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)(dropdown/* default */.Z, {
className: "ml10",
dropdownRender: getDropdownMenu,
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
onClick: function onClick() {
// onDropdownMenuClick('1')
},
className: TabMenumodules.selectBtn,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "iconfont icon-tianjiadaohang"
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: addText ? addText : '新建作业'
})]
})
})]
})]
})]
})
});
};
/* harmony default export */ var components_TabMenu = (TabMenu);
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/components/SearchSortController/index.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var SearchSortControllermodules = ({"searchSortControllerContainer":"searchSortControllerContainer___tQmMS","btn":"btn___ECfiD","btnSort":"btnSort___Y5Oja","tips":"tips___fhrLg"});
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/components/SearchSortController/index.tsx
var SearchSortController = function SearchSortController(_ref) {
var isAdmin = _ref.isAdmin,
dataSource = _ref.dataSource,
batchStatus = _ref.batchStatus,
SortMenuName = _ref.SortMenuName,
setSortMenuName = _ref.setSortMenuName,
onSearch = _ref.onSearch,
onSort = _ref.onSort,
onBatch = _ref.onBatch;
// const [SortMenuName, setSortMenuName] = useState('默认排序');
var SortMenus = isAdmin ? [{
name: '默认排序',
type: 'position',
direction: 'desc'
}, {
name: '创建时间升序',
type: 'created_at',
direction: 'asc'
}, {
name: '创建时间降序',
type: 'created_at',
direction: 'desc'
}, {
name: '更新时间升序',
type: 'updated_at',
direction: 'asc'
}, {
name: '更新时间降序',
type: 'updated_at',
direction: 'desc'
}, {
name: '作业名称升序',
type: 'name_pinyin',
direction: 'asc'
}, {
name: '作业名称降序',
type: 'name_pinyin',
direction: 'desc'
}] : [{
name: '默认排序',
type: 'position',
direction: 'desc'
}, {
name: '按发布时间升序',
type: 'created_at',
direction: 'asc'
}, {
name: '按发布时间降序',
type: 'created_at',
direction: 'desc'
}, {
name: '按截止时间升序',
type: 'updated_at',
direction: 'asc'
}, {
name: '按截止时间降序',
type: 'updated_at',
direction: 'desc'
}, {
name: '作业名称升序',
type: 'name_pinyin',
direction: 'asc'
}, {
name: '作业名称降序',
type: 'name_pinyin',
direction: 'desc'
}];
/**
* 排序点击事件
*/
var sortClick = function sortClick(data) {
setSortMenuName(data.name);
onSort(data);
};
// 默认排序
var isDefault = SortMenuName === '默认排序';
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: SearchSortControllermodules.searchSortControllerContainer,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: /*#__PURE__*/(0,jsx_runtime.jsx)(dropdown/* default */.Z, {
dropdownRender: function dropdownRender() {
return /*#__PURE__*/(0,jsx_runtime.jsx)(es_menu/* default */.Z, {
selectedKeys: [SortMenuName],
children: SortMenus.map(function (item) {
return /*#__PURE__*/(0,jsx_runtime.jsx)(es_menu/* default */.Z.Item, {
onClick: function onClick() {
return sortClick(item);
},
children: item.name
}, item.name);
})
});
},
children: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: "".concat(SearchSortControllermodules.btn, " ").concat(isDefault ? SearchSortControllermodules.btnSort : ''),
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "iconfont icon-paixu font14 mr5"
}), SortMenuName]
})
})
})
}), isDefault && /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, {
title: "\u4F18\u5148\u6309\u7167\u8C03\u6574\u6392\u5E8F\u7ED3\u679C\u5C55\u793A\uFF0C\u672A\u8BBE\u7F6E\u6392\u5E8F\u65F6\uFF0C\u6309\u7167\u521B\u5EFA\u65F6\u95F4\u964D\u5E8F\u6392\u5217",
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: SearchSortControllermodules.tips,
children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "iconfont icon-a-wenhaobeifen2"
})
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z.Search, {
allowClear: true,
placeholder: "\u8BF7\u8F93\u5165\u540D\u79F0\u8FDB\u884C\u641C\u7D22",
onSearch: onSearch,
style: {
width: 220,
marginLeft: 'auto'
}
})]
});
};
/* harmony default export */ var components_SearchSortController = (SearchSortController);
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/components/BottomControl/index.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var BottomControlmodules = ({"bottomControlContainer":"bottomControlContainer___kLlgA","buttonWrap":"buttonWrap___vOH3N","moveCategory":"moveCategory___lgwfd"});
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.3.6@@ant-design/icons/es/icons/DownOutlined.js + 1 modules
var DownOutlined = __webpack_require__(8876);
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/components/BottomControl/index.tsx
var BottomControl = function BottomControl(_ref) {
var buttonDataSource = _ref.buttonDataSource,
_onClick = _ref.onClick;
var _useContext = (0,_react_17_0_2_react.useContext)(CommonHomeworkContext),
allSelect = _useContext.allSelect,
setAllSelect = _useContext.setAllSelect,
setSelectArrs = _useContext.setSelectArrs,
dataSource = _useContext.dataSource,
selectArrs = _useContext.selectArrs,
useBatchStatus = _useContext.useBatchStatus,
dispatch = _useContext.dispatch,
params = _useContext.params,
getData = _useContext.getData,
detailLeftMenus = _useContext.detailLeftMenus,
main_category_id = _useContext.main_category_id,
setSelectArrsAll = _useContext.setSelectArrsAll;
var courseModules;
var _useState = (0,_react_17_0_2_react.useState)(false),
_useState2 = slicedToArray_default()(_useState, 2),
moveVisible = _useState2[0],
setMoveVisible = _useState2[1];
var _useState3 = (0,_react_17_0_2_react.useState)(''),
_useState4 = slicedToArray_default()(_useState3, 2),
keyword = _useState4[0],
setKeyword = _useState4[1];
var onChecked = function onChecked(event) {
setAllSelect(event.target.checked);
setSelectArrs(event.target.checked ? dataSource.map(function (item) {
return item.homework_id;
}) : []);
if (event.target.checked) {
setSelectArrsAll(toConsumableArray_default()(dataSource));
} else {
setSelectArrsAll([]);
}
};
var onStartSort = function onStartSort() {
var payload = {
courseId: params['id'],
container_type: 'program_homework'
};
if (params.categoryId) {
payload.category_id = params.categoryId;
}
dispatch({
type: 'classroomList/getAllTaskList',
payload: payload
});
dispatch({
type: 'classroomList/setActionTabs',
payload: {
key: '调整排序'
}
});
};
if (detailLeftMenus.course_modules) {
courseModules = detailLeftMenus.course_modules.filter(function (v) {
return v.type === 'program_homework';
})[0];
}
var menu = /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: BottomControlmodules.moveCategory,
onMouseLeave: function onMouseLeave(e) {
return setMoveVisible(false);
}
// onMouseOut={e => setMoveVisible(false)}
,
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(es_menu/* default */.Z
// onMouseLeave={e => setMoveVisible(false)}
// onMouseOut={e => setMoveVisible(false)}
, {
onClick: ( /*#__PURE__*/function () {
var _ref3 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee(_ref2) {
var item, key, keyPath, domEvent, res;
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
item = _ref2.item, key = _ref2.key, keyPath = _ref2.keyPath, domEvent = _ref2.domEvent;
if (!(selectArrs == '')) {
_context.next = 4;
break;
}
message/* default */.ZP.error('请选择你要操作的任务');
return _context.abrupt("return", null);
case 4:
_context.next = 6;
return (0,fetch/* default */.ZP)("/api/courses/".concat(params.id, "/homework_commons/move_to_category.json"), {
method: 'post',
body: {
homework_ids: selectArrs,
new_category_id: key
}
});
case 6:
res = _context.sent;
if (res.status === 0) {
message/* default */.ZP.success('操作成功');
useBatchStatus(false);
getData();
dispatch({
type: 'classroomList/getClassroomLeftMenus',
payload: {
id: params.coursesId
}
});
}
case 8:
case "end":
return _context.stop();
}
}, _callee);
}));
return function (_x) {
return _ref3.apply(this, arguments);
};
}()),
style: {
maxHeight: 300,
width: 240,
overflow: 'auto'
},
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("li", {
className: "ant-menu-item multi-llipsis1e ant-menu-item-only-child",
children: /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z, {
onChange: function onChange(e) {
setKeyword(e.target.value);
}
})
}), courseModules && courseModules['second_category'].filter(function (r) {
return r.category_name !== '未分配目录';
}).map(function (item, key) {
var _item$third_category;
if (keyword !== '' && item.category_name.indexOf(keyword) < 0) {
return;
}
return /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_menu/* default */.Z.Item, {
className: "multi-llipsis1e",
children: item.category_name
}, item.category_id), item === null || item === void 0 || (_item$third_category = item.third_category) === null || _item$third_category === void 0 ? void 0 : _item$third_category.map(function (val) {
return /*#__PURE__*/(0,jsx_runtime.jsx)(es_menu/* default */.Z.Item, {
style: {
marginLeft: 20
},
className: "multi-llipsis1e",
children: val.category_name
}, val.category_id);
})]
});
}), /*#__PURE__*/(0,jsx_runtime.jsx)("li", {
className: "ant-menu-item multi-llipsis1e ant-menu-item-only-child",
onClick: function onClick(e) {
e.preventDefault();
dispatch({
type: 'classroomList/setActionTabs',
payload: {
key: '添加目录',
params: params,
selectArrs: {
category_id: main_category_id,
type: 'program_homework'
}
}
});
},
children: "\u65B0\u5EFA\u5B50\u76EE\u5F55..."
})]
})
});
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: BottomControlmodules.bottomControlContainer,
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(es_checkbox/* default */.Z, {
checked: allSelect,
onChange: onChecked,
children: ["\u5168\u9009\u672C\u9875\uFF08", selectArrs.length, "\uFF09"]
})
}), (0,authority/* isAdmin */.GJ)() && buttonDataSource.map(function (item) {
return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
type: "primary",
icon: item.icon,
className: BottomControlmodules.buttonWrap,
onClick: function onClick() {
return _onClick(item);
},
children: item.name
})
}, item.key);
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
type: "primary",
onClick: onStartSort,
icon: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "iconfont icon-tiaozhengpaixu2"
}),
className: BottomControlmodules.buttonWrap,
children: "\u8C03\u6574\u6392\u5E8F"
})
}), (0,authority/* isAdmin */.GJ)() && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: /*#__PURE__*/(0,jsx_runtime.jsx)(dropdown/* default */.Z, {
open: moveVisible,
placement: "topLeft",
dropdownRender: function dropdownRender() {
return menu;
},
getPopupContainer: function getPopupContainer(trigger) {
return trigger.parentNode;
},
children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "ant-dropdown-link",
onMouseEnter: function onMouseEnter(e) {
return setMoveVisible(true);
},
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
type: "primary",
className: BottomControlmodules.buttonWrap,
style: {
position: "relative",
zIndex: 999
},
icon: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "iconfont icon-yidongmulu"
}),
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
children: ["\u79FB\u52A8\u5230\u76EE\u5F55 ", /*#__PURE__*/(0,jsx_runtime.jsx)(DownOutlined/* default */.Z, {})]
})
})
})
})
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
type: "primary",
ghost: true,
onClick: function onClick() {
useBatchStatus(false);
setSelectArrs([]);
},
children: "\u53D6\u6D88\u64CD\u4F5C"
})
})]
});
};
/* harmony default export */ var components_BottomControl = (BottomControl);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/table/index.js + 85 modules
var table = __webpack_require__(52306);
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/components/List/index.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var Listmodules = ({"listContainer":"listContainer___vU05G","info":"info___fXyuU","title":"title___fItHS","left":"left___MFkuv","right":"right___JT8Xj","flexBox":"flexBox___n8e_m","detail":"detail___HXdq0","iconV":"iconV___CwPu5","shixunTag":"shixunTag___oYTPp"});
// EXTERNAL MODULE: ./src/components/TooltipTags/index.tsx
var TooltipTags = __webpack_require__(63740);
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/components/List/index.tsx
var List = function List(_ref) {
var _params, _dataSource$status, _dataSource$status2, _dataSource$status3, _dataSource$status5, _dataSource$status6, _dataSource$status7, _dataSource$status8, _dataSource$status9, _dataSource$status10, _dataSource$status11, _dataSource$status12;
var dataSource = _ref.dataSource,
elseParams = _ref.params,
classroomList = _ref.classroomList,
manageAllGroup = _ref.manageAllGroup;
var _useContext = (0,_react_17_0_2_react.useContext)(CommonHomeworkContext),
batchStatus = _useContext.batchStatus,
selectArrs = _useContext.selectArrs,
setSelectArrs = _useContext.setSelectArrs,
selectArrsAll = _useContext.selectArrsAll,
setSelectArrsAll = _useContext.setSelectArrsAll,
dispatch = _useContext.dispatch;
var params = (0,_umi_production_exports.useParams)();
var _useState = (0,_react_17_0_2_react.useState)(false),
_useState2 = slicedToArray_default()(_useState, 2),
isshow = _useState2[0],
setisshow = _useState2[1];
var _useState3 = (0,_react_17_0_2_react.useState)([]),
_useState4 = slicedToArray_default()(_useState3, 2),
lists = _useState4[0],
setlists = _useState4[1];
params = objectSpread2_default()(objectSpread2_default()(objectSpread2_default()({}, elseParams), params), {}, {
category: (_params = params) === null || _params === void 0 ? void 0 : _params.categoryId
});
(0,_react_17_0_2_react.useEffect)(function () {
setlists([]);
setisshow(false);
}, []);
var columns = [{
title: '班级',
dataIndex: 'course_group_name',
key: 'course_group_name'
}, {
title: '状态',
dataIndex: 'status',
key: 'status',
width: 80,
filters: [{
text: '未开始',
value: '未开始'
}, {
text: '提交中',
value: '提交中'
}, {
text: '补交中',
value: '补交中'
}, {
text: '已截止',
value: '已截止'
}, {
text: '未发布',
value: '未发布'
}
// {
// text: '匿评中',
// value: '匿评中',
// },
// {
// text: '申诉中',
// value: '申诉中',
// },
],
onFilter: function onFilter(value, record) {
return record.status.indexOf(value) === 0;
}
}, {
title: '提交情况',
dataIndex: 'statistics',
key: 'statistics',
width: 80,
render: function render(v) {
var _v$split, _v$split2;
return v === '--' ? v : /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: v === null || v === void 0 || (_v$split = v.split('/')) === null || _v$split === void 0 ? void 0 : _v$split[0]
}), "\xA0/\xA0", /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: v === null || v === void 0 || (_v$split2 = v.split('/')) === null || _v$split2 === void 0 ? void 0 : _v$split2[1]
})]
});
}
}, {
title: '发布时间',
dataIndex: 'publish_time',
key: 'publish_time',
sorter: true,
showSorterTooltip: false,
sortOrder: params.sort_by === 'publish_time' ? params.sort_direction === 'desc' ? 'descend' : 'ascend' : null
}, {
title: '截止时间',
dataIndex: 'end_time',
key: 'end_time',
sorter: true,
showSorterTooltip: false,
sortOrder: params.sort_by === 'end_time' ? params.sort_direction === 'desc' ? 'descend' : 'ascend' : null
}, {
title: '补交时间',
dataIndex: 'late_time',
key: 'late_time',
sorter: true,
showSorterTooltip: false,
sortOrder: params.sort_by === 'late_time' ? params.sort_direction === 'desc' ? 'descend' : 'ascend' : null
}, {
title: '分班老师',
dataIndex: 'teachers',
key: 'teachers',
width: 150,
ellipsis: {
showTitle: false
},
render: function render(v) {
return v === '--' || !v ? '--' : /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
title: v,
children: v
});
}
}];
function getlist() {
return _getlist.apply(this, arguments);
}
function _getlist() {
_getlist = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee8() {
var res;
return regeneratorRuntime_default()().wrap(function _callee8$(_context8) {
while (1) switch (_context8.prev = _context8.next) {
case 0:
_context8.next = 2;
return (0,fetch/* default */.ZP)("/api/homework_commons/".concat(dataSource.homework_id, "/group_settings_statistics.json"), {
method: 'get',
params: objectSpread2_default()({}, params)
});
case 2:
res = _context8.sent;
setlists(res.data);
case 4:
case "end":
return _context8.stop();
}
}, _callee8);
}));
return _getlist.apply(this, arguments);
}
var onChecked = function onChecked(key) {
if (selectArrs.includes(key)) {
setSelectArrs(selectArrs.filter(function (value) {
return value !== key;
}));
setSelectArrsAll(selectArrsAll.filter(function (val) {
return val.homework_id !== key;
}));
} else {
setSelectArrs([].concat(toConsumableArray_default()(selectArrs), [key]));
setSelectArrsAll([].concat(toConsumableArray_default()(selectArrsAll), [dataSource]));
}
};
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: Listmodules.listContainer,
onClick: function onClick(event) {
event.stopPropagation();
if ((0,authority/* isStudent */.dE)()) {
(0,util/* openNewWindow */.xg)("/classrooms/".concat(params.coursesId, "/program_homework/").concat(dataSource.homework_id, "/detail?tabs=1"));
} else {
(0,util/* openNewWindow */.xg)("/classrooms/".concat(params.coursesId, "/program_homework/").concat(dataSource.homework_id, "/detail"));
}
},
children: [(0,authority/* isAdmin */.GJ)() && /*#__PURE__*/(0,jsx_runtime.jsx)(es_checkbox/* default */.Z, {
onClick: function onClick(e) {
e.stopPropagation();
},
style: {
margin: '11px 0 0 10px'
},
checked: selectArrs.includes(dataSource.homework_id),
onChange: function onChange() {
return onChecked(dataSource.homework_id);
}
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: Listmodules.info,
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: Listmodules.title,
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: Listmodules.left,
style: (0,authority/* isStudent */.dE)() ? {
paddingRight: (dataSource === null || dataSource === void 0 ? void 0 : dataSource.challenge_count) - (dataSource === null || dataSource === void 0 ? void 0 : dataSource.finished_challenge_count) ? 60 : 140
} : {},
children: [(0,authority/* isAdmin */.GJ)() && /*#__PURE__*/(0,jsx_runtime.jsx)(TooltipTags/* default */.Z, {
value: (_dataSource$status = dataSource.status) === null || _dataSource$status === void 0 ? void 0 : _dataSource$status[0],
children: /*#__PURE__*/(0,jsx_runtime.jsx)(util/* StatusClassroomsTags */.VV, {
temporary: true,
style: {
margin: '0px 10px 0px 0px'
},
status: dataSource.status
})
}), (0,authority/* isStudent */.dE)() && /*#__PURE__*/(0,jsx_runtime.jsx)(util/* StatusClassroomsTags */.VV, {
temporary: true,
style: {
margin: '0px 10px 0px 0px'
},
status: dataSource.status
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
onClick: function onClick(event) {
return event.stopPropagation();
},
children: /*#__PURE__*/(0,jsx_runtime.jsx)(_umi_production_exports.Link, {
target: '_blank',
to: "/classrooms/".concat(params.coursesId, "/program_homework/").concat(dataSource.homework_id, "/detail").concat((0,authority/* isStudent */.dE)() ? '?tabs=1' : ''),
children: dataSource.name
})
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: Listmodules.right,
children: [(0,authority/* isAdmin */.GJ)() && dataSource.status === '未发布' && /*#__PURE__*/(0,jsx_runtime.jsx)(_umi_production_exports.Link, {
target: "_blank",
to: "/",
onClick: ( /*#__PURE__*/function () {
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee(e) {
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
e.stopPropagation();
e.preventDefault();
dispatch({
type: 'classroomList/setActionTabs',
payload: {
key: '立即发布',
selectArrs: [dataSource === null || dataSource === void 0 ? void 0 : dataSource.homework_id],
selectArrsAll: [dataSource],
params: objectSpread2_default()({}, params),
type: 2
}
});
case 3:
case "end":
return _context.stop();
}
}, _callee);
}));
return function (_x) {
return _ref2.apply(this, arguments);
};
}()),
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
className: Listmodules.flexBox,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "iconfont icon-yishezhifabushijian1"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: "\u53D1\u5E03"
})]
})
}), (0,authority/* isStudent */.dE)() && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: Listmodules.actionIcon,
children: [(dataSource === null || dataSource === void 0 ? void 0 : dataSource.challenge_count) - (dataSource === null || dataSource === void 0 ? void 0 : dataSource.finished_challenge_count) === 0 && /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "iconfont icon-yiwancheng1"
}), !((_dataSource$status2 = dataSource.status) !== null && _dataSource$status2 !== void 0 && _dataSource$status2.includes('已截止')) && /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
onClick: ( /*#__PURE__*/function () {
var _ref3 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2(e) {
var res;
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
while (1) switch (_context2.prev = _context2.next) {
case 0:
e.stopPropagation();
_context2.next = 3;
return (0,fetch/* default */.ZP)("/api/problems/".concat(dataSource === null || dataSource === void 0 ? void 0 : dataSource.start_identifier, "/start.json"), {
method: 'get'
});
case 3:
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, dataSource.homework_id]);
}
// openNewWindow(
// `/classrooms/${params.coursesId}/program_homework/${
// dataSource.homework_id
// }/detail${isStudent() ? '?tabs=1' : ''}`,
// );
case 5:
case "end":
return _context2.stop();
}
}, _callee2);
}));
return function (_x2) {
return _ref3.apply(this, arguments);
};
}()),
className: Listmodules.flexBox,
style: {
marginRight: 10
},
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "iconfont icon-kaishixuexi font14"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: "\u5F00\u59CB\u5B66\u4E60"
})]
}), ((_dataSource$status3 = dataSource.status) === null || _dataSource$status3 === void 0 ? void 0 : _dataSource$status3.includes('已截止')) && /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
className: Listmodules.flexBox,
style: {
marginRight: 10
},
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "iconfont icon-chakanzuoye font14"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: "\u67E5\u770B\u4F5C\u4E1A"
})]
})]
}), (0,authority/* isAdmin */.GJ)() && /*#__PURE__*/(0,jsx_runtime.jsx)(dropdown/* default */.Z, {
placement: "bottomCenter",
overlayClassName: Listmodules.dro,
dropdownRender: function dropdownRender() {
return /*#__PURE__*/(0,jsx_runtime.jsxs)(es_menu/* default */.Z, {
children: [!dataSource.status.includes('导入') && /*#__PURE__*/(0,jsx_runtime.jsx)(es_menu/* default */.Z.Item, {
style: {
textAlign: 'center'
},
children: /*#__PURE__*/(0,jsx_runtime.jsx)(_umi_production_exports.Link, {
target: "_blank",
to: "/",
onClick: ( /*#__PURE__*/function () {
var _ref4 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee3(e) {
var _classroomList$Assist;
return regeneratorRuntime_default()().wrap(function _callee3$(_context3) {
while (1) switch (_context3.prev = _context3.next) {
case 0:
e.stopPropagation();
e.preventDefault();
if (!((0,authority/* isAssistant */.Rm)() && !((_classroomList$Assist = classroomList.AssistantObject) !== null && _classroomList$Assist !== void 0 && (_classroomList$Assist = _classroomList$Assist.hack) !== null && _classroomList$Assist !== void 0 && _classroomList$Assist.can_publish))) {
_context3.next = 5;
break;
}
message/* default */.ZP.warning('您未获取此权限,需向管理员申请权限才能使用此功能');
return _context3.abrupt("return");
case 5:
dispatch({
type: 'classroomList/setActionTabs',
payload: {
key: '立即发布',
selectArrs: [dataSource === null || dataSource === void 0 ? void 0 : dataSource.homework_id],
selectArrsAll: [dataSource],
params: objectSpread2_default()({}, params),
type: 2,
manage_all_group: manageAllGroup
}
});
case 6:
case "end":
return _context3.stop();
}
}, _callee3);
}));
return function (_x3) {
return _ref4.apply(this, arguments);
};
}()),
children: "\u7ACB\u5373\u53D1\u5E03"
})
}, 1), !dataSource.status.includes('导入') && /*#__PURE__*/(0,jsx_runtime.jsx)(es_menu/* default */.Z.Item, {
style: {
textAlign: 'center'
},
children: /*#__PURE__*/(0,jsx_runtime.jsx)(_umi_production_exports.Link, {
target: "_blank",
to: "/",
onClick: ( /*#__PURE__*/function () {
var _ref5 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee4(e) {
var _classroomList$Assist2;
return regeneratorRuntime_default()().wrap(function _callee4$(_context4) {
while (1) switch (_context4.prev = _context4.next) {
case 0:
e.stopPropagation();
e.preventDefault();
if (!((0,authority/* isAssistant */.Rm)() && !((_classroomList$Assist2 = classroomList.AssistantObject) !== null && _classroomList$Assist2 !== void 0 && (_classroomList$Assist2 = _classroomList$Assist2.hack) !== null && _classroomList$Assist2 !== void 0 && _classroomList$Assist2.can_stop))) {
_context4.next = 5;
break;
}
message/* default */.ZP.warning('您未获取此权限,需向管理员申请权限才能使用此功能');
return _context4.abrupt("return");
case 5:
dispatch({
type: 'classroomList/setActionTabs',
payload: {
key: '立即截止',
selectArrs: [dataSource === null || dataSource === void 0 ? void 0 : dataSource.homework_id],
selectArrsAll: [dataSource],
params: objectSpread2_default()({}, params),
type: 2
}
});
case 6:
case "end":
return _context4.stop();
}
}, _callee4);
}));
return function (_x4) {
return _ref5.apply(this, arguments);
};
}()),
children: "\u7ACB\u5373\u622A\u6B62"
})
}, 2), dataSource.status.includes('导入') && /*#__PURE__*/(0,jsx_runtime.jsx)(es_menu/* default */.Z.Item, {
style: {
textAlign: 'center'
},
children: /*#__PURE__*/(0,jsx_runtime.jsx)(_umi_production_exports.Link, {
target: "_blank",
to: "/",
onClick: ( /*#__PURE__*/function () {
var _ref6 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee5(e) {
return regeneratorRuntime_default()().wrap(function _callee5$(_context5) {
while (1) switch (_context5.prev = _context5.next) {
case 0:
e.stopPropagation();
e.preventDefault();
dispatch({
type: 'classroomList/setActionTabs',
payload: {
key: '补充成绩',
name: dataSource === null || dataSource === void 0 ? void 0 : dataSource.name,
id: dataSource === null || dataSource === void 0 ? void 0 : dataSource.homework_id,
type: 'hack'
}
});
case 3:
case "end":
return _context5.stop();
}
}, _callee5);
}));
return function (_x5) {
return _ref6.apply(this, arguments);
};
}()),
children: "\u8865\u5145\u6210\u7EE9"
})
}, 23), dataSource.status.includes('导入') && /*#__PURE__*/(0,jsx_runtime.jsx)(es_menu/* default */.Z.Item, {
style: {
textAlign: 'center'
},
children: /*#__PURE__*/(0,jsx_runtime.jsx)(_umi_production_exports.Link, {
target: "_blank",
to: "/",
onClick: ( /*#__PURE__*/function () {
var _ref7 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee6(e) {
var _classroomList$Assist3, _dataSource$status4;
return regeneratorRuntime_default()().wrap(function _callee6$(_context6) {
while (1) switch (_context6.prev = _context6.next) {
case 0:
e.stopPropagation();
e.preventDefault();
if (!((0,authority/* isAssistant */.Rm)() && !((_classroomList$Assist3 = classroomList.AssistantObject) !== null && _classroomList$Assist3 !== void 0 && (_classroomList$Assist3 = _classroomList$Assist3.hack) !== null && _classroomList$Assist3 !== void 0 && _classroomList$Assist3.can_delete))) {
_context6.next = 5;
break;
}
message/* default */.ZP.warning('您未获取此权限,需向管理员申请权限才能使用此功能');
return _context6.abrupt("return");
case 5:
dispatch({
type: 'classroomList/setActionTabs',
payload: {
key: '删除',
selectArrs: [dataSource === null || dataSource === void 0 ? void 0 : dataSource.homework_id],
selectArrsAll: selectArrsAll,
params: params,
status: dataSource === null || dataSource === void 0 || (_dataSource$status4 = dataSource.status) === null || _dataSource$status4 === void 0 ? void 0 : _dataSource$status4[0]
}
});
case 6:
case "end":
return _context6.stop();
}
}, _callee6);
}));
return function (_x6) {
return _ref7.apply(this, arguments);
};
}()),
children: "\u7ACB\u5373\u5220\u9664"
})
}, 22), !dataSource.status.includes('导入') && /*#__PURE__*/(0,jsx_runtime.jsx)(es_menu/* default */.Z.Item, {
style: {
textAlign: 'center'
},
children: /*#__PURE__*/(0,jsx_runtime.jsx)(_umi_production_exports.Link, {
target: "_blank",
onClick: function onClick(e) {
e.stopPropagation();
},
to: "/classrooms/".concat(params.coursesId, "/program_homework/").concat(dataSource.homework_id, "/detail?tabs=3"),
children: "\u9AD8\u7EA7\u8BBE\u7F6E"
})
}, 6)]
});
},
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
onClick: function onClick(e) {
return e.stopPropagation();
},
className: Listmodules.flexBox,
style: {
marginRight: 6,
cursor: 'default'
},
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "iconfont icon-gengduo4"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: "\u66F4\u591A"
})]
})
})]
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: Listmodules.detail,
children: (0,authority/* isAdmin */.GJ)() && /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "c-grey-333 mr20",
children: dataSource.author
}), ['未开始', '进行中', '已截止', '提交中', '补交中', '已结束', '匿评中', '申诉中'].includes(dataSource === null || dataSource === void 0 || (_dataSource$status5 = dataSource.status) === null || _dataSource$status5 === void 0 ? void 0 : _dataSource$status5[0]) && !!dataSource.uncommit_count && /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: "c-grey-999 mr10",
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "mr5",
children: "\u672A\u505A\u9898"
}), dataSource.uncommit_count, "\u4EBA"]
}), ['未开始', '进行中', '已截止', '提交中', '补交中', '已结束', '匿评中', '申诉中'].includes(dataSource === null || dataSource === void 0 || (_dataSource$status6 = dataSource.status) === null || _dataSource$status6 === void 0 ? void 0 : _dataSource$status6[0]) && !!dataSource.commit_count && /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: "c-grey-999 mr10",
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "mr5",
children: "\u5DF2\u505A\u9898"
}), dataSource.commit_count, "\u4EBA"]
}), ['未开始', '进行中', '已截止', '提交中', '补交中', '已结束', '匿评中', '申诉中'].includes(dataSource === null || dataSource === void 0 || (_dataSource$status7 = dataSource.status) === null || _dataSource$status7 === void 0 ? void 0 : _dataSource$status7[0]) && !!dataSource.compelete_count && /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: "c-grey-999 mr10",
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "mr5",
children: "\u5DF2\u5B8C\u6210"
}), dataSource.compelete_count, "\u4EBA"]
}), ['未开始', '进行中', '已截止', '提交中', '补交中', '匿评中', '申诉中'].includes(dataSource === null || dataSource === void 0 || (_dataSource$status8 = dataSource.status) === null || _dataSource$status8 === void 0 ? void 0 : _dataSource$status8[0]) && /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: "c-grey-999 mr10",
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "mr5",
children: "\u53D1\u5E03\u65F6\u95F4"
}), dataSource.publish_time]
}), ['未开始', '进行中', '已截止', '提交中', '补交中', '匿评中', '申诉中'].includes(dataSource === null || dataSource === void 0 || (_dataSource$status9 = dataSource.status) === null || _dataSource$status9 === void 0 ? void 0 : _dataSource$status9[0]) && /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: "c-grey-999 mr10",
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "mr5",
children: "\u622A\u6B62\u65F6\u95F4"
}), dataSource.end_time]
}), ['已结束'].includes(dataSource === null || dataSource === void 0 || (_dataSource$status10 = dataSource.status) === null || _dataSource$status10 === void 0 ? void 0 : _dataSource$status10[0]) && /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: "c-grey-999 mr10",
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "mr5",
children: "\u7ED3\u675F\u65F6\u95F4"
}), dataSource.status_time]
}), !!(dataSource !== null && dataSource !== void 0 && dataSource.late_time) && (dataSource === null || dataSource === void 0 ? void 0 : dataSource.late_time) !== '--' && /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: "c-grey-999",
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "mr5",
children: "\u8865\u4EA4\u622A\u6B62\u65F6\u95F4"
}), dataSource === null || dataSource === void 0 ? void 0 : dataSource.late_time]
}), ['未开始', '进行中', '已截止', '提交中', '补交中', '匿评中', '申诉中'].includes(dataSource === null || dataSource === void 0 || (_dataSource$status11 = dataSource.status) === null || _dataSource$status11 === void 0 ? void 0 : _dataSource$status11[0]) && /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: Listmodules.iconV,
onClick: ( /*#__PURE__*/function () {
var _ref8 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee7(e) {
return regeneratorRuntime_default()().wrap(function _callee7$(_context7) {
while (1) switch (_context7.prev = _context7.next) {
case 0:
e.stopPropagation();
e.preventDefault();
if (!isshow) {
getlist();
}
setisshow(!isshow);
case 4:
case "end":
return _context7.stop();
}
}, _callee7);
}));
return function (_x7) {
return _ref8.apply(this, arguments);
};
}()),
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "iconfont icon-".concat(isshow ? 'shouqi' : 'xiala2')
}), ' ']
})]
})
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: Listmodules.content,
children: [(0,authority/* isStudent */.dE)() && /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: Listmodules.infoStuIcon,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "c-grey-333",
children: dataSource.author
}), (dataSource === null || dataSource === void 0 || (_dataSource$status12 = dataSource.status) === null || _dataSource$status12 === void 0 ? void 0 : _dataSource$status12[0]) === '已截止' && !!(dataSource !== null && dataSource !== void 0 && dataSource.status_time) && /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: "c-grey-999 ml20",
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "iconfont icon-shengyushijian font12 mr5"
}), ' ', dataSource === null || dataSource === void 0 ? void 0 : dataSource.status_time]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: "ml20 c-grey-999",
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "iconfont icon-shijian1 font12 mr5"
}), dataSource === null || dataSource === void 0 ? void 0 : dataSource.commit_count, "/", dataSource === null || dataSource === void 0 ? void 0 : dataSource.all_count, " ", dataSource.status_time]
})]
}), (0,authority/* isAdmin */.GJ)() && dataSource.status !== '未发布' && isshow && lists.length > 5 && /*#__PURE__*/(0,jsx_runtime.jsx)(table/* default */.Z, {
scroll: {
y: 240
},
onRow: function onRow(e) {
return {
onClick: function onClick(e) {
e.stopPropagation();
e.preventDefault();
}
};
},
onHeaderRow: function onHeaderRow(columns, index) {
return {
onClick: function onClick(e) {
e.stopPropagation();
e.preventDefault();
} // 点击表头行
};
},
pagination: false,
dataSource: lists,
style: {
marginTop: 14,
marginRight: 6,
cursor: 'default'
},
onChange: function onChange(a, b, c) {
if (c.field) params.sort_by = c.field;
if (!c.order) params['sort_direction'] = 'asc';
if (c.order === 'ascend') params['sort_direction'] = 'asc';
if (c.order === 'descend') params['sort_direction'] = 'desc';
// if (!c.order) delete params['b_order'];
if (!c.order) params['sort_direction'] = 'asc';
getlist();
},
columns: columns
}), (0,authority/* isAdmin */.GJ)() && dataSource.status !== '未发布' && isshow && lists.length < 6 && lists.length > 0 && /*#__PURE__*/(0,jsx_runtime.jsx)(table/* default */.Z, {
onRow: function onRow(e) {
return {
onClick: function onClick(e) {
e.stopPropagation();
e.preventDefault();
}
};
},
onHeaderRow: function onHeaderRow(columns, index) {
return {
onClick: function onClick(e) {
e.stopPropagation();
e.preventDefault();
} // 点击表头行
};
},
pagination: false,
dataSource: lists,
style: {
marginTop: 14,
marginRight: 6,
cursor: 'default'
},
onChange: function onChange(a, b, c) {
if (c.field) params.sort_by = c.field;
if (!c.order) params['sort_direction'] = 'asc';
if (c.order === 'ascend') params['sort_direction'] = 'asc';
if (c.order === 'descend') params['sort_direction'] = 'desc';
// if (!c.order) delete params['b_order'];
if (!c.order) params['sort_direction'] = 'asc';
getlist();
},
columns: columns
})]
})]
})]
});
};
/* harmony default export */ var components_List = (List);
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/index.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var ProgramHomeworkmodules = ({"flex_box_center":"flex_box_center___Cf9V9","flex_space_between":"flex_space_between___eZ6tD","flex_box_vertical_center":"flex_box_vertical_center___HV5P5","flex_box_center_end":"flex_box_center_end___nMv5m","flex_box_column":"flex_box_column___pSZ2w","bg":"bg___KWyBO","containerTitle":"containerTitle____BHtc","containerDesc":"containerDesc___owLy5","listItem":"listItem___G1EbM","info":"info___sPjht","title":"title___shRTj","titleLeft":"titleLeft___h6rpG","titleRight":"titleRight___LEnUj","acitons":"acitons___UegZy","moveCategory":"moveCategory___PL8Dd","spanSize":"spanSize___QkMiH"});
// EXTERNAL MODULE: ./node_modules/_react-sortable-hoc@1.11.0@react-sortable-hoc/dist/react-sortable-hoc.esm.js
var react_sortable_hoc_esm = __webpack_require__(44589);
// EXTERNAL MODULE: ./node_modules/_array-move@3.0.1@array-move/index.js
var _array_move_3_0_1_array_move = __webpack_require__(39180);
var _array_move_3_0_1_array_move_default = /*#__PURE__*/__webpack_require__.n(_array_move_3_0_1_array_move);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/drawer/index.js + 9 modules
var drawer = __webpack_require__(43428);
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/components/SortShixunPanel/index.less
// extracted by mini-css-extract-plugin
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/components/SortShixunPanel/index.tsx
var SortableItem = (0,react_sortable_hoc_esm/* SortableElement */.W8)(function (_ref) {
var item = _ref.item;
return /*#__PURE__*/(0,jsx_runtime.jsxs)("li", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("h3", {
children: item.task_name
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
children: [item.user_name, /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
style: {
marginLeft: '20px'
},
children: item.category
})]
})]
});
});
var SortableList = (0,react_sortable_hoc_esm/* SortableContainer */.JN)(function (_ref2) {
var items = _ref2.items;
return /*#__PURE__*/(0,jsx_runtime.jsx)("ul", {
className: "task-list-container",
children: items.map(function (value, index) {
return /*#__PURE__*/(0,jsx_runtime.jsx)(SortableItem, {
index: index,
item: value
}, "".concat(value.task_id));
})
});
});
/* harmony default export */ var SortShixunPanel = (function (_ref3) {
var data = _ref3.data,
callback = _ref3.callback,
onCancel = _ref3.onCancel,
_ref3$visible = _ref3.visible,
visible = _ref3$visible === void 0 ? false : _ref3$visible;
var _useState = (0,_react_17_0_2_react.useState)(data),
_useState2 = slicedToArray_default()(_useState, 2),
values = _useState2[0],
setValues = _useState2[1];
function onSave() {
callback(values.map(function (item) {
return item.task_id;
}));
}
function onSortEnd(info) {
var newIndex = info.newIndex,
oldIndex = info.oldIndex;
setValues(_array_move_3_0_1_array_move_default()(values, oldIndex, newIndex));
}
(0,_react_17_0_2_react.useEffect)(function () {
setValues(data);
}, [JSON.stringify(data)]);
return /*#__PURE__*/(0,jsx_runtime.jsxs)(drawer/* default */.Z, {
placement: 'bottom',
height: '100%',
closable: true,
onClose: onCancel,
style: {
zIndex: 9999
},
open: visible,
rootClassName: "sort-list-panel",
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("p", {
className: "sort-list-tip",
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: "\u6E29\u99A8\u63D0\u793A\uFF1A\u8BF7\u5728\u5217\u8868\u4E2D\u957F\u6309\u9F20\u6807\u5DE6\u952E\uFF0C\u8FDB\u884C\u62D6\u653E\u6392\u5E8F\u3002\u5B8C\u6210\u6392\u5E8F\u540E\u8BF7\u70B9\u51FB\u201C\u4FDD\u5B58\u201D"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
type: "ghost",
onClick: onCancel,
style: {
marginRight: 10
},
children: "\u53D6\u6D88"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
disabled: values.length === 0,
type: "primary",
onClick: onSave,
children: "\u4FDD\u5B58"
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)(SortableList, {
axis: "xy",
helperClass: "dragging-li",
items: values,
onSortEnd: onSortEnd
})]
});
});
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/components/OtherHomework/index.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var OtherHomeworkmodules = ({"otherHomeworkWrap":"otherHomeworkWrap___WlvHv","otherHomeworkContainer":"otherHomeworkContainer___Qfj2O","flex":"flex___q8ATC","search":"search___xedy7","content":"content___VSdQb","listItem":"listItem___u6wwP","info":"info___vvX3a","title":"title___FtVL7","describe":"describe___g43sA","footer":"footer___TNGYY"});
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/components/OtherHomework/index.tsx
var OtherHomework = function OtherHomework(_ref) {
var courseId = _ref.courseId,
type = _ref.type,
onCancel = _ref.onCancel;
var params = (0,_umi_production_exports.useParams)();
var _useState = (0,_react_17_0_2_react.useState)({
targerData: [],
originData: []
}),
_useState2 = slicedToArray_default()(_useState, 2),
dataSource = _useState2[0],
setData = _useState2[1];
// 选中的key
var _useState3 = (0,_react_17_0_2_react.useState)([]),
_useState4 = slicedToArray_default()(_useState3, 2),
checkedKeys = _useState4[0],
setCheckedKeys = _useState4[1];
var _useState5 = (0,_react_17_0_2_react.useState)(false),
_useState6 = slicedToArray_default()(_useState5, 2),
loading = _useState6[0],
setLoading = _useState6[1];
/**
* 获取数据
*/
var getData = /*#__PURE__*/function () {
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
var result;
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
setLoading(true);
_context.next = 3;
return (0,fetch/* default */.ZP)("/api/courses/".concat(courseId, "/homework_commons/impersonal_list.json"), {
method: 'get',
params: {
type: type
}
});
case 3:
result = _context.sent;
setLoading(false);
setData({
targerData: result.homeworks,
originData: result.homeworks
});
case 6:
case "end":
return _context.stop();
}
}, _callee);
}));
return function getData() {
return _ref2.apply(this, arguments);
};
}();
(0,_react_17_0_2_react.useEffect)(function () {
getData();
}, []);
/**
* 提交数据
*/
var postSubmit = /*#__PURE__*/function () {
var _ref3 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2() {
var data, result;
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
while (1) switch (_context2.prev = _context2.next) {
case 0:
setLoading(true);
data = {
homework_common_ids: checkedKeys
};
if (params.categoryId) {
data = objectSpread2_default()(objectSpread2_default()({}, data), {}, {
category_id: params.categoryId
});
}
_context2.next = 5;
return (0,fetch/* default */.ZP)("/api/courses/".concat(params.coursesId, "/homework_commons/create_collaborators.json"), {
method: 'POST',
body: data
});
case 5:
result = _context2.sent;
if (result && result.homework_ids.length > 0) {
message/* default */.ZP.success('提交成功');
onCancel();
}
setLoading(false);
case 8:
case "end":
return _context2.stop();
}
}, _callee2);
}));
return function postSubmit() {
return _ref3.apply(this, arguments);
};
}();
/**
* 复选框change事件
*/
var onCheckChange = function onCheckChange(event, key) {
if (event.target.checked) {
setCheckedKeys([].concat(toConsumableArray_default()(checkedKeys), [key]));
} else {
setCheckedKeys(checkedKeys.filter(function (item) {
return item !== key;
}));
}
};
/**
*
*/
var onSearch = function onSearch(value) {
var newData = dataSource.originData.filter(function (item) {
return item.name.indexOf(value) > -1;
});
setData(objectSpread2_default()(objectSpread2_default()({}, dataSource), {}, {
targerData: newData
}));
};
/**
* 提交
*/
var onSubmit = function onSubmit() {
postSubmit();
};
return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "animated fadeInUp fast ".concat(OtherHomeworkmodules.otherHomeworkWrap),
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: OtherHomeworkmodules.otherHomeworkContainer,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: OtherHomeworkmodules.search,
children: /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z.Search, {
size: 'middle',
enterButton: "\u641C\u7D22",
onSearch: onSearch,
placeholder: "\u8BF7\u8F93\u5165\u56FE\u6587\u4F5C\u4E1A\u540D\u79F0\u8FDB\u884C\u67E5\u8BE2"
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: OtherHomeworkmodules.content,
children: dataSource.targerData.map(function (item) {
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: "".concat(OtherHomeworkmodules.listItem, " mb10"),
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_checkbox/* default */.Z, {
checked: checkedKeys.includes(item.id),
onChange: function onChange(event) {
return onCheckChange(event, item.id);
}
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: OtherHomeworkmodules.info,
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: "".concat(OtherHomeworkmodules.flex, " mb10"),
style: {
justifyContent: 'space-between'
},
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: OtherHomeworkmodules.title,
children: item.name
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
type: "primary",
ghost: true,
onClick: function onClick() {
return (0,util/* openNewWindow */.xg)("/classrooms/".concat(params.coursesId, "/common_homework/").concat(item.id, "/detail"));
},
children: "\u67E5\u770B\u4F5C\u4E1A"
})
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "mb20 font14 c-grey-999 ".concat(OtherHomeworkmodules.describe),
children: item.description
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: "font12",
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "c-grey-333 mr20",
children: item.user.name
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: "c-grey-999",
children: ["\u521B\u5EFA\u65F6\u95F4\uFF1A", item.created_at]
})]
})]
})]
}, item.id);
})
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: OtherHomeworkmodules.footer,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
type: "primary",
ghost: true,
onClick: onCancel,
children: "\u53D6\u6D88"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
type: "primary",
disabled: checkedKeys.length === 0 || loading,
onClick: onSubmit,
children: "\u786E\u5B9A"
})]
})]
})
});
};
/* harmony default export */ var components_OtherHomework = (OtherHomework);
// EXTERNAL MODULE: ./src/pages/Classrooms/Lists/ShixunHomeworks/components/ImportHomeworks.tsx
var ImportHomeworks = __webpack_require__(87372);
// EXTERNAL MODULE: ./src/pages/Classrooms/Lists/ShixunHomeworks/components/Addachievement.tsx
var Addachievement = __webpack_require__(61020);
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ProgramHomework/index.tsx
var CommonHomeworkContext = /*#__PURE__*/(0,_react_17_0_2_react.createContext)({
selectArrs: []
});
var ShixunsListPage = function ShixunsListPage(_ref) {
var _user$userInfo4, _detailCommonHomework;
var classroomList = _ref.classroomList,
loading = _ref.loading,
dispatch = _ref.dispatch,
user = _ref.user;
var location = (0,_umi_production_exports.useLocation)();
var paramsFromRouter = (0,_umi_production_exports.useParams)();
var _useState = (0,_react_17_0_2_react.useState)(function () {
return objectSpread2_default()(objectSpread2_default()({}, paramsFromRouter), {}, {
id: paramsFromRouter.coursesId,
limit: 20
});
}),
_useState2 = slicedToArray_default()(_useState, 2),
params = _useState2[0],
setParams = _useState2[1];
var _useSearchParams = (0,_umi_production_exports.useSearchParams)(),
_useSearchParams2 = slicedToArray_default()(_useSearchParams, 1),
searchParams = _useSearchParams2[0];
// 选中的课程
var _useState3 = (0,_react_17_0_2_react.useState)([]),
_useState4 = slicedToArray_default()(_useState3, 2),
selectArrs = _useState4[0],
setSelectArrs = _useState4[1];
// 全选
var _useState5 = (0,_react_17_0_2_react.useState)(false),
_useState6 = slicedToArray_default()(_useState5, 2),
allSelect = _useState6[0],
setAllSelect = _useState6[1];
// 批量显隐状态
var _useState7 = (0,_react_17_0_2_react.useState)(false),
_useState8 = slicedToArray_default()(_useState7, 2),
batchStatus = _useState8[0],
useBatchStatus = _useState8[1];
// 暂时不知道有什么用
var _useState9 = (0,_react_17_0_2_react.useState)([]),
_useState10 = slicedToArray_default()(_useState9, 2),
selectArrsAll = _useState10[0],
setSelectArrsAll = _useState10[1];
// 选择其他人作业组件的显隐状态
var _useState11 = (0,_react_17_0_2_react.useState)(false),
_useState12 = slicedToArray_default()(_useState11, 2),
otherStatus = _useState12[0],
setOtherStatus = _useState12[1];
// const [keyword, setKeyword] = useState('');
var _useState13 = (0,_react_17_0_2_react.useState)('默认排序'),
_useState14 = slicedToArray_default()(_useState13, 2),
SortMenuName = _useState14[0],
setSortMenuName = _useState14[1];
var userInfo = user.userInfo;
var detailCommonHomeworksList = classroomList.detailCommonHomeworksList,
detailLeftMenus = classroomList.detailLeftMenus,
detailTopBanner = classroomList.detailTopBanner,
taskList = classroomList.taskList;
var courseModules;
params.type = 1;
if (params.categoryId) {
params.category = params.categoryId;
} else {
delete params.category;
}
(0,_react_17_0_2_react.useEffect)(function () {
var tabs = searchParams.get("tabs");
if (tabs && tabs !== undefined) {
if ((0,authority/* isAdmin */.GJ)()) {
params.status = tabs;
} else {
params.order = tabs;
}
}
}, [location.search]);
(0,_react_17_0_2_react.useEffect)(function () {
if (searchParams.get("tabs") === '0') {
params.status = '0';
params.page = 1;
// setParams({...params})
}
params.status = searchParams.get("tabs");
}, [searchParams.get("tabs")]);
(0,_react_17_0_2_react.useEffect)(function () {
setParams(objectSpread2_default()(objectSpread2_default()({}, params), paramsFromRouter));
}, [paramsFromRouter === null || paramsFromRouter === void 0 ? void 0 : paramsFromRouter.categoryId]);
(0,_react_17_0_2_react.useEffect)(function () {
var _user$userInfo, _user$userInfo3;
if (paramsFromRouter.categoryId) {
params.categoryId = paramsFromRouter.categoryId; //location.pathname变化时useParams也会变化,暂且先这样处理
params.category = paramsFromRouter.categoryId;
} else {
delete params.category;
}
if (user !== null && user !== void 0 && (_user$userInfo = user.userInfo) !== null && _user$userInfo !== void 0 && _user$userInfo.login) {
var _user$userInfo2;
dispatch({
type: 'classroomList/getAssistantPermissions',
payload: {
course_id: params.id
}
});
var localRecordValue = util/* localSort */.cX.getItem("".concat(user === null || user === void 0 || (_user$userInfo2 = user.userInfo) === null || _user$userInfo2 === void 0 ? void 0 : _user$userInfo2.login).concat((0,authority/* isAdmin */.GJ)() ? 'Teacher' : 'Student'), 'ProgramHomework');
if (localRecordValue) {
params.sort_by = localRecordValue === null || localRecordValue === void 0 ? void 0 : localRecordValue.type;
params.sort_direction = localRecordValue === null || localRecordValue === void 0 ? void 0 : localRecordValue.direction;
setSortMenuName(localRecordValue === null || localRecordValue === void 0 ? void 0 : localRecordValue.name);
}
var tabs = searchParams.get("tabs");
var data = {};
if (tabs && tabs !== undefined) {
if ((0,authority/* isAdmin */.GJ)()) {
params.status = tabs;
} else {
params.order = tabs;
}
}
getData(data);
} else if (user !== null && user !== void 0 && (_user$userInfo3 = user.userInfo) !== null && _user$userInfo3 !== void 0 && _user$userInfo3.username) {
var _tabs = searchParams.get("tabs");
var _data = {};
if (_tabs && _tabs !== undefined) {
if ((0,authority/* isAdmin */.GJ)()) {
params.status = _tabs;
} else {
params.order = _tabs;
}
}
getData(_data);
}
}, [user === null || user === void 0 || (_user$userInfo4 = user.userInfo) === null || _user$userInfo4 === void 0 ? void 0 : _user$userInfo4.login, location === null || location === void 0 ? void 0 : location.pathname]);
(0,_react_17_0_2_react.useEffect)(function () {
if (classroomList.actionTabs.key === '清除选择数据') {
setSelectArrs([]);
setSelectArrsAll([]);
}
if (classroomList.actionTabs.key === '目录重命名成功') {
getData();
}
}, [classroomList.actionTabs.key]);
(0,_react_17_0_2_react.useEffect)(function () {
setSelectArrs([]);
}, [detailCommonHomeworksList]);
/**
* 监听二级目录变化
*/
(0,_react_17_0_2_react.useEffect)(function () {
useBatchStatus(false);
}, [params.categoryId]);
/**
* 监听课程选中
*/
(0,_react_17_0_2_react.useEffect)(function () {
if (detailCommonHomeworksList && detailCommonHomeworksList.homeworks) {
if (selectArrs.length === detailCommonHomeworksList.homeworks.length && selectArrs.length > 0) {
setAllSelect(true);
} else if (selectArrs.length !== detailCommonHomeworksList.homeworks.length) {
setAllSelect(false);
}
}
}, [selectArrs]);
var onShowSizeChange = function onShowSizeChange(current, pageSize) {
params.page = current;
getData();
};
var getData = function getData() {
var data = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
setSelectArrs([]);
setSelectArrsAll([]);
//判断身份 如果是老师 调用另外一个接口
dispatch({
type: 'classroomList/getClassroomTeacherCommonList',
payload: objectSpread2_default()(objectSpread2_default()({}, params), {}, {
type: 5
})
});
};
var getMenus = function getMenus() {
if ((0,authority/* isAdmin */.GJ)()) {
var all_count = detailCommonHomeworksList.all_count,
unpublished_count = detailCommonHomeworksList.unpublished_count,
not_start_count = detailCommonHomeworksList.not_start_count,
in_progress_count = detailCommonHomeworksList.in_progress_count,
overed_count = detailCommonHomeworksList.overed_count;
return [{
name: '全部',
id: 0,
total: all_count || 0
}, {
name: '未发布',
id: 1,
total: unpublished_count || 0
}, {
name: '未开始',
id: 4,
total: not_start_count || 0
}, {
name: '进行中',
id: 2,
total: in_progress_count || 0
}, {
name: '已截止',
id: 3,
total: overed_count || 0
}];
} else {
return [{
name: '全部',
id: 0
},
// { name: '未发布', id: 0 },
{
name: '提交中',
id: 2
}, {
name: '补交中',
id: 10
},
// { name: '进行中', id: 2 },
// { name: '匿评中', id: 3 },
// { name: '申诉中', id: 4 },
{
name: '已截止',
id: 3
}];
}
};
// const Menus: { name: string; id: number | string }[] = [
// { name: '全部', id: 0 },
// { name: '未发布', id: 1 },
// { name: '未开始', id: 4 },
// { name: '进行中', id: 2 },
// // { name: '提交中', id: 1 },
// // { name: '补交中', id: 2 },
// // { name: '匿评中', id: 3 },
// // { name: '申诉中', id: 4 },
// { name: '已截止', id: 3 },
// ].filter(item => {
// if (!isAdmin()) {
// return item.name !== '未发布';
// }
// return item;
// });
if (detailLeftMenus.course_modules) {
courseModules = classroomList.detailLeftMenus.course_modules.filter(function (v) {
return v.type === 'common_homework';
})[0];
}
// console.log('--------', params);
var actionsArr = ['删除', '立即发布', '立即截止', '收藏'].filter(function (item) {
if (!(userInfo !== null && userInfo !== void 0 && userInfo.main_site)) {
return item !== '收藏';
}
return item;
}).filter(function (item) {
if ((0,authority/* isAdmin */.GJ)()) {
return true;
} else {
return item !== '删除';
}
});
/**
* tab控制栏右侧数据集合
*/
var dropdownMenu = [{
name: '新建编程作业',
id: '1'
}, {
name: '导入外部成绩',
id: '3'
}
// { name: '选用他人创建作业', id: '3' },
];
/**
* 右侧导航控制栏 下拉菜单点击事件
* @param key 选中菜单的id
*/
var onDropdownMenuClick = function onDropdownMenuClick(key) {
var _classroomList$Assist;
if ((0,authority/* isAssistant */.Rm)() && !((_classroomList$Assist = classroomList.AssistantObject.hack) !== null && _classroomList$Assist !== void 0 && _classroomList$Assist.can_create)) {
message/* default */.ZP.warning('您未获取此权限,需向管理员申请权限才能使用此功能');
return;
}
// 新建图文作业
if (key === '1') {
_umi_production_exports.history.push("/classrooms/".concat(params.coursesId, "/program_homework/").concat(params.categoryId, "/add"));
} else if (key === '2') {
// 选用资源
onSelectResources();
} else if (key === '3') {
// hack
// setOtherStatus(true);
dispatch({
type: 'classroomList/setActionTabs',
payload: {
key: '导入外部成绩',
type: 'hack'
}
});
}
};
/**
* 选用资源点击事件
* @returns
*/
var onSelectResources = function onSelectResources() {
dispatch({
type: 'shixunHomeworks/setActionTabs',
payload: {
key: '题库选用',
params: params
}
});
};
var getButtomControlButtonDataSource = function getButtomControlButtonDataSource() {
var menu = [{
key: 'publish',
name: '批量发布',
icon: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "iconfont icon-fabu5"
})
}, {
key: 'deadline',
name: '批量截止',
icon: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "iconfont icon-piliangjiezhi2"
})
}, {
key: 'delete',
name: '批量删除',
icon: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "iconfont icon-piliangshanchu2"
})
}
// {
// key: 'public',
// name: '设为公开',
// icon: ,
// },
];
return menu.filter(function (item) {
if ((0,authority/* isAdmin */.GJ)() || (0,authority/* isAssistant */.Rm)()) {
return true;
} else {
return item.name !== '批量删除';
}
}).filter(function (item) {
if (detailTopBanner.is_public) {
return true;
} else {
return item.name !== '设为公开';
}
});
};
var onBottomControlClick = function onBottomControlClick(data) {
var _classroomList$Assist2, _classroomList$Assist3, _classroomList$Assist4;
if (selectArrs.length === 0) {
message/* default */.ZP.error('请选择你要操作的任务');
return false;
}
var key = data.name;
var param = {
key: key,
selectArrs: selectArrs,
selectArrsAll: selectArrsAll,
type: ['publish', 'deadline'].includes(data.key) ? 1 : '',
params: params
};
switch (data.key) {
// case "publish":
// case "deadline":
// if(isAssistant() && !classroomList?.CourseAssistantPermissions?.hack?.can_publish){
// message.warning('您未获取此权限,需向管理员申请权限才能使用此功能');
// return ;
// }
case 'publish':
key = '立即发布';
if ((0,authority/* isAssistant */.Rm)() && !((_classroomList$Assist2 = classroomList.AssistantObject) !== null && _classroomList$Assist2 !== void 0 && (_classroomList$Assist2 = _classroomList$Assist2.hack) !== null && _classroomList$Assist2 !== void 0 && _classroomList$Assist2.can_publish)) {
message/* default */.ZP.warning('您未获取此权限,需向管理员申请权限才能使用此功能');
return;
}
break;
case 'deadline':
key = '立即截止';
if ((0,authority/* isAssistant */.Rm)() && !((_classroomList$Assist3 = classroomList.AssistantObject) !== null && _classroomList$Assist3 !== void 0 && (_classroomList$Assist3 = _classroomList$Assist3.hack) !== null && _classroomList$Assist3 !== void 0 && _classroomList$Assist3.can_stop)) {
message/* default */.ZP.warning('您未获取此权限,需向管理员申请权限才能使用此功能');
return;
}
break;
case 'delete':
key = '删除';
if ((0,authority/* isAssistant */.Rm)() && !((_classroomList$Assist4 = classroomList.AssistantObject) !== null && _classroomList$Assist4 !== void 0 && (_classroomList$Assist4 = _classroomList$Assist4.hack) !== null && _classroomList$Assist4 !== void 0 && _classroomList$Assist4.can_delete)) {
message/* default */.ZP.warning('您未获取此权限,需向管理员申请权限才能使用此功能');
return;
}
break;
case 'collection':
key = '收藏';
break;
}
dispatch({
type: 'classroomList/setActionTabs',
payload: objectSpread2_default()(objectSpread2_default()({}, param), {}, {
key: key
})
});
};
var onSortTaskList = /*#__PURE__*/function () {
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee(ids) {
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
_context.next = 2;
return dispatch({
type: 'classroomList/updateTaskPosition',
payload: {
category_id: params.categoryId,
courseId: params['id'],
task_ids: ids,
container_type: 'program_homework'
}
});
case 2:
getData();
case 3:
case "end":
return _context.stop();
}
}, _callee);
}));
return function onSortTaskList(_x) {
return _ref2.apply(this, arguments);
};
}();
var homeWorks = (0,_react_17_0_2_react.useMemo)(function () {
var rs = [];
if (taskList.length > 0) {
rs = taskList.map(function (item) {
return {
user_name: item.user_name,
task_name: item.task_name,
task_id: item.task_id,
category: item.category
};
});
}
return rs;
}, [taskList]);
return /*#__PURE__*/(0,jsx_runtime.jsx)(CommonHomeworkContext.Provider, {
value: {
params: params,
batchStatus: batchStatus,
selectArrs: selectArrs,
setSelectArrs: setSelectArrs,
allSelect: allSelect,
dataSource: detailCommonHomeworksList.homeworks || [],
detailLeftMenus: detailLeftMenus,
main_category_id: detailCommonHomeworksList.main_category_id || '',
selectArrsAll: selectArrsAll,
setAllSelect: setAllSelect,
useBatchStatus: useBatchStatus,
dispatch: dispatch,
getData: getData,
setSelectArrsAll: setSelectArrsAll
},
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("section", {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
className: ProgramHomeworkmodules.bg,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(components_TabMenu, {
isLoading: loading['classroomList/getClassroomTeacherCommonList'],
tabDataSource: getMenus(),
classroomList: classroomList,
isAdmin: (0,authority/* isAdmin */.GJ)(),
dispatch: dispatch,
type: detailCommonHomeworksList === null || detailCommonHomeworksList === void 0 ? void 0 : detailCommonHomeworksList.main_category_name,
TooltipTitle: !params.categoryId ? '新建子目录' : '目录重命名',
categoryId: params.categoryId,
dropdownMenu: dropdownMenu,
isShowRightControl: (0,util/* getCategoryName */.Oo)(detailLeftMenus === null || detailLeftMenus === void 0 ? void 0 : detailLeftMenus.course_modules, params.categoryId) !== '未分配目录',
onTabMenuClick: function onTabMenuClick(item) {
if (item.id !== undefined) {
if ((0,authority/* isAdmin */.GJ)()) {
params.status = item.id;
} else {
params.status = item.id;
}
}
useBatchStatus(false);
params.page = 1;
_umi_production_exports.history.replace("".concat(location.pathname, "?tabs=").concat(item.id));
getData(params);
},
defaultSelectedKeys: [searchParams.get("tabs") ? searchParams.get("tabs") : '0'],
onTooltipTitleClick: function onTooltipTitleClick() {
dispatch({
type: 'classroomList/setActionTabs',
payload: {
key: !params.categoryId ? '添加目录' : '目录重命名',
params: params,
selectArrs: {
category_name: detailCommonHomeworksList === null || detailCommonHomeworksList === void 0 ? void 0 : detailCommonHomeworksList.category_name,
category_id: (detailCommonHomeworksList === null || detailCommonHomeworksList === void 0 ? void 0 : detailCommonHomeworksList.category_id) || (detailCommonHomeworksList === null || detailCommonHomeworksList === void 0 ? void 0 : detailCommonHomeworksList.main_category_id)
},
cb: function cb() {
getData();
}
}
});
},
onDropdownMenuClick: onDropdownMenuClick
}), /*#__PURE__*/(0,jsx_runtime.jsx)(components_SearchSortController, {
dataSource: detailCommonHomeworksList.homeworks || [],
isAdmin: (0,authority/* isAdmin */.GJ)(),
batchStatus: batchStatus,
SortMenuName: SortMenuName,
setSortMenuName: setSortMenuName,
onSearch: function onSearch(value) {
params.search = value.trim();
params.page = 1;
getData();
},
onSort: function onSort(item) {
var _user$userInfo5;
params.sort_by = item.type;
params.sort_direction = item.direction;
params.page = 1;
util/* localSort */.cX.setItem("".concat(user === null || user === void 0 || (_user$userInfo5 = user.userInfo) === null || _user$userInfo5 === void 0 ? void 0 : _user$userInfo5.login).concat((0,authority/* isAdmin */.GJ)() ? 'Teacher' : 'Student'), item, 'ProgramHomework');
getData(params);
},
onBatch: function onBatch(status) {
return useBatchStatus(status);
}
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)("aside", {
className: "minH500 skt-loading relative pb40 mb30",
children: !loading[(0,authority/* isAdmin */.GJ)() ? 'classroomList/getClassroomTeacherCommonList' : 'classroomList/getClassroomCommonList'] && /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
className: "animated fadeIn",
children: [detailCommonHomeworksList === null || detailCommonHomeworksList === void 0 || (_detailCommonHomework = detailCommonHomeworksList.homeworks) === null || _detailCommonHomework === void 0 ? void 0 : _detailCommonHomework.map(function (item, index) {
return /*#__PURE__*/(0,jsx_runtime.jsx)(components_List, {
dataSource: item,
params: params,
classroomList: classroomList,
manageAllGroup: detailCommonHomeworksList === null || detailCommonHomeworksList === void 0 ? void 0 : detailCommonHomeworksList.manage_all_group
}, index);
}), !loading[(0,authority/* isAdmin */.GJ)() ? 'classroomList/getClassroomTeacherCommonList' : 'classroomList/getClassroomCommonList'] && /*#__PURE__*/(0,jsx_runtime.jsx)("aside", {
className: "tc mb50 mt30",
children: (detailCommonHomeworksList === null || detailCommonHomeworksList === void 0 ? void 0 : detailCommonHomeworksList.query_total_count) > 10 && /*#__PURE__*/(0,jsx_runtime.jsx)(pagination/* default */.Z, {
hideOnSinglePage: true,
showSizeChanger: false,
onChange: onShowSizeChange,
defaultPageSize: 20,
defaultCurrent: 1,
current: params.page || 1,
total: (0,authority/* isAdmin */.GJ)() ? detailCommonHomeworksList.query_total_count : detailCommonHomeworksList.student_all_count
})
})]
}), selectArrs.length > 0 && (0,authority/* isAdmin */.GJ)() && /*#__PURE__*/(0,jsx_runtime.jsx)(affix/* default */.Z, {
offsetBottom: 0,
children: /*#__PURE__*/(0,jsx_runtime.jsx)(components_BottomControl, {
buttonDataSource: getButtomControlButtonDataSource(),
onClick: onBottomControlClick
})
})]
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)(DelCompontent, {
onCallback: function onCallback() {
return useBatchStatus(false);
}
}), /*#__PURE__*/(0,jsx_runtime.jsx)(ImportHomeworks/* default */.Z, {
onOk: function onOk() {
getData();
}
}), /*#__PURE__*/(0,jsx_runtime.jsx)(Addachievement/* default */.Z, {
onOk: function onOk() {}
}), /*#__PURE__*/(0,jsx_runtime.jsx)(Publish/* default */.Z, {
onCallback: function onCallback() {
return useBatchStatus(false);
},
courseEndTime: detailCommonHomeworksList === null || detailCommonHomeworksList === void 0 ? void 0 : detailCommonHomeworksList.course_end_time
}), /*#__PURE__*/(0,jsx_runtime.jsx)(CutOffNow/* default */.Z, {
courseEndTime: detailCommonHomeworksList === null || detailCommonHomeworksList === void 0 ? void 0 : detailCommonHomeworksList.course_end_time,
courseId: paramsFromRouter.coursesId,
visible: classroomList.actionTabs.key === '立即截止',
isBatch: classroomList.actionTabs.type !== 2,
homeworkIds: classroomList.actionTabs.selectArrs,
successCallback: function successCallback() {
useBatchStatus(false);
getData();
}
}), /*#__PURE__*/(0,jsx_runtime.jsx)(components_SetPublic, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(AddHomeworkBank, {
onCallback: function onCallback() {
return useBatchStatus(false);
}
}), /*#__PURE__*/(0,jsx_runtime.jsx)(AddCategory, {
onCallback: function onCallback() {
return useBatchStatus(false);
}
}), /*#__PURE__*/(0,jsx_runtime.jsx)(SelectPolls, {
refreshList: getData
}), /*#__PURE__*/(0,jsx_runtime.jsx)(AfterAppendix, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(SortShixunPanel, {
visible: classroomList.actionTabs.key === '调整排序',
callback: onSortTaskList,
data: homeWorks,
onCancel: function onCancel() {
dispatch({
type: 'classroomList/setActionTabs',
payload: {
key: ''
}
});
}
}), otherStatus && /*#__PURE__*/(0,jsx_runtime.jsx)(components_OtherHomework, {
courseId: params.coursesId,
type: "1",
onCancel: function onCancel() {
return setOtherStatus(false);
}
})]
})
});
};
/* harmony default export */ var ProgramHomework = ((0,_umi_production_exports.connect)(function (_ref3) {
var classroomList = _ref3.classroomList,
loading = _ref3.loading,
user = _ref3.user,
globalSetting = _ref3.globalSetting;
return {
classroomList: classroomList,
globalSetting: globalSetting,
user: user,
loading: loading.effects
};
})(ShixunsListPage));
/***/ }),
/***/ 61020:
/*!**********************************************************************************!*\
!*** ./src/pages/Classrooms/Lists/ShixunHomeworks/components/Addachievement.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_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_defineProperty_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/defineProperty.js */ 85573);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_defineProperty_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_defineProperty_js__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_2__ = __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_2___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_2__);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_3__ = __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_3___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_3__);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_4__ = __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_4___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_4__);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! react */ 59301);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! antd */ 21068);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! antd */ 78241);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! antd */ 43418);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! antd */ 8591);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! antd */ 52306);
/* harmony import */ var umi__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! umi */ 32136);
/* harmony import */ var _utils_env__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @/utils/env */ 18765);
/* harmony import */ var _ImportHomeworks_less_modules__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./ImportHomeworks.less?modules */ 56369);
/* harmony import */ var _utils_fetch__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @/utils/fetch */ 84087);
/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! moment */ 9498);
/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_10___default = /*#__PURE__*/__webpack_require__.n(moment__WEBPACK_IMPORTED_MODULE_10__);
/* harmony import */ var _utils_util__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @/utils/util */ 25644);
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! react/jsx-runtime */ 37712);
var Dragger = antd__WEBPACK_IMPORTED_MODULE_13__/* ["default"] */ .Z.Dragger;
var ImportHomeWorks = function ImportHomeWorks(_ref) {
var classroomList = _ref.classroomList,
dispatch = _ref.dispatch,
onOk = _ref.onOk;
var params = (0,umi__WEBPACK_IMPORTED_MODULE_6__.useParams)();
var _Form$useForm = antd__WEBPACK_IMPORTED_MODULE_14__/* ["default"] */ .Z.useForm(),
_Form$useForm2 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_4___default()(_Form$useForm, 1),
form = _Form$useForm2[0];
var _useState = (0,react__WEBPACK_IMPORTED_MODULE_5__.useState)(),
_useState2 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_4___default()(_useState, 2),
file = _useState2[0],
setfile = _useState2[1];
var _useState3 = (0,react__WEBPACK_IMPORTED_MODULE_5__.useState)(false),
_useState4 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_4___default()(_useState3, 2),
isLoading = _useState4[0],
setisLoading = _useState4[1];
var draggerprops = {
height: 100,
onRemove: function onRemove() {
setfile('');
},
accept: '.xls,.xlsx',
multiple: false,
maxCount: 1,
beforeUpload: function () {
var _beforeUpload = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_3___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_2___default()().mark(function _callee(file) {
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_2___default()().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
// let fileSize: number = 5 * 1024 * 1024 * 1024;
// let name = file.name.toLowerCase();
// if (file?.size > fileSize) {
// message.info(`文件超过${fileSize / 1024 / 1024 / 1024}GB,不符合上传要求`)
// return false
// }
setfile(file);
return _context.abrupt("return", false);
case 2:
case "end":
return _context.stop();
}
}, _callee);
}));
function beforeUpload(_x) {
return _beforeUpload.apply(this, arguments);
}
return beforeUpload;
}()
};
(0,react__WEBPACK_IMPORTED_MODULE_5__.useEffect)(function () {
form.setFieldsValue(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_defineProperty_js__WEBPACK_IMPORTED_MODULE_1___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_defineProperty_js__WEBPACK_IMPORTED_MODULE_1___default()({}, 'publish_time', moment__WEBPACK_IMPORTED_MODULE_10___default()(moment__WEBPACK_IMPORTED_MODULE_10___default()(new Date()).add(0, 'days').format('YYYY-MM-DD HH:mm'))), 'end_time', moment__WEBPACK_IMPORTED_MODULE_10___default()(moment__WEBPACK_IMPORTED_MODULE_10___default()(new Date((0,_utils_util__WEBPACK_IMPORTED_MODULE_11__/* .DayHalfPastOne */ .qd)('/'))).add(7, 'days').format('YYYY-MM-DD HH:mm'))));
}, []);
return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)(antd__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .Z, {
centered: true,
title: "\u8865\u5145\u6210\u7EE9",
open: classroomList.actionTabs.key === '补充成绩' ? true : false,
okText: "\u786E\u5B9A",
width: 750,
destroyOnClose: true,
cancelText: "\u53D6\u6D88",
okButtonProps: {
loading: isLoading
},
onOk: /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_3___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_2___default()().mark(function _callee2() {
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_2___default()().wrap(function _callee2$(_context2) {
while (1) switch (_context2.prev = _context2.next) {
case 0:
form.submit();
case 1:
case "end":
return _context2.stop();
}
}, _callee2);
})),
onCancel: function onCancel() {
form.resetFields();
dispatch({
type: 'classroomList/setActionTabs',
payload: {}
});
},
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsxs)(antd__WEBPACK_IMPORTED_MODULE_14__/* ["default"] */ .Z, {
form: form,
onFinish: ( /*#__PURE__*/function () {
var _ref3 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_3___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_2___default()().mark(function _callee3(values) {
var formData, url, res, _res$data, _res$data2;
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_2___default()().wrap(function _callee3$(_context3) {
while (1) switch (_context3.prev = _context3.next) {
case 0:
if (file !== null && file !== void 0 && file.size) {
_context3.next = 3;
break;
}
antd__WEBPACK_IMPORTED_MODULE_16__/* ["default"] */ .ZP.info('请上传文件');
return _context3.abrupt("return");
case 3:
setisLoading(true);
formData = new FormData();
formData.append('type', classroomList.actionTabs.type);
formData.append('file', file);
if (window.location.href.indexOf('exercise') > -1) {
url = "/api/exercises/".concat(classroomList.actionTabs.id, "/supplement_score.json");
} else {
url = "/api/homework_commons/".concat(classroomList.actionTabs.id, "/supplement_score.json");
}
_context3.next = 10;
return (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .ZP)(url, {
method: 'post',
body: formData
}, true);
case 10:
res = _context3.sent;
setisLoading(false);
if ((res === null || res === void 0 ? void 0 : res.status) === 0) {
onOk();
form.resetFields();
dispatch({
type: 'classroomList/setActionTabs',
payload: {}
});
if ((res === null || res === void 0 || (_res$data = res.data) === null || _res$data === void 0 || (_res$data = _res$data.fail) === null || _res$data === void 0 ? void 0 : _res$data.length) > 0) {
antd__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .Z.confirm({
title: '导入失败',
closable: true,
icon: null,
width: 610,
content: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)(antd__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .Z, {
pagination: false,
dataSource: res === null || res === void 0 || (_res$data2 = res.data) === null || _res$data2 === void 0 ? void 0 : _res$data2.fail,
scroll: {
y: 400
},
columns: [{
title: '姓名',
align: 'left',
dataIndex: 'name'
}, {
title: '学号/手机号/邮箱',
align: 'left',
dataIndex: 'student_id'
}, {
title: '导入失败原因',
align: 'left',
dataIndex: 'message'
}]
}),
okText: '下载导入失败文件',
cancelText: '取消',
onOk: function onOk() {
(0,_utils_util__WEBPACK_IMPORTED_MODULE_11__/* .downLoadFile */ .FH)('', _utils_env__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z.API_SERVER + "/api/courses/get_external_score_fail_data.xlsx?type=".concat(classroomList.actionTabs.type));
}
});
}
}
case 13:
case "end":
return _context3.stop();
}
}, _callee3);
}));
return function (_x2) {
return _ref3.apply(this, arguments);
};
}()),
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)(antd__WEBPACK_IMPORTED_MODULE_14__/* ["default"] */ .Z.Item, {
label: "\u4F5C\u4E1A\u540D\u79F0",
labelCol: {
span: 3
},
name: "name",
children: classroomList.actionTabs.name
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsxs)(antd__WEBPACK_IMPORTED_MODULE_14__/* ["default"] */ .Z.Item, {
style: {
marginBottom: 0
},
label: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsxs)("div", {
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)("span", {
style: {
color: '#ff4d4f',
marginRight: 5,
fontFamily: 'SimSun,sans-serif'
},
children: "*"
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)("span", {
children: "\u5BFC\u5165\u6587\u4EF6"
})]
}),
labelCol: {
span: 3
},
rules: [{
required: true,
message: '请输入作业名称'
}],
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsxs)("div", {
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)("a", {
download: "模版.xlsx",
className: _ImportHomeworks_less_modules__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Z.downloadbutton,
href: _utils_env__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z.API_SERVER + "/api/courses/down_external_score_template.json?type=".concat(classroomList.actionTabs.type),
children: "\u4E0B\u8F7D\u6A21\u7248\u8868\u683C"
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)("span", {
style: {
marginLeft: 10,
color: '#999999'
},
children: "\uFF08\u6839\u636E\u63D0\u793A\u4FE1\u606F\u5B8C\u5584\u8868\u683C\u5185\u5BB9\uFF09"
})]
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)(antd__WEBPACK_IMPORTED_MODULE_14__/* ["default"] */ .Z.Item, {
style: {
marginBottom: 0
},
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsxs)(Dragger, _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()({}, draggerprops), {}, {
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)("a", {
className: _ImportHomeworks_less_modules__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Z.downloadbutton,
style: {
width: 96
},
children: "\u9009\u62E9\u6587\u4EF6"
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)("br", {}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_12__.jsx)("span", {
style: {
color: '#999999'
},
children: "\u4E0B\u8F7D\u6A21\u677F\u5E76\u5B8C\u5584\u4FE1\u606F\u540E\uFF0C\u53EF\u5C06\u6587\u4EF6\u62D6\u66F3\u81F3\u6B64\u5904\u4E0A\u4F20\u3002\u652F\u6301\u683C\u5F0F\uFF1A.xls\u3001.xlsx"
})]
}))
})]
})]
})
});
};
/* harmony default export */ __webpack_exports__.Z = ((0,umi__WEBPACK_IMPORTED_MODULE_6__.connect)(function (_ref4) {
var classroomList = _ref4.classroomList;
return {
classroomList: classroomList
};
})(ImportHomeWorks));
/***/ }),
/***/ 87372:
/*!***********************************************************************************!*\
!*** ./src/pages/Classrooms/Lists/ShixunHomeworks/components/ImportHomeworks.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_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_defineProperty_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/defineProperty.js */ 85573);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_defineProperty_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_defineProperty_js__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_2__ = __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_2___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_2__);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_3__ = __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_3___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_3__);
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_4__ = __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_4___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_4__);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! react */ 59301);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(/*! antd */ 21068);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(/*! antd */ 78241);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(/*! antd */ 43418);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(/*! antd */ 8591);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(/*! antd */ 52306);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(/*! antd */ 8772);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(/*! antd */ 97913);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(/*! antd */ 95237);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(/*! antd */ 43604);
/* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(/*! antd */ 22744);
/* harmony import */ var umi__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! umi */ 32136);
/* harmony import */ var _components_markdown_editor__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @/components/markdown-editor */ 39987);
/* harmony import */ var _utils_env__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! @/utils/env */ 18765);
/* harmony import */ var _ImportHomeworks_less_modules__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./ImportHomeworks.less?modules */ 56369);
/* harmony import */ var _utils_fetch__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! @/utils/fetch */ 84087);
/* harmony import */ var _pages_Classrooms_Lists_ShixunHomeworks_Detail_components_ConfigWorks_Releasesetting__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! @/pages/Classrooms/Lists/ShixunHomeworks/Detail/components/ConfigWorks/Releasesetting */ 11629);
/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! moment */ 9498);
/* harmony import */ var moment__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(moment__WEBPACK_IMPORTED_MODULE_12__);
/* harmony import */ var _utils_util__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(/*! @/utils/util */ 25644);
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(/*! react/jsx-runtime */ 37712);
var Dragger = antd__WEBPACK_IMPORTED_MODULE_15__/* ["default"] */ .Z.Dragger;
var ImportHomeWorks = function ImportHomeWorks(_ref) {
var classroomList = _ref.classroomList,
dispatch = _ref.dispatch,
onOk = _ref.onOk;
var params = (0,umi__WEBPACK_IMPORTED_MODULE_6__.useParams)();
var _Form$useForm = antd__WEBPACK_IMPORTED_MODULE_16__/* ["default"] */ .Z.useForm(),
_Form$useForm2 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_4___default()(_Form$useForm, 1),
form = _Form$useForm2[0];
var _useState = (0,react__WEBPACK_IMPORTED_MODULE_5__.useState)(),
_useState2 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_4___default()(_useState, 2),
file = _useState2[0],
setfile = _useState2[1];
var _useState3 = (0,react__WEBPACK_IMPORTED_MODULE_5__.useState)(false),
_useState4 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_slicedToArray_js__WEBPACK_IMPORTED_MODULE_4___default()(_useState3, 2),
isLoading = _useState4[0],
setisLoading = _useState4[1];
var draggerprops = {
height: 100,
onRemove: function onRemove() {
setfile('');
},
accept: '.xls,.xlsx',
maxCount: 1,
multiple: false,
beforeUpload: function () {
var _beforeUpload = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_3___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_2___default()().mark(function _callee(file) {
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_2___default()().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
// let fileSize: number = 5 * 1024 * 1024 * 1024;
// let name = file.name.toLowerCase();
// if (file?.size > fileSize) {
// message.info(`文件超过${fileSize / 1024 / 1024 / 1024}GB,不符合上传要求`)
// return false
// }
setfile(file);
return _context.abrupt("return", false);
case 2:
case "end":
return _context.stop();
}
}, _callee);
}));
function beforeUpload(_x) {
return _beforeUpload.apply(this, arguments);
}
return beforeUpload;
}()
};
(0,react__WEBPACK_IMPORTED_MODULE_5__.useEffect)(function () {
form.setFieldsValue(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_defineProperty_js__WEBPACK_IMPORTED_MODULE_1___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_defineProperty_js__WEBPACK_IMPORTED_MODULE_1___default()({}, 'publish_time', moment__WEBPACK_IMPORTED_MODULE_12___default()(moment__WEBPACK_IMPORTED_MODULE_12___default()(new Date()).add(0, 'days').format('YYYY-MM-DD HH:mm'))), 'end_time', moment__WEBPACK_IMPORTED_MODULE_12___default()(moment__WEBPACK_IMPORTED_MODULE_12___default()(new Date((0,_utils_util__WEBPACK_IMPORTED_MODULE_13__/* .DayHalfPastOne */ .qd)('/'))).add(7, 'days').format('YYYY-MM-DD HH:mm'))));
}, [classroomList.actionTabs.key === '导入外部成绩']);
return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_14__.jsx)(antd__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .Z, {
centered: true,
title: "\u5BFC\u5165\u5916\u90E8\u6210\u7EE9",
open: classroomList.actionTabs.key === '导入外部成绩' ? true : false,
okText: "\u786E\u5B9A",
width: 750,
destroyOnClose: true,
cancelText: "\u53D6\u6D88",
okButtonProps: {
loading: isLoading
},
onOk: /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_3___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_2___default()().mark(function _callee2() {
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_2___default()().wrap(function _callee2$(_context2) {
while (1) switch (_context2.prev = _context2.next) {
case 0:
form.submit();
case 1:
case "end":
return _context2.stop();
}
}, _callee2);
})),
onCancel: function onCancel() {
form.resetFields();
dispatch({
type: 'classroomList/setActionTabs',
payload: {}
});
},
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_14__.jsxs)(antd__WEBPACK_IMPORTED_MODULE_16__/* ["default"] */ .Z, {
form: form,
colon: false,
onFinish: ( /*#__PURE__*/function () {
var _ref3 = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_3___default()( /*#__PURE__*/_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_2___default()().mark(function _callee3(values) {
var formData, res, _res$data, _res$data2;
return _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_regeneratorRuntime_js__WEBPACK_IMPORTED_MODULE_2___default()().wrap(function _callee3$(_context3) {
while (1) switch (_context3.prev = _context3.next) {
case 0:
if (file !== null && file !== void 0 && file.size) {
_context3.next = 3;
break;
}
antd__WEBPACK_IMPORTED_MODULE_18__/* ["default"] */ .ZP.info('请上传文件');
return _context3.abrupt("return");
case 3:
setisLoading(true);
formData = new FormData();
formData.append('name', values.name);
formData.append('type', classroomList.actionTabs.type);
if (classroomList.actionTabs.type === 'exercise') {
formData.append('time', values.time || '');
} else {
formData.append('description', values.description || '');
}
formData.append('publish_time', moment__WEBPACK_IMPORTED_MODULE_12___default()(values.publish_time).format('YYYY-MM-DD HH:mm'));
formData.append('end_time', moment__WEBPACK_IMPORTED_MODULE_12___default()(values.end_time).format('YYYY-MM-DD HH:mm'));
formData.append('file', file);
_context3.next = 13;
return (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_10__/* ["default"] */ .ZP)("/api/courses/".concat(params.coursesId, "/export_external_score_homework.json"), {
method: 'post',
body: formData
}, true);
case 13:
res = _context3.sent;
setisLoading(false);
if ((res === null || res === void 0 ? void 0 : res.status) === 0) {
form.resetFields();
dispatch({
type: 'classroomList/setActionTabs',
payload: {}
});
// normal, 'group', 'practice', 'hack', 'exercise'
onOk();
if ((res === null || res === void 0 || (_res$data = res.data) === null || _res$data === void 0 || (_res$data = _res$data.fail) === null || _res$data === void 0 ? void 0 : _res$data.length) > 0) {
antd__WEBPACK_IMPORTED_MODULE_17__/* ["default"] */ .Z.confirm({
title: '导入失败',
closable: true,
icon: null,
width: 610,
content: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_14__.jsx)(antd__WEBPACK_IMPORTED_MODULE_19__/* ["default"] */ .Z, {
pagination: false,
dataSource: res === null || res === void 0 || (_res$data2 = res.data) === null || _res$data2 === void 0 ? void 0 : _res$data2.fail,
scroll: {
y: 400
},
columns: [{
title: '姓名',
align: 'left',
dataIndex: 'name'
}, {
title: '学号/手机号/邮箱',
align: 'left',
dataIndex: 'student_id'
}, {
title: '导入失败原因',
align: 'left',
dataIndex: 'message'
}]
}),
okText: '下载导入失败文件',
cancelText: '取消',
onOk: function onOk() {
(0,_utils_util__WEBPACK_IMPORTED_MODULE_13__/* .downLoadFile */ .FH)('', _utils_env__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Z.API_SERVER + "/api/courses/get_external_score_fail_data.xlsx?type=".concat(classroomList.actionTabs.type));
}
});
}
}
case 16:
case "end":
return _context3.stop();
}
}, _callee3);
}));
return function (_x2) {
return _ref3.apply(this, arguments);
};
}()),
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_14__.jsx)(antd__WEBPACK_IMPORTED_MODULE_16__/* ["default"] */ .Z.Item, {
label: "\u4F5C\u4E1A\u540D\u79F0",
labelCol: {
span: 3
},
name: "name",
rules: [{
required: true,
message: '请输入作业名称'
}],
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_14__.jsx)(antd__WEBPACK_IMPORTED_MODULE_20__/* ["default"] */ .Z, {
showCount: true,
placeholder: "\u8BF7\u8F93\u5165\u4F5C\u4E1A\u540D\u79F0",
maxLength: 60
})
}), classroomList.actionTabs.type !== 'exercise' && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_14__.jsx)(antd__WEBPACK_IMPORTED_MODULE_16__/* ["default"] */ .Z.Item, {
label: "\u4F5C\u4E1A\u63CF\u8FF0",
labelCol: {
span: 3
},
name: "description",
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_14__.jsx)(_components_markdown_editor__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .Z, {
watch: true
})
}), classroomList.actionTabs.type === 'exercise' && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_14__.jsx)(antd__WEBPACK_IMPORTED_MODULE_16__/* ["default"] */ .Z.Item, {
label: "\u7B54\u9898\u65F6\u957F",
labelCol: {
span: 3
},
name: "time",
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_14__.jsx)(antd__WEBPACK_IMPORTED_MODULE_21__/* ["default"] */ .Z, {
style: {
width: '100%'
},
addonAfter: "\u5206\u949F",
placeholder: "\u8BF7\u8F93\u5165\u7B54\u9898\u65F6\u957F"
})
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_14__.jsxs)(antd__WEBPACK_IMPORTED_MODULE_22__/* ["default"] */ .Z, {
style: {
marginLeft: 6,
marginBottom: 12
},
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_14__.jsx)(antd__WEBPACK_IMPORTED_MODULE_23__/* ["default"] */ .Z, {
span: 12,
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_14__.jsx)(antd__WEBPACK_IMPORTED_MODULE_16__/* ["default"] */ .Z.Item, {
label: "\u5F00\u59CB\u65F6\u95F4",
name: "publish_time",
rules: [{
required: true,
message: '请选择开始时间'
}],
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_14__.jsx)(antd__WEBPACK_IMPORTED_MODULE_24__["default"], {
placeholder: '请选择发布时间',
showTime: {
format: 'HH:mm'
},
style: {
width: 256
},
disabledDate: function disabledDate(current) {
return (0,_pages_Classrooms_Lists_ShixunHomeworks_Detail_components_ConfigWorks_Releasesetting__WEBPACK_IMPORTED_MODULE_11__/* .disabledDate */ .Q8)(current);
},
disabledTime: function disabledTime(current) {
return (0,_pages_Classrooms_Lists_ShixunHomeworks_Detail_components_ConfigWorks_Releasesetting__WEBPACK_IMPORTED_MODULE_11__/* .disabledTime */ .d0)(current);
},
allowClear: false,
format: "YYYY-MM-DD HH:mm"
})
})
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_14__.jsx)(antd__WEBPACK_IMPORTED_MODULE_23__/* ["default"] */ .Z, {
span: 12,
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_14__.jsx)(antd__WEBPACK_IMPORTED_MODULE_16__/* ["default"] */ .Z.Item, {
label: "\u7ED3\u675F\u65F6\u95F4",
name: "end_time",
rules: [{
required: true,
message: '请选择结束时间'
}],
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_14__.jsx)(antd__WEBPACK_IMPORTED_MODULE_24__["default"], {
placeholder: '请选择发布时间',
showTime: {
format: 'HH:mm'
},
style: {
width: '100%'
},
disabledDate: function disabledDate(current) {
return (0,_pages_Classrooms_Lists_ShixunHomeworks_Detail_components_ConfigWorks_Releasesetting__WEBPACK_IMPORTED_MODULE_11__/* .disabledDate */ .Q8)(current, '', form.getFieldValue('publish_time'));
},
disabledTime: function disabledTime(current) {
return (0,_pages_Classrooms_Lists_ShixunHomeworks_Detail_components_ConfigWorks_Releasesetting__WEBPACK_IMPORTED_MODULE_11__/* .disabledTime */ .d0)(current, form.getFieldValue('publish_time'));
},
allowClear: false,
format: "YYYY-MM-DD HH:mm"
})
})
})]
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_14__.jsxs)(antd__WEBPACK_IMPORTED_MODULE_16__/* ["default"] */ .Z.Item, {
style: {
marginBottom: 0
},
label: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_14__.jsxs)("div", {
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_14__.jsx)("span", {
style: {
color: '#ff4d4f',
marginRight: 5,
fontFamily: 'SimSun,sans-serif'
},
children: "*"
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_14__.jsx)("span", {
children: "\u5BFC\u5165\u6587\u4EF6"
})]
}),
labelCol: {
span: 3
},
rules: [{
required: true,
message: '请输入作业名称'
}],
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_14__.jsxs)("div", {
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_14__.jsx)("a", {
download: "模版.xlsx",
className: _ImportHomeworks_less_modules__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .Z.downloadbutton,
href: _utils_env__WEBPACK_IMPORTED_MODULE_8__/* ["default"] */ .Z.API_SERVER + "/api/courses/down_external_score_template.json?type=".concat(classroomList.actionTabs.type),
children: "\u4E0B\u8F7D\u6A21\u7248\u8868\u683C"
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_14__.jsx)("span", {
style: {
marginLeft: 10,
color: '#999999'
},
children: "\uFF08\u6839\u636E\u63D0\u793A\u4FE1\u606F\u5B8C\u5584\u8868\u683C\u5185\u5BB9\uFF09"
})]
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_14__.jsx)(antd__WEBPACK_IMPORTED_MODULE_16__/* ["default"] */ .Z.Item, {
style: {
marginBottom: 0
},
children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_14__.jsxs)(Dragger, _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()({}, draggerprops), {}, {
children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_14__.jsx)("a", {
className: _ImportHomeworks_less_modules__WEBPACK_IMPORTED_MODULE_9__/* ["default"] */ .Z.downloadbutton,
style: {
width: 96
},
children: "\u9009\u62E9\u6587\u4EF6"
}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_14__.jsx)("br", {}), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_14__.jsx)("span", {
style: {
color: '#999999'
},
children: "\u4E0B\u8F7D\u6A21\u677F\u5E76\u5B8C\u5584\u4FE1\u606F\u540E\uFF0C\u53EF\u5C06\u6587\u4EF6\u62D6\u66F3\u81F3\u6B64\u5904\u4E0A\u4F20\u3002\u652F\u6301\u683C\u5F0F\uFF1A.xls\u3001.xlsx"
})]
}))
})]
})]
})
});
};
/* harmony default export */ __webpack_exports__.Z = ((0,umi__WEBPACK_IMPORTED_MODULE_6__.connect)(function (_ref4) {
var classroomList = _ref4.classroomList;
return {
classroomList: classroomList
};
})(ImportHomeWorks));
/***/ }),
/***/ 2757:
/*!*********************************************************************************************!*\
!*** ./src/pages/Classrooms/Lists/ShixunHomeworks/components/TrfList/index.tsx + 2 modules ***!
\*********************************************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
"use strict";
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ components_TrfList; }
});
// 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: ./node_modules/_antd@5.9.0@antd/es/input/index.js + 5 modules
var input = __webpack_require__(8772);
// 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);
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ShixunHomeworks/components/TrfList/index.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var TrfListmodules = ({"leftdiv":"leftdiv___aBzsX","listClass":"listClass___bxIEW","spantitle":"spantitle___v_Vc4","rightdiv":"rightdiv___xWu4M"});
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ShixunHomeworks/components/TrfList/delete.png
var delete_namespaceObject = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAbVJREFUOE+Nk79rFUEUhb+zE4OFwUD+CyGKKQQbSaMikQQ7C1tBBIsUQaJvl2Fn/cWDpAiIYJsi7YOIaCUWFoKKRhG0sbEzEImFGnev7G6yyXsxeU5159yZb87l3hG9q2WLiBO79FIwXpLp0s6cwITnQCMWrGDM43jdBckZQ0wTMdrong2R2Bxm0/98sZ8ozdcOEm5hjOC41u9Olc9ZQKySclOVkNhljCmCzjeAJM/4FbW5p+8k5tlggTtarfKxLSM6pHq4BTiL0SboaAOIi284jeP1nti+ApMEvdoEvEPMkOpJDZi1IwzwgqDh/wSsYZwk08ca4O0Qua3zW8OV5crmHg6u22EGbQ2nIbx+1IC6rrK+cYJW9gXEVrbxGUEj5bltQGJvgBapHu0LSGwCyEh1vBsQWwd4TNCDPg6uAOcImuoFlL1dJ9WNPg5uYwwRVM3MzhJmKIpjZK6e9bj4jNNpvL4QFx9wuoDXJ1r5IlH0llTtXgcXwa4SolObnYnwKnbFcfEcdJ+gpW6AtzFynuIop/Fn053u4CA5yzjO4FV9tu0Syl2S38WiSWBgD8AfoEPQ7Fb+LwIiyhxWwe2KAAAAAElFTkSuQmCC";
// EXTERNAL MODULE: ./src/components/NoData/index.tsx
var NoData = __webpack_require__(69519);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/jsx-runtime.js
var jsx_runtime = __webpack_require__(37712);
;// CONCATENATED MODULE: ./src/pages/Classrooms/Lists/ShixunHomeworks/components/TrfList/index.tsx
//滚动加载
var TrfList = function TrfList(_ref) {
var data = _ref.data,
_ref$value = _ref.value,
value = _ref$value === void 0 ? [] : _ref$value,
handleChangePage = _ref.handleChangePage,
setSelectedRowKeys = _ref.setSelectedRowKeys,
selectedRowKeys = _ref.selectedRowKeys,
_ref$onChange = _ref.onChange,
onChange = _ref$onChange === void 0 ? function () {} : _ref$onChange;
var _useState = (0,_react_17_0_2_react.useState)([]),
_useState2 = slicedToArray_default()(_useState, 2),
leftList = _useState2[0],
setleftList = _useState2[1];
var _useState3 = (0,_react_17_0_2_react.useState)([]),
_useState4 = slicedToArray_default()(_useState3, 2),
rightList = _useState4[0],
setRightList = _useState4[1];
var _useState5 = (0,_react_17_0_2_react.useState)([]),
_useState6 = slicedToArray_default()(_useState5, 2),
checkoutList = _useState6[0],
setCheckoutList = _useState6[1];
var _useState7 = (0,_react_17_0_2_react.useState)(1),
_useState8 = slicedToArray_default()(_useState7, 2),
page = _useState8[0],
setpage = _useState8[1];
var _useState9 = (0,_react_17_0_2_react.useState)(),
_useState10 = slicedToArray_default()(_useState9, 2),
sechar = _useState10[0],
setsechar = _useState10[1];
(0,_react_17_0_2_react.useEffect)(function () {
setleftList(data);
setRightList([]);
setCheckoutList([]);
}, [data]);
(0,_react_17_0_2_react.useEffect)(function () {
if (setSelectedRowKeys) {
setRightList(selectedRowKeys);
setCheckoutList(selectedRowKeys);
}
}, [selectedRowKeys]);
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
style: {
display: 'flex',
justifyContent: 'space-between'
},
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: TrfListmodules.leftdiv,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z.Search, {
size: 'middle',
onChange: ( /*#__PURE__*/function () {
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee(e) {
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
// const res = await Fetch(`/api/common_exercises/exercise_users/student_groups.json`, { method: "get", params: {page: 1, per_page: 200,student_group:e} });
// if (res.status === 0) {
// setleftList(res?.data)
// setsechar(e);
// }
// if(!e){
// setsechar('');
// }
// setpage(1);
setleftList(data.filter(function (item) {
var _item$name;
return item === null || item === void 0 || (_item$name = item.name) === null || _item$name === void 0 ? void 0 : _item$name.includes(e.target.value);
}));
case 1:
case "end":
return _context.stop();
}
}, _callee);
}));
return function (_x) {
return _ref2.apply(this, arguments);
};
}()),
placeholder: "\u53EF\u8F93\u5165\u73ED\u7EA7\u540D\u79F0\u67E5\u8BE2"
}), leftList.length === 0 && /*#__PURE__*/(0,jsx_runtime.jsx)(NoData/* default */.Z, {
styles: {
margin: '70px auto'
},
customText: '暂无分班'
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
style: {
height: '85%',
overflow: 'auto',
overflowX: 'hidden'
},
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_checkbox/* default */.Z.Group, {
value: rightList.map(function (item) {
return "".concat(item.id);
}),
onChange: function onChange(e) {
setSelectedRowKeys(leftList.filter(function (item) {
return e.includes("".concat(item.id));
}));
},
style: {
marginTop: '10px',
flexDirection: "column"
},
children: leftList.map(function (item, index) {
return /*#__PURE__*/(0,jsx_runtime.jsx)(row/* default */.Z, {
style: {
marginTop: '10px',
lineHeight: '24px',
display: 'flex',
width: 200
},
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_checkbox/* default */.Z, {
style: {
display: 'flex',
height: '24px',
alignItems: 'center'
},
disabled: item.is_published,
value: "".concat(item.id),
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: TrfListmodules.listClass,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: TrfListmodules.spantitle,
style: {
width: item.is_published ? '108px' : '170px'
},
children: item.name
}), item.is_published && /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
style: {
width: '52px',
height: '24px',
background: '#B8B8B8',
borderRadius: '13px',
color: 'white',
lineHeight: '24px',
textAlign: 'center',
display: 'inline-block'
},
children: "\u5DF2\u53D1\u5E03"
})]
})
})
}, item.id);
})
})
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: TrfListmodules.rightdiv,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z.Search, {
onChange: function onChange(e) {
setCheckoutList(rightList.filter(function (item) {
return item.name.includes(e.target.value);
}));
},
size: 'middle',
placeholder: "\u53EF\u8F93\u5165\u73ED\u7EA7\u540D\u79F0\u67E5\u8BE2"
}), checkoutList.length === 0 && /*#__PURE__*/(0,jsx_runtime.jsx)(NoData/* default */.Z, {
styles: {
margin: '70px auto'
},
customText: '暂未选择分班'
}), checkoutList.length > 0 && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
style: {
marginTop: '10px',
height: '85%',
overflow: 'hidden',
position: 'relative'
},
children: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
style: {
overflowX: 'hidden',
overflowY: 'scroll',
position: 'absolute',
left: 0,
top: 0,
right: -17,
bottom: 0
},
children: checkoutList.map(function (item, index) {
return /*#__PURE__*/(0,jsx_runtime.jsxs)(row/* default */.Z, {
justify: "space-between",
style: {
marginTop: '10px'
},
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
style: {
overflow: 'hidden',
whiteSpace: 'nowrap',
textOverflow: 'ellipsis',
marginRight: '5px',
marginLeft: '5px',
width: '75%'
},
children: item.name
}), /*#__PURE__*/(0,jsx_runtime.jsx)("img", {
src: delete_namespaceObject,
style: {
cursor: 'pointer',
height: '16px',
marginRight: 17
},
onClick: function onClick() {
setSelectedRowKeys(rightList.filter(function (items) {
return "".concat(items.id) != "".concat(item.id);
}));
}
})]
}, item.id);
})
})
})]
})]
});
};
/* harmony default export */ var components_TrfList = (TrfList);
/***/ }),
/***/ 48367:
/*!**************************************************!*\
!*** ./src/pages/MoopCases/FormPanel/service.ts ***!
\**************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ $J: function() { return /* binding */ getMoopCase; },
/* harmony export */ JZ: function() { return /* binding */ removeAttachment; },
/* harmony export */ bN: function() { return /* binding */ updateMoopCase; },
/* harmony export */ jP: function() { return /* binding */ addMoopCase; },
/* harmony export */ rO: function() { return /* binding */ getLibraryTags; }
/* harmony export */ });
/* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_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_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_1__ = __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_1___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_1__);
/* harmony import */ var _utils_fetch__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/utils/fetch */ 84087);
function getMoopCase(id) {
return (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_2__/* .get */ .U2)("libraries/".concat(id, ".json"));
}
function getLibraryTags() {
return (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_2__/* .get */ .U2)('library_tags.json');
}
function removeAttachment(_x) {
return _removeAttachment.apply(this, arguments);
}
function _removeAttachment() {
_removeAttachment = _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_6_babel_runtime_helpers_asyncToGenerator_js__WEBPACK_IMPORTED_MODULE_1___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(id) {
var response;
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_2__/* .del */ .IV)("attachments/".concat(id, ".json"));
case 2:
response = _context.sent;
return _context.abrupt("return", response.status === 0);
case 4:
case "end":
return _context.stop();
}
}, _callee);
}));
return _removeAttachment.apply(this, arguments);
}
function addMoopCase(params) {
return (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_2__/* .post */ .v_)("libraries.json", params);
}
function updateMoopCase(id, params) {
return (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_2__/* .put */ .gz)("libraries/".concat(id, ".json"), params);
}
/***/ }),
/***/ 56369:
/*!********************************************************************************************!*\
!*** ./src/pages/Classrooms/Lists/ShixunHomeworks/components/ImportHomeworks.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___SF0m3","flex_space_between":"flex_space_between___ChLjp","flex_box_vertical_center":"flex_box_vertical_center____l_EF","flex_box_center_end":"flex_box_center_end___YcZNu","flex_box_column":"flex_box_column___R9dNq","downloadbutton":"downloadbutton___oEXJW"});
/***/ }),
/***/ 27666:
/*!****************************************************************************!*\
!*** ./node_modules/_antd@5.9.0@antd/es/_util/throttleByAnimationFrame.js ***!
\****************************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
"use strict";
/* harmony import */ var _babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @babel/runtime/helpers/esm/toConsumableArray */ 12101);
/* harmony import */ var rc_util_es_raf__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! rc-util/es/raf */ 91659);
function throttleByAnimationFrame(fn) {
let requestId;
const later = args => () => {
requestId = null;
fn.apply(void 0, (0,_babel_runtime_helpers_esm_toConsumableArray__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .Z)(args));
};
const throttled = function () {
if (requestId == null) {
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
args[_key] = arguments[_key];
}
requestId = (0,rc_util_es_raf__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z)(later(args));
}
};
throttled.cancel = () => {
rc_util_es_raf__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Z.cancel(requestId);
requestId = null;
};
return throttled;
}
/* harmony default export */ __webpack_exports__.Z = (throttleByAnimationFrame);
/***/ }),
/***/ 81228:
/*!*********************************************************************!*\
!*** ./node_modules/_antd@5.9.0@antd/es/affix/index.js + 2 modules ***!
\*********************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
"use strict";
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ affix; }
});
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.24.4@@babel/runtime/helpers/esm/classCallCheck.js
var classCallCheck = __webpack_require__(70057);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.24.4@@babel/runtime/helpers/esm/createClass.js
var createClass = __webpack_require__(3643);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.24.4@@babel/runtime/helpers/esm/inherits.js
var inherits = __webpack_require__(61471);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.24.4@@babel/runtime/helpers/esm/createSuper.js + 1 modules
var createSuper = __webpack_require__(14385);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
// 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/_rc-resize-observer@1.4.0@rc-resize-observer/es/index.js + 4 modules
var es = __webpack_require__(28647);
// EXTERNAL MODULE: ./node_modules/_rc-util@5.39.1@rc-util/es/omit.js
var omit = __webpack_require__(62805);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/_util/throttleByAnimationFrame.js
var throttleByAnimationFrame = __webpack_require__(27666);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/config-provider/context.js
var context = __webpack_require__(36355);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/genComponentStyleHook.js
var genComponentStyleHook = __webpack_require__(83116);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/theme/util/statistic.js
var statistic = __webpack_require__(37613);
;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/affix/style/index.js
// ============================== Shared ==============================
const genSharedAffixStyle = token => {
const {
componentCls
} = token;
return {
[componentCls]: {
position: 'fixed',
zIndex: token.zIndexPopup
}
};
};
// ============================== Export ==============================
/* harmony default export */ var style = ((0,genComponentStyleHook/* default */.Z)('Affix', token => {
const affixToken = (0,statistic/* merge */.TS)(token, {
zIndexPopup: token.zIndexBase + 10
});
return [genSharedAffixStyle(affixToken)];
}));
;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/affix/utils.js
function getTargetRect(target) {
return target !== window ? target.getBoundingClientRect() : {
top: 0,
bottom: window.innerHeight
};
}
function getFixedTop(placeholderRect, targetRect, offsetTop) {
if (offsetTop !== undefined && targetRect.top > placeholderRect.top - offsetTop) {
return offsetTop + targetRect.top;
}
return undefined;
}
function getFixedBottom(placeholderRect, targetRect, offsetBottom) {
if (offsetBottom !== undefined && targetRect.bottom < placeholderRect.bottom + offsetBottom) {
const targetBottomOffset = window.innerHeight - targetRect.bottom;
return offsetBottom + targetBottomOffset;
}
return undefined;
}
;// CONCATENATED MODULE: ./node_modules/_antd@5.9.0@antd/es/affix/index.js
"use client";
const TRIGGER_EVENTS = ['resize', 'scroll', 'touchstart', 'touchmove', 'touchend', 'pageshow', 'load'];
function getDefaultTarget() {
return typeof window !== 'undefined' ? window : null;
}
var AffixStatus;
(function (AffixStatus) {
AffixStatus[AffixStatus["None"] = 0] = "None";
AffixStatus[AffixStatus["Prepare"] = 1] = "Prepare";
})(AffixStatus || (AffixStatus = {}));
let InternalAffix = /*#__PURE__*/function (_React$Component) {
(0,inherits/* default */.Z)(InternalAffix, _React$Component);
var _super = (0,createSuper/* default */.Z)(InternalAffix);
function InternalAffix() {
var _this;
(0,classCallCheck/* default */.Z)(this, InternalAffix);
_this = _super.apply(this, arguments);
_this.state = {
status: AffixStatus.None,
lastAffix: false,
prevTarget: null
};
_this.placeholderNodeRef = /*#__PURE__*/(0,_react_17_0_2_react.createRef)();
_this.fixedNodeRef = /*#__PURE__*/(0,_react_17_0_2_react.createRef)();
_this.addListeners = () => {
const targetFunc = _this.getTargetFunc();
const target = targetFunc === null || targetFunc === void 0 ? void 0 : targetFunc();
const {
prevTarget
} = _this.state;
if (prevTarget !== target) {
TRIGGER_EVENTS.forEach(eventName => {
prevTarget === null || prevTarget === void 0 ? void 0 : prevTarget.removeEventListener(eventName, _this.lazyUpdatePosition);
target === null || target === void 0 ? void 0 : target.addEventListener(eventName, _this.lazyUpdatePosition);
});
_this.updatePosition();
_this.setState({
prevTarget: target
});
}
};
_this.removeListeners = () => {
if (_this.timer) {
clearTimeout(_this.timer);
_this.timer = null;
}
const {
prevTarget
} = _this.state;
const targetFunc = _this.getTargetFunc();
const newTarget = targetFunc === null || targetFunc === void 0 ? void 0 : targetFunc();
TRIGGER_EVENTS.forEach(eventName => {
newTarget === null || newTarget === void 0 ? void 0 : newTarget.removeEventListener(eventName, _this.lazyUpdatePosition);
prevTarget === null || prevTarget === void 0 ? void 0 : prevTarget.removeEventListener(eventName, _this.lazyUpdatePosition);
});
_this.updatePosition.cancel();
// https://github.com/ant-design/ant-design/issues/22683
_this.lazyUpdatePosition.cancel();
};
_this.getOffsetTop = () => {
const {
offsetBottom,
offsetTop
} = _this.props;
return offsetBottom === undefined && offsetTop === undefined ? 0 : offsetTop;
};
_this.getOffsetBottom = () => _this.props.offsetBottom;
// =================== Measure ===================
_this.measure = () => {
const {
status,
lastAffix
} = _this.state;
const {
onChange
} = _this.props;
const targetFunc = _this.getTargetFunc();
if (status !== AffixStatus.Prepare || !_this.fixedNodeRef.current || !_this.placeholderNodeRef.current || !targetFunc) {
return;
}
const offsetTop = _this.getOffsetTop();
const offsetBottom = _this.getOffsetBottom();
const targetNode = targetFunc();
if (targetNode) {
const newState = {
status: AffixStatus.None
};
const placeholderRect = getTargetRect(_this.placeholderNodeRef.current);
if (placeholderRect.top === 0 && placeholderRect.left === 0 && placeholderRect.width === 0 && placeholderRect.height === 0) {
return;
}
const targetRect = getTargetRect(targetNode);
const fixedTop = getFixedTop(placeholderRect, targetRect, offsetTop);
const fixedBottom = getFixedBottom(placeholderRect, targetRect, offsetBottom);
if (fixedTop !== undefined) {
newState.affixStyle = {
position: 'fixed',
top: fixedTop,
width: placeholderRect.width,
height: placeholderRect.height
};
newState.placeholderStyle = {
width: placeholderRect.width,
height: placeholderRect.height
};
} else if (fixedBottom !== undefined) {
newState.affixStyle = {
position: 'fixed',
bottom: fixedBottom,
width: placeholderRect.width,
height: placeholderRect.height
};
newState.placeholderStyle = {
width: placeholderRect.width,
height: placeholderRect.height
};
}
newState.lastAffix = !!newState.affixStyle;
if (onChange && lastAffix !== newState.lastAffix) {
onChange(newState.lastAffix);
}
_this.setState(newState);
}
};
_this.prepareMeasure = () => {
// event param is used before. Keep compatible ts define here.
_this.setState({
status: AffixStatus.Prepare,
affixStyle: undefined,
placeholderStyle: undefined
});
// Test if `updatePosition` called
if (false) {}
};
_this.updatePosition = (0,throttleByAnimationFrame/* default */.Z)(() => {
_this.prepareMeasure();
});
_this.lazyUpdatePosition = (0,throttleByAnimationFrame/* default */.Z)(() => {
const targetFunc = _this.getTargetFunc();
const {
affixStyle
} = _this.state;
// Check position change before measure to make Safari smooth
if (targetFunc && affixStyle) {
const offsetTop = _this.getOffsetTop();
const offsetBottom = _this.getOffsetBottom();
const targetNode = targetFunc();
if (targetNode && _this.placeholderNodeRef.current) {
const targetRect = getTargetRect(targetNode);
const placeholderRect = getTargetRect(_this.placeholderNodeRef.current);
const fixedTop = getFixedTop(placeholderRect, targetRect, offsetTop);
const fixedBottom = getFixedBottom(placeholderRect, targetRect, offsetBottom);
if (fixedTop !== undefined && affixStyle.top === fixedTop || fixedBottom !== undefined && affixStyle.bottom === fixedBottom) {
return;
}
}
}
// Directly call prepare measure since it's already throttled.
_this.prepareMeasure();
});
return _this;
}
(0,createClass/* default */.Z)(InternalAffix, [{
key: "getTargetFunc",
value: function getTargetFunc() {
const {
getTargetContainer
} = this.context;
const {
target
} = this.props;
if (target !== undefined) {
return target;
}
return getTargetContainer !== null && getTargetContainer !== void 0 ? getTargetContainer : getDefaultTarget;
}
// Event handler
}, {
key: "componentDidMount",
value: function componentDidMount() {
// [Legacy] Wait for parent component ref has its value.
// We should use target as directly element instead of function which makes element check hard.
this.timer = setTimeout(this.addListeners);
}
}, {
key: "componentDidUpdate",
value: function componentDidUpdate(prevProps) {
this.addListeners();
if (prevProps.offsetTop !== this.props.offsetTop || prevProps.offsetBottom !== this.props.offsetBottom) {
this.updatePosition();
}
this.measure();
}
}, {
key: "componentWillUnmount",
value: function componentWillUnmount() {
this.removeListeners();
}
// =================== Render ===================
}, {
key: "render",
value: function render() {
const {
affixStyle,
placeholderStyle
} = this.state;
const {
affixPrefixCls,
rootClassName,
children
} = this.props;
const className = _classnames_2_5_1_classnames_default()(affixStyle && rootClassName, {
[affixPrefixCls]: !!affixStyle
});
let props = (0,omit/* default */.Z)(this.props, ['prefixCls', 'offsetTop', 'offsetBottom', 'target', 'onChange', 'affixPrefixCls', 'rootClassName']);
// Omit this since `onTestUpdatePosition` only works on test.
if (false) {}
return /*#__PURE__*/_react_17_0_2_react.createElement(es/* default */.Z, {
onResize: this.updatePosition
}, /*#__PURE__*/_react_17_0_2_react.createElement("div", Object.assign({}, props, {
ref: this.placeholderNodeRef
}), affixStyle && /*#__PURE__*/_react_17_0_2_react.createElement("div", {
style: placeholderStyle,
"aria-hidden": "true"
}), /*#__PURE__*/_react_17_0_2_react.createElement("div", {
className: className,
ref: this.fixedNodeRef,
style: affixStyle
}, /*#__PURE__*/_react_17_0_2_react.createElement(es/* default */.Z, {
onResize: this.updatePosition
}, children))));
}
}]);
return InternalAffix;
}(_react_17_0_2_react.Component);
InternalAffix.contextType = context/* ConfigContext */.E_;
const Affix = /*#__PURE__*/(0,_react_17_0_2_react.forwardRef)((props, ref) => {
const {
prefixCls: customizePrefixCls,
rootClassName
} = props;
const {
getPrefixCls
} = (0,_react_17_0_2_react.useContext)(context/* ConfigContext */.E_);
const affixPrefixCls = getPrefixCls('affix', customizePrefixCls);
const [wrapSSR, hashId] = style(affixPrefixCls);
const AffixProps = Object.assign(Object.assign({}, props), {
affixPrefixCls,
rootClassName: _classnames_2_5_1_classnames_default()(rootClassName, hashId)
});
return wrapSSR( /*#__PURE__*/_react_17_0_2_react.createElement(InternalAffix, Object.assign({}, AffixProps, {
ref: ref
})));
});
if (false) {}
/* harmony default export */ var affix = (Affix);
/***/ }),
/***/ 51581:
/*!****************************************************************************************************!*\
!*** ./node_modules/_react-infinite-scroller@1.2.4@react-infinite-scroller/dist/InfiniteScroll.js ***!
\****************************************************************************************************/
/***/ (function(module, exports, __webpack_require__) {
"use strict";
Object.defineProperty(exports, "__esModule", ({
value: true
}));
var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
var _react = __webpack_require__(/*! react */ 59301);
var _react2 = _interopRequireDefault(_react);
var _propTypes = __webpack_require__(/*! prop-types */ 12708);
var _propTypes2 = _interopRequireDefault(_propTypes);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
var InfiniteScroll = function (_Component) {
_inherits(InfiniteScroll, _Component);
function InfiniteScroll(props) {
_classCallCheck(this, InfiniteScroll);
var _this = _possibleConstructorReturn(this, (InfiniteScroll.__proto__ || Object.getPrototypeOf(InfiniteScroll)).call(this, props));
_this.scrollListener = _this.scrollListener.bind(_this);
_this.eventListenerOptions = _this.eventListenerOptions.bind(_this);
_this.mousewheelListener = _this.mousewheelListener.bind(_this);
return _this;
}
_createClass(InfiniteScroll, [{
key: 'componentDidMount',
value: function componentDidMount() {
this.pageLoaded = this.props.pageStart;
this.options = this.eventListenerOptions();
this.attachScrollListener();
}
}, {
key: 'componentDidUpdate',
value: function componentDidUpdate() {
if (this.props.isReverse && this.loadMore) {
var parentElement = this.getParentElement(this.scrollComponent);
parentElement.scrollTop = parentElement.scrollHeight - this.beforeScrollHeight + this.beforeScrollTop;
this.loadMore = false;
}
this.attachScrollListener();
}
}, {
key: 'componentWillUnmount',
value: function componentWillUnmount() {
this.detachScrollListener();
this.detachMousewheelListener();
}
}, {
key: 'isPassiveSupported',
value: function isPassiveSupported() {
var passive = false;
var testOptions = {
get passive() {
passive = true;
}
};
try {
document.addEventListener('test', null, testOptions);
document.removeEventListener('test', null, testOptions);
} catch (e) {
// ignore
}
return passive;
}
}, {
key: 'eventListenerOptions',
value: function eventListenerOptions() {
var options = this.props.useCapture;
if (this.isPassiveSupported()) {
options = {
useCapture: this.props.useCapture,
passive: true
};
}
return options;
}
// Set a defaut loader for all your `InfiniteScroll` components
}, {
key: 'setDefaultLoader',
value: function setDefaultLoader(loader) {
this.defaultLoader = loader;
}
}, {
key: 'detachMousewheelListener',
value: function detachMousewheelListener() {
var scrollEl = window;
if (this.props.useWindow === false) {
scrollEl = this.scrollComponent.parentNode;
}
scrollEl.removeEventListener('mousewheel', this.mousewheelListener, this.options ? this.options : this.props.useCapture);
}
}, {
key: 'detachScrollListener',
value: function detachScrollListener() {
var scrollEl = window;
if (this.props.useWindow === false) {
scrollEl = this.getParentElement(this.scrollComponent);
}
scrollEl.removeEventListener('scroll', this.scrollListener, this.options ? this.options : this.props.useCapture);
scrollEl.removeEventListener('resize', this.scrollListener, this.options ? this.options : this.props.useCapture);
}
}, {
key: 'getParentElement',
value: function getParentElement(el) {
var scrollParent = this.props.getScrollParent && this.props.getScrollParent();
if (scrollParent != null) {
return scrollParent;
}
return el && el.parentNode;
}
}, {
key: 'filterProps',
value: function filterProps(props) {
return props;
}
}, {
key: 'attachScrollListener',
value: function attachScrollListener() {
var parentElement = this.getParentElement(this.scrollComponent);
if (!this.props.hasMore || !parentElement) {
return;
}
var scrollEl = window;
if (this.props.useWindow === false) {
scrollEl = parentElement;
}
scrollEl.addEventListener('mousewheel', this.mousewheelListener, this.options ? this.options : this.props.useCapture);
scrollEl.addEventListener('scroll', this.scrollListener, this.options ? this.options : this.props.useCapture);
scrollEl.addEventListener('resize', this.scrollListener, this.options ? this.options : this.props.useCapture);
if (this.props.initialLoad) {
this.scrollListener();
}
}
}, {
key: 'mousewheelListener',
value: function mousewheelListener(e) {
// Prevents Chrome hangups
// See: https://stackoverflow.com/questions/47524205/random-high-content-download-time-in-chrome/47684257#47684257
if (e.deltaY === 1 && !this.isPassiveSupported()) {
e.preventDefault();
}
}
}, {
key: 'scrollListener',
value: function scrollListener() {
var el = this.scrollComponent;
var scrollEl = window;
var parentNode = this.getParentElement(el);
var offset = void 0;
if (this.props.useWindow) {
var doc = document.documentElement || document.body.parentNode || document.body;
var scrollTop = scrollEl.pageYOffset !== undefined ? scrollEl.pageYOffset : doc.scrollTop;
if (this.props.isReverse) {
offset = scrollTop;
} else {
offset = this.calculateOffset(el, scrollTop);
}
} else if (this.props.isReverse) {
offset = parentNode.scrollTop;
} else {
offset = el.scrollHeight - parentNode.scrollTop - parentNode.clientHeight;
}
// Here we make sure the element is visible as well as checking the offset
if (offset < Number(this.props.threshold) && el && el.offsetParent !== null) {
this.detachScrollListener();
this.beforeScrollHeight = parentNode.scrollHeight;
this.beforeScrollTop = parentNode.scrollTop;
// Call loadMore after detachScrollListener to allow for non-async loadMore functions
if (typeof this.props.loadMore === 'function') {
this.props.loadMore(this.pageLoaded += 1);
this.loadMore = true;
}
}
}
}, {
key: 'calculateOffset',
value: function calculateOffset(el, scrollTop) {
if (!el) {
return 0;
}
return this.calculateTopPosition(el) + (el.offsetHeight - scrollTop - window.innerHeight);
}
}, {
key: 'calculateTopPosition',
value: function calculateTopPosition(el) {
if (!el) {
return 0;
}
return el.offsetTop + this.calculateTopPosition(el.offsetParent);
}
}, {
key: 'render',
value: function render() {
var _this2 = this;
var renderProps = this.filterProps(this.props);
var children = renderProps.children,
element = renderProps.element,
hasMore = renderProps.hasMore,
initialLoad = renderProps.initialLoad,
isReverse = renderProps.isReverse,
loader = renderProps.loader,
loadMore = renderProps.loadMore,
pageStart = renderProps.pageStart,
ref = renderProps.ref,
threshold = renderProps.threshold,
useCapture = renderProps.useCapture,
useWindow = renderProps.useWindow,
getScrollParent = renderProps.getScrollParent,
props = _objectWithoutProperties(renderProps, ['children', 'element', 'hasMore', 'initialLoad', 'isReverse', 'loader', 'loadMore', 'pageStart', 'ref', 'threshold', 'useCapture', 'useWindow', 'getScrollParent']);
props.ref = function (node) {
_this2.scrollComponent = node;
if (ref) {
ref(node);
}
};
var childrenArray = [children];
if (hasMore) {
if (loader) {
isReverse ? childrenArray.unshift(loader) : childrenArray.push(loader);
} else if (this.defaultLoader) {
isReverse ? childrenArray.unshift(this.defaultLoader) : childrenArray.push(this.defaultLoader);
}
}
return _react2.default.createElement(element, props, childrenArray);
}
}]);
return InfiniteScroll;
}(_react.Component);
InfiniteScroll.propTypes = {
children: _propTypes2.default.node.isRequired,
element: _propTypes2.default.node,
hasMore: _propTypes2.default.bool,
initialLoad: _propTypes2.default.bool,
isReverse: _propTypes2.default.bool,
loader: _propTypes2.default.node,
loadMore: _propTypes2.default.func.isRequired,
pageStart: _propTypes2.default.number,
ref: _propTypes2.default.func,
getScrollParent: _propTypes2.default.func,
threshold: _propTypes2.default.number,
useCapture: _propTypes2.default.bool,
useWindow: _propTypes2.default.bool
};
InfiniteScroll.defaultProps = {
element: 'div',
hasMore: false,
initialLoad: true,
pageStart: 0,
ref: null,
threshold: 250,
useWindow: true,
isReverse: false,
useCapture: false,
loader: null,
getScrollParent: null
};
exports["default"] = InfiniteScroll;
module.exports = exports['default'];
/***/ }),
/***/ 26724:
/*!**************************************************************************************!*\
!*** ./node_modules/_react-infinite-scroller@1.2.4@react-infinite-scroller/index.js ***!
\**************************************************************************************/
/***/ (function(module, __unused_webpack_exports, __webpack_require__) {
module.exports = __webpack_require__(/*! ./dist/InfiniteScroll */ 51581)
/***/ }),
/***/ 93314:
/*!********************************************!*\
!*** ./src/assets/images/icons/nodata.png ***!
\********************************************/
/***/ (function(module) {
"use strict";
module.exports = "data:image/png;base64,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";
/***/ })
}]);