"use strict"; (self["webpackChunk"] = self["webpackChunk"] || []).push([[32666],{ /***/ 31917: /*!*****************************************!*\ !*** ./src/components/NoData/index.tsx ***! \*****************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { /* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/objectSpread2.js */ 26801); /* harmony import */ var _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0__); /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ 59301); /* harmony import */ var _assets_images_icons_nodata_png__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/assets/images/icons/nodata.png */ 4977); /* harmony import */ var antd__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! antd */ 3113); /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! react/jsx-runtime */ 37712); var noData = function noData(_ref) { var img = _ref.img, _ref$buttonProps = _ref.buttonProps, buttonProps = _ref$buttonProps === void 0 ? {} : _ref$buttonProps, _ref$styles = _ref.styles, styles = _ref$styles === void 0 ? {} : _ref$styles, customText = _ref.customText, ButtonText = _ref.ButtonText, ButtonClick = _ref.ButtonClick, Buttonclass = _ref.Buttonclass, ButtonTwo = _ref.ButtonTwo, imgStyles = _ref.imgStyles, _ref$loading = _ref.loading, loading = _ref$loading === void 0 ? false : _ref$loading; return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsxs)("section", { className: "tc animated fadeIn", style: _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, { color: '#999', margin: '100px auto', visibility: loading ? 'hidden' : 'visible' }), styles), children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("img", { src: img || _assets_images_icons_nodata_png__WEBPACK_IMPORTED_MODULE_2__, style: _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({}, imgStyles) }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)("p", { className: "mt20 font14", children: customText || '暂时还没有相关数据哦!' }), ButtonText && /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_3__.jsx)(antd__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .ZP, _root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()(_root_workspace_ppte5yg23_SJ5m_develop_node_modules_babel_runtime_7_23_2_babel_runtime_helpers_objectSpread2_js__WEBPACK_IMPORTED_MODULE_0___default()({ className: Buttonclass, onClick: ButtonClick }, buttonProps), {}, { children: ButtonText })), ButtonTwo && ButtonTwo] }); }; /* harmony default export */ __webpack_exports__.Z = (noData); /***/ }), /***/ 1498: /*!*********************************************************!*\ !*** ./src/components/PreviewAll/index.tsx + 1 modules ***! \*********************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { // EXPORTS __webpack_require__.d(__webpack_exports__, { Z: function() { return /* binding */ PreviewAll; } }); // EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/objectSpread2.js var objectSpread2 = __webpack_require__(26801); var objectSpread2_default = /*#__PURE__*/__webpack_require__.n(objectSpread2); // EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/regeneratorRuntime.js var regeneratorRuntime = __webpack_require__(10574); var regeneratorRuntime_default = /*#__PURE__*/__webpack_require__.n(regeneratorRuntime); // EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/asyncToGenerator.js var asyncToGenerator = __webpack_require__(39343); var asyncToGenerator_default = /*#__PURE__*/__webpack_require__.n(asyncToGenerator); // EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/slicedToArray.js var slicedToArray = __webpack_require__(11006); var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray); // EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js var _react_17_0_2_react = __webpack_require__(59301); ;// CONCATENATED MODULE: ./src/components/PreviewAll/index.less?modules // extracted by mini-css-extract-plugin /* harmony default export */ var PreviewAllmodules = ({"wrp":"wrp___dq7YK","bgBlack":"bgBlack___ARIUV","monaco":"monaco___VnZC3","darkBlue":"darkBlue___UprA9","close":"close___LKoWu","embed":"embed___hvpEJ"}); // EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/button/index.js var es_button = __webpack_require__(3113); // EXTERNAL MODULE: ./node_modules/_@ant-design_icons@5.2.6@@ant-design/icons/es/icons/ArrowDownOutlined.js + 1 modules var ArrowDownOutlined = __webpack_require__(98915); // EXTERNAL MODULE: ./src/components/monaco-editor/index.jsx + 4 modules var monaco_editor = __webpack_require__(3878); // EXTERNAL MODULE: ./node_modules/_antd@5.9.0@antd/es/tooltip/index.js + 3 modules var tooltip = __webpack_require__(6848); // EXTERNAL MODULE: ./src/utils/util.tsx var util = __webpack_require__(87885); // EXTERNAL MODULE: ./src/service/exercise.ts var exercise = __webpack_require__(65398); // EXTERNAL MODULE: ./src/components/NoData/index.tsx var NoData = __webpack_require__(31917); // EXTERNAL MODULE: ./src/utils/env.ts + 1 modules var env = __webpack_require__(26078); // EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/jsx-runtime.js var jsx_runtime = __webpack_require__(37712); ;// CONCATENATED MODULE: ./src/components/PreviewAll/index.tsx /* harmony default export */ var PreviewAll = (function (_ref) { var _data, _data2, _data3, _data4, _data5, _data6; var _ref$editOffice = _ref.editOffice, editOffice = _ref$editOffice === void 0 ? 'view' : _ref$editOffice, data = _ref.data, theme = _ref.theme, type = _ref.type, filename = _ref.filename, monacoEditor = _ref.monacoEditor, className = _ref.className, style = _ref.style, close = _ref.close, onClose = _ref.onClose, hasMask = _ref.hasMask, disabledDownload = _ref.disabledDownload, onImgDimensions = _ref.onImgDimensions, showNodata = _ref.showNodata; var _useState = (0,_react_17_0_2_react.useState)('https://view.officeapps.live.com/op/view.aspx?src=http://testgs.educoder.net//rails/active_storage/blobs/eyJfcmFpbHMiOnsibWVzc2FnZSI6IkJBaHBCZz09IiwiZXhwIjpudWxsLCJwdXIiOiJibG9iX2lkIn19--03541f6234b93d7ac3b2d84e7eb0e6594a952945/1.ppt'), _useState2 = slicedToArray_default()(_useState, 2), src = _useState2[0], setSrc = _useState2[1]; var _useState3 = (0,_react_17_0_2_react.useState)(""), _useState4 = slicedToArray_default()(_useState3, 2), token = _useState4[0], setToken = _useState4[1]; var _useState5 = (0,_react_17_0_2_react.useState)(), _useState6 = slicedToArray_default()(_useState5, 2), officeData = _useState6[0], setOfficeData = _useState6[1]; var officePath = window.ENV === "build" ? "/react/build" : ""; var apiServer = location.host.startsWith("localhost") ? env/* default */.Z.PROXY_SERVER : env/* default */.Z.API_SERVER; // let size; var unit = 1024 * 1024; var maxSize = 10 * unit; var closeRef = (0,_react_17_0_2_react.useRef)(); if ((_data = data) !== null && _data !== void 0 && _data.startsWith("/api") && type !== "txt") { data = env/* default */.Z.API_SERVER + data; } var getFileExtension = function getFileExtension(url) { var filename = url.substring(url.lastIndexOf('/') + 1); var extension = filename.split('.').pop(); return extension; }; if (filename) monacoEditor.filename = filename; (0,_react_17_0_2_react.useEffect)(function () { var _document$cookie; var cookies = (_document$cookie = document.cookie) === null || _document$cookie === void 0 || (_document$cookie = _document$cookie.replace(/\s/g, "")) === null || _document$cookie === void 0 ? void 0 : _document$cookie.split(";"); cookies === null || cookies === void 0 || cookies.map(function (item) { var i = item.split("="); if (i[0] === '_educoder_session') { setToken(i[1]); } }); }, []); (0,_react_17_0_2_react.useEffect)(function () { if (type === "office") { if (data.indexOf("bigfilescdn.") > -1) { setOfficeData({ url: data, fileType: getFileExtension(data), model: data.indexOf("model=edit") ? "edit" : "view" }); } else { getData(); } } }, [type, data]); var getData = /*#__PURE__*/function () { var _ref2 = asyncToGenerator_default()( /*#__PURE__*/regeneratorRuntime_default()().mark(function _callee() { var _url, _id, res; return regeneratorRuntime_default()().wrap(function _callee$(_context) { while (1) switch (_context.prev = _context.next) { case 0: console.log("data:", data); _url = data; if (!data.startsWith("http")) { _url = location.origin + _url; } _id = new URL(_url).pathname.split("/").pop(); _context.next = 6; return (0,exercise/* setEcsAttachment */.gJ)({ attachment_id: _id }); case 6: res = _context.sent; res.url = apiServer + res.url; setOfficeData(res); case 9: case "end": return _context.stop(); } }, _callee); })); return function getData() { return _ref2.apply(this, arguments); }; }(); var handleClick = function handleClick() { if (data.startsWith("http") || data.startsWith('blob:')) { handleDown(); return; } (0,util/* downloadFile */.Sv)(filename || 'educoder', data, filename); }; var handleDown = function handleDown() { (0,util/* downLoadLink */.Nd)(filename || 'educoder', decodeURIComponent(data)); }; return /*#__PURE__*/(0,jsx_runtime.jsxs)("div", { style: objectSpread2_default()({}, style || {}), className: "".concat(hasMask && PreviewAllmodules.bgBlack, " ").concat(!!type ? PreviewAllmodules.wrp : "hide"), children: [close && /*#__PURE__*/(0,jsx_runtime.jsxs)("div", { className: PreviewAllmodules.close, ref: closeRef, children: [!!onImgDimensions && /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, { title: "\u70B9\u51FB\u5BF9\u56FE\u7247\u8FDB\u884C\u6279\u6CE8", getPopupContainer: function getPopupContainer() { return closeRef.current; }, children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", { onClick: function onClick() { onClose(); onImgDimensions(); }, children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", { className: "icon-yulanpizhu" }) }) }), !disabledDownload && /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, { title: "\u70B9\u51FB\u4E0B\u8F7D\u6B64\u6587\u4EF6", getPopupContainer: function getPopupContainer() { return closeRef.current; }, children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", { onClick: handleDown, children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", { className: "icon-quxiaozhiding" }) }) }), /*#__PURE__*/(0,jsx_runtime.jsx)(tooltip/* default */.Z, { title: "\u5173\u95ED", getPopupContainer: function getPopupContainer() { return closeRef.current; }, children: /*#__PURE__*/(0,jsx_runtime.jsx)("span", { className: "", onClick: onClose, children: /*#__PURE__*/(0,jsx_runtime.jsx)("i", { className: "icon-guanbi1" }) }) })] }), /*#__PURE__*/(0,jsx_runtime.jsx)("div", { className: "".concat(PreviewAllmodules[className], " ").concat(className, " ").concat(PreviewAllmodules.monaco, " ").concat(type === "txt" ? "show" : "hide"), children: type === "txt" && /*#__PURE__*/(0,jsx_runtime.jsx)(jsx_runtime.Fragment, { children: /*#__PURE__*/(0,jsx_runtime.jsx)(monaco_editor/* default */.ZP, objectSpread2_default()({}, monacoEditor)) }) }), type === "audio" && /*#__PURE__*/(0,jsx_runtime.jsx)("audio", { src: "".concat(((_data2 = data) === null || _data2 === void 0 ? void 0 : _data2.indexOf("http://")) > -1 || ((_data3 = data) === null || _data3 === void 0 ? void 0 : _data3.indexOf("https://")) > -1 ? "" : "data:audio/mp3;base64,").concat(data), autoPlay: true }), type === "video" && /*#__PURE__*/(0,jsx_runtime.jsx)(jsx_runtime.Fragment, { children: ((_data4 = data) === null || _data4 === void 0 ? void 0 : _data4.indexOf("http")) > -1 ? /*#__PURE__*/(0,jsx_runtime.jsx)("video", { controls: true, src: "".concat(data), autoPlay: true }) : /*#__PURE__*/(0,jsx_runtime.jsx)("video", { controls: true, src: "data:video/mp4;base64,".concat(data), autoPlay: true }) }), type === 'office' && officeData && /*#__PURE__*/(0,jsx_runtime.jsx)("iframe", { src: "".concat(officePath, "/office.html?key=").concat(officeData.key, "&url=").concat(btoa(officeData.url), "&callbackUrl=").concat(apiServer + officeData.callbackUrl, "&fileType=").concat(officeData.fileType, "&title=").concat(officeData.title, "&model=").concat(editOffice, "&officeServer=").concat(env/* default */.Z.ONLYOFFICE, "&disabledDownload=").concat(!!disabledDownload) }), type === 'html' && /*#__PURE__*/(0,jsx_runtime.jsx)("iframe", { src: data + '&disposition=inline' }), type === 'pdf' && /*#__PURE__*/(0,jsx_runtime.jsx)("iframe", { src: "".concat(officePath, "/js/pdfview/index.html?url=").concat(data, "&disabledDownload=").concat(!!disabledDownload) }) // , type === "image" && /*#__PURE__*/(0,jsx_runtime.jsx)("img", { src: "".concat(((_data5 = data) === null || _data5 === void 0 ? void 0 : _data5.indexOf("http://")) > -1 || ((_data6 = data) === null || _data6 === void 0 ? void 0 : _data6.indexOf("https://")) > -1 ? "" : "data:image/png;base64,").concat(data) }), (type === "other" || type === "download") && /*#__PURE__*/(0,jsx_runtime.jsx)(jsx_runtime.Fragment, { children: showNodata ? /*#__PURE__*/(0,jsx_runtime.jsx)(NoData/* default */.Z, { customText: "\u5F53\u524D\u6587\u4EF6\u4E0D\u652F\u6301\u9884\u89C8\uFF0C\u53EF\u70B9\u51FB\u4E0B\u8F7D\u67E5\u770B", ButtonTwo: /*#__PURE__*/(0,jsx_runtime.jsx)(es_button/* default */.ZP, { icon: /*#__PURE__*/(0,jsx_runtime.jsx)("i", { className: "iconfont icon-xiazai4 font14" }), type: "primary", size: 'middle', onClick: handleClick, children: "\u4E0B\u8F7D" }) }) : /*#__PURE__*/(0,jsx_runtime.jsxs)(es_button/* default */.ZP, { type: "primary", size: 'middle', onClick: handleClick, children: [/*#__PURE__*/(0,jsx_runtime.jsx)(ArrowDownOutlined/* default */.Z, {}), "\u70B9\u51FB\u4E0B\u8F7D"] }) })] }); }); /***/ }), /***/ 32666: /*!*********************************************************!*\ !*** ./src/components/RenderHtml/index.tsx + 1 modules ***! \*********************************************************/ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) { // EXPORTS __webpack_require__.d(__webpack_exports__, { Z: function() { return /* binding */ RenderHtml; } }); // EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/objectSpread2.js var objectSpread2 = __webpack_require__(26801); var objectSpread2_default = /*#__PURE__*/__webpack_require__.n(objectSpread2); // EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/toConsumableArray.js var toConsumableArray = __webpack_require__(93923); var toConsumableArray_default = /*#__PURE__*/__webpack_require__.n(toConsumableArray); // EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/createForOfIteratorHelper.js var createForOfIteratorHelper = __webpack_require__(98190); var createForOfIteratorHelper_default = /*#__PURE__*/__webpack_require__.n(createForOfIteratorHelper); // EXTERNAL MODULE: ./node_modules/_@babel_runtime@7.23.2@@babel/runtime/helpers/slicedToArray.js var slicedToArray = __webpack_require__(11006); var slicedToArray_default = /*#__PURE__*/__webpack_require__.n(slicedToArray); // EXTERNAL MODULE: ./node_modules/_react@17.0.2@react/index.js var _react_17_0_2_react = __webpack_require__(59301); // EXTERNAL MODULE: ./node_modules/_katex@0.11.1@katex/dist/katex.min.css var katex_min = __webpack_require__(88633); // EXTERNAL MODULE: ./node_modules/_marked@2.0.7@marked/lib/marked.js var marked = __webpack_require__(32834); var marked_default = /*#__PURE__*/__webpack_require__.n(marked); // EXTERNAL MODULE: ./node_modules/_marked@2.0.7@marked/src/helpers.js var helpers = __webpack_require__(11690); ;// CONCATENATED MODULE: ./src/utils/marked.ts function indentCodeCompensation(raw, text) { var matchIndentToCode = raw.match(/^(\s+)(?:```)/); if (matchIndentToCode === null) { return text; } var indentToCode = matchIndentToCode[1]; return text.split('\n').map(function (node) { var matchIndentInNode = node.match(/^\s+/); if (matchIndentInNode === null) { return node; } var _matchIndentInNode = slicedToArray_default()(matchIndentInNode, 1), indentInNode = _matchIndentInNode[0]; if (indentInNode.length >= indentToCode.length) { return node.slice(indentToCode.length); } return node; }).join('\n'); } //兼容之前的 ##标题式写法 var toc = []; var ctx = ["
' + (escaped ? code : (0,helpers.escape)(code, true)) + '';
}
if (['latex', 'katex', 'math'].indexOf(lang) >= 0) {
return "".concat(code, "
"); } else { return "").concat(escaped ? code : (0,helpers.escape)(code, true), "\n");
}
};
renderer.heading = function (text, level, raw) {
var anchor = this.options.headerPrefix + raw.toLowerCase().replace(/[^\w\\u4e00-\\u9fa5]]+/g, '-');
toc.push({
anchor: anchor,
level: level,
text: text
});
return ']*>/g;
function _unescape(str) {
var div = document.createElement('div');
div.innerHTML = str;
return div.childNodes.length === 0 ? '' : div.childNodes[0].nodeValue;
}
/* harmony default export */ var RenderHtml = (function (_ref) {
var _ref$value = _ref.value,
value = _ref$value === void 0 ? '' : _ref$value,
className = _ref.className,
showTextOnly = _ref.showTextOnly,
showLines = _ref.showLines,
_ref$style = _ref.style,
style = _ref$style === void 0 ? {} : _ref$style,
_ref$stylesPrev = _ref.stylesPrev,
stylesPrev = _ref$stylesPrev === void 0 ? {} : _ref$stylesPrev,
highlightKeywords = _ref.highlightKeywords,
showProgramFill = _ref.showProgramFill,
isProgramFill = _ref.isProgramFill,
_ref$disabledFill = _ref.disabledFill,
disabledFill = _ref$disabledFill === void 0 ? false : _ref$disabledFill,
programFillValue = _ref.programFillValue,
_ref$onFillChange = _ref.onFillChange,
onFillChange = _ref$onFillChange === void 0 ? function (value) {} : _ref$onFillChange,
_ref$onFillBlur = _ref.onFillBlur,
onFillBlur = _ref$onFillBlur === void 0 ? function () {} : _ref$onFillBlur;
var str = String(value);
var _useState = (0,_react_17_0_2_react.useState)(""),
_useState2 = slicedToArray_default()(_useState, 2),
data = _useState2[0],
setData = _useState2[1];
var _useState3 = (0,_react_17_0_2_react.useState)("office"),
_useState4 = slicedToArray_default()(_useState3, 2),
type = _useState4[0],
setType = _useState4[1];
var _useState5 = (0,_react_17_0_2_react.useState)([]),
_useState6 = slicedToArray_default()(_useState5, 2),
projectValue = _useState6[0],
setProjectValue = _useState6[1];
var classNamesRef = (0,_react_17_0_2_react.useRef)("a" + (0,v4/* default */.Z)());
var formObj = {};
var createInput = function createInput(a, num) {
// const wrap = document.createElement("span")
// wrap.className =
var input = document.createElement(a === ADD_SINGLE ? "input" : "textarea");
input.style.width = "100%";
input.style.height = a === ADD_SINGLE ? "40px" : "151px";
input.rows = 5;
input.spellcheck = false;
input.name = "edu-program-fill";
input.placeholder = "请输入";
input.dataset.id = num;
var key = Object.keys(formObj).length;
formObj[key] = input;
return "").concat(input.outerHTML, "");
};
var formatMD = function formatMD(rs) {
return rs.replace(/([\s\S]+?)<\/style>/gim, function (_, css) {
var _css = css.replace(/(\n|\r)/g, "").split("}");
var arr = [];
_css.map(function (item) {
if (item != '') {
arr.push(".".concat(classNamesRef.current, " ").concat(item));
}
});
return "");
});
};
var html = (0,_react_17_0_2_react.useMemo)(function () {
try {
var reg = /\(\s+\/api\/attachments\/|\(\/api\/attachments\/|\(\/attachments\/download\//g;
var reg2 = /\"\/api\/attachments\/|\"\/attachments\/download\//g;
var reg3 = /\(\s+\/files\/uploads\/|\"\/files\/uploads\//g;
str = str.replace(reg, "(" + env/* default */.Z.API_SERVER + "/api/attachments/").replace(reg2, '"' + env/* default */.Z.API_SERVER + "/api/attachments/").replace(reg3, '"' + env/* default */.Z.API_SERVER + "/files/uploads/").replaceAll("http://video.educoder", "https://video.educoder").replaceAll("http://www.educoder.net/api", "https://data.educoder.net/api").replaceAll("https://www.educoder.net/api", "https://data.educoder.net/api").replace(/\r\n/g, "\n");
// str = str.replace(new RegExp("(?".concat(formatMD(str || ""), " ");
}
var rs = utils_marked(str);
rs = formatMD(rs);
var math_expressions = getMathExpressions();
if (str.match(/\[TOC\]/)) {
rs = rs.replace('[TOC]
', getTocContent()); cleanToc(); } rs = rs.replace(/(__special_katext_id_\d+__)/g, function (_match, capture) { var _math_expressions$cap = math_expressions[capture], type = _math_expressions$cap.type, expression = _math_expressions$cap.expression; return (0,katex.renderToString)(_unescape(expression) || '', { displayMode: type === 'block', throwOnError: false, output: 'html' }); }); rs = rs.replace(/▁/g, '▁▁▁'); resetMathExpressions(); // return dompurify.sanitize(rs) var dom = document.createElement('div'); dom.innerHTML = rs; if (highlightKeywords) { var escapedKeywords = highlightKeywords.replace(/[.*+?^${}()|[\]\\]/g, "\\$&"); findKeyword(dom, escapedKeywords); return dom.innerHTML; } if (showTextOnly) { return dom.innerText; } setTimeout(function () { return onLoad(); }, 500); return dom.innerHTML; }, [str, highlightKeywords]); (0,_react_17_0_2_react.useEffect)(function () { if (el.current) { var inputs = el.current.querySelectorAll(["input", "textarea"]); inputs.forEach(function (input) { input.oninput = onInput; input.onblur = onBlur; }); } }, [projectValue]); (0,_react_17_0_2_react.useEffect)(function () { if (!!(programFillValue !== null && programFillValue !== void 0 && programFillValue.length)) { var scoreDom = el.current.querySelectorAll(".edu-program-fill-score"); var dom = el.current.querySelectorAll('[name="edu-program-fill"]'); var _iterator = createForOfIteratorHelper_default()(dom.entries()), _step; try { for (_iterator.s(); !(_step = _iterator.n()).done;) { var _programFillValue$k; var _step$value = slicedToArray_default()(_step.value, 2), k = _step$value[0], i = _step$value[1]; i.value = (_programFillValue$k = programFillValue[k]) === null || _programFillValue$k === void 0 ? void 0 : _programFillValue$k.value; if (programFillValue[k].type === "warning") { i.className = "program-fill-warning"; } else if (programFillValue[k].type === "success") { i.className = "program-fill-success"; } else { i.className = ""; } } } catch (err) { _iterator.e(err); } finally { _iterator.f(); } var _iterator2 = createForOfIteratorHelper_default()(scoreDom.entries()), _step2; try { for (_iterator2.s(); !(_step2 = _iterator2.n()).done;) { var _programFillValue$_k, _programFillValue$_k2; var _step2$value = slicedToArray_default()(_step2.value, 2), _k = _step2$value[0], _i = _step2$value[1]; _i.innerHTML = (_programFillValue$_k = programFillValue[_k]) !== null && _programFillValue$_k !== void 0 && _programFillValue$_k.score ? "".concat((_programFillValue$_k2 = programFillValue[_k]) === null || _programFillValue$_k2 === void 0 ? void 0 : _programFillValue$_k2.score, "\u5206") : ""; } } catch (err) { _iterator2.e(err); } finally { _iterator2.f(); } setProjectValue(programFillValue); } }, [programFillValue]); var onInput = function onInput(e) { projectValue[e.target.dataset.id] = projectValue[e.target.dataset.id] || {}; projectValue[e.target.dataset.id]["value"] = e.target.value; setProjectValue(toConsumableArray_default()(projectValue)); onFillChange(projectValue, e.target.dataset.id); }; var onBlur = function onBlur(e) { projectValue[e.target.dataset.id] = projectValue[e.target.dataset.id] || {}; projectValue[e.target.dataset.id]["value"] = e.target.value; setProjectValue(toConsumableArray_default()(projectValue)); onFillBlur(projectValue, e.target.dataset.id); }; function findKeyword(node, keyword) { return node.childNodes.forEach(function (childNode) { if (childNode.childNodes.length > 0) { findKeyword(childNode, keyword); } else if (childNode.nodeName !== "IMG") { if (childNode.innerHTML) { var _childNode$innerHTML; childNode.innerHTML = (_childNode$innerHTML = childNode.innerHTML) === null || _childNode$innerHTML === void 0 ? void 0 : _childNode$innerHTML.replace(new RegExp(keyword, "gi"), '$&'); } else { var dom = document.createElement("span"); dom.innerHTML = childNode.textContent.replace(new RegExp(keyword, "gi"), '$&'); childNode.replaceWith(dom); } } }); // return dom.childNodes.forEach((node:any) => { // console.log("nodeLen:",node.childNodes.length) // if(node.childNodes.length > 0){ // debugger // // findKeyword(dom.childNodes,keyword) // }else{ // if(node.nodeName !== "#text"){ // node.innerHTML = node.innerHTML.replaceAll(keyword,`${keyword}`) // console.log("node:",node,dom,node.nodeName,node.innerHTML,node.childNodes.length) // debugger // } // } // return node // }); } var el = (0,_react_17_0_2_react.useRef)(); lines['WebkitLineClamp'] = showLines; if (showLines) { style = objectSpread2_default()(objectSpread2_default()({}, style), lines); } function onAncherHandler(e) { var target = e.target; if (target.tagName.toUpperCase() === 'A') { var ancher = target.getAttribute('href'); if (ancher.indexOf("office") > -1) { e.preventDefault(); setData(ancher); setType("office"); } else if (ancher.indexOf("application/pdf") > -1) { e.preventDefault(); setData(ancher); setType("pdf"); } else if (ancher.indexOf("text/html") > -1) { e.preventDefault(); setData(ancher); setType("html"); } else if (ancher.startsWith('#')) { e.preventDefault(); var viewEl = document.getElementById(ancher.replace('#', '')); if (viewEl) { viewEl.scrollIntoView(true); } } } } var onLoad = function onLoad() { var _el$current; var videoElement = (_el$current = el.current) === null || _el$current === void 0 ? void 0 : _el$current.querySelectorAll('video'); videoElement === null || videoElement === void 0 || videoElement.forEach(function (item) { item.oncontextmenu = function () { return false; }; if (item.src.indexOf('.m3u8') > -1) { if (item.canPlayType('application/vnd.apple.mpegurl')) {} else if (dist_hls/* default */.Z.isSupported()) { var hls = new dist_hls/* default */.Z(); hls.loadSource(item.src); hls.attachMedia(item); } } }); }; (0,_react_17_0_2_react.useEffect)(function () { if (el.current && html) { if (html.match(preRegex)) { window.PR.prettyPrint(); } } if (el.current) { el.current.addEventListener('click', onAncherHandler); return function () { var _el$current2; (_el$current2 = el.current) === null || _el$current2 === void 0 || _el$current2.removeEventListener('click', onAncherHandler); resetMathExpressions(); cleanToc(); }; } }, [html, el.current, onAncherHandler]); return /*#__PURE__*/(0,jsx_runtime.jsxs)(jsx_runtime.Fragment, { children: [showTextOnly && /*#__PURE__*/(0,jsx_runtime.jsx)("div", { ref: el, children: html }), !showTextOnly && /*#__PURE__*/(0,jsx_runtime.jsx)("div", { ref: el, style: objectSpread2_default()({}, style), className: "".concat(className ? className : '', " ").concat(disabledFill ? "disabled-fill" : "", " markdown-body ").concat(classNamesRef.current), dangerouslySetInnerHTML: { __html: html } }), /*#__PURE__*/(0,jsx_runtime.jsx)(PreviewAll/* default */.Z, { close: true, data: data, type: !!(data !== null && data !== void 0 && data.length) ? type : "", style: objectSpread2_default()({}, stylesPrev), onClose: function onClose() { return setData(""); } })] }); }); /***/ }) }]);