PageSourceSearch

https://tavernkeeper.com/assets/ReportModal-CX-ELaPQ.js

js tavernkeeper.com collected 2026-10-08 12:09:20 UTC 4,884 bytes, 1 lines download raw bytes

1import{e as a,c as e,r as l,w as t,j as s,s as o,C as r,A as n,k as i,l as u,m as d,u as c,G as v,x as p,F as m,q as b,B as g,p as y,I as h,D as f,v as k,T as C}from"./vue-vendor-DJz7ukYg.js";import{_ as w,r as x,b as _,a as I,t as O}from"./main-BJf9LMmq.js";const S={class:"base-modal base-modal--lg",role:"dialog","aria-modal":"true","aria-labelledby":"report-title"},T={class:"modal-header"},q={id:"report-title"},A=["disabled","aria-label"],R={class:"modal-content"},V={class:"report-intro"},j={key:0,class:"template-name"},P={key:0,class:"error-message",role:"alert"},U=["aria-label"],D=["value","disabled"],E={class:"category-content"},F={class:"category-name"},K={class:"category-description"},N={key:0,class:"original-field"},Y={for:"original-sharecode"},B=["placeholder","disabled"],G={class:"field-hint"},M={class:"notes-field"},W={for:"report-notes"},z={class:"optional"},H=["disabled","placeholder"],J={class:"modal-footer"},L=["disabled"],Q=["disabled"],X={key:0,class:"modal-spinner"},Z=1e3,$=w({__name:"ReportModal",setup(w){const $=a(),aa=[{value:0,name:()=>_("Duplicate"),description:()=>_("A copy of existing content"),requiresOriginal:!0},{value:1,name:()=>_("Inappropriate"),description:()=>_("Offensive or inappropriate")},{value:2,name:()=>_("Spam"),description:()=>_("Advertising, spam or low-quality")},{value:3,name:()=>_("Illegal"),description:()=>_("Violates laws or regulations")}],ea=e(()=>x.state.isOpen),la=e(()=>x.state.shareCode),ta=e(()=>x.state.templateName),sa=l(null),oa=l(""),ra=l(""),na=l(!1),ia=l(null),ua=e(()=>aa.find(a=>a.value===sa.value)),da=e(()=>!0===ua.value?.requiresOriginal),ca=e(()=>ra.value.length),va=e(()=>null!==sa.value&&(!(da.value&&!oa.value.trim())&&!na.value));t(ea,a=>{a&&(sa.value=null,oa.value="",ra.value="",ia.value=null)});const pa=()=>{na.value||x.close()},ma=a=>{a.target===a.currentTarget&&pa()},ba=async()=>{if(va.value){na.value=!0,ia.value=null;try{const a={category:sa.value,originalShareCode:da.value?oa.value.trim():null,notes:ra.value.trim()||null};await I.reportContent(la.value,a),O.success(_("Thank you for your report. Our moderation team will review this content.")),x.close()}catch(a){409===a.status?ia.value=_("You have already reported this content."):400===a.status?ia.value=a.message||_("Invalid report data. Please check your input."):401===a.status?(ia.value=_("You must be logged in to report content."),setTimeout(()=>{x.close(),$.push("/login")},1500)):404===a.status?ia.value=_("Content not found. It may have been removed."):ia.value=_("Failed to submit report. Please try again.")}finally{na.value=!1}}},ga=a=>{"Escape"!==a.key||na.value||pa()};return(a,e)=>(s(),o(C,{to:"body"},[r(f,{name:"modal-fade"},{default:n(()=>[ea.value?(s(),i("div",{key:0,class:"modal-backdrop",onClick:ma,onKeydown:ga},[u("div",S,[u("header",T,[u("h2",q,d(c(_)("Report Content")),1),u("button",{class:"btn-close",onClick:pa,disabled:na.value,"aria-label":c(_)("Close")}," × ",8,A)]),u("main",R,[u("p",V,[v(d(c(_)("Why are you reporting this?"))+" ",1),ta.value?(s(),i("span",j,"("+d(ta.value)+")",1)):p("",!0)]),ia.value?(s(),i("div",P,d(ia.value),1)):p("",!0),u("div",{class:"category-list",role:"radiogroup","aria-label":c(_)("Report category")},[(s(),i(m,null,b(aa,a=>u("label",{key:a.value,class:g(["category-option",{selected:sa.value===a.value}])},[y(u("input",{type:"radio",name:"report-category",value:a.value,"onUpdate:modelValue":e[0]||(e[0]=a=>sa.value=a),disabled:na.value},null,8,D),[[h,sa.value]]),e[3]||(e[3]=u("span",{class:"category-radio"},null,-1)),u("span",E,[u("span",F,d(a.name()),1),u("span",K,d(a.description()),1)])],2)),64))],8,U),r(f,{name:"slide-fade"},{default:n(()=>[da.value?(s(),i("div",N,[u("label",Y,d(c(_)("Original Share Code")),1),y(u("input",{id:"original-sharecode",type:"text","onUpdate:modelValue":e[1]||(e[1]=a=>oa.value=a),placeholder:c(_)("e.g. TK12345678"),disabled:na.value,maxlength:"20"},null,8,B),[[k,oa.value]]),u("p",G,d(c(_)("Enter the Share Code of the original content this duplicates")),1)])):p("",!0)]),_:1}),u("div",M,[u("label",W,[v(d(c(_)("Additional Notes"))+" ",1),u("span",z,"("+d(c(_)("optional"))+")",1)]),y(u("textarea",{id:"report-notes","onUpdate:modelValue":e[2]||(e[2]=a=>ra.value=a),maxlength:Z,disabled:na.value,placeholder:c(_)("Provide any additional details that may help our moderation team..."),rows:"3"},null,8,H),[[k,ra.value]]),u("div",{class:g(["char-count",{"near-limit":ca.value>900}])},d(ca.value)+"/"+d(Z),3)])]),u("footer",J,[u("button",{class:"modal-btn modal-btn--secondary",onClick:pa,disabled:na.value},d(c(_)("Cancel")),9,L),u("button",{class:"modal-btn modal-btn--primary modal-btn--submit",onClick:ba,disabled:!va.value},[na.value?(s(),i("span",X)):p("",!0),v(" "+d(na.value?c(_)("Submitting..."):c(_)("Submit Report")),1)],8,Q)])])],32)):p("",!0)]),_:1})]))}},[["__scopeId","data-v-c25b3c14"]]);export{$ as default};

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.