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__Shixuns__Detail__Reposit...

788 lines
33 KiB

"use strict";
(self["webpackChunk"] = self["webpackChunk"] || []).push([[81148],{
/***/ 1894:
/*!*******************************************************************************************************!*\
!*** ./node_modules/_@ant-design_icons@5.3.1@@ant-design/icons/es/icons/CheckOutlined.js + 1 modules ***!
\*******************************************************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ icons_CheckOutlined; }
});
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.24.0@@babel/runtime/helpers/esm/extends.js
var esm_extends = __webpack_require__(36384);
// 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/CheckOutlined.js
// This icon file is generated automatically.
var CheckOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M912 190h-69.9c-9.8 0-19.1 4.5-25.1 12.2L404.7 724.5 207 474a32 32 0 00-25.1-12.2H112c-6.7 0-10.4 7.7-6.3 12.9l273.9 347c12.8 16.2 37.4 16.2 50.3 0l488.4-618.9c4.1-5.1.4-12.8-6.3-12.8z" } }] }, "name": "check", "theme": "outlined" };
/* harmony default export */ var asn_CheckOutlined = (CheckOutlined);
// EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.3.1@@ant-design/icons/es/components/AntdIcon.js + 3 modules
var AntdIcon = __webpack_require__(15436);
;// CONCATENATED MODULE: ./node_modules/_@ant-design_icons@5.3.1@@ant-design/icons/es/icons/CheckOutlined.js
// GENERATE BY ./scripts/generate.ts
// DON NOT EDIT IT MANUALLY
var CheckOutlined_CheckOutlined = function CheckOutlined(props, ref) {
return /*#__PURE__*/_react_17_0_2_react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, {
ref: ref,
icon: asn_CheckOutlined
}));
};
if (false) {}
/* harmony default export */ var icons_CheckOutlined = (/*#__PURE__*/_react_17_0_2_react.forwardRef(CheckOutlined_CheckOutlined));
/***/ }),
/***/ 41091:
/*!**********************************************************!*\
!*** ./src/components/FixedButton/index.tsx + 1 modules ***!
\**********************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
t: function() { return /* binding */ FixedButton; }
});
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectSpread2.js
var objectSpread2 = __webpack_require__(82242);
var objectSpread2_default = /*#__PURE__*/__webpack_require__.n(objectSpread2);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
// EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js
var es_button = __webpack_require__(3113);
;// CONCATENATED MODULE: ./src/components/FixedButton/index.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var FixedButtonmodules = ({"buttonFixed":"buttonFixed___vyq30","button":"button___hxmYv","buttonWrap":"buttonWrap___uK8dl"});
// 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/FixedButton/index.tsx
var FixedButton = function FixedButton(_ref) {
var _ref$cancelText = _ref.cancelText,
cancelText = _ref$cancelText === void 0 ? '取消' : _ref$cancelText,
_ref$okText = _ref.okText,
okText = _ref$okText === void 0 ? '确定' : _ref$okText,
_ref$loading = _ref.loading,
loading = _ref$loading === void 0 ? false : _ref$loading,
_ref$hasOkBtn = _ref.hasOkBtn,
hasOkBtn = _ref$hasOkBtn === void 0 ? true : _ref$hasOkBtn,
_ref$hasCancelBtn = _ref.hasCancelBtn,
hasCancelBtn = _ref$hasCancelBtn === void 0 ? true : _ref$hasCancelBtn,
_ref$okButtonProps = _ref.okButtonProps,
okButtonProps = _ref$okButtonProps === void 0 ? {} : _ref$okButtonProps,
_ref$onCancel = _ref.onCancel,
onCancel = _ref$onCancel === void 0 ? function () {} : _ref$onCancel,
_ref$onOk = _ref.onOk,
onOk = _ref$onOk === void 0 ? function () {} : _ref$onOk,
_ref$className = _ref.className,
className = _ref$className === void 0 ? '' : _ref$className;
return /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: _classnames_2_5_1_classnames_default()(FixedButtonmodules.buttonFixed, className),
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: FixedButtonmodules.buttonWrap,
children: [hasCancelBtn && /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, {
size: "middle",
className: "".concat(FixedButtonmodules.button, " mr20")
// 点击取消的返回
,
onClick: onCancel,
children: cancelText
}), hasOkBtn && /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, objectSpread2_default()(objectSpread2_default()({
size: 'middle',
type: "primary",
className: "".concat(FixedButtonmodules.button, " mr20"),
loading: loading,
onClick: onOk
}, okButtonProps), {}, {
children: okText
}))]
})
});
};
/***/ }),
/***/ 27751:
/*!******************************************************************************!*\
!*** ./src/pages/Shixuns/Detail/Repository/UploadFile/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 */ Repository_UploadFile; }
});
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectSpread2.js
var objectSpread2 = __webpack_require__(82242);
var objectSpread2_default = /*#__PURE__*/__webpack_require__.n(objectSpread2);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/regeneratorRuntime.js
var regeneratorRuntime = __webpack_require__(7557);
var regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(regeneratorRuntime);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/asyncToGenerator.js
var asyncToGenerator = __webpack_require__(41498);
var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/slicedToArray.js
var slicedToArray = __webpack_require__(79800);
var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);
// EXTERNAL MODULE: ./node_modules/_@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/_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__(8931);
// EXTERNAL MODULE: ./src/utils/env.ts + 1 modules
var env = __webpack_require__(33259);
// 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/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/input/index.js + 5 modules
var input = __webpack_require__(20008);
// EXTERNAL MODULE: ./src/components/FixedButton/index.tsx + 1 modules
var FixedButton = __webpack_require__(41091);
// EXTERNAL MODULE: ./src/pages/Shixuns/Detail/Repository/components/SelectFilePathModal/index.tsx + 1 modules
var SelectFilePathModal = __webpack_require__(14581);
;// CONCATENATED MODULE: ./src/pages/Shixuns/Detail/Repository/UploadFile/index.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var UploadFilemodules = ({"bg":"bg___B0fle","wrap":"wrap___cLSqe","title":"title___tslCB","path":"path____iGdu","colorBlue":"colorBlue___Baazr"});
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/jsx-runtime.js
var jsx_runtime = __webpack_require__(37712);
;// CONCATENATED MODULE: ./src/pages/Shixuns/Detail/Repository/UploadFile/index.tsx
var _excluded = ["shixunsDetail", "globalSetting", "loading", "user", "dispatch"];
var Dragger = upload/* default */.Z.Dragger;
var UploadFile = function UploadFile(_ref) {
var shixunsDetail = _ref.shixunsDetail,
globalSetting = _ref.globalSetting,
loading = _ref.loading,
user = _ref.user,
dispatch = _ref.dispatch,
props = objectWithoutProperties_default()(_ref, _excluded);
var location = (0,_umi_production_exports.useLocation)();
var _useState = (0,_react_17_0_2_react.useState)({}),
_useState2 = slicedToArray_default()(_useState, 2),
formValue = _useState2[0],
setFormValue = _useState2[1];
var isRepository = (0,_react_17_0_2_react.useRef)();
var shixunId = (0,_react_17_0_2_react.useRef)();
var _Form$useForm = es_form/* default */.Z.useForm(),
_Form$useForm2 = slicedToArray_default()(_Form$useForm, 1),
form = _Form$useForm2[0];
var _useState3 = (0,_react_17_0_2_react.useState)([]),
_useState4 = slicedToArray_default()(_useState3, 2),
fileList = _useState4[0],
setFileList = _useState4[1];
var _useState5 = (0,_react_17_0_2_react.useState)(),
_useState6 = slicedToArray_default()(_useState5, 2),
filePath = _useState6[0],
setFilePath = _useState6[1];
(0,_react_17_0_2_react.useEffect)(function () {
dispatch({
type: 'globalSetting/footerToggle',
payload: false
});
return function () {
dispatch({
type: 'globalSetting/footerToggle',
payload: true
});
};
}, []);
(0,_react_17_0_2_react.useEffect)(function () {
var _location$pathname, _location$pathname2;
shixunId.current = (_location$pathname = location.pathname) === null || _location$pathname === void 0 || (_location$pathname = _location$pathname.split('/')) === null || _location$pathname === void 0 ? void 0 : _location$pathname[2];
isRepository.current = ((_location$pathname2 = location.pathname) === null || _location$pathname2 === void 0 || (_location$pathname2 = _location$pathname2.split('/')) === null || _location$pathname2 === void 0 ? void 0 : _location$pathname2[3]) === "repository";
}, []);
(0,_react_17_0_2_react.useEffect)(function () {
var pathArray = sessionStorage.getItem('pathArray');
if (pathArray) {
// 拼接成绝对路径
var joinPath = pathArray.split(',').join('/');
var path = joinPath.indexOf('/') === 0 ? joinPath.substr(1) : joinPath;
setFilePath(path);
}
}, []);
var handleChangeFile = function handleChangeFile(info) {
if (info.file.status === 'done' || info.file.status === "uploading") {
var _info$file$response, _info$file$response2, _info$file$response3;
setFileList(info.fileList);
if (!info.file.response) {
return;
}
if (((_info$file$response = info.file.response) === null || _info$file$response === void 0 ? void 0 : _info$file$response.status) === 0) {
message/* default */.ZP.success("上传成功!");
return;
}
setFileList(fileList.filter(function (item) {
return item.uid !== info.file.uid;
}));
((_info$file$response2 = info.file.response) === null || _info$file$response2 === void 0 ? void 0 : _info$file$response2.message) && message/* default */.ZP.info((_info$file$response3 = info.file.response) === null || _info$file$response3 === void 0 ? void 0 : _info$file$response3.message);
}
};
var handleRemoveFile = /*#__PURE__*/function () {
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee(info) {
var res;
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
if (info.response) {
_context.next = 3;
break;
}
message/* default */.ZP.info("还未上传完成,无法进行删除操作!");
return _context.abrupt("return");
case 3:
if (form.getFieldValue('commitMessage')) {
_context.next = 6;
break;
}
message/* default */.ZP.info("删除文件请先填写提交信息");
return _context.abrupt("return");
case 6:
_context.next = 8;
return dispatch({
type: 'shixunsDetail/deleteGitFile',
payload: {
id: shixunId.current,
path: filePath ? "".concat(filePath, "/").concat(info.name) : info.name,
message: form.getFieldValue('commitMessage'),
secret_repository: isRepository.current ? null : true
}
});
case 8:
res = _context.sent;
if (res.status === 0) {
setFileList(fileList.filter(function (item) {
return item.uid !== info.uid;
}));
message/* default */.ZP.info("删除成功");
}
case 10:
case "end":
return _context.stop();
}
}, _callee);
}));
return function handleRemoveFile(_x) {
return _ref2.apply(this, arguments);
};
}();
var draggerProps = {
height: 300,
multiple: true,
withCredentials: true,
data: objectSpread2_default()(objectSpread2_default()({}, {
path: filePath || '',
message: formValue.commitMessage
}), isRepository.current ? {} : {
secret_repository: true
}),
fileList: fileList,
method: "post",
action: "".concat(env/* default */.Z.API_SERVER, "/api/shixuns/").concat(shixunId.current, "/upload_git_file.json"),
onChange: handleChangeFile,
onRemove: handleRemoveFile,
beforeUpload: function beforeUpload(file) {
if (!form.getFieldValue('commitMessage')) {
message/* default */.ZP.info("上传文件请先填写提交信息");
return false;
}
}
};
var handleFinish = function handleFinish(values) {
handleReturn();
};
var handleReturn = function handleReturn() {
var _location$pathname3;
_umi_production_exports.history.push("/shixuns/".concat(shixunId.current, "/").concat((_location$pathname3 = location.pathname) === null || _location$pathname3 === void 0 || (_location$pathname3 = _location$pathname3.split('/')) === null || _location$pathname3 === void 0 ? void 0 : _location$pathname3[3]).concat(filePath ? "/master/shixun_show/".concat(filePath) : ""));
};
return /*#__PURE__*/(0,jsx_runtime.jsxs)("section", {
className: UploadFilemodules.bg,
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: UploadFilemodules.wrap,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: UploadFilemodules.title,
children: "\u4E0A\u4F20\u6587\u4EF6"
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: UploadFilemodules.path,
children: ["\u5F53\u524D\u76EE\u5F55\uFF1A/", filePath, /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "".concat(UploadFilemodules.colorBlue, " current ml5"),
onClick: function onClick() {
dispatch({
type: 'shixunsDetail/setActionTabs',
payload: {
key: 'Repository-SelectFilePath'
}
});
},
children: "\u9009\u62E9\u6587\u4EF6\u76EE\u5F55"
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(es_form/* default */.Z, {
className: "mt10",
form: form,
scrollToFirstError: true,
layout: "vertical",
onFinish: handleFinish,
onValuesChange: function onValuesChange() {
return setFormValue(objectSpread2_default()({}, form.getFieldsValue()));
},
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
label: "\u63D0\u4EA4\u4FE1\u606F\uFF1A",
name: "commitMessage",
rules: [{
required: true,
message: '请输入提交信息'
}, {
whitespace: true,
message: '请勿输入空格'
}],
children: /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z, {
placeholder: "\u5FC5\u586B\uFF0C\u63CF\u8FF0\u4E3B\u8981\u4FEE\u6539\u5185\u5BB9\uFF08\u76F8\u5F53\u4E8EGit Commit message\u7684Header\uFF09"
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
noStyle: true,
children: /*#__PURE__*/(0,jsx_runtime.jsx)(FixedButton/* FixedButton */.t, {
okButtonProps: {
htmlType: "submit"
},
onCancel: handleReturn
})
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(Dragger, objectSpread2_default()(objectSpread2_default()({}, draggerProps), {}, {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "iconfont icon-shangchuan font50 ".concat(UploadFilemodules.colorBlue)
})
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: "font14 mt30",
children: ["\u62D6\u62FD\u6587\u4EF6\u6216", /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "".concat(UploadFilemodules.colorBlue, " ml5"),
children: "\u70B9\u51FB\u6B64\u5904\u4E0A\u4F20"
})]
})]
}))]
}), /*#__PURE__*/(0,jsx_runtime.jsx)(SelectFilePathModal/* default */.Z, {
onFinish: function onFinish(path) {
return setFilePath(path);
}
})]
});
};
/* harmony default export */ var Repository_UploadFile = ((0,_umi_production_exports.connect)(function (_ref3) {
var shixunsDetail = _ref3.shixunsDetail,
loading = _ref3.loading,
globalSetting = _ref3.globalSetting,
user = _ref3.user;
return {
shixunsDetail: shixunsDetail,
globalSetting: globalSetting,
user: user,
loading: loading.models.index
};
})(UploadFile));
/***/ }),
/***/ 14581:
/*!**************************************************************************************************!*\
!*** ./src/pages/Shixuns/Detail/Repository/components/SelectFilePathModal/index.tsx + 1 modules ***!
\**************************************************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
Z: function() { return /* binding */ components_SelectFilePathModal; }
});
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/objectSpread2.js
var objectSpread2 = __webpack_require__(82242);
var objectSpread2_default = /*#__PURE__*/__webpack_require__.n(objectSpread2);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/regeneratorRuntime.js
var regeneratorRuntime = __webpack_require__(7557);
var regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(regeneratorRuntime);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/asyncToGenerator.js
var asyncToGenerator = __webpack_require__(41498);
var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator);
// EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.6@@babel/runtime/helpers/slicedToArray.js
var slicedToArray = __webpack_require__(79800);
var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js
var _react_17_0_2_react = __webpack_require__(59301);
// EXTERNAL MODULE: ./src/.umi-production/exports.ts + 15 modules
var _umi_production_exports = __webpack_require__(8931);
// 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__(20008);
;// CONCATENATED MODULE: ./src/pages/Shixuns/Detail/Repository/components/SelectFilePathModal/index.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var SelectFilePathModalmodules = ({"wrap":"wrap___TwY3U","content":"content___Ks95W","mainPathWrap":"mainPathWrap___CrMaa","colorBlue":"colorBlue___dvWbP"});
// EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/jsx-runtime.js
var jsx_runtime = __webpack_require__(37712);
;// CONCATENATED MODULE: ./src/pages/Shixuns/Detail/Repository/components/SelectFilePathModal/index.tsx
var SelectFilePathModal = function SelectFilePathModal(_ref) {
var shixunsDetail = _ref.shixunsDetail,
globalSetting = _ref.globalSetting,
loading = _ref.loading,
dispatch = _ref.dispatch,
title = _ref.title,
_ref$pathList = _ref.pathList,
propsPathList = _ref$pathList === void 0 ? [] : _ref$pathList,
_ref$showInputPath = _ref.showInputPath,
showInputPath = _ref$showInputPath === void 0 ? false : _ref$showInputPath,
_ref$isMergeSelectFil = _ref.isMergeSelectFile,
isMergeSelectFile = _ref$isMergeSelectFil === void 0 ? false : _ref$isMergeSelectFil,
_ref$onFinish = _ref.onFinish,
onFinish = _ref$onFinish === void 0 ? function () {} : _ref$onFinish;
var _Form$useForm = es_form/* default */.Z.useForm(),
_Form$useForm2 = slicedToArray_default()(_Form$useForm, 1),
form = _Form$useForm2[0];
var params = (0,_umi_production_exports.useParams)();
var location = (0,_umi_production_exports.useLocation)();
var isRepository = (0,_react_17_0_2_react.useRef)();
var _useState = (0,_react_17_0_2_react.useState)(''),
_useState2 = slicedToArray_default()(_useState, 2),
selectPath = _useState2[0],
setSelectPath = _useState2[1];
var _useState3 = (0,_react_17_0_2_react.useState)(''),
_useState4 = slicedToArray_default()(_useState3, 2),
originPath = _useState4[0],
setOriginPath = _useState4[1];
var _useState5 = (0,_react_17_0_2_react.useState)([]),
_useState6 = slicedToArray_default()(_useState5, 2),
mainPathList = _useState6[0],
setMainPathList = _useState6[1];
var _useState7 = (0,_react_17_0_2_react.useState)([]),
_useState8 = slicedToArray_default()(_useState7, 2),
treeList = _useState8[0],
setTreeList = _useState8[1];
(0,_react_17_0_2_react.useEffect)(function () {
var _location$pathname;
isRepository.current = ((_location$pathname = location.pathname) === null || _location$pathname === void 0 || (_location$pathname = _location$pathname.split('/')) === null || _location$pathname === void 0 ? void 0 : _location$pathname[3]) === "repository";
}, []);
(0,_react_17_0_2_react.useEffect)(function () {
if (shixunsDetail.actionTabs.key !== 'Repository-SelectFilePath') {
return;
}
var path = propsPathList.join('/');
var arr = [];
propsPathList.map(function (item, index) {
if (index === 0) {
arr.push({
val: "根目录",
path: ""
}, {
val: "/".concat(item),
path: path
});
} else {
arr.push({
val: "/".concat(item),
path: path
});
}
});
setMainPathList(arr);
setSelectPath(path);
setOriginPath(path);
handleGetPathData(path);
}, [shixunsDetail.actionTabs.key]);
var handleGetPathData = /*#__PURE__*/function () {
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee(path) {
var res;
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
_context.next = 2;
return dispatch({
type: isRepository.current ? 'shixunsDetail/getRepository' : 'shixunsDetail/getSecretRepository',
payload: {
id: params.id,
path: path
}
});
case 2:
res = _context.sent;
if (res) {
setTreeList(res.trees || []);
}
case 4:
case "end":
return _context.stop();
}
}, _callee);
}));
return function handleGetPathData(_x) {
return _ref2.apply(this, arguments);
};
}();
var handleClickTree = function handleClickTree(item) {
var newPath = selectPath;
if (item.type === "tree") {
mainPathList.length ? mainPathList.push({
val: "/".concat(item.name),
path: item.name
}) : mainPathList.push({
val: "根目录",
path: ""
}, {
val: "/".concat(item.name),
path: item.name
});
setMainPathList(mainPathList);
newPath = selectPath ? "".concat(selectPath, "/").concat(item.name) : item.name;
setSelectPath(newPath);
}
handleGetPathData(newPath);
};
var handleClickMainPath = function handleClickMainPath(item, index) {
var currentPathList = mainPathList.filter(function (_, key) {
return key <= index;
});
setMainPathList(currentPathList);
// 排除 ”根目录“,将选中的路径连接,去掉第一个字符串 “/”,获取绝对路径
var currentPath = currentPathList.filter(function (_, key) {
return key !== 0;
}).map(function (item) {
return item.val;
}).join('').substr(1);
setSelectPath(currentPath);
handleGetPathData(currentPath);
};
var handleOk = /*#__PURE__*/function () {
var _ref3 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2() {
var values, path, res;
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
while (1) switch (_context2.prev = _context2.next) {
case 0:
values = form === null || form === void 0 ? void 0 : form.getFieldsValue();
path = selectPath ? "".concat(selectPath).concat(values !== null && values !== void 0 && values.name ? "/".concat(values === null || values === void 0 ? void 0 : values.name) : '') : values === null || values === void 0 ? void 0 : values.name;
if (!isMergeSelectFile) {
_context2.next = 6;
break;
}
onFinish(path);
handleCancel();
return _context2.abrupt("return");
case 6:
if (!showInputPath) {
_context2.next = 16;
break;
}
_context2.next = 9;
return form.validateFields();
case 9:
_context2.next = 11;
return dispatch({
type: 'shixunsDetail/uploadGitFolder',
payload: objectSpread2_default()(objectSpread2_default()({}, {
id: params.id,
path: path
}), isRepository.current ? {} : {
secret_repository: true
})
});
case 11:
res = _context2.sent;
onFinish(originPath);
if (res.status === 0) {
message/* default */.ZP.info('新建成功');
}
_context2.next = 18;
break;
case 16:
onFinish(path);
message/* default */.ZP.success("选择文件目录成功");
case 18:
handleCancel();
case 19:
case "end":
return _context2.stop();
}
}, _callee2);
}));
return function handleOk() {
return _ref3.apply(this, arguments);
};
}();
var handleCancel = function handleCancel() {
dispatch({
type: 'shixunsDetail/setActionTabs',
payload: {}
});
form.resetFields();
};
return /*#__PURE__*/(0,jsx_runtime.jsx)(modal/* default */.Z, {
centered: true,
title: title || "新建文件夹",
closable: false,
keyboard: false,
open: shixunsDetail.actionTabs.key === 'Repository-SelectFilePath',
onOk: handleOk,
onCancel: handleCancel,
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: SelectFilePathModalmodules.wrap,
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: SelectFilePathModalmodules.content,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: SelectFilePathModalmodules.mainPathWrap,
children: !!(mainPathList !== null && mainPathList !== void 0 && mainPathList.length) && mainPathList.map(function (item, index) {
return /*#__PURE__*/(0,jsx_runtime.jsx)("a", {
onClick: function onClick() {
return handleClickMainPath(item, index);
},
children: item.val
}, index);
})
}), !!(treeList !== null && treeList !== void 0 && treeList.length) && treeList.map(function (item, index) {
return item.type === "tree" && /*#__PURE__*/(0,jsx_runtime.jsxs)("a", {
onClick: function onClick() {
return handleClickTree(item);
},
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "iconfont icon-wenjianjia ".concat(SelectFilePathModalmodules.colorBlue)
}), item.name]
}, index);
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)("label", {
className: "mt5",
children: "\u9009\u4E2D\u7684\u65B0\u5EFA\u6587\u4EF6\u5939\u76EE\u5F55\uFF1A"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "mt5 mb5",
children: selectPath
}), showInputPath && /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z, {
form: form,
scrollToFirstError: true,
className: "mt20",
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default */.Z.Item, {
name: "name",
rules: [{
required: true,
message: '请输入名称'
}, {
whitespace: true,
message: '请勿输入空格'
}],
children: /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z, {
placeholder: "\u8BF7\u8F93\u5165\u65B0\u6587\u4EF6\u5939\u540D/\u5B50\u6587\u4EF6\u5939\u540D\u3002\uFF08\u5982\uFF1Asrc/step1\uFF09"
})
})
})]
})
});
};
/* harmony default export */ var components_SelectFilePathModal = ((0,_umi_production_exports.connect)(function (_ref4) {
var shixunsDetail = _ref4.shixunsDetail,
loading = _ref4.loading,
globalSetting = _ref4.globalSetting;
return {
shixunsDetail: shixunsDetail,
globalSetting: globalSetting,
loading: loading.models.index
};
})(SelectFilePathModal));
/***/ }),
/***/ 56762:
/*!************************************************************************!*\
!*** ./node_modules/_antd@5.9.0@antd/es/_util/hooks/useForceUpdate.js ***!
\************************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ Z: function() { return /* binding */ useForceUpdate; }
/* harmony export */ });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ 59301);
function useForceUpdate() {
const [, forceUpdate] = react__WEBPACK_IMPORTED_MODULE_0__.useReducer(x => x + 1, 0);
return forceUpdate;
}
/***/ }),
/***/ 8378:
/*!*******************************************************************!*\
!*** ./node_modules/_antd@5.9.0@antd/es/style/motion/collapse.js ***!
\*******************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__) {
const genCollapseMotion = token => ({
[token.componentCls]: {
// For common/openAnimation
[`${token.antCls}-motion-collapse-legacy`]: {
overflow: 'hidden',
'&-active': {
transition: `height ${token.motionDurationMid} ${token.motionEaseInOut},
opacity ${token.motionDurationMid} ${token.motionEaseInOut} !important`
}
},
[`${token.antCls}-motion-collapse`]: {
overflow: 'hidden',
transition: `height ${token.motionDurationMid} ${token.motionEaseInOut},
opacity ${token.motionDurationMid} ${token.motionEaseInOut} !important`
}
}
});
/* harmony default export */ __webpack_exports__.Z = (genCollapseMotion);
/***/ })
}]);