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__Video__Detail__id.async.js

2584 lines
102 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

"use strict";
(self["webpackChunk"] = self["webpackChunk"] || []).push([[96444],{
/***/ 93899:
/*!**********************************************************!*\
!*** ./src/components/CoverUpload/index.tsx + 1 modules ***!
\**********************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
"Z": function() { return /* binding */ components_CoverUpload; }
});
// EXTERNAL MODULE: ./node_modules/antd/es/upload/style/index.js + 1 modules
var style = __webpack_require__(13759);
// EXTERNAL MODULE: ./node_modules/antd/es/upload/index.js + 20 modules
var upload = __webpack_require__(7426);
// EXTERNAL MODULE: ./node_modules/antd/es/message/style/index.js + 1 modules
var message_style = __webpack_require__(14934);
// EXTERNAL MODULE: ./node_modules/antd/es/message/index.js + 1 modules
var message = __webpack_require__(12461);
// EXTERNAL MODULE: ./node_modules/antd/es/button/style/index.js + 1 modules
var button_style = __webpack_require__(29913);
// EXTERNAL MODULE: ./node_modules/antd/es/button/index.js
var es_button = __webpack_require__(71577);
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/slicedToArray.js
var slicedToArray = __webpack_require__(27424);
var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__(67294);
// EXTERNAL MODULE: ./node_modules/@ant-design/icons/es/icons/UploadOutlined.js + 1 modules
var UploadOutlined = __webpack_require__(88484);
// EXTERNAL MODULE: ./node_modules/@ant-design/icons/es/icons/CloseCircleFilled.js
var CloseCircleFilled = __webpack_require__(38900);
// EXTERNAL MODULE: ./src/utils/env.ts + 1 modules
var env = __webpack_require__(59758);
;// CONCATENATED MODULE: ./src/components/CoverUpload/index.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var CoverUploadmodules = ({"img":"img___BgL9D"});
// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__(85893);
;// CONCATENATED MODULE: ./src/components/CoverUpload/index.tsx
var CoverUpload = function CoverUpload(_ref) {
var value = _ref.value,
onChange = _ref.onChange,
getFileProgress = _ref.getFileProgress;
var _useState = (0,react.useState)(false),
_useState2 = slicedToArray_default()(_useState, 2),
imgLoading = _useState2[0],
setImgLoading = _useState2[1];
var uploadButton = /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.Z, {
loading: imgLoading,
icon: /*#__PURE__*/(0,jsx_runtime.jsx)(UploadOutlined/* default */.Z, {}),
children: "\u9009\u62E9\u4E0A\u4F20\u6587\u4EF6"
});
var renderImg = function renderImg() {
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: CoverUploadmodules.img,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("img", {
src: env/* default.API_SERVER */.Z.API_SERVER + "/api/attachments/" + value,
alt: "avatar",
style: {
width: 288
}
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: /*#__PURE__*/(0,jsx_runtime.jsx)(CloseCircleFilled/* default */.Z, {
onClick: function onClick() {
return onChange('');
},
style: {
fontSize: '16px',
color: 'red'
}
})
})]
});
};
var handleChange = function handleChange(info) {
if (getFileProgress) {
getFileProgress(info);
}
if (info.file.status === 'uploading') {
setImgLoading(true);
return;
}
if (info.file.status === 'done') {
var _info$file, _info$file$response, _info$file3, _info$file3$response;
setImgLoading(false);
if (info.file.status === 'done' && ((_info$file = info.file) === null || _info$file === void 0 ? void 0 : (_info$file$response = _info$file.response) === null || _info$file$response === void 0 ? void 0 : _info$file$response.status) === -1) {
var _info$file2, _info$file2$response;
message/* default.error */.ZP.error((_info$file2 = info.file) === null || _info$file2 === void 0 ? void 0 : (_info$file2$response = _info$file2.response) === null || _info$file2$response === void 0 ? void 0 : _info$file2$response.message);
// onChange()
return;
}
onChange(info === null || info === void 0 ? void 0 : (_info$file3 = info.file) === null || _info$file3 === void 0 ? void 0 : (_info$file3$response = _info$file3.response) === null || _info$file3$response === void 0 ? void 0 : _info$file3$response.id);
}
};
return /*#__PURE__*/(0,jsx_runtime.jsx)(react.Fragment, {
children: value ? renderImg() : /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(upload/* default */.Z, {
withCredentials: true,
name: "file",
showUploadList: false,
action: "".concat(env/* default.API_SERVER */.Z.API_SERVER, "/api/attachments.json"),
onChange: handleChange,
accept: "image/*",
children: uploadButton
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "mt20 c-light-black",
children: "\u8BF4\u660E\uFF1A\u652F\u6301\u4E0A\u4F20jpg/png\u7B49\u683C\u5F0F\u6587\u4EF6\uFF0C\u6587\u4EF6\u5927\u5C0F\u4E0D\u80FD\u8D85\u8FC72M,\u5EFA\u8BAE\u4F7F\u7528288*158\u50CF\u7D20\uFF1B"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "c-light-black",
children: "\u5982\u4E0D\u4E0A\u4F20\uFF0C\u9ED8\u8BA4\u4F7F\u7528\u7CFB\u7EDF\u56FE\u7247\u3002"
})]
})
});
};
/* harmony default export */ var components_CoverUpload = (CoverUpload);
/***/ }),
/***/ 61891:
/*!****************************************!*\
!*** ./src/components/useInterval.tsx ***!
\****************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
/* 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 */ 67294);
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]);
}
/***/ }),
/***/ 9893:
/*!******************************************************!*\
!*** ./src/pages/Video/Detail/[id].tsx + 11 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 */ _id_; },
"formatQuery": function() { return /* binding */ formatQuery; }
});
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/regeneratorRuntime.js
var regeneratorRuntime = __webpack_require__(17061);
var regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(regeneratorRuntime);
// EXTERNAL MODULE: ./node_modules/antd/es/spin/style/index.js + 1 modules
var style = __webpack_require__(22536);
// EXTERNAL MODULE: ./node_modules/antd/es/spin/index.js
var spin = __webpack_require__(11382);
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/asyncToGenerator.js
var asyncToGenerator = __webpack_require__(17156);
var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator);
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/objectSpread2.js
var objectSpread2 = __webpack_require__(42122);
var objectSpread2_default = /*#__PURE__*/__webpack_require__.n(objectSpread2);
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/objectWithoutProperties.js
var objectWithoutProperties = __webpack_require__(70215);
var objectWithoutProperties_default = /*#__PURE__*/__webpack_require__.n(objectWithoutProperties);
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__(67294);
// EXTERNAL MODULE: ./src/.umi-production/exports.ts + 8 modules
var _umi_production_exports = __webpack_require__(89214);
;// CONCATENATED MODULE: ./src/pages/Video/Detail/index.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var Detailmodules = ({"bg":"bg___eq_Aq","container":"container___j770l","widthle":"widthle___ouh1T"});
// EXTERNAL MODULE: ./node_modules/antd/es/rate/style/index.js + 1 modules
var rate_style = __webpack_require__(50936);
// EXTERNAL MODULE: ./node_modules/antd/es/rate/index.js + 6 modules
var rate = __webpack_require__(61460);
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/slicedToArray.js
var slicedToArray = __webpack_require__(27424);
var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);
;// CONCATENATED MODULE: ./src/pages/Video/Detail/components/Banner/index.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var Bannermodules = ({"flex_box_center":"flex_box_center___mpDqy","flex_space_between":"flex_space_between___GOQ8P","flex_box_vertical_center":"flex_box_vertical_center___CWfTT","flex_box_center_end":"flex_box_center_end___OjcB2","flex_box_column":"flex_box_column___WLFdH","banner":"banner___iyB_O","wrap":"wrap___cTpkR","title":"title___JWKiH","contentWrap":"contentWrap___SmVcS","button":"button___msCNN","rating":"rating___lBgP9"});
// EXTERNAL MODULE: ./node_modules/antd/es/modal/style/index.js + 1 modules
var modal_style = __webpack_require__(35611);
// EXTERNAL MODULE: ./node_modules/antd/es/modal/index.js + 7 modules
var modal = __webpack_require__(85402);
// EXTERNAL MODULE: ./node_modules/antd/es/radio/style/index.js + 1 modules
var radio_style = __webpack_require__(83822);
// EXTERNAL MODULE: ./node_modules/antd/es/radio/index.js + 4 modules
var es_radio = __webpack_require__(29924);
// EXTERNAL MODULE: ./node_modules/antd/es/message/style/index.js + 1 modules
var message_style = __webpack_require__(14934);
// EXTERNAL MODULE: ./node_modules/antd/es/message/index.js + 1 modules
var message = __webpack_require__(12461);
// EXTERNAL MODULE: ./node_modules/antd/es/input/style/index.js + 1 modules
var input_style = __webpack_require__(69463);
// EXTERNAL MODULE: ./node_modules/antd/es/input/index.js + 5 modules
var input = __webpack_require__(75008);
;// CONCATENATED MODULE: ./src/pages/Video/Detail/components/SendToClassModal/index.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var SendToClassModalmodules = ({"wrap":"wrap___pjBB9","title":"title___xlyq_","radioWrap":"radioWrap___G8Uf8","radio":"radio___ZHEKY","colorFF0000":"colorFF0000___cNS17","pagination":"pagination___fujpm"});
// EXTERNAL MODULE: ./src/service/video.ts
var video = __webpack_require__(43196);
// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__(85893);
;// CONCATENATED MODULE: ./src/pages/Video/Detail/components/SendToClassModal/index.tsx
var _excluded = ["videoDetail", "globalSetting", "loading", "dispatch"];
var Search = input/* default.Search */.Z.Search;
var SendToClassModal = function SendToClassModal(_ref) {
var _courseList$filter;
var videoDetail = _ref.videoDetail,
globalSetting = _ref.globalSetting,
loading = _ref.loading,
dispatch = _ref.dispatch,
props = objectWithoutProperties_default()(_ref, _excluded);
var urlParams = (0,_umi_production_exports.useParams)();
var location = (0,_umi_production_exports.useLocation)();
var _useState = (0,react.useState)([]),
_useState2 = slicedToArray_default()(_useState, 2),
courseList = _useState2[0],
setCourseList = _useState2[1];
var _useState3 = (0,react.useState)(''),
_useState4 = slicedToArray_default()(_useState3, 2),
searchValue = _useState4[0],
setSearchValue = _useState4[1];
var _useState5 = (0,react.useState)(),
_useState6 = slicedToArray_default()(_useState5, 2),
radioValue = _useState6[0],
setRadioValue = _useState6[1];
var _useState7 = (0,react.useState)(false),
_useState8 = slicedToArray_default()(_useState7, 2),
hasError = _useState8[0],
setHasError = _useState8[1];
var _useState9 = (0,react.useState)(false),
_useState10 = slicedToArray_default()(_useState9, 2),
show = _useState10[0],
setShow = _useState10[1];
(0,react.useEffect)(function () {
if (videoDetail.actionTabs.key === 'Banner-SendToClass') {
getSearchUserCourses();
}
}, [videoDetail.actionTabs.key]);
var getSearchUserCourses = /*#__PURE__*/function () {
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
var _res$courses;
var res;
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
_context.next = 2;
return (0,video/* getVideoMyCourses */.WB)({});
case 2:
res = _context.sent;
if (!(res !== null && res !== void 0 && (_res$courses = res.courses) !== null && _res$courses !== void 0 && _res$courses.length)) {
_context.next = 8;
break;
}
setCourseList((res === null || res === void 0 ? void 0 : res.courses) || []);
setShow(true);
_context.next = 11;
break;
case 8:
handleCancel();
message/* default.info */.ZP.info('您当前没有管理任何课堂,不可发送');
return _context.abrupt("return");
case 11:
case "end":
return _context.stop();
}
}, _callee);
}));
return function getSearchUserCourses() {
return _ref2.apply(this, arguments);
};
}();
var handleSearch = function handleSearch(value) {
setCourseList(courseList === null || courseList === void 0 ? void 0 : courseList.map(function (item) {
return objectSpread2_default()(objectSpread2_default()({}, item), {}, {
hide: !item.course_name.includes(value)
});
}));
};
var handleOk = /*#__PURE__*/function () {
var _ref3 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2() {
var res;
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
while (1) switch (_context2.prev = _context2.next) {
case 0:
if (radioValue) {
_context2.next = 3;
break;
}
setHasError(true);
return _context2.abrupt("return");
case 3:
_context2.next = 5;
return (0,video/* videoSendToCourse */.PO)({
id: urlParams.videoId,
course_id: radioValue
});
case 5:
res = _context2.sent;
if ((res === null || res === void 0 ? void 0 : res.status) === 0) {
message/* default.success */.ZP.success('发送成功');
handleCancel();
_umi_production_exports.history === null || _umi_production_exports.history === void 0 ? void 0 : _umi_production_exports.history.replace("/classrooms/".concat(radioValue, "/shixun_homework"));
}
case 7:
case "end":
return _context2.stop();
}
}, _callee2);
}));
return function handleOk() {
return _ref3.apply(this, arguments);
};
}();
var handleCancel = function handleCancel() {
setSearchValue('');
setRadioValue(null);
setHasError(false);
dispatch({
type: 'videoDetail/setActionTabs',
payload: {}
});
setShow(false);
};
return /*#__PURE__*/(0,jsx_runtime.jsx)(modal/* default */.Z, {
centered: true,
keyboard: false,
closable: false,
title: "\u53D1\u9001\u81F3\u8BFE\u5802",
open: show,
okText: "\u786E\u5B9A",
cancelText: "\u53D6\u6D88",
onOk: handleOk,
onCancel: handleCancel,
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: SendToClassModalmodules.wrap,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "mb10",
children: /*#__PURE__*/(0,jsx_runtime.jsx)(Search, {
placeholder: "\u8F93\u5165\u8BFE\u5802\u540D\u79F0\u7684\u5173\u952E\u5B57\u8FDB\u884C\u641C\u7D22",
value: searchValue,
onChange: function onChange(e) {
return setSearchValue(e.target.value);
},
onSearch: function onSearch(value) {
setSearchValue(value);
handleSearch(value);
}
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: SendToClassModalmodules.radioWrap,
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default.Group */.ZP.Group, {
value: radioValue,
onChange: function onChange(e) {
setRadioValue(e.target.value);
setHasError(false);
},
children: courseList === null || courseList === void 0 ? void 0 : (_courseList$filter = courseList.filter(function (item) {
return !(item !== null && item !== void 0 && item.hide);
})) === null || _courseList$filter === void 0 ? void 0 : _courseList$filter.map(function (item, key) {
return /*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
className: SendToClassModalmodules.radio,
value: item.course_id,
children: item.course_name
}, key);
})
})
}), hasError && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: SendToClassModalmodules.colorFF0000,
children: "\u8BF7\u9009\u62E9\u4F60\u8981\u53D1\u9001\u7684\u8BFE\u5802"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: SendToClassModalmodules.title,
children: "\u6E29\u99A8\u63D0\u793A\uFF1A\u5F53\u524D\u89C6\u9891\u9879\u76EE\u5C06\u4F1A\u53D1\u9001\u5230\u6307\u5B9A\u8BFE\u5802"
})]
})
});
};
/* harmony default export */ var components_SendToClassModal = ((0,_umi_production_exports.connect)(function (_ref4) {
var videoDetail = _ref4.videoDetail,
loading = _ref4.loading,
globalSetting = _ref4.globalSetting;
return {
videoDetail: videoDetail,
globalSetting: globalSetting,
loading: loading.models.index
};
})(SendToClassModal));
// EXTERNAL MODULE: ./src/pages/Video/Detail/components/AddVideoModal/index.tsx + 1 modules
var AddVideoModal = __webpack_require__(53619);
// EXTERNAL MODULE: ./src/service/paths.ts
var paths = __webpack_require__(29533);
// EXTERNAL MODULE: ./src/utils/util.tsx
var util = __webpack_require__(29427);
// EXTERNAL MODULE: ./src/utils/verifyLogin.tsx + 3 modules
var verifyLogin = __webpack_require__(72551);
// EXTERNAL MODULE: ./node_modules/antd/es/badge/style/index.js + 1 modules
var badge_style = __webpack_require__(44008);
// EXTERNAL MODULE: ./node_modules/antd/es/badge/index.js + 4 modules
var badge = __webpack_require__(63922);
// EXTERNAL MODULE: ./node_modules/antd/es/button/style/index.js + 1 modules
var button_style = __webpack_require__(29913);
// EXTERNAL MODULE: ./node_modules/antd/es/button/index.js
var es_button = __webpack_require__(71577);
// EXTERNAL MODULE: ./node_modules/antd/es/auto-complete/style/index.js + 1 modules
var auto_complete_style = __webpack_require__(19070);
// EXTERNAL MODULE: ./node_modules/antd/es/auto-complete/index.js
var auto_complete = __webpack_require__(49288);
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/toConsumableArray.js
var toConsumableArray = __webpack_require__(861);
var toConsumableArray_default = /*#__PURE__*/__webpack_require__.n(toConsumableArray);
;// CONCATENATED MODULE: ./src/pages/Video/Detail/components/EditAuthModal/index.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var EditAuthModalmodules = ({"selectSchool":"selectSchool___SmaLm","delete":"delete___aU6BX"});
// EXTERNAL MODULE: ./src/service/shixuns.ts
var shixuns = __webpack_require__(56088);
;// CONCATENATED MODULE: ./src/pages/Video/Detail/components/EditAuthModal/index.tsx
var EditAuthModal = function EditAuthModal(_ref) {
var _videoDetail$detail2, _videoDetail$detail2$;
var videoDetail = _ref.videoDetail,
_ref$dispatch = _ref.dispatch,
dispatch = _ref$dispatch === void 0 ? function () {} : _ref$dispatch,
visible = _ref.visible,
_ref$onClose = _ref.onClose,
onClose = _ref$onClose === void 0 ? function () {} : _ref$onClose;
// const params = useParams<any>();
// const location = useLocation() as any;
var queryParams = videoDetail.queryParams;
var _videoDetail$queryPar = videoDetail.queryParams,
subject_id = _videoDetail$queryPar.subject_id,
videoId = _videoDetail$queryPar.videoId;
var params = {
videoId: videoId
};
var _useState = (0,react.useState)(0),
_useState2 = slicedToArray_default()(_useState, 2),
radioValue = _useState2[0],
setRadioValue = _useState2[1];
var _useState3 = (0,react.useState)(''),
_useState4 = slicedToArray_default()(_useState3, 2),
departmentValue = _useState4[0],
setDepartmentValue = _useState4[1];
var _useState5 = (0,react.useState)([]),
_useState6 = slicedToArray_default()(_useState5, 2),
departmentList = _useState6[0],
setDepartmentList = _useState6[1];
var _useState7 = (0,react.useState)([]),
_useState8 = slicedToArray_default()(_useState7, 2),
selectDepartmentList = _useState8[0],
setSelectDepartmentList = _useState8[1];
(0,react.useEffect)(function () {
var _videoDetail$detail, _videoDetail$detail$v;
var videoSchool = ((_videoDetail$detail = videoDetail.detail) === null || _videoDetail$detail === void 0 ? void 0 : (_videoDetail$detail$v = _videoDetail$detail.video_item) === null || _videoDetail$detail$v === void 0 ? void 0 : _videoDetail$detail$v.schools) || [];
setRadioValue(videoSchool !== null && videoSchool !== void 0 && videoSchool.length ? 1 : 0);
setSelectDepartmentList(videoSchool);
}, [(_videoDetail$detail2 = videoDetail.detail) === null || _videoDetail$detail2 === void 0 ? void 0 : (_videoDetail$detail2$ = _videoDetail$detail2.video_item) === null || _videoDetail$detail2$ === void 0 ? void 0 : _videoDetail$detail2$.schools]);
var handleGetDepartments = /*#__PURE__*/function () {
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee(value) {
var res;
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
_context.next = 2;
return (0,shixuns/* getDepartments */.Ql)({
q: value
});
case 2:
res = _context.sent;
if (res) {
setDepartmentList(res.shools_name || []);
}
case 4:
case "end":
return _context.stop();
}
}, _callee);
}));
return function handleGetDepartments(_x) {
return _ref2.apply(this, arguments);
};
}();
var handleSelectDepartment = function handleSelectDepartment(value) {
if (selectDepartmentList.includes(value)) {
message/* default.info */.ZP.info("请勿指定相同的单位");
return;
}
setDepartmentValue('');
setSelectDepartmentList([].concat(toConsumableArray_default()(selectDepartmentList), [value]));
};
var handleOk = /*#__PURE__*/function () {
var _ref3 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2() {
var res;
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
while (1) switch (_context2.prev = _context2.next) {
case 0:
if (!(radioValue === 1 && !(selectDepartmentList !== null && selectDepartmentList !== void 0 && selectDepartmentList.length))) {
_context2.next = 2;
break;
}
return _context2.abrupt("return", message/* default.info */.ZP.info('请选择指定单位公开'));
case 2:
_context2.next = 4;
return (0,video/* addSchool */.ni)(objectSpread2_default()(objectSpread2_default()({}, queryParams), {}, {
id: params.videoId,
schools: radioValue === 0 ? [] : selectDepartmentList,
is_public: radioValue === 2 ? false : true
}));
case 4:
res = _context2.sent;
if ((res === null || res === void 0 ? void 0 : res.status) === 0) {
message/* default.success */.ZP.success('设置成功');
handleCancel();
}
case 6:
case "end":
return _context2.stop();
}
}, _callee2);
}));
return function handleOk() {
return _ref3.apply(this, arguments);
};
}();
var handleCancel = function handleCancel() {
onClose();
dispatch({
type: "videoDetail/getVideoDetail",
payload: objectSpread2_default()(objectSpread2_default()({}, queryParams), {}, {
id: params.videoId
})
});
};
return /*#__PURE__*/(0,jsx_runtime.jsx)(modal/* default */.Z, {
centered: true,
maskClosable: false,
title: '权限设置',
width: 530,
className: EditAuthModalmodules.modal,
open: visible,
onOk: handleOk,
onCancel: handleCancel,
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(es_radio/* default.Group */.ZP.Group, {
value: radioValue,
onChange: function onChange(e) {
return setRadioValue(e.target.value);
},
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)(es_radio/* default */.ZP, {
value: 0,
children: ["\u5BF9\u6240\u6709\u5355\u4F4D\u516C\u5F00", /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: "\uFF08\u9009\u4E2D\u540E\uFF0C\u5BF9\u6240\u6709\u7528\u6237\u53EF\u89C1\uFF09"
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(es_radio/* default */.ZP, {
value: 1,
children: ["\u5BF9\u6307\u5B9A\u5355\u4F4D\u516C\u5F00", /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: "\uFF08\u9009\u4E2D\u540E\uFF0C\u4EC5\u5BF9\u4E0B\u65B9\u6307\u5B9A\u5355\u4F4D\u7528\u6237\u53EF\u89C1\uFF09"
})]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)(es_radio/* default */.ZP, {
value: 2,
children: ["\u4E0D\u516C\u5F00", /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: "\uFF08\u9009\u4E2D\u540E\uFF0C\u5BF9\u6240\u6709\u7528\u6237\u4E0D\u53EF\u89C1\uFF09"
})]
})]
}), radioValue === 1 && /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "mt10",
children: /*#__PURE__*/(0,jsx_runtime.jsx)(auto_complete/* default */.Z, {
showSearch: true,
className: EditAuthModalmodules.selectSchool,
placeholder: "\u8BF7\u8F93\u5165\u5E76\u9009\u62E9\u5355\u4F4D\u540D\u79F0",
value: departmentValue,
onChange: function onChange(value) {
setDepartmentValue(value);
handleGetDepartments(value);
},
onSelect: handleSelectDepartment,
options: departmentList === null || departmentList === void 0 ? void 0 : departmentList.map(function (item) {
return {
value: item
};
})
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "mt10",
children: selectDepartmentList === null || selectDepartmentList === void 0 ? void 0 : selectDepartmentList.map(function (item, i) {
return /*#__PURE__*/(0,jsx_runtime.jsx)(badge/* default */.Z, {
count: /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: EditAuthModalmodules["delete"],
onClick: function onClick() {
return setSelectDepartmentList(selectDepartmentList.filter(function (val) {
return val !== item;
}));
},
children: "x"
}),
className: "mt10 mr20 current",
children: /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.Z, {
type: "primary",
ghost: true,
children: item
})
}, i);
})
})]
})]
})
});
};
/* harmony default export */ var components_EditAuthModal = (EditAuthModal);
;// CONCATENATED MODULE: ./src/pages/Video/Detail/components/Banner/index.tsx
var Banner = function Banner(_ref) {
var user = _ref.user,
videoDetail = _ref.videoDetail,
dispatch = _ref.dispatch;
var queryParams = videoDetail.queryParams;
var _videoDetail$queryPar = videoDetail.queryParams,
subject_id = _videoDetail$queryPar.subject_id,
videoId = _videoDetail$queryPar.videoId;
var params = {
videoId: videoId
};
var _useState = (0,react.useState)(),
_useState2 = slicedToArray_default()(_useState, 2),
visibleVideoModal = _useState2[0],
setVisibleVideoModal = _useState2[1];
var _useState3 = (0,react.useState)(),
_useState4 = slicedToArray_default()(_useState3, 2),
editData = _useState4[0],
setEditData = _useState4[1];
var _useState5 = (0,react.useState)(false),
_useState6 = slicedToArray_default()(_useState5, 2),
visibleEditAuth = _useState6[0],
setVisibleEditAuth = _useState6[1];
var _ref2 = videoDetail.detail || {},
video_item = _ref2.video_item;
var _ref3 = videoDetail || {},
stages = _ref3.stages;
var handleSendToClass = function handleSendToClass() {
dispatch({
type: 'videoDetail/setActionTabs',
payload: {
key: 'Banner-SendToClass'
}
});
};
var handleEdit = /*#__PURE__*/function () {
var _ref4 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
var _user$userInfo, _user$userInfo2;
var _items$, datas, items, res;
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
if (!((_user$userInfo = user.userInfo) !== null && _user$userInfo !== void 0 && _user$userInfo.admin || (_user$userInfo2 = user.userInfo) !== null && _user$userInfo2 !== void 0 && _user$userInfo2.is_teacher && (0,verifyLogin/* handleProfessionalCertificationModal */.O5)())) {
_context.next = 9;
break;
}
datas = [];
stages.map(function (item) {
item.items.map(function (ite) {
datas.push(ite);
});
});
items = datas.filter(function (item) {
return item.id === video_item.id;
}); // let items=stages.filter((item:any)=>item?.items.filter((ite:any)=>ite.id===video_item.id))
// console.log('----',items);
// return
_context.next = 6;
return (0,video/* getVideoEditDatas */.TJ)(objectSpread2_default()({
id: items === null || items === void 0 ? void 0 : (_items$ = items[0]) === null || _items$ === void 0 ? void 0 : _items$.stage_item_id
}, queryParams));
case 6:
res = _context.sent;
setEditData(res);
setVisibleVideoModal(true);
case 9:
case "end":
return _context.stop();
}
}, _callee);
}));
return function handleEdit() {
return _ref4.apply(this, arguments);
};
}();
var handleUpdateVideoOk = /*#__PURE__*/function () {
var _ref5 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2(data) {
var _editData$video_item, _editData$video_item2;
var res;
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
while (1) switch (_context2.prev = _context2.next) {
case 0:
_context2.next = 2;
return (0,paths/* upCoursewareToStage */.M2)(objectSpread2_default()(objectSpread2_default()({
id: editData === null || editData === void 0 ? void 0 : editData.id
}, data), {}, {
video_id: (data === null || data === void 0 ? void 0 : data.video_id) || (editData === null || editData === void 0 ? void 0 : (_editData$video_item = editData.video_item) === null || _editData$video_item === void 0 ? void 0 : _editData$video_item.video_id),
link: (data === null || data === void 0 ? void 0 : data.link) || (editData === null || editData === void 0 ? void 0 : (_editData$video_item2 = editData.video_item) === null || _editData$video_item2 === void 0 ? void 0 : _editData$video_item2.link)
}));
case 2:
res = _context2.sent;
// const res = await updateVideo({
// ...data, id: params.videoId,
// ...queryParams
// });
if (res) {
setVisibleVideoModal(false);
dispatch({
type: "videoDetail/getVideoDetail",
payload: objectSpread2_default()({
id: params.videoId
}, queryParams)
});
}
return _context2.abrupt("return", res);
case 5:
case "end":
return _context2.stop();
}
}, _callee2);
}));
return function handleUpdateVideoOk(_x) {
return _ref5.apply(this, arguments);
};
}();
return /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
className: Bannermodules.banner,
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
className: Bannermodules.wrap,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("p", {
className: Bannermodules.title,
children: video_item === null || video_item === void 0 ? void 0 : video_item.name
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: Bannermodules.contentWrap,
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: "font14 c-white",
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "mr10",
children: "\u5B66\u4E60\u4EBA\u6570\uFF1A"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
children: (video_item === null || video_item === void 0 ? void 0 : video_item.study_video_items_count) || 0
}), /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "ml100 mr10",
children: "\u5B66\u5458\u8BC4\u5206\uFF1A"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(rate/* default */.Z, {
allowHalf: true,
value: (0,util/* formatRate */.og)(video_item === null || video_item === void 0 ? void 0 : video_item.star),
disabled: true,
className: Bannermodules.rating
})]
})
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)(components_SendToClassModal, {}), /*#__PURE__*/(0,jsx_runtime.jsx)(AddVideoModal/* default */.Z, {
editData: editData,
visible: visibleVideoModal,
onCancel: function onCancel() {
return setVisibleVideoModal(false);
},
onOk: handleUpdateVideoOk,
queryParams: queryParams
}), /*#__PURE__*/(0,jsx_runtime.jsx)(components_EditAuthModal, {
dispatch: dispatch,
videoDetail: videoDetail,
visible: visibleEditAuth,
onClose: function onClose() {
return setVisibleEditAuth(false);
}
})]
});
};
/* harmony default export */ var components_Banner = ((0,_umi_production_exports.connect)(function (_ref6) {
var user = _ref6.user,
videoDetail = _ref6.videoDetail;
return {
user: user,
videoDetail: videoDetail
};
})(Banner));
// EXTERNAL MODULE: ./node_modules/antd/es/empty/style/index.js + 1 modules
var empty_style = __webpack_require__(81151);
// EXTERNAL MODULE: ./node_modules/antd/es/empty/index.js + 2 modules
var empty = __webpack_require__(62986);
// EXTERNAL MODULE: ./node_modules/antd/es/checkbox/style/index.js + 1 modules
var checkbox_style = __webpack_require__(82000);
// EXTERNAL MODULE: ./node_modules/antd/es/checkbox/index.js + 2 modules
var es_checkbox = __webpack_require__(32808);
// EXTERNAL MODULE: ./node_modules/js-base64/base64.js
var base64 = __webpack_require__(19575);
// EXTERNAL MODULE: ./src/components/Video/Play/index.jsx + 1 modules
var Play = __webpack_require__(8423);
// EXTERNAL MODULE: ./src/components/RenderHtml/index.tsx + 1 modules
var RenderHtml = __webpack_require__(12768);
;// CONCATENATED MODULE: ./src/pages/Video/Detail/components/Content/index.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var Contentmodules = ({"contentWrap":"contentWrap___xMJQi","footer":"footer___CLzrT","radioGroup":"radioGroup___RT1dL","wrap":"wrap___QZGSJ","introName":"introName___m17tA","rating":"rating___MXLBr","modalRating":"modalRating___aluwj"});
// EXTERNAL MODULE: ./src/components/useInterval.tsx
var useInterval = __webpack_require__(61891);
;// CONCATENATED MODULE: ./src/pages/Video/Detail/components/Content/index.tsx
var Content_excluded = ["videoDetail", "globalSetting", "loading", "dispatch"];
var Content = function Content(_ref) {
var videoDetail = _ref.videoDetail,
globalSetting = _ref.globalSetting,
loading = _ref.loading,
dispatch = _ref.dispatch,
props = objectWithoutProperties_default()(_ref, Content_excluded);
// const params = useParams<any>();
// const location = useLocation() as any;
var queryParams = videoDetail.queryParams,
selectParams = videoDetail.selectParams,
videoList = videoDetail.videoList;
var subject_id = queryParams.subject_id,
videoId = queryParams.videoId;
var checkBoxValue = selectParams.checkBoxValue,
radioValue = selectParams.radioValue;
var params = {
videoId: videoId
};
var location = {
query: queryParams
};
var videoRef = (0,react.useRef)();
var startVideoRef = (0,react.useRef)();
var scoreRef = (0,react.useRef)();
var timeRef = (0,react.useRef)(5);
var _ref2 = videoDetail.detail || {},
video_item = _ref2.video_item;
(0,useInterval/* default */.Z)( /*#__PURE__*/asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
if (!startVideoRef.current) {
_context.next = 5;
break;
}
console.log("videoRef lastUpdatedTime: ", videoRef.current.getLastUpdatedTime());
console.log(videoRef.current);
// 间隔3秒 记录播放时间
_context.next = 5;
return handleViewVideo();
case 5:
case "end":
return _context.stop();
}
}, _callee);
})), timeRef.current * 1000);
var handleViewVideo = function handleViewVideo() {
var isEnd = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;
var query = isEnd ? {
is_f: 1
} : {};
return (0,video/* viewVideo */.DH)(objectSpread2_default()(objectSpread2_default()({}, query), {
id: params.videoId,
point: videoRef.current.getLastUpdatedTime(),
total: videoRef.current.getDuration()
}));
};
var handlLogWatchHistory = function handlLogWatchHistory(query) {
if (query.ed === "1") {
startVideoRef.current = false;
handleViewVideo(true);
}
if (!startVideoRef.current && !query.ed) {
startVideoRef.current = true;
timeRef.current = videoRef.current.getDuration() <= 5 ? 1 : 5;
handleViewVideo();
}
return dispatch({
type: 'userDetail/logWatchHistory',
payload: query
});
};
var handlePause = function handlePause() {
startVideoRef.current = false;
};
var handlePlay = function handlePlay() {
// if () {
// Modal.info({
// centered: true,
// width: 400,
// okText: '知道啦',
// icon: null,
// content: <div className="tc font14">当前视频暂未公开,敬请期待</div>
// });
// return;
// }
startVideoRef.current = true;
};
var handleChangeScore = function handleChangeScore() {
scoreRef.current = 5;
modal/* default.confirm */.Z.confirm({
width: 600,
centered: true,
okText: '确定',
cancelText: '取消',
title: '请给本视频评分',
content: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "tc font14",
children: /*#__PURE__*/(0,jsx_runtime.jsx)(rate/* default */.Z, {
defaultValue: scoreRef.current,
onChange: function onChange(value) {
return scoreRef.current = value;
},
className: Contentmodules.modalRating
})
}),
onOk: function () {
var _onOk = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2() {
var res, _getJsonFromUrl, course_id;
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
while (1) switch (_context2.prev = _context2.next) {
case 0:
_context2.next = 2;
return (0,video/* starVideo */.jK)({
id: params.videoId,
star: scoreRef.current
});
case 2:
res = _context2.sent;
if (res.status === 0) {
_getJsonFromUrl = (0,util/* getJsonFromUrl */.oP)(), course_id = _getJsonFromUrl.course_id;
dispatch({
type: "videoDetail/getVideoDetail",
payload: {
id: params.videoId,
videoId: params.videoId,
course_id: course_id
}
});
}
case 4:
case "end":
return _context2.stop();
}
}, _callee2);
}));
function onOk() {
return _onOk.apply(this, arguments);
}
return onOk;
}()
});
};
var handlePlayEnded = function handlePlayEnded(el) {
// const newVideoList=JSON.parse(JSON.stringify(videoList));
var newVideoList = window.filterVideoSign;
var currentVideoIndex = newVideoList.findIndex(function (v) {
return v.id === videoId;
});
var stopAutoPlay = currentVideoIndex === newVideoList.length - 1;
if (stopAutoPlay) return;
var nextVideoId = newVideoList[currentVideoIndex + 1].id;
var isCanView = newVideoList[currentVideoIndex + 1].can_view;
var openLink = newVideoList[currentVideoIndex + 1].link;
var ispublic = newVideoList[currentVideoIndex + 1].is_public;
if (window.checkBoxValue) {
if (openLink) {
window.open(openLink);
return;
}
if (!isCanView) {
modal/* default.info */.Z.info({
centered: true,
width: 400,
okText: '知道啦',
icon: null,
content: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "tc font14",
children: "\u4E0B\u4E00\u6761\u89C6\u9891\u4E3A\u521B\u5EFA\u8005\u6240\u5C5E\u5355\u4F4D\u5185\u90E8\u6559\u5B66\u8D44\u6599\uFF0C\u5916\u5355\u4F4D\u7528\u6237\u65E0\u89C2\u770B\u6743\u9650"
})
});
return;
}
if (!ispublic) {
modal/* default.info */.Z.info({
centered: true,
width: 400,
okText: '知道啦',
icon: null,
content: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "tc font14",
children: "\u4E0B\u4E00\u6761\u89C6\u9891\u6682\u672A\u516C\u5F00\uFF0C\u656C\u8BF7\u671F\u5F85"
})
});
return;
}
dispatch({
type: 'videoDetail/handleListItemClick',
payload: {
videoId: nextVideoId
}
});
window.videoTimer = setTimeout(function () {
el.current.play();
}, 2000);
}
};
var _onChange = function onChange(type, e) {
if (type === 'checkBox') {
var checked = e.target.checked;
window.checkBoxValue = checked; //全局标记使用,勿删
dispatch({
type: "videoDetail/setSelectValue",
payload: {
radioValue: radioValue,
checkBoxValue: checked
}
});
return;
}
dispatch({
type: "videoDetail/setSelectValue",
payload: {
checkBoxValue: checkBoxValue,
radioValue: e.target.value
}
});
};
var stopNextVideo = function stopNextVideo() {
var currentVideoIndex = videoList.findIndex(function (v) {
return v.id === videoId;
});
var stopAutoPlay = currentVideoIndex === videoList.length - 1;
return !stopAutoPlay ? /*#__PURE__*/(0,jsx_runtime.jsx)(es_checkbox/* default */.Z, {
onChange: function onChange(v) {
_onChange('checkBox', v);
},
checked: checkBoxValue,
children: "\u81EA\u52A8\u64AD\u653E\u4E0B\u4E00\u4E2A\u89C6\u9891"
}) : /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: "\u5F53\u524D\u5DF2\u662F\u6700\u540E\u4E00\u4E2A\u89C6\u9891"
});
};
return /*#__PURE__*/(0,jsx_runtime.jsx)("aside", {
className: Contentmodules.contentWrap,
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
className: Contentmodules.wrap,
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("header", {
children: [(video_item === null || video_item === void 0 ? void 0 : video_item.description) && /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: Contentmodules.introName,
children: "\u7B80\u4ECB"
}), (0,util/* isUnOrNull */.W)(video_item === null || video_item === void 0 ? void 0 : video_item.my_star) ? /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.Z, {
type: "primary",
ghost: true,
onClick: handleChangeScore,
children: "\u8BC4\u5206"
}) : /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: "ml100 mr10 font14",
children: "\u6211\u7684\u8BC4\u5206\uFF1A"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(rate/* default */.Z, {
value: video_item === null || video_item === void 0 ? void 0 : video_item.my_star,
disabled: true,
className: Contentmodules.rating
})]
})]
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "mt20",
children: /*#__PURE__*/(0,jsx_runtime.jsx)(RenderHtml/* default */.Z, {
value: (video_item === null || video_item === void 0 ? void 0 : video_item.description) || ''
})
}), !(video_item !== null && video_item !== void 0 && video_item.can_edit) && !(video_item !== null && video_item !== void 0 && video_item.is_public) ? /*#__PURE__*/(0,jsx_runtime.jsx)(empty/* default */.Z, {
description: "\u5F53\u524D\u89C6\u9891\u6682\u672A\u516C\u5F00\uFF0C\u656C\u8BF7\u671F\u5F85"
}) : /*#__PURE__*/(0,jsx_runtime.jsx)(Play/* default */.Z, {
ref: videoRef,
startTime: video_item === null || video_item === void 0 ? void 0 : video_item.last_point,
src: video_item !== null && video_item !== void 0 && video_item.is_link ? video_item === null || video_item === void 0 ? void 0 : video_item.link : (video_item === null || video_item === void 0 ? void 0 : video_item.play_url) && base64.Base64.decode(video_item === null || video_item === void 0 ? void 0 : video_item.play_url),
videoId: video_item === null || video_item === void 0 ? void 0 : video_item.video_id,
logWatchHistory: handlLogWatchHistory,
handlePause: handlePause,
handlePlay: handlePlay,
videoSpeed: radioValue,
handlePlayEnded: handlePlayEnded,
toLog: function toLog() {}
}), !(video_item !== null && video_item !== void 0 && video_item.can_edit) && !(video_item !== null && video_item !== void 0 && video_item.is_public) ? null : /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: Contentmodules.footer,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: Contentmodules.checkBox,
children: stopNextVideo()
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: Contentmodules.radioGroup,
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(es_radio/* default.Group */.ZP.Group, {
onChange: function onChange(v) {
_onChange('radio', v);
},
value: radioValue,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
value: 1,
children: "1.0X"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
value: 1.5,
children: "1.5X"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_radio/* default */.ZP, {
value: 2,
children: "2.0X"
})]
})
})]
})]
})
});
};
/* harmony default export */ var components_Content = ((0,_umi_production_exports.connect)(function (_ref4) {
var videoDetail = _ref4.videoDetail,
loading = _ref4.loading,
globalSetting = _ref4.globalSetting;
return {
videoDetail: videoDetail,
globalSetting: globalSetting,
loading: loading
};
})(Content));
;// CONCATENATED MODULE: ./src/pages/Video/Detail/components/List/index.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var Listmodules = ({"flex_box_center":"flex_box_center___yWqSL","flex_space_between":"flex_space_between___LgFmv","flex_box_vertical_center":"flex_box_vertical_center____lt6U","flex_box_center_end":"flex_box_center_end___UqkaD","flex_box_column":"flex_box_column___V8XLF","list":"list___8tjfT","box":"box___AL3Tl","title":"title___IVfkQ","gray":"gray___RnyYk","brght":"brght___EWRNa","s1":"s1___dPBQg","s2":"s2___cDAcO","s3":"s3___SRBBG","active":"active___hsNCX","line":"line___Qbmt5"});
// EXTERNAL MODULE: ./src/service/exercise.ts
var exercise = __webpack_require__(51412);
// EXTERNAL MODULE: ./src/utils/env.ts + 1 modules
var env = __webpack_require__(59758);
;// CONCATENATED MODULE: ./src/pages/Video/Detail/components/List/index.tsx
var List_excluded = ["dispatch", "pathsDetail", "videoDetail", "user"];
var listType = [{
name: '实践项目',
type: 'Shixun',
icon: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "iconfont icon-shixun2 font20"
})
}, {
name: '视频项目',
type: 'VideoItem',
icon: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "iconfont icon-shipin font20"
})
}, {
name: '教学课件',
type: 'Attachment',
icon: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "iconfont icon-jiaoxueanli font20"
})
}, {
name: '空目录',
type: 'StageCatalog',
icon: /*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "iconfont icon-kongbai font20"
})
}];
var List = function List(_ref) {
var dispatch = _ref.dispatch,
pathsDetail = _ref.pathsDetail,
videoDetail = _ref.videoDetail,
user = _ref.user,
props = objectWithoutProperties_default()(_ref, List_excluded);
var queryParams = videoDetail.queryParams,
stages = videoDetail.stages,
cust_seq = videoDetail.cust_seq,
active = videoDetail.active;
var subject_id = queryParams.subject_id,
course_id = queryParams.course_id;
var _useSearchParams = (0,_umi_production_exports.useSearchParams)(),
_useSearchParams2 = slicedToArray_default()(_useSearchParams, 1),
searchParams = _useSearchParams2[0];
(0,react.useEffect)(function () {
if (subject_id) {
dispatch({
type: 'videoDetail/getStageData',
payload: {
subject_id: subject_id
}
});
} else {
dispatch({
type: 'videoDetail/getCourseStageData',
payload: {
coursesId: course_id
}
});
}
}, []);
//实训方法
var toShixun = /*#__PURE__*/function () {
var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee(id, is_jupyter) {
var execRes;
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
dispatch({
type: 'globalSetting/setGlobalLoading',
payload: {
show: true,
text: '正在进入实训,请稍后...'
}
});
if (!is_jupyter) {
_context.next = 7;
break;
}
_context.next = 4;
return (0,shixuns/* execJupyter */.BK)({
id: id
});
case 4:
_context.t0 = _context.sent;
_context.next = 10;
break;
case 7:
_context.next = 9;
return (0,shixuns/* execShixun */.Ir)({
id: id
});
case 9:
_context.t0 = _context.sent;
case 10:
execRes = _context.t0;
dispatch({
type: 'globalSetting/setGlobalLoading',
payload: {
show: false,
text: ''
}
});
if (!(execRes !== null && execRes !== void 0 && execRes.game_identifier || execRes !== null && execRes !== void 0 && execRes.identifier)) {
_context.next = 15;
break;
}
(0,util/* openNewWindow */.xg)(is_jupyter ? "/tasks/".concat(execRes === null || execRes === void 0 ? void 0 : execRes.identifier, "/jupyter") : "/tasks/".concat(execRes.game_identifier));
return _context.abrupt("return");
case 15:
if ((execRes === null || execRes === void 0 ? void 0 : execRes.status) === 2) {
handleResetGame(execRes === null || execRes === void 0 ? void 0 : execRes.message);
} else if ((execRes === null || execRes === void 0 ? void 0 : execRes.status) === 3) {
handleInBeta(execRes === null || execRes === void 0 ? void 0 : execRes.message);
}
case 16:
case "end":
return _context.stop();
}
}, _callee);
}));
return function toShixun(_x, _x2) {
return _ref2.apply(this, arguments);
};
}();
var handleInBeta = function handleInBeta(message) {
modal/* default.confirm */.Z.confirm({
centered: true,
title: '提示',
okText: '确定',
cancelText: '取消',
content: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: "tc font16",
children: ["\u76EE\u524D\u8BE5\u5B9E\u8DF5\u9879\u76EE\u5C1A\u5728\u5185\u6D4B\u4E2D\uFF0C\u5C06\u4E8E", message, "\u4E4B\u540E\u5F00\u653E\uFF0C\u8C22\u8C22\uFF01"]
})
});
};
var handleResetGame = function handleResetGame(url) {
var _url;
url = (_url = url) !== null && _url !== void 0 && _url.includes('.json') ? url : "".concat(url, ".json");
modal/* default.confirm */.Z.confirm({
centered: true,
title: '提示',
okText: '确定',
cancelText: '取消',
content: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "tc font16",
children: "\u5B9E\u8BAD\u5DF2\u7ECF\u66F4\u65B0\u4E86\uFF0C\u6B63\u5728\u4E3A\u60A8\u91CD\u7F6E!"
}),
onOk: function () {
var _onOk = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee2() {
var res, execRes;
return regeneratorRuntime_default()().wrap(function _callee2$(_context2) {
while (1) switch (_context2.prev = _context2.next) {
case 0:
_context2.next = 2;
return (0,exercise/* resetMyGame */.$Q)({
url: url
});
case 2:
res = _context2.sent;
if (res) {
_context2.next = 5;
break;
}
return _context2.abrupt("return");
case 5:
message/* default.success */.ZP.success('重置成功,正在进入实训!');
_context2.next = 8;
return (0,shixuns/* execShixun */.Ir)({
id: res.shixun_identifier
});
case 8:
execRes = _context2.sent;
if (!(execRes !== null && execRes !== void 0 && execRes.game_identifier)) {
_context2.next = 12;
break;
}
(0,util/* openNewWindow */.xg)("/tasks/".concat(execRes.game_identifier));
return _context2.abrupt("return");
case 12:
if ((execRes === null || execRes === void 0 ? void 0 : execRes.status) === 2) {
handleResetGame(execRes === null || execRes === void 0 ? void 0 : execRes.message);
} else if ((execRes === null || execRes === void 0 ? void 0 : execRes.status) === 3) {
handleInBeta(execRes === null || execRes === void 0 ? void 0 : execRes.message);
}
case 13:
case "end":
return _context2.stop();
}
}, _callee2);
}));
function onOk() {
return _onOk.apply(this, arguments);
}
return onOk;
}()
});
};
//绑定点击事件
var handleList = function handleList(item) {
if ((item === null || item === void 0 ? void 0 : item.item_type) === 'StageCatalog') {
return;
}
clearTimeout(window.videoTimer);
var id = item.id,
item_type = item.item_type,
identifier = item.identifier,
is_jupyter = item.is_jupyter,
url = item.url,
link = item.link;
if (item_type === 'VideoItem' && !link) {
var _user$userInfo, _user$userInfo2;
if (!((_user$userInfo = user.userInfo) !== null && _user$userInfo !== void 0 && _user$userInfo.admin) && !((_user$userInfo2 = user.userInfo) !== null && _user$userInfo2 !== void 0 && _user$userInfo2.business) && !item.can_view) {
modal/* default.info */.Z.info({
centered: true,
width: 400,
okText: '知道啦',
icon: null,
content: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "tc font14",
children: "\u5F53\u524D\u89C6\u9891\u4E3A\u521B\u5EFA\u8005\u6240\u5C5E\u5355\u4F4D\u5185\u90E8\u6559\u5B66\u8D44\u6599\uFF0C\u5916\u5355\u4F4D\u7528\u6237\u65E0\u89C2\u770B\u6743\u9650"
})
});
return;
}
dispatch({
type: 'videoDetail/handleListItemClick',
payload: {
videoId: id
}
});
dispatch({
type: 'videoDetail/getVideoDetail',
payload: objectSpread2_default()(objectSpread2_default()({
id: id
}, queryParams), {}, {
videoId: id
}),
callback: function callback(res) {
if (res && res.video_item && !res.video_item.can_edit && !item.is_public) {
modal/* default.info */.Z.info({
centered: true,
width: 400,
okText: '知道啦',
icon: null,
content: /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "tc font14",
children: "\u5F53\u524D\u89C6\u9891\u6682\u672A\u516C\u5F00\uFF0C\u656C\u8BF7\u671F\u5F85"
})
});
return;
}
}
});
return;
}
if (item_type === 'VideoItem' && !!link) {
if (item.link) {
(0,video/* viewVideo */.DH)({
is_f: 1,
id: item.id,
point: 0,
total: 0
});
}
window.open(link);
return;
}
if (item_type === 'Shixun') {
toShixun(identifier, is_jupyter);
return;
}
if (item_type === 'Attachment') {
var _item$name, _item$name2;
var type = item === null || item === void 0 ? void 0 : (_item$name = item.name) === null || _item$name === void 0 ? void 0 : _item$name.substr(item === null || item === void 0 ? void 0 : (_item$name2 = item.name) === null || _item$name2 === void 0 ? void 0 : _item$name2.lastIndexOf('.'));
if (type.toUpperCase() === ".ZIP") {
var _pathsDetail$detail;
if (!((_pathsDetail$detail = pathsDetail.detail) !== null && _pathsDetail$detail !== void 0 && _pathsDetail$detail.allow_download)) {
message/* default.info */.ZP.info('教学课件不支持下载');
return;
}
(0,util/* downLoadFile */.FH)(item.name, env/* default.API_SERVER */.Z.API_SERVER + item.url);
return;
} else {
dispatch({
type: 'videoDetail/handleListItemClick',
payload: {
attachmentId: id
}
});
return;
}
}
window.open(env/* default.IMG_SERVER */.Z.IMG_SERVER + url);
};
//转换中文
var toChinesNum = function toChinesNum(num) {
var changeNum = ['零', '一', '二', '三', '四', '五', '六', '七', '八', '九']; //changeNum[0] = "零"
var unit = ['', '十', '百', '千', '万'];
num = parseInt(num);
var getWan = function getWan(temp) {
var strArr = temp.toString().split('').reverse();
var newNum = '';
for (var i = 0; i < strArr.length; i++) {
newNum = (i == 0 && strArr[i] == 0 ? '' : i > 0 && strArr[i] == 0 && strArr[i - 1] == 0 ? '' : changeNum[strArr[i]] + (strArr[i] == 0 ? unit[0] : unit[i])) + newNum;
}
return newNum;
};
var overWan = Math.floor(num / 10000);
var noWan = num % 10000;
if (noWan.toString().length < 4) noWan = '0' + noWan;
return overWan ? getWan(overWan) + '万' + getWan(noWan) : getWan(num);
};
//渲染三级目录
var renderLThreeItem = function renderLThreeItem(item, itemIndex, eIndex, elIndex) {
var _listType$find;
var name = item.name,
item_type = item.item_type,
id = item.id;
// if (item_type === 'StageCatalog') return;
var serialNumber = "".concat(itemIndex + 1, "-").concat(eIndex + 1, "-").concat(elIndex + 1);
var icon = (_listType$find = listType.find(function (e) {
return e.type === item_type;
})) === null || _listType$find === void 0 ? void 0 : _listType$find.icon;
// const typeClassName =
// item_type === 'VideoItem' ? styles.brght : styles.gray;
var typeClassName = Listmodules.brght;
var activeClassName = active.id === id ? "".concat(typeClassName, " ").concat(Listmodules.active) : typeClassName;
return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
onClick: function onClick() {
return handleList(item);
},
className: activeClassName,
style: {
paddingLeft: 52
},
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: Listmodules.s1,
children: icon
}), !!cust_seq && /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: Listmodules.s2,
children: serialNumber
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: Listmodules.s3,
children: ["\u203B ", name]
})]
}, serialNumber);
};
//渲染列表
var renderListItem = function renderListItem(item, itemIndex, eIndex) {
var _listType$find2;
var name = item.name,
item_type = item.item_type,
id = item.id,
children = item.children;
// if (item_type === 'StageCatalog') return;
var serialNumber = "".concat(itemIndex + 1, "-").concat(eIndex + 1);
var icon = (_listType$find2 = listType.find(function (e) {
return e.type === item_type;
})) === null || _listType$find2 === void 0 ? void 0 : _listType$find2.icon;
// const typeClassName =
// item_type === 'VideoItem' ? styles.brght : styles.gray;
var typeClassName = Listmodules.brght;
var activeClassName = active.id === id ? "".concat(typeClassName, " ").concat(Listmodules.active) : typeClassName;
return /*#__PURE__*/(0,jsx_runtime.jsxs)(react.Fragment, {
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
onClick: function onClick() {
return handleList(item);
},
className: activeClassName,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: Listmodules.s1,
children: icon
}), !!cust_seq && /*#__PURE__*/(0,jsx_runtime.jsx)("span", {
className: Listmodules.s2,
children: serialNumber
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("span", {
className: Listmodules.s3,
children: ["\u203B ", name]
})]
}), !!children.length && children.map(function (el, elIndex) {
return renderLThreeItem(el, itemIndex, eIndex, elIndex);
})]
}, serialNumber);
};
//组件
return /*#__PURE__*/(0,jsx_runtime.jsx)("aside", {
className: Listmodules.list,
children: stages.map(function (item, itemIndex) {
var stage_name = item.stage_name,
_item$items = item.items,
items = _item$items === void 0 ? [] : _item$items;
return /*#__PURE__*/(0,jsx_runtime.jsxs)("aside", {
className: Listmodules.box,
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: Listmodules.title,
children: [toChinesNum(itemIndex + 1), "\u3001", stage_name]
}), items.map(function (e, eIndex) {
return renderListItem(e, itemIndex, eIndex);
}), itemIndex !== stages.length - 1 && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: Listmodules.line
})]
}, itemIndex);
})
});
};
/* harmony default export */ var components_List = ((0,_umi_production_exports.connect)(function (_ref3) {
var user = _ref3.user,
videoDetail = _ref3.videoDetail,
loading = _ref3.loading,
globalSetting = _ref3.globalSetting,
pathsDetail = _ref3.pathsDetail;
return {
user: user,
videoDetail: videoDetail,
globalSetting: globalSetting,
loading: loading,
pathsDetail: pathsDetail
};
})(List));
// EXTERNAL MODULE: ./src/components/PreviewAll/index.tsx + 1 modules
var PreviewAll = __webpack_require__(36579);
;// CONCATENATED MODULE: ./src/pages/Video/Detail/[id].tsx
var _id_excluded = ["videoDetail", "globalSetting", "loading", "pathsDetail", "dispatch"];
var formatQuery = function formatQuery(query) {
// if (query?.subject_id) {
// return { subject_id: query?.subject_id };
// }
// if (query?.course_id) {
// return { course_id: query.course_id };
// }
var subject_id = query.subject_id;
return {
subject_id: subject_id,
course_id: subject_id
};
};
var VideoDetailPage = function VideoDetailPage(_ref) {
var _pathsDetail$detail, _pathsDetail$detail2;
var videoDetail = _ref.videoDetail,
globalSetting = _ref.globalSetting,
loading = _ref.loading,
pathsDetail = _ref.pathsDetail,
dispatch = _ref.dispatch,
props = objectWithoutProperties_default()(_ref, _id_excluded);
// const params = useParams<any>();
// const location = useLocation() as any;
var queryParams = videoDetail.queryParams,
videoList = videoDetail.videoList,
attachmentList = videoDetail.attachmentList,
active = videoDetail.active;
var subject_id = queryParams.subject_id,
videoId = queryParams.videoId;
var params = {
videoId: videoId
};
// const location = { query: queryParams };
(0,react.useEffect)(function () {
if (active) {
var item_type = active.item_type,
id = active.id;
if (item_type === 'VideoItem') {
dispatch({
type: 'videoDetail/getVideoDetail',
payload: objectSpread2_default()(objectSpread2_default()({}, queryParams), {}, {
id: id
})
});
}
}
}, [active.id]);
console.log('---', active);
(0,react.useEffect)(function () {
if (subject_id) getdata();
}, []);
function getdata() {
return _getdata.apply(this, arguments);
}
function _getdata() {
_getdata = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
var res;
return regeneratorRuntime_default()().wrap(function _callee$(_context) {
while (1) switch (_context.prev = _context.next) {
case 0:
_context.next = 2;
return dispatch({
type: 'pathsDetail/getPathsDetail',
payload: {
id: subject_id
}
});
case 2:
res = _context.sent;
case 3:
case "end":
return _context.stop();
}
}, _callee);
}));
return _getdata.apply(this, arguments);
}
(0,react.useEffect)(function () {
var _videoDetail$detail, _videoDetail$detail$v;
(0,util/* setDocumentTitle */.Dk)((_videoDetail$detail = videoDetail.detail) === null || _videoDetail$detail === void 0 ? void 0 : (_videoDetail$detail$v = _videoDetail$detail.video_item) === null || _videoDetail$detail$v === void 0 ? void 0 : _videoDetail$detail$v.name);
}, [videoDetail]);
var style = {
width: 1200
};
if (active && active.item_type === 'Attachment' && active.content_type === 'application/pdf') {
style = {
// width: `calc(100vw - ((100vw - 1200px) / 2) - 15px)`,
width: 1250,
marginLeft: (document.body.clientWidth - 1200) / 2
};
}
return /*#__PURE__*/(0,jsx_runtime.jsx)(spin/* default */.Z, {
spinning: false,
children: /*#__PURE__*/(0,jsx_runtime.jsxs)("section", {
className: Detailmodules.bg,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(components_Banner, {}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: Detailmodules.container,
style: style,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)(components_List, {}), active && active.item_type === 'VideoItem' && /*#__PURE__*/(0,jsx_runtime.jsx)(components_Content, {}), active && active.item_type === 'Attachment' && active.content_type === 'application/pdf' && active.url && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: Detailmodules.widthle,
children: /*#__PURE__*/(0,jsx_runtime.jsx)(PreviewAll/* default */.Z, {
disabledDownload: !((_pathsDetail$detail = pathsDetail.detail) !== null && _pathsDetail$detail !== void 0 && _pathsDetail$detail.allow_download),
type: 'pdf',
data: env/* default.API_SERVER */.Z.API_SERVER + active.url,
style: {
position: 'absolute',
zIndex: 1
}
})
}), active && active.item_type === 'Attachment' && ['application/msword', 'application/vnd.ms-excel', 'application/vnd.ms-powerpoint', 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', 'application/vnd.openxmlformats-officedocument.presentationml.presentation', 'application/vnd.openxmlformats-officedocument.wordprocessingml.document'].includes(active.content_type) && active.url && /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: Detailmodules.widthle,
children: /*#__PURE__*/(0,jsx_runtime.jsx)(PreviewAll/* default */.Z, {
disabledDownload: !((_pathsDetail$detail2 = pathsDetail.detail) !== null && _pathsDetail$detail2 !== void 0 && _pathsDetail$detail2.allow_download),
type: 'office',
data: env/* default.API_SERVER */.Z.API_SERVER + active.url,
style: {
position: 'absolute',
zIndex: 1
}
})
})
// <Office url={active.url} />
]
})]
})
});
};
/* harmony default export */ var _id_ = ((0,_umi_production_exports.connect)(function (_ref2) {
var videoDetail = _ref2.videoDetail,
loading = _ref2.loading,
globalSetting = _ref2.globalSetting,
pathsDetail = _ref2.pathsDetail;
return {
videoDetail: videoDetail,
globalSetting: globalSetting,
loading: loading,
pathsDetail: pathsDetail
};
})(VideoDetailPage));
/***/ }),
/***/ 53619:
/*!*******************************************************************************!*\
!*** ./src/pages/Video/Detail/components/AddVideoModal/index.tsx + 1 modules ***!
\*******************************************************************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
// EXPORTS
__webpack_require__.d(__webpack_exports__, {
"Z": function() { return /* binding */ components_AddVideoModal; }
});
// EXTERNAL MODULE: ./node_modules/antd/es/tag/style/index.js + 1 modules
var style = __webpack_require__(71114);
// EXTERNAL MODULE: ./node_modules/antd/es/tag/index.js + 1 modules
var tag = __webpack_require__(20550);
// EXTERNAL MODULE: ./node_modules/antd/es/progress/style/index.js + 1 modules
var progress_style = __webpack_require__(57273);
// EXTERNAL MODULE: ./node_modules/antd/es/progress/index.js + 10 modules
var progress = __webpack_require__(97910);
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/regeneratorRuntime.js
var regeneratorRuntime = __webpack_require__(17061);
var regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(regeneratorRuntime);
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/asyncToGenerator.js
var asyncToGenerator = __webpack_require__(17156);
var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator);
// EXTERNAL MODULE: ./node_modules/antd/es/modal/style/index.js + 1 modules
var modal_style = __webpack_require__(35611);
// EXTERNAL MODULE: ./node_modules/antd/es/modal/index.js + 7 modules
var modal = __webpack_require__(85402);
// EXTERNAL MODULE: ./node_modules/antd/es/message/style/index.js + 1 modules
var message_style = __webpack_require__(14934);
// EXTERNAL MODULE: ./node_modules/antd/es/message/index.js + 1 modules
var message = __webpack_require__(12461);
// EXTERNAL MODULE: ./node_modules/antd/es/form/style/index.js + 1 modules
var form_style = __webpack_require__(75627);
// EXTERNAL MODULE: ./node_modules/antd/es/form/index.js + 17 modules
var es_form = __webpack_require__(51018);
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/slicedToArray.js
var slicedToArray = __webpack_require__(27424);
var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray);
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/objectSpread2.js
var objectSpread2 = __webpack_require__(42122);
var objectSpread2_default = /*#__PURE__*/__webpack_require__.n(objectSpread2);
// EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/toConsumableArray.js
var toConsumableArray = __webpack_require__(861);
var toConsumableArray_default = /*#__PURE__*/__webpack_require__.n(toConsumableArray);
// EXTERNAL MODULE: ./node_modules/antd/es/input/style/index.js + 1 modules
var input_style = __webpack_require__(69463);
// EXTERNAL MODULE: ./node_modules/antd/es/input/index.js + 5 modules
var input = __webpack_require__(75008);
// EXTERNAL MODULE: ./node_modules/react/index.js
var react = __webpack_require__(67294);
// EXTERNAL MODULE: ./src/.umi-production/exports.ts + 8 modules
var _umi_production_exports = __webpack_require__(89214);
;// CONCATENATED MODULE: ./src/pages/Video/Detail/components/AddVideoModal/index.less?modules
// extracted by mini-css-extract-plugin
/* harmony default export */ var AddVideoModalmodules = ({"modal":"modal___EKlPQ","uploadWrap":"uploadWrap___YGxav","upload":"upload___ouqG9","uploadLink":"uploadLink___nuif6","fileProgress":"fileProgress___tf4qy","fileCancel":"fileCancel___Bh3Wh","videoName":"videoName___Ra0NM","contentItem":"contentItem___zMdIq","tagsList-content":"tagsList-content___sDVph"});
// EXTERNAL MODULE: ./src/utils/aliyunUpload.ts
var aliyunUpload = __webpack_require__(77320);
// EXTERNAL MODULE: ./src/components/CoverUpload/index.tsx + 1 modules
var CoverUpload = __webpack_require__(93899);
// EXTERNAL MODULE: ./src/utils/authority.ts
var authority = __webpack_require__(7);
// EXTERNAL MODULE: ./node_modules/react/jsx-runtime.js
var jsx_runtime = __webpack_require__(85893);
;// CONCATENATED MODULE: ./src/pages/Video/Detail/components/AddVideoModal/index.tsx
var TextArea = input/* default.TextArea */.Z.TextArea;
var MAX_FILE_SIZE = 1024;
var videoReducer = function videoReducer(state, action) {
var _state$videoList;
var _ref = action.payload || {},
_ref$uploadInfo = _ref.uploadInfo,
uploadInfo = _ref$uploadInfo === void 0 ? {} : _ref$uploadInfo;
switch (action.type) {
case 'addVideo':
return {
videoList: [].concat(toConsumableArray_default()(state.videoList), [{
name: uploadInfo.file.name,
size: uploadInfo.file.size,
type: uploadInfo.file.type,
fileHash: uploadInfo.fileHash,
state: uploadInfo.state,
videoId: uploadInfo.videoId,
loaded: uploadInfo.loaded || 0,
title: ''
}])
};
case 'removeVideo':
return {
videoList: state.videoList.filter(function (item) {
return item.name !== action.payload.name;
})
};
case 'removeAll':
return {
videoList: []
};
case 'updateProgress':
return {
videoList: state.videoList.map(function (item) {
if (item.name === action.payload.uploadInfo.file.name) {
return objectSpread2_default()(objectSpread2_default()({}, item), {
loaded: action.payload.progressPercent,
videoId: uploadInfo.videoId,
fileHash: uploadInfo.fileHash
});
}
return item;
})
};
case 'updateTitle':
return {
videoList: (_state$videoList = state.videoList) === null || _state$videoList === void 0 ? void 0 : _state$videoList.map(function (video) {
if (video.name === action.payload.item.name) {
return objectSpread2_default()(objectSpread2_default()({}, video), {
title: action.payload.title
});
}
return video;
})
};
default:
return {
videoList: []
};
}
};
var AddVideoModal = function AddVideoModal(_ref2) {
var _user$userInfo2;
var user = _ref2.user,
globalSetting = _ref2.globalSetting,
loading = _ref2.loading,
dispatch = _ref2.dispatch,
visible = _ref2.visible,
editData = _ref2.editData,
_ref2$onCancel = _ref2.onCancel,
onCancel = _ref2$onCancel === void 0 ? function () {} : _ref2$onCancel,
_ref2$onOk = _ref2.onOk,
onOk = _ref2$onOk === void 0 ? function () {} : _ref2$onOk,
_ref2$queryParams = _ref2.queryParams,
queryParams = _ref2$queryParams === void 0 ? {} : _ref2$queryParams;
var params = (0,_umi_production_exports.useParams)();
var _Form$useForm = es_form/* default.useForm */.Z.useForm(),
_Form$useForm2 = slicedToArray_default()(_Form$useForm, 1),
form = _Form$useForm2[0];
var _useReducer = (0,react.useReducer)(videoReducer, {
videoList: []
}),
_useReducer2 = slicedToArray_default()(_useReducer, 2),
state = _useReducer2[0],
stateDispatch = _useReducer2[1];
var _useState = (0,react.useState)(false),
_useState2 = slicedToArray_default()(_useState, 2),
isLoading = _useState2[0],
setIsLoading = _useState2[1];
var uploader = (0,react.useRef)();
var _useState3 = (0,react.useState)(),
_useState4 = slicedToArray_default()(_useState3, 2),
link = _useState4[0],
setLink = _useState4[1];
var _useState5 = (0,react.useState)(false),
_useState6 = slicedToArray_default()(_useState5, 2),
showLink = _useState6[0],
setShowLink = _useState6[1];
var _useState7 = (0,react.useState)(false),
_useState8 = slicedToArray_default()(_useState7, 2),
isRequestLoading = _useState8[0],
setIsRequestLoading = _useState8[1];
var sizeNum = (0,authority/* isSuperAdmins */.Ny)() ? 3 : 1;
(0,react.useEffect)(function () {
var _editData$tags, _editData$video;
if (!visible) {
return;
}
if (!editData) {
return;
}
setShowLink(editData.is_link);
setLink(editData.link);
!editData.is_link && stateDispatch({
type: 'addVideo',
payload: {
uploadInfo: {
file: {
name: editData.filename || ''
},
videoId: editData.video_id,
loaded: 100
}
}
});
setTagslist((editData === null || editData === void 0 ? void 0 : (_editData$tags = editData.tags) === null || _editData$tags === void 0 ? void 0 : _editData$tags.map(function (item) {
return item === null || item === void 0 ? void 0 : item.name;
})) || []);
form.setFieldsValue({
name: editData.name,
description: editData.description,
attachment_id: editData === null || editData === void 0 ? void 0 : (_editData$video = editData.video) === null || _editData$video === void 0 ? void 0 : _editData$video.attachment_id
});
}, [editData, visible]);
var clearInput = function clearInput() {
var input = document.getElementById('fileUpload');
input.value = '';
};
var handleChangeUpload = function handleChangeUpload(e) {
var _state$videoList2;
setShowLink(false);
var file = e.target.files[0];
if (!file) {
clearInput();
return;
}
var fileName = file.name.toLowerCase();
if (fileName && fileName.indexOf('.avi') == -1 && fileName.indexOf('.flv') == -1 && fileName.indexOf('.f4v') == -1 && fileName.indexOf('.m4v') == -1 && fileName.indexOf('.mov') == -1 && fileName.indexOf('.mp4') == -1 && fileName.indexOf('.rmvb') == -1 && fileName.indexOf('.swf') == -1 && fileName.indexOf('.webm') == -1 && fileName.indexOf('.wmv') == -1) {
message/* default.info */.ZP.info("\u4E0D\u652F\u6301\u7684\u89C6\u9891\u683C\u5F0F");
clearInput();
return;
}
if (file.size > MAX_FILE_SIZE * sizeNum * 1024 * 1024) {
message/* default.info */.ZP.info("\u89C6\u9891\u5927\u5C0F\u8D85\u8FC7".concat(sizeNum, "G"));
clearInput();
return;
}
if ((_state$videoList2 = state.videoList) !== null && _state$videoList2 !== void 0 && _state$videoList2.find(function (item) {
return item.name === file.name;
})) {
message/* default.info */.ZP.info("\u4F60\u4E0D\u80FD\u4E0A\u4F20\u540C\u4E00\u4E2A\u89C6\u9891\u6587\u4EF6\u540D\u79F0\uFF0C\u8BF7\u91CD\u65B0\u9009\u62E9\u3002");
clearInput();
return;
}
handleUpload(file);
};
var handleRemove = function handleRemove(name, isSuccess) {
modal/* default.confirm */.Z.confirm({
title: '提示',
centered: true,
okText: '确定',
cancelText: '取消',
content: /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: "tc",
children: ["\u60A8\u786E\u8BA4\u8981", isSuccess ? '删除' : '取消上传', "\u8BE5\u89C6\u9891\u5417\uFF1F"]
}),
onOk: function onOk() {
clearInput();
stateDispatch({
type: 'removeVideo',
payload: {
name: name
}
});
}
});
};
var handleUpload = function handleUpload(file) {
var _user$userInfo;
var userData = '{"Vod":{}}';
setIsLoading(true);
if (uploader.current) {
uploader.current.addFile(file, null, null, null, userData);
return;
}
(0,aliyunUpload/* getUploader */.o)((_user$userInfo = user.userInfo) === null || _user$userInfo === void 0 ? void 0 : _user$userInfo.login, '', {
create: !uploader,
addFileSuccess: function addFileSuccess(uploadInfo) {
stateDispatch({
type: 'addVideo',
payload: {
uploadInfo: uploadInfo
}
});
},
onUploadProgress: function onUploadProgress(uploadInfo, totalSize, progress) {
var progressPercent = Math.ceil(progress * 100);
stateDispatch({
type: 'updateProgress',
payload: {
uploadInfo: uploadInfo,
progressPercent: progressPercent
}
});
clearInput();
},
onUploadFailed: function onUploadFailed(uploadInfo) {
message/* default.info */.ZP.info('视频云服务出现异常,请重新上传。');
},
onUploadEnd: function onUploadEnd(uploadInfo) {
setIsLoading(false);
},
onUploadSucceed: function onUploadSucceed(uploadInfo) {
setIsLoading(false);
},
onUploadError: function onUploadError(uploadInfo) {
setIsLoading(false);
},
gotUploader: function gotUploader(_uploader) {
_uploader.addFile(file, null, null, null, userData);
uploader.current = _uploader;
}
});
};
var handleOk = /*#__PURE__*/function () {
var _ref3 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() {
var _state$videoList3, _state$videoList4;
var video, 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:
if (!(!showLink && !((_state$videoList3 = state.videoList) !== null && _state$videoList3 !== void 0 && _state$videoList3.length) || showLink && !link)) {
_context.next = 5;
break;
}
message/* default.info */.ZP.info('请先上传视频或者添加外链');
return _context.abrupt("return");
case 5:
setIsRequestLoading(true);
video = showLink ? {
link: link
} : {
video_id: (_state$videoList4 = state.videoList) === null || _state$videoList4 === void 0 ? void 0 : _state$videoList4[0].videoId
};
_context.next = 9;
return onOk(objectSpread2_default()(objectSpread2_default()(objectSpread2_default()({}, video), queryParams), {
name: form.getFieldValue('name'),
attachment_id: form.getFieldValue('attachment_id'),
description: form.getFieldValue('description'),
tags: form.getFieldValue('tag')
// tags: tagsList,
}));
case 9:
res = _context.sent;
setIsRequestLoading(false);
if (res.id) {
handleClear();
}
case 12:
case "end":
return _context.stop();
}
}, _callee);
}));
return function handleOk() {
return _ref3.apply(this, arguments);
};
}();
var handleClear = function handleClear() {
form.resetFields();
stateDispatch({
type: 'removeAll'
});
setLink(null);
setTagslist([]);
setShowLink(null);
};
var handleCancel = function handleCancel() {
onCancel();
handleClear();
};
var renderContent = function renderContent() {
var _state$videoList5, _state$videoList6, _state$videoList6$, _state$videoList7, _state$videoList7$, _state$videoList8, _state$videoList8$, _state$videoList9, _state$videoList9$, _state$videoList12, _state$videoList12$, _state$videoList13;
return /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, {
children: [!showLink && !!((_state$videoList5 = state.videoList) !== null && _state$videoList5 !== void 0 && _state$videoList5.length) && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: AddVideoModalmodules.fileProgress,
children: [((_state$videoList6 = state.videoList) === null || _state$videoList6 === void 0 ? void 0 : (_state$videoList6$ = _state$videoList6[0]) === null || _state$videoList6$ === void 0 ? void 0 : _state$videoList6$.loaded) == 100 ? /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: "".concat(AddVideoModalmodules.videoName, " font14"),
children: (_state$videoList7 = state.videoList) === null || _state$videoList7 === void 0 ? void 0 : (_state$videoList7$ = _state$videoList7[0]) === null || _state$videoList7$ === void 0 ? void 0 : _state$videoList7$.name
}) : /*#__PURE__*/(0,jsx_runtime.jsx)(progress/* default */.Z, {
style: {
width: '80%'
},
percent: (_state$videoList8 = state.videoList) === null || _state$videoList8 === void 0 ? void 0 : (_state$videoList8$ = _state$videoList8[0]) === null || _state$videoList8$ === void 0 ? void 0 : _state$videoList8$.loaded,
status: ((_state$videoList9 = state.videoList) === null || _state$videoList9 === void 0 ? void 0 : (_state$videoList9$ = _state$videoList9[0]) === null || _state$videoList9$ === void 0 ? void 0 : _state$videoList9$.loaded) == 100 ? "normal" : 'active'
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: AddVideoModalmodules.fileCancel,
onClick: function onClick() {
var _state$videoList10, _state$videoList10$, _state$videoList11, _state$videoList11$;
return handleRemove((_state$videoList10 = state.videoList) === null || _state$videoList10 === void 0 ? void 0 : (_state$videoList10$ = _state$videoList10[0]) === null || _state$videoList10$ === void 0 ? void 0 : _state$videoList10$.name, ((_state$videoList11 = state.videoList) === null || _state$videoList11 === void 0 ? void 0 : (_state$videoList11$ = _state$videoList11[0]) === null || _state$videoList11$ === void 0 ? void 0 : _state$videoList11$.loaded) == 100);
},
children: ((_state$videoList12 = state.videoList) === null || _state$videoList12 === void 0 ? void 0 : (_state$videoList12$ = _state$videoList12[0]) === null || _state$videoList12$ === void 0 ? void 0 : _state$videoList12$.loaded) === 100 ? '删除' : '取消上传'
})]
}), !((_state$videoList13 = state.videoList) !== null && _state$videoList13 !== void 0 && _state$videoList13.length) && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: AddVideoModalmodules.uploadWrap,
children: [/*#__PURE__*/(0,jsx_runtime.jsxs)("label", {
htmlFor: "fileUpload",
className: AddVideoModalmodules.upload,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "iconfont icon-shangchuanshipin1 mr5"
}), "\u4E0A\u4F20\u89C6\u9891"]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("label", {
className: "".concat(AddVideoModalmodules.upload, " ").concat(AddVideoModalmodules.uploadLink),
onClick: function onClick() {
return setShowLink(true);
},
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("i", {
className: "iconfont icon-lianjie1 mr5"
}), "\u6DFB\u52A0\u5916\u94FE"]
})]
}), showLink && /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z, {
className: "mt5",
placeholder: "\u8BF7\u8F93\u5165\u89C6\u9891\u94FE\u63A5",
value: link,
onChange: function onChange(e) {
return setLink(e.target.value);
}
})]
});
};
var _useState9 = (0,react.useState)([]),
_useState10 = slicedToArray_default()(_useState9, 2),
tagsList = _useState10[0],
setTagslist = _useState10[1];
var addTag = function addTag(e) {
if (e.key == 'Enter') {
var tag = form.getFieldValue('tag');
form.setFieldsValue({
tag: ''
});
if (!tag) {
message/* default.info */.ZP.info('标签不能为空');
return;
}
if (tagsList.filter(function (item) {
return item === tag;
}).length > 0) {
message/* default.info */.ZP.info('已有相同名称标签');
return;
}
tagsList.push(tag);
setTagslist(toConsumableArray_default()(tagsList));
}
};
var tagCloseFn = function tagCloseFn(e, str) {
e.preventDefault();
// const index = tagsList.findIndex((key:string)=>str===str);
// tagsList.splice(index,1)
setTagslist(toConsumableArray_default()(tagsList.filter(function (item) {
return item != str;
})));
};
return /*#__PURE__*/(0,jsx_runtime.jsx)(modal/* default */.Z, {
centered: true,
maskClosable: false,
title: editData ? '编辑视频项目' : '新建视频项目',
width: 740,
className: AddVideoModalmodules.modal,
open: visible,
confirmLoading: isRequestLoading,
onOk: handleOk,
onCancel: handleCancel,
children: /*#__PURE__*/(0,jsx_runtime.jsxs)(es_form/* default */.Z, {
form: form,
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("input", {
type: "file",
id: "fileUpload",
style: {
display: 'none'
},
onChange: handleChangeUpload,
accept: ".mkv, .flv, .f4v, .rmvb, .swf, video/mp4,video/x-m4v,video/flv,video/f4v,video/rmvb,video/swf,video/*"
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default.Item */.Z.Item, {
label: "\u9879\u76EE\u540D\u79F0",
name: "name",
rules: [{
required: true,
message: "请输入项目名称"
}],
children: /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z, {
maxLength: 40,
placeholder: "\u8BF7\u8F93\u5165\u4E0D\u8D85\u8FC740\u5B57\u7684\u9879\u76EE\u540D\u79F0"
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default.Item */.Z.Item, {
label: "\u9879\u76EE\u5185\u5BB9",
name: "content",
className: AddVideoModalmodules.contentItem,
children: renderContent()
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default.Item */.Z.Item, {
name: "attachment_id",
label: "\u4E0A\u4F20\u5C01\u9762\u56FE:",
children: /*#__PURE__*/(0,jsx_runtime.jsx)(CoverUpload/* default */.Z, {
getFileProgress: function getFileProgress(info) {
if (info.file.status === 'uploading') {
setIsRequestLoading(true);
return;
}
if (info.file.status === 'done') {
setIsRequestLoading(false);
}
}
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default.Item */.Z.Item, {
label: "\u9879\u76EE\u7B80\u4ECB",
name: "description",
className: "ml8",
children: /*#__PURE__*/(0,jsx_runtime.jsx)(TextArea, {
rows: 5,
maxLength: 800,
placeholder: "\u8BF7\u8F93\u5165\u672C\u89C6\u9891\u7B80\u4ECB\uFF0C\u6700\u591A\u4E0D\u8D85\u8FC7800\u5B57"
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)(es_form/* default.Item */.Z.Item, {
label: "\u77E5\u8BC6\u6807\u7B7E",
name: "tag",
className: "ml8",
children: /*#__PURE__*/(0,jsx_runtime.jsx)(input/* default */.Z, {
onKeyUp: addTag
})
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
className: AddVideoModalmodules["tagsList-content"],
children: tagsList.map(function (item, index) {
return /*#__PURE__*/(0,jsx_runtime.jsx)(tag/* default */.Z, {
closable: true,
onClose: function onClose(e) {
tagCloseFn(e, item);
},
children: item
}, index + item);
})
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
className: "c-grey-999",
children: [/*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: "\u6CE8\u610F\uFF1A"
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: ["1\u3001\u4E0A\u4F20\u89C6\u9891\uFF0C\u5373\u8868\u793A\u60A8\u5DF2\u540C\u610F", /*#__PURE__*/(0,jsx_runtime.jsx)(_umi_production_exports.Link, {
to: "/users/".concat((_user$userInfo2 = user.userInfo) === null || _user$userInfo2 === void 0 ? void 0 : _user$userInfo2.login, "/videos/protocol"),
target: "_blank",
className: AddVideoModalmodules.colorBlue,
children: "\u4E0A\u4F20\u5185\u5BB9\u534F\u8BAE"
}), "\uFF0C\u4E0D\u5F97\u4E0A\u4F20\u672A\u7ECF\u4ED6\u4EBA\u6388\u6743\u7684\u4F5C\u54C1\uFF1B"]
}), /*#__PURE__*/(0,jsx_runtime.jsxs)("div", {
children: ["2\u3001\u4E0D\u652F\u6301\u65AD\u70B9\u7EED\u4F20\uFF0C\u6587\u4EF6\u5927\u5C0F\u8BF7\u52FF\u8D85\u8FC7", sizeNum, "G\uFF1B"]
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: "3\u3001\u652F\u6301\u6587\u4EF6\u683C\u5F0F\uFF1Aavi\u3001flv\u3001f4v\u3001m4v\u3001mov\u3001mp4\u3001rmvb\u3001swf\u3001webm\u3001wmv\uFF1B"
}), /*#__PURE__*/(0,jsx_runtime.jsx)("div", {
children: "4\u3001\u5982\u679C\u89C6\u9891\u6765\u81EA\u4E8E\u5916\u90E8\u94FE\u63A5\uFF0C\u672C\u7F51\u7AD9\u4E0D\u63D0\u4F9B\u64AD\u653E\u9875\u9762\uFF0C\u65E0\u6CD5\u63D0\u4F9B\u7EDF\u8BA1\u6570\u636E\u3002"
})]
})]
})
});
};
/* harmony default export */ var components_AddVideoModal = ((0,_umi_production_exports.connect)(function (_ref4) {
var user = _ref4.user,
loading = _ref4.loading,
globalSetting = _ref4.globalSetting;
return {
user: user,
globalSetting: globalSetting,
loading: loading
};
})(AddVideoModal));
/***/ }),
/***/ 77320:
/*!***********************************!*\
!*** ./src/utils/aliyunUpload.ts ***!
\***********************************/
/***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
/* harmony export */ "o": function() { return /* binding */ getUploader; }
/* harmony export */ });
/* harmony import */ var _utils_fetch__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @/utils/fetch */ 84519);
/* harmony import */ var aliyun_vod_upload_ll__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! aliyun-vod-upload-ll */ 69548);
/* harmony import */ var aliyun_vod_upload_ll__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(aliyun_vod_upload_ll__WEBPACK_IMPORTED_MODULE_1__);
var login = '';
var uploader;
var virtual_classroom_id = '';
function createUploader(options) {
doCreateUploader(options);
}
function doCreateUploader(options) {
uploader = new (aliyun_vod_upload_ll__WEBPACK_IMPORTED_MODULE_1___default().Vod)({
timeout: 60000,
partSize: 1048576,
parallel: 5,
retryCount: 3,
retryDuration: 2,
region: 'ap-southeast-1',
userId: 1829848226361863,
enableUploadProgress: false,
addFileSuccess: function addFileSuccess(uploadInfo) {
console.log("addFileSuccess: " + uploadInfo.file.name);
options.addFileSuccess && options.addFileSuccess(uploadInfo);
uploader.startUpload();
},
// 开始上传
onUploadstarted: function onUploadstarted(uploadInfo) {
var fileName = uploadInfo.file.name;
if (!uploadInfo.videoId) {
var createUrl = "/api/users/".concat(login, "/video_auths.json");
var _random = ''; // Math.random().toString().substring(3, 6)+'-'
(0,_utils_fetch__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .ZP)(createUrl, {
method: 'Post',
body: {
title: _random + fileName,
file_name: _random + fileName,
virtual_classroom_id: virtual_classroom_id
}
}).then(function (response) {
if (response) {
var data = response.data;
var uploadAuth = data.UploadAuth;
var uploadAddress = data.UploadAddress;
var videoId = data.VideoId;
uploader.setUploadAuthAndAddress(uploadInfo, uploadAuth, uploadAddress, videoId);
}
})["catch"](function (error) {
uploader.deleteFile(uploader._curIndex);
uploader.nextUpload();
console.log(error);
});
console.log('文件开始上传...');
} else {
// 如果videoId有值根据videoId刷新上传凭证
var refreshUrl = "/api/users/".concat(login, "/video_auths.json");
(0,_utils_fetch__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .ZP)(refreshUrl, {
method: 'put',
body: {
video_id: uploadInfo.videoId,
title: fileName,
file_name: fileName,
virtual_classroom_id: virtual_classroom_id
}
}).then(function (response) {
if (response.status == -1) {
options.onUploadError && options.onUploadError(uploadInfo);
return;
}
var data = response.data;
var uploadAuth = data.UploadAuth;
var uploadAddress = data.UploadAddress;
var videoId = data.VideoId;
uploader.setUploadAuthAndAddress(uploadInfo, uploadAuth, uploadAddress);
})["catch"](function (error) {
uploader.deleteFile(uploader._curIndex);
uploader.nextUpload();
console.log(error);
});
}
},
// 文件上传成功
onUploadSucceed: function onUploadSucceed(uploadInfo) {
options.onUploadSucceed && options.onUploadSucceed(uploadInfo);
console.log('文件上传成功!');
},
// 文件上传失败
onUploadFailed: function onUploadFailed(uploadInfo, code, message) {
options.onUploadFailed && options.onUploadFailed(uploadInfo);
console.log('文件上传失败!');
},
// 取消文件上传
onUploadCanceled: function onUploadCanceled(uploadInfo, code, message) {
console.log('文件上传已暂停!');
},
// 文件上传进度,单位:字节, 可以在这个函数中拿到上传进度并显示在页面上
onUploadProgress: function onUploadProgress(uploadInfo, totalSize, progress) {
options.onUploadProgress && options.onUploadProgress(uploadInfo, totalSize, progress);
var progressPercent = Math.ceil(progress * 100);
console.log('文件上传中...');
},
// 上传凭证超时
onUploadTokenExpired: function onUploadTokenExpired(uploadInfo) {
console.log('文件上传超时!');
var refreshUrl = "/api/users/".concat(login, "/video_auths.json");
(0,_utils_fetch__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .ZP)(refreshUrl, {
method: 'put',
body: {
video_id: uploadInfo.videoId
}
}).then(function (response) {
var data = response.data;
var uploadAuth = data.UploadAuth;
uploader.resumeUploadWithAuth(uploadAuth);
})["catch"](function (error) {
console.log(error);
});
},
// 全部文件上传结束
onUploadEnd: function onUploadEnd(uploadInfo) {
options.onUploadEnd && options.onUploadEnd(uploadInfo);
console.log("onUploadEnd: uploaded all the files");
}
});
if (options.gotUploader) {
options.gotUploader(uploader);
}
}
function getUploader(_login, _virtual_classroom_id, options) {
_login && (login = _login);
_virtual_classroom_id && (virtual_classroom_id = _virtual_classroom_id);
// if (!uploader || options.create == true) {
createUploader(options);
// }
}
/***/ })
}]);