"use strict"; (self["webpackChunk"] = self["webpackChunk"] || []).push([[5486],{ /***/ 63606: /*!******************************************************************************!*\ !*** ./node_modules/@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/helpers/esm/extends.js var esm_extends = __webpack_require__(87462); // EXTERNAL MODULE: ./node_modules/react/index.js var react = __webpack_require__(67294); ;// CONCATENATED MODULE: ./node_modules/@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/es/components/AntdIcon.js + 8 modules var AntdIcon = __webpack_require__(74643); ;// CONCATENATED MODULE: ./node_modules/@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.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.forwardRef(CheckOutlined_CheckOutlined)); /***/ }), /***/ 99611: /*!****************************************************************************!*\ !*** ./node_modules/@ant-design/icons/es/icons/EyeOutlined.js + 1 modules ***! \****************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { // EXPORTS __webpack_require__.d(__webpack_exports__, { "Z": function() { return /* binding */ icons_EyeOutlined; } }); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js var esm_extends = __webpack_require__(87462); // EXTERNAL MODULE: ./node_modules/react/index.js var react = __webpack_require__(67294); ;// CONCATENATED MODULE: ./node_modules/@ant-design/icons-svg/es/asn/EyeOutlined.js // This icon file is generated automatically. var EyeOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M942.2 486.2C847.4 286.5 704.1 186 512 186c-192.2 0-335.4 100.5-430.2 300.3a60.3 60.3 0 000 51.5C176.6 737.5 319.9 838 512 838c192.2 0 335.4-100.5 430.2-300.3 7.7-16.2 7.7-35 0-51.5zM512 766c-161.3 0-279.4-81.8-362.7-254C232.6 339.8 350.7 258 512 258c161.3 0 279.4 81.8 362.7 254C791.5 684.2 673.4 766 512 766zm-4-430c-97.2 0-176 78.8-176 176s78.8 176 176 176 176-78.8 176-176-78.8-176-176-176zm0 288c-61.9 0-112-50.1-112-112s50.1-112 112-112 112 50.1 112 112-50.1 112-112 112z" } }] }, "name": "eye", "theme": "outlined" }; /* harmony default export */ var asn_EyeOutlined = (EyeOutlined); // EXTERNAL MODULE: ./node_modules/@ant-design/icons/es/components/AntdIcon.js + 8 modules var AntdIcon = __webpack_require__(74643); ;// CONCATENATED MODULE: ./node_modules/@ant-design/icons/es/icons/EyeOutlined.js // GENERATE BY ./scripts/generate.ts // DON NOT EDIT IT MANUALLY var EyeOutlined_EyeOutlined = function EyeOutlined(props, ref) { return /*#__PURE__*/react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, { ref: ref, icon: asn_EyeOutlined })); }; if (false) {} /* harmony default export */ var icons_EyeOutlined = (/*#__PURE__*/react.forwardRef(EyeOutlined_EyeOutlined)); /***/ }), /***/ 6171: /*!*****************************************************************************!*\ !*** ./node_modules/@ant-design/icons/es/icons/LeftOutlined.js + 1 modules ***! \*****************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { // EXPORTS __webpack_require__.d(__webpack_exports__, { "Z": function() { return /* binding */ icons_LeftOutlined; } }); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js var esm_extends = __webpack_require__(87462); // EXTERNAL MODULE: ./node_modules/react/index.js var react = __webpack_require__(67294); ;// CONCATENATED MODULE: ./node_modules/@ant-design/icons-svg/es/asn/LeftOutlined.js // This icon file is generated automatically. var LeftOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M724 218.3V141c0-6.7-7.7-10.4-12.9-6.3L260.3 486.8a31.86 31.86 0 000 50.3l450.8 352.1c5.3 4.1 12.9.4 12.9-6.3v-77.3c0-4.9-2.3-9.6-6.1-12.6l-360-281 360-281.1c3.8-3 6.1-7.7 6.1-12.6z" } }] }, "name": "left", "theme": "outlined" }; /* harmony default export */ var asn_LeftOutlined = (LeftOutlined); // EXTERNAL MODULE: ./node_modules/@ant-design/icons/es/components/AntdIcon.js + 8 modules var AntdIcon = __webpack_require__(74643); ;// CONCATENATED MODULE: ./node_modules/@ant-design/icons/es/icons/LeftOutlined.js // GENERATE BY ./scripts/generate.ts // DON NOT EDIT IT MANUALLY var LeftOutlined_LeftOutlined = function LeftOutlined(props, ref) { return /*#__PURE__*/react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, { ref: ref, icon: asn_LeftOutlined })); }; if (false) {} /* harmony default export */ var icons_LeftOutlined = (/*#__PURE__*/react.forwardRef(LeftOutlined_LeftOutlined)); /***/ }), /***/ 88484: /*!*******************************************************************************!*\ !*** ./node_modules/@ant-design/icons/es/icons/UploadOutlined.js + 1 modules ***! \*******************************************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { // EXPORTS __webpack_require__.d(__webpack_exports__, { "Z": function() { return /* binding */ icons_UploadOutlined; } }); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js var esm_extends = __webpack_require__(87462); // EXTERNAL MODULE: ./node_modules/react/index.js var react = __webpack_require__(67294); ;// CONCATENATED MODULE: ./node_modules/@ant-design/icons-svg/es/asn/UploadOutlined.js // This icon file is generated automatically. var UploadOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M400 317.7h73.9V656c0 4.4 3.6 8 8 8h60c4.4 0 8-3.6 8-8V317.7H624c6.7 0 10.4-7.7 6.3-12.9L518.3 163a8 8 0 00-12.6 0l-112 141.7c-4.1 5.3-.4 13 6.3 13zM878 626h-60c-4.4 0-8 3.6-8 8v154H214V634c0-4.4-3.6-8-8-8h-60c-4.4 0-8 3.6-8 8v198c0 17.7 14.3 32 32 32h684c17.7 0 32-14.3 32-32V634c0-4.4-3.6-8-8-8z" } }] }, "name": "upload", "theme": "outlined" }; /* harmony default export */ var asn_UploadOutlined = (UploadOutlined); // EXTERNAL MODULE: ./node_modules/@ant-design/icons/es/components/AntdIcon.js + 8 modules var AntdIcon = __webpack_require__(74643); ;// CONCATENATED MODULE: ./node_modules/@ant-design/icons/es/icons/UploadOutlined.js // GENERATE BY ./scripts/generate.ts // DON NOT EDIT IT MANUALLY var UploadOutlined_UploadOutlined = function UploadOutlined(props, ref) { return /*#__PURE__*/react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, { ref: ref, icon: asn_UploadOutlined })); }; if (false) {} /* harmony default export */ var icons_UploadOutlined = (/*#__PURE__*/react.forwardRef(UploadOutlined_UploadOutlined)); /***/ }), /***/ 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/@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/antd/es/button/index.js var es_button = __webpack_require__(71577); // EXTERNAL MODULE: ./node_modules/antd/es/message/index.js + 4 modules var message = __webpack_require__(2453); // EXTERNAL MODULE: ./node_modules/antd/es/upload/index.js + 24 modules var upload = __webpack_require__(31365); // 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 + 1 modules var CloseCircleFilled = __webpack_require__(4340); // 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 */.ZP, { 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); /***/ }), /***/ 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); // } } /***/ }), /***/ 57838: /*!************************************************************!*\ !*** ./node_modules/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 */ 67294); function useForceUpdate() { const [, forceUpdate] = react__WEBPACK_IMPORTED_MODULE_0__.useReducer(x => x + 1, 0); return forceUpdate; } /***/ }), /***/ 79531: /*!*********************************************************!*\ !*** ./node_modules/antd/es/input/index.js + 5 modules ***! \*********************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { // EXPORTS __webpack_require__.d(__webpack_exports__, { "Z": function() { return /* binding */ input; } }); // EXTERNAL MODULE: ./node_modules/classnames/index.js var classnames = __webpack_require__(94184); var classnames_default = /*#__PURE__*/__webpack_require__.n(classnames); // EXTERNAL MODULE: ./node_modules/react/index.js var react = __webpack_require__(67294); // EXTERNAL MODULE: ./node_modules/antd/es/config-provider/context.js var context = __webpack_require__(53124); // EXTERNAL MODULE: ./node_modules/antd/es/form/context.js var form_context = __webpack_require__(65223); // EXTERNAL MODULE: ./node_modules/antd/es/input/style/index.js var style = __webpack_require__(47673); ;// CONCATENATED MODULE: ./node_modules/antd/es/input/Group.js const Group = props => { const { getPrefixCls, direction } = (0,react.useContext)(context/* ConfigContext */.E_); const { prefixCls: customizePrefixCls, className } = props; const prefixCls = getPrefixCls('input-group', customizePrefixCls); const inputPrefixCls = getPrefixCls('input'); const [wrapSSR, hashId] = (0,style/* default */.ZP)(inputPrefixCls); const cls = classnames_default()(prefixCls, { [`${prefixCls}-lg`]: props.size === 'large', [`${prefixCls}-sm`]: props.size === 'small', [`${prefixCls}-compact`]: props.compact, [`${prefixCls}-rtl`]: direction === 'rtl' }, hashId, className); const formItemContext = (0,react.useContext)(form_context/* FormItemInputContext */.aM); const groupFormItemContext = (0,react.useMemo)(() => Object.assign(Object.assign({}, formItemContext), { isFormItemInput: false }), [formItemContext]); if (false) {} return wrapSSR( /*#__PURE__*/react.createElement("span", { className: cls, style: props.style, onMouseEnter: props.onMouseEnter, onMouseLeave: props.onMouseLeave, onFocus: props.onFocus, onBlur: props.onBlur }, /*#__PURE__*/react.createElement(form_context/* FormItemInputContext.Provider */.aM.Provider, { value: groupFormItemContext }, props.children))); }; /* harmony default export */ var input_Group = (Group); // EXTERNAL MODULE: ./node_modules/antd/es/input/Input.js + 1 modules var Input = __webpack_require__(82586); // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/extends.js var esm_extends = __webpack_require__(87462); ;// CONCATENATED MODULE: ./node_modules/@ant-design/icons-svg/es/asn/EyeInvisibleOutlined.js // This icon file is generated automatically. var EyeInvisibleOutlined = { "icon": { "tag": "svg", "attrs": { "viewBox": "64 64 896 896", "focusable": "false" }, "children": [{ "tag": "path", "attrs": { "d": "M942.2 486.2Q889.47 375.11 816.7 305l-50.88 50.88C807.31 395.53 843.45 447.4 874.7 512 791.5 684.2 673.4 766 512 766q-72.67 0-133.87-22.38L323 798.75Q408 838 512 838q288.3 0 430.2-300.3a60.29 60.29 0 000-51.5zm-63.57-320.64L836 122.88a8 8 0 00-11.32 0L715.31 232.2Q624.86 186 512 186q-288.3 0-430.2 300.3a60.3 60.3 0 000 51.5q56.69 119.4 136.5 191.41L112.48 835a8 8 0 000 11.31L155.17 889a8 8 0 0011.31 0l712.15-712.12a8 8 0 000-11.32zM149.3 512C232.6 339.8 350.7 258 512 258c54.54 0 104.13 9.36 149.12 28.39l-70.3 70.3a176 176 0 00-238.13 238.13l-83.42 83.42C223.1 637.49 183.3 582.28 149.3 512zm246.7 0a112.11 112.11 0 01146.2-106.69L401.31 546.2A112 112 0 01396 512z" } }, { "tag": "path", "attrs": { "d": "M508 624c-3.46 0-6.87-.16-10.25-.47l-52.82 52.82a176.09 176.09 0 00227.42-227.42l-52.82 52.82c.31 3.38.47 6.79.47 10.25a111.94 111.94 0 01-112 112z" } }] }, "name": "eye-invisible", "theme": "outlined" }; /* harmony default export */ var asn_EyeInvisibleOutlined = (EyeInvisibleOutlined); // EXTERNAL MODULE: ./node_modules/@ant-design/icons/es/components/AntdIcon.js + 8 modules var AntdIcon = __webpack_require__(74643); ;// CONCATENATED MODULE: ./node_modules/@ant-design/icons/es/icons/EyeInvisibleOutlined.js // GENERATE BY ./scripts/generate.ts // DON NOT EDIT IT MANUALLY var EyeInvisibleOutlined_EyeInvisibleOutlined = function EyeInvisibleOutlined(props, ref) { return /*#__PURE__*/react.createElement(AntdIcon/* default */.Z, (0,esm_extends/* default */.Z)({}, props, { ref: ref, icon: asn_EyeInvisibleOutlined })); }; if (false) {} /* harmony default export */ var icons_EyeInvisibleOutlined = (/*#__PURE__*/react.forwardRef(EyeInvisibleOutlined_EyeInvisibleOutlined)); // EXTERNAL MODULE: ./node_modules/@ant-design/icons/es/icons/EyeOutlined.js + 1 modules var EyeOutlined = __webpack_require__(99611); // EXTERNAL MODULE: ./node_modules/antd/node_modules/rc-util/es/omit.js var omit = __webpack_require__(10366); // EXTERNAL MODULE: ./node_modules/antd/node_modules/rc-util/es/ref.js var es_ref = __webpack_require__(17799); // EXTERNAL MODULE: ./node_modules/antd/es/input/hooks/useRemovePasswordTimeout.js var useRemovePasswordTimeout = __webpack_require__(72922); ;// CONCATENATED MODULE: ./node_modules/antd/es/input/Password.js var __rest = undefined && undefined.__rest || function (s, e) { var t = {}; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p]; if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]]; } return t; }; const defaultIconRender = visible => visible ? /*#__PURE__*/react.createElement(EyeOutlined/* default */.Z, null) : /*#__PURE__*/react.createElement(icons_EyeInvisibleOutlined, null); const ActionMap = { click: 'onClick', hover: 'onMouseOver' }; const Password = /*#__PURE__*/react.forwardRef((props, ref) => { const { visibilityToggle = true } = props; const visibilityControlled = typeof visibilityToggle === 'object' && visibilityToggle.visible !== undefined; const [visible, setVisible] = (0,react.useState)(() => visibilityControlled ? visibilityToggle.visible : false); const inputRef = (0,react.useRef)(null); react.useEffect(() => { if (visibilityControlled) { setVisible(visibilityToggle.visible); } }, [visibilityControlled, visibilityToggle]); // Remove Password value const removePasswordTimeout = (0,useRemovePasswordTimeout/* default */.Z)(inputRef); const onVisibleChange = () => { const { disabled } = props; if (disabled) { return; } if (visible) { removePasswordTimeout(); } setVisible(prevState => { var _a; const newState = !prevState; if (typeof visibilityToggle === 'object') { (_a = visibilityToggle.onVisibleChange) === null || _a === void 0 ? void 0 : _a.call(visibilityToggle, newState); } return newState; }); }; const getIcon = prefixCls => { const { action = 'click', iconRender = defaultIconRender } = props; const iconTrigger = ActionMap[action] || ''; const icon = iconRender(visible); const iconProps = { [iconTrigger]: onVisibleChange, className: `${prefixCls}-icon`, key: 'passwordIcon', onMouseDown: e => { // Prevent focused state lost // https://github.com/ant-design/ant-design/issues/15173 e.preventDefault(); }, onMouseUp: e => { // Prevent caret position change // https://github.com/ant-design/ant-design/issues/23524 e.preventDefault(); } }; return /*#__PURE__*/react.cloneElement( /*#__PURE__*/react.isValidElement(icon) ? icon : /*#__PURE__*/react.createElement("span", null, icon), iconProps); }; const { className, prefixCls: customizePrefixCls, inputPrefixCls: customizeInputPrefixCls, size } = props, restProps = __rest(props, ["className", "prefixCls", "inputPrefixCls", "size"]); const { getPrefixCls } = react.useContext(context/* ConfigContext */.E_); const inputPrefixCls = getPrefixCls('input', customizeInputPrefixCls); const prefixCls = getPrefixCls('input-password', customizePrefixCls); const suffixIcon = visibilityToggle && getIcon(prefixCls); const inputClassName = classnames_default()(prefixCls, className, { [`${prefixCls}-${size}`]: !!size }); const omittedProps = Object.assign(Object.assign({}, (0,omit/* default */.Z)(restProps, ['suffix', 'iconRender', 'visibilityToggle'])), { type: visible ? 'text' : 'password', className: inputClassName, prefixCls: inputPrefixCls, suffix: suffixIcon }); if (size) { omittedProps.size = size; } return /*#__PURE__*/react.createElement(Input/* default */.Z, Object.assign({ ref: (0,es_ref/* composeRef */.sQ)(ref, inputRef) }, omittedProps)); }); if (false) {} /* harmony default export */ var input_Password = (Password); // EXTERNAL MODULE: ./node_modules/@ant-design/icons/es/icons/SearchOutlined.js + 1 modules var SearchOutlined = __webpack_require__(68795); // EXTERNAL MODULE: ./node_modules/antd/es/_util/reactNode.js var reactNode = __webpack_require__(96159); // EXTERNAL MODULE: ./node_modules/antd/es/button/index.js var es_button = __webpack_require__(71577); // EXTERNAL MODULE: ./node_modules/antd/es/config-provider/hooks/useSize.js var useSize = __webpack_require__(98675); // EXTERNAL MODULE: ./node_modules/antd/es/space/Compact.js var Compact = __webpack_require__(4173); ;// CONCATENATED MODULE: ./node_modules/antd/es/input/Search.js var Search_rest = undefined && undefined.__rest || function (s, e) { var t = {}; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p]; if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]]; } return t; }; const Search = /*#__PURE__*/react.forwardRef((props, ref) => { const { prefixCls: customizePrefixCls, inputPrefixCls: customizeInputPrefixCls, className, size: customizeSize, suffix, enterButton = false, addonAfter, loading, disabled, onSearch: customOnSearch, onChange: customOnChange, onCompositionStart, onCompositionEnd } = props, restProps = Search_rest(props, ["prefixCls", "inputPrefixCls", "className", "size", "suffix", "enterButton", "addonAfter", "loading", "disabled", "onSearch", "onChange", "onCompositionStart", "onCompositionEnd"]); const { getPrefixCls, direction } = react.useContext(context/* ConfigContext */.E_); const composedRef = react.useRef(false); const prefixCls = getPrefixCls('input-search', customizePrefixCls); const inputPrefixCls = getPrefixCls('input', customizeInputPrefixCls); const { compactSize } = (0,Compact/* useCompactItemContext */.ri)(prefixCls, direction); const size = (0,useSize/* default */.Z)(ctx => { var _a; return (_a = customizeSize !== null && customizeSize !== void 0 ? customizeSize : compactSize) !== null && _a !== void 0 ? _a : ctx; }); const inputRef = react.useRef(null); const onChange = e => { if (e && e.target && e.type === 'click' && customOnSearch) { customOnSearch(e.target.value, e); } if (customOnChange) { customOnChange(e); } }; const onMouseDown = e => { var _a; if (document.activeElement === ((_a = inputRef.current) === null || _a === void 0 ? void 0 : _a.input)) { e.preventDefault(); } }; const onSearch = e => { var _a, _b; if (customOnSearch) { customOnSearch((_b = (_a = inputRef.current) === null || _a === void 0 ? void 0 : _a.input) === null || _b === void 0 ? void 0 : _b.value, e); } }; const onPressEnter = e => { if (composedRef.current || loading) { return; } onSearch(e); }; const searchIcon = typeof enterButton === 'boolean' ? /*#__PURE__*/react.createElement(SearchOutlined/* default */.Z, null) : null; const btnClassName = `${prefixCls}-button`; let button; const enterButtonAsElement = enterButton || {}; const isAntdButton = enterButtonAsElement.type && enterButtonAsElement.type.__ANT_BUTTON === true; if (isAntdButton || enterButtonAsElement.type === 'button') { button = (0,reactNode/* cloneElement */.Tm)(enterButtonAsElement, Object.assign({ onMouseDown, onClick: e => { var _a, _b; (_b = (_a = enterButtonAsElement === null || enterButtonAsElement === void 0 ? void 0 : enterButtonAsElement.props) === null || _a === void 0 ? void 0 : _a.onClick) === null || _b === void 0 ? void 0 : _b.call(_a, e); onSearch(e); }, key: 'enterButton' }, isAntdButton ? { className: btnClassName, size } : {})); } else { button = /*#__PURE__*/react.createElement(es_button/* default */.ZP, { className: btnClassName, type: enterButton ? 'primary' : undefined, size: size, disabled: disabled, key: "enterButton", onMouseDown: onMouseDown, onClick: onSearch, loading: loading, icon: searchIcon }, enterButton); } if (addonAfter) { button = [button, (0,reactNode/* cloneElement */.Tm)(addonAfter, { key: 'addonAfter' })]; } const cls = classnames_default()(prefixCls, { [`${prefixCls}-rtl`]: direction === 'rtl', [`${prefixCls}-${size}`]: !!size, [`${prefixCls}-with-button`]: !!enterButton }, className); const handleOnCompositionStart = e => { composedRef.current = true; onCompositionStart === null || onCompositionStart === void 0 ? void 0 : onCompositionStart(e); }; const handleOnCompositionEnd = e => { composedRef.current = false; onCompositionEnd === null || onCompositionEnd === void 0 ? void 0 : onCompositionEnd(e); }; return /*#__PURE__*/react.createElement(Input/* default */.Z, Object.assign({ ref: (0,es_ref/* composeRef */.sQ)(inputRef, ref), onPressEnter: onPressEnter }, restProps, { size: size, onCompositionStart: handleOnCompositionStart, onCompositionEnd: handleOnCompositionEnd, prefixCls: inputPrefixCls, addonAfter: button, suffix: suffix, onChange: onChange, className: cls, disabled: disabled })); }); if (false) {} /* harmony default export */ var input_Search = (Search); // EXTERNAL MODULE: ./node_modules/antd/es/input/TextArea.js var TextArea = __webpack_require__(96330); ;// CONCATENATED MODULE: ./node_modules/antd/es/input/index.js 'use client'; const input_Input = Input/* default */.Z; if (false) {} input_Input.Group = input_Group; input_Input.Search = input_Search; input_Input.TextArea = TextArea/* default */.Z; input_Input.Password = input_Password; /* harmony default export */ var input = (input_Input); /***/ }), /***/ 33507: /*!*******************************************************!*\ !*** ./node_modules/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); /***/ }), /***/ 59215: /*!********************************************!*\ !*** ./src/assets/images/video/upload.png ***! \********************************************/ /***/ (function(module) { module.exports = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAAAwBAMAAABTZWEsAAAAIVBMVEVHcExMrf9Qr/9TuP9Mrf9Nrf9Mrf9MrP9Nrv9Orv9MrP98EuefAAAACnRSTlMA3CULV5jA84JH4j3LZgAAANVJREFUOMvl1a0OwjAUBeCb/QgcGckSphqeAASBoKaR4KpwJDwAYhaHQuGbLNtynpKWmTWs92rg2n45orc7I9qeEZzrjSgqwIxRtAI7M7rzoKMLjhScNRqqsAyDGC0BxIw9/UYQKQEUHQ9SoGSBBmoOpG4/JQO0A3UYpP2KyyDQaGG8CB/YgDnMfhjhAw2zgEmGER6wAVkEQzbiMQp29g07YCOmo2CDjBywEadRkOSqB5NcBa/6Dbhd/AmIq0Z41c/DL3y8n0AsMbEGxSIVq1gsc+l38AI000Nd23IRqQAAAABJRU5ErkJggg=="; /***/ }), /***/ 19213: /*!**************************************************!*\ !*** ./src/assets/images/video/upload_hover.png ***! \**************************************************/ /***/ (function(module) { module.exports = "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIAAAABgBAMAAAAnVGd6AAAAJFBMVEVHcExMrf9Orf9Nrf90uv9MrP////95wP/M5//z+v+x2/9cs//eVCejAAAABXRSTlMA10ycBa32wqwAAAFsSURBVFjD7dk/TsMwFMfxJ8QNIHsHOABDduAGJXoyUnZTsmcoByg3KANz/0i9AHA6YruBIjXPr/6hLrWlLlXy0dcZrPSViOj+puCENb64Ir/Okm73xMjdf15y8qpuO+COgXXZASUCVN0TYGiNsB24PVxjwAP2CNxDKDBgjAMMrgxkIANHAr5aDPiwtoWAubVPCPBobSxBBmYOeEsHfIB9bpMBHxBJoGhAJIHiAXICxQPkBFIEiAmkCBATSBMgJZAmQEogMWDiPnMxgcSAlQOmYgJJAY1xgBETSApYeIDFBJICOABiAkkBW0BM2A8sQ0APhIR3PVBvA3ogJDR6wPTX94BPmBwILHYAn3AA4A7jhncBM3g87wemIeAX+PlGCdTrFf8FeP2acqybwa1nIAMZODWgHjyMtW+qM/BNlT+HjkItUL9s8i+WDGTgSECB3f8Ps7QSAyp8IAmPROGhLDwWxgfT8GgcHs6Dfw98A1V0Ca+XaA0MAAAAAElFTkSuQmCC"; /***/ }) }]);