You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
NewEduCoderBuild/p__Forums__New__index.async.js

768 lines
31 KiB

"use strict";
(self["webpackChunk"] = self["webpackChunk"] || []).push([[4264],{
/***/ 63292:
/*!**********************************************************!*\
!*** ./src/components/MultiUpload/index.tsx + 3 modules ***!
\**********************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
z: function() { return /* binding */ coverToFileList; },
Z: function() { return /* binding */ MultiUpload; }
});
// 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__(73598);
// 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__(19351);
// EXTERNAL MODULE: ./src/pages/MoopCases/FormPanel/service.ts
var service = __webpack_require__(13813);
;// CONCATENATED MODULE: ./src/components/SingleUpload/index.tsx
var __defProp = Object.defineProperty;
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __propIsEnum = Object.prototype.propertyIsEnumerable;
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
var __spreadValues = (a, b) => {
for (var prop in b || (b = {}))
if (__hasOwnProp.call(b, prop))
__defNormalProp(a, prop, b[prop]);
if (__getOwnPropSymbols)
for (var prop of __getOwnPropSymbols(b)) {
if (__propIsEnum.call(b, prop))
__defNormalProp(a, prop, b[prop]);
}
return a;
};
var __async = (__this, __arguments, generator) => {
return new Promise((resolve, reject) => {
var fulfilled = (value) => {
try {
step(generator.next(value));
} catch (e) {
reject(e);
}
};
var rejected = (value) => {
try {
step(generator.throw(value));
} catch (e) {
reject(e);
}
};
var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
step((generator = generator.apply(__this, __arguments)).next());
});
};
const uploadNameSizeSeperator = "\u3000\u3000";
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 = (({
value = [],
action,
onChange,
className,
maxSize = 150,
title = "\u6587\u4EF6\u4E0A\u4F20",
accept = null
}) => {
const uploadProps = {
multiple: false,
fileList: value,
accept,
withCredentials: true,
beforeUpload: (file) => {
const 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(${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: `${ENV.API_SERVER}/api/attachments.json`,
// ?debug=student&randomcode=undefined&client_key=6d57f8c3dd186c5ada392546ace9620a
onChange(info) {
var _a, _b, _c, _d;
let fileList = [...info.fileList];
fileList = fileList.map((file) => {
if (file.name.indexOf(uploadNameSizeSeperator) === -1) {
file.name = `${file.name}${uploadNameSizeSeperator}${bytesToSize(
file.size
)}`;
}
return __spreadValues({}, file);
});
if (info.file.status === "done" && ((_b = (_a = info.file) == null ? void 0 : _a.response) == null ? void 0 : _b.status) === -1) {
message.error((_d = (_c = info.file) == null ? void 0 : _c.response) == null ? void 0 : _d.message);
onChange([]);
return;
}
onChange(fileList);
},
onRemove: (file) => __async(void 0, null, function* () {
const fileSize = file.size / 1024 / 1024;
if (file.status === "uploading") {
return true;
}
if (!(fileSize < maxSize)) {
return true;
} else {
let id = file.response ? file.response.id : file.uid;
if (id) {
let rs = yield removeAttachment(
file.response ? file.response.id : file.id
);
return rs;
} else {
return true;
}
}
})
};
function onCancel(e) {
e.preventDefault();
e.stopPropagation();
}
return /* @__PURE__ */ React.createElement("div", { className: `single-upload ${className ? className : ""}` }, /* @__PURE__ */ React.createElement(Upload, __spreadValues({}, uploadProps), /* @__PURE__ */ React.createElement(
Button,
{
type: "primary",
title: value.length > 0 ? "\u6BCF\u6B21\u53EA\u80FD\u4E0A\u4F20\u4E00\u4E2A\u8D44\u6E90\uFF0C \u5220\u9664\u4E0B\u9762\u8D44\u6E90\u53EF\u91CD\u65B0\u4E0A\u4F20 " : "",
disabled: value.length > 0,
ghost: true
},
title
), /* @__PURE__ */ React.createElement("span", { onClick: onCancel, style: { marginLeft: 10 } }, "(\u5355\u4E2A\u6587\u4EF6\u6700\u5927", maxSize, "M)", " ")));
});
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.3.1@@ant-design/icons/es/icons/InboxOutlined.js + 1 modules
var InboxOutlined = __webpack_require__(84263);
// 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
var uploadImg_defProp = Object.defineProperty;
var uploadImg_getOwnPropSymbols = Object.getOwnPropertySymbols;
var uploadImg_hasOwnProp = Object.prototype.hasOwnProperty;
var uploadImg_propIsEnum = Object.prototype.propertyIsEnumerable;
var uploadImg_defNormalProp = (obj, key, value) => key in obj ? uploadImg_defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
var uploadImg_spreadValues = (a, b) => {
for (var prop in b || (b = {}))
if (uploadImg_hasOwnProp.call(b, prop))
uploadImg_defNormalProp(a, prop, b[prop]);
if (uploadImg_getOwnPropSymbols)
for (var prop of uploadImg_getOwnPropSymbols(b)) {
if (uploadImg_propIsEnum.call(b, prop))
uploadImg_defNormalProp(a, prop, b[prop]);
}
return a;
};
const SvgUploadImg = (props) => /* @__PURE__ */ React.createElement("svg", uploadImg_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 MultiUpload_defProp = Object.defineProperty;
var MultiUpload_getOwnPropSymbols = Object.getOwnPropertySymbols;
var MultiUpload_hasOwnProp = Object.prototype.hasOwnProperty;
var MultiUpload_propIsEnum = Object.prototype.propertyIsEnumerable;
var MultiUpload_defNormalProp = (obj, key, value) => key in obj ? MultiUpload_defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
var MultiUpload_spreadValues = (a, b) => {
for (var prop in b || (b = {}))
if (MultiUpload_hasOwnProp.call(b, prop))
MultiUpload_defNormalProp(a, prop, b[prop]);
if (MultiUpload_getOwnPropSymbols)
for (var prop of MultiUpload_getOwnPropSymbols(b)) {
if (MultiUpload_propIsEnum.call(b, prop))
MultiUpload_defNormalProp(a, prop, b[prop]);
}
return a;
};
var MultiUpload_async = (__this, __arguments, generator) => {
return new Promise((resolve, reject) => {
var fulfilled = (value) => {
try {
step(generator.next(value));
} catch (e) {
reject(e);
}
};
var rejected = (value) => {
try {
step(generator.throw(value));
} catch (e) {
reject(e);
}
};
var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
step((generator = generator.apply(__this, __arguments)).next());
});
};
const { Dragger } = upload["default"];
function coverToFileList(data) {
let rs = [];
if (data && data.length > 0) {
rs = data.map((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 = (({
value,
onChange,
action,
data,
className,
maxSize = 150,
title = "\u4E0A\u4F20\u9644\u4EF6",
showRemoveModal = false,
accept = "",
additionalText,
isDragger,
number = 1e3,
aloneClear = false
}) => {
const [disabled, setDisabled] = (0,_react_17_0_2_react.useState)(false);
let [fileList, setFileList] = (0,_react_17_0_2_react.useState)(value || []);
let [nums, setnums] = (0,_react_17_0_2_react.useState)(1);
(0,_react_17_0_2_react.useEffect)(() => {
if (value) {
if (nums === 1) {
setFileList([...value]);
}
setnums(2);
if (number === (value == null ? void 0 : value.length)) {
setDisabled(true);
}
}
}, [value]);
const clearLastFile = () => {
setTimeout(() => {
fileList.pop();
setFileList([...fileList]);
}, 500);
};
const uploadProps = {
multiple: true,
disabled,
accept,
withCredentials: true,
fileList,
// fileList: fileList?.length ? fileList : value,
beforeUpload: (file, fileArr) => {
const fileSize = file.size / 1024 / 1024;
if (fileList.concat(fileArr).length > number) {
fileList.pop();
setFileList([...fileList]);
es_message/* default */.ZP.error(`\u6700\u591A\u53EA\u80FD\u4E0A\u4F20${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(${maxSize}MB).`);
if (aloneClear) {
return Promise.reject();
}
clearLastFile();
return false;
}
return true;
},
data,
action: action || `${env/* default */.Z.API_SERVER}/api/attachments.json`,
// ?debug=student&randomcode=undefined&client_key=6d57f8c3dd186c5ada392546ace9620a
onChange(info) {
var _a, _b, _c, _d;
if (info.file.status === "removed") {
fileList = info.fileList;
} else {
fileList = (0,lodash.uniqBy)([...info.fileList, ...fileList], "uid");
}
if (info.file.status === "done" && ((_b = (_a = info.file) == null ? void 0 : _a.response) == null ? void 0 : _b.status) === -1) {
es_message/* default */.ZP.error((_d = (_c = info.file) == null ? void 0 : _c.response) == null ? void 0 : _d.message);
return;
}
if (fileList.length >= number)
setDisabled(true);
else
setDisabled(false);
setFileList([...fileList]);
fileList = fileList.map((file) => {
var _a2, _b2;
if ((_a2 = file == null ? void 0 : file.response) == null ? void 0 : _a2.id) {
file.url = `/api/attachments/${(_b2 = file == null ? void 0 : file.response) == null ? void 0 : _b2.id}`;
}
if (file.name.indexOf(uploadNameSizeSeperator) === -1) {
file.name = `${file.name}${uploadNameSizeSeperator}${bytesToSize(
file.size
)}`;
}
return MultiUpload_spreadValues({}, file);
});
console.log("info:", info, fileList);
onChange(fileList);
},
onRemove: (file) => MultiUpload_async(void 0, null, function* () {
const remove = () => MultiUpload_async(void 0, null, function* () {
let id = file.response ? file.response.id : file.id;
if (id) {
let rs = yield (0,service/* removeAttachment */.JZ)(
file.response ? file.response.id : file.uid
);
return Promise.resolve(rs);
} else {
return true;
}
});
if (showRemoveModal) {
return new Promise((resolve, reject) => {
modal["default"].confirm({
centered: true,
width: 530,
okText: "\u786E\u5B9A",
cancelText: "\u53D6\u6D88",
title: "\u63D0\u793A",
content: /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: "tc font16" }, "\u662F\u5426\u786E\u8BA4\u5220\u9664?"),
onOk: () => MultiUpload_async(void 0, null, function* () {
const res = yield remove();
es_message/* default */.ZP.success("\u5220\u9664\u6210\u529F");
resolve(true);
}),
onCancel: () => {
return resolve(false);
}
});
});
} else {
return yield remove();
}
})
};
function onCancel(e) {
e.preventDefault();
e.stopPropagation();
}
return /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: `multi-upload ${className ? className : ""}` }, isDragger && /* @__PURE__ */ _react_17_0_2_react.createElement(Dragger, MultiUpload_spreadValues({}, uploadProps), /* @__PURE__ */ _react_17_0_2_react.createElement("p", { className: "ant-upload-drag-icon" }, /* @__PURE__ */ _react_17_0_2_react.createElement(InboxOutlined/* default */.Z, null)), /* @__PURE__ */ _react_17_0_2_react.createElement("p", { className: "ant-upload-text" }, "\u70B9\u51FB\u4E0A\u4F20\u56FE\u6807\uFF0C\u9009\u62E9\u8981\u4E0A\u4F20\u7684\u6587\u4EF6\u6216\u5C06\u6587\u4EF6\u62D6\u62FD\u5230\u6B64", /* @__PURE__ */ _react_17_0_2_react.createElement("br", null), "(\u5355\u4E2A\u6587\u4EF6\u6700\u5927\u9650\u5236\u4E3A", maxSize, "MB)", " "), additionalText), !isDragger && /* @__PURE__ */ _react_17_0_2_react.createElement(upload["default"], MultiUpload_spreadValues({}, uploadProps), /* @__PURE__ */ _react_17_0_2_react.createElement(es_button/* default */.ZP, { disabled, className: "upload_button" }, /* @__PURE__ */ _react_17_0_2_react.createElement("img", { className: "aBtn_img", src: uploadImg }), title), /* @__PURE__ */ _react_17_0_2_react.createElement("span", { onClick: onCancel, className: "upload_text" }, "(\u5355\u4E2A\u6587\u4EF6\u6700\u5927", maxSize, "MB)", " ")));
});
/***/ }),
/***/ 608:
/*!****************************************************!*\
!*** ./src/pages/Forums/New/index.tsx + 1 modules ***!
\****************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
// ESM COMPAT FLAG
__webpack_require__.r(__webpack_exports__);
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
"default": function() { return /* binding */ Forums_New; }
});
// 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__(23852);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/select/index.js
var es_select = __webpack_require__(57809);
// 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/breadcrumb/index.js + 6 modules
var breadcrumb = __webpack_require__(66104);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/input/index.js + 5 modules
var input = __webpack_require__(20008);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
var es_button = __webpack_require__(3113);
// EXTERNAL MODULE: ./src/components/markdown-editor/index.tsx + 15 modules
var markdown_editor = __webpack_require__(16393);
// EXTERNAL MODULE: ./src/components/MultiUpload/index.tsx + 3 modules
var MultiUpload = __webpack_require__(63292);
// EXTERNAL MODULE: ./src/service/forums.ts
var forums = __webpack_require__(85084);
;// CONCATENATED MODULE: ./src/pages/Forums/New/index.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var Newmodules = ({"bg":"bg___pOKLN","flexRow":"flexRow___mNnbK","flexJustifyCenter":"flexJustifyCenter___uouQe","flexAlignEnd":"flexAlignEnd___CKILp","flexAlignCenter":"flexAlignCenter___y5peS","flexColumn":"flexColumn___JJd9N","formWrap":"formWrap___D8WBe","titleWrap":"titleWrap___ICMYl","fieldWrap":"fieldWrap___XNrtY","mdWrap":"mdWrap___gRykC","backgroundFa":"backgroundFa___jKoLp","button":"button___f0Fqa"});
;// CONCATENATED MODULE: ./src/pages/Forums/New/index.tsx
var __defProp = Object.defineProperty;
var __defProps = Object.defineProperties;
var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
var __getOwnPropSymbols = Object.getOwnPropertySymbols;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __propIsEnum = Object.prototype.propertyIsEnumerable;
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
var __spreadValues = (a, b) => {
for (var prop in b || (b = {}))
if (__hasOwnProp.call(b, prop))
__defNormalProp(a, prop, b[prop]);
if (__getOwnPropSymbols)
for (var prop of __getOwnPropSymbols(b)) {
if (__propIsEnum.call(b, prop))
__defNormalProp(a, prop, b[prop]);
}
return a;
};
var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
var __objRest = (source, exclude) => {
var target = {};
for (var prop in source)
if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
target[prop] = source[prop];
if (source != null && __getOwnPropSymbols)
for (var prop of __getOwnPropSymbols(source)) {
if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
target[prop] = source[prop];
}
return target;
};
var __async = (__this, __arguments, generator) => {
return new Promise((resolve, reject) => {
var fulfilled = (value) => {
try {
step(generator.next(value));
} catch (e) {
reject(e);
}
};
var rejected = (value) => {
try {
step(generator.throw(value));
} catch (e) {
reject(e);
}
};
var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
step((generator = generator.apply(__this, __arguments)).next());
});
};
const { Option } = es_select["default"];
const New = (_a) => {
var _b = _a, {
forumsDetail,
globalSetting,
loading,
dispatch
} = _b, props = __objRest(_b, [
"forumsDetail",
"globalSetting",
"loading",
"dispatch"
]);
var _a2, _b2, _c;
const params = (0,_umi_production_exports.useParams)();
const [form] = es_form["default"].useForm();
const [formValue, setFormValue] = (0,_react_17_0_2_react.useState)({});
const [isLoading, setIsLoading] = (0,_react_17_0_2_react.useState)(0);
const [isEdit, setIsEdit] = (0,_react_17_0_2_react.useState)(false);
const [newData, setNewData] = (0,_react_17_0_2_react.useState)({});
const [type, setType] = (0,_react_17_0_2_react.useState)(1);
(0,_react_17_0_2_react.useEffect)(() => {
handelGetNewData();
if (params.memoId) {
setIsEdit(true);
handleGetEditData();
} else {
setIsEdit(false);
const data = { forum_id: 5 };
setFormValue(__spreadValues({}, data));
form.setFieldsValue(__spreadValues({}, data));
}
}, [params.memoId]);
const handelGetNewData = () => __async(void 0, null, function* () {
const res = yield (0,forums/* getForumsNewData */.iI)({});
setNewData(res || {});
});
const handleGetEditData = () => __async(void 0, null, function* () {
var _a3;
const res = (yield (0,forums/* getForumsEditData */.qR)({ id: params.memoId })) || {};
const data = {
subject: res.subject,
content: res.content,
attachments: (0,MultiUpload/* coverToFileList */.z)(res.attachments),
forum_id: res.forum_id,
memo_tags: (_a3 = res.memo_tags) == null ? void 0 : _a3.map((item) => item.id)
};
setFormValue(__spreadValues({}, data));
form.setFieldsValue(__spreadValues({}, data));
});
const handleFinish = (value) => __async(void 0, null, function* () {
var _a3, _b3;
const postData = __spreadProps(__spreadValues({
id: isEdit ? params.memoId : null
}, formValue), {
attachment_ids: (_b3 = (_a3 = formValue.attachments) == null ? void 0 : _a3.filter((v) => {
var _a4;
return (_a4 = v.response) == null ? void 0 : _a4.id;
})) == null ? void 0 : _b3.map((v) => {
var _a4;
return (_a4 = v.response) == null ? void 0 : _a4.id;
}),
tags: formValue.memo_tags
});
const res = isEdit ? yield (0,forums/* updateForums */.b4)(postData) : yield (0,forums/* newForums */.dX)(postData);
setIsLoading(0);
if ((res == null ? void 0 : res.status) === 0) {
message/* default */.ZP.success(res == null ? void 0 : res.message);
if (type === 1) {
_umi_production_exports.history.push(`/forums/${isEdit ? params == null ? void 0 : params.memoId : res == null ? void 0 : res.memo_id}`);
} else {
_umi_production_exports.history.push(`/forums/${isEdit ? params == null ? void 0 : params.memoId : res == null ? void 0 : res.memo_id}/edit`);
}
}
});
const onCancel = () => {
document.body.scrollIntoView();
if (window.location.href.includes("new")) {
_umi_production_exports.history.back();
} else {
_umi_production_exports.history.push(`/forums/${params.memoId}`);
}
};
return /* @__PURE__ */ _react_17_0_2_react.createElement("section", { className: Newmodules.bg }, /* @__PURE__ */ _react_17_0_2_react.createElement("section", { className: "animated fadeIn mb10" }, /* @__PURE__ */ _react_17_0_2_react.createElement("aside", { className: "mt10" }, /* @__PURE__ */ _react_17_0_2_react.createElement(breadcrumb/* default */.Z, { separator: "/" }, /* @__PURE__ */ _react_17_0_2_react.createElement(breadcrumb/* default */.Z.Item, null, /* @__PURE__ */ _react_17_0_2_react.createElement(
_umi_production_exports.Link,
{
to: `/forums`
},
"\u4EA4\u6D41\u95EE\u7B54"
)), /* @__PURE__ */ _react_17_0_2_react.createElement(breadcrumb/* default */.Z.Item, null, "\u8BE6\u60C5")))), /* @__PURE__ */ _react_17_0_2_react.createElement("aside", { className: "bg-white font16 pt20 pb20 pl20" }, isEdit ? "\u7F16\u8F91\u8BDD\u9898" : "\u53D1\u5E03\u8BDD\u9898"), /* @__PURE__ */ _react_17_0_2_react.createElement(
es_form["default"],
{
form,
className: Newmodules.formWrap,
scrollToFirstError: true,
layout: "vertical",
onValuesChange: (changedValues, values) => {
console.log(values, "values");
setFormValue(__spreadValues(__spreadValues({}, formValue), changedValues));
},
onFinish: handleFinish,
onFinishFailed: () => {
setIsLoading(0);
}
},
/* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Newmodules.fieldWrap }, /* @__PURE__ */ _react_17_0_2_react.createElement(es_form["default"].Item, { name: "subject", label: /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: "font16" }, "\u8BDD\u9898\u540D\u79F0: "), rules: [{ required: true, message: "\u8BF7\u5148\u8F93\u5165\u8BDD\u9898\u540D\u79F0" }] }, /* @__PURE__ */ _react_17_0_2_react.createElement(input["default"], { maxLength: 50, suffix: `${((_a2 = formValue.subject) == null ? void 0 : _a2.length) || 0}/50` }))),
/* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Newmodules.mdWrap }, /* @__PURE__ */ _react_17_0_2_react.createElement(
es_form["default"].Item,
{
name: "content",
label: /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: "font16" }, "\u5185\u5BB9: "),
rules: [
{ required: true, message: "\u8BF7\u5148\u8F93\u5165\u8BDD\u9898\u5185\u5BB9" }
]
},
/* @__PURE__ */ _react_17_0_2_react.createElement(markdown_editor/* default */.Z, { height: 600, id: "forums-new-content", watch: true, defaultValue: formValue.content })
), /* @__PURE__ */ _react_17_0_2_react.createElement("div", null, /* @__PURE__ */ _react_17_0_2_react.createElement(
es_form["default"].Item,
{
name: "attachments",
style: { width: 350 }
},
/* @__PURE__ */ _react_17_0_2_react.createElement(MultiUpload/* default */.Z, { showRemoveModal: true })
))),
/* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Newmodules.mdWrap }, /* @__PURE__ */ _react_17_0_2_react.createElement(
es_form["default"].Item,
{
name: "forum_id",
label: /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: "font16" }, "\u8BDD\u9898\u7C7B\u578B: "),
rules: [
{ required: true, message: "\u8BF7\u5148\u9009\u62E9\u8BDD\u9898\u7C7B\u578B" }
]
},
/* @__PURE__ */ _react_17_0_2_react.createElement(es_select["default"], { style: { width: 300 } }, (_b2 = newData == null ? void 0 : newData.forums) == null ? void 0 : _b2.map((item) => {
return /* @__PURE__ */ _react_17_0_2_react.createElement(Option, { key: item.id, value: item.id }, item.name);
}))
)),
formValue.forum_id === 5 && /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Newmodules.mdWrap }, /* @__PURE__ */ _react_17_0_2_react.createElement(
es_form["default"].Item,
{
name: "memo_tags",
label: /* @__PURE__ */ _react_17_0_2_react.createElement("span", { className: "font16" }, "\u6280\u672F\u6807\u7B7E: "),
rules: [
{ required: true, message: "\u8BF7\u5148\u9009\u62E9\u6280\u672F\u6807\u7B7E" }
]
},
/* @__PURE__ */ _react_17_0_2_react.createElement(
es_select["default"],
{
style: { width: 300 },
placeholder: "\u8BF7\u9009\u62E9\u6280\u672F\u6807\u7B7E",
mode: "multiple",
tokenSeparators: [";"],
filterOption: (inputValue, option) => {
return option.props.children.toLocaleLowerCase().indexOf(inputValue.toLocaleLowerCase()) != -1;
}
},
(_c = newData == null ? void 0 : newData.tag_list) == null ? void 0 : _c.map((item) => {
return /* @__PURE__ */ _react_17_0_2_react.createElement(Option, { key: item.id, value: item.id }, item.name);
})
)
)),
/* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: Newmodules.backgroundFa }, /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: "pt40 mb30" }, /* @__PURE__ */ _react_17_0_2_react.createElement(es_form["default"].Item, null, /* @__PURE__ */ _react_17_0_2_react.createElement(
es_button/* default */.ZP,
{
size: "middle",
type: "primary",
className: `${Newmodules.button} mr20`,
htmlType: "submit",
loading: isLoading === 1,
onClick: () => {
setType(1);
setIsLoading(1);
}
},
"\u63D0\u4EA4"
), /* @__PURE__ */ _react_17_0_2_react.createElement(
es_button/* default */.ZP,
{
size: "middle",
type: "primary",
className: `${Newmodules.button} mr20`,
htmlType: "submit",
loading: isLoading === 2,
onClick: () => {
setType(2);
setIsLoading(2);
}
},
"\u4FDD\u5B58"
), /* @__PURE__ */ _react_17_0_2_react.createElement(
es_button/* default */.ZP,
{
size: "middle",
type: "primary",
ghost: true,
className: `${Newmodules.button} mr20`,
onClick: onCancel
},
"\u53D6\u6D88"
))))
));
};
/* harmony default export */ var Forums_New = ((0,_umi_production_exports.connect)(
({
forumsDetail,
loading,
globalSetting
}) => ({
forumsDetail,
globalSetting,
loading: loading.models.forumsDetail
})
)(New));
/***/ }),
/***/ 13813:
/*!**************************************************!*\
!*** ./src/pages/MoopCases/FormPanel/service.ts ***!
\**************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
/* 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 _utils_fetch__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @/utils/fetch */ 64841);
var __async = (__this, __arguments, generator) => {
return new Promise((resolve, reject) => {
var fulfilled = (value) => {
try {
step(generator.next(value));
} catch (e) {
reject(e);
}
};
var rejected = (value) => {
try {
step(generator.throw(value));
} catch (e) {
reject(e);
}
};
var step = (x) => x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected);
step((generator = generator.apply(__this, __arguments)).next());
});
};
function getMoopCase(id) {
return (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_0__/* .get */ .U2)(`libraries/${id}.json`);
}
function getLibraryTags() {
return (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_0__/* .get */ .U2)("library_tags.json");
}
function removeAttachment(id) {
return __async(this, null, function* () {
const response = yield (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_0__/* .del */ .IV)(`attachments/${id}.json`);
return response.status === 0;
});
}
function addMoopCase(params) {
return (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_0__/* .post */ .v_)(`libraries.json`, params);
}
function updateMoopCase(id, params) {
return (0,_utils_fetch__WEBPACK_IMPORTED_MODULE_0__/* .put */ .gz)(`libraries/${id}.json`, params);
}
/***/ })
}]);