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

5 lines
8.3 KiB

(window.webpackJsonp=window.webpackJsonp||[]).push([[126],{"9Bee":function(k,O,a){"use strict";var L=a("q1tI"),z=a.n(L),te=a("vg9a"),J=a("k16G"),q=a("DlQD"),U=a.n(q),S=a("rUJ1");function v(t,n){var _=t.match(/^(\s+)(?:```)/);if(_===null)return n;var s=_[1];return n.split(`
`).map(function(l){var r=l.match(/^\s+/);if(r===null)return l;var u=Object(J.a)(r,1),c=u[0];return c.length>=s.length?l.slice(s.length):l}).join(`
`)}var D=[],A=["<ul>"],i=new U.a.Renderer,C=/^ *(#{1,6}) *([^\n]+?) *(?:#+ *)?(?:\n+|$)/;function e(){D.length=0,A=["<ul>"]}function T(t,n,_,s){if(n>=t.length||t[n].level<=_)return n;var l=t[n];s.push("<li><a href='#"+l.anchor+"'>"+l.text+"</a>"),n++;var r=[];return n=T(t,n,l.level,r),r.length>0&&(s.push("<ul>"),r.forEach(function(u){s.push(u)}),s.push("</ul>")),s.push("</li>"),n=T(t,n,_,s),n}function I(){return T(D,0,0,A),A.push("</ul>"),A.join("")}var x={heading:function(n){var _=C.exec(n);if(_)return{type:"heading",raw:_[0],depth:_[1].length,text:_[2]}},fences:function(n){var _=this.rules.block.fences.exec(n);if(_){var s=_[0],l=v(s,_[3]||""),r=_[2]?_[2].trim():_[2];if(["latex","katex","math"].indexOf(r)>=0){var u=H(),c=l;l=u,N[u]={type:"block",expression:c}}return{type:"code",raw:s,lang:r,text:l}}}},w=/(?:\${2})([^\n`]+?)(?:\${2})/gi,X=0,H=function(){return"__special_katext_id_".concat(X++,"__")},N={};function Y(){return N}function Q(){X=0,N={}}function B(t){return t=t.replace(w,function(n,_){var s=H();return N[s]={type:"inline",expression:_},s}),t}var p=i.listitem;i.listitem=function(t){return p(B(t))};var Z=i.paragraph;i.paragraph=function(t){return Z(B(t))};var d=i.tablecell;i.tablecell=function(t,n){return d(B(t),n)},i.code=function(t,n,_){var s=(n||"").match(/\S*/)[0];return s?["latex","katex","math"].indexOf(s)>=0?"<p class='editormd-tex'>".concat(t,"</p>"):'<pre class="prettyprint linenums"><code class="language-'.concat(n,'">').concat(_?t:Object(S.escape)(t,!0),`</code></pre>
`):'<pre class="prettyprint linenums"><code>'+(_?t:Object(S.escape)(t,!0))+"</code></pre>"},i.heading=function(t,n,_){var s=this.options.headerPrefix+_.toLowerCase().replace(/[^\w\\u4e00-\\u9fa5]]+/g,"-");return D.push({anchor:s,level:n,text:t}),"<h"+n+' id="'+s+'">'+t+"</h"+n+">"},U.a.setOptions({silent:!0,smartypants:!0,gfm:!0,pedantic:!1}),U.a.use({tokenizer:x,renderer:i});var h=U.a,G=a("SJMd"),g=a("m3rI"),W=a("Oy/b"),K=/<pre[^>]*>/g;function F(t){var n=document.createElement("div");return n.innerHTML=t,n.childNodes.length===0?"":n.childNodes[0].nodeValue}var V=O.a=function(t){var n=t.value,_=n===void 0?"":n,s=t.className,l=t.style,r=l===void 0?{}:l,u=String(_),c=Object(L.useMemo)(function(){try{var P=/\(\s+\/api\/attachments\/|\(\/api\/attachments\/|\(\/attachments\/download\//g,b=/\"\/api\/attachments\/|\"\/attachments\/download\//g,R=/\(\s+\/files\/uploads\/|\(\/files\/uploads\//g;u=u.replace(P,"("+g.a.API_SERVER+"/api/attachments/").replace(b,'"'+g.a.API_SERVER+"/api/attachments/").replace(R,'"'+g.a.API_SERVER+"/files/uploads/")}catch(E){}var o=h(u),m=Y();return u.match(/\[TOC\]/)&&(o=o.replace("<p>[TOC]</p>",I()),e()),o=o.replace(/(__special_katext_id_\d+__)/g,function(E,y){var j=m[y],ee=j.type,M=j.expression;return Object(W.renderToString)(F(M)||"",{displayMode:ee==="block",throwOnError:!1,output:"html"})}),o=o.replace(/▁/g,"\u2581\u2581\u2581"),Q(),o},[u]),f=Object(L.useRef)();function $(P){var b=P.target;if(b.tagName.toUpperCase()==="A"){var R=b.getAttribute("href");if(R.startsWith("#")){P.preventDefault();var o=document.getElementById(R.replace("#",""));o&&o.scrollIntoView(!0)}}}return Object(L.useEffect)(function(){if(f.current&&c&&(c.match(K)&&window.PR.prettyPrint()),f.current)return f.current.addEventListener("click",$),function(){f.current.removeEventListener("click",$),Q(),e()}},[c,f.current,$]),z.a.createElement("div",{ref:f,style:r,className:"".concat(s||""," markdown-body"),dangerouslySetInnerHTML:{__html:c}})}},X0ci:function(k,O,a){},rmrE:function(k,O,a){},ymAh:function(k,O,a){"use strict";a.r(O),a.d(O,"Types",function(){return p});var L=a("T2oS"),z=a("W9HT"),te=a("P2fV"),J=a("NJEC"),q=a("+L6B"),U=a("2/Rp"),S=a("c1Ei"),v=a.n(S),D=a("5Tp6"),A=a("k16G"),i=a("XEnU"),C=a("q1tI"),e=a.n(C),T=a("WHYC"),I=a("uYtH"),x=a("ErOA"),w=a("m3rI"),X=a("9Bee"),H=a("X0ci"),N=a.n(H),Y=a("rmrE"),Q=a.n(Y),B={data:void 0},p;(function(d){d.GET_DATA="get-data",d.PRAISE="on-praise"})(p||(p={}));function Z(d,h){switch(h.type){case p.GET_DATA:return Object(i.a)(Object(i.a)({},d),{},{data:h.payload});case p.PRAISE:return Object(i.a)(Object(i.a)({},d),{},{data:h.payload});default:throw new Error}}O.default=function(){var d,h,G,g,W,K,F,V,t,n=Object(C.useReducer)(Z,B),_=Object(A.a)(n,2),s=_[0],l=_[1],r=s.data,u=Object(T.m)(),c=u.caseId,f=Object(T.k)();Object(C.useEffect)(function(){var o=!1;function m(){return E.apply(this,arguments)}function E(){return E=Object(D.a)(v.a.mark(function y(){var j;return v.a.wrap(function(M){for(;;)switch(M.prev=M.next){case 0:return M.next=2,Object(x.c)("libraries/".concat(c,".json"));case 2:j=M.sent,o||(j.status===404?f.push("/moop_cases"):l({type:p.GET_DATA,payload:j}));case 4:case"end":return M.stop()}},y)})),E.apply(this,arguments)}return o||m(),function(){o=!0}},[c]);function $(){return P.apply(this,arguments)}function P(){return P=Object(D.a)(v.a.mark(function o(){var m;return v.a.wrap(function(y){for(;;)switch(y.prev=y.next){case 0:return y.next=2,Object(x.f)("praise_tread/like.json",{object_id:c,object_type:"library"});case 2:m=Object(i.a)({},r),m.operation.user_praised=!0,m.praise_count+=1,l({type:p.PRAISE,payload:m});case 6:case"end":return y.stop()}},o)})),P.apply(this,arguments)}function b(){return R.apply(this,arguments)}function R(){return R=Object(D.a)(v.a.mark(function o(){return v.a.wrap(function(E){for(;;)switch(E.prev=E.next){case 0:return E.next=2,Object(x.b)("/libraries/".concat(c,".json"));case 2:f.push("/moop_cases");case 3:case"end":return E.stop()}},o)})),R.apply(this,arguments)}return e.a.createElement(z.a,{spinning:!r,delay:500},r?e.a.createElement("section",{className:"moop-info"},e.a.createElement("div",{className:"crumb"},e.a.createElement(I.Link,{to:"/moop_cases"},"\u6559\u5B66\u6848\u4F8B > "),e.a.createElement("span",null,r.title)),e.a.createElement("div",{className:"title"},e.a.createElement("h2",null,r.title,(d=r.tags)===null||d===void 0?void 0:d.map(function(o,m){return e.a.createElement("span",{className:"label-"+m,key:o.id},o.name)})),e.a.createElement(I.Link,{to:"/moop_cases"},"\u8FD4\u56DE")),e.a.createElement("div",{className:"moop-info-body"},e.a.createElement("div",{className:"moop-sub-title"},e.a.createElement("img",{src:"".concat(w.a.IMG_SERVER,"/images/").concat((h=r.creator)===null||h===void 0?void 0:h.image_url),alt:"cover",width:50}),e.a.createElement("div",{className:"desc"},e.a.createElement("div",{className:"flex-container"},e.a.createElement("span",null,(G=r.creator)===null||G===void 0?void 0:G.name),((g=r.operation)===null||g===void 0?void 0:g.can_editable)?e.a.createElement(I.Link,{to:"/moop_cases/".concat(r.id,"/edit"),style:{marginRight:10}},e.a.createElement(U.a,{type:"ghost"},"\u7F16\u8F91")):null,((W=r.operation)===null||W===void 0?void 0:W.can_deletable)?e.a.createElement(J.a,{placement:"bottomRight",title:"\u662F\u5426\u786E\u8BA4\u5220\u9664\uFF1F",onConfirm:b},e.a.createElement(U.a,{type:"dashed"},"\u5220\u9664")):null),e.a.createElement("div",{className:"sum"},e.a.createElement("span",null,(K=r.creator)===null||K===void 0?void 0:K.school_name),e.a.createElement("span",null,"\u7F16\u7801\uFF1A",r.uuid),e.a.createElement("span",null,"\u53D1\u5E03\u65F6\u95F4\uFF1A",r.published_at)))),e.a.createElement("p",null,"\u4F5C\u8005\uFF1A","".concat(r.author_name," / ").concat(r.author_school_name)),e.a.createElement(X.a,{value:r.content}),e.a.createElement("ul",{className:"attachment"},(F=r.attachments)===null||F===void 0?void 0:F.map(function(o){return e.a.createElement("li",{key:o.id},e.a.createElement("a",{href:o.url},e.a.createElement("i",{className:"iconfont icon-fujian"}),e.a.createElement("span",null,o.title),e.a.createElement("span",null,o.filesize)))})),e.a.createElement("button",{className:"praise",disabled:(V=r.operation)===null||V===void 0?void 0:V.user_praised,onClick:$},((t=r.operation)===null||t===void 0?void 0:t.user_praised)?e.a.createElement("span",null,"\u5DF2\u8D5E"):e.a.createElement("span",null,e.a.createElement("i",{className:"iconfont icon-dianzan"})),e.a.createElement("span",null,r.praise_count)))):null)}}}]);