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.
463 lines
22 KiB
463 lines
22 KiB
"use strict";
|
|
(self["webpackChunk"] = self["webpackChunk"] || []).push([[6904],{
|
|
|
|
/***/ 31163:
|
|
/*!**************************************************!*\
|
|
!*** ./src/pages/MoopCases/InfoPanel/index.less ***!
|
|
\**************************************************/
|
|
/***/ (function() {
|
|
|
|
// extracted by mini-css-extract-plugin
|
|
|
|
|
|
/***/ }),
|
|
|
|
/***/ 15139:
|
|
/*!*************************************************************!*\
|
|
!*** ./src/pages/MoopCases/FormPanel/index.tsx + 2 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 */ FormPanel; }
|
|
});
|
|
|
|
// 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/spin/index.js + 1 modules
|
|
var spin = __webpack_require__(71418);
|
|
// EXTERNAL MODULE: ./src/pages/MoopCases/InfoPanel/index.less
|
|
var InfoPanel = __webpack_require__(31163);
|
|
;// CONCATENATED MODULE: ./src/pages/MoopCases/FormPanel/index.less
|
|
// extracted by mini-css-extract-plugin
|
|
|
|
// EXTERNAL MODULE: ./src/.umi-production/exports.ts + 15 modules
|
|
var _umi_production_exports = __webpack_require__(67866);
|
|
// 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/upload/index.js + 24 modules
|
|
var upload = __webpack_require__(46651);
|
|
// 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/input/index.js + 5 modules
|
|
var input = __webpack_require__(98135);
|
|
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
|
|
var es_button = __webpack_require__(3113);
|
|
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.3.7@@ant-design/icons/es/icons/InboxOutlined.js + 1 modules
|
|
var InboxOutlined = __webpack_require__(93737);
|
|
// EXTERNAL MODULE: ./src/utils/env.ts + 1 modules
|
|
var env = __webpack_require__(21873);
|
|
// EXTERNAL MODULE: ./src/components/markdown-editor/index.tsx + 15 modules
|
|
var markdown_editor = __webpack_require__(96180);
|
|
;// CONCATENATED MODULE: ./src/pages/MoopCases/FormPanel/MoopForm.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;
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
const CheckboxGroup = es_checkbox["default"].Group;
|
|
const { Dragger } = upload["default"];
|
|
function getBase64(img, callback) {
|
|
const reader = new FileReader();
|
|
reader.addEventListener("load", () => callback(reader.result));
|
|
reader.readAsDataURL(img);
|
|
}
|
|
/* harmony default export */ var MoopForm = (({ callback, tags = [], initialValues = {}, removeAttachment }) => {
|
|
const [uploadUrl, setUploadUrl] = (0,_react_17_0_2_react.useState)("");
|
|
const [form] = es_form["default"].useForm();
|
|
function onSubmit(values) {
|
|
const _a = values, { cover_id, attachment_ids } = _a, rest = __objRest(_a, ["cover_id", "attachment_ids"]);
|
|
callback(__spreadProps(__spreadValues({}, rest), {
|
|
cover_id: cover_id == null ? void 0 : cover_id.map((item) => item.response ? item.response.id : item.uid)[(cover_id == null ? void 0 : cover_id.length) - 1],
|
|
attachment_ids: attachment_ids ? attachment_ids == null ? void 0 : attachment_ids.map((item) => item.response ? item.response.id : item.uid) : []
|
|
}));
|
|
}
|
|
function normFile(e) {
|
|
if (Array.isArray(e)) {
|
|
return e;
|
|
}
|
|
return e && e.fileList;
|
|
}
|
|
const uploadProps = {
|
|
multiple: true,
|
|
beforeUpload: (file) => {
|
|
const isLt150M = file.size / 1024 / 1024 < 100;
|
|
if (!isLt150M) {
|
|
message/* default */.ZP.error("\u8BE5\u6587\u4EF6\u65E0\u6CD5\u4E0A\u4F20\u3002\u8D85\u8FC7\u6587\u4EF6\u5927\u5C0F\u9650\u5236(100MB),\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 isLt150M;
|
|
}
|
|
},
|
|
action: `${env/* default */.Z.API_SERVER}/api/attachments.json`,
|
|
onRemove: (file) => {
|
|
modal["default"].confirm({
|
|
centered: true,
|
|
okText: "\u786E\u5B9A",
|
|
cancelText: "\u53D6\u6D88",
|
|
content: "\u662F\u5426\u786E\u8BA4\u5220\u9664?",
|
|
onOk: () => {
|
|
return removeAttachment(file.response ? file.response.id : file.uid);
|
|
},
|
|
onCancel: () => {
|
|
return false;
|
|
}
|
|
});
|
|
}
|
|
};
|
|
function onChangeCoverUrl(info) {
|
|
if (info.file.status === "done") {
|
|
getBase64(
|
|
info.file.originFileObj,
|
|
(imageUrl) => setUploadUrl(imageUrl)
|
|
);
|
|
}
|
|
}
|
|
const uploadCoverProps = {
|
|
showUploadList: false,
|
|
withCredentials: true,
|
|
action: `${env/* default */.Z.API_SERVER}/api/attachments.json`,
|
|
onChange: onChangeCoverUrl
|
|
};
|
|
(0,_react_17_0_2_react.useEffect)(() => {
|
|
if (initialValues.title) {
|
|
form.setFieldsValue(initialValues);
|
|
if (initialValues.cover_id.length > 0) {
|
|
setUploadUrl(env/* default */.Z.IMG_SERVER + initialValues.cover_id[0].url);
|
|
}
|
|
}
|
|
}, [initialValues]);
|
|
return /* @__PURE__ */ _react_17_0_2_react.createElement(
|
|
es_form["default"],
|
|
{
|
|
form,
|
|
initialValues,
|
|
className: "moop-panel",
|
|
style: { marginBottom: 20 },
|
|
onFinish: onSubmit
|
|
},
|
|
/* @__PURE__ */ _react_17_0_2_react.createElement(
|
|
es_form["default"].Item,
|
|
{
|
|
label: "\u6807\u9898",
|
|
name: "title",
|
|
extra: /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: "tip" }, "\u7B80\u660E\u627C\u8981\u4ECB\u7ECD\u6587\u6863/\u89C6\u9891\u6240\u5305\u542B\u7684\u4E3B\u8981\u7684\u5185\u5BB9"),
|
|
rules: [{ required: true, message: "\u8BF7\u8F93\u5165\u6807\u9898" }]
|
|
},
|
|
/* @__PURE__ */ _react_17_0_2_react.createElement(input["default"], { placeholder: "\u4F8B\u5982\uFF1A\u8F6F\u4EF6\u5DE5\u7A0B\u6559\u5B66\u6848\u4F8B" })
|
|
),
|
|
/* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: "flex-container" }, /* @__PURE__ */ _react_17_0_2_react.createElement(
|
|
es_form["default"].Item,
|
|
{
|
|
label: "\u4F5C\u8005",
|
|
name: "author_name",
|
|
rules: [{ required: true, message: "\u8BF7\u8F93\u5165\u4F5C\u8005\u540D\u79F0" }]
|
|
},
|
|
/* @__PURE__ */ _react_17_0_2_react.createElement(
|
|
input["default"],
|
|
{
|
|
placeholder: "\u8BF7\u8F93\u5165\u59D3\u540D",
|
|
style: { marginRight: 20, width: 200 }
|
|
}
|
|
)
|
|
), /* @__PURE__ */ _react_17_0_2_react.createElement(
|
|
es_form["default"].Item,
|
|
{
|
|
name: "author_school_name",
|
|
rules: [{ required: true, message: "\u8BF7\u8F93\u5165\u4F5C\u8005\u5355\u4F4D\u540D\u79F0" }]
|
|
},
|
|
/* @__PURE__ */ _react_17_0_2_react.createElement(input["default"], { placeholder: "\u8BF7\u8F93\u5165\u4F5C\u8005\u5355\u4F4D\u540D\u79F0", style: { width: 200 } })
|
|
)),
|
|
/* @__PURE__ */ _react_17_0_2_react.createElement(es_form["default"].Item, { name: "tag_ids", label: "\u6807\u7B7E", rules: [{ required: true, message: "\u8BF7\u9009\u62E9\u4E00\u4E2A\u6807\u7B7E" }] }, /* @__PURE__ */ _react_17_0_2_react.createElement(CheckboxGroup, null, tags.map((t) => /* @__PURE__ */ _react_17_0_2_react.createElement(es_checkbox["default"], { key: t.id, value: t.id }, " ", t.name, " ")))),
|
|
/* @__PURE__ */ _react_17_0_2_react.createElement(es_form["default"].Item, { name: "publish", valuePropName: "checked" }, /* @__PURE__ */ _react_17_0_2_react.createElement(es_checkbox["default"], null, "\u662F\u5426\u7533\u8BF7\u53D1\u5E03")),
|
|
/* @__PURE__ */ _react_17_0_2_react.createElement(
|
|
es_form["default"].Item,
|
|
{
|
|
name: "content",
|
|
label: "\u63CF\u8FF0",
|
|
valuePropName: "defaultValue",
|
|
rules: [{ required: true, message: "\u8BF7\u8F93\u5165\u63CF\u8FF0\u5185\u5BB9" }]
|
|
},
|
|
/* @__PURE__ */ _react_17_0_2_react.createElement(markdown_editor/* default */.Z, { id: "moop_cases_content", height: 400 })
|
|
),
|
|
/* @__PURE__ */ _react_17_0_2_react.createElement(es_form["default"].Item, { name: "attachment_ids", valuePropName: "fileList", getValueFromEvent: normFile }, /* @__PURE__ */ _react_17_0_2_react.createElement(Dragger, __spreadValues({}, uploadProps), /* @__PURE__ */ _react_17_0_2_react.createElement("p", { className: "c-blue", style: { marginBottom: 10, fontSize: 18 } }, "\u4E0A\u4F20\u9644\u4EF6"), /* @__PURE__ */ _react_17_0_2_react.createElement("p", { className: "c-grey-c" }, "\u4ECE\u6211\u7684\u7535\u8111\u9009\u62E9\u8981\u4E0A\u4F20\u7684\u6587\u6863\uFF1A\u6309\u4F4FCTRL\u53EF\u4EE5\u4E0A\u4F20\u591A\u4EFD\u6587\u6863\u3002\u5355\u4E2A\u6587\u4EF6\u6700\u5927\u9650\u5236\uFF1A100MB"))),
|
|
/* @__PURE__ */ _react_17_0_2_react.createElement(
|
|
es_form["default"].Item,
|
|
{
|
|
name: "cover_id",
|
|
label: "\u5C01\u9762\u56FE",
|
|
extra: "\u4E0A\u4F20\u5C3A\u5BF8\uFF1A120*90 px",
|
|
getValueFromEvent: normFile,
|
|
valuePropName: "fileList",
|
|
rules: [{ required: true, message: "\u8BF7\u4E0A\u4F20\u5C01\u9762\u56FE" }]
|
|
},
|
|
/* @__PURE__ */ _react_17_0_2_react.createElement(upload["default"], __spreadValues({}, uploadCoverProps), uploadUrl ? /* @__PURE__ */ _react_17_0_2_react.createElement("img", { src: uploadUrl, width: 120 }) : /* @__PURE__ */ _react_17_0_2_react.createElement("a", { title: "\u4E0A\u4F20\u5C01\u9762\u56FE", className: "upload-cover" }, " ", /* @__PURE__ */ _react_17_0_2_react.createElement(InboxOutlined/* default */.Z, null), " "))
|
|
),
|
|
/* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: "desc" }, /* @__PURE__ */ _react_17_0_2_react.createElement("h3", null, "\u5BA1\u6838\u8BF4\u660E"), /* @__PURE__ */ _react_17_0_2_react.createElement("p", null, " \u5E73\u53F0\u7BA1\u7406\u5458\u5C06\u5BF9\u6BCF\u5929\u65B0\u4E0A\u4F20\u7684\u6587\u6863\u8FDB\u884C\u5BA1\u6838\uFF0C\u5BA1\u6838\u901A\u8FC7\u7684\u6587\u6863\u5C06\u516C\u5F00\u663E\u793A\uFF0C\u5426\u5219\u5C06\u79C1\u6709\u5316\u6216\u79FB\u9664 ")),
|
|
/* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: "desc" }, /* @__PURE__ */ _react_17_0_2_react.createElement("h3", null, "\u6E29\u99A8\u63D0\u793A"), /* @__PURE__ */ _react_17_0_2_react.createElement("ul", { style: { padding: 0 } }, /* @__PURE__ */ _react_17_0_2_react.createElement("li", null, "1.\u8BF7\u52FF\u4E0A\u4F20\u5DF2\u8BBE\u7F6E\u52A0\u5BC6\u53E3\u4EE4\u7684\u6587\u6863\u8D44\u6E90\uFF1B"), /* @__PURE__ */ _react_17_0_2_react.createElement("li", null, "2.\u53EF\u4EE5\u4E0A\u4F20\u7B26\u5408\u6559\u5B66\u6848\u4F8B\u6807\u51C6\u7684\u6587\u6863\u8D44\u6599\uFF0C\u5982", /* @__PURE__ */ _react_17_0_2_react.createElement("a", { href: "https://www.educoder.net/courses/1309/boards/5909/messages/34799", target: "_blank" }, " \u6848\u4F8B\u5165\u5E93\u6807\u51C6 "), " \u3001", /* @__PURE__ */ _react_17_0_2_react.createElement("a", { href: "https://www.educoder.net/courses/1309/boards/5909/messages/34798", target: "_blank" }, "\u6848\u4F8B\u4F7F\u7528\u8BF4\u660E\u4E66"), "\u4EE5\u53CA\u5176\u4ED6\u8D44\u6599\u7B49\uFF0C\u4E0A\u4F20\u652F\u6301\u7684\u6587\u4EF6\u6700\u5927\u5BB9\u91CF\uFF1A100MB\uFF1B"), /* @__PURE__ */ _react_17_0_2_react.createElement("li", null, "3.\u8BF7\u786E\u4FDD\u4E0A\u4F20\u5185\u5BB9\u65E0\u4FB5\u6743\u6216\u8FDD\u53CD\u56FD\u5BB6\u5173\u4E8E\u4E92\u8054\u7F51\u653F\u7B56\u7684\u4E0D\u826F\u884C\u4E3A\uFF1B"), /* @__PURE__ */ _react_17_0_2_react.createElement("li", null, "4.\u8BF7\u4F7F\u7528Chrome\uFF0CFirefox\uFF0CSafari\uFF0CIE11\uFF08\u53CA\u4EE5\u4E0A\u7248\u672C\uFF09\u6D4F\u89C8\u5668\uFF1B"))),
|
|
/* @__PURE__ */ _react_17_0_2_react.createElement(es_form["default"].Item, { style: { marginTop: 10 } }, /* @__PURE__ */ _react_17_0_2_react.createElement(es_button/* default */.ZP, { type: "primary", htmlType: "submit" }, "\u63D0\u4EA4"))
|
|
);
|
|
});
|
|
|
|
// EXTERNAL MODULE: ./src/pages/MoopCases/FormPanel/service.ts
|
|
var service = __webpack_require__(44265);
|
|
;// CONCATENATED MODULE: ./src/pages/MoopCases/FormPanel/index.tsx
|
|
var FormPanel_defProp = Object.defineProperty;
|
|
var FormPanel_defProps = Object.defineProperties;
|
|
var FormPanel_getOwnPropDescs = Object.getOwnPropertyDescriptors;
|
|
var FormPanel_getOwnPropSymbols = Object.getOwnPropertySymbols;
|
|
var FormPanel_hasOwnProp = Object.prototype.hasOwnProperty;
|
|
var FormPanel_propIsEnum = Object.prototype.propertyIsEnumerable;
|
|
var FormPanel_defNormalProp = (obj, key, value) => key in obj ? FormPanel_defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
var FormPanel_spreadValues = (a, b) => {
|
|
for (var prop in b || (b = {}))
|
|
if (FormPanel_hasOwnProp.call(b, prop))
|
|
FormPanel_defNormalProp(a, prop, b[prop]);
|
|
if (FormPanel_getOwnPropSymbols)
|
|
for (var prop of FormPanel_getOwnPropSymbols(b)) {
|
|
if (FormPanel_propIsEnum.call(b, prop))
|
|
FormPanel_defNormalProp(a, prop, b[prop]);
|
|
}
|
|
return a;
|
|
};
|
|
var FormPanel_spreadProps = (a, b) => FormPanel_defProps(a, FormPanel_getOwnPropDescs(b));
|
|
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 initialState = {
|
|
loading: false,
|
|
data: {},
|
|
tags: []
|
|
};
|
|
var Types = /* @__PURE__ */ ((Types2) => {
|
|
Types2[Types2["GET_DATA"] = 0] = "GET_DATA";
|
|
Types2[Types2["SET_LOADING"] = 1] = "SET_LOADING";
|
|
Types2[Types2["GET_TAGS"] = 2] = "GET_TAGS";
|
|
return Types2;
|
|
})(Types || {});
|
|
function reducer(state, action) {
|
|
switch (action.type) {
|
|
case 0 /* GET_DATA */:
|
|
return FormPanel_spreadValues(FormPanel_spreadValues({}, state), action.payload);
|
|
case 2 /* GET_TAGS */:
|
|
return FormPanel_spreadProps(FormPanel_spreadValues({}, state), { tags: action.payload });
|
|
case 1 /* SET_LOADING */:
|
|
return FormPanel_spreadProps(FormPanel_spreadValues({}, state), { loading: action.payload });
|
|
default:
|
|
throw new Error();
|
|
}
|
|
}
|
|
/* harmony default export */ var FormPanel = (() => {
|
|
const { caseId } = (0,_umi_production_exports.useParams)();
|
|
const [state, dispatch] = (0,_react_17_0_2_react.useReducer)(reducer, initialState);
|
|
const { loading, tags, data } = state;
|
|
(0,_react_17_0_2_react.useEffect)(() => {
|
|
function init() {
|
|
return __async(this, null, function* () {
|
|
const response = yield (0,service/* getLibraryTags */.rO)();
|
|
dispatch({
|
|
type: 2 /* GET_TAGS */,
|
|
payload: response.library_tags
|
|
});
|
|
});
|
|
}
|
|
init();
|
|
}, []);
|
|
(0,_react_17_0_2_react.useEffect)(() => {
|
|
let didCancel = false;
|
|
function init() {
|
|
return __async(this, null, function* () {
|
|
dispatch({ type: 1 /* SET_LOADING */, payload: false });
|
|
let response = yield (0,service/* getMoopCase */.$J)(caseId);
|
|
const { author_name, author_school_name, content, cover, attachments, status, title, tags: tags2 } = response;
|
|
if (!didCancel) {
|
|
if (response.status === 404) {
|
|
_umi_production_exports.history.push("/moop_cases");
|
|
} else {
|
|
dispatch({
|
|
type: 0 /* GET_DATA */,
|
|
payload: {
|
|
data: {
|
|
title,
|
|
author_name,
|
|
author_school_name,
|
|
content,
|
|
tag_ids: tags2.map((item) => item.id),
|
|
publish: status === "published",
|
|
attachment_ids: attachments.map((item) => {
|
|
return {
|
|
uid: item.id,
|
|
id: item.id,
|
|
name: item.title,
|
|
url: item.url,
|
|
filesize: item.filesize,
|
|
status: "done"
|
|
};
|
|
}),
|
|
cover_id: (cover == null ? void 0 : cover.id) ? [{
|
|
uid: cover == null ? void 0 : cover.id,
|
|
id: cover == null ? void 0 : cover.id,
|
|
name: cover == null ? void 0 : cover.title,
|
|
url: cover == null ? void 0 : cover.url,
|
|
filesize: cover == null ? void 0 : cover.filesize,
|
|
status: "done"
|
|
}] : []
|
|
},
|
|
loading: false
|
|
}
|
|
});
|
|
}
|
|
}
|
|
});
|
|
}
|
|
if (!didCancel && caseId) {
|
|
init();
|
|
}
|
|
return () => {
|
|
didCancel = true;
|
|
};
|
|
}, [caseId]);
|
|
function onUpdateCase(values) {
|
|
return __async(this, null, function* () {
|
|
if (caseId) {
|
|
yield (0,service/* updateMoopCase */.bN)(caseId, values);
|
|
_umi_production_exports.history.push(`/moop_cases/${caseId}/publish-success`);
|
|
} else {
|
|
const { id } = yield (0,service/* addMoopCase */.jP)(values);
|
|
if (id) {
|
|
_umi_production_exports.history.push(`/moop_cases/${id}/publish-success`);
|
|
}
|
|
}
|
|
});
|
|
}
|
|
const moopFormProps = {
|
|
initialValues: data,
|
|
tags,
|
|
removeAttachment: service/* removeAttachment */.JZ,
|
|
callback: onUpdateCase
|
|
};
|
|
return /* @__PURE__ */ _react_17_0_2_react.createElement(spin/* default */.Z, { spinning: loading, delay: 500 }, /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: "moop-info" }, /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: "crumb" }, /* @__PURE__ */ _react_17_0_2_react.createElement(_umi_production_exports.Link, { to: "/moop_cases" }, "\u6559\u5B66\u6848\u4F8B > "), /* @__PURE__ */ _react_17_0_2_react.createElement("span", null, "\u65B0\u5EFA")), /* @__PURE__ */ _react_17_0_2_react.createElement("div", { className: "title" }, /* @__PURE__ */ _react_17_0_2_react.createElement("h2", null, "\u4E0A\u4F20\u6559\u5B66\u6848\u4F8B"), /* @__PURE__ */ _react_17_0_2_react.createElement(_umi_production_exports.Link, { to: "/moop_cases" }, "\u8FD4\u56DE")), /* @__PURE__ */ _react_17_0_2_react.createElement(MoopForm, FormPanel_spreadValues({}, moopFormProps))));
|
|
});
|
|
|
|
|
|
/***/ }),
|
|
|
|
/***/ 44265:
|
|
/*!**************************************************!*\
|
|
!*** ./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 */ 51165);
|
|
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);
|
|
}
|
|
|
|
|
|
/***/ })
|
|
|
|
}]); |