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__MoopCases__InfoPanel.js

1 line
8.1 KiB

(window["webpackJsonp"]=window["webpackJsonp"]||[]).push([[124],{"9Bee":function(e,t,n){"use strict";var a=n("ZZRV"),r=n.n(a),c=(n("Sawj"),n("GZha")),i=n("tVQ9"),l=n.n(i),o=n("PRXW");function s(e,t){var n=e.match(/^(\s+)(?:```)/);if(null===n)return t;var a=n[1];return t.split("\n").map((function(e){var t=e.match(/^\s+/);if(null===t)return e;var n=Object(c["a"])(t,1),r=n[0];return r.length>=a.length?e.slice(a.length):e})).join("\n")}var u=[],p=["<ul>"],m=new l.a.Renderer,d=/^ *(#{1,6}) *([^\n]+?) *(?:#+ *)?(?:\n+|$)/;function f(){u.length=0,p=["<ul>"]}function h(e,t,n,a){if(t>=e.length||e[t].level<=n)return t;var r=e[t];a.push("<li><a href='#"+r.anchor+"'>"+r.text+"</a>"),t++;var c=[];return t=h(e,t,r.level,c),c.length>0&&(a.push("<ul>"),c.forEach((function(e){a.push(e)})),a.push("</ul>")),a.push("</li>"),t=h(e,t,n,a),t}function v(){return h(u,0,0,p),p.push("</ul>"),p.join("")}var E={heading:function(e){var t=d.exec(e);if(t)return{type:"heading",raw:t[0],depth:t[1].length,text:t[2]}},fences:function(e){var t=this.rules.block.fences.exec(e);if(t){var n=t[0],a=s(n,t[3]||""),r=t[2]?t[2].trim():t[2];if(["latex","katex","math"].indexOf(r)>=0){var c=g(),i=a;a=c,y[c]={type:"block",expression:i}}return{type:"code",raw:n,lang:r,text:a}}}},b=/(?:\${2})([^\n`]+?)(?:\${2})/gi,_=0,g=function(){return"__special_katext_id_".concat(_++,"__")},y={};function j(){return y}function O(){_=0,y={}}function w(e){return e=e.replace(b,(function(e,t){var n=g();return y[n]={type:"inline",expression:t},n})),e}var x=m.listitem;m.listitem=function(e){return x(w(e))};var k=m.paragraph;m.paragraph=function(e){return k(w(e))};var N=m.tablecell;m.tablecell=function(e,t){return N(w(e),t)},m.code=function(e,t,n){var a=(t||"").match(/\S*/)[0];return a?["latex","katex","math"].indexOf(a)>=0?"<p class='editormd-tex'>".concat(e,"</p>"):'<pre class="prettyprint linenums"><code class="language-'.concat(t,'">').concat(n?e:Object(o["escape"])(e,!0),"</code></pre>\n"):'<pre class="prettyprint linenums"><code>'+(n?e:Object(o["escape"])(e,!0))+"</code></pre>"},m.heading=function(e,t,n){var a=this.options.headerPrefix+n.toLowerCase().replace(/[^\w\\u4e00-\\u9fa5]]+/g,"-");return u.push({anchor:a,level:t,text:e}),"<h"+t+' id="'+a+'">'+e+"</h"+t+">"},l.a.setOptions({silent:!0,smartypants:!0,gfm:!0,pedantic:!1}),l.a.use({tokenizer:E,renderer:m});var R=l.a,T=(n("8+LE"),n("ZRDM")),A=n.n(T),S=n("saPB"),L=/<pre[^>]*>/g;function M(e){var t=document.createElement("div");return t.innerHTML=e,0===t.childNodes.length?"":t.childNodes[0].nodeValue}t["a"]=function(e){var t=e.value,n=void 0===t?"":t,c=e.className,i=e.style,l=void 0===i?{}:i,o=String(n),s=Object(a["useMemo"])((function(){var e=R(o),t=j();return o.match(/\[TOC\]/)&&(e=e.replace("<p>[TOC]</p>",v()),f()),e=e.replace(/(__special_katext_id_\d+__)/g,(function(e,n){var a=t[n],r=a.type,c=a.expression;return Object(S["renderToString"])(M(c)||"",{displayMode:"block"===r,throwOnError:!1,output:"html"})})),e=e.replace(/\u2581/g,"\u2581\u2581\u2581"),O(),A.a.sanitize(e)}),[o]),u=Object(a["useRef"])();function p(e){var t=e.target;if("A"===t.tagName.toUpperCase()){var n=t.getAttribute("href");if(n.startsWith("#")){e.preventDefault();var a=document.getElementById(n.replace("#",""));a&&(a.parentNode.scrollTop=a.offsetTop)}}}return Object(a["useEffect"])((function(){if(u.current&&s&&s.match(L)&&window.PR.prettyPrint(),u.current)return u.current.addEventListener("click",p),function(){u.current.removeEventListener("click",p),O(),f()}}),[s,u.current,p]),r.a.createElement("div",{ref:u,style:l,className:"".concat(c||""," markdown-body"),dangerouslySetInnerHTML:{__html:s}})}},X0ci:function(e,t,n){},rmrE:function(e,t,n){},ymAh:function(e,t,n){"use strict";n.r(t),n.d(t,"Types",(function(){return a}));n("Mumi");var a,r=n("/zo+"),c=(n("6nqw"),n("HcLS")),i=(n("MPZO"),n("bnk9")),l=n("VBJJ"),o=n.n(l),s=n("z3+T"),u=n("GZha"),p=n("55MS"),m=n("ZZRV"),d=n.n(m),f=n("q5+0"),h=n("DndG"),v=n("ErOA"),E=n("m3rI"),b=n("9Bee"),_=(n("X0ci"),n("rmrE"),{data:void 0});function g(e,t){switch(t.type){case a.GET_DATA:return Object(p["a"])(Object(p["a"])({},e),{},{data:t.payload});case a.PRAISE:return Object(p["a"])(Object(p["a"])({},e),{},{data:t.payload});default:throw new Error}}(function(e){e["GET_DATA"]="get-data",e["PRAISE"]="on-praise"})(a||(a={})),t["default"]=function(){var e,t,n,l,y,j,O,w,x,k=Object(m["useReducer"])(g,_),N=Object(u["a"])(k,2),R=N[0],T=N[1],A=R.data,S=Object(f["m"])(),L=S.caseId,M=Object(f["k"])();function P(){return I.apply(this,arguments)}function I(){return I=Object(s["a"])(o.a.mark((function e(){var t;return o.a.wrap((function(e){while(1)switch(e.prev=e.next){case 0:return e.next=2,Object(v["e"])("praise_tread/like.json",{object_id:L,object_type:"library"});case 2:t=Object(p["a"])({},A),t.operation.user_praised=!0,t.praise_count+=1,T({type:a.PRAISE,payload:t});case 6:case"end":return e.stop()}}),e)}))),I.apply(this,arguments)}function Z(){return G.apply(this,arguments)}function G(){return G=Object(s["a"])(o.a.mark((function e(){return o.a.wrap((function(e){while(1)switch(e.prev=e.next){case 0:return e.next=2,Object(v["b"])("/libraries/".concat(L,".json"));case 2:M.push("/moop_cases");case 3:case"end":return e.stop()}}),e)}))),G.apply(this,arguments)}return Object(m["useEffect"])((function(){var e=!1;function t(){return n.apply(this,arguments)}function n(){return n=Object(s["a"])(o.a.mark((function t(){var n;return o.a.wrap((function(t){while(1)switch(t.prev=t.next){case 0:return t.next=2,Object(v["c"])("libraries/".concat(L,".json"));case 2:n=t.sent,e||(404===n.status?M.push("/moop_cases"):T({type:a.GET_DATA,payload:n}));case 4:case"end":return t.stop()}}),t)}))),n.apply(this,arguments)}return e||t(),function(){e=!0}}),[L]),d.a.createElement(r["a"],{spinning:!A,delay:500},A?d.a.createElement("section",{className:"moop-info"},d.a.createElement("div",{className:"crumb"},d.a.createElement(h["Link"],{to:"/moop_cases"},"\u6559\u5b66\u6848\u4f8b > "),d.a.createElement("span",null,A.title)),d.a.createElement("div",{className:"title"},d.a.createElement("h2",null,A.title,null===(e=A.tags)||void 0===e?void 0:e.map((function(e,t){return d.a.createElement("span",{className:"label-"+t,key:e.id},e.name)}))),d.a.createElement(h["Link"],{to:"/moop_cases"},"\u8fd4\u56de")),d.a.createElement("div",{className:"moop-info-body"},d.a.createElement("div",{className:"moop-sub-title"},d.a.createElement("img",{src:"".concat(E["a"].IMG_SERVER,"/images/").concat(null===(t=A.creator)||void 0===t?void 0:t.image_url),alt:"cover",width:50}),d.a.createElement("div",{className:"desc"},d.a.createElement("div",{className:"flex-container"},d.a.createElement("span",null,null===(n=A.creator)||void 0===n?void 0:n.name),(null===(l=A.operation)||void 0===l?void 0:l.can_editable)?d.a.createElement(h["Link"],{to:"/moop_cases/".concat(A.id,"/edit"),style:{marginRight:10}},d.a.createElement(i["a"],{type:"ghost"},"\u7f16\u8f91")):null,(null===(y=A.operation)||void 0===y?void 0:y.can_deletable)?d.a.createElement(c["a"],{placement:"bottomRight",title:"\u662f\u5426\u786e\u8ba4\u5220\u9664\uff1f",onConfirm:Z},d.a.createElement(i["a"],{type:"dashed"},"\u5220\u9664")):null),d.a.createElement("div",{className:"sum"},d.a.createElement("span",null,null===(j=A.creator)||void 0===j?void 0:j.school_name),d.a.createElement("span",null,"\u7f16\u7801\uff1a",A.uuid),d.a.createElement("span",null,"\u53d1\u5e03\u65f6\u95f4\uff1a",A.published_at)))),d.a.createElement("p",null,"\u4f5c\u8005\uff1a","".concat(A.author_name," / ").concat(A.author_school_name)),d.a.createElement(b["a"],{value:A.content}),d.a.createElement("ul",{className:"attachment"},null===(O=A.attachments)||void 0===O?void 0:O.map((function(e){return d.a.createElement("li",{key:e.id},d.a.createElement("a",{href:e.url},d.a.createElement("i",{className:"iconfont icon-fujian"}),d.a.createElement("span",null,e.title),d.a.createElement("span",null,e.filesize)))}))),d.a.createElement("button",{className:"praise",disabled:null===(w=A.operation)||void 0===w?void 0:w.user_praised,onClick:P},(null===(x=A.operation)||void 0===x?void 0:x.user_praised)?d.a.createElement("span",null,"\u5df2\u8d5e"):d.a.createElement("span",null,d.a.createElement("i",{className:"iconfont icon-dianzan"})),d.a.createElement("span",null,A.praise_count)))):null)}}}]);