1import{C as U,M as V,i as n,W as T,ae as D,V as x,a0 as M,d3 as O,a6 as H,B as q,E as I,A as L}from"./app-DhbzpxNh.js";import{M as Y}from"./BbrKSk-I.js";import{M as G}from"./BGuwDt3A.js";import{b as J,a as r,w as Q,c as X,g as R,h as p,a2 as Z,j as o,H as t,B as m,s,l as C,A,C as u,q as d,M as ee,N as le}from"./BI8qgwQJ.js";import"./BTqQ_sdn.js";const ae={style:{display:"flex","flex-direction":"column","min-height":"100%"}},ie={class:"_spacer",style:{"--MI_SPACER-min":"20px","--MI_SPACER-max":"28px","flex-grow":"1"}},oe={class:"_gaps_m"},se=["src"],te=["src"],ne=["src"],de=["src"],me={class:"_gaps"},ue=["onClick"],ye=J({__name:"emoji-edit-dialog",props:{emoji:{}},emits:["done","closed"],setup(W,{emit:N}){const a=W,h=N,f=r(null),j=r(a.emoji?a.emoji.name:""),k=r(a.emoji?.category?a.emoji.category:""),S=r(a.emoji?a.emoji.aliases.join(" "):""),b=r(a.emoji?.license?a.emoji.license:""),_=r(a.emoji?a.emoji.isSensitive:!1),E=r(a.emoji?a.emoji.localOnly:!1),B=r(a.emoji?a.emoji.roleIdsThatCanBeUsedThisEmojiAsReaction:[]),g=r([]),v=r();Q(B,async()=>{g.value=(await Promise.all(B.value.map(i=>U("admin/roles/show",{roleId:i}).catch(()=>null)))).filter(i=>i!=null)},{immediate:!0});const y=X(()=>v.value?v.value.url:a.emoji?a.emoji.url:null);async function K(i){v.value=await H(i.currentTarget??i.target,null);const e=v.value.name.replace(/\.(.+)$/,"");e.match(/^[a-z0-9_]+$/)&&(j.value=e)}async function P(){const i=await U("admin/roles/list"),e=g.value.map(c=>c.id),{canceled:l,result:w}=await q({items:i.filter(c=>c.isPublic).filter(c=>!e.includes(c.id)).map(c=>({text:c.name,value:c}))});l||w==null||g.value.push(w)}async function $(i,e){g.value=g.value.filter(l=>l.id!==i.id)}async function z(){const i={name:j.value,category:k.value===""?null:k.value,aliases:S.value.split(" ").filter(e=>e!==""),license:b.value===""?null:b.value,isSensitive:_.value,localOnly:E.value,roleIdsThatCanBeUsedThisEmojiAsReaction:g.value.map(e=>e.id)};if(v.value&&(i.fileId=v.value.id),a.emoji)await I("admin/emoji/update",{id:a.emoji.id,...i}),h("done",{updated:{id:a.emoji.id,...i}}),f.value?.close();else{const e=await I("admin/emoji/add",i);h("done",{created:e}),f.value?.close()}}async function F(){if(!a.emoji)return;const{canceled:i}=await L({type:"warning",text:n.tsx.removeAreYouSure({x:j.value})});i||U("admin/emoji/delete",{id:a.emoji.id}).then(()=>{h("done",{deleted:!0}),f.value?.close()})}return(i,e)=>(p(),R(O,{ref_key:"windowEl",ref:f,initialWidth:400,initialHeight:500,canResize:!0,onClose:e[7]||(e[7]=l=>f.value?.close()),onClosed:e[8]||(e[8]=l=>h("closed"))},Z({default:o(()=>[s("div",ae,[s("div",ie,[s("div",oe,[y.value!=null?(p(),C("div",{key:0,class:"pages-emoji-edit-dialog-imgs-mvNt"},[s("div",{style:{background:"#000"},class:"pages-emoji-edit-dialog-imgContainer-6oTS"},[s("img",{src:y.value,class:"pages-emoji-edit-dialog-img-sW1K"},null,10,se)],2),s("div",{style:{background:"#222"},class:"pages-emoji-edit-dialog-imgContainer-6oTS"},[s("img",{src:y.value,class:"pages-emoji-edit-dialog-img-sW1K"},null,10,te)],2),s("div",{style:{background:"#ddd"},class:"pages-emoji-edit-dialog-imgContainer-6oTS"},[s("img",{src:y.value,class:"pages-emoji-edit-dialog-img-sW1K"},null,10,ne)],2),s("div",{style:{background:"#fff"},class:"pages-emoji-edit-dialog-imgContainer-6oTS"},[s("img",{src:y.value,class:"pages-emoji-edit-dialog-img-sW1K"},null,10,de)],2)],2)):A("",!0),u(V,{rounded:"",style:{margin:"0 auto"},onClick:K},{default:o(()=>[t(m(d(n).ts.selectFile),1)]),_:1}),u(T,{modelValue:j.value,"onUpdate:modelValue":e[0]||(e[0]=l=>j.value=l),autocapitalize:"off"},{label:o(()=>[t(m(d(n).ts.name),1)]),_:1},8,["modelValue"]),u(T,{modelValue:k.value,"onUpdate:modelValue":e[1]||(e[1]=l=>k.value=l),datalist:d(D)},{label:o(()=>[t(m(d(n).ts.category),1)]),_:1},8,["modelValue","datalist"]),u(T,{modelValue:S.value,"onUpdate:modelValue":e[2]||(e[2]=l=>S.value=l),autocapitalize:"off"},{label:o(()=>[t(m(d(n).ts.tags),1)]),caption:o(()=>[t(m(d(n).ts.theKeywordWhenSearchingForCustomEmoji),1),e[10]||(e[10]=s("br",null,null,-1)),t(" "+m(d(n).ts.setMultipleBySeparatingWithSpace),1)]),_:1},8,["modelValue"]),u(T,{modelValue:b.value,"onUpdate:modelValue":e[3]||(e[3]=l=>b.value=l),mfmAutocomplete:!0},{label:o(()=>[t(m(d(n).ts.license),1)]),_:1},8,["modelValue"]),u(Y,null,{label:o(()=>[t(m(d(n).ts.rolesThatCanBeUsedThisEmojiAsReaction),1)]),suffix:o(()=>[t(m(g.value.length===0?d(n).ts.all:g.value.length),1)]),default:o(()=>[s("div",me,[u(V,{rounded:"",onClick:P},{default:o(()=>[e[11]||(e[11]=s("i",{class:"ph-plus ph-bold ph-lg"},null,-1)),t(" "+m(d(n).ts.add),1)]),_:1,__:[11]}),(p(!0),C(ee,null,le(g.value,l=>(p(),C("div",{key:l.id,class:"pages-emoji-edit-dialog-roleItem-eE9o"},[u(G,{class:"pages-emoji-edit-dialog-role-8mSB",role:l,forModeration:!0,detailed:!1,style:{"pointer-events":"none"}},null,8,["class","role"]),l.target==="manual"?(p(),C("button",{key:0,class:"_button pages-emoji-edit-dialog-roleUnassign-v2fs",onClick:w=>$(l,w)},e[12]||(e[12]=[s("i",{class:"ph-x ph-bold ph-lg"},null,-1)]),10,ue)):(p(),C("button",{key:1,class:"_button pages-emoji-edit-dialog-roleUnassign-v2fs",disabled:""},e[13]||(e[13]=[s("i",{class:"ph-prohibit ph-bold ph-lg"},null,-1)]),2))],2))),128)),u(x,null,{default:o(()=>[t(m(d(n).ts.rolesThatCanBeUsedThisEmojiAsReactionEmptyDescription),1)]),_:1}),u(x,{warn:""},{default:o(()=>[t(m(d(n).ts.rolesThatCanBeUsedThisEmojiAsReactionPublicRoleWarn),1)]),_:1})])]),_:1}),u(M,{modelValue:_.value,"onUpdate:modelValue":e[4]||(e[4]=l=>_.value=l)},{default:o(()=>e[14]||(e[14]=[t("isSensitive")])),_:1,__:[14]},8,["modelValue"]),u(M,{modelValue:E.value,"onUpdate:modelValue":e[5]||(e[5]=l=>E.value=l)},{default:o(()=>[t(m(d(n).ts.localOnly),1)]),_:1},8,["modelValue"]),i.emoji?(p(),R(V,{key:1,danger:"",onClick:e[6]||(e[6]=l=>F())},{default:o(()=>[e[15]||(e[15]=s("i",{class:"ph-trash ph-bold ph-lg"},null,-1)),t(" "+m(d(n).ts.delete),1)]),_:1,__:[15]})):A("",!0)])]),s("div",{class:"pages-emoji-edit-dialog-footer-fu6x"},[u(V,{primary:"",rounded:"",style:{margin:"0 auto"},onClick:z},{default:o(()=>[e[16]||(e[16]=s("i",{class:"ph-check ph-bold ph-lg"},null,-1)),t(" "+m(a.emoji?d(n).ts.update:d(n).ts.create),1)]),_:1,__:[16]})],2)])]),_:2},[i.emoji?{name:"header",fn:o(()=>[t(":"+m(i.emoji.name)+":",1)]),key:"0"}:{name:"header",fn:o(()=>[e[9]||(e[9]=t("New emoji"))]),key:"1"}]),1536))}});
1export{ye 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.